/* Shared typography for marketing, learning, account and legacy content pages.
   Use installed fonts so pages never swap to a different face after loading.
   Keep template-specific sizes, colours and alignment, including small captions. */
:root{--o2s-body-font:Arial,Helvetica,sans-serif;--o2s-heading-font:Georgia,'Times New Roman',serif}
html body,
body p,body li,body label,body input,body select,body textarea,
body button,body .button,body .btn,body table,body summary,
body nav,body footer{font-family:var(--o2s-body-font)!important}
body h1,body h2,body h3{font-family:var(--o2s-heading-font)!important;font-weight:400!important}
body h1 :is(span,a,strong,em),body h2 :is(span,a,strong,em),body h3 :is(span,a,strong,em){font-family:inherit!important}
body :is(p,li,label,button,.button,.btn,summary) :is(span,a,strong,em){font-family:inherit}
body :is(button,.button,.btn,input,select,textarea){line-height:1.4}
/* UI labels stay compact and bold; they are controls, not section headings. */
body :is(.o2s-site-header,.quiz-journey,.shared-journey-panel) :is(a,button,strong){font-family:var(--o2s-body-font)!important}
