body:before{opacity:var(--fx-grid-opacity)}.reveal{opacity:0;filter:blur(10px);transition:opacity .9s,transform .9s cubic-bezier(.22,1,.36,1),filter .9s;transform:translateY(56px)}.reveal.visible{opacity:1;filter:blur();transform:translateY(0)}.reveal-left{opacity:0;filter:blur(10px);transition:opacity .8s,transform .8s cubic-bezier(.22,1,.36,1),filter .8s;transform:translate(-64px)}.reveal-left.visible{opacity:1;filter:blur();transform:translate(0)}.reveal-scale{opacity:0;filter:blur(8px);transition:opacity .7s,transform .7s cubic-bezier(.34,1.56,.64,1),filter .7s;transform:scale(.8)}.reveal-scale.visible{opacity:1;filter:blur();transform:scale(1)}#scrollProgress{background:var(--gradient-primary);z-index:9999;pointer-events:none;width:0%;height:3px;position:fixed;top:0;left:0;box-shadow:0 0 10px #6366f1cc}#heroStage{z-index:3;will-change:transform, opacity;position:relative}#heroInner{transition:transform .3s cubic-bezier(.22,1,.36,1)}#spot{z-index:0;pointer-events:none;opacity:0;background:radial-gradient(circle 340px at var(--spx,50%) var(--spy,50%), #6366f12b, #22d3ee12 45%, transparent 72%);opacity:var(--fx-spot-opacity);transition:opacity .45s;position:absolute;inset:0}body.fx-spot #spot{opacity:1}body.fx-parallax #heroInner{transform:translate3d(calc(var(--pmx) * 12px), calc(var(--pmy) * 12px), 0)}body.fx-parallax:before{transform:translate3d(calc(var(--pmx) * -26px), calc(var(--pmy) * -26px), 0);inset:-40px}.hero-title .ch{white-space:pre;display:inline-block}body.fx-enter .hero-title .ch{opacity:0;animation:.82s cubic-bezier(.22,1,.36,1) forwards ch-in}@keyframes ch-in{0%{opacity:0;filter:blur(12px);transform:translateY(.45em)scale(.94)}to{opacity:1;filter:blur();transform:translateY(0)scale(1)}}body.fx-enter .badge,body.fx-enter .hero-subtitle,body.fx-enter .hero-cta{opacity:0;animation:.9s cubic-bezier(.22,1,.36,1) forwards hero-rise}body.fx-enter .badge{animation-delay:50ms}body.fx-enter .hero-subtitle{animation-delay:.52s}body.fx-enter .hero-cta{animation-delay:.68s}@keyframes hero-rise{0%{opacity:0;filter:blur(6px);transform:translateY(26px)}to{opacity:1;filter:blur();transform:translateY(0)}}.badge{position:relative;overflow:hidden}.badge:after{content:"";pointer-events:none;background:linear-gradient(115deg,#0000 32%,#22d3ee73 50%,#0000 68%);position:absolute;inset:0;transform:translate(-130%)}body.fx-flow .badge:after{animation:3.6s ease-in-out infinite badge-shimmer}@keyframes badge-shimmer{0%,55%{transform:translate(-130%)}to{transform:translate(130%)}}body.fx-flow .hero-title .grad{background:linear-gradient(90deg, #6366f1 0%, var(--grad-mid) 25%, var(--grad-end) 50%, var(--grad-mid) 75%, #6366f1 100%);-webkit-text-fill-color:transparent;background-size:200% 100%;background-clip:text;animation:5.5s linear infinite grad-flow}@keyframes grad-flow{0%{background-position:0%}to{background-position:100%}}.btn{position:relative}body.fx-magnet .btn{transform:translate3d(var(--tx,0px), var(--ty,0px), 0);transition:transform .18s cubic-bezier(.22,1,.36,1),box-shadow .3s,background .25s,border-color .25s}body.fx-magnet .btn-primary:hover{transform:translate3d(var(--tx,0px), calc(var(--ty,0px) - 2px), 0)}body.fx-magnet .btn.is-near{box-shadow:0 10px 34px #6366f173,0 0 0 5px #6366f114}.tilt-wrap{perspective:900px}.project-card,.blog-card,.stat-card{will-change:transform;transition:transform .15s ease-out,box-shadow .3s}.project-card.tilting,.blog-card.tilting,.stat-card.tilting{transition:transform 80ms linear,box-shadow .3s}@media (prefers-reduced-motion:reduce){.reveal,.reveal-left,.reveal-scale,.hero-title .ch,body.fx-enter .badge,body.fx-enter .hero-subtitle,body.fx-enter .hero-cta{opacity:1;filter:none;transition:none;animation:none;transform:none}.nav-indicator{transition:none}.nav-links a.pop{animation:none}#scrollProgress,#spot{display:none}#heroStage{opacity:1!important;transform:none!important}body.fx-parallax #heroInner{transform:none}body.fx-parallax:before{inset:0;transform:none}body.fx-flow .hero-title .grad{animation:none}body.fx-flow .badge:after{display:none}}body:after{width:auto;height:auto;opacity:var(--fx-aurora-opacity);background-color:#0000;background-image:radial-gradient(40% 40% at 12% 6%,#6366f14d 0%,#0000 62%),radial-gradient(36% 36% at 86% 2%,#a855f742 0%,#0000 62%),radial-gradient(48% 48% at 54% 98%,#22d3ee29 0%,#0000 64%);background-position:0 0,0 0,0 0;background-repeat:no-repeat;background-size:auto,auto,auto;background-attachment:scroll,scroll,scroll;background-origin:padding-box,padding-box,padding-box;background-clip:border-box,border-box,border-box;animation:26s ease-in-out infinite alternate aurora-drift;inset:0}@keyframes aurora-drift{0%{transform:translate(0)scale(1)}50%{transform:translate(-2.5%,2%)scale(1.1)}to{transform:translate(2.5%,-1.5%)scale(1.04)}}.blog-card,.stat-card{position:relative;overflow:hidden}.project-card:after,.blog-card:after,.stat-card:after{content:"";border-radius:inherit;pointer-events:none;opacity:0;background:radial-gradient(300px circle at var(--mx,50%) var(--my,50%), #6366f138 0%, #22d3ee1a 38%, transparent 64%);z-index:0;opacity:0;transition:opacity .35s;position:absolute;inset:0}.project-card:hover:after,.blog-card:hover:after,.stat-card:hover:after{opacity:var(--fx-card-glow-opacity)}.project-card>*,.blog-card>*,.stat-card>*{z-index:1;position:relative}nav.is-scrolled{background:var(--nav-bg-scrolled);border-bottom-color:var(--border-strong);box-shadow:var(--shadow-nav-scrolled)}@media (prefers-reduced-motion:reduce){body:after{animation:none}.project-card:after,.blog-card:after,.stat-card:after{display:none}}