/* ============================================================
   TYPOGRAPHY — Michael Style
   Three voices:
   · Display  — Archivo Black. Poster weight, UPPERCASE, tight. Studio energy.
   · Body     — Inter. Clean, bilingual (EN/ES). Italic for Spanish subtitles.
   · Mono     — JetBrains Mono. The "instrument voice": labels, prices, data.
   ============================================================ */
:root {
  /* —— Families —— */
  --font-display: "Archivo", system-ui, sans-serif;
  --font-body:    "Inter", system-ui, sans-serif;
  --font-mono:    "JetBrains Mono", ui-monospace, SFMono-Regular, monospace;

  /* —— Weights —— */
  --fw-regular:   400; /* @kind font */
  --fw-medium:    500; /* @kind font */
  --fw-semibold:  600; /* @kind font */
  --fw-bold:      700; /* @kind font */
  --fw-black:     800; /* @kind font */
  --fw-poster:    900; /* @kind font */

  /* —— Display sizing (poster type) —— */
  --fs-display-xl: clamp(3rem, 8vw, 6.4rem);   /* @kind font */
  --fs-display-l:  clamp(2.6rem, 6vw, 4rem);   /* @kind font */
  --fs-display-m:  2.2rem;                      /* @kind font */
  --fs-display-s:  1.55rem;                      /* @kind font */

  /* —— Body sizing —— */
  --fs-body-lg:    1.1rem;  /* @kind font */
  --fs-body:       0.94rem; /* @kind font */
  --fs-body-sm:    0.78rem; /* @kind font */
  --fs-caption:    0.7rem;  /* @kind font */

  /* —— Mono sizing (labels & data) —— */
  --fs-mono:       0.66rem; /* @kind font */
  --fs-mono-sm:    0.58rem; /* @kind font */

  /* —— Line heights —— */
  --lh-poster:     0.9;    /* @kind font */
  --lh-display:    0.94;   /* @kind font */
  --lh-body:       1.55;   /* @kind font */

  /* —— Letter spacing —— */
  --ls-display:   -0.03em;  /* @kind font */
  --ls-display-xl:-0.045em; /* @kind font */
  --ls-mono:       0.13em;  /* @kind font */
  --ls-mono-wide:  0.16em;  /* @kind font */
}

/* —— Reusable type roles (optional helpers) —— */
.ms-display {
  font-family: var(--font-display);
  font-weight: var(--fw-black);
  text-transform: uppercase;
  line-height: var(--lh-display);
  letter-spacing: var(--ls-display);
}
.ms-body {
  font-family: var(--font-body);
  font-weight: var(--fw-regular);
  line-height: var(--lh-body);
}
.ms-mono {
  font-family: var(--font-mono);
  font-size: var(--fs-mono);
  font-weight: var(--fw-medium);
  letter-spacing: var(--ls-mono);
  text-transform: uppercase;
}
/* Spanish subtitle treatment — italic, muted */
.ms-es {
  font-style: italic;
  color: var(--muted-2);
}
