/* ============================================================
   勤进科技 — 设计系统
   参考 Arrow Electronics 的版式语言：暗色高对比、编号索引、
   细线分隔、微型大写标签、大字标题、克制的单一强调色。
   ============================================================ */

/* ---------- Tokens ---------- */
:root{
  --ink:        #05070a;
  --ink-1:      #0a0e14;
  --ink-2:      #111721;
  --ink-3:      #19212d;

  --paper:      #ffffff;
  --paper-1:    #f5f7f9;
  --paper-2:    #eceff3;

  --t-hi:       #0b1118;   /* 浅底主文字 */
  --t-mid:      #46525f;   /* 浅底次文字 */
  --t-low:      #7a8695;

  --dt-hi:      #ffffff;   /* 暗底主文字 */
  --dt-mid:     #a6b3c2;
  --dt-low:     #6d7b8b;

  --brand:      #00a3e0;   /* 主强调色 */
  --brand-d:    #0082b4;
  --brand-l:    #4ecdf5;
  --brand-tint: rgba(0,163,224,.10);

  --line-d:     rgba(255,255,255,.12);
  --line-l:     rgba(11,17,24,.12);

  --wrap:       1280px;
  --gut:        clamp(20px, 5vw, 56px);

  --r-sm: 2px;
  --r-md: 4px;

  --ease: cubic-bezier(.22,.61,.36,1);
  --ease-out: cubic-bezier(.16,1,.3,1);

  --hdr-h: 116px;

  --f-sans: "PingFang SC","Hiragino Sans GB","Microsoft YaHei","Source Han Sans SC",
            "Noto Sans CJK SC",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  --f-mono: "SF Mono",ui-monospace,"Roboto Mono","DejaVu Sans Mono",Menlo,Consolas,monospace;
}

/* ---------- Reset ---------- */
*,*::before,*::after{box-sizing:border-box;}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:calc(var(--hdr-h) + 20px);}
body{
  margin:0; font-family:var(--f-sans); background:var(--paper); color:var(--t-hi);
  font-size:16px; line-height:1.75; letter-spacing:.01em;
  -webkit-font-smoothing:antialiased; -moz-osx-font-smoothing:grayscale;
  overflow-x:hidden;
}
img,svg{display:block;max-width:100%;}
a{color:inherit;text-decoration:none;}
button{font:inherit;color:inherit;background:none;border:0;cursor:pointer;}
input{font:inherit;}
h1,h2,h3,h4,p,ul,ol,figure{margin:0;}
ul,ol{padding:0;list-style:none;}
::selection{background:var(--brand);color:#fff;}

/* ---------- Layout helpers ---------- */
.wrap{max-width:var(--wrap);margin-inline:auto;padding-inline:var(--gut);}
.wrap-w{max-width:1520px;margin-inline:auto;padding-inline:var(--gut);}
.sec{padding-block:clamp(64px,8vw,120px);}
.sec--tight{padding-block:clamp(48px,6vw,84px);}
.sec--dark{background:var(--ink-1);color:var(--dt-hi);}
.sec--alt{background:var(--paper-1);}
.rule{height:1px;background:var(--line-l);border:0;margin:0;}
.sec--dark .rule{background:var(--line-d);}

/* ---------- Typography ---------- */
.eyebrow{
  display:inline-flex;align-items:center;gap:10px;
  font-size:11px;font-weight:700;letter-spacing:.22em;text-transform:uppercase;
  color:var(--brand);font-family:var(--f-mono);
}
.eyebrow::before{content:"";width:28px;height:1px;background:var(--brand);}
.eyebrow--plain::before{display:none;}

.h-xxl{font-size:clamp(34px,5.6vw,72px);line-height:1.06;letter-spacing:-.025em;font-weight:700;}
.h-xl {font-size:clamp(28px,3.8vw,48px);line-height:1.14;letter-spacing:-.02em;font-weight:700;}
.h-lg {font-size:clamp(22px,2.4vw,32px);line-height:1.24;letter-spacing:-.015em;font-weight:700;}
.h-md {font-size:clamp(18px,1.5vw,21px);line-height:1.4;letter-spacing:-.01em;font-weight:700;}
.h-sm {font-size:16px;line-height:1.5;font-weight:700;}

.lede{font-size:clamp(15px,1.25vw,18px);line-height:1.85;color:var(--t-mid);max-width:62ch;}
.sec--dark .lede{color:var(--dt-mid);}
.muted{color:var(--t-mid);}
.sec--dark .muted{color:var(--dt-mid);}

/* 章节头 */
.sec-head{display:grid;gap:18px;margin-bottom:clamp(36px,4.5vw,64px);}
.sec-head--split{grid-template-columns:minmax(0,1fr) minmax(0,.9fr);align-items:end;gap:28px 56px;}
@media (max-width:860px){.sec-head--split{grid-template-columns:1fr;align-items:start;}}

/* ---------- Buttons ---------- */
.btn{
  --bg:var(--brand); --fg:#fff; --bd:var(--brand);
  position:relative;display:inline-flex;align-items:center;gap:12px;
  padding:15px 26px;background:var(--bg);color:var(--fg);border:1px solid var(--bd);
  font-size:14px;font-weight:700;letter-spacing:.06em;white-space:nowrap;
  transition:background .3s var(--ease),color .3s var(--ease),border-color .3s var(--ease),transform .3s var(--ease);
  overflow:hidden;
}
.btn .ar{transition:transform .35s var(--ease-out);flex:none;}
.btn:hover{--bg:#fff;--fg:var(--ink);--bd:#fff;}
.btn:hover .ar{transform:translateX(5px);}
.btn--ghost{--bg:transparent;--fg:currentColor;--bd:currentColor;}
.btn--ghost:hover{--bg:var(--brand);--fg:#fff;--bd:var(--brand);}
.btn--light{--bg:var(--ink);--fg:#fff;--bd:var(--ink);}
.btn--light:hover{--bg:var(--brand);--fg:#fff;--bd:var(--brand);}
.btn--sm{padding:11px 18px;font-size:13px;}
.btn:focus-visible,a:focus-visible,button:focus-visible,input:focus-visible{
  outline:2px solid var(--brand-l);outline-offset:3px;
}

/* 文字箭头链接 */
.tlink{
  display:inline-flex;align-items:center;gap:9px;
  font-size:14px;font-weight:700;letter-spacing:.04em;color:var(--brand);
  padding-bottom:4px;border-bottom:1px solid transparent;transition:border-color .3s var(--ease);
}
.tlink .ar{transition:transform .35s var(--ease-out);}
.tlink:hover{border-bottom-color:var(--brand);}
.tlink:hover .ar{transform:translateX(5px);}

/* ============================================================
   HEADER
   ============================================================ */
.util{background:var(--ink);color:var(--dt-low);border-bottom:1px solid rgba(255,255,255,.07);}
.util .wrap-w{display:flex;align-items:center;justify-content:space-between;gap:20px;height:38px;}
.util-list{display:flex;align-items:center;gap:22px;font-size:12px;letter-spacing:.04em;}
.util-list a{display:inline-flex;align-items:center;gap:7px;transition:color .25s var(--ease);}
.util-list a:hover{color:var(--brand-l);}
.util-list svg{opacity:.8;}
.util-tag{font-family:var(--f-mono);font-size:11px;letter-spacing:.18em;text-transform:uppercase;}
@media (max-width:820px){.util-list--sec{display:none;}}

.hdr{
  position:sticky;top:0;z-index:90;background:var(--ink);color:#fff;
  border-bottom:1px solid rgba(255,255,255,.09);
  transition:box-shadow .3s var(--ease);
}
.hdr.is-stuck{box-shadow:0 14px 40px -18px rgba(0,0,0,.85);}
.hdr-main{display:flex;align-items:center;gap:clamp(18px,3vw,44px);height:78px;transition:height .3s var(--ease);}
.hdr.is-stuck .hdr-main{height:64px;}

/* Logo */
.logo{display:inline-flex;align-items:center;gap:12px;flex:none;}
.logo-mark{width:38px;height:38px;flex:none;}
.logo-txt{display:flex;flex-direction:column;line-height:1;}
.logo-cn{font-size:19px;font-weight:700;letter-spacing:.06em;}
.logo-en{font-family:var(--f-mono);font-size:9px;letter-spacing:.2em;color:var(--dt-low);margin-top:5px;text-transform:uppercase;}
@media (max-width:520px){.logo-en{display:none;} .logo-mark{width:32px;height:32px;}}

/* 搜索 */
.search{position:relative;flex:1 1 auto;max-width:520px;}
.search-form{display:flex;align-items:center;gap:10px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.12);padding:0 14px;height:44px;transition:border-color .25s var(--ease),background .25s var(--ease);}
.search-form:focus-within{border-color:var(--brand);background:rgba(255,255,255,.1);}
.search-form input{flex:1;background:none;border:0;outline:0;color:#fff;font-size:14px;min-width:0;}
.search-form input::placeholder{color:var(--dt-low);}
.search-form button{display:grid;place-items:center;color:var(--dt-mid);transition:color .25s var(--ease);}
.search-form button:hover{color:var(--brand-l);}
.search-pop{
  position:absolute;top:calc(100% + 8px);left:0;right:0;background:var(--paper);color:var(--t-hi);
  border:1px solid var(--line-l);box-shadow:0 24px 60px -24px rgba(5,7,10,.5);
  max-height:400px;overflow-y:auto;display:none;z-index:95;
}
.search-pop.is-open{display:block;}
.search-pop li + li{border-top:1px solid var(--paper-2);}
.search-pop a{display:block;padding:13px 16px;transition:background .2s var(--ease);}
.search-pop a:hover{background:var(--paper-1);}
.sp-t{font-size:14px;font-weight:700;}
.sp-t mark{background:var(--brand-tint);color:var(--brand-d);padding:0 2px;}
.sp-d{font-size:12px;color:var(--t-low);margin-top:3px;}
.sp-empty{padding:18px 16px;font-size:13px;color:var(--t-low);}
@media (max-width:1040px){.search{display:none;}}

.hdr-cta{display:flex;align-items:center;gap:12px;flex:none;}
@media (max-width:1180px){.hdr-cta .btn{display:none;}}

/* 主导航 */
.nav{border-top:1px solid rgba(255,255,255,.08);background:var(--ink);}
.nav-list{display:flex;align-items:stretch;gap:0;}
.nav-list > li{position:relative;}
.nav-link{
  position:relative;display:flex;align-items:center;gap:7px;height:52px;padding:0 20px;
  font-size:14.5px;font-weight:600;letter-spacing:.03em;color:var(--dt-mid);
  transition:color .25s var(--ease);
}
.nav-list > li:first-child .nav-link{padding-left:0;}
.nav-link::after{
  content:"";position:absolute;left:20px;right:20px;bottom:0;height:2px;background:var(--brand);
  transform:scaleX(0);transform-origin:left;transition:transform .35s var(--ease-out);
}
.nav-list > li:first-child .nav-link::after{left:0;}
.nav-link:hover,.nav-link[aria-current="page"]{color:#fff;}
.nav-link:hover::after,.nav-link[aria-current="page"]::after{transform:scaleX(1);}
.nav-link .cv{transition:transform .3s var(--ease);opacity:.7;}
.nav-list > li:hover .nav-link .cv,.nav-list > li.is-open .nav-link .cv{transform:rotate(180deg);}

/* 下拉 */
.drop{
  position:absolute;top:100%;left:0;min-width:640px;background:var(--paper);color:var(--t-hi);
  border:1px solid var(--line-l);border-top:2px solid var(--brand);
  box-shadow:0 30px 70px -28px rgba(5,7,10,.55);
  opacity:0;visibility:hidden;transform:translateY(-8px);
  transition:opacity .28s var(--ease),transform .28s var(--ease),visibility .28s;
  z-index:80;
}
.nav-list > li:hover .drop,.nav-list > li.is-open .drop{opacity:1;visibility:visible;transform:translateY(0);}
.drop-grid{display:grid;grid-template-columns:1fr 1fr;}
.drop-item{display:block;padding:20px 24px;border-right:1px solid var(--paper-2);border-bottom:1px solid var(--paper-2);transition:background .25s var(--ease);}
.drop-item:nth-child(2n){border-right:0;}
.drop-item:hover{background:var(--paper-1);}
.drop-n{font-family:var(--f-mono);font-size:10px;letter-spacing:.18em;color:var(--brand);}
.drop-h{font-size:15px;font-weight:700;margin-top:7px;display:flex;align-items:center;gap:8px;}
.drop-h .ar{opacity:0;transform:translateX(-5px);transition:all .3s var(--ease-out);}
.drop-item:hover .drop-h .ar{opacity:1;transform:translateX(0);}
.drop-p{font-size:12.5px;color:var(--t-low);margin-top:4px;line-height:1.6;}
.drop-foot{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 24px;background:var(--paper-1);}
.drop-foot span{font-size:12.5px;color:var(--t-low);}
@media (max-width:1024px){.nav{display:none;}}

/* 汉堡 */
.burger{display:none;width:44px;height:44px;flex:none;place-items:center;border:1px solid rgba(255,255,255,.16);}
.burger span{display:block;width:18px;height:1.5px;background:#fff;transition:transform .3s var(--ease),opacity .2s var(--ease);}
.burger span + span{margin-top:5px;}
body.nav-open .burger span:nth-child(1){transform:translateY(6.5px) rotate(45deg);}
body.nav-open .burger span:nth-child(2){opacity:0;}
body.nav-open .burger span:nth-child(3){transform:translateY(-6.5px) rotate(-45deg);}
@media (max-width:1024px){.burger{display:grid;}}

/* 移动抽屉 */
.drawer{
  position:fixed;inset:0;top:0;z-index:100;background:var(--ink);color:#fff;
  padding:96px var(--gut) 48px;overflow-y:auto;
  transform:translateX(100%);transition:transform .45s var(--ease-out);
  visibility:hidden;
}
body.nav-open .drawer{transform:translateX(0);visibility:visible;}
.drawer-close{position:absolute;top:22px;right:var(--gut);width:44px;height:44px;display:grid;place-items:center;border:1px solid rgba(255,255,255,.16);}
.dr-list > li{border-bottom:1px solid rgba(255,255,255,.1);}
.dr-a{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:18px 0;font-size:19px;font-weight:700;}
.dr-a .n{font-family:var(--f-mono);font-size:11px;color:var(--brand);letter-spacing:.14em;}
.dr-sub{padding:0 0 14px;display:grid;gap:2px;}
.dr-sub a{padding:9px 0 9px 16px;font-size:14px;color:var(--dt-mid);border-left:1px solid rgba(255,255,255,.14);}
.dr-sub a:hover{color:var(--brand-l);}
.dr-foot{margin-top:34px;display:grid;gap:12px;}
.dr-foot a{display:flex;align-items:center;gap:11px;font-size:14px;color:var(--dt-mid);}
@media (min-width:1025px){.drawer{display:none;}}

/* ============================================================
   HERO
   ============================================================ */
.hero{position:relative;background:var(--ink);color:#fff;overflow:hidden;}
.hero-bg{position:absolute;inset:0;z-index:0;}
.hero-bg::before{
  content:"";position:absolute;inset:0;
  background:url("../img/circuit.svg") center/cover no-repeat;
  opacity:.5;
}
.hero-bg::after{
  content:"";position:absolute;inset:0;
  background:
    linear-gradient(100deg, var(--ink) 4%, rgba(5,7,10,.94) 34%, rgba(5,7,10,.5) 62%, rgba(5,7,10,.72) 100%),
    radial-gradient(62% 90% at 78% 40%, rgba(0,163,224,.26), transparent 70%);
}
.hero-glow{
  position:absolute;width:640px;height:640px;right:-110px;top:-190px;z-index:1;pointer-events:none;
  background:radial-gradient(circle, rgba(0,163,224,.28), transparent 62%);
  filter:blur(22px);animation:float 13s ease-in-out infinite;
}
@keyframes float{0%,100%{transform:translate(0,0) scale(1);}50%{transform:translate(-32px,30px) scale(1.07);}}

.hero-inner{position:relative;z-index:2;}
.hero-stage{position:relative;min-height:clamp(430px,58vh,580px);display:flex;align-items:center;padding-block:clamp(56px,7vw,92px);}
.slide{
  position:absolute;inset:auto 0;max-width:660px;
  opacity:0;visibility:hidden;transform:translateY(22px);
  transition:opacity .6s var(--ease),transform .7s var(--ease-out),visibility .6s;
}
.slide.is-on{position:relative;opacity:1;visibility:visible;transform:none;}
.slide .eyebrow{margin-bottom:22px;}
.slide h1,.slide h2{margin-bottom:22px;}
.slide p{color:var(--dt-mid);font-size:clamp(15px,1.3vw,17.5px);line-height:1.85;margin-bottom:34px;max-width:54ch;}
.slide-cta{display:flex;flex-wrap:wrap;gap:14px;}

/* 编号索引条 */
.hero-idx{position:relative;z-index:2;border-top:1px solid rgba(255,255,255,.14);}
.idx-list{display:grid;grid-template-columns:repeat(4,1fr);}
.idx-btn{
  position:relative;display:block;width:100%;text-align:left;padding:22px 26px 24px 0;
  border-right:1px solid rgba(255,255,255,.1);color:var(--dt-low);
  transition:color .3s var(--ease);
}
.idx-list li:last-child .idx-btn{border-right:0;}
.idx-btn::before{content:"";position:absolute;top:-1px;left:0;height:2px;width:0;background:var(--brand);transition:width .25s linear;}
.idx-btn.is-on::before{width:var(--p,0%);}
.idx-n{font-family:var(--f-mono);font-size:12px;letter-spacing:.14em;display:block;}
.idx-t{display:block;font-size:14.5px;font-weight:700;margin-top:8px;letter-spacing:.02em;line-height:1.4;}
.idx-btn:hover,.idx-btn.is-on{color:#fff;}
.idx-btn.is-on .idx-n{color:var(--brand);}
@media (max-width:860px){
  .idx-list{grid-template-columns:repeat(2,1fr);}
  .idx-list li:nth-child(2n) .idx-btn{border-right:0;}
  .idx-list li:nth-child(n+3) .idx-btn{border-top:1px solid rgba(255,255,255,.1);}
  .idx-btn{padding:16px 16px 18px 0;}
  .idx-t{font-size:13px;}
}
.hero-ctrl{display:flex;align-items:center;gap:0;margin-bottom:8px;}
.hero-ctrl button{width:46px;height:46px;display:grid;place-items:center;border:1px solid rgba(255,255,255,.2);color:var(--dt-mid);transition:all .25s var(--ease);}
.hero-ctrl button + button{border-left:0;}
.hero-ctrl button:hover{background:var(--brand);border-color:var(--brand);color:#fff;}

/* 页面头（非首页） */
.phead{position:relative;background:var(--ink);color:#fff;overflow:hidden;}
.phead::before{content:"";position:absolute;inset:0;background:url("../img/circuit.svg") center/cover no-repeat;opacity:.34;}
.phead::after{content:"";position:absolute;inset:0;
  background:linear-gradient(95deg,var(--ink) 12%,rgba(5,7,10,.88) 48%,rgba(5,7,10,.62) 100%),
             radial-gradient(56% 100% at 82% 30%,rgba(0,163,224,.24),transparent 68%);}
.phead .wrap{position:relative;z-index:2;padding-block:clamp(56px,7.5vw,104px);}
.phead h1{margin:20px 0 20px;max-width:30ch;}  /* ch 以西文数字宽为基准，中文单字约 2ch，故上限需放宽 */
.phead .lede{color:var(--dt-mid);}
.crumb{display:flex;align-items:center;gap:9px;font-size:12px;color:var(--dt-low);font-family:var(--f-mono);letter-spacing:.1em;}
.crumb a:hover{color:var(--brand-l);}
.crumb span{opacity:.45;}

/* ============================================================
   卡片 / 网格
   ============================================================ */
.grid{display:grid;gap:1px;background:var(--line-l);border:1px solid var(--line-l);}
.sec--dark .grid{background:var(--line-d);border-color:var(--line-d);}
.grid-2{grid-template-columns:repeat(2,1fr);}
.grid-3{grid-template-columns:repeat(3,1fr);}
.grid-4{grid-template-columns:repeat(4,1fr);}
@media (max-width:1000px){.grid-4{grid-template-columns:repeat(2,1fr);}.grid-3{grid-template-columns:repeat(2,1fr);}}
@media (max-width:660px){.grid-4,.grid-3,.grid-2{grid-template-columns:1fr;}}

.cell{background:var(--paper);padding:clamp(24px,2.6vw,36px);}
.sec--dark .cell{background:var(--ink-1);}
.sec--alt .cell{background:var(--paper);}

/* 可点击卡片 */
.card{
  position:relative;display:flex;flex-direction:column;background:var(--paper);
  padding:clamp(26px,2.8vw,40px);overflow:hidden;
  transition:background .35s var(--ease),transform .35s var(--ease-out);
}
.sec--dark .card{background:var(--ink-1);}
.card::after{content:"";position:absolute;left:0;bottom:0;height:2px;width:100%;background:var(--brand);transform:scaleX(0);transform-origin:left;transition:transform .45s var(--ease-out);}
a.card:hover,.card.is-hot{background:var(--paper-1);}
.sec--dark a.card:hover{background:var(--ink-2);}
a.card:hover::after{transform:scaleX(1);}
.card-n{font-family:var(--f-mono);font-size:11px;letter-spacing:.2em;color:var(--brand);}
.card-ic{width:44px;height:44px;color:var(--brand);margin-bottom:20px;}
.card h3{margin:14px 0 12px;}
.card p{font-size:14.5px;line-height:1.8;color:var(--t-mid);}
.sec--dark .card p{color:var(--dt-mid);}
.card .tlink{margin-top:auto;padding-top:24px;align-self:flex-start;}

/* 标签 */
.tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:20px;}
.tag{
  font-size:11.5px;font-weight:600;letter-spacing:.06em;padding:6px 11px;
  background:var(--brand-tint);color:var(--brand-d);border:1px solid rgba(0,163,224,.22);
}
.sec--dark .tag{background:rgba(0,163,224,.14);color:var(--brand-l);border-color:rgba(0,163,224,.3);}
.tag--n{background:var(--paper-1);color:var(--t-mid);border-color:var(--line-l);}
.sec--dark .tag--n{background:rgba(255,255,255,.06);color:var(--dt-mid);border-color:var(--line-d);}

/* 勾选列表 */
.checks{display:grid;gap:13px;}
.checks li{display:flex;gap:12px;align-items:flex-start;font-size:14.5px;line-height:1.7;color:var(--t-mid);}
.sec--dark .checks li{color:var(--dt-mid);}
.checks svg{flex:none;margin-top:5px;color:var(--brand);}

/* 项目符号列表 */
.bullets{display:grid;gap:11px;}
.bullets li{position:relative;padding-left:18px;font-size:14.5px;line-height:1.7;color:var(--t-mid);}
.sec--dark .bullets li{color:var(--dt-mid);}
.bullets li::before{content:"";position:absolute;left:0;top:11px;width:6px;height:1px;background:var(--brand);}

/* 数据 */
.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:1px;background:var(--line-d);border:1px solid var(--line-d);}
.stat{background:var(--ink-1);padding:clamp(22px,2.4vw,32px);}
.sec--alt .stats,.stats--light{background:var(--line-l);border-color:var(--line-l);}
.stats--light .stat{background:var(--paper);}
.stat-v{font-size:clamp(30px,3.4vw,44px);font-weight:700;letter-spacing:-.02em;line-height:1;color:var(--brand);font-variant-numeric:tabular-nums;}
.stat-l{font-size:12.5px;letter-spacing:.1em;color:var(--dt-low);margin-top:12px;}
.stats--light .stat-l{color:var(--t-low);}

/* 定义行 */
.defs{display:grid;gap:0;}
.def{display:grid;grid-template-columns:minmax(120px,.42fr) 1fr;gap:16px;padding:17px 0;border-bottom:1px solid var(--line-l);}
.sec--dark .def{border-bottom-color:var(--line-d);}
.def:first-child{border-top:1px solid var(--line-l);}
.sec--dark .def:first-child{border-top-color:var(--line-d);}
.def dt{font-size:12.5px;letter-spacing:.08em;color:var(--t-low);}
.sec--dark .def dt{color:var(--dt-low);}
.def dd{margin:0;font-size:15px;font-weight:600;}

/* 药丸集合 */
.pills{display:flex;flex-wrap:wrap;gap:10px;}
.pill{
  display:inline-flex;align-items:center;gap:9px;padding:11px 17px;font-size:13.5px;font-weight:600;
  border:1px solid var(--line-l);background:var(--paper);
  transition:all .3s var(--ease);
}
.sec--dark .pill{background:var(--ink-1);border-color:var(--line-d);}
.pill::before{content:"";width:5px;height:5px;background:var(--brand);flex:none;}
.pill:hover{border-color:var(--brand);color:var(--brand-d);transform:translateY(-2px);}
.sec--dark .pill:hover{color:var(--brand-l);}

/* 编号流程 */
.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line-l);border:1px solid var(--line-l);}
@media (max-width:900px){.steps{grid-template-columns:repeat(2,1fr);}}
@media (max-width:540px){.steps{grid-template-columns:1fr;}}
.step{position:relative;background:var(--paper);padding:clamp(26px,2.8vw,38px);}
.sec--dark .step{background:var(--ink-1);}
.step-n{font-family:var(--f-mono);font-size:clamp(30px,3.6vw,46px);font-weight:700;line-height:1;color:var(--paper-2);letter-spacing:-.03em;}
.sec--dark .step-n{color:rgba(255,255,255,.1);}
.step h3{margin:18px 0 10px;}
.step p{font-size:14px;line-height:1.75;color:var(--t-mid);}
.sec--dark .step p{color:var(--dt-mid);}
.step::before{content:"";position:absolute;top:0;left:0;width:0;height:2px;background:var(--brand);transition:width .5s var(--ease-out);}
.step.in-view::before{width:100%;}

/* 分栏图文 */
.split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(32px,5vw,80px);align-items:center;}
.split--top{align-items:start;}
@media (max-width:900px){.split{grid-template-columns:1fr;}}

/* 强调面板 */
.panel{background:var(--ink-1);color:#fff;padding:clamp(28px,3.4vw,46px);border-left:2px solid var(--brand);}
.panel--l{background:var(--paper-1);color:var(--t-hi);}

/* 选项卡 */
.tabs{display:flex;flex-wrap:wrap;gap:0;border-bottom:1px solid var(--line-l);margin-bottom:clamp(28px,3.4vw,48px);}
.tab{
  position:relative;padding:15px 24px;font-size:14.5px;font-weight:700;letter-spacing:.02em;color:var(--t-low);
  transition:color .25s var(--ease);
}
.tab::after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:2px;background:var(--brand);transform:scaleX(0);transition:transform .35s var(--ease-out);}
.tab:first-child{padding-left:0;}
.tab.is-on,.tab:hover{color:var(--t-hi);}
.tab.is-on::after{transform:scaleX(1);}
@media (max-width:640px){.tab{padding:13px 16px;font-size:13.5px;}.tab:first-child{padding-left:0;}}
.tpane{display:none;}
.tpane.is-on{display:block;animation:fadeUp .5s var(--ease-out);}
@keyframes fadeUp{from{opacity:0;transform:translateY(14px);}to{opacity:1;transform:none;}}

/* 手风琴 */
.acc{border-top:1px solid var(--line-l);}
.acc-item{border-bottom:1px solid var(--line-l);}
.acc-btn{display:flex;width:100%;align-items:center;justify-content:space-between;gap:20px;padding:24px 0;text-align:left;}
.acc-btn .t{display:flex;align-items:baseline;gap:18px;}
.acc-btn .n{font-family:var(--f-mono);font-size:12px;letter-spacing:.16em;color:var(--brand);flex:none;}
.acc-btn h3{transition:color .25s var(--ease);}
.acc-btn:hover h3{color:var(--brand-d);}
.acc-sign{position:relative;width:22px;height:22px;flex:none;}
.acc-sign::before,.acc-sign::after{content:"";position:absolute;background:var(--t-hi);transition:transform .35s var(--ease);}
.acc-sign::before{left:0;top:10.5px;width:22px;height:1.5px;}
.acc-sign::after{left:10.5px;top:0;width:1.5px;height:22px;}
.acc-item.is-on .acc-sign::after{transform:scaleY(0);}
.acc-item.is-on .acc-sign::before{background:var(--brand);}
.acc-body{display:grid;grid-template-rows:0fr;transition:grid-template-rows .45s var(--ease-out);}
.acc-item.is-on .acc-body{grid-template-rows:1fr;}
.acc-body > div{overflow:hidden;}
.acc-in{padding:0 0 30px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:28px 48px;}
@media (max-width:760px){.acc-in{grid-template-columns:1fr;}.acc-btn .t{gap:12px;}}

/* 伙伴条目 */
.plist{border-top:1px solid var(--line-l);}
.prow{
  display:grid;grid-template-columns:auto minmax(0,1.35fr) minmax(0,1fr) auto;gap:clamp(20px,3vw,44px);
  align-items:center;padding:clamp(26px,3vw,40px) 0;border-bottom:1px solid var(--line-l);
  transition:background .35s var(--ease),padding-inline .35s var(--ease);
}
.prow:hover{background:var(--paper-1);padding-inline:18px;}
.prow-n{font-family:var(--f-mono);font-size:12px;letter-spacing:.18em;color:var(--brand);}
.prow h3{margin-bottom:8px;}
.prow-d{font-size:14px;color:var(--t-mid);line-height:1.7;}
.prow-meta{display:grid;gap:7px;}
.prow-meta li{font-size:13px;color:var(--t-low);display:flex;gap:9px;align-items:center;}
.prow-meta svg{color:var(--brand);flex:none;}
.prow-go{width:52px;height:52px;display:grid;place-items:center;border:1px solid var(--line-l);color:var(--t-hi);transition:all .3s var(--ease);flex:none;}
.prow:hover .prow-go{background:var(--brand);border-color:var(--brand);color:#fff;transform:translateX(4px);}
@media (max-width:1000px){
  .prow{grid-template-columns:auto 1fr auto;}
  .prow-meta{grid-column:2;}
}
@media (max-width:620px){
  .prow{grid-template-columns:1fr auto;gap:14px;}
  .prow-n{grid-column:1/-1;}
  .prow-meta{grid-column:1/-1;}
  .prow:hover{padding-inline:0;}
}

/* CTA 带 */
.cta{position:relative;background:var(--ink-1);color:#fff;overflow:hidden;}
.cta::before{content:"";position:absolute;inset:0;background:url("../img/circuit.svg") center/cover no-repeat;opacity:.3;}
.cta::after{content:"";position:absolute;inset:0;background:linear-gradient(92deg,var(--ink-1) 24%,rgba(10,14,20,.8) 62%,rgba(0,163,224,.22) 100%);}
.cta .wrap{position:relative;z-index:2;padding-block:clamp(52px,6vw,88px);}
.cta-in{display:flex;align-items:center;justify-content:space-between;gap:34px;flex-wrap:wrap;}
.cta-in h2{max-width:22ch;}
.cta-in p{color:var(--dt-mid);margin-top:14px;max-width:52ch;}

/* 联系卡 */
.ccards{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:1px;background:var(--line-l);border:1px solid var(--line-l);}
.ccard{background:var(--paper);padding:clamp(24px,2.8vw,34px);display:flex;flex-direction:column;gap:12px;transition:background .3s var(--ease);}
a.ccard:hover{background:var(--paper-1);}
.ccard .ic{width:38px;height:38px;color:var(--brand);}
.ccard .k{font-size:12px;letter-spacing:.12em;color:var(--t-low);}
.ccard .v{font-size:clamp(17px,1.6vw,21px);font-weight:700;letter-spacing:-.01em;word-break:break-all;}
.ccard .x{font-size:13px;color:var(--t-low);}

/* 表格式时间 */
.hours{border-top:1px solid var(--line-l);}
.hours li{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:15px 0;border-bottom:1px solid var(--line-l);font-size:14.5px;}
.hours .d{color:var(--t-mid);}
.hours .h{font-family:var(--f-mono);font-weight:600;font-size:13.5px;}
.hours .h.off{color:var(--t-low);}

/* ============================================================
   FOOTER
   ============================================================ */
.ftr{background:var(--ink);color:var(--dt-mid);padding-top:clamp(56px,6.5vw,88px);}
.ftr-top{display:grid;grid-template-columns:minmax(0,1.5fr) repeat(3,minmax(0,1fr));gap:clamp(30px,4vw,56px);padding-bottom:clamp(40px,5vw,64px);}
@media (max-width:980px){.ftr-top{grid-template-columns:1fr 1fr;}}
@media (max-width:600px){.ftr-top{grid-template-columns:1fr;}}
.ftr-about p{font-size:14px;line-height:1.85;margin:20px 0 26px;max-width:46ch;color:var(--dt-mid);}
.ftr-contact{display:grid;gap:11px;}
.ftr-contact a,.ftr-contact span{display:flex;align-items:center;gap:11px;font-size:14px;transition:color .25s var(--ease);}
.ftr-contact a:hover{color:var(--brand-l);}
.ftr-contact svg{color:var(--brand);flex:none;}
.ftr-h{font-size:12px;font-weight:700;letter-spacing:.18em;color:#fff;text-transform:uppercase;font-family:var(--f-mono);margin-bottom:20px;}
.ftr-l{display:grid;gap:12px;}
.ftr-l a{font-size:14px;transition:color .25s var(--ease),padding-left .25s var(--ease);}
.ftr-l a:hover{color:#fff;padding-left:6px;}
.ftr-bot{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;padding-block:24px;border-top:1px solid rgba(255,255,255,.1);font-size:12.5px;color:var(--dt-low);}
.ftr-bot a:hover{color:var(--brand-l);}

/* 回到顶部 */
.top{
  position:fixed;right:22px;bottom:22px;z-index:70;width:48px;height:48px;display:grid;place-items:center;
  background:var(--brand);color:#fff;box-shadow:0 14px 30px -12px rgba(0,163,224,.7);
  opacity:0;visibility:hidden;transform:translateY(12px);transition:all .35s var(--ease);
}
.top.is-on{opacity:1;visibility:visible;transform:none;}
.top:hover{background:var(--ink);}

/* ---------- 滚动进场 ---------- */
[data-rv]{opacity:0;transform:translateY(24px);transition:opacity .75s var(--ease-out),transform .75s var(--ease-out);}
[data-rv].in-view{opacity:1;transform:none;}
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.001ms !important;transition-duration:.001ms !important;}
  html{scroll-behavior:auto;}
  [data-rv]{opacity:1;transform:none;}
}
body.nav-open{overflow:hidden;}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;}
.skip{position:absolute;left:-9999px;top:0;z-index:200;background:var(--brand);color:#fff;padding:12px 20px;}
.skip:focus{left:8px;top:8px;}

/* ---------- 询价表单 ---------- */
.inq-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;}
@media (max-width:620px){.inq-grid{grid-template-columns:1fr;}}
.fld{display:flex;flex-direction:column;gap:9px;}
.fld--full{grid-column:1/-1;}
.fld > span{font-size:12.5px;letter-spacing:.08em;color:var(--t-low);}
.fld em{color:var(--brand);font-style:normal;}
.fld input,.fld select,.fld textarea{
  width:100%;padding:13px 14px;background:var(--paper);color:var(--t-hi);
  border:1px solid var(--line-l);border-radius:0;font-size:14.5px;outline:0;
  transition:border-color .25s var(--ease),box-shadow .25s var(--ease);
  font-family:inherit;resize:vertical;
}
.fld select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%237a8695' stroke-width='2'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");
  background-repeat:no-repeat;background-position:right 13px center;padding-right:38px;}
.fld input:focus,.fld select:focus,.fld textarea:focus{border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-tint);}
.fld input::placeholder,.fld textarea::placeholder{color:var(--t-low);}
.fld.is-bad input,.fld.is-bad textarea{border-color:#d64545;box-shadow:0 0 0 3px rgba(214,69,69,.12);}
.inq-foot{display:flex;flex-wrap:wrap;align-items:center;gap:18px;margin-top:24px;}
.inq-note{font-size:12.5px;line-height:1.75;color:var(--t-low);flex:1 1 260px;min-width:0;}
.inq-note a{color:var(--brand-d);border-bottom:1px solid currentColor;}
.inq-ok{
  display:none;align-items:flex-start;gap:12px;margin-top:20px;padding:15px 17px;
  background:var(--brand-tint);border-left:2px solid var(--brand);font-size:13.5px;line-height:1.7;
}
.inq-ok.is-on{display:flex;}
.inq-ok svg{color:var(--brand);flex:none;margin-top:3px;}

/* ---------- BOM 分级清单 ---------- */
.bomcell{display:flex;flex-direction:column;}
.bomlist{margin-top:20px;border-top:1px solid var(--line-l);}
.bomlist li{
  display:grid;grid-template-columns:minmax(118px,.52fr) 1fr;gap:6px 16px;
  padding:12px 0;border-bottom:1px solid var(--line-l);font-size:13.5px;line-height:1.7;
}
.bomlist strong{font-weight:700;color:var(--t-hi);}
.bomlist span{color:var(--t-mid);}
@media (max-width:520px){.bomlist li{grid-template-columns:1fr;}}
a.tag{transition:background .25s var(--ease),color .25s var(--ease),border-color .25s var(--ease);}
a.tag:hover{background:var(--brand);color:#fff;border-color:var(--brand);}

/* ---------- 表格 ---------- */
.tbl-wrap{border:1px solid var(--line-l);overflow-x:auto;-webkit-overflow-scrolling:touch;}
.tbl{width:100%;border-collapse:collapse;min-width:780px;font-size:14px;background:var(--paper);}
.tbl th{
  text-align:left;padding:15px 18px;background:var(--ink-1);color:#fff;
  font-size:11.5px;letter-spacing:.12em;font-weight:700;white-space:nowrap;
}
.tbl td{padding:15px 18px;border-top:1px solid var(--line-l);color:var(--t-mid);vertical-align:top;}
.tbl td strong{color:var(--t-hi);white-space:nowrap;}
.tbl tbody tr{transition:background .25s var(--ease);}
.tbl tbody tr:hover{background:var(--paper-1);}
.tbl-k{display:none;}
@media (max-width:700px){
  .tbl-wrap{overflow-x:visible;border:0;}
  .tbl{min-width:0;}
  .tbl thead{display:none;}
  .tbl tbody,.tbl tr,.tbl td{display:block;}
  .tbl tr{border:1px solid var(--line-l);margin-bottom:-1px;padding:6px 16px;}
  .tbl td{display:grid;grid-template-columns:minmax(88px,.45fr) 1fr;gap:14px;border-top:0;padding:9px 0;}
  .tbl td + td{border-top:1px solid var(--paper-2);}
  .tbl-k{display:block;font-size:11.5px;letter-spacing:.08em;color:var(--t-low);font-weight:600;}
}

/* ---------- 图标定义列表 ---------- */
.deflist{display:grid;gap:18px;}
.deflist li{display:flex;gap:13px;align-items:flex-start;}
.deflist svg{flex:none;margin-top:5px;color:var(--brand);}
.deflist strong{display:block;font-size:15px;font-weight:700;}
.deflist span{display:block;font-size:14px;color:var(--t-mid);line-height:1.75;margin-top:4px;}
.sec--dark .deflist span{color:var(--dt-mid);}

/* ============================================================
   v2 — 主回路拓扑图 / 双语 / UI 精修
   ============================================================ */
:root{
  --wire:      rgba(11,17,24,.58);
  --wire-fill: rgba(11,17,24,.72);
  --shadow-sm: 0 2px 8px -3px rgba(5,7,10,.16);
  --shadow-md: 0 18px 40px -22px rgba(5,7,10,.4);
}
.sec--dark{--wire:rgba(255,255,255,.52);--wire-fill:rgba(255,255,255,.66);}

/* ---------- 工程图纸（驱动器 / PLC / 变频器） ---------- */
.dgm-fig{margin:0;}
.dgm-wrap{
  position:relative;border:1px solid var(--line-l);background:var(--paper-1);
  padding:clamp(16px,2.4vw,30px);overflow-x:auto;-webkit-overflow-scrolling:touch;
}
.sec--dark .dgm-wrap{border-color:var(--line-d);background:rgba(255,255,255,.025);}
.dgm{width:100%;min-width:860px;height:auto;color:var(--brand);display:block;}

.dgm-box{fill:var(--paper);stroke:var(--line-l);stroke-width:1;}
.dgm-box--hot{fill:rgba(0,163,224,.09);stroke:var(--brand);stroke-width:1.5;}
.dgm-box--ctl{fill:var(--paper);stroke:var(--line-l);stroke-dasharray:4 3;}
.dgm-box--mcu{fill:rgba(0,163,224,.07);stroke:var(--brand);stroke-width:1.5;}
.dgm-box--rack{fill:none;stroke:var(--line-l);stroke-dasharray:6 4;}
.dgm-box--bus{fill:rgba(0,163,224,.22);stroke:var(--brand);stroke-width:1;}
.dgm-box--slot{fill:none;stroke:var(--line-l);stroke-dasharray:3 3;}
.sec--dark .dgm-box{fill:rgba(255,255,255,.04);stroke:var(--line-d);}
.sec--dark .dgm-box--hot{fill:rgba(0,163,224,.16);stroke:var(--brand-l);}
.sec--dark .dgm-box--ctl{fill:rgba(255,255,255,.03);stroke:rgba(255,255,255,.26);}
.sec--dark .dgm-box--mcu{fill:rgba(0,163,224,.13);stroke:var(--brand-l);}
.sec--dark .dgm-box--rack,.sec--dark .dgm-box--slot{fill:none;stroke:rgba(255,255,255,.26);}

.dgm-w{fill:none;stroke:var(--wire);stroke-width:1.6;stroke-linecap:round;
  stroke-linejoin:round;color:var(--wire);}
.dgm-f{fill:var(--wire-fill);stroke:none;}
.dgm-rail{fill:none;stroke:var(--brand);stroke-width:2.4;stroke-linecap:round;}
.dgm-d{fill:none;stroke:var(--t-low);stroke-width:1.1;stroke-dasharray:5 4;opacity:.62;}
.sec--dark .dgm-d{stroke:var(--dt-low);opacity:.72;}

/* 电流流动动效 */
.dgm-flow{
  fill:none;stroke:var(--brand);stroke-width:3;stroke-linecap:round;
  stroke-dasharray:16 210;opacity:.9;
  animation:dgmFlow 3.4s linear infinite;
}
.dgm-flow--rail{stroke-width:3.4;stroke-dasharray:22 300;animation-duration:4.2s;}
@keyframes dgmFlow{from{stroke-dashoffset:226;}to{stroke-dashoffset:0;}}

.dgm text{font-family:var(--f-sans);}
.dgm-t{fill:var(--t-hi);font-size:14.5px;font-weight:700;text-anchor:middle;}
.dgm-s{fill:var(--t-low);font-size:10.5px;text-anchor:middle;}
.dgm-s--l{text-anchor:start;}
.dgm-lb{fill:var(--t-mid);font-size:12px;font-weight:700;text-anchor:middle;font-family:var(--f-mono);}
.dgm-pos{fill:var(--brand);font-size:17px;}
.dgm-cap{fill:var(--t-low);font-size:11px;letter-spacing:.1em;font-family:var(--f-mono);}
.dgm-layer{fill:var(--t-low);font-size:11px;letter-spacing:.16em;font-family:var(--f-mono);font-weight:700;}
.dgm-m{fill:var(--t-hi);font-size:26px;font-weight:700;text-anchor:middle;}
.sec--dark .dgm-t,.sec--dark .dgm-m{fill:#fff;}
.sec--dark .dgm-s,.sec--dark .dgm-cap,.sec--dark .dgm-layer{fill:var(--dt-low);}
.sec--dark .dgm-lb{fill:var(--dt-mid);}
.sec--dark .dgm-pos{fill:var(--brand-l);}

/* 分级高亮 */
.stg{transition:opacity .4s var(--ease);}
.stg.is-dim{opacity:.13;}
.stg.is-on .dgm-box--hot,.stg.is-on .dgm-box--mcu{stroke-width:2.2;}
.dgm-fig.is-focus .dgm-flow{opacity:0;}
.dgm-fig.is-focus .stg.is-on .dgm-flow{opacity:.9;}

/* 图例 */
.dgm-legend{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px;}
.dgm-chip{
  display:inline-flex;align-items:center;gap:8px;padding:9px 14px;
  border:1px solid var(--line-l);background:var(--paper);
  font-size:12.5px;font-weight:600;color:var(--t-mid);
  transition:all .25s var(--ease);
}
.sec--dark .dgm-chip{background:rgba(255,255,255,.04);border-color:var(--line-d);color:var(--dt-mid);}
.dgm-dot{width:7px;height:7px;background:var(--brand);flex:none;opacity:.45;transition:opacity .25s var(--ease);}
.dgm-chip:hover{border-color:var(--brand);color:var(--t-hi);}
.sec--dark .dgm-chip:hover{color:#fff;}
.dgm-chip.is-on{background:var(--brand);border-color:var(--brand);color:#fff;}
.dgm-chip.is-on .dgm-dot{background:#fff;opacity:1;}
.dgm-chip--reset{display:none;}
.dgm-fig.is-focus .dgm-chip--reset{display:inline-flex;}

/* 放大按钮 */
.dgm-zoom{
  position:absolute;top:10px;right:10px;z-index:2;
  display:inline-flex;align-items:center;gap:7px;padding:8px 13px;
  border:1px solid var(--line-l);background:var(--paper);color:var(--t-mid);
  font-size:12px;font-weight:700;letter-spacing:.04em;
  transition:all .25s var(--ease);
}
.sec--dark .dgm-zoom{background:var(--ink-2);border-color:var(--line-d);color:var(--dt-mid);}
.dgm-zoom:hover{background:var(--brand);border-color:var(--brand);color:#fff;}

.dgm-hint{font-size:12px;color:var(--t-low);margin-top:12px;letter-spacing:.03em;}
.sec--dark .dgm-hint{color:var(--dt-low);}
@media (min-width:941px){.dgm-hint{display:none;}}

/* 全屏查看（浅色底，便于读图） */
.dgm-modal{position:fixed;inset:0;z-index:130;background:var(--paper);display:none;}
.dgm-modal.is-on{display:flex;flex-direction:column;}
body.dgm-open{overflow:hidden;}
.dgm-modal-bar{
  display:flex;align-items:center;justify-content:space-between;gap:16px;
  padding:12px clamp(14px,3vw,24px);border-bottom:1px solid var(--line-l);flex:none;
}
.dgm-modal-bar strong{font-size:14px;font-weight:700;}
.dgm-modal-close{
  display:inline-flex;align-items:center;gap:8px;padding:10px 15px;min-height:44px;
  border:1px solid var(--line-l);font-size:13px;font-weight:700;
}
.dgm-modal-close:hover{background:var(--ink);color:#fff;border-color:var(--ink);}
.dgm-modal-body{flex:1;overflow:auto;-webkit-overflow-scrolling:touch;padding:clamp(12px,3vw,28px);}
.dgm-modal-body svg{min-width:1180px;width:100%;height:auto;}
@media (max-width:640px){.dgm-modal-body svg{min-width:1000px;}}

/* 系统架构双图区 */
.arch{display:grid;gap:clamp(40px,5vw,72px);}
/* 网格子项默认 min-width:auto，会被图纸的 min-width 撑破容器，必须归零 */
.arch-item{min-width:0;}
.arch-item .lede{max-width:72ch;}
.split > *,.grid > *,.cell,.card{min-width:0;}

/* ---------- 语言切换 ---------- */
.lang-btn{
  display:inline-flex;align-items:center;gap:7px;padding:4px 11px;
  border:1px solid rgba(255,255,255,.2);font-size:11.5px;font-weight:700;
  letter-spacing:.1em;color:var(--dt-mid);
  transition:color .25s var(--ease),border-color .25s var(--ease),background .25s var(--ease);
}
.lang-btn:hover{color:#fff;border-color:var(--brand);background:rgba(0,163,224,.16);}
.lang-btn svg{opacity:.75;}

/* ---------- 新增小组件 ---------- */
.tag--core{background:var(--brand);color:#fff;border-color:var(--brand);}
.sec--dark .tag--core{background:var(--brand);color:#fff;border-color:var(--brand);}
.appcell-h{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;}
.appcell-h .card-ic{margin-bottom:0;}
.panel-foot{margin-top:28px;padding-top:24px;border-top:1px solid var(--line-l);}
.panel .panel-foot{border-top-color:var(--line-d);}
.panel-sub{font-size:13px;color:var(--dt-mid);font-family:var(--f-mono);letter-spacing:.03em;}
.panel--l .panel-sub{color:var(--t-low);}
.cta-btns{display:flex;gap:14px;flex-wrap:wrap;}
.tlink--back{margin-bottom:26px;}
.ar-back{display:inline-flex;transform:rotate(180deg);}
.phead--404{min-height:58vh;display:flex;align-items:center;}

/* ---------- UI 精修 ---------- */
/* 章节标题加一道细分隔线，强化版式节奏 */
.sec-head{position:relative;padding-top:26px;}
.sec-head::before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:var(--line-l);}
.sec--dark .sec-head::before{background:var(--line-d);}

/* 卡片：更克制的悬停反馈 */
a.card{transition:background .35s var(--ease),transform .35s var(--ease-out),box-shadow .35s var(--ease);}
a.card:hover{transform:translateY(-3px);box-shadow:var(--shadow-md);}
.sec--dark a.card:hover{box-shadow:0 18px 40px -22px rgba(0,0,0,.9);}
.card-ic{transition:transform .4s var(--ease-out);}
a.card:hover .card-ic{transform:translateY(-2px) scale(1.04);}

/* 按钮：更清晰的层次 */
.btn{box-shadow:var(--shadow-sm);}
.btn--ghost{box-shadow:none;}
.btn:active{transform:translateY(1px);}

/* 焦点可见性 */
:focus-visible{outline:2px solid var(--brand-l);outline-offset:3px;border-radius:1px;}
.sec--dark :focus-visible{outline-color:var(--brand-l);}

/* 统计块数字用等宽，避免跳动 */
.stat-v{font-variant-numeric:tabular-nums;font-feature-settings:"tnum";}

/* 正文行长控制 */
.lede{max-width:64ch;}
.sec-head--split .lede{max-width:none;}

/* 药丸与标签的触摸目标 */
@media (hover:none){
  .pill{padding:13px 18px;}
  .tag{padding:8px 12px;}
}

/* 英文版：西文字距与标题换行更自然 */
html[lang="en"] .h-xxl,html[lang="en"] .h-xl{letter-spacing:-.018em;}
html[lang="en"] .eyebrow{letter-spacing:.18em;}
html[lang="en"] .bomlist li{grid-template-columns:minmax(150px,.55fr) 1fr;}
html[lang="en"] body{letter-spacing:0;}
@media (max-width:520px){html[lang="en"] .bomlist li{grid-template-columns:1fr;}}

/* 打印 */
@media print{
  .util,.hdr,.drawer,.top,.cta,.hero-ctrl{display:none !important;}
  body{color:#000;background:#fff;}
  .sec--dark,.phead{background:#fff !important;color:#000 !important;}
  .dgm-wrap{overflow:visible;}
}

/* 英文版：西文更长，收一档标题尺寸并放宽换行宽度 */
html[lang="en"] .slide .h-xxl{font-size:clamp(30px,4.7vw,62px);}
html[lang="en"] .phead h1{max-width:26ch;}
html[lang="en"] .slide p{max-width:50ch;}
html[lang="en"] .idx-t{font-size:13.5px;}

/* ============================================================
   手机端优化
   目标：点击目标 ≥44px、正文不小于 12px、压缩纵向长度
   ============================================================ */
@media (max-width:760px){
  /* 纵向长度：分区留白收紧，减少无效滚动 */
  .sec{padding-block:52px;}
  .sec--tight{padding-block:38px;}
  .sec-head{margin-bottom:28px;padding-top:20px;}
  .cell,.card{padding:24px 20px;}
  .cta .wrap{padding-block:46px;}
  .ftr{padding-top:48px;}
  .ftr-top{padding-bottom:36px;gap:32px;}

  /* 可读性：小字号统一抬到 12px 以上 */
  .eyebrow{font-size:11.5px;letter-spacing:.16em;}
  .card-n,.prow-n,.drop-n{font-size:11.5px;}
  .tag{font-size:12px;padding:8px 12px;}
  .stat-l,.ccard .k{font-size:12.5px;}
  .inq-note,.dgm-hint,.hours .h{font-size:12.5px;}
  .card p,.checks li,.bullets li,.bomlist li,.prow-d{font-size:14px;}

  /* 点击目标：行内链接与标签撑到 44px */
  a.tag{min-height:40px;align-items:center;display:inline-flex;}
  .tlink{padding-block:11px;min-height:44px;align-items:center;}
  .crumb a,.crumb span{min-height:44px;display:inline-flex;align-items:center;}
  .ftr-l a{min-height:44px;display:flex;align-items:center;}
  .ftr-contact a,.ftr-contact span{min-height:44px;}
  .ftr-about .logo{min-height:44px;}
  .dgm-chip{min-height:44px;padding:11px 15px;}
  .util-list a{padding-block:9px;}
  .acc-btn{padding-block:20px;}
  .tab{padding:15px 16px;min-height:48px;}
  .idx-btn{padding-block:15px;min-height:64px;}

  /* 头部：语言切换与电话在窄屏也要能点 */
  .util .wrap-w{height:auto;padding-block:5px;flex-wrap:wrap;gap:4px 14px;}
  .lang-btn{padding:7px 12px;min-height:36px;}

  /* 表单：iOS 上字号 <16px 会触发自动缩放 */
  .fld input,.fld select,.fld textarea{font-size:16px;padding:14px;}
  .inq-foot .btn{width:100%;justify-content:center;}

  /* 图纸：按钮下移避免遮挡图形，图例可横滑 */
  .dgm-zoom{top:auto;bottom:10px;right:10px;min-height:44px;}
  .dgm-legend{flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;
    padding-bottom:4px;scrollbar-width:none;}
  .dgm-legend::-webkit-scrollbar{display:none;}
  .dgm-chip{flex:none;}

  /* 按钮组在窄屏占满宽度，避免半行 */
  .cta-btns .btn,.slide-cta .btn{flex:1 1 100%;justify-content:center;}
}

@media (max-width:420px){
  .sec{padding-block:44px;}
  .cell,.card{padding:22px 18px;}
  .hero-stage{min-height:400px;}
  .h-xxl{font-size:30px;}
  .stat-v{font-size:28px;}
  .logo-cn{font-size:17px;}
}

/* 触摸设备统一放大可点区域 */
@media (hover:none){
  .pill{padding:13px 18px;min-height:44px;}
  .prow-go{width:48px;height:48px;}
  .nav-link{min-height:48px;}
}

/* 蜜罐字段：对真人隐藏，机器人会填 */
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden;}

/* 表单提交状态 */
.inq-status{margin-top:16px;font-size:13.5px;line-height:1.7;padding:0;}
.inq-status:empty{display:none;}
.inq-status.is-wait{color:var(--t-mid);}
.inq-status.is-ok{color:var(--brand-d);background:var(--brand-tint);
  border-left:2px solid var(--brand);padding:14px 16px;}
.inq-status.is-bad{color:#a32b2b;background:rgba(214,69,69,.08);
  border-left:2px solid #d64545;padding:14px 16px;}
.inq-status a{border-bottom:1px solid currentColor;}

/* ============================================================
   旋转磁场 / FOC 演示动画
   时序：10s 一轮 —— 矢量 4 圈（电气角）、转子 2 圈（2 对极）、波形滚动 4 个周期
   ============================================================ */
.mtr{
  position:relative;border:1px solid var(--line-d);
  background:
    radial-gradient(60% 90% at 22% 50%, rgba(0,163,224,.13), transparent 70%),
    linear-gradient(160deg, rgba(255,255,255,.045), rgba(255,255,255,.01));
  padding:clamp(14px,2.2vw,26px);
  overflow-x:auto;-webkit-overflow-scrolling:touch;
}
.mtr-svg{width:100%;min-width:840px;height:auto;display:block;font-family:var(--f-sans);}

.mtr-u{--c:#00a3e0;}
.mtr-v{--c:#6fe0ff;}
.mtr-w{--c:#ffb454;}
.mtr-coil{fill:var(--c);opacity:.92;}
.mtr-line{fill:none;stroke:var(--c);stroke-width:2.6;stroke-linejoin:round;stroke-linecap:round;}
.mtr-sw{fill:var(--c);}

.mtr-stator{stroke:rgba(255,255,255,.16);stroke-width:1;}
.mtr-rotor-body{fill:#0e1620;stroke:rgba(255,255,255,.2);stroke-width:1;}
.mtr-pole{stroke:rgba(255,255,255,.14);stroke-width:.8;}
.mtr-pole-t{fill:#fff;font-size:15px;font-weight:700;text-anchor:middle;opacity:.9;}
.mtr-axis{fill:none;stroke:rgba(255,255,255,.16);stroke-dasharray:4 5;}
.mtr-head{fill:none;stroke:#6fe0ff;stroke-width:1.6;opacity:.45;}
.mtr-hex{fill:none;stroke:rgba(255,255,255,.22);stroke-width:1.4;}
.mtr-hex-c{fill:none;stroke:rgba(0,163,224,.4);stroke-width:1;stroke-dasharray:3 4;}
.mtr-h{fill:#fff;font-size:13px;font-weight:700;letter-spacing:.06em;}
.mtr-cap{fill:var(--dt-low);font-size:11.5px;text-anchor:middle;}
.mtr-cap--l{text-anchor:start;}
.mtr-lg{fill:var(--dt-mid);font-size:12px;}

.mtr-rotor,.mtr-vec,.mtr-wave{transform-box:view-box;}
.mtr-rotor{animation:mtrRotor 10s linear infinite;}
.mtr-vec{animation:mtrVec 10s linear infinite;}
.mtr-wave{animation:mtrWave 10s linear infinite;}
@keyframes mtrRotor{to{transform:rotate(720deg);}}
@keyframes mtrVec{to{transform:rotate(1440deg);}}
@keyframes mtrWave{to{transform:translateX(var(--mtr-shift));}}

.mtr-notes{margin-top:clamp(24px,3vw,36px);}
@media (prefers-reduced-motion:reduce){
  .mtr-rotor,.mtr-vec,.mtr-wave{animation:none;}
}

/* ============================================================
   渐变系统
   单一色相铺开，只在能制造层次的地方用，避免整站发灰
   ============================================================ */
:root{
  --grad-brand:  linear-gradient(135deg,#00a3e0 0%,#4ecdf5 100%);
  --grad-deep:   linear-gradient(135deg,#0082b4 0%,#00a3e0 55%,#4ecdf5 100%);
  --grad-ink:    linear-gradient(180deg,#0a0e14 0%,#0d1219 58%,#080c12 100%);
  --grad-sheen:  linear-gradient(180deg,rgba(255,255,255,.055),rgba(255,255,255,0));
}

/* 暗色分区：平涂改为极轻的纵向渐变，长页面不再显得死板 */
.sec--dark{background:var(--grad-ink);}
.sec--dark::before{
  content:"";position:absolute;inset:0 0 auto;height:1px;
  background:linear-gradient(90deg,transparent,rgba(0,163,224,.5),transparent);
}
.sec--dark{position:relative;}

/* 主按钮：渐变填充；悬停时换成纯白，渐变需一并撤掉 */
.btn{background-image:var(--grad-deep);}
.btn:hover{background-image:none;}
.btn--ghost{background-image:none;}
.btn--light{background-image:linear-gradient(135deg,#131b26,#05070a);}
.btn--light:hover{background-image:var(--grad-deep);}

/* 数字用渐变字，带纯色兜底 */
.stat-v{
  color:var(--brand);
  background:var(--grad-brand);
  -webkit-background-clip:text;background-clip:text;
  -webkit-text-fill-color:transparent;
}
@supports not ((-webkit-background-clip:text) or (background-clip:text)){
  .stat-v{-webkit-text-fill-color:currentColor;background:none;}
}

/* 小装饰线与卡片下划线改为渐变收尾 */
.eyebrow::before{background:linear-gradient(90deg,var(--brand),rgba(0,163,224,.15));}
.card::after{background:var(--grad-brand);}
.nav-link::after{background:var(--grad-brand);}
.tab::after{background:var(--grad-brand);}

/* 面板与行悬停：方向性渐变，比平涂更有纵深 */
.panel{background:linear-gradient(160deg,#141c27 0%,#0a0e14 100%);}
.panel--l{background:linear-gradient(160deg,#ffffff 0%,#eef1f5 100%);}
.prow:hover{background:linear-gradient(90deg,var(--paper-1) 0%,rgba(244,246,248,0) 92%);}
.sec--dark .cell,.sec--dark .card{background:linear-gradient(165deg,rgba(255,255,255,.035),rgba(255,255,255,0));}
.sec--dark a.card:hover{background:linear-gradient(165deg,rgba(0,163,224,.13),rgba(255,255,255,.02));}

/* 页脚顶边与整体底色 */
.ftr{background:linear-gradient(180deg,#05070a 0%,#090d13 100%);position:relative;}
.ftr::before{
  content:"";position:absolute;inset:0 0 auto;height:1px;
  background:linear-gradient(90deg,transparent,rgba(0,163,224,.45),transparent);
}

/* 英雄区与页头：叠一层冷暖过渡，避免大面积纯黑 */
.hero-bg::after{
  background:
    linear-gradient(100deg, var(--ink) 4%, rgba(5,7,10,.94) 34%, rgba(5,7,10,.5) 62%, rgba(5,7,10,.72) 100%),
    radial-gradient(62% 90% at 78% 40%, rgba(0,163,224,.28), transparent 70%),
    linear-gradient(180deg, rgba(0,163,224,.06), transparent 40%);
}
.phead::after{
  background:
    linear-gradient(95deg,var(--ink) 12%,rgba(5,7,10,.88) 48%,rgba(5,7,10,.62) 100%),
    radial-gradient(56% 100% at 82% 30%,rgba(0,163,224,.26),transparent 68%),
    linear-gradient(180deg,rgba(0,163,224,.05),transparent 45%);
}

/* 图纸容器：浅底加一层极轻的纸感渐变 */
.dgm-wrap{background:linear-gradient(170deg,#f8fafb 0%,#eef1f5 100%);}
.sec--dark .dgm-wrap{background:linear-gradient(170deg,rgba(255,255,255,.05),rgba(255,255,255,.012));}

/* 图例选中态也走渐变，和主按钮保持一致 */
.dgm-chip.is-on{background-image:var(--grad-deep);}
.top{background-image:var(--grad-deep);}
.top:hover{background-image:none;}

@media (max-width:760px){
  .mtr{padding:12px;}
  .mtr-svg{min-width:760px;}
}
.mtr-trail{fill:rgba(111,224,255,.13);stroke:none;}

/* ============================================================
   3D 产品展台（首页首屏 + 各页页头）
   桌面：模型在右半区，文字在左；手机：首页模型在文字上方，页头模型在文字下方
   ============================================================ */
.stage-3d{opacity:0;transition:opacity 1.4s var(--ease);}
.stage-3d.is-ready{opacity:1;}
.stage-3d::before{          /* 舞台光：加载前也有，避免空白 */
  content:"";position:absolute;inset:8% 6% 4%;pointer-events:none;
  background:radial-gradient(50% 46% at 50% 54%,rgba(0,163,224,.2),transparent 70%);
}
.stage-3d canvas{
  position:relative;display:block;width:100%;height:100%;
  cursor:grab;touch-action:pan-y;-webkit-tap-highlight-color:transparent;
  /* 四周柔化：任何发光都不会在画布边界留下直边 */
  -webkit-mask-image:radial-gradient(ellipse farthest-side at 50% 50%,#000 82%,transparent 100%);
          mask-image:radial-gradient(ellipse farthest-side at 50% 50%,#000 82%,transparent 100%);
}
.stage-3d canvas:active{cursor:grabbing;}
.stage-3d-hint{
  position:absolute;right:var(--gut);bottom:22px;
  display:inline-flex;align-items:center;gap:8px;
  font:600 11px/1 var(--f-mono);letter-spacing:.14em;color:var(--dt-low);
  pointer-events:none;transition:opacity .8s var(--ease);
}
.stage-3d-hint::before{content:"";width:22px;height:1px;background:linear-gradient(90deg,transparent,var(--brand-l));}
.stage-3d-hint.is-off{opacity:0;}

/* ---- 首页首屏 ---- */
.stage-3d--hero{position:absolute;z-index:0;top:0;bottom:0;right:0;width:min(58%,780px);}
.hero.has-3d .hero-inner{pointer-events:none;}
.hero.has-3d .slide,.hero.has-3d .hero-ctrl,.hero.has-3d .stage-3d{pointer-events:auto;}
.hero.has-3d .hero-stage{position:relative;z-index:1;}
.hero.has-3d .slide{max-width:min(620px,54%);}
.hero.has-3d .hero-bg::before{opacity:.32;}

/* ---- 各页页头 ---- */
.phead .wrap{position:relative;}
.phead-text{position:relative;z-index:1;}
.phead.has-3d .wrap{min-height:clamp(440px,54vh,560px);display:flex;align-items:center;}
.phead.has-3d .phead-text{max-width:min(600px,52%);pointer-events:none;}
.phead.has-3d .phead-text a{pointer-events:auto;}
.phead.has-3d .phead-text h1{max-width:none;}
.stage-3d--phead{position:absolute;z-index:0;top:0;bottom:0;right:0;width:min(56%,760px);}
.phead.has-3d::before{opacity:.22;}

@media (max-width:900px){
  .stage-3d--hero{
    position:relative;top:auto;bottom:auto;right:auto;width:auto;
    height:clamp(250px,66vw,390px);margin:10px calc(-1 * var(--gut)) -6px;
  }
  .stage-3d-hint{bottom:10px;}
  .hero.has-3d .slide{max-width:none;}
  .hero.has-3d .hero-stage{padding-top:8px;min-height:clamp(330px,90vw,430px);align-items:flex-start;}

  .phead.has-3d .wrap{min-height:0;display:block;}
  .phead.has-3d .phead-text{max-width:none;}
  .stage-3d--phead{
    position:relative;top:auto;bottom:auto;right:auto;width:auto;
    height:clamp(240px,62vw,360px);margin:6px calc(-1 * var(--gut)) -20px;
  }
}

/* ============================================================
   快速询价（不依赖服务器）
   ============================================================ */
.qk{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line-l);border:1px solid var(--line-l);}
.qk-tile{
  display:flex;flex-direction:column;align-items:flex-start;gap:6px;text-align:left;
  padding:22px 20px;background:var(--paper);min-height:44px;
  transition:background .25s var(--ease);
}
.qk-tile:hover{background:var(--paper-1);}
.qk-tile--main{background:var(--ink-1);color:#fff;background-image:linear-gradient(160deg,#141c27,#0a0e14);}
.qk-tile--main:hover{background-image:linear-gradient(160deg,#0a5f86,#0a0e14);}
.qk-ic{color:var(--brand);margin-bottom:6px;display:inline-flex;}
.qk-tile--main .qk-ic{color:var(--brand-l);}
.qk-k{font-size:12px;letter-spacing:.1em;color:var(--t-low);}
.qk-tile--main .qk-k{color:var(--dt-low);}
.qk-v{font-size:16px;font-weight:700;letter-spacing:-.01em;word-break:break-all;}
.qk-x{font-size:12.5px;color:var(--t-low);}
.qk-tile--main .qk-x{color:var(--dt-mid);}
@media (max-width:760px){
  .qk{grid-template-columns:1fr;}
  .qk-tile{flex-direction:row;flex-wrap:wrap;align-items:center;column-gap:12px;padding:18px;}
  .qk-ic{margin:0;}
  .qk-k{width:calc(100% - 40px);}
  .qk-v{width:100%;}
}
/* 带 3D 的页头：文字栏收窄到一半，标题同步收一档，避免多折一行 */
.phead.has-3d h1.h-xxl{font-size:clamp(30px,4.2vw,58px);}
html[lang="en"] .phead.has-3d h1.h-xxl{font-size:clamp(28px,3.6vw,50px);}

/* ============================================================
   品牌线卡：授权代理（品牌蓝）/ 配套供应（中性灰）两层，一眼区分
   ============================================================ */
.lc-badge{
  display:inline-flex;align-items:center;gap:6px;padding:5px 10px;
  font-size:11.5px;font-weight:700;letter-spacing:.08em;white-space:nowrap;
  border:1px solid var(--line-l);color:var(--t-mid);background:var(--paper-1);
}
.lc-badge--auth{background:var(--brand);border-color:var(--brand);color:#fff;background-image:var(--grad-deep);}
.lc-tier + .lc-tier{margin-top:clamp(44px,5vw,72px);}
.lc-tier-h{display:flex;align-items:flex-end;justify-content:space-between;gap:16px 28px;flex-wrap:wrap;
  padding-bottom:18px;margin-bottom:22px;border-bottom:1px solid var(--line-l);}
.lc-tier-h > div{display:flex;align-items:baseline;gap:14px;}
.lc-k{font-family:var(--f-mono);font-size:12px;letter-spacing:.16em;color:var(--brand);}
.lc-points{display:flex;flex-wrap:wrap;gap:8px 20px;}
.lc-points li{display:inline-flex;align-items:center;gap:7px;font-size:13.5px;font-weight:600;color:var(--t-hi);}
.lc-points svg{color:var(--brand);}

.lc-auth-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line-l);border:1px solid var(--line-l);}
.lc-auth{
  position:relative;display:flex;flex-direction:column;gap:8px;padding:26px 22px 22px;background:var(--paper);
  border-top:2px solid var(--brand);transition:background .3s var(--ease);min-width:0;
}
.lc-auth:hover{background:linear-gradient(170deg,var(--brand-tint),var(--paper) 70%);}
.lc-auth .lc-badge{align-self:flex-start;margin-bottom:6px;}
.lc-auth-n{font-size:21px;font-weight:800;letter-spacing:-.01em;}
.lc-auth-f{font-size:12.5px;color:var(--t-low);line-height:1.5;}
.lc-auth-t{font-size:13.5px;color:var(--t-mid);}
.lc-auth .tags{margin-top:6px;}
.lc-auth .tlink{margin-top:auto;padding-top:14px;align-self:flex-start;}

.lc-notice{
  display:flex;gap:14px;align-items:flex-start;padding:18px 20px;margin-bottom:22px;
  background:var(--paper-1);border-left:2px solid var(--t-low);
}
.lc-notice > svg{flex:none;color:var(--t-mid);margin-top:2px;}
.lc-notice p{font-size:14px;line-height:1.85;color:var(--t-mid);}
.lc-notice strong{color:var(--t-hi);font-weight:700;}
.lc-notice .tags{margin-top:12px;}

.lc-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line-l);border:1px solid var(--line-l);}
.lc-tile{display:flex;flex-direction:column;gap:4px;padding:20px 18px;background:var(--paper);min-width:0;}
.lc-tile-n{font-size:22px;font-weight:800;letter-spacing:.01em;color:#2b333c;font-family:var(--f-sans);}
.lc-tile-f{font-size:12px;color:var(--t-low);}
.lc-tile .tags{margin-top:10px;}
.lc-tile .tag{font-size:11px;padding:4px 8px;}
.lc-tm{font-size:12px;color:var(--t-low);margin-top:14px;}

/* 精简横条 */
.lc-band-h{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:18px;}
.lc-band-row{display:grid;grid-template-columns:120px 1fr;gap:16px;align-items:center;
  padding:14px 0;border-top:1px solid var(--line-l);}
.lc-band-k{justify-self:start;}
.lc-band-list{display:flex;flex-wrap:wrap;gap:6px 24px;}
.lc-band-list li{font-size:16px;font-weight:700;color:#3b4550;letter-spacing:.01em;}
.lc-band-list--auth a{font-size:17px;font-weight:800;color:var(--t-hi);border-bottom:1px solid transparent;
  transition:color .25s var(--ease),border-color .25s var(--ease);}
.lc-band-list--auth a:hover{color:var(--brand-d);border-bottom-color:var(--brand);}
.lc-band-note{font-size:12.5px;color:var(--t-low);padding-top:12px;border-top:1px solid var(--line-l);}

@media (max-width:1000px){
  .lc-auth-grid{grid-template-columns:repeat(2,1fr);}
  .lc-grid{grid-template-columns:repeat(3,1fr);}
}
@media (max-width:640px){
  .lc-auth-grid{grid-template-columns:1fr;}
  .lc-grid{grid-template-columns:repeat(2,1fr);}
  .lc-tile{padding:16px 14px;}
  .lc-tile-n{font-size:19px;}
  .lc-band-row{grid-template-columns:1fr;gap:10px;}
  .lc-band-list--auth a{display:inline-flex;align-items:center;min-height:40px;}
}

/* ============================================================
   配图（产品摄影风格渲染图）
   统一：固定比例占位（防止加载时跳动）、裁切填满、底部轻微压暗、悬停缓慢放大
   ============================================================ */
.ph{position:relative;margin:0;overflow:hidden;background:var(--ink-2);aspect-ratio:16/10;}
.ph img{display:block;width:100%;height:100%;object-fit:cover;transition:transform 1s var(--ease-out);}
.ph::after{content:"";position:absolute;inset:0;pointer-events:none;
  background:linear-gradient(180deg,rgba(5,7,10,0) 58%,rgba(5,7,10,.32));}
a:hover .ph img,.ph:hover img{transform:scale(1.04);}
.ph figcaption{
  position:absolute;left:0;right:0;bottom:0;z-index:1;padding:28px 18px 14px;
  font:600 12.5px/1.4 var(--f-sans);letter-spacing:.04em;color:#fff;
  background:linear-gradient(180deg,transparent,rgba(5,7,10,.72));
}

/* 卡片顶部配图 */
.card--media{padding:0;}
.card--media .card-body{display:flex;flex-direction:column;flex:1;padding:clamp(22px,2.4vw,34px);}
.card--media .card-body h3{margin:12px 0 12px;}
.card--media .card-body .tlink{margin-top:auto;padding-top:22px;align-self:flex-start;}

/* 横幅：分区标题下的通栏大图 */
.ph--band{aspect-ratio:21/8;margin-bottom:clamp(26px,3vw,44px);border:1px solid var(--line-l);}
.sec--dark .ph--band{border-color:var(--line-d);}
.ph--wide{aspect-ratio:3/1;}
@media (max-width:700px){.ph--band,.ph--wide{aspect-ratio:16/10;}}

/* 两张并排（关于页） */
.ph-row{display:grid;grid-template-columns:1.55fr 1fr;gap:1px;background:var(--line-l);border:1px solid var(--line-l);}
.ph-row .ph{aspect-ratio:auto;height:clamp(220px,30vw,420px);}

/* 三张带说明（电机驱动器方案） */
.ph-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;margin-top:18px;
  background:var(--line-l);border:1px solid var(--line-l);}

/* 面板顶部（产品分类） */
.panel{--pp:clamp(28px,3.4vw,46px);padding:var(--pp);}
.ph--panel{margin:calc(-1 * var(--pp)) calc(-1 * var(--pp)) 26px;}

/* 右栏配图（代理工厂详情 / 联系页 / 解决方案旗舰块） */
.ph--side{margin-bottom:1px;}
.ph--feat{margin-bottom:26px;border:1px solid var(--line-d);}

/* 解决方案手风琴 */
.ph--acc{aspect-ratio:16/9;margin-bottom:20px;max-width:560px;}

/* 代理工厂列表缩略图 */
.prow--media{grid-template-columns:auto 168px minmax(0,1.35fr) minmax(0,1fr) auto;}
.ph--thumb{width:168px;aspect-ratio:4/3;}

@media (max-width:1000px){
  .prow--media{grid-template-columns:auto 132px 1fr auto;}
  .prow--media .ph--thumb{width:132px;}
  .prow--media .prow-meta{grid-column:3;}
}
@media (max-width:760px){
  .ph-row,.ph-strip{grid-template-columns:1fr;}
  .ph-row .ph{height:auto;aspect-ratio:16/10;}
}
@media (max-width:620px){
  .prow--media{grid-template-columns:1fr auto;}
  .prow--media .ph--thumb{grid-column:1 / -1;width:100%;aspect-ratio:16/9;}
  .prow--media .prow-meta{grid-column:1 / -1;}
}
@media (prefers-reduced-motion:reduce){.ph img{transition:none;} a:hover .ph img,.ph:hover img{transform:none;}}
