:root{--forest:#103b29;--deep:#082b1c;--green:#376d39;--lime:#d1ec6a;--ink:#172e23;--muted:#526359;--line:#dce5df;--mist:#f2f6f3;--white:#fff;--radius:18px}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;font-family:Arial,Helvetica,sans-serif;color:var(--ink);font-size:17px;line-height:1.65;background:#fff}a{color:var(--forest);text-underline-offset:4px}a:hover{color:#477424}button,input,textarea,select{font:inherit}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #709b23;outline-offset:5px}img{display:block;max-width:100%;height:auto}h1,h2,h3,p{margin-top:0}h1,h2,h3{line-height:1.08;letter-spacing:-.045em}h1{font-size:clamp(2.5rem,5.3vw,4.8rem);font-weight:800;margin-bottom:24px}h2{font-size:clamp(2rem,3.3vw,3.15rem);margin-bottom:22px}h3{font-size:1.3rem;letter-spacing:-.025em;line-height:1.25;margin-bottom:12px}p{margin-bottom:20px}p:last-child{margin-bottom:0}.wrap{width:min(1180px,calc(100% - 64px));margin-inline:auto}.skip{position:fixed;top:-100px;left:12px;background:white;padding:12px;z-index:100}.skip:focus{top:10px}.topline{background:var(--forest);color:#fff;font-size:13px;padding:8px 0;letter-spacing:.02em}.topline .wrap{display:flex;justify-content:space-between;gap:20px}.topline a{color:white}.site-header{position:sticky;top:0;background:rgba(255,255,255,.98);z-index:30;border-bottom:1px solid var(--line)}.navrow{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:100px}.brand{display:block;flex-shrink:0}.brand img{width:245px;height:auto}.navlinks{display:flex;align-items:center;gap:28px}.navlinks>a{font-size:15px;text-decoration:none;font-weight:700;padding:10px 0}.navlinks a[aria-current=page]{text-decoration:underline}.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:16px 24px;min-height:54px;border-radius:7px;background:var(--forest);color:white;border:1px solid var(--forest);text-decoration:none;font-weight:700;font-size:16px;line-height:1.3;text-align:center;cursor:pointer;transition:background .15s}.btn:hover{background:#22543b;color:white}.btn.lime{background:var(--lime);border-color:var(--lime);color:var(--deep)}.btn.lime:hover{background:#ddef9e}.btn.outline{background:transparent;color:var(--forest);border-color:#9cad9f}.btn.outline:hover{background:var(--mist)}.btn.small{padding:13px 18px;min-height:48px;white-space:nowrap}.phone-icon{width:18px;height:18px;flex-shrink:0;fill:none;stroke:currentColor;stroke-width:1.8}.menu-toggle{display:none;background:transparent;border:1px solid var(--line);border-radius:6px;padding:8px 13px;font-size:15px;font-weight:bold;min-height:44px}.hero{padding:64px 0 60px;background:var(--mist)}.hero-grid{display:grid;grid-template-columns:1.03fr 1fr;gap:56px;align-items:center}.eyebrow{color:var(--green);font-size:14px;font-weight:700;letter-spacing:.06em;margin-bottom:20px;display:flex;align-items:center;gap:12px}.eyebrow:before{content:'';display:block;width:28px;height:2px;background:currentColor}.lead{font-size:19px;line-height:1.65;color:var(--muted);max-width:650px}.hero h1 span{color:var(--green)}.actions{display:flex;gap:12px;flex-wrap:wrap;margin:28px 0 18px}.micro{font-size:14px;color:var(--muted)}.hero-photo{position:relative;padding-bottom:30px}.hero-photo>img{width:100%;height:490px;object-fit:cover;object-position:50% 45%;border-radius:14px}.photo-label{position:absolute;bottom:0;left:24px;right:24px;padding:18px 22px;background:var(--forest);color:#fff;border-radius:9px;display:flex;justify-content:space-between;gap:14px;align-items:center}.photo-label b{display:block;font-size:19px;line-height:1.25}.photo-label span{font-size:13px;color:#dce8dc}.photo-label .badge{font-size:13px;border:1px solid #698171;border-radius:4px;padding:5px 9px;white-space:nowrap}.value-strip{border-bottom:1px solid var(--line)}.value-row{display:grid;grid-template-columns:repeat(3,1fr)}.value-row>div{padding:25px 25px 25px 0;font-size:15px;font-weight:700;display:flex;align-items:center;gap:12px}.value-row>div:before{content:'✓';font-size:18px;color:var(--green)}.section{padding:88px 0}.section.soft{background:var(--mist)}.section-head{display:flex;justify-content:space-between;align-items:end;gap:50px;margin-bottom:32px}.section-head h2{max-width:640px;margin:0}.section-head p{max-width:400px;margin:0;color:var(--muted)}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.card{display:flex;flex-direction:column;border:1px solid var(--line);border-radius:12px;overflow:hidden;background:#fff}.card>img{width:100%;height:205px;object-fit:cover}.card-body{padding:26px;flex:1;display:flex;flex-direction:column}.card p{font-size:15px;color:var(--muted);margin-bottom:22px}.card h3 a{text-decoration:none}.card .textlink{margin-top:auto}.textlink{font-size:15px;font-weight:700}.mini-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:24px}.mini-link{border-bottom:1px solid var(--line);padding:14px 0;text-decoration:none;font-size:16px;font-weight:700;display:flex;justify-content:space-between;gap:14px}.mini-link span{color:var(--muted);font-weight:400;font-size:14px}.split{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:start}.split-image{width:100%;height:440px;object-fit:cover;border-radius:14px}.numbered{list-style:none;padding:0;margin:0;counter-reset:step}.numbered li{position:relative;padding:0 0 30px 64px;counter-increment:step}.numbered li:before{content:'0' counter(step);position:absolute;left:0;top:0;font-weight:bold;color:var(--green);font-size:24px}.numbered li:not(:last-child){border-bottom:1px solid var(--line);margin-bottom:26px}.numbered p{color:var(--muted);font-size:16px}.dark{background:var(--forest);color:white}.dark .eyebrow{color:var(--lime)}.dark p{color:#d6e2d9}.dark a:not(.btn){color:var(--lime)}.region-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:36px;margin-top:40px}.region h3{font-size:19px;color:var(--lime);border-bottom:1px solid #52715f;padding-bottom:16px}.town-links{display:flex;flex-wrap:wrap;gap:9px 18px}.town-links a{font-size:16px;text-decoration:none}.town-links a:hover{text-decoration:underline}.callout{border-left:4px solid var(--green);padding:22px 26px;background:var(--mist);margin:28px 0}.callout h3{font-size:20px}.callout p{font-size:16px}.faq{max-width:850px}.faq details{border-bottom:1px solid var(--line)}.faq summary{padding:22px 36px 22px 0;font-weight:700;cursor:pointer;list-style:none;position:relative;font-size:18px;line-height:1.4}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:'+';position:absolute;right:8px;font-weight:400;font-size:24px;top:16px}.faq details[open] summary:after{content:'−'}.faq details p{color:var(--muted);font-size:16px;margin-bottom:24px;max-width:760px}.contact-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:78px;align-items:start}.big-phone{font-size:clamp(1.7rem,3.2vw,2.7rem);font-weight:bold;letter-spacing:-.035em;text-decoration:none;display:block;margin:24px 0 8px}.contact-copy>a:not(.big-phone){font-size:16px;overflow-wrap:anywhere}.form-card{background:white;border:1px solid var(--line);border-radius:14px;padding:32px}.form-card h3{font-size:25px}.form-card>p{font-size:15px;color:var(--muted)}.form-fields{display:grid;grid-template-columns:1fr 1fr;gap:18px}.field label{display:block;font-weight:700;font-size:14px;margin-bottom:6px}.field input,.field select,.field textarea{width:100%;border:1px solid #a9b7ad;background:white;color:var(--ink);border-radius:5px;padding:12px;min-height:48px;font-size:16px}.field textarea{resize:vertical;min-height:125px}.field.full{grid-column:1/-1}.checkline{display:flex;align-items:flex-start;gap:10px;font-size:13px;color:var(--muted);margin:18px 0}.checkline input{min-width:18px;min-height:18px;margin-top:4px}.form-card .btn{width:100%}.form-status{font-size:15px;line-height:1.5;margin-top:14px}.form-status.error{color:#a12323}.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}.final-call{padding:50px 0;background:var(--lime)}.final-call .wrap{display:flex;align-items:center;justify-content:space-between;gap:30px}.final-call h2{font-size:36px;margin-bottom:8px}.final-call p{font-size:16px;margin:0}.footer{padding:58px 0 28px;background:var(--deep);color:#d6e2d9;font-size:14px}.footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:64px}.footer-logo{background:white;padding:12px;border-radius:4px;width:235px;margin-bottom:20px}.footer h3{color:white;font-size:17px}.footer a{color:#d6e2d9}.footer ul{list-style:none;margin:0;padding:0}.footer li{margin-bottom:9px}.footer-bottom{border-top:1px solid #3b5949;margin-top:36px;padding-top:24px;display:flex;gap:20px;justify-content:space-between;font-size:13px}.mobile-call{display:none}.crumbs{font-size:13px;padding:23px 0;color:var(--muted);display:flex;flex-wrap:wrap;gap:8px}.crumbs a{color:var(--muted)}.inner-hero{padding:20px 0 55px;background:var(--mist)}.inner-hero .hero-grid{gap:60px}.inner-hero h1{font-size:clamp(2.3rem,4.1vw,3.8rem)}.inner-hero .hero-photo{padding-bottom:0}.inner-hero .hero-photo>img{height:350px}.inner-hero.text-only .hero-grid{grid-template-columns:1.35fr .65fr}.quote-note{background:white;padding:32px;border-radius:12px;border:1px solid var(--line)}.quote-note h2{font-size:26px}.quote-note ul{padding-left:20px;font-size:16px}.article-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:80px}.article section{margin-bottom:44px}.article h2{font-size:32px;line-height:1.17}.article h3{font-size:22px}.article p{color:var(--muted)}.article ul{padding-left:22px}.article li{padding:5px 0}.item-list{display:grid;grid-template-columns:1fr 1fr;gap:0 28px}.sidebar{align-self:start;position:sticky;top:130px;border:1px solid var(--line);padding:25px;border-radius:12px;background:var(--mist)}.sidebar h2{font-size:23px}.sidebar p{font-size:15px;color:var(--muted)}.sidebar .btn{width:100%;padding-inline:10px}.sidebar ul{list-style:none;padding:0;margin:22px 0 0}.sidebar li{padding:8px 0;border-top:1px solid var(--line);font-size:15px}.service-group{margin-bottom:50px}.service-group h2{font-size:32px}.directory-card{padding:25px;border:1px solid var(--line);border-radius:10px}.directory-card a{font-size:20px;font-weight:bold;text-decoration:none;line-height:1.3}.directory-card p{margin:12px 0 0;font-size:15px;color:var(--muted)}.area-tiles{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.area-tile{padding:16px;border:1px solid var(--line);border-radius:7px;text-decoration:none;font-weight:700;font-size:16px}.area-tile:hover{background:var(--mist)}.area-note{border-top:1px solid var(--line);padding-top:26px;margin-top:34px}.tag{display:inline-block;background:#e6eedf;color:#305331;padding:5px 11px;border-radius:4px;font-size:13px;font-weight:700;margin-bottom:18px}.compare{width:100%;border-collapse:collapse;font-size:16px}.compare th,.compare td{text-align:left;padding:17px;border-bottom:1px solid var(--line);vertical-align:top}.compare th{background:var(--mist)}.table-wrap{overflow-x:auto}.wide-prose{max-width:850px}.wide-prose h2{font-size:30px;margin-top:38px}.wide-prose h3{font-size:22px}.wide-prose p{color:var(--muted)}.source-note{font-size:14px;color:var(--muted);padding-top:16px;border-top:1px solid var(--line)}[hidden]{display:none!important}.noscript{padding:15px;background:var(--mist)}
@media(min-width:1500px){.hero{padding:80px 0}.hero-photo>img{height:510px}}
@media(max-width:1050px){.navlinks{gap:18px}.navrow{gap:14px}.brand img{width:205px}.navlinks>a{font-size:14px}.header-call{display:none}.hero-grid{gap:35px}.article-layout{gap:40px}.contact-grid{gap:40px}.area-tiles{grid-template-columns:repeat(3,1fr)}}
@media(max-width:760px){.wrap{width:calc(100% - 36px)}.topline{font-size:12px}.topline .top-extra{display:none}.navrow{min-height:78px;flex-wrap:wrap;gap:0}.brand img{width:208px}.menu-toggle{display:block}.navlinks{width:100%;flex-direction:column;gap:0;align-items:stretch;border-top:1px solid var(--line);padding-bottom:12px}.js .navlinks{display:none}.js .navlinks.open{display:flex}.navlinks>a{font-size:16px;padding:13px 2px}.hero{padding:35px 0 40px}.hero-grid,.inner-hero.text-only .hero-grid{grid-template-columns:1fr;gap:28px}.hero h1{font-size:clamp(2.65rem,10.7vw,4rem);margin-bottom:20px}.eyebrow{font-size:12px;margin-bottom:18px}.lead{font-size:17px}.actions{gap:10px;margin-top:24px}.actions .btn{padding:15px 18px}.hero-photo>img{height:310px}.photo-label{left:14px;right:14px;padding:17px}.photo-label b{font-size:17px}.value-row{grid-template-columns:1fr}.value-row>div{padding:13px 0;border-bottom:1px solid var(--line)}.value-row>div:last-child{border:0}.section{padding:55px 0}.section-head{display:block;margin-bottom:25px}.section-head h2{margin-bottom:17px}.section-head p{max-width:none}.grid{grid-template-columns:1fr}.card{display:grid;grid-template-columns:115px 1fr}.card>img{height:100%;min-height:190px}.card-body{padding:21px}.card h3{font-size:20px}.card p{font-size:14px;margin-bottom:13px}.mini-grid{grid-template-columns:1fr 1fr;gap:8px 20px}.mini-link{font-size:14px}.mini-link span{display:none}.split,.contact-grid{grid-template-columns:1fr;gap:32px}.split-image{height:300px}.region-grid{grid-template-columns:1fr;gap:30px}.region h3{margin-bottom:15px}.town-links{gap:10px 20px}.form-card{padding:24px 20px}.form-fields{gap:16px}.final-call .wrap{display:block}.final-call h2{font-size:30px}.final-call .btn{margin-top:24px}.footer-grid{grid-template-columns:1fr 1fr;gap:35px 24px}.footer-grid>div:first-child{grid-column:1/-1;max-width:400px}.footer-bottom{display:block}.footer-bottom span{display:block;margin-bottom:10px}.footer{padding-bottom:115px}.mobile-call{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:40;align-items:center;justify-content:space-between;background:white;border-top:1px solid var(--line);padding:10px 18px calc(10px + env(safe-area-inset-bottom));gap:12px}.mobile-call>span{font-size:12px;line-height:1.4}.mobile-call>span strong{display:block;font-size:14px}.mobile-call .btn{font-size:15px;min-height:48px;padding:12px 17px}.inner-hero{padding:10px 0 35px}.inner-hero h1{font-size:2.6rem}.inner-hero .hero-photo>img{height:255px}.inner-hero .quote-note{display:none}.article-layout{grid-template-columns:1fr;gap:30px}.sidebar{position:static}.article h2{font-size:28px}.article section{margin-bottom:35px}.item-list{grid-template-columns:1fr}.area-tiles{grid-template-columns:1fr 1fr}.directory-card{padding:23px}.directory-card a{font-size:20px}.crumbs{padding:17px 0;font-size:12px}.compare th,.compare td{padding:12px;font-size:14px}.form-card .field{grid-column:1/-1}html{scroll-padding-top:90px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
@media print{.site-header,.topline,.mobile-call,.final-call,.form-card,.footer,.sidebar{display:none}body{color:#000}.section{padding:20px 0}.wrap{width:100%}.article-layout{display:block}details>p{display:block!important}}
/* Keep long labels and enlarged text within narrow viewports. */
h1,h2,h3{overflow-wrap:anywhere}.hero-grid>* ,.grid>* ,.split>* ,.contact-grid>* ,.article-layout>* ,.footer-grid>*{min-width:0}.footer-logo{display:block}.footer-logo img{width:100%}.footer a{overflow-wrap:anywhere}
@media(min-width:761px){.hero h1{font-size:clamp(2.8rem,5vw,4.4rem)}}
@media(max-width:760px){.mobile-call>.btn{white-space:nowrap;flex-shrink:0;font-size:14px;padding:12px 13px;gap:7px}.mobile-call>span{min-width:0}}
