.nf-scene{--mx:0;--my:0}.nf-grid{transform-origin:top;background-image:linear-gradient(#947ada38 1px,#0000 1px),linear-gradient(90deg,#947ada38 1px,#0000 1px);background-size:48px 48px;animation:2.4s linear infinite nf-grid-move;transform:perspective(420px)rotateX(62deg);-webkit-mask-image:linear-gradient(#0000 0%,#000 30% 78%,#0000 100%);mask-image:linear-gradient(#0000 0%,#000 30% 78%,#0000 100%)}@keyframes nf-grid-move{0%{background-position:0 0}to{background-position:0 48px}}.nf-blob-a{background:radial-gradient(circle at 30% 30%,#ec489980,#0000 60%);animation:11s ease-in-out infinite nf-float-a}.nf-blob-b{background:radial-gradient(circle at 70% 60%,#8b5cf673,#0000 60%);animation:13s ease-in-out infinite nf-float-b}.nf-blob-c{background:radial-gradient(circle,#53caee59,#0000 60%);animation:9s ease-in-out infinite reverse nf-float-a}@keyframes nf-float-a{0%,to{transform:translate(0)scale(1)}50%{transform:translate(4rem,-3rem)scale(1.15)}}@keyframes nf-float-b{0%,to{transform:translate(0)scale(1.1)}50%{transform:translate(-3.5rem,2.5rem)scale(.95)}}.nf-404{letter-spacing:-.06em;line-height:.85;animation:4s step-end infinite nf-jitter;position:relative}.nf-404:before,.nf-404:after{content:attr(data-text);opacity:.8;position:absolute;inset:0;overflow:hidden}.nf-404:before{color:#53caee;clip-path:inset(0 0 62%);animation:2.8s steps(2,jump-none) infinite nf-glitch-1;transform:translate(-3px,-2px)}.nf-404:after{color:#ee46c4;clip-path:inset(58% 0 0);animation:3.4s steps(2,jump-none) infinite nf-glitch-2;transform:translate(3px,2px)}@keyframes nf-glitch-1{0%,6%{clip-path:inset(0 0 62%);transform:translate(-3px,-2px)}8%,10%{clip-path:inset(24% 0 38%);transform:translate(4px,1px)}12%,to{clip-path:inset(0 0 62%);transform:translate(-3px,-2px)}}@keyframes nf-glitch-2{0%,10%{clip-path:inset(58% 0 0);transform:translate(3px,2px)}13%,15%{clip-path:inset(38% 0 18%);transform:translate(-4px,-1px)}17%,to{clip-path:inset(58% 0 0);transform:translate(3px,2px)}}@keyframes nf-jitter{0%,93%{transform:translate(0)skew(0)}94%{transform:translate(-2px,1px)skew(-1.5deg)}95%{transform:translate(2px,-1px)skew(1deg)}96%,to{transform:translate(0)skew(0)}}.nf-crash-line{stroke-dasharray:900;stroke-dashoffset:900px;animation:5s ease-out infinite nf-draw}.nf-crash-dot{opacity:0;animation:5s ease-out infinite nf-dot}@keyframes nf-draw{0%{stroke-dashoffset:900px}45%,88%{stroke-dashoffset:0}to{stroke-dashoffset:0;opacity:0}}@keyframes nf-dot{0%,42%{opacity:0}48%,88%{opacity:1}to{opacity:0}}.nf-marquee-track{animation:22s linear infinite nf-marquee}@keyframes nf-marquee{0%{transform:translate(0)}to{transform:translate(-50%)}}.nf-blink{animation:1.1s step-end infinite nf-blink}@keyframes nf-blink{0%,49%{opacity:1}50%,to{opacity:0}}.nf-parallax-slow{transform:translate(calc(var(--mx) * 12px), calc(var(--my) * 12px));transition:transform .4s cubic-bezier(.22,1,.36,1)}.nf-parallax-fast{transform:translate(calc(var(--mx) * -22px), calc(var(--my) * -14px));transition:transform .3s cubic-bezier(.22,1,.36,1)}@media (prefers-reduced-motion:reduce){.nf-grid,.nf-blob-a,.nf-blob-b,.nf-blob-c,.nf-404,.nf-404:before,.nf-404:after,.nf-crash-line,.nf-crash-dot,.nf-marquee-track{animation:none}.nf-crash-line{stroke-dashoffset:0}.nf-crash-dot{opacity:1}}
