Dummy Run

Body text is 17px with a 1.65 line height. Nothing a person reads is below 15px. Headings scale with the viewport through clamp().

Tokens (:root, 1rem = 16px)

TokenValueAt 16px root
–type-displayclamp(2.5rem, 2.05rem + 2.2vw, 3.75rem)40px to 60px
–type-display-smclamp(2.25rem, 1.9rem + 1.75vw, 3.25rem)36px to 52px
–type-titleclamp(1.875rem, 1.66rem + 1.05vw, 2.5rem)30px to 40px
–type-title-smclamp(1.5rem, 1.38rem + 0.6vw, 1.875rem)24px to 30px
–type-subtitleclamp(1.25rem, 1.18rem + 0.34vw, 1.4375rem)20px to 23px
–type-leadclamp(1.125rem, 1.08rem + 0.22vw, 1.25rem)18px to 20px
–type-body1.0625rem17px
–type-small0.9375rem15px
–type-caption0.8125rem13px
–type-eyebrow0.75rem (uppercase, 0.12em tracking, 600 weight)12px, the only sub-13px size and only for all-caps labels

--font-size-base: 1rem is set and never shrunk. html keeps -webkit-text-size-adjust: 100%.

Composed classes

ClassFontSizeLine heightTrackingWeight
body (page wrapper)body face–type-body1.65antialiased, optimizeLegibility
.u-displayheading face–type-display1.02-0.035em700
.u-display-smheading face–type-display-sm1.06-0.03em700
.u-titleheading face–type-title1.14-0.022em700
.u-title-smheading face–type-title-sm1.22-0.016em600
.u-subtitleheading face–type-subtitle1.32-0.012em600
.u-leadbody font, muted ink–type-lead1.55text-wrap: pretty
.u-eyebrowheading face–type-eyebrow1.4+0.12em600, uppercase
.text-body–type-body1.65
.text-small–type-small
.text-caption–type-caption1.5

Buttons and navigation may use 14px. Text people read never does.

Rules

  1. Body text is 17px with a 1.65 line height.
  2. The smallest reading size is 15px. Use 13px only for captions and metadata, and 12px only for uppercase labels.
  3. Headings scale with the viewport through clamp(), with tight negative tracking. Their line height is between 1.02 and 1.32.
  4. Lead paragraphs are 18 to 20px and set in a muted colour.
  5. Never set the root font size below 16px, and never use text-size-adjust: none.
  6. The typeface may change. These sizes and line heights may not.

This page is rendered from docs/TYPOGRAPHY.md in the repository. Edit it there and the site follows.