:root{--ink:#17201b;--forest:#141b18;--forest-2:#1d2922;--cream:#f3f1e9;--paper:#faf9f3;--line:#dcded3;--lime:#c9f268;--muted:#69746c;--white:#fff;--font:"DM Sans",Arial,sans-serif;--display:"Space Grotesk",Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font:400 16px/1.5 var(--font);-webkit-font-smoothing:antialiased}body.menu-open{overflow:hidden}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}button{cursor:pointer}img{display:block;max-width:100%}h1,h2,h3,p,figure{margin:0}::selection{background:var(--lime);color:var(--ink)}:focus-visible{outline:2px solid var(--lime);outline-offset:4px}
.site-header{height:82px;background:var(--forest);color:var(--paper);padding:0 clamp(22px,4.8vw,76px);display:flex;align-items:center;justify-content:space-between;gap:40px;border-bottom:1px solid #ffffff24;position:relative;z-index:30}.brand{display:inline-flex;align-items:center;gap:11px;flex:none}.brand-symbol{width:43px;height:43px;display:flex;align-items:center;justify-content:center;border:1px solid var(--lime);color:var(--lime);font:700 28px/.9 var(--display);letter-spacing:-.13em;position:relative;padding-right:5px}.brand-symbol span{position:absolute;font:400 12px var(--display);top:2px;right:3px;letter-spacing:0}.brand-word{display:grid;gap:3px;font:700 18px/1 var(--display);letter-spacing:.07em}.brand-word small{font:600 8px/1.2 var(--font);letter-spacing:.15em;color:#b3c0b5}.desktop-nav{display:flex;align-items:center;gap:clamp(20px,2.7vw,44px);margin-left:auto}.desktop-nav a{font-size:12px;color:#cbd3ca;transition:color .25s}.desktop-nav a:hover{color:var(--lime)}.header-cta{height:42px;padding:0 15px 0 18px;display:flex;align-items:center;gap:25px;color:var(--ink);background:var(--lime);font:700 12px var(--font);white-space:nowrap;transition:background .25s,transform .25s}.header-cta:hover{background:#e0ff96;transform:translateY(-2px)}.header-cta span:last-child{font-size:18px}.menu-toggle,.mobile-nav{display:none}
.hero{min-height:min(790px,calc(100svh - 82px));display:grid;grid-template-columns:57% 43%;background:var(--forest);color:var(--paper);overflow:hidden;position:relative}.hero-grid{position:absolute;inset:0 43% 0 0;background-image:linear-gradient(#d9ffb608 1px,transparent 1px),linear-gradient(90deg,#d9ffb608 1px,transparent 1px);background-size:58px 58px;pointer-events:none}.hero-content{padding:clamp(36px,4.7vw,74px) 0 45px clamp(24px,6vw,96px);display:flex;flex-direction:column;justify-content:space-between;min-width:0;z-index:2}.hero-topline{display:flex;align-items:center;gap:10px;color:#aebeb0;font:600 10px/1 var(--font);letter-spacing:.13em}.hero-index{margin-left:auto;margin-right:35px;color:#789183}.status-dot,.live-badge i{display:inline-block;width:7px;height:7px;background:var(--lime);border-radius:50%;box-shadow:0 0 0 5px #c9f2681c;animation:pulse 2.5s ease-in-out infinite}.hero h1{font:500 clamp(4.4rem,7.3vw,8.7rem)/.94 var(--display);letter-spacing:-.085em;max-width:1100px;margin:70px -18vw 45px 0;position:relative;z-index:3}.hero-line{display:block;white-space:nowrap;animation:riseIn .85s both}.hero-line:nth-child(2){animation-delay:.15s}.outline-line{color:var(--lime)}.period{color:var(--paper)}.hero-bottom{display:flex;align-items:end;justify-content:space-between;gap:30px;padding-right:clamp(25px,6vw,90px)}.hero-bottom p{max-width:320px;color:#b6c5b9;font-size:15px;line-height:1.6}.round-link{width:58px;height:58px;border:1px solid #7f9586;border-radius:50%;display:grid;place-items:center;color:var(--lime);font-size:25px;transition:background .3s,transform .3s,color .3s;flex:none}.round-link:hover{background:var(--lime);color:var(--ink);transform:rotate(45deg)}.hero-media{position:relative;min-height:620px;overflow:hidden}.hero-media>img{width:100%;height:100%;object-fit:cover;filter:saturate(.6) brightness(.72);transition:transform 1.2s cubic-bezier(.2,.7,.2,1)}.hero-media:hover>img{transform:scale(1.05)}.hero-media:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#141b1860 0%,transparent 32%,#141b180b 100%);pointer-events:none}.media-grid{position:absolute;inset:0;z-index:2;background-image:linear-gradient(#e8fbd222 1px,transparent 1px),linear-gradient(90deg,#e8fbd222 1px,transparent 1px);background-size:21% 25%;mix-blend-mode:screen;pointer-events:none}.media-cross{position:absolute;z-index:3;font:300 27px/1 var(--display);color:var(--lime)}.cross-one{top:24%;left:22%}.cross-two{bottom:27%;right:16%}.scan-marker{position:absolute;top:13%;right:8%;z-index:3;display:flex;align-items:center;gap:10px;padding:12px 13px;color:var(--paper);border:1px solid #f1f4e467;background:#14221975;backdrop-filter:blur(10px);font:600 9px/1.6 var(--font);letter-spacing:.08em}.scan-marker strong{color:var(--lime);font-weight:600}.scan-marker-dot{width:8px;height:8px;border-radius:50%;background:var(--lime);box-shadow:0 0 0 6px #c9f26830}.media-caption{position:absolute;z-index:3;bottom:24px;left:26px;right:26px;display:flex;justify-content:space-between;gap:10px;font:600 9px/1.2 var(--font);letter-spacing:.1em;color:#e8f3e8}
.ticker{overflow:hidden;background:var(--lime);padding:17px 0;border-block:1px solid var(--ink)}.ticker-track{width:max-content;display:flex;animation:marquee 28s linear infinite}.ticker-track span{font:700 clamp(12px,1.6vw,19px)/1 var(--display);letter-spacing:.065em;white-space:nowrap;padding-right:26px}.ticker-track b{font-weight:400;margin:0 20px}.section-pad{padding:clamp(76px,9vw,145px) clamp(22px,6vw,96px)}.section-kicker{display:flex;align-items:center;gap:12px;color:#5e6a5e;font:700 10px/1 var(--font);letter-spacing:.13em;white-space:nowrap}.section-kicker.light{color:#a5b7a7}.kicker-square{width:9px;height:9px;background:var(--forest);flex:none}.section-kicker.light .kicker-square{background:var(--lime)}.kicker-line{height:1px;width:clamp(30px,4vw,70px);background:currentColor;opacity:.5;margin-inline:10px}h2{font:500 clamp(3.4rem,6vw,7.4rem)/.95 var(--display);letter-spacing:-.075em}h2 em{font-style:normal;color:#7a9575}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:35px;margin:45px 0 48px}.section-heading p,.deliverables-heading p{max-width:345px;color:var(--muted);font-size:15px;line-height:1.75;padding-bottom:6px}.services{background:var(--cream)}.services-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.service-card{background:#e7e9df;min-height:430px;padding:22px;display:flex;flex-direction:column;position:relative;overflow:hidden;transition:background .35s,color .35s,transform .35s}.service-card:nth-child(even){background:#e0e4d8}.service-card:hover{background:var(--forest-2);color:var(--paper);transform:translateY(-9px)}.service-top{display:flex;justify-content:space-between;align-items:start;font:700 10px var(--font);letter-spacing:.1em}.service-icon{width:33px;height:33px;border:1px solid #7280717d;border-radius:50%;display:grid;place-items:center;font-size:18px;line-height:1;transition:transform .35s,border-color .35s}.service-card:hover .service-icon{transform:rotate(45deg);border-color:var(--lime);color:var(--lime)}.service-art{height:180px;position:relative;margin:auto 0 26px;display:grid;place-items:center;color:#526b57;transition:color .35s}.service-card:hover .service-art{color:var(--lime)}.art-plan{background-image:linear-gradient(#8a9e8017 1px,transparent 1px),linear-gradient(90deg,#8a9e8017 1px,transparent 1px);background-size:25px 25px}.art-plan span{position:absolute;border:1.5px solid currentColor}.plan-a{width:118px;height:100px}.plan-b{width:53px;height:59px;transform:translate(-32px,-20px)}.plan-c{width:40px;height:42px;transform:translate(37px,29px)}.plan-d{width:43px;height:1px;transform:translate(52px,-26px)}.scan-rings,.scan-rings:before,.scan-rings:after{position:absolute;border:1px solid currentColor;border-radius:50%;content:""}.scan-rings{width:150px;height:150px}.scan-rings:before{inset:22px}.scan-rings:after{inset:47px}.scan-beam{position:absolute;width:74px;height:74px;transform-origin:bottom left;left:50%;top:50%;background:linear-gradient(45deg,#7da56539,transparent 70%);clip-path:polygon(0 100%,100% 0,100% 100%);animation:scanRotate 5s linear infinite}.scan-center{width:8px;height:8px;border-radius:50%;background:currentColor;z-index:1}.model-cube{position:absolute;width:95px;height:95px;border:1px solid currentColor;transform:rotate(-30deg) skew(30deg,10deg);opacity:.9}.model-cube.second{transform:translate(22px,-15px) rotate(-30deg) skew(30deg,10deg);opacity:.55}.area-square{width:130px;height:95px;border:1px solid currentColor;position:absolute}.area-square:before,.area-square:after{content:"";position:absolute;background:currentColor}.area-square:before{width:1px;height:95px;left:62px}.area-square:after{height:1px;width:130px;top:44px}.area-rule{width:155px;height:1px;background:currentColor;position:absolute;transform:translateY(65px)}.area-label{position:absolute;transform:translateY(-72px);font:700 10px var(--display);letter-spacing:.18em}.service-bottom h3{font:500 clamp(24px,2.2vw,36px)/1.02 var(--display);letter-spacing:-.055em;margin-bottom:18px}.service-bottom p{color:#657466;font-size:12px;line-height:1.6;max-width:230px}.service-card:hover .service-bottom p{color:#b6c5b9}
.process{background:var(--forest);color:var(--paper);overflow:hidden}.process-layout{display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(45px,7vw,110px);align-items:center;margin-top:55px}.process-copy h2{margin-bottom:28px}.process-copy h2 em{color:var(--lime)}.process-intro{color:#aab9ac;max-width:440px;line-height:1.8;margin-bottom:47px}.process-steps>div{display:grid;grid-template-columns:50px 1fr;gap:12px;padding:20px 0;border-top:1px solid #fff3}.process-steps>div:last-child{border-bottom:1px solid #fff3}.step-num{font:500 13px var(--display);color:var(--lime)}.process-steps h3{font:500 18px var(--display);letter-spacing:-.025em;margin-bottom:4px}.process-steps p{font-size:12px;line-height:1.6;color:#9eafa1;max-width:390px}.process-visual{border:1px solid #6e856f73;background:#1d2922;min-height:570px;display:flex;flex-direction:column;position:relative;box-shadow:24px 24px 0 #97bd6c12}.process-visual-top,.process-visual-foot{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:18px 22px;color:#b8caba;font:700 9px/1 var(--font);letter-spacing:.12em}.process-visual-top{border-bottom:1px solid #6e856f73}.process-visual-foot{border-top:1px solid #6e856f73}.live-badge{display:flex;align-items:center;gap:10px;color:var(--lime)}.live-badge i{width:5px;height:5px}.blueprint{position:relative;min-height:0;flex:1;display:grid;place-items:center;margin:20px;overflow:hidden;background-image:linear-gradient(#9dc39c0d 1px,transparent 1px),linear-gradient(90deg,#9dc39c0d 1px,transparent 1px);background-size:23px 23px}.blueprint svg{width:100%;max-height:440px;position:relative;z-index:1;fill:none}.plan-lines{stroke:#b8d6a8;stroke-width:2}.plan-lines .door-lines{stroke-width:1}.measure-lines{stroke:#87aa79;stroke-width:1}.room-labels text,.measure-lines text{fill:#8fbc81;stroke:none;font:600 10px var(--font);letter-spacing:.14em}.blueprint-sweep{position:absolute;left:0;right:0;height:30%;top:-30%;z-index:2;background:linear-gradient(transparent,#c9f2681b,#c9f26842);border-bottom:1px solid var(--lime);box-shadow:0 9px 24px #c9f26825;animation:sweep 5s ease-in-out infinite}.blueprint-point{width:9px;height:9px;background:var(--lime);border:2px solid var(--forest);box-shadow:0 0 0 4px #c9f2684d;position:absolute;z-index:3;animation:pulse 2.5s ease-in-out infinite}.point-a{top:23%;left:21%}.point-b{top:55%;left:58%;animation-delay:.5s}.point-c{top:73%;right:21%;animation-delay:1s}
.deliverables{background:var(--lime);color:var(--ink)}.deliverables .section-kicker{color:#3b5832}.deliverables .kicker-square{background:var(--ink)}.deliverables-heading{display:flex;justify-content:space-between;align-items:end;gap:35px;margin:47px 0 48px}.deliverables-heading h2 em{color:#466a3d}.deliverables-heading p{color:#465b3f;max-width:325px}.deliverables-layout{display:grid;grid-template-columns:1.4fr .6fr;gap:22px;align-items:stretch}.frog-feature{position:relative;min-height:470px;overflow:hidden;background:#d2d6bd}.frog-feature img{width:100%;height:100%;object-fit:cover;transition:transform 1s cubic-bezier(.2,.8,.2,1)}.frog-feature:hover img{transform:scale(1.04)}.frog-feature:after{content:"";position:absolute;inset:55% 0 0;background:linear-gradient(transparent,#111b15a8);pointer-events:none}.frog-feature figcaption{position:absolute;bottom:22px;left:25px;right:25px;z-index:2;display:flex;justify-content:space-between;gap:20px;color:var(--white);font:700 9px/1.3 var(--font);letter-spacing:.12em}.frog-corner{position:absolute;width:32px;height:32px;z-index:2;border-color:var(--lime);border-style:solid}.frog-corner.top-left{top:18px;left:18px;border-width:2px 0 0 2px}.frog-corner.bottom-right{bottom:18px;right:18px;border-width:0 2px 2px 0}.deliverables-aside{padding:clamp(24px,3.5vw,50px);background:var(--forest);color:var(--paper);display:flex;flex-direction:column}.aside-label{color:var(--lime);font:700 9px var(--font);letter-spacing:.13em;margin-bottom:clamp(25px,4vw,65px)}.deliverables-aside h3{font:500 clamp(27px,2.5vw,42px)/1.07 var(--display);letter-spacing:-.055em;margin-bottom:16px}.deliverables-aside>p{color:#aab9ac;font-size:13px;line-height:1.7;max-width:300px;margin-bottom:28px}.format-list{margin-top:auto}.format-list>div{display:grid;grid-template-columns:25px 1fr auto;gap:12px;align-items:center;padding:14px 0;border-top:1px solid #ffffff2a}.format-list span{color:var(--lime);font:500 11px var(--display)}.format-list strong{font:500 12px var(--font)}.format-list small{font:600 10px var(--font);color:#a5b8a8}.aside-link{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-top:24px;padding:15px 0 0;border-top:1px solid #ffffff2a;color:var(--lime);font:700 12px var(--font)}.aside-link span{font-size:18px;transition:transform .25s}.aside-link:hover span{transform:translate(3px,-3px)}
.contact{background:#e9ece2}.contact-layout{display:grid;grid-template-columns:1fr .9fr;gap:clamp(40px,9vw,140px);margin-top:55px;align-items:start}.contact-copy h2{margin-bottom:28px}.contact-copy h2 em{color:#6b9663}.contact-copy>p{max-width:450px;color:#5f6b60;line-height:1.75;margin-bottom:50px}.contact-email{display:inline-flex;align-items:center;gap:26px;border-bottom:1px solid #6c8368;padding-bottom:10px;font:600 clamp(17px,2vw,28px) var(--display);letter-spacing:-.04em}.contact-email span{color:#668c5f;font-size:23px}.contact-form{padding:clamp(24px,3.2vw,48px);background:var(--paper);border:1px solid #cad2c5;box-shadow:18px 18px 0 #c5d2bf80;display:grid;gap:22px}.form-head{display:flex;justify-content:space-between;color:#688064;font:700 10px var(--font);letter-spacing:.13em;padding-bottom:23px;border-bottom:1px solid var(--line)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:22px}.contact-form label{display:grid;gap:8px;color:#39503c;font:700 11px var(--font)}.contact-form input,.contact-form textarea{width:100%;border:0;border-bottom:1px solid #c7cec2;background:transparent;padding:10px 0 12px;outline:0;color:var(--ink);font:400 14px var(--font);resize:vertical;border-radius:0}.contact-form input:focus,.contact-form textarea:focus{border-color:#437044}.contact-form input::placeholder,.contact-form textarea::placeholder{color:#929f91}.submit-button{display:flex;align-items:center;justify-content:space-between;padding:0 20px;height:54px;border:0;background:var(--forest);color:var(--paper);font:700 12px var(--font);transition:background .25s,transform .25s}.submit-button:hover{background:#35503a;transform:translateY(-2px)}.submit-button span{color:var(--lime);font-size:20px}.contact-form>small{color:#778478;font-size:10px}.site-footer{background:var(--forest);color:var(--paper);padding:45px clamp(22px,6vw,96px) 20px}.footer-main{display:flex;justify-content:space-between;align-items:center;gap:25px;padding-bottom:70px}.footer-main>span{color:#a1b3a5;font:400 clamp(18px,2.2vw,32px) var(--display);letter-spacing:-.04em}.footer-bottom{display:flex;justify-content:space-between;gap:20px;border-top:1px solid #ffffff30;padding-top:18px;color:#8fa393;font:700 9px var(--font);letter-spacing:.12em}.footer-bottom a{color:var(--lime)}
.js .reveal{opacity:0;transform:translateY(34px);transition:opacity .8s ease,transform .8s cubic-bezier(.2,.7,.2,1)}.js .reveal.is-visible{opacity:1;transform:translateY(0)}.services-grid .reveal:nth-child(2){transition-delay:.09s}.services-grid .reveal:nth-child(3){transition-delay:.18s}.services-grid .reveal:nth-child(4){transition-delay:.27s}@keyframes riseIn{from{opacity:0;transform:translateY(45px)}to{opacity:1;transform:translateY(0)}}@keyframes marquee{to{transform:translateX(-50%)}}@keyframes sweep{0%{top:-30%}60%,100%{top:100%}}@keyframes pulse{50%{box-shadow:0 0 0 9px #c9f26810}}@keyframes scanRotate{to{transform:rotate(360deg)}}
@media(max-width:1150px){.hero{grid-template-columns:54% 46%}.hero h1{font-size:clamp(4.2rem,7.9vw,7rem);margin-right:-25vw}.hero-index{display:none}.services-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.service-card{min-height:390px}.service-bottom h3{font-size:34px}.deliverables-layout{grid-template-columns:1.1fr .9fr}.frog-feature{min-height:430px}.process-layout{gap:45px}.process-visual{min-height:490px}.blueprint{margin:10px}}
@media(max-width:760px){.site-header{height:68px;padding-inline:20px}.brand-symbol{width:36px;height:36px;font-size:24px}.brand-word{font-size:15px}.brand-word small{font-size:7px}.desktop-nav,.header-cta{display:none}.menu-toggle{width:40px;height:40px;border:1px solid #ffffff5a;background:transparent;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;color:var(--paper)}.menu-toggle span{width:18px;height:1px;background:currentColor;transition:transform .25s}.menu-toggle[aria-expanded="true"] span:first-child{transform:translateY(3.5px) rotate(45deg)}.menu-toggle[aria-expanded="true"] span:last-child{transform:translateY(-3.5px) rotate(-45deg)}.mobile-nav{display:none;position:absolute;top:68px;left:0;right:0;padding:24px 20px 35px;background:var(--forest);border-top:1px solid #ffffff24;box-shadow:0 20px 35px #0004}.mobile-nav.open{display:grid}.mobile-nav a{padding:13px 0;border-bottom:1px solid #ffffff24;font:500 23px var(--display)}.hero{min-height:auto;display:flex;flex-direction:column}.hero-grid{inset:0}.hero-content{min-height:520px;padding:35px 24px 38px}.hero h1{font-size:clamp(3.8rem,11vw,6.5rem);margin:50px 0 40px}.hero-line{white-space:normal}.hero-bottom{padding-right:0}.hero-media{min-height:400px;height:58vw;max-height:550px}.section-pad{padding:80px 24px}.section-heading,.deliverables-heading{display:block;margin-top:35px}.section-heading p,.deliverables-heading p{margin-top:25px}.process-layout,.deliverables-layout,.contact-layout{grid-template-columns:1fr}.process-visual{min-height:530px}.contact-layout{gap:45px}.frog-feature{height:55vw;min-height:370px}.deliverables-aside{min-height:440px}.footer-main{align-items:start;flex-direction:column;padding-bottom:60px}}
@media(max-width:500px){.hero-content{min-height:475px}.hero-topline{font-size:8px}.hero h1{font-size:clamp(3.35rem,12vw,4.8rem);letter-spacing:-.075em}.hero-bottom p{font-size:13px;max-width:235px}.round-link{width:48px;height:48px}.hero-media{min-height:330px;height:370px}.media-caption{font-size:7px;left:15px;right:15px}.scan-marker{top:18px;right:16px}.section-kicker{font-size:8px;gap:8px}.kicker-line{margin-inline:3px;width:26px}h2{font-size:clamp(3.15rem,11vw,5rem)}.services-grid{grid-template-columns:1fr}.service-card{min-height:330px}.service-art{height:130px;margin-bottom:20px}.service-bottom h3{font-size:31px}.process-layout{margin-top:38px}.process-visual{min-height:370px}.process-visual-top,.process-visual-foot{padding:14px 12px;font-size:7px}.blueprint{margin:5px}.frog-feature{min-height:330px;height:390px}.frog-feature figcaption{font-size:7px;left:16px;right:16px;bottom:16px}.deliverables-aside{min-height:400px}.contact-form{padding:22px;box-shadow:10px 10px 0 #c5d2bf80}.form-row{grid-template-columns:1fr}.footer-main>span{font-size:20px}.footer-bottom{flex-wrap:wrap;line-height:1.5}.footer-bottom span:nth-child(2){order:3;width:100%}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.js .reveal{opacity:1;transform:none}}
