.journal-masthead { color: white; background: linear-gradient(110deg, var(--masthead-start,#0d657d), var(--masthead-end,#5cb7c1)); border-bottom: 5px solid color-mix(in srgb, var(--accent) 75%, white); }
.masthead-inner { max-width: 1240px; min-height: 146px; margin: auto; padding: 20px 26px; display: grid; grid-template-columns: 92px minmax(0, 1fr) auto; align-items: center; gap: 24px; }
.publisher-logo-frame { width: 84px; height: 84px; display: grid; place-items: center; border: 1px solid rgba(255, 255, 255, .42); border-radius: 50%; background: rgba(8, 55, 71, .34); box-shadow: 0 12px 28px rgba(7, 31, 41, .18); }
.publisher-logo-frame img { width: 68px; height: auto; display: block; }
.masthead-identity { min-width: 0; text-align: center; }
.masthead-kicker { margin: 0 0 5px; font-size: 11px; font-weight: 800; letter-spacing: .14em; text-transform: uppercase; opacity: .82; }
.journal-title-link { color: inherit; text-decoration: none; }
.journal-heading { margin: 0; font: 700 clamp(28px, 3.5vw, 44px)/1.05 Georgia, "Times New Roman", serif; letter-spacing: -.025em; }
.journal-alt-title { margin: 7px 0 0; font: 400 17px/1.3 Georgia, "Times New Roman", serif; opacity: .87; }
.masthead-links { display: grid; gap: 8px; }
.masthead-links a { min-width: 220px; padding: 10px 12px; display: flex; justify-content: space-between; gap: 16px; border: 1px solid rgba(255, 255, 255, .38); color: inherit; text-decoration: none; font-size: 12px; font-weight: 750; }
.masthead-links a:hover { background: rgba(255, 255, 255, .11); }

.site-header { background: var(--surface); border-bottom: 1px solid var(--line); position: sticky; top: 0; z-index: 20; backdrop-filter: blur(14px); }
.header-inner { max-width: 1240px; margin: auto; padding: 12px 26px; display: flex; align-items: center; justify-content: space-between; gap: 20px; }
.brand { display: inline-flex; align-items: center; color: inherit; text-decoration: none; }
.brand strong { display: block; font: 700 22px Georgia, serif; }
.brand small { display: block; color: var(--muted); font-size: 12px; }
.header-actions, .language-switch { display: flex; align-items: center; gap: 10px; }
.access-badge { padding: 6px 10px; border: 1px solid #b8dacd; background: #ecf8f3; color: var(--verified); border-radius: 999px; font-size: 12px; font-weight: 700; }
.language-switch { padding: 3px; border: 1px solid var(--line); border-radius: 999px; background: #f3f4f6; }
.language-switch button { border: 0; background: transparent; padding: 6px 10px; border-radius: 999px; color: var(--muted); font-weight: 700; font-size: 12px; }
.language-switch button[aria-pressed="true"] { background: var(--ink); color: white; }
.theme-button { width: 38px; height: 38px; display: grid; place-items: center; border: 1px solid var(--line); border-radius: 50%; background: var(--surface); color: var(--ink); font-size: 18px; }

/* Shared by home, archive, article records and PDF viewer. */
/* The product name is a wordmark: preserve the casing supplied by translations. */
.brand strong,
[data-i18n="searchEyebrow"],
[data-i18n="recordKind"],
[data-i18n="faqAuthorityAnswer"],
[data-i18n="hierarchyText"] { text-transform:none; }
.journal-masthead,.site-header { font-size:16px; line-height:1.55; }
.site-header button { font-family:inherit; cursor:pointer; }
.site-header .language-switch button { min-width:0; min-height:0; border:0; border-radius:999px; }
.site-header .language-switch button[aria-pressed="true"] { background:var(--ink); color:var(--surface); }
.site-header .theme-button { padding:0; min-width:0; font-family:inherit; }
.header-brand-group { display:flex; align-items:center; gap:22px; min-width:0; }
.header-navigation { --navigation-gap:10px; display:flex; align-items:center; gap:var(--navigation-gap); }
.header-navigation a { font-size:12px; color:var(--muted); text-decoration:none; }
.header-navigation a + a { border-inline-start:1px solid var(--muted); padding-inline-start:var(--navigation-gap); }
.header-navigation a:hover { color:var(--ink); text-decoration:underline; }
.site-header:has(+ .viewer-toolbar) { position:static; }
@media(max-width:640px) {
 .header-brand-group { flex-direction:column; align-items:flex-start; gap:2px; }
 .header-navigation { --navigation-gap:7px; }
 .header-navigation a { font-size:10px; }
 .site-header .header-actions { flex-shrink:0; gap:6px; }
 .site-header .language-switch { gap:0; padding:2px; }
 .site-header .language-switch button { padding:5px 7px; }
 .site-header .theme-button { width:36px; height:36px; }
}
