html.lenis,html.lenis body{height:auto}.lenis.lenis-smooth{scroll-behavior:auto!important}.lenis.lenis-smooth [data-lenis-prevent]{overscroll-behavior:contain}.lenis.lenis-stopped{overflow:hidden}.lenis.lenis-smooth iframe{pointer-events:none}:root{--scroll-velocity: 0;--scroll-progress: 0;--scroll-direction: 1}.reveal{opacity:0;transform:translate3d(0,40px,0);-webkit-transform:translate3d(0,40px,0);transition:opacity .9s cubic-bezier(.16,1,.3,1),transform .9s cubic-bezier(.16,1,.3,1);will-change:opacity,transform;-webkit-backface-visibility:hidden;backface-visibility:hidden}.reveal.visible{opacity:1;transform:translateZ(0) scale(1);-webkit-transform:translate3d(0,0,0) scale(1)}.reveal:not(.visible){opacity:0;transform:translate3d(0,40px,0) scale(.97);-webkit-transform:translate3d(0,40px,0) scale(.97);transition:opacity .7s cubic-bezier(.16,1,.3,1),transform .7s cubic-bezier(.16,1,.3,1)}.velocity-skew{transform:translateZ(0) skewY(calc(var(--scroll-velocity) * -.12deg)) scaleY(calc(1 + var(--scroll-velocity) * -.003));-webkit-transform:translateZ(0) skewY(calc(var(--scroll-velocity) * -.12deg)) scaleY(calc(1 + var(--scroll-velocity) * -.003));transition:transform .12s cubic-bezier(.25,1,.5,1);will-change:transform;-webkit-font-smoothing:antialiased;-webkit-backface-visibility:hidden;backface-visibility:hidden}.liquid-distort{will-change:filter,transform;transition:filter .3s cubic-bezier(.16,1,.3,1);-webkit-backface-visibility:hidden;backface-visibility:hidden}@media(max-width:1024px),(pointer:coarse),(hover:none){.velocity-skew,.liquid-distort{transform:none!important;-webkit-transform:none!important;filter:none!important;-webkit-filter:none!important;will-change:auto!important}}.reveal-left{opacity:0;transform:translate3d(-60px,0,0);-webkit-transform:translate3d(-60px,0,0);transition:opacity .9s cubic-bezier(.16,1,.3,1),transform .9s cubic-bezier(.16,1,.3,1);will-change:opacity,transform;-webkit-backface-visibility:hidden;backface-visibility:hidden}.reveal-left.visible{opacity:1;transform:translateZ(0);-webkit-transform:translate3d(0,0,0)}.reveal-right{opacity:0;transform:translate3d(60px,0,0);-webkit-transform:translate3d(60px,0,0);transition:opacity .9s cubic-bezier(.16,1,.3,1),transform .9s cubic-bezier(.16,1,.3,1);will-change:opacity,transform;-webkit-backface-visibility:hidden;backface-visibility:hidden}.reveal-right.visible{opacity:1;transform:translateZ(0);-webkit-transform:translate3d(0,0,0)}.reveal-scale{opacity:0;transform:translateZ(0) scale(.92);-webkit-transform:translateZ(0) scale(.92);transition:opacity .9s cubic-bezier(.16,1,.3,1),transform .9s cubic-bezier(.16,1,.3,1);will-change:opacity,transform;-webkit-backface-visibility:hidden;backface-visibility:hidden}.reveal-scale.visible{opacity:1;transform:translateZ(0) scale(1);-webkit-transform:translateZ(0) scale(1)}.reveal-blur{opacity:0;filter:blur(10px);-webkit-filter:blur(10px);transform:translate3d(0,20px,0);-webkit-transform:translate3d(0,20px,0);transition:opacity .9s cubic-bezier(.16,1,.3,1),filter .9s cubic-bezier(.16,1,.3,1),-webkit-filter .9s cubic-bezier(.16,1,.3,1),transform .9s cubic-bezier(.16,1,.3,1);will-change:opacity,filter,transform;-webkit-backface-visibility:hidden;backface-visibility:hidden}.reveal-blur.visible{opacity:1;filter:blur(0);-webkit-filter:blur(0);transform:translateZ(0);-webkit-transform:translate3d(0,0,0)}.parallax-layer{will-change:transform;transition:none;-webkit-backface-visibility:hidden;backface-visibility:hidden}.header-scroll-aware{transition:transform .4s cubic-bezier(.16,1,.3,1),backdrop-filter .3s ease,-webkit-backdrop-filter .3s ease,background-color .3s ease;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.header-scroll-aware.header-hidden{transform:translate3d(0,-100%,0);-webkit-transform:translate3d(0,-100%,0)}.header-scroll-aware.header-visible{transform:translateZ(0);-webkit-transform:translate3d(0,0,0)}.hero-parallax-content{will-change:transform,opacity;transition:none;-webkit-backface-visibility:hidden;backface-visibility:hidden}.stagger-1{transition-delay:0ms}.stagger-2{transition-delay:80ms}.stagger-3{transition-delay:.16s}.stagger-4{transition-delay:.24s}.stagger-5{transition-delay:.32s}.stagger-6{transition-delay:.4s}.stagger-7{transition-delay:.48s}.stagger-8{transition-delay:.56s}.custom-scrollbar::-webkit-scrollbar{width:4px;height:4px}.custom-scrollbar::-webkit-scrollbar-track{background:transparent}.custom-scrollbar::-webkit-scrollbar-thumb{background:#ffffff26;border-radius:9999px}.custom-scrollbar::-webkit-scrollbar-thumb:hover{background:var(--color-accent-primary)}.no-scrollbar{-ms-overflow-style:none;scrollbar-width:none}.no-scrollbar::-webkit-scrollbar{display:none}@media(pointer:fine){body{cursor:none}a,button,[role=button],input,textarea,select,label,summary{cursor:none!important}}.custom-cursor-dot{position:fixed;top:0;left:0;pointer-events:none;z-index:9999;border-radius:50%;will-change:transform;opacity:0;transition:opacity .3s ease,background-color .3s ease,transform .2s ease;width:8px;height:8px;background-color:var(--color-accent-primary);box-shadow:0 0 10px var(--color-accent-primary);margin-left:-4px;margin-top:-4px}.custom-cursor-dot.visible{opacity:1}.custom-cursor-dot.hover{transform:scale(.5);background-color:#fff;box-shadow:none}.custom-cursor-ring{position:fixed;top:0;left:0;pointer-events:none;z-index:9998;border-radius:50%;will-change:transform;opacity:0;transition:opacity .3s ease,width .4s cubic-bezier(.16,1,.3,1),height .4s cubic-bezier(.16,1,.3,1),margin .4s cubic-bezier(.16,1,.3,1),border-color .3s ease,background-color .3s ease;width:40px;height:40px;border:1px solid rgba(0,255,204,.5);margin-left:-20px;margin-top:-20px}.custom-cursor-ring.visible{opacity:1}.custom-cursor-ring.hover{width:60px;height:60px;margin-left:-30px;margin-top:-30px;background-color:#00ffcc14;border-color:#00ffcc4d}.custom-cursor-ring.magnetised{width:52px;height:52px;margin-left:-26px;margin-top:-26px;border-color:var(--color-accent-primary);background-color:#00ffcc1f;box-shadow:0 0 20px #0fc3}.custom-cursor-ring.has-text{width:80px;height:80px;margin-left:-40px;margin-top:-40px;background-color:var(--color-accent-primary);border-color:transparent;box-shadow:0 10px 30px #0000004d;display:flex;align-items:center;justify-content:center}.custom-cursor-ring.cursor-close{background-color:#ef4444;box-shadow:0 10px 30px #ef44444d}.custom-cursor-ring.cursor-write{background-color:#3b82f6;box-shadow:0 10px 30px #3b82f64d}.custom-cursor-text{color:var(--color-background);font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.15em;opacity:0;transform:scale(.9);animation:cursorTextFadeIn .3s cubic-bezier(.16,1,.3,1) forwards}@keyframes cursorTextFadeIn{to{opacity:1;transform:scale(1)}}::view-transition-group(root),::view-transition-group(project-image-active){animation-duration:.65s;animation-timing-function:cubic-bezier(.16,1,.3,1)}::view-transition-old(project-image-active),::view-transition-new(project-image-active){object-fit:cover;height:100%;width:100%}::view-transition-old(root),::view-transition-old(project-image-active){animation:.25s cubic-bezier(.16,1,.3,1) both fade-out}::view-transition-new(root),::view-transition-new(project-image-active){animation:.5s cubic-bezier(.16,1,.3,1) both fade-in}@keyframes fade-out{0%{opacity:1}to{opacity:0}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}
