/* Type: local humanist fonts; reading text has a deliberately quiet rhythm. */
:root {
  --font-reading: "Aptos", "Trebuchet MS", "Gill Sans", "Segoe UI", sans-serif;
  --font-sign: "Trebuchet MS", "Aptos Display", "Segoe UI", sans-serif;
  --font-aside: "Chalkboard SE", "Comic Sans MS", "Trebuchet MS", sans-serif;
  --font-value: ui-monospace, "SFMono-Regular", "Menlo", monospace;
}
body { font-family: var(--font-reading); font-size: 1rem; font-weight: 400; line-height: 1.6; }
p { max-width: 72ch; margin-block: 0 1rem; }
li, dd, figcaption, small, a { font-size: 1rem; }
h1, h2, h3, h4 { font-family: var(--font-sign); line-height: 1.2; text-wrap: balance; }
h1 { font-size: 2.25rem; font-weight: 700; letter-spacing: -.04em; }
h2 { font-size: 1.5rem; font-weight: 700; letter-spacing: -.025em; }
h3 { font-size: 1.25rem; font-weight: 700; letter-spacing: -.015em; }
a { text-underline-offset: .2em; text-decoration-thickness: 2px; overflow-wrap: anywhere; }
strong { font-weight: 700; }
.masthead__home { font-family: var(--font-sign); font-weight: 700; line-height: 1.15; letter-spacing: -.025em; text-decoration: none; }
.masthead__home strong { font-size: 1.25rem; }
.masthead__edition { font-family: var(--font-aside); line-height: 1.3; }
.breadcrumb { font-weight: 500; }
.hero__kicker, .briefing__eyebrow, .question-sheet__label { font-size: 1rem; font-weight: 700; line-height: 1.5; }
.hero__title { font-size: clamp(2.5rem, 5vw, 4rem); line-height: 1.02; letter-spacing: -.055em; }
.hero__intro { font-size: 1.125rem; line-height: 1.6; }
.hero__status { font-size: 1rem; line-height: 1.6; }
.button { font-weight: 700; line-height: 1.4; text-decoration: none; }
.button__arrow { font-size: 1.5rem; line-height: 1; }
.still-life__caption { font-family: var(--font-aside); font-size: 1rem; line-height: 1.4; }
.contents__title { font-size: 1.25rem; line-height: 1.4; letter-spacing: 0; }
.contents__link { font-size: 1rem; font-weight: 600; line-height: 1.3; text-decoration: none; }
.contents__arrow { font-family: var(--font-value); }
.value { font-family: var(--font-value); font-size: 1rem; overflow-wrap: anywhere; }
.prepare, .question-sheet__list { max-width: 72ch; }
.cost__name, .words__term { font-weight: 700; }
.question-sheet__label { font-family: var(--font-aside); }
.footer { font-size: 1rem; }
.lost__eyebrow { font-family: var(--font-value); font-size: 1rem; }
@media print {
  body { font-size: 1rem; }
  .hero__title { font-size: 2.5rem; }
  a { text-decoration: underline; }
}
