/* Focused V2 refinements: hierarchy, readable service cards, accessible requests. */
.hero h1{font-size:clamp(38px,4vw,58px);line-height:1.08;letter-spacing:-.035em;text-wrap:balance}
.hero-copy{min-width:0}.hero-actions .btn{max-width:100%;white-space:normal;text-align:center}
.services{padding:32px 0}.services-title{font-size:clamp(26px,2.6vw,36px);line-height:1.2;margin:0 0 10px}.services-intro{max-width:760px;color:var(--text);margin:0 0 24px;font-size:16px}
.service-card{display:flex;flex-direction:column;min-width:0}.service-body{display:flex;flex:1;flex-direction:column}.service-body h3{font-size:18px;line-height:1.25;overflow-wrap:anywhere}.service-body p{font-size:14px;min-height:0;line-height:1.55}.service-body .more{font-size:14px;margin-top:auto;padding-top:10px}
.quick-box{grid-template-columns:48px minmax(0,1fr)}.quick-actions{grid-column:1/-1}.quick-box p{font-size:14px}.quick-actions .btn{font-size:14px;min-height:44px}.wa-mark{width:46px;height:46px}.home-lower>*{min-width:0}
.ref-card span,.ref-head a{font-size:13px}.ref-head{flex-wrap:wrap}.footer p,.footer a{font-size:14px}.footer-list{gap:8px}
.planning-visual{margin:26px 0 36px;background:var(--soft);border:1px solid var(--line);border-radius:10px;overflow:hidden}.planning-visual img{width:100%;height:auto}.planning-visual figcaption{padding:14px 18px;font-size:13px;color:var(--text)}
.project-steps{list-style:none;padding:0!important;counter-reset:step;display:grid;gap:12px;margin:24px 0 36px}.project-steps li{counter-increment:step;position:relative;padding:18px 18px 18px 66px;background:var(--soft);border:1px solid var(--line);border-radius:8px}.project-steps li:before{content:counter(step);position:absolute;left:18px;top:18px;width:30px;height:30px;border-radius:50%;background:var(--navy);color:#fff;display:grid;place-items:center;font-weight:750}.project-steps strong,.project-steps span{display:block}.project-steps span{margin-top:5px;font-size:15px}
.customer-faq{border-bottom:1px solid var(--line);padding:16px 0}.customer-faq summary{font-size:17px;font-weight:750;cursor:pointer;min-height:28px}.customer-faq p{padding-left:0;margin-bottom:0}
.request-tips{padding-left:20px;color:var(--text)}.request-tips li{margin-bottom:14px}.request-buttons{display:flex;gap:12px;flex-wrap:wrap}.request-buttons .btn{min-height:48px;font-size:15px;padding:10px 18px;cursor:pointer}.request-fallback{padding-top:18px;border-top:1px solid var(--line)}.request-fallback .btn{margin-top:12px;cursor:pointer}.form-note a{text-decoration:underline;text-underline-offset:3px;color:var(--green-dark)}.contact-form-wrap>*{min-width:0}.contact-form .form-note{margin:0;line-height:1.6}.form-status{background:#edf4f7;color:var(--navy);border:1px solid #bfd0d9}.contact-form textarea{overflow-wrap:anywhere}
[hidden]{display:none!important}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--navy);outline-offset:4px}.topbar a:focus-visible,.footer a:focus-visible{outline-color:#fff}
@media(min-width:861px){.hero-grid{grid-template-columns:44% 56%}.hero-copy{padding:44px 32px 44px 0}.hero-media{min-height:430px}}
@media(min-width:1180px){.hero h1{font-size:clamp(44px,3.7vw,58px)}.hero-grid{min-height:450px}.hero-media{min-height:450px}.hero p{font-size:19px}}
@media(min-width:861px) and (max-width:1279px){.service-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.hero h1{font-size:clamp(38px,4vw,46px)}}
@media(max-width:1279px){.site-header .nav{top:calc(100% - 1px)}}
@media(max-width:860px){.hero-copy{padding:30px 0 24px}.hero h1{max-width:700px}.hero-media{min-height:290px}.service-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.trust-item strong{font-size:14px}.trust-item span{font-size:13px}}
@media(max-width:620px){.hero h1{font-size:36px;max-width:100%;text-wrap:initial}.hero p{font-size:17px}.hero-actions{gap:10px}.hero-actions .btn{font-size:14px;padding:10px 16px;min-height:46px}.hero-media{min-height:230px}.section{padding:42px 0}.service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.service-body{padding:13px 12px}.service-body h3{font-size:16px}.service-body p,.service-body .more{font-size:13px}.service-image{height:122px}.quick-box{padding:18px 16px;gap:14px}.quick-box h2{font-size:20px}.ref-card img{height:180px}.ref-card span{margin:8px 0}.request-buttons{flex-direction:column}.request-buttons .btn{width:100%}.contact-form-intro h2{font-size:28px}.content h2{font-size:27px}.project-steps li{padding-left:58px}.project-steps li:before{left:14px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}
