@font-face{font-family:Briscotte;src:url(/fonts/instrumentsans.woff2) format("woff2");font-display:swap}:root{font-family:Briscotte,Arial,sans-serif;color:#fbfaf1;background:#477ea4;--ivory: #fbfaf1;--soft: rgba(251, 250, 241, .65);--red: #ca5954;--control-border: rgba(255, 255, 255, .38);--control-ink: #fff;--ease: cubic-bezier(.22, 1, .36, 1)}*{box-sizing:border-box}body{margin:0;overflow:hidden}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit}a{color:inherit;text-decoration:none}button{color:inherit}#entrance{position:relative;width:100%;height:100svh;overflow:hidden;isolation:isolate}.scene,.scene picture,.scene-image{position:absolute;inset:0;width:100%;height:100%;display:block}.scene-image{object-fit:cover;object-position:50% 50%}.scene{z-index:-2}.wordmark{position:absolute;z-index:5;left:42px;top:30px;font-size:34px;font-weight:650;letter-spacing:-1.8px;line-height:1.1}.wordmark span{color:var(--ivory)}.wordmark:focus-visible{outline:2px solid var(--ivory);outline-offset:8px;border-radius:4px}.direct-access{position:absolute;z-index:5;right:42px;top:22px;display:grid;place-items:center;min-height:44px;padding:8px 4px;color:#fff;font-size:11px;letter-spacing:.035em;text-shadow:0 1px 2px rgba(12,35,54,.65);opacity:.82;transition:opacity .2s}.direct-access:hover,.direct-access:focus-visible{opacity:1}.direct-access:focus-visible{outline:1px solid #fff;outline-offset:3px;border-radius:3px}.door{position:absolute;z-index:2;outline-offset:5px;border:0;cursor:pointer}.door:focus-visible{outline:2px solid var(--ivory)}.door-label{position:absolute;left:50%;bottom:calc(100% + 16px);transform:translate(-50%) translateY(5px);white-space:nowrap;font-size:12px;padding:8px 12px;border-radius:20px;background:#0f2a3ee0;letter-spacing:.02em;opacity:0;transition:opacity .25s,transform .25s}.door:hover .door-label,.door:focus-visible .door-label{opacity:1;transform:translate(-50%) translateY(0)}.aircraft{position:absolute;top:0;left:0;width:112px;height:96px;will-change:transform;z-index:3}.plane-button{position:relative;width:100%;height:100%;border:0;background:none;cursor:pointer;padding:0;outline:0}.plane-button canvas,.plane-button img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;pointer-events:none;transition:opacity .4s}.plane-button canvas{opacity:0}.aircraft[data-renderer=webgl] canvas{opacity:1}.aircraft[data-renderer=webgl] img{opacity:0}.plane-button:focus-visible{outline:none}.plane-button:focus-visible .plane-cue{text-decoration:underline;text-underline-offset:5px}.plane-cue{position:absolute;white-space:nowrap;left:50%;top:calc(100% - 24px);transform:translate(-50%) translateY(-3px);font-size:12px;padding:8px 0;color:#fff;letter-spacing:.025em;text-shadow:0 1px 8px rgba(15,42,62,.3);opacity:0;transition:opacity .25s,transform .25s}.plane-cue span{margin-left:5px}.plane-button:hover .plane-cue,.plane-button:focus-visible .plane-cue{opacity:1;transform:translate(-50%) translateY(0)}body[data-state=piloting] .plane-cue{display:none}body[data-state=piloting] .plane-button{cursor:default}.pilot-hud{position:absolute;bottom:max(26px,env(safe-area-inset-bottom));left:24px;right:24px;display:flex;flex-direction:column;align-items:center;gap:14px;z-index:6;color:var(--control-ink);pointer-events:none;animation:arrive .5s var(--ease) both}.pilot-hud>*{pointer-events:auto}.pilot-hud[hidden]{display:none}.pilot-instruction{position:absolute;z-index:5;transform:translate(-50%,-100%);pointer-events:none;white-space:nowrap;font-size:11px;line-height:1.5;letter-spacing:.025em;text-align:center;color:var(--control-ink);opacity:.88;text-shadow:0 1px 2px rgba(12,35,54,.65),0 1px 8px rgba(15,42,62,.3)}.pilot-instruction[hidden]{display:none}.desktop-controls{display:flex;align-items:flex-end;justify-content:center;gap:20px}.keyboard-hint{display:grid;grid-template-columns:repeat(3,24px);grid-template-rows:repeat(2,24px);gap:3px}kbd{border:1px solid var(--control-border);width:24px;height:24px;display:grid;place-items:center;border-radius:4px;background:none;color:var(--control-ink);font:13px Briscotte,Arial,sans-serif}.key-up{grid-column:2;grid-row:1}.key-left{grid-column:1;grid-row:2}.key-down{grid-column:2;grid-row:2}.key-right{grid-column:3;grid-row:2}.release{display:flex;align-items:center;gap:9px;min-height:44px;border:0;border-radius:4px;background:none;padding:10px 0;font-size:11px;letter-spacing:.025em;opacity:.82;cursor:pointer;transition:opacity .2s}.release kbd{width:27px;height:22px;font-size:9px}.release:hover{opacity:1}.release:focus-visible,.direction-keys button:focus-visible,.touch-pad:focus-visible{outline:1px solid #fff;outline-offset:5px}.touch-pad{display:none;position:relative;flex-shrink:0;width:76px;height:76px;border:1px solid rgba(255,255,255,.28);border-radius:50%;background:#ffffff06;touch-action:none;cursor:grab}.pad-cross{display:none}.pad-knob{position:absolute;left:calc(50% - 12px);top:calc(50% - 12px);width:24px;height:24px;border-radius:50%;background:#ffffffb8;box-shadow:0 2px 10px #0f27391f;pointer-events:none}.direction-keys{display:none}.retry-message{position:absolute;z-index:6;left:20px;right:20px;bottom:max(28px,env(safe-area-inset-bottom));margin:0;color:#fff;font-size:11px;line-height:1.5;letter-spacing:.025em;text-align:center;pointer-events:none;text-shadow:0 1px 8px rgba(15,42,62,.3);animation:arrive .35s var(--ease) both}.retry-message[hidden]{display:none}.curtain{position:absolute;inset:0;background:#000;pointer-events:none;opacity:0;z-index:7}.noscript-entry{position:absolute;left:30px;bottom:30px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}@keyframes arrive{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@media(max-width:800px){.wordmark{left:24px;top:25px;font-size:30px}.aircraft{width:90px;height:76px}.direct-access{right:20px;top:17px;font-size:10px}.plane-cue{font-size:11px;top:calc(100% - 20px)}}@media(max-width:450px){.aircraft{width:76px;height:65.6px}.door-label{font-size:11px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}@media(max-height:580px){.aircraft{width:76px;height:65.6px}.pilot-hud{bottom:max(16px,env(safe-area-inset-bottom))}.wordmark{top:20px}.plane-cue{top:calc(100% - 16px)}}@media(max-width:800px),(pointer:coarse){.pilot-hud{bottom:max(28px,env(safe-area-inset-bottom));gap:0}.desktop-controls,.pilot-instruction{display:none}.touch-pad{display:block}}@media(hover:none){body[data-state=idle] .plane-cue{opacity:1;transform:translate(-50%)}}@media(max-height:580px)and (pointer:coarse){.pilot-hud{bottom:max(18px,env(safe-area-inset-bottom))}}@font-face{font-family:BriscotteSerif;src:url(/fonts/instrumentserif.woff2) format("woff2");font-display:swap}.wordmark{font-family:BriscotteSerif,Georgia,serif;font-weight:400;font-size:40px;letter-spacing:-1.8px}@media(max-width:800px){.wordmark{font-size:34px}}.plane-button img{left:3.1%;top:7.05%;width:74.4%}#plane-canvas{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:1;opacity:0;transition:opacity .25s}#entrance[data-renderer=webgl] #plane-canvas{opacity:1}.plane-cue{width:max-content}
