@font-face{font-family:Crocante;src:url(/assets/fonts/Crocante-Medium.woff2)format("woff2"),url(/assets/fonts/Crocante-Medium.woff)format("woff");font-weight:400 900;font-style:normal;font-display:swap;ascent-override:115%;descent-override:23%;line-gap-override:0%}:root{--brand-primary:var(--palette-brand-20);--palette-brand-10:#beef74;--palette-brand-20:#c7ff72;--palette-neutral-5:#11121a;--palette-neutral-10:#191b24;--palette-neutral-20:#272935;--palette-neutral-30:#393b49;--palette-neutral-35:#8f93a5;--palette-neutral-50:#717588;--palette-neutral-60:#686a77;--palette-neutral-80:#dfdfe2;--palette-neutral-100:#fff;--palette-status-red-01:#f42f4c;--palette-status-red-02:#f6556d;--palette-status-yellow-01:#fec83e;--palette-status-yellow-02:#fee763;--palette-accent-primary:gold;--font-family-primary:"Crocante", display, sans-serif;--font-family-secondary:"Barlow", sans-serif;--font-family-body:"Barlow", sans-serif;--font-family-mono:"JetBrains Mono", "Fira Code", "Menlo", "Monaco", "Courier New", monospace;--font-weight-regular:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--font-weight-extrabold:800;--font-weight-black:900;--font-size-label:1.1rem;--font-size-body-small:1.3rem;--font-size-body-medium:1.4rem;--font-size-body-large:1.6rem;--font-size-title-medium:1.8rem;--font-size-title-large:2rem;--font-size-headline-small:2.4rem;--font-size-headline-medium:3.2rem;--font-size-headline-large:3.8rem;--font-size-display-large:7.2rem;--spacing-2xs:.2rem;--spacing-xs:.4rem;--spacing-xsm:.6rem;--spacing-sm:.8rem;--spacing-md:1.2rem;--spacing-base:1.6rem;--spacing-lg:2rem;--spacing-xl:2.4rem;--spacing-2xl:3.2rem;--spacing-3xl:4rem;--spacing-4xl:6rem;--spacing-5xl:7.6rem;--z-canvas:0;--z-viewport-filter:1;--z-touch-layer:10;--z-controls:20;--z-tutorial:80;--z-action-point:90;--z-hud:100;--z-cinematic:600;--z-transition:700;--z-death-screen:710;--z-loading:900;--z-popup:1000;--z-aim-cursor:2147480000;--z-aim-intro:var(--z-aim-cursor);--radius-xs:.2rem;--radius-sm:.4rem;--radius-ms:.6rem;--radius-md:.8rem;--radius-ml:1rem;--radius-lg:1.2rem;--radius-xl:1.6rem;--radius-full:99.9rem;--transition-fast:.11s cubic-bezier(.2, .8, .2, 1);--transition-normal:.16s cubic-bezier(.2, .8, .2, 1);--transition-medium:.23s cubic-bezier(.22, 1, .36, 1);--ui-scale:1;--panel-max-width:calc(48rem * var(--ui-scale));--hud-edge:clamp(1.6rem, 1.1rem + 1vw, 2.8rem * var(--ui-scale));--hud-padding:var(--hud-edge);--hud-padding-mobile:max(var(--spacing-base), var(--hud-edge) * .85);--hud-health-height-mobile:6.4rem;--hud-touch-card-size:6.8rem;--hud-touch-art-size:6.8rem;--hud-touch-secondary-row-gap:.2rem;--hud-touch-secondary-row-top:calc(var(--hud-padding-mobile) + var(--hud-health-height-mobile) + var(--hud-touch-secondary-row-gap));--page-gutter:clamp(1.6rem, .8rem + 2vw, 4rem * var(--ui-scale));--safe-top:env(safe-area-inset-top,0rem);--safe-right:env(safe-area-inset-right,0rem);--safe-bottom:env(safe-area-inset-bottom,0rem);--safe-left:env(safe-area-inset-left,0rem);--layout-safe-top:max(var(--page-gutter) * .5, var(--safe-top) + var(--spacing-xs));--layout-safe-right:max(var(--page-gutter) * .5, var(--safe-right) + var(--spacing-xs));--layout-safe-bottom:max(var(--page-gutter) * .5, var(--safe-bottom) + var(--spacing-xs));--layout-safe-left:max(var(--page-gutter) * .5, var(--safe-left) + var(--spacing-xs));--shadow-title:.1rem .15rem 0 var(--palette-neutral-5)}*,:before,:after{box-sizing:border-box;box-shadow:none;text-shadow:none;-webkit-user-select:none;user-select:none;background:0 0;border:none;margin:0;padding:0}input,textarea,[contenteditable=true],article,.case-study-page__content,.about-page__bio,.about-page__content{-webkit-user-select:text;user-select:text}:focus-visible,button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,[tabindex]:focus-visible{outline:.2rem solid var(--palette-neutral-5);outline-offset:.2rem;box-shadow:0 0 0 .1rem #fff}button,input,select,textarea,[role=button]{font:inherit;color:inherit;appearance:none;-webkit-tap-highlight-color:transparent}html{touch-action:none;width:100%;height:100dvh;font-size:clamp(62.5%,.3125vw + 34.375%,95%);position:fixed;inset:0;overflow:hidden}body{touch-action:none;width:100%;height:100dvh;font-family:var(--font-family-body);line-height:1.5;font-weight:var(--font-weight-regular);color:var(--palette-neutral-5);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;place-items:center;display:flex;position:fixed;inset:0;overflow:hidden}.layout-panel-overlay{width:100vw;height:100dvh;padding:var(--layout-safe-top) var(--layout-safe-right) var(--layout-safe-bottom) var(--layout-safe-left);display:none;position:fixed;inset:0}.layout-panel-overlay--center{justify-content:center;align-items:center}.layout-panel-overlay--end{justify-content:flex-end;align-items:center}.layout-panel-shell{width:fit-content;max-width:min(100%, var(--panel-max-width));max-height:calc(100dvh - var(--layout-safe-top) - var(--layout-safe-bottom))}.layout-panel-shell,.layout-popup-surface{position:relative}.layout-panel-shell:focus-visible,.layout-popup-surface:focus-visible{outline:.2rem solid var(--palette-accent-primary);outline-offset:.2rem;box-shadow:none}.layout-popup-shell{gap:var(--spacing-lg);padding:var(--spacing-md);flex-direction:column;display:flex;overflow:hidden}.layout-popup-layer{z-index:1;position:relative}.layout-popup-header{z-index:1;justify-content:space-between;align-items:center;gap:var(--spacing-md);display:flex;position:relative}.layout-popup-body{z-index:1;flex-direction:column;display:flex;position:relative}.layout-popup-title{font-family:var(--font-family-primary);font-weight:var(--font-weight-extrabold);letter-spacing:-.02rem;text-transform:uppercase;margin:0;line-height:1}.layout-copy-stack{gap:var(--spacing-xsm);flex-direction:column;min-width:0;display:flex}.layout-mask-icon{-webkit-mask-image:var(--layout-icon-url);mask-image:var(--layout-icon-url);-webkit-mask-position:50%;mask-position:50%;-webkit-mask-size:contain;mask-size:contain;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-image:var(--layout-icon-url);background-color:currentColor;display:block;-webkit-mask-position:50%;-webkit-mask-size:contain;-webkit-mask-repeat:no-repeat}.tutorial-layer,.startup-intro,.reveal-screen,.death-screen,#cinematic-bars{position:fixed;inset:0}#cinematic-bars{pointer-events:none;z-index:var(--z-cinematic);display:none;overflow:hidden}.cinematic-bar{will-change:transform;background-repeat:no-repeat;background-size:100% 100%;width:calc(100% + .4rem);position:absolute;left:-.2rem}.cinematic-bar--top{min-height:calc(5.4rem + env(safe-area-inset-top,0px));height:max(calc(100vw * (107 / 1512) + .2rem), calc(7.5vh + env(safe-area-inset-top,0px) + .2rem));background-image:url(/assets/elements/hud/top-cover.svg);background-position:top;top:-.2rem;transform:translateY(-100%)}.cinematic-bar--bottom{min-height:calc(4.6rem + env(safe-area-inset-bottom,0px));height:max(calc(100vw * (91 / 1511) + .2rem), calc(6.4vh + env(safe-area-inset-bottom,0px) + .2rem));background-image:url(/assets/elements/hud/bottom-cover.svg);background-position:bottom;bottom:-.2rem;transform:translateY(100%)}.death-screen,.reveal-screen{justify-content:center;align-items:center;display:flex}.startup-intro__stage{position:absolute;inset:0}.touch-map-button__label,.game-health__label,.item-collapsed__label{font-family:var(--font-family-primary);font-weight:var(--font-weight-extrabold);color:var(--palette-neutral-100);-webkit-text-fill-color:var(--palette-neutral-100);text-transform:uppercase;white-space:nowrap;paint-order:stroke fill}#webgl{width:100%;height:100%;z-index:var(--z-canvas);touch-action:none;transform-origin:50%;will-change:transform;position:fixed}.sr-only,.visually-hidden,.u-visually-hidden{clip:rect(0, 0, 0, 0)!important;clip-path:inset(50%)!important;white-space:nowrap!important;border:0!important;width:.1rem!important;height:.1rem!important;margin:-.1rem!important;padding:0!important;position:absolute!important;overflow:hidden!important}.fonts-loader{clip:rect(0, 0, 0, 0);white-space:nowrap;opacity:0;pointer-events:none;z-index:-1;width:.1rem;height:.1rem;margin:-.1rem;position:absolute;overflow:hidden}@media (width>=120rem){:root{--ui-scale:1.08}}@media (width>=160rem){:root{--ui-scale:1.16}}@keyframes lineBoiling{0%,to{clip-path:polygon(1.2% 2.5%,98.8% 0%,96.8% 97.5%,2.5% 100%);transform:translate(0,0)scale(1)rotate(0)}25%{clip-path:polygon(.6% 4.4%,99.4% 1.9%,98.1% 98.8%,2.5% 95.6%);transform:translate(-.155rem,.095rem)scale(1.005,.995)rotate(-.31deg)}50%{clip-path:polygon(0% 5.6%,98.8% .6%,96.8% 99.4%,3.8% 94.4%);transform:translate(.095rem,-.155rem)scale(.995,1.005)rotate(.31deg)}75%{clip-path:polygon(1.2% 3.8%,100% 1.2%,96.2% 98.1%,1.9% 96.2%);transform:translate(-.095rem,-.095rem)scale(1.002)rotate(-.19deg)}}.settings-popup:after,.item-expanded__main:after,.power-core:after,.tutorial-card__panel--desktop:after,.ui-button--cta:before,.ui-button--primary:after,.aboutproject-popup:after,.controls-popup:after,.email-popup__form:after,.about-page__skill-banner--active:after,.quick-travel-card__torn-surface,.case-study-page__toc-surface{will-change:transform, clip-path;animation:.45s steps(4,end) infinite lineBoiling}body.has-open-modal:not(.settings-open) .action-point-layer,body.has-open-modal:not(.power-core-open):not(.settings-open) .layout-hud-root{opacity:0!important;visibility:hidden!important;pointer-events:none!important;display:none!important}body.has-open-modal .startup-intro{visibility:hidden!important;pointer-events:none!important}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}@media (forced-colors:active){button,a,input,select,textarea,[role=button]{forced-color-adjust:auto;border:.2rem solid canvastext!important}}.ui-button{--ui-button-height:4.4rem;--ui-button-icon-size:2rem;--ui-button-padding-inline:var(--spacing-xl);--ui-button-gap:var(--spacing-sm);--ui-button-content-color:var(--palette-neutral-5);--ui-button-font-size:var(--font-size-body-large);--ui-button-font-weight:var(--font-weight-extrabold);--ui-button-letter-spacing:2%;height:var(--ui-button-height);padding:0 var(--ui-button-padding-inline);justify-content:center;align-items:center;gap:var(--ui-button-gap);color:var(--ui-button-content-color);cursor:pointer;touch-action:manipulation;font-family:var(--font-family-primary);font-size:var(--ui-button-font-size);font-weight:var(--ui-button-font-weight);letter-spacing:var(--ui-button-letter-spacing);text-transform:uppercase;isolation:isolate;transition:transform var(--transition-fast), color var(--transition-normal), opacity var(--transition-normal);line-height:1;display:inline-flex;position:relative;overflow:hidden;transform:translateY(0)}.ui-button:before,.ui-button:after{content:"";pointer-events:none;z-index:0;position:absolute;inset:0}.ui-button:hover:not(:disabled){transform:translateY(-.2rem)}.ui-button:active:not(:disabled){transform:translateY(0)}.ui-button:disabled{opacity:.56;cursor:not-allowed}.ui-button>*{z-index:5;position:relative}.ui-button__label,.ui-button__icon{z-index:5;flex:none;position:relative}.ui-button__label{white-space:nowrap;transition:transform var(--transition-fast)}.ui-button__icon{width:var(--ui-button-icon-size);height:var(--ui-button-icon-size);transition:transform var(--transition-fast), filter var(--transition-fast), color var(--transition-fast);flex-shrink:0;display:block}.ui-button--cta,.ui-button--primary{--ui-button-content-color:var(--palette-neutral-5);--ui-button-padding-inline:2.6rem;width:calc(var(--ui-button-height) * 2.4);height:var(--ui-button-height);padding:.3rem var(--ui-button-padding-inline) .7rem;background:0 0;gap:.2rem}.ui-button--primary:before,.ui-button--primary:after{content:"";pointer-events:none;background-position:50%;background-repeat:no-repeat;background-size:contain;position:absolute;inset:0}.ui-button--primary:before{z-index:0;background-image:url(/assets/elements/button/overlay.svg)}.ui-button--primary:after{z-index:1;background-image:url(/assets/elements/button/surface.svg)}.ui-button--cta{will-change:transform, color;background-image:url(/assets/elements/button/overlay.svg);background-position:50%;background-repeat:no-repeat;background-size:contain;transition:transform .22s cubic-bezier(.16,1,.3,1),color .16s ease-out;overflow:visible}.ui-button--cta:before,.ui-button--cta:after{content:"";pointer-events:none;background-position:50%;background-repeat:no-repeat;background-size:contain;position:absolute;inset:0}.ui-button--cta:before{z-index:1;background-image:url(/assets/elements/button/surface.svg)}.ui-button--cta:after{z-index:2;transform-origin:50%;will-change:transform;background-image:url(/assets/elements/button/elevated.svg);transition:transform .22s cubic-bezier(.16,1,.3,1);transform:scale(0)rotate(-8deg)}@media (hover:hover) and (pointer:fine){.ui-button--cta:hover:not(:disabled){color:var(--palette-neutral-100);--ui-button-content-color:var(--palette-neutral-100);transform:scale(1.1)}.ui-button--cta:hover:not(:disabled):after{transform:scale(1.1)rotate(0)}.ui-button--cta:hover:not(:disabled) .ui-button__label,.ui-button--cta:hover:not(:disabled) .ui-button__icon{transform:rotate(3deg)scale(1.1)}}.ui-button--cta:active:not(:disabled){color:var(--palette-brand-20);--ui-button-content-color:var(--palette-brand-20);transform:scale(1.1)}.ui-button--cta:active:not(:disabled):after{transform:scale(.9)rotate(-8deg)}.ui-button--cta:active:not(:disabled) .ui-button__label,.ui-button--cta:active:not(:disabled) .ui-button__icon{color:var(--palette-brand-20);transform:rotate(-1.5deg)scale(1)}.ui-button--cta .ui-button__label,.ui-button--cta .ui-button__icon,.ui-button--primary .ui-button__label,.ui-button--primary .ui-button__icon{transform:rotate(-1.5deg)}.ui-button.is-locked,.ui-button--locked{cursor:default;pointer-events:none;color:var(--palette-neutral-5);--ui-button-content-color:var(--palette-neutral-5)}.ui-button.is-locked:before,.ui-button--locked:before,.ui-button--cta.is-locked:before,.ui-button--cta.ui-button--locked:before,.ui-button--primary.is-locked:before,.ui-button--primary.ui-button--locked:before{background-image:url(/assets/elements/button/surface-locked.svg)}.ui-button--cta.is-locked:after,.ui-button--cta.ui-button--locked:after,.ui-button.is-locked .ui-button__icon,.ui-button--locked .ui-button__icon{display:none!important}.ui-button.is-locked .ui-button__label,.ui-button--locked .ui-button__label{text-align:center;width:100%;color:var(--palette-neutral-5);margin:0 auto;display:block}.ui-button .layout-mask-icon{background-color:currentColor}.ui-button--primary.ui-button--icon-prominent{--ui-button-padding-inline:var(--spacing-xs);width:var(--ui-button-height);min-width:var(--ui-button-height)}.ui-button.ui-button--icon-prominent:before,.ui-button.ui-button--icon-prominent:after,.ui-button--icon-prominent:before,.ui-button--icon-prominent:after{content:none;display:none}.ui-button--primary.ui-button--md.ui-button--icon-prominent{--ui-button-height:3.6rem;--ui-button-icon-size:2rem}.ui-button--primary.ui-button--lg.ui-button--icon-prominent{--ui-button-icon-size:2.4rem}.ui-button--cta.ui-button--md{--ui-button-height:5.6rem;--ui-button-icon-size:1.85rem;--ui-button-font-size:1.85rem;width:13.44rem;height:5.6rem}.ui-button--lg{--ui-button-height:6.8rem;height:6.8rem}.ui-button--cta.ui-button--lg{--ui-button-height:6.8rem;--ui-button-icon-size:2.25rem;--ui-button-font-size:2.25rem;width:16.32rem;height:6.8rem}.ui-keycap{--ui-keycap-height:3.6rem;--ui-keycap-font-size:1.8rem;--ui-keycap-padding-bottom:.6rem;--ui-keycap-padding-inline:var(--spacing-xs);min-width:var(--ui-keycap-height);height:var(--ui-keycap-height);padding:0 var(--ui-keycap-padding-inline) var(--ui-keycap-padding-bottom);color:var(--palette-neutral-5);font-family:var(--font-family-primary);font-size:var(--ui-keycap-font-size);font-weight:var(--font-weight-bold);letter-spacing:0%;white-space:nowrap;isolation:isolate;background:url(/assets/elements/hud/key.svg) 50%/contain no-repeat;justify-content:center;align-items:center;line-height:1;display:inline-flex;position:relative}.ui-keycap--md{--ui-keycap-height:3rem;--ui-keycap-font-size:1.4rem;--ui-keycap-padding-bottom:.5rem}.ui-keycap--wide,.ui-keycap--text-wide{--ui-keycap-padding-inline:var(--spacing-base);background:url(/assets/elements/hud/space-key.svg) 50%/contain no-repeat;min-width:auto}.pipe-game-exit-icon{background:url(/assets/elements/icons/close.svg) 50%/contain no-repeat;width:2rem;height:2rem;display:block}.ui-close-button{--ui-close-button-size:4.4rem;--ui-close-icon-size:2.8rem;--ui-close-icon-color:var(--palette-neutral-5);width:var(--ui-close-button-size);height:var(--ui-close-button-size);cursor:pointer;touch-action:manipulation;transition:transform var(--transition-fast), opacity var(--transition-normal);background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;padding:0;display:inline-flex;position:relative}.ui-close-button:before{content:"";width:max(100%,4.8rem);min-width:4.8rem;height:max(100%,4.8rem);min-height:4.8rem;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.settings-row__action:focus-visible,.settings-toggle:focus-visible,.settings-mode-card:focus-visible,.settings-social-btn:focus-visible,.item-slot:focus-visible,.about-page__skill-banner:focus-visible,.case-study-page__toc-btn:focus-visible{outline-offset:.2rem;box-shadow:none;outline:.2rem solid gold}.ui-close-button:focus,.ui-close-button:focus-visible,.settings-hud__button:focus,.settings-hud__button:focus-visible,.ui-setting button:focus,.ui-setting button:focus-visible{outline:none!important}.ui-close-button:hover{transform:scale(1.08)}.ui-close-button:active{transform:scale(.96)}.ui-close-button__icon{z-index:1;width:var(--ui-close-icon-size);height:var(--ui-close-icon-size);pointer-events:none;background-color:var(--ui-close-icon-color);transition:background-color var(--transition-fast);display:block;position:relative;-webkit-mask:url(/assets/elements/icons/close.svg) 50%/contain no-repeat;mask:url(/assets/elements/icons/close.svg) 50%/contain no-repeat}.ui-close-button--bg{--ui-close-icon-size:2rem;--ui-close-icon-color:var(--palette-neutral-100);background:0 0}.ui-close-button--bg:after{content:"";pointer-events:none;z-index:0;opacity:1;transition:opacity var(--transition-fast), background-image var(--transition-fast);background:url(/assets/elements/button/close-2-button.svg) 50%/contain no-repeat;position:absolute;inset:0}.ui-close-button--bg:hover:after{opacity:1;background-image:url(/assets/elements/button/close-button.svg)}.ui-close-button--bg:hover{--ui-close-icon-color:var(--palette-neutral-5);transform:scale(1.08)rotate(4deg)}.ui-close-button.ui-close-button--hero,.ui-close-button--bg.ui-close-button--hero{--ui-close-icon-color:var(--palette-neutral-5)}.ui-close-button.ui-close-button--hero:after,.ui-close-button--bg.ui-close-button--hero:after{opacity:.05}.ui-close-button.ui-close-button--hero:hover:after,.ui-close-button--bg.ui-close-button--hero:hover:after{opacity:1}.ui-close-button--nobg{--ui-close-icon-size:2.6rem;background:0 0}@media (pointer:coarse){.ui-close-button--nobg{--ui-close-button-size:4.4rem;--ui-close-icon-size:2.4rem}.ui-close-button--bg{--ui-close-button-size:4.4rem;--ui-close-icon-size:1.8rem}}@media (prefers-reduced-motion:reduce){.ui-button,.ui-button:before,.ui-button:after,.ui-button__label,.ui-button__icon,.ui-close-button,.ui-close-button:after,.ui-close-button__icon{transition:none!important;animation:none!important}}#touch-layer{z-index:var(--z-touch-layer);pointer-events:none;display:none;position:absolute;inset:0;overflow:hidden}.joystick-blur{--joystick-blur-x:-99.9rem;--joystick-blur-y:-99.9rem;z-index:var(--z-controls);pointer-events:none;opacity:0;transition:opacity var(--transition-fast);-webkit-backdrop-filter:blur(.75rem);-webkit-mask-image:radial-gradient(circle 5.1rem at var(--joystick-blur-x) var(--joystick-blur-y), #000 97%, #000000eb 99%, #0000 100%);-webkit-mask-image:radial-gradient(circle 5.1rem at var(--joystick-blur-x) var(--joystick-blur-y), #000 97%, #000000eb 99%, #0000 100%);mask-image:radial-gradient(circle 5.1rem at var(--joystick-blur-x) var(--joystick-blur-y), #000 97%, #000000eb 99%, #0000 100%);backface-visibility:hidden;position:fixed;inset:0;transform:translateZ(0);-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.joystick-blur.visible{opacity:1}.joystick-base{pointer-events:none;width:10rem;height:10rem;z-index:var(--z-controls);opacity:0;visibility:hidden;transition:opacity var(--transition-fast), transform var(--transition-fast), visibility var(--transition-fast);display:block;position:absolute;top:0;left:0;transform:translate(-50%,-50%)scale(.88)}.joystick-base.visible{opacity:1;visibility:visible;transform:translate(-50%,-50%)scale(1)}.joystick-track{pointer-events:none;isolation:isolate;position:absolute;inset:0}.joystick-track--move{background:url(/assets/elements/joystick/move-track.svg) 50%/contain no-repeat}.joystick-track--aim{background:url(/assets/elements/joystick/shoot-track.svg) 50%/contain no-repeat}.joystick-track__surface,.joystick-track__core,.joystick-track__marker,.joystick-track__tick{position:absolute}.joystick-track__surface{isolation:isolate;backface-visibility:hidden;inset:0;overflow:hidden;transform:translateZ(0)}.joystick-track__surface:before{content:"";filter:blur(.8rem);opacity:.9;position:absolute;inset:.2rem}.joystick-track__surface:after{content:"";filter:blur(1rem);opacity:.8;position:absolute;inset:1rem}.joystick-track__core{width:70%;height:70%;top:50%;left:50%;transform:translate(-50%,-50%)}.joystick-track__marker{width:.6rem;height:.6rem;transform:translate(-50%,-50%)}.joystick-track__marker--top{top:7.5%;left:50%}.joystick-track__marker--right{top:50%;left:92.5%}.joystick-track__marker--bottom{top:92.5%;left:50%}.joystick-track__marker--left{top:50%;left:7.5%}.joystick-track__tick{width:.45rem;height:.9rem;transform:translate(-50%,-50%)}.joystick-track__tick--top-right{top:21%;left:82.5%;transform:translate(-50%,-50%)rotate(45deg)}.joystick-track__tick--bottom-left{top:79%;left:17.5%;transform:translate(-50%,-50%)rotate(45deg)}.joystick-track__tick--bottom-right{top:79%;left:82.5%;transform:translate(-50%,-50%)rotate(135deg)}.joystick-track__tick--top-left{top:21%;left:17.5%;transform:translate(-50%,-50%)rotate(135deg)}.joystick-knob{object-fit:contain;pointer-events:none;width:5rem;height:5rem;transition:transform var(--transition-fast), filter var(--transition-fast);will-change:transform;display:block;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.joystick-base.active .joystick-knob{filter:brightness(1.04);transition:none}#rotate-device-overlay{z-index:100000;-webkit-backdrop-filter:blur(1.2rem);padding:var(--layout-safe-top) var(--layout-safe-right) var(--layout-safe-bottom) var(--layout-safe-left);opacity:0;pointer-events:auto;touch-action:none;background:#11121af0;justify-content:center;align-items:center;display:none;position:fixed;inset:0}.rotate-device-card{text-align:center;box-sizing:border-box;flex-direction:column;align-items:center;gap:1.2rem;width:min(90vw,38rem);max-height:calc(100dvh - 2rem);padding:0;display:flex;position:relative}.rotate-device-badge{background:var(--brand-primary);color:var(--palette-neutral-5);font-family:var(--font-family-primary);letter-spacing:.05rem;text-transform:uppercase;white-space:nowrap;border-radius:99.9rem;justify-content:center;align-items:center;padding:.3rem 1.2rem;font-size:1.1rem;font-weight:800;display:inline-flex;box-shadow:.1rem .15rem #11121a}.rotate-device-graphic{justify-content:center;align-items:center;width:15rem;height:15rem;margin:.4rem 0;display:flex;position:relative}.rotate-device-phone{transform-origin:50%;background:url(/assets/elements/icons/rotate-phone.svg) 50%/contain no-repeat;width:6.75rem;height:10.125rem;animation:2.8s cubic-bezier(.4,0,.2,1) infinite rotatePhone}.rotate-device-title{font-family:var(--font-family-primary);color:#fff;text-transform:uppercase;letter-spacing:-.01rem;text-shadow:.15rem .2rem #11121a;white-space:nowrap;margin:0;font-size:2.2rem;line-height:1.1}.rotate-device-text{font-family:var(--font-family-body);color:var(--palette-neutral-80);box-sizing:border-box;max-width:32rem;margin:0;font-size:1.35rem;line-height:1.4}@keyframes rotatePhone{0%,12%{transform:rotate(-90deg)scale(.94)}42%,68%{transform:rotate(0)scale(1.04)}88%,to{transform:rotate(-90deg)scale(.94)}}@media (height<=26rem){.rotate-device-card{gap:.6rem}.rotate-device-graphic{width:11rem;height:11rem;margin:.2rem 0}.rotate-device-phone{width:4.95rem;height:7.425rem}.rotate-device-title{font-size:1.8rem}.rotate-device-text{font-size:1.2rem;line-height:1.3}}
