@charset "utf-8";
/* ============================================================
   模块化背景系统（T6–T15 浅色模板专用）
   每个 section 都可以带自己的底色 / 纹理 / 背景图
   底色全部来自 --mod-1..5（由轮播实拍图取色派生）
   ============================================================ */

/* ---------- 1. 模块底色 ---------- */
.sect{position:relative;}
.sect>.wrap{position:relative;z-index:2;}
.sect.mod-a{background:var(--mod-1);}
.sect.mod-b{background:var(--mod-2);}
.sect.mod-c{background:var(--mod-3);}
.sect.mod-d{background:var(--mod-4);}
.sect.mod-e{background:var(--mod-5);}
.sect.mod-dark{background:var(--band);color:var(--on-dark);}
.sect.mod-dark h2,.sect.mod-dark h3,.sect.mod-dark h4,.sect.mod-dark .lead{color:#fff;}
.sect.mod-dark p,.sect.mod-dark li{color:rgba(255,255,255,.7);}

/* ---------- 2. 模块纹理 ---------- */
.sect.tx-grid::before,.sect.tx-line::before,.sect.tx-dot::before,.sect.tx-glow::before{
  content:"";position:absolute;inset:0;pointer-events:none;z-index:0;
}
.sect.tx-grid::before{
  background-image:linear-gradient(var(--line-2) 1px,transparent 1px),
                   linear-gradient(90deg,var(--line-2) 1px,transparent 1px);
  background-size:38px 38px;
}
.sect.tx-line::before{
  background-image:repeating-linear-gradient(135deg,var(--line-2) 0 1px,transparent 1px 9px);
}
.sect.tx-dot::before{
  background-image:radial-gradient(var(--line) 1px,transparent 1.4px);
  background-size:20px 20px;opacity:.75;
}
.sect.tx-glow::before{
  background:radial-gradient(90% 120% at 88% 0%,var(--accent-soft),transparent 62%);
}
.sect.mod-edge{border-top:1px solid var(--line);}

/* ---------- 3. 图片背景模块 ---------- */
.sect.mod-img{background-size:cover;background-position:center;background-repeat:no-repeat;overflow:hidden;}
.sect.mod-img::before{
  content:"";position:absolute;inset:0;z-index:0;
  background:linear-gradient(180deg,rgba(12,10,8,.74),rgba(12,10,8,.86));
}
.sect.mod-img.tone-warm::before{background:linear-gradient(180deg,rgba(48,30,18,.82),rgba(28,18,12,.9));}
.sect.mod-img.tone-cool::before{background:linear-gradient(180deg,rgba(16,24,28,.8),rgba(10,14,16,.9));}
.sect.mod-img h2,.sect.mod-img h3,.sect.mod-img h4{color:#fff;}
.sect.mod-img .lead,.sect.mod-img p{color:rgba(255,255,255,.74);}
.sect.mod-img .sec-head{border-bottom-color:rgba(255,255,255,.18);}
.sect.mod-img .eyebrow{color:rgba(255,255,255,.72);}
.sect.mod-img .eyebrow::before{background:#fff;}
.sect.mod-img .tlink,.sect.mod-img .more{color:#fff;border-color:rgba(255,255,255,.4);}

/* ---------- 4. 模块标题 ---------- */
.mhead{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:clamp(20px,2.4vw,36px);}
.mhead .mh-l{max-width:760px;}
.mhead .mnum{
  display:inline-flex;align-items:center;justify-content:center;
  min-width:38px;height:26px;padding:0 9px;margin-bottom:12px;
  font-family:var(--num-font);font-size:12.5px;font-weight:700;letter-spacing:.1em;
  background:var(--accent);color:#fff;border-radius:var(--r);
}
.mhead h2{font-size:var(--fs-h2);line-height:1.16;}
.mhead .lead{margin-top:10px;}
.mhead .mh-r{flex:none;padding-bottom:4px;}
@media(max-width:700px){.mhead{flex-direction:column;align-items:flex-start;gap:12px;}}

/* ---------- 5. 色块卡片 ---------- */
.mtile{background:var(--card-bg);border:1px solid var(--line);border-radius:var(--r);padding:clamp(16px,2vw,26px);position:relative;overflow:hidden;}
.mtile:hover{box-shadow:var(--shadow);}
.mtile .mi{width:44px;height:44px;display:flex;align-items:center;justify-content:center;border-radius:var(--r);background:var(--mod-2);color:var(--accent);margin-bottom:14px;}
.mtile h3{font-size:var(--fs-h3);}
.mtile p{font-size:13.4px;line-height:1.75;color:var(--ink-3);margin-top:8px;}
.mtile .tagn{position:absolute;right:14px;top:12px;font-family:var(--num-font);font-size:12px;color:var(--ink-3);opacity:.5;}

/* ---------- 6. 拼贴网格 ---------- */
.bento{display:grid;grid-template-columns:repeat(12,1fr);gap:clamp(10px,1.2vw,16px);}
.bento>*{min-width:0;}
.bento .b-6{grid-column:span 6;}
.bento .b-4{grid-column:span 4;}
.bento .b-3{grid-column:span 3;}
.bento .b-8{grid-column:span 8;}
.bento .b-12{grid-column:span 12;}
@media(max-width:900px){.bento .b-6,.bento .b-4,.bento .b-8,.bento .b-3{grid-column:span 12;}}

.bcell{
  position:relative;overflow:hidden;border-radius:var(--r);border:1px solid var(--line);
  background:var(--card-bg);padding:clamp(18px,2.2vw,30px);min-height:180px;
  display:flex;flex-direction:column;justify-content:space-between;
}
.bcell.tint1{background:var(--mod-1);}
.bcell.tint2{background:var(--mod-2);}
.bcell.tint3{background:var(--mod-3);}
.bcell.dark{background:var(--band);border-color:transparent;}
.bcell.dark h3,.bcell.dark .k{color:#fff;}
.bcell.dark p{color:rgba(255,255,255,.68);}
.bcell .k{font-family:var(--num-font);font-size:11.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3);}
.bcell h3{font-size:clamp(17px,.9vw + 13px,25px);line-height:1.3;margin-top:10px;}
.bcell .big{font-family:var(--num-font);font-size:clamp(34px,3.6vw,64px);font-weight:700;line-height:1;letter-spacing:-.03em;}
.bcell .big em{font-style:normal;font-size:.4em;margin-left:4px;color:var(--accent);}

/* ---------- 7. 横向数据条 ---------- */
.modstrip{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line);border:1px solid var(--line);border-radius:var(--r);overflow:hidden;}
.modstrip .it{background:var(--card-bg);padding:clamp(16px,2vw,26px);}
.modstrip .v{font-family:var(--num-font);font-size:clamp(24px,2.4vw,38px);font-weight:700;line-height:1;letter-spacing:-.02em;color:var(--ink);}
.modstrip .v em{font-style:normal;font-size:.42em;color:var(--accent);margin-left:3px;}
.modstrip .t{font-size:12.5px;color:var(--ink-3);margin-top:9px;}
@media(max-width:760px){.modstrip{grid-template-columns:1fr 1fr;}}

/* ---------- 8. 左文右图（模块版） ---------- */
.splitmod{display:grid;grid-template-columns:1.02fr .98fr;gap:clamp(20px,3vw,54px);align-items:center;}
.splitmod .sm-media{position:relative;border-radius:var(--r);overflow:hidden;background:var(--mod-3);}
.splitmod .sm-media img{width:100%;height:100%;object-fit:cover;display:block;aspect-ratio:4/3.1;}
.splitmod .sm-media .cap{
  position:absolute;left:0;right:0;bottom:0;padding:14px 16px;font-size:12.5px;color:#fff;
  background:linear-gradient(to top,rgba(12,10,8,.86),transparent);
}
.splitmod.rev .sm-media{order:2;}
.splitmod .sm-txt ul.lst{margin-top:14px;}
@media(max-width:860px){.splitmod{grid-template-columns:1fr;}.splitmod.rev .sm-media{order:0;}}

/* ---------- 9. 横向步骤 ---------- */
.hsteps{display:grid;grid-template-columns:repeat(6,1fr);gap:1px;background:var(--line);border:1px solid var(--line);border-radius:var(--r);overflow:hidden;}
.hsteps .hs{background:var(--card-bg);padding:16px 14px 18px;position:relative;}
.hsteps .hs .n{font-family:var(--num-font);font-size:11.5px;color:var(--accent);letter-spacing:.1em;}
.hsteps .hs h4{font-size:13.6px;margin-top:7px;line-height:1.4;}
.hsteps .hs p{font-size:11.8px;line-height:1.6;color:var(--ink-3);margin-top:5px;}
@media(max-width:900px){.hsteps{grid-template-columns:repeat(3,1fr);}}
@media(max-width:560px){.hsteps{grid-template-columns:1fr 1fr;}}

/* ---------- 10. 首屏（模块版） ---------- */
.hero-mod{position:relative;background:var(--paper);overflow:hidden;}
.hero-mod .hmbg{position:absolute;inset:0;z-index:0;}
.hero-mod .hmbg::after{
  content:"";position:absolute;inset:0;
  background:radial-gradient(70% 100% at 82% 0%,var(--accent-soft),transparent 60%);
}
.hero-mod .wrap{position:relative;z-index:2;}
.hero-mod .hm{display:grid;grid-template-columns:1.06fr .94fr;gap:clamp(24px,4vw,64px);align-items:center;
  padding-top:clamp(40px,5.4vw,86px);padding-bottom:clamp(36px,5vw,78px);}
.hero-mod h1{font-size:clamp(28px,3vw + 14px,58px);line-height:1.1;letter-spacing:-.03em;}
.hero-mod h1 .hl{color:var(--accent);position:relative;}
.hero-mod .sub{margin-top:18px;font-size:var(--fs-lead);line-height:1.72;color:var(--ink-3);max-width:34em;}
.hero-mod .acts{display:flex;flex-wrap:wrap;gap:12px;margin-top:26px;}
.hero-mod .hm-vis{position:relative;}
.hero-mod .hm-vis .frame{
  position:relative;border-radius:var(--r);overflow:hidden;background:var(--mod-3);
  box-shadow:0 40px 80px -50px rgba(0,0,0,.55);
}
.hero-mod .hm-vis .frame img{width:100%;display:block;aspect-ratio:4/3.4;object-fit:cover;}
.hero-mod .hm-vis .badge{
  position:absolute;left:-18px;bottom:22px;background:var(--card-bg);border-left:3px solid var(--accent);
  padding:12px 18px;border-radius:var(--r);box-shadow:var(--shadow);
}
.hero-mod .hm-vis .badge .k{font-family:var(--num-font);font-size:20px;font-weight:700;color:var(--ink);}
.hero-mod .hm-vis .badge .k small{font-size:.6em;color:var(--accent);margin-left:2px;}
.hero-mod .hm-vis .badge .l{font-size:11.5px;color:var(--ink-3);margin-top:3px;letter-spacing:.06em;}
.hero-mod .hrow{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line);
  border-top:1px solid var(--line);}
.hero-mod .hrow .it{background:var(--paper);padding:18px clamp(10px,1.6vw,22px);}
.hero-mod .hrow .v{font-family:var(--num-font);font-size:clamp(20px,1.8vw,30px);font-weight:700;color:var(--ink);line-height:1;}
.hero-mod .hrow .v em{font-style:normal;font-size:.44em;color:var(--accent);margin-left:3px;}
.hero-mod .hrow .t{font-size:11.8px;color:var(--ink-3);margin-top:7px;letter-spacing:.03em;}
@media(max-width:900px){
  .hero-mod .hm{grid-template-columns:1fr;gap:26px;}
  .hero-mod .hm-vis .badge{left:12px;}
  .hero-mod .hrow{grid-template-columns:1fr 1fr;}
}

/* ---------- 11. 深色引用带 ---------- */
.quoteband{padding:clamp(38px,5vw,76px) 0;}
.quoteband .q{max-width:920px;margin:0 auto;text-align:center;font-size:clamp(19px,1.9vw + 10px,32px);
  line-height:1.62;font-weight:700;letter-spacing:-.015em;}
.quoteband .q em{font-style:normal;color:var(--accent);}
.quoteband .by{margin-top:18px;text-align:center;font-size:12.5px;letter-spacing:.12em;color:var(--ink-3);}
.sect.mod-dark .quoteband .q{color:#fff;}
.sect.mod-dark .quoteband .by{color:rgba(255,255,255,.55);}

/* ---------- 12. 产品卡（模块版） ---------- */
.pcard--mod{background:var(--card-bg);border:1px solid var(--line);border-radius:var(--r);overflow:hidden;}
.pcard--mod .ph{aspect-ratio:1/1;background:var(--mod-4);position:relative;}
.pcard--mod .ph img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .7s var(--ease);}
.pcard--mod:hover .ph img{transform:scale(1.045);}
.pcard--mod .bd{padding:clamp(13px,1.5vw,20px);}
.pcard--mod h3{font-size:clamp(15px,.4vw + 13px,19px);}
.pcard--mod .sp{font-size:12.4px;color:var(--ink-3);margin-top:7px;line-height:1.68;}
.pcard--mod .ft{display:flex;align-items:center;justify-content:space-between;margin-top:12px;padding-top:11px;border-top:1px solid var(--line-2);font-size:12px;color:var(--ink-3);}

/* ---------- 13. 杂志式编号目录（模块版） ---------- */
.numlist{border-top:1px solid var(--line);}
.numlist a.it{display:grid;grid-template-columns:64px 1fr 132px 92px;gap:14px;align-items:center;
  padding:18px 4px;border-bottom:1px solid var(--line);transition:.25s var(--ease);}
.numlist a.it:hover{background:var(--mod-1);padding-left:12px;}
.numlist .no{font-family:var(--num-font);font-size:13px;color:var(--accent);letter-spacing:.08em;}
.numlist .t{font-size:var(--fs-h4);font-weight:700;color:var(--ink);}
.numlist .c{font-size:12.4px;color:var(--ink-3);opacity:.95;}
.numlist .d{font-size:12px;color:var(--ink-3);text-align:right;opacity:.95;}
@media(max-width:700px){.numlist a.it{grid-template-columns:44px 1fr;row-gap:4px;}.numlist .c,.numlist .d{display:none;}}

/* ---------- 14. 内页模块化 ---------- */
.pghero--mod{background:var(--mod-1);position:relative;overflow:hidden;color:var(--ink);}
.pghero--mod::before{
  content:"";position:absolute;inset:0;
  background-image:linear-gradient(var(--line-2) 1px,transparent 1px),linear-gradient(90deg,var(--line-2) 1px,transparent 1px);
  background-size:40px 40px;
}
.pghero--mod .wrap{position:relative;z-index:2;padding-top:clamp(30px,4vw,62px);padding-bottom:clamp(30px,4vw,62px);}
.pghero--mod h1{color:var(--ink);font-size:clamp(24px,2.2vw + 12px,44px);letter-spacing:-.025em;}
.pghero--mod .d{color:var(--ink-3);}
.pghero--mod .crumb,.pghero--mod .crumb a{color:var(--ink-3);}
.pghero--mod .crumb a:hover{color:var(--accent);}
.pghero--mod .meta div{color:var(--ink-3);}
.pghero--mod .meta b{color:var(--ink);}
.pghero--mod .eyebrow{color:var(--accent);}
.pghero--mod .eyebrow::before{background:var(--accent);}

.modband{background:var(--mod-2);}
.modband-3{background:var(--mod-3);}

/* ---------- 15. 首屏数据条（全局，兼容大图首屏） ---------- */
.hrow{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line);border-top:1px solid var(--line);}
.hrow .it{background:var(--paper);padding:18px clamp(10px,1.6vw,22px);}
.hrow .v{font-family:var(--num-font);font-size:clamp(20px,1.8vw,30px);font-weight:700;color:var(--ink);line-height:1;}
.hrow .v em{font-style:normal;font-size:.44em;color:var(--accent);margin-left:3px;}
.hrow .t{font-size:11.8px;color:var(--ink-3);margin-top:7px;letter-spacing:.03em;}
@media(max-width:760px){.hrow{grid-template-columns:1fr 1fr;}}

/* 大图首屏遮罩 */
.hero-mod.has-bg{background-size:cover;background-position:center;}
.hero-mod.has-bg::before{
  content:"";position:absolute;inset:0;z-index:1;
  background:linear-gradient(100deg,rgba(12,10,8,.92) 0%,rgba(12,10,8,.8) 46%,rgba(12,10,8,.44) 100%);
}
.hero-mod.has-bg .eyebrow{color:rgba(255,255,255,.78);}
.hero-mod.has-bg .eyebrow::before{background:#fff;}
.hero-mod.has-bg h1{color:#fff;}
.hero-mod.has-bg .d{color:rgba(255,255,255,.82);}
.hero-mod.has-bg .btn-g{color:#fff;border-color:rgba(255,255,255,.42);}
.hero-mod.has-bg .btn-g:hover{background:#fff;color:var(--ink);border-color:#fff;}

/* 链接不换行 */
.mhead .mh-r .tlink,.mhead .mh-r a{white-space:nowrap;display:inline-flex;align-items:center;gap:5px;flex-wrap:nowrap;}

/* ---------- 16. 修正：深底区块内的文字一律提亮 ---------- */
.sect .case h3,.sect .case h3 a{color:#fff;}
.sect .case p{color:rgba(255,255,255,.76);}
.sect .case .kpis span{color:#fff;}
.sect .case .ct .k,.sect .case .tag{color:rgba(255,255,255,.8);}
.bcell.dark .big,.bcell.dark .big em{color:#fff;}
.bcell.dark .k{color:rgba(255,255,255,.62);}
.sect.mod-dark .by,.sect.mod-dark .q{color:#fff;}
.sect.mod-dark .by{color:rgba(255,255,255,.56);}
.sect.mod-dark .modstrip{background:rgba(255,255,255,.14);border-color:rgba(255,255,255,.14);}
.sect.mod-dark .modstrip .it{background:transparent;}
.sect.mod-dark .modstrip .v{color:#fff;}
.sect.mod-dark .modstrip .t{color:rgba(255,255,255,.6);}
/* 淡色小字提一档，避免浅底看不清 */
.tagn{color:var(--ink-3);opacity:.62;}

/* 案例卡关键数据 */
.case .c .kpis{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px;}
.case .c .kpis span{font-family:var(--num-font);font-size:11.5px;letter-spacing:.04em;
  padding:3px 9px;border:1px solid rgba(255,255,255,.32);border-radius:2px;color:#fff;}
.case .c p{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}

/* 压掉基础 .pghero 的深色底与照片蒙版，模块首屏用模块底色 */
.pghero--mod{background:var(--mod-1);color:var(--ink);}
.pghero--mod::after{display:none;}
.pghero--mod::before{opacity:.9;filter:none;}

/* 大图首屏：照片用真实 img 元素铺底（避免自定义属性里 url 的相对路径解析问题） */
.pghero--mod.pgm-bg{background:var(--band);color:#fff;}
.pghero--mod.pgm-bg::before{display:none;}
.pghero--mod .pgm-bgl{position:absolute;inset:0;z-index:0;overflow:hidden;}
.pghero--mod .pgm-bgl img{width:100%;height:100%;object-fit:cover;display:block;}
.pghero--mod .pgm-bgl::after{content:"";position:absolute;inset:0;
  background:linear-gradient(100deg,rgba(14,11,9,.93) 0%,rgba(14,11,9,.72) 55%,rgba(14,11,9,.42) 100%);}
.pghero--mod.pgm-bg .wrap{position:relative;z-index:2;}

/* ==================================================================
   17. 内页模块化骨架（T6–T15 栏目页 / 详情页 / 文章页）
   ================================================================== */
.pghero--mod .crumb{margin-bottom:12px;font-size:12.6px;}
.pghero--mod .pgm{display:grid;grid-template-columns:1.12fr .88fr;gap:clamp(20px,3.4vw,56px);
  align-items:center;margin-top:6px;}
.pghero--mod .pgm-t{min-width:0;}
.pghero--mod .acts{display:flex;flex-wrap:wrap;gap:12px;margin-top:22px;}

/* 右列：图片 */
.pghero--mod .pgm-v{position:relative;border-radius:var(--r);overflow:hidden;
  background:var(--mod-3);border:1px solid var(--line);}
.pghero--mod .pgm-v img{width:100%;display:block;aspect-ratio:16/10;object-fit:cover;}
.pghero--mod .pgm-v .cap{position:absolute;left:0;right:0;bottom:0;padding:10px 14px;
  font-size:11.8px;letter-spacing:.04em;color:#fff;
  background:linear-gradient(to top,rgba(18,14,10,.86),rgba(18,14,10,0));}

/* 右列：四宫格数据 */
.pghero--mod .pgm-tile{display:grid;grid-template-columns:1fr 1fr;gap:1px;
  background:var(--line);border:1px solid var(--line);border-radius:var(--r);overflow:hidden;}
.pghero--mod .pgm-tile>div{background:var(--paper);padding:clamp(15px,1.7vw,24px);}
.pghero--mod .pgm-tile .k{font-size:11.2px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-3);}
.pghero--mod .pgm-tile .v{font-family:var(--num-font);font-size:clamp(22px,2vw,32px);font-weight:700;
  line-height:1;margin-top:9px;color:var(--ink);}
.pghero--mod .pgm-tile .v em{font-style:normal;font-size:.42em;color:var(--accent);margin-left:3px;}

/* 首屏底部数据条 */
.pghero--mod .stats4{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;
  background:var(--line);border:1px solid var(--line);border-radius:var(--r);overflow:hidden;
  margin-top:clamp(20px,2.6vw,32px);}
.pghero--mod .stats4 .it{background:var(--paper);padding:14px clamp(10px,1.4vw,20px);}
.pghero--mod .stats4 .v{font-family:var(--num-font);font-size:clamp(18px,1.6vw,27px);font-weight:700;
  line-height:1;color:var(--ink);letter-spacing:-.02em;}
.pghero--mod .stats4 .v em{font-style:normal;font-size:.44em;color:var(--accent);margin-left:3px;}
.pghero--mod .stats4 .t{font-size:11.6px;color:var(--ink-3);margin-top:7px;letter-spacing:.03em;}

/* 大图首屏（深色遮罩） */
.pghero--mod.pgm-bg h1,.pghero--mod.pgm-bg .d,.pghero--mod.pgm-bg .crumb,
.pghero--mod.pgm-bg .crumb a,.pghero--mod.pgm-bg .crumb span{color:#fff;}
.pghero--mod.pgm-bg .crumb a:hover{color:rgba(255,255,255,.72);}
.pghero--mod.pgm-bg .eyebrow{color:rgba(255,255,255,.76);}
.pghero--mod.pgm-bg .eyebrow::before{background:#fff;}
.pghero--mod.pgm-bg .stats4{border-color:rgba(255,255,255,.24);background:rgba(255,255,255,.2);}
.pghero--mod.pgm-bg .stats4 .it{background:transparent;}
.pghero--mod.pgm-bg .stats4 .v{color:#fff;}
.pghero--mod.pgm-bg .stats4 .t{color:rgba(255,255,255,.62);}
.pghero--mod.pgm-bg .btn-g{color:#fff;border-color:rgba(255,255,255,.44);}
.pghero--mod.pgm-bg .btn-g:hover{background:#fff;color:var(--ink);border-color:#fff;}

/* 超大标题首屏 */
.pghero--mod .pgm-big{font-size:clamp(30px,4vw + 12px,64px) !important;line-height:1.06;max-width:17em;}

/* 内页两栏（正文 + 侧栏） */
.msplit{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:clamp(20px,3vw,40px);align-items:start;}
.mside{display:grid;gap:14px;position:sticky;top:96px;}
.mtile .lk{display:flex;align-items:baseline;justify-content:space-between;gap:10px;
  padding:9px 0;border-bottom:1px solid var(--line-2);font-size:13.2px;color:var(--ink-2);}
.mtile .lk:last-child{border-bottom:0;padding-bottom:0;}
.mtile .lk:first-of-type{padding-top:0;}
.mtile .lk span{color:var(--ink-3);font-family:var(--num-font);font-size:12px;flex:none;}
.mtile .lk:hover{color:var(--accent);}
.mtile .hd{font-size:11.4px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3);margin-bottom:12px;}

/* 分类 chips */
.mchips{display:flex;flex-wrap:wrap;gap:8px;}
.mchips a{font-size:13px;padding:8px 15px;border:1px solid var(--line);background:var(--card-bg);
  border-radius:var(--r);color:var(--ink-2);transition:.22s var(--ease);}
.mchips a:hover{border-color:var(--accent);color:var(--accent);}
.mchips a.on{background:var(--accent);border-color:var(--accent);color:#fff;}

/* 内页正文段距 */
.mprose{max-width:840px;}
.sect .wrap>.mintro{max-width:760px;color:var(--ink-3);font-size:var(--fs-lead);line-height:1.78;}

@media(max-width:900px){
  .pghero--mod .pgm{grid-template-columns:1fr;gap:22px;}
  .pghero--mod .pgm-v img{aspect-ratio:16/10.5;}
  .msplit{grid-template-columns:1fr;}
  .mside{position:static;}
}
@media(max-width:760px){
  .pghero--mod .stats4{grid-template-columns:1fr 1fr;}
  .pghero--mod .pgm-tile{grid-template-columns:1fr 1fr;}
  .pghero--mod .pgm-big{font-size:clamp(26px,7vw,40px) !important;}
}

/* 首屏后紧接的模块：去掉上间距 */
.sect-tight{padding-top:clamp(20px,2.6vw,32px);}

/* 详情页操作条（贴在首屏下沿） */
.dbar{display:flex;flex-wrap:wrap;gap:14px;align-items:center;justify-content:space-between;
  padding-bottom:clamp(16px,2vw,24px);margin-bottom:clamp(20px,2.6vw,32px);
  border-bottom:1px solid var(--line);}
.dbar .db-trust{display:flex;flex-wrap:wrap;gap:16px;font-size:12.4px;color:var(--ink-3);align-items:center;}
.dbar .db-trust span{display:inline-flex;align-items:center;gap:5px;white-space:nowrap;}
.dbar .db-trust svg{color:var(--accent);}
@media(max-width:700px){.dbar{gap:12px;}.dbar .db-trust{gap:10px 14px;font-size:12px;}}

/* ==================================================================
   18. 新增栏目组件（工具 / 资料 / 资质 / 精工细作 / 表单）
   ================================================================== */

/* --- 精工细作 6 条 --- */
.craft6{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);
  border:1px solid var(--line);border-radius:var(--r);overflow:hidden;}
.craft6 .c6{background:var(--card-bg);padding:clamp(18px,2.2vw,30px);position:relative;
  transition:background .3s var(--ease);}
.craft6 .c6:hover{background:var(--paper-2);}
.craft6 .c6 .n{position:absolute;right:clamp(14px,1.8vw,22px);top:clamp(12px,1.6vw,18px);
  font-family:var(--num-font);font-size:12px;letter-spacing:.16em;color:var(--ink-3);opacity:.5;}
.craft6 .c6 .ic{width:38px;height:38px;display:flex;align-items:center;justify-content:center;
  border:1px solid var(--line);border-radius:var(--r);color:var(--accent);margin-bottom:16px;}
.craft6 .c6 .ic svg{width:19px;height:19px;}
.craft6 .c6 h4{font-size:clamp(14.5px,1.1vw+8px,17px);line-height:1.4;margin:0 0 9px;color:var(--ink);}
.craft6 .c6 p{font-size:13.2px;line-height:1.76;color:var(--ink-3);margin:0;}

/* --- 分组小标题（emoji + 中英） --- */
.ghead{display:grid;grid-template-columns:auto 1fr;gap:10px 16px;align-items:center;margin-bottom:clamp(20px,2.6vw,30px);}
.ghead .ge{width:42px;height:42px;display:flex;align-items:center;justify-content:center;
  border:1px solid var(--line);border-radius:var(--r);font-size:18px;background:var(--card-bg);color:var(--accent);}
.ghead .ge svg{width:19px;height:19px;}
.ghead .ge .ic{display:flex;align-items:center;justify-content:center;}
.ghead>div:nth-child(2){display:flex;align-items:baseline;gap:12px;flex-wrap:wrap;}
.ghead h2{font-size:clamp(19px,1.9vw,27px);margin:0;line-height:1.2;color:var(--ink);}
.ghead .gen{font-size:11px;letter-spacing:.18em;color:var(--ink-3);text-transform:uppercase;}
.ghead p{grid-column:1/-1;margin:0;font-size:13.6px;line-height:1.7;color:var(--ink-3);max-width:64em;}

/* --- 工具卡片 --- */
.toolgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(10px,1.2vw,16px);}
.toolcard{display:flex;flex-direction:column;gap:10px;padding:clamp(16px,1.9vw,24px);
  background:var(--card-bg);border:1px solid var(--line);border-radius:var(--r);
  transition:.26s var(--ease);position:relative;}
.toolcard:hover{border-color:var(--accent);transform:translateY(-2px);}
.toolcard .tc-h{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;}
.toolcard h4{margin:0;font-size:15px;line-height:1.45;color:var(--ink);}
.toolcard .tag{flex:none;font-size:10.5px;letter-spacing:.06em;padding:3px 8px;border-radius:2px;
  background:var(--accent-soft);color:var(--accent);}
.toolcard p{margin:0;font-size:12.8px;line-height:1.72;color:var(--ink-3);flex:1;}
.toolcard .tc-f{display:flex;align-items:center;gap:6px;font-size:12px;font-weight:700;color:var(--accent);}
.toolcard .tc-f svg{width:14px;height:14px;transition:transform .26s var(--ease);}
.toolcard:hover .tc-f svg{transform:translateX(3px);}
.toolcard.hot{background:var(--paper-2);}

/* --- 计算器 --- */
.calcbox{border:1px solid var(--line);border-radius:var(--r);overflow:hidden;background:var(--card-bg);}
.cbtabs{display:flex;border-bottom:1px solid var(--line);background:var(--paper-2);flex-wrap:wrap;}
.cbtabs button{flex:1;min-width:180px;padding:15px 18px;font-size:13.4px;font-weight:700;
  color:var(--ink-3);border:0;background:none;cursor:pointer;border-bottom:2px solid transparent;
  transition:.22s;font-family:inherit;}
.cbtabs button.on{color:var(--ink);border-bottom-color:var(--accent);background:var(--card-bg);}
.cbp{display:none;padding:clamp(16px,2.2vw,26px);}
.cbp.on{display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(18px,2.6vw,34px);align-items:start;}
.cbp .inp{display:grid;grid-template-columns:1fr 1fr;gap:12px;}
.cbp .inp .fd:last-child:nth-child(odd){grid-column:1/-1;}
.fd{display:block;}
.fd>span{display:block;font-size:11.6px;letter-spacing:.06em;color:var(--ink-3);margin-bottom:6px;}
.fd input,.fd select,.fd textarea{width:100%;height:42px;padding:0 12px;font-size:13.6px;
  color:var(--ink);background:var(--paper);border:1px solid var(--line);border-radius:2px;
  font-family:inherit;transition:.2s;}
.fd textarea{height:auto;padding:10px 12px;line-height:1.7;resize:vertical;}
.fd input:focus,.fd select:focus,.fd textarea:focus{outline:none;border-color:var(--accent);}
.cbp .out{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--line);
  border:1px solid var(--line);border-radius:var(--r);overflow:hidden;}
.ov{background:var(--paper);padding:14px 16px;}
.ov .k{font-size:11.4px;color:var(--ink-3);letter-spacing:.04em;}
.ov .v{font-family:var(--num-font);font-size:clamp(19px,1.8vw,26px);font-weight:700;
  line-height:1.1;margin-top:6px;color:var(--ink);letter-spacing:-.01em;}
.ov .v em{font-style:normal;font-size:.46em;color:var(--accent);margin-left:3px;font-weight:600;}
.cbp .hint{grid-column:1/-1;padding:11px 14px;font-size:12.4px;line-height:1.6;
  background:var(--paper-2);color:var(--ink-2);border-radius:2px;}
.cbp .hint.warn{background:rgba(196,54,28,.1);color:#B0462C;}
.cbp .hint.mid{background:rgba(176,106,46,.12);color:#9A6320;}
.cbn{margin:12px clamp(16px,2.2vw,26px) 18px;font-size:11.8px;line-height:1.7;color:var(--ink-3);}

/* --- 数据表 --- */
.gtbl{width:100%;border-collapse:collapse;font-size:13.2px;}
.gtbl th{text-align:left;font-size:11.4px;letter-spacing:.1em;text-transform:uppercase;
  color:var(--ink-3);font-weight:700;padding:11px 14px;border-bottom:1px solid var(--line);
  background:var(--paper-2);white-space:nowrap;}
.gtbl td{padding:12px 14px;border-bottom:1px solid var(--line-2);color:var(--ink-2);line-height:1.6;}
.gtbl tr:last-child td{border-bottom:0;}
.gtbl tbody tr:hover td{background:var(--paper-2);}
.gtbl td b{color:var(--ink);font-weight:700;}
.gtbl a{color:var(--accent);font-weight:600;}
.gtbl .cat{display:inline-block;font-size:11px;padding:2px 8px;border-radius:2px;
  background:var(--accent-soft);color:var(--accent);white-space:nowrap;}
.tblnote{margin-top:12px;font-size:12.2px;line-height:1.7;color:var(--ink-3);}

/* --- 失效图谱 --- */
.fgrid{display:grid;grid-template-columns:repeat(2,1fr);gap:clamp(10px,1.2vw,16px);}
.fc{background:var(--card-bg);border:1px solid var(--line);border-radius:var(--r);
  padding:clamp(14px,1.7vw,20px);border-left:3px solid var(--accent);}
.fc .fh b{font-size:14.2px;color:var(--ink);}
.fc .fr{display:grid;grid-template-columns:auto 1fr;gap:9px;margin-top:9px;
  font-size:12.6px;line-height:1.7;color:var(--ink-3);}
.fc .lb{flex:none;font-size:10.5px;letter-spacing:.08em;color:var(--accent);
  border:1px solid var(--line);border-radius:2px;padding:1px 6px;height:fit-content;margin-top:2px;}

/* --- 术语 --- */
.tgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);
  border:1px solid var(--line);border-radius:var(--r);overflow:hidden;}
.tm{background:var(--card-bg);padding:16px 18px;}
.tm b{font-size:13.6px;color:var(--ink);display:block;margin-bottom:6px;}
.tm p{margin:0;font-size:12.4px;line-height:1.72;color:var(--ink-3);}

/* --- 技术资料卡片 --- */
.docgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(10px,1.2vw,16px);}
.doccard{display:flex;flex-direction:column;gap:10px;padding:clamp(16px,1.9vw,24px);
  background:var(--card-bg);border:1px solid var(--line);border-radius:var(--r);transition:.26s var(--ease);}
.doccard:hover{border-color:var(--accent);transform:translateY(-2px);}
.doccard .dc-m{display:flex;align-items:center;justify-content:space-between;
  font-size:11px;letter-spacing:.1em;color:var(--ink-3);text-transform:uppercase;}
.doccard .dc-m em{font-style:normal;color:var(--accent);}
.doccard h4{margin:0;font-size:14.6px;line-height:1.5;color:var(--ink);}
.doccard p{margin:0;font-size:12.6px;line-height:1.72;color:var(--ink-3);flex:1;}
.doccard .dc-f{display:flex;align-items:center;gap:6px;font-size:12px;font-weight:700;color:var(--accent);}
.doccard .dc-f svg{width:14px;height:14px;}

/* --- FAQ --- */
.faqlist{border-top:1px solid var(--line);}
.faqlist details{border-bottom:1px solid var(--line);}
.faqlist summary{list-style:none;cursor:pointer;padding:17px 40px 17px 0;position:relative;
  font-size:14.4px;font-weight:700;color:var(--ink);line-height:1.5;}
.faqlist summary::-webkit-details-marker{display:none;}
.faqlist summary::after{content:"+";position:absolute;right:4px;top:15px;font-size:20px;
  color:var(--accent);font-weight:400;transition:.22s;}
.faqlist details[open] summary::after{content:"−";}
.faqlist .fa{padding:0 40px 18px 0;font-size:13.4px;line-height:1.8;color:var(--ink-3);}

/* --- 质检步骤 --- */
.qsteps{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--line);
  border:1px solid var(--line);border-radius:var(--r);overflow:hidden;}
.qstep{display:grid;grid-template-columns:auto 1fr;gap:clamp(12px,1.6vw,20px);
  padding:clamp(18px,2.2vw,28px);background:var(--card-bg);}
.qs-n{font-family:var(--num-font);font-size:13px;font-weight:700;letter-spacing:.1em;
  color:var(--accent);padding-top:3px;}
.qs-b h3{margin:0 0 10px;font-size:clamp(15px,1.2vw+9px,18px);line-height:1.4;color:var(--ink);}
.qs-b p{margin:0;font-size:13px;line-height:1.82;color:var(--ink-3);}
.qs-b .qs-note{margin-top:10px;padding-left:11px;border-left:2px solid var(--accent);
  color:var(--ink-2);font-size:12.6px;}

/* --- 证书 --- */
.certgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(10px,1.2vw,16px);}
.cert{background:var(--card-bg);border:1px solid var(--line);border-radius:var(--r);
  padding:clamp(16px,1.9vw,24px);position:relative;overflow:hidden;}
.cert .ce{font-family:var(--num-font);font-size:clamp(20px,2vw,27px);font-weight:700;
  color:var(--accent);letter-spacing:-.01em;line-height:1;}
.cert h4{margin:14px 0 7px;font-size:14px;color:var(--ink);line-height:1.4;}
.cert p{margin:0;font-size:12.4px;line-height:1.7;color:var(--ink-3);}

/* --- 照片网格 --- */
.phgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(8px,1vw,12px);}
.phgrid figure{margin:0;position:relative;overflow:hidden;border-radius:var(--r);background:var(--mod-3);}
.phgrid img{width:100%;aspect-ratio:4/3;object-fit:cover;display:block;transition:transform .6s var(--ease);}
.phgrid figure:hover img{transform:scale(1.04);}
.phgrid figcaption{position:absolute;left:0;right:0;bottom:0;padding:22px 12px 10px;
  font-size:11.6px;color:#fff;background:linear-gradient(to top,rgba(16,12,10,.8),transparent);}

/* --- 关于页大图 --- */
.about-photo{position:relative;border-radius:var(--r);overflow:hidden;border:1px solid var(--line);
  margin-bottom:clamp(22px,3vw,36px);background:var(--mod-3);}
.about-photo img{width:100%;aspect-ratio:16/10;object-fit:cover;display:block;}
.about-photo .cap{position:absolute;left:0;right:0;bottom:0;padding:30px 18px 14px;
  font-size:12.2px;letter-spacing:.04em;color:#fff;
  background:linear-gradient(to top,rgba(16,12,10,.82),transparent);}

/* --- 双卡 --- */
.duo{display:grid;grid-template-columns:1fr 1fr;gap:clamp(10px,1.2vw,16px);}
.duo-c{display:block;padding:clamp(20px,2.4vw,32px);background:var(--card-bg);
  border:1px solid var(--line);border-radius:var(--r);transition:.26s var(--ease);}
.duo-c:hover{border-color:var(--accent);transform:translateY(-2px);}
.duo-c .de{font-family:var(--num-font);font-size:11px;letter-spacing:.2em;color:var(--accent);}
.duo-c h3{margin:10px 0 9px;font-size:clamp(17px,1.6vw,22px);color:var(--ink);}
.duo-c p{margin:0;font-size:13px;line-height:1.75;color:var(--ink-3);}
.duo-c .dl{display:inline-flex;align-items:center;gap:6px;margin-top:14px;
  font-size:12.4px;font-weight:700;color:var(--accent);}
.duo-c .dl svg{width:14px;height:14px;}

@media(max-width:1000px){
  .toolgrid,.docgrid,.certgrid{grid-template-columns:1fr 1fr;}
  .craft6{grid-template-columns:1fr 1fr;}
  .tgrid{grid-template-columns:1fr 1fr;}
  .phgrid{grid-template-columns:1fr 1fr;}
  .cbp.on{grid-template-columns:1fr;}
}
@media(max-width:700px){
  .toolgrid,.docgrid,.qsteps,.fgrid,.duo,.certgrid{grid-template-columns:1fr;}
  .craft6{grid-template-columns:1fr;}
  .tgrid{grid-template-columns:1fr;}
  .cbp .inp{grid-template-columns:1fr;}
  .cbp .out{grid-template-columns:1fr 1fr;}
  .ghead{grid-template-columns:auto 1fr;}
  .cbtabs button{min-width:0;font-size:12.4px;padding:13px 10px;}
  .gtbl{font-size:12.2px;}
  .gtbl th,.gtbl td{padding:9px 10px;}
  .tblwrap{overflow-x:auto;-webkit-overflow-scrolling:touch;}
}

/* ============================================================
   19. 首页轮播（左文右图，支持箭头/拖拽/自动播放）
   ============================================================ */
/* 浅色版：白底深字，图片从右侧自然过渡进来（原来是整块深墨底，压得太重） */
.hslider{position:relative;background:var(--paper-2,#F7F9F8);overflow:hidden;isolation:isolate;
  border-bottom:1px solid var(--line-2,rgba(14,20,19,.08));}
.hs-track{position:relative;}
.hs-slide{position:relative;display:none;min-height:clamp(430px,42vw,600px);}
.hs-slide.on{display:block;animation:hsfade .7s var(--ease) both;}
@keyframes hsfade{from{opacity:0}to{opacity:1}}
.hs-img{position:absolute;top:0;right:0;width:58%;height:100%;overflow:hidden;}
.hs-img img{width:100%;height:100%;object-fit:cover;object-position:center 42%;
  transform:scale(1.02);transition:transform 8s linear;}
.hs-slide.on .hs-img img{transform:scale(1.06);}
.hs-img:after{content:"";position:absolute;inset:0;
  background:linear-gradient(90deg,var(--paper-2,#F7F9F8) 0%,rgba(247,249,248,.94) 13%,
    rgba(247,249,248,.62) 32%,rgba(247,249,248,.12) 52%,rgba(247,249,248,0) 66%);}
.hs-in{position:relative;z-index:2;display:flex;align-items:center;min-height:inherit;}
.hs-txt{width:min(560px,50%);padding:clamp(26px,4vw,60px) 0;color:var(--ink,#0E1413);}
.hs-txt .eyebrow{color:var(--accent);letter-spacing:.2em;}
.hs-txt .eyebrow:before{background:var(--accent);}
.hs-txt h1,.hs-txt h2.h1{
  margin:14px 0 0;font-size:clamp(26px,2.6vw + 8px,46px);line-height:1.18;
  letter-spacing:-.03em;color:var(--ink,#0E1413);text-wrap:balance;font-weight:800;}
.hs-txt p{margin:16px 0 0;max-width:34em;font-size:clamp(13.4px,.5vw + 12px,15.6px);
  line-height:1.78;color:var(--ink-3,#5A6764);}
.hs-txt .acts{display:flex;gap:10px;flex-wrap:wrap;margin-top:24px;}
.hs-txt .btn-g{background:#fff;border:1px solid var(--line,rgba(14,20,19,.15));
  color:var(--ink,#0E1413);}
.hs-txt .btn-g:hover{background:var(--accent-soft,rgba(24,106,91,.07));
  border-color:var(--accent);color:var(--accent);}

.hs-arw{position:absolute;bottom:clamp(60px,6vw,72px);width:46px;height:46px;z-index:6;
  display:flex;align-items:center;justify-content:center;color:var(--ink,#0E1413);cursor:pointer;
  border:1px solid var(--line,rgba(14,20,19,.15));background:rgba(255,255,255,.94);
  -webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);transition:.22s;
  box-shadow:0 10px 24px -16px rgba(14,20,19,.55);}
.hs-arw svg{width:20px;height:20px;}
.hs-arw:hover{background:var(--accent);color:#fff;border-color:var(--accent);}
.hs-arw.prev{right:calc(clamp(16px,3vw,52px) + 54px);}
.hs-arw.next{right:clamp(16px,3vw,52px);}
.hs-bar{position:absolute;left:0;right:0;bottom:0;z-index:4;
  border-top:1px solid var(--line-2,rgba(14,20,19,.08));}
.hs-bar .wrap{display:flex;align-items:center;justify-content:space-between;gap:20px;height:52px;}
.hs-dots{display:flex;gap:9px;}
.hs-dot{width:34px;height:3px;background:rgba(14,20,19,.17);cursor:pointer;transition:.3s;}
.hs-dot.on{background:var(--accent);width:56px;}
.hs-count{display:flex;align-items:baseline;gap:5px;color:var(--ink-3,#5A6764);
  font-family:var(--num-font);font-size:12.4px;letter-spacing:.12em;}
.hs-count b{font-size:19px;color:var(--ink,#0E1413);font-weight:700;}
.hs-count i{font-style:normal;}
@media(max-width:860px){
  .hs-slide{min-height:clamp(430px,98vw,540px);}
  .hs-img{width:100%;}
  .hs-img:after{background:linear-gradient(180deg,rgba(247,249,248,.55) 0%,rgba(247,249,248,.86) 40%,
    rgba(247,249,248,.97) 66%,var(--paper-2,#F7F9F8) 100%);}
  .hs-in{align-items:flex-end;padding-bottom:56px;}
  .hs-txt{width:100%;}
  .hs-arw{display:none;}
  .hs-bar .wrap{height:46px;}
  .hs-dot{width:22px;}
  .hs-dot.on{width:34px;}
}

/* ============================================================
   20. 产品线横向滑动（对标 01 · PRODUCT SYSTEM）
   ============================================================ */
.lfwrap{position:relative;}
.lfrail{display:flex;gap:clamp(8px,1vw,14px);overflow-x:auto;scroll-snap-type:x proximity;
  padding:2px 0 12px;scrollbar-width:none;-ms-overflow-style:none;cursor:grab;}
.lfrail::-webkit-scrollbar{display:none;}
.lfrail.drag{cursor:grabbing;scroll-snap-type:none;}
.lfcard{flex:0 0 clamp(200px,19vw,244px);scroll-snap-align:start;display:flex;flex-direction:column;
  background:var(--card-bg);border:1px solid var(--line);border-radius:var(--r);overflow:hidden;
  transition:border-color .25s,transform .25s,box-shadow .25s;}
.lfcard:hover{border-color:var(--accent);transform:translateY(-3px);
  box-shadow:0 20px 40px -34px rgba(11,14,18,.6);}
.lf-img img{width:100%;aspect-ratio:4/3;object-fit:cover;display:block;}
.lf-b{padding:13px 14px 15px;display:flex;flex-direction:column;gap:5px;flex:1;}
.lf-b h4{margin:0;font-size:14.2px;font-weight:700;color:var(--ink);}
.lf-en{font-family:var(--num-font);font-size:10.6px;letter-spacing:.13em;color:var(--ink-3);
  text-transform:uppercase;}
.lf-sp{font-size:12px;line-height:1.6;color:var(--ink-3);}
.lf-go{margin-top:auto;padding-top:8px;font-size:11.8px;font-weight:700;color:var(--accent);
  display:inline-flex;align-items:center;gap:5px;}
.lf-go svg{width:13px;height:13px;transition:transform .25s;}
.lfcard:hover .lf-go svg{transform:translateX(3px);}
.lf-arw{position:absolute;top:34%;z-index:3;width:40px;height:40px;display:flex;
  align-items:center;justify-content:center;background:#fff;border:1px solid var(--line);
  border-radius:50%;box-shadow:0 10px 26px -16px rgba(11,14,18,.6);color:var(--ink);
  cursor:pointer;transition:.22s;}
.lf-arw svg{width:19px;height:19px;}
.lf-arw:hover{background:var(--accent);color:#fff;border-color:var(--accent);}
.lf-arw.prev{left:-18px;}
.lf-arw.next{right:-18px;}
.lf-arw[disabled]{opacity:.32;pointer-events:none;}
.lf-hint{margin-top:6px;font-size:11.8px;color:var(--ink-3);letter-spacing:.02em;}
@media(max-width:760px){
  .lf-arw{display:none;}
  .lfcard{flex:0 0 66vw;}
}

/* ============================================================
   21. 产品线切换（hover/点击切换 + 三排）
   ============================================================ */
.tabs16{display:flex;gap:0;border-bottom:1px solid var(--line);overflow-x:auto;
  scrollbar-width:none;margin-bottom:clamp(14px,2vw,22px);}
.tabs16::-webkit-scrollbar{display:none;}
.tab16{flex:0 0 auto;padding:11px 18px 12px;background:none;border:0;border-bottom:2px solid transparent;
  text-align:left;cursor:pointer;transition:.2s;white-space:nowrap;}
.tab16 b{display:block;font-size:14px;font-weight:700;color:var(--ink);transition:color .2s;}
.tab16 i{display:block;margin-top:3px;font-size:11.4px;font-style:normal;color:var(--ink-3);}
.tab16:hover b{color:var(--accent);}
.tab16.on{border-color:var(--accent);}
.tab16.on b{color:var(--accent);}
.panes16{transition:height .32s var(--ease);overflow:hidden;}
.pane16{display:none;}
.pane16.on{display:block;}
.pane16 .pgrid{gap:clamp(8px,1vw,13px);}
.pane-cap{margin:0 0 11px;font-size:12.4px;color:var(--ink-3);}
.pane-cap b{color:var(--ink);font-family:var(--num-font);font-size:13.2px;}
/* 本类产品高亮：内描边 + 顶部色条，一眼看清这一类是哪几张 */
.pcard--own{box-shadow:inset 0 0 0 2px var(--accent);}
.pcard--own .ph::after{content:"";position:absolute;left:0;right:0;top:0;height:3px;
  background:var(--accent);z-index:2;}
.pcard--own .bd h3 a{color:var(--accent);}
.pane-ft{margin-top:14px;font-size:12.6px;color:var(--ink-3);}
.pane-ft a{color:var(--accent);font-weight:700;}
.pane-ft svg{width:13px;height:13px;vertical-align:-2px;}
.pcard--spec{background:var(--paper-3);border-style:dashed;}
/* 补位行动卡：与产品卡同尺寸，配色区分，一眼看出不是商品 */
.pcard--cta{background:var(--accent-soft);border-color:transparent;
  box-shadow:inset 0 0 0 1px var(--accent);display:flex;flex-direction:column;}
.pcard--cta .bd{flex:1;display:flex;flex-direction:column;justify-content:center;
  padding:clamp(18px,2vw,28px);}
.pcard--cta .sp-k{font-family:var(--num-font);font-size:10.8px;letter-spacing:.2em;
  color:var(--accent);margin-bottom:10px;}
.pcard--cta h3{font-size:clamp(16px,.5vw + 13px,20px);line-height:1.35;color:var(--ink);}
.pcard--cta .sp{margin-top:10px;}
.pcard--cta .ft{margin-top:auto;border-top-color:rgba(0,0,0,.08);color:var(--accent);font-weight:700;}
.pcard--cta:hover h3{color:var(--accent);}
.pcard--spec .bd{padding:16px 15px;}
.pcard--spec .sp-k{font-family:var(--num-font);font-size:10.6px;letter-spacing:.14em;
  color:var(--accent);margin-bottom:6px;}
.pcard--spec h3{font-size:14px;}
.swipe-tip{display:none;font-size:11.6px;color:var(--ink-3);margin:-10px 0 12px;}
@media(max-width:760px){
  .swipe-tip{display:block;}
  .pane16 .pgrid{grid-template-columns:1fr 1fr;}
}

/* ============================================================
   22. 关于 · 自有产线（对标 03 · ABOUT & MANUFACTURING）
   ============================================================ */
.abm{display:grid;grid-template-columns:1fr 1.06fr;border:1px solid var(--line);
  border-radius:var(--r);overflow:hidden;background:var(--card-bg);}
.abm-l{padding:clamp(22px,3.2vw,44px);background:#0E1413;color:#F2F6F4;}
.abm-badge{display:inline-block;padding:5px 10px;border:1px solid rgba(111,211,184,.42);
  color:#6FD3B8;font-family:var(--num-font);font-size:10.6px;letter-spacing:.2em;}
.abm-l h3{margin:16px 0 0;font-size:clamp(20px,1.9vw + 8px,32px);line-height:1.3;
  color:#fff;letter-spacing:-.02em;}
.abm-l h3 span{color:#6FD3B8;}
.abm-l p{margin:14px 0 0;font-size:13.4px;line-height:1.86;color:rgba(242,246,244,.72);}
.abm-acts{display:flex;gap:9px;flex-wrap:wrap;margin-top:22px;}
.abm-acts .btn-g{background:rgba(255,255,255,.1);border-color:rgba(255,255,255,.28);color:#fff;}
.abm-acts .btn-g:hover{background:rgba(255,255,255,.18);color:#fff;}
.abm-acts .play{display:inline-block;margin-right:6px;font-size:10px;color:#6FD3B8;}
.abm-r{padding:clamp(18px,2.6vw,34px);display:flex;flex-direction:column;gap:16px;}
.abm-flowlab{font-size:12px;color:var(--ink-3);letter-spacing:.02em;}
.abm-flowlab i{font-style:normal;color:var(--accent);margin:0 4px;}
.abm-flow{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;}
.fl-it{display:block;padding:11px 12px;border:1px solid var(--line);border-radius:var(--r);
  background:var(--paper-2);transition:.22s;}
.fl-it:hover{border-color:var(--accent);background:#fff;}
.fl-n{font-family:var(--num-font);font-size:11px;letter-spacing:.16em;color:var(--accent);}
.fl-t{display:block;margin-top:2px;font-size:13.6px;font-weight:700;color:var(--ink);}
.fl-d{display:block;margin-top:3px;font-size:11.4px;line-height:1.55;color:var(--ink-3);}
.abm-facts{display:grid;grid-template-columns:1fr 1fr;gap:0;border-top:1px solid var(--line);}
.fl-f{padding:12px 12px 12px 0;border-bottom:1px solid var(--line-2);}
.fl-f .k{font-size:11.4px;color:var(--accent);font-weight:700;letter-spacing:.06em;}
.fl-f .v{margin-top:4px;font-size:12.2px;line-height:1.65;color:var(--ink-2);}
.sc-row{display:grid;grid-template-columns:repeat(4,1fr);margin-top:clamp(12px,1.6vw,18px);
  border:1px solid var(--line);border-radius:var(--r);background:var(--card-bg);}
.sc-it{padding:clamp(14px,1.8vw,22px);border-right:1px solid var(--line);}
.sc-it:last-child{border-right:0;}
.sc-it .v{font-family:var(--num-font);font-size:clamp(20px,2.1vw,30px);font-weight:700;
  color:var(--ink);line-height:1;}
.sc-it .v em{font-style:normal;font-size:12.4px;margin-left:3px;color:var(--accent);}
.sc-it .t{margin-top:7px;font-size:12.6px;font-weight:700;color:var(--ink-2);}
.sc-it .d{margin-top:4px;font-size:11.4px;line-height:1.6;color:var(--ink-3);}
@media(max-width:900px){
  .abm{grid-template-columns:1fr;}
  .sc-row{grid-template-columns:1fr 1fr;}
  .sc-it:nth-child(2){border-right:0;}
  .sc-it:nth-child(-n+2){border-bottom:1px solid var(--line);}
}
@media(max-width:620px){
  .abm-flow{grid-template-columns:1fr 1fr;}
  .abm-facts{grid-template-columns:1fr;}
  .sc-row{grid-template-columns:1fr;}
  .sc-it{border-right:0;border-bottom:1px solid var(--line);}
  .sc-it:last-child{border-bottom:0;}
}

/* ============================================================
   23. 工艺流程九步（图文卡）
   ============================================================ */
.flowbar{display:flex;overflow-x:auto;scrollbar-width:none;background:var(--card-bg);
  border-top:1px solid var(--line);border-bottom:1px solid var(--line);
  position:sticky;top:var(--hdr-h,82px);z-index:30;}
.flowbar::-webkit-scrollbar{display:none;}
.fb-it{flex:1 0 auto;display:flex;align-items:baseline;gap:6px;padding:12px 16px;
  border-right:1px solid var(--line-2);transition:.2s;}
.fb-it:last-child{border-right:0;}
.fb-it span{font-family:var(--num-font);font-size:11px;letter-spacing:.1em;color:var(--accent);}
.fb-it b{font-size:13px;font-weight:700;color:var(--ink-2);white-space:nowrap;}
.fb-it:hover{background:var(--accent-soft);}
.fb-it:hover b{color:var(--accent);}

.csteps{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(10px,1.2vw,16px);}
.cstep{display:flex;flex-direction:column;background:var(--card-bg);border:1px solid var(--line);
  border-radius:var(--r);overflow:hidden;transition:border-color .25s,box-shadow .25s;}
.cstep:hover{border-color:var(--accent);box-shadow:0 18px 40px -34px rgba(11,14,18,.6);}
.cstep-h{position:relative;}
.cs-img{position:relative;overflow:hidden;background:#111;}
.cs-img img{width:100%;aspect-ratio:4/3;object-fit:cover;display:block;
  transition:transform .5s var(--ease);}
.cstep:hover .cs-img img{transform:scale(1.04);}
.cs-n{position:absolute;left:0;top:0;padding:5px 12px 6px;background:var(--accent);
  color:#fff;font-family:var(--num-font);font-size:15px;font-weight:700;letter-spacing:.06em;}
.cs-t{padding:14px 15px 0;}
.cs-en{font-family:var(--num-font);font-size:10.4px;letter-spacing:.17em;color:var(--accent);}
.cs-t h3{margin:5px 0 0;font-size:17px;line-height:1.3;color:var(--ink);}
.cs-one{margin:7px 0 0;font-size:12.6px;line-height:1.65;color:var(--ink-3);}
.cs-m{display:flex;align-items:baseline;gap:7px;margin-top:11px;padding:7px 10px;
  background:var(--paper-2);border-left:2px solid var(--accent);}
.cs-m b{font-family:var(--num-font);font-size:15px;color:var(--accent);line-height:1;}
.cs-m span{font-size:11.2px;color:var(--ink-3);}
.cstep-b{padding:12px 15px 18px;}
.cs-p{margin:0;font-size:12.8px;line-height:1.84;color:var(--ink-2);}
.cs-lst{margin-top:12px;font-size:12.2px;}
.cs-lst li{margin-top:7px;}
.cs-lst li .n{width:17px;height:17px;font-size:10.4px;}
@media(max-width:980px){.csteps{grid-template-columns:1fr 1fr;}}
@media(max-width:640px){.csteps{grid-template-columns:1fr;}
  .cs-img img{aspect-ratio:16/10;}}

/* ============================================================
   24. 生产基地（流程 / 实拍 / 设备）
   ============================================================ */
.prgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(8px,1vw,14px);}
.pr-it{display:grid;grid-template-columns:1fr 92px;gap:12px;align-items:start;
  padding:14px 15px;border:1px solid var(--line);border-radius:var(--r);background:var(--card-bg);
  transition:.22s;}
.pr-it:hover{border-color:var(--accent);background:var(--paper-2);}
.pr-n{font-family:var(--num-font);font-size:11.4px;letter-spacing:.16em;color:var(--accent);}
.pr-t{margin-top:2px;font-size:15px;font-weight:700;color:var(--ink);}
.pr-d{grid-column:1;margin-top:4px;font-size:12.2px;line-height:1.65;color:var(--ink-3);}
.pr-img{grid-row:1 / span 3;grid-column:2;}
.pr-img img{width:92px;height:92px;object-fit:cover;border-radius:var(--r);}
.glgr0{}
.glgrid{display:grid;grid-template-columns:repeat(5,1fr);gap:clamp(6px,.8vw,10px);}
.gl-it{position:relative;margin:0;overflow:hidden;border-radius:var(--r);background:#111;}
.gl-it img{width:100%;aspect-ratio:9/15.4;object-fit:cover;display:block;
  transition:transform .5s var(--ease);}
.gl-it:hover img{transform:scale(1.05);}
.gl-it figcaption{position:absolute;left:0;right:0;bottom:0;padding:26px 11px 10px;
  background:linear-gradient(180deg,rgba(6,10,10,0),rgba(6,10,10,.88));
  color:#fff;display:flex;flex-direction:column;gap:2px;}
.gl-it figcaption b{font-size:12.6px;font-weight:700;}
.gl-it figcaption span{font-size:11px;color:rgba(255,255,255,.7);}
.qcblock{padding:clamp(16px,2.2vw,26px);border:1px solid var(--line);border-radius:var(--r);
  background:var(--card-bg);}
.qcblock>p{margin:0;font-size:13.4px;line-height:1.9;color:var(--ink-2);}
.qcblock .lst{margin-top:14px;}
@media(max-width:1000px){.prgrid{grid-template-columns:1fr 1fr;}.glgrid{grid-template-columns:repeat(3,1fr);}}
@media(max-width:640px){.prgrid{grid-template-columns:1fr;}.glgrid{grid-template-columns:1fr 1fr;}}

/* ============================================================
   25. 视频中心 + 播放弹层
   ============================================================ */
.vgrid{display:grid;gap:clamp(10px,1.2vw,16px);}
.vgrid--4{grid-template-columns:repeat(4,1fr);}
.vgrid--3{grid-template-columns:repeat(3,1fr);}
.vitem,.vcard{background:var(--card-bg);border:1px solid var(--line);border-radius:var(--r);
  overflow:hidden;display:flex;flex-direction:column;transition:.24s;}
.vitem:hover,.vcard:hover{border-color:var(--accent);
  box-shadow:0 18px 40px -34px rgba(11,14,18,.6);}
.v-thumb{position:relative;display:block;width:100%;padding:0;border:0;background:#0B100F;
  cursor:pointer;overflow:hidden;font:inherit;}
.v-thumb img{width:100%;aspect-ratio:16/10;object-fit:cover;display:block;opacity:.94;
  transition:transform .5s var(--ease),opacity .3s;}
.vitem:hover .v-thumb img,.vcard:hover .v-thumb img{transform:scale(1.05);opacity:1;}
.v-play{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);
  width:46px;height:46px;border-radius:50%;background:rgba(255,255,255,.9);color:#0B100F;
  display:flex;align-items:center;justify-content:center;font-size:15px;padding-left:3px;
  box-shadow:0 8px 22px -8px rgba(0,0,0,.6);transition:.24s;}
.vitem:hover .v-play,.vcard:hover .v-play{background:var(--accent);color:#fff;transform:translate(-50%,-50%) scale(1.08);}
.v-dur{position:absolute;right:8px;bottom:8px;padding:2px 7px;border-radius:2px;
  background:rgba(6,10,10,.78);color:#fff;font-family:var(--num-font);font-size:11px;letter-spacing:.06em;}
.v-badge{position:absolute;left:8px;top:8px;padding:2px 8px;border-radius:2px;
  background:rgba(6,10,10,.72);color:rgba(255,255,255,.8);font-size:10.6px;letter-spacing:.06em;}
.v-badge.ok{background:var(--accent);color:#fff;}
.v-b{padding:12px 14px 15px;display:flex;flex-direction:column;gap:5px;flex:1;}
.v-cat{font-family:var(--num-font);font-size:10.6px;letter-spacing:.15em;color:var(--accent);
  text-transform:uppercase;}
.v-b h3,.v-b h4{margin:0;font-size:14.2px;line-height:1.42;color:var(--ink);}
.v-b p{margin:0;font-size:12px;line-height:1.68;color:var(--ink-3);}
.v-f{margin-top:auto;padding-top:9px;font-size:11.4px;color:var(--ink-3);}
.v-f a{color:var(--accent);font-weight:700;}
.v-f .k{color:var(--accent);font-weight:700;}
@media(max-width:1000px){.vgrid--4{grid-template-columns:1fr 1fr;}.vgrid--3{grid-template-columns:1fr 1fr;}}
@media(max-width:600px){.vgrid--4,.vgrid--3{grid-template-columns:1fr;}}

.vmodal{position:fixed;inset:0;z-index:9000;display:none;align-items:center;justify-content:center;
  padding:clamp(12px,3vw,40px);}
.vmodal.on{display:flex;}
.vm-mask{position:absolute;inset:0;background:rgba(6,10,10,.86);
  -webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);}
.vm-box{position:relative;z-index:2;width:min(880px,100%);max-height:92vh;overflow:auto;
  background:#fff;border-radius:var(--r);box-shadow:0 40px 90px -40px rgba(0,0,0,.8);}
.vm-x{position:absolute;right:10px;top:8px;z-index:3;width:34px;height:34px;border:0;
  background:rgba(6,10,10,.55);color:#fff;font-size:20px;line-height:1;cursor:pointer;border-radius:2px;}
.vm-x:hover{background:#B4402C;}
.vm-video{background:#000;line-height:0;}
.vm-video video{width:100%;max-height:min(62vh,520px);display:block;background:#000;}
.vm-info{padding:16px 20px 20px;}
.vm-info h3{margin:0;font-size:17px;color:var(--ink);}
.vm-info p{margin:8px 0 0;font-size:12.8px;line-height:1.76;color:var(--ink-3);}
.vm-acts{display:flex;gap:9px;flex-wrap:wrap;margin-top:14px;}

/* ============================================================
   26. 低价货对比（产品详情）
   ============================================================ */
.cmptbl th:nth-child(2){color:#8A7B72;}
.cmptbl td{vertical-align:top;}
.cm-bad{color:#7A6A64;background:rgba(122,106,100,.06);font-size:12.4px;}
.cm-good{color:var(--ink);font-weight:600;}
.cm-good b,.cm-good{color:var(--accent);}
.cmpfig{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(8px,1vw,14px);margin-top:clamp(14px,2vw,22px);}
.cmpfig figure{margin:0;border:1px solid var(--line);border-radius:var(--r);overflow:hidden;
  background:var(--card-bg);}
.cmpfig img{width:100%;aspect-ratio:4/3;object-fit:cover;display:block;}
.cmpfig figcaption{padding:12px 14px 14px;display:flex;flex-direction:column;gap:4px;}
.cmpfig figcaption b{font-size:13.6px;color:var(--ink);}
.cmpfig figcaption span{font-size:12px;line-height:1.7;color:var(--ink-3);}
@media(max-width:760px){.cmpfig{grid-template-columns:1fr;}}

/* ============================================================
   27. 图标兜底（.ic 内的 svg 默认没有尺寸）
   ============================================================ */
.ic{display:inline-flex;align-items:center;justify-content:center;flex:none;}
.ic>svg{width:18px;height:18px;display:block;flex:none;}
.mtile .mi .ic>svg,.toolcard .ic>svg{width:20px;height:20px;}
.pghero--mod .ic>svg,.abm-acts .ic>svg{width:16px;height:16px;}

/* 产品条目不足一行时：自适应小卡 + 行动卡，避免单卡撑满整行 */
.pgrid--few{display:grid;grid-template-columns:repeat(auto-fill,minmax(232px,300px));
  gap:clamp(10px,1.2vw,16px);justify-content:start;}

/* ============================================================
   28. 首屏图文模块（对标 shdianresi 首屏：九宫格 + 右侧信息卡，浅色版）
   ============================================================ */
.hero2w{background:var(--paper);padding:clamp(16px,1.8vw,30px) 0 clamp(4px,.6vw,10px);}
.h2grid{display:grid;grid-template-columns:minmax(0,1.52fr) minmax(0,1fr);
  gap:clamp(14px,1.8vw,30px);align-items:stretch;}
.h2media{position:relative;overflow:hidden;border:1px solid var(--line-2);background:#fff;
  display:flex;flex-direction:column;}
.h2tiles{display:grid;grid-template-columns:repeat(3,1fr);gap:2px;}
.h2tile{position:relative;display:block;aspect-ratio:1/.94;overflow:hidden;background:#fff;}
.h2tile img{width:100%;height:100%;object-fit:cover;transition:transform .7s var(--ease);}
.h2tile:hover img{transform:scale(1.055);}
.h2tile b{position:absolute;left:7px;top:7px;z-index:2;
  font-size:10.5px;font-weight:600;letter-spacing:.02em;color:#fff;
  background:rgba(14,20,19,.62);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);
  padding:3px 7px;line-height:1.3;}
.h2media:after{content:"";position:absolute;left:0;right:0;bottom:0;height:40%;z-index:2;
  pointer-events:none;
  background:linear-gradient(to top,#fff 0%,rgba(255,255,255,.96) 32%,
    rgba(255,255,255,.86) 48%,rgba(255,255,255,.4) 72%,rgba(255,255,255,0) 100%);}
/* 深色主题下用 --paper 收边，避免白band */
@supports (background:color-mix(in srgb,red,blue)){
  .h2media:after{background:linear-gradient(to top,
    var(--paper) 0%,
    color-mix(in srgb,var(--paper) 96%,transparent) 32%,
    color-mix(in srgb,var(--paper) 86%,transparent) 48%,
    color-mix(in srgb,var(--paper) 40%,transparent) 72%,
    color-mix(in srgb,var(--paper) 0%,transparent) 100%);}
  .hs-img:after{background:linear-gradient(90deg,
    var(--paper-2,#F7F9F8) 0%,
    color-mix(in srgb,var(--paper-2,#F7F9F8) 94%,transparent) 13%,
    color-mix(in srgb,var(--paper-2,#F7F9F8) 62%,transparent) 32%,
    color-mix(in srgb,var(--paper-2,#F7F9F8) 12%,transparent) 52%,
    color-mix(in srgb,var(--paper-2,#F7F9F8) 0%,transparent) 66%);}
}
.h2chip{position:absolute;left:clamp(12px,1.4vw,22px);top:clamp(12px,1.4vw,22px);z-index:4;
  display:inline-flex;align-items:center;gap:8px;padding:7px 13px;
  background:rgba(255,255,255,.95);border:1px solid var(--line);
  font-size:10.6px;letter-spacing:.19em;color:var(--ink-2);font-weight:600;
  box-shadow:0 10px 24px -20px rgba(14,20,19,.5);}
.h2chip i{width:6px;height:6px;border-radius:50%;background:var(--accent);flex:none;}
.h2cap{position:absolute;left:clamp(14px,1.8vw,30px);right:clamp(14px,1.8vw,30px);
  bottom:clamp(14px,1.6vw,26px);z-index:3;}
.h2eyebrow{font-size:10.4px;letter-spacing:.2em;color:var(--accent);font-weight:700;text-transform:uppercase;}
.h2title{margin:9px 0 0;font-size:clamp(21px,1.9vw + 7px,38px);line-height:1.16;
  letter-spacing:-.035em;color:var(--ink);font-weight:800;text-wrap:balance;}
.h2title .thin{display:block;margin-top:7px;font-size:clamp(12.6px,.52vw + 9px,16.4px);
  font-weight:600;letter-spacing:.01em;color:var(--ink-3);}
.h2facts{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px;}
.h2facts span{font-size:11.4px;color:var(--ink-2);background:rgba(24,106,91,.07);
  border:1px solid rgba(24,106,91,.16);padding:4px 9px;}
.h2facts b{color:var(--accent);font-weight:700;}

.h2panel{border:1px solid var(--line);background:var(--card-bg,#fff);
  padding:clamp(15px,1.5vw,26px);display:flex;flex-direction:column;gap:clamp(10px,1vw,15px);}
.h2tag{align-self:flex-start;font-size:10.8px;letter-spacing:.12em;font-weight:700;
  color:var(--accent);background:var(--accent-soft);padding:5px 10px;}
.h2sub{margin:0;font-size:clamp(12.6px,.34vw + 11px,13.8px);line-height:1.95;color:var(--ink-3);}
.h2sub b{color:var(--ink);font-weight:700;}
.h2sub em{font-style:normal;color:var(--accent);font-weight:700;}
.h2key{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;
  border-top:1px solid var(--line-2);border-bottom:1px solid var(--line-2);padding:11px 0;}
.h2key span{display:flex;flex-direction:column;gap:3px;}
.h2key b{font-size:12.8px;color:var(--ink);font-weight:700;letter-spacing:-.01em;}
.h2key i{font-style:normal;font-size:11.2px;color:var(--ink-3);}
.h2cta{display:flex;flex-wrap:wrap;gap:8px;}
.h2cta .btn{--btn-pad:11px 15px;}
.h2commit{font-size:11.8px;color:var(--ink-3);line-height:1.7;}
.h2commit b{color:var(--accent);}
.h2tel{margin-top:auto;display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 16px;
  border-top:1px dashed var(--line);padding-top:11px;}
.h2tel a{font-size:12.4px;color:var(--ink-2);}
.h2tel b{font-family:var(--num-font);font-size:19px;line-height:1;color:var(--accent);
  letter-spacing:.01em;}
.h2tel span{font-size:11.4px;color:var(--ink-3);}

@media(max-width:1080px){
  .h2grid{grid-template-columns:1fr;}
  .h2tile{aspect-ratio:1/.82;}
}
@media(max-width:760px){
  .h2tiles{gap:2px;}
  .h2tile{aspect-ratio:1/.9;}
  .h2tile b{font-size:9.4px;padding:2px 5px;left:4px;top:4px;}
  .h2chip{font-size:9.4px;padding:5px 9px;letter-spacing:.12em;}
  .h2cap{left:12px;right:12px;bottom:11px;}
  .h2title{font-size:clamp(18px,5.2vw,24px);}
  .h2media:after{height:56%;}
  .h2key{gap:4px;}
  .h2key b{font-size:12px;}
  .h2key i{font-size:10.6px;}
}

/* ============================================================
   29. 产品详情 · 淘宝式主图 + 图文详情
   ============================================================ */
.tbbuy{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.02fr);
  gap:clamp(16px,2vw,38px);align-items:start;}
.tbg{position:sticky;top:calc(var(--hdr-h) + 14px);}
.tbg-main{position:relative;aspect-ratio:1/1;background:#fff;border:1px solid var(--line-2);
  overflow:hidden;display:flex;align-items:center;justify-content:center;}
.tbg-main img{width:100%;height:100%;object-fit:cover;transition:opacity .25s;}
.tbg-main .zoombadge{position:absolute;left:10px;bottom:10px;z-index:2;
  font-size:10.4px;letter-spacing:.1em;color:var(--ink-2);background:rgba(255,255,255,.9);
  border:1px solid var(--line-2);padding:3px 8px;}
.tbg-thumbs{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;margin-top:8px;}
.tbg-th{position:relative;aspect-ratio:1/1;border:1px solid var(--line-2);background:#fff;
  overflow:hidden;cursor:pointer;padding:0;}
.tbg-th img{width:100%;height:100%;object-fit:cover;}
.tbg-th.on{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent);}
.tbg-th.on:after{content:"";position:absolute;right:3px;top:3px;width:12px;height:12px;
  background:var(--accent);clip-path:polygon(0 0,100% 0,100% 100%);}

.tbinfo{padding-top:2px;}
.tbinfo .tb-crumb{font-size:11.6px;color:var(--ink-3);letter-spacing:.02em;}
.tbinfo .tb-crumb a{color:var(--ink-3);}
.tbinfo h1{margin:8px 0 0;font-size:clamp(21px,1.5vw + 10px,31px);line-height:1.24;
  letter-spacing:-.02em;color:var(--ink);font-weight:800;}
.tbinfo .tb-en{margin-top:6px;font-size:10.8px;letter-spacing:.16em;color:var(--ink-3);text-transform:uppercase;}
.tb-price{display:flex;align-items:baseline;flex-wrap:wrap;gap:10px;margin-top:14px;
  padding:12px 14px;background:var(--paper-2);border-left:3px solid var(--accent);}
.tb-price .pv{font-family:var(--num-font);font-size:clamp(24px,2vw + 10px,34px);line-height:1;
  color:var(--red,#B4402C);font-weight:700;letter-spacing:.01em;}
.tb-price .pu{font-size:12px;color:var(--ink-3);}
.tb-price .pn{margin-left:auto;font-size:11.6px;color:var(--ink-3);}
.tb-rows{margin-top:12px;border-top:1px solid var(--line-2);}
.tb-row{display:grid;grid-template-columns:64px 1fr;gap:10px;padding:9px 0;
  border-bottom:1px solid var(--line-2);font-size:12.8px;}
.tb-row>span{color:var(--ink-3);}
.tb-row>div{color:var(--ink-2);display:flex;flex-wrap:wrap;gap:6px;align-items:center;}
.tb-chip{border:1px solid var(--line);background:#fff;color:var(--ink-2);
  font-size:12px;padding:4px 9px;cursor:pointer;transition:.18s;}
.tb-chip:hover{border-color:var(--accent);color:var(--accent);}
.tb-chip.on{border-color:var(--accent);background:var(--accent);color:#fff;font-weight:600;}
.tb-acts{display:flex;flex-wrap:wrap;gap:9px;margin-top:16px;}
.tb-acts .btn{--btn-pad:13px 18px;}
.tb-promise{display:grid;grid-template-columns:repeat(2,1fr);gap:7px 14px;margin-top:14px;
  padding-top:13px;border-top:1px dashed var(--line);}
.tb-promise span{display:flex;align-items:flex-start;gap:6px;font-size:11.8px;color:var(--ink-3);line-height:1.55;}
.tb-promise .ic>svg{width:13px;height:13px;color:var(--accent);margin-top:2px;}
.tb-seller{display:flex;flex-wrap:wrap;align-items:center;gap:8px 16px;margin-top:14px;
  background:var(--paper-3);padding:11px 13px;font-size:11.8px;color:var(--ink-3);}
.tb-seller b{color:var(--ink);}
.tb-seller b.num{font-family:var(--num-font);font-size:16px;color:var(--accent);}

/* 图文详情长页 */
.tbdet{margin-top:clamp(24px,3vw,44px);}
.tbdet-h{display:flex;align-items:center;gap:14px;margin-bottom:18px;}
.tbdet-h:before,.tbdet-h:after{content:"";height:1px;flex:1;background:var(--line-2);}
.tbdet-h b{font-size:11.6px;letter-spacing:.26em;color:var(--ink-3);white-space:nowrap;}
.tbdet-sec{padding:clamp(18px,2.2vw,34px) 0;border-top:1px solid var(--line-2);}
.tbdet-sec:first-of-type{border-top:0;}
.tbdet-t{display:flex;align-items:baseline;gap:12px;margin-bottom:16px;}
.tbdet-t em{font-family:var(--num-font);font-size:clamp(24px,2vw,34px);line-height:1;
  color:var(--accent);font-style:normal;font-weight:700;letter-spacing:.02em;opacity:.5;}
.tbdet-t h3{margin:0;font-size:clamp(16px,1.1vw + 9px,22px);color:var(--ink);
  letter-spacing:-.02em;font-weight:800;}
.tbdet-t span{margin-left:auto;font-size:11.6px;color:var(--ink-3);}
.tbdet-duo{display:grid;grid-template-columns:1.24fr 1fr;gap:clamp(12px,1.6vw,24px);align-items:stretch;}
.tbdet-duo.rev{grid-template-columns:1fr 1.24fr;}
.tbdet-duo figure{margin:0;overflow:hidden;background:var(--paper-3);border:1px solid var(--line-2);}
.tbdet-duo img{width:100%;height:100%;object-fit:cover;display:block;min-height:220px;}
.tbdet-tx{display:flex;flex-direction:column;justify-content:center;gap:10px;}
.tbdet-tx h4{margin:0;font-size:14.4px;color:var(--ink);font-weight:700;}
.tbdet-tx ul{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:8px;}
.tbdet-tx li{position:relative;padding-left:16px;font-size:12.8px;line-height:1.82;color:var(--ink-3);}
.tbdet-tx li:before{content:"";position:absolute;left:0;top:.72em;width:5px;height:5px;
  background:var(--accent);}
.tbdet-tx li b{color:var(--ink);}
.tbdet-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:14px;}
.tbdet-strip figure{margin:0;position:relative;overflow:hidden;background:var(--paper-3);}
.tbdet-strip img{width:100%;aspect-ratio:4/3;object-fit:cover;display:block;}
.tbdet-strip figcaption{position:absolute;left:0;right:0;bottom:0;padding:16px 10px 8px;
  font-size:11px;color:#fff;background:linear-gradient(to top,rgba(14,20,19,.8),transparent);}
.tbdet-note{margin-top:14px;font-size:11.6px;color:var(--ink-3);line-height:1.85;
  border-left:2px solid var(--line);padding-left:11px;}
@media(max-width:1080px){
  .tbbuy{grid-template-columns:1fr;}
  .tbg{position:static;}
  .tbdet-duo,.tbdet-duo.rev{grid-template-columns:1fr;}
}
@media(max-width:760px){
  .tbg-thumbs{grid-template-columns:repeat(5,1fr);gap:5px;}
  .tb-row{grid-template-columns:56px 1fr;font-size:12.4px;}
  .tb-promise{grid-template-columns:1fr;}
  .tbdet-strip{grid-template-columns:1fr 1fr;}
}

/* ============================================================
   30. 资讯中心 + 常见问题（底部模块，JS 切换栏目）
   ============================================================ */
.nfw{position:relative;}
.nf-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;
  flex-wrap:wrap;margin-bottom:clamp(16px,1.8vw,26px);
  border-bottom:1px solid var(--line);padding-bottom:14px;}
.nf-tt{display:flex;flex-direction:column;gap:7px;}
.nf-no{font-family:var(--num-font);font-size:12px;letter-spacing:.2em;color:var(--accent);font-weight:700;}
.nf-tt h2{margin:0;font-size:clamp(19px,1.5vw + 11px,28px);letter-spacing:-.02em;color:var(--ink);
  font-weight:800;display:flex;align-items:baseline;gap:10px;flex-wrap:wrap;}
.nf-tt h2 em{font-style:normal;font-size:12px;letter-spacing:.16em;color:var(--ink-3);font-weight:600;}
.nf-tt p{margin:0;font-size:12.8px;color:var(--ink-3);line-height:1.8;max-width:52em;}
.nf-all{font-size:12.6px;font-weight:700;color:var(--accent);white-space:nowrap;display:inline-flex;
  align-items:center;gap:6px;}
.nf-all svg{width:14px;height:14px;}

.nf-grid{display:grid;grid-template-columns:minmax(0,1.62fr) minmax(0,1fr);
  gap:clamp(16px,2vw,34px);align-items:start;}
.nf-tabs{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:12px;}
.nf-tab{border:1px solid var(--line);background:transparent;color:var(--ink-2);
  font-size:12.4px;padding:7px 13px;cursor:pointer;transition:.18s;font-family:inherit;line-height:1.2;}
.nf-tab:hover{border-color:var(--accent);color:var(--accent);}
.nf-tab.on{background:var(--accent);border-color:var(--accent);color:#fff;font-weight:700;}
.nf-panes{position:relative;overflow:hidden;transition:height .28s var(--ease);}
.nf-pane{display:none;}
.nf-pane.on{display:block;animation:nffade .32s var(--ease) both;}
@keyframes nffade{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}

.nf-it{display:grid;grid-template-columns:58px minmax(0,1fr) 22px;gap:clamp(10px,1.2vw,18px);
  align-items:start;padding:13px 0;border-bottom:1px solid var(--line-2);text-decoration:none;}
.nf-it:first-child{padding-top:2px;}
.nf-it:hover .nf-b h3{color:var(--accent);}
.nf-date{display:flex;flex-direction:column;align-items:flex-start;line-height:1;
  font-family:var(--num-font);padding-top:3px;}
.nf-date b{font-size:16.4px;color:var(--ink);font-weight:700;letter-spacing:.01em;}
.nf-date i{font-style:normal;font-size:11px;color:var(--ink-3);margin-top:3px;letter-spacing:.06em;}
.nf-b{display:flex;flex-direction:column;gap:5px;min-width:0;}
.nf-cat{font-style:normal;font-size:10.6px;letter-spacing:.08em;color:var(--accent);
  background:var(--accent-soft);padding:3px 7px;align-self:flex-start;}
.nf-b h3{margin:0;font-size:13.9px;line-height:1.52;color:var(--ink);font-weight:700;
  letter-spacing:-.01em;transition:.18s;}
.nf-b p{margin:0;font-size:12px;line-height:1.72;color:var(--ink-3);
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
.nf-go{align-self:center;color:var(--line);transition:.18s;}
.nf-go svg{width:16px;height:16px;}
.nf-it:hover .nf-go{color:var(--accent);transform:translateX(3px);}

/* 常见问题栏（同一容器内切换） */
.nf-faqs{display:grid;grid-template-columns:1fr 1fr;gap:10px;}
.nf-faq{border:1px solid var(--line-2);background:var(--paper-2);padding:13px 14px;
  display:flex;flex-direction:column;gap:6px;transition:.2s;}
.nf-faq:hover{border-color:var(--line);background:var(--card-bg,#fff);}
.nf-faq h3{margin:0;font-size:13px;line-height:1.55;color:var(--ink);font-weight:700;
  display:flex;gap:7px;align-items:flex-start;}
.nf-faq h3 i{font-style:normal;font-family:var(--num-font);font-size:12px;line-height:1.5;
  color:#fff;background:var(--accent);width:17px;height:17px;display:inline-flex;
  align-items:center;justify-content:center;flex:none;margin-top:1px;}
.nf-faq p{margin:0;font-size:12.1px;line-height:1.76;color:var(--ink-3);padding-left:24px;}
.nf-faq p b{color:var(--accent);font-weight:700;}

.nf-side{display:flex;flex-direction:column;gap:12px;}
.nf-card{border:1px solid var(--line);background:var(--card-bg,#fff);padding:15px 16px;}
.nf-card>b{display:block;font-size:11.6px;letter-spacing:.14em;color:var(--ink-3);
  font-weight:700;margin-bottom:10px;}
.nf-nav{display:flex;flex-direction:column;}
.nf-nav a{display:flex;align-items:center;justify-content:space-between;gap:10px;
  padding:8px 0;border-bottom:1px dashed var(--line-2);font-size:12.8px;color:var(--ink-2);}
.nf-nav a:last-child{border-bottom:0;}
.nf-nav a:hover{color:var(--accent);}
.nf-nav a span{font-family:var(--num-font);font-size:11.6px;color:var(--ink-3);letter-spacing:.06em;}
.nf-nav a.on{color:var(--accent);font-weight:700;}
.nf-nav a.on span{color:var(--accent);}
.nf-cta{background:var(--accent-soft);border-color:color-mix(in srgb,var(--accent) 22%,transparent);}
.nf-cta .t{font-size:14.4px;font-weight:800;color:var(--ink);line-height:1.4;}
.nf-cta .d{font-size:12px;line-height:1.75;color:var(--ink-3);margin-top:6px;}
.nf-cta .tel{display:flex;align-items:baseline;gap:8px;margin-top:10px;}
.nf-cta .tel b{font-family:var(--num-font);font-size:23px;line-height:1;color:var(--accent);}
.nf-cta .tel i{font-style:normal;font-size:11px;color:var(--ink-3);}
.nf-cta .acts{display:flex;flex-wrap:wrap;gap:7px;margin-top:12px;}
.nf-cta .btn{--btn-pad:9px 13px;font-size:12.4px;}

@media(max-width:1080px){
  .nf-grid{grid-template-columns:1fr;}
  .nf-side{flex-direction:row;flex-wrap:wrap;}
  .nf-side>.nf-card{flex:1 1 240px;}
}
@media(max-width:760px){
  .nf-faqs{grid-template-columns:1fr;}
  .nf-it{grid-template-columns:48px minmax(0,1fr);gap:10px;}
  .nf-go{display:none;}
  .nf-b h3{font-size:13.2px;}
  .nf-b p{-webkit-line-clamp:2;}
  .nf-tab{font-size:11.8px;padding:6px 10px;}
  .nf-head{align-items:flex-start;}
}
.nf-tab span{font-family:var(--num-font);font-size:10.6px;opacity:.55;margin-left:5px;}
.nf-moreq{margin-top:12px;font-size:12px;color:var(--ink-3);line-height:1.8;}
.nf-moreq a{color:var(--accent);font-weight:600;}

/* 三列产品网格（六个控制点等固定 3 列） */
.pgrid--3,.pgrid--three{grid-template-columns:repeat(3,minmax(0,1fr));}
@media(max-width:860px){.pgrid--3,.pgrid--three{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media(max-width:560px){.pgrid--3,.pgrid--three{grid-template-columns:1fr;}}
/* 资讯标签：9 个栏目尽量排一行 */
.nf-tab{padding:6px 10px;font-size:12.1px;}
.nf-tab span{margin-left:4px;}
