:root {
  /* === Typography === */
  --font-display: 'Unbounded', 'Inter', system-ui, sans-serif;
  --font-body: 'Clash Display', 'Inter', system-ui, sans-serif;
  --font-mono: 'SF Mono', ui-monospace, Menlo, monospace;

  --fs-xs: 12px;
  --fs-sm: 14px;
  --fs-base: 18px;
  --fs-lg: 20px;
  --fs-xl: 24px;
  --fs-2xl: 36px;
  --fs-3xl: 54px;
  --fs-4xl: 76px;
  --fs-h1: clamp(44px, 6vw, var(--fs-4xl));
  --fs-h2: clamp(32px, 4vw, var(--fs-3xl));
  --fs-h3: var(--fs-xl);
  --fs-lead: var(--fs-lg);

  --fw-display: 400;
  --fw-body: 400;
  --fw-medium: 500;
  --fw-semibold: 600;
  --fw-bold: 700;

  --leading-body: 1.52;
  --leading-tight: 1.06;
  --tracking-display: -0.025em;

  /* === Spacing === */
  --space-1: 4px;
  --space-2: 8px;
  --space-3: 12px;
  --space-4: 16px;
  --space-5: 20px;
  --space-6: 24px;
  --space-8: 32px;
  --space-12: 48px;
  --section-y-desktop: 96px;
  --section-y-tablet: 68px;
  --section-y-phone: 48px;

  /* === Container === */
  --container-max: 1600px;
  --container-gutter-desktop: 36px;
  --container-gutter-tablet: 24px;
  --container-gutter-phone: 16px;

  /* === Radius === */
  --radius-sm: 4px;
  --radius-md: 8px;
  --radius-lg: 12px;
  --radius-pill: 9999px;

  /* === Colors === */
  --color-bg: #ffffff;
  --color-surface: #f7f7f7;
  --color-surface-warm: #eeeeee;
  --color-fg: #111111;
  --color-fg-2: #3a3a3a;
  --color-muted: #707070;
  --color-meta: #111111;
  --color-border: #d9d9d9;
  --color-border-soft: #eeeeee;
  --color-accent: #111111;
  --color-accent-rgb: 17, 17, 17;
  --color-on-accent: #ffffff;
  --color-accent-hover: #2a2a2a;
  --color-accent-active: #000000;

  /* === Gold === */
  --color-gold: #b08b3c;
  --color-gold-soft: #d4b06a;
  --color-gold-strong: #8a6a24;

  /* === Semantic === */
  --color-success: #168a46;
  --color-warn: #b7791f;
  --color-danger: #c53030;

  /* === Shadows === */
  --elev-flat: none;
  --elev-ring: 0 0 0 1px var(--color-border);

  /* === Motion === */
  --motion-fast: 150ms;
  --motion-base: 240ms;
  --ease-standard: cubic-bezier(0.2, 0, 0, 1);

  /* === Buttons === */
  --btn-padding-y: 14px;
  --btn-padding-x: 22px;
  --btn-font-size: var(--fs-sm);
  --btn-font-weight: var(--fw-medium);
  --btn-radius: 0;
  --btn-gap: 10px;
}
