/* Cosmic motion v2. Blend at the GROUP boundary, not only inside isolated images. */
.theme-cosmic{--paper:#08090f;--surface:#0d101b;--accent:#24e5ee;--muted:#b6b8cd;--line:#8174be33;--cosmic-magenta:#ff29d6;--cosmic-violet:#7934ef}
.theme-cosmic .cosmic-hero{background:radial-gradient(ellipse at 79% 32%,#29123e 0%,#111020 34%,transparent 65%),#08090f}
.theme-cosmic .astronaut-stage,.theme-cosmic .flight-space{mix-blend-mode:screen}
.theme-cosmic .astronaut,.theme-cosmic .flight-rocket{mix-blend-mode:screen;filter:none}
.theme-cosmic .flight-sticky{background:radial-gradient(ellipse at 75% 48%,#251343 0%,#0d1327 42%,#08090f 75%)}
.theme-cosmic .cosmic-hero .hero-stage{min-height:610px;margin-top:0;padding-bottom:60px}
.theme-cosmic .astronaut-stage{inset:-65px 0 5px 50%;z-index:1;pointer-events:none}
.theme-cosmic .astronaut{object-fit:contain;object-position:center;width:100%;height:100%;transform-origin:50% 52%;animation:cosmic-float 9s ease-in-out infinite;will-change:transform}
.theme-cosmic .cosmic-top{z-index:5}
.theme-cosmic .cosmic-glow{inset:-20% -20% 0 25%;width:100%;height:120%;border-radius:50%;background:radial-gradient(ellipse at 55% 45%,#de16bc36,transparent 48%),radial-gradient(ellipse at 30% 65%,#00d4ec25,transparent 42%);animation:nebula-flow 20s ease-in-out infinite alternate}
.theme-cosmic .starfield{z-index:0;pointer-events:none;opacity:.9}
.theme-cosmic .cosmic-orbit{left:4%;top:25%;width:92%;height:48%;border-color:#74ccff55;box-shadow:0 0 45px #6c39ff1c,inset 0 0 35px #387eff12;transform:rotate(-32deg);animation:orbit-drift 16s ease-in-out infinite alternate}
.theme-cosmic .cosmic-orbit::before{width:8px;height:8px;left:13%;top:12%;background:#9bffff;box-shadow:0 0 18px 5px #47caff70;animation:signal-glow 4s ease-in-out infinite alternate}
.theme-cosmic .cosmic-orbit::after{content:'';position:absolute;inset:15% -6%;border:1px solid #bc70ff46;border-radius:50%;transform:rotate(62deg)}
.theme-cosmic .space-coordinate{left:0;right:auto;bottom:9%;font-size:10px;color:#9faccc;letter-spacing:.16em}
.theme-cosmic .lp-hero-copy{z-index:3}
.theme-cosmic .lp-hero-copy h1 em{background-image:linear-gradient(105deg,#66ffff 10%,#20d8f5 34%,#8388ff 62%,#ff58df 90%);background-size:180% 100%;animation:spectrum-flow 9s ease-in-out infinite alternate}
.theme-cosmic .lp-story{background:linear-gradient(#08090f,#100e20)}
.theme-cosmic .lp-finish{background:radial-gradient(ellipse at 70% 100%,#40124b,transparent 60%),#0b0c19}
.theme-cosmic .lp-progress i{background:linear-gradient(90deg,var(--accent),var(--cosmic-magenta))}
.theme-cosmic .cosmic-event-art{margin-top:64px;border:1px solid var(--line);background:#090a10}
.theme-cosmic .cosmic-event-art img{width:100%;height:auto;aspect-ratio:1140/450;object-fit:contain}
.theme-cosmic .cosmic-event-art figcaption{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:17px 24px;border-top:1px solid var(--line)}
.theme-cosmic .cosmic-event-art figcaption>span{font-size:12px;letter-spacing:.12em;color:var(--muted)}
.theme-cosmic .cosmic-event-art .lp-link{padding:8px 0;font-size:13px;border:0;min-height:44px}
.theme-cosmic .cosmic-kit-details{margin:24px 0 8px}
.theme-cosmic .cosmic-kit-details>div{display:grid;grid-template-columns:105px 1fr;gap:18px;padding:17px 0;border-top:1px solid var(--line)}
.theme-cosmic .cosmic-kit-details dt{font-size:14px;font-weight:700;color:var(--accent)}
.theme-cosmic .cosmic-kit-details dd{margin:0;font-size:14px;line-height:1.8;color:var(--muted)}
/* Native film component; the browser selects the lighter rendition on mobile. */
.theme-cosmic .cosmic-film{background:radial-gradient(ellipse at 10% 70%,#53164629,transparent 60%),#090a13}
.theme-cosmic .cosmic-film-frame{position:relative;border:1px solid #9475c347;box-shadow:0 20px 80px #0004}
.theme-cosmic .cosmic-film-frame::before{content:'';position:absolute;inset:-1px -1px auto;height:2px;background:linear-gradient(90deg,var(--accent),var(--cosmic-violet),var(--cosmic-magenta));z-index:1}
.theme-cosmic .cosmic-film video{display:block;width:100%;height:auto;aspect-ratio:16/9;background:#000;object-fit:contain}
.theme-cosmic .cosmic-film figcaption{display:flex;justify-content:space-between;gap:15px;background:#0e1020;padding:19px 24px;font-size:12px;letter-spacing:.08em;color:var(--muted)}
.theme-cosmic .cosmic-film figcaption>span:first-child{color:var(--accent)}
.theme-cosmic .lp-button{transition:transform .25s,box-shadow .25s,background-color .25s}
.theme-cosmic .lp-button:hover{box-shadow:0 0 35px #55d6ff36;transform:translateY(-3px)}
/* Launch sequence: ignition, acceleration, then the calm of orbit. */
.theme-cosmic .cosmic-flight{height:260svh;--rocket-x:0px;--rocket-y:0px;--rocket-roll:0deg;--rocket-scale:.9;--engine:.2;--warp:0;--ring-growth:1}
.theme-cosmic .flight-sticky{overflow:hidden;isolation:isolate}
.theme-cosmic .flight-grid{z-index:0;opacity:.7;background:repeating-linear-gradient(90deg,transparent,transparent 109px,#899ce509 110px),repeating-linear-gradient(0deg,transparent,transparent 109px,#899ce509 110px);mask-image:linear-gradient(transparent,#000 35%,#000 75%,transparent);-webkit-mask-image:linear-gradient(transparent,#000 35%,#000 75%,transparent)}
.theme-cosmic .flight-stars{position:absolute;inset:0;width:100%;height:100%;z-index:0;pointer-events:none}
.theme-cosmic .flight-layout{position:relative;z-index:auto}
.theme-cosmic .flight-copy{z-index:4}
.theme-cosmic .flight-space{z-index:1;isolation:auto}
.theme-cosmic .flight-rocket{z-index:3;left:50%;top:50%;height:75%;width:100%;max-width:none;object-fit:contain;transform:translate3d(calc(-50% + var(--rocket-x)),calc(-50% + var(--rocket-y)),0) rotate(var(--rocket-roll)) scale(var(--rocket-scale));will-change:transform}
.theme-cosmic .flight-trail{left:50%;top:59%;height:48%;width:24%;z-index:1;border-radius:50%;background:radial-gradient(ellipse at 50% 0%,#b5ffffd9,transparent 43%),linear-gradient(#2cbcff85,#832afc55 45%,transparent 90%);filter:blur(24px);transform:translate3d(calc(-50% + var(--rocket-x)),var(--rocket-y),0) rotate(var(--rocket-roll)) scaleY(calc(.6 + var(--engine) * 1.1));transform-origin:50% 0;opacity:var(--engine)}
.theme-cosmic .flight-ring{top:12%;left:5%;width:90%;aspect-ratio:1;border-color:#81bcff38;transform:scale(var(--ring-growth)) rotateX(45deg) rotate(-20deg);opacity:calc(.75 - var(--warp) * .4);z-index:1}
.theme-cosmic .flight-ring.ring-two{left:19%;top:25%;width:63%;border-style:dashed;border-color:#db83ff50;transform:scale(calc(var(--ring-growth) * .94)) rotateX(45deg) rotate(35deg);opacity:.5}
.theme-cosmic .flight-space::before{content:'';position:absolute;inset:10% -10%;z-index:0;border-radius:50%;background:radial-gradient(ellipse,#763bff26,transparent 68%);transform:scale(calc(.85 + var(--warp) * .55));opacity:calc(.5 + var(--engine) * .5)}
.theme-cosmic .flight-space::after{content:'';position:absolute;left:15%;right:15%;top:67%;height:16%;z-index:0;border:1px solid #67d5ff5c;border-radius:50%;box-shadow:0 0 22px #674eff22;transform:scale(calc(.65 + var(--warp) * 2.1));opacity:calc(.45 - var(--warp) * .4)}
.theme-cosmic .flight-stages li{opacity:.58;position:relative;transition:opacity .5s,padding-left .5s}
.theme-cosmic .flight-stages li.active{opacity:1;padding-left:14px}
.theme-cosmic .flight-stages li::before{content:'';position:absolute;top:0;bottom:0;left:0;width:2px;background:linear-gradient(#8afbff,#c084ff);transform:scaleY(0);transform-origin:top;transition:transform .55s;box-shadow:0 0 13px #4ef0ff55}
.theme-cosmic .flight-stages li.active::before{transform:scaleY(.7)}
.theme-cosmic .flight-meter{z-index:5;right:0;top:7%;font-size:11px;color:#bdd1e2}
.theme-cosmic .flight-label{z-index:5;bottom:6%;font-size:10px;letter-spacing:.12em;color:#b6cae0}
.theme-cosmic .flight-phase{position:absolute;top:7%;left:0;font-size:11px;letter-spacing:.13em;color:#b9f7ff;z-index:5}
.theme-cosmic .flight-phase::before{content:'';display:inline-block;width:5px;height:5px;margin-right:10px;border-radius:50%;background:currentColor;box-shadow:0 0 12px #68e9ff}
@keyframes cosmic-float{0%,100%{transform:translate3d(var(--astro-x,0px),calc(var(--astro-y,0px) + 9px),0) rotate(calc(8deg + var(--astro-roll,0deg)))}50%{transform:translate3d(calc(var(--astro-x,0px) - 10px),calc(var(--astro-y,0px) - 13px),0) rotate(calc(2deg + var(--astro-roll,0deg)))}}
@keyframes nebula-flow{from{transform:translate3d(-3%,2%,0) rotate(-7deg) scale(.96)}to{transform:translate3d(4%,-3%,0) rotate(9deg) scale(1.1)}}
@keyframes orbit-drift{from{transform:rotate(-32deg) scale(.95)}to{transform:rotate(-18deg) scale(1.06)}}
@keyframes signal-glow{from{opacity:.45}to{opacity:.95}}
@keyframes spectrum-flow{from{background-position:0% 50%}to{background-position:100% 50%}}
@media(min-width:1600px){.theme-cosmic .astronaut-stage{inset:-70px 0 -3px 49%}.theme-cosmic .cosmic-hero .hero-stage{min-height:660px}}
@media(max-width:1100px){.theme-cosmic .astronaut-stage{inset:-25px 0 5px 48%}.theme-cosmic .cosmic-hero .hero-stage{min-height:580px}.theme-cosmic .space-coordinate{font-size:9px;left:4%}}
@media(max-width:760px){
 .theme-cosmic .cosmic-event-art{margin-top:35px}
 .theme-cosmic .cosmic-event-art figcaption{align-items:flex-start;flex-direction:column;gap:10px;padding:14px 17px}
 .theme-cosmic .cosmic-event-art figcaption>span{font-size:12px}
 .theme-cosmic .cosmic-kit-details>div{grid-template-columns:80px 1fr;gap:13px}
 .theme-cosmic .cosmic-kit-details dt,.theme-cosmic .cosmic-kit-details dd{font-size:14px}
 .theme-cosmic .cosmic-film figcaption{font-size:12px;letter-spacing:0;padding:14px;flex-wrap:wrap}
 .theme-cosmic .cosmic-film .lp-prose{font-size:16px}
 .theme-cosmic .lp-hero-actions{flex-wrap:wrap}
 .theme-cosmic .cosmic-hero .hero-stage{min-height:0;padding-top:330px;padding-bottom:38px}
 .theme-cosmic .astronaut-stage{inset:-58px 0 auto 26%;height:405px}
 .theme-cosmic .astronaut{object-position:center;animation-duration:10s}
 .theme-cosmic .cosmic-top{padding-top:24px;align-items:start}
 .theme-cosmic .cosmic-top .lp-event-logo{width:143px;height:90px}
 .theme-cosmic .cosmic-orbit{left:-6%;top:23%;height:48%;width:106%}
 .theme-cosmic .space-coordinate{font-size:8px;left:-27%;bottom:37%;line-height:1.9;letter-spacing:.12em}
 .theme-cosmic .cosmic-glow{inset:-8% -38% 0 0;width:150%;height:90%}
 .theme-cosmic .cosmic-flight{height:235svh}
 .theme-cosmic .flight-space{inset:98px 0 65px 49%}
 .theme-cosmic .flight-rocket{height:75%;width:117%;left:50%}
 .theme-cosmic .flight-ring{width:118%;left:-9%;top:27%}
 .theme-cosmic .flight-ring.ring-two{width:92%;left:5%;top:38%}
 .theme-cosmic .flight-copy h2{font-size:64px}
 .theme-cosmic .flight-stages{max-width:60%}
 .theme-cosmic .flight-stages li.active{padding-left:9px}
 .theme-cosmic .flight-stages strong{font-size:12px}
 .theme-cosmic .flight-stages p{font-size:11px}
 .theme-cosmic .flight-trail{width:33%;height:42%;top:62%;filter:blur(16px)}
 .theme-cosmic .flight-phase{font-size:9px;left:5%;top:10%}
 .theme-cosmic .flight-meter{top:auto;bottom:3%;font-size:9px;right:5%}
 .theme-cosmic .flight-label{display:none}
}
@media(max-width:380px){.theme-cosmic .cosmic-hero .hero-stage{padding-top:300px}.theme-cosmic .astronaut-stage{height:370px;inset:-45px 0 auto 24%}.theme-cosmic .space-coordinate{font-size:7px;left:-24%}.theme-cosmic .flight-copy h2{font-size:58px}.theme-cosmic .flight-stages p{font-size:10px}}
/* Nothing depends on motion. Keep the complete sequence visible on short screens. */
@media(max-height:740px){.theme-cosmic .cosmic-flight{height:auto}.theme-cosmic .flight-sticky{position:relative;height:auto;min-height:820px;padding-block:85px}.theme-cosmic .flight-layout{height:650px;min-height:650px}}
@media(max-width:760px) and (max-height:740px){.theme-cosmic .flight-sticky{min-height:780px;padding-block:70px}.theme-cosmic .flight-layout{height:auto;min-height:640px}.theme-cosmic .flight-space{top:100px;bottom:65px}}
.theme-cosmic.motion-paused .cosmic-flight{height:auto}
.theme-cosmic.motion-paused .flight-sticky{position:relative;height:auto;min-height:800px;padding-block:95px}
.theme-cosmic.motion-paused .astronaut,.theme-cosmic.motion-paused .cosmic-glow,.theme-cosmic.motion-paused .cosmic-orbit,.theme-cosmic.motion-paused .cosmic-orbit::before,.theme-cosmic.motion-paused .lp-hero-copy h1 em{animation-play-state:paused}
.theme-cosmic.motion-paused .flight-stages li{opacity:1;transition:none}
.theme-cosmic.motion-paused .flight-rocket{will-change:auto}
.theme-cosmic .cosmic-hero.motion-outside .astronaut,.theme-cosmic .cosmic-hero.motion-outside .cosmic-glow,.theme-cosmic .cosmic-hero.motion-outside .cosmic-orbit,.theme-cosmic .cosmic-hero.motion-outside .cosmic-orbit::before,.theme-cosmic .cosmic-hero.motion-outside .lp-hero-copy h1 em{animation-play-state:paused}
@media(prefers-reduced-motion:reduce){.theme-cosmic .cosmic-flight{height:auto}.theme-cosmic .flight-sticky{position:relative;height:auto;min-height:800px;padding-block:95px}.theme-cosmic .astronaut{animation:none;transform:rotate(5deg);will-change:auto}.theme-cosmic .flight-rocket{will-change:auto}.theme-cosmic .flight-stages li{opacity:1}.theme-cosmic .lp-button:hover{transform:none}}
/* Sound remains within reach without covering the mobile registration bar. */
.cosmic-sound{position:fixed;right:max(24px,env(safe-area-inset-right));bottom:24px;z-index:46}
.cosmic-sound button{display:flex;align-items:center;justify-content:center;gap:12px;min-height:46px;padding:11px 17px;border:1px solid #58deef5c;border-radius:40px;background:#0b1127ed;box-shadow:0 8px 24px #0004;color:#e3fdff;font-size:14px;font-weight:500;backdrop-filter:blur(16px)}
.cosmic-sound button:hover{border-color:#42eef4;background:#101b35}
.cosmic-sound[data-state=playing] button{border-color:#35ddeaa1;box-shadow:0 0 25px #00d6ed17,0 8px 24px #0004}
.sound-bars{display:flex;align-items:center;justify-content:center;gap:3px;width:22px;height:20px;color:var(--accent)}
.sound-bars i{display:block;width:3px;height:5px;background:currentColor;border-radius:3px;transform:scaleY(.55)}
.sound-bars i:nth-child(2){height:15px;animation-delay:-.3s!important}
.sound-bars i:nth-child(3){height:20px;animation-delay:-.65s!important}
.sound-bars i:nth-child(4){height:11px;animation-delay:-.95s!important}
.cosmic-sound[data-state=playing] .sound-bars i{animation:cosmic-equalizer 1.25s ease-in-out infinite alternate}
.sound-status{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
@keyframes cosmic-equalizer{from{transform:scaleY(.35)}to{transform:scaleY(1)}}
@media(max-width:760px){.cosmic-sound{right:max(16px,env(safe-area-inset-right));bottom:calc(91px + env(safe-area-inset-bottom))}.cosmic-sound button{min-height:44px;font-size:13px;padding:10px 14px}}
@media(prefers-reduced-motion:reduce){.cosmic-sound .sound-bars i{animation:none!important;transform:scaleY(.7)}}
