:root {
  /* ── Fonts ── */
  --font-family: 'Plus Jakarta Sans', system-ui, -apple-system, sans-serif;

  /* ── Primary palette ── */
  --color-primary: #7C3AED;
  --color-primary-light: #A78BFA;
  --color-accent: #66DC7E;
  --color-success: #16A34A;
  --color-warm: #FBBF24;

  /* ── Cosmic deep space ── */
  --cosmic-void: #050510;
  --cosmic-start: #08071A;
  --cosmic-mid: #100E28;
  --cosmic-end: #0A0918;

  /* ── CTA glow gradient ── */
  --cta-start: #A855F7;
  --cta-end: #7C3AED;

  /* ── Dark section ── */
  --dark-start: #030212;
  --dark-end: #060D28;

  /* ── Surfaces ── */
  --color-surface: #FFFFFF;
  --color-background: #F9FAFB;
  --color-text: #111827;
  --color-text-muted: #6B7280;
  --color-border-subtle: #E5E7EB;

  /* ── Footer ── */
  --footer-bg: #060510;

  /* ── Goal carousel colors ── */
  --goal-green: #34D399;
  --goal-yellow: #FCD34D;
  --goal-blue: #60A5FA;
  --goal-pink: #F472B6;
  --goal-pill-bg: rgba(124, 58, 237, 0.15);
  --goal-pill-border: rgba(124, 58, 237, 0.3);

  /* ── Trend colors ── */
  --trend-up: #4ADE80;
  --trend-down: #F87171;

  /* ── Feature card accent colors ── */
  --feature-green: #34D399;
  --feature-yellow: #FCD34D;
  --feature-blue: #60A5FA;
  --feature-pink: #F472B6;
  --feature-purple: #A855F7;
  --feature-orange: #F59E0B;

  /* ── Spacing ── */
  --space-xs: 4px;
  --space-sm: 8px;
  --space-md: 12px;
  --space-lg: 16px;
  --space-xl: 24px;
  --space-2xl: 32px;
  --space-3xl: 48px;
  --space-4xl: 64px;
  --space-5xl: 96px;

  /* ── Radii ── */
  --radius-sm: 8px;
  --radius-md: 12px;
  --radius-lg: 16px;
  --radius-xl: 20px;
  --radius-2xl: 28px;
  --radius-pill: 999px;

  /* ── Typography ── */
  --font-size-xs: 12px;
  --font-size-sm: 13px;
  --font-size-body: 14px;
  --font-size-body-lg: 16px;
  --font-size-body-xl: 18px;
  --font-size-title: 22px;
  --font-size-section: 20px;
  --font-size-display-md: 36px;
  --font-size-display-lg: 56px;

  /* ── Shadows ── */
  --shadow-card: 0 16px 28px rgba(0, 0, 0, 0.25);
  --shadow-soft: 0 10px 18px rgba(0, 0, 0, 0.15);
  --shadow-subtle: 0 4px 12px rgba(10, 6, 50, 0.11);

  /* ── Container ── */
  --container-max: 1200px;
  --container-padding: 24px;

  /* ── Motion ── */
  --ease-out-expo: cubic-bezier(0.16, 1, 0.3, 1);
  --ease-out-quint: cubic-bezier(0.22, 1, 0.36, 1);
  --duration-fast: 0.2s;
  --duration-normal: 0.4s;
  --duration-slow: 0.8s;
  --duration-reveal: 1s;
}
