.language-picker{display:flex;align-items:center;gap:9px;color:inherit;white-space:nowrap}
.language-picker button{font:inherit;color:inherit;padding:5px 0;border-bottom:1px solid transparent;letter-spacing:.08em}
.language-picker button[aria-pressed="true"]{border-bottom-color:currentColor}
.language-picker .language-divider{opacity:.45;font-size:9px}
.desktop-nav .language-picker{font-size:10px;margin-left:12px}
#mobile-menu .language-picker{margin-top:22px;font-size:13px;gap:15px}
#mobile-menu .language-picker button{min-height:44px}
html:not([lang="ko"]) #process-title{font-size:clamp(27px,2.6vw,44px);letter-spacing:-.035em}
html:not([lang="ko"]) #inquiry-title{font-size:28px;letter-spacing:-.035em}
html[lang="ja"]{word-break:normal}
@media(max-width:1100px) and (min-width:761px){.desktop-nav{gap:12px}.desktop-nav .language-picker{margin-left:0;gap:6px}}
@media(max-width:650px){
 html:not([lang="ko"]) #process-title{font-size:clamp(22px,5.7vw,32px)}
 html:not([lang="ko"]) #explore .work-process{height:auto;min-height:var(--works-heading-height,500px)}
 html:not([lang="ko"]) #inquiry-title{font-size:23px}
 html:not([lang="ko"]) .section-kicker{font-size:9px}
}

/* Fit the menu and language choices inside the visible mobile viewport. */
#mobile-menu{
 height:100dvh;max-height:100dvh;box-sizing:border-box;
 padding:16px 25px max(16px,env(safe-area-inset-bottom));
}
#mobile-menu[open]{display:grid;grid-template-rows:auto minmax(0,1fr) auto auto;gap:12px}
#mobile-menu .menu-top{margin:0;min-height:44px}
#mobile-menu nav{min-height:0;display:grid;grid-template-rows:repeat(7,minmax(40px,1fr))}
#mobile-menu nav a{display:flex;align-items:center;font-size:clamp(25px,4.6dvh,38px);line-height:1.15;padding:4px 0;min-width:0}
#mobile-menu nav small{flex:0 0 20px;margin-right:18px}
#mobile-menu>p{margin:0;font-size:11px;line-height:1.5}
#mobile-menu .language-picker{margin:0;gap:15px;font-size:13px}
@media(max-height:500px) and (orientation:landscape){
 #mobile-menu[open]{gap:6px;grid-template-rows:auto minmax(0,1fr) auto;padding-block:10px}
 #mobile-menu nav{grid-template-columns:1fr 1fr;grid-template-rows:repeat(4,minmax(36px,1fr));column-gap:24px}
 #mobile-menu nav a{font-size:22px;padding-block:2px}
 #mobile-menu>p{display:none}
}
