/* A continuous, weighted lift with light anchored to the two visible nozzles. */
.flight-scene.flight-experience{--thrust-level:0;--hold-level:0;--wall-level:0;--shadow-level:1;--contact-level:0;--wash-level:0;--wake-opacity:0;--wake-scale:.55;--jet-length:.42;--shadow-blur:6px;margin-top:0}
.flight-experience .flight-stage{aspect-ratio:1.25!important;overflow:clip;isolation:isolate;border-radius:32px;background:radial-gradient(ellipse at 50% 40%,#b1f8e780,transparent 68%);perspective:1000px;margin:0 0 22px;width:100%}
.flight-experience .flight-stage:after{content:"";position:absolute;inset:52% -10% -25%;background:linear-gradient(#6dc4ae25 1px,transparent 1px),linear-gradient(90deg,#6dc4ae25 1px,transparent 1px);background-size:36px 36px;transform:perspective(350px) rotateX(64deg);mask-image:radial-gradient(ellipse,#0007,transparent 70%);pointer-events:none;z-index:-1}
.hero-v2 .flight-experience .flight-stage .roadster-float{inset:27% 0 auto;width:100%;animation:none;transform:none;perspective:1100px}
.flight-scene.flight-experience .flight-hover{animation:none;transition:none;transform-origin:50% 50%;will-change:transform;transform-style:preserve-3d}
.hero-v2 .flight-experience .roadster-object{width:100%;display:block;transform:none;filter:drop-shadow(0 8px 5px #084b4124)}
.flight-experience .flight-shadow{left:18%;top:82%;width:64%;height:8%;animation:none;opacity:calc(var(--shadow-level)*.6);transform:scaleX(var(--shadow-scale,1));transition:none;background:radial-gradient(ellipse,#174b3ba6,transparent 70%);filter:blur(var(--shadow-blur));pointer-events:none}
.flight-experience .lift-wash{position:absolute;left:15%;top:78%;width:70%;height:14%;border-radius:50%;background:radial-gradient(ellipse at 23% 45%,#e0fff3b3 0%,#31e5bb88 20%,transparent 52%),radial-gradient(ellipse at 84% 40%,#e0fff3a6 0%,#31e5bb73 18%,transparent 49%);filter:blur(9px);opacity:var(--wash-level);transform:scaleX(calc(.85 + var(--wash-level)*.25));pointer-events:none}
.flight-experience .flight-field{opacity:calc(.5 - var(--wall-level)*.28);transform:translateY(2%);transition:none}
.flight-experience .flight-hud{position:absolute;inset:23px 25px auto;display:flex;justify-content:space-between;align-items:center;gap:12px;z-index:5;color:#347669;font-size:8px;letter-spacing:.12em;pointer-events:none}
.flight-hud>span:first-child{display:flex;align-items:center;gap:7px}
.flight-hud i{width:5px;height:5px;border-radius:50%;background:#00b998;box-shadow:0 0 14px #00d9b788}
.flight-mode{font-size:10px;font-weight:700;letter-spacing:.02em;color:#124c40}
.flight-experience .flight-stage .scene-label{display:none}
.flight-experience .thruster{left:29.6%;top:76.6%;width:6%;height:44%;background:none;clip-path:none;filter:none;animation:none;opacity:var(--thrust-level);transform:translateX(-50%) scaleY(var(--jet-length));transform-origin:50% 0;z-index:1;pointer-events:none}
.flight-experience .thruster-rear{left:74.5%;top:73%;height:41%}
.flight-experience .thruster:before{inset:0 28% 0;background:linear-gradient(#f4fff9 0%,#c9ffebeb 7%,#67f5d0ba 24%,#38d3b15c 56%,transparent 100%);filter:blur(1.4px);clip-path:polygon(22% 0,78% 0,69% 26%,100% 100%,0 100%,31% 26%)}
.flight-experience .thruster:after{inset:-1% -55% -8%;background:radial-gradient(ellipse at 50% 5%,#9effdfd9 0%,#29d9b38c 23%,#36cbb72b 48%,transparent 72%);filter:blur(7px)}
.flight-experience .nozzle-glow{position:absolute;left:18%;right:18%;top:-1%;height:5%;border-radius:50%;background:#edfff7;box-shadow:0 0 7px 2px #88ffdf,0 2px 18px 4px #42edc9;filter:blur(.5px)}
.flight-experience .thruster-hold{left:61%;top:26%;width:5%;height:30%;opacity:var(--hold-level);transform:translateX(-50%) rotate(180deg) scaleY(calc(.5 + var(--hold-level)));}
.flight-experience .thruster-hold:before{inset:0 28% 0}
.flight-experience .flight-wall{left:43%;top:7%;width:22.1%;height:84%;border-right:2px solid #07aa8b;border-top:1px solid #4db79a88;border-bottom:1px solid #4db79a88;background:linear-gradient(90deg,#9fddcb05,#7ccdb750);box-shadow:16px 0 42px #18d4b62b;opacity:var(--wall-level);transform:perspective(550px) translateX(calc((1 - var(--wall-level))*60px)) rotateY(calc((1 - var(--wall-level))*-35deg));transform-origin:100% 50%;transition:none;z-index:0;overflow:hidden}
.flight-experience .flight-wall:before{inset:-60% 0;width:auto;height:220%;border:0;transform:translateY(calc(var(--sequence-progress)*28%));background:repeating-linear-gradient(0deg,transparent 0 39px,#24947740 40px 41px);box-shadow:none}
.flight-experience .flight-wall:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,transparent,#4df4cf24,transparent);border-radius:0;filter:none;opacity:1;width:auto;height:auto}
.flight-experience .wall-mark{right:11px;top:20px;font-size:7px;letter-spacing:.12em;color:#14775f;z-index:1}
.flight-experience .wall-contact{display:none}
.wheel-contact{position:absolute;z-index:3;top:75%;left:47%;width:9%;height:6%;border-radius:50%;background:#7bffda;filter:blur(5px);opacity:calc(var(--contact-level)*.75);box-shadow:0 0 20px 6px #29dab48c;pointer-events:none}
.wheel-contact-rear{left:88%;top:72%;width:7%}
.flight-experience .launch-wave{left:18%;top:80%;width:64%;height:13%;border-color:#2dc9a95c;border-width:1px;animation:none;transform:scale(var(--wake-scale));opacity:var(--wake-opacity);box-shadow:0 0 18px #32d9b426;filter:blur(.5px)}
.flight-experience .launch-wave:after{border-color:#2de6c738;inset:-25%;filter:blur(1px)}
.flight-experience .flight-sequence{position:absolute;left:26px;right:26px;bottom:13px;height:2px;background:#6da98f28;overflow:hidden;opacity:0;transition:opacity .3s}
.flight-sequence:after{content:"";position:absolute;inset:0;background:#069f85;transform-origin:0 50%;transform:scaleX(var(--sequence-progress,0))}
.flight-experience .flight-sequence{display:none}
.flight-experience .flight-caption{padding:0 15px;align-items:center}
.flight-experience .flight-buttons{gap:8px;flex-shrink:0}
.flight-experience .flight-trigger,.flight-experience .wall-trigger{min-height:46px;padding:12px 18px;background:#f2fff7bf;border-color:#3a8b7666;color:#164d40;font-size:10px;box-shadow:0 4px 18px #185c4808;transition:background .2s,transform .2s,box-shadow .2s}
.flight-experience .flight-trigger{background:#133e34;color:#eafff5;border-color:#133e34}
.flight-experience .flight-trigger:hover,.flight-experience .wall-trigger:hover{transform:translateY(-2px);background:#49e9c9;color:#092e25;box-shadow:0 8px 24px #1dc49b2c}
.flight-experience .wall-trigger[aria-pressed="true"]{background:#42dfbb;border-color:#1eb693;color:#123e33}
.flight-experience .flight-trigger:disabled,.flight-experience .wall-trigger:disabled{transform:none;opacity:.5}
.flight-experience .flight-status{padding:13px 15px 0;min-height:45px;font-size:10px}
.motion-off .flight-experience .thruster{opacity:0;animation:none}.motion-off .flight-experience .flight-sequence{display:none}

/* The car now hugs the page edge. There is no road strip or reserved column. */
.with-roadster main,.with-roadster footer{margin-right:0}
.with-roadster .header,.with-roadster .mobile-nav{width:100%}
.with-roadster .drive-rail{width:70px;background:none;border:0;overflow:visible;pointer-events:none;z-index:12}
.drive-rail:after,.drive-rail .rail-caption,.drive-rail .rail-track,.drive-rail .rail-state,.drive-rail .rail-percent{display:none}
.drive-rail .rail-car{transition:opacity .25s;pointer-events:none}
.drive-rail .rail-car img{filter:drop-shadow(-5px 6px 5px #17473638)}
.drive-rail .rail-footer{bottom:22px;right:12px;left:auto;gap:0}
.drive-rail #rail-flip{pointer-events:auto;width:43px;height:43px;padding:0;gap:0;border-radius:50%;border:1px solid #9cc3b4;background:#effcf5e8;backdrop-filter:blur(8px);box-shadow:0 3px 14px #1747361a;min-height:0;color:#1e7762}
.drive-rail #rail-flip small{display:none}
.drive-rail #rail-flip>span{font-size:25px}
.drive-rail .rail-jet{opacity:0}
.drive-rail[data-motion="flip"] .rail-jet{opacity:.65}
.dialog-open .drive-rail{visibility:hidden}
@media(min-width:1101px){.with-roadster .header{gap:28px}.with-roadster .desktop-nav{gap:28px}.with-roadster .desktop-nav a:last-child{display:inline}}
@media(max-width:1100px){.flight-experience .flight-caption{display:block}.flight-experience .flight-buttons{margin-top:16px;justify-content:flex-start}.flight-experience .flight-hud{inset:19px 19px auto}.flight-experience .flight-mode{font-size:9px}}
@media(max-width:720px){
 .flight-scene.flight-experience{margin-top:24px}.flight-experience .flight-stage{border-radius:22px;aspect-ratio:1.2!important;margin-bottom:17px}
 .flight-experience .flight-hud{inset:13px 12px auto;font-size:6px;letter-spacing:.08em}.flight-experience .flight-mode{font-size:8px}
 .flight-experience .wall-mark{font-size:5px;right:7px;top:12px}
 .flight-experience .flight-caption{padding:0 4px}.flight-experience .flight-caption .scene-caption strong{font-size:21px}
 .flight-experience .flight-buttons{flex-direction:row;margin-top:17px}.flight-experience .flight-trigger,.flight-experience .wall-trigger{font-size:10px;min-height:45px;padding:11px 18px}
 .flight-experience .flight-status{padding:12px 4px 0;font-size:10px;min-height:48px}
 .with-roadster .drive-rail{width:36px}.drive-rail .rail-footer{right:7px;bottom:16px}.drive-rail #rail-flip{width:32px;height:32px}.drive-rail #rail-flip>span{font-size:21px}
 .hero-v2 .hero-copy h1{font-size:clamp(43px,12vw,76px)}
}
@media(prefers-reduced-motion:reduce){.with-roadster .drive-rail{display:none}.flight-experience .thruster{opacity:0}.flight-experience .flight-trigger,.flight-experience .wall-trigger{transition:none}}

/* Pointer depth is applied outside the animated flight pose and route transform. */
.hero-v2 .flight-experience .flight-stage .roadster-float{
 transform:translate3d(var(--pointer-x,0px),var(--pointer-y,0px),0) rotateX(var(--pointer-pitch,0deg)) rotateY(var(--pointer-yaw,0deg)) rotateZ(var(--pointer-roll,0deg));
 transform-style:preserve-3d;transform-origin:50% 50%;
}
.flight-experience .flight-shadow{translate:calc(var(--pointer-x,0px)*.4) calc(var(--pointer-y,0px)*.15)}
.drive-rail .rail-car{translate:var(--pointer-x,0px) var(--pointer-y,0px);rotate:var(--pointer-roll,0deg)}
.flight-pointer-hint{display:none}
@media(hover:hover) and (pointer:fine){
 .flight-experience.pointer-ready .flight-stage{pointer-events:auto;user-select:none}
 .flight-experience.pointer-ready .roadster-float{will-change:transform}
 .flight-pointer-hint{display:inline-flex;align-items:center;justify-content:center;gap:9px;margin-top:14px;font-size:.75rem;line-height:1.6;color:#3a6d5e;visibility:hidden}
 .flight-pointer-hint svg{width:13px;height:18px;flex-shrink:0;stroke:currentColor;fill:none;stroke-width:1.4}
 .pointer-ready .flight-pointer-hint{visibility:visible}
}
