:root{--ink:#101c16;--dark:#0c1711;--lime:#d4f783;--paper:#eef0e8;--muted:#abb6a8;--line:rgba(222,237,215,.19);font-family:'DM Sans',sans-serif;color:var(--paper);background:var(--ink);font-synthesis:none}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:94px}body{margin:0}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}button,a{touch-action:manipulation}button{color:inherit}button:focus-visible,a:focus-visible,summary:focus-visible{outline:2px solid var(--lime);outline-offset:6px}::selection{background:var(--lime);color:var(--ink)}.skip{position:fixed;top:-70px;left:24px;background:var(--lime);color:var(--ink);padding:16px;z-index:100}.skip:focus{top:10px}.progress{position:fixed;top:0;left:0;height:3px;width:100%;transform:scaleX(0);transform-origin:left;background:var(--lime);z-index:90}.header{height:100px;position:absolute;top:0;left:0;width:100%;display:flex;align-items:center;justify-content:space-between;padding:0 4.4%;z-index:10;border-bottom:1px solid var(--line)}.brand{font-family:'Manrope',sans-serif;display:inline-flex;align-items:center;gap:10px;font-size:31px;letter-spacing:-1.8px;font-weight:700}.brand-mark{font-size:42px;line-height:1;font-weight:800;display:none}.brand-period{font-size:12px;letter-spacing:0;align-self:flex-start;margin-top:7px}.header nav{display:flex;gap:34px;font-size:14px}.header nav a{position:relative;padding:8px 0}.header nav a:after{content:'';position:absolute;bottom:0;left:0;width:100%;height:1px;background:var(--lime);transform:scaleX(0);transform-origin:left;transition:transform .3s}.header nav a:hover:after{transform:scaleX(1)}.header-cta{border:1px solid #65745b;border-radius:30px;background:transparent;padding:13px 20px;font-size:14px;display:flex;gap:30px;align-items:center;transition:background .25s,color .25s}.header-cta:hover{background:var(--lime);color:var(--ink)}.header-cta span{font-size:20px}.menu-toggle{display:none}.hero{position:relative;min-height:790px;height:100svh;max-height:1200px;overflow:hidden;background:#08130b;padding:154px 4.4% 100px;isolation:isolate}.hero-art{position:absolute;inset:0;z-index:-3;will-change:transform;transform:translate3d(var(--mx,0px),var(--my,0px),0) scale(1.035);animation:art-enter 2.4s ease both}.hero-art img{width:100%;height:100%;object-fit:cover;object-position:65% 47%;opacity:.94}.art-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(8,19,11,.55),transparent 73%),linear-gradient(0deg,#08130b 0%,transparent 20%,transparent 80%,rgba(8,19,11,.5))}.hero-grid{position:absolute;inset:100px 4.4% 0;z-index:-2;border-left:1px solid rgba(219,247,212,.05);border-right:1px solid rgba(219,247,212,.05)}.hero-overline{font-size:12px;letter-spacing:1.3px;display:flex;align-items:center;gap:17px;color:#d3dece;animation:fade-in 1.4s both}.tiny-cross{color:var(--lime);font-size:24px}.hero h1{font-family:'Manrope',sans-serif;font-size:clamp(75px,9.7vw,158px);font-weight:500;letter-spacing:-.072em;line-height:1.04;margin:42px 0 25px;position:relative;z-index:1}.line{display:block;overflow:hidden;padding:0 0 .08em}.line>span{display:block;animation:title-enter 1.4s cubic-bezier(.2,.7,.2,1) both}.line:nth-child(2)>span{animation-delay:.13s}em{font-family:Georgia,'Times New Roman',serif;font-weight:400;letter-spacing:-.065em}.hero h1 em{color:var(--lime)}.hero-description{animation:fade-in 1.8s .4s both}.hero-description p{font-size:16px;line-height:1.65;color:#c8d0c3;margin:0 0 25px}.button{border:0;padding:7px 8px 7px 23px;border-radius:50px;min-height:54px;display:inline-flex;gap:24px;align-items:center;justify-content:space-between;font-size:14px;font-weight:550;transition:transform .3s,background .3s}.lime{background:var(--lime);color:var(--ink)}.button:hover{background:#e4ffa7;transform:translateY(-3px)}.button-arrow{display:grid;place-items:center;width:40px;height:40px;border-radius:100%;font-size:25px;background:var(--ink);color:var(--lime);transition:transform .35s}.button:hover .button-arrow{transform:rotate(45deg)}.object-note{position:absolute;right:5%;bottom:144px;display:flex;align-items:center;gap:15px;font-size:11px;letter-spacing:1.2px;line-height:1.7;color:#c2ccb5}.object-note b{font-weight:400;color:#f0f3dd}.crosshair{display:block;font-size:39px;font-weight:400;animation:cross-turn 12s linear infinite}.hero-bottom{position:absolute;bottom:0;left:4.4%;right:4.4%;height:79px;border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;font-size:11px;letter-spacing:1px}.scroll-cue{display:flex;align-items:center;gap:15px}.scroll-cue>span{font-size:21px;animation:scroll-bob 2s infinite}.hero-caption{color:#8f9c88}.motion-toggle{font-size:12px;letter-spacing:0;background:none;border:0;display:flex;gap:9px;align-items:center;padding:12px 0 12px 12px;color:#c4ccbd}.motion-icon{color:var(--lime);font-weight:700}.section-pad{padding:48px 4.4% 100px}.section-label{font-size:11px;letter-spacing:1.1px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);padding-bottom:26px}.section-label span:last-child{color:var(--muted)}.perspective{background:var(--paper);color:var(--ink);padding-top:45px;padding-bottom:115px}.perspective .section-label{border-color:#c9cfc2}.perspective .section-label span:last-child{color:#65705f}.perspective-grid{display:grid;grid-template-columns:30% 70%;padding-top:83px}.side-note{font-size:15px;line-height:1.6;margin:10px 0}.statement{font-size:clamp(44px,5.8vw,88px);font-family:'Manrope',sans-serif;font-weight:500;letter-spacing:-.06em;line-height:1.12;margin:0 0 50px}.faded{color:#a2ada0}.underline-accent{position:relative;z-index:0}.underline-accent:after{content:'';position:absolute;left:0;bottom:8%;right:-4%;height:19%;background:#c2e879;z-index:-1;transform:rotate(-2deg)}.intro-bottom{display:grid;grid-template-columns:1.2fr 1fr;gap:55px;align-items:end}.intro-bottom p{max-width:390px;font-size:16px;line-height:1.75;margin:0}.text-link{display:flex;gap:32px;align-items:center;justify-content:space-between;border:0;border-bottom:1px solid currentColor;padding:0 0 12px;background:transparent;font-size:14px;text-align:left}.text-link span{font-size:24px;transition:transform .3s}.text-link:hover span{transform:translate(4px,-4px)}.intro-bottom .text-link{justify-self:end;min-width:210px}.ticker{background:var(--lime);color:var(--ink);overflow:hidden;padding:25px 0}.ticker>div{display:flex;width:max-content;gap:52px;align-items:center;animation:ticker 35s linear infinite}.ticker span{font-family:'Manrope',sans-serif;font-size:clamp(28px,3.3vw,48px);letter-spacing:-1.7px;font-weight:500}.ticker i{font-size:42px;font-style:normal}.expertise{padding-top:60px;padding-bottom:125px}.expertise-heading{display:flex;justify-content:space-between;gap:25px;align-items:end;margin:68px 0 60px}h2{font-family:'Manrope',sans-serif;font-size:clamp(48px,5.7vw,86px);line-height:1.08;letter-spacing:-.065em;font-weight:500;margin:0}.expertise-heading h2 em{color:var(--lime)}.expertise-heading p{font-size:16px;line-height:1.65;color:#b0bcab;margin:0 0 5px}.services{border-top:1px solid var(--line)}.service{border-bottom:1px solid var(--line);transition:background .4s}.service summary{list-style:none;cursor:pointer;display:grid;grid-template-columns:8% 1fr 26% 42px;align-items:center;gap:15px;padding:30px 0}.service summary::-webkit-details-marker{display:none}.service-number{font-size:12px;color:#aab7a2}.service h3{font-family:'Manrope',sans-serif;font-size:clamp(24px,3.05vw,45px);font-weight:400;letter-spacing:-1.5px;margin:0;transition:color .3s,transform .3s}.service summary:hover h3{color:var(--lime);transform:translateX(8px)}.service-tag{font-size:10px;letter-spacing:1px;color:#a6b09e;justify-self:end}.service-plus{width:38px;height:38px;border:1px solid #526347;border-radius:50%;display:grid;place-items:center;font-size:23px;transition:transform .4s,background .3s}.service[open] .service-plus{transform:rotate(45deg);background:var(--lime);color:var(--ink);border-color:var(--lime)}.service[open] h3{color:var(--lime)}.service-content{display:grid;grid-template-columns:1.4fr 1fr 54px;gap:70px;margin-left:calc(8% + 15px);padding:0 0 35px;animation:content-in .4s ease}.service-content p{font-size:16px;line-height:1.65;color:#c3cdbd;margin:0;max-width:470px}.service-content ul{list-style:none;padding:0;margin:0;font-size:13px;line-height:2.1;color:#aab7a2}.service-content li:before{content:'—';margin-right:10px;color:#6e865e}.circle-link{border:1px solid #526347;border-radius:50%;width:50px;height:50px;background:transparent;font-size:28px;align-self:end;transition:background .3s,color .3s}.circle-link:hover{background:var(--lime);color:var(--ink)}.approach{background:#19291f;padding-top:50px;padding-bottom:110px}.approach-layout{display:grid;grid-template-columns:1fr 1fr;gap:8%;padding-top:65px}.approach-copy h2{font-size:clamp(40px,4.6vw,68px)}.approach-copy h2 em{color:#b5ca9b}.approach-copy>p{font-size:16px;line-height:1.7;color:#acbba7;max-width:380px;margin:30px 0 45px}.step-tabs{display:flex;flex-direction:column}.step-tabs button{border:0;border-bottom:1px solid var(--line);background:none;display:flex;gap:35px;align-items:center;padding:22px 0;text-align:left;color:#9aab93;font-size:21px;transition:color .3s,padding .3s}.step-tabs button span{font-size:12px}.step-tabs button[aria-selected=true]{color:var(--lime);padding-left:15px}.step-tabs button[aria-selected=true]:after{content:'↗';margin-left:auto}.strategy-display{position:relative;min-height:520px;border:1px solid #506145;background:#112018;overflow:hidden}.display-top{position:absolute;top:24px;left:25px;right:25px;display:flex;justify-content:space-between;font-size:10px;letter-spacing:1px;color:#aabf99;z-index:2}#strategy-canvas{position:absolute;inset:0;width:100%;height:75%}.model-center{position:absolute;top:31%;width:100%;text-align:center;pointer-events:none;display:flex;align-items:center;flex-direction:column;gap:10px}.model-center>span:first-child{font-family:Georgia,serif;font-size:49px;font-style:italic;color:var(--lime);letter-spacing:-2px}.model-subtitle{font-size:9px;letter-spacing:1.8px;color:#b1be9e}#step-panel{position:absolute;bottom:35px;left:30px;right:30px;border-top:1px solid var(--line);padding-top:22px}#step-panel h3{font-size:22px;letter-spacing:-.5px;font-weight:450;margin:0 0 12px}#step-panel p{font-size:14px;line-height:1.65;color:#aebb9e;margin:0;max-width:370px}.display-corner{position:absolute;bottom:10px;right:12px;font-size:22px;color:var(--lime)}.contact-section{background:var(--lime);color:var(--ink);padding-top:45px;padding-bottom:65px;overflow:hidden}.contact-section .section-label{border-color:rgba(16,28,22,.2)}.contact-section .section-label span:last-child{color:#516a2f}.contact-heading{display:flex;align-items:center;justify-content:space-between;gap:35px;margin:60px 0}.contact-heading h2{font-size:clamp(66px,10.4vw,154px);letter-spacing:-.07em}.contact-heading h2 em{letter-spacing:-.08em}.big-contact{width:170px;height:170px;border:1px solid #829d55;border-radius:100%;background:transparent;color:var(--ink);font-size:90px;line-height:1;transition:background .4s,color .4s,transform .4s}.big-contact:hover{background:var(--ink);color:var(--lime);transform:rotate(45deg)}.contact-bottom{display:flex;align-items:end;justify-content:space-between}.contact-bottom p{font-size:16px;line-height:1.7;margin:0}.contact-bottom .text-link{min-width:240px}footer{padding:45px 4.4%;display:flex;align-items:center;justify-content:space-between;gap:24px}footer p{font-size:13px;color:#acb7a3}footer>span{font-size:11px;color:#a3b19a}.back-top{font-size:10px;letter-spacing:1px}.reveal{opacity:1;transform:none}.js-motion .reveal:not(.in-view){opacity:0;transform:translateY(25px)}.reveal{transition:opacity .8s ease,transform .8s cubic-bezier(.2,.65,.2,1)}dialog{width:min(610px,calc(100% - 30px));max-height:calc(100svh - 30px);overflow:auto;border:1px solid #59704c;border-radius:4px;padding:43px;background:#142219;color:var(--paper)}dialog::backdrop{background:rgba(3,10,6,.8);backdrop-filter:blur(12px)}.dialog-close{position:absolute;right:20px;top:14px;background:none;border:0;font-size:32px;color:#afc0a2;padding:5px 10px}.eyebrow{font-size:10px;letter-spacing:1.2px;color:var(--lime)}dialog h2{font-size:49px;margin-top:23px}dialog>p{font-size:14px;line-height:1.6;color:#aabc9e;margin:18px 0 25px}form{display:grid;gap:18px}form label{font-size:12px;display:grid;gap:8px;color:#c1cfb7}input,select,textarea{width:100%;background:#0d1a12;border:1px solid #4a6040;border-radius:3px;padding:12px 14px;font-size:16px;color:var(--paper);outline:none}input:focus,select:focus,textarea:focus{border-color:var(--lime)}textarea{resize:vertical}form .button{width:100%;margin-top:3px;padding:15px 20px}.form-note{font-size:11px;color:#9cac8e;line-height:1.6;margin:0}#form-status{font-size:14px;color:var(--lime);margin:0}.paused *,.paused *:before,.paused *:after{animation-play-state:paused!important}.paused .reveal{opacity:1!important;transform:none!important}.paused .hero-art{transform:none!important}@keyframes title-enter{from{transform:translateY(110%)}to{transform:translateY(0)}}@keyframes fade-in{from{opacity:0}to{opacity:1}}@keyframes art-enter{from{opacity:0;scale:1.09}to{opacity:1;scale:1}}@keyframes ticker{to{transform:translateX(-50%)}}@keyframes cross-turn{to{transform:rotate(360deg)}}@keyframes scroll-bob{50%{transform:translateY(5px)}}@keyframes content-in{from{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}
@media(min-width:1500px){.hero{padding-top:175px}.hero h1{margin-top:55px}.hero-description p{font-size:18px}.hero-art img{object-position:center 49%}}
@media(max-width:1000px){.hero{min-height:750px}.hero h1{font-size:11vw}.hero-caption{display:none}.hero-art img{object-position:61% center}.header nav{gap:20px}.perspective-grid{grid-template-columns:25% 75%}.intro-bottom{gap:25px}.service-tag{display:none}.service summary{grid-template-columns:8% 1fr 42px}.service-content{gap:30px}.approach-layout{gap:35px}.strategy-display{min-height:545px}.big-contact{width:130px;height:130px;font-size:70px}footer p{display:none}}
@media(max-width:700px){html{scroll-padding-top:20px}.header{height:80px;padding:0 6%}.brand{font-size:28px}.header nav,.header-cta{display:none}.menu-toggle{display:flex;flex-direction:column;gap:6px;padding:12px;background:none;border:1px solid #536447;border-radius:50%;height:44px;width:44px;justify-content:center}.menu-toggle span{display:block;width:18px;height:1px;background:var(--paper);transition:transform .2s}.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-menu:not([hidden]){display:flex;position:absolute;top:79px;left:0;right:0;background:#142219;z-index:9;flex-direction:column;padding:35px 6%;gap:28px;border-bottom:1px solid #536447;font-size:27px}.mobile-menu button{background:none;text-align:left;border:0;padding:0;font-size:27px;color:var(--lime)}.hero{height:900px;min-height:850px;max-height:1050px;padding:119px 6% 90px}.hero-overline{font-size:9px;letter-spacing:.8px;gap:10px}.hero h1{font-size:clamp(61px,14.5vw,102px);margin:30px 0 22px;line-height:1.04;letter-spacing:-.07em}.hero-art{inset:155px -140px 85px -65px}.hero-art img{object-position:77% center;opacity:.8}.art-shade{background:linear-gradient(180deg,#08130b 0%,transparent 30%,transparent 62%,#08130b 94%),linear-gradient(90deg,rgba(8,19,11,.2),transparent)}.hero-description{position:absolute;bottom:116px;left:6%;right:6%;z-index:2}.hero-description p{font-size:15px;text-shadow:0 2px 15px #08130b}.hero-description .button{font-size:13px}.hero-grid{inset:80px 6% 0}.object-note{right:7%;bottom:350px;font-size:8px;gap:8px}.crosshair{font-size:24px}.hero-bottom{left:6%;right:6%;height:76px;letter-spacing:.3px}.scroll-cue{font-size:8px;gap:8px}.motion-toggle{font-size:10px;gap:5px}.section-pad{padding:35px 6% 65px}.section-label{font-size:9px;letter-spacing:.7px;padding-bottom:22px}.section-label span:last-child{display:none}.perspective-grid{grid-template-columns:1fr;padding-top:38px}.side-note{font-size:13px;margin:0 0 28px}.statement{font-size:9.6vw;line-height:1.16;margin-bottom:28px}.intro-bottom{grid-template-columns:1fr;gap:25px}.intro-bottom p{font-size:15px}.intro-bottom .text-link{justify-self:start;min-width:220px}.ticker{padding:20px 0}.ticker>div{gap:25px}.ticker span{font-size:28px;letter-spacing:-1px}.ticker i{font-size:30px}.expertise-heading{display:block;margin:35px 0}.expertise-heading h2{font-size:52px}.expertise-heading p{font-size:14px;margin-top:24px}.service summary{grid-template-columns:20px 1fr 34px;gap:15px;padding:24px 0}.service h3{font-size:23px;letter-spacing:-.8px}.service-number{font-size:10px}.service-plus{width:32px;height:32px;font-size:20px}.service-content{grid-template-columns:1fr 44px;margin-left:35px;gap:20px;padding-bottom:25px}.service-content p{grid-column:1/-1;font-size:14px}.service-content ul{font-size:12px}.circle-link{width:42px;height:42px;font-size:23px}.approach-layout{grid-template-columns:1fr;padding-top:35px;gap:30px}.approach-copy h2{font-size:47px}.approach-copy>p{font-size:15px;margin:25px 0}.step-tabs{flex-direction:row;gap:12px}.step-tabs button{font-size:14px;gap:7px;padding:17px 0;flex:1}.step-tabs button span{font-size:10px}.step-tabs button[aria-selected=true]{padding-left:0;border-bottom-color:var(--lime)}.step-tabs button[aria-selected=true]:after{display:none}.strategy-display{min-height:480px}.model-center>span:first-child{font-size:46px}#step-panel{left:24px;right:24px;bottom:28px}#step-panel h3{font-size:21px}#step-panel p{font-size:13px}.contact-heading{margin:40px 0;gap:8px}.contact-heading h2{font-size:14vw}.big-contact{flex-shrink:0;width:65px;height:65px;font-size:40px}.contact-bottom{display:block}.contact-bottom p{font-size:14px}.contact-bottom .text-link{margin-top:30px;width:100%;min-width:0}footer{padding:35px 6%;display:grid;grid-template-columns:1fr 1fr;gap:25px}footer .brand{grid-column:1/-1}footer>span{font-size:10px}.back-top{text-align:right;font-size:9px}dialog{padding:35px 25px}dialog h2{font-size:39px}.desktop-break{display:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.js-motion .reveal:not(.in-view){opacity:1;transform:none}.hero-art{transform:none!important}}
.paused .line>span{animation:none!important;transform:none!important}.paused .hero-description,.paused .hero-overline,.paused .hero-art{opacity:1!important;animation:none!important}.hero-art img{animation:sculpture-breathe 18s ease-in-out infinite;will-change:transform}@keyframes sculpture-breathe{50%{transform:scale(1.025) translateY(-7px)}}
.brand-period{font-size:8px;line-height:1.35;letter-spacing:.5px;margin-top:7px;margin-left:3px;font-weight:500}.email-link{color:var(--lime);display:inline-block;margin-top:13px;font-size:14px;overflow-wrap:anywhere}.header .brand,footer .brand{font-size:38px;letter-spacing:-2px}.form-note{font-size:12px}.section-label,.hero-overline,.hero-bottom{font-size:12px}.display-top{font-size:12px}.model-subtitle{font-size:10px}@media(max-width:700px){.hero-overline{font-size:10px}.hero-bottom,.scroll-cue{font-size:9px}.section-label{font-size:11px}.display-top{font-size:10px}.step-tabs button{font-size:13px;gap:6px}}

/* Keep the hero content above the independently positioned scroll bar. */
@media (min-width:701px){
  .hero{height:auto;min-height:max(790px,100svh);max-height:none;padding-bottom:140px}
}

