:root{
  /* Scale — 1.25 major third, rounded to whole px */
  --fs-display-1:72px;
  --fs-display-2:56px;
  --fs-h1:40px;
  --fs-h2:30px;
  --fs-h3:23px;
  --fs-h4:19px;
  --fs-body:16px;
  --fs-body-sm:14px;
  --fs-caption:13px;
  --fs-micro:11px;

  --lh-tight:1.04;/* @kind font */
  --lh-heading:1.16;/* @kind font */
  --lh-body:1.6;/* @kind font */
  --lh-loose:1.7;/* @kind font */

  --fw-regular:400;/* @kind font */
  --fw-medium:500;/* @kind font */
  --fw-semibold:600;/* @kind font */
  --fw-bold:700;/* @kind font */
  --fw-black:800;/* @kind font */

  /* Tracking: display tightens, micro/mono label opens up */
  --tracking-display:-0.02em;/* @kind font */
  --tracking-heading:-0.02em;/* @kind font */
  --tracking-body:0em;/* @kind font */
  --tracking-mono:0.01em;/* @kind font */
  --tracking-label:0.08em;/* @kind font */
  --tracking-eyebrow:0.18em;/* @kind font */

  /* Composed roles */
  --type-display:var(--fw-semibold) var(--fs-display-1)/var(--lh-tight) var(--font-display);
  --type-h1:var(--fw-semibold) var(--fs-h1)/var(--lh-heading) var(--font-display);
  --type-h2:var(--fw-semibold) var(--fs-h2)/var(--lh-heading) var(--font-display);
  --type-h3:var(--fw-medium) var(--fs-h3)/var(--lh-heading) var(--font-display);
  --type-body:var(--fw-regular) var(--fs-body)/var(--lh-body) var(--font-body);
  --type-label:var(--fw-medium) var(--fs-micro)/1.2 var(--font-mono);
  --type-mono:var(--fw-regular) var(--fs-body-sm)/1.5 var(--font-mono);
}
