.site-language{position:relative;flex-shrink:0}
.site-language[hidden],.language-options[hidden]{display:none}
.language-trigger{display:flex;align-items:center;justify-content:center;gap:6px;min-width:44px;min-height:44px;padding:0;background:transparent;font:500 0.8125rem var(--heading);color:var(--cream)}
.language-options{position:absolute;top:calc(100% + 8px);right:0;min-width:196px;padding:16px;background:#101912f5;border:1px solid var(--line);box-shadow:0 12px 35px #0006}
.language-options>p{font-size:0.75rem;letter-spacing:0.0625rem;color:#a5ada4;margin-bottom:10px}
.language-options button{display:block;width:100%;padding:11px 26px 11px 10px;min-height:44px;text-align:left;background:transparent;font-size:0.875rem;position:relative;white-space:nowrap}
.language-options button:hover,.language-options button:focus-visible{background:#ffffff0d}
.language-options button[aria-pressed=true]{color:#e2b783}
.language-options button[aria-pressed=true]:after{content:'✓';position:absolute;right:8px}
/* Let translated copy wrap within the existing layout; approved Korean styling stays intact. */
html:not([lang=ko]) .intro-headline,html:not([lang=ko]) .story-layout h2,html:not([lang=ko]) .visit-line h2{overflow-wrap:anywhere}
html:not([lang=ko]) .visit-line h2{font-size:clamp(2.25rem,5vw,4.75rem);letter-spacing:-.04em}
html:not([lang=ko]) .menu-card h3{line-height:1.4;letter-spacing:-.04em}
html[lang=ja] .menu-heading h2{font-size:clamp(1.75rem,3.4vw,3.25rem);line-height:1.35;letter-spacing:-.04em}
html[lang=zh-Hans] .menu-heading h2{letter-spacing:0}
@media(max-width:760px){
 .language-trigger{gap:4px;font-size:0.75rem}.language-trigger svg{width:12px;height:12px}
 .language-options{right:auto;left:0}
 html:not([lang=ko]) .visit-line h2{font-size:2.125rem}
 html:not([lang=ko]) .footer-top>div{flex-wrap:wrap;row-gap:12px}
 html[lang=ja] .menu-heading h2{font-size:1.8125rem}
}
@media(max-width:360px){.site-header:has(.site-language){column-gap:5px}}
