:root{--pine:#102c2a;--pine-2:#173d39;--ink:#17211f;--cream:#f5f1e8;--paper:#fbfaf6;--gold:#d8aa58;--gold-2:#f1ce83;--sage:#789587;--line:#d9d8d0;--white:#fff;--shadow:0 24px 70px rgba(16,44,42,.12)}
*{box-sizing:border-box}[hidden]{display:none!important}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--paper);font-family:"DM Sans",system-ui,sans-serif;line-height:1.6}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}.shell{width:min(1180px,calc(100% - 40px));margin-inline:auto}.section{padding:112px 0}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;z-index:1000;left:16px;top:-60px;background:var(--white);padding:12px 18px;border-radius:8px}.skip-link:focus{top:16px}.eyebrow{margin:0 0 18px;color:var(--gold-2);font-weight:700;font-size:.75rem;letter-spacing:.16em;text-transform:uppercase}.eyebrow.dark{color:#92702f}.site-header{position:fixed;z-index:100;inset:0 0 auto;display:flex;align-items:center;justify-content:space-between;padding:18px max(24px,calc((100vw - 1180px)/2));color:var(--white);transition:.3s ease}.site-header.scrolled{background:rgba(16,44,42,.96);backdrop-filter:blur(14px);box-shadow:0 10px 30px rgba(0,0,0,.12);padding-block:12px}.brand{display:inline-flex;align-items:center;gap:11px}.brand-mark{width:42px;height:42px;fill:none;stroke:var(--gold-2);stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round}.brand span{display:grid;line-height:1;text-transform:uppercase;letter-spacing:.12em}.brand strong{font:800 1rem/1 "Libre Franklin",sans-serif}.brand small{font-size:.63rem;letter-spacing:.38em;margin-top:6px}.site-nav{display:flex;align-items:center;gap:30px;font-size:.93rem;font-weight:600}.site-nav a{opacity:.87}.site-nav a:hover,.site-nav a:focus{opacity:1}.nav-cta{padding:11px 17px;border:1px solid rgba(255,255,255,.65);border-radius:999px}.menu-button{display:none;background:none;border:0;padding:8px}.menu-button span:not(.sr-only){display:block;width:24px;height:2px;background:#fff;margin:5px}.hero{position:relative;min-height:760px;height:94vh;max-height:980px;display:grid;align-items:center;color:var(--white);overflow:hidden}.hero-image,.hero-scrim{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.hero-scrim{background:linear-gradient(90deg,rgba(6,22,23,.92) 0%,rgba(8,28,29,.76) 35%,rgba(10,30,31,.17) 70%,rgba(10,30,31,.05) 100%),linear-gradient(0deg,rgba(7,24,24,.65) 0%,transparent 40%)}.hero-content{position:relative;z-index:1;padding-top:80px}.hero h1,.section h2{font-family:"Libre Franklin",sans-serif;letter-spacing:-.045em;line-height:1.03}.hero h1{font-size:clamp(3.4rem,6.3vw,6.2rem);max-width:850px;margin:0 0 26px}.hero-copy{font-size:clamp(1.1rem,1.5vw,1.35rem);max-width:650px;color:rgba(255,255,255,.82);margin:0 0 36px}.hero-actions{display:flex;gap:14px;align-items:center;flex-wrap:wrap}.button{border:0;border-radius:5px;display:inline-flex;justify-content:center;align-items:center;gap:9px;padding:15px 22px;font:700 .94rem/1 "DM Sans",sans-serif;cursor:pointer;transition:transform .2s,background .2s,color .2s}.button:hover{transform:translateY(-2px)}.button-primary{background:var(--gold-2);color:#24302d}.button-primary:hover{background:#ffda8d}.button-quiet{color:white;border-bottom:1px solid rgba(255,255,255,.55);border-radius:0;padding-inline:5px}.trust-row{display:flex;gap:34px;list-style:none;padding:0;margin:60px 0 0;color:rgba(255,255,255,.76);font-size:.88rem}.trust-row li{display:flex;align-items:center;gap:10px}.trust-row li:before{content:"";width:7px;height:7px;border:1px solid var(--gold-2);transform:rotate(45deg)}.intro{padding-bottom:128px}.section-heading{display:grid;grid-template-columns:1fr 1fr;gap:25px 80px;align-items:end;margin-bottom:62px}.section-heading .eyebrow{grid-column:1/-1;margin-bottom:-5px}.section h2{font-size:clamp(2.4rem,4.1vw,4.25rem);margin:0}.section-heading>p:last-child{font-size:1.08rem;color:#56615e;margin:0 0 7px}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.service-card{position:relative;min-height:520px;padding:34px;border:1px solid var(--line);background:#fff;overflow:hidden;transition:.3s ease}.service-card:hover{transform:translateY(-7px);box-shadow:var(--shadow);border-color:transparent}.service-card:before{content:"";position:absolute;inset:auto -30px -70px;width:230px;height:230px;border-radius:50%;background:rgba(120,149,135,.1)}.service-number{position:absolute;right:28px;top:24px;font:700 3rem/1 "Libre Franklin",sans-serif;color:#ecece6}.service-card svg{width:68px;height:68px;fill:none;stroke:var(--pine-2);stroke-width:2;stroke-linecap:round;stroke-linejoin:round;margin:64px 0 44px}.service-label{color:#92702f;text-transform:uppercase;letter-spacing:.14em;font-size:.7rem;font-weight:700}.service-card h3{font:700 1.65rem/1.15 "Libre Franklin",sans-serif;margin:9px 0 17px}.service-card>p:not(.service-label){color:#66706d}.service-card ul{list-style:none;padding:18px 0 0;margin:22px 0 0;border-top:1px solid #e6e5de}.service-card li{padding:4px 0;font-size:.9rem}.service-card li:before{content:"—";color:#a67c30;margin-right:9px}.holiday{background:#fffdf7}.exterior{background:#f6faf8}.care{background:#f8f7f1}.approach{background:var(--pine);color:white;position:relative;overflow:hidden}.approach:after{content:"";position:absolute;width:620px;height:620px;border:1px solid rgba(216,170,88,.17);border-radius:50%;right:-220px;top:-300px;box-shadow:0 0 0 70px rgba(216,170,88,.05),0 0 0 140px rgba(216,170,88,.035)}.approach-layout{position:relative;z-index:1;display:grid;grid-template-columns:.9fr 1.1fr;gap:120px;align-items:center}.approach-copy p:not(.eyebrow){color:rgba(255,255,255,.68);font-size:1.05rem}.text-link{display:inline-block;margin-top:18px;color:var(--gold-2);font-weight:700;border-bottom:1px solid rgba(241,206,131,.45)}.process-list{list-style:none;margin:0;padding:0}.process-list li{display:grid;grid-template-columns:58px 1fr;gap:22px;padding:30px 0;border-bottom:1px solid rgba(255,255,255,.13)}.process-list li>span{display:grid;place-items:center;width:48px;height:48px;border:1px solid rgba(241,206,131,.6);border-radius:50%;color:var(--gold-2);font-weight:700}.process-list strong{font:700 1.2rem "Libre Franklin",sans-serif}.process-list p{margin:7px 0 0;color:rgba(255,255,255,.6)}.area-panel{display:grid;grid-template-columns:1.1fr .9fr;min-height:530px;background:var(--cream);border:1px solid #e1ded3}.map-graphic{display:grid;place-items:center;background:linear-gradient(145deg,#e4ebdf,#f3eee0);overflow:hidden}.map-graphic svg{width:90%;max-width:600px}.county{fill:rgba(255,255,255,.7);stroke:#afaa96;stroke-width:2}.roads{fill:none;stroke:#c7c1ad;stroke-width:3;stroke-dasharray:8 9}.map-graphic circle:not(.pulse){fill:var(--pine);stroke:var(--gold-2);stroke-width:5}.pulse{fill:none;stroke:var(--pine);stroke-width:2;opacity:.35;transform-origin:302px 193px;animation:pulse 2.4s infinite}@keyframes pulse{to{transform:scale(1.8);opacity:0}}.area-copy{padding:72px 64px;align-self:center}.area-copy p:not(.eyebrow){color:#59645f}.place-list{display:flex;flex-wrap:wrap;gap:10px;margin-top:30px}.place-list span{border:1px solid #c6c3b9;border-radius:999px;padding:7px 12px;font-size:.82rem;background:rgba(255,255,255,.35)}.estimate{background:#0b2423;color:white}.estimate-layout{display:grid;grid-template-columns:.78fr 1.22fr;gap:95px}.estimate-intro{position:sticky;top:110px;align-self:start}.estimate-intro>p:not(.eyebrow){color:rgba(255,255,255,.65)}.estimate-note{margin-top:36px;padding:18px;border-left:3px solid var(--gold);background:rgba(255,255,255,.05);display:grid}.estimate-note span{color:rgba(255,255,255,.58);font-size:.88rem;margin-top:3px}.estimate-form{background:#fff;color:var(--ink);padding:44px;border-radius:3px}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}label,legend{display:grid;gap:8px;font-weight:700;font-size:.88rem}input,textarea{width:100%;border:1px solid #cbcfc9;border-radius:4px;padding:13px 14px;font:inherit;color:inherit;background:#fff}input:focus,textarea:focus{outline:3px solid rgba(216,170,88,.28);border-color:#a77e37}fieldset{border:0;padding:0;margin:24px 0}legend{margin-bottom:10px}.service-picks{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.service-picks label input{position:absolute;opacity:0}.service-picks span{display:grid;place-items:center;min-height:56px;border:1px solid #cfd3cd;border-radius:4px;padding:8px;text-align:center;font-weight:600;font-size:.82rem;cursor:pointer}.service-picks input:checked+span{border-color:var(--pine);background:#eaf1ed;color:var(--pine)}.form-submit{margin-top:22px;width:100%}.form-status{min-height:24px;margin:13px 0 0;font-size:.88rem;color:#5f6b66}.request-summary{margin-top:22px;padding:18px;border:1px solid #d7d9d3;background:#f6f6f1;display:grid;gap:13px}.request-summary p{white-space:pre-line;margin:6px 0 0;font-size:.88rem}.button-outline{border:1px solid var(--pine);background:transparent;color:var(--pine);justify-self:start}.site-footer{background:#061a19;color:rgba(255,255,255,.65);padding:72px 0 24px}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:70px}.footer-grid>div{display:flex;flex-direction:column;align-items:flex-start;gap:8px}.footer-grid>div:first-child p{max-width:380px}.footer-grid strong{color:white}.footer-grid a:hover{color:white}.footer-brand{color:white;margin-bottom:12px}.footer-bottom{display:flex;justify-content:space-between;border-top:1px solid rgba(255,255,255,.1);margin-top:60px;padding-top:20px;font-size:.78rem}
@media(max-width:900px){.section{padding:84px 0}.site-nav{position:absolute;top:100%;left:0;right:0;display:none;flex-direction:column;align-items:stretch;background:var(--pine);padding:24px}.site-nav.open{display:flex}.menu-button{display:block}.section-heading,.approach-layout,.area-panel,.estimate-layout{grid-template-columns:1fr;gap:45px}.service-grid{grid-template-columns:1fr}.service-card{min-height:auto}.service-card svg{margin-top:30px}.area-copy{padding:50px 36px}.estimate-intro{position:static}.footer-grid{grid-template-columns:1fr 1fr}.footer-grid>div:first-child{grid-column:1/-1}}
@media(max-width:620px){.shell{width:min(100% - 28px,1180px)}.site-header{padding:12px 16px}.brand-mark{width:36px;height:36px}.hero{min-height:720px;height:100svh}.hero-image{object-position:62% center}.hero-scrim{background:linear-gradient(90deg,rgba(5,20,20,.94),rgba(7,25,25,.7)),linear-gradient(0deg,rgba(7,24,24,.8),transparent)}.hero h1{font-size:clamp(2.8rem,14vw,4.3rem)}.hero-copy{font-size:1.03rem}.trust-row{display:grid;gap:8px;margin-top:40px}.section-heading{display:block}.section-heading .eyebrow{margin-bottom:18px}.section-heading>p:last-child{margin-top:24px}.approach-layout{gap:50px}.map-graphic{min-height:300px}.area-copy{padding:40px 26px}.estimate-form{padding:26px 20px}.field-row,.service-picks{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr;gap:34px}.footer-grid>div:first-child{grid-column:auto}.footer-bottom{display:grid;gap:6px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.pulse{animation:none}.button,.service-card{transition:none}}
