/* ============================================================
   CMW DESIGN SYSTEM — CSS CUSTOM PROPERTIES
   Concierge Medicine & Wellness | conciergemedicineandwellness.com
   ============================================================ */

:root {
  /* ── Brand Colors ───────────────────────────────────────── */
  --blue:        #7b1c2e;   /* Maroon — primary */
  --blue-dark:   #5a1020;   /* Deep maroon */
  --blue-light:  #9e2a3e;   /* Light maroon */
  --teal:        #c4973a;   /* Warm gold — accent */
  --teal-dark:   #a57d2e;   /* Deep gold */
  --teal-light:  #d4aa55;   /* Light gold */

  /* ── Neutral Palette ────────────────────────────────────── */
  --cream:       #f5f1ed;
  --cream-dark:  #ede8e2;
  --white:       #ffffff;
  --gray-50:     #f9f7f5;
  --gray-100:    #f0ede8;
  --gray-200:    #ddd9d3;
  --gray-400:    #9e9a95;
  --gray-600:    #6b6760;
  --gray-800:    #3c3a37;
  --dark:        #2a1a1e;   /* Deep warm charcoal with maroon undertone */

  /* ── Text Colors ────────────────────────────────────────── */
  --text-primary:   #2c2c2a;
  --text-secondary: #5a5754;
  --text-muted:     #8a8784;
  --text-inverse:   #ffffff;

  /* ── Accent/Utility ─────────────────────────────────────── */
  --green:      #639922;
  --amber:      #ba7517;
  --red:        #c0392b;

  /* ── Typography ─────────────────────────────────────────── */
  --font-display: 'Cormorant Garamond', 'Georgia', serif;
  --font-body:    'DM Sans', 'Segoe UI', sans-serif;

  --size-xs:   0.75rem;   /* 12px */
  --size-sm:   0.875rem;  /* 14px */
  --size-base: 1rem;      /* 16px */
  --size-lg:   1.125rem;  /* 18px */
  --size-xl:   1.25rem;   /* 20px */
  --size-2xl:  1.5rem;    /* 24px */
  --size-3xl:  1.875rem;  /* 30px */
  --size-4xl:  2.25rem;   /* 36px */
  --size-5xl:  3rem;      /* 48px */
  --size-6xl:  3.75rem;   /* 60px */
  --size-7xl:  4.5rem;    /* 72px */

  --weight-normal:    400;
  --weight-medium:    500;
  --weight-semibold:  600;
  --weight-bold:      700;

  --leading-tight:  1.2;
  --leading-snug:   1.35;
  --leading-normal: 1.6;
  --leading-relaxed:1.75;

  --tracking-tight:  -0.02em;
  --tracking-normal:  0em;
  --tracking-wide:    0.05em;
  --tracking-wider:   0.1em;
  --tracking-widest:  0.15em;

  /* ── Spacing ────────────────────────────────────────────── */
  --space-1:   0.25rem;   /* 4px  */
  --space-2:   0.5rem;    /* 8px  */
  --space-3:   0.75rem;   /* 12px */
  --space-4:   1rem;      /* 16px */
  --space-5:   1.25rem;   /* 20px */
  --space-6:   1.5rem;    /* 24px */
  --space-8:   2rem;      /* 32px */
  --space-10:  2.5rem;    /* 40px */
  --space-12:  3rem;      /* 48px */
  --space-16:  4rem;      /* 64px */
  --space-20:  5rem;      /* 80px */
  --space-24:  6rem;      /* 96px */
  --space-32:  8rem;      /* 128px */

  /* ── Layout ─────────────────────────────────────────────── */
  --max-width:       1200px;
  --max-width-prose: 720px;
  --nav-height:      80px;
  --nav-height-sm:   68px;

  /* ── Borders & Radius ───────────────────────────────────── */
  --radius-sm:   4px;
  --radius-md:   8px;
  --radius-lg:   12px;
  --radius-xl:   20px;
  --radius-full: 9999px;

  --border-color:       rgba(0, 0, 0, 0.08);
  --border-color-dark:  rgba(255, 255, 255, 0.12);

  /* ── Shadows ────────────────────────────────────────────── */
  --shadow-sm:  0 1px 3px rgba(42,26,30,0.08), 0 1px 2px rgba(42,26,30,0.04);
  --shadow-md:  0 4px 16px rgba(42,26,30,0.10), 0 2px 6px rgba(42,26,30,0.06);
  --shadow-lg:  0 10px 40px rgba(42,26,30,0.12), 0 4px 12px rgba(42,26,30,0.07);
  --shadow-xl:  0 20px 60px rgba(42,26,30,0.15), 0 8px 24px rgba(42,26,30,0.08);
  --shadow-blue: 0 8px 32px rgba(123, 28, 46, 0.22);
  --shadow-teal: 0 8px 32px rgba(196, 151, 58, 0.22);

  /* ── Transitions ────────────────────────────────────────── */
  --transition-fast:   150ms ease;
  --transition-base:   250ms ease;
  --transition-slow:   400ms ease;
  --transition-spring: 350ms cubic-bezier(0.34, 1.56, 0.64, 1);

  /* ── Z-index ────────────────────────────────────────────── */
  --z-base:    1;
  --z-above:   10;
  --z-nav:     100;
  --z-overlay: 200;
  --z-modal:   300;
  --z-toast:   400;
}
