:root {
  /* Published scale — page 5 of Brand Guidelines v1.0 */
  --text-display: 44px;   /* hero headlines */
  --text-h1: 28px;        /* page titles */
  --text-h2: 20px;        /* card & section titles */
  --text-body-size: 16px; /* the workhorse size */
  --text-caption: 13px;   /* caption / label */
  --text-micro: 11px;     /* dense table meta, only where 13px will not fit */

  --leading-display: 1.1;
  --leading-heading: 1.25;
  --leading-body: 1.7;    /* relaxed — the kit calls this out explicitly */
  --leading-tight: 1.4;

  --tracking-display: -0.02em;
  --tracking-heading: -0.01em;
  --tracking-body: 0;
  --tracking-label: 0.08em;  /* eyebrow / mono labels are letterspaced caps */
  --tracking-mono: 0.02em;

  --weight-body: 400;
  --weight-medium: 500;
  --weight-semibold: 600;   /* display + section headings */
  --weight-bold: 700;       /* display only, sparingly */

  /* Semantic type roles */
  --type-display: var(--weight-bold) var(--text-display)/var(--leading-display) var(--font-display);
  --type-h1: var(--weight-semibold) var(--text-h1)/var(--leading-heading) var(--font-display);
  --type-h2: var(--weight-semibold) var(--text-h2)/var(--leading-heading) var(--font-display);
  --type-body: var(--weight-body) var(--text-body-size)/var(--leading-body) var(--font-body);
  --type-body-strong: var(--weight-medium) var(--text-body-size)/var(--leading-body) var(--font-body);
  --type-caption: var(--weight-body) var(--text-caption)/var(--leading-tight) var(--font-body);
  --type-label: var(--weight-medium) var(--text-caption)/1.3 var(--font-mono);
  --type-mono: var(--weight-body) var(--text-caption)/1.5 var(--font-mono);
}
