:root {
  /* PRIMARY — Aelodea brand */
  --aelodea-green:     #033C1C;
  --forest-deep:       #022914;
  --aelodea-light:     #0A5A2E;

  /* SURFACES — light theme caldo */
  --bg:                #FAF7F2;
  --bg-alt:            #F0EBE0;
  --surface:           #FFFFFF;

  /* INK & TYPO */
  --ink:               #0A1F12;
  --ink-secondary:     #3D4A42;
  --muted:             #6B7068;
  --hint:              #A8ACA5;

  /* BORDERS */
  --border:            rgba(10, 31, 18, 0.08);
  --border-strong:     rgba(10, 31, 18, 0.16);
  --divider:           rgba(10, 31, 18, 0.06);

  /* DARK SECTIONS */
  --dark-bg:           #022914;
  --dark-ink:          #F0EBE0;
  --dark-border:       rgba(240, 235, 224, 0.12);

  /* ACCENT */
  --sage:              #7B9669;
  --aelodea-glow:      rgba(3, 60, 28, 0.08);

  /* TYPOGRAPHY */
  --font-display: 'Cormorant Garamond', 'Times New Roman', serif;
  --font-body:    'Inter', -apple-system, BlinkMacSystemFont, sans-serif;
  --font-mono:    'JetBrains Mono', monospace;

  --fs-hero:      clamp(48px, 8vw, 96px);
  --fs-display:   clamp(36px, 5vw, 64px);
  --fs-h2:        clamp(28px, 3.5vw, 44px);
  --fs-h3:        clamp(22px, 2.5vw, 28px);
  --fs-h4:        18px;
  --fs-lead:      20px;
  --fs-body:      17px;
  --fs-small:     15px;
  --fs-label:     12px;

  /* SPACING */
  --space-3:   16px;
  --space-4:   24px;
  --space-5:   32px;
  --space-6:   48px;
  --space-7:   64px;
  --space-8:   96px;
  --space-9:  128px;
  --space-10: 160px;

  /* CONTAINERS */
  --container-max:    1280px;
  --container-narrow: 880px;
  --container-text:   680px;

  /* RADIUS */
  --radius-sm: 8px;
  --radius-md: 16px;
  --radius-lg: 24px;
  --radius-xl: 32px;
  --radius-pill: 9999px;

  /* SHADOWS */
  --shadow-sm:   0 1px 2px rgba(10, 31, 18, 0.04);
  --shadow-md:   0 8px 24px rgba(10, 31, 18, 0.06);
  --shadow-lg:   0 20px 60px rgba(10, 31, 18, 0.08);
  --shadow-card: 0 4px 16px rgba(10, 31, 18, 0.04), 0 16px 48px rgba(10, 31, 18, 0.04);

  /* TRANSITIONS */
  --ease-out:    cubic-bezier(0.16, 1, 0.3, 1);
  --ease-spring: cubic-bezier(0.22, 1, 0.36, 1);
  --dur-fast:    200ms;
  --dur-base:    400ms;
  --dur-slow:    800ms;

  /* BREAKPOINTS (for JS reference) */
  --bp-mobile:  768px;
  --bp-tablet:  1024px;
  --bp-desktop: 1280px;
}
