/* ============================================================
   Design tokens — yellows.one
   Brand: white 60% / #0073b9 30% / #fcd214 10%
   ============================================================ */
:root {

  /* ── COLORS ─────────────────────────────────────────────── */

  /* Surfaces (white 60%) */
  --c-bg:            #ffffff;
  --c-surface:       #f7f9fc;        /* cards, alt sections */
  --c-surface-blue:  #eef6fd;        /* blue-tinted bg — --c-primary text ≥4.5:1 (4.63:1) */

  /* Primary blue (30%) */
  --c-primary:       #0073b9;
  --c-primary-dark:  #005a94;        /* hover */

  /* Accent yellow (10%) */
  --c-accent:        #fcd214;
  --c-accent-dark:   #e5bd00;        /* hover */
  --c-accent-text:   #111111;        /* text on yellow bg */

  /* Text */
  --c-text:          #1a1f2e;        /* main text — near-black, slight depth */
  --c-text-2:        #4a5568;        /* secondary */
  --c-text-muted:    #5b6675;        /* captions, meta — AA on white (5.83:1) */
  --c-text-inv:      #ffffff;        /* on dark/blue bg */

  /* Focus */
  --c-focus:         #0073b9;        /* focus-ring color */

  /* UI */
  --c-border:        #e2e8f0;

  /* ── TYPOGRAPHY ─────────────────────────────────────────── */

  --font-base:    'Inter', system-ui, -apple-system, Arial, sans-serif;
  --font-heading: 'Inter', system-ui, -apple-system, Arial, sans-serif;

  /* Scale (modular, ×1.25) */
  --text-xs:      0.75rem;    /* 12px */
  --text-sm:      0.875rem;   /* 14px */
  --text-base:    1rem;       /* 16px */
  --text-lg:      1.125rem;   /* 18px */
  --text-xl:      1.25rem;    /* 20px */
  --text-2xl:     1.5rem;     /* 24px */
  --text-3xl:     1.875rem;   /* 30px */
  --text-4xl:     2.25rem;    /* 36px */
  --text-5xl:     3rem;       /* 48px */
  --text-6xl:     3.75rem;    /* 60px */
  --text-display: 4.5rem;     /* 72px — hero only */

  /* Weights */
  --fw-normal:   400;
  --fw-medium:   500;
  --fw-semibold: 600;
  --fw-bold:     700;
  --fw-extrabold: 800;

  /* Line heights */
  --lh-tight:   1.1;
  --lh-snug:    1.25;
  --lh-normal:  1.5;
  --lh-relaxed: 1.65;

  /* ── SPACING (8px grid) ──────────────────────────────────── */

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

  --section-pad:        var(--sp-20);   /* 80px desktop section padding */
  --section-pad-mobile: var(--sp-12);   /* 48px mobile */

  /* ── LAYOUT ─────────────────────────────────────────────── */

  --max-width:        1200px;
  --max-width-mid:    1000px;
  --max-width-narrow: 760px;    /* body text max line width */
  --gutter:           1.25rem;  /* 20px */

  /* ── BORDERS & RADIUS ────────────────────────────────────── */

  --r-sm:   4px;
  --r-md:   8px;
  --r-lg:   12px;
  --r-xl:   20px;
  --r-full: 9999px;

  /* ── SHADOWS ─────────────────────────────────────────────── */

  --shadow-sm:      0 1px 3px rgba(0,0,0,.1), 0 1px 2px rgba(0,0,0,.06);
  --shadow-md:      0 4px 8px rgba(0,0,0,.08), 0 2px 4px rgba(0,0,0,.05);
  --shadow-lg:      0 10px 20px rgba(0,0,0,.08), 0 4px 6px rgba(0,0,0,.04);
  --shadow-xl:      0 20px 40px rgba(0,0,0,.08);
  --shadow-accent:  0 4px 18px rgba(252,210,20,.45);   /* yellow glow — CTA */
  --shadow-primary: 0 4px 18px rgba(0,115,185,.3);     /* blue glow */

  /* ── TRANSITIONS ─────────────────────────────────────────── */

  --ease-fast:   150ms ease;
  --ease-base:   250ms ease;

  /* ── BUTTONS ─────────────────────────────────────────────── */

  --btn-radius:  var(--r-md);
  --btn-pad:     0.875rem 1.75rem;
  --btn-pad-lg:  1.125rem 2.25rem;
  --btn-fw:      700;

  /* ── BREAKPOINTS (reference — use in media queries) ──────── */
  /* --bp-sm: 480px  --bp-md: 768px  --bp-lg: 1024px  --bp-xl: 1280px */

}
