/* MINESPACE / ENTRANCE / cinematic shell over original v2.1 Mission Zero WebGL. */
html,body.entrance-page{height:100%;height:100dvh;overflow:hidden!important;background:#000}
body.entrance-page .screen{height:100vh;height:100dvh;min-height:0;max-height:none;background:#020306}
body.entrance-page .screen > :not(#stars):not(#gl):not(#fx):not(.filmgrain):not(.vignette):not(#entranceRoot){display:none!important}
body.entrance-page > .overlay,body.entrance-page > .notify{display:none!important}
body.entrance-page .screen .vignette{background:linear-gradient(90deg,rgba(1,2,5,.22),rgba(2,3,6,.02) 36%,rgba(0,0,0,.03) 66%,rgba(1,2,5,.17)),linear-gradient(0deg,rgba(1,2,5,.63),transparent 25%,transparent 80%,rgba(1,2,5,.37));z-index:3}
body.entrance-page .screen .filmgrain{opacity:.10;z-index:4}
.entrance-root{position:absolute;inset:0;z-index:50;isolation:isolate;overflow:hidden;display:grid;place-items:center;color:#f8f9fb;pointer-events:none}
.entry-shade{position:absolute;inset:0;pointer-events:none;background:radial-gradient(ellipse at 49% 48%,rgba(1,2,5,.33),rgba(1,2,5,.07) 34%,transparent 59%),linear-gradient(0deg,rgba(0,0,0,.30),transparent 20%);z-index:1}
.entry-film{position:absolute;inset:0;z-index:1;pointer-events:none;background:radial-gradient(ellipse at 100% 40%,rgba(228,238,255,.03),transparent 38%)}
.entry-curtain{position:absolute;inset:0;z-index:50;background:#000;opacity:1;transition:opacity 2.55s cubic-bezier(.16,.62,.28,1);pointer-events:none}
.entrance-root.is-live .entry-curtain{opacity:0}
.entry-brand{position:absolute;z-index:10;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:0;opacity:0;transform:translateY(18px) scale(.985);filter:blur(9px);transition:opacity 1.55s cubic-bezier(.2,.8,.2,1),transform 1.8s cubic-bezier(.2,.8,.2,1),filter 1.65s;pointer-events:none;text-shadow:0 7px 40px #000}
.entrance-root.brand-in .entry-brand{opacity:1;transform:translateY(0) scale(1);filter:blur(0)}
.entrance-root.brand-out .entry-brand{opacity:0;transform:translateY(-15px) scale(1.02);filter:blur(13px);transition-duration:1.0s}
.entry-mark{display:block;width:clamp(63px,7.5vw,110px);height:clamp(63px,7.5vw,110px);color:white;filter:drop-shadow(0 4px 26px rgba(255,255,255,.18))}
.entry-wordmark{font-size:clamp(28px,4.5vw,60px);letter-spacing:clamp(.33em,1.1vw,.49em);padding-left:.35em;line-height:1.4;font-weight:550;margin-top:25px}
.entry-brand-line{width:38px;height:1px;background:rgba(255,255,255,.55);margin:31px 0 26px}
.entry-division{font-size:clamp(9px,.8vw,12px);font-weight:500;letter-spacing:.34em;word-spacing:.22em;color:rgba(247,248,250,.84)}
.entry-destination{z-index:15;position:relative;display:flex;flex-direction:column;align-items:center;gap:30px;opacity:0;transform:translateY(25px) scale(.988);filter:blur(12px);transition:opacity 1.35s cubic-bezier(.22,1,.36,1),transform 1.5s cubic-bezier(.22,1,.36,1),filter 1.4s;pointer-events:none;width:min(100% - 36px,538px)}
.entrance-root.gate-in .entry-destination{opacity:1;transform:translateY(0) scale(1);filter:blur(0);pointer-events:auto}
.entry-gate-brand{display:flex;flex-direction:column;align-items:center;gap:8px;color:#fff;text-shadow:0 3px 28px #000}
.entry-gate-brand .entry-mark{width:48px;height:48px}
.entry-gate-brand>span{font-size:20px;font-weight:550;letter-spacing:.48em;padding-left:.48em}
.entry-glass{width:100%;padding:36px 34px 25px;border:1px solid rgba(255,255,255,.31);background:linear-gradient(135deg,rgba(11,13,17,.80),rgba(9,11,15,.58));box-shadow:0 35px 90px rgba(0,0,0,.43),inset 0 1px rgba(255,255,255,.055);backdrop-filter:blur(24px) saturate(1.08);-webkit-backdrop-filter:blur(24px) saturate(1.08)}
.entry-overline{display:flex;align-items:center;justify-content:center;gap:13px;white-space:nowrap;color:rgba(255,255,255,.85);font-size:9px;letter-spacing:.35em;font-weight:650;margin-bottom:26px}
.entry-overline-bar{height:1px;width:15px;background:rgba(255,255,255,.48)}
.entry-choice-list{display:grid;gap:10px}
.entry-choice{position:relative;overflow:hidden;display:grid;grid-template-columns:1fr auto;grid-template-rows:auto auto;align-items:center;gap:4px 10px;min-height:79px;padding:15px 18px 14px;text-decoration:none;color:#fff;border:1px solid rgba(255,255,255,.35);background:rgba(255,255,255,.025);transition:border-color .4s,background .4s,transform .4s,box-shadow .4s}
.entry-choice:before{content:"";position:absolute;inset:0;background:linear-gradient(105deg,transparent 20%,rgba(255,255,255,.09) 49%,transparent 77%);transform:translateX(-105%);transition:transform .8s cubic-bezier(.22,1,.36,1);pointer-events:none}
.entry-choice:hover:before,.entry-choice:focus-visible:before{transform:translateX(105%)}
.entry-choice:hover,.entry-choice:focus-visible{border-color:rgba(255,255,255,.96);background:rgba(255,255,255,.09);transform:translateY(-2px);box-shadow:0 0 40px rgba(255,255,255,.07)}
.entry-choice:focus-visible{outline:2px solid #fff;outline-offset:4px}
.entry-choice-primary{border-color:rgba(255,255,255,.77);box-shadow:inset 0 0 14px rgba(255,255,255,.035),0 0 27px rgba(255,255,255,.055)}
.entry-choice-index{grid-column:1;grid-row:1;font-size:8px;line-height:1.6;letter-spacing:.24em;color:rgba(245,248,255,.65)}
.entry-choice-main{grid-column:1;grid-row:2;font-weight:700;font-size:clamp(11px,1.03vw,13px);letter-spacing:.19em;white-space:nowrap}
.entry-choice-dot{opacity:.42;margin:0 3px}
.entry-choice-arrow{grid-column:2;grid-row:1 / span 2;font-size:23px;font-weight:350;line-height:1;transition:transform .4s}
.entry-choice:hover .entry-choice-arrow,.entry-choice:focus-visible .entry-choice-arrow{transform:translate(3px,-3px)}
.entry-gate-foot{margin-top:22px;border-top:1px solid rgba(255,255,255,.19);padding-top:17px;display:flex;justify-content:space-between;font-size:8px;letter-spacing:.20em;color:rgba(245,248,253,.67)}
.entry-frame-label{position:absolute;z-index:2;top:clamp(22px,5vh,57px);left:clamp(22px,4vw,64px);right:clamp(22px,4vw,64px);display:flex;justify-content:space-between;align-items:center;font-size:9px;letter-spacing:.25em;color:rgba(255,255,255,.56);text-shadow:0 1px 15px #000;opacity:0;transition:opacity 1s}
.entrance-root.gate-in .entry-frame-label{opacity:1}
.entry-disclosure{position:absolute;z-index:2;bottom:clamp(17px,3.5vh,38px);margin:0;padding:0 18px;text-align:center;font-size:8px;letter-spacing:.15em;color:rgba(255,255,255,.58);text-shadow:0 2px 10px #000;opacity:0;transition:opacity 1s}
.entrance-root.gate-in .entry-disclosure{opacity:1}
.entry-skip{position:absolute;bottom:clamp(19px,3.5vh,40px);right:clamp(20px,4vw,62px);z-index:40;color:rgba(255,255,255,.74);font-size:9px;letter-spacing:.19em;background:rgba(2,3,5,.40);border:1px solid rgba(255,255,255,.21);padding:12px 15px;pointer-events:auto;cursor:pointer;opacity:0;transform:translateY(5px);transition:opacity .45s,transform .45s}
.entrance-root.is-live:not(.gate-in) .entry-skip{opacity:1;transform:translateY(0)}
.entrance-root.gate-in .entry-skip{display:none}
.entry-skip:hover{color:#fff;border-color:#fff;background:rgba(10,11,14,.75)}
.entrance-root.departing .entry-destination{pointer-events:none;opacity:0;filter:blur(5px);transform:scale(.97);transition-duration:.43s}
.entrance-root.departing .entry-curtain{opacity:1;transition-duration:.66s}
.entrance-root.departing .entry-frame-label,.entrance-root.departing .entry-disclosure{opacity:0}
@media(max-width:680px){.entry-destination{width:min(100% - 26px,430px);gap:23px}.entry-gate-brand .entry-mark{width:43px;height:43px}.entry-gate-brand>span{font-size:17px;letter-spacing:.40em;padding-left:.40em}.entry-glass{padding:29px 17px 19px}.entry-overline{font-size:8px;letter-spacing:.23em;gap:8px;margin-bottom:22px}.entry-overline-bar{width:10px}.entry-choice{min-height:75px;padding:14px}.entry-choice-index{font-size:8px}.entry-choice-main{font-size:11px;letter-spacing:.13em}.entry-gate-foot{margin-top:20px;font-size:8px;letter-spacing:.1em}.entry-frame-label{font-size:7px;letter-spacing:.14em;top:18px}.entry-disclosure{font-size:7px;bottom:17px;line-height:1.7;max-width:330px}.entry-wordmark{font-size:29px;letter-spacing:.35em;padding-left:.35em}.entry-brand-line{margin:24px 0 21px}.entry-division{font-size:8px;letter-spacing:.18em}}
@media(max-width:355px){.entry-choice-main{font-size:10px;letter-spacing:.09em}.entry-overline{letter-spacing:.14em}.entry-choice{min-height:72px}.entry-glass{padding:23px 13px 16px}}
@media(max-height:590px){.entry-destination{gap:10px}.entry-gate-brand .entry-mark{width:30px;height:30px}.entry-gate-brand>span{font-size:13px}.entry-glass{padding:17px 19px 13px}.entry-overline{margin-bottom:10px}.entry-choice{min-height:57px;padding:8px 13px}.entry-gate-foot{margin-top:11px;padding-top:10px}.entry-disclosure{bottom:7px;font-size:7px}.entry-frame-label{top:10px}}
@media(prefers-reduced-motion:reduce){.entry-curtain,.entry-brand,.entry-destination,.entry-skip,.entry-frame-label,.entry-disclosure,.entry-choice{transition-duration:.01ms!important}.entry-brand{filter:none}.entry-destination{filter:none}}

/* MINESPACE / 3.6 — SOUND IS PART OF THE EXISTING EDITORIAL FRAME.
   No separate button, no equalizer, no box, no pill. It lives on the same baseline
   as the APOPHIS / 2029 metadata, with the same typography and monochrome rules. */
.entry-frame-label{
  z-index:41;pointer-events:none;
  top:max(clamp(22px,5vh,57px),calc(env(safe-area-inset-top,0px) + 16px));
  gap:14px;
}
.entry-frame-identity{display:block;flex:0 1 auto;min-width:0}
.entry-frame-short{display:none}
.entry-frame-right{display:flex;align-items:center;justify-content:flex-end;gap:clamp(11px,1.5vw,22px);flex:0 0 auto;min-width:0}
.entry-frame-object{color:rgba(255,255,255,.63);white-space:nowrap}
.entry-frame-divider{display:block;flex:none;width:1px;height:14px;background:rgba(255,255,255,.34)}
.entrance-root .entry-sound{
  all:unset;
  box-sizing:border-box;
  display:inline-flex;align-items:center;justify-content:center;gap:9px;
  position:relative;isolation:isolate;min-height:44px;min-width:78px;
  padding:9px 0 9px 4px;
  background:transparent;border:0;box-shadow:none;border-radius:0;
  color:rgba(255,255,255,.83);font-family:inherit;font-size:9px;line-height:1;
  font-weight:550;letter-spacing:.20em;text-transform:uppercase;
  white-space:nowrap;cursor:pointer;pointer-events:auto;
  -webkit-tap-highlight-color:transparent;
  transition:color .24s ease;
}
.entry-sound-name{display:block;line-height:1;white-space:nowrap}
.entry-sound-indicator{
  flex:none;display:block;width:5px;height:5px;border:1px solid rgba(255,255,255,.7);
  border-radius:50%;background:transparent;transition:background .26s ease,box-shadow .26s ease,border-color .26s ease;
}
.entry-sound.is-sounding .entry-sound-indicator{background:#fff;border-color:#fff;box-shadow:0 0 8px rgba(255,255,255,.45)}
.entrance-root .entry-sound::after{
  content:"";position:absolute;right:0;bottom:8px;width:calc(100% - 4px);height:1px;
  background:rgba(255,255,255,.72);transform:scaleX(0);transform-origin:right;
  transition:transform .35s cubic-bezier(.22,1,.36,1);
}
.entrance-root .entry-sound:hover,.entrance-root .entry-sound:focus-visible{color:#fff}
.entrance-root .entry-sound:hover::after,.entrance-root .entry-sound:focus-visible::after{transform:scaleX(1)}
.entrance-root .entry-sound:focus-visible{outline:1px solid #fff;outline-offset:3px}
.entrance-root .entry-sound:disabled{cursor:default;opacity:.5}
.entry-sound[hidden]{display:none!important}
.entrance-root.departing .entry-frame-label{opacity:0;pointer-events:none}
@media(max-width:680px){
  .entry-frame-label{
    top:max(18px,calc(env(safe-area-inset-top,0px) + 9px));
    left:max(16px,calc(env(safe-area-inset-left,0px) + 16px));
    right:max(16px,calc(env(safe-area-inset-right,0px) + 16px));
    gap:6px;font-size:8px;letter-spacing:.12em;
  }
  .entry-frame-long{display:none}.entry-frame-short{display:inline}
  .entry-frame-right{gap:10px}
  .entry-frame-divider{height:12px}
  .entrance-root .entry-sound{font-size:8px;letter-spacing:.13em;min-width:70px;min-height:44px;gap:7px;padding:9px 0 9px 3px}
}
@media(max-width:355px){
 .entry-frame-object{display:none}
 .entry-frame-divider{display:none}
 .entry-frame-label{letter-spacing:.13em}
}
@media(max-height:430px){.entry-frame-label{top:max(10px,calc(env(safe-area-inset-top,0px) + 7px))}}
@media(prefers-reduced-motion:reduce){
 .entry-sound-indicator,.entrance-root .entry-sound,.entrance-root .entry-sound::after{transition:none!important}
}

/* Audio-only presentation: keep the MP4 video element in the DOM and in the viewport
   for mobile media engines, but never reveal its moving pictures or controls.
   Do not use display:none: some mobile implementations suspend hidden video. */
.entry-audio-only-video{position:fixed!important;inset:0 auto auto 0!important;width:1px!important;height:1px!important;min-width:1px!important;min-height:1px!important;max-width:1px!important;max-height:1px!important;opacity:0!important;pointer-events:none!important;user-select:none!important;overflow:hidden!important;border:0!important;background:transparent!important;z-index:0!important;object-fit:cover!important}

/* Preserve the editorial control even if MP4 is absent / unsupported. */
.entry-sound.is-unavailable .entry-sound-indicator{border-color:rgba(255,255,255,.65);background:transparent;box-shadow:none}
.entry-sound.is-unavailable .entry-sound-name{opacity:.72}
@media(max-width:680px){.entry-sound.is-unavailable .entry-sound-name{font-size:7px;letter-spacing:.05em}}


/* MINESPACE / DIRECTOR'S CUT 3.7 — art-directed 14.8s opening, original scene intact.
   00.0–00.7 black; 00.7–04.2 slow exposure; 04.2–06.2 uninterrupted view;
   06.2–08.25 logo resolves; 08.25–10.25 logo held;
   10.25–11.8 logo dissolves; 11.8–13.1 clean final hold;
   13.1–14.8 the two destinations resolve. */
.entrance-root .entry-curtain{animation:none;transition:none;opacity:1}
@keyframes minespace-iris{
  0%,16.66%{opacity:1}
  45%{opacity:.83}
  75%{opacity:.28}
  100%{opacity:0}
}
.entrance-root.is-live .entry-curtain{
  animation:minespace-iris 4.2s cubic-bezier(.25,.46,.45,.94) both;
}
/* Never black-out the choice panel when a viewer chooses to skip the opening. */
.entrance-root.skip-to-gate .entry-curtain{
  animation:none!important;opacity:0;transition:opacity .38s ease-out!important;
}
.entrance-root.departing .entry-curtain{
  animation:none!important;opacity:1!important;
  transition:opacity .70s cubic-bezier(.32,0,.4,1)!important;
}
.entry-brand{
  transform:translateY(21px) scale(.97);filter:blur(14px);
  transition:opacity 2.05s cubic-bezier(.2,.7,.2,1),
             transform 2.15s cubic-bezier(.16,.7,.3,1),
             filter 2.05s cubic-bezier(.2,.7,.2,1);
}
.entrance-root.brand-in .entry-brand{
  opacity:1;transform:translateY(0) scale(1);filter:blur(0);
}
.entrance-root.brand-out .entry-brand{
  opacity:0;transform:translateY(-12px) scale(1.018);filter:blur(13px);
  transition-duration:1.55s;
}
.entry-destination{
  transform:translateY(32px) scale(.979);filter:blur(17px);
  transition:opacity 1.70s cubic-bezier(.22,1,.36,1),
             transform 1.70s cubic-bezier(.22,1,.36,1),
             filter 1.65s cubic-bezier(.22,1,.36,1);
}
.entrance-root.gate-in .entry-destination{
  opacity:1;transform:translateY(0) scale(1);filter:blur(0);
}
/* Protect the pure scene: only the precisely branded sound affordance can appear
   before the invitation, and only once the asteroid and Earth have been revealed. */
.entrance-root.sound-ready .entry-frame-label{opacity:1}
.entrance-root:not(.gate-in) .entry-frame-identity,
.entrance-root:not(.gate-in) .entry-frame-object,
.entrance-root:not(.gate-in) .entry-frame-divider{opacity:0}
.entrance-root:not(.gate-in) .entry-frame-label{justify-content:flex-end}
.entrance-root:not(.gate-in) .entry-frame-right{gap:0}
.entrance-root.gate-in .entry-frame-identity,
.entrance-root.gate-in .entry-frame-object,
.entrance-root.gate-in .entry-frame-divider{opacity:1;transition:opacity 1s}
.entrance-root .entry-skip{
  bottom:max(clamp(19px,3.5vh,40px),calc(env(safe-area-inset-bottom,0px) + 16px));
  background:transparent;border:0;border-bottom:1px solid rgba(255,255,255,.3);
  padding:13px 1px 10px;color:rgba(255,255,255,.63);
  font-size:9px;letter-spacing:.24em;
}
.entrance-root .entry-skip:hover,.entrance-root .entry-skip:focus-visible{
  color:white;border-color:white;background:transparent;
}
.entrance-root .entry-skip:focus-visible{outline:1px solid #fff;outline-offset:4px}
.entrance-root.departing .entry-curtain{z-index:90}
@media(prefers-reduced-motion:reduce){
  .entrance-root.is-live .entry-curtain{animation:none!important;opacity:0!important}
  .entrance-root.departing .entry-curtain{opacity:1!important}
  .entry-brand,.entry-destination{transition:none!important;filter:none!important}
}

/* 3.8.0 / IMMERSIVE PREMIERE — retained 3.7 scene, one quiet secondary layer. */
.entrance-root .entry-curtain,
.entrance-root.is-live .entry-curtain{
  animation:none!important;opacity:var(--entry-curtain-opacity,1);
  transition:none!important;
}
.entrance-root.skip-to-gate .entry-curtain{animation:none!important;opacity:0!important;transition:opacity .30s ease!important}
.entrance-root.departing .entry-curtain{animation:none!important;opacity:1!important;transition:opacity .94s cubic-bezier(.32,0,.4,1)!important}
/* Quiet editorial actions only become available after the two primary choices. */
.entry-experience-controls{display:flex;justify-content:center;align-items:center;gap:clamp(12px,2.5vw,25px);opacity:.85;pointer-events:auto;max-width:100%}
.entry-quiet-action,.entry-return{
  appearance:none;border:0;background:transparent;box-shadow:none;border-radius:0;
  color:rgba(248,248,248,.73);
  font-family:inherit;font-size:9px;font-weight:550;line-height:1.4;
  letter-spacing:.21em;text-transform:uppercase;cursor:pointer;
  min-height:44px;padding:12px 2px;text-shadow:0 1px 18px #000;
  -webkit-tap-highlight-color:transparent;
  transition:color .25s,opacity .25s;
}
.entry-quiet-action:hover,.entry-quiet-action:focus-visible,
.entry-return:hover,.entry-return:focus-visible{color:#fff}
.entry-quiet-action:focus-visible,.entry-return:focus-visible{outline:1px solid white;outline-offset:4px}
.entry-quiet-action span{margin-left:6px;font-size:13px;letter-spacing:0}
.entry-action-separator{width:1px;height:13px;background:rgba(255,255,255,.32)}
.entry-return{
  position:absolute;right:max(24px,calc(env(safe-area-inset-right,0px) + 24px));
  bottom:max(20px,calc(env(safe-area-inset-bottom,0px) + 20px));z-index:24;
  pointer-events:auto;color:rgba(255,255,255,.78);
}
.entry-return[hidden]{display:none!important}
.entrance-root.scene-only .entry-destination{
 opacity:0;filter:blur(16px);transform:translateY(-14px) scale(.985);
 pointer-events:none;transition-duration:.8s;
}
.entrance-root.scene-only .entry-frame-identity,
.entrance-root.scene-only .entry-frame-object,
.entrance-root.scene-only .entry-frame-divider,
.entrance-root.scene-only .entry-disclosure{opacity:0!important}
.entrance-root.scene-only .entry-frame-label{justify-content:flex-end}
.entrance-root.scene-only .entry-frame-right{gap:0}
.entrance-root.scene-only .entry-sound{opacity:.78}
.entrance-root.scene-only .entry-return{animation:entry-return-in .85s ease both}
@keyframes entry-return-in{from{opacity:0;transform:translateY(7px)}to{opacity:1;transform:translateY(0)}}
/* A final ident on the black transition; no video/photo substitutions. */
.entry-departure{
 position:absolute;inset:0;z-index:55;display:flex;flex-direction:column;
 align-items:center;justify-content:center;gap:25px;text-align:center;
 pointer-events:none;opacity:0;color:white;
 transform:translateY(8px);transition:opacity .53s ease .6s,transform .7s ease .6s;
}
.entry-departure>span:first-child{font-size:9px;letter-spacing:.32em;color:rgba(255,255,255,.58)}
.entry-departure strong{font-size:clamp(16px,2.9vw,36px);letter-spacing:.20em;line-height:1.4;font-weight:530;padding:0 20px}
.entry-departure-line{display:block;width:40px;height:1px;background:rgba(255,255,255,.64)}
.entrance-root.departing .entry-departure{opacity:1;transform:translateY(0)}
.entrance-root.departing .entry-return{opacity:0}
@media(max-width:680px){
 .entry-experience-controls{gap:14px}
 .entry-quiet-action{font-size:8px;letter-spacing:.11em}
 .entry-action-separator{height:12px}
 .entry-departure strong{letter-spacing:.12em}
 .entry-return{right:max(16px,calc(env(safe-area-inset-right,0px) + 16px));font-size:8px}
 .entry-gate-foot{letter-spacing:.11em;font-size:8px}
}
@media(max-height:590px){.entry-experience-controls{gap:12px}.entry-quiet-action{padding:5px 2px;min-height:38px}}
@media(prefers-reduced-motion:reduce){
 .entry-return,.entry-quiet-action,.entry-departure,.entry-departure-line{animation:none!important;transition:none!important}
 .entrance-root.departing .entry-departure{opacity:0!important}
}


/* MINESPACE / ARCHIVE FILM — within established monochrome entrance design */
.entrance-root .archive-film{position:absolute;inset:0;z-index:19;overflow:hidden;pointer-events:none;opacity:0;visibility:hidden;transition:opacity 1.8s ease,visibility 1.8s;display:block;background:transparent;color:#fff}
.entrance-root.archive-on .archive-film{opacity:1;visibility:visible;pointer-events:auto}
.archive-screen{position:absolute;inset:0;background:transparent;pointer-events:none}
.archive-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;opacity:0;transform:scale(1.065);transition:opacity 1.5s cubic-bezier(.2,.8,.2,1),transform 13s linear;filter:contrast(1.05) brightness(.84);pointer-events:none}
.archive-image.visible{opacity:1;transform:scale(1.0)}

.archive-vignette{position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,0,0,.85),rgba(0,0,0,.0) 44%,rgba(0,0,0,.14) 64%,rgba(0,0,0,.51)),linear-gradient(90deg,rgba(0,0,0,.30),transparent 68%);pointer-events:none;z-index:4}
.archive-kicker{position:absolute;top:max(28px,calc(env(safe-area-inset-top,0px) + 22px));left:clamp(23px,4.1vw,64px);right:clamp(23px,4.1vw,64px);display:flex;justify-content:space-between;gap:15px;z-index:7;color:rgba(255,255,255,.83);font-size:9px;letter-spacing:.25em}
.archive-story{position:absolute;z-index:8;bottom:clamp(125px,17vh,210px);left:clamp(28px,9vw,160px);right:clamp(25px,8vw,120px);max-width:850px;pointer-events:none;text-shadow:0 3px 36px rgba(0,0,0,.9)}
.archive-year{font-size:clamp(17px,2.3vw,31px);font-weight:300;letter-spacing:.21em;margin-bottom:clamp(14px,3vh,33px)}
.archive-story h2{font-size:clamp(46px,7.3vw,121px);font-weight:650;letter-spacing:-.074em;line-height:.93;max-width:840px;margin:0 0 clamp(18px,3vh,35px);text-wrap:balance}
.archive-story p{font-size:clamp(12px,1.22vw,19px);line-height:1.6;font-weight:350;color:rgba(255,255,255,.86);max-width:590px;margin:0 0 21px;text-wrap:balance}
.archive-credit{display:block;color:#ddd;font-size:9px;letter-spacing:.18em;line-height:1.65;text-transform:uppercase;max-width:800px}
.archive-bottom{position:absolute;z-index:9;left:clamp(23px,4.1vw,64px);right:clamp(23px,4.1vw,64px);bottom:max(22px,calc(env(safe-area-inset-bottom,0px) + 22px));display:flex;flex-direction:column;gap:14px}
.archive-timeline{height:1px;background:rgba(255,255,255,.38)}.archive-timeline-fill{height:100%;width:100%;background:#fff;transform:scaleX(0);transform-origin:left center;transition:transform .12s linear}
.archive-meta{display:flex;justify-content:space-between;gap:15px;align-items:center;font-size:9px;letter-spacing:.2em;color:#eee}
.archive-meta button{background:transparent;border:0;color:#eee;font-size:9px;letter-spacing:.18em;cursor:pointer;min-height:42px;padding:10px 0}
.archive-meta button:hover,.archive-meta button:focus-visible{color:#fff;text-decoration:underline;text-underline-offset:5px}
.archive-quicknav{position:absolute;right:clamp(22px,4.1vw,64px);top:66px;z-index:11;display:flex;gap:18px;opacity:.70;transition:opacity .2s}
.archive-quicknav:hover,.archive-quicknav:focus-within{opacity:1}
.archive-quicknav a{color:white;font-size:9px;letter-spacing:.13em;text-decoration:none;border-bottom:1px solid rgba(255,255,255,.4);padding:8px 0}
.archive-quicknav a:hover,.archive-quicknav a:focus-visible{border-color:white}
.entrance-root.archive-on .entry-destination{opacity:0!important;pointer-events:none!important;filter:blur(5px)!important}
.entrance-root.archive-on .entry-frame-label,.entrance-root.archive-on .entry-disclosure,.entrance-root.archive-on .entry-return{opacity:0!important;pointer-events:none!important}
.entrance-root.archive-on .entry-curtain{opacity:0!important}
.entrance-root.archive-on .entry-shade{opacity:0}
.entrance-root.departing .archive-film{opacity:0;pointer-events:none;transition-duration:.48s}
@media(max-width:680px){.archive-kicker{font-size:7px;letter-spacing:.13em}.archive-quicknav{top:max(65px,calc(env(safe-area-inset-top,0px) + 62px));right:19px;gap:13px}.archive-quicknav a{font-size:8px}.archive-story{left:25px;right:23px;bottom:max(142px,calc(env(safe-area-inset-bottom,0px) + 141px))}.archive-story h2{font-size:clamp(47px,12.5vw,75px);max-width:390px}.archive-credit{font-size:7px;letter-spacing:.10em}.archive-year{margin-bottom:18px}.archive-meta{font-size:8px;gap:6px}.archive-meta button{font-size:7px;letter-spacing:.09em}.archive-bottom{left:22px;right:22px}.archive-image{object-position:center center}}
@media(max-height:550px){.archive-story{bottom:90px}.archive-story h2{font-size:clamp(33px,5.8vw,70px);margin-bottom:8px}.archive-story p{margin-bottom:5px}.archive-credit{font-size:7px}.archive-bottom{bottom:6px}.archive-year{margin-bottom:6px}}
@media(prefers-reduced-motion:reduce){.archive-image,.archive-clip,.archive-film{transition-duration:.01ms!important;transform:none!important}}


/* MINESPACE / DIRECTOR'S CODA / 02:00–02:20 / ORIGINAL 3D VIEW, NO STOCK VIDEO */
.archive-coda{position:absolute;inset:0;z-index:9;display:flex;flex-direction:column;align-items:center;justify-content:center;pointer-events:none;opacity:0;visibility:hidden;transform:translateY(11px);transition:opacity 1.5s ease,transform 1.5s ease,visibility 1.5s;text-align:center;padding:clamp(80px,13vh,145px) 24px clamp(80px,12vh,135px);text-shadow:0 8px 45px #000}
.archive-film.archive-coda-on .archive-coda{opacity:1;visibility:visible;transform:translateY(0)}
.archive-film.archive-coda-on .archive-story{opacity:0;visibility:hidden;transition:opacity .9s ease,visibility .9s}
.archive-film.archive-coda-on .archive-quicknav{opacity:0;pointer-events:none}
.archive-film.archive-coda-on .archive-vignette{background:radial-gradient(ellipse at 50% 50%,rgba(0,0,0,.18),rgba(0,0,0,.54) 66%,rgba(0,0,0,.8)),linear-gradient(0deg,rgba(0,0,0,.85),transparent 29%,transparent 77%,rgba(0,0,0,.48))}
.archive-coda-identity{display:flex;flex-direction:column;gap:9px;align-items:center;color:white;filter:drop-shadow(0 1px 20px rgba(0,0,0,.85))}
.archive-coda-identity svg{width:clamp(41px,6vh,72px);height:clamp(41px,6vh,72px)}
.archive-coda-identity span{font-size:clamp(12px,1.7vw,19px);font-weight:600;letter-spacing:.46em;padding-left:.46em}
.archive-coda-rule{width:38px;height:1px;margin:clamp(19px,3.7vh,37px) 0 clamp(20px,3.6vh,34px);background:rgba(255,255,255,.66)}
.archive-coda-mission,.archive-coda-invitation{width:100%;max-width:1010px;display:flex;flex-direction:column;align-items:center;transition:opacity 1s ease,transform 1.1s ease,visibility 1s;position:relative}
.archive-coda-invitation{position:absolute;top:50%;left:50%;width:calc(100% - 48px);transform:translate(-50%,-46%);opacity:0;visibility:hidden}
.archive-coda-eyebrow{margin:0 0 clamp(15px,3vh,30px);color:rgba(255,255,255,.86);font-size:clamp(8px,.9vw,11px);font-weight:600;letter-spacing:.33em;text-transform:uppercase;line-height:1.8}
.archive-coda-slash{opacity:.48;padding:0 9px}
.archive-coda h2{margin:0;font-size:clamp(51px,9vw,143px);font-weight:650;letter-spacing:-.072em;line-height:.90;text-wrap:balance;max-width:1000px}
.archive-coda-description{font-size:clamp(12px,1.55vw,19px);color:rgba(255,255,255,.92);font-weight:350;max-width:610px;line-height:1.6;margin:clamp(18px,3vh,32px) 0 13px;text-wrap:balance}
.archive-coda-reference{font-size:clamp(7px,.83vw,9px);letter-spacing:.24em;line-height:1.8;color:rgba(255,255,255,.55);margin:0}
.archive-film.archive-coda-investors .archive-coda-mission{opacity:0;visibility:hidden;transform:translateY(-12px)}
.archive-film.archive-coda-investors .archive-coda-invitation{opacity:1;visibility:visible;transform:translate(-50%,-50%)}
.archive-coda-actions{position:absolute;bottom:max(80px,calc(env(safe-area-inset-bottom,0px) + 78px));left:18px;right:18px;display:flex;gap:9px;align-items:center;justify-content:center;opacity:0;transform:translateY(13px);pointer-events:none;transition:opacity 1s ease,transform 1s ease}
.archive-film.archive-coda-actions-ready .archive-coda-actions{opacity:1;transform:translateY(0);pointer-events:auto}
.archive-coda-actions a{display:inline-flex;align-items:center;justify-content:center;gap:clamp(8px,1vw,18px);min-height:54px;padding:15px clamp(14px,2.1vw,31px);text-decoration:none;background:rgba(5,6,9,.62);border:1px solid rgba(255,255,255,.54);color:white;backdrop-filter:blur(11px);-webkit-backdrop-filter:blur(11px);font-size:clamp(8px,.81vw,11px);font-weight:650;letter-spacing:.15em;text-align:center;transition:background .3s,border-color .3s,transform .3s}
.archive-coda-actions a:first-child{background:rgba(255,255,255,.13);border-color:rgba(255,255,255,.86)}
.archive-coda-actions a:hover,.archive-coda-actions a:focus-visible{background:rgba(255,255,255,.20);border-color:#fff;transform:translateY(-3px)}
.archive-coda-actions a:focus-visible{outline:2px solid white;outline-offset:4px}
.archive-coda-disclaimer{position:absolute;bottom:max(41px,calc(env(safe-area-inset-bottom,0px) + 38px));left:18px;right:18px;margin:0;color:rgba(255,255,255,.47);font-size:8px;letter-spacing:.075em;line-height:1.4}
.archive-film.archive-finale .archive-bottom{opacity:0;pointer-events:none;transition:opacity 1.3s}
.archive-film.archive-finale .archive-quicknav{opacity:0}
@media(max-width:680px){
 .archive-coda{padding:80px 19px 100px}
 .archive-coda-identity svg{width:44px;height:44px}
 .archive-coda-identity span{font-size:13px;letter-spacing:.36em;padding-left:.36em}
 .archive-coda-rule{margin:18px 0 25px}
 .archive-coda-eyebrow{letter-spacing:.20em;font-size:8px;margin-bottom:20px}
 .archive-coda h2{font-size:clamp(48px,13vw,78px);line-height:.96}
 .archive-coda-description{font-size:12px;max-width:320px;margin-top:20px}
 .archive-coda-reference{font-size:7px;letter-spacing:.13em;max-width:305px}
 .archive-coda-invitation{top:50%;transform:translate(-50%,-50%)}
 .archive-coda-actions{flex-direction:column;bottom:max(76px,calc(env(safe-area-inset-bottom,0px) + 73px));gap:8px}
 .archive-coda-actions a{width:min(100%,360px);min-height:47px;font-size:9px;padding:11px 15px}
 .archive-coda-disclaimer{bottom:max(30px,calc(env(safe-area-inset-bottom,0px) + 27px));font-size:6.5px;letter-spacing:.025em;padding:0 10px}
 .archive-film.archive-coda-on .archive-kicker{opacity:.5}
 .archive-film.archive-coda-on .archive-bottom{opacity:0;pointer-events:none}
 .archive-film.archive-coda-on .archive-bottom:focus-within{opacity:1;pointer-events:auto}
}
@media(max-height:580px) and (min-width:681px){
 .archive-coda-identity svg{width:34px;height:34px}.archive-coda-identity span{font-size:11px}
 .archive-coda-rule{margin:10px 0}.archive-coda h2{font-size:clamp(40px,7vw,70px)}
 .archive-coda-description{margin:10px 0 5px;font-size:11px}.archive-coda-eyebrow{margin-bottom:9px}
 .archive-coda-actions{bottom:44px}.archive-coda-actions a{min-height:40px;padding:9px 13px}
 .archive-coda-disclaimer{bottom:18px;font-size:6px}
}
@media(max-height:500px) and (max-width:680px){
 .archive-coda{justify-content:flex-start;padding-top:43px}
 .archive-coda-identity svg{width:27px;height:27px}.archive-coda-identity span{font-size:10px}
 .archive-coda-rule{margin:8px 0}.archive-coda h2{font-size:clamp(31px,8vw,45px)}
 .archive-coda-description{margin:8px 0 5px;font-size:10px}.archive-coda-eyebrow{margin:0 0 8px}
 .archive-coda-invitation{top:40%}.archive-coda-actions{bottom:22px;flex-direction:row}
 .archive-coda-actions a{min-height:34px;padding:5px;font-size:7px;width:auto}
 .archive-coda-reference,.archive-coda-disclaimer{display:none}
}
@media(prefers-reduced-motion:reduce){.archive-coda,.archive-coda-mission,.archive-coda-invitation,.archive-coda-actions{transition-duration:.01ms!important;transform:none}}

/* Keep both original destinations reachable even while the investor invitation holds. */
.archive-film.archive-coda-investors .archive-quicknav{opacity:.84;pointer-events:auto}
.archive-film.archive-coda-investors .archive-quicknav:focus-within,.archive-film.archive-coda-investors .archive-quicknav:hover{opacity:1}
@media(prefers-reduced-motion:reduce){.archive-coda-invitation{transform:translate(-50%,-50%)!important}.archive-film.archive-coda-investors .archive-coda-invitation{transform:translate(-50%,-50%)!important}}

/* v3.12 / LIVE-WORLD EDITORIAL INTERLUDES. The original Mission Zero renderer
   remains physically behind every NASA archival shot and every title card. */
.entrance-root .archive-film.archive-world .archive-screen{
  background:transparent;
}
.entrance-root .archive-film.archive-world .archive-vignette{
  background:linear-gradient(90deg,rgba(0,0,0,.57),rgba(0,0,0,.13) 66%,rgba(0,0,0,.08)),
    linear-gradient(0deg,rgba(0,0,0,.74),transparent 42%,rgba(0,0,0,.29));
  transition:background 1.8s ease;
}
.archive-film.archive-world .archive-year{
  font-size:clamp(9px,.83vw,12px);font-weight:600;letter-spacing:.34em;
  opacity:.82;margin-bottom:clamp(22px,4vh,45px);
}
.archive-film.archive-world .archive-story h2{
  font-size:clamp(52px,7.6vw,116px);max-width:980px;
  letter-spacing:-.066em;font-weight:560;
}
.archive-film.archive-world .archive-credit{
  color:rgba(255,255,255,.66);
}
.archive-film.archive-world .archive-kicker{
  opacity:.72;
}
/* Keep chapter labels legible on the far-left astro-object and mobile Earth. */
@media(max-width:680px){
  .archive-film.archive-world .archive-year{font-size:9px;margin-bottom:22px}
  .archive-film.archive-world .archive-story h2{font-size:clamp(44px,11.5vw,76px)}
}

/* 3.13 / MISSION ARCHITECTURE is a supplemental coda link, NOT a third entrance choice. */
.archive-architecture-link{display:inline-flex;align-items:center;gap:11px;color:rgba(255,255,255,.82);text-decoration:none;font-size:clamp(9px,.72vw,11px);font-weight:600;letter-spacing:.17em;border-bottom:1px solid rgba(255,255,255,.35);padding:11px 2px;margin-top:13px;transition:color .25s,border-color .25s}
.archive-architecture-link:hover,.archive-architecture-link:focus-visible{color:#fff;border-color:#fff}
.archive-architecture-link:focus-visible{outline:1px solid #fff;outline-offset:5px}


/* 3.14.0 / LOCAL-MEDIA CINEMA — no remote pulls; stronger MineSpace world interludes. */
.archive-image{filter:contrast(1.06) brightness(.82) saturate(1.02)}
.archive-film.archive-world .archive-story{max-width:900px}
.archive-film.archive-world .archive-story h2{letter-spacing:-.08em;text-shadow:0 8px 50px rgba(0,0,0,.95)}
.archive-film.archive-world .archive-story p{max-width:680px}
.archive-film.archive-world .archive-vignette{background:linear-gradient(180deg,rgba(0,0,0,.36),rgba(0,0,0,.0) 28%,rgba(0,0,0,.0) 56%,rgba(0,0,0,.72)),radial-gradient(ellipse at 50% 62%,rgba(5,10,18,.00),rgba(5,10,18,.12) 55%,rgba(0,0,0,.34) 100%)}
.archive-film:not(.archive-has-image):not(.archive-coda-on) .archive-story{max-width:980px}
.archive-film:not(.archive-has-image):not(.archive-coda-on) .archive-story h2{font-size:clamp(54px,7.8vw,128px)}
.archive-film:not(.archive-has-image):not(.archive-coda-on) .archive-credit{color:rgba(255,255,255,.6)}


/* 3.16 / CINEMATIC MASTER: photographic image timing and carefully restrained scene grade. */
body.entrance-page .screen .vignette{
 background:linear-gradient(90deg,rgba(1,2,5,.19),rgba(2,3,6,.01) 35%,rgba(0,0,0,.01) 67%,rgba(1,2,5,.12)),
 linear-gradient(0deg,rgba(1,2,5,.48),transparent 28%,transparent 80%,rgba(1,2,5,.22));
}
body.entrance-page .screen .filmgrain{opacity:.065}
.entry-shade{background:radial-gradient(ellipse at 50% 50%,rgba(1,2,5,.20),rgba(1,2,5,.04) 37%,transparent 61%),linear-gradient(0deg,rgba(0,0,0,.25),transparent 22%)}
/* Still photography gets nine seconds per major photo. Let detail emerge slowly without harsh zoom or flashing. */
.archive-image{filter:contrast(1.045) brightness(.94) saturate(1.025);transform:scale(1.075);transition:opacity 1.85s cubic-bezier(.23,.75,.28,1),transform 10s linear;will-change:transform,opacity}
.archive-image.visible{transform:scale(1.005)}
.archive-film.archive-has-image .archive-vignette{background:linear-gradient(0deg,rgba(0,0,0,.82),transparent 54%,rgba(0,0,0,.32)),linear-gradient(90deg,rgba(0,0,0,.27),transparent 60%)}
.archive-film.archive-world .archive-vignette{background:linear-gradient(0deg,rgba(0,0,0,.67),transparent 44%,rgba(0,0,0,.24)),linear-gradient(90deg,rgba(0,0,0,.37),transparent 68%)}
.archive-film.archive-world .archive-story h2{font-weight:540;letter-spacing:-.075em;text-shadow:0 6px 43px rgba(0,0,0,.85)}
.archive-film.archive-world .archive-story p{color:rgba(255,255,255,.88)}
.archive-film:not(.archive-has-image):not(.archive-coda-on) .archive-credit{color:rgba(255,255,255,.70)}
.archive-film.archive-coda-on .archive-vignette{background:radial-gradient(ellipse at 50% 50%,rgba(0,0,0,.16),rgba(0,0,0,.49) 65%,rgba(0,0,0,.75)),linear-gradient(0deg,rgba(0,0,0,.75),transparent 30%,transparent 76%,rgba(0,0,0,.40))}
@media(prefers-reduced-motion:reduce){.archive-image,.archive-image.visible{transform:none;transition:none!important}}


/* v3.17 / MISSION ZERO / continuous-world archive switch. */
.archive-kicker-controls{display:flex;align-items:center;justify-content:flex-end;gap:clamp(12px,2vw,26px)}
.archive-imagery,.entry-imagery{appearance:none;background:transparent;border:0;border-radius:0;padding:9px 1px;color:rgba(255,255,255,.80);font:inherit;font-size:9px;font-weight:560;letter-spacing:.18em;white-space:nowrap;cursor:pointer;min-height:38px;transition:color .25s ease;position:relative}
.archive-imagery{display:inline-flex;align-items:center;gap:10px;letter-spacing:.16em}
.archive-imagery-dot{display:block;width:5px;height:5px;border-radius:50%;border:1px solid rgba(255,255,255,.8);background:#fff;box-shadow:0 0 8px rgba(255,255,255,.28)}
.archive-imagery[aria-pressed="false"] .archive-imagery-dot{background:transparent;box-shadow:none}
.archive-imagery::after,.entry-imagery::after{content:"";height:1px;background:#fff;position:absolute;bottom:4px;left:0;right:0;transform:scaleX(0);transform-origin:right;transition:transform .26s ease}
.archive-imagery:hover::after,.archive-imagery:focus-visible::after,.entry-imagery:hover::after,.entry-imagery:focus-visible::after{transform:scaleX(1);transform-origin:left}
.archive-imagery:hover,.entry-imagery:hover{color:#fff}
.archive-imagery:focus-visible,.entry-imagery:focus-visible{outline:1px solid #fff;outline-offset:4px}
.entry-imagery{min-height:44px;pointer-events:auto}
.entrance-root:not(.gate-in):not(.archive-on) .entry-imagery,
.entrance-root:not(.gate-in):not(.archive-on) .entry-imagery-divider{opacity:0;pointer-events:none}
.archive-film.archive-world-only .archive-image{opacity:0!important;visibility:hidden!important;transition:opacity .75s ease,visibility .75s!important}
.archive-film.archive-world-only .archive-story{opacity:0!important;visibility:hidden!important;pointer-events:none!important;transition:opacity .7s ease,visibility .7s!important}
.archive-film.archive-world-only .archive-vignette{background:linear-gradient(0deg,rgba(0,0,0,.30),transparent 29%,rgba(0,0,0,.16))}
.archive-film.archive-world-only .archive-kicker{opacity:.82}
.archive-film.archive-world-only.archive-coda-on .archive-coda{opacity:1;visibility:visible}
.archive-film:not(.archive-world-only) .archive-story{transition:opacity .7s ease,visibility .7s}
@media(max-width:680px){
 .archive-kicker-controls{gap:12px}
 .archive-imagery,.entry-imagery{font-size:7.5px;letter-spacing:.09em}
 .archive-imagery{gap:6px}
 .entry-frame-right{gap:8px}
}
@media(max-width:350px){.entry-imagery-divider{display:none}.entry-imagery{font-size:7px}.entry-frame-right{gap:6px}}
@media(prefers-reduced-motion:reduce){.archive-film.archive-world-only .archive-image,.archive-film.archive-world-only .archive-story{transition:none!important}}


/* 3.18 / DIRECTOR'S PICTURE CUT — original self-hosted cinematic plates, sustained interludes */
.archive-film .archive-image{
  object-fit:cover;object-position:50% 50%;
  filter:brightness(.99) contrast(1.052) saturate(1.035);
  transform:scale(1.085);
  transition:opacity 1.52s cubic-bezier(.25,.8,.25,1),transform 10.8s cubic-bezier(.12,.28,.28,1);
  backface-visibility:hidden;
}
.archive-film .archive-image.visible{transform:scale(1.015)}
.archive-film.archive-has-image .archive-vignette{
 background:linear-gradient(0deg,rgba(0,0,0,.92),rgba(0,0,0,.24) 25%,rgba(0,0,0,.03) 57%,rgba(0,0,0,.24)),linear-gradient(90deg,rgba(0,0,0,.25),transparent 70%);
}
.archive-film.archive-has-image .archive-story{
  text-shadow:0 3px 18px rgba(0,0,0,.82),0 4px 60px rgba(0,0,0,.9);
}
.archive-film.archive-has-image .archive-story h2{font-weight:590;letter-spacing:-.07em;max-width:940px}
.archive-film.archive-has-image .archive-story p{color:rgba(255,255,255,.94)}
.archive-film.archive-has-image .archive-credit{color:rgba(255,255,255,.80)}
.archive-film.archive-world .archive-story h2{font-weight:530}
.archive-film .archive-timeline-fill{transition:transform .13s linear}
@media(max-width:680px){
 .archive-film.archive-has-image .archive-story{bottom:max(142px,calc(env(safe-area-inset-bottom,0px) + 135px))}
 .archive-film.archive-has-image .archive-story h2{font-size:clamp(45px,11.5vw,70px);line-height:.97}
 .archive-film.archive-has-image .archive-credit{font-size:7px;letter-spacing:.08em}
}
@media(prefers-reduced-motion:reduce){.archive-film .archive-image,.archive-film .archive-image.visible{transition:none!important;transform:none!important}}

/* 3.19 / verified history only: dormant imagery toggles follow editorial control appearance. */
.archive-imagery:disabled,.entry-imagery:disabled{cursor:default;color:rgba(255,255,255,.48)}
.archive-imagery:disabled::after,.entry-imagery:disabled::after{display:none}
.archive-film.archive-world:not(.archive-has-image) .archive-vignette{pointer-events:none}

/* v3.21 LUMINOUS WORLD — only the live 3D layer; documentary photos retain original grade. */
body.entrance-page .screen .vignette{opacity:.62!important}
body.entrance-page .screen .filmgrain{opacity:.046!important}
.entrance-root:not(.archive-on) .entry-shade{background:radial-gradient(ellipse at 50% 50%,rgba(1,2,5,.12),rgba(1,2,5,.025) 37%,transparent 63%),linear-gradient(0deg,rgba(0,0,0,.18),transparent 24%)}
.archive-film.archive-world:not(.archive-has-image) .archive-vignette{background:linear-gradient(0deg,rgba(0,0,0,.64),transparent 45%,rgba(0,0,0,.22)),linear-gradient(90deg,rgba(0,0,0,.32),transparent 73%)}
.archive-film.archive-world-only .archive-vignette{background:linear-gradient(0deg,rgba(0,0,0,.28),transparent 32%,rgba(0,0,0,.08))}


/* v3.24 | HISTORICAL FILM — original media with deliberate, cinematic photo direction. */
.archive-film .archive-image{object-position:var(--archive-photo-focus,50% 50%);filter:brightness(1.025) contrast(1.065) saturate(1.015);transition:opacity 1.65s cubic-bezier(.2,.7,.3,1),transform 11.5s cubic-bezier(.12,.28,.26,1)}
.archive-film .archive-image.visible{transform:scale(1.012)}
.archive-film.archive-has-image .archive-vignette{background:linear-gradient(0deg,rgba(0,0,0,.76),rgba(0,0,0,.16) 26%,transparent 62%,rgba(0,0,0,.17)),linear-gradient(90deg,rgba(0,0,0,.17),transparent 74%)}
.archive-film.archive-world .archive-vignette{background:linear-gradient(0deg,rgba(0,0,0,.52),transparent 47%,rgba(0,0,0,.16)),linear-gradient(90deg,rgba(0,0,0,.27),transparent 72%)}
.archive-film.archive-world .archive-story h2{font-weight:530}
.archive-film .archive-story h2{max-width:980px}
@media(max-width:680px){.archive-film .archive-image{object-position:var(--archive-photo-focus,50% 50%)}.archive-film .archive-image.visible{transform:scale(1.0)}}
@media(prefers-reduced-motion:reduce){.archive-film .archive-image,.archive-film .archive-image.visible{transform:none!important;transition:none!important}}

/* v3.24 film timeline: seek the image sequence and the user's MP4 together. */
.archive-film .archive-timeline{position:relative;height:18px;background:transparent;display:flex;align-items:center}
.archive-film .archive-timeline:before{content:'';position:absolute;left:0;right:0;top:8px;height:2px;background:rgba(255,255,255,.35)}
.archive-film .archive-timeline-fill{position:absolute;left:0;right:0;top:8px;height:2px;z-index:1;pointer-events:none}
.archive-film #archiveSeek{-webkit-appearance:none;appearance:none;position:relative;display:block;width:100%;height:18px;margin:0;background:transparent;z-index:2;cursor:pointer;touch-action:none}
.archive-film #archiveSeek::-webkit-slider-runnable-track{height:2px;background:transparent}
.archive-film #archiveSeek::-moz-range-track{height:2px;background:transparent}
.archive-film #archiveSeek::-webkit-slider-thumb{-webkit-appearance:none;width:12px;height:12px;margin-top:-5px;background:#fff;border:2px solid #111;border-radius:50%;box-shadow:0 0 0 1px rgba(255,255,255,.45)}
.archive-film #archiveSeek::-moz-range-thumb{width:9px;height:9px;background:#fff;border:2px solid #111;border-radius:50%}
.archive-film #archiveSeek:focus-visible{outline:1px solid #fff;outline-offset:4px}

/* Visible, editorial link to the crawlable Apophis research guide. */
.entry-gate-foot a{color:inherit;text-decoration:none;border-bottom:1px solid rgba(240,247,255,.3);padding-bottom:2px}.entry-gate-foot a:hover,.entry-gate-foot a:focus-visible{color:white;border-bottom-color:white}.entry-gate-foot a:focus-visible{outline:1px solid white;outline-offset:3px}


/* v3.34 / realism pass — historical film and live universe */
.entry-film{background:
  radial-gradient(ellipse at 76% 35%, rgba(189,218,255,.08), transparent 34%),
  radial-gradient(ellipse at 24% 78%, rgba(78,110,164,.09), transparent 42%),
  linear-gradient(180deg, rgba(255,255,255,.03), rgba(255,255,255,0) 24%),
  transparent}
.entrance-root:not(.archive-on) .entry-shade{background:
  radial-gradient(ellipse at 46% 49%, rgba(255,255,255,.05), transparent 34%),
  radial-gradient(ellipse at 84% 20%, rgba(133,170,230,.05), transparent 26%),
  linear-gradient(0deg, rgba(0,0,0,.24), transparent 26%)}
.archive-film .archive-image{filter:brightness(1.035) contrast(1.11) saturate(1.02);transform:scale(1.05)}
.archive-film .archive-image.visible{transform:scale(1.012)}
.archive-film.archive-has-image::after{content:'';position:absolute;inset:0;pointer-events:none;z-index:5;
  background:radial-gradient(circle at 74% 24%, rgba(255,255,255,.12), transparent 18%),
             linear-gradient(110deg, rgba(255,255,255,.00) 25%, rgba(255,255,255,.05) 49%, rgba(255,255,255,.00) 66%);
  mix-blend-mode:screen;opacity:.45}
.archive-film.archive-has-image .archive-story{background:linear-gradient(135deg, rgba(6,10,18,.42), rgba(6,10,18,.14));
  border-left:1px solid rgba(255,255,255,.22);padding:clamp(16px,2vw,28px) clamp(18px,2.2vw,30px) clamp(16px,2vw,26px) clamp(18px,2.2vw,30px);
  max-width:min(930px,calc(100% - 48px));backdrop-filter:blur(7px);-webkit-backdrop-filter:blur(7px);box-shadow:0 30px 80px rgba(0,0,0,.22)}
.archive-film.archive-has-image .archive-story h2{text-shadow:0 10px 56px rgba(0,0,0,.95)}
.archive-film.archive-has-image .archive-credit{opacity:.92}
.archive-kicker,.archive-meta{backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}
.archive-kicker{padding:12px 14px;border:1px solid rgba(255,255,255,.14);background:linear-gradient(180deg, rgba(9,13,22,.30), rgba(9,13,22,.10));border-radius:18px}
.archive-bottom{padding:14px 18px;border:1px solid rgba(255,255,255,.10);border-radius:20px;background:linear-gradient(180deg, rgba(8,12,20,.22), rgba(8,12,20,.10));backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}
.archive-film.archive-has-image .archive-vignette{background:linear-gradient(0deg, rgba(0,0,0,.72), rgba(0,0,0,.12) 22%, transparent 61%, rgba(0,0,0,.18)),linear-gradient(90deg, rgba(0,0,0,.10), transparent 78%)}
.archive-film.archive-world .archive-vignette{background:linear-gradient(0deg, rgba(0,0,0,.46), transparent 46%, rgba(0,0,0,.14)),linear-gradient(90deg, rgba(0,0,0,.18), transparent 77%)}
.archive-coda-actions a{box-shadow:0 18px 38px rgba(0,0,0,.26)}
@media(max-width:680px){
  .archive-kicker{padding:9px 11px;border-radius:14px}
  .archive-bottom{padding:11px 13px;border-radius:16px}
  .archive-film.archive-has-image .archive-story{padding:16px 16px 14px 16px;max-width:calc(100% - 16px)}
}


/* CURRENT / The Frontier historical-image film polish */
.archive-film::before,.archive-film::after{
  content:"";position:absolute;left:0;right:0;height:1px;z-index:12;pointer-events:none;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.18),transparent)
}
.archive-film::before{top:clamp(16px,2.5vh,28px)}
.archive-film::after{bottom:clamp(16px,2.5vh,28px)}
.archive-film .archive-image{
  transform:translate3d(var(--archive-pan-x,0),var(--archive-pan-y,0),0) scale(var(--archive-photo-scale,1.045));
  transition:opacity 1.35s cubic-bezier(.22,.64,.26,1),transform 10.5s cubic-bezier(.15,.34,.27,1);
  filter:brightness(.94) contrast(1.075) saturate(.91);
}
.archive-film .archive-image.visible{transform:translate3d(0,0,0) scale(1.008)}
.archive-film.archive-has-image .archive-story{
  background:linear-gradient(100deg,rgba(3,5,8,.58),rgba(3,5,8,.16) 74%,transparent);
  border-left:1px solid rgba(255,255,255,.24);
  padding:clamp(15px,2vw,26px) clamp(17px,2.2vw,29px);
  backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px);
}
.archive-film.archive-has-image .archive-year{color:rgba(255,255,255,.72)}
.archive-film.archive-has-image .archive-credit{color:rgba(255,255,255,.68)}
.archive-film.archive-world .archive-story{
  background:linear-gradient(100deg,rgba(2,4,8,.26),transparent);
  border-left:1px solid rgba(255,255,255,.13);padding-left:clamp(16px,2vw,28px)
}
.archive-film.archive-world .archive-story h2{font-weight:500}
.archive-film .archive-kicker,.archive-film .archive-bottom{
  background:rgba(4,6,10,.28);border:1px solid rgba(255,255,255,.09);
  backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)
}
.archive-film.archive-has-image .archive-vignette{
  background:linear-gradient(0deg,rgba(0,0,0,.74),rgba(0,0,0,.08) 29%,transparent 67%,rgba(0,0,0,.15)),
             linear-gradient(90deg,rgba(0,0,0,.12),transparent 72%)
}
.archive-film.archive-world .archive-vignette{background:linear-gradient(0deg,rgba(0,0,0,.40),transparent 49%,rgba(0,0,0,.10))}
@media(max-width:680px){
 .archive-film .archive-image{filter:brightness(.96) contrast(1.06) saturate(.92)}
 .archive-film.archive-has-image .archive-story{padding:14px 15px}
}
