/* ==========================================================================
   TOKENS — single source of truth for colour, type, space, motion, elevation
   Rooster Builders, Inc.
   ========================================================================== */

:root {
  /* ---- Colour ---------------------------------------------------------- */
  --ink:            #14161A;   /* Forged Graphite — primary dark ground      */
  --ink-soft:       #1B1F25;   /* Slate Smoke — layered surfaces on dark     */
  --ink-raised:     #22262D;   /* Raised card on dark                        */
  --crest:          #B4232B;   /* Comb Crimson — THE action colour           */
  --crest-hot:      #D02A33;   /* Hover / active crimson                     */
  --crest-deep:     #8E1A21;   /* Pressed crimson                            */
  --brass:          #C7A45A;   /* Aged Brass — decoration only               */
  --brass-bright:   #E0BE78;
  --brass-deep:     #8A6D2F;   /* Brass that passes AA on light grounds      */
  --bone:           #F4F1EA;   /* Lime Bone — warm light ground              */
  --bone-deep:      #E7E2D7;   /* Light surface, one step down               */
  --mist:           #8A8F98;   /* Mortar Grey — secondary text on dark       */
  --slate:          #4A5058;   /* Secondary text on light (AA compliant)     */
  --white:          #FFFFFF;
  --success:        #1F7A4D;
  --error:          #C0392B;
  --whatsapp:       #25D366;

  /* Hairlines and washes */
  --line:           rgba(199, 164, 90, 0.22);
  --line-strong:    rgba(199, 164, 90, 0.40);
  --line-light:     rgba(20, 22, 26, 0.12);
  --glass-dark:     rgba(20, 22, 26, 0.84);
  --glass-raised:   rgba(34, 38, 45, 0.60);
  --glass-light:    rgba(244, 241, 234, 0.86);
  --scrim:          rgba(10, 11, 13, 0.78);

  /* ---- Typography ------------------------------------------------------ */
  --font-display: 'Archivo', 'Helvetica Neue', Helvetica, Arial, sans-serif;
  --font-body:    'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Arial, sans-serif;

  --fs-eyebrow:  0.6875rem;                              /* 11px            */
  --fs-micro:    0.8125rem;                              /* 13px            */
  --fs-small:    0.9375rem;                              /* 15px            */
  --fs-body:     clamp(1rem, 0.96rem + 0.2vw, 1.125rem); /* 16 → 18px       */
  --fs-lead:     clamp(1.0625rem, 1rem + 0.4vw, 1.3125rem);
  --fs-h4:       clamp(1.125rem, 1.05rem + 0.4vw, 1.375rem);
  --fs-h3:       clamp(1.375rem, 1.2rem + 0.8vw, 1.875rem);
  --fs-h2:       clamp(2rem, 1.5rem + 2.2vw, 3.5rem);
  --fs-h1:       clamp(2.5rem, 1.6rem + 4.2vw, 5.25rem);
  --fs-mega:     clamp(3.25rem, 1.6rem + 7vw, 8rem);

  --lh-tight:    1.02;
  --lh-snug:     1.18;
  --lh-body:     1.65;
  --ls-display:  -0.03em;
  --ls-eyebrow:  0.18em;

  /* ---- Space ----------------------------------------------------------- */
  --sp-1:  0.25rem;
  --sp-2:  0.5rem;
  --sp-3:  0.75rem;
  --sp-4:  1rem;
  --sp-5:  1.5rem;
  --sp-6:  2rem;
  --sp-7:  3rem;
  --sp-8:  4rem;
  --sp-9:  6rem;
  --section-y: clamp(4.5rem, 9vw, 11rem);
  --gutter:    clamp(1.25rem, 4vw, 3.5rem);
  --maxw:      1280px;
  --maxw-text: 68ch;

  /* ---- Radius ---------------------------------------------------------- */
  --r-xs: 3px;
  --r-sm: 5px;
  --r-md: 8px;
  --r-lg: 12px;
  --r-pill: 999px;

  /* ---- Elevation — always multi-layer ---------------------------------- */
  --sh-1: 0 1px 2px rgba(20,22,26,.06), 0 2px 6px rgba(20,22,26,.06);
  --sh-2: 0 1px 2px rgba(20,22,26,.07), 0 8px 24px rgba(20,22,26,.10);
  --sh-3: 0 1px 2px rgba(20,22,26,.08), 0 8px 24px rgba(20,22,26,.12), 0 24px 60px rgba(20,22,26,.16);
  --sh-4: 0 2px 4px rgba(20,22,26,.10), 0 14px 34px rgba(20,22,26,.16), 0 40px 90px rgba(20,22,26,.24);
  --sh-crest: 0 1px 2px rgba(142,26,33,.24), 0 10px 26px rgba(142,26,33,.28), 0 22px 50px rgba(142,26,33,.20);
  --sh-inset-top: inset 0 1px 0 rgba(255,255,255,.10);

  /* ---- Motion ---------------------------------------------------------- */
  --ease-out:    cubic-bezier(.16, 1, .3, 1);
  --ease-in-out: cubic-bezier(.65, 0, .35, 1);
  --ease-spring: cubic-bezier(.34, 1.56, .64, 1);
  --d-micro:  160ms;
  --d-base:   320ms;
  --d-slow:   560ms;
  --d-enter:  680ms;

  /* ---- Z-index scale — never invent a value outside this --------------- */
  --z-base:      1;
  --z-raised:    10;
  --z-sticky:    20;
  --z-header:    30;
  --z-mobilebar: 40;
  --z-overlay:   50;
  --z-modal:     60;
  --z-toast:     70;
}
