:root{--green:#006c43;--deep:#003e2b;--dark:#002f22;--gold:#eda20c;--gold2:#ffa914;--cream:#f7f8f0;--pale:#eaf2df;--ink:#162b23;--muted:#5a6861;--line:#e4e9df;--shadow:0 16px 36px rgba(0,38,22,.09)}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:92px}body{margin:0;background:#fff;color:var(--ink);font-family:Inter,Arial,Helvetica,sans-serif;line-height:1.55}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}p{margin:0 0 1.1rem}.container{width:min(1180px,calc(100% - 48px));margin:0 auto}.skip-link{position:absolute;top:-80px;background:#fff;padding:12px;z-index:100}.skip-link:focus{top:8px}.site-header{position:sticky;top:0;z-index:20;background:#fff;box-shadow:0 1px 14px rgba(0,0,0,.08)}.header-inner{display:flex;align-items:center;justify-content:space-between;gap:22px;min-height:91px}.brand img{width:177px;height:74px;object-fit:contain}.nav{display:flex;align-items:center;gap:30px}.nav a{font-weight:700;font-size:14px}.nav a:hover,.text-link:hover,.service-link:hover{color:var(--gold)}.btn{display:inline-flex;justify-content:center;align-items:center;gap:15px;border:0;border-radius:9px;padding:14px 22px;font-weight:800;font-size:14px;text-align:center;transition:transform .2s,filter .2s;cursor:pointer}.btn:hover{transform:translateY(-2px);filter:brightness(1.04)}.btn-gold{background:var(--gold);color:#fff;box-shadow:0 5px 14px rgba(193,126,0,.23)}.btn-green{background:var(--green);color:#fff}.btn.large{padding:17px 24px;font-size:16px}.menu-toggle,.mobile-cta{display:none}.hero{position:relative;min-height:620px;background:linear-gradient(90deg,#042d20 0%,#063b2c 57%,#0e5a3e 100%);overflow:hidden;color:#fff}.hero-photo{position:absolute;inset:0 0 0 44%;background:url('assets/hero-house.jpg') center/cover no-repeat;opacity:.93}.hero:before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,#022b1f 0%,rgba(2,43,31,.99) 36%,rgba(2,43,31,.72) 57%,rgba(2,43,31,.04) 92%)}.hero-content{position:relative;z-index:2;min-height:620px;display:flex;align-items:center}.hero-copy{max-width:710px;padding:60px 0}.eyebrow{font-size:12px;letter-spacing:2.6px;font-weight:900;color:var(--green);margin-bottom:15px}.eyebrow.light{color:#eff2eb}.eyebrow span{color:var(--gold)}h1,h2,h3{line-height:1.08;letter-spacing:-1.3px;margin:0 0 20px}h1{font-size:clamp(54px,6.5vw,89px);font-weight:900}h1 em{font-style:normal;color:var(--gold2)}h2{font-size:clamp(34px,4vw,52px);font-weight:900}h2 span{color:var(--gold)}.hero-lead{max-width:520px;font-size:19px;color:#f2f5ef;line-height:1.6}.hero-actions{display:flex;align-items:center;gap:25px;margin-top:27px}.hero-phone{font-size:14px;font-weight:700}.trust-points{margin-top:45px;display:flex;flex-wrap:wrap;gap:20px;color:#fff;font-size:13px;font-weight:700}.trust-points span+span{border-left:1px solid #9ab0a7;padding-left:20px}.intro-strip{background:#f5f8f1;border-bottom:1px solid var(--line)}.intro-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;padding:26px 0}.intro-grid>div{border-left:3px solid var(--gold);padding-left:18px}.intro-grid b{font-size:16px;color:var(--deep)}.intro-grid p{font-size:13px;color:var(--muted);margin:2px 0}.section{padding:92px 0}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:36px}.section-heading p:not(.eyebrow){color:var(--muted);margin:0}.text-link{color:var(--green);font-weight:900;font-size:15px;white-space:nowrap}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.service-card{overflow:hidden;border:1px solid var(--line);border-radius:17px;background:#fff;box-shadow:var(--shadow)}.service-card>img{width:100%;height:auto;aspect-ratio:8/5;object-fit:cover;object-position:center}.service-body{position:relative;padding:34px 26px 27px}.service-icon{position:absolute;top:-26px;left:25px;width:54px;height:54px;display:flex;align-items:center;justify-content:center;border:4px solid #fff;border-radius:50%;background:var(--green);color:#fff;font-size:27px}.service-body h3{margin:0 0 12px;font-size:26px;color:var(--deep)}.service-body p{color:var(--muted);font-size:14px;min-height:68px}.service-body ul{padding-left:19px;color:#42564a;font-size:14px;line-height:2}.service-link{display:block;border-radius:7px;background:var(--pale);color:var(--deep);font-weight:900;text-align:center;padding:13px 8px;margin-top:18px}.image-disclaimer{font-size:12px;color:#768179;margin:20px 0 0}.contrast{background:#f8f9f4}.about-layout{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}.about-photo img{height:475px;width:100%;object-fit:cover;border-radius:18px;box-shadow:var(--shadow)}.about-copy>p:not(.eyebrow){color:var(--muted);line-height:1.8}.about-features{margin:25px 0 30px}.about-features div{display:flex;gap:17px;align-items:center;padding:12px 0;border-bottom:1px solid var(--line);font-weight:750}.about-features strong{color:var(--gold);font-size:20px}.season-banner{background:radial-gradient(circle at 100% 0,rgba(235,162,12,.15),transparent 45%),linear-gradient(120deg,#004b31,#002e21);color:#fff;padding:70px 0}.season-inner{display:flex;align-items:center;justify-content:space-between;gap:30px}.season-inner h2{margin-bottom:16px}.season-inner p:last-child{margin:0;color:#e7f0e9}.owner-layout{display:grid;grid-template-columns:1.1fr .9fr;gap:80px;align-items:center}.owner-copy{min-width:0;max-width:540px}.owner-copy>p:not(.eyebrow){color:var(--muted);font-size:17px;line-height:1.7}.owner-copy>p.owner-role{color:var(--deep);font-size:14px;font-weight:800;margin-bottom:24px}.owner-actions{display:flex;flex-wrap:wrap;align-items:center;gap:18px 24px;margin-top:28px}.owner-photo{width:100%;max-width:440px;justify-self:end;margin:0;overflow:hidden;border:1px solid var(--line);border-radius:18px;background:var(--deep);box-shadow:var(--shadow)}.owner-photo img{width:100%;height:auto;aspect-ratio:4/5;object-fit:cover}.owner-photo figcaption{padding:16px 20px;color:#fff;font-weight:800}.owner-photo figcaption span{display:block;margin-top:3px;color:#d0e9d9;font-size:12px;font-weight:400}.areas-section{background:#f6f8f2}.areas-layout{display:grid;grid-template-columns:1.15fr .85fr;gap:70px;align-items:center}.areas-layout p:not(.eyebrow){color:var(--muted);max-width:560px}.area-pills{display:flex;flex-wrap:wrap;gap:12px;margin:25px 0}.area-pills span{padding:12px 18px;border-radius:100px;background:#fff;border:1px solid #d8e8d7;font-weight:800;color:var(--deep)}.area-map{margin:0;min-width:0;overflow:hidden;border:1px solid #d8e8d7;border-radius:20px;background:#fff;box-shadow:var(--shadow)}.area-map figcaption{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 16px;padding:16px 20px;color:var(--deep);font-size:13px}.area-map figcaption a{color:var(--green);font-weight:800}.area-map figcaption a:hover{text-decoration:underline}.area-map figcaption a:focus-visible{outline:2px solid var(--green);outline-offset:4px;border-radius:2px}.quote-section{background:linear-gradient(120deg,#034c33,#002e21);color:#fff}.quote-layout{display:grid;grid-template-columns:.85fr 1.15fr;gap:72px;align-items:center}.quote-intro h2{font-size:clamp(37px,4.5vw,58px)}.quote-intro>p:not(.eyebrow){font-size:17px;color:#d8e9e0;line-height:1.75}.quote-notes{display:flex;flex-direction:column;gap:14px;font-size:14px;font-weight:700;margin-top:33px}.quote-form{padding:34px;background:#fff;color:var(--ink);border-radius:18px;box-shadow:0 20px 42px rgba(0,0,0,.2)}.quote-form h3{font-size:26px;letter-spacing:-.5px}.quote-form label{display:block;font-weight:800;font-size:13px;margin-bottom:14px}.quote-form label span{color:#ac4c08}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:0 15px}.quote-form input,.quote-form select,.quote-form textarea{display:block;width:100%;margin-top:7px;padding:12px 13px;border:1px solid #d5ddd4;border-radius:8px;background:#f9faf8;color:#203b2d;font-weight:500;outline-offset:2px}.quote-form textarea{resize:vertical}.submit{width:100%;font-size:16px;margin-top:5px}.form-note{font-size:11px;color:#6d786f;margin:13px 0 0}.hidden{position:absolute;left:-10000px}.footer{background:#002b1e;color:#fff;padding-top:55px}.footer-top{display:grid;grid-template-columns:1.6fr .8fr 1fr 1.1fr;gap:45px}.footer-brand img{width:210px;height:130px;object-fit:contain;background:rgba(255,255,255,.97);border-radius:8px;padding:5px}.footer-brand p,.footer-top>div>p{color:#c9dace;font-size:13px;line-height:1.8;margin:12px 0 0}.footer h3{font-size:16px;letter-spacing:0;margin:0 0 22px}.footer-top>div>a:not(.btn){display:block;margin:0 0 12px;font-size:13px;color:#d5e4d9}.footer-btn{margin-top:20px;white-space:nowrap}.footer-bottom{margin-top:55px;padding:22px 0;border-top:1px solid rgba(255,255,255,.2);display:flex;justify-content:space-between;gap:20px;color:#b2cbbd;font-size:12px}@media(max-width:980px){.desktop-cta{display:none}.nav{gap:16px}.header-inner{min-height:82px}.hero-photo{left:25%}.hero:before{background:linear-gradient(90deg,rgba(2,43,31,.98),rgba(2,43,31,.78) 70%,rgba(2,43,31,.28))}.about-layout,.owner-layout,.areas-layout,.quote-layout{gap:35px}.footer-top{grid-template-columns:repeat(2,1fr)}}@media(max-width:750px){.container{width:min(100% - 32px,600px)}.header-inner{min-height:75px}.brand img{height:65px;width:140px}.menu-toggle{display:flex;flex-direction:column;justify-content:center;gap:5px;background:none;border:0;padding:13px;order:2}.menu-toggle span{width:25px;height:3px;background:var(--deep);border-radius:2px}.nav{display:none;position:absolute;left:0;top:75px;right:0;padding:20px 25px;background:white;box-shadow:0 12px 20px rgba(0,0,0,.12);flex-direction:column;align-items:stretch;gap:0}.nav.open{display:flex}.nav a{padding:12px 8px}.mobile-cta{display:block;background:var(--gold);color:white!important;border-radius:8px;text-align:center;margin-top:10px}.hero,.hero-content{min-height:610px}.hero-photo{left:0;opacity:.28}.hero:before{background:linear-gradient(90deg,rgba(2,43,31,.91),rgba(2,43,31,.72))}.hero-copy{padding:50px 0}.hero-lead{font-size:17px}.hero-actions{flex-direction:column;align-items:flex-start}.trust-points{margin-top:35px;gap:10px}.trust-points span+span{border:0;padding:0}.intro-grid{grid-template-columns:1fr;gap:16px;padding:24px 0}.section{padding:65px 0}.section-heading{display:block}.section-heading .text-link{display:inline-block;margin-top:15px}.service-grid,.owner-layout,.about-layout,.areas-layout,.quote-layout{grid-template-columns:1fr}.owner-photo{justify-self:center}.service-body p{min-height:auto}.about-photo img{height:320px}.season-inner{display:block}.season-inner .btn{margin-top:22px}.quote-form{padding:23px}.form-grid{grid-template-columns:1fr}.footer-top{grid-template-columns:1fr 1fr;gap:35px 20px}.footer-bottom{flex-direction:column;margin-top:30px}.footer-brand img{width:175px;height:110px}}@media(max-width:420px){h1{font-size:49px}.eyebrow{font-size:10px;letter-spacing:1.6px}.footer-top{grid-template-columns:1fr}.quote-intro h2{font-size:40px}}

/* Business contact links */
.header-phone{font-size:.9rem;font-weight:750;color:#006c43;text-decoration:none;white-space:nowrap}.header-phone:hover,.footer a[href^="mailto:"]:hover{ text-decoration:underline }
@media(max-width:1050px){.header-phone{display:none}}

.quote-form .submit:disabled{cursor:wait;opacity:.7;transform:none}
.quote-form .form-status{padding:14px;border:1px solid #d8e8d7;border-radius:8px;background:#f2f7ef;color:#003e2b;font-size:14px;line-height:1.6;margin:16px 0 0}
.quote-form .form-status[data-state="error"]{background:#fff8ed;border-color:#d8a45c;color:#734007}
.quote-form .form-status:focus{outline:2px solid var(--green);outline-offset:3px}
