/* ============================================================
   OVENTRI · Design Tokens v2
   Palette: ivory, burgundy, navy (official brand kit)
   ============================================================ */

:root,
[data-theme='light'] {
  /* Surfaces · ivory-forward, true to brand */
  --color-bg: #FEFEFE;
  --color-surface: #FAF8F3;
  --color-surface-2: #F5F2EB;
  --color-surface-offset: #F0ECE2;
  --color-surface-offset-2: #E9E3D5;
  --color-surface-dynamic: #DED6C4;
  --color-divider: #D4CBB8;
  --color-border: #B8A98B;

  /* Text · deep navy (the brand's secondary color, used as body ink) */
  --color-text: #01122A;
  --color-text-muted: #3B4556;
  --color-text-faint: #8089A0;
  --color-text-inverse: #FEFEFE;

  /* Primary · burgundy (brand primary) */
  --color-primary: #7B0116;
  --color-primary-hover: #5A0010;
  --color-primary-active: #45000C;
  --color-primary-highlight: #F0CED4;

  /* Accent · navy (brand secondary) */
  --color-accent: #01122A;
  --color-accent-hover: #020A1A;
  --color-accent-active: #01050F;
  --color-accent-highlight: #C7D0E2;

  /* Navy · (same as accent, kept for backward compatibility) */
  --color-navy: #01122A;
  --color-navy-soft: #1E2A42;
  --color-navy-highlight: #C7D0E2;

  /* Burgundy · (same as primary, kept for backward compatibility) */
  --color-burgundy: #7B0116;
  --color-burgundy-soft: #A01A2D;
  --color-burgundy-highlight: #F0CED4;

  /* Warning / error / success (for form validation) */
  --color-warning: #A66222;
  --color-error: #9B3A3A;
  --color-success: #5F6F3F;

  /* Radius · minimal, almost none */
  --radius-sm: 2px;
  --radius-md: 3px;
  --radius-lg: 4px;
  --radius-xl: 8px;
  --radius-full: 9999px;

  /* Transitions */
  --transition-interactive: 320ms cubic-bezier(0.22, 1, 0.36, 1);
  --transition-slow: 600ms cubic-bezier(0.22, 1, 0.36, 1);

  /* Shadows · soft and warm */
  --shadow-sm: 0 1px 2px oklch(0.2 0.02 60 / 0.06);
  --shadow-md: 0 4px 18px oklch(0.2 0.02 60 / 0.08);
  --shadow-lg: 0 18px 48px oklch(0.2 0.02 60 / 0.12);

  /* Content widths */
  --content-narrow: 640px;
  --content-default: 1040px;
  --content-wide: 1320px;
  --content-full: 100%;

  /* Fonts */
  --font-display: 'Cormorant Garamond', 'Didot', Georgia, serif;
  --font-body: 'Inter', 'Helvetica Neue', Arial, sans-serif;
  --font-eyebrow: 'Inter', 'Helvetica Neue', Arial, sans-serif;
}

/* ============================================================
   Type Scale · editorial, a touch larger for display
   ============================================================ */
:root {
  --text-xs: clamp(0.72rem, 0.68rem + 0.2vw, 0.82rem);
  --text-sm: clamp(0.82rem, 0.78rem + 0.25vw, 0.92rem);
  --text-base: clamp(0.98rem, 0.94rem + 0.2vw, 1.08rem);
  --text-lg: clamp(1.1rem, 1rem + 0.5vw, 1.35rem);
  --text-xl: clamp(1.4rem, 1.2rem + 1vw, 2rem);
  --text-2xl: clamp(2rem, 1.4rem + 2.5vw, 3.25rem);
  --text-3xl: clamp(2.5rem, 1.4rem + 4vw, 4.75rem);
  --text-hero: clamp(3rem, 1rem + 6.5vw, 7rem);

  /* Spacing */
  --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;

  /* Eyebrow letter spacing */
  --tracking-eyebrow: 0.22em;
}
