/* A shared public navigation, consistent across all public pages. */
html { scrollbar-gutter: stable; }
header.site-header:has(.landing-language) { max-width:1360px; margin:auto; min-height:92px; height:auto; display:flex; align-items:center; justify-content:flex-start; gap:24px; padding:18px 64px; }
header.site-header:has(.landing-language) > a:first-child, header.site-header:has(.landing-language) > .button, header.site-header:has(.landing-language) .landing-header-tools { flex:none; }
header.site-header:has(.landing-language) > nav { display:flex; align-items:center; margin-left:auto; gap:clamp(14px,1.6vw,24px); white-space:nowrap; color:#526075; font-size:14px; }
header.site-header .landing-header-tools, header.site-header .landing-language { display:flex; align-items:center; gap:8px; }
header.site-header .landing-language { gap:2px; padding:3px; border:1px solid #5183b44d; border-radius:10px; font-size:12px; }
header.site-header .landing-language a { padding:5px 7px; border-radius:6px; }
header.site-header .landing-language a[aria-current] { background:#2663bf; color:white; }
header.site-header .button:hover { transform:none; }
header.site-header a:focus-visible, .partner-section-nav a:focus-visible { outline:3px solid #3f8bef; outline-offset:3px; border-radius:3px; }
.partner-section-nav { max-width:1256px; margin:0 auto; padding:12px 32px; display:flex; align-items:center; gap:12px 28px; flex-wrap:wrap; border-bottom:1px solid #dce7f4; color:#536983; font-size:14px; font-weight:600; }
.partner-section-nav a:hover { color:#176de9; }
html[data-theme='dark'] .partner-section-nav { border-color:#304967; color:#b4c4d9; }
@media (max-width:1350px) {
 header.site-header:has(.landing-language) { flex-wrap:wrap; justify-content:space-between; gap:12px; padding:16px 32px; }
 header.site-header:has(.landing-language) > nav { order:4; flex:0 0 100%; margin:0; gap:8px 22px; flex-wrap:wrap; white-space:normal; padding:4px 0; }
}
@media (max-width:700px) {
 header.site-header:has(.landing-language) { padding:14px 20px; }
 header.site-header:has(.landing-language) > nav { display:flex; gap:8px 18px; }
 .partner-section-nav { padding:12px 20px; gap:10px 18px; font-size:13px; }
}
@media (max-width:420px) {
 header.site-header:has(.landing-language) .logo { width:100px; }
 header.site-header:has(.landing-language) > .button.small { padding-inline:10px; font-size:12px; }
}
