:root{--ink:#283e2d;--green:#304b34;--lime:#d9e8a3;--cream:#f6f6ef;--muted:#72786e;--line:#dce0d4}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{font-family:Arial,Helvetica,sans-serif;color:var(--ink);background:#fff;font-size:16px;line-height:1.65}a{color:inherit;text-decoration:none}a:hover{color:inherit}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit}img{max-width:100%;display:block}h1,h2,h3,p,figure{margin:0}p+p{margin-top:20px}h1,h2,blockquote{font-family:Georgia,'Times New Roman',serif;font-weight:400;letter-spacing:-2px;line-height:1.09}h1{font-size:clamp(52px,5.9vw,86px)}h2{font-size:clamp(40px,4.1vw,58px)}h3{font-size:22px;letter-spacing:-.6px;font-weight:500;line-height:1.3}em{font-weight:400}a:focus-visible,button:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline:3px solid #a6bc6a;outline-offset:6px}.container{max-width:1240px;padding-left:32px;padding-right:32px}.topline{background:var(--ink);color:#e1e7dc;font-size:11px;letter-spacing:.5px;padding:8px 0}.header{background:#fff;position:sticky;top:0;z-index:20;border-bottom:1px solid #e6e9e1}.header-inner{height:90px;display:flex;align-items:center;justify-content:space-between;gap:25px}.brand{font-size:35px;letter-spacing:-2px;display:inline-flex;align-items:center;font-weight:600;line-height:1}.brand svg{width:30px;height:38px;fill:none;stroke:var(--ink);stroke-width:1.6;margin-right:10px}.brand-dot{font-size:12px;align-self:flex-start;margin-top:4px;letter-spacing:0}.header nav{display:flex;gap:28px;font-size:13px}.header nav a:hover{color:#859b54}.header-phone{font-size:14px;font-weight:600;white-space:nowrap}.menu-button{display:none}.hero{position:relative;color:white;min-height:690px;isolation:isolate;overflow:hidden}.hero-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 58%;z-index:-3}.hero-shade{position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,rgba(13,31,17,.77),rgba(13,31,17,.34) 60%,rgba(13,31,17,.12)),linear-gradient(0deg,rgba(13,31,17,.35),transparent 40%)}.hero-content{padding-top:84px;padding-bottom:36px}.eyebrow{font-size:10px;font-weight:600;letter-spacing:2px;margin-bottom:28px;color:#687c51}.eyebrow.light{color:#d7e4c6}.tiny-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--lime);margin-right:10px}.hero h1{max-width:850px}.hero h1 em{color:#deebba}.hero-description{margin-top:26px;color:#eef1e7;font-size:17px;line-height:1.65}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:44px;min-height:58px;padding:16px 24px;font-size:13px;font-weight:600;border:1px solid transparent;transition:background .2s,transform .2s}.button span{font-size:23px;font-weight:400;line-height:1}.button-lime{background:var(--lime);color:var(--ink)}.button-lime:hover{background:#e7f2c5;transform:translateY(-2px)}.hero .button{margin-top:32px}.hero-bottom{display:flex;align-items:end;justify-content:space-between;margin-top:52px;font-size:11px;line-height:1.6;color:#e5ebde}.hero-bottom a{display:flex;gap:20px;align-items:center}.hero-bottom a span{font-size:25px}.hero-caption{position:absolute;right:28px;top:50%;writing-mode:vertical-rl;font-size:10px;letter-spacing:1px;color:#e9ecdf}.trust-strip{background:var(--cream);border-bottom:1px solid var(--line)}.row-inner{display:flex;justify-content:space-between;padding-top:26px;padding-bottom:26px;font-size:13px}.row-inner i{font-size:10px;font-style:normal;color:#8b9877;margin-right:16px}.section{padding:100px 0}.lead-copy{font-size:24px;line-height:1.55;letter-spacing:-.5px}.muted{color:var(--muted);font-size:15px;line-height:1.8}.intro .text-link{margin-top:28px}.text-link{display:inline-flex;gap:35px;align-items:center;font-size:13px;font-weight:600;border-bottom:1px solid #9aa88b;padding-bottom:8px}.text-link span{font-size:23px;font-weight:400}.services{background:var(--cream)}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:35px;margin-bottom:46px}.section-note{max-width:380px;padding-bottom:8px}.service-card{height:100%;background:#fff;padding:30px 30px 24px;position:relative;border:1px solid #e8eadf}.service-number{position:absolute;right:28px;top:24px;font-size:11px;color:#8b947f}.service-icon{width:58px;height:58px;fill:none;stroke:#7c905f;stroke-width:1.3;stroke-linecap:round;stroke-linejoin:round;margin-bottom:32px}.service-card p{font-size:14px;color:var(--muted);margin-top:17px;min-height:76px}.service-card>a{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);padding-top:16px;margin-top:27px;font-size:12px}.service-card>a span{font-size:24px}.service-foot{margin-top:34px;display:flex;justify-content:space-between;align-items:center;gap:20px;font-size:14px}.season-section{display:grid;grid-template-columns:1fr 1fr;background:var(--ink);color:#fff}.season-photo{position:relative;min-height:610px}.season-photo img{width:100%;height:100%;position:absolute;object-fit:cover}.season-photo:after{content:'';position:absolute;inset:60% 0 0;background:linear-gradient(transparent,#17271b88)}.season-photo>span{position:absolute;bottom:35px;left:40px;color:white;z-index:1;font-size:13px}.season-content{padding:70px clamp(30px,5vw,85px)}.season-content h2{font-size:clamp(34px,3.3vw,48px)}.season-content em{color:var(--lime)}.season-tabs{display:flex;border-bottom:1px solid #ffffff35;margin:32px 0 28px;gap:27px}.season-tabs button{padding:0 0 13px;color:#c0ccba;background:none;border:0;border-bottom:2px solid transparent;font-size:13px;cursor:pointer}.season-tabs button[aria-selected=true]{border-color:var(--lime);color:var(--lime)}#season-panel{min-height:210px}#season-panel h3{font-size:20px}#season-panel p{color:#c5cfc0;font-size:13px;margin-top:13px}#season-panel ul{padding-left:18px;color:#dce3d5;font-size:13px;margin:18px 0 26px}#season-panel li{padding-left:5px;margin:6px 0}#season-panel li::marker{color:var(--lime)}.light-link{color:#e0ebce;border-color:#75876b}.light-link:hover{color:var(--lime)}.garden-card img{width:100%;height:420px;object-fit:cover}.garden-card figcaption{margin-top:22px}.garden-card figcaption h3{font-size:21px}.garden-card figcaption span{font-size:12px;color:var(--muted);display:block;margin-top:6px}.process{background:var(--cream)}.steps{margin-top:50px}.steps article{border-top:1px solid #c8d0bd;padding-top:24px}.steps article>span{display:block;font-family:Georgia,serif;font-size:36px;color:#9ca98b;margin-bottom:29px}.steps h3{font-size:19px}.steps p{font-size:14px;color:var(--muted);margin-top:13px;max-width:250px}.founder-image{height:380px;width:100%;object-fit:cover;object-position:center 28%}.quote-content{padding-left:65px}.quote-content blockquote{font-size:clamp(40px,4.5vw,64px);margin:0 0 25px}.quote-content>.muted{max-width:550px}.signature{font-size:14px;margin-top:30px}.signature span{display:block;font-size:11px;color:var(--muted);margin-top:4px}.faq{padding-top:15px}.faq details{border-bottom:1px solid var(--line);padding:22px 0}.faq details:first-child{border-top:1px solid var(--line)}.faq summary{font-size:16px;cursor:pointer;list-style:none;display:flex;align-items:center;justify-content:space-between;gap:20px}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:'+';font-size:23px;font-weight:300;color:#7b8a68}.faq details[open] summary:after{content:'−'}.faq details p{font-size:14px;color:var(--muted);padding-top:16px;max-width:530px}.contact-section{padding:80px 0;background:var(--ink);color:#fff}.contact-section h2 em{color:var(--lime)}.contact-section h2+p{margin-top:26px;font-size:14px;color:#c6d2be}.contact-actions{display:flex;align-items:center;flex-wrap:wrap;gap:27px;margin-top:34px}.contact-phone{font-size:17px;white-space:nowrap}.contact-phone span{margin-left:14px;color:var(--lime)}.contact-note{border:1px solid #ffffff25;padding:28px 26px;margin-top:13px}.note-label{font-size:9px;letter-spacing:1.5px;color:var(--lime)}.contact-note>div{font-size:13px;padding-top:22px}.contact-note>div>span{color:#9eb286;font-size:11px;margin-right:15px}.contact-note p{border-top:1px solid #ffffff25;font-size:12px;color:#becbb4;margin-top:25px;padding-top:20px}footer{padding:50px 0 24px;background:#f4f5ee}.footer-top{display:flex;align-items:start;justify-content:space-between;gap:25px;padding-bottom:32px}.footer-top p{font-size:12px;color:var(--muted)}.footer-bottom{display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--line);padding-top:22px;font-size:10px;color:var(--muted)}.footer-bottom a:hover{text-decoration:underline}.disclaimer{font-size:9px;color:#8c9384;margin-top:20px}.mobile-contact{display:none}.skip-link{position:fixed;top:-100px;left:10px;padding:10px;background:white;z-index:100}.skip-link:focus{top:10px}
@media(min-width:1500px){.hero{min-height:760px}.hero-content{padding-top:115px}}
@media(max-width:1100px){.header nav{gap:17px}.header-phone{font-size:12px}.brand{font-size:30px}.header-inner{gap:15px}.season-content{padding:55px 32px}.season-tabs{gap:22px}.quote-content{padding-left:35px}}
@media(max-width:800px){html{scroll-padding-top:85px}.container{padding-left:24px;padding-right:24px}.header-inner{height:74px}.header-phone{margin-left:auto;font-size:12px}.brand{font-size:28px}.brand svg{width:25px;margin-right:6px}.header nav{display:none;position:absolute;top:74px;left:0;right:0;background:#fff;padding:24px;box-shadow:0 15px 15px #0001;flex-direction:column;gap:20px;font-size:16px}.header nav.is-open{display:flex}.menu-button{display:flex;flex-direction:column;justify-content:center;gap:6px;border:0;background:transparent;width:40px;height:40px;padding:9px}.menu-button span{width:22px;height:1px;background:var(--ink)}.hero{min-height:640px}.hero-content{padding-top:70px}.hero h1{font-size:62px}.hero-caption{display:none}.hero-image{object-position:60% center}.row-inner{flex-wrap:wrap;gap:20px}.row-inner>span{width:45%;font-size:12px}.section{padding:70px 0}.section-heading{gap:25px}.section-note{max-width:300px;font-size:13px}.season-section{grid-template-columns:1fr}.season-photo{min-height:360px}.season-content{padding:50px 24px}.season-content h2{font-size:43px}.season-tabs{gap:35px}#season-panel{min-height:190px}.garden-card img{height:330px}.quote-content{padding-left:24px}.founder-image{height:330px}.footer-top{flex-wrap:wrap}.footer-top .brand{width:100%;margin-bottom:8px}.footer-bottom{flex-wrap:wrap}.contact-section{padding:65px 0}.faq{padding-top:10px}}
@media(max-width:520px){body{font-size:15px}.topline{font-size:9px}.header-phone{display:none}.menu-button{margin-left:auto}.hero{min-height:650px}.hero-content{padding-top:65px}.hero h1{font-size:52px;letter-spacing:-2px}.hero-description{font-size:15px;max-width:290px}.eyebrow{font-size:9px;letter-spacing:1.5px;margin-bottom:24px}.hero .eyebrow{font-size:8px}.hero .button{margin-top:28px}.button{font-size:12px;gap:25px;min-height:56px}.hero-bottom{margin-top:55px;font-size:10px}.hero-bottom a{gap:12px}.hero-shade{background:linear-gradient(90deg,#102815c9,#10281555),linear-gradient(0deg,#10281566,transparent)}.row-inner{gap:17px;padding-top:23px;padding-bottom:23px}.row-inner>span{font-size:10px}.row-inner i{margin-right:8px;font-size:9px}.section{padding:60px 0}h2{font-size:41px}.lead-copy{font-size:21px}.muted{font-size:14px}.section-heading{display:block;margin-bottom:30px}.section-heading>.section-note,.section-heading>.text-link{margin-top:25px}.service-card{padding:26px}.service-card p{min-height:0}.service-icon{margin-bottom:22px}.service-foot{align-items:start;flex-direction:column;font-size:13px;gap:14px}.season-photo{min-height:300px}.season-content h2{font-size:39px}.season-tabs{gap:0;justify-content:space-between}.garden-card img{height:330px}.garden-card{margin-bottom:10px}.steps{margin-top:27px}.steps article{display:grid;grid-template-columns:45px 1fr;gap:8px 12px}.steps article>span{grid-row:1/3;margin:0;font-size:29px}.steps p{margin:0;max-width:none}.steps h3{font-size:18px}.founder-image{height:370px;object-position:center 20%}.quote-content blockquote{font-size:44px}.faq{padding-top:0}.faq summary{font-size:15px}.contact-section h2{font-size:41px}.contact-actions{gap:24px}.footer-top p{font-size:11px}.footer-bottom{flex-direction:column;gap:9px}footer{padding-bottom:90px}.mobile-contact{display:flex;position:fixed;bottom:0;left:0;right:0;background:var(--lime);color:var(--ink);padding:15px 24px calc(15px + env(safe-area-inset-bottom));justify-content:space-between;font-size:13px;z-index:15;box-shadow:0 -3px 15px #0001}.desktop{display:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}
/* Override template heading colours for dark sections. */
h1,h2,h3{color:inherit}

/* Ecogarden v2 — type, motion and interaction */
@font-face{font-family:Avenir;src:url('fonts/AvenirNextW1G-Regular.woff2') format('woff2');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:Avenir;src:url('fonts/AvenirNextW1G-Medium.woff2') format('woff2');font-weight:500 600;font-style:normal;font-display:swap}
@font-face{font-family:Avenir;src:url('fonts/AvenirNextW1G-Bold.woff2') format('woff2');font-weight:700 900;font-style:normal;font-display:swap}
body,input,textarea,button{font-family:Avenir,Arial,sans-serif}
button{cursor:pointer}.button-lime,.button-lime:visited,.button-lime:hover,.button-lime:focus,.button-lime:active{color:#233b29!important}.button-lime:hover{background:#e5f4b7;border-color:#acbf79;box-shadow:0 8px 24px #9bad6530}.button span,.text-link span,.service-card>a span{transition:transform .25s}.button:hover>span:last-child,.text-link:hover>span,.service-card:hover>a span{transform:translate(3px,-3px)}
.header{transition:box-shadow .3s}.header.has-scrolled{box-shadow:0 5px 25px #14231814}.header nav a{position:relative}.header nav a:after{content:'';position:absolute;height:2px;bottom:-7px;left:0;right:0;background:#8b9e59;transform:scaleX(0);transform-origin:left;transition:transform .25s}.header nav a:hover:after,.header nav a:focus-visible:after{transform:scaleX(1)}
.trust-strip{background:#fff;border-bottom:0;padding:14px 0}.row-inner{gap:14px;align-items:stretch}.row-inner>span{display:flex;align-items:center;gap:13px;flex:1;background:#edf2e3;border:1px solid #dde7cb;border-radius:100px;padding:12px 18px 12px 10px;white-space:nowrap;font-size:12px;font-weight:500;transition:background .25s,box-shadow .25s,transform .25s}.row-inner i{flex:none;display:grid;place-items:center;background:#345038;color:#e8f4c5;border-radius:50%;width:35px;height:35px;font-size:11px;margin:0;box-shadow:0 3px 8px #29472d20}
.service-card{border-radius:5px;transition:transform .35s,box-shadow .35s,border-color .35s,background .35s}.service-card:before{content:'';position:absolute;left:0;top:0;bottom:0;width:3px;background:#8da555;transform:scaleY(0);transform-origin:bottom;transition:transform .35s}.service-card:focus-within{background:#f6faed;border-color:#bdcea0;box-shadow:0 15px 35px #203b2612}.service-card:focus-within:before{transform:scaleY(1)}.service-icon{transition:transform .35s,stroke .35s}.service-number{transition:color .3s}.garden-card{overflow:hidden}.garden-card img{transition:transform .8s cubic-bezier(.2,.65,.3,1),filter .5s;border-radius:4px}.garden-card figcaption{position:relative;background:white;padding-top:22px;margin-top:0}.garden-card figcaption h3{transition:color .3s}.steps article{transition:transform .3s,border-color .3s}.steps article>span{transition:color .3s}.faq details{transition:background .25s,padding .25s}.faq details[open]{background:#f7f9f1;padding-left:18px;padding-right:18px}.faq summary:after{transition:transform .3s}.faq summary:hover:after{transform:rotate(90deg)}.season-tabs button{transition:color .2s,border-color .2s}.season-tabs button:hover{color:#e7f4c7}.season-panel-enter{animation:panel-enter .4s both}.contact-note{transition:border-color .3s,background .3s;border-radius:5px}.contact-note:hover{border-color:#bfd19888;background:#ffffff05}
@media(hover:hover){.row-inner>span:hover{background:#dceabf;transform:translateY(-4px);box-shadow:0 8px 22px #29472d15}.service-card:hover{transform:translateY(-8px);background:#f6faed;border-color:#bdcea0;box-shadow:0 18px 40px #203b2614}.service-card:hover:before{transform:scaleY(1)}.service-card:hover .service-icon{transform:translateY(-3px) rotate(-5deg);stroke:#466b35}.service-card:hover .service-number{color:#547536}.garden-card:hover img{transform:scale(1.035);filter:saturate(1.08)}.garden-card:hover h3{color:#6d8642}.steps article:hover{transform:translateY(-5px);border-color:#5f7f41}.steps article:hover>span{color:#5f7f41}}
@keyframes panel-enter{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
@keyframes hero-enter{from{opacity:0;transform:translateY(27px)}to{opacity:1;transform:none}}
@media(prefers-reduced-motion:no-preference){.hero .eyebrow{animation:hero-enter .7s .05s both}.hero h1{animation:hero-enter .9s .15s both}.hero-description{animation:hero-enter .9s .3s both}.hero .button{animation:hero-enter .9s .45s both}.hero-bottom{animation:hero-enter .9s .6s both}.reveal{opacity:0;transform:translateY(32px);transition:opacity .75s var(--reveal-delay,0s),transform .75s cubic-bezier(.2,.65,.3,1) var(--reveal-delay,0s)}.reveal.is-visible{opacity:1;transform:none}.reveal:focus-within{opacity:1;transform:none}}
.request-dialog{border:0;border-radius:12px;width:min(520px,calc(100% - 32px));max-height:calc(100dvh - 32px);padding:43px;color:var(--ink);background:#fcfdf7;box-shadow:0 30px 100px #10201455;overflow:auto;margin:auto}.request-dialog::backdrop{background:#102418b8;backdrop-filter:blur(7px)}.request-dialog[open]{animation:dialog-enter .3s both}.dialog-close{position:absolute;right:15px;top:12px;border:0;background:#eaf0df;color:#2a422d;width:35px;height:35px;border-radius:50%;font-size:25px;line-height:1;transition:background .2s,transform .2s}.dialog-close:hover{background:#d9e8bb;transform:rotate(90deg)}.dialog-decoration{position:absolute;right:43px;top:83px;font-size:60px;font-weight:400;color:#a1b879}.request-dialog .eyebrow{font-size:9px;margin-bottom:18px}.request-dialog h2{font-size:43px}.request-dialog h2 em{color:#6f894a}#request-description{font-size:14px;color:#737c69;margin:19px 0 23px;max-width:330px}.field-label{display:block;font-size:12px;font-weight:500;margin:17px 0 7px}.form-input{display:block;width:100%;background:#fff;border:1px solid #ced8c2;border-radius:5px;padding:13px 15px;min-height:49px;font-size:15px;color:#283e2d;transition:border-color .2s,box-shadow .2s}.form-input:focus{border-color:#7d9954;box-shadow:0 0 0 3px #aac47f30;outline:0}.form-input::placeholder{color:#8e9787}.form-input:user-invalid{border-color:#a54939}#phone-help{display:block;font-size:10px;color:#7d8773;margin-top:5px}.consent{display:flex;align-items:start;gap:10px;font-size:10px;color:#737c69;margin:20px 0}.consent input{accent-color:#466334;width:16px;height:16px;flex-shrink:0;margin-top:2px}.consent a{text-decoration:underline;text-underline-offset:2px}.form-submit{width:100%;border-radius:5px}.form-submit .submit-label{font-size:13px;line-height:1.4}.form-submit:disabled{opacity:.7;cursor:wait;transform:none}.dialog-footer{font-size:11px;text-align:center;color:#79846f;margin-top:19px}.dialog-footer a{font-weight:500;color:#304b34}.form-status:empty{display:none}.form-status{font-size:12px;color:#a14232;background:#fcf0e9;padding:10px 12px;margin:0 0 14px;border-radius:4px}.local-demo-note{font-size:10px;color:#788466;margin-top:15px;line-height:1.5}.form-trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.modal-open{overflow:hidden}
@keyframes dialog-enter{from{opacity:0;transform:translateY(18px) scale(.98)}to{opacity:1;transform:none}}
.thanks-page{min-height:100svh;background:#f3f6ec;display:grid;place-items:center;padding:32px;position:relative}.thanks-page:before{content:'';position:fixed;inset:0;background:linear-gradient(#f3f6ecef,#f3f6ece8),url('terrace.jpg') center/cover;z-index:-1}.thanks-card{max-width:650px;width:100%;text-align:center;padding:55px 40px;background:#ffffffeb;border:1px solid #dde5d2;border-radius:14px;box-shadow:0 20px 70px #233b2910}.thanks-brand{margin-bottom:35px;justify-content:center}.success-mark{display:grid;place-items:center;background:#e8f1d6;border:1px solid #d0e0b4;width:72px;height:72px;border-radius:50%;margin:0 auto 27px;font-size:35px;color:#496736}.thanks-card h1{font-size:54px}.thanks-description{font-size:16px;color:#75806a;margin:24px auto;max-width:430px}.countdown{font-size:12px;color:#737d69;margin:25px 0}.countdown strong{color:#304b34}.countdown-track{height:3px;max-width:220px;background:#e4ebda;border-radius:5px;margin:12px auto 0;overflow:hidden}.countdown-track span{display:block;height:100%;background:#8da75d;transform-origin:left;animation:countdown 5s linear forwards}@keyframes countdown{to{transform:scaleX(0)}}.thanks-demo{font-size:12px;color:#7e6533;background:#f8f1dc;padding:12px;border-radius:5px;margin:20px 0}
@media(max-width:1100px){.row-inner{flex-wrap:wrap}.row-inner>span{flex:1 1 calc(50% - 14px);justify-content:flex-start;font-size:13px}.row-inner i{width:35px;height:35px}}
@media(max-width:520px){.trust-strip{padding:0}.row-inner{gap:10px}.row-inner>span{padding:9px 10px 9px 7px;gap:8px;font-size:10px;white-space:normal;border-radius:12px}.row-inner i{width:29px;height:29px;font-size:10px}.request-dialog{padding:35px 24px 25px}.request-dialog h2{font-size:39px}.dialog-decoration{right:27px;top:78px;font-size:47px}.thanks-page{padding:18px}.thanks-card{padding:35px 22px}.thanks-card h1{font-size:42px}.thanks-description{font-size:14px}.contact-actions{align-items:flex-start;flex-direction:column}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important}.reveal{opacity:1;transform:none}.countdown-track{display:none}}

/* Original supplied logo: byte-for-byte SVG, no recolouring. */
a.brand{background:#283e2d;padding:12px 16px;border-radius:5px;flex-shrink:0;width:230px;max-width:100%}.brand .brand-logo{display:block;width:100%;height:auto;max-width:302px}.footer-top a.brand{width:230px}.thanks-brand{margin-left:auto;margin-right:auto}.hero-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;z-index:-3}.hero-image{z-index:-4}.video-toggle{position:absolute;bottom:30px;left:50%;transform:translateX(-50%);z-index:2;display:flex;align-items:center;gap:12px;border:1px solid #ffffff66;background:#233b29bd;border-radius:30px;color:#fff;padding:9px 16px;font-size:11px;backdrop-filter:blur(8px);transition:background .2s,border-color .2s}.video-toggle:hover{background:#233b29;border-color:#d9e8a3}.video-toggle[hidden]{display:none}
@media(max-width:800px){a.brand{width:200px;padding:10px 12px}.footer-top a.brand{width:230px}.video-toggle{bottom:24px;left:50%;font-size:10px;padding:7px 12px}}
@media(max-width:520px){a.brand{width:185px}.hero-bottom{padding-bottom:50px}.video-toggle{left:24px;bottom:22px;transform:none}.hero-video{object-position:55% center}.thanks-card a.brand{width:230px}}

/* Floating glass navigation over the hero video. */
.header{position:fixed;top:16px;left:24px;right:24px;z-index:30;background:transparent;border:0;box-shadow:none;pointer-events:none}
.header-inner{position:relative;max-width:1440px;height:88px;padding:12px 20px;gap:24px;border:1px solid #ffffff38;border-radius:18px;background:rgba(27,40,22,.64);backdrop-filter:blur(22px) saturate(135%);-webkit-backdrop-filter:blur(22px) saturate(135%);box-shadow:0 8px 32px #07140926,inset 0 1px 0 #ffffff0c;color:#fff;pointer-events:auto;transition:background .3s,border-color .3s,box-shadow .3s}
.header.has-scrolled{box-shadow:none}
.header.has-scrolled .header-inner{background:rgba(25,42,28,.9);border-color:#ffffff29;box-shadow:0 8px 28px #0b211c26}
.header a.brand{width:218px;background:transparent;padding:0;border-radius:0}
.header nav{gap:23px;margin-left:auto;white-space:nowrap;font-size:13px}
.header nav a,.header-phone{color:#fff}
.header nav a:hover,.header nav a:focus-visible,.header-phone:hover{color:#e1efb7}
.header nav a:after{background:#cddd9b}
.header-phone{font-size:15px;font-weight:500;margin-left:auto}
.header-cta{min-height:54px;padding:13px 18px;gap:20px;border-radius:9px;white-space:nowrap;font-size:12px;flex-shrink:0}
.header-cta span{font-size:20px}
.hero{min-height:790px}
.hero-content{padding-top:185px}
.hero-shade{background:linear-gradient(90deg,rgba(13,31,17,.77),rgba(13,31,17,.34) 60%,rgba(13,31,17,.12)),linear-gradient(180deg,rgba(9,21,13,.3),transparent 35%),linear-gradient(0deg,rgba(13,31,17,.35),transparent 40%)}
.header .menu-button span{background:#fff}
html{scroll-padding-top:128px}
@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){.header .header-inner{background:rgba(27,40,22,.96)}}
@media(min-width:1500px){.hero{min-height:840px}.hero-content{padding-top:210px}}
@media(max-width:1250px){.header-inner{gap:18px;padding:12px 18px}.header a.brand{width:185px}.header nav{gap:17px;font-size:12px}.header-phone{font-size:13px}.header-cta{font-size:11px;padding:12px;gap:12px}}
@media(max-width:1100px){.header{top:12px;left:16px;right:16px}.header-inner{height:78px;gap:20px}.header a.brand{width:205px}.header nav{display:none;position:absolute;top:calc(100% + 10px);left:0;right:0;margin:0;padding:16px;border-radius:15px;background:rgba(26,44,29,.98);border:1px solid #ffffff30;box-shadow:0 12px 30px #0b211c30;flex-direction:column;gap:0;font-size:15px;white-space:normal;max-height:calc(100dvh - 120px);overflow:auto}.header nav.is-open{display:flex}.header nav a{padding:13px 16px;border-radius:8px}.header nav a:hover{background:#ffffff0c}.header nav a:after{display:none}.header .menu-button{display:flex;flex-direction:column;justify-content:center;gap:6px;border:1px solid #ffffff38;background:#ffffff08;border-radius:9px;width:42px;height:42px;padding:9px;flex-shrink:0;margin:0}.header .menu-button span{width:22px;height:1px}.header-phone{display:block;margin-left:auto;font-size:14px}.hero-content{padding-top:164px}.hero{min-height:760px}}
@media(max-width:800px){.header-inner{gap:16px;height:76px;padding:12px 16px;border-radius:15px}.header a.brand{width:190px}.header-cta{min-height:45px;font-size:11px;padding:10px 13px;gap:13px}.header-phone{display:none}.header-cta{margin-left:auto}.hero-content{padding-top:155px}.hero{min-height:730px}}
@media(max-width:600px){.header{top:10px;left:12px;right:12px}.header-inner{height:70px;padding:12px 15px}.header a.brand{width:180px}.header-cta{display:none}.header .menu-button{margin-left:auto}.hero-content{padding-top:132px}.hero{min-height:740px}html{scroll-padding-top:100px}}

/* Project slider: native touch scrolling, keyboard and button navigation. */
.project-carousel{width:100%;min-width:0}.project-viewport{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;border-radius:12px;overscroll-behavior-x:contain;scroll-behavior:smooth}.project-viewport::-webkit-scrollbar{display:none}.project-slide{flex:0 0 100%;min-width:0;position:relative;scroll-snap-align:start;scroll-snap-stop:always;margin:0;isolation:isolate;background:#293d2b;overflow:hidden}.project-slide>img{width:100%;height:570px;object-fit:cover;display:block;transition:transform .8s}.project-slide:after{content:'';position:absolute;inset:25% 0 0;background:linear-gradient(transparent,rgba(10,27,15,.9));pointer-events:none;z-index:1}.project-overlay{position:absolute;left:42px;right:42px;bottom:36px;z-index:2;display:flex;align-items:flex-end;justify-content:space-between;gap:30px;color:white}.project-kicker{font-size:10px;letter-spacing:1.7px;color:#dce9c5;margin:0 0 13px}.project-overlay h3{font-family:Georgia,serif;font-size:42px;font-weight:400;line-height:1.12;max-width:690px;color:#fff;letter-spacing:-1px}.project-subtitle{font-size:13px;color:#d4dfc9;margin-top:13px}.project-open{display:inline-flex;align-items:center;gap:25px;white-space:nowrap;border:1px solid #ffffff66;border-radius:100px;padding:12px 18px;background:#ffffff12;backdrop-filter:blur(10px);color:#fff;font-size:12px}.project-open span{font-size:23px;line-height:1}.project-open:hover{color:#233b29;background:#d9e8a3;border-color:#d9e8a3}.project-controls{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:23px}.project-controls[hidden]{display:none}.project-count{font-size:22px;font-weight:500;min-width:90px}.project-total{font-size:13px;color:#8a947f;margin-left:4px}.project-dots{display:flex;gap:5px;align-items:center}.project-dot{border:0;background:none;padding:15px 5px;min-width:40px;min-height:44px}.project-dot span{display:block;width:26px;height:4px;border-radius:5px;background:#d7dfcb;transition:width .3s,background .3s}.project-dot[aria-current=true] span{width:48px;background:#537441}.project-dot:hover span{background:#8ba263}.project-arrows{display:flex;gap:10px}.project-arrows button{display:grid;place-items:center;width:48px;height:48px;background:#f1f5e9;border:1px solid #d6e1c7;border-radius:50%;color:#304b34;font-size:23px;transition:background .2s,color .2s,transform .2s}.project-arrows button:hover{background:#304b34;color:#fff;transform:translateY(-2px)}
@media(hover:hover){.project-slide:hover>img{transform:scale(1.025)}}
@media(max-width:800px){.project-slide>img{height:500px}.project-overlay{left:27px;right:27px;bottom:28px;align-items:start;flex-direction:column;gap:22px}.project-overlay h3{font-size:36px;max-width:560px}.project-open{font-size:11px;padding:9px 16px}}
@media(max-width:520px){.project-slide>img{height:470px}.project-overlay{left:22px;right:22px;bottom:25px}.project-overlay h3{font-size:31px;line-height:1.16}.project-kicker{font-size:8px;letter-spacing:1.4px}.project-subtitle{font-size:12px}.project-controls{gap:8px;margin-top:16px}.project-count{min-width:62px;font-size:19px}.project-arrows{gap:7px}.project-arrows button{width:43px;height:43px}.project-dot{min-width:28px;padding:15px 3px}.project-dot span{width:20px}.project-dot[aria-current=true] span{width:32px}}
@media(prefers-reduced-motion:reduce){.project-viewport{scroll-behavior:auto}.project-slide>img{transition:none}}
