:root {
  /* Brand */
  --cx-red:        #E3002A;
  --cx-red-600:    #C20024;
  --cx-red-700:    #A3001E;
  --cx-red-50:     #FFD9D9;
  --cx-red-on-dark:#FF4D6A;

  /* Neutrals */
  --cx-ink:        #222831;
  --cx-night:      #0E131A;
  --cx-slate:      #304157;
  --cx-body:       #4A5160;
  --cx-muted:      #6B7280;
  --cx-steel:      #CACACA;
  --cx-line:       #E6E6E6;
  --cx-fog:        #F2F2F2;
  --cx-mist:       #F2F4FA;
  --cx-white:      #FFFFFF;

  /* Semantic */
  --cx-success: #0F7B4A; --cx-warning: #9A6700; --cx-danger: #B3001F; --cx-info: #1F5FBF;
  --cx-focus: 0 0 0 3px #FFFFFF, 0 0 0 6px var(--cx-red);

  /* Fonts — system stacks only, no font files to download */
  --ff-head: "Poppins", "Segoe UI", Arial, system-ui, sans-serif;
  --ff-body: "Open Sans", "Segoe UI", Arial, system-ui, sans-serif;
  --ff-mono: ui-monospace, "Cascadia Code", Consolas, monospace;

  /* Fluid type scale */
  --fs-display: clamp(2.25rem, 1.3rem + 4.2vw, 3.75rem);
  --fs-h1: clamp(2rem, 1.45rem + 2.4vw, 2.8125rem);
  --fs-h2: clamp(1.625rem, 1.25rem + 1.65vw, 2.25rem);
  --fs-h3: clamp(1.25rem, 1.05rem + .9vw, 1.75rem);
  --fs-h4: 1.25rem;
  --fs-lead: clamp(1.0625rem, 1rem + .3vw, 1.25rem);
  --fs-body: clamp(1rem, .97rem + .12vw, 1.0625rem);
  --fs-small: .875rem;
  --fs-eyebrow: .8125rem;

  /* Spacing (4px base) */
  --sp-1:4px; --sp-2:8px; --sp-3:12px; --sp-4:16px; --sp-5:24px; --sp-6:32px;
  --sp-7:48px; --sp-8:64px; --sp-9:96px; --sp-10:128px;

  --shadow-1: 0 1px 2px rgba(14,19,26,.06), 0 2px 8px rgba(14,19,26,.06);
  --shadow-2: 0 12px 32px rgba(14,19,26,.12);
  --radius: 2px;

  --container-max: 1320px;
  --container-wide: 1560px;
}
