/* Shared language control. The original site stylesheet is kept intact. */
.nav { gap: 16px; }
.language-switch { display: inline-flex; flex-shrink: 0; align-items: center; gap: 2px; padding: 3px; border: 1px solid var(--line); border-radius: 999px; }
.language-switch a { display: inline-flex; align-items: center; justify-content: center; min-width: 36px; min-height: 38px; padding: 0 7px; border-radius: 999px; color: var(--text, #fff); font: 600 13px var(--font-body, sans-serif); text-decoration: none; }
.language-switch a[aria-current="page"] { color: #140d09; background: var(--gold, #d4af37); }
header.top .language-switch { float: right; margin: -8px -6px 8px 8px; }
.language-switch a:hover { box-shadow: inset 0 0 0 1px var(--gold); }
.language-switch a:focus-visible, .burger:focus-visible { outline: 2px solid var(--gold); outline-offset: 4px; }
/* Make room for the language control before navigation becomes crowded. */
@media (max-width: 1200px) {
  .nav-links { position: fixed; top: 76px; left: 0; right: 0; background: #140d09; flex-direction: column; padding: 24px; gap: 18px; border-bottom: 1px solid var(--line); display: none; max-height: calc(100dvh - 76px); overflow-y: auto; }
  .nav-links.open { display: flex; }
  .burger { display: block; flex-shrink: 0; }
  .language-switch { margin-left: auto; }
}
@media (max-width: 380px) {
  .nav { gap: 8px; }
  header.site .brand { gap: 7px; font-size: 1.15rem; }
  header.site .brand .logo img { height: 32px; }
}
