
body{isolation:isolate}.space-scene{position:fixed;inset:0;z-index:-1;pointer-events:none;overflow:hidden;background:linear-gradient(145deg,#07101b,#13172a 65%,#231920)}.sky{display:none}.nebula{position:absolute;width:100vmax;height:65vmax;border-radius:50%;filter:blur(65px);opacity:.42;animation:nebula-drift 65s ease-in-out infinite alternate;will-change:transform}.nebula-blue{left:-35vmax;top:-30vmax;background:radial-gradient(ellipse,#25648766,transparent 65%)}.nebula-red{right:-45vmax;bottom:-28vmax;background:radial-gradient(ellipse,#a7485166,transparent 66%);animation-delay:-30s}
.stars{position:absolute;inset:-220px;background-repeat:repeat;will-change:transform;animation:star-drift 150s linear infinite}.stars-far{opacity:.45;background-image:radial-gradient(1px 1px at 27px 41px,#bedbff 98%,transparent),radial-gradient(1px 1px at 97px 173px,#fff 98%,transparent),radial-gradient(1px 1px at 211px 103px,#e9ccab 98%,transparent);background-size:281px 251px;animation-duration:220s}.stars-mid{opacity:.7;background-image:radial-gradient(1.2px 1.2px at 41px 87px,#fff0d7 98%,transparent),radial-gradient(1.5px 1.5px at 235px 161px,#b7d9ff 98%,transparent);background-size:397px 337px;animation-duration:135s;animation-delay:-60s}.stars-near{opacity:.6;background-image:radial-gradient(2px 2px at 57px 39px,#eef5ff 50%,#eef5ff22 85%,transparent),radial-gradient(1.5px 1.5px at 374px 301px,#f8c5b0 60%,transparent);background-size:557px 463px;animation-duration:85s;animation-delay:-35s}.shooting-star{position:absolute;left:50%;top:15%;width:140px;height:1px;background:linear-gradient(90deg,transparent,#d6ecff);opacity:0;transform:rotate(-35deg);animation:shoot 17s ease-in infinite}.shooting-star.second{left:78%;top:40%;animation-delay:9s;animation-duration:23s}
@keyframes star-drift{from{transform:translate3d(0,0,0)}to{transform:translate3d(-180px,180px,0)}}@keyframes nebula-drift{to{transform:translate3d(12%,10%,0) rotate(8deg)}}@keyframes shoot{0%,88%,100%{opacity:0;transform:translate3d(0,0,0) rotate(-35deg)}90%{opacity:.7}95%{opacity:0;transform:translate3d(-480px,330px,0) rotate(-35deg)}}
.motion-toggle{position:fixed;right:16px;bottom:15px;z-index:10;border:1px solid #6c7d9266;border-radius:20px;background:#111c2ce8;color:#c8d6e5;font:10px var(--mono);padding:9px 13px;backdrop-filter:blur(10px)}.motion-paused *,.motion-paused *:before,.motion-paused *:after{animation-play-state:paused!important}.hero{min-height:650px}.hero-copy{position:relative;z-index:1}.hero h1{font-size:clamp(50px,6vw,88px)}.scanner{height:460px;animation:planet-float 12s ease-in-out infinite;box-shadow:0 0 90px #7fafda12}.scanner .orbit-one{animation:reticle-turn 100s linear infinite}.scanner .orbit-two{animation:reticle-turn 140s linear infinite reverse}@keyframes reticle-turn{to{transform:translate(-50%,-50%) rotate(360deg)}}@keyframes planet-float{50%{transform:translateY(-10px)}}
.quick-search{margin-top:35px;padding:27px 30px;background:linear-gradient(110deg,#213244ef,#1b2335ee);display:grid;grid-template-columns:1fr 1.2fr;gap:20px 35px;border-left:3px solid #f6ab51}.quick-search h2{font-size:26px}.quick-search .eyebrow{font-size:8px;margin-bottom:10px}.quick-search form{display:flex;gap:10px;align-items:center}.quick-search input{min-width:0;flex:1}.quick-links{grid-column:1/-1;display:flex;align-items:center;flex-wrap:wrap;gap:10px}.quick-links>.mono{font-size:8px;margin-right:12px;letter-spacing:.1em}.quick-links a{border:1px solid #4c607b;font-size:11px;padding:4px 12px;border-radius:20px;color:#cad8e9}.quick-links a:hover{border-color:#f6ab51;color:white}.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.sector-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.sector{--sector:#8aceaf;position:relative;min-height:225px;overflow:hidden;padding:26px;background:linear-gradient(135deg,#153538ba,#121c2bef)}.sector:nth-child(2){--sector:#a6c4ff;background:linear-gradient(135deg,#1c3455c9,#121c2bef)}.sector:nth-child(3){--sector:#f1bc77;background:linear-gradient(135deg,#433429c9,#121c2bef)}.sector:nth-child(4){--sector:#89d4e6;background:linear-gradient(135deg,#153c50c9,#121c2bef)}.sector:nth-child(5){--sector:#e2a2c1;background:linear-gradient(135deg,#402c44c9,#121c2bef)}.sector:nth-child(6){--sector:#b8a1ed;background:linear-gradient(135deg,#322e52c9,#121c2bef)}.sector:after{content:"";position:absolute;right:-45px;bottom:-95px;width:230px;height:230px;border:1px solid #ffffff0f;border-radius:50%;box-shadow:0 0 0 25px #ffffff03,0 0 0 50px #ffffff02;pointer-events:none}.sector:hover{border-color:var(--sector)}.sector-symbol{display:block;color:var(--sector);font-size:36px;line-height:1;margin-bottom:34px}.sector-count{position:absolute;top:26px;right:24px;font-size:9px;color:var(--sector)}.sector h3{font-size:21px;font-weight:400}.sector p{font-size:12px;margin-top:12px;max-width:85%;color:#b6c2d4}.sector-open{position:absolute;bottom:24px;right:25px;color:var(--sector)}
.process-links{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:20px}.process-links a{display:flex;justify-content:space-between;padding:14px 20px;border:1px solid #514364;background:#261f35b8;color:#d9c6f2;font-size:13px}.process-links a:nth-child(2){border-color:#3e6464;background:#1834319e;color:#abe1cf}.process-links a:nth-child(3){border-color:#684b4c;background:#38252a9e;color:#efb2aa}.process-links a:nth-child(4){border-color:#65533d;background:#342d209e;color:#f1d299}.process-links a:hover{border-color:#e5d3b5}
.journey-banner{position:relative;isolation:isolate;overflow:hidden;margin-top:65px;padding:55px 60px;min-height:350px;background:radial-gradient(ellipse at 76% 90%,#733f6366,transparent 60%),linear-gradient(135deg,#111e35,#251e37);border-color:#50465f}.journey-copy{position:relative;z-index:2;max-width:450px}.journey-copy h2{font-size:42px;font-weight:400;line-height:1.15}.journey-copy p:not(.eyebrow){margin:18px 0 24px;font-size:13px}.journey-planet{position:absolute;right:60px;top:70px;width:310px;height:310px;border-radius:50%;background:radial-gradient(circle at 32% 20%,#f6c7a0,#aa6377 30%,#553b61 57%,#171c33 76%);box-shadow:inset 3px 3px 18px #ffe5cc5c,0 0 100px #d390ba23;animation:planet-float 16s ease-in-out infinite}.journey-orbit{position:absolute;right:0;top:80px;width:440px;height:170px;border:1px solid #ecd4eb50;border-radius:50%;transform:rotate(-30deg)}.site-footer{padding-bottom:65px}
@media(max-width:1050px){.hero{min-height:560px;gap:25px}.hero h1{font-size:60px}.scanner{height:370px}.quick-search{grid-template-columns:1fr}.quick-search form{width:100%}.sector-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.journey-planet{right:-70px;opacity:.65}.journey-orbit{right:-120px}.journey-copy{max-width:60%}}
@media(max-width:700px){.hero{min-height:0;gap:35px}.hero h1{font-size:58px}.scanner{height:340px}.quick-search{padding:22px 18px;gap:18px}.quick-search h2{font-size:24px}.quick-search form{flex-wrap:wrap}.quick-search input{flex-basis:100%}.quick-search .button{width:100%}.sector-grid{grid-template-columns:1fr}.process-links{grid-template-columns:repeat(2,1fr)}.journey-banner{padding:30px 24px;min-height:440px}.journey-copy{max-width:100%}.journey-copy h2{font-size:34px}.journey-planet{top:245px;width:210px;height:210px;right:-20px;opacity:.6}.journey-orbit{top:300px;right:-70px;width:300px;height:110px}.motion-toggle{font-size:9px;right:10px;bottom:10px}}
@media(max-width:380px){.hero h1{font-size:clamp(34px,12vw,48px)}.scanner{height:270px}.quick-links>.mono{width:100%}.process-links{grid-template-columns:1fr}.journey-copy h2{font-size:28px}}
@media(prefers-reduced-motion:reduce){.space-scene *,.scanner,.scanner *,.journey-planet{animation:none!important}.shooting-star{display:none}}

/* Shared, persistent space backdrop on every page, including HTMX navigation. */
.stars{inset:-600px}.stars-far{animation:stars-far-travel 70s linear infinite;opacity:.65}.stars-mid{animation:stars-mid-travel 42s linear infinite;opacity:.8}.stars-near{animation:stars-near-travel 28s linear infinite;opacity:.85}
@keyframes stars-far-travel{to{transform:translate3d(-281px,251px,0)}}
@keyframes stars-mid-travel{to{transform:translate3d(-397px,337px,0)}}
@keyframes stars-near-travel{to{transform:translate3d(-557px,463px,0)}}
.shooting-star{animation-duration:11s}.shooting-star.second{animation-duration:16s;animation-delay:5s}
.space-world{position:absolute;pointer-events:none;animation:world-drift 24s ease-in-out infinite alternate;will-change:transform}
.space-world .world-surface{position:absolute;inset:0;border-radius:50%;overflow:hidden}
.world-blue{width:245px;height:245px;right:-55px;top:110px;opacity:.75}
.world-blue .world-surface{background:radial-gradient(circle at 28% 22%,#b8dfde,#4f8aaf 22%,#31436e 50%,#111a35 72%);box-shadow:inset 3px 2px 12px #b2eafc80,0 0 50px #518bcd25}
.world-blue .world-surface:after{content:"";position:absolute;inset:-25%;border-radius:50%;background:repeating-linear-gradient(12deg,transparent 0 18px,#c0ebf611 19px 25px,transparent 26px 35px);transform:rotate(-24deg)}
.world-amber{width:150px;height:150px;left:-45px;bottom:12%;opacity:.75;animation-duration:32s;animation-delay:-12s}
.world-amber .world-surface{background:radial-gradient(circle at 30% 20%,#f8d6a7,#b97978 30%,#63496c 53%,#191c33 76%);box-shadow:inset 2px 3px 10px #ffdabb66,0 0 55px #e6957630}
.world-ring{position:absolute;inset:31% -45%;border:9px solid #c4a7ba50;border-top-color:#efd5bb70;border-bottom-color:#78658566;border-radius:50%;transform:rotate(-28deg);box-shadow:0 0 0 3px #dab6c51a,0 0 0 8px #dab6c50d}
.world-moon{width:44px;height:44px;left:35%;top:105px;opacity:.65;animation-duration:38s;animation-delay:-8s}
.world-moon .world-surface{background:radial-gradient(circle at 25% 25%,#d9d2c4,#7e8590 35%,#1d2739 75%);box-shadow:0 0 20px #b5c3d010}
@keyframes world-drift{from{transform:translate3d(0,0,0) rotate(-5deg)}to{transform:translate3d(-25px,38px,0) rotate(7deg)}}
.page-intro{position:relative;text-shadow:0 2px 18px #07101b}.space-scene{contain:strict}
@media(max-width:700px){.world-blue{width:150px;height:150px;right:-75px;top:120px;opacity:.6}.world-amber{width:110px;height:110px;left:-65px;bottom:20%;opacity:.6}.world-moon{width:28px;height:28px;left:58%;top:92px;opacity:.5}}
@media(prefers-reduced-motion:reduce){.space-scene *{animation:none!important}}

/* Calm, layered space: only transforms and opacity animate. */
.space-scene{background:radial-gradient(ellipse at 85% 15%,#18304955,transparent 52%),linear-gradient(145deg,#070f1c,#11172a 70%,#1c172b)}
.nebula{filter:none;opacity:.32;will-change:auto}
.nebula-blue{background:radial-gradient(ellipse,#377f9f48,transparent 66%)}
.nebula-red{background:radial-gradient(ellipse,#7760ad42,transparent 66%)}
.stars-far{animation-duration:180s;opacity:.45}
.stars-mid{animation-duration:110s;opacity:.65}
.stars-near{animation:stars-near-travel 70s linear infinite,star-shimmer 9s ease-in-out infinite alternate;opacity:.65}
@keyframes star-shimmer{from{opacity:.45}to{opacity:.75}}
.shooting-star{animation-duration:32s}.shooting-star.second{animation-duration:47s;animation-delay:18s}
.space-world{animation-duration:65s}.world-amber{opacity:.32;animation-duration:85s}.world-moon{animation-duration:90s}
body:has([data-page="home"]) .world-blue{width:clamp(190px,23vw,360px);height:clamp(190px,23vw,360px);right:-150px;top:260px;opacity:.42}
body:has([data-page="home"]) .world-moon{left:auto;right:24%;top:150px;opacity:.65}
body:has([data-page="home"]) .hero-copy{text-shadow:0 2px 20px #070f1c}
body:has([data-page="home"]) .hero-description{max-width:470px}
body:has([data-page="home"]) .scanner{box-shadow:none}
.tool-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.tool-card{display:block;overflow:hidden;border-radius:16px;background:linear-gradient(140deg,#112838ed,#191b31f2);transition:border-color .2s,box-shadow .2s}
.tool-card:hover{border-color:#93e7f17a;box-shadow:0 0 30px #8adfff0c}
.tool-preview{height:190px;position:relative;overflow:hidden;border-bottom:1px solid #9ae2ee24;background:radial-gradient(ellipse at center,#29667b22,transparent 70%),#081421}
.tool-preview>span{position:absolute;bottom:14px;left:24px;color:#a8cddb;font-size:9px;letter-spacing:.14em}
.tool-preview svg{position:absolute;inset:0;width:100%;height:100%;fill:#9beaff;stroke:#9beaff;stroke-width:1.5}
.galaxy-preview svg path{fill:none;stroke:#ffd394;stroke-width:1.6}
.preview-galaxy{position:absolute;width:280px;height:140px;left:50%;top:45%;transform:translate(-50%,-50%) rotate(-23deg);border-radius:50%;background:radial-gradient(ellipse,#fff4d8 0%,#d3b1ed66 7%,transparent 18%),repeating-conic-gradient(from 25deg,#8ccddd00 0deg 35deg,#8ccddd35 50deg,#bc9aed44 65deg,#8ccddd00 90deg);mask-image:radial-gradient(ellipse,#000 15%,transparent 70%)}
.ship-preview svg{fill:#9adaff08;stroke:#b5c5f4;stroke-width:1.3}.ship-preview svg ellipse{stroke:#86c4d733;fill:none}
.tool-copy{padding:25px}.tool-copy h3{font-size:27px;margin:14px 0 12px;font-weight:400}.tool-copy p{font-size:13px;color:#b5c8d5;max-width:430px}.tool-copy .destination-link{display:block;margin-top:24px;color:#b5efff}
.recipe-shortcut-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.recipe-shortcut-grid>a{padding:24px;border-radius:12px;background:#101f30ee;border-top:2px solid #89d6e0}
.recipe-shortcut-grid>a:nth-child(2){border-top-color:#c4acf3}.recipe-shortcut-grid>a:nth-child(3){border-top-color:#efc595}
.recipe-shortcut-grid h3{font-size:21px;font-weight:400;display:flex;justify-content:space-between}.recipe-shortcut-grid p{margin-top:12px;font-size:12px;color:#b5c8d5}
.recipe-shortcut-grid a:hover{background:#183247ee}
.tool-card:focus-visible,.recipe-shortcut-grid a:focus-visible{outline:2px solid #adebff;outline-offset:4px}
@media(max-width:700px){.tool-grid,.recipe-shortcut-grid{grid-template-columns:1fr}.tool-preview{height:165px}.tool-copy{padding:22px}.hero-actions{gap:18px;flex-wrap:wrap}body:has([data-page="home"]) .world-blue{right:-120px;top:430px;opacity:.3}body:has([data-page="home"]) .world-moon{right:12%;top:140px;width:30px;height:30px}}
@media(prefers-reduced-motion:reduce){.space-scene *{animation:none!important}.tool-card{transition:none}}



/* Photorealistic planet atlas; each quadrant is a separate transparent globe. */
.scanner .planet,.world-blue .world-surface,.world-amber .world-surface,.world-moon .world-surface,.journey-planet{background-image:url('/assets/planet-atlas-v1.png');background-size:200% 200%;background-repeat:no-repeat;background-color:transparent;background-blend-mode:normal;border-radius:0;box-shadow:none;overflow:visible}
.scanner .planet{background-position:0 0}
.scanner .planet-lines,.world-blue .world-surface:after{display:none}
.world-blue .world-surface{background-position:0 0}
.journey-planet{background-position:100% 0}
.world-amber .world-surface{background-position:0 100%}
.world-moon .world-surface{background-position:100% 100%}
.world-ring,.journey-orbit{display:none}

/* Slow orbital float and occasional distant traffic; compositor-only motion. */
.space-scene .world-blue{animation:planet-hover 19s ease-in-out infinite;animation-delay:-5s}
.space-scene .world-amber{animation:planet-hover 25s ease-in-out infinite;animation-delay:-14s}
.space-scene .world-moon{animation:planet-hover 29s ease-in-out infinite;animation-delay:-9s}
@keyframes planet-hover{0%,100%{transform:translate3d(0,0,0)}50%{transform:translate3d(-10px,-22px,0)}}
.journey-planet{animation:planet-float 15s ease-in-out infinite}
.space-scene .stars-far{animation-duration:95s}
.space-scene .stars-mid{animation-duration:60s}
.space-scene .stars-near{animation-duration:38s,9s}
.ship-flyby{position:absolute;left:0;top:22%;width:92px;height:30px;pointer-events:none;opacity:0;animation:ship-pass 56s linear infinite;will-change:transform,opacity}
.ship-flyby svg{display:block;width:100%;height:100%;overflow:visible}
.ship-hull{fill:#7892a5;stroke:#c6e3eb;stroke-width:.7}
.ship-canopy{fill:#b9edff}
.ship-exhaust{fill:#8ce3ff;opacity:.55}
.flyby-two{top:62%;width:62px;height:20px;animation-name:ship-return;animation-duration:73s;animation-delay:-27s;--ship-rise:55px}
.flyby-two svg{transform:scaleX(-1)}
.flyby-two .ship-exhaust{fill:#d8b9ff}
.flyby-three{top:83%;width:43px;height:14px;animation-duration:89s;animation-delay:-49s;--ship-rise:-55px}
@keyframes ship-pass{0%{opacity:0;transform:translate3d(-170px,0,0)}3%{opacity:1}36%{opacity:1}40%,100%{opacity:0;transform:translate3d(calc(100vw + 170px),var(--ship-rise,-110px),0)}}
@keyframes ship-return{0%{opacity:0;transform:translate3d(calc(100vw + 170px),0,0)}3%{opacity:1}36%{opacity:1}40%,100%{opacity:0;transform:translate3d(-170px,var(--ship-rise,55px),0)}}
@media(max-width:700px){.ship-flyby{width:62px;height:20px}.flyby-two{width:44px;height:14px}.flyby-three{display:none}}
@media(prefers-reduced-motion:reduce){.space-scene .space-world,.space-scene .stars,.journey-planet{animation:none!important}.ship-flyby{display:none}}

/* Detailed raster spacecraft replace the placeholder silhouettes. */
.space-scene .flyby-one{width:180px;height:56.25px}
.space-scene .flyby-two{width:140px;height:42.66px}
.space-scene .flyby-three{width:112px;height:42.88px}
.flyby-art{display:block;width:100%;height:100%;background-image:url('/assets/ship-flybys-v1.png');background-repeat:no-repeat}
.flyby-one .flyby-art{background-size:100% 320%;background-position:0 0}
.flyby-two .flyby-art{background-size:100% 328.205%;background-position:0 44.944%;transform:scaleX(-1)}
.flyby-three .flyby-art{background-size:100% 261.224%;background-position:0 100%}
@media(max-width:700px){.space-scene .flyby-one{width:128px;height:40px}.space-scene .flyby-two{width:100px;height:30.47px}}

/* Layered engine light stays anchored to each moving ship. */
.ship-propulsion{position:absolute;left:14%;top:55%;width:1px;height:1px;--exhaust:#66cfff;--exhaust-soft:#50a9ff66;pointer-events:none}
.flyby-two .ship-propulsion{left:97%;top:40%;transform:scaleX(-1);--exhaust:#b8a2ff;--exhaust-soft:#a180ff66}
.flyby-three .ship-propulsion{left:4%;top:39%;--exhaust:#ffbb70;--exhaust-soft:#ff965066}
.engine-plume,.engine-core,.engine-trail{position:absolute;right:0;top:0;display:block;transform-origin:right center;pointer-events:none}
.engine-plume{width:44px;height:13px;margin-top:-6.5px;border-radius:100% 25% 25% 100%;background:radial-gradient(ellipse at 98% 50%,#fffbeeee 0 8%,var(--exhaust) 22%,var(--exhaust-soft) 48%,transparent 73%);filter:blur(.5px);animation:engine-flicker .17s ease-in-out infinite alternate}
.engine-core{width:9px;height:6px;margin-top:-3px;border-radius:50%;background:#f1fcff;box-shadow:0 0 5px 2px var(--exhaust),0 0 13px var(--exhaust-soft);opacity:.9}
.engine-trail{width:145px;height:3px;margin-top:-1.5px;background:linear-gradient(90deg,transparent,var(--exhaust-soft) 55%,var(--exhaust));border-radius:100% 0 0 100%;box-shadow:0 0 5px var(--exhaust-soft);opacity:.6}
.engine-trail:after{content:'';position:absolute;inset:-3px 0;background:linear-gradient(90deg,transparent 20%,var(--exhaust-soft));clip-path:polygon(0 48%,100% 10%,100% 90%,0 52%);opacity:.4}
.flyby-art{position:relative;z-index:1}
.flyby-two .engine-plume{width:33px;height:10px;margin-top:-5px;animation-delay:-.08s}
.flyby-two .engine-trail{width:105px;opacity:.45}
.flyby-three .engine-plume{width:23px;height:8px;margin-top:-4px;animation-duration:.23s}
.flyby-three .engine-core{width:5px;height:4px;margin-top:-2px}
.flyby-three .engine-trail{width:75px;opacity:.35}
@keyframes engine-flicker{from{transform:scaleX(.84) scaleY(.9);opacity:.72}to{transform:scaleX(1.12) scaleY(1.08);opacity:1}}
@media(prefers-reduced-motion:reduce){.engine-plume{animation:none}}

.distant-station{position:absolute;left:18%;right:auto;top:24%;width:clamp(145px,17vw,245px);aspect-ratio:3/2;background:url('/assets/orbital-station-v1.png') center/contain no-repeat;opacity:.72;mask-image:radial-gradient(ellipse,#000 43%,#000b 60%,transparent 74%);animation:station-drift 17s ease-in-out infinite;pointer-events:none}
@keyframes station-drift{0%,100%{transform:translate3d(0,0,0) rotate(-3deg)}50%{transform:translate3d(-14px,-26px,0) rotate(2deg)}}
.ship-flyby.hyper-flight{animation-name:ship-hyper-pass}
.ship-flyby.flyby-two.hyper-flight{animation-name:ship-hyper-return}
.ship-flyby.hyper-flight .engine-trail{width:230px;opacity:.8}
.ship-flyby.hyper-flight .engine-core{box-shadow:0 0 7px 3px var(--exhaust),0 0 18px var(--exhaust-soft)}
@keyframes ship-hyper-pass{0%{opacity:0;transform:translate3d(-170px,0,0)}3%{opacity:1}17%{opacity:1;transform:translate3d(42vw,-40px,0) scaleX(1)}17.5%{opacity:1;transform:translate3d(45vw,-43px,0) scaleX(1.2)}18.4%{opacity:1;transform:translate3d(calc(100vw + 300px),-80px,0) scaleX(3)}19%,100%{opacity:0;transform:translate3d(calc(100vw + 400px),-85px,0)}}
@keyframes ship-hyper-return{0%{opacity:0;transform:translate3d(calc(100vw + 170px),0,0)}3%{opacity:1}17%{opacity:1;transform:translate3d(48vw,20px,0) scaleX(1)}17.5%{opacity:1;transform:translate3d(45vw,22px,0) scaleX(1.2)}18.4%{opacity:1;transform:translate3d(-400px,50px,0) scaleX(3)}19%,100%{opacity:0;transform:translate3d(-500px,55px,0)}}
@media(max-width:700px){.distant-station{left:10%;right:auto;top:25%;width:125px;opacity:.55}}
@media(prefers-reduced-motion:reduce){.distant-station{animation:none}.ship-flyby.hyper-flight{display:none}}

.motion-paused .ship-flyby{display:none}
.scanner[data-scene="1"] .planet{background-position:100% 0}
.scanner[data-scene="2"] .planet{background-position:0 100%}
.scanner[data-scene="3"] .planet{background-position:100% 100%}

/* Uppisaa joins the homepage sky; visibility follows HTMX navigation. */
.space-scene .world-uppisaa{display:block;width:clamp(180px,18vw,290px);height:clamp(180px,18vw,290px);left:-30px;top:105px;opacity:.65;animation:planet-hover 23s ease-in-out infinite;animation-delay:-8s}
.world-uppisaa img{display:block;width:100%;height:100%;object-fit:contain;filter:brightness(.72)}
@media(max-width:700px){.space-scene .world-uppisaa{width:155px;height:155px;left:-70px;top:110px;opacity:.32}}
@media(prefers-reduced-motion:reduce){.space-scene .world-uppisaa{animation:none!important}}
