:root{
  --font-display:"Frank Ruhl Libre",'Times New Roman',serif;
  --font-sans:"Assistant","Helvetica Neue",Arial,sans-serif;
  --font-mono:ui-monospace,"SFMono-Regular",Menlo,monospace;

  --text-display-1:clamp(40px,5.2vw,68px);
  --text-display-2:clamp(32px,4vw,52px);
  --text-h1:40px;
  --text-h2:32px;
  --text-h3:24px;
  --text-h4:20px;
  --text-lead:21px;
  --text-body-lg:18px;
  --text-body-md:16px;
  --text-body-sm:14px;
  --text-caption:13px;

  --lh-tight:1.12; /* @kind other */
  --lh-heading:1.25; /* @kind other */
  --lh-body:1.65; /* @kind other */
  --lh-loose:1.8; /* @kind other */

  --fw-light:300; /* @kind other */
  --fw-regular:400; /* @kind other */
  --fw-medium:500; /* @kind other */
  --fw-semibold:600; /* @kind other */
  --fw-bold:700; /* @kind other */
  --fw-black:900; /* @kind other */

  --ls-tight:-0.01em; /* @kind other */
  --ls-normal:0; /* @kind other */
  --ls-wide:0.04em; /* @kind other */
  --ls-caps:0.09em; /* @kind other */

  /* semantic */
  --type-hero:var(--fw-bold) var(--text-display-1)/var(--lh-tight) var(--font-display); /* @kind font */
  --type-section:var(--fw-bold) var(--text-h2)/var(--lh-heading) var(--font-display); /* @kind font */
  --type-card-title:var(--fw-bold) var(--text-h4)/var(--lh-heading) var(--font-display); /* @kind font */
  --type-lead:var(--fw-regular) var(--text-lead)/var(--lh-body) var(--font-sans); /* @kind font */
  --type-body:var(--fw-regular) var(--text-body-md)/var(--lh-body) var(--font-sans); /* @kind font */
  --type-label:var(--fw-semibold) var(--text-caption)/1.3 var(--font-sans); /* @kind font */
}
