/* About Hira */
.hero-slides{position:absolute;inset:0;overflow:hidden}
.hero-slides .hero-photo{position:absolute;inset:0;opacity:0;transform:scale(1.04);animation:heroFade 24s infinite ease-in-out;background-position:center;background-size:cover;background-repeat:no-repeat}
.hero-slides .hero-photo-1{background-image:url('hero-cleaning.png');animation-delay:0s}
.hero-slides .hero-photo-2{background-image:url('service-residential.png');animation-delay:6s}
.hero-slides .hero-photo-3{background-image:url('service-deep.png');animation-delay:12s}
.hero-slides .hero-photo-4{background-image:url('service-commercial.png');animation-delay:18s}
.services{padding-top:90px}
@keyframes heroFade{0%{opacity:0;transform:scale(1.04)}4%{opacity:1}21%{opacity:1;transform:scale(1)}25%{opacity:0}100%{opacity:0}}
@media(prefers-reduced-motion:reduce){.hero-slides .hero-photo{animation:none;opacity:0;transform:none}.hero-slides .hero-photo-1{opacity:1}}

.about{display:grid;grid-template-columns:.65fr 1.35fr;gap:80px;align-items:center;background:var(--mist)}
.about-mark{aspect-ratio:1;max-width:430px;background:var(--blue);display:grid;grid-template-rows:1fr 1fr;padding:45px;color:#fff;font:300 clamp(5rem,10vw,9rem)/.78 Manrope,sans-serif}
.about-copy>p:not(.kicker){color:var(--muted);font-size:18px;max-width:760px}
.about-values{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:34px}
.about-values span{padding:18px;border-top:2px solid var(--aqua);font-size:14px;color:var(--muted)}
.about-values b{display:block;color:var(--ink);font-size:16px}

/* Custom service icon system */
.service-card{position:relative;padding-top:46px}
.service-icon{width:62px;height:62px;margin:0 0 34px;display:grid;place-items:center;border-radius:18px;background:#e7f3f5;color:var(--blue)}
.service-icon svg{width:34px;height:34px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.service-card.featured .service-icon,.service-card:hover .service-icon{background:var(--blue);color:#fff}
.service-icon .spark-line{stroke:var(--aqua)}

/* Detailed quote form */
.form-section-title{font-family:Manrope,sans-serif;font-size:15px;font-weight:800;color:var(--blue);padding:5px 0 10px;margin:8px 0 18px;border-bottom:1px solid var(--line)}
label small{font-weight:500;color:#6b7980}

@media(max-width:960px){.about{grid-template-columns:1fr}.about-mark{max-width:320px}.about-values{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.about-values{grid-template-columns:1fr}.service-icon{width:56px;height:56px}}

/* Local client feedback */
.reviews{background:#f8fbfb}
.reviews-head{display:grid;grid-template-columns:1.2fr .8fr;gap:70px;align-items:end;margin-bottom:50px}
.reviews-head>p{color:var(--muted);font-size:18px;max-width:520px}
.review-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.review-card{min-height:280px;padding:30px;border:1px solid var(--line);border-radius:18px;background:#fff;display:flex;flex-direction:column;justify-content:space-between}
.review-card blockquote{font:400 20px/1.55 Georgia,serif;color:var(--ink);margin:20px 0 30px}
.review-card>div:last-child{display:flex;flex-direction:column}.review-card b{font-size:14px}.review-card span{font-size:13px;color:var(--muted)}
.stars{color:#0c7893;letter-spacing:.14em;font-size:14px}
.review-card.placeholder{border-style:dashed;background:#fff}
.review-note{text-align:center;color:#7a888f;font-size:13px;margin:24px 0 0}
@media(max-width:960px){.reviews-head{grid-template-columns:1fr;gap:20px}.review-grid{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.review-grid{grid-template-columns:1fr}}

/* FAQ */
.faq{display:grid;grid-template-columns:.7fr 1.3fr;gap:80px;background:#fff}
.faq-intro{position:sticky;top:30px;align-self:start}
.faq-intro>p:not(.kicker){color:var(--muted);font-size:17px;max-width:420px}
.faq-button{margin-top:16px;background:var(--navy);color:#fff}
.faq-list{border-top:1px solid var(--line)}
.faq-list details{border-bottom:1px solid var(--line)}
.faq-list summary{list-style:none;cursor:pointer;padding:24px 50px 24px 0;font:700 17px/1.4 Manrope,sans-serif;position:relative}
.faq-list summary::-webkit-details-marker{display:none}
.faq-list summary span{position:absolute;right:8px;top:20px;font-size:25px;font-weight:400;color:var(--blue);transition:.2s}
.faq-list details[open] summary span{transform:rotate(45deg)}
.faq-list details p{margin:-5px 50px 24px 0;color:var(--muted)}

/* Expanded footer */
.site-footer{padding:72px clamp(24px,7vw,110px) 28px;background:#04111a;color:#a9bbc3;display:grid;grid-template-columns:1.5fr repeat(3,1fr);gap:50px;align-items:start;text-align:left}
.site-footer .footer-brand img{width:230px;height:70px;object-fit:cover;object-position:center;margin:0}
.footer-brand p{max-width:320px}.footer-quote{display:inline-block;color:var(--aqua);font-weight:700;margin-top:8px}
.footer-column{display:flex;flex-direction:column;gap:10px}
.footer-column h3{font-size:15px;color:#fff;margin-bottom:10px}
.footer-column a,.footer-social a{color:#a9bbc3;font-weight:500;font-size:14px}
.footer-column a:hover,.footer-social a:hover{color:var(--aqua)}
.footer-bottom{grid-column:1/-1;border-top:1px solid #ffffff1a;margin-top:24px;padding-top:24px;display:flex;justify-content:space-between;gap:24px}
.footer-social{display:flex;gap:18px}
.site-credit{margin-left:12px}.site-credit a{color:var(--aqua);font-weight:700}.site-credit a:hover{text-decoration:underline}
@media(max-width:960px){.faq{grid-template-columns:1fr}.faq-intro{position:static}.site-footer{grid-template-columns:1fr 1fr}.footer-brand,.footer-bottom{grid-column:1/-1}.site-footer .footer-brand img{margin:0}}
@media(max-width:600px){.site-footer{grid-template-columns:1fr}.footer-brand,.footer-bottom{grid-column:auto}.footer-bottom{flex-direction:column}.footer-social{flex-wrap:wrap}.site-credit{display:block;margin:8px 0 0}}

/* Photo-led About and Services refinements */
.about{grid-template-columns:.85fr 1.15fr;gap:72px}
.about-photo-wrap{position:relative;overflow:hidden;border-radius:24px;min-height:470px;box-shadow:0 26px 55px rgba(3,29,43,.16)}
.about-photo-wrap img{width:100%;height:100%;position:absolute;inset:0;object-fit:cover;object-position:center}
.about-photo-wrap:after{content:'';position:absolute;inset:55% 0 0;background:linear-gradient(transparent,rgba(3,22,32,.72))}
.about-photo-wrap span{position:absolute;z-index:1;left:28px;bottom:24px;color:#fff;font:700 16px Manrope,sans-serif}
.service-grid{gap:18px;border-top:0}
.service-card,.service-card:first-child{padding:0;border:1px solid var(--line);border-radius:20px;overflow:hidden;min-height:470px;background:#fff;transform:none;box-shadow:0 8px 28px rgba(6,23,34,.06)}
.service-card:hover{background:#fff;transform:translateY(-5px);box-shadow:0 18px 42px rgba(6,23,34,.13)}
.service-photo{display:block;width:100%;height:205px;object-fit:cover;transition:transform .45s ease}
.service-card:hover .service-photo{transform:scale(1.035)}
.service-content{padding:26px 24px 28px;display:flex;flex-direction:column;flex:1}
.service-content h3{font-size:20px}.service-content p{color:var(--muted)}.service-content a{font-size:14px;font-weight:700;color:var(--blue);margin-top:auto}
@media(max-width:960px){.about{grid-template-columns:1fr}.about-photo-wrap{min-height:390px}.service-card{min-height:450px}}
@media(max-width:600px){.about-photo-wrap{min-height:330px}.service-card{min-height:430px}.service-photo{height:220px}}
