/* Native language menu: keyboard and touch friendly, without a JavaScript dependency. */
.language-switcher { position: relative; flex: 0 0 auto; font-family: var(--sans); font-size: 13px; color: var(--green); }
.language-switcher summary { display: flex; align-items: center; gap: 7px; padding: 10px 4px; cursor: pointer; list-style: none; white-space: nowrap; }
.language-switcher summary::-webkit-details-marker { display: none; }
.language-switcher summary svg { width: 18px; height: 18px; stroke: currentColor; stroke-width: 1.4; }
.language-switcher summary:focus-visible { outline: 2px solid var(--plum); outline-offset: 4px; }
.language-switcher-panel { position: absolute; top: 100%; right: 0; z-index: 100; width: 230px; margin: 4px 0 0; padding: 8px; list-style: none; border: 1px solid var(--line); border-radius: 12px; background: var(--paper); box-shadow: 0 14px 40px rgba(24,62,53,.15); }
.language-switcher-panel a { display: flex; align-items: center; justify-content: space-between; gap: 18px; padding: 12px; border-radius: 7px; color: var(--green); text-decoration: none; }
.language-switcher-panel small { font-size: 10px; opacity: .7; }
.language-switcher-panel a:hover, .language-switcher-panel a:focus-visible, .language-switcher-panel a[aria-current="page"] { background: rgba(24,62,53,.08); }
.language-switcher-panel a[aria-current="page"] { font-weight: 700; }
@media (min-width: 900px) {
  .navlinks { gap: clamp(7px,1vw,16px); }
  .navlinks > a { font-size: clamp(13px,1.15vw,19px); }
  .navlinks > .header-follow { font-size: clamp(14px,1.2vw,19px); padding: 10px 12px; }
}
@media (max-width: 899px) {
  .language-switcher { align-self: flex-start; width: 100%; }
  .language-switcher summary { width: fit-content; }
  .language-switcher-panel { position: static; width: min(100%,300px); margin: 4px 0; box-shadow: none; }
}
html[lang="de"] .hero h1, html[lang="pt-BR"] .hero h1 { font-size: clamp(48px,7vw,112px); }
html:not([lang="hu"]) .route-map-label { font-size: 9px; letter-spacing: .08em; }
html:not([lang="hu"]) .route-map-place { font-size: 12px; }
