:root{--ease:cubic-bezier(.16,1,.3,1)}
html{scroll-padding-top:96px}body.is-loading{overflow:hidden}::selection{background:var(--mint);color:#062616}
.page-grain{position:fixed;inset:0;z-index:9998;pointer-events:none;opacity:.035;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.7'/%3E%3C/svg%3E")}
.page-loader{position:fixed;inset:0;z-index:10000;display:grid;place-items:center;background:#020302;transition:opacity .7s var(--ease),visibility .7s}.page-loader.is-done{opacity:0;visibility:hidden}.page-loader img{width:180px;filter:drop-shadow(0 12px 40px rgba(120,220,156,.14));animation:loaderPulse 1.3s ease-in-out infinite alternate}.page-loader span{position:absolute;left:0;bottom:0;height:3px;width:100%;background:var(--mint);transform-origin:left;animation:loaderLine 1.25s var(--ease) both}@keyframes loaderPulse{to{transform:scale(1.04);filter:drop-shadow(0 14px 46px rgba(120,220,156,.3))}}@keyframes loaderLine{from{transform:scaleX(0)}to{transform:scaleX(1)}}
.cursor{position:fixed;z-index:9999;left:0;top:0;width:34px;height:34px;border:1px solid rgba(120,220,156,.85);border-radius:50%;pointer-events:none;transform:translate(-50%,-50%);transition:width .3s,height .3s,background .3s,border-color .3s;mix-blend-mode:difference}.cursor span{position:absolute;inset:50%;width:4px;height:4px;background:#fff;border-radius:50%;transform:translate(-50%,-50%)}.cursor.is-active{width:66px;height:66px;background:rgba(255,255,255,.86);border-color:#fff}
.progress{height:4px}.progress span{box-shadow:0 0 18px rgba(120,220,156,.7)}
.site-header{position:fixed;transition:height .45s var(--ease),background .35s,border-color .35s,transform .45s var(--ease);backdrop-filter:blur(0)}.site-header.is-scrolled{height:78px;background:rgba(5,7,6,.78);backdrop-filter:blur(18px) saturate(140%);border-color:rgba(255,255,255,.1)}.site-header.is-hidden{transform:translateY(-110%)}.site-header.is-scrolled .brand img{height:54px;width:110px}.brand img{transition:height .4s var(--ease),width .4s var(--ease),filter .4s}.brand:hover img{filter:drop-shadow(0 0 18px rgba(120,220,156,.25))}
.site-header nav>a:not(.nav-cta){position:relative;padding:9px 0;color:rgba(255,255,255,.78);transition:color .25s}.site-header nav>a:not(.nav-cta):after{content:"";position:absolute;left:0;bottom:2px;width:100%;height:1px;background:var(--mint);transform:scaleX(0);transform-origin:right;transition:transform .35s var(--ease)}.site-header nav>a:hover,.site-header nav>a.is-active{color:#fff}.site-header nav>a:hover:after,.site-header nav>a.is-active:after{transform:scaleX(1);transform-origin:left}.nav-cta{position:relative;overflow:hidden}.nav-cta:before{content:"";position:absolute;inset:0;background:var(--mint);transform:translateX(-102%);transition:transform .4s var(--ease);z-index:-1}.nav-cta:hover:before{transform:none}.nav-cta:hover{background:transparent;color:#062616;border-color:var(--mint)}
.hero{min-height:100svh;overflow:hidden;padding-bottom:7vh}.hero:after{content:"";position:absolute;inset:auto 0 0;height:18%;background:linear-gradient(transparent,rgba(5,7,6,.62));z-index:-1;pointer-events:none}.hero-media img{will-change:transform;filter:saturate(.92) contrast(1.03)}.hero-scrim:after{content:"";position:absolute;inset:0;background:linear-gradient(115deg,transparent 45%,rgba(120,220,156,.08) 62%,transparent 76%);transform:translateX(-100%);animation:heroSweep 6s 1.4s var(--ease) infinite}@keyframes heroSweep{0%,70%{transform:translateX(-100%)}100%{transform:translateX(100%)}}
.hero-content{max-width:880px;will-change:transform}.hero .eyebrow{display:inline-flex;align-items:center;gap:12px}.hero .eyebrow:before{content:"";width:34px;height:1px;background:var(--mint)}.hero h1{max-width:900px;text-shadow:0 12px 50px rgba(0,0,0,.35)}.hero h1 span{display:inline-block;position:relative}.hero h1 span:after{content:"";position:absolute;left:0;right:0;bottom:-7px;height:4px;background:var(--mint);transform:scaleX(0);transform-origin:left;animation:titleLine .9s 1.35s var(--ease) forwards}@keyframes titleLine{to{transform:scaleX(1)}}.hero-copy{line-height:1.72}
.button{position:relative;overflow:hidden;isolation:isolate;transition:transform .35s var(--ease),color .35s,background .35s,border-color .35s,box-shadow .35s}.button span{transition:transform .3s var(--ease)}.button:hover span{transform:translate(4px,-4px)}.button-primary:hover{box-shadow:0 18px 42px rgba(120,220,156,.23)}.button-ghost:before{content:"";position:absolute;inset:0;background:#fff;z-index:-1;transform:translateY(102%);transition:transform .38s var(--ease)}.button-ghost:hover:before{transform:none}.button-ghost:hover{background:transparent}
.hero-proof{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));max-width:670px;margin-top:42px;border-top:1px solid rgba(255,255,255,.22);padding-top:18px}.hero-proof div{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:12px;padding-right:24px}.hero-proof strong{font:800 1.7rem/1 var(--display);color:var(--mint)}.hero-proof span{font-size:.75rem;line-height:1.2;text-transform:uppercase;color:rgba(255,255,255,.55)}
.scroll-cue i{overflow:hidden;transition:border-color .3s,transform .3s}.scroll-cue:hover i{border-color:var(--mint);transform:translateY(4px)}.scroll-cue i:after{animation:scrollDrop 1.6s ease-in-out infinite}@keyframes scrollDrop{0%{transform:translateY(-20px)}50%{transform:translateY(0)}100%{transform:translateY(25px)}}
.ticker{overflow:hidden;background:var(--mint);color:#062616;border-top:1px solid rgba(6,38,22,.2);border-bottom:1px solid rgba(6,38,22,.2)}.ticker-track{width:max-content;display:flex;align-items:center;gap:30px;padding:18px 0;animation:tickerMove 32s linear infinite}.ticker span{font:800 1rem/1 var(--display);text-transform:uppercase}.ticker i{font-style:normal;font-size:.8rem}@keyframes tickerMove{to{transform:translateX(-50%)}}
.section{position:relative}.section-label:after{content:"";flex:1;height:1px;background:currentColor;opacity:.14;align-self:center;margin-left:18px;transform:scaleX(0);transform-origin:left;transition:transform 1.1s var(--ease)}.section-label.is-visible:after{transform:scaleX(1)}
.intro{overflow:hidden}.intro:before{content:"TCO";position:absolute;right:-.08em;top:-.18em;font:800 27vw/1 var(--display);color:rgba(5,7,6,.025);pointer-events:none}.intro h2 em{position:relative}.intro h2 em:after{content:"";position:absolute;left:0;right:0;bottom:-10px;height:7px;background:var(--mint);transform:scaleX(.28);transform-origin:left;transition:transform .8s var(--ease)}.intro h2:hover em:after{transform:scaleX(1)}
.capability-strip div{position:relative;overflow:hidden;transition:color .3s,background .3s,transform .3s}.capability-strip div:after{content:"";position:absolute;inset:auto 0 0;height:3px;background:var(--mint-dark);transform:scaleX(0);transition:transform .35s var(--ease)}.capability-strip div:hover{background:#fff;transform:translateY(-4px)}.capability-strip div:hover:after{transform:scaleX(1)}
.services{overflow:hidden}.services:after{content:"CREATIVE";position:absolute;right:-2vw;top:4vw;font:800 12vw/1 var(--display);color:rgba(255,255,255,.018);pointer-events:none}.service-list{position:relative}.service{cursor:none;transition:color .35s,padding .45s var(--ease),transform .35s}.service:hover{transform:translateX(6px)}.service .arrow{display:grid;place-items:center;width:38px;height:38px;border:1px solid rgba(255,255,255,.2);border-radius:50%;transition:transform .4s var(--ease),background .3s}.service:hover .arrow{transform:rotate(45deg);background:#fff;border-color:#fff}
.service-spotlight{position:fixed;z-index:30;left:0;top:0;width:260px;aspect-ratio:4/3;pointer-events:none;opacity:0;transform:translate(-50%,-50%) scale(.82) rotate(-4deg);transition:opacity .25s,transform .35s var(--ease);overflow:hidden;border:4px solid #fff;box-shadow:0 22px 70px rgba(0,0,0,.35)}.service-spotlight.is-visible{opacity:1;transform:translate(-50%,-50%) scale(1) rotate(-2deg)}.service-spotlight img{width:100%;height:100%;object-fit:cover}
.experience-photo{position:relative}.experience-photo:after{content:"";position:absolute;inset:0;background:linear-gradient(120deg,transparent 50%,rgba(120,220,156,.16));mix-blend-mode:screen}.experience-photo img{transform:scale(1.06);will-change:transform}.experience:hover img{transform:scale(1)}.experience-copy{position:relative}.experience-copy:before{content:"360°";position:absolute;right:6%;top:8%;font:800 6rem/1 var(--display);color:rgba(20,107,65,.05)}.experience-copy>a{position:relative}.experience-copy>a:after{content:"";position:absolute;left:0;bottom:4px;width:100%;height:2px;background:var(--mint-dark);transform:scaleX(.2);transform-origin:left;transition:transform .4s var(--ease)}.experience-copy>a:hover:after{transform:scaleX(1)}
.possibilities{overflow:hidden}.possibilities:after{content:"∞";position:absolute;right:-.08em;bottom:-.36em;font:800 30vw/1 var(--display);color:rgba(6,38,22,.045)}.stack p{position:relative;transition:padding-left .35s var(--ease),color .3s}.stack p:before{content:"→";position:absolute;left:0;opacity:0;transform:translateX(-12px);transition:.35s var(--ease)}.stack p:hover{padding-left:34px;color:#fff}.stack p:hover:before{opacity:1;transform:none}.answer strong{transition:transform .7s var(--ease);transform-origin:left}.answer:hover strong{transform:skewY(-2deg) scale(1.02)}
.tilt-card{position:relative;overflow:hidden;will-change:transform}.tilt-card:before{content:"";position:absolute;width:160px;height:160px;right:-90px;top:-90px;border:1px solid rgba(20,107,65,.15);border-radius:50%;transition:transform .6s var(--ease),background .4s}.tilt-card:hover:before{transform:scale(2.8);background:rgba(120,220,156,.08)}.tilt-card h3,.tilt-card p,.tilt-card>span{position:relative;z-index:1;transform:translateZ(24px)}
.contact:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 50% 52%,rgba(120,220,156,.1),transparent 37%);animation:contactGlow 5s ease-in-out infinite alternate}@keyframes contactGlow{to{opacity:.45;transform:scale(1.15)}}.contact h2 span{display:inline-block;transition:text-shadow .35s}.contact h2:hover span{text-shadow:0 0 34px rgba(120,220,156,.28)}.contact .email{position:relative;display:inline-block}.contact .email:after{content:"";position:absolute;left:0;bottom:-4px;width:100%;height:1px;background:var(--mint);transform:scaleX(0);transition:transform .4s var(--ease)}.contact .email:hover:after{transform:scaleX(1)}
.back-top{position:fixed;right:24px;bottom:24px;z-index:80;width:50px;height:50px;border-radius:50%;border:1px solid rgba(255,255,255,.22);background:rgba(5,7,6,.78);backdrop-filter:blur(12px);color:#fff;font-size:1.2rem;cursor:pointer;opacity:0;visibility:hidden;transform:translateY(18px);transition:.35s var(--ease)}.back-top.is-visible{opacity:1;visibility:visible;transform:none}.back-top:hover{background:var(--mint);color:#062616;border-color:var(--mint);transform:translateY(-4px)}
footer a{position:relative}footer a:after{content:"";position:absolute;left:0;bottom:-3px;height:1px;width:100%;background:var(--mint);transform:scaleX(0);transition:.3s}footer a:hover:after{transform:scaleX(1)}
.reveal{filter:blur(5px);transform:translateY(40px);transition:opacity .85s var(--ease),transform .85s var(--ease),filter .85s var(--ease)}.reveal.is-visible{filter:blur(0)}.service.reveal:nth-child(3n+1),.tilt-card.reveal:nth-child(odd){transition-delay:.06s}.service.reveal:nth-child(3n+2),.tilt-card.reveal:nth-child(even){transition-delay:.12s}
@media (max-width:980px){.cursor,.service-spotlight{display:none}.site-header.is-scrolled{height:72px}.site-header nav{backdrop-filter:blur(20px)}.site-header nav a{transform:translateY(14px);opacity:0;transition:transform .45s var(--ease),opacity .45s}.site-header nav.open a{transform:none;opacity:1}.site-header nav.open a:nth-child(2){transition-delay:.06s}.site-header nav.open a:nth-child(3){transition-delay:.12s}.site-header nav.open a:nth-child(4){transition-delay:.18s}.menu-toggle span{transition:transform .35s,opacity .25s}.menu-toggle[aria-expanded="true"] span:first-child{transform:translateY(4px) rotate(45deg)}.menu-toggle[aria-expanded="true"] span:last-child{transform:translateY(-4px) rotate(-45deg)}.hero-proof{max-width:590px}.service{cursor:auto}}
@media (max-width:640px){.page-loader img{width:140px}.page-grain{opacity:.02}.hero{min-height:100svh;padding-bottom:45px}.hero .eyebrow{font-size:.68rem}.hero-proof{grid-template-columns:1fr 1fr;margin-top:26px;gap:14px}.hero-proof div{padding-right:8px}.hero-proof div:nth-child(3){display:none}.hero-proof strong{font-size:1.25rem}.hero-proof span{font-size:.62rem}.ticker-track{padding:14px 0;gap:20px}.ticker span{font-size:.78rem}.section-label:after{margin-left:8px}.service:hover{transform:none}.service .arrow{width:30px;height:30px}.experience-copy:before{font-size:3.5rem}.back-top{width:44px;height:44px;right:14px;bottom:14px}.answer strong{font-size:22vw}.contact h2{font-size:clamp(3rem,13vw,4.6rem)}}
@media (prefers-reduced-motion:reduce){.page-loader,.cursor{display:none}.ticker-track,.hero-scrim:after,.contact:before{animation:none!important}.hero-media img{transform:none!important}.reveal{filter:none!important}}
