/* Byte IT — Time Corridor styles. All rules gated by body[data-journey]
   so the static tier renders exactly like the legacy page. */

/* --- article cards: slightly larger per user review 2026-11-07 --- */
body[data-journey="home"] .entry h3 { font-size: 23px; margin: 10px 0 15px; }
body[data-journey="home"] .entry p:not(.meta) { font-size: 15px; line-height: 1.62; }
body[data-journey="home"] .entry { padding: 30px 0 33px; }
/* hero 3D "B" slightly larger from the start (was clamp 220-510px) */
body[data-journey="home"] .hero h1 img { width: clamp(240px, 43vw, 565px); }

/* WebGL reads through the dark DOM — lift the whole canvas uniformly
   (user review 2026-11-07: too dark). Uniform filter also covers shader
   objects that material-level brightening cannot touch. */
body[data-journey="home"] canvas { filter: brightness(1.3) saturate(1.05); }

/* --- stations & plaques (Phase 1) --- */
body[data-journey="home"] section.station { scroll-margin-top: 12px; }
body[data-journey="home"] .station-reveal {
  min-height: 22svh; /* other eras stay compact until their models arrive */
  display: grid;
  place-items: center;
  text-align: center;
  position: relative;
}
body[data-journey="home"] .station-reveal .section-heading { margin: 0 auto; }
/* Full WebGL exhibits need a dedicated reveal stage before the intro/cards.
   The first 1890 station retains its compact, separately framed composition. */
@media (min-width: 701px) and (pointer: fine) {
  body[data-journey="home"] section.station:not(#station-1890) .station-reveal {
    min-height: 68svh;
    justify-items: start;
    text-align: left;
  }
  body[data-journey="home"] section.station:not(#station-1890) .station-reveal .section-heading {
    width: 45%; margin: 0;
    position: relative; z-index: 1;
  }
}
body[data-journey="home"] .station-intro {
  max-width: 720px;
  margin: 0 auto 64px;
  text-align: center;
  color: #b8cce7;
  font-size: clamp(18px, 2vw, 23px);
  line-height: 1.65;
}
body[data-journey="home"] .station-next {
  border-top: 1px solid #23426580;
  padding: 35px 0 15px;
  margin-top: 65px;
  text-align: left;
}
body[data-journey="home"] .station-reading:empty + .station-next { margin-top: 8px; }
body[data-journey="home"] .station-next a {
  color: #e6ad67;
  text-decoration: none;
  font-size: 14px;
  letter-spacing: .06em;
}
body[data-journey="home"] .station-next a:hover,
body[data-journey="home"] .station-next a:focus-visible { text-decoration: underline; }
@media (max-width: 700px), (pointer: coarse) {
  body[data-journey="home"] .station-reveal { min-height: 26svh; }
  body[data-journey="home"] .station-intro { margin-bottom: 30px; }
  body[data-journey="home"] .station-next { margin-top: 35px; }
}

body[data-journey="home"] .plaque-grid { gap: 0 50px; }

body[data-journey="home"] .legacy-block {
  border-top: 1px solid #23426580;
  padding: 72px 0 8px;
}
body[data-journey="home"] .legacy-block:first-of-type { border-top: 0; padding-top: 8px; }

/* lite tier: stations snap like the legacy full-screen flow */
@media (pointer: coarse) {
  body[data-journey="home"] .entries { grid-template-columns: 1fr; }
  html:has(body[data-journey="home"]) { scroll-snap-type: y proximity; }
  html:has(body[data-journey="home"]) section.station { scroll-snap-align: start; }
}

body[data-journey="home"] .station-empty { color: #8aa3c8; font-style: italic; }
