.language-switcher{position:relative;flex:none;font:500 13px/1.4 system-ui,sans-serif;letter-spacing:0;word-break:normal}.language-switcher summary{display:flex;align-items:center;gap:6px;min-height:44px;padding:0 10px;cursor:pointer;list-style:none;border:1px solid currentColor;border-radius:22px}.language-switcher summary::-webkit-details-marker{display:none}.language-switcher nav{position:absolute;top:calc(100% + 8px);right:0;z-index:150;display:flex!important;flex-direction:column;gap:0!important;min-width:145px;padding:6px;background:#fff;color:#0b1620;border:1px solid #d4dce2;border-radius:12px;box-shadow:0 8px 24px #0002}.language-switcher nav a{padding:10px 14px;display:block!important;font-size:14px!important;min-height:40px;font-weight:500!important;color:#17212b!important;border-radius:6px}.language-switcher nav a:hover,.language-switcher nav a[aria-current]{background:#edf3e8}.nav-shell,.top-inner{gap:16px}.desktop-nav{gap:28px}.site-footer .language-switcher nav,.site-bottom .language-switcher nav{top:auto;bottom:calc(100% + 8px)}.original-language-note{max-width:1100px;margin:28px auto;padding:0 24px;font-size:13px;color:#5c6670;line-height:1.6}html[lang="ja"] body{font-family:"Noto Sans JP","Yu Gothic",Meiryo,system-ui,sans-serif;word-break:normal;overflow-wrap:anywhere}html[lang="en"] body{word-break:normal;overflow-wrap:break-word}html[lang="en"] .hero-copy-grid h1{font-size:clamp(40px,5vw,72px)}html:not([lang="ko"]) .home-hero{height:auto}html:not([lang="ko"]) .hero-copy-grid{height:auto;min-height:344px}html:not([lang="ko"]) .hero-copy-grid h1,html:not([lang="ko"]) .tech-hero h1,html:not([lang="ko"]) .article-header h1{line-height:1.2}html:not([lang="ko"]) .section-heading h2{font-size:clamp(30px,4vw,48px)}html[lang="en"] .design-table>div:not(.design-head) strong::before{content:"MOSLOCK design"}html[lang="ja"] .design-table>div:not(.design-head) strong::before{content:"MOSLOCKの設計"}html[lang="en"] .design-table>div:not(.design-head) span::before{content:"Design item"}html[lang="ja"] .design-table>div:not(.design-head) span::before{content:"設計項目"}@media(max-width:1199px){.desktop-nav{gap:18px}.nav-shell .brand-image img{max-width:160px}.footer-inner,.footer-row{flex-wrap:wrap}}@media(max-width:767px){.language-switcher summary{padding:0 8px;font-size:12px;gap:4px}.nav-shell,.top-inner{gap:8px}.nav-shell>.language-switcher,.top-inner>.language-switcher{margin-left:auto}.nav-shell .brand-image img{max-width:125px}.mobile-actions{gap:8px}.mobile-buy{padding:0 12px;font-size:12px}.footer-inner>.language-switcher,.footer-row>.language-switcher{margin-top:12px}html:not([lang="ko"]) .hero-copy-grid h1{font-size:42px}html:not([lang="ko"]) .hero-copy-grid{padding-top:44px;padding-bottom:36px}html:not([lang="ko"]) .hero-copy-grid h1 br{display:none}html:not([lang="ko"]) .chapter-scroller a{white-space:nowrap}html:not([lang="ko"]) .tech-closing h2{font-size:34px}}
/* Compact language control follows the purchase action, not the logo. */
.nav-shell>.desktop-nav,.top-inner>.site-nav{margin-left:auto}
.site-header .language-switcher,.site-top .language-switcher{font-size:11px}
.site-header .language-switcher summary,.site-top .language-switcher summary{min-height:32px;padding:0 8px;gap:4px;border-color:currentColor;white-space:nowrap}
.compact-mobile-buy{display:none}
.device-stat-row{grid-template-columns:repeat(3,minmax(0,1fr))}
@media(max-width:767px){
 .nav-shell>.language-switcher{margin-left:0;order:2}
 .nav-shell>.mobile-actions{display:contents}
 .mobile-actions .mobile-buy{display:flex;order:1;margin-left:auto;font-size:11px;padding:0 10px;height:32px}
 .mobile-actions .menu-toggle{order:3;width:32px;height:40px}
 .nav-shell .brand-image img{max-width:110px}
 .site-header .language-switcher summary,.site-top .language-switcher summary{font-size:11px}
}
@media(max-width:640px){
 .top-inner>.language-switcher{margin-left:0}
 .top-inner .logo img{width:110px}
 .top-inner>.logo{flex:none}
 .top-inner .compact-mobile-buy{display:flex;align-items:center;min-height:32px;margin-left:auto;padding:0 8px;border:1px solid currentColor;text-decoration:none;font-size:10px;white-space:nowrap}
 .top-inner .mobile-nav summary{font-size:0;padding:5px 8px;white-space:nowrap}
 .top-inner .mobile-nav summary::after{content:'☰';font-size:16px}
 .top-inner{gap:6px}
}
@media(max-width:360px){.nav-shell{gap:5px;padding-inline:14px}.nav-shell .brand-image img{max-width:90px}.top-inner .logo img{width:90px}.top-inner{gap:4px}}
