/* Shared main-site roles, using the retained companion reference.
   The compact main reading size is deliberately unchanged. */
.site-main {
  --navy:#06385b; --blue:#07568c; --ink:#102d40; --muted:#35536a;
  --line:#c3dce9; --pale:#f0f8fc;
  --editorial-family:Georgia,"Times New Roman",serif;
  --display-family:"Roboto Condensed","Arial Narrow",Arial,sans-serif;
  --reading-size:1rem; --reading-leading:1.5;
}
.site-main .masthead-inner {row-gap:0;padding-block:10px;position:relative}
.site-main .brand {font:400 clamp(1.6875rem,calc(3vw * var(--rp-scale, 1)),2.5rem)/1.2 var(--editorial-family);align-self:center}
.site-main .desktop-nav {margin-top:0;gap:0 24px}
.site-main .desktop-nav a,.site-main .language-link {font-size:1rem}
.site-main .page-head h1 {font:700 2rem/1.18 var(--display-family);letter-spacing:-.01em;max-width:34ch;text-wrap:balance}
.site-main .page-head .lede {font:400 1rem/1.5 Roboto,Arial,sans-serif;max-width:65ch}
.site-main .prose {font-size:1rem;line-height:1.5}
.site-main .prose p,.site-main .prose li {font-size:1rem;line-height:1.5}
.site-main .prose h2,.site-main .prose .article-section h2,
.site-main .topic-directory>h2,.site-main .overview-next h2,
.site-main .worksheet-page h2 {font:400 1.5rem/1.25 var(--editorial-family);color:var(--ink)}
.site-main .reader-disclosure>summary h2,.site-main .candidate-reading>summary h2 {
  font:400 1.25rem/1.3 var(--editorial-family);margin:0;color:var(--blue);
}
.site-main .reference-detail>summary h2 {font:500 1rem/1.4 Roboto,Arial,sans-serif}
.site-main .prose h3 {font:500 1.125rem/1.35 Roboto,Arial,sans-serif}
.site-main .topic-card {border:0;border-top:2px solid #85adc5;background:transparent;padding:18px 0;gap:12px}
.site-main .topic-card:hover {background:var(--pale)}
.site-main .topic-card h3 {font:400 1.375rem/1.25 var(--editorial-family);color:var(--blue)}
.site-main .topic-grid {column-gap:32px;row-gap:8px}
.site-main .topic-contents {max-height:calc(100vh - 48px);overflow:auto}
.site-main .topic-contents a,.site-main .desktop-contents a {font-size:1rem;line-height:1.4}
.site-main .home-commitments {display:block;margin-block:24px}
.site-main .home-commitments__intro {margin:0 0 12px;max-width:78ch;font-size:1rem;line-height:1.5}
.site-main .home-commitments>h2 {font:400 1.5rem/1.25 var(--editorial-family);margin:0 0 12px}
.site-main .home-commitments>details {border-block:1px solid var(--line)}
.site-main .home-commitments>details>summary {cursor:pointer;color:var(--blue);font:500 1rem/1.4 Roboto,Arial,sans-serif;padding-block:12px;min-height:44px}
.site-main .home-commitments__detail {display:grid;grid-template-columns:1fr 1.2fr;gap:24px;padding-bottom:18px}
.site-main .home-commitments .home-context,.site-main .home-commitments .home-evidence {padding:16px;background:var(--pale)}
.site-main .home-commitments .home-evidence {background:#fcf5eb}
.site-main .home-commitments .home-context h2,.site-main .home-commitments .home-evidence h2 {font:400 1.375rem/1.3 var(--editorial-family);max-width:none}
.site-main .home-commitments__links {display:flex;flex-wrap:wrap;gap:10px 26px;margin-top:12px}
.site-main .home-commitments__links a {font-size:1rem;line-height:1.5;min-height:36px;display:inline-flex;align-items:center}
@media(max-width:760px) {
 .site-main .brand {font-size:1.5rem}
 .site-main .masthead-inner {column-gap:16px}
 .site-main .mobile-menu {position:static}
 .site-main .mobile-menu nav {top:100%;right:22px;width:min(320px,calc(100% - 44px))}
 .site-main .page-head h1 {font-size:1.75rem;line-height:1.2}
 .site-main .prose h2,.site-main .prose .article-section h2,
 .site-main .topic-directory>h2,.site-main .overview-next h2,.site-main .worksheet-page h2 {font-size:1.375rem}
 .site-main .reader-disclosure>summary h2,.site-main .candidate-reading>summary h2 {font-size:1.1875rem}
 .site-main .reference-detail>summary h2 {font-size:1rem}
 .site-main .topic-card h3 {font-size:1.25rem}
 .site-main .topic-contents {max-height:none;overflow:visible}
 .site-main .home-commitments__detail {grid-template-columns:1fr;gap:12px}
}
@media(max-width:390px) {
 .site-main .header-actions {gap:9px}
 .site-main .language-link,.site-main .mobile-menu summary {font-size:.8125rem}
}
