/* One persistent switch: no header duplication, no shifting content. */
.language-switch {
  position:fixed;
  --language-gap:20px;
  right:calc(var(--language-viewport-right,0px) + max(var(--language-gap),env(safe-area-inset-right,0px)));
  bottom:calc(var(--language-viewport-bottom,0px) + max(var(--language-gap),env(safe-area-inset-bottom,0px)));
  z-index:60;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  min-height:48px;
  padding:10px 16px;
  border:1px solid var(--line);
  border-radius:28px;
  background:var(--paper);
  color:var(--ink);
  box-shadow:0 3px 18px #263d4a18;
  font:500 14px/1.4 'Segoe UI',Arial,sans-serif;
  text-decoration:none;
}
.language-switch:hover { border-color:var(--orange); }
.site-footer { padding-bottom:calc(100px + env(safe-area-inset-bottom)); }
.language-switch svg,.language-switch img { width:26px; height:18px; flex:none; border-radius:2px; }
.language-announcement { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap; }
html[lang="en-US"] .hero-title .second-line { gap:clamp(16px,3vw,48px); }
html[lang="en-US"] .hero-title .second-line em { font-size:.8em; white-space:nowrap; }
@media(max-width:720px) {
  .language-switch { --language-gap:12px; min-height:44px; padding:9px 13px; }
  html[lang="en-US"] .hero-title .second-line { gap:2cqw; }
  html[lang="en-US"] .hero-title .second-line em { font-size:min(13.5cqw,76px); }
}
