:root {
  /* Backgrounds — pure cinematic black */
  --color-bg-void: #000000;
  --color-bg-base: #000000;
  --color-bg-elevated: #050505;
  --color-bg-soft: #161616;
  --color-bg-overlay: rgba(0, 0, 0, 0.72);

  /* Accent — luminous yellow */
  --color-accent: #ffc402;
  --color-accent-bright: #ffd54a;
  --color-accent-deep: #c9a000;
  --color-accent-muted: rgba(255, 196, 2, 0.1);
  --color-accent-border: rgba(255, 196, 2, 0.35);
  --color-accent-glow: rgba(255, 196, 2, 0.18);

  /* Legacy gold aliases (map to accent) */
  --color-gold-deep: var(--color-accent-deep);
  --color-gold: var(--color-accent);
  --color-gold-bright: var(--color-accent-bright);
  --color-gold-light: var(--color-accent-bright);
  --color-gold-muted: var(--color-accent-muted);
  --color-gold-border: var(--color-accent-border);

  /* Text */
  --color-text-primary: #ffffff;
  --color-text-secondary: rgba(255, 255, 255, 0.72);
  --color-text-muted: rgba(255, 255, 255, 0.42);
  --color-text-soft: rgba(255, 255, 255, 0.88);
  --color-text-inverse: #000000;

  /* Semantic */
  --color-focus: var(--color-accent-bright);
  --color-placeholder: rgba(255, 196, 2, 0.22);

  /* Gradients */
  --gradient-vignette: radial-gradient(ellipse at center, transparent 0%, var(--color-bg-void) 78%);
  --gradient-hero: linear-gradient(160deg, #000000 0%, #0a0a0a 45%, #111111 100%);
  --gradient-accent-glow: radial-gradient(circle, rgba(255, 196, 2, 0.14) 0%, transparent 68%);
  --gradient-film-fade: linear-gradient(180deg, transparent 0%, rgba(0, 0, 0, 0.4) 50%, #000000 100%);

  /* Typography */
  --font-display: "Cormorant Garamond", Georgia, "Times New Roman", serif;
  --font-body: "DM Sans", system-ui, -apple-system, sans-serif;

  --text-xs: 0.6875rem;
  --text-sm: 0.875rem;
  --text-base: 1.0625rem;
  --text-lg: 1.25rem;
  --text-xl: 1.75rem;
  --text-2xl: 2.75rem;
  --text-3xl: 4rem;
  --text-hero: clamp(2.85rem, 7.2vw, 6.25rem);
  --text-display: clamp(3.5rem, 10vw, 8rem);

  --leading-tight: 1.05;
  --leading-snug: 1.3;
  --leading-body: 1.65;

  --tracking-tight: -0.025em;
  --tracking-wide: 0.14em;
  --tracking-wider: 0.24em;

  /* Spacing */
  --space-1: 0.25rem;
  --space-2: 0.5rem;
  --space-3: 0.75rem;
  --space-4: 1rem;
  --space-5: 1.5rem;
  --space-6: 2rem;
  --space-8: 3rem;
  --space-10: 4rem;
  --space-12: 6rem;
  --space-16: 8rem;
  --space-section: clamp(5rem, 10vw, 9rem);
  --container-max: 76rem;
  --gutter: clamp(1.25rem, 4.5vw, 3rem);

  /* Borders & effects */
  --border-color: rgba(255, 255, 255, 0.07);
  --border-accent: var(--color-accent-border);
  --hairline: 1px solid var(--border-accent);
  --radius-sm: 1px;
  --shadow-soft: 0 20px 60px rgba(0, 0, 0, 0.55);
  --shadow-accent: 0 0 60px rgba(255, 196, 2, 0.08);

  /* Motion */
  --ease-out-expo: cubic-bezier(0.16, 1, 0.3, 1);
  --ease-cinematic: cubic-bezier(0.22, 1, 0.36, 1);
  --duration-fast: 220ms;
  --duration-base: 500ms;
  --duration-slow: 900ms;
  --duration-slower: 1400ms;
  --duration-ident: 2000ms;
  --stagger: 90ms;

  /* Layout */
  --header-height: 4.75rem;
}

@media (min-width: 768px) {
  :root {
    --header-height: 5rem;
  }
}
