/* Asylum — a padded cell under ultraviolet and cold tube light: deep hospital navy, UV cyan,
   a sharps-bin yellow and blood-red for the way out. Glitching display type echoes the room's
   flickering logo. Tokens only; structure is ../_engine/base.css. */
:root {
  --bg: #080a14;
  --bg-rgb: 8, 10, 20;
  --bg-2: #0d1020;
  --panel: #12162a;
  --panel-2: #1a1f38;
  --footer-bg: #05060d;
  --line: rgba(214, 228, 245, 0.12);
  --text: #e8eef6;
  --muted: #a9b4c6;
  --dim: #7a8499;
  --red: #c8102e;
  --red-deep: #8c0b21;
  --ochre: #5ec8e5;
  --ochre-soft: #9fdcf0;
  --gum: #e8b923;
  --display: "Rubik Glitch", "Impact", "Arial Black", sans-serif;
  --body: "Lato", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
  --radius: 2px;
  --wrap: 1180px;
  --gutter: clamp(16px, 4vw, 40px);
}
/* Rubik Glitch is heavy and wide with broken strokes: tighter sizes and plain Lato for numbers keep it legible. */
h1, h2, h3, h4 { letter-spacing: 0.01em; line-height: 1.12; font-weight: 400; }
h2 { font-size: clamp(1.6rem, 3vw, 2.4rem); }
h3 { font-size: clamp(1.15rem, 1.8vw, 1.4rem); }
.hero h1 { font-size: clamp(1.4rem, 2.8vw, 2.2rem); }
.btn { border-radius: 2px; font-family: var(--body); font-weight: 700; text-transform: uppercase; font-size: 0.95rem; letter-spacing: 0.06em; }
.card, .stat, .review, .booker { border-radius: 2px; }
.stat .n { font-family: var(--body); font-weight: 700; font-size: clamp(1.7rem, 2.8vw, 2.4rem); letter-spacing: 0; }
.stats-ledger .stat .n { color: var(--ochre-soft); }
.fact dd { font-family: var(--body); font-weight: 700; font-size: clamp(1.1rem, 1.8vw, 1.45rem); letter-spacing: 0; }
.rating-hero .big { font-family: var(--body); font-weight: 700; }
