/* ============================================================
   r-tec — Typography tokens
   ------------------------------------------------------------
   Hausschrift (house): GT America  → Arial system substitute.
   Schmuckschrift (accent/mono): Lucida Sans Typewriter
        → IBM Plex Mono web substitute.

   Rules from the brand manual:
   • H01 headings: house sans, BOLD, ALL CAPS (VERSALIEN).
     Use ẞ (capital sharp-s) instead of ß in caps.
   • H02 sublines: the mono accent face.
   • Chapter numbers: house sans, Regular, very large (≈88pt).
   • Body (Fließtext): house sans, Regular.
   • Kickers / labels / footers: the mono accent face,
     often in small caps / tracked-out uppercase.
   ============================================================ */

:root {
  /* --- Font families --- */
  --font-sans: Arial, Helvetica, "Helvetica Neue", "Liberation Sans", sans-serif;
  --font-mono: "Lucida Sans Typewriter", "Lucida Console", ui-monospace, "SF Mono", Menlo, Consolas, monospace;

  /* Semantic role aliases */
  --font-display:  var(--font-sans);   /* big headings / chapter numbers */
  --font-heading:  var(--font-sans);   /* H01 */
  --font-subline:  var(--font-mono);   /* H02 */
  --font-body:     var(--font-sans);   /* Fließtext */
  --font-label:    var(--font-mono);   /* kickers, footers, UI labels */

  /* --- Type scale (px) ---
     Tuned for screen. The deck H01 is 28pt / chapter no. 88pt;
     on web we scale fluidly but keep the same hierarchy. */
  --text-3xs: 11px;
  --text-2xs: 12px;
  --text-xs:  13px;
  --text-sm:  15px;
  --text-md:  17px;   /* base body */
  --text-lg:  20px;
  --text-xl:  24px;
  --text-2xl: 32px;
  --text-3xl: 44px;
  --text-4xl: 64px;
  --text-5xl: 96px;   /* chapter numbers / hero */

  /* --- Weights --- */
  --weight-regular: 400;
  --weight-medium:  500;
  --weight-bold:    700;
  --weight-black:   900;

  /* --- Line heights --- */
  --leading-tight:   1.05;
  --leading-snug:    1.2;
  --leading-normal:  1.5;
  --leading-relaxed: 1.65;

  /* --- Letter spacing ---
     Mono labels are tracked out; caps headings tightened. */
  --tracking-heading: -0.01em;
  --tracking-label:   0.12em;   /* uppercase mono kickers */
  --tracking-wide:    0.04em;

  /* --- Semantic text sizes --- */
  --text-body:     var(--text-md);
  --text-body-lg:  var(--text-lg);
  --text-caption:  var(--text-xs);
  --text-kicker:   var(--text-xs);
}
