/* KEMIRUI: firm industrial typography, with readable technical copy. */
:root {
 --font:'Source Sans 3','Microsoft YaHei','PingFang SC','Hiragino Sans GB','Noto Sans CJK SC',sans-serif;
 --weight-body:400;
 --weight-label:600;
 --weight-heading:700;
}
body { font-family:var(--font); font-weight:var(--weight-body); }
html[lang] h1,html[lang] h2,html[lang] h3,html[lang] h4,
html[lang] .product-name,
html[lang] .product-card h3,
html[lang] .catalog-grid .card-content h3 {
 font-family:var(--font);
 font-weight:var(--weight-heading);
 letter-spacing:-.012em;
}
html[lang=zh-CN] h1,html[lang=zh-CN] h2,html[lang=zh-CN] h3,
html[lang=zh-CN] h4,html[lang=zh-CN] .product-name,
html[lang=zh-CN] .product-card h3,
html[lang=zh-CN] .catalog-grid .card-content h3 {
 letter-spacing:0;
}
.nav-item>a,.dropdown .km-menu-heading,.dropdown .km-menu-all,
.km-category-group summary,.category-links>a.selected,
.product-model,.product-sections a,.km-career-nav strong,
.km-career-facts dt,.site-footer h3 {
 font-weight:var(--weight-label);
}
.button,.search-form button,.text-link,.comparison-toggle,
.km-mobile-filter-button,.mobile-product-actions a {
 font-weight:var(--weight-heading);
}
.eyebrow { font-weight:var(--weight-heading); letter-spacing:.1em; }
.utility { font-weight:500; }
.technical th,.comparison-table th,.km-app-matrix th,
.product-overview strong,.article-body strong,
.km-career-body strong,#quote-form label {
 font-weight:var(--weight-label);
}
.technical td,.comparison-table td,.km-app-matrix td {
 font-weight:var(--weight-body);
 font-variant-numeric:lining-nums tabular-nums;
}
input,textarea,select { font-family:var(--font); font-weight:var(--weight-body); }
