body { font: 400 18px/1.65 -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; }
h1, h2, h3 { font-family: Georgia, Cambria, "Times New Roman", serif; font-weight: 400; text-wrap: balance; }
h1 { font-size: clamp(2.75rem, 4.7vw, 4.65rem); line-height: 1.06; letter-spacing: -.035em; }
h2 { font-size: clamp(2rem, 3vw, 2.7rem); line-height: 1.16; letter-spacing: -.02em; }
h3 { font-size: 1.65rem; line-height: 1.23; letter-spacing: -.012em; }
a { font-size: inherit; line-height: 1.45; text-underline-offset: .24em; text-decoration-thickness: 1px; }
button, input { font: inherit; font-size: 18px; }
summary { font-size: 16px; line-height: 1.4; }
strong { font-weight: 650; }
[data-role="identity-words"] strong { font-family: Georgia, Cambria, serif; font-weight: 400; font-size: 25px; line-height: 1.2; }
[data-role="identity-words"] span, [data-role="cluster-label"], [data-role="eyebrow"], [data-role="route-mark"] { font-family: "SFMono-Regular", Consolas, "Liberation Mono", monospace; font-size: 16px; line-height: 1.4; }
[data-role="cluster-label"] { font-size: 16px; }
[data-role="eyebrow"] { letter-spacing: .035em; }
[data-role="topic-cluster"] a { font-size: 16px; }
[data-role="hero-copy"] > p { font-size: 20px; line-height: 1.6; }
[data-role="chapter-head"] > p { font-size: 21px; line-height: 1.6; }
[data-role="action-link"] { font-size: 16px; text-decoration: none; }
[data-role="still-life"] figcaption, [data-role="wide-still-life"] figcaption { font-size: 16px; line-height: 1.5; }
[data-role="route-mark"] { font-size: 26px; }
[data-role="source-body"] { font-size: 16px; line-height: 1.6; }
[data-role="source-body"] a { font-size: 16px; }
[data-role="question-row"] h2 { font-size: clamp(1.75rem, 2.6vw, 2.2rem); }
[data-role="study-result"] { font-family: Georgia, Cambria, serif; font-size: clamp(1.6rem, 2.6vw, 2rem); line-height: 1.4; }
[data-role="glossary-entry"] dt { font-size: 21px; font-family: Georgia, Cambria, serif; line-height: 1.4; }
[data-role="glossary-status"] { font-size: 16px; }
[data-role="site-footer"] { font-size: 16px; line-height: 1.6; }
[data-role="footer-links"] a { font-size: 16px; }
@media (max-width: 720px) {
  body { font-size: 17px; line-height: 1.65; }
  h1 { font-size: 2.75rem; }
  [data-role="hero-copy"] > p, [data-role="chapter-head"] > p { font-size: 18px; }
  [data-role="identity-words"] strong { font-size: 24px; }
  [data-role="cluster-label"] { letter-spacing: -.025em; }
  button, input { font-size: 17px; }
}
