/* ============================================================
   Nolab — Typography tokens
   Display: Playfair Display (serif, high-contrast, editorial)
   Text/UI: Plus Jakarta Sans (geometric humanist sans)
   Pairing: serif for headlines & prices, sans for everything UI.
   ============================================================ */

:root {
  /* Families (§5.1)
     Playfair Display — headlines, editorial messages, brand expression.
       The keyword in a headline may be set in ITALIC for emphasis.
     Plus Jakarta Sans — body, interfaces, functional communication.
     Futura — RESERVED exclusively for the wordmark (shipped as logo SVGs;
       not used in product UI, so no @font-face is provided). */
  --font-display: "Playfair Display", Georgia, "Times New Roman", serif;
  --font-sans: "Plus Jakarta Sans", ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
  --font-mono: ui-monospace, "SF Mono", Menlo, monospace;

  /* Weights */
  --weight-light: 300;
  --weight-regular: 400;
  --weight-medium: 500;
  --weight-semibold: 600;
  --weight-bold: 700;

  /* Type scale (px). Display ramp is serif; text ramp is sans. */
  --text-display-2xl: 76px;
  --text-display-xl: 60px;
  --text-display-lg: 46px;
  --text-display-md: 36px;
  --text-display-sm: 28px;

  --text-xl: 22px;
  --text-lg: 18px;
  --text-md: 16px;   /* body default */
  --text-sm: 14px;
  --text-xs: 12px;
  --text-2xs: 11px;

  /* Line heights — editorial type runs generous (§5.2: Body 16/1.62) */
  --leading-tight: 1.06;      /* H1 display (76/106) */
  --leading-snug: 1.2;
  --leading-normal: 1.5;
  --leading-body: 1.62;       /* Body & Body Large */
  --leading-relaxed: 1.62;

  /* Letter spacing */
  --tracking-tight: -0.02em;
  --tracking-snug: -0.01em;
  --tracking-normal: 0;
  --tracking-wide: 0.04em;
  --tracking-wider: 0.14em;   /* eyebrows / overlines, uppercase */
}
