@font-face{font-family:Space;src:url('../studio/display.woff2') format('woff2');font-display:swap}@font-face{font-family:Plex;src:url('../studio/body.woff2') format('woff2');font-display:swap}
:root{color-scheme:dark;--ink:#eef0e8;--muted:#b3bdc5;--accent:#efad78}*{box-sizing:border-box}body{margin:0;background:#11171e;color:var(--ink);font:16px/1.5 Plex,Arial,sans-serif}a{color:inherit;text-decoration:none}button,input{font:inherit}a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid #ffd3a5;outline-offset:5px}button{cursor:pointer}a:hover{color:var(--accent)}.skip{position:absolute;left:20px;top:-100px;z-index:20;background:#111;padding:12px}.skip:focus{top:10px}.shell{min-height:100svh;height:100svh;display:flex;flex-direction:column;padding:24px 4vw 16px;max-width:2000px;margin:auto}.mast{display:flex;justify-content:space-between;align-items:center;gap:20px;position:relative;z-index:2}.wordmark{font:22px Space,sans-serif}.wordmark span{color:var(--accent)}.eyebrow,.meta{font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}.mast p{margin:0}.compare{font-size:12px;color:var(--muted)}main{position:relative;flex:1;min-height:650px;display:grid;grid-template-columns:1fr 1fr;grid-template-rows:auto 1fr auto;gap:12px}.intro{position:relative;z-index:2;pointer-events:none;max-width:480px;padding-top:35px}h1{font:clamp(36px,3.5vw,60px)/1.06 Space,sans-serif;letter-spacing:-.055em;margin:12px 0 16px}h1 span{color:var(--accent)}.bio{max-width:410px;font-size:14px;color:#c7cdd2;margin:12px 0}.scholar{font-size:12px;color:var(--accent)}.room-note{justify-self:end;align-self:start;text-align:right;margin-top:42px;z-index:2;max-width:240px}.room-note p{font-size:12px;color:var(--muted)}.room-note strong{color:var(--ink);font-weight:400}.hangar-scene{position:absolute;inset:70px -4vw 70px;margin:0;overflow:hidden}.hangar-scene img,#hangar-canvas{width:100%;height:100%;object-fit:contain;position:absolute;inset:0}.hangar-scene img{transition:opacity .15s}#hangar-canvas{opacity:0}.hangar-scene.live #hangar-canvas{opacity:1}.hangar-scene.live img{opacity:0}canvas{display:block;width:100%;height:100%;touch-action:pan-y}.stations{position:relative;z-index:3;grid-column:1/-1;grid-row:3;display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:12px}.station{display:grid;grid-template-columns:35px 1fr 20px;gap:10px;align-items:center;border-top:1px solid #788591;padding:16px 0;background:linear-gradient(#11171eee,#11171eee)}.station .num{color:var(--accent);font:12px Space}.station strong{display:block;font:20px Space}.station small{color:var(--muted);font-size:12px}.station:hover{border-color:var(--accent)}.flight-controls{align-self:end;grid-row:2;grid-column:1/-1;z-index:3;max-width:650px;justify-self:center;padding:10px 16px;background:#11171ef5;border:1px solid #55616a;border-radius:8px;box-shadow:0 5px 20px #0004}.flight-controls[hidden]{display:none}.buttons{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.buttons button{min-width:44px;min-height:44px;background:#202b35;color:var(--ink);border:1px solid #66737e;border-radius:3px;padding:7px 12px}.buttons button[aria-pressed=true]{background:#6d4227}.range{display:flex;align-items:center;gap:12px;font-size:12px;margin-top:8px}.range input{width:150px;accent-color:var(--accent)}#flight-status{font-size:11px;margin:6px 0 0;color:var(--muted);min-height:17px}.foot{display:flex;justify-content:space-between;border-top:1px solid #3d4852;padding-top:10px;gap:12px}.foot span{font-size:10px;color:var(--muted);letter-spacing:.07em}.scene-label{position:absolute;left:50%;top:52%;z-index:2;color:#e9d7bd;font-size:10px;letter-spacing:.14em;pointer-events:none;transform:translate(-50%,0);text-shadow:0 2px 8px #000}.scene-stations{position:absolute;inset:0;z-index:2;pointer-events:none}.scene-stations a{position:absolute;pointer-events:auto;background:#15222ddd;border:1px solid #8a969f;padding:8px 10px;border-radius:3px;font-size:11px;min-height:36px}.scene-stations a:nth-child(1){left:41%;top:40%}.scene-stations a:nth-child(2){left:23%;top:51%}.scene-stations a:nth-child(3){left:71%;top:59%}
@media(min-width:900px) and (min-height:1000px){.hangar-scene{inset:90px -4vw 70px}.intro{padding-top:60px}}
@media(max-width:899px),(pointer:coarse){.shell{padding:18px 22px 12px}.mast .meta,.room-note,.scene-stations,.scene-label{display:none}.wordmark{font-size:19px}.compare{font-size:11px}main{display:flex;flex-direction:column;gap:0;min-height:0}.intro{padding-top:20px;max-width:none}h1{font-size:34px;margin:8px 0 12px}.intro .eyebrow{font-size:9px;margin:0}.bio{font-size:12px;line-height:1.45;margin:8px 0}.scholar{font-size:10px;margin:8px 0}.hangar-scene{position:relative;inset:auto;height:clamp(140px,25svh,260px);min-height:140px;flex:1;margin:0 -22px}.stations{display:flex;flex-direction:column;gap:0;margin:0}.station{padding:10px 0;grid-template-columns:26px 1fr 16px;background:none}.station strong{font-size:17px}.station small{font-size:10px}.foot{padding-top:8px;margin-top:8px}.foot span{font-size:8px}.foot span:nth-child(2){display:none}.flight-controls{display:none!important}}
@media(max-height:740px) and (min-width:900px){.shell{height:auto;min-height:100svh}main{min-height:650px}}
@media(max-height:700px) and (max-width:899px){.shell{height:auto;min-height:100svh}.hangar-scene{flex:auto;height:170px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important}}

@media(max-width:899px),(pointer:coarse){.hangar-scene img{object-fit:cover}}
/* The whole viewport is the flight area. Navigation lives at the room stations. */
.hangar-scene{position:fixed;inset:0;width:100%;height:100svh;z-index:0;pointer-events:none;overflow:hidden}.hangar-scene canvas{pointer-events:none}.hangar-scene img{object-fit:contain}.mast,.intro,.room-note,.foot{position:relative;z-index:2}.intro{max-width:420px}.intro h1{font-size:clamp(36px,3.2vw,52px)}.bio{max-width:360px}.scene-stations a{display:grid;grid-template-columns:24px 1fr;column-gap:8px;min-width:190px;padding:12px 15px;border-radius:5px;border-color:#7c8a96;background:#17232bea;box-shadow:0 6px 25px #0004;transform:translate(-50%,-10%)}.station-number{grid-row:1/3;color:var(--accent);font:11px Space}.scene-stations strong{font:18px Space;white-space:nowrap}.scene-stations small{font-size:10px;color:var(--muted);margin-top:4px}.scene-stations a:hover{border-color:var(--accent);background:#25303a}.scene-stations a:nth-child(1){left:49%;top:42%}.scene-stations a:nth-child(2){left:34%;top:40%}.scene-stations a:nth-child(3){left:67%;top:66%}.flight-controls{position:fixed;right:4vw;bottom:65px;max-width:500px;margin:0;font-size:12px}.flight-controls summary{cursor:pointer;padding:3px 4px}.flight-controls .buttons{margin-top:12px}.foot{margin-top:auto}.room-note p:last-child{font-size:11px}.home-hangar main{min-height:0}.compare{display:none}
@media(max-width:899px),(pointer:coarse){.hangar-scene{position:relative;inset:auto;width:auto;height:auto;min-height:340px;flex:1;margin:0 -22px;overflow:visible;pointer-events:auto}.hangar-scene img{object-fit:cover}.scene-stations{display:block}.scene-stations a{min-width:0;width:max-content;padding:10px 12px;min-height:44px;grid-template-columns:18px 1fr;transform:none}.scene-stations strong{font-size:14px}.scene-stations small{display:none}.scene-stations a:nth-child(1){left:9%;top:28%}.scene-stations a:nth-child(2){left:5%;top:54%}.scene-stations a:nth-child(3){left:57%;top:70%}.intro h1{font-size:34px}.home-hangar main{flex:1}.foot{margin-top:10px}.shell{overflow:visible}.flight-controls{display:none!important}}
@media(max-height:720px) and (max-width:899px){.shell{height:auto}.hangar-scene{min-height:320px}}
/* Stations occupy separate areas of the open floor in every presentation. */
.scene-stations a:nth-child(1){left:69%;top:43%}
.scene-stations a:nth-child(2){left:23%;top:63%}
.scene-stations a:nth-child(3){left:78%;top:78%}
.hangar-scene img{object-fit:cover}
@media(min-width:900px) and (max-height:700px){.shell{height:auto;min-height:700px}.hangar-scene{height:max(700px,100svh)}.flight-controls{bottom:35px}.intro{padding-top:15px}}
@media(max-width:899px),(pointer:coarse){.scene-stations a:nth-child(1){left:44%;top:20%}.scene-stations a:nth-child(2){left:5%;top:49%}.scene-stations a:nth-child(3){left:57%;top:77%}}
