/* The launch composition stays intact; the expedition route is a new second row. */
.landing-layout{grid-template-rows:1fr auto auto;padding-bottom:20px;row-gap:22px}
.hero-stage{height:min(56vh,510px)}
.planet-route{grid-column:1/-1;min-width:0;z-index:2;border-top:1px solid #8fc4db22;padding-top:17px}
.route-heading{display:flex;justify-content:space-between;align-items:center;gap:12px;font-size:8px;letter-spacing:2px;color:#a4cbd7}
.route-heading h2{font-size:9px;font-weight:500;letter-spacing:2.5px;margin:0}.route-heading>span{font-size:7px;color:#768fa8}
.route-stops{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));position:relative;gap:8px;margin:13px 0 9px}
.route-stops::before{content:'';position:absolute;left:10%;right:10%;top:26px;height:1px;background:linear-gradient(90deg,#6ae6e680,#52607955 25%,#52607930);pointer-events:none}
.route-stop{position:relative;min-width:0;display:flex;flex-direction:column;align-items:center;gap:6px;padding:0 4px 6px;border:1px solid transparent;border-radius:10px;background:none;color:#73879f;transition:background .2s,border-color .2s}
.route-stop:hover{background:#87bdcf08;border-color:#849ab220}.route-stop:focus-visible{outline:2px solid #9ef6ed;outline-offset:4px;background:#61bfdc0d}
.route-orb{position:relative;display:block;width:54px;height:54px;padding:4px;background:#0e1a2d;border-radius:50%;box-shadow:0 0 0 6px #0e1a2d}
.route-sphere{display:block;width:100%;height:100%;border-radius:50%;background:radial-gradient(ellipse at 34% 24%,#defdffa8,transparent 32%),radial-gradient(ellipse at 35% 67%,#428789 0 15%,transparent 18%),radial-gradient(ellipse at 70% 35%,#59875d 0 16%,transparent 18%),radial-gradient(circle at 30% 25%,#4faabb,#205477 56%,#081b32 88%);box-shadow:inset -9px -6px 10px #0009,inset 1px 1px 3px #c9ffff6b,0 0 18px #61e5ff40}
.planet-nivalis{background:repeating-linear-gradient(-28deg,transparent 0 10px,#b5d4df38 11px 14px),radial-gradient(circle at 30% 25%,#bfecf0,#649abc 45%,#234168 75%,#101e37)}
.planet-pyra{background:repeating-linear-gradient(38deg,transparent 0 8px,#ed692134 10px 13px),radial-gradient(circle at 25% 20%,#efb36e,#a34e44 45%,#542b35 74%,#170e21)}
.planet-thalassa{background:repeating-linear-gradient(-12deg,transparent 0 8px,#84bfca45 10px 13px),radial-gradient(circle at 30% 20%,#7cd9dc,#365f9c 47%,#182342 80%)}
.planet-elysion{background:radial-gradient(ellipse at 35% 50%,#bda0bd55 0 16%,transparent 18%),radial-gradient(circle at 30% 25%,#e4c5cd,#8474a6 45%,#312343 75%,#130e27)}
.locked .route-sphere{filter:grayscale(.85) saturate(.3);opacity:.4;box-shadow:inset -7px -5px 9px #0009}.discovered .route-sphere{filter:saturate(.45);opacity:.65}
.route-marker{position:absolute;right:-2px;bottom:0;width:20px;height:20px;display:grid;place-items:center;border-radius:50%;background:#17253a;border:1px solid #7b8a9f50;font-size:8px;color:#a1b2c6}
.route-marker svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round}
.current .route-marker{background:#92e7df;color:#143b45;border-color:#c2ffef;box-shadow:0 0 12px #54efd74d}.current .route-orb{box-shadow:0 0 0 3px #86d5e12b,0 0 20px #5ee9f122}.current strong{color:#c2f1ec}.current small{color:#77c9c6}
.route-stop strong{font-size:11px;font-weight:550;letter-spacing:.8px}.route-stop small{font-size:6px;letter-spacing:1.1px;line-height:1.6;text-align:center}
.route-detail{font-size:9px;text-align:center;color:#7e99ac;line-height:1.5;margin:0;min-height:14px;letter-spacing:.2px}
.landing-bottom{position:static;grid-column:1/-1;padding-top:12px;font-size:7px;gap:12px}.landing-bottom>span:nth-child(2){font-size:8px}
#menuSoundButton{border:0;background:none;font-size:9px;color:#9cbeca;padding:5px;letter-spacing:.3px;white-space:nowrap}.menu-sound-dot{display:inline-block;width:4px;height:4px;margin-right:7px;border-radius:50%;background:#526a81}.sound-playing .menu-sound-dot{background:#8be4cd;box-shadow:0 0 7px #8be4cd80}
button:focus-visible,a:focus-visible,input:focus-visible{outline:2px solid #9ef6ed;outline-offset:4px}.name-field input:focus-visible{outline:none}
.menu-key-hint{font-size:9px!important;line-height:1.8!important;color:#8bacbf!important;margin:16px 0 0!important}
@media(min-width:901px) and (max-height:800px){.landing-layout{padding-top:17px;padding-bottom:14px;row-gap:14px}.hero-stage{height:420px}.planet-route{padding-top:13px}.route-stops{margin-top:10px}.route-orb{width:46px;height:46px}.route-stops::before{top:23px}.landing-bottom{padding-top:10px}}
@media(max-width:900px) and (min-width:621px){.landing-layout{grid-template-rows:minmax(560px,1fr) auto auto;row-gap:24px}.hero-stage{bottom:auto;top:258px;height:315px}.planet-route{grid-row:2}.landing-bottom{grid-row:3}}
@media(max-width:620px){.landing-layout{padding-bottom:20px;grid-template-rows:auto;row-gap:23px;min-height:0}.hero-stage{height:265px}.planet-route{grid-row:4;margin-top:3px}.landing-bottom{grid-row:5;flex-wrap:wrap}.landing-bottom>span:nth-child(2){display:none}.route-heading h2{font-size:8px;letter-spacing:1.4px}.route-heading>span{font-size:6px;letter-spacing:1px}.route-stops{gap:3px;margin-top:19px}.route-stop{padding:0 1px 8px;gap:8px}.route-orb{width:42px;height:42px;padding:3px;box-shadow:0 0 0 3px #0e1a2d}.route-stops::before{top:21px}.route-stop strong{font-size:9px;letter-spacing:0}.route-stop small{font-size:5.5px;letter-spacing:.1px}.route-marker{width:17px;height:17px;right:-1px}.route-marker svg{width:11px;height:11px}.route-detail{font-size:9px;min-height:28px}.landing-bottom{letter-spacing:.6px}#menuSoundButton{font-size:8px}.route-orb .route-sphere{box-shadow:inset -6px -4px 8px #0009}}
@media(prefers-reduced-motion:reduce){.route-stop{transition:none}}
@media(min-width:901px) and (max-height:800px){
 .landing-layout{padding-top:12px;padding-bottom:10px;row-gap:10px}
 .hero-stage{height:382px}.mission-intro{padding-bottom:12px}.mission-intro h1{margin:18px 0}.mission-divider{margin:21px 0 16px}.controls-link{margin-top:25px}
 .launch-panel{padding:15px 22px}.launch-panel h2{font-size:22px;margin:5px 0 10px}.launch-panel .character img{height:60px}.launch-panel .characters{margin-bottom:12px}
 .launch-panel .name-field{margin-top:6px}.launch-panel .name-field input{padding:8px 0}.launch-panel .name-hint{margin:6px 0 9px;font-size:8px}
 .launch-panel .launch-assist{padding-top:9px;margin-bottom:11px}.launch-panel .launch-button{padding:10px 17px}.launch-panel .launch-note{display:none}
 .planet-route{padding-top:12px}.route-stops{margin:10px 0 6px}.landing-bottom{padding-top:9px}
}
