:root {
  /* Primary — Lime */
  --primary-50: #F8FDE8;
  --primary-100: #F3FBC4;
  --primary-200: #EEF98A;
  --primary-300: #EBF56E;
  --primary-400: #E9F464;
  --primary-500: #E8F860;
  --primary-600: #C6D640;
  --primary-700: #96A328;
  --primary-800: #5C6618;
  --primary-900: #32380C;

  /* Neutral — Ice / Charcoal */
  --neutral-50: #F5F7FA;
  --neutral-100: #F3F5F9;
  --neutral-200: #E4E8EE;
  --neutral-300: #C8D0D8;
  --neutral-400: #9AA6B2;
  --neutral-500: #6B7784;
  --neutral-600: #4A5560;
  --neutral-700: #2F3840;
  --neutral-800: #1A1F24;
  --neutral-900: #111111;

  /* Accent */
  --accent-lime: #E8F860;
  --accent-ice: #C8E2E7;
  --accent-powder: #B8D8E0;
  --accent-ink: #111111;

  /* Semantic */
  --color-background: #F3F5F9;
  --color-background-alt: #FFFFFF;
  --color-surface: #FFFFFF;
  --color-surface-dark: #111111;
  --color-surface-tint: #C8E2E7;
  --color-surface-elevated: #FFFFFF;
  --color-text: #111111;
  --color-text-muted: #4A5560;
  --color-text-accent: #96A328;
  --color-text-on-dark: #FFFFFF;
  --color-text-on-primary: #111111;
  --color-overlay: rgba(17, 17, 17, 0.45);
  --color-overlay-light: rgba(243, 245, 249, 0.92);
  --color-image-letterbox: #111111;

  /* CTA */
  --cta-primary-bg: #E8F860;
  --cta-primary-text: #111111;
  --cta-primary-hover-bg: #C6D640;
  --cta-secondary-bg: #111111;
  --cta-secondary-text: #FFFFFF;
  --cta-secondary-hover-bg: #2A2A2A;
  --cta-ghost-bg: transparent;
  --cta-ghost-text: #111111;
  --cta-ghost-border: #E4E8EE;
  --cta-ghost-hover-bg: #FFFFFF;

  /* Border */
  --border-default: #E4E8EE;
  --border-subtle: rgba(17, 17, 17, 0.08);
  --border-on-dark: rgba(255, 255, 255, 0.14);
  --border-focus: #E8F860;
  --border-error: #E24B4B;

  /* Typography */
  --font-display: "Plus Jakarta Sans", Inter, system-ui, sans-serif;
  --font-body: "Plus Jakarta Sans", Inter, system-ui, sans-serif;

  /* Spacing */
  --space-1: 4px;
  --space-2: 8px;
  --space-3: 12px;
  --space-4: 16px;
  --space-5: 24px;
  --space-6: 32px;
  --space-7: 48px;
  --space-8: 64px;
  --space-9: 96px;
  --space-10: 128px;

  /* Radius */
  --radius-none: 0;
  --radius-sm: 10px;
  --radius-md: 16px;
  --radius-lg: 24px;
  --radius-xl: 32px;
  --radius-full: 9999px;

  /* Shadows */
  --shadow-none: none;
  --shadow-sm: 0 4px 16px rgba(17, 17, 17, 0.05);
  --shadow-md: 0 12px 32px rgba(17, 17, 17, 0.08);
  --shadow-lg: 0 24px 48px rgba(17, 17, 17, 0.12);
  --shadow-card-hover: 0 16px 40px rgba(17, 17, 17, 0.1);

  /* Motion */
  --duration-fast: 180ms;
  --duration-normal: 320ms;
  --duration-slow: 640ms;
  --ease-default: cubic-bezier(0.4, 0, 0.2, 1);
  --ease-enter: cubic-bezier(0.16, 1, 0.3, 1);
  --ease-exit: cubic-bezier(0.4, 0, 1, 1);
  --ease-drawer: cubic-bezier(0.77, 0.2, 0.05, 1);

  /* Layout */
  --max-content: 1200px;
  --scroll-offset: 84px;
  --header-stick-trigger: 8px;
}
