/* ==========================================================================
   THEME — SIGNAL
   Warm grey and signal red. Condensed uppercase display type.
   Heavy plant-equipment look. Load AFTER main.css instead of theme-precision.
   ========================================================================== */
:root{
  --c-paper:#F2F0EC;
  --c-surface:#FFFFFF;
  --c-panel:#E7E3DC;
  --c-primary:#232427;
  --c-primary-dark:#111214;
  --c-accent:#C8102E;
  --c-ink:#1A1B1D;
  --c-muted:#666A6F;
  --c-line:#D2CDC4;
  --c-on-primary-dim:#A6A9AD;
  --c-hatch-a:#E7E3DC;
  --c-hatch-b:#EFECE6;
  --c-hatch-text:#9A948A;
  --c-hatch-dark-a:#2A2B2E;
  --c-hatch-dark-b:#232427;
  --c-hatch-dark-text:#6E7276;

  --f-display:"Oswald",system-ui,sans-serif;
  --f-body:"Inter",system-ui,sans-serif;
  --f-mono:"IBM Plex Mono",ui-monospace,monospace;
  --f-button:var(--f-display);
  --f-stat:var(--f-display);
  --fw-display:600;
  --lh-display:1;
  --ls-display:.005em;
  --tt-display:uppercase;
  --fs-stat:2.1rem;
  --fs-button:.94rem;
  --ls-button:.06em;
  --tt-button:uppercase;

  --radius:0px;
  --wrap:1220px;
  --space-section:96px;

  --hero-grid:none;
}
/* theme-specific accents */
.header{border-bottom-width:3px;border-bottom-color:var(--c-accent)}
.card{border-bottom:4px solid transparent}
.card:hover{border-bottom-color:var(--c-accent);background:var(--c-surface)}
.panel-split__item:last-child{background:var(--c-accent);color:#fff}
.panel-split__item:last-child h3,.panel-split__item:last-child p,.panel-split__item:last-child .panel-split__no{color:#fff}

/* ---- Option B page treatments ---------------------------------------- */
.header__utility{background:var(--c-primary)}
.page-head{
  background:var(--c-surface);
  border-bottom:3px solid var(--c-accent);
  padding:48px 0 56px;
}
.page-head h1{color:var(--c-primary)}
.breadcrumb{color:var(--c-muted)}
.stations{background:var(--c-panel)}
.station{text-align:center}
.station__no{font-family:var(--f-display);font-size:1.05rem;font-weight:600;color:var(--c-accent)}
.cta-band{background:var(--c-primary);border-color:var(--c-primary)}
.cta-band h2{color:#fff}
.cta-band .lead{color:var(--c-on-primary-dim)}
.cta-band .btn--outline{color:#fff;border-color:rgba(255,255,255,.5)}
.cta-band .btn--outline:hover{background:#fff;color:var(--c-primary);border-color:#fff}
.card__link{border-bottom:0;color:var(--c-primary);font-family:var(--f-display);font-size:.85rem;letter-spacing:.08em}
.card__link::before{content:"";position:absolute;inset:0}
.card__link::after{content:" \2192";position:static;color:var(--c-accent)}
.section-head h2{color:var(--c-primary)}
.drawing__head{background:var(--c-primary)}
.table thead th{background:var(--c-primary)}
.faq summary{color:var(--c-primary)}
.mobile-bar a + a{background:var(--c-accent)}

/* ---- Option B nav and stat treatment ---------------------------------- */
.nav__link{
  font-family:var(--f-display);font-size:.94rem;font-weight:500;
  text-transform:uppercase;letter-spacing:.05em;color:var(--c-primary);
}
.nav__link:hover,.nav__link--active{color:var(--c-accent);border-bottom-color:var(--c-accent)}
.brand__name{font-size:1.2rem;letter-spacing:.05em}
.stats__item:nth-child(odd) .stats__value{color:var(--c-accent)}
