/* ==========================================================================
   Augusta Place — Design Tokens
   The single source of truth for color, type, spacing, radius, shadow, motion.
   Everything else references these custom properties.
   ========================================================================== */

:root {
  /* ---- Brand color ---------------------------------------------------- */
  --ap-forest:        #2F5D50; /* primary — growth, healing, stability */
  --ap-forest-600:    #295247;
  --ap-forest-700:    #21433A;
  --ap-forest-050:    #EAF1EE;

  --ap-charcoal:      #2C2C2C; /* headings, important text */
  --ap-purple:        #7B4BA3; /* accent — used sparingly */
  --ap-purple-600:    #6B3F90;
  --ap-purple-050:    #F1EBF6;

  --ap-sage:          #DDE7E1; /* soft background accent */
  --ap-warm-white:    #FAFAF7; /* primary page background */
  --ap-stone:         #F3F5F4; /* alternate section background */
  --ap-success:       #5D8C6A; /* confirmation states */

  /* ---- Text ----------------------------------------------------------- */
  --ap-text:          #2C2C2C;
  --ap-text-2:        #666666;
  --ap-text-on-dark:  #F7F9F8;
  --ap-text-on-dark-2:#C6D3CD;

  /* ---- Semantic surface aliases -------------------------------------- */
  --ap-bg:            var(--ap-warm-white);
  --ap-bg-alt:        var(--ap-stone);
  --ap-bg-sage:       var(--ap-sage);
  --ap-bg-forest:     var(--ap-forest);
  --ap-border:        #E4E8E6;
  --ap-border-strong: #D2D9D6;

  /* ---- Typography ----------------------------------------------------- */
  --ap-font-head: "General Sans", "Satoshi", "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --ap-font-body: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;

  /* Fluid type scale (mobile → desktop) */
  --ap-h1: clamp(2.125rem, 1.35rem + 3.9vw, 4rem);      /* 34 → 64 */
  --ap-h2: clamp(1.75rem, 1.30rem + 2.25vw, 2.75rem);   /* 28 → 44 */
  --ap-h3: clamp(1.5rem, 1.28rem + 1.10vw, 2.125rem);   /* 24 → 34 */
  --ap-h4: clamp(1.25rem, 1.14rem + 0.55vw, 1.5rem);    /* 20 → 24 */
  --ap-body: 1.125rem;   /* 18px */
  --ap-small: 0.9375rem; /* 15px */
  --ap-eyebrow: 0.8125rem;

  --ap-lh-tight: 1.12;
  --ap-lh-head: 1.18;
  --ap-lh-body: 1.7;

  --ap-fw-body: 400;
  --ap-fw-medium: 500;
  --ap-fw-semibold: 600;
  --ap-fw-bold: 700;

  --ap-tracking-eyebrow: 0.14em;
  --ap-tracking-head: -0.01em;

  /* ---- Spacing scale (8pt base) -------------------------------------- */
  --ap-space-1: 0.25rem;
  --ap-space-2: 0.5rem;
  --ap-space-3: 0.75rem;
  --ap-space-4: 1rem;
  --ap-space-5: 1.5rem;
  --ap-space-6: 2rem;
  --ap-space-7: 3rem;
  --ap-space-8: 4rem;
  --ap-space-9: 6rem;
  --ap-space-10: 8rem;

  /* Section rhythm — generous, lets sections breathe (elevated) */
  --ap-section-y: clamp(5rem, 3.5rem + 8vw, 10rem);
  --ap-section-y-lg: clamp(6rem, 4rem + 9vw, 12rem);
  --ap-container: 1200px;
  --ap-container-wide: 1320px;
  --ap-container-narrow: 800px;
  --ap-gutter: clamp(1.25rem, 0.5rem + 3vw, 3rem);

  /* ---- Radius (softer, more premium) --------------------------------- */
  --ap-radius-sm: 10px;
  --ap-radius: 18px;
  --ap-radius-lg: 28px;
  --ap-radius-xl: 36px;
  --ap-radius-pill: 999px;

  /* ---- Shadow (feather-soft, healthcare-calm — never harsh) ---------- */
  --ap-shadow-sm: 0 1px 2px rgba(44,44,44,0.03), 0 4px 12px rgba(47,93,80,0.04);
  --ap-shadow: 0 6px 18px rgba(47,93,80,0.05), 0 20px 48px rgba(44,44,44,0.06);
  --ap-shadow-lg: 0 12px 32px rgba(47,93,80,0.07), 0 40px 90px rgba(44,44,44,0.10);
  --ap-shadow-focus: 0 0 0 3px var(--ap-warm-white), 0 0 0 6px var(--ap-purple);

  /* ---- Motion --------------------------------------------------------- */
  --ap-ease: cubic-bezier(0.22, 1, 0.36, 1);
  --ap-ease-out: cubic-bezier(0.16, 1, 0.3, 1);
  --ap-dur-fast: 180ms;
  --ap-dur: 320ms;
  --ap-dur-slow: 600ms;

  /* ---- Layering ------------------------------------------------------- */
  --ap-z-header: 100;
  --ap-z-overlay: 200;
  --ap-z-modal: 300;
}
