@font-face{font-family:Playfair;src:url('assets/playfair.ttf') format('truetype');font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:Playfair;src:url('assets/playfair-italic.ttf') format('truetype');font-weight:500;font-style:italic;font-display:swap}@font-face{font-family:Manrope;src:url('assets/manrope.ttf') format('truetype');font-weight:400;font-display:swap}
:root{--green:#173d32;--deep:#102c25;--paper:#f8f9f5;--white:#fff;--lime:#d4e0ae;--muted:#5c6b60;--line:#d4ddd3;--serif:Playfair,Georgia,serif;--sans:Manrope,Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;color:var(--green);background:var(--paper);font:16px/1.65 var(--sans);-webkit-font-smoothing:antialiased}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:var(--serif);font-weight:500;line-height:1.17;letter-spacing:-.035em}h2{font-size:clamp(2.2rem,3.8vw,4rem)}em{font-weight:inherit}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}button{color:inherit;cursor:pointer}button,a,input,summary{touch-action:manipulation}button:disabled{cursor:default}img{display:block;width:100%;height:auto}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid #829b46;outline-offset:5px}button{border:0}button,a{-webkit-tap-highlight-color:transparent}[hidden]{display:none!important}.skip{position:fixed;left:16px;top:-100px;background:var(--white);padding:15px;z-index:100}.skip:focus{top:10px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.eyebrow{font-size:.75rem;letter-spacing:.15em;line-height:1.5;font-weight:600}.header{height:96px;position:fixed;inset:0 0 auto;z-index:30;display:flex;justify-content:space-between;align-items:center;padding:12px 4.5%;background:var(--paper);border-bottom:1px solid var(--line);gap:25px}.brand{font-family:var(--serif);font-size:2.2rem;line-height:1;letter-spacing:.13em}.brand span{display:block;font-family:var(--sans);font-size:.625rem;letter-spacing:.19em;margin-top:11px}.header nav{display:flex;align-items:center;gap:30px;font-size:.875rem}.header nav a{padding:12px 0}.header-cta{border-bottom:1px solid var(--green);padding:11px 0;font-size:.875rem}.header-cta span{margin-left:20px}.menu-toggle{display:none}.hero{position:relative;margin-top:96px;min-height:680px;height:min(850px,calc(100svh - 96px));color:var(--white);background:var(--deep);isolation:isolate}.hero picture,.hero picture img,.hero-shade{position:absolute;inset:0;width:100%;height:100%}.hero picture img{object-fit:cover;object-position:center 54%}.hero-shade{background:linear-gradient(90deg,rgba(8,29,23,.6),rgba(8,29,23,.06) 85%),linear-gradient(0deg,rgba(8,29,23,.75),transparent 65%)}.hero-inner{position:absolute;left:6%;right:6%;bottom:65px}.hero h1{font-size:clamp(4rem,6.8vw,7.2rem);line-height:1.08;margin:28px 0 32px;max-width:900px;letter-spacing:-.045em}.hero h1 em{color:#e1e8cf}.hero-bottom{display:flex;justify-content:space-between;align-items:flex-end;gap:30px}.hero-bottom p{font-size:1rem;line-height:1.7}.hero-link{display:flex;gap:42px;align-items:center;padding:12px 0;border-bottom:1px solid #ffffff88;font-size:.875rem}.hero-link span{font-size:1.7rem}.hero-caption{position:absolute;top:28px;right:4.5%;font-size:.75rem;letter-spacing:.12em}.section{padding:100px 6%}.intro{display:grid;grid-template-columns:1fr 2.1fr;gap:8%;padding-top:115px;padding-bottom:115px}.intro-label{display:flex;flex-direction:column;justify-content:space-between;gap:50px}.small-index{font-size:.75rem;letter-spacing:.12em;opacity:.65}.intro-paragraphs{display:grid;grid-template-columns:1fr 1fr;gap:40px;margin-top:32px;color:var(--muted)}.intro-paragraphs p{font-size:.95rem;line-height:1.85}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:30px;margin-bottom:40px}.section-heading .eyebrow{margin-bottom:20px}.section-heading>p{font-size:.9rem;line-height:1.8;color:var(--muted)}.transformation{padding-top:0}.comparison{position:relative;aspect-ratio:1.9;background:#dbe1d7;overflow:hidden}.comparison>img{position:absolute;width:100%;height:100%;inset:0;object-fit:cover;object-position:center}.comparison-before{clip-path:inset(0 calc(100% - var(--split)) 0 0)}.image-label{position:absolute;top:25px;z-index:2;color:var(--white);background:#102c25c7;padding:9px 14px;font-size:.75rem;letter-spacing:.1em}.label-before{left:25px}.label-after{right:25px}.comparison-divider{position:absolute;left:var(--split);top:0;bottom:0;width:2px;background:var(--white);transform:translateX(-50%);pointer-events:none;z-index:3}.comparison-divider>span{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:60px;height:60px;display:flex;justify-content:center;align-items:center;gap:10px;border-radius:50%;background:var(--paper);color:var(--green);font:24px var(--sans);box-shadow:0 3px 18px #102c2533}.comparison-divider i{height:20px;width:1px;background:var(--line)}#comparison-range{position:absolute;inset:0;z-index:4;width:100%;height:100%;opacity:0;cursor:ew-resize;margin:0;touch-action:pan-y}.comparison:focus-within{outline:3px solid #829b46;outline-offset:5px}.comparison-footer{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-top:20px}.comparison-footer>p{font-size:.875rem}.comparison-actions{display:flex;gap:8px}.comparison-actions button{padding:10px 13px;background:transparent;border:1px solid var(--line);font-size:.8rem;min-height:44px}.comparison-actions button[aria-pressed=true]{background:var(--green);color:white;border-color:var(--green)}.disclosure{font-size:.75rem;line-height:1.7;color:var(--muted);margin-top:15px}.comparison-error{position:absolute;inset:45% 20px auto;z-index:5;background:white;padding:18px}.projects{padding-top:15px}.project-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}.project:nth-child(2){padding-top:70px}.project:nth-child(3){padding-top:140px}.project-image{position:relative;display:block;width:100%;padding:0;background:#dbe1d7;overflow:hidden}.project-image img{height:350px;object-fit:cover;transition:transform .6s}.project-image:hover img{transform:scale(1.035)}.project:first-child .project-image img{object-position:70%}.project-open{position:absolute;right:15px;bottom:15px;width:43px;height:43px;border-radius:50%;background:var(--paper);display:grid;place-items:center;font-size:1.2rem}.project-meta{display:flex;justify-content:space-between;gap:10px;font-size:.625rem;letter-spacing:.05em;margin:20px 0 14px;color:var(--muted)}.project h3{font-size:2rem;line-height:1.18}.project>p{font-size:.875rem;color:var(--muted);margin-top:15px;max-width:310px}.text-button{background:transparent;border-bottom:1px solid var(--line);padding:12px 0;margin-top:14px;font-size:.875rem;display:flex;gap:20px;align-items:center}.process{background:var(--green);color:var(--paper);display:grid;grid-template-columns:1fr 1fr;gap:12%}.process-intro h2{margin:27px 0}.process-intro>p:not(.eyebrow){font-size:1rem;color:#d6dfd3;max-width:390px}.button{display:inline-flex;justify-content:space-between;align-items:center;gap:32px;min-height:54px;padding:15px 22px;font-size:.875rem;border:1px solid transparent;transition:background .2s,color .2s}.button span{font-size:1.2rem}.button-light{background:var(--paper);color:var(--green);margin-top:35px}.button-light:hover{background:var(--lime)}.button-green{background:var(--green);color:var(--white)}.button-green:hover{background:#285b48}.process-list{list-style:none;margin:0;padding:0}.process-list li{display:grid;grid-template-columns:35px 1fr;gap:24px;padding:28px 0;border-top:1px solid #f8f9f544}.process-list li:first-child{padding-top:0;border-top:0}.process-list li:last-child{padding-bottom:0}.process-list li>span{font-size:.75rem;color:var(--lime);padding-top:5px}.process-list h3{font-size:1.65rem;margin-bottom:12px}.process-list p{font-size:.9rem;line-height:1.85;color:#d6dfd3}.inquiry{display:grid;grid-template-columns:1fr 1fr;gap:12%;padding-top:115px;padding-bottom:115px}.inquiry h2{margin:25px 0}.inquiry-intro>p:not(.eyebrow){max-width:340px;font-size:1rem;color:var(--muted)}.inquiry-intro .demo-note{font-size:.8rem!important;line-height:1.8;border-left:2px solid var(--line);padding-left:15px;margin-top:35px}.inquiry-panel{background:#eef2e9;padding:35px;min-width:0}.form-progress{display:flex;justify-content:space-between;gap:15px;font-size:.7rem;letter-spacing:.06em}.form-progress b{font-weight:400}.progress-track{height:2px;background:var(--line);margin:20px 0 30px}.progress-track span{display:block;width:33.333%;height:100%;background:var(--green);transition:width .3s}fieldset{border:0;margin:0;padding:0;min-width:0}legend{font-family:var(--serif);font-size:1.65rem;line-height:1.35;padding:0;margin-bottom:25px;max-width:100%}.space-options{display:grid;grid-template-columns:1fr 1fr;gap:10px}.space-options label{position:relative;cursor:pointer}.space-options input{position:absolute;opacity:0}.space-options label>span{display:flex;justify-content:space-between;gap:10px;align-items:center;border:1px solid #b9c7b8;padding:15px 12px;font-size:.875rem;min-height:69px}.space-options i{font-style:normal;opacity:.5}.space-options input:checked+span{background:var(--green);color:white;border-color:var(--green)}.space-options input:focus-visible+span{outline:3px solid #829b46;outline-offset:3px}.field-label{display:block;font-size:.875rem;margin:22px 0 9px}.field-label>span{font-size:.75rem;color:var(--muted)}input[type=number],input[type=text],textarea{width:100%;border:1px solid #b9c7b8;background:var(--paper);color:var(--green);border-radius:0;padding:13px 14px;font-size:1rem;min-height:50px}textarea{resize:vertical}.area-input{position:relative}.area-input input{padding-right:65px}.area-input>span{position:absolute;right:15px;top:14px;font-size:.875rem}.field-hint{font-size:.75rem;color:var(--muted);line-height:1.7;margin-top:8px}.form-actions{display:flex;justify-content:space-between;gap:15px;margin-top:25px}.form-actions>.button{margin-left:auto}.back-button{background:transparent;font-size:.875rem;min-height:50px}.form-error{font-size:.875rem;color:#923d2a;margin-top:15px;line-height:1.6}.form-error:empty{display:none}.download-status{font-size:.875rem;line-height:1.6;margin-top:16px}.download-status:empty{display:none}#inquiry-summary{margin:0}#inquiry-summary dt{font-size:.75rem;text-transform:uppercase;letter-spacing:.1em;margin-top:18px;color:var(--muted)}#inquiry-summary dd{margin:4px 0 0;font-size:1rem;overflow-wrap:anywhere;white-space:pre-wrap}.summary-note{font-size:.8rem;color:var(--muted);margin-top:24px}footer{padding:50px 6% 25px;background:#e8eee1}.footer-top{display:flex;justify-content:space-between;align-items:center;gap:25px;padding-bottom:40px}.footer-top>p{font-family:var(--serif);font-size:1.7rem;font-style:italic}.footer-top>a:last-child{font-size:.875rem;padding:12px 0}.footer-bottom{border-top:1px solid #c5d2bf;padding-top:22px;display:flex;justify-content:space-between;gap:20px;font-size:.75rem;color:var(--muted)}dialog{padding:28px;border:0;background:var(--paper);color:var(--green);max-height:calc(100svh - 40px);width:min(760px,calc(100% - 32px));overflow:auto}dialog::backdrop{background:#102c25bb;backdrop-filter:blur(5px)}.dialog-top{display:flex;justify-content:space-between;align-items:center;font-size:.75rem;letter-spacing:.12em;gap:20px;margin-bottom:22px}.dialog-top button{background:transparent;border:1px solid var(--line);width:44px;height:44px;font-size:1.2rem;flex-shrink:0}.project-dialog>img{height:300px;object-fit:cover}.project-dialog-content{padding:30px 5px 5px}.project-dialog h2{font-size:2.3rem;margin-bottom:20px}.project-dialog h3{font-family:var(--sans);font-size:.875rem;letter-spacing:0;margin:20px 0 7px}.project-dialog p{font-size:.95rem;color:var(--muted)}.project-dialog .button{margin-top:25px}.menu-dialog{width:min(470px,calc(100% - 32px))}.menu-dialog nav{display:flex;flex-direction:column;gap:0}.menu-dialog nav a{font:1.7rem/1.3 var(--serif);padding:16px 0;border-top:1px solid var(--line)}.noscript{background:var(--paper);color:var(--green);padding:15px;font-size:.875rem}
@media(min-width:1700px){.section{padding-left:max(6%,calc((100% - 1450px)/2));padding-right:max(6%,calc((100% - 1450px)/2))}.hero{height:850px}}
@media(max-width:1100px){.header nav{gap:20px}.header{gap:20px;padding-left:4%;padding-right:4%}.header-cta{font-size:.8rem}.header-cta span{margin-left:10px}.intro{gap:5%;grid-template-columns:1fr 2.5fr}.intro-paragraphs{gap:25px}.section{padding:75px 5%}.transformation{padding-top:0}.projects{padding-top:0}.project-grid{gap:20px}.project h3{font-size:1.65rem}.project-meta{flex-wrap:wrap;font-size:.75rem}.project-image img{height:290px}.process,.inquiry{gap:7%}.inquiry-panel{padding:25px}.space-options{grid-template-columns:1fr}.space-options label>span{min-height:50px}.hero h1{font-size:5rem}}
@media(max-width:760px){html{scroll-padding-top:85px}.header{height:80px;padding:12px 6%;padding-top:max(12px,env(safe-area-inset-top))}.brand{font-size:1.8rem}.brand span{font-size:.6rem;margin-top:8px}.header nav,.header-cta{display:none}.menu-toggle{display:flex;align-items:center;gap:15px;background:transparent;min-height:44px;font-size:.875rem}.menu-toggle span{font-size:1.25rem}.hero{margin-top:80px;height:calc(100svh - 80px);min-height:630px;max-height:900px}.hero picture img{object-position:60% center}.hero-shade{background:linear-gradient(0deg,#102c25dd,transparent 100%)}.hero-caption{font-size:.65rem;right:6%;top:22px}.hero-inner{left:6%;right:6%;bottom:38px}.hero h1{font-size:clamp(3rem,8.8vw,4.6rem);margin:24px 0;line-height:1.12}.hero-bottom{display:block}.hero-bottom p{font-size:.95rem}.hero-link{display:inline-flex;gap:45px;margin-top:22px}.eyebrow{font-size:.75rem}.section{padding:60px 6%}.intro{display:block}.intro-label .small-index{display:none}.intro-content h2{margin-top:25px}h2{font-size:clamp(2.1rem,6.3vw,3rem)}.intro-paragraphs{display:block;margin-top:25px}.intro-paragraphs p+p{margin-top:20px}.intro-paragraphs p{font-size:1rem}.section-heading{display:block;margin-bottom:28px}.section-heading>p{margin-top:22px;font-size:1rem}.section-heading>p br{display:none}.transformation{padding-top:0}.comparison{aspect-ratio:1.15}.comparison>img{object-position:58% center}.image-label{top:15px;font-size:.625rem;padding:8px 10px;letter-spacing:.02em}.label-before{left:12px}.label-after{right:12px}.comparison-divider>span{width:50px;height:50px;gap:7px}.comparison-footer{display:block;margin-top:17px}.comparison-footer>p{font-size:.875rem}.comparison-actions{margin-top:14px}.comparison-actions button{flex:1;padding:10px 7px;font-size:.8125rem}.disclosure{font-size:.75rem}.projects{padding-top:0}.project-grid{grid-template-columns:1fr;gap:40px}.project:nth-child(2),.project:nth-child(3){padding-top:0}.project-image img{height:360px}.project-meta{font-size:.75rem;margin-top:17px}.project h3{font-size:2rem}.project h3 br{display:none}.project h3 br::after{content:' '}.project>p{font-size:1rem;max-width:none}.process,.inquiry{display:block}.process-intro>p:not(.eyebrow){max-width:none}.process-list{margin-top:45px}.process-list p{font-size:1rem}.process-list li{gap:14px;grid-template-columns:28px 1fr}.process-list h3{font-size:1.5rem}.inquiry-panel{margin-top:35px;padding:25px 22px}.inquiry-intro>p:not(.eyebrow){max-width:none}.space-options{grid-template-columns:1fr 1fr}.space-options label>span{min-height:70px;padding:12px 10px}.inquiry-intro .demo-note{margin-top:22px}.form-progress{font-size:.75rem;letter-spacing:.02em}.form-actions{gap:10px}.form-actions .button{gap:20px;padding-left:17px;padding-right:17px}.footer-top{flex-wrap:wrap;gap:28px}.footer-top>p{font-size:1.4rem}.footer-top>a:last-child{flex-basis:100%;padding:0}.footer-bottom{flex-direction:column;gap:9px}footer{padding:35px 6% max(25px,env(safe-area-inset-bottom))}.project-dialog{padding:20px}.project-dialog>img{height:220px}.project-dialog h2{font-size:1.9rem}.project-dialog p{font-size:1rem}.project-dialog .button{gap:15px;width:100%}}
@media(max-width:380px){.hero{min-height:620px}.hero h1{font-size:2.85rem}.hero-caption{font-size:.75rem;letter-spacing:0}.hero .eyebrow{font-size:.75rem}.project-image img{height:300px}.space-options{grid-template-columns:1fr}.space-options label>span{min-height:52px}.inquiry-panel{padding:24px 18px}.form-actions{flex-wrap:wrap}.form-actions .button{flex:1;justify-content:space-between}.comparison-actions button{font-size:.75rem}.image-label{font-size:.625rem}.footer-top>p{font-size:1.25rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}
.brand span,.project-meta,.hero-caption,.image-label{font-size:.75rem}
.intro-paragraphs p,.project>p,.process-list p,.project-dialog p,.hero-bottom p{font-size:1rem}
.comparison-actions button,.form-progress{font-size:.875rem}
.inquiry-panel{scroll-margin-top:110px}
.hero-film{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 54%;opacity:0;transition:opacity .45s ease;pointer-events:none}
.hero.motion-ready .hero-film{opacity:1}
.motion-control{position:absolute;z-index:5;right:4.5%;top:63px;min-height:44px;padding:9px 15px;background:#102c2599;color:#fff;border:1px solid #ffffff70;border-radius:25px;font-size:.75rem;backdrop-filter:blur(6px)}
.motion-control:hover{background:#102c25dc}
@media(min-width:1024px) and (hover:hover) and (pointer:fine){.hero picture img{object-fit:cover}.hero .hero-inner{animation:garden-copy-in 1.2s ease-out both}}
@keyframes garden-copy-in{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}
@media(prefers-reduced-motion:reduce){.hero-film,.motion-control{display:none}.hero .hero-inner{animation:none}}
