/* V11: compact language selection and locale-specific typography.
   Approved product artwork, image sizing and static infrastructure remain unchanged. */
.header-inner{gap:24px}
.desktop-nav{gap:30px}
.header-contact{margin-left:4px;white-space:nowrap}
.language-switch{display:flex;flex:none;align-items:center;gap:2px;border-left:1px solid #e0e5e8;padding-left:14px;white-space:nowrap}
.language-switch a{position:relative;min-width:34px;min-height:42px;display:inline-flex;align-items:center;justify-content:center;padding:8px 7px;font:700 11px/1.4 Arial,'PingFang SC','Microsoft YaHei',sans-serif;color:#707e88;text-decoration:none;letter-spacing:.2px}
.language-switch a[aria-current=true]{color:#c1540e}
.language-switch a[aria-current=true]:after{content:'';position:absolute;bottom:4px;left:9px;right:9px;height:2px;background:#f47b26}
.language-switch a:hover{color:#b64a0b;background:#fff6ee;border-radius:4px}
.contact-person{margin:0 0 8px;font-size:20px;line-height:1.5;font-weight:700;color:#17212b}
.contact-details .phone{display:inline-block;max-width:100%;font-size:clamp(25px,2.4vw,33px);white-space:nowrap}
html:lang(en) body{word-break:normal;overflow-wrap:break-word}
html:lang(en) h1,html:lang(en) h2,html:lang(en) .display-title{letter-spacing:-1px}
html:lang(en) .page-hero h1{font-size:clamp(36px,4.4vw,62px);line-height:1.18}
html:lang(en) .section-top h2,html:lang(en) .display-title{font-size:clamp(29px,3vw,43px);line-height:1.25}
html:lang(en) .tech-flow h3{font-size:19px;line-height:1.35}
html:lang(en) .text-link{white-space:normal}
html:lang(en) .hero h1{letter-spacing:-2px;font-size:clamp(40px,4.8vw,70px)}
html:lang(zh) body{font-family:Arial,'PingFang SC','Microsoft YaHei','Noto Sans CJK SC',sans-serif;word-break:normal;overflow-wrap:break-word}
html:lang(zh) h1,html:lang(zh) h2,html:lang(zh) h3{letter-spacing:0}
html:lang(zh) .eyebrow,html:lang(zh) .kicker{letter-spacing:1.1px}
html:lang(en) .contact-details .phone,html:lang(zh) .contact-details .phone{font-size:clamp(23px,2vw,29px)}
@media(max-width:1180px){
 .desktop-nav,.header-contact{display:none}
 .menu-toggle{display:block;flex:none}
 .language-switch{margin-left:auto}
 .mobile-nav.open{display:block;position:absolute;top:88px;left:0;right:0;background:#fff;border-bottom:1px solid #e0e5e8;padding:18px 28px 26px;box-shadow:0 18px 24px #111b2510}
 .mobile-nav a{display:block;padding:12px 0;font-size:15px;font-weight:700}
}
@media(max-width:640px){
 .header-inner{gap:8px}
 .language-switch{padding-left:6px;gap:0;border-left:0}
 .language-switch a{font-size:10px;min-width:32px;padding:8px 6px}
 .menu-toggle{width:36px}
 .mobile-nav.open{top:70px;padding:16px 20px 25px}
 html:lang(en) .page-hero h1{font-size:35px;line-height:1.18}
 html:lang(en) .hero h1{font-size:39px;letter-spacing:-1.7px}
 html:lang(en) .hero-description{max-width:300px}
 html:lang(en) .section-top h2,html:lang(en) .display-title{font-size:28px;line-height:1.25}
 html:lang(en) .filter-buttons{flex-wrap:wrap}
 html:lang(en) .filter-btn{font-size:10px;padding:8px 10px}
 html:lang(en) .business-info h3{font-size:17px;line-height:1.4}
 html:lang(en) .business-info{padding-left:15px;padding-right:15px}
 html:lang(en) .hero-step{font-size:9px;gap:4px}
 html:lang(en) .hero-steps{gap:8px}
 html:lang(en) .btn{gap:18px}
 html:lang(zh) .eyebrow{font-size:11px}
 .contact-person{font-size:18px}
}
@media print{.language-switch{display:none}}

/* V13: text-only email guidance, explicit office telephone, detail-only specs. */
.mail-helper{margin:18px 0 0;padding:0;border:0;background:none;box-shadow:none;color:#495965;font-size:13px;line-height:1.8;word-break:keep-all;overflow-wrap:anywhere}
.mail-helper p{margin:0;padding:0;font:inherit;color:inherit}
.mail-helper p+p{margin-top:5px}
.contact-form-panel>h2{margin-bottom:26px}
.contact-details>h2{margin-bottom:24px}
.office-phone{font-variant-numeric:tabular-nums}
.footer-detail .contacts{row-gap:10px}
html:lang(en) .mail-helper,html:lang(zh) .mail-helper{word-break:normal}
#product-dialog .product-specifications{margin-top:24px}
#product-dialog .product-specifications h3{font-size:16px;font-weight:700;letter-spacing:0;line-height:1.5;margin:0 0 10px}
#product-dialog .product-specifications table{border-collapse:collapse;width:100%;font-size:13px;line-height:1.65;table-layout:fixed;border-top:1px solid #e0e6e9}
#product-dialog .product-specifications th,#product-dialog .product-specifications td{padding:10px 4px;border-bottom:1px solid #e7ecef;vertical-align:top;text-align:left;overflow-wrap:anywhere}
#product-dialog .product-specifications th{width:48%;font-weight:400;color:#55646f}
#product-dialog .product-specifications td{font-weight:500;color:#17212b;font-variant-numeric:tabular-nums}
#product-dialog .product-specifications+.dialog-meta{border-top:0;margin-top:12px;padding-top:0}
@media(max-width:640px){.mail-helper{font-size:12px}.contact-form-panel>h2{margin-bottom:22px}#product-dialog .product-specifications table{font-size:12px}}


/* V15: Japanese typography and a fourth language option. */
.language-switch a:lang(ja){font-family:Arial,"Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif;min-width:44px}
html:lang(ja) body{font-family:Arial,"Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,"Noto Sans CJK JP",sans-serif;word-break:normal;overflow-wrap:break-word;line-break:strict}
html:lang(ja) h1,html:lang(ja) h2,html:lang(ja) h3,html:lang(ja) .display-title{letter-spacing:0;word-break:normal;line-break:strict}
html:lang(ja) .page-hero h1{font-size:clamp(34px,4.1vw,60px);line-height:1.45}
html:lang(ja) .hero h1{font-size:clamp(38px,4.5vw,68px);line-height:1.45}
html:lang(ja) .section-top h2,html:lang(ja) .display-title{font-size:clamp(28px,3vw,44px);line-height:1.5}
html:lang(ja) .eyebrow,html:lang(ja) .kicker{letter-spacing:1px}
html:lang(ja) .contact-details .phone{font-size:clamp(23px,2vw,29px)}
html:lang(ja) .mail-helper,html:lang(ja) .ip-card h3{word-break:normal}
html:lang(ja) .product-full-name,html:lang(ja) .product-dialog-subtitle{word-break:normal;line-height:1.75}
html:lang(ja) .tech-flow h3{font-size:18px;line-height:1.5}
@media(max-width:640px){
 .language-switch a:lang(ja){min-width:40px}
 html:lang(ja) .page-hero h1{font-size:32px}
 html:lang(ja) .hero h1{font-size:36px}
 html:lang(ja) .section-top h2,html:lang(ja) .display-title{font-size:27px}
 html:lang(ja) .filter-buttons{flex-wrap:wrap}
 html:lang(ja) .filter-btn{font-size:11px;padding:8px 10px}
 html:lang(ja) .hero-step{font-size:10px;gap:4px}
 html:lang(ja) .hero-steps{gap:8px}
 html:lang(ja) .contact-person{font-size:17px}
}
@media(max-width:380px){
 .header-inner{gap:4px}
 .language-switch{padding-left:0}
 .language-switch a{min-width:28px;padding-left:4px;padding-right:4px}
 .language-switch a:lang(ja){min-width:38px}
 .header-inner .brand{width:105px}
}
