@keyframes hero-rise{0%{opacity:0;filter:blur(8px);transform:translateY(26px)scale(.985)}}@keyframes hero-word{0%{opacity:0;filter:blur(6px);transform:translateY(.45em)}}@keyframes hero-fade{0%{opacity:0}}.rise{animation:hero-rise .9s var(--ease-out) backwards;animation-delay:calc(50ms + var(--i,0) * 80ms)}h1.display .word{animation:hero-word .8s var(--ease-out) backwards;animation-delay:calc(.35s + var(--w,0) * 45ms)}@keyframes ch-out{to{opacity:0;filter:blur(8px);top:-.15em}}@keyframes ch-in{0%{opacity:0;filter:blur(8px);top:.25em}}h1.display.is-out .ch{animation:ch-out .32s var(--ease-away) forwards;animation-delay:calc(var(--c,0) * 8ms)}h1.display.is-in .ch{animation:ch-in .6s var(--ease-out) backwards;animation-delay:calc(var(--c,0) * 14ms)}h1.display.is-sweep{display:grid}h1.display.is-sweep>.sweep-line{grid-area:1/1}.sweep-line .ch{transition:opacity .45s var(--ease-out), filter .45s var(--ease-out), top .5s var(--ease-out);top:0}.sweep-old .ch.is-gone{opacity:0;filter:blur(8px);top:-.15em}.sweep-new .ch{opacity:0;filter:blur(8px);top:.25em}.sweep-new .ch.is-here{opacity:1;filter:blur();animation:ch-spark .9s var(--ease-out);top:0}@keyframes ch-spark{0%{color:var(--accent)}}@media (prefers-reduced-motion:reduce){.rise,h1.display .word{animation-name:hero-fade;animation-duration:.4s}h1.display.is-out .ch,h1.display.is-in .ch{animation:.3s backwards hero-fade}}
.about-devices{margin-bottom:calc(-1 * var(--pad-tile) - 1px);align-items:flex-end;gap:clamp(10px,3.4cqi,28px);padding-top:44px;display:flex;container-type:inline-size}.device{color:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent;flex:none;display:block;position:relative}.device-keyboard{--rest:30%;--tilt:5deg;width:min(250px,46cqi)}.device-vr{--rest:38%;--tilt:-6deg;width:min(168px,31cqi)}.device-ship{--rest:24%;--tilt:9deg;width:min(70px,13cqi)}.device-art{translate:0 var(--rest);rotate:var(--tilt);transform-origin:50% 100%;transition:translate .55s cubic-bezier(.34,1.56,.64,1),rotate .6s cubic-bezier(.34,1.56,.64,1);display:block}.device-svg{width:100%;height:auto;display:block;overflow:visible}.device-label{z-index:1;border:1px solid var(--line);background:var(--tile);height:26px;font-size:var(--text-xs);color:var(--ink);white-space:nowrap;opacity:0;transition:opacity .25s ease, translate .45s var(--ease-out);pointer-events:none;border-radius:999px;align-items:center;padding:0 10px;font-weight:600;line-height:1;display:inline-flex;position:absolute;bottom:calc(100% + 4px);left:50%;translate:-50% 6px;box-shadow:0 6px 14px -8px #0000004d;box-shadow:0 6px 14px -8px lab(0% 0 0/.3)}@media (hover:hover) and (pointer:fine){.device:hover .device-art{translate:0 4%;rotate:calc(var(--tilt) * .15)}.device:hover .device-label{opacity:1;translate:-50%}}.device:focus-visible{outline:none}.device:focus-visible .device-art{translate:0 4%;rotate:calc(var(--tilt) * .15)}.device:focus-visible .device-label{opacity:1;outline:2px solid var(--focus);outline-offset:2px;translate:-50%}.device[data-flying] .device-label{opacity:0}@media (hover:none){.tile-about .about-devices{padding-top:16px}}@container (max-width:420px){.device-label{text-align:center;white-space:normal;border-radius:10px;width:max-content;max-width:calc(100% + 8px);height:auto;padding:4px 8px;font-size:.6875rem;line-height:1.2}}.device-svg{--dev-stroke:color-mix(in oklch, var(--ink) 26%, var(--tile));--dev-raised:var(--tile);--dev-base:var(--tile-sunk)}:root[data-theme=dark] .device-svg{--dev-raised:color-mix(in oklch, var(--ink) 9%, var(--tile));--dev-base:var(--tile)}.dev-case{fill:var(--dev-raised);stroke:var(--dev-stroke);stroke-width:1.2px}.dev-case-lip{fill:var(--dev-stroke)}.device-keyboard .dev-case{fill:var(--dev-base)}.kb-key-base{fill:var(--dev-stroke)}.kb-key-cap{fill:var(--dev-raised);stroke:var(--dev-stroke);stroke-width:.6px}.kb-legend{font-family:var(--font-sans);fill:var(--ink-2);text-anchor:middle;font-size:4.6px;font-weight:650}.kb-legend.is-word{letter-spacing:.04em;text-transform:uppercase;font-size:3.1px}.kb-key.is-ink .kb-key-cap{fill:var(--ink);stroke:var(--ink)}.kb-key.is-ink .kb-legend{fill:var(--tile)}.kb-key.is-accent .kb-key-cap{fill:var(--mint);stroke:color-mix(in oklch, var(--mint) 70%, var(--mint-ink))}.kb-key.is-accent .kb-legend{fill:var(--mint-ink)}.kb-key-top{transition:translate 90ms ease-out}.kb-key-cap{transition:fill .12s ease-out}.kb-key.is-pressed .kb-key-top{translate:0 1.1px}.kb-key.is-pressed .kb-key-cap{fill:var(--mint)}.kb-key.is-pressed .kb-legend{fill:var(--mint-ink)}@media (prefers-reduced-motion:reduce){.kb-key-top{transition:none}.kb-key.is-pressed .kb-key-top{translate:none}}.hs-strap,.hs-strap-top{fill:none;stroke:var(--dev-stroke);stroke-linecap:round}.hs-strap{stroke-width:6px}.hs-strap-top{stroke-width:3px}.hs-face{fill:var(--dev-base);stroke:var(--dev-stroke);stroke-width:.8px}.hs-lens{fill:var(--screen);stroke:var(--dev-stroke);stroke-width:1px}.hs-glow{fill:var(--mint);opacity:0;transition:opacity .4s}.hs-shine{fill:none;stroke:#ffffff8c;stroke:lab(100% 0 0/.55);stroke-width:1.6px;stroke-linecap:round}.hs-nose{fill:var(--tile);stroke:var(--dev-stroke);stroke-width:1.2px}.hs-sensor{fill:var(--dev-stroke)}@media (hover:hover) and (pointer:fine){.device-vr:hover .hs-glow{opacity:.85}.device-vr:hover .hs-sensor.is-live{fill:var(--mint);animation:1.2s steps(2,end) infinite dev-blink}}.device-vr:focus-visible .hs-glow{opacity:.85}.ship-fin{fill:var(--mint);stroke:var(--dev-stroke);stroke-width:1px}.ship-band{fill:none;stroke:var(--dev-stroke);stroke-width:1px}.ship-window-ring{fill:var(--dev-base);stroke:var(--dev-stroke);stroke-width:1.2px}.ship-flame-outer{fill:#fb9437;fill:lab(71.4362% 34.994 63.1455)}.ship-flame-inner{fill:#ffeba0;fill:lab(93.5349% -.301301 45.1964)}.ship-flame{opacity:0;transform-box:view-box;transform-origin:40px 104px;transition:opacity .2s,scale .3s;scale:1 .4}@media (hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){.device-ship:hover .ship-flame{opacity:1;animation:.14s ease-in-out infinite alternate ship-idle}.device-ship:hover .ship-art .device-svg{animation:1.5s ease-in-out infinite ship-bob}}.ship-flight{z-index:350;transform-origin:50%;pointer-events:none;will-change:transform;margin:0;position:fixed;translate:none;rotate:none}.ship-flight .ship-flame{opacity:1;animation:90ms ease-in-out infinite alternate ship-burn}@keyframes ship-bob{0%,to{translate:0}50%{translate:0 -7px}}@keyframes ship-idle{0%{scale:1 .45}to{scale:.9 .6}}@keyframes ship-burn{0%{scale:1 .9}to{scale:.92 1.12}}@keyframes dev-blink{50%{opacity:.25}}@media (prefers-reduced-motion:reduce){.device-art{transition:none}.device-label{transition:opacity .2s}}
