/* HEAVY / industrial plate, hazard marking and specification-first layouts */
:root { --wrap: 1280px; --radius: 1px; --radius-lg: 2px; --head-h: 74px; --sec-y: clamp(58px, 7vw, 92px); --t-h1: clamp(34px, 5vw, 68px); }
body { font-size: 16px; }
.mono, .heavy-statbar b, .heavy-key-specs dd, .heavy-card-specs dd, .heavy-spec-table td, .heavy-model-table td { font-family: "SFMono-Regular", Consolas, "Liberation Mono", monospace; font-variant-numeric: tabular-nums; letter-spacing: -.03em; }
.heavy-top { background: var(--c-dark); color: var(--c-dark-ink); border-bottom: 4px solid var(--c-accent); }
.heavy-top-in { display:flex; min-height:54px; align-items:center; justify-content:space-between; gap:22px; }
.heavy-top-copy, .heavy-top-right { display:flex; align-items:center; gap:22px; min-width:0; }
.heavy-top-copy { font-size:13px; font-weight:700; letter-spacing:.04em; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.heavy-top-right { flex:none; font-size:12px; }
.hazard-mark { display:block; width:36px; height:12px; flex:none; background:repeating-linear-gradient(135deg,var(--c-accent) 0 6px,var(--c-ink) 6px 12px); }
.heavy-hotline { display:flex; align-items:baseline; gap:12px; padding-left:20px; border-left:1px solid var(--c-dark-ink); }
.heavy-hotline span { text-transform:uppercase; font-size:12px; letter-spacing:.12em; }
.heavy-hotline b { color:var(--c-accent); font:700 19px/1.2 "SFMono-Regular",Consolas,monospace; white-space:nowrap; }
.heavy-top .langs summary { min-height:32px; padding:0; }
.heavy-head { position:sticky; top:0; z-index:50; background:var(--c-bg); border-bottom:4px solid var(--c-ink); }
.heavy-head-in { display:flex; align-items:center; min-height:78px; gap:24px; }
.logo { display:inline-flex; align-items:center; gap:12px; min-width:180px; color:var(--c-ink); }
.logo-mark { display:grid; place-items:center; width:48px; height:48px; background:var(--c-ink); color:var(--c-accent); border-radius:0; font-size:20px; font-weight:900; }
.logo-text b { display:block; font-size:20px; font-weight:900; line-height:1.15; }
.logo-text small { display:block; margin-top:4px; color:var(--c-muted); font-size:12px; }
.logo-img { object-fit:contain; }
.heavy-head-nav { flex:1; min-width:0; }
.heavy-head .menu > ul { display:flex; align-items:stretch; justify-content:center; gap:2px; }
.heavy-head .menu > ul > li { position:relative; }
.heavy-head .menu > ul > li > a { display:flex; align-items:center; gap:6px; min-height:74px; padding:0 13px; font-size:15px; line-height:1.3; font-weight:850; color:var(--c-ink); border-bottom:4px solid transparent; margin-bottom:-4px; }
.heavy-head .menu > ul > li:hover > a, .heavy-head .menu > ul > li.on > a { color:var(--c-ink); border-color:var(--c-accent); }
.heavy-head .menu .sub { top:100%; left:0; min-width:220px; background:var(--c-bg); border:2px solid var(--c-ink); box-shadow:8px 8px 0 var(--c-line); }
.heavy-head .menu .sub a { padding:12px 16px; border-bottom:1px solid var(--c-line); font-size:14px; font-weight:700; }
.heavy-quote, .heavy-side-quote, .heavy-hero-btn { display:inline-flex; align-items:center; justify-content:center; gap:14px; min-height:50px; padding:0 24px; background:var(--c-accent); color:var(--c-ink); font-weight:900; text-transform:uppercase; letter-spacing:.035em; clip-path:polygon(0 0,100% 0,100% 72%,88% 100%,0 100%); transition:filter .2s, transform .2s; }
.heavy-quote:hover, .heavy-side-quote:hover, .heavy-hero-btn:hover { color:var(--c-ink); filter:brightness(1.05); transform:translateY(-2px); }
.heavy-quote span, .heavy-side-quote span, .heavy-hero-btn span { font-size:19px; }
.burger { display:none; color:var(--c-ink); }
/* Full-bleed equipment stage. Caption is an opaque steel panel with a clipped hazard edge. */
.heavy-hero { position:relative; height:clamp(480px, 47vw, 720px); overflow:hidden; background:var(--c-dark); }
.heavy-slides, .heavy-slide { position:absolute; inset:0; }
.heavy-slide { opacity:0; visibility:hidden; transition:opacity .5s ease; }
.heavy-slide.on { opacity:1; visibility:visible; }
.heavy-slide > picture, .heavy-slide > picture img { display:block; width:100%; height:100%; object-fit:cover; object-position:center; }
.heavy-hero-cap { position:absolute; inset:0; display:flex; align-items:flex-end; padding-bottom:clamp(36px,5vw,72px); }
.heavy-hero-panel { position:relative; width:min(690px,65vw); padding:36px 52px 40px 40px; background:var(--c-dark); color:var(--c-dark-ink); clip-path:polygon(0 0,100% 0,92% 100%,0 100%); border-left:10px solid var(--c-accent); }
.heavy-hero-panel::after { content:""; position:absolute; right:0; top:0; width:58px; height:9px; background:repeating-linear-gradient(135deg,var(--c-accent) 0 7px,var(--c-dark) 7px 14px); }
.hero-index, .heavy-kicker { display:block; margin-bottom:12px; color:var(--c-accent); font:800 12px/1.3 "SFMono-Regular",Consolas,monospace; letter-spacing:.12em; text-transform:uppercase; }
.heavy-hero-title { max-width:590px; margin:0 0 12px; color:var(--c-bg); font-size:clamp(32px,4.1vw,58px); line-height:1.12; font-weight:950; letter-spacing:-.04em; }
.heavy-hero-sub { max-width:540px; margin:0 0 22px; color:var(--c-dark-ink); font-size:17px; line-height:1.55; }
.heavy-hero-btn { min-height:48px; }
.heavy-hero .car-arrow { position:absolute; z-index:4; top:50%; width:48px; height:56px; border:2px solid var(--c-bg); background:var(--c-dark); color:var(--c-bg); }
.heavy-hero .car-prev { left:20px; }.heavy-hero .car-next { right:20px; }
.heavy-hero .car-dots { position:absolute; z-index:4; right:calc((100vw - min(1280px,100vw))/2 + 32px); bottom:28px; }
.heavy-hero .car-dots button { width:38px; height:5px; border:0; border-radius:0; background:var(--c-dark-ink); opacity:.75; }
.heavy-hero .car-dots button.on { background:var(--c-accent); opacity:1; }
.heavy-hero.is-plain { height:auto; aspect-ratio:var(--hero-ratio); max-height:none; background:var(--c-dark); }
.heavy-hero.is-plain .heavy-slide > img { object-fit:contain; }
.heavy-statbar { background:var(--c-accent); color:var(--c-ink); border-bottom:8px solid var(--c-ink); }
.heavy-statbar ul { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); }
.heavy-statbar li { position:relative; display:flex; flex-direction:column; justify-content:center; min-height:116px; padding:16px 26px; border-left:2px solid color-mix(in srgb,var(--c-ink) 24%,transparent); }
.heavy-statbar li:first-child { border-left:0; padding-left:0; }
.heavy-statbar b { display:block; font-size:clamp(28px,3vw,42px); font-weight:950; line-height:1.04; }
.heavy-statbar b small { margin-left:4px; font:800 14px/1.2 var(--f-body); letter-spacing:0; }
.heavy-statbar .stat-label { margin-top:8px; font-size:14px; font-weight:750; }
.heavy-statbar .stat-serial { position:absolute; right:18px; top:14px; font:700 12px/1 monospace; opacity:.6; }
/* Reusable section rhythm uses square corners and hard dividers. */
.sec { padding-top:var(--sec-y); padding-bottom:var(--sec-y); }
.sec-head { border-bottom:3px solid var(--c-ink); padding-bottom:16px; }
.sec-head.is-center { border-bottom:0; }
.sec-title { font-size:clamp(26px,3vw,38px); font-weight:950; letter-spacing:-.035em; }
.kicker { font-size:12px; font-weight:800; letter-spacing:.1em; text-transform:uppercase; }
.sec-head:not(.is-center) .sec-title::after { height:7px; width:72px; bottom:-23px; background:var(--c-accent); }
.section-head-link, .sec-link { font-weight:850; }
.cats, .featured, .heavy-models { background:var(--c-surface); }
.cat-card, .pcard, .ncard, .adv-item { border:2px solid var(--c-ink); border-radius:0; box-shadow:5px 5px 0 var(--c-line); }
.cat-card:hover, .pcard:hover, .ncard:hover { transform:translateY(-3px); box-shadow:7px 8px 0 var(--c-accent); }
.cat-img img, .pcard-img img, .ncard-img img { border-radius:0; }
.pcard-title { font-size:18px; font-weight:900; }
.pcard-body { padding:18px; }
.pcard-act { border-top:2px solid var(--c-ink); padding-top:12px; }
.pcard-more, .pcard-ask { font-weight:850; }
.heavy-pcard { overflow:hidden; box-shadow:5px 5px 0 var(--c-line); }
.heavy-pcard-img { position:relative; display:block; aspect-ratio:4/3; background:var(--c-dark); }
.heavy-pcard-img img { width:100%; height:100%; object-fit:cover; }
.pcard-tag { position:absolute; left:0; bottom:0; padding:7px 12px; background:var(--c-accent); color:var(--c-ink); font:800 12px/1.2 monospace; letter-spacing:.09em; }
.heavy-card-summary { min-height:3em; margin:8px 0 13px; color:var(--c-muted); font-size:14px; }
.heavy-card-specs { margin:0; border-top:2px solid var(--c-ink); }
.heavy-card-specs div { display:flex; justify-content:space-between; gap:10px; padding:8px 0; border-bottom:1px solid var(--c-line); }
.heavy-card-specs dt { color:var(--c-muted); font-size:13px; }
.heavy-card-specs dd { margin:0; text-align:right; font-size:13px; font-weight:800; }
.heavy-process { background:var(--c-dark); color:var(--c-dark-ink); }
.heavy-section-head { display:flex; align-items:flex-end; justify-content:space-between; gap:22px; margin-bottom:34px; border-bottom:3px solid var(--c-dark-ink); padding-bottom:18px; }
.heavy-section-head h2 { margin:0; color:var(--c-bg); font-size:clamp(26px,3.3vw,40px); font-weight:950; }
.heavy-section-head .head-rule { width:20%; height:8px; background:repeating-linear-gradient(135deg,var(--c-accent) 0 8px,transparent 8px 16px); }
.flow-line { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:0; counter-reset:flow; }
.flow-line li { position:relative; min-height:205px; padding:24px 32px 24px 22px; border:2px solid color-mix(in srgb,var(--c-dark-ink) 34%,transparent); border-right:0; }
.flow-line li:last-child { border-right:2px solid color-mix(in srgb,var(--c-dark-ink) 34%,transparent); }
.flow-no { display:inline-grid; place-items:center; width:36px; height:30px; margin-bottom:24px; background:var(--c-accent); color:var(--c-ink); font:900 14px monospace; clip-path:polygon(0 0,100% 0,82% 100%,0 100%); }
.flow-line h3 { margin:0 0 9px; color:var(--c-bg); font-size:19px; font-weight:900; }
.flow-line p { margin:0; color:var(--c-dark-ink); font-size:14px; line-height:1.6; opacity:.86; }
.flow-arrow { position:absolute; z-index:2; right:-18px; top:50%; display:grid; place-items:center; width:34px; height:34px; transform:translateY(-50%); background:var(--c-accent); color:var(--c-ink); font-size:18px; }
.heavy-factory { overflow:hidden; background:var(--c-bg); }
.factory-grid { display:grid; grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr); align-items:center; gap:clamp(36px,6vw,88px); }
.factory-image { position:relative; min-height:460px; background:var(--c-surface); border:8px solid var(--c-ink); box-shadow:16px 16px 0 var(--c-accent); }
.factory-image > img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
.factory-stamp { position:absolute; right:-2px; bottom:-2px; padding:17px 24px 15px; background:var(--c-dark); color:var(--c-dark-ink); border-left:8px solid var(--c-accent); font:900 13px/1.5 monospace; letter-spacing:.06em; }
.factory-copy h2 { margin:0 0 18px; color:var(--c-ink); font-size:clamp(30px,3.6vw,48px); line-height:1.16; font-weight:950; letter-spacing:-.04em; }
.factory-intro { max-width:580px; color:var(--c-muted); font-size:16px; }
.factory-numbers { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); margin:27px 0 25px; border-top:3px solid var(--c-ink); border-bottom:1px solid var(--c-line); }
.factory-numbers li { padding:16px 10px 16px 0; border-right:1px solid var(--c-line); }
.factory-numbers li:last-child { border:0; }
.factory-numbers b { display:block; color:var(--c-ink); font-size:26px; font-weight:900; }
.factory-numbers b small { font:800 12px var(--f-body); letter-spacing:0; }
.factory-numbers span { display:block; color:var(--c-muted); font-size:12px; line-height:1.35; }
.heavy-inline-link { display:inline-flex; align-items:center; gap:18px; padding-bottom:7px; border-bottom:3px solid var(--c-accent); color:var(--c-ink); font-weight:900; }
.adv { background:var(--c-dark); color:var(--c-dark-ink); }
.adv .sec-title, .adv .sec-head .sec-title { color:var(--c-bg); }
.adv .adv-item { background:transparent; border-color:color-mix(in srgb,var(--c-dark-ink) 24%,transparent); box-shadow:none; }
.adv .adv-item h3 { color:var(--c-bg); }.adv .adv-item p { color:var(--c-dark-ink); }
.adv .adv-ic { background:var(--c-accent); color:var(--c-ink); border-radius:0; }
.news-home, .clients { background:var(--c-surface); }.ncard { background:var(--c-bg); }.ncard-body { padding:18px; }
.clients { border-top:6px solid var(--c-ink); }.clients-t { color:var(--c-ink); font-weight:900; letter-spacing:.08em; }
.clients-list li { border-radius:0; border:1px solid var(--c-line); background:var(--c-bg); font-weight:750; }
.cta { position:relative; background:var(--c-dark); color:var(--c-dark-ink); border-top:8px solid var(--c-accent); }
.cta h2 { color:var(--c-bg); font-size:clamp(27px,3.4vw,42px); font-weight:950; }.cta .btn-light { background:var(--c-accent); color:var(--c-ink); border:0; border-radius:0; font-weight:900; clip-path:polygon(0 0,100% 0,100% 74%,90% 100%,0 100%); }
/* Internal pages */
.page-head { background:var(--c-dark); color:var(--c-dark-ink); border:0; border-bottom:8px solid var(--c-accent); padding:34px 0; }
.page-head .page-title { color:var(--c-bg); font-size:clamp(28px,3.5vw,44px); font-weight:950; }
.page-head .page-sub { color:var(--c-dark-ink); font-size:15px; }
.page-head .crumbs, .heavy-crumbs { font-size:13px; }
.heavy-plist { display:grid; grid-template-columns:260px minmax(0,1fr); gap:38px; padding-top:42px; padding-bottom:76px; }
.heavy-plist-side { align-self:start; position:sticky; top:110px; padding:22px; border:3px solid var(--c-ink); box-shadow:6px 6px 0 var(--c-accent); }
.heavy-filter-title h2 { margin:0 0 16px; font-size:22px; font-weight:950; }
.heavy-filter-title .heavy-kicker { margin-bottom:7px; }
.heavy-plist-side .sform { width:100%; margin-bottom:20px; border:2px solid var(--c-ink); border-radius:0; }
.heavy-plist-side .catnav { border:0; }.heavy-plist-side .catnav-title { padding:11px 12px; background:var(--c-ink); color:var(--c-bg); font-weight:850; }
.heavy-plist-side .catnav ul { padding:8px 0; }.heavy-plist-side .catnav a { border-radius:0; font-size:14px; }
.heavy-side-call { display:flex; flex-direction:column; gap:3px; margin:20px 0 14px; padding:14px 0; border-top:2px solid var(--c-ink); border-bottom:1px solid var(--c-line); }
.heavy-side-call span { color:var(--c-muted); font-size:12px; }.heavy-side-call b { font:800 16px monospace; overflow-wrap:anywhere; }
.heavy-side-quote { width:100%; }.heavy-results-head { display:flex; align-items:center; justify-content:space-between; gap:14px; margin-bottom:18px; padding-bottom:12px; border-bottom:3px solid var(--c-ink); }
.heavy-results-head p { margin:0; font-weight:850; }.heavy-results-head .mono { font-size:13px; font-weight:800; }.heavy-pgrid { grid-template-columns:repeat(3,minmax(0,1fr)); }
.heavy-crumbs { padding-top:18px; padding-bottom:18px; }.heavy-product-intro { display:grid; grid-template-columns:minmax(0,1.08fr) minmax(360px,.92fr); gap:clamp(32px,5vw,72px); padding-top:24px; padding-bottom:54px; }
.heavy-product-main { aspect-ratio:1/1; background:var(--c-surface); border:3px solid var(--c-ink); }.heavy-product-main img { width:100%; height:100%; object-fit:contain; }
.heavy-thumbs { justify-content:flex-start; margin-top:12px; }.heavy-thumbs button { border:2px solid var(--c-ink); border-radius:0; }.heavy-thumbs button.on { border-color:var(--c-accent); box-shadow:3px 3px 0 var(--c-ink); }
.heavy-product-copy { align-self:center; }.heavy-product-copy h1 { margin:0 0 15px; color:var(--c-ink); font-size:clamp(30px,4vw,48px); line-height:1.12; font-weight:950; letter-spacing:-.035em; overflow-wrap:anywhere; }
.heavy-product-summary { color:var(--c-muted); font-size:16px; }.heavy-key-specs { margin:24px 0; border-top:3px solid var(--c-ink); }.heavy-key-specs div { display:flex; justify-content:space-between; gap:14px; padding:11px 0; border-bottom:1px solid var(--c-line); }.heavy-key-specs dt { color:var(--c-muted); font-size:14px; }.heavy-key-specs dd { margin:0; text-align:right; font-size:15px; font-weight:900; }
.heavy-product-actions { display:flex; flex-wrap:wrap; align-items:center; gap:16px; }.heavy-ask-link { min-height:44px; display:inline-flex; align-items:center; color:var(--c-ink); border-bottom:2px solid var(--c-ink); font-weight:850; }
.heavy-product-data { background:var(--c-surface); border-top:4px solid var(--c-ink); }.heavy-detail-grid { display:grid; grid-template-columns:minmax(0,1fr) 300px; gap:42px; align-items:start; }.heavy-detail-heading { margin:0 0 20px; padding-bottom:12px; border-bottom:3px solid var(--c-ink); }.heavy-detail-heading:not(:first-child) { margin-top:46px; }.heavy-detail-heading h2 { margin:0; font-size:29px; font-weight:950; }.heavy-detail-heading .heavy-kicker { margin-bottom:7px; }
.heavy-table-scroll { max-width:100%; overflow-x:auto; overscroll-behavior-x:contain; border:2px solid var(--c-ink); background:var(--c-bg); scrollbar-color:var(--c-primary) var(--c-line); }
.heavy-spec-table, .heavy-model-table { width:100%; min-width:520px; border-collapse:collapse; text-align:left; }
.heavy-spec-table th, .heavy-spec-table td, .heavy-model-table th, .heavy-model-table td { padding:13px 16px; border-bottom:1px solid var(--c-line); vertical-align:top; font-size:15px; }
.heavy-spec-table th { width:34%; background:var(--c-ink); color:var(--c-bg); font-weight:850; }.heavy-spec-table td { font-weight:850; }
.heavy-sticky-quote { position:sticky; top:112px; padding:25px; background:var(--c-dark); color:var(--c-dark-ink); border-top:8px solid var(--c-accent); box-shadow:6px 6px 0 var(--c-line); }
.heavy-sticky-quote h2 { margin:0 0 10px; color:var(--c-bg); font-size:25px; font-weight:950; }.heavy-sticky-quote p { font-size:14px; }.heavy-quote-wide { width:100%; }.heavy-sticky-phone { display:block; margin-top:18px; color:var(--c-dark-ink); font:800 15px monospace; overflow-wrap:anywhere; }
.heavy-model-table { min-width:780px; }.heavy-model-table thead th { background:var(--c-ink); color:var(--c-bg); font-weight:900; }.heavy-model-table tbody th { min-width:130px; background:var(--c-surface); font-weight:850; }.heavy-model-table td { font-weight:850; }.model-table-scroll { box-shadow:6px 6px 0 var(--c-accent); }
/* Standard reading pages and forms inherit structure, with heavier edges and clearer headings. */
.article { max-width:900px; }.article-head h1 { font-weight:950; }.article-cover img { border:3px solid var(--c-ink); border-radius:0; }
.prose h2, .prose h3 { font-weight:900; }.prose table { min-width:520px; }.contact-form, .contact-info, .pd-form { border:2px solid var(--c-ink); border-radius:0; box-shadow:5px 5px 0 var(--c-line); }
.nf { background:var(--c-dark); color:var(--c-dark-ink); border-bottom:8px solid var(--c-accent); }.nf-code { color:var(--c-accent); font:950 clamp(72px,16vw,150px)/.95 "SFMono-Regular",Consolas,monospace; letter-spacing:-.08em; }.nf h1 { color:var(--c-bg); font-size:clamp(28px,4vw,42px); font-weight:950; }.nf .btn { margin:6px 8px 0 0; }
.btn { border-radius:0; font-weight:850; }.btn-primary { background:var(--c-primary); color:var(--c-primary-ink); }.btn-ghost { border-color:var(--c-ink); color:var(--c-ink); }
.footer { border-top:8px solid var(--c-accent); background:var(--c-dark); }.mbar { border-top:3px solid var(--c-ink); background:var(--c-bg); }.mbar a { min-height:58px; font-weight:850; }.mbar .mbar-main { background:var(--c-accent); color:var(--c-ink); }
.drawer-panel { border-left:5px solid var(--c-accent); border-radius:0; }.drawer-nav a, .drawer-nav summary { font-weight:850; border-radius:0; }
@media (max-width:1100px) {
 .heavy-head-in { gap:14px; }.logo { min-width:155px; }.heavy-head .menu > ul > li > a { padding:0 8px; font-size:14px; }.heavy-head-in > .heavy-quote { padding:0 17px; }.heavy-plist { grid-template-columns:220px minmax(0,1fr); gap:26px; }.heavy-pgrid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:860px) {
 .heavy-top { border-bottom-width:3px; }.heavy-top-in { min-height:42px; gap:10px; }.heavy-top-copy { font-size:12px; gap:9px; }.hazard-mark { width:23px; height:9px; }.heavy-top-right { gap:8px; }.heavy-top-right > span { display:none; }.heavy-top .langs { display:none; }.heavy-hotline { padding-left:10px; gap:7px; }.heavy-hotline span { display:none; }.heavy-hotline b { font-size:14px; }
 .heavy-head { border-bottom-width:3px; }.heavy-head-in { min-height:62px; gap:10px; }.logo { min-width:0; flex:1; gap:9px; }.logo-mark { width:39px; height:39px; font-size:16px; }.logo-text b { font-size:17px; max-width:190px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }.logo-text small { display:none; }.logo-img { max-width:min(calc(190px * var(--logo-scale, 1)),55vw,var(--logo-bound,100vw)); }.heavy-head-nav, .heavy-head-in > .heavy-quote { display:none; }.burger { display:inline-grid; width:44px; height:44px; border:2px solid var(--c-ink); border-radius:0; }
 .heavy-hero { height:auto; aspect-ratio:4/3; }.heavy-hero-cap { padding-bottom:22px; }.heavy-hero-panel { width:min(92%,570px); padding:22px 35px 24px 20px; border-left-width:7px; }.hero-index { margin-bottom:7px; font-size:12px; }.heavy-hero-title { font-size:clamp(25px,7vw,38px); margin-bottom:8px; }.heavy-hero-sub { margin-bottom:13px; font-size:14px; line-height:1.4; }.heavy-hero-btn { min-height:43px; padding:0 17px; font-size:14px; }.heavy-hero .car-arrow { top:40%; width:38px; height:44px; }.heavy-hero .car-prev { left:8px; }.heavy-hero .car-next { right:8px; }.heavy-hero .car-dots { right:18px; bottom:12px; }.heavy-hero .car-dots button { width:24px; height:4px; }
 .heavy-hero.is-plain { aspect-ratio:var(--hero-ratio); }.heavy-hero.is-plain .heavy-slide > img { object-fit:contain; }
 .heavy-statbar { border-bottom-width:5px; }.heavy-statbar ul { grid-template-columns:repeat(2,minmax(0,1fr)); }.heavy-statbar li { min-height:88px; padding:13px 14px; border-top:1px solid color-mix(in srgb,var(--c-ink) 24%,transparent); border-left:1px solid color-mix(in srgb,var(--c-ink) 24%,transparent); }.heavy-statbar li:nth-child(odd) { border-left:0; }.heavy-statbar li:nth-child(-n+2) { border-top:0; }.heavy-statbar li:first-child { padding-left:14px; }.heavy-statbar b { font-size:27px; }.heavy-statbar .stat-label { margin-top:3px; font-size:12px; }.heavy-statbar .stat-serial { top:10px; right:10px; }
 .heavy-section-head { align-items:flex-start; margin-bottom:23px; }.heavy-section-head h2 { font-size:27px; }.heavy-section-head .head-rule { width:22%; margin-top:15px; }.flow-line { grid-template-columns:1fr 1fr; }.flow-line li { min-height:174px; padding:17px 15px; border-right:1px solid color-mix(in srgb,var(--c-dark-ink) 34%,transparent); border-bottom:0; }.flow-line li:nth-child(2n) { border-right:2px solid color-mix(in srgb,var(--c-dark-ink) 34%,transparent); }.flow-line li:nth-last-child(-n+2) { border-bottom:2px solid color-mix(in srgb,var(--c-dark-ink) 34%,transparent); }.flow-no { margin-bottom:16px; }.flow-line h3 { font-size:17px; }.flow-line p { font-size:13px; }.flow-arrow { right: -13px; width:25px; height:25px; font-size:14px; }.flow-line li:nth-child(2n) .flow-arrow { display:none; }
 .factory-grid { grid-template-columns:1fr; gap:35px; }.factory-image { min-height:280px; border-width:5px; box-shadow:9px 9px 0 var(--c-accent); }.factory-copy h2 { font-size:33px; }.factory-intro { font-size:15px; }.factory-numbers { margin:20px 0; }.factory-numbers b { font-size:22px; }
 .heavy-plist { display:flex; flex-direction:column; gap:24px; padding-top:24px; padding-bottom:64px; }.heavy-plist-side, .heavy-plist-main { min-width:0; width:100%; }.heavy-plist-side { position:static; padding:15px; box-shadow:4px 4px 0 var(--c-accent); }.heavy-filter-title h2 { display:inline-block; margin:0 0 10px 8px; font-size:20px; }.heavy-filter-title .heavy-kicker { display:inline-block; }.heavy-plist-side .sform { width:100%; min-width:0; margin-bottom:9px; }.heavy-plist-side .catnav-title { display:none; }.heavy-plist-side .catnav ul { display:flex; width:100%; min-width:0; overflow-x:auto; gap:7px; padding:8px 0 4px; scrollbar-width:thin; }.heavy-plist-side .catnav li { flex:none; }.heavy-plist-side .catnav a { white-space:nowrap; border:1px solid var(--c-line); }.heavy-side-call { display:none; }.heavy-side-quote { min-height:42px; margin-top:9px; }.heavy-results-head { margin-bottom:14px; }.heavy-pgrid { gap:15px; }.heavy-pcard .pcard-body { padding:13px; }.heavy-pcard .pcard-title { font-size:16px; }.heavy-card-summary { min-height:0; margin:7px 0 10px; font-size:13px; line-height:1.5; }.heavy-card-specs div { gap:6px; padding:7px 0; }.heavy-card-specs dt, .heavy-card-specs dd { font-size:12px; }.heavy-pcard .pcard-act { gap:6px; flex-wrap:wrap; }.heavy-pcard .pcard-more, .heavy-pcard .pcard-ask { font-size:12px; }
 .heavy-product-intro { grid-template-columns:1fr; gap:22px; padding-top:8px; padding-bottom:34px; }.heavy-product-main { aspect-ratio:4/3; }.heavy-product-copy h1 { font-size:32px; }.heavy-product-summary { font-size:15px; }.heavy-key-specs { margin:18px 0; }.heavy-product-actions { gap:12px; }.heavy-product-actions .heavy-quote { min-height:48px; }.heavy-ask-link { font-size:14px; }
 .heavy-product-data { padding-top:42px; padding-bottom:45px; }.heavy-detail-grid { display:flex; flex-direction:column; gap:30px; }.heavy-detail-body { width:100%; }.heavy-detail-heading h2 { font-size:25px; }.heavy-sticky-quote { position:static; width:100%; padding:19px; }.heavy-table-scroll { margin-right:calc(-1 * var(--gutter)); width:calc(100% + var(--gutter)); }.heavy-spec-table { min-width:490px; }.heavy-spec-table th, .heavy-spec-table td { padding:11px 12px; font-size:14px; }.model-table-scroll { margin-left:calc(-1 * var(--gutter)); width:calc(100% + var(--gutter) * 2); }.heavy-models .heavy-section-head { align-items:center; }.heavy-model-table th, .heavy-model-table td { font-size:13px; padding:11px; }
 .page-head { padding:26px 0; }.page-head .page-title { font-size:29px; }.contact-grid { gap:20px; }.footer { padding-bottom:65px; }.mbar a { min-height:58px; }
}
@media (max-width:390px) {
 .heavy-top-copy { max-width:45%; }.heavy-hotline b { font-size:13px; }.logo-text b { max-width:150px; }.heavy-hero-panel { width:94%; padding:18px 32px 20px 16px; }.heavy-hero-title { font-size:25px; }.heavy-hero-sub { font-size:13px; }.heavy-pgrid { grid-template-columns:1fr 1fr; gap:11px; }.heavy-pcard .pcard-body { padding:10px; }.heavy-pcard .pcard-title { font-size:15px; }.heavy-card-specs dt, .heavy-card-specs dd { font-size:12px; }.heavy-pcard .pcard-more, .heavy-pcard .pcard-ask { font-size:12px; }.heavy-pcard .pcard-ask { padding:0; }.flow-line li { padding:14px 11px; }.flow-line h3 { font-size:16px; }.factory-copy h2 { font-size:29px; }
}
@media (prefers-reduced-motion:reduce) { *,*::before,*::after { scroll-behavior:auto!important; transition-duration:.01ms!important; animation-duration:.01ms!important; animation-iteration-count:1!important; } }
/* Logo 高度（随页头所在行，平台统一约定） */
:root { --logo-h: 56px; --logo-h-m: 42px; }

/* 带字 Banner：独立图片区，完整显示；控制栏不覆盖图片。 */

.heavy-hero.is-plain { height: auto; min-height: 0; max-height: none; aspect-ratio: auto; }
 .heavy-plain-copy { padding-top: 30px; padding-bottom: 36px; }.heavy-plain-copy .heavy-hero-panel { width: 100%; max-width: 690px; }

.heavy-hero-single, .heavy-hero-empty { position: relative; min-height: clamp(360px, 40vw, 760px); overflow: hidden; background: var(--c-dark); }
.heavy-hero-single > picture, .heavy-hero-single > picture img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.heavy-hero-empty { display: flex; align-items: center; }

.heavy-hero .heavy-hero-cap { z-index: 2; }
