/* ===========================================================================
   PLATZ 28 — Typography tokens
   Display: Oswald (condensed, ALL-CAPS, tracked). Script accent: Kaushan.
   Body/UI: Barlow. Condensed labels: Barlow Condensed.
   =========================================================================== */

:root {
  /* --- Families --- */
  --font-display:   'Oswald', 'Barlow Condensed', sans-serif;
  --font-script:    'Kaushan Script', cursive;
  --font-body:      'Barlow', system-ui, sans-serif;
  --font-ui:        'Barlow', system-ui, sans-serif;       /* same as --font-body; explicit alias for UI/subtitle contexts */
  --font-condensed: 'Barlow Condensed', 'Oswald', sans-serif;
  --font-mono:      'IBM Plex Mono', 'Barlow Condensed', monospace; /* labels, badges, channel handles, technical metadata */

  /* --- Weights --- */
  --fw-light: 300;    /* @kind font */
  --fw-regular: 400;  /* @kind font */
  --fw-medium: 500;   /* @kind font */
  --fw-semibold: 600; /* @kind font */
  --fw-bold: 700;     /* @kind font */

  /* --- Type scale (display = Oswald, headings tracked uppercase) --- */
  --fs-display-xl: 88px;   /* hero wordmark lockup */
  --fs-display-lg: 60px;
  --fs-display-md: 42px;
  --fs-h1: 34px;
  --fs-h2: 26px;
  --fs-h3: 20px;
  --fs-body-lg: 18px;
  --fs-body: 16px;
  --fs-sm: 14px;
  --fs-xs: 12.5px;
  --fs-eyebrow: 13px;      /* tracked uppercase label */

  /* --- Line heights --- */
  --lh-tight: 1.02;  /* @kind other */
  --lh-snug: 1.18;   /* @kind other */
  --lh-body: 1.55;   /* @kind other */
  --lh-loose: 1.7;   /* @kind other */

  /* --- Letter spacing --- */
  --ls-display: 0.01em;
  --ls-tight: -0.01em;
  --ls-eyebrow: 0.32em;    /* the brand's signature wide tracking */
  --ls-caps: 0.08em;
}

/* --- Helper classes (optional convenience for cards & kits) --- */
.t-eyebrow {
  font-family: var(--font-body);
  font-weight: var(--fw-medium);
  font-size: var(--fs-eyebrow);
  letter-spacing: var(--ls-eyebrow);
  text-transform: uppercase;
  color: var(--text-muted);
}
.t-display {
  font-family: var(--font-display);
  font-weight: var(--fw-bold);
  text-transform: uppercase;
  letter-spacing: var(--ls-display);
  line-height: var(--lh-tight);
  color: var(--text-strong);
}
.t-script {
  font-family: var(--font-script);
  font-weight: var(--fw-regular);
  color: var(--accent);
  line-height: 1.1;
}
.t-label {
  font-family: var(--font-mono);
  font-weight: var(--fw-medium);
  font-size: var(--fs-eyebrow);
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--text-muted);
}
