/* Shared public-site typography. Typography only; no content or layout changes. */
@font-face{font-family:'Our Shared Serif';src:url('fonts/SourceSerif4-Regular.woff2') format('woff2');font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:'Our Shared Serif';src:url('fonts/SourceSerif4-Semibold.woff2') format('woff2');font-style:normal;font-weight:600 900;font-display:swap}
@font-face{font-family:'Our Shared Serif';src:url('fonts/SourceSerif4-It.woff2') format('woff2');font-style:italic;font-weight:400;font-display:swap}
:root{--shared-serif:'Our Shared Serif',Georgia,serif;--shared-sans:system-ui,-apple-system,'Segoe UI',sans-serif;--shared-h1:clamp(44px,5vw,64px);--shared-h2:36px;--shared-h3:26px;--shared-body:16px;--shared-lead:18px;--shared-brand:28px}
html body{font-family:var(--shared-sans)!important;font-size:var(--shared-body)!important;line-height:1.7!important}
html body h1,html body h2,html body h3,html body h4{font-family:var(--shared-serif)!important;font-weight:400!important;letter-spacing:-.035em!important;overflow-wrap:anywhere;hyphens:auto}
html body h1{font-size:var(--shared-h1)!important;line-height:1.1!important}
html body h2{font-size:var(--shared-h2)!important;line-height:1.2!important}
html body h3{font-size:var(--shared-h3)!important;line-height:1.25!important}
html body h4{font-size:22px!important;line-height:1.3!important}
html body :is(h1,h2,h3,h4) em{font-family:var(--shared-serif)!important;font-size:inherit!important}
html body p,html body li{font-family:var(--shared-sans)!important;font-size:16px!important;line-height:1.7!important}
html body :is(.lead,.lede,.intro){font-family:var(--shared-sans)!important;font-size:var(--shared-lead)!important;line-height:1.7!important}
html body .eyebrow{font-family:var(--shared-sans)!important;font-size:10px!important;line-height:1.6!important;font-weight:600!important;letter-spacing:.16em!important}
html body :is(.masthead nav a,.nav a){font-family:var(--shared-sans)!important;font-size:13px!important;font-weight:500!important;line-height:1.5!important}
html body :is(button,input,select,textarea,.button,.sign-in,.text-link){font-family:var(--shared-sans)!important;font-size:14px!important;line-height:1.5!important}
html body .menu-toggle{font-size:20px!important}
html body .brand-text,html body .brand>span:not(.brand-symbol):not(.brand-mark){font-family:var(--shared-serif)!important;font-size:var(--shared-brand)!important;font-weight:400!important;line-height:1!important;letter-spacing:-1px!important}
html body .brand-text span{font-family:inherit!important;font-size:inherit!important;font-weight:600!important}
html body :is(.guide-card,.rule-card,.topic-card,.subject-card) p:not(.eyebrow){font-size:14px!important;line-height:1.65!important}
html body :is(.guide-card,.rule-card,.topic-card,.subject-card) :is(h2,h3){font-size:26px!important;line-height:1.25!important}
html body :is(.byline,.source-label,.hero-foot,.hero-note,.small,.card-link,.read-link,.topic-tag,figcaption,figcaption p,footer p,footer nav a){font-family:var(--shared-sans)!important;font-size:12px!important;line-height:1.65!important}
html body footer .product-legal-notice{font-size:14px!important}
@media(max-width:780px){:root{--shared-h1:44px;--shared-h2:30px;--shared-h3:24px;--shared-lead:16px;--shared-brand:24px}html body :is(.guide-card,.rule-card,.topic-card,.subject-card) :is(h2,h3){font-size:24px!important}}
@media(max-width:380px){:root{--shared-brand:22px}}
@media print{:root{--shared-h1:32pt;--shared-h2:22pt;--shared-h3:18pt;--shared-body:12pt}}
