:root{
  /* ---- Base ramps ---------------------------------------------------- */
  /* Canton red - the single loud accent. Order buttons, headline accents. */
  --red-50:#FDEDEE;--red-100:#F8D2D6;--red-200:#EFA3AB;--red-300:#E0707D;
  --red-400:#D14352;--red-500:#C0182B;--red-600:#A51223;--red-700:#830D1B;--red-800:#5C0912;
  /* Brass - heritage / reward / premium marker. Never a CTA. */
  --brass-50:#FBF4E4;--brass-100:#F4E4BF;--brass-200:#E8CE8F;--brass-300:#DAB65E;
  --brass-400:#C89B3C;--brass-500:#A87F2B;--brass-600:#84631F;
  /* Deep green - balance / yin-yang / fresh-ingredient contexts. */
  --green-50:#E7EEEA;--green-100:#C6D8CE;--green-200:#8FB4A2;--green-300:#4E7F68;
  --green-400:#28553F;--green-500:#17402F;--green-600:#0E2C20;
  /* Warm ink neutrals - never pure grey, always a touch of red-brown. */
  --ink-900:#171310;--ink-800:#241D19;--ink-700:#3A302A;--ink-600:#584B43;
  --ink-500:#7A6B62;--ink-400:#A0928A;--ink-300:#C6BBB3;--ink-200:#E2DAD3;--ink-100:#EFE9E3;
  /* Cream paper - the light ground of the brand. */
  --cream-50:#FEFCF7;--cream-100:#FAF3E7;--cream-200:#F3E9D6;--cream-300:#E8DBC3;
  --white:#FFFFFF;--black:#000000;
  /* Semantic status */
  --success-500:#2F7A4F;--warning-500:#C87A1E;--danger-500:#C0182B;--info-500:#2E5E7E;

  /* ---- Semantic aliases ---------------------------------------------- */
  --brand-primary:var(--red-500);
  --brand-primary-hover:var(--red-600);
  --brand-primary-press:var(--red-700);
  --brand-secondary:var(--brass-400);
  --brand-tertiary:var(--green-500);

  --text-strong:var(--ink-900);
  --text-body:var(--ink-700);
  --text-muted:var(--ink-500);
  --text-inverse:var(--cream-50);
  --text-accent:var(--red-500);
  --text-eyebrow:var(--brass-500);
  --text-on-brand:var(--white);

  --surface-page:var(--cream-100);
  --surface-card:var(--white);
  --surface-raised:var(--cream-50);
  --surface-sunken:var(--cream-200);
  --surface-ink:var(--ink-900);
  --surface-brand:var(--red-500);
  --surface-green:var(--green-500);
  --surface-brass:var(--brass-400);
  --surface-overlay:rgba(23,19,16,.72);

  --border-hairline:var(--ink-200);
  --border-default:var(--ink-300);
  --border-strong:var(--ink-900);
  --border-brand:var(--red-500);
  --focus-ring:var(--red-500);

  /* Photo protection gradient - used under text sitting on food imagery */
  --scrim-bottom:linear-gradient(to top,rgba(23,19,16,.88) 0%,rgba(23,19,16,.55) 38%,rgba(23,19,16,0) 78%); /* @kind color */
  --scrim-full:linear-gradient(to top,rgba(23,19,16,.80) 0%,rgba(23,19,16,.30) 60%,rgba(23,19,16,.15) 100%); /* @kind color */
}
