.language-menu{position:relative;flex:0 0 auto;margin-left:8px}
.language-menu summary{display:flex;align-items:center;justify-content:center;gap:7px;min-width:66px;height:40px;padding:0 12px;border:1px solid #d8dee8;border-radius:10px;background:#fff;color:#17263f;cursor:pointer;font-size:0;font-weight:800;line-height:1;list-style:none;box-shadow:0 1px 2px rgba(21,35,58,.04);transition:border-color .18s ease,background .18s ease,box-shadow .18s ease}
.language-menu summary::-webkit-details-marker{display:none}
.language-menu summary::before{font-size:13px;letter-spacing:.055em}
.language-menu summary::after{content:'⌄';font-size:15px;font-weight:700;color:#697588;transform:translateY(-1px);transition:transform .18s ease}
html[lang='th'] .language-menu summary::before{content:'TH'}
html[lang='en'] .language-menu summary::before{content:'EN'}
html[lang='de'] .language-menu summary::before{content:'DE'}
html[lang='fr'] .language-menu summary::before{content:'FR'}
html[lang='it'] .language-menu summary::before{content:'IT'}
.language-menu summary:hover{border-color:#aeb8c6;background:#fafbfc}
.language-menu[open] summary{border-color:#15233a;background:#f7f8fa;box-shadow:0 0 0 3px rgba(21,35,58,.07)}
.language-menu[open] summary::after{transform:rotate(180deg) translateY(-1px)}
.language-menu-panel{position:absolute;z-index:180;top:48px;right:0;display:grid;min-width:210px;padding:8px;border:1px solid #dfe4eb;border-radius:12px;background:#fff;box-shadow:0 18px 45px rgba(21,35,58,.16)}
.language-menu-panel strong{padding:8px 10px 7px;color:#7a8494;font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.language-menu-panel a{position:relative;display:flex;align-items:center;justify-content:space-between;min-height:40px;padding:9px 34px 9px 11px;border-radius:8px;color:#334258;font-size:14px;font-weight:650;text-decoration:none;transition:background .15s ease,color .15s ease}
.language-menu-panel a:hover{background:#f2f4f7;color:#15233a}
.language-menu-panel a.active{background:#eef2f6;color:#15233a;font-weight:800}
.language-menu-panel a.active::after{content:'✓';position:absolute;right:12px;color:#15233a;font-size:14px;font-weight:900}
.mobile-language-switcher{display:none!important}

/* Keep the professional language control visible beside the hamburger.
   header-responsive.css contains older !important hiding rules, so this override
   intentionally uses !important and is loaded after that stylesheet. */
@media(max-width:1250px){
  .language-menu{display:block!important;margin-left:auto!important;order:8}
  .language-menu summary{min-width:62px;height:42px;padding:0 11px;border-radius:10px}
  .language-menu-panel{top:50px;right:0;min-width:204px}
  .mobile-language-switcher{display:none!important}
  .menu-toggle{order:9;margin-left:8px!important}
}

@media(max-width:700px){
  .brand-lockup{max-width:calc(100% - 132px)!important}
  .language-menu{margin-left:auto!important}
  .language-menu summary{min-width:58px;height:40px;padding:0 10px;border-radius:10px}
  .language-menu summary::before{font-size:12px}
  .language-menu summary::after{font-size:14px}
  .language-menu-panel{top:47px;right:-2px;width:min(210px,calc(100vw - 28px));min-width:190px}
  .menu-toggle{margin-left:6px!important}
}
