:root{--green:#123f29;--green2:#245d3d;--lime:#d5e5bc;--cream:#f8f7f0;--ink:#18251d}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);font-family:Arial,Helvetica,sans-serif;line-height:1.55}a{color:inherit;text-decoration:none}.header{position:sticky;top:0;z-index:20;background:#fff;display:flex;align-items:center;justify-content:space-between;padding:12px max(5%,calc((100vw - 1200px)/2));box-shadow:0 2px 14px #0000000c}.brand{display:flex;align-items:center;gap:12px;font-size:13px;letter-spacing:1.2px;font-weight:900;line-height:1.25}.brand img{height:58px;width:58px;object-fit:contain}.brand small{display:block;color:var(--green2);letter-spacing:2.5px;margin-top:4px}.header nav{display:flex;gap:28px;align-items:center;font-size:14px;font-weight:700}.nav-cta,.btn{background:var(--green);color:#fff;padding:14px 22px;border-radius:5px;display:inline-block;font-weight:700;border:2px solid var(--green);cursor:pointer}.nav-cta{padding:10px 16px}.menu{display:none;background:none;border:0;font-size:28px}.hero{min-height:600px;background:linear-gradient(110deg,#102e21 0%,#1d4b32 62%,#386744 100%);color:white;display:flex;align-items:center;justify-content:space-between;padding:70px max(6%,calc((100vw - 1140px)/2));gap:40px}.hero-inner{max-width:720px}.eyebrow{font-size:12px;letter-spacing:2.5px;font-weight:900;color:#7eac84}.hero .eyebrow{color:#d5e5bc}h1{font-size:clamp(42px,5.6vw,76px);line-height:1.07;letter-spacing:-2px;margin:18px 0}h1 em{color:#d7e6c3;font-style:normal}.lead{font-size:19px;max-width:610px;color:#e0e9de}.actions{display:flex;gap:12px;flex-wrap:wrap;margin:30px 0}.btn.outline{background:transparent;border-color:#b7d3bc}.btn.light{background:#f5f7ed;color:var(--green);border-color:#f5f7ed}.hero-note{font-size:13px;color:#c2d4c5}.hero-graphic{border:2px solid #ffffff30;border-radius:50%;width:280px;height:280px;flex-shrink:0;display:grid;place-items:center;text-align:center;color:#e5eddd}.hero-graphic .tree{font-size:145px;line-height:1}.hero-graphic span{font-size:9px;letter-spacing:2px;margin-top:-50px}.strip{background:#e8eee0;display:flex;justify-content:space-around;gap:15px;padding:20px 5%;font-size:13px;font-weight:800;text-transform:uppercase;letter-spacing:1px}.section{padding:95px max(6%,calc((100vw - 1140px)/2))}.section-heading{max-width:650px;margin-bottom:35px}h2{font-size:clamp(34px,4vw,52px);line-height:1.15;letter-spacing:-1px;margin:10px 0 18px}h3{font-size:23px;margin:8px 0}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.service{padding:30px;border:1px solid #dfe6db;border-radius:9px;background:#fbfcf9}.service-icon{font-size:36px}.service p{color:#536057}.service a{color:var(--green2);font-weight:800}.disclaimer,.small{font-size:12px;color:#68746a}.dark{background:var(--green);color:#fff}.dark p{color:#d1ded2}.two-col{display:grid;grid-template-columns:1.2fr 1fr;gap:80px;align-items:center}.feature-list>div{display:flex;gap:22px;padding:25px 0;border-bottom:1px solid #ffffff30;font-size:19px}.feature-list strong{color:#b3d6a9}.areas{background:var(--cream)}.areas>p:not(.eyebrow){max-width:650px}.towns{display:flex;flex-wrap:wrap;gap:12px;margin-top:25px}.towns span{background:white;border:1px solid #dce5d7;padding:12px 17px;border-radius:30px;font-weight:700}.contact{display:grid;grid-template-columns:1fr 1fr;gap:65px}.contact form{background:#f4f7f1;padding:30px;border-radius:10px}.contact label{display:block;font-weight:700;font-size:13px;margin-bottom:15px}.contact input,.contact select,.contact textarea{width:100%;display:block;margin-top:6px;padding:12px;border:1px solid #cbd7c9;border-radius:5px;font:inherit;background:white}.contact button{width:100%}footer{background:#0b281a;color:white;padding:35px 6%;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:20px}footer p,footer small{color:#b7cabb;font-size:12px}footer div:nth-child(2){display:flex;gap:18px;font-size:13px}@media(max-width:850px){.header nav{display:none;position:absolute;top:82px;left:0;right:0;background:white;padding:22px;flex-direction:column;align-items:stretch}.header nav.open{display:flex}.menu{display:block}.hero{padding:70px 6%;min-height:auto}.hero-graphic{display:none}.cards,.two-col,.contact{grid-template-columns:1fr}.two-col,.contact{gap:30px}.strip{flex-wrap:wrap;text-align:center}.section{padding:65px 6%}.brand{font-size:11px}.brand img{height:50px;width:50px}}
