:root {
  /* ===================================
     BRAND COLORS (Aligned Arc Identity)
     =================================== */

  /* Primary Brand Colors */
  --color-yellow: #fddf18;      /* Energy, CTAs, primary highlights */
  --color-charcoal: #303030;    /* Text, authority, structure */
  --color-light-gray: #DFDEDA;  /* Backgrounds, subtle sections */
  --color-pink: #D09FA6;        /* Warmth, humanity accents */
  --color-cyan: #03A791;        /* Clarity, trust, secondary actions */
  --color-charcoal-alpha: #30303060;    /* Text, authority, structure */

  /* Semantic Color Mapping */
  --color-primary: var(--color-yellow);
  --color-secondary: var(--color-cyan);
  --color-text: var(--color-charcoal);
  --color-text-light: #666666;
  --color-background: #DFDEDA;
  --color-background-alt: var(--color-light-gray);
  --color-accent-warm: var(--color-pink);

  /* ===================================
     TYPOGRAPHY
     =================================== */

  /* Font Families */
  --font-body: 'Manrope', -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', 'Helvetica', 'Arial', sans-serif;
  --font-display: 'Cormorant Garamond', Georgia, 'Times New Roman', serif;

  /* Fluid Typography Scale using clamp() */
  --text-xs: clamp(0.8125rem, 0.78rem + 0.15vw, 0.875rem);
  --text-sm: clamp(0.9375rem, 0.9rem + 0.2vw, 1.0625rem);
  --text-base: clamp(1.0625rem, 1.02rem + 0.25vw, 1.15rem);
  --text-lg: clamp(1.1875rem, 1.1rem + 0.4vw, 1.35rem);
  --text-xl: clamp(1.25rem, 1.15rem + 0.5vw, 1.5rem);
  --text-2xl: clamp(1.5rem, 1.28rem + 1vw, 2rem);
  --text-3xl: clamp(1.875rem, 1.5rem + 1.75vw, 2.875rem);
  --text-4xl: clamp(2.4rem, 1.85rem + 2.5vw, 4rem);
  --text-5xl: clamp(2.75rem, 2.1rem + 3vw, 4.75rem);

  /* Line Heights */
  --leading-tight: 1.2;
  --leading-normal: 1.5;
  --leading-relaxed: 1.6;
  --leading-loose: 1.8;

  /* ===================================
     SPACING SCALE
     =================================== */

  --space-xs: 0.5rem;      /* 8px */
  --space-sm: 1rem;        /* 16px */
  --space-md: 1.5rem;      /* 24px */
  --space-lg: 2rem;        /* 32px */
  --space-xl: 3rem;        /* 48px */
  --space-2xl: 4rem;       /* 64px */
  --space-3xl: 6rem;       /* 96px */
  --space-4xl: 8rem;       /* 128px */

  /* ===================================
     LAYOUT
     =================================== */

  /* Container Widths */
  --container-max: 1280px;
  --container-narrow: 800px;
  --container-padding: var(--space-md);

  /* Navigation */
  --nav-height: 72px;
  --nav-height-mobile: 64px;

  /* ===================================
     BORDER RADIUS (Arc Shapes)
     =================================== */

  --radius-sm: 8px;
  --radius-md: 16px;
  --radius-lg: 24px;
  --radius-xl: 48px;
  --radius-2xl: 64px;
  --radius-pill: 999px;

  /* ===================================
     SHADOWS
     =================================== */

  --shadow-sm: 0 1px 3px rgba(0, 0, 0, 0.08);
  --shadow-md: 0 4px 12px rgba(0, 0, 0, 0.1);
  --shadow-lg: 0 12px 32px rgba(0, 0, 0, 0.12);
  --shadow-xl: 0 20px 48px rgba(0, 0, 0, 0.15);

  /* ===================================
     TRANSITIONS
     =================================== */

  --transition-fast: 150ms ease;
  --transition-base: 250ms ease;
  --transition-slow: 400ms ease;
  --transition-slower: 600ms cubic-bezier(0.16, 1, 0.3, 1);

  /* ===================================
     Z-INDEX SCALE
     =================================== */

  --z-base: 1;
  --z-dropdown: 10;
  --z-sticky: 50;
  --z-nav: 100;
  --z-modal: 1000;
  --z-toast: 1100;
}

/* ===================================
   RESPONSIVE ADJUSTMENTS
   =================================== */

@media (max-width: 479px) {
  :root {
    --container-padding: var(--space-md);
  }
}

@media (min-width: 768px) {
  :root {
    --container-padding: var(--space-lg);
  }
}

@media (min-width: 1024px) {
  :root {
    --container-padding: var(--space-xl);
  }
}
