:root{--green:#c82127;--green-hover:#9f171d;--green-tint:#fff0f0;--slate:#171717;--slate-mid:#2a2a2a;--ink:#1a2532;--muted:#4d6070;--subtle:#869aaa;--paper:#edf2f7;--surface:#f7f9fb;--border:#cdd8e3;--white:#fff;--sans:Inter, ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth}body{min-width:320px;color:var(--ink);background:var(--white);font-family:var(--sans);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0;font-size:16px;line-height:1.5}button,input,select,textarea{font:inherit}img,video,iframe{max-width:100%;display:block}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--green);outline-offset:3px}#root{min-height:100svh}.section-inner{width:min(1120px,100% - 48px);margin:0 auto}.section{padding:80px 0}.bg-white{background:var(--white)}.bg-paper{background:var(--paper)}.bg-slate{background:var(--slate)}.kicker{color:var(--green);letter-spacing:.1em;text-transform:uppercase;margin:0 0 10px;font-size:11px;font-weight:800}.kicker--light{color:#ffffff8c}.section-head{max-width:640px;margin-bottom:40px}.section-head h2{color:var(--ink);letter-spacing:-.01em;margin:0;font-size:clamp(24px,3vw,40px);font-weight:800;line-height:1.15}.section-head--light h2,.h2--light{color:var(--white)}.section-more{justify-content:flex-start;margin-top:32px;display:flex}.site-header{z-index:100;background:var(--slate);border-bottom:1px solid #ffffff0f;position:sticky;top:0}.header-inner{align-items:center;gap:24px;width:min(1180px,100% - 40px);margin:0 auto;padding:14px 0;display:flex}.brand{color:var(--white);flex-shrink:0;align-items:center;gap:10px;font-weight:700;text-decoration:none;display:inline-flex}.brand-mark{width:32px;height:32px;color:var(--slate);background:var(--green);letter-spacing:0;border-radius:6px;flex-shrink:0;place-items:center;font-size:11px;font-weight:900;display:inline-grid}.brand-name{color:var(--white);font-size:15px;font-weight:700}.site-nav{flex:1;justify-content:center;gap:2px;display:flex}.nav-link{color:#ffffffa6;border-radius:6px;padding:8px 13px;font-size:14px;font-weight:500;text-decoration:none;transition:color .13s,background .13s}.nav-link:hover,.nav-link:focus-visible{color:var(--white);background:#ffffff14}.nav-link--active{color:var(--white);background:#ffffff1a;font-weight:700}.header-end{flex-shrink:0;align-items:center;gap:8px;margin-left:auto;display:flex}.header-call{color:var(--slate);background:var(--green);border-radius:6px;padding:9px 16px;font-size:14px;font-weight:700;text-decoration:none;transition:background .13s}.header-call-short{display:none}.header-call:hover,.header-call:focus-visible{background:var(--green-hover)}.nav-toggle{cursor:pointer;background:0 0;border:1px solid #fff3;border-radius:6px;flex-direction:column;justify-content:center;gap:5px;width:38px;height:38px;padding:8px;transition:background .13s;display:none}.nav-toggle span{background:var(--white);transform-origin:50%;border-radius:2px;height:2px;transition:transform .2s,opacity .2s;display:block}.nav-toggle:hover{background:#ffffff14}.nav-toggle--open span:first-child{transform:translateY(7px)rotate(45deg)}.nav-toggle--open span:nth-child(2){opacity:0}.nav-toggle--open span:nth-child(3){transform:translateY(-7px)rotate(-45deg)}.btn-primary,.btn-primary-lg{min-height:46px;color:var(--white);background:var(--green);font:inherit;cursor:pointer;border:none;border-radius:6px;justify-content:center;align-items:center;padding:0 22px;font-size:15px;font-weight:700;text-decoration:none;transition:background .13s,transform .13s;display:inline-flex}.btn-primary-lg{min-height:52px;padding:0 28px;font-size:16px}.btn-primary:hover,.btn-primary:focus-visible,.btn-primary-lg:hover,.btn-primary-lg:focus-visible{background:var(--green-hover);transform:translateY(-1px)}.btn-ghost{min-height:46px;color:var(--white);font:inherit;cursor:pointer;background:#ffffff1a;border:1.5px solid #ffffff4d;border-radius:6px;justify-content:center;align-items:center;padding:0 22px;font-size:15px;font-weight:600;text-decoration:none;transition:background .13s,border-color .13s;display:inline-flex}.btn-ghost:hover,.btn-ghost:focus-visible{background:#ffffff2e;border-color:#ffffff80}.btn-outline-sm{min-height:40px;color:var(--ink);border:1.5px solid var(--border);font:inherit;cursor:pointer;background:0 0;border-radius:6px;justify-content:center;align-items:center;padding:0 18px;font-size:14px;font-weight:600;text-decoration:none;transition:border-color .13s,background .13s;display:inline-flex}.btn-outline-sm:hover,.btn-outline-sm:focus-visible{border-color:var(--green);background:var(--green-tint);color:var(--green-hover)}.btn-outline{min-height:52px;color:var(--white);font:inherit;cursor:pointer;background:0 0;border:1.5px solid #ffffff4d;border-radius:6px;justify-content:center;align-items:center;padding:0 24px;font-size:15px;font-weight:600;text-decoration:none;transition:background .13s,border-color .13s;display:inline-flex}.btn-outline:hover,.btn-outline:focus-visible{background:#ffffff1a;border-color:#ffffff80}.btn-text-link{color:var(--green);font:inherit;cursor:pointer;background:0 0;border:none;align-items:center;padding:0;font-size:14px;font-weight:700;transition:color .13s;display:inline-flex}.btn-text-link:hover,.btn-text-link:focus-visible{color:var(--green-hover)}.hero-section{grid-template-columns:1fr 1fr;min-height:clamp(480px,70svh,680px);display:grid;overflow:hidden}.hero-text-panel{background:var(--slate);color:var(--white);flex-direction:column;justify-content:center;padding:72px max(24px,50vw - 536px);display:flex}.hero-text-panel .kicker{color:#ffffff80}.hero-text-panel h1{max-width:480px;color:var(--white);letter-spacing:-.02em;margin:0 0 16px;font-size:clamp(30px,4.2vw,56px);font-weight:800;line-height:1.1}.hero-lede{color:#ffffffb8;max-width:440px;margin:0 0 28px;font-size:clamp(15px,1.6vw,18px);line-height:1.6}.hero-actions{flex-wrap:wrap;gap:12px;display:flex}.hero-review-proof{flex-direction:column;gap:5px;margin-bottom:24px;display:flex}.hero-review-proof-label{color:#ffffffa6;letter-spacing:.03em;font-size:12px;font-weight:700}.hero-review-proof-quote{color:#ffffff80;max-width:400px;margin:0;font-size:13px;font-style:italic;line-height:1.45}.hero-media-panel{background:var(--slate-mid);position:relative;overflow:hidden}.hero-media-item{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.proof-strip{background:var(--green);border-bottom:1px solid #0000001a;flex-wrap:nowrap;display:flex}.proof-strip-item{text-align:center;border-right:1px solid #ffffff26;flex-direction:column;flex:1;align-items:center;padding:16px 20px;display:flex}.proof-strip-item:last-child{border-right:none}.proof-strip-item strong{color:var(--white);font-size:14px;font-weight:800;line-height:1.2}.proof-strip-item span{color:#ffffffb8;letter-spacing:.03em;margin-top:3px;font-size:11px;font-weight:500}.service-cards{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.service-card{background:var(--surface);border:1px solid var(--border);border-radius:8px;transition:box-shadow .16s,transform .16s;overflow:hidden}.service-card:hover{transform:translateY(-3px);box-shadow:0 12px 28px #1a25321a}.service-card-img{aspect-ratio:16/9;background:var(--paper);overflow:hidden}.service-card-img img{object-fit:cover;width:100%;height:100%;transition:transform .22s;display:block}.service-card:hover .service-card-img img{transform:scale(1.04)}.service-card-body{padding:18px 20px 22px}.item-tag{color:var(--green);background:var(--green-tint);letter-spacing:.06em;text-transform:uppercase;border-radius:4px;margin-bottom:8px;padding:3px 8px;font-size:11px;font-weight:700;display:inline-block}.item-tag--overlay{color:var(--white);background:var(--green)}.service-card h3{color:var(--ink);margin:0 0 8px;font-size:17px;font-weight:800;line-height:1.25}.service-card p{color:var(--muted);margin:0;font-size:14px;line-height:1.55}.problems-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;display:grid}.problem-item{background:#ffffff0d;border:1px solid #ffffff14;border-radius:8px;padding:22px}.problem-item strong{color:var(--white);margin-bottom:8px;font-size:15px;font-weight:800;display:block}.problem-item p{color:#ffffffa6;margin:0;font-size:14px;line-height:1.55}.gallery-preview{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.gallery-preview-item{aspect-ratio:3/4;background:var(--paper);border-radius:6px;position:relative;overflow:hidden}.gallery-preview-item img{object-fit:cover;width:100%;height:100%;transition:transform .22s;display:block}.gallery-preview-item:hover img{transform:scale(1.04)}.gallery-preview-label{background:linear-gradient(#0000,#162232d1);flex-direction:column;gap:5px;padding:32px 14px 14px;display:flex;position:absolute;bottom:0;left:0;right:0}.gallery-preview-title{color:var(--white);font-size:13px;font-weight:700;line-height:1.3}.reviews-row,.reviews-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.review-card{background:var(--surface);border:1px solid var(--border);border-left:3px solid var(--green);border-radius:8px;flex-direction:column;padding:22px;transition:box-shadow .16s;display:flex}.review-card:hover{box-shadow:0 8px 24px #1a253214}.review-stars{align-items:center;gap:3px;margin-bottom:12px;line-height:1;display:inline-flex}.review-star-icon{color:#f5b301;fill:currentColor;filter:drop-shadow(0 1px #16223224);flex-shrink:0;width:16px;height:16px}.review-star-icon--empty{color:#d6dee7;filter:none}.review-text{color:var(--ink);flex:1;margin:0 0 16px;font-size:15px;line-height:1.65}.review-byline{border-top:1px solid var(--border);align-items:center;gap:10px;padding-top:14px;display:flex}.review-byline-info{flex-direction:column;gap:2px;display:flex}.review-byline-info strong{color:var(--ink);font-size:13px;font-weight:700}.review-byline-info span{color:var(--subtle);text-transform:uppercase;letter-spacing:.06em;font-size:11px;font-weight:700}.review-avatar{object-fit:cover;border-radius:50%;flex-shrink:0;width:34px;height:34px}.review-avatar--initials{background:var(--green-tint);color:var(--green);border:1px solid #2d6a4f33;place-items:center;font-size:11px;font-weight:900;display:inline-grid}.cta-band{background:var(--slate);padding:0}.cta-band-inner{justify-content:space-between;align-items:center;gap:40px;padding:64px 0;display:flex}.cta-band-text{flex:1;max-width:560px}.cta-band-text h2{color:var(--white);margin:0 0 12px;font-size:clamp(22px,2.8vw,36px);font-weight:800;line-height:1.15}.cta-band-text p{color:#ffffffa6;margin:0;font-size:16px;line-height:1.6}.cta-band-actions{flex-wrap:wrap;flex-shrink:0;align-items:center;gap:12px;display:flex}.page-header{background:var(--slate);color:var(--white);padding:56px 0 52px}.page-header h1{max-width:680px;color:var(--white);letter-spacing:-.01em;margin:0;font-size:clamp(26px,3.8vw,50px);font-weight:800;line-height:1.1}.services-full-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;display:grid}.service-full-card{background:var(--surface);border:1px solid var(--border);border-radius:8px;grid-template-columns:200px 1fr;transition:box-shadow .16s;display:grid;overflow:hidden}.service-full-card:hover{box-shadow:0 10px 28px #1a253217}.service-full-img{background:var(--paper);overflow:hidden}.service-full-img img{object-fit:cover;width:100%;height:100%;transition:transform .22s;display:block}.service-full-card:hover .service-full-img img{transform:scale(1.04)}.service-full-body{padding:20px 24px}.service-full-body h3{color:var(--ink);margin:8px 0;font-size:18px;font-weight:800}.service-full-body>p{color:var(--muted);margin:0 0 16px;font-size:14px;line-height:1.6}.rr-grid{grid-template-columns:1fr 1fr;gap:16px;margin-bottom:24px;display:grid}.rr-panel{border:1px solid var(--border);border-radius:8px;padding:24px 28px}.rr-panel--repair{border-left:4px solid var(--green);background:var(--white)}.rr-panel--replace{border-left:4px solid var(--slate);background:var(--white)}.rr-panel h3{color:var(--ink);margin:0 0 14px;font-size:16px;font-weight:800}.rr-panel ul{color:var(--muted);margin:0;padding-left:20px;font-size:14px;line-height:1.7}.rr-note{color:var(--muted);background:var(--green-tint);border-left:3px solid var(--green);border-radius:0 6px 6px 0;margin:0;padding:16px 20px;font-size:14px;line-height:1.6}.process-steps{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;display:grid}.process-step{background:var(--surface);border:1px solid var(--border);border-top:3px solid var(--green);border-radius:8px;padding:20px}.process-num{color:var(--green);letter-spacing:-.02em;margin-bottom:12px;font-size:22px;font-weight:900;line-height:1;display:block}.process-step-body strong{color:var(--ink);margin-bottom:6px;font-size:15px;font-weight:800;display:block}.process-step-body p{color:var(--muted);margin:0;font-size:13px;line-height:1.55}.area-cta-inner{grid-template-columns:1fr 1fr;align-items:center;gap:56px;padding:72px 0;display:grid}.area-cta-text h2{color:var(--white);margin:0 0 20px;font-size:clamp(22px,2.8vw,38px);font-weight:800;line-height:1.15}.area-list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.area-list li{color:#ffffffb8;align-items:center;gap:10px;font-size:15px;font-weight:500;display:flex}.area-list li:before{content:"";background:var(--green);border-radius:50%;flex-shrink:0;width:6px;height:6px;display:block}.area-cta-action{flex-direction:column;align-items:flex-start;gap:14px;display:flex}.area-cta-action p{color:#ffffffa6;margin:0;font-size:15px;line-height:1.6}.tag-filter{flex-wrap:wrap;gap:8px;margin-bottom:28px;display:flex}.tag-btn{color:var(--muted);background:var(--surface);border:1px solid var(--border);font:inherit;cursor:pointer;border-radius:6px;padding:7px 14px;font-size:13px;font-weight:600;transition:background .13s,border-color .13s,color .13s}.tag-btn:hover,.tag-btn:focus-visible{border-color:var(--green);color:var(--green);background:var(--green-tint)}.tag-btn--active{color:var(--white);background:var(--green);border-color:var(--green)}.gallery-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;display:grid}.gallery-card{background:var(--surface);border:1px solid var(--border);border-radius:8px;transition:box-shadow .16s,transform .16s;overflow:hidden}.gallery-card:hover{transform:translateY(-3px);box-shadow:0 10px 24px #1a25321a}.gallery-card-img{aspect-ratio:4/3;background:var(--paper);overflow:hidden}.gallery-card-img img{object-fit:cover;width:100%;height:100%;transition:transform .22s;display:block}.gallery-card:hover .gallery-card-img img{transform:scale(1.04)}.gallery-card-info{flex-direction:column;gap:4px;padding:12px 14px 14px;display:flex}.gallery-card-title{color:var(--ink);font-size:13px;font-weight:700;line-height:1.3}.gallery-card-caption{color:var(--subtle);font-size:11px}.gallery-empty{color:var(--muted);text-align:center;padding:40px 0;font-size:15px}.ba-grid{grid-template-columns:1fr 1fr;gap:16px;margin-bottom:16px;display:grid}.ba-panel{border:1px solid var(--border);border-radius:8px;overflow:hidden}.ba-img{aspect-ratio:4/3;background:var(--paper);overflow:hidden}.ba-img img{object-fit:cover;width:100%;height:100%;display:block}.ba-label{background:var(--white);border-top:1px solid var(--border);align-items:center;gap:14px;padding:14px 18px;display:flex}.ba-label span{text-transform:uppercase;letter-spacing:.06em;border-radius:4px;flex-shrink:0;padding:4px 10px;font-size:11px;font-weight:800}.ba-label--before span{color:var(--muted);background:var(--paper);border:1px solid var(--border)}.ba-label--after span{color:var(--white);background:var(--green)}.ba-label p{color:var(--muted);margin:0;font-size:13px}.ba-note{color:var(--subtle);text-align:center;margin:0;font-size:13px;font-style:italic}.why-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;display:grid}.why-item{grid-template-columns:20px 1fr;align-items:start;gap:16px;display:grid}.why-mark{background:var(--green);border-radius:2px;flex-shrink:0;width:10px;height:10px;margin-top:6px}.why-item strong{color:var(--ink);margin-bottom:6px;font-size:16px;font-weight:800;display:block}.why-item p{color:var(--muted);margin:0;font-size:14px;line-height:1.6}.trust-cards{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;display:grid}.trust-card{background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:20px 22px 22px}.trust-card-bar{background:var(--green);border-radius:2px;width:28px;height:3px;margin-bottom:14px}.trust-card strong{color:var(--ink);margin-bottom:8px;font-size:14px;font-weight:800;line-height:1.3;display:block}.trust-card p{color:var(--muted);margin:0;font-size:13px;line-height:1.55}.expect-steps{gap:0;max-width:680px;display:grid}.expect-step{border-bottom:1px solid var(--border);grid-template-columns:48px 1fr;align-items:start;gap:20px;padding:18px 0;display:grid}.expect-step:first-child{border-top:1px solid var(--border)}.expect-num{color:var(--green);letter-spacing:-.02em;font-size:20px;font-weight:900;line-height:1.4}.expect-step strong{color:var(--ink);margin-bottom:4px;font-size:16px;font-weight:800;display:block}.expect-step p{color:var(--muted);margin:0;font-size:14px;line-height:1.55}.contact-hero{background:var(--slate);color:var(--white);padding:56px 0}.contact-hero-inner{justify-content:space-between;align-items:flex-end;gap:40px;display:flex}.contact-hero-text h1{max-width:580px;color:var(--white);margin:0 0 12px;font-size:clamp(24px,3.4vw,46px);font-weight:800;line-height:1.1}.contact-hero-sub{color:#ffffffa6;max-width:520px;margin:0;font-size:16px;line-height:1.6}.contact-hero-phone{flex-direction:column;flex-shrink:0;align-items:center;display:flex}.phone-link{color:var(--white);white-space:nowrap;font-size:clamp(22px,2.8vw,32px);font-weight:800;text-decoration:none;transition:color .13s}.phone-link:hover,.phone-link:focus-visible{color:#fffc}.contact-hero-phone span{color:#ffffff80;letter-spacing:.07em;text-transform:uppercase;margin-top:4px;font-size:12px;font-weight:600}.contact-grid{grid-template-columns:.85fr 1.15fr;align-items:start;gap:56px;display:grid}.contact-info-col{flex-direction:column;gap:20px;display:flex}.contact-info-row{border-bottom:1px solid var(--border);flex-direction:column;gap:4px;padding-bottom:18px;display:flex}.contact-info-row strong{color:var(--subtle);letter-spacing:.08em;text-transform:uppercase;font-size:11px;font-weight:800}.contact-info-row span{color:var(--muted);font-size:14px}.contact-phone-link{color:var(--green);font-size:22px;font-weight:800;text-decoration:none;transition:color .13s}.contact-phone-link:hover,.contact-phone-link:focus-visible{color:var(--green-hover)}.contact-detail-link{color:var(--ink);font-size:14px;text-decoration:none;transition:color .13s}.contact-detail-link:hover{color:var(--green)}.after-submit-box{background:var(--paper);border-left:3px solid var(--green);border-radius:8px;padding:18px 20px}.after-submit-box strong{color:var(--ink);margin-bottom:10px;font-size:13px;font-weight:800;display:block}.after-submit-box ol{color:var(--muted);margin:0;padding-left:18px;font-size:13px;line-height:1.75}.estimate-form{background:var(--surface);border:1px solid var(--border);border-radius:8px;flex-direction:column;gap:14px;padding:28px;display:flex}.form-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.form-field{flex-direction:column;gap:6px;display:flex}.form-full{width:100%}.form-field span,.form-upload-label{color:var(--muted);letter-spacing:.04em;text-transform:uppercase;font-size:12px;font-weight:700}.form-field input,.form-field select,.form-field textarea{box-sizing:border-box;width:100%;color:var(--ink);background:var(--white);border:1px solid var(--border);font:inherit;border-radius:6px;padding:10px 12px;font-size:15px;transition:border-color .13s}.form-field input:focus,.form-field select:focus,.form-field textarea:focus{outline:2px solid var(--green);outline-offset:2px;border-color:var(--green)}.form-field textarea{resize:vertical}.form-upload-block{flex-direction:column;gap:8px;display:flex}.upload-area{background:var(--white);border:1.5px dashed var(--border);cursor:pointer;border-radius:6px;align-items:center;gap:12px;width:fit-content;padding:10px 16px;transition:border-color .13s,background .13s;display:flex}.upload-area:hover{border-color:var(--green);background:var(--green-tint)}.upload-input{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute;overflow:hidden}.upload-btn-text{color:var(--muted);font-size:14px;font-weight:600}.upload-note{color:var(--subtle);margin:0;font-size:12px;line-height:1.5}.form-submit{min-height:50px;color:var(--white);background:var(--green);font:inherit;cursor:pointer;border:none;border-radius:6px;padding:0 24px;font-size:16px;font-weight:800;transition:background .13s,transform .13s}.form-submit:hover,.form-submit:focus-visible{background:var(--green-hover);transform:translateY(-1px)}.form-success{background:var(--surface);border:1px solid var(--border);border-left:3px solid var(--green);border-radius:8px;flex-direction:column;gap:14px;padding:28px;display:flex}.form-success-icon{width:36px;height:36px;color:var(--white);background:var(--green);border-radius:50%;place-items:center;font-size:16px;font-weight:900;display:grid}.form-success strong{color:var(--ink);font-size:18px;font-weight:800}.form-success p{color:var(--muted);margin:0;font-size:15px;line-height:1.6}.form-next-steps{background:var(--green-tint);border-radius:6px;padding:16px 18px}.form-next-steps strong{color:var(--ink);margin-bottom:8px;font-size:13px;font-weight:800;display:block}.form-next-steps ol{color:var(--muted);margin:0;padding-left:18px;font-size:13px;line-height:1.75}.map-section-h2{color:var(--ink);margin:0 0 24px;font-size:clamp(22px,2.6vw,36px);font-weight:800;line-height:1.15}.service-area-panel{background-color:var(--paper);border:1px solid var(--border);background-image:linear-gradient(#0000000b 1px,#0000 1px),linear-gradient(90deg,#0000000b 1px,#0000 1px);background-size:28px 28px;border-radius:8px;flex-direction:column;justify-content:center;gap:24px;min-height:280px;padding:32px;display:flex}.sap-location{align-items:flex-start;gap:14px;display:flex}.sap-marker{background:var(--green);border-radius:50%;flex-shrink:0;width:14px;height:14px;margin-top:5px;display:block;box-shadow:0 0 0 5px #2d6a4f29}.sap-city{color:var(--ink);margin-bottom:4px;font-size:20px;font-weight:800;line-height:1.2;display:block}.sap-coverage{color:var(--muted);margin:0;font-size:14px;line-height:1.5}.sap-chips{flex-wrap:wrap;gap:8px;display:flex}.sap-chip{color:var(--ink);background:var(--white);border:1px solid var(--border);border-radius:20px;padding:5px 12px;font-size:13px;font-weight:600;display:inline-block;box-shadow:0 1px 3px #1a25320f}.sap-note{color:var(--subtle);margin:0;font-size:13px;line-height:1.5}.sap-note a{color:var(--green);font-weight:700;text-decoration:none}.sap-note a:hover,.sap-note a:focus-visible{color:var(--green-hover)}.site-footer{background:var(--slate)}.footer-inner{grid-template-columns:1.6fr .65fr 1fr 1fr;align-items:start;gap:32px;width:min(1120px,100% - 48px);margin:0 auto;padding:48px 0 40px;display:grid}.footer-brand-btn{cursor:pointer;font:inherit;background:0 0;border:none;align-items:center;gap:10px;margin-bottom:10px;padding:0;display:inline-flex}.footer-brand-btn .brand-mark{background:var(--green);color:var(--slate)}.footer-brand-btn .brand-name{color:var(--white);font-size:15px;font-weight:700}.footer-tagline{color:#ffffff70;margin:0;font-size:13px;line-height:1.5}.footer-nav,.footer-contact,.footer-areas{flex-direction:column;gap:6px;display:flex}.footer-nav strong,.footer-contact strong,.footer-areas strong{color:#fff6;letter-spacing:.1em;text-transform:uppercase;margin-bottom:4px;font-size:10px;font-weight:900;display:block}.footer-nav-link{color:#fff9;font:inherit;cursor:pointer;text-align:left;background:0 0;border:none;padding:0;font-size:14px;transition:color .13s}.footer-nav-link:hover,.footer-nav-link:focus-visible{color:var(--white)}.footer-contact a{color:#ffffffb3;font-size:14px;text-decoration:none;transition:color .13s;display:block}.footer-contact a:hover{color:var(--white)}.footer-areas p{color:#ffffff80;margin:0;font-size:13px;line-height:1.65}.footer-bar{border-top:1px solid #ffffff0f;padding:14px 0}.footer-bar-inner{color:#ffffff59;justify-content:space-between;align-items:center;width:min(1120px,100% - 48px);margin:0 auto;font-size:12px;display:flex}@media (width<=1024px){.service-cards{grid-template-columns:repeat(3,minmax(0,1fr))}.problems-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.services-full-grid{grid-template-columns:1fr}.service-full-card{grid-template-columns:180px 1fr}.process-steps,.trust-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.area-cta-inner{grid-template-columns:1fr;gap:36px}.cta-band-inner{flex-direction:column;align-items:flex-start;gap:24px}.footer-inner{grid-template-columns:1fr 1fr;gap:28px}.footer-brand{grid-column:1/-1}}@media (width<=860px){.site-nav{background:var(--slate);z-index:99;border-top:1px solid #ffffff0f;flex-direction:column;gap:2px;padding:10px 16px 16px;display:none;position:absolute;top:100%;left:0;right:0;box-shadow:0 12px 32px #0000003d}.site-nav--open{display:flex}.nav-link{color:#ffffffb3;border-radius:6px;padding:12px 16px;font-size:15px}.nav-link--active{color:var(--white);background:#ffffff1a}.nav-toggle{display:flex}.site-header{position:relative}.hero-section{grid-template-columns:1fr;min-height:auto}.hero-text-panel{padding:56px 24px 48px}.hero-media-panel{aspect-ratio:16/9;position:relative}.hero-media-item{object-fit:cover;width:100%;height:100%;max-height:280px;position:static}.gallery-preview{grid-template-columns:repeat(2,minmax(0,1fr))}.reviews-row,.reviews-grid{grid-template-columns:1fr}.contact-grid{grid-template-columns:1fr;gap:36px}.contact-hero-inner{flex-direction:column;align-items:flex-start;gap:20px}.rr-grid,.why-grid{grid-template-columns:1fr}.gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ba-grid{grid-template-columns:1fr}}@media (width<=640px){.section-inner{width:min(1120px,100% - 28px)}.section{padding:60px 0}.header-inner{width:min(1180px,100% - 28px)}.brand-name{display:none}.header-call{padding:8px 12px;font-size:13px}.header-call-full{display:none}.header-call-short{display:inline}.hero-text-panel{padding:48px 16px 40px}.hero-text-panel h1{font-size:28px}.hero-actions{flex-direction:column;align-items:stretch}.hero-actions .btn-primary,.hero-actions .btn-ghost{width:100%}.proof-strip{grid-template-columns:1fr 1fr;display:grid}.proof-strip-item{border-bottom:1px solid #ffffff26;border-right:none}.proof-strip-item:nth-child(odd){border-right:1px solid #ffffff26}.proof-strip-item:nth-last-child(-n+2){border-bottom:none}.service-cards,.problems-grid{grid-template-columns:1fr}.gallery-preview{grid-template-columns:1fr 1fr}.services-full-grid,.service-full-card{grid-template-columns:1fr}.service-full-img{aspect-ratio:16/9}.process-steps,.trust-cards{grid-template-columns:1fr}.gallery-grid{grid-template-columns:1fr 1fr}.page-header{padding:40px 0 36px}.page-header h1{font-size:26px}.form-row{grid-template-columns:1fr}.footer-inner{grid-template-columns:1fr;gap:24px;padding:40px 0 32px}.footer-bar-inner{text-align:center;flex-direction:column;gap:4px}.cta-band-actions{flex-direction:column;align-items:stretch;width:100%}.cta-band-actions .btn-primary-lg,.cta-band-actions .btn-outline{justify-content:center;width:100%}.area-cta-inner{grid-template-columns:1fr}.contact-hero-inner{flex-direction:column;align-items:flex-start}}
