.language-switcher{position:relative;font-size:12px;flex-shrink:0}
.language-switcher summary{list-style:none;display:flex;align-items:center;gap:9px;padding:9px 11px;border:1px solid var(--line);border-radius:8px;background:var(--paper);cursor:pointer;white-space:nowrap}
.language-switcher summary::-webkit-details-marker{display:none}
.language-switcher summary::after{content:"";width:6px;height:6px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg);margin-top:-3px}
.language-switcher[open] summary{border-color:var(--orange)}
.language-switcher nav{position:absolute;inset-inline-end:0;top:calc(100% + 8px);display:grid;min-width:190px;padding:7px;border:1px solid var(--line);border-radius:12px;background:var(--white);box-shadow:0 12px 35px #29272415;max-height:min(440px,70vh);overflow-y:auto;z-index:90}
.language-switcher nav a{padding:9px 11px;border-radius:6px;font-size:13px;line-height:1.45;text-decoration:none}
.language-switcher nav a:hover,.language-switcher nav a[aria-current]{background:var(--pale);color:var(--orange)}
html:lang(ko){--font:"Apple SD Gothic Neo","Malgun Gothic","Noto Sans CJK KR",system-ui,sans-serif;word-break:keep-all}
html:lang(ja){--font:"Hiragino Kaku Gothic ProN","Yu Gothic","Noto Sans CJK JP",system-ui,sans-serif}
html:lang(zh-CN){--font:"PingFang SC","Microsoft YaHei","Noto Sans CJK SC",system-ui,sans-serif}
:lang(ko) h1,:lang(ko) h2,:lang(ko) h3,:lang(ja) h1,:lang(ja) h2,:lang(ja) h3,:lang(zh-CN) h1,:lang(zh-CN) h2,:lang(zh-CN) h3{letter-spacing:-.015em;line-height:1.3}
:lang(ko) .eyebrow,:lang(ja) .eyebrow,:lang(zh-CN) .eyebrow,:lang(ko) .small-label,:lang(ja) .small-label,:lang(zh-CN) .small-label{letter-spacing:.035em}
h1,h2,h3,.button{overflow-wrap:anywhere}
:lang(de) h1,:lang(nl) h1{hyphens:auto}
html:lang(ja) .hero h1{font-size:clamp(36px,3.75vw,52px)}
html:lang(ja) .hero h1 em{white-space:nowrap}
@media(max-width:540px){html:lang(ja) .hero h1{font-size:clamp(31px,8.2vw,44px)}}
@media(max-width:1250px){.desktop-nav{margin-left:0;gap:18px}.nav-actions{gap:12px}}
@media(max-width:1150px){.desktop-nav,.login-link{display:none}.menu-toggle{display:inline-flex}}
@media(max-width:600px){.nav-inner{gap:9px}.nav-actions{gap:7px}.language-switcher summary{padding:8px;font-size:11px}.nav-actions>.button-small{padding:9px 11px}.brand img{width:90px}.language-switcher nav{inset-inline-end:-70px}.text-link{white-space:normal}}
@media(max-width:420px){.nav-actions>.button-small{display:none}.language-switcher nav{inset-inline-end:0}}
