/* Type: Google-origin families with readable offline system fallbacks.
   The later dealt serif direction governs the display family. */
@import url('https://fonts.googleapis.com/css2?family=Fraunces:opsz,wght@9..144,600;9..144,700&family=Source+Sans+3:wght@400;600;700&display=swap');
:root { font-family: 'Source Sans 3', 'Trebuchet MS', Arial, sans-serif; font-size: 18px; font-weight: 400; line-height: 1.6; -webkit-text-size-adjust: 100%; text-size-adjust: 100%; }
body, button { font: inherit; }
h1, h2, .bulletin-name, .ticket-term, .footer-signoff { font-family: 'Fraunces', Georgia, 'Times New Roman', serif; font-weight: 600; }
h1 { font-size: clamp(2.75rem,4.7vw,4rem); line-height: 1.08; letter-spacing: -.035em; text-wrap: balance; }
h2 { font-size: clamp(1.65rem,2.55vw,2.5rem); line-height: 1.17; letter-spacing: -.025em; text-wrap: balance; }
p, li { font-size: 1rem; }
.bulletin-name { font-size: 1.72rem; line-height: 1.1; letter-spacing: -.04em; text-decoration: none; }
.mast-purpose { font-size: 1rem; line-height: 1.35; }
.topic-fold summary { font-size: 1rem; font-weight: 600; }
.topic-fold a { font-size: 1rem; line-height: 1.3; }
.reading-category { font-size: 1rem; font-weight: 600; }
.guide-framing { font-size: 1.1rem; line-height: 1.5; }
.opening-note { font-size: 1rem; }
.ticket-heading { font-size: 1rem; font-weight: 600; }
.term-ticket .ticket-term { font-size: clamp(2.1rem,3.9vw,3.1rem); line-height: 1.08; letter-spacing: -.04em; overflow-wrap: anywhere; }
.ticket-link { font-size: 1rem; font-weight: 600; text-decoration: none; }
.source-cue { font-size: .9rem; font-weight: 600; line-height: 1.4; text-decoration-thickness: 1px; text-underline-offset: .2em; }
.term-jump { text-decoration: none; font-size: 1.15rem; font-weight: 600; line-height: 1.25; }
.term-jump-note { font-size: 1rem; line-height: 1.45; font-weight: 400; }
.jump-mark { font-size: 1.6rem; }
.source-opener, .shelf-close { font-size: 1rem; line-height: 1.4; font-weight: 600; }
.evidence-file h2 { font-size: 1.65rem; }
.evidence-file a { font-size: 1rem; line-height: 1.4; }
.reading-continuation p { font-size: 1rem; }
.reading-continuation a { font-size: 1.05rem; font-weight: 600; text-decoration-thickness: 1px; text-underline-offset: .23em; }
.bulletin-footer, .bulletin-footer a, .bulletin-footer p { font-size: 1rem; }
.bulletin-footer a { text-underline-offset: .2em; }
.footer-signoff { font-size: 1.45rem !important; line-height: 1.3; }
.mast-dot { font-family: Arial, sans-serif; font-size: .7rem; }
@media (max-width: 680px) {
  h1 { font-size: 2.7rem; line-height: 1.07; }
  h2 { font-size: 1.9rem; }
  .bulletin-name { font-size: 1.52rem; }
  .term-ticket .ticket-term { font-size: 2.6rem; }
}
