/* Four native language names; no flags, translation widget or external requests. */
.language-switcher { position: relative; flex: 0 0 auto; z-index: 35; border: 0; }
.language-switcher>summary { display: flex; align-items: center; justify-content: center; gap: 6px; width: 64px; height: 44px; padding: 0 11px; border: 1px solid var(--line); border-radius: 24px; background: transparent; color: var(--ink); font: 600 12px/1 Arial, sans-serif; cursor: pointer; list-style: none; }
locale-text { display: inline; }
.language-switcher>summary::-webkit-details-marker { display: none; }
.language-code { display: block; text-align: center; white-space: nowrap; flex-shrink: 0; }
.language-chevron { display: block; width: 10px; height: 10px; flex: 0 0 10px; }
.language-switcher[open] .language-chevron { transform: rotate(180deg); }
.language-switcher>summary:hover,.language-switcher[open]>summary { background: color-mix(in srgb, var(--ink) 6%, var(--paper)); border-color: color-mix(in srgb, var(--ink) 28%, var(--line)); }
.language-options { position: absolute; top: calc(100% + 8px); right: 0; min-width: 166px; padding: 6px; border: 1px solid var(--line); border-radius: 12px; background: var(--paper); box-shadow: 0 12px 35px #0002; }
.language-options a { display: flex; align-items: center; min-height: 44px; padding: 8px 14px; border-radius: 7px; font-size: 14px; white-space: nowrap; }
.language-options a:hover,.language-options a[aria-current] { background: color-mix(in srgb, var(--ink) 9%, var(--paper)); }
.language-options a[aria-current] { font-weight: 700; }
@media (prefers-reduced-motion: no-preference) {
  .language-switcher>summary { transition: background-color 180ms ease, border-color 180ms ease; }
  .language-chevron { transition: transform 180ms ease; }
  .language-switcher[open]>.language-options { animation: language-menu-in 180ms cubic-bezier(.2,.7,.2,1); }
}
@keyframes language-menu-in { from { opacity: 0; transform: translateY(-4px); } to { opacity: 1; transform: none; } }
html:lang(zh) { --display: 'PingFang SC', 'Microsoft YaHei', 'Noto Sans CJK SC', sans-serif; --mono: 'PingFang SC', 'Microsoft YaHei', sans-serif; }
html:lang(hi) { --display: 'Kohinoor Devanagari', 'Nirmala UI', 'Noto Sans Devanagari', sans-serif; --mono: 'Kohinoor Devanagari', 'Nirmala UI', sans-serif; }
html:lang(zh) body { font-family: Arial, 'PingFang SC', 'Microsoft YaHei', sans-serif; }
html:lang(hi) body { font-family: Arial, 'Kohinoor Devanagari', 'Nirmala UI', sans-serif; }
html:is(:lang(zh),:lang(hi)) :is(h1,h2,.presentation-art>strong) { font-weight: 700; line-height: 1.24; letter-spacing: 0; }
html:lang(hi) :is(h1,h2,h3,.label,.hero-caption,.destination b) { letter-spacing: 0; }
html:lang(hi) .hero-heading h1 { font-size: clamp(40px,5.1vw,78px); }
html:lang(zh) .hero-heading h1 { font-size: clamp(42px,5.5vw,82px); }
html:is(:lang(hi),:lang(zh)) .hero-heading { padding-inline: 20px; }
@media (max-width: 1150px) { .header-contact { display: none; } .desktop-nav { gap: 18px; } }
@media (max-width: 600px) {
  .header-actions { gap: 7px; }
  .header>.brand { width: clamp(112px,calc(100vw - 214px),180px); }
  .language-switcher>summary { width: 60px; padding-inline: 9px; }
  html:lang(en) .hero-heading h1 { font-size: clamp(36px,10.5vw,62px); }
  html:lang(zh) .hero-heading h1 { font-size: clamp(34px,9.5vw,54px); }
  html:lang(hi) .hero-heading h1 { font-size: clamp(30px,8.2vw,47px); }
  html:is(:lang(zh),:lang(hi)) .hero-description { font-size: 13px; }
  html:lang(hi) .board-title h2 { font-size: min(38px,12cqw); }
  html:lang(zh) .board-title h2 { font-size: min(42px,13cqw); }
  html:is(:lang(hi),:lang(zh)) .destination b { font-size: 20px; line-height: 1.4; }
}
