.header-actions{display:flex;align-items:center;gap:12px;flex-shrink:0}
.header .header-actions>.language-picker,.header .header-actions>.nav-cta{margin:0}
.language-picker{position:relative;flex-shrink:0;font-size:16px;line-height:1.5;color:var(--navy)}
.language-picker>summary{display:flex;align-items:center;justify-content:center;gap:8px;height:48px;min-height:48px;padding:0 16px;list-style:none;border:1px solid #ddd5ef;border-radius:10px;background:#fff;font-weight:600;cursor:pointer;transition:border-color 180ms,background-color 180ms}
.language-picker>summary>svg{flex-shrink:0}
.header .header-actions>.nav-cta{height:48px;min-height:48px;padding:0 20px;border-radius:10px;font-size:18px;line-height:1.25;gap:14px;white-space:nowrap}
.header .header-actions>.nav-cta>span[aria-hidden]{font-size:22px;line-height:1}
.language-picker>summary::-webkit-details-marker{display:none}
.language-picker>summary:hover,.language-picker[open]>summary{border-color:var(--purple);background:#f8f5ff;color:var(--deep)}

.language-picker>nav{position:absolute;right:0;top:calc(100% + 9px);display:grid;gap:4px;width:210px;max-height:calc(100dvh - 112px);overflow:auto;padding:8px;border:1px solid #ddd3ef;border-radius:12px;background:#fff;box-shadow:0 12px 32px #21134b22;z-index:50}
.language-picker nav a{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:11px 12px;border-radius:7px;font-size:17px;font-weight:550;color:var(--navy)}
.language-picker nav a:hover,.language-picker nav a[aria-current=page]{background:#eee8ff;color:var(--deep)}
.language-code{font-size:13px;font-weight:650;color:var(--secondary)}
html:not([lang=ko]) body{word-break:normal;overflow-wrap:break-word}
html:lang(ja) body{font-family:-apple-system,BlinkMacSystemFont,'Yu Gothic UI','Hiragino Kaku Gothic ProN',Meiryo,sans-serif}
html:lang(zh) body{font-family:-apple-system,BlinkMacSystemFont,'Microsoft YaHei UI','PingFang SC',sans-serif}
html:not([lang=ko]) .hero h1{font-size:clamp(44px,3.8vw,58px);line-height:1.3;letter-spacing:-.035em}
html:not([lang=ko]) .hero h1>span{white-space:normal}
html:not([lang=ko]) .case-banner-title{font-size:clamp(28px,2.3vw,34px);letter-spacing:-.035em}
html:not([lang=ko]) .kpi-grid dd{display:flex;align-items:baseline;flex-wrap:wrap;gap:5px}
html:not([lang=ko]) .kpi-grid dd>span{margin-left:0}
html:not([lang=ko]) .source-chart li{white-space:normal;align-items:flex-start}
.source-chart li>b{flex-shrink:0}
html:not([lang=ko]) .case-tabs button{flex:1;min-width:0}
html:not([lang=ko]) .case-tabs{display:flex}
html:not([lang=ko]) .hero-scroll-link{max-width:100%;text-align:center}
html:not([lang=ko]) .hero-scroll-icon{flex-shrink:0}
html:not([lang=ko]) .event-dropdown-selection{min-width:0}
html:not([lang=ko]) #event-type-value{overflow-wrap:anywhere}
html:not([lang=ko]) .footer nav a{overflow-wrap:anywhere}
@media(max-width:1399px){
 .header .desktop-nav{display:none}
 .header .nav-wrap{gap:18px}
 .header .header-actions{margin-left:auto}
 .header .nav-cta{margin-left:0}
 .header .menu-toggle{display:flex;flex-direction:column;gap:6px;justify-content:center;width:42px;height:44px;border:0;background:none;padding:9px;flex-shrink:0}
 .menu-toggle span{height:2px;background:var(--navy);width:23px}
 .header .mobile-nav{display:flex;position:absolute;left:0;right:0;top:100%;flex-direction:column;background:#fff;padding:15px 24px 22px;border-bottom:1px solid var(--border);box-shadow:0 10px 15px #11152f0a;max-height:calc(100dvh - 104px);overflow-y:auto;overscroll-behavior:contain}
 .header .mobile-nav a{font-size:21px;font-weight:550;padding:12px}
}
.desktop-nav a{white-space:nowrap}
/* Keep dialog copy clear of its close button, including translated headings. */
.dialog-inner>.eyebrow{padding-right:34px}
.dialog-inner h2{padding-right:22px}
@media(max-width:850px){
 .header .nav-wrap{gap:12px}
 .header .nav-cta{font-size:16px;padding:10px 13px;gap:12px}
 html:not([lang=ko]) .hero h1{font-size:52px}
}
@media(max-width:650px){
 .header .nav-cta{display:none}
 .header .header-actions{margin-left:auto}
 .header .nav-wrap{gap:10px}
 .language-picker>summary{height:44px;min-height:44px;font-size:15px;padding:0 10px;gap:6px}
 html:not([lang=ko]) .hero h1{font-size:43px;line-height:1.35}
 html:not([lang=ko]) .case-banner-title{font-size:30px}
 html:not([lang=ko]) .case-tabs button{font-size:17px;padding:10px 6px}
 html:not([lang=ko]) .survey-options{grid-template-columns:1fr}
 html:not([lang=ko]) .mobile-contact{font-size:20px;line-height:1.4;gap:12px;white-space:normal}
 html:not([lang=ko]) .footer{padding-bottom:120px}
}
@media(max-width:500px){html:not([lang=ko]) .kpi-grid{grid-template-columns:1fr}}
@media(max-width:359px){
 .header .brand img{width:100px}
 .language-picker>summary{font-size:14px;padding:0 8px}
 html:not([lang=ko]) .hero h1{font-size:36px}
 .header .menu-toggle{margin-left:0}
}
