:root{--ink:#061018;--steel:#6B858C;--paper:#E8ECE9;--signal:#E45C2A;--scroll:0}*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--ink)}body{margin:0;background:var(--ink);color:var(--paper);font-family:"IBM Plex Sans",sans-serif;font-weight:300}a{color:inherit}.skip-link{position:fixed;left:1rem;top:-5rem;z-index:20;background:var(--paper);color:var(--ink);padding:.8rem 1rem}.skip-link:focus{top:1rem}.site-header{position:fixed;z-index:10;top:0;left:0;width:100%;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:1.2rem 2rem;border-bottom:1px solid rgba(232,236,233,.25);mix-blend-mode:difference}.site-header .mark{font:500 1rem "IBM Plex Mono";text-decoration:none;letter-spacing:.18em}.mark span{color:var(--signal)}.site-header p{margin:0;font:400 .66rem "IBM Plex Mono";letter-spacing:.12em;text-transform:uppercase}.site-header>a:last-child{justify-self:end;font:500 .68rem "IBM Plex Mono";letter-spacing:.1em;text-transform:uppercase;text-decoration:none;border-bottom:1px solid}.chapter{position:relative;min-height:100svh;overflow:hidden;border-bottom:1px solid rgba(107,133,140,.26)}#particle-field{position:fixed;inset:0;z-index:4;pointer-events:none;opacity:.45}.chapter-film{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;background:#0b151b}.shade{position:absolute;inset:0;background:rgba(3,10,15,.38)}.hero-copy{position:absolute;left:7vw;bottom:17vh;z-index:2}.eyebrow{font:500 .68rem "IBM Plex Mono";letter-spacing:.15em;text-transform:uppercase;color:var(--steel)}h1,h2,p{margin-top:0}.hero h1{font-size:clamp(5rem,14vw,13rem);line-height:.68;letter-spacing:-.075em;margin:.65em 0 .35em;font-weight:500}.hero h1 span{display:inline-block;color:transparent;-webkit-text-stroke:1px var(--paper);transform:translateX(calc(var(--scroll)*7vw))}.lede{font-size:clamp(1rem,1.5vw,1.35rem);line-height:1.45}.hero-readout{position:absolute;z-index:2;right:3vw;bottom:5vh;display:flex;gap:2rem;font:400 .65rem "IBM Plex Mono";letter-spacing:.12em}.hero-readout span{display:grid;gap:.4rem;color:var(--steel)}.hero-readout b{color:var(--paper);font-weight:400}.scroll-cue{position:absolute;z-index:2;left:7vw;bottom:5vh;text-decoration:none;font:500 .65rem "IBM Plex Mono";letter-spacing:.14em;text-transform:uppercase}.scroll-cue i{display:inline-block;width:4rem;border-top:1px solid var(--signal);margin:0 0 .2rem 1rem}.section-copy h2,.planner h2{font-size:clamp(3.4rem,7vw,7.5rem);line-height:.92;letter-spacing:-.055em;font-weight:400;margin:.25em 0}.section-copy>p:last-child,.planner-head>p:last-child{max-width:35rem;font-size:1.05rem;line-height:1.65;color:#b9c6c7}.descent{display:grid;align-items:center;padding:8rem 8vw}.descent .section-copy{max-width:55rem}.depth-scale{position:absolute;right:4vw;top:12vh;bottom:8vh;width:5rem;border-left:1px solid var(--steel);display:flex;flex-direction:column;justify-content:space-between;padding-left:1rem;color:var(--steel);font:400 .62rem "IBM Plex Mono"}.depth-scale span:before{content:"";display:block;width:.6rem;border-top:1px solid currentColor;position:absolute;left:0}.telemetry{position:absolute;right:13vw;bottom:8vh;width:min(25rem,33vw)}.telemetry p{display:flex;justify-content:space-between;border-top:1px solid rgba(107,133,140,.45);padding:.75rem 0;font:400 .68rem "IBM Plex Mono";text-transform:uppercase}.telemetry span{color:var(--steel)}.telemetry strong{font-weight:400}.sensing,.encounter{min-height:115svh}.on-film{position:absolute;z-index:2;left:7vw;bottom:10vh;max-width:58rem;padding:2rem;background:rgba(6,16,24,.72);border-left:2px solid var(--signal)}.film-caption{position:absolute;z-index:2;top:12vh;left:3vw;right:3vw;display:flex;justify-content:space-between;font:400 .62rem "IBM Plex Mono";letter-spacing:.12em;text-transform:uppercase}.array{padding:14vh 7vw;display:grid;grid-template-columns:1fr 1fr;gap:7vw;align-items:start}.instrument-list{list-style:none;margin:12vh 0 0;padding:0}.instrument-list li{display:grid;grid-template-columns:3rem 1fr auto;align-items:center;gap:1rem;border-top:1px solid rgba(107,133,140,.45);padding:1.3rem 0}.instrument-list span,.instrument-list small{font:400 .66rem "IBM Plex Mono";color:var(--steel)}.instrument-list strong{font-size:1.2rem;font-weight:400}.array-diagram{position:absolute;width:22vw;aspect-ratio:1;left:14vw;bottom:8vh;border:1px solid var(--steel);border-radius:50%}.array-diagram:before,.array-diagram:after{content:"";position:absolute;inset:20%;border:1px solid rgba(107,133,140,.7);border-radius:50%}.array-diagram:after{inset:40%}.array-diagram i{position:absolute;left:50%;top:50%;width:50%;transform-origin:left;border-top:1px solid var(--signal)}.array-diagram i:nth-child(2){transform:rotate(90deg)}.array-diagram i:nth-child(3){transform:rotate(180deg)}.array-diagram i:nth-child(4){transform:rotate(270deg)}.array-diagram b{position:absolute;inset:48%;background:var(--signal)}.fallback-caption{display:none}.video-error .chapter-film{display:none}.video-error{background-size:cover;background-position:center}.video-error .fallback-caption{display:block;position:absolute;right:2rem;bottom:2rem;z-index:3;font:400 .65rem "IBM Plex Mono"}.planner{padding:14vh 7vw 3rem;display:grid;grid-template-columns:minmax(18rem,.8fr) minmax(22rem,1fr) minmax(18rem,.7fr);gap:5vw;align-items:start}.planner-head p{max-width:30rem}.planner form{margin-top:5rem}.planner label,.planner legend{font:500 .66rem "IBM Plex Mono";letter-spacing:.12em;text-transform:uppercase}.planner form>label{display:grid;gap:.8rem;margin-bottom:2.5rem}.planner select{appearance:none;border:0;border-bottom:1px solid var(--steel);background:transparent;color:var(--paper);font:300 1.5rem "IBM Plex Sans";padding:.5rem 0}.planner input[type=range]{accent-color:var(--signal)}.planner output{color:var(--signal);font:500 .8rem "IBM Plex Mono"}.planner fieldset{border:0;padding:0;margin:0 0 2.5rem;display:grid;gap:1rem}.planner fieldset label{font-weight:400;color:#b9c6c7}.planner input[type=radio]{accent-color:var(--signal)}.form-actions{display:flex;gap:.75rem}.form-actions button{border:1px solid var(--signal);background:var(--signal);color:var(--ink);padding:.9rem 1rem;font:500 .68rem "IBM Plex Mono";text-transform:uppercase;letter-spacing:.08em}.form-actions button+button{background:transparent;color:var(--paper);border-color:var(--steel)}.mission-result{margin-top:5rem;border-top:2px solid var(--signal);padding-top:1rem}.mission-result>p{font:500 .65rem "IBM Plex Mono";text-transform:uppercase;color:var(--steel)}.mission-result>strong{font-size:clamp(1.5rem,2.5vw,2.5rem);font-weight:400}.mission-result dl{margin-top:3rem}.mission-result dl div{display:flex;justify-content:space-between;border-top:1px solid rgba(107,133,140,.4);padding:1rem 0}.mission-result dt{font:400 .65rem "IBM Plex Mono";text-transform:uppercase;color:var(--steel)}.mission-result dd{margin:0;font:400 1rem "IBM Plex Mono"}.planner footer{grid-column:1/-1;margin-top:10vh;padding-top:1.5rem;border-top:1px solid var(--steel);display:flex;justify-content:space-between;gap:2rem;font:400 .65rem "IBM Plex Mono"}.planner footer a{text-transform:uppercase;text-decoration:none}:focus-visible{outline:2px solid var(--signal);outline-offset:4px}@media(max-width:760px){.site-header{padding:1rem;grid-template-columns:1fr auto}.site-header p{display:none}.hero-copy{left:1.25rem;right:1.25rem;bottom:22vh}.hero h1{font-size:21vw}.hero-readout{left:1.25rem;right:1.25rem;bottom:5rem;gap:1rem;justify-content:space-between}.scroll-cue{display:none}.descent{padding:7rem 1.25rem 16rem}.depth-scale{right:1rem;opacity:.5}.telemetry{left:1.25rem;right:5rem;bottom:3rem;width:auto}.on-film{left:1.25rem;right:1.25rem;bottom:2rem;padding:1rem}.section-copy h2,.planner h2{font-size:13vw}.array{padding:7rem 1.25rem;display:block}.instrument-list{margin-top:4rem}.instrument-list li{grid-template-columns:2rem 1fr}.instrument-list small{grid-column:2}.array-diagram{display:none}.planner{padding:7rem 1.25rem 2rem;display:block}.planner form,.mission-result{margin-top:4rem}.planner footer{margin-top:5rem;display:block;line-height:1.5}.chapter-film{object-position:center}.hero .chapter-film{object-position:58% center}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.hero h1 span{transform:none}.chapter-film{display:none}.chapter{background:#061018}.sensing{background:url("media/vz-02.webp") center/cover no-repeat}.encounter{background:url("media/vz-03.webp") center/cover no-repeat}#particle-field{display:none}}

.motion-toggle{position:fixed;z-index:15;right:1rem;bottom:1rem;display:flex;align-items:center;gap:.55rem;border:1px solid rgba(232,236,233,.5);border-radius:999px;background:#061018;color:var(--paper);padding:.65rem .85rem;font:500 .62rem "IBM Plex Mono";letter-spacing:.1em;text-transform:uppercase}.motion-toggle span{width:.5rem;height:.5rem;border-radius:50%;background:var(--signal);box-shadow:0 0 0 .2rem rgba(228,92,42,.18)}.motion-toggle b{font:inherit}.motion-toggle[aria-pressed="false"] span{background:var(--steel);box-shadow:none}@media(prefers-reduced-motion:reduce){html[data-motion="on"] .chapter-film{display:block}}

/* Local system stacks keep the review route free of third-party font requests. */
body{font-family:system-ui,-apple-system,"Segoe UI",sans-serif}.site-header .mark,.site-header p,.site-header>a:last-child,.eyebrow,.hero-readout,.scroll-cue,.depth-scale,.telemetry p,.film-caption,.instrument-list span,.instrument-list small,.planner label,.planner legend,.planner output,.mission-result>p,.mission-result dt,.mission-result dd,.planner footer,.form-actions button,.motion-toggle{font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.planner select,.planner input[type=range]{min-height:44px}.form-actions button,.motion-toggle{min-height:44px}html[data-motion="off"] .chapter-film{display:none}html[data-motion="off"] .hero{background:#061018 url("media/vz-01.webp") center/cover no-repeat}html[data-motion="off"] .sensing{background:#061018 url("media/vz-02.webp") center/cover no-repeat}html[data-motion="off"] .encounter{background:#061018 url("media/vz-03.webp") center/cover no-repeat}
