.pointer-light{position:fixed;left:0;top:0;width:360px;height:360px;border-radius:50%;pointer-events:none;z-index:38;opacity:0;background:radial-gradient(circle,rgba(var(--accent-rgb),.07),rgba(var(--accent-rgb),.025) 35%,transparent 69%);transition:opacity .4s;will-change:transform}
.pointer-trail{position:fixed;inset:0;pointer-events:none;z-index:42;contain:strict}
.enhanced-pointer .cursor{transition:opacity .3s,width .22s,height .22s,background .25s;will-change:transform}
.project,.solution,.service-row,.feature,.initials,.product-art,.contact-form{--hover-x:50%;--hover-y:50%;--tilt-x:0deg;--tilt-y:0deg}
.project-art,.solution,.service-row,.feature,.initials,.product-art,.contact-form{position:relative}
.solution:after,.service-row:after,.initials:before,.contact-form:after{content:'';position:absolute;inset:0;border-radius:inherit;background:radial-gradient(240px circle at var(--hover-x) var(--hover-y),rgba(var(--accent-rgb),.13),transparent 75%);opacity:0;transition:opacity .5s;pointer-events:none;z-index:0}
.pointer-engaged.solution:after,.pointer-engaged.service-row:after,.pointer-engaged.initials:before,.pointer-engaged.contact-form:after{opacity:1}
.solution>* ,.service-row>*,.contact-form>*{position:relative;z-index:1}
.project-art:after{content:'';position:absolute;inset:0;background:linear-gradient(115deg,transparent 20%,#ffffff20 45%,transparent 65%);transform:translateX(-120%);transition:transform 1s cubic-bezier(.2,.7,.2,1);pointer-events:none;z-index:4}
.project.pointer-engaged .project-art:after{transform:translateX(120%)}
.enhanced-pointer .project.visible.pointer-engaged{transform:perspective(1100px) rotateX(var(--tilt-x)) rotateY(var(--tilt-y));transition:transform .35s ease-out}
.enhanced-pointer .initials.pointer-engaged,.enhanced-pointer .product-art.pointer-engaged{transform:perspective(900px) rotateX(var(--tilt-x)) rotateY(var(--tilt-y));transition:transform .5s ease-out}
.initials,.product-art{transition:transform .6s ease-out}
.feature:after{content:'';position:absolute;top:-1px;left:0;right:0;height:2px;background:linear-gradient(90deg,transparent,var(--accent),transparent);transform:scaleX(0);transform-origin:center;transition:transform .6s;pointer-events:none}
.feature.pointer-engaged:after,.feature:focus-within:after{transform:scaleX(1)}
.feature.pointer-engaged .feature-dot{transform:rotate(140deg) scale(1.2);filter:drop-shadow(0 0 9px rgba(var(--accent-rgb),.4))}
.service-row.pointer-engaged .service-glyph{transform:rotate(-15deg) translateY(-4px) scale(1.06);box-shadow:0 8px 25px rgba(var(--accent-rgb),.12)}
.service-row.pointer-engaged .number{color:var(--accent)}
.product-art.pointer-engaged .system-core{box-shadow:0 20px 70px rgba(var(--accent-rgb),.18),inset 0 0 24px rgba(var(--accent-rgb),.08)}
.project.pointer-engaged .project-layers i{border-color:currentColor;opacity:.35}
.hero h1 em{position:relative}.hero h1 em:after{content:'';position:absolute;left:0;right:0;bottom:-7px;height:1px;background:linear-gradient(90deg,transparent,var(--accent),transparent);transform:scaleX(.6);opacity:.25;transition:transform .8s,opacity .8s}
.hero:hover h1 em:after{transform:scaleX(1);opacity:.7}
.hero .prism-stack{transform:rotateX(calc(12deg + var(--pointer-y,0)*-23deg)) rotateY(calc(-25deg + var(--pointer-x,0)*32deg)) rotateZ(-25deg)}
.hero .nova-spark{transition:filter .5s}.hero:hover .nova-spark{filter:drop-shadow(0 0 35px #9972ff99)}
header nav{position:relative;isolation:isolate}header nav:before{content:'';position:absolute;left:0;top:-9px;height:calc(100% + 18px);width:var(--nav-width,0px);background:rgba(var(--accent-rgb),.09);border:1px solid rgba(var(--accent-rgb),.09);border-radius:8px;transform:translateX(var(--nav-x,0px));opacity:var(--nav-on,0);transition:transform .35s cubic-bezier(.2,.8,.2,1),width .35s,opacity .25s;z-index:-1;pointer-events:none}
.button,.control,.nav-cta,.product-tabs button,.filters button{transition:transform .25s ease-out,box-shadow .3s,background .3s,color .3s}
.button:focus-visible,.nav-cta:focus-visible{box-shadow:0 0 0 5px rgba(var(--accent-rgb),.16)}
.button:active,.control:active{scale:.96}
.section-head .label:before{width:calc(18px + var(--section-phase,0)*35px);transition:width .15s linear}
.section-on .about-year strong{filter:drop-shadow(0 10px 30px rgba(var(--accent-rgb),.09))}
.cta-waves{translate:0 var(--section-drift,0px);transition:translate .25s linear}
.stats>div{transition:background .4s,transform .4s;border-radius:8px;padding-block:8px}.stats>div:hover{transform:translateY(-5px);background:rgba(var(--accent-rgb),.035)}
.client-track span{transition:color .4s,transform .4s}.client-track span:hover{transform:translateY(-4px)}
.tech-band:hover>div{animation-play-state:paused}
[data-scroll-direction=up] .hero-bottom b{animation-direction:reverse}
@media(max-width:1000px){header nav{position:fixed}header nav:before{display:none}}
@media(hover:none),(pointer:coarse){.pointer-light,.pointer-trail{display:none}.hero .prism-stack{transform:rotateX(12deg) rotateY(-25deg) rotateZ(-25deg)}.project,.initials,.product-art{--tilt-x:0deg!important;--tilt-y:0deg!important}.hero h1 em:after{display:none}}
@media(prefers-reduced-motion:reduce){.pointer-light,.pointer-trail{display:none!important}.cta-waves{translate:none}.section-head .label:before{width:18px}.hero h1 em:after{display:none}.project-art:after{display:none}.project,.initials,.product-art,.stats>div,.client-track span{transform:none!important}.button:active,.control:active{scale:1}}
