#flight-experience{--fx-accent:var(--brand-light);--fx-accent-text:var(--brand-light-text);--fx-text:#fff;--fx-muted:var(--brand-deep-text);--fx-veil:var(--brand-hero);color:var(--fx-text);background:var(--brand-deep);& button{cursor:pointer}& :is(button,a):not(#flight-dialog-body *):focus-visible{outline:3px solid var(--fx-accent);outline-offset:4px}& [hidden]{display:none!important}& .journey{height:1000svh;position:relative}& .viewport{overflow-anchor:none;background:var(--brand-deep);isolation:isolate;height:100svh;min-height:430px;position:sticky;top:0;overflow:clip}& .departure-camera,& .departure-shade,& .cloud-passage,& .cabin,& .cabin-entrance,& .cabin-atmosphere{position:absolute;inset:0}& .departure-camera{overflow:hidden}& .departure-photo{object-fit:cover;object-position:65% 50%;will-change:transform;transform-origin:72% 48%;width:100%;height:100%}& .departure-shade{background:linear-gradient(90deg,rgb(var(--fx-veil) / .66),transparent 78%),linear-gradient(0deg,rgb(var(--fx-veil) / .7),transparent 40%,rgb(var(--fx-veil) / .13))}& .cloud-passage{pointer-events:none;z-index:3;opacity:0;background:radial-gradient(ellipse at 65% 65%,#fff 0%,color-mix(in srgb,var(--brand-tint) 95%,transparent) 35%,color-mix(in srgb,var(--brand-tint-strong) 79%,transparent) 70%);transform:scale(1.1)}& .cabin-entrance{opacity:0;visibility:hidden;perspective:1100px;pointer-events:none}& .cabin-entrance img{object-fit:cover;will-change:transform;width:100%;height:100%;position:absolute;inset:0}& .door-frame{border:32px solid var(--brand-deep-2);border-top:28px solid var(--brand-deep-3);box-shadow:0 0 0 250px var(--brand-deep),inset 0 0 0 4px color-mix(in srgb,var(--brand-light) 40%,transparent),inset 0 0 50px 25px rgb(var(--fx-veil) / .7),0 0 25px #0009;will-change:transform;border-radius:46% 46% 20% 20%;position:absolute;inset:-22% 17% -35%}& .flight-hud{z-index:6;letter-spacing:2px;text-shadow:0 1px 8px #000;justify-content:space-between;gap:20px;font-size:9px;font-weight:600;display:flex;position:absolute;top:30px;left:4%;right:4%}& .flight-hud i{color:var(--fx-accent);margin:0 12px;font-style:normal}& .intro{z-index:4;will-change:opacity,transform;position:absolute;top:17%;left:7%;right:5%}& .kicker{color:var(--fx-accent-text);letter-spacing:.14em;font-size:11px;font-weight:650}& .intro h1{font:650 clamp(34px,4.2vw,56px)/1.04 var(--font-display);letter-spacing:-.045em;text-shadow:0 3px 35px #0006;max-width:820px;margin:22px 0}& .intro em{font-style:normal;font-weight:inherit;color:var(--fx-accent)}& .intro>p:not(.kicker){color:var(--fx-muted);text-shadow:0 1px 12px #000;font-size:15px;line-height:1.75}& .boarding{background:var(--brand-accent);min-height:52px;color:var(--brand-on-accent);border:0;border-radius:12px;align-items:center;gap:28px;margin-top:27px;padding:14px 24px;font-size:15px;font-weight:600;transition:background .2s;display:flex}& .boarding:hover{background:var(--brand-accent-hover)}& .boarding span{font-size:18px}& .transition-caption{z-index:4;opacity:0;pointer-events:none;text-shadow:0 2px 24px #000;position:absolute;top:35%;left:7%}& .transition-caption span{letter-spacing:.14em;color:var(--fx-accent-text);font-size:10px;font-weight:650}& .transition-caption p{font:650 clamp(36px,5vw,64px)/1.1 var(--font-display);letter-spacing:-.04em;margin-top:18px}& .cabin{opacity:0;pointer-events:none}& .cabin.is-active{pointer-events:auto;cursor:grab;touch-action:pan-y}& .cabin.is-dragging{cursor:grabbing}& .story-scene,& .scene-camera,& .scene-near,& .scene-shade{position:absolute;inset:0}& .story-scene{visibility:hidden;opacity:0;pointer-events:none;perspective:1100px;perspective-origin:50% 48%}& .story-scene.is-current{pointer-events:auto}& .scene-camera,& .scene-near{backface-visibility:hidden;inset:-7%}& .story-scene.is-visible :is(.scene-camera,.scene-near){will-change:transform}& .scene-photo,& .scene-video,& .scene-near img,& .departure-video{object-fit:cover;object-position:50% 50%;user-select:none;pointer-events:none;width:100%;height:100%;position:absolute}& .departure-video{transform-origin:72% 48%;inset:0}& .story-scene:has(video) .scene-near{display:none}& .scene-near{pointer-events:none;mask-image:radial-gradient(32% 26% at 0 100%,#000 30%,#0000 100%),radial-gradient(32% 26% at 100% 100%,#000 30%,#0000 100%)}& .scene-shade{pointer-events:none;background:linear-gradient(90deg,rgb(var(--fx-veil) / .85),transparent 62%),linear-gradient(0deg,rgb(var(--fx-veil) / .96),transparent 50%,rgb(var(--fx-veil) / .5))}& .cabin-atmosphere{pointer-events:none;z-index:2;opacity:0;background:radial-gradient(ellipse at 50% 45%,transparent 45%,rgb(var(--fx-veil) / .27));overflow:clip}& .passing-light{will-change:transform,opacity;background:linear-gradient(90deg,#0000 35%,#ffffff14 47%,#ffffff38 50%,#ffffff14 53%,#0000 65%);position:absolute;inset:-30% -20%}& .scene-copy{z-index:4;text-shadow:0 2px 18px #0005;will-change:opacity,transform;max-width:min(520px,43%);position:absolute;bottom:26%;left:7%}& .scene-copy h2{font:650 clamp(32px,4.2vw,56px)/1.08 var(--font-display);letter-spacing:-.04em;color:var(--fx-text);margin:16px 0}& .scene-copy>p:not(.kicker){color:var(--fx-muted);max-width:420px;font-size:14px;line-height:1.75}& .scene-copy button{min-height:44px;color:var(--fx-accent-text);border-bottom:1px solid color-mix(in srgb,var(--fx-accent) 70%,transparent);background:0 0;align-items:center;gap:30px;margin-top:13px;padding:14px 0;font-size:13px;font-weight:600;display:flex}& .story-scene:not(.is-current) .scene-copy,& .story-scene:not(.is-current) .hotspot{visibility:hidden}& .hotspot{left:var(--x);top:var(--y);z-index:3;color:var(--fx-text);text-align:left;background:0 0;border:0;align-items:center;gap:10px;display:flex;position:absolute;transform:translate(-50%,-50%)}& .hotspot-dot{border:1px solid color-mix(in srgb,var(--fx-accent) 80%,transparent);background:rgb(var(--fx-veil) / .45);backdrop-filter:blur(5px);color:#fff;width:44px;height:44px;box-shadow:0 0 0 6px color-mix(in srgb,var(--fx-accent) 14%,transparent);border-radius:50%;flex-shrink:0;place-items:center;font-size:23px;transition:background .2s,box-shadow .2s;display:grid}& .hotspot:hover .hotspot-dot,& .hotspot:focus-visible .hotspot-dot{background:var(--brand-accent);box-shadow:0 0 0 9px color-mix(in srgb,var(--fx-accent) 24%,transparent)}& .hotspot-label{white-space:nowrap;background:rgb(var(--fx-veil) / .74);backdrop-filter:blur(12px);border:1px solid #ffffff20;border-radius:12px;padding:10px 13px;font-size:12px;font-weight:600}& .hotspot-label small{color:var(--fx-accent-text);letter-spacing:1px;margin-bottom:4px;font-size:9px;font-weight:600;display:block}&.is-approaching .hotspot,&.is-approaching .scene-copy{pointer-events:none}& .camera-controls{z-index:7;background:rgb(var(--fx-veil) / .79);border:1px solid var(--brand-deep-line);backdrop-filter:blur(16px);border-radius:12px;align-items:stretch;display:flex;position:absolute;bottom:96px;left:50%;overflow:hidden;transform:translate(-50%)}& .camera-controls button{min-width:48px;min-height:52px;color:var(--fx-text);background:0 0;padding:10px 18px}& .camera-controls button:hover{background:color-mix(in srgb,var(--fx-accent) 14%,transparent)}& .camera-controls button:disabled{opacity:.35;cursor:default}& .camera-controls [data-stop-open]{border-left:1px solid #ffffff20;border-right:1px solid #ffffff20;justify-content:space-between;align-items:center;gap:16px;min-width:230px;font-size:13px;font-weight:600;display:flex}& [data-stop-count]{color:var(--fx-accent-text);white-space:nowrap;font-size:10px}& .playback-controls{z-index:7;gap:6px;display:flex;position:absolute;top:72px;right:4%}& .playback-controls button{min-height:44px;color:var(--fx-text);background:rgb(var(--fx-veil) / .57);backdrop-filter:blur(10px);border:1px solid #ffffff30;border-radius:12px;padding:9px 13px;font-size:11px;font-weight:600}& .playback-controls [data-restart]{min-width:44px;font-size:18px}& .journey-bottom{z-index:7;letter-spacing:1.7px;text-shadow:0 1px 8px #000;justify-content:space-between;align-items:center;gap:12px;font-size:9px;font-weight:600;display:flex;position:absolute;bottom:35px;left:4%;right:340px}& .viewport:has(.intro:not([inert])) .journey-bottom{visibility:hidden}& .scroll-hint{white-space:nowrap}& .scroll-hint span{margin-left:10px;font-size:20px}& .skip-flight{z-index:7;min-height:44px;color:var(--fx-text);background:0 0;border-bottom:1px solid #ffffff50;padding:9px 0;font-size:11px;font-weight:600;position:absolute;bottom:190px;right:4%}& .flight-progress{z-index:8;background:#ffffff20;height:3px;position:absolute;bottom:0;left:0;right:0}& .flight-progress span{background:var(--fx-accent);transform-origin:0;height:100%;display:block;transform:scaleX(0)}& .flight-pass{bottom:max(18px,env(safe-area-inset-bottom));z-index:40;background:var(--brand-accent);min-height:66px;color:var(--brand-on-accent);box-shadow:0 10px 34px rgb(var(--fx-veil) / .35);text-align:left;border:0;border-radius:12px;align-items:center;gap:16px;padding:12px 20px;transition:background .2s,transform .2s;display:flex;position:fixed;right:24px}& .flight-pass:hover{background:var(--brand-accent-hover);transform:translateY(-2px)}& .flight-pass small{letter-spacing:1.5px;opacity:.9;margin-bottom:4px;font-size:9px;font-weight:600;display:block}& .flight-pass strong{font-size:14px;font-weight:650}& .pass-symbol{font-size:22px}& .pass-time{border-left:1px dashed color-mix(in srgb,currentColor 45%,transparent);white-space:nowrap;padding-left:16px;font-size:11px}& .baggage-content{background:var(--brand-mist);color:var(--color-navy);padding:clamp(24px,5vw,50px)}& .baggage-content h2{font:650 clamp(30px,4vw,44px)/1.12 var(--font-display);letter-spacing:-.04em;margin:18px 0 24px}& .baggage-content .kicker{color:var(--brand-accent-ink)}& .baggage-content p:not(.kicker){color:var(--color-ink-muted);margin:18px 0;line-height:1.8}& .baggage-content h3{font:650 24px/1.25 var(--font-display);letter-spacing:-.035em;margin-top:28px}& .baggage-content a{color:var(--brand-accent-ink);text-underline-offset:5px;margin-top:24px;font-weight:600;text-decoration:underline;display:inline-block}& .baggage-content a:focus-visible{outline-color:var(--brand-accent-ink)}& #flight-dialog{border:1px solid var(--brand-deep-line);background:var(--brand-deep);width:min(790px,94vw);max-height:88svh;color:var(--fx-muted);overscroll-behavior:contain;border-radius:20px;margin:auto 0;padding:0;position:fixed;inset:0 3vw 0 auto;box-shadow:0 25px 100px #0008}& #flight-dialog[data-kind=check]{width:min(650px,94vw);margin:auto;inset:0}& #flight-dialog::backdrop{background:rgb(var(--brand-hero) / .58);backdrop-filter:blur(5px)}& #flight-dialog[open]{animation:.3s ease-out flight-panel-in}& .dialog-top{background:var(--brand-deep);z-index:30;border-bottom:1px solid var(--brand-deep-line);color:#fff;justify-content:space-between;align-items:center;gap:16px;padding:10px 22px;font-size:12px;font-weight:600;display:flex;position:sticky;top:0}& .dialog-top>span{flex:1}& .dialog-top button{min-height:44px;color:var(--fx-accent-text);background:0 0;flex-shrink:0;justify-content:center;align-items:center;gap:14px;display:flex}& .dialog-top [data-close]{color:#fff;border:1px solid #ffffff30;border-radius:50%;width:44px;font-size:26px}& .dialog-top .dialog-checker{border-bottom:1px solid color-mix(in srgb,var(--fx-accent) 70%,transparent);padding:0 12px;font-size:11px;font-weight:600}& #flight-dialog[data-kind=check] .dialog-checker{display:none}& .dialog-return{text-align:center;color:var(--fx-muted);padding:14px 24px;font-size:11px}& #flight-dialog-body [data-reveal],& #flight-dialog-body [data-reveal-stagger]>*{opacity:1!important;transform:none!important}& #flight-dialog-body section{padding-top:32px;padding-bottom:32px}& #flight-dialog-body [data-checker]{padding:8px 12px 0}& #flight-dialog-body [data-checker]>div:first-child{box-shadow:none;border:0}& #flight-dialog-body h1{font-size:30px}@media (width>=701px){& .story-scene[data-direction="-1"] .scene-copy{left:auto;right:7%}& .story-scene[data-direction="-1"] .scene-shade{background:linear-gradient(270deg,rgb(var(--fx-veil) / .86),transparent 65%),linear-gradient(0deg,rgb(var(--fx-veil) / .91),transparent 55%,rgb(var(--fx-veil) / .44))}}@media (width<=700px){& .journey{height:950svh}& .flight-hud{letter-spacing:1px;font-size:8px;top:20px}& .hud-right{display:none}& .intro{top:20%;left:7%;right:7%}& .intro h1{letter-spacing:-.04em;font-size:clamp(34px,10vw,52px)}& .intro>p:not(.kicker){font-size:13px}& .intro .kicker{letter-spacing:.12em;font-size:9px}& .desktop-break,& .scroll-hint{display:none}& .departure-photo{object-position:62% 50%}& .departure-shade{background:linear-gradient(rgb(var(--fx-veil) / .5),rgb(var(--fx-veil) / .09) 75%,rgb(var(--fx-veil) / .66))}& .door-frame{border-width:22px;inset:-12% 5% -25%}& .boarding{margin-top:20px;padding:12px 20px}& .playback-controls{top:49px}& .journey-bottom{letter-spacing:1px;font-size:8px;bottom:160px;left:7%;right:7%}& .skip-flight{bottom:165px;right:7%}& .scene-photo,& .scene-video,& .scene-near img{object-position:64% 50%}& .story-scene[data-direction="-1"] :is(.scene-photo,.scene-video,.scene-near img){object-position:35% 50%}& .scene-shade{background:linear-gradient(0deg,rgb(var(--fx-veil) / .98) 8%,rgb(var(--fx-veil) / .83) 28%,transparent 74%,rgb(var(--fx-veil) / .47))}& .scene-copy{max-width:none;bottom:28%;left:7%;right:7%}& .scene-copy h2{max-width:340px;margin:10px 0;font-size:clamp(28px,8.5vw,36px)}& .scene-copy>p:not(.kicker){max-width:340px;font-size:13px;line-height:1.6}& .scene-copy .kicker{letter-spacing:.12em;font-size:9px}& .scene-copy button{margin-top:5px;padding:10px 0;font-size:12px}& .story-scene .hotspot{top:32%;left:64%}& .story-scene[data-direction="-1"] .hotspot{left:37%}& .hotspot-label{display:none}& .camera-controls{max-width:94%;bottom:94px}& .camera-controls button{padding:9px 12px}& .camera-controls [data-stop-open]{gap:10px;min-width:210px;font-size:11px}& .flight-pass{left:16px;right:16px;bottom:max(14px,env(safe-area-inset-bottom));min-height:62px}& .flight-pass>span:nth-child(2){flex:1}& .dialog-top{gap:8px;padding:10px 15px;font-size:11px}& .dialog-top>span{max-height:3.8em;overflow:hidden}& .dialog-top .dialog-checker{max-width:120px;padding:0 5px}& #flight-dialog,& #flight-dialog[data-kind=check]{max-height:92svh}& #flight-dialog-body [data-checker]{padding:0}}@media (height<=680px) and (width<=700px){& .intro{top:19%}& .intro h1{margin:15px 0;font-size:32px}& .intro>p:not(.kicker){max-width:270px}& .scene-copy{bottom:185px}& .scene-copy h2{margin:8px 0;font-size:27px}& .scene-copy>p:not(.kicker){display:none}& .story-scene .hotspot{top:27%}& .journey-bottom{bottom:153px}}@media (height<=560px) and (width>=701px){& .intro{top:20%}& .intro h1{font-size:40px}& .intro>p:not(.kicker){display:none}& .scene-copy{bottom:32%}& .scene-copy h2{font-size:34px}& .scene-copy>p:not(.kicker){display:none}}@media (prefers-reduced-motion:reduce){& .journey{height:100svh}& .intro,& .departure-camera,& .transition-caption,& .cloud-passage,& .cabin-entrance,& .cabin-atmosphere,& .scene-near,& .playback-controls,& .skip-flight{display:none}& .cabin{opacity:1}& .scene-camera{transform:none!important}& #flight-dialog[open]{animation:none}& .hotspot-dot,& .flight-pass{transition:none}& .flight-pass:hover{transform:none}}}html.flight-page{scrollbar-gutter:stable}html.flight-modal-open{overflow:hidden}@keyframes flight-panel-in{0%{opacity:0;transform:translateY(18px)scale(.985)}to{opacity:1;transform:none}}
