/* ============================================================
   ESMÉE — Typography tokens
   Source: lib/core/constants/app_typography.dart (Fira Sans scale)
   + landing (Nunito, extra-bold display).
   ============================================================ */

:root {
  /* ── Families ──────────────────────────────────────────── */
  /* Nunito is the primary brand face for web / marketing. */
  --font-display: 'Nunito', ui-sans-serif, system-ui, -apple-system, 'Segoe UI', sans-serif;
  --font-body: 'Nunito', ui-sans-serif, system-ui, -apple-system, 'Segoe UI', sans-serif;
  /* Fira Sans is the native mobile-app face (documented for parity). */
  --font-app: 'Fira Sans', ui-sans-serif, system-ui, sans-serif;

  /* ── Font sizes (px) ───────────────────────────────────── */
  /* Body / UI scale — mirrors the app's TextTheme. */
  --text-2xs: 10px;
  --text-xs: 12px;
  --text-sm: 14px;
  --text-base: 16px;
  --text-lg: 18px;
  --text-xl: 20px;
  --text-2xl: 22px;   /* section headers (BcSectionHeader) */
  --text-3xl: 24px;
  --text-4xl: 28px;
  --text-5xl: 32px;   /* app displayLarge */

  /* Marketing display sizes (landing hero) */
  --display-sm: 36px;
  --display-md: 44px;
  --display-lg: 54px;  /* hero headline, ~3.4rem */

  /* ── Font weights ──────────────────────────────────────── */
  --weight-light: 300;
  --weight-regular: 400;
  --weight-medium: 500;
  --weight-semibold: 600;
  --weight-bold: 700;
  --weight-extrabold: 800;
  --weight-black: 900;   /* Nunito black — heavy display */

  /* ── Line heights ──────────────────────────────────────── */
  --leading-tight: 1.1;    /* display / headlines */
  --leading-snug: 1.25;
  --leading-normal: 1.5;   /* body copy */
  --leading-relaxed: 1.65;

  /* ── Letter spacing ────────────────────────────────────── */
  --tracking-tighter: -0.6px;  /* big greetings / display */
  --tracking-tight: -0.3px;    /* headings */
  --tracking-normal: 0;
  --tracking-wide: 0.2px;      /* uppercase eyebrows / badges */
}
