/* Shared language selector: always available, including when the mobile menu is closed. */
.language-switcher {
  display: flex;
  align-items: center;
  gap: 4px;
  flex-shrink: 0;
}
.language-switcher a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 36px;
  min-height: 44px;
  padding: 6px;
  font: 600 12px/1.2 var(--sans, var(--font-body, sans-serif));
  color: inherit;
  text-decoration: none;
  border-radius: 3px;
}
.language-switcher a[aria-current="true"] {
  text-decoration: underline;
  text-underline-offset: 6px;
  text-decoration-thickness: 2px;
}
.language-switcher a:hover { background: rgba(0, 74, 173, .08); }
.language-switcher a:focus-visible { outline: 2px solid currentColor; outline-offset: 2px; }
.site-header .header-inner { gap: 20px; }
@media (min-width: 761px) and (max-width: 1100px) {
  .navigation { gap: 18px; }
  .site-nav { gap: 16px; }
  .site-nav a:not(.btn) { letter-spacing: .06em; }
}
@media (max-width: 760px) {
  .header-inner { gap: 8px; }
  .menu-toggle, .nav-toggle { margin-left: auto; order: 2; flex-shrink: 0; }
  .language-switcher { order: 1; margin-left: auto; }
  .language-switcher a { min-width: 32px; }
  .site-header .header-inner { gap: 8px; }
}
/* Longer translated navigation uses the compact header on tablets as well. */
@media (min-width: 761px) and (max-width: 1000px) {
  .menu-toggle, .nav-toggle { display: block; order: 2; }
  .language-switcher { margin-left: auto; }
  .navigation, .site-nav {
    display: none;
    position: absolute;
    left: 0;
    right: 0;
    padding: 24px;
    flex-direction: column;
    align-items: stretch;
    gap: 22px;
  }
  .navigation { top: 108px; background: white; border-bottom: 1px solid var(--light-blue); }
  .site-nav { top: 76px; background: var(--yellow); }
  .navigation.open, .site-nav.open { display: flex; }
}
