/* ============================================================
   tokens.css — DSv1 structural tokens
   Type scale, spacing, layout, radii, motion.
   No colors, no font-family choices — those live in theme.css.
   Brand-agnostic; shared across all omni agents & outputs.
   ============================================================ */

:root {
  /* Type roles (clamp where they flex) */
  --type-display:    clamp(2.5rem, 6vw, 5rem);
  --type-display-lh: 1.05;
  --type-h1:         clamp(2rem, 4vw, 3rem);
  --type-h1-lh:      1.1;
  --type-h2:         clamp(1.5rem, 3vw, 2rem);
  --type-h2-lh:      1.2;
  --type-h3:         1.25rem;
  --type-h3-lh:      1.3;
  --type-eyebrow:    0.875rem;
  --type-body:       1rem;
  --type-body-lh:    1.55;
  --type-lede:       1.125rem;
  --type-lede-lh:    1.5;
  --type-small:      0.875rem;
  --type-button:     0.95rem;
  --type-nav:        1rem;

  /* Spacing scale (rem) */
  --space-1:  0.25rem;
  --space-2:  0.5rem;
  --space-3:  0.75rem;
  --space-4:  1rem;
  --space-5:  1.25rem;
  --space-6:  1.5rem;
  --space-8:  2rem;
  --space-10: 2.5rem;
  --space-12: 3rem;
  --space-16: 4rem;
  --space-20: 5rem;
  --space-24: 6rem;
  --space-32: 8rem;
  --space-40: 10rem;
  --space-48: 12rem;

  /* Layout */
  --nav-height:   72px;
  --container-max: 76rem;
  --radius-sm:    6px;
  --radius-md:    12px;
  --radius-pill:  999px;

  /* Motion */
  --dur-fast:   120ms;
  --dur-base:   200ms;
  --ease-out:   cubic-bezier(.2,.7,.2,1);
}
