/* One native corresponding-page link remains available without JavaScript. */
.header-tools { display: flex; align-items: center; gap: 12px; margin-left: auto; }
.language-switch { display: inline-flex; align-items: center; justify-content: center; min-width: 44px; min-height: 44px; font-size: 12px; border: 1px solid var(--line); border-radius: 999px; }
.language-switch:hover { border-color: var(--ember); color: var(--ember); }
.language-switch:focus-visible { outline: 3px solid var(--frost); outline-offset: 3px; }
@media (max-width: 760px) {
 .header-tools { gap: 8px; }
 .has-menu .header-cta { white-space: normal; text-align: center; max-width: 108px; line-height: 1.35; }
 html[lang="es"] .has-menu .header-cta { font-size: 10px; }
}
@media (max-width: 380px) {
 .has-menu .header-cta { width: 72px; padding-inline: 5px; font-size: 10px; }
 .has-menu .header-tools,.has-menu .header-actions { gap: 6px; }
 .has-menu .header-inner { gap: 6px; }
}
/* Longer Spanish labels keep the same components, with natural wrapping. */
html[lang="es"] .ai-suggestions button { overflow-wrap: anywhere; }
html[lang="es"] .video-scroll.hero-slides h1,html[lang="es"] .video-scroll.hero-slides .hero-beats p,html[lang="es"] .opening.video-scroll.hero-slides .voyage-beats p:not(.hero-description) { font-size: min(clamp(36px,4.8vw,74px),7.8svh); }
/* WebKit can crash on pretty-wrapped, individually revealed Spanish words.
   Ordinary wrapping keeps the same words/reveal and avoids that layout path. */
html[lang="es"] .story-text { text-wrap: wrap; }
