:root {
  /* Brand — derived from logo: black + script gradient (magenta → coral → amber) + silver wordmark */
  --color-ink: #0A0A0A;
  --color-ink-2: #141416;
  --color-ink-3: #1C1C1F;
  --color-canvas: #FFFFFF;
  --color-sand: #FAF6F2;
  --color-silver: #C9C9CE;
  --color-silver-2: #9A9AA1;

  --color-magenta: #E5226B;
  --color-magenta-dark: #B91355;
  --color-coral: #F4527A;
  --color-amber: #F39445;
  --color-gold: #E6B656;

  --brand-gradient: linear-gradient(90deg, #E5226B 0%, #F4527A 45%, #F39445 100%);
  --brand-gradient-soft: linear-gradient(135deg, rgba(229, 34, 107, 0.12) 0%, rgba(243, 148, 69, 0.12) 100%);
  --brand-gradient-vert: linear-gradient(180deg, #E5226B 0%, #F4527A 45%, #F39445 100%);

  /* Neutrals */
  --color-line: rgba(10, 10, 10, 0.08);
  --color-line-strong: rgba(10, 10, 10, 0.16);
  --color-line-dark: rgba(255, 255, 255, 0.10);
  --color-body: #2A2A2E;
  --color-body-muted: #5A5A62;

  /* Type */
  --font-display: "Italiana", "Cormorant Garamond", Georgia, serif;
  --font-script: "Parisienne", "Allura", cursive;
  --font-body: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
  --font-mono: "JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, monospace;

  /* Motion */
  --ease-silk: cubic-bezier(0.22, 1, 0.36, 1);
  --ease-drama: cubic-bezier(0.2, 0.8, 0.2, 1);
  --dur-ui: 160ms;
  --dur-hover: 240ms;
  --dur-reveal: 480ms;
  --dur-hero: 900ms;

  /* Elevation (layered hairline + soft) */
  --shadow-card: 0 0 0 1px rgba(10, 10, 10, 0.06), 0 24px 48px -20px rgba(10, 10, 10, 0.18);
  --shadow-float: 0 0 0 1px rgba(10, 10, 10, 0.08), 0 32px 64px -24px rgba(229, 34, 107, 0.22);
  --shadow-dark: 0 0 0 1px rgba(255, 255, 255, 0.06), 0 28px 56px -20px rgba(0, 0, 0, 0.60);

  /* Layout */
  --radius-xs: 6px;
  --radius-sm: 10px;
  --radius-md: 16px;
  --radius-lg: 24px;
  --radius-pill: 999px;

  --space-xs: 0.5rem;
  --space-sm: 0.875rem;
  --space-md: 1.25rem;
  --space-lg: 2rem;
  --space-xl: 3.5rem;
  --space-2xl: 5.5rem;
  --space-3xl: 8rem;

  --container: 1240px;
  --container-narrow: 920px;
  --container-reading: 680px;
}

@media (prefers-reduced-motion: reduce) {
  :root {
    --dur-ui: 0ms;
    --dur-hover: 0ms;
    --dur-reveal: 0ms;
    --dur-hero: 0ms;
  }
}
