:root { font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Arial, sans-serif; font-size: 18px; line-height: 1.55; font-weight: 400; }
body { color: var(--ink); }
p { overflow-wrap: break-word; }
a, button, summary, label { font-size: 1rem; }
a { text-underline-offset: 4px; text-decoration-thickness: 1px; }
button { font-weight: 500; }
h1, h2 { font-weight: 500; text-wrap: balance; }
.page-heading__title { font-size: 2rem; line-height: 1.2; letter-spacing: -0.35px; }
.page-heading__intro { font-size: 1.0556rem; line-height: 1.6; }
.answer__heading, .visit-sheet__heading { font-size: 1.3333rem; line-height: 1.3; letter-spacing: -0.15px; }
.reader-turn__question { font-size: 1rem; }
.answer__text { max-width: 66ch; }
.site-header__brand { font-family: ui-monospace, 'SFMono-Regular', Consolas, 'Liberation Mono', monospace; font-size: 16px; line-height: 1.25; font-weight: 500; text-decoration: none; letter-spacing: -0.4px; }
.page-heading__eyebrow, .question-hub__caption, .source-note__label, .next-note__label, .note-menu__group-label, .visit-sheet__note-label { font-family: ui-monospace, 'SFMono-Regular', Consolas, 'Liberation Mono', monospace; font-size: 16px; line-height: 1.5; font-weight: 400; }
.page-heading__eyebrow { letter-spacing: 0.1px; }
.question-hub__caption, .source-note__label, .next-note__label, .note-menu__group-label { letter-spacing: 0.5px; text-transform: uppercase; }
.question-hub__heading { font-size: 1.4444rem; line-height: 1.3; }
.question-hub__link { font-size: inherit; font-weight: 500; text-decoration: none; }
.question-hub__arrow, .next-note__arrow { font-weight: 400; font-size: 1.3333rem; }
.question-hub__summary { font-size: 1rem; }
.source-note__link, .source-note__context, .print-tools__help, .site-footer__link, .site-footer__purpose { font-size: 16px; line-height: 1.55; }
.source-note__link { font-weight: 500; }
.next-note__link { font-size: 1.1111rem; font-weight: 500; text-decoration: none; }
.note-menu__trigger { font-size: 16px; font-weight: 500; }
.note-menu__title { font-size: 24px; line-height: 1.3; font-weight: 500; letter-spacing: -0.2px; }
.note-menu__link { font-size: 16px; text-decoration: none; }
.visit-sheet__question { font-weight: 500; }
.visit-sheet__note-label { font-size: 16px; }

@media (max-width: 600px) {
  .page-heading__title { font-size: 1.7778rem; }
  .question-hub__heading { font-size: 1.2222rem; }
  .answer__heading, .visit-sheet__heading { font-size: 1.2222rem; }
}

@media print {
  :root { font-size: 16px; line-height: 1.4; }
  .page-heading__title { font-size: 28px; }
  .page-heading__intro { font-size: 16px; line-height: 1.4; }
  .visit-sheet__heading { font-size: 20px; }
  .site-footer__purpose { font-size: 16px; }
}
