:root {
  --color-midnight: #0B1A2E;
  --color-midnight-deep: #050D1A;
  --color-midnight-soft: #16284A;
  --color-platinum: #B8BDC4;
  --color-platinum-light: #E8EAED;
  --color-optical: #FAFBFC;
  --color-accent: #C9A96E;
  --color-accent-soft: #E5D4AE;
  --color-text: #1A2B47;
  --color-muted: #6B7280;
  --color-border: rgba(11, 26, 46, 0.08);
  --color-border-dark: rgba(232, 234, 237, 0.12);

  --font-serif: 'Playfair Display', Georgia, 'Times New Roman', serif;
  --font-sans: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;

  --fs-xs: 0.8rem;
  --fs-sm: 0.9rem;
  --fs-base: 1rem;
  --fs-lg: 1.25rem;
  --fs-xl: 1.563rem;
  --fs-2xl: 1.953rem;
  --fs-3xl: 2.441rem;
  --fs-4xl: 3.052rem;
  --fs-5xl: 4.2rem;

  --lh-tight: 1.15;
  --lh-snug: 1.3;
  --lh-base: 1.6;
  --lh-loose: 1.8;

  --tracking-tight: -0.02em;
  --tracking-normal: 0;
  --tracking-wide: 0.08em;
  --tracking-widest: 0.18em;

  --sp-1: 0.5rem;
  --sp-2: 1rem;
  --sp-3: 1.5rem;
  --sp-4: 2rem;
  --sp-5: 3rem;
  --sp-6: 4rem;
  --sp-7: 6rem;
  --sp-8: 8rem;

  --container: 1200px;
  --container-narrow: 880px;

  --radius-sm: 4px;
  --radius-md: 8px;
  --radius-lg: 16px;

  --shadow-sm: 0 1px 2px rgba(11, 26, 46, 0.06);
  --shadow-md: 0 8px 24px rgba(11, 26, 46, 0.08);
  --shadow-lg: 0 24px 48px rgba(11, 26, 46, 0.12);

  --header-h: 72px;

  --transition-fast: 180ms cubic-bezier(0.4, 0, 0.2, 1);
  --transition-base: 320ms cubic-bezier(0.4, 0, 0.2, 1);
  --transition-slow: 600ms cubic-bezier(0.4, 0, 0.2, 1);

  --easing-soft: cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

@media (min-width: 960px) {
  :root {
    --header-h: 80px;
    --fs-5xl: 5rem;
  }
}
