/* ============================================================
   meeting place. — TYPOGRAPHY TOKENS
   Geometric + airy. Thin display (Jost), rounded headings
   (Quicksand), humanist body (Mulish), mono for data.
   ============================================================ */

:root {
  /* ---- Families ---- */
  --font-display: 'Jost', 'Century Gothic', system-ui, sans-serif;
  --font-heading: 'Quicksand', 'Jost', system-ui, sans-serif;
  --font-body: 'Mulish', system-ui, -apple-system, sans-serif;
  --font-mono: 'IBM Plex Mono', ui-monospace, 'SF Mono', monospace;

  /* ---- Weights ---- */
  --fw-thin: 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 (rem, 16px base) ---- */
  --text-2xs: 0.6875rem;  /* 11px — mono micro-labels */
  --text-xs: 0.75rem;     /* 12px */
  --text-sm: 0.875rem;    /* 14px */
  --text-base: 1rem;      /* 16px */
  --text-md: 1.125rem;    /* 18px */
  --text-lg: 1.375rem;    /* 22px */
  --text-xl: 1.75rem;     /* 28px */
  --text-2xl: 2.25rem;    /* 36px */
  --text-3xl: 3rem;       /* 48px */
  --text-4xl: 4rem;       /* 64px */
  --text-5xl: 5.5rem;     /* 88px — hero display */

  /* ---- Line heights ---- */
  --leading-tight: 1.08;
  --leading-snug: 1.25;
  --leading-normal: 1.5;
  --leading-relaxed: 1.65;

  /* ---- Letter spacing ---- */
  --tracking-tightest: -0.03em;
  --tracking-tight: -0.015em;
  --tracking-normal: 0;
  --tracking-wide: 0.04em;
  --tracking-wider: 0.12em;   /* mono eyebrows / labels */
  --tracking-widest: 0.24em;  /* lowercase brand eyebrows */

  /* ---- Semantic roles ---- */
  --type-hero-size: var(--text-5xl);
  --type-hero-weight: var(--fw-thin);
  --type-hero-tracking: var(--tracking-tight);

  --type-display-size: var(--text-3xl);
  --type-display-weight: var(--fw-thin);

  --type-h1-size: var(--text-2xl);
  --type-h2-size: var(--text-xl);
  --type-h3-size: var(--text-lg);
  --type-heading-weight: var(--fw-semibold);

  --type-body-size: var(--text-base);
  --type-body-weight: var(--fw-regular);

  --type-label-size: var(--text-xs);
  --type-label-weight: var(--fw-semibold);
  --type-label-tracking: var(--tracking-wider);
}
