/* Transparent controls projected into the one persistent WebGL world. */
.systems-galaxy { display: none; }
.nebula-journey.is-enhanced .systems-galaxy.is-active { display: block; position: absolute; inset: 0; pointer-events: auto; }
.galaxy-scroll { position: absolute; inset: 0; overflow-x: clip; overflow-y: auto; overscroll-behavior: contain; scrollbar-width: none; outline: none; }
.galaxy-scroll::-webkit-scrollbar { display: none; }
.galaxy-scroll-distance { height: 260svh; pointer-events: none; }
.galaxy-ui { position: sticky; top: 0; height: 100svh; min-height: 0; pointer-events: none; color: #e8edf2; }
.nebula-journey .galaxy-return { position: absolute; top: 110px; left: 5vw; font: 12px Archivo,sans-serif; color: #a8bacb; display: flex; align-items: center; gap: 13px; min-height: 36px; pointer-events: auto; }
.galaxy-return:hover { color: white; }
.galaxy-intro { position: absolute; left: 50%; top: 48%; width: min(800px,86vw); transform: translate(-50%,-50%); text-align: center; opacity: 0; }
.galaxy-kicker { color: #a6baca; font: 10px/1.4 'IBM Plex Mono',monospace; letter-spacing: .06em; margin: 0 0 30px; }
.galaxy-intro h2 { font: 300 clamp(45px,5.7vw,86px)/1.06 Sora,Arial,sans-serif; letter-spacing: -.055em; margin: 0 0 26px; }
.galaxy-intro h2 em { font: italic 400 1.16em/.95 'Instrument Serif',Georgia,serif; color: #d3e5f0; letter-spacing: -.025em; }
.galaxy-intro > p:last-child { color: #b0c0ce; font: 400 clamp(14px,1.3vw,18px)/1.7 Archivo,sans-serif; margin: 0; }
.galaxy-topics { position: absolute; inset: 0; pointer-events: none; }
.nebula-journey .galaxy-topic { position: absolute; padding: 24px 18px 15px; transform: translate(-50%,0); display: flex; flex-direction: column; align-items: center; gap: 6px; pointer-events: auto; text-align: center; color: #d8e4ed; white-space: nowrap; text-shadow: 0 2px 10px #000; min-width: 130px; }
.galaxy-topic span { font: 300 clamp(17px,1.7vw,25px)/1.25 Sora,sans-serif; letter-spacing: -.04em; }
.galaxy-topic small { font: 12px/1.4 Archivo,sans-serif; color: #8fa9be; opacity: 0; transition: opacity 180ms ease; }
.galaxy-topic:is(:hover,:focus-visible) { color: white; }
.galaxy-topic:is(:hover,:focus-visible) small { opacity: 1; }
.galaxy-cue { position: absolute; bottom: 6vh; left: 50%; transform: translateX(-50%); display: flex; flex-direction: column; align-items: center; gap: 14px; color: #a3b7ca; font: 11px Archivo,sans-serif; white-space: nowrap; }
.galaxy-cue__line { height: 36px; width: 1px; background: linear-gradient(transparent,#abc8df); transform: scaleY(var(--galaxy-cue-progress,1)); transform-origin: top; }
.galaxy-topic-reading { position: absolute; inset: 155px 10vw 40px auto; width: min(590px,48vw); overflow: auto; pointer-events: auto; scrollbar-width: thin; scrollbar-color: #879fb044 transparent; padding: 0 15px 24px 0; }
.nebula-journey .galaxy-topic-back { display: inline-flex; align-items: center; min-height: 36px; font: 12px Archivo,sans-serif; color: #9cb6ca; margin-bottom: 25px; }
.galaxy-topic-reading .galaxy-kicker { color: #8bbada; margin-bottom: 15px; }
.galaxy-topic-reading h3 { font: 300 clamp(35px,3.4vw,53px)/1.08 Sora,sans-serif; letter-spacing: -.045em; color: #e4edf3; margin: 0 0 28px; }
.galaxy-topic-reading h3 em { font: italic 400 1.2em/.95 'Instrument Serif',Georgia,serif; color: #a9d0e6; }
.galaxy-topic-reading article > p:not(.galaxy-kicker) { font: 15px/1.8 Archivo,sans-serif; color: #b3c6d5; max-width: 53ch; margin: 0 0 26px; }
.galaxy-use-cases { margin: 30px 0; }
.galaxy-use-cases > div { display: grid; grid-template-columns: 95px 1fr; gap: 24px; padding: 13px 0; border-top: 1px solid #85a8c62b; }
.galaxy-use-cases dt { font: 12px/1.5 Archivo,sans-serif; color: #d4b6bd; }
.galaxy-use-cases dd { font: 13px/1.6 Archivo,sans-serif; margin: 0; color: #a4bbcb; }
.galaxy-workflow { display: flex; align-items: center; justify-content: space-between; gap: 10px; padding: 28px 0; margin: 25px 0; border-block: 1px solid #85a8c62b; }
.galaxy-workflow > span { color: #cee0eb; font: 16px Archivo,sans-serif; }
.galaxy-workflow small { display: block; color: #839fb4; font: 10px Archivo,sans-serif; margin-top: 10px; }
.galaxy-workflow i { color: #99a3b9; font-style: normal; }
.nebula-journey .galaxy-contact { color: #d5e6ef; font: 13px Archivo,sans-serif; display: flex; gap: 40px; width: max-content; padding: 12px 0; border-bottom: 1px solid #789aad77; }
.galaxy-contact:hover { color: white; }
.galaxy-environments { margin: 28px 0; }
.galaxy-environments > div { display: flex; flex-wrap: wrap; gap: 8px 20px; }
.galaxy-environments button { border: 0; border-bottom: 1px solid #7193ad33; background: none; color: #829fb4; font: 12px Archivo,sans-serif; padding: 9px 0; cursor: pointer; }
.galaxy-environments button[aria-pressed=true] { color: #d9e9f3; border-color: #b8d7e8; }
.galaxy-environments > p { min-height: 3.8em; font: 13px/1.7 Archivo,sans-serif; color: #abc3d3; }
.nebula-journey.is-systems-flight .experience--systems { display: none; }
body:has(.nebula-journey.is-enhanced.is-active.is-systems-flight[data-view="arrival"]) .bar::before { opacity: 0; }
@media (max-width:700px) {
 .nebula-journey .galaxy-return { top: 88px; left: 22px; font-size: 11px; }
 .galaxy-intro { top: 45%; width: 86vw; }
 .galaxy-intro h2 { font-size: 44px; }
 .galaxy-intro .galaxy-kicker { font-size: 9px; margin-bottom: 26px; }
 .galaxy-desktop-break { display: none; }
 .galaxy-topic span { font-size: 15px; }
 .galaxy-topic small { display: none; }
 .nebula-journey .galaxy-topic { min-width: 110px; padding: 20px 8px 14px; }
 .galaxy-cue { bottom: 8vh; }
 .galaxy-topic-reading { inset: 145px 24px 25px; width: auto; padding: 0 0 24px; }
 .galaxy-topic-reading h3 { font-size: 37px; }
 .galaxy-topic-reading article > p:not(.galaxy-kicker) { font-size: 14px; }
 .galaxy-use-cases > div { gap: 15px; grid-template-columns: 80px 1fr; }
 .galaxy-workflow > span { font-size: 14px; }
 .galaxy-workflow small { font-size: 9px; }
}
@media (prefers-reduced-motion:reduce) { .systems-galaxy { display: none !important; } }
