:root {
  /* Palette — cream + dusty purple + lemon highlighter, DNA shared with djpardis.com */
  --cream: #f5ede0;
  --sand: #e8dcc4;
  --sand-deep: #ddcfae;
  --ink: #1a1814;
  --ink-2: #2a2620;
  --muted: #6b645a;
  --purple: #7d78b5;
  --purple-deep: #6b46c1;
  --yellow: #ffff99;
  --pink: #ff00aa;

  /* Focus ring (derived from --purple) */
  --focus-ring: rgba(125, 120, 181, 0.28);

  /* Type */
  --font-display: "Space Grotesk", system-ui, -apple-system, Segoe UI, Roboto, sans-serif;
  --font-body: "Inter", system-ui, -apple-system, Segoe UI, Roboto, sans-serif;
  /* Was JetBrains Mono — replaced with Inter so labels/meta read cleanly. */
  --font-mono: "Inter", system-ui, -apple-system, Segoe UI, Roboto, sans-serif;

  /* Type scale */
  --fs-micro: 0.75rem;
  --fs-meta: 0.8125rem;
  --fs-body: 1rem;
  --fs-lead: 1.125rem;
  --fs-h3: 1.375rem;
  --fs-h2: clamp(1.75rem, 2.5vw, 2.5rem);
  --fs-h1: clamp(2.5rem, 6vw, 4.5rem);
  --fs-display: clamp(3.75rem, 11vw, 8.75rem);

  /* Line heights */
  --lh-tight: 0.88;
  --lh-snug: 1.1;
  --lh-body: 1.5;

  /* Spacing */
  --sp-1: 0.25rem;
  --sp-2: 0.5rem;
  --sp-3: 0.75rem;
  --sp-4: 1rem;
  --sp-5: 1.5rem;
  --sp-6: 2rem;
  --sp-7: 3rem;
  --sp-8: 4rem;
  --sp-9: 6rem;
  --sp-10: 8rem;

  /* Layout */
  --max-w: 1320px;
  --max-w-text: 72ch;
  --gutter: clamp(1.25rem, 4vw, 3rem);

  /* Radii */
  --r-sm: 4px;
  --r-md: 6px;
  --r-lg: 12px;
  --r-pill: 999px;

  /* Transition */
  --t-fast: 120ms ease-out;
  --t-med: 200ms ease-out;
}
