@import url('https://fonts.googleapis.com/css2?family=Archivo:wght@400;500;600;700;800;900&family=Source+Serif+4:ital,opsz,wght@0,8..60,300..900;1,8..60,300..700&display=swap');
:root{
  /* one line = one typeface; type and colour always travel together */
  --font-red:'Archivo','Helvetica Neue',Arial,sans-serif;   /* marks 900, headlines 800 uppercase, flush left */
  --font-cyan:'Source Serif 4',Georgia,'Times New Roman',serif; /* headings 700, true italic as secondary voice */
  --font-heading:var(--font-red);
  --font-body:var(--font-red);

  /* weights actually used — nothing between */
  --weight-mark:900;
  --weight-headline:800;
  --weight-strong:700;
  --weight-body:400;

  /* display / headline scale (Signal Red line, uppercase, tight) */
  --text-display:clamp(48px,7vw,104px);
  --text-h1:clamp(36px,4.4vw,64px);
  --text-h2:32px;
  --text-h3:22px;
  --text-kicker:13px;      /* uppercase, letter-spaced label above a headline */

  /* reading scale (Press Cyan line, serif) */
  --text-lede:22px;
  --text-body:17px;
  --text-small:15px;
  --text-meta:13px;

  /* metrics */
  --leading-tight:0.92;     /* display lockups */
  --leading-headline:1.05;
  --leading-body:1.55;
  --leading-reading:1.68;   /* journal body copy */
  --tracking-mark:-0.03em;
  --tracking-headline:-0.02em;
  --tracking-kicker:0.14em; /* uppercase kickers & buttons */
  --measure:66ch;           /* journal column max width */
}
