*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;color:#142d43;background:#fff;font-family:Arial,Helvetica,sans-serif;font-size:17px;line-height:1.65}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}a,button,summary{touch-action:manipulation}img,video{display:block;max-width:100%}.wrap{width:min(1240px,90%);margin:auto}.top{background:#123e30;color:#fff;font-size:11px;font-weight:700;letter-spacing:1.5px;padding:10px 0}.top .wrap{display:flex;justify-content:space-between}.top a{font-size:13px}header{position:sticky;top:0;background:#fff;z-index:20;border-bottom:1px solid #e0e7ec}.head{display:flex;align-items:center;justify-content:space-between;min-height:102px;gap:30px}.brand img{width:255px}nav{display:flex;gap:23px;align-items:center;font-size:13px;font-weight:700}nav details{position:relative}summary{cursor:pointer;list-style:none}summary:after{content:' +';color:#0a85bd}nav details>div{position:absolute;top:35px;left:0;min-width:260px;background:white;box-shadow:0 10px 35px #123e3025;padding:10px;max-height:65vh;overflow:auto}nav details>div a{display:block;padding:10px;border-bottom:1px solid #eee}nav a:hover,nav summary:hover{color:#367f4f}.btn{display:inline-flex;align-items:center;justify-content:center;background:#26794b;color:white;padding:17px 27px;font-size:12px;letter-spacing:1px;font-weight:800;border:1px solid #26794b;cursor:pointer;gap:20px}.btn:hover{background:#123e30;color:white}.btn.small{padding:13px 18px;font-size:11px}.btn.white{background:white;color:#123e30;border-color:white}.btn.outline{background:transparent;border:1px solid #ffffff88;color:white}.menutoggle{display:none}.hero{position:relative;min-height:660px;display:flex;align-items:center;background:#123e30;color:white;overflow:hidden}.hero>video,.hero>.poster{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.hero:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#092b20e8,#092b2095 55%,#092b2020)}.herotext{position:relative;z-index:1;padding:90px 0;max-width:780px}.eyebrow{display:block;color:#26794b;font-weight:800;font-size:11px;letter-spacing:2.8px;margin-bottom:20px}.hero .eyebrow{color:#b5d8a9}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(42px,5.4vw,78px);line-height:1.04;letter-spacing:-3px;font-weight:800;margin-bottom:27px}h2{font-size:clamp(31px,3.5vw,48px);line-height:1.12;letter-spacing:-1.5px}h3{font-size:22px;line-height:1.25}.hero p{max-width:500px;color:#e2ece0;font-size:18px}.actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}.herofoot{position:absolute;z-index:2;bottom:24px;right:5%;display:flex;gap:10px;align-items:center;font-size:11px;letter-spacing:2px}.pause{border:1px solid #ffffff70;color:white;background:#123e3090;padding:9px 14px;cursor:pointer}.stats{border-bottom:1px solid #dce6ed}.stats .wrap{display:grid;grid-template-columns:repeat(3,1fr);padding:30px 0}.stat{padding:0 35px;border-right:1px solid #dce6ed}.stat:first-child{padding-left:0}.stat:last-child{border:0}.stat strong{display:block;font-size:39px;line-height:1.1;letter-spacing:-1.7px}.stat span{font-size:11px;font-weight:700;letter-spacing:1.2px;color:#5d7182}.section{padding:95px 0}.split{display:grid;grid-template-columns:1fr 1fr;gap:75px;align-items:center}.splitphoto{position:relative}.splitphoto img{width:100%;height:470px;object-fit:cover}.phototag{position:absolute;bottom:0;right:0;background:#26794b;color:white;padding:20px 28px;font-size:13px;font-weight:bold}.text p{color:#596b79}.textlink{display:inline-block;font-size:12px;font-weight:bold;letter-spacing:1px;color:#26794b;border-bottom:1px solid #26794b;padding:10px 0}.light{background:#f0f5ed}.sectionhead{display:flex;align-items:end;justify-content:space-between;gap:25px;margin-bottom:40px}.sectionhead h2{margin-bottom:0}.sectionhead p{max-width:370px;margin:0;color:#5d7182}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.card{background:white;border-bottom:3px solid transparent;transition:.2s}.card:hover{border-color:#367f4f;transform:translateY(-3px)}.card img{width:100%;height:220px;object-fit:cover}.cardtext{padding:26px}.cardtext p{font-size:15px;color:#617180}.cardtext span{font-size:11px;font-weight:bold;letter-spacing:1px;color:#26794b}.number{font-size:11px;color:#26794b;font-weight:bold;letter-spacing:1px}.projectgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.projectgrid figure{margin:0}.projectgrid img{width:100%;height:280px;object-fit:cover}.projectgrid figcaption{font-size:12px;font-weight:700;padding:13px 0;border-bottom:1px solid #ddd}.videogrid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.videogrid video{width:100%;aspect-ratio:16/9;object-fit:cover;background:#123e30}.videogrid figure{margin:0}.videogrid figcaption{font-size:13px;padding:12px 0}.dark{background:#123e30;color:white}.dark .eyebrow{color:#a9d496}.dark p{color:#c2d1db}.towns{display:grid;grid-template-columns:repeat(4,1fr);gap:0 25px;margin-top:35px}.towns a{border-bottom:1px solid #ffffff35;padding:18px 0;font-size:14px}.towns a:hover{color:#b5d8a9}.reviews{text-align:center}.reviewbox{max-width:800px;margin:auto;padding:35px;border-top:1px solid #d5e3eb;border-bottom:1px solid #d5e3eb}.reviewbox p{font-size:20px;color:#5d7182}.reviewbox .eyebrow{margin:0}.lastcall{padding:70px 0;background:#26794b;color:white}.lastcall .eyebrow{color:#e2efda}.lastcall .wrap{position:relative}.lastcall .btn{position:absolute;right:0;top:50%;transform:translateY(-50%);font-size:19px}.lastcall h2{margin:0}footer{background:#0c2c20;color:#c6d3dc;padding:60px 0 25px;font-size:14px}.footgrid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:60px}.footerlogo{background:white;padding:10px;width:270px;margin-bottom:24px}.footgrid h3{color:white;font-size:16px}.footgrid a{display:block;margin-bottom:8px}.copyright{border-top:1px solid #ffffff25;padding-top:25px;margin-top:40px;display:flex;gap:25px;font-size:11px}.copyright span{margin-left:auto}.mobilecontact{display:none}.pagehead{background:#123e30;color:white;padding:65px 0}.pagehead h1{font-size:54px;margin:15px 0 20px}.pagehead p{max-width:720px;color:#c8d5df}.crumb{font-size:12px;color:#afd09d}.content{max-width:850px}.content p,.content li{color:#586c7d}.content img{width:100%;max-height:520px;object-fit:cover;margin:30px 0}.content h2{font-size:31px;margin-top:40px}.faq details{border-bottom:1px solid #d1dce4;padding:20px 0}.faq summary{font-weight:700}.faq details p{padding-top:15px;color:#5d7182}.contactgrid{display:grid;grid-template-columns:1fr 1.2fr;gap:75px}.contactform{background:#eef4eb;padding:35px}.contactform label{display:block;font-size:13px;font-weight:700;margin-bottom:16px}.contactform input,.contactform select,.contactform textarea{display:block;width:100%;padding:13px;border:1px solid #b9cbd7;background:white;margin-top:6px}.contactform textarea{min-height:110px}.fine{font-size:12px;color:#5d7182}.skip{position:absolute;top:-100px;z-index:100}.skip:focus{top:0;background:white;padding:12px}:focus-visible{outline:3px solid #f4af3d;outline-offset:4px}@media(max-width:1100px){nav{gap:14px;font-size:12px}.brand img{width:205px}.head{gap:15px}.cards{grid-template-columns:repeat(2,1fr)}}@media(max-width:850px){.top .wrap>span{font-size:9px;letter-spacing:.8px}.head{min-height:86px}.brand img{width:230px}.menutoggle{display:block;border:1px solid #c9d9e3;background:white;color:#123e30;padding:10px;font-size:12px;font-weight:bold}nav{display:none;position:absolute;top:86px;left:0;right:0;background:white;padding:15px 5%;max-height:75dvh;overflow:auto;box-shadow:0 15px 20px #123e3025}nav.open{display:block}nav>a,nav>details{display:block;padding:14px 0;border-bottom:1px solid #e0e7ec}nav details>div{position:static;box-shadow:none;max-height:none;padding-left:15px}nav .btn{margin-top:10px}.hero{min-height:610px}.hero h1{font-size:58px;letter-spacing:-2px}.herofoot{bottom:16px}.split{gap:35px}.splitphoto img{height:400px}.section{padding:65px 0}.towns{grid-template-columns:repeat(2,1fr)}.footgrid{gap:30px}.contactgrid{gap:30px}.stats .stat{padding:0 20px}.stat strong{font-size:31px}}@media(max-width:600px){body{font-size:16px}.top .wrap>span{display:none}.top .wrap{justify-content:center}.brand img{width:215px}.hero{min-height:610px;align-items:flex-start}.herotext{padding:68px 0 90px}.hero h1{font-size:51px;letter-spacing:-2px;max-width:360px}.hero p{font-size:16px;max-width:320px}.hero:after{background:linear-gradient(90deg,#092b20e5,#092b207a)}.herofoot{left:5%;right:auto}.btn{padding:15px 18px;font-size:11px}.stats .wrap{padding:22px 0}.stats .stat{padding:0 12px}.stat strong{font-size:26px;letter-spacing:-1px}.stat span{font-size:8px;letter-spacing:.5px;display:block;line-height:1.6;margin-top:6px}.split,.contactgrid{grid-template-columns:1fr;gap:30px}.splitphoto img{height:340px}.sectionhead{display:block}.sectionhead p{margin-top:20px}.cards{grid-template-columns:1fr;gap:22px}.card img{height:230px}.cardtext{padding:23px}.projectgrid{grid-template-columns:1fr 1fr;gap:14px}.projectgrid img{height:190px}.projectgrid figcaption{font-size:10px}.videogrid{grid-template-columns:1fr}.lastcall{padding:50px 0}.lastcall .btn{position:static;transform:none;margin-top:24px}.footgrid{grid-template-columns:1fr;gap:30px}.copyright{display:block}.copyright a{margin-left:15px}.copyright span{display:block;margin-top:10px}footer{padding-bottom:100px}.mobilecontact{position:fixed;bottom:0;left:0;right:0;display:grid;grid-template-columns:1fr 1fr;z-index:30;background:#26794b;color:white;padding-bottom:env(safe-area-inset-bottom)}.mobilecontact a{text-align:center;padding:15px 5px;font-size:11px;font-weight:bold;letter-spacing:.6px}.mobilecontact a+ a{background:#123e30}.pagehead h1{font-size:38px;letter-spacing:-1px}.pagehead{padding:40px 0}.contactform{padding:23px}.reviewbox{padding:25px 0}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.card{transition:none}}html{background:#123e30}@media(max-width:600px){.mobilecontact{background:#123e30;border-top:1px solid #ffffff25;box-shadow:0 -4px 18px #092b2020;padding:0 0 env(safe-area-inset-bottom,0px);align-items:stretch}.mobilecontact a{min-height:54px;display:flex;align-items:center;justify-content:center;padding:15px 8px;line-height:1.3;background:#26794b}.mobilecontact a+a{background:#123e30}.herofoot{top:15px;bottom:auto;left:auto;right:5%;font-size:0;letter-spacing:0}.herofoot .pause{font-size:10px;letter-spacing:1px}.herotext{padding-top:75px}}
:root{--forest:#123e30;--accent:#26794b;--sage:#dbe9d2}body{background-color:#fcfcf8;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 160 160' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.7' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' opacity='.045' filter='url(%23n)'/%3E%3C/svg%3E")}main{display:flex;flex-direction:column}main>section{flex-shrink:0}header{background:#fcfcf8}.brand img{width:240px;height:105px;object-fit:contain}.head{min-height:124px}.footerlogo{background:none;width:280px;height:160px;object-fit:contain;filter:drop-shadow(0 0 1px #fff);border-radius:4px;padding:8px;background:#f4f7ef}.hero:after{background:linear-gradient(90deg,#082b21ed,#153d2b85 58%,#153d2b25)}.stats{background:linear-gradient(100deg,#123e30,#246143);color:#fff}.stat span{color:#d6e7cc}.stat{border-color:#ffffff30}.light{background:linear-gradient(160deg,#edf3e8,#f8faf4 55%,#dcebd4)}.dark{background:linear-gradient(140deg,#316e48,#1c5037 55%,#103c2a)}.lastcall{background:linear-gradient(110deg,#286340,#143d2c)}footer{background:linear-gradient(#123a2a,#09261b)}.btn{background:var(--accent);border-color:var(--accent)}.btn:hover{background:var(--forest)}.textlink,.eyebrow{color:var(--accent)}.projectgrid figure.generated figcaption{color:#506647}.projectgrid img{border-radius:3px}.illustrationnote{font-size:11px;color:#5d715d}.compare{position:relative;height:530px;max-width:1050px;margin:auto;overflow:hidden;border-radius:5px;--reveal:50%;box-shadow:0 14px 45px #123e3018;background:#c6cfc4}.compare>img,.comparebefore img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.comparebefore{position:absolute;inset:0;clip-path:inset(0 calc(100% - var(--reveal)) 0 0)}.compareline{position:absolute;left:var(--reveal);top:0;bottom:0;width:3px;background:white;transform:translateX(-50%);pointer-events:none}.compareline span{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:50px;height:50px;border-radius:50%;background:#fff;display:grid;place-items:center;font-size:26px;color:#123e30;box-shadow:0 2px 15px #0004}.compare input{position:absolute;inset:0;width:100%;height:100%;margin:0;opacity:.001;cursor:ew-resize;touch-action:pan-y}.compare:focus-within{outline:3px solid #26794b;outline-offset:4px}.beforelabel,.afterlabel{position:absolute;top:20px;padding:7px 16px;background:#123e30dd;color:white;font-size:11px;font-weight:bold;letter-spacing:2px;pointer-events:none}.beforelabel{left:20px}.afterlabel{right:20px}.reviewcarousel{max-width:890px;min-height:260px;margin:30px auto 0}.reviewslide[hidden]{display:none}.reviewslide{animation:reviewfade .6s}.stars{color:#397949;font-size:25px;letter-spacing:5px}.reviewslide blockquote{font-size:24px;line-height:1.65;margin:22px 0;color:#244632}.reviewslide strong{display:block;font-size:16px}.reviewslide>span{font-size:13px;color:#57715d}.reviewcontrols{display:flex;justify-content:center;align-items:center;gap:18px;margin-top:25px}.reviewcontrols button{background:#fff;border:1px solid #c9d8c5;padding:8px 15px;cursor:pointer;color:#123e30}.reviewcount{font-size:12px}.customblocks{padding:60px 0}.customblocks img{max-height:600px;object-fit:cover}.customblocks .wrap{max-width:1100px}@keyframes reviewfade{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:none}}@media(max-width:850px){nav{top:124px}}@media(max-width:600px){.head{min-height:98px}.brand img{width:205px;height:92px}nav{top:98px}.compare{height:440px}.reviewslide blockquote{font-size:20px}.reviewcarousel{min-height:300px}.stats .stat strong{font-size:25px}.mobilecontact{background:#123e30}.mobilecontact a{background:#26794b}.mobilecontact a+a{background:#123e30}}@media(prefers-reduced-motion:reduce){.reviewslide{animation:none}}

[data-edit]{white-space:pre-line}.stat strong{white-space:normal}
/* Let the original house logo occupy its full header panel, with soft edges. */
.head{min-height:166px;gap:24px}
.brand{position:relative;display:flex;align-items:center;justify-content:center;align-self:stretch;flex:1 1 310px;max-width:350px;min-width:220px;isolation:isolate}
.brand::before{content:"";position:absolute;inset:0 -18px;z-index:-1;background:radial-gradient(ellipse at center,#dce8d3 0%,#edf3e7 45%,#fcfcf800 75%);pointer-events:none}
.brand img{display:block;width:100%;height:156px;object-fit:contain;object-position:center;padding:0;-webkit-mask-image:linear-gradient(to bottom,#000 0%,#000 94%,transparent 100%);mask-image:linear-gradient(to bottom,#000 0%,#000 94%,transparent 100%)}
@media(max-width:1100px){.brand{max-width:300px;min-width:190px}.brand img{width:100%}}
@media(max-width:850px){.head{width:96%;min-height:166px;gap:14px}.brand{flex:1;max-width:340px;min-width:0}.brand img{height:158px;width:100%}nav{top:166px}.menutoggle{position:relative;z-index:2;flex:0 0 auto;margin-right:2%;background:#fcfcf8}}
@media(max-width:600px){.head{min-height:166px;gap:10px}.brand{max-width:none}.brand img{height:158px;width:100%}nav{top:166px}}


/* Original black-and-white artwork, centered on a white fading panel. */
header{background:#fff}.brand{background:#fff;justify-content:center}.brand::before{background:linear-gradient(90deg,transparent,#fff 18%,#fff 82%,transparent);inset:0 -18px}.brand img{object-position:center;mix-blend-mode:multiply;-webkit-mask-image:linear-gradient(to bottom,transparent 0%,#000 4%,#000 94%,transparent 100%);mask-image:linear-gradient(to bottom,transparent 0%,#000 4%,#000 94%,transparent 100%)}.footerlogo{background:#fff;filter:none}.menutoggle{background:#fff}

/* Responsive stats and desktop / landscape refinement. */
html,body{width:100%;max-width:100%;overflow-x:clip}
.stats .wrap{align-items:stretch;gap:0}
.stats .stat{min-width:0;display:flex;flex-direction:column;justify-content:center;padding:12px 28px;gap:4px}
.stats .stat:first-child{padding-left:0}
.stats .stat strong,.stats .stat span{display:block;font-size:clamp(20px,2.25vw,32px);font-weight:800;line-height:1.2;letter-spacing:-.6px;color:#fff;text-transform:uppercase;margin:0;overflow-wrap:normal}
.head,nav,.split>*,.contactgrid>*,.footgrid>*{min-width:0}
@media(min-width:1101px){.head{gap:20px}.brand{flex:0 1 310px;min-width:220px}nav{gap:clamp(12px,1.5vw,23px)}.lastcall .wrap{display:flex;align-items:center;justify-content:space-between;gap:35px}.lastcall .btn{position:static;transform:none;flex-shrink:0}.lastcall h2{max-width:700px}}
@media(min-width:601px) and (max-width:1100px){.head{min-height:116px;gap:16px}.brand{max-width:265px;min-width:0;flex:1}.brand img{height:108px}header .menutoggle{display:block;flex-shrink:0;border:1px solid #c9d9e3;padding:12px;background:#fff;color:#123e30;font-weight:bold;font-size:12px}header nav{display:none;position:absolute;top:116px;left:0;right:0;background:#fff;padding:15px 5%;max-height:calc(100dvh - 130px);overflow:auto;box-shadow:0 15px 20px #123e3025}header nav.open{display:block}nav>a,nav>details{display:block;padding:14px 0;border-bottom:1px solid #e0e7ec}nav details>div{position:static;box-shadow:none;max-height:none;padding-left:15px}nav .btn{margin-top:10px}.lastcall .wrap{display:flex;align-items:center;justify-content:space-between;gap:28px}.lastcall .btn{position:static;transform:none;flex-shrink:0;font-size:15px}.lastcall h2{font-size:35px}.stats .stat{padding:12px 18px}.stats .stat strong,.stats .stat span{font-size:clamp(19px,2.6vw,27px)}}
@media(max-width:600px){.stats .wrap{grid-template-columns:1fr;padding:14px 0}.stats .stat,.stats .stat:first-child{padding:22px 0;text-align:center;border-right:0;border-bottom:1px solid #ffffff30}.stats .stat:last-child{border-bottom:0}.stats .stat strong,.stats .stat span{font-size:27px;line-height:1.2;letter-spacing:-.5px}.actions .btn{max-width:100%}}
@media(orientation:landscape) and (max-height:600px) and (max-width:1100px){html{scroll-padding-top:90px}header{position:relative}.head{min-height:88px}.brand{max-width:235px}.brand img{height:82px}header nav{top:88px;max-height:calc(100dvh - 95px)}.hero{min-height:440px}.herotext{padding:45px 0 85px;max-width:90%}.hero h1{font-size:clamp(38px,6vw,58px);max-width:650px}.hero p{font-size:17px;max-width:600px}.herofoot{top:12px;bottom:auto;right:5%;left:auto;font-size:0}.herofoot .pause{font-size:10px}.section{padding:55px 0}.compare{height:360px}.mobilecontact{display:grid;position:fixed;bottom:0;left:0;right:0;z-index:30;grid-template-columns:1fr 1fr;background:#123e30;padding-bottom:env(safe-area-inset-bottom,0px)}.mobilecontact a{display:flex;align-items:center;justify-content:center;min-height:44px;padding:10px;color:#fff;background:#26794b;font-size:12px;font-weight:700}.mobilecontact a+a{background:#123e30}footer{padding-bottom:95px}.footgrid{grid-template-columns:1.2fr 1fr 1fr;gap:25px}.footerlogo{max-width:100%}.stats .stat strong,.stats .stat span{font-size:clamp(18px,2.7vw,26px)}}
