:root {
  /* Backgrounds */
  --color-white: #ffffff;
  --color-beige-light: #f7efe7;
  --color-beige: #e7d6c4;
  --color-beige-dark: #c69e76;

  /* Brand accent */
  --color-turquoise: #68948d;
  --color-turquoise-dark: #4f7771;
  --color-turquoise-light: #e8f0ee;

  /* Text */
  --color-text-primary: #12312e;
  --color-text-secondary: #5c5446;
  --color-text-muted: #9c8f7e;
  --color-text-inverse: #ffffff;

  /* Semantic */
  --color-success: #2e9e68;
  --color-warning: #d4880a;
  --color-error: #c84040;

  /* Gradients */
  --gradient-hero: linear-gradient(
    to bottom,
    rgba(255, 255, 255, 0.05) 0%,
    rgba(18, 49, 46, 0.45) 65%,
    rgba(18, 49, 46, 0.7) 100%
  );
  --gradient-beige-fade: linear-gradient(
    to bottom,
    var(--color-white) 0%,
    var(--color-beige-light) 100%
  );
  --gradient-turquoise: linear-gradient(
    135deg,
    var(--color-turquoise) 0%,
    #88ada7 50%,
    var(--color-turquoise) 100%
  );

  /* Typography scale */
  --text-xs: 0.75rem;
  --text-sm: 0.875rem;
  --text-base: 1rem;
  --text-lg: 1.125rem;
  --text-xl: 1.375rem;
  --text-2xl: 1.75rem;
  --text-3xl: 2.25rem;
  --text-4xl: 3rem;
  --text-5xl: 4rem;
  --text-6xl: 5.5rem;

  /* Spacing */
  --space-1: 4px;
  --space-2: 8px;
  --space-3: 12px;
  --space-4: 16px;
  --space-5: 20px;
  --space-6: 24px;
  --space-8: 32px;
  --space-10: 40px;
  --space-12: 48px;
  --space-16: 64px;
  --space-20: 80px;
  --space-24: 96px;

  /* Radius */
  --radius-sm: 4px;
  --radius-md: 8px;
  --radius-lg: 14px;
  --radius-xl: 20px;
  --radius-full: 9999px;

  /* Effects and motion */
  --shadow-sm: 0 2px 10px rgba(18, 49, 46, 0.05);
  --shadow-md: 0 12px 32px rgba(104, 148, 141, 0.18);
  --shadow-nav: 0 2px 16px rgba(18, 49, 46, 0.08);
  --transition-fast: 150ms ease;
  --transition-base: 180ms ease;
  --transition-slow: 300ms ease;
}
