.fx-grade{position:fixed;inset:0;z-index:1;pointer-events:none}.fx-vignette{position:fixed;inset:0;z-index:1;pointer-events:none;background:radial-gradient(120% 100% at 50% 42%,transparent 52%,rgba(0,0,0,.32) 88%,rgba(0,0,0,.6) 100%);mix-blend-mode:multiply}.fx-scanlines{position:fixed;inset:-2px;z-index:1;pointer-events:none;opacity:.5;background-image:repeating-linear-gradient(0deg,rgba(255,255,255,.018) 0px,rgba(255,255,255,.018) 1px,transparent 1px,transparent 3px);will-change:transform}.fx-bloom{position:fixed;left:50%;top:-10%;z-index:0;pointer-events:none;width:80vw;height:60vh;transform:translate(-50%);background:radial-gradient(closest-side,rgba(47,230,230,.06),transparent 70%);filter:blur(20px)}.fx-calibrate{position:fixed;inset:0;z-index:60;pointer-events:none;overflow:hidden;opacity:0}.fx-calibrate.run{opacity:1}.fx-calibrate .bar{position:absolute;left:0;right:0;top:0;height:22vh;background:linear-gradient(180deg,transparent,rgba(47,230,230,.08) 60%,rgba(150,250,250,.18));border-bottom:1px solid rgba(150,250,250,.5);box-shadow:0 0 40px #2fe6e659;transform:translateY(-30vh)}.fx-calibrate.run .bar{animation:fxsweep 1.15s cubic-bezier(.5,0,.2,1) forwards}@keyframes fxsweep{0%{transform:translateY(-30vh);opacity:0}12%{opacity:1}to{transform:translateY(120vh);opacity:0}}.fx-transition{position:fixed;inset:0;z-index:9000;pointer-events:none;background:linear-gradient(160deg,#0a0c11,#07080b 70%);transform:scaleY(0);transform-origin:bottom;display:grid;place-items:center}.fx-transition:after{content:"";position:absolute;left:0;right:0;bottom:0;height:2px;background:linear-gradient(90deg,transparent,var(--accent),transparent);box-shadow:0 0 22px var(--accent-glow);opacity:0}.fx-transition .fx-mark{font-family:var(--mono);font-size:12px;letter-spacing:.4em;text-transform:uppercase;color:var(--accent-soft);opacity:0;display:flex;align-items:center;gap:12px}.fx-transition .fx-mark .dot{width:7px;height:7px;border-radius:50%;background:var(--accent);box-shadow:0 0 12px var(--accent);animation:pulse 1s infinite}.fx-transition.leaving{transform-origin:bottom;animation:fxCover .5s cubic-bezier(.7,0,.3,1) forwards}.fx-transition.entering{transform:scaleY(1);transform-origin:top;animation:fxReveal .62s cubic-bezier(.7,0,.3,1) forwards}.fx-transition.leaving:after,.fx-transition.entering:after{opacity:1}.fx-transition.leaving .fx-mark,.fx-transition.entering .fx-mark{animation:fxMark .5s ease forwards}@keyframes fxCover{0%{transform:scaleY(0)}to{transform:scaleY(1)}}@keyframes fxReveal{0%{transform:scaleY(1)}to{transform:scaleY(0)}}@keyframes fxMark{0%{opacity:0}40%{opacity:1}to{opacity:0}}body.fx-fade main{animation:fxFadeUp .7s cubic-bezier(.2,0,0,1) both}@keyframes fxFadeUp{0%{transform:scale(.985)}to{transform:none}}html.sj-leaving main,html.sj-leaving .nav,html.sj-leaving footer,html.sj-swap-out main,html.sj-swap-out .nav,html.sj-swap-out footer{transition:opacity .42s cubic-bezier(.5,0,.95,.3),transform .58s cubic-bezier(.38,0,.88,.34),filter .4s cubic-bezier(.5,0,.95,.3)!important;opacity:0!important;transform:scale(2.5)!important;transform-origin:var(--sj-warp-x, 50%) var(--sj-warp-y, 42%)!important;filter:blur(20px) saturate(.85) brightness(.85)!important;pointer-events:none;will-change:opacity,transform,filter}html.sj-leaving #sj-canvas,html.sj-leaving #sj-space{transition:transform .4s cubic-bezier(.45,0,.9,.4),opacity .34s ease-in!important;transform:scale(1.35)!important;transform-origin:50% 50%!important}html.sj-leaving .hero-orbit,html.sj-swap-out .hero-orbit{transition:opacity .3s ease;opacity:0}html.sj-swapping #sj-canvas,html.sj-swapping #sj-space{transform-origin:var(--sj-warp-x, 50%) var(--sj-warp-y, 42%)!important;animation:sjCameraPush 1.16s cubic-bezier(.14,.86,.16,1) both}@keyframes sjCameraPush{0%{transform:scale(1);filter:none}50%{transform:scale(1.1);filter:saturate(1.14) brightness(1.05)}to{transform:scale(1);filter:none}}html.sj-swapping main,.sj-page-enter{animation:none!important}.sj-page-enter{opacity:0!important;transform:translate3d(var(--sj-enter-x, 0px),var(--sj-enter-y, 0px),0) scale(.46)!important;transform-origin:var(--sj-warp-x, 50%) var(--sj-warp-y, 42%)!important;filter:blur(22px) saturate(1.25) brightness(.92)!important;pointer-events:none;will-change:opacity,transform,filter}.sj-page-enter.sj-page-enter-active{opacity:1!important;transform:translateZ(0) scale(1)!important;filter:blur(0) saturate(1)!important;transition:opacity .72s cubic-bezier(.18,0,.12,1),transform 1.02s cubic-bezier(.16,.84,.18,1),filter .72s cubic-bezier(.18,0,.12,1)!important;pointer-events:auto}html.sj-swap-in .nav,html.sj-swap-in footer{animation:sjChromeSettle .46s cubic-bezier(.18,0,.12,1) both}@keyframes sjChromeSettle{0%{opacity:0;transform:scale(.985);filter:blur(8px)}to{opacity:1;transform:none;filter:none}}@media(hover:none),(pointer:coarse){html.sj-swap-out main,html.sj-swap-out .nav,html.sj-swap-out footer{filter:blur(6px)!important}.sj-page-enter{filter:blur(6px) saturate(1.15) brightness(.95)!important}html.sj-swapping #sj-canvas,html.sj-swapping #sj-space{animation-name:sjCameraPushLite!important}}@keyframes sjCameraPushLite{0%{transform:scale(1)}50%{transform:scale(1.08)}to{transform:scale(1)}}@media(prefers-reduced-motion:reduce){html.sj-leaving main,html.sj-leaving .nav,html.sj-leaving footer,html.sj-leaving .hero-orbit,html.sj-swap-out main,html.sj-swap-out .nav,html.sj-swap-out footer,html.sj-swap-out .hero-orbit,.sj-page-enter,.sj-page-enter.sj-page-enter-active{transition:none;transform:none;filter:none;opacity:1}html.sj-swapping #sj-canvas,html.sj-swapping #sj-space{animation:none}html.sj-swap-in .nav,html.sj-swap-in footer{animation:none}}.fx-magnetic,[data-parallax]{will-change:transform}[data-draw]{transform:scaleX(0);transform-origin:left center;transition:transform 1.1s cubic-bezier(.3,0,0,1)}[data-draw].drawn{transform:scaleX(1)}[data-draw-y]{transform:scaleY(0);transform-origin:top center;transition:transform 1.1s cubic-bezier(.3,0,0,1)}[data-draw-y].drawn{transform:scaleY(1)}html.reveal-all [data-draw],html.reveal-all [data-draw-y]{transform:none!important;transition:none!important}html:has(body.fx-cursor),body.fx-cursor,body.fx-cursor *{cursor:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR42mNk+M9QDwADhgGAWjR9awAAAABJRU5ErkJggg==) 0 0,none!important}.fx-cur-ring,.fx-cur-dot{position:fixed;top:0;left:0;z-index:2147483647;pointer-events:none;border-radius:50%;will-change:transform}.fx-cur-ring{width:34px;height:34px;margin:-17px 0 0 -17px;border:1.4px solid rgba(120,250,250,.9);transition:width .22s cubic-bezier(.3,0,0,1),height .22s cubic-bezier(.3,0,0,1),margin .22s cubic-bezier(.3,0,0,1),background .22s,border-color .22s,opacity .25s}.fx-cur-dot{width:6px;height:6px;margin:-3px 0 0 -3px;background:#bffcff;transition:width .18s,height .18s,margin .18s,opacity .25s}body.fx-hot .fx-cur-ring{width:56px;height:56px;margin:-28px 0 0 -28px;background:#2fe6e61f;border-color:#78fafa99}body.fx-hot .fx-cur-dot{width:0;height:0;margin:0}body.fx-press .fx-cur-ring{width:26px;height:26px;margin:-13px 0 0 -13px}body.fx-cur-hide .fx-cur-ring,body.fx-cur-hide .fx-cur-dot{opacity:0}@media(prefers-reduced-motion:reduce){.fx-scanlines,.fx-bloom,.fx-calibrate{display:none}body.fx-fade main{animation:none}[data-draw],[data-draw-y]{transform:none;transition:none}}html.ss-on .nav,html.ss-on main,html.ss-on .footer,html.ss-on .sfx-wrap,html.ss-on .hero-orbit,html.ss-on .bh-toggle,html.ss-on #bh-const-canvas{transition:transform .9s cubic-bezier(.4,0,.1,1),opacity .9s ease,filter .9s ease;will-change:transform,opacity}html.ss-active .nav{transform:translateY(-140%)!important;opacity:0;pointer-events:none}html.ss-active main{transform:scale(.9)!important;opacity:0;filter:blur(6px)!important;pointer-events:none}html.ss-active .footer{transform:translateY(140%)!important;opacity:0;pointer-events:none}html.ss-active .sfx-wrap,html.ss-active .hero-orbit,html.ss-active .bh-toggle,html.ss-active #bh-const-canvas{opacity:0!important;pointer-events:none}html.ss-on .bh-page-wave{display:none!important}#ss-hint{position:fixed;left:50%;bottom:2.4vh;transform:translate(-50%);display:flex;flex-direction:column;align-items:center;gap:7px;text-align:center;font-family:ui-monospace,SF Mono,SFMono-Regular,Menlo,monospace;text-transform:uppercase;opacity:0;pointer-events:none;transition:opacity 1.2s ease 1.4s;z-index:2147483000}#ss-hint.show{opacity:.78}#ss-hint .ss-name{font-size:.72rem;font-weight:600;letter-spacing:.3em;color:#c8f2f880}#ss-hint .ss-keys{font-size:.5rem;font-weight:500;letter-spacing:.2em;color:#b4f0f54d}@media(prefers-reduced-motion:reduce){html.ss-on .nav,html.ss-on main,html.ss-on .footer,html.ss-on .sfx-wrap{transition:opacity .8s ease}html.ss-active .nav,html.ss-active main,html.ss-active .footer{transform:none!important;filter:none!important}}
