/* =========================================================================
   鑫柯商城 · 全站样式（2026-10-15 整套重做）
   设计语言：商城化信息密集布局 —— 深炭头部 + 朱砂红主色 + 米白底
   骨架：公告条 / 头部搜索 / 分类导航 / 内容区 / 深色页脚 / 右侧浮条
   ========================================================================= */

:root{
  --red:#c4362b;      --red-d:#a52a20;   --red-l:#fdf2f0;
  --ink:#191c21;      --ink-2:#23272e;  --ink-3:#31363e;
  --gold:#b8842c;     --gold-l:#fdf8ee;
  --ok:#1f8a55;
  --bg:#f3f4f6;       --sand:#faf7f2;   --w:#fff;
  --t1:#16191d;       --t2:#4b5259;     --t3:#878e96;
  --line:#e4e7ea;     --line-2:#d2d7dc;
  --mono: ui-monospace, SFMono-Regular, Menlo, Consolas, "Courier New", monospace;
  --r:6px;
  --sh:0 1px 2px rgba(20,24,30,.05);
  --sh-h:0 8px 22px rgba(20,24,30,.10);
  --wrap:1240px;
}

*,*::before,*::after{ box-sizing:border-box; }
html{ -webkit-text-size-adjust:100%; }
body{
  margin:0; background:var(--bg); color:var(--t1);
  font:14px/1.7 -apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Hiragino Sans GB",
       "Microsoft YaHei","Source Han Sans SC",sans-serif;
}
img{ max-width:100%; height:auto; display:block; }
a{ color:inherit; text-decoration:none; }
a:hover{ color:var(--red); }
h1,h2,h3,h4,h5{ margin:0; font-weight:700; line-height:1.35; letter-spacing:-.01em; }
p{ margin:0 0 10px; }
ul,ol,dl,dd,dt{ margin:0; padding:0; list-style:none; }
table{ border-collapse:collapse; width:100%; }
button,input,select,textarea{ font:inherit; color:inherit; }
code{ font-family:var(--mono); font-size:.92em; background:#eef0f2; padding:1px 5px; border-radius:3px; }
:focus-visible{ outline:2px solid var(--red); outline-offset:2px; }
.wrap{ max-width:var(--wrap); margin:0 auto; padding:0 20px; }
/* 网格 / 弹性子项默认 min-width:auto，会被宽表格撑破容器，这里统一压回 */
.wrap > *,.cols-2 > *,.cols-2b > *,.detail-main,.detail-side,.stack,.card,.entity-card,.side-card,
.main,.hmain,.glay > *,.slay > *,.ind-grid > *,.ind-block-bd > *,.case-grid > *,.contact-grid > *,
.news-cards > *,.flow7 > *,.trust-in > *,.adm-stat > *,.cash-foot > *{ min-width:0; }
.prose p,.td-scope,.adm-addr,.adm-note,.side-list li,.check-list li,.kv-list li{ overflow-wrap:break-word; }
.muted{ color:var(--t3); }
.lnk{ color:var(--red); border-bottom:1px solid rgba(196,54,43,.35); }
.lnk:hover{ color:var(--red-d); border-color:var(--red-d); }
.req{ color:var(--red); font-style:normal; }

/* ============================ 顶部公告条 ============================ */
.topbar{ background:var(--ink); color:#c8ced6; font-size:12px; }
.topbar-in{ display:flex; align-items:center; justify-content:space-between; gap:16px; height:36px; }
.topbar-news{ display:flex; align-items:center; gap:10px; min-width:0; }
.topbar-tag{ flex:none; background:var(--red); color:#fff; padding:1px 7px; border-radius:3px; font-size:11px; }
.topbar-roll{ min-width:0; overflow:hidden; white-space:nowrap; text-overflow:ellipsis; }
.topbar-roll span{ margin-right:22px; }
.topbar-roll span::before{ content:"·"; color:var(--gold); margin-right:6px; }
.topbar-r{ display:flex; align-items:center; gap:16px; flex:none; }
.topbar-r a{ color:#e6eaee; }
.topbar-r a:hover{ color:#fff; }
.dot-live{ display:inline-flex; align-items:center; gap:6px; color:#9fa8b2; }
.dot-live i{ width:6px; height:6px; border-radius:50%; background:#4ade80; box-shadow:0 0 0 3px rgba(74,222,128,.18); }

/* ============================ 头部 ============================ */
.hd{ background:var(--w); border-bottom:1px solid var(--line); }
.hd-in{ display:flex; align-items:center; gap:26px; padding:16px 20px; }
.logo{ display:flex; align-items:center; gap:11px; flex:none; }
.logo-mark{ flex:none; border-radius:9px; }
.logo-tx{ display:flex; flex-direction:column; line-height:1.25; }
.logo-tx b{ font-size:22px; letter-spacing:.02em; }
.logo-tx b i{ font-style:normal; color:var(--red); }
.logo-tx em{ font-style:normal; font-size:11.5px; color:var(--t3); }

.search{ position:relative; flex:1 1 auto; max-width:560px; }
.search-in{
  width:100%; height:42px; padding:0 96px 0 14px; border:2px solid var(--red);
  border-radius:var(--r); background:#fff; font-size:14px;
}
.search-in::placeholder{ color:#9aa1a9; }
.search-btn{
  position:absolute; top:0; right:0; height:42px; width:86px; border:0; cursor:pointer;
  background:var(--red); color:#fff; font-weight:700; border-radius:0 calc(var(--r) - 2px) calc(var(--r) - 2px) 0;
}
.search-btn:hover{ background:var(--red-d); }
.search-hot{ margin-top:6px; font-size:12px; color:var(--t3); display:flex; flex-wrap:wrap; gap:10px; }
.search-hot a{ color:var(--t2); }
.search-hot a:hover{ color:var(--red); }
.search-wide{ max-width:none; margin-top:4px; }

.hd-aside{ display:flex; align-items:center; gap:16px; flex:none; }
.hd-tel{ text-align:right; line-height:1.3; }
.hd-tel span{ display:block; font-size:11.5px; color:var(--t3); }
.hd-tel b{ font-size:19px; color:var(--red); letter-spacing:.01em; }
.hd-sub{ display:flex; flex-direction:column; gap:4px; font-size:12.5px; }
.hd-sub a{ color:var(--t2); border-bottom:1px dashed var(--line-2); }
.hd-sub a:hover{ color:var(--red); }
.menu-btn{
  display:none; border:1px solid var(--line-2); background:#fff; border-radius:var(--r);
  padding:8px 14px; cursor:pointer;
}

/* ============================ 主导航 ============================ */
.nav{ background:var(--ink-2); color:#dfe4ea; position:sticky; top:0; z-index:40; box-shadow:var(--sh); }
.nav-in{ display:flex; align-items:center; gap:8px; height:44px; }
.nav-cats{ position:relative; flex:none; }
.nav-cats-btn{
  display:flex; align-items:center; gap:9px; height:44px; padding:0 20px 0 16px; border:0; cursor:pointer;
  background:var(--red); color:#fff; font-weight:700; font-size:14px;
}
.nav-cats-btn:hover{ background:var(--red-d); }
.burger{ display:inline-flex; flex-direction:column; gap:3px; }
.burger i{ display:block; width:14px; height:2px; background:#fff; }
.nav-cats-menu{
  display:none; position:absolute; top:100%; left:0; z-index:50; width:640px;
  background:#fff; color:var(--t1); border:1px solid var(--line-2); border-top:0;
  box-shadow:var(--sh-h); padding:16px; gap:22px;
}
.nav-cats-menu.open{ display:flex; }
.nav-cats:hover .nav-cats-menu{ display:flex; }
.ncm-col{ flex:1; min-width:0; }
.ncm-col h5{ font-size:12px; color:var(--t3); text-transform:uppercase; letter-spacing:.08em; margin-bottom:8px; display:flex; justify-content:space-between; }
.ncm-col h5 a{ color:var(--red); font-size:12px; letter-spacing:0; text-transform:none; }
.ncm-col a{ display:block; padding:7px 8px; border-radius:4px; }
.ncm-col a:hover{ background:var(--red-l); }
.ncm-col a b{ display:block; font-size:13.5px; }
.ncm-col a em{ font-style:normal; font-size:11.5px; color:var(--t3); }

.nav-links{ display:flex; align-items:center; gap:2px; flex:1 1 auto; min-width:0; overflow:hidden; }
.nav-links a{ padding:0 13px; height:44px; display:flex; align-items:center; font-size:14px; color:#dfe4ea; white-space:nowrap; }
.nav-links a:hover{ background:var(--ink-3); color:#fff; }
.nav-links a.on{ background:var(--red); color:#fff; font-weight:700; }
.nav-r{ flex:none; }
.nav-badge{ font-size:12px; color:var(--gold); border:1px solid rgba(184,132,44,.5); padding:2px 8px; border-radius:3px; }

/* ============================ 通用组件 ============================ */
.pg{ min-height:50vh; }
.crumb{ display:flex; gap:8px; align-items:center; font-size:12.5px; color:var(--t3); padding:14px 0 0; flex-wrap:wrap; }
.crumb b{ color:var(--line-2); font-weight:400; }
.crumb a:hover{ color:var(--red); }

.ph{ display:flex; align-items:flex-end; justify-content:space-between; gap:26px; padding:14px 0 18px; border-bottom:2px solid var(--ink); margin-bottom:20px; flex-wrap:wrap; }
.ph-tx{ max-width:760px; }
.ph-tx h1{ font-size:26px; margin-bottom:8px; }
.ph-tx p{ color:var(--t2); margin:0; }
.ph-facts{ display:flex; gap:26px; margin:0; flex-wrap:wrap; }
.ph-facts div{ min-width:96px; }
.ph-facts dt{ font-size:11.5px; color:var(--t3); }
.ph-facts dd{ margin:2px 0 0; font-weight:700; font-size:15px; }
.list-body{ padding-bottom:40px; }

.sec{ padding:36px 0; border-top:1px solid var(--line); }
.sec-alt{ background:var(--sand); }
.sec-dark{ background:var(--ink); color:#e8ecf0; }
.sec-cta{ background:var(--w); border-top:2px solid var(--ink); }
.sec-h{ display:flex; align-items:flex-end; justify-content:space-between; gap:20px; margin-bottom:20px; flex-wrap:wrap; }
.sec-h h2{ font-size:21px; position:relative; padding-left:14px; }
.sec-h h2::before{ content:""; position:absolute; left:0; top:3px; bottom:3px; width:4px; background:var(--red); border-radius:2px; }
.sec-h h2 em{ font-style:normal; font-size:13px; color:var(--t3); font-weight:400; margin-left:6px; }
.sec-h > span{ color:var(--t2); font-size:13px; flex:1 1 auto; }
.sec-h > a{ font-size:13px; color:var(--red); white-space:nowrap; }
.sec-h-in{ margin-bottom:12px; border-bottom:1px solid var(--line); padding-bottom:10px; }
.sec-h-dark h2{ color:#fff; }
.sec-h-dark > span{ color:#a7b0ba; }
.sec-h-dark > a{ color:#ffb4ac; }

.card{ background:#fff; border:1px solid var(--line); border-radius:var(--r); padding:20px; box-shadow:var(--sh); }
.card + .card{ margin-top:16px; }
.card-hd{ font-size:15px; margin:-20px -20px 16px; padding:13px 20px; background:#fafbfc; border-bottom:1px solid var(--line); border-radius:var(--r) var(--r) 0 0; display:flex; justify-content:space-between; align-items:center; gap:10px; }
.card-hd-tail{ font-size:12px; color:var(--t3); font-weight:400; }
.card-lead{ color:var(--t2); font-size:13px; }
.card-warn{ border-color:#f1d9ac; background:#fffdf7; }
.card-warn .card-hd{ background:#fdf6e6; border-bottom-color:#f1d9ac; }
.card-cta{ background:var(--ink); color:#e8ecf0; border:0; }
.card-cta h4{ font-size:17px; margin-bottom:8px; color:#fff; }
.card-cta p{ color:#a7b0ba; }
.note{ margin-top:18px; padding:14px 16px; background:#fafbfc; border-left:3px solid var(--red); border-radius:0 var(--r) var(--r) 0; font-size:13px; color:var(--t2); }
.note b{ color:var(--t1); }

.tag{ display:inline-flex; align-items:center; padding:2px 8px; border:1px solid var(--line-2); border-radius:3px; font-size:11.5px; color:var(--t2); background:#fff; }
.tag-red{ background:var(--red); border-color:var(--red); color:#fff; }
.tag-gold{ background:var(--gold-l); border-color:#e7cf9c; color:#8a6218; }
.tag-ok{ background:#eefaf3; border-color:#b6e3ca; color:var(--ok); }
.tag-dark{ background:var(--ink); border-color:var(--ink); color:#fff; }
.tag-link:hover{ border-color:var(--red); color:var(--red); }
.tag-row{ display:flex; flex-wrap:wrap; gap:8px; margin-top:10px; }

.btn{ display:inline-flex; align-items:center; justify-content:center; gap:6px; height:40px; padding:0 20px;
  border-radius:var(--r); border:1px solid transparent; cursor:pointer; font-weight:700; font-size:14px; white-space:nowrap; transition:.15s; }
.btn-red{ background:var(--red); color:#fff; }
.btn-red:hover{ background:var(--red-d); color:#fff; }
.btn-dark{ background:var(--ink); color:#fff; }
.btn-dark:hover{ background:var(--ink-3); color:#fff; }
.btn-line{ background:#fff; border-color:var(--line-2); color:var(--t1); }
.btn-line:hover{ border-color:var(--red); color:var(--red); }
.btn-sm{ height:32px; padding:0 12px; font-size:12.5px; }
.btn-lg{ height:48px; padding:0 26px; font-size:15px; }
.btn-blk{ display:flex; width:100%; }
.btn-row{ display:flex; gap:10px; flex-wrap:wrap; margin-top:14px; }
.btn-col{ display:flex; flex-direction:column; gap:8px; }

.table-wrap{ overflow-x:auto; background:#fff; border:1px solid var(--line); border-radius:var(--r); max-width:100%; }
.tb{ font-size:13px; min-width:520px; }
.tb caption{ text-align:left; padding:11px 14px; font-size:11.5px; letter-spacing:.06em; color:var(--t3);
  border-bottom:1px solid var(--line); background:#fafbfc; text-transform:uppercase; }
.tb thead th{ background:var(--ink); color:#fff; text-align:left; font-weight:700; padding:10px 14px; white-space:nowrap; font-size:12.5px; }
.tb th,.tb td{ padding:11px 14px; border-bottom:1px solid var(--line); vertical-align:top; }
.tb tbody tr:last-child td,.tb tbody tr:last-child th{ border-bottom:0; }
.tb tbody tr:hover{ background:#fbfbfc; }
.tb tbody th{ text-align:left; background:#fafbfc; width:180px; font-weight:600; color:var(--t2); }
.td-strong{ font-weight:700; }
.td-mono{ font-family:var(--mono); font-size:12px; }
.td-num{ font-family:var(--mono); color:var(--t3); }
.td-price{ color:var(--red); font-weight:700; font-family:var(--mono); font-size:13.5px; }
.td-cat{ white-space:nowrap; color:var(--t2); }
.td-scope{ color:var(--t2); min-width:280px; }
.td-stock{ white-space:nowrap; }
.td-act{ text-align:right; white-space:nowrap; }
.td-sku{ display:block; font-family:var(--mono); font-size:11.5px; color:var(--t3); }
.tb-price tbody tr:hover{ background:var(--red-l); }
.tb-spec tbody th{ width:220px; }

.prose p{ color:var(--t1); line-height:1.95; margin-bottom:14px; }
.prose p:last-child{ margin-bottom:0; }

.check-list li,.warn-list li,.kv-list li,.side-list li{ padding:9px 0; border-bottom:1px dashed var(--line); font-size:13px; }
.check-list li:last-child,.warn-list li:last-child,.kv-list li:last-child,.side-list li:last-child{ border-bottom:0; }
.check-list li::before{ content:"■"; color:var(--red); margin-right:8px; font-size:9px; }
.check-list li b,.kv-list li b{ display:block; font-size:13.5px; }
.check-list li span,.kv-list li span{ color:var(--t2); }
.warn-list li::before{ content:"!"; display:inline-block; width:15px; height:15px; line-height:15px; text-align:center;
  background:#fdf0dd; color:#8a6218; border-radius:50%; font-size:11px; margin-right:8px; font-weight:700; }
.warn-list li{ color:var(--t2); }
.link-list li{ padding:7px 0; border-bottom:1px dashed var(--line); }
.data-grid{ display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px 20px; }
.data-grid div{ border-bottom:1px dashed var(--line); padding-bottom:8px; }
.data-grid dt{ font-size:11.5px; color:var(--t3); }
.data-grid dd{ margin:2px 0 0; font-weight:600; font-size:13.5px; word-break:break-word; }
.fig-bare{ background:#fff; border:1px solid var(--line); border-radius:var(--r); overflow:hidden; }
.fig-bare img{ width:100%; }
.fig-bare p{ padding:12px 14px; margin:0; font-size:12.5px; color:var(--t3); border-top:1px solid var(--line); }
.stack{ display:flex; flex-direction:column; gap:16px; }
.cols-2{ display:grid; grid-template-columns:1.15fr .85fr; gap:20px; align-items:start; }
.cols-2b{ grid-template-columns:1fr 1fr; }
.cols-detail{ grid-template-columns:1fr 320px; }
.cols-order{ grid-template-columns:1fr 320px; }
.cols-case{ grid-template-columns:1fr 320px; }
.cols-legal{ grid-template-columns:1fr 300px; }
.case-main{ display:flex; flex-direction:column; gap:16px; }

/* 步骤条 */
.steps{ display:flex; gap:10px; margin:14px 0 -4px; flex-wrap:wrap; }
.step{ display:flex; align-items:center; gap:8px; padding:8px 14px; background:#fff; border:1px solid var(--line); border-radius:var(--r); font-size:13px; color:var(--t3); }
.step b{ width:20px; height:20px; line-height:20px; text-align:center; border-radius:50%; background:#eceff2; color:var(--t2); font-size:11.5px; }
.step.on{ border-color:var(--red); color:var(--t1); }
.step.on b{ background:var(--red); color:#fff; }

/* 筛选条 */
.filter{ display:flex; justify-content:space-between; gap:16px; align-items:center; flex-wrap:wrap;
  background:#fff; border:1px solid var(--line); border-radius:var(--r); padding:10px 14px; margin-bottom:18px; }
.filter-cats{ display:flex; gap:6px; flex-wrap:wrap; }
.filter-cats a{ padding:5px 11px; border-radius:4px; font-size:13px; color:var(--t2); }
.filter-cats a i{ font-style:normal; color:var(--t3); font-size:11.5px; }
.filter-cats a:hover{ background:var(--red-l); color:var(--red); }
.filter-cats a.on{ background:var(--red); color:#fff; font-weight:700; }
.filter-cats a.on i{ color:rgba(255,255,255,.75); }
.filter-sort{ display:flex; gap:12px; align-items:center; font-size:12.5px; color:var(--t3); }
.filter-sort a{ color:var(--t2); }
.filter-sort a.on{ color:var(--red); font-weight:700; }

/* FAQ */
.faq details{ border-bottom:1px solid var(--line); }
.faq details:last-child{ border-bottom:0; }
.faq summary{ display:flex; align-items:flex-start; gap:10px; padding:13px 2px; cursor:pointer; list-style:none; }
.faq summary::-webkit-details-marker{ display:none; }
.faq summary i{ flex:none; font-style:normal; font-family:var(--mono); font-size:11.5px; color:var(--red); border:1px solid rgba(196,54,43,.35); border-radius:3px; padding:0 5px; margin-top:3px; }
.faq summary span{ flex:1; font-weight:600; font-size:13.5px; }
.faq summary s{ flex:none; width:12px; height:12px; margin-top:7px; border-right:1.6px solid var(--t3); border-bottom:1.6px solid var(--t3); transform:rotate(45deg); }
.faq details[open] summary s{ transform:rotate(-135deg); }
.faq .a{ padding:0 0 15px 40px; color:var(--t2); font-size:13px; line-height:1.85; }
.faq-group + .faq-group{ margin-top:16px; }

/* 流程 */
.flow7{ display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:14px; }
.flow7 li{ background:#fff; border:1px solid var(--line); border-top:3px solid var(--red); border-radius:var(--r); padding:14px 16px; }
.flow7-n{ font-family:var(--mono); font-size:11px; color:var(--red); letter-spacing:.04em; }
.flow7 h4{ font-size:14px; margin:6px 0 6px; }
.flow7 p{ font-size:12.5px; color:var(--t2); margin:0; line-height:1.75; }
.sec-dark .flow7 li{ background:var(--ink-2); border-color:var(--ink-3); border-top-color:var(--gold); }
.sec-dark .flow7 h4{ color:#fff; }
.sec-dark .flow7 p{ color:#a7b0ba; }
.sec-dark .flow7-n{ color:var(--gold); }
.flow7-light li{ background:#fbfbfc; }

/* CTA 带 */
.cta{ display:flex; align-items:center; justify-content:space-between; gap:24px; flex-wrap:wrap; }
.cta h2{ font-size:21px; margin-bottom:6px; }
.cta p{ color:var(--t2); margin:0; }
.cta-btn{ display:flex; gap:10px; flex-wrap:wrap; }

/* 错误提示 */
.errs{ list-style:none; margin:0 0 18px; padding:14px 16px; background:#fef2f2; border:1px solid #f4c7c3; border-radius:var(--r); color:#9a2b22; font-size:13px; }
.errs li + li{ margin-top:5px; }
.errs li::before{ content:"×"; margin-right:8px; font-weight:700; }

/* ============================ 首页：首屏 ============================ */
.hero{ background:var(--w); padding-top:18px; border-bottom:1px solid var(--line); }
.hero-in{ display:grid; grid-template-columns:212px 1fr 262px; gap:16px; align-items:start; }
.hcats{ background:#fff; border:1px solid var(--line); border-radius:var(--r); padding:12px 0 8px; box-shadow:var(--sh); }
.hcats h5{ padding:0 16px 10px; font-size:14px; border-bottom:1px solid var(--line); }
.hcats-g{ padding:8px 0; border-bottom:1px dashed var(--line); }
.hcats-t{ display:block; padding:0 16px 4px; font-size:11px; color:var(--t3); letter-spacing:.08em; }
.hcats-g a{ display:flex; justify-content:space-between; padding:6px 16px; font-size:13px; color:var(--t1); }
.hcats-g a:hover{ background:var(--red-l); color:var(--red); }
.hcats-g a i{ font-style:normal; color:var(--t3); font-size:11.5px; }
.hcats-all{ display:block; padding:9px 16px 4px; font-size:12.5px; color:var(--red); }

.hmain{ min-width:0; }
.hfeat{ height:100%; display:grid; grid-template-columns:1.25fr 1fr; background:linear-gradient(135deg,#fff 45%,var(--red-l) 100%);
  border:1px solid var(--line); border-radius:var(--r); overflow:hidden; box-shadow:var(--sh); }
.hfeat-tx{ padding:24px; min-width:0; }
.hfeat h1{ font-size:27px; margin:12px 0 10px; }
.hfeat-tx > p{ color:var(--t2); font-size:13.5px; line-height:1.85; }
.hfeat-keys{ display:grid; grid-template-columns:1fr 1fr; gap:8px 16px; margin:14px 0 18px; }
.hfeat-keys li{ font-size:12px; color:var(--t3); }
.hfeat-keys b{ color:var(--t1); font-size:14px; margin-right:6px; }
.hfeat-buy{ display:flex; align-items:flex-end; gap:12px; flex-wrap:wrap; }
.hfeat-price b{ font-family:var(--mono); font-size:32px; color:var(--red); line-height:1; }
.hfeat-price b s{ font-size:15px; text-decoration:none; margin-right:2px; }
.hfeat-price del{ color:var(--t3); font-size:12.5px; margin-left:6px; font-family:var(--mono); }
.hfeat-price em{ display:block; font-style:normal; font-size:11.5px; color:var(--t3); margin-top:5px; }
.hfeat-tags{ display:flex; gap:8px; flex-wrap:wrap; margin-top:16px; }
.hfeat-img{ background:var(--ink); display:flex; align-items:center; justify-content:center; }
.hfeat-img img{ width:100%; height:100%; object-fit:cover; }

.hside{ display:flex; flex-direction:column; gap:16px; }
.hside-card{ background:#fff; border:1px solid var(--line); border-radius:var(--r); padding:16px; box-shadow:var(--sh); }
.hside-card h5{ font-size:13px; padding-bottom:10px; border-bottom:1px solid var(--line); margin-bottom:10px; }
.hside-kv div{ display:flex; justify-content:space-between; padding:5px 0; font-size:12.5px; }
.hside-kv dt{ color:var(--t3); }
.hside-kv dd{ font-weight:700; }
.hside-serv b{ display:block; font-size:20px; color:var(--red); font-family:var(--mono); }
.hside-serv p{ font-size:12px; color:var(--t2); margin:6px 0 0; }
.hside-line{ color:var(--t3) !important; }
.hside-btns{ display:flex; gap:8px; margin-top:12px; }

.trust{ background:var(--sand); border-top:1px solid var(--line); margin-top:18px; }
.trust-in{ display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:20px; padding:16px 20px; }
.trust-i b{ display:block; font-size:13.5px; margin-bottom:4px; }
.trust-i b::before{ content:""; display:inline-block; width:6px; height:6px; background:var(--red); border-radius:50%; margin-right:8px; vertical-align:middle; }
.trust-i span{ font-size:12px; color:var(--t3); line-height:1.7; display:block; }

/* ============================ 商品卡 ============================ */
.glay{ display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; }
.glay-4{ grid-template-columns:repeat(4,minmax(0,1fr)); }
.gcard{ display:flex; flex-direction:column; background:#fff; border:1px solid var(--line); border-radius:var(--r); overflow:hidden; box-shadow:var(--sh); transition:.16s; }
.gcard:hover{ box-shadow:var(--sh-h); transform:translateY(-2px); border-color:var(--line-2); }
.gcard-img{ position:relative; background:var(--ink); aspect-ratio:4/3; overflow:hidden; }
.gcard-img img{ width:100%; height:100%; object-fit:cover; }
.gcard-badge{ position:absolute; left:0; top:10px; background:var(--red); color:#fff; font-size:11.5px; padding:2px 9px; border-radius:0 3px 3px 0; font-weight:700; }
.gcard-badge.new{ background:var(--gold); }
.gcard-badge.svc{ background:var(--gold); }
.gcard-stock{ position:absolute; right:8px; bottom:8px; background:rgba(15,18,22,.72); color:#fff; font-size:11.5px; padding:2px 8px; border-radius:3px; }
.gcard-bd{ padding:14px 15px 12px; display:flex; flex-direction:column; flex:1; }
.gcard-cat{ font-family:var(--mono); font-size:11px; color:var(--t3); }
.gcard h3{ font-size:15px; margin:5px 0 6px; line-height:1.5; }
.gcard-sub{ font-size:12.5px; color:var(--t3); margin:0 0 10px; line-height:1.7; }
.gcard-keys{ margin-bottom:10px; }
.gcard-keys li{ display:flex; justify-content:space-between; gap:10px; font-size:12px; padding:3px 0; border-bottom:1px dashed var(--line); }
.gcard-keys span{ color:var(--t3); flex:none; }
.gcard-keys b{ font-weight:600; text-align:right; }
.gcard-price{ margin-top:auto; display:flex; align-items:baseline; gap:6px; }
.gcard-price b{ font-family:var(--mono); font-size:23px; color:var(--red); line-height:1.1; }
.gcard-price b s{ font-size:13px; text-decoration:none; }
.gcard-price del{ color:var(--t3); font-size:12px; font-family:var(--mono); }
.gcard-price em{ font-style:normal; font-size:11.5px; color:var(--t3); }
.gcard-foot{ display:flex; justify-content:space-between; align-items:center; margin-top:10px; padding-top:9px; border-top:1px solid var(--line); font-size:11.5px; color:var(--t3); }
.gcard-go{ color:var(--red); font-weight:700; }

/* 服务卡 */
.slay{ display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; }
.slay-3{ grid-template-columns:repeat(3,minmax(0,1fr)); }
.scard{ display:flex; flex-direction:column; background:#fff; border:1px solid var(--line); border-top:3px solid var(--gold); border-radius:var(--r); padding:16px; box-shadow:var(--sh); transition:.16s; }
.scard:hover{ box-shadow:var(--sh-h); transform:translateY(-2px); }
.scard-top{ display:flex; justify-content:space-between; align-items:center; gap:10px; }
.scard-period{ font-size:11.5px; color:var(--t3); font-family:var(--mono); }
.scard h3{ font-size:15.5px; margin:10px 0 7px; }
.scard > p{ font-size:12.5px; color:var(--t3); line-height:1.75; margin:0 0 12px; }
.scard-list{ margin-bottom:12px; }
.scard-list li{ font-size:12.5px; color:var(--t2); padding:4px 0 4px 16px; position:relative; }
.scard-list li::before{ content:""; position:absolute; left:0; top:12px; width:5px; height:5px; background:var(--gold); border-radius:50%; }
.scard-meta{ border-top:1px dashed var(--line); padding-top:10px; margin-bottom:8px; }
.scard-meta div{ display:flex; justify-content:space-between; gap:14px; font-size:12px; padding:2px 0; }
.scard-meta dt{ color:var(--t3); flex:none; }
.scard-meta dd{ text-align:right; }
.scard-foot{ display:flex; justify-content:space-between; align-items:flex-end; margin-top:auto; padding-top:11px; border-top:1px solid var(--line); }

/* 行业方案 */
.ind-grid{ display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; }
.ind-card{ background:#fff; border:1px solid var(--line); border-radius:var(--r); padding:16px; box-shadow:var(--sh); }
.ind-hd{ display:flex; justify-content:space-between; align-items:center; gap:10px; padding-bottom:10px; border-bottom:1px solid var(--line); }
.ind-hd h3{ font-size:15.5px; }
.ind-dl{ margin:12px 0; }
.ind-dl div{ margin-bottom:10px; }
.ind-dl dt{ font-size:11.5px; color:var(--gold); font-weight:700; }
.ind-dl dd{ font-size:12.5px; color:var(--t2); line-height:1.75; margin-top:3px; }
.ind-foot{ display:flex; justify-content:space-between; align-items:center; padding-top:10px; border-top:1px dashed var(--line); font-size:12px; color:var(--t3); }
.ind-foot a{ color:var(--red); font-weight:700; }

.ind-full{ display:flex; flex-direction:column; gap:18px; }
.ind-block{ background:#fff; border:1px solid var(--line); border-radius:var(--r); box-shadow:var(--sh); overflow:hidden; }
.ind-block-hd{ display:flex; justify-content:space-between; align-items:center; gap:20px; padding:16px 20px; background:#fafbfc; border-bottom:1px solid var(--line); flex-wrap:wrap; }
.ind-block-hd h2{ font-size:18px; display:inline-block; margin-right:10px; }
.ind-block-hd p{ margin:0; font-size:12.5px; color:var(--t2); }
.ind-block-bd{ display:grid; grid-template-columns:1fr 300px; gap:24px; padding:20px; }
.ind-detail div{ padding:9px 0; border-bottom:1px dashed var(--line); }
.ind-detail dt{ font-size:11.5px; color:var(--t3); }
.ind-detail dd{ font-size:13px; color:var(--t1); line-height:1.8; margin-top:3px; }
.ind-picks{ background:var(--sand); border:1px solid #efe6d8; border-radius:var(--r); padding:14px; }
.ind-picks h5{ font-size:12.5px; margin-bottom:10px; color:var(--t3); }
.ind-pick{ display:flex; align-items:center; gap:8px; padding:8px 0; border-bottom:1px dashed #e8dccb; font-size:12.5px; }
.ind-pick b{ flex:1; font-weight:600; }
.ind-pick em{ font-style:normal; color:var(--red); font-family:var(--mono); font-size:12.5px; }
.ind-picks .btn{ margin-top:12px; }

/* 案例 */
.case-grid{ display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
.case-card{ display:grid; grid-template-columns:180px 1fr; background:#fff; border:1px solid var(--line); border-radius:var(--r); overflow:hidden; box-shadow:var(--sh); transition:.16s; }
.case-card:hover{ box-shadow:var(--sh-h); transform:translateY(-2px); }
.case-card img{ width:100%; height:100%; object-fit:cover; }
.case-bd{ padding:14px 16px; }
.case-meta{ font-size:11.5px; color:var(--t3); }
.case-bd h3{ font-size:15px; margin:6px 0 8px; line-height:1.5; }
.case-bd > p{ font-size:12.5px; color:var(--t2); line-height:1.75; margin:0 0 10px; }
.case-metrics{ display:flex; gap:18px; flex-wrap:wrap; padding-top:10px; border-top:1px dashed var(--line); }
.case-metrics b{ display:block; font-size:16px; color:var(--red); font-family:var(--mono); }
.case-metrics span{ font-size:11.5px; color:var(--t3); }
.case-metrics-col{ display:block; }
.case-metrics-col div{ padding:8px 0; border-bottom:1px dashed var(--line); }
.case-metrics-col dt{ font-size:11.5px; color:var(--t3); }
.case-metrics-col dd{ font-size:19px; font-weight:700; color:var(--red); font-family:var(--mono); margin:2px 0 0; }
.case-scope{ margin-top:10px; font-size:11.5px; color:var(--t3); }

/* 动态与问答 */
.news-list a{ display:flex; align-items:center; gap:12px; padding:11px 0; border-bottom:1px dashed var(--line); font-size:13px; }
.news-list time{ flex:none; font-family:var(--mono); font-size:12px; color:var(--t3); }
.news-list b{ flex:1; font-weight:600; }
.news-list a:hover b{ color:var(--red); }
.news-cards{ display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
.news-card{ background:#fff; border:1px solid var(--line); border-radius:var(--r); padding:18px; box-shadow:var(--sh); }
.news-card:hover{ box-shadow:var(--sh-h); }
.news-card-top{ display:flex; align-items:center; gap:8px; font-size:11.5px; color:var(--t3); font-family:var(--mono); }
.news-card h3{ font-size:15.5px; margin:9px 0 8px; }
.news-card p{ font-size:12.5px; color:var(--t2); line-height:1.75; }
.news-more{ font-size:12.5px; color:var(--red); font-weight:700; }
.news-nav{ display:flex; justify-content:space-between; gap:16px; margin-top:18px; padding-top:14px; border-top:1px solid var(--line); font-size:13px; flex-wrap:wrap; }

/* 主体信息 */
.entity{ display:grid; grid-template-columns:1.1fr .9fr; gap:16px; }
.entity-card{ background:#fff; border:1px solid var(--line); border-radius:var(--r); padding:20px; box-shadow:var(--sh); }

/* 里程碑 */
.mile{ display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0 26px; }
.mile li{ padding:12px 0 12px 18px; border-left:2px solid var(--line); position:relative; }
.mile li::before{ content:""; position:absolute; left:-6px; top:19px; width:10px; height:10px; border-radius:50%; background:#fff; border:2px solid var(--red); }
.mile time{ font-family:var(--mono); font-size:11.5px; color:var(--red); }
.mile b{ display:block; font-size:14px; margin:3px 0 4px; }
.mile p{ font-size:12.5px; color:var(--t2); margin:0; line-height:1.75; }

/* 联系 */
.contact-grid{ display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; }
.contact-card{ background:#fff; border:1px solid var(--line); border-top:3px solid var(--red); border-radius:var(--r); padding:18px; box-shadow:var(--sh); }
.contact-card h4{ font-size:12.5px; color:var(--t3); font-weight:600; }
.contact-card b{ display:block; font-size:19px; margin:7px 0 6px; font-family:var(--mono); word-break:break-all; }
.contact-card p{ font-size:12.5px; color:var(--t2); margin:0; }
.contact-addr{ font-size:13.5px !important; font-family:inherit !important; line-height:1.7; }
.contact-price{ color:var(--red); }

/* 法律页 */
.legal-sec{ padding-bottom:20px; margin-bottom:20px; border-bottom:1px solid var(--line); }
.legal-sec:last-child{ border-bottom:0; margin-bottom:0; padding-bottom:0; }
.legal-sec h3{ font-size:15px; margin-bottom:9px; color:var(--t1); }
.legal-sec p{ font-size:13.5px; line-height:1.95; color:var(--t2); margin:0; }
.side-list-link a{ color:var(--t2); }
.side-list-link a:hover{ color:var(--red); }

/* ============================ 商品详情 ============================ */
.buy{ display:grid; grid-template-columns:1fr 452px; gap:26px; background:#fff; border:1px solid var(--line); border-radius:var(--r); padding:22px; margin-top:16px; box-shadow:var(--sh); }
.buy-img-main{ position:relative; background:var(--ink); border-radius:var(--r); overflow:hidden; aspect-ratio:4/3; }
.buy-img-main img{ width:100%; height:100%; object-fit:cover; }
.buy-img-tag{ position:absolute; left:12px; top:12px; background:rgba(196,54,43,.94); color:#fff; font-size:12px; padding:3px 10px; border-radius:3px; }
.buy-img-keys{ display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1px; background:var(--line); border:1px solid var(--line); border-radius:var(--r); margin-top:12px; overflow:hidden; }
.buy-img-keys div{ background:#fff; padding:10px 12px; }
.buy-img-keys span{ display:block; font-size:11.5px; color:var(--t3); }
.buy-img-keys b{ font-size:13px; }
.buy-cat{ display:flex; gap:8px; flex-wrap:wrap; margin-bottom:12px; }
.buy-box h1{ font-size:24px; margin-bottom:8px; }
.buy-sub{ font-size:13.5px; color:var(--t2); line-height:1.8; }
.buy-price{ display:flex; align-items:flex-end; justify-content:space-between; gap:16px; background:var(--red-l); border:1px solid #f4d5d1; border-radius:var(--r); padding:14px 16px; margin:14px 0; flex-wrap:wrap; }
.buy-price-now span{ display:block; font-size:11.5px; color:var(--t3); }
.buy-price-now b{ font-family:var(--mono); font-size:34px; color:var(--red); line-height:1.1; }
.buy-price-now b s{ font-size:15px; text-decoration:none; }
.buy-price-now em{ font-style:normal; font-size:13px; color:var(--t2); }
.buy-price-old{ text-align:right; font-size:12px; color:var(--t3); }
.buy-price-old span{ display:block; }
.buy-facts{ display:grid; grid-template-columns:1fr 1fr; gap:10px 18px; margin-bottom:16px; }
.buy-facts-mini{ grid-template-columns:1fr; gap:0; }
.buy-facts-mini div{ display:flex; justify-content:space-between; padding:6px 0; border-bottom:1px dashed var(--line); }
.buy-facts-mini dd{ text-align:right; }
.buy-facts dt{ font-size:11.5px; color:var(--t3); }
.buy-facts dd{ font-size:13px; font-weight:600; line-height:1.6; }
.buy-qty{ border-top:1px dashed var(--line); padding-top:14px; }
.buy-qty > span{ font-size:12px; color:var(--t3); }
.qty-row{ display:flex; gap:8px; margin:8px 0 6px; flex-wrap:wrap; }
.qty-i{ padding:6px 14px; border:1px solid var(--line-2); border-radius:4px; font-size:13px; background:#fff; }
.qty-i:hover{ border-color:var(--red); color:var(--red); }
.qty-i.on{ border-color:var(--red); background:var(--red-l); color:var(--red); font-weight:700; }
.buy-hint{ font-size:11.5px; color:var(--t3); margin:0; }
.buy-btns{ display:flex; gap:12px; margin:16px 0 12px; flex-wrap:wrap; }
.buy-tags{ display:flex; gap:8px; flex-wrap:wrap; padding:12px 0; border-top:1px dashed var(--line); }
.buy-note{ font-size:12.5px; color:var(--t2); background:#fafbfc; border-left:3px solid var(--gold); padding:10px 12px; border-radius:0 4px 4px 0; }
.buy-shop{ margin-top:14px; display:grid; gap:7px; font-size:12.5px; }
.buy-shop div{ display:flex; gap:10px; }
.buy-shop span{ flex:none; color:var(--t3); width:76px; }
.buy-shop b{ font-weight:600; }

.detail-main{ display:flex; flex-direction:column; gap:16px; }
.detail-side{ display:flex; flex-direction:column; gap:16px; position:sticky; top:60px; }
.side-card{ background:#fff; border:1px solid var(--line); border-radius:var(--r); padding:16px; box-shadow:var(--sh); }
.side-card h4{ font-size:13.5px; padding-bottom:9px; border-bottom:1px solid var(--line); margin-bottom:10px; }
.side-buy{ border-top:3px solid var(--red); }
.side-price b{ font-family:var(--mono); font-size:28px; color:var(--red); }
.side-price b s{ font-size:14px; text-decoration:none; }
.side-price span{ display:block; font-size:11.5px; color:var(--t3); margin-bottom:12px; }
.side-hint{ font-size:11.5px; color:var(--t3); margin:9px 0 0; text-align:center; }
.side-list li{ font-size:12.5px; }
.side-item{ display:block; padding:9px 0; border-bottom:1px dashed var(--line); }
.side-item b{ display:block; font-size:13px; font-weight:600; }
.side-item span{ font-size:11.5px; color:var(--t3); }
.side-help p{ font-size:12.5px; color:var(--t2); }
.side-tel{ display:block; font-family:var(--mono); font-size:18px; color:var(--red); margin:8px 0 12px; }
.side-card .btn + .btn{ margin-top:8px; }

/* ============================ 下单页 ============================ */
.order-form .card-hd{ justify-content:flex-start; }
.order-item{ display:grid; grid-template-columns:120px 1fr auto; gap:16px; align-items:center; padding:12px; background:#fafbfc; border:1px solid var(--line); border-radius:var(--r); margin-bottom:22px; }
.order-item img{ width:120px; height:90px; object-fit:cover; border-radius:4px; }
.order-item-tx b{ display:block; font-size:14.5px; }
.order-item-tx span{ display:block; font-size:12.5px; color:var(--t2); }
.order-item-price{ text-align:right; }
.order-item-price b{ display:block; font-family:var(--mono); font-size:20px; color:var(--red); }
.order-item-price span{ font-size:11.5px; color:var(--t3); }
.form-row{ display:grid; grid-template-columns:1fr 1fr; gap:16px; margin-bottom:14px; }
.fld label{ display:block; font-size:12.5px; color:var(--t2); margin-bottom:6px; }
.fld input,.fld select,.fld textarea{ width:100%; height:40px; padding:0 12px; border:1px solid var(--line-2); border-radius:4px; background:#fff; }
.fld textarea{ height:88px; padding:10px 12px; resize:vertical; line-height:1.7; }
.fld input:focus,.fld select:focus,.fld textarea:focus{ border-color:var(--red); outline:0; box-shadow:0 0 0 3px rgba(196,54,43,.10); }
.fld-hint{ font-size:11.5px; color:var(--t3); margin:6px 0 0; }
.order-total{ display:flex; align-items:center; justify-content:space-between; gap:20px; margin-top:22px; padding:16px; background:var(--red-l); border:1px solid #f4d5d1; border-radius:var(--r); flex-wrap:wrap; }
.order-total-tx span{ display:block; font-size:12px; color:var(--t2); }
.order-total-tx b{ font-family:var(--mono); font-size:30px; color:var(--red); line-height:1.2; }
.order-total-tx b s{ font-size:14px; text-decoration:none; }
.order-total-tx b em{ font-style:normal; }

/* ============================ 后台 ============================ */
.adm-hd{ display:flex; align-items:center; gap:14px; padding:22px 0 16px; flex-wrap:wrap; }
.adm-hd h1{ font-size:22px; }
.adm-hd .btn{ margin-left:auto; }
.adm-stat{ display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:14px; margin-bottom:18px; }
.adm-stat div{ background:#fff; border:1px solid var(--line); border-left:3px solid var(--red); border-radius:var(--r); padding:14px 16px; box-shadow:var(--sh); }
.adm-stat b{ display:block; font-family:var(--mono); font-size:22px; }
.adm-stat span{ font-size:12px; color:var(--t3); }
.adm-tb{ min-width:1080px; }
.adm-addr{ max-width:220px; }
.adm-note{ max-width:210px; font-size:12.5px; }
.st-new{ color:#8a6218; font-weight:700; }
.st-paid{ color:var(--ok); font-weight:700; }
.st-x{ color:var(--t3); }

/* ============================ 收银台 ============================ */
.cash-body{ background:var(--bg); }
.cash-top{ background:var(--ink); color:#dfe4ea; }
.cash-top-in{ max-width:960px; margin:0 auto; padding:14px 20px; display:flex; align-items:center; gap:12px; flex-wrap:wrap; }
.cash-top-in b{ font-size:15px; color:#fff; }
.cash-top-in span{ font-size:12.5px; color:#a7b0ba; }
.cash-top-in em{ font-style:normal; margin-left:auto; font-size:12px; color:var(--gold); }
.cash-wrap{ max-width:960px; margin:0 auto; padding:22px 20px 60px; }
.cash-card{ background:#fff; border:1px solid var(--line); border-radius:var(--r); border-top:4px solid var(--red); box-shadow:var(--sh-h); padding:26px; }
.cash-status{ display:flex; gap:10px; flex-wrap:wrap; }
.cash-amount{ margin:16px 0 20px; padding-bottom:18px; border-bottom:1px solid var(--line); }
.cash-amount span{ font-size:12.5px; color:var(--t3); }
.cash-amount b{ display:block; font-family:var(--mono); font-size:40px; color:var(--red); line-height:1.15; }
.cash-amount b s{ font-size:18px; text-decoration:none; }
.cash-amount em{ font-style:normal; font-size:12px; color:var(--t3); }
.cash-table h4,.cash-sub{ font-size:14px; padding-bottom:9px; border-bottom:1px solid var(--line); margin-bottom:10px; }
.cash-sub{ margin-top:24px; }
.cash-row{ display:flex; gap:18px; padding:9px 0; border-bottom:1px dashed var(--line); font-size:13px; }
.cash-row span{ flex:none; width:130px; color:var(--t3); }
.cash-row b{ font-weight:600; word-break:break-word; }
.cash-strong{ color:var(--red); font-family:var(--mono); font-size:15px; }
.cash-pays{ display:flex; flex-direction:column; gap:10px; }
.cash-pay{ display:flex; align-items:center; gap:14px; border:1px solid var(--line-2); border-radius:var(--r); padding:14px 16px; cursor:pointer; }
.cash-pay input{ accent-color:var(--red); }
.cash-pay.on{ border-color:var(--red); background:var(--red-l); }
.cash-pay.dis{ opacity:.6; cursor:not-allowed; }
.cash-pay-ico{ flex:none; width:38px; height:38px; display:flex; align-items:center; justify-content:center; background:#f2f4f6; border-radius:6px; font-size:12px; font-weight:700; color:var(--t2); }
.cash-pay-tx{ flex:1; min-width:0; }
.cash-pay-tx b{ display:block; font-size:14.5px; }
.cash-pay-tx i{ font-style:normal; font-size:12px; color:var(--t3); }
.cash-pay-go{ font-size:12.5px; color:var(--red); font-weight:700; }
.cash-pay.dis .cash-pay-go{ color:var(--t3); }
.cash-act{ margin-top:20px; }
.cash-tip{ font-size:12.5px; color:var(--t2); margin:10px 0 0; line-height:1.8; }
.cash-foot{ margin-top:24px; padding-top:18px; border-top:1px solid var(--line); display:grid; grid-template-columns:1fr 1fr; gap:10px 24px; }
.cash-foot div{ display:flex; gap:10px; font-size:12.5px; }
.cash-foot span{ flex:none; width:120px; color:var(--t3); }
.cash-foot b{ font-weight:600; word-break:break-word; }
.cash-foot p{ grid-column:1/-1; margin:8px 0 0; font-size:12px; color:var(--t3); line-height:1.8; }

/* ============================ 页脚 ============================ */
.ft{ background:var(--ink); color:#9fa8b2; margin-top:40px; }
.ft-top{ display:grid; grid-template-columns:1.5fr 1fr 1fr .9fr .9fr; gap:26px; padding:34px 20px 26px; }
.ft-logo{ display:flex; align-items:center; gap:10px; margin-bottom:12px; }
.ft-logo b{ color:#fff; font-size:14.5px; line-height:1.5; }
.ft-brand p{ font-size:12.5px; line-height:1.85; margin:0 0 14px; }
.ft-meta div{ display:flex; gap:10px; font-size:12px; padding:3px 0; }
.ft-meta dt{ flex:none; width:104px; color:#6f7883; }
.ft-meta dd{ margin:0; color:#c8ced6; }
.ft-col h4{ font-size:13px; color:#fff; margin-bottom:12px; padding-bottom:8px; border-bottom:1px solid var(--ink-3); }
.ft-col a{ display:block; font-size:12.5px; line-height:1.6; padding:4px 0; color:#a8b1bb; }
.ft-col a s{ text-decoration:none; color:var(--gold); font-family:var(--mono); font-size:11.5px; margin-left:4px; }
.ft-col a:hover{ color:#fff; }
.ft-hours{ font-size:12px; color:#6f7883; margin:10px 0 0; }
.ft-lic{ display:flex; flex-wrap:wrap; gap:8px 26px; padding:16px 0; border-top:1px solid var(--ink-3); font-size:12.5px; }
.ft-lic b{ color:#6f7883; font-weight:400; }
.ft-btm{ display:flex; justify-content:space-between; gap:16px; padding:14px 0 26px; border-top:1px solid var(--ink-3); font-size:12px; flex-wrap:wrap; }
.ft-btm a{ color:var(--gold); }

/* ============================ 右侧浮动条 ============================ */
.fxbar{ position:fixed; right:14px; bottom:26px; z-index:60; display:flex; flex-direction:column; gap:8px; }
.fxbar a,.fx-top{ display:flex; flex-direction:column; align-items:center; justify-content:center; gap:2px;
  width:76px; padding:9px 4px; background:#fff; border:1px solid var(--line-2); border-radius:var(--r);
  box-shadow:var(--sh); font-size:11px; color:var(--t2); cursor:pointer; text-align:center; }
.fxbar a:hover{ border-color:var(--red); color:var(--red); }
.fxbar a span{ font-size:11px; color:var(--t3); }
.fxbar a b{ font-size:11.5px; line-height:1.35; }
.fx-tel{ background:var(--red) !important; border-color:var(--red) !important; color:#fff !important; }
.fx-tel span{ color:rgba(255,255,255,.8) !important; }
.fx-top{ font-size:16px; height:auto; display:none; }
.fx-top.on{ display:flex; }

/* ============================ 404 ============================ */
.nf{ padding:70px 0 90px; text-align:center; }
.nf-code{ font-family:var(--mono); font-size:64px; color:var(--red); line-height:1; letter-spacing:-.04em; }
.nf h1{ font-size:24px; margin:14px 0 10px; }
.nf > p{ color:var(--t2); max-width:620px; margin:0 auto 24px; }
.nf-grid{ display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; max-width:820px; margin:0 auto 26px; text-align:left; }
.nf-i{ background:#fff; border:1px solid var(--line); border-radius:var(--r); padding:14px 16px; box-shadow:var(--sh); }
.nf-i:hover{ border-color:var(--red); }
.nf-i b{ display:block; font-size:14px; margin-bottom:4px; }
.nf-i span{ font-size:12px; color:var(--t3); }
.nf-btn{ display:flex; gap:10px; justify-content:center; flex-wrap:wrap; }

/* ============================ 响应式 ============================ */
@media (max-width:1180px){
  .hero-in{ grid-template-columns:1fr; }
  .hcats{ display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); }
  .hcats h5{ grid-column:1/-1; }
  .hcats-all{ grid-column:1/-1; }
  .hside{ flex-direction:row; }
  .hside-card{ flex:1; }
  .ft-top{ grid-template-columns:1.4fr 1fr 1fr; row-gap:24px; }
  .ft-meta{ display:none; }
  .glay-4{ grid-template-columns:repeat(3,minmax(0,1fr)); }
}
@media (max-width:1000px){
  .hd-in{ flex-wrap:wrap; }
  .search{ order:3; flex-basis:100%; max-width:none; }
  .menu-btn{ display:block; }
  .nav-in{ flex-wrap:wrap; height:auto; }
  .nav{ position:static; }
  .nav-links{ display:none; flex-basis:100%; flex-direction:column; align-items:stretch; gap:0; overflow:visible; }
  .nav.open .nav-links{ display:flex; }
  .nav-links a{ height:auto; padding:11px 4px; border-top:1px solid var(--ink-3); }
  .nav-cats-menu{ width:min(92vw,640px); }
  .nav-r{ display:none; }
  .cols-2,.cols-2b,.cols-detail,.cols-order,.cols-case,.cols-legal{ grid-template-columns:1fr; }
  .detail-side{ position:static; }
  .buy{ grid-template-columns:1fr; }
  .glay,.glay-4,.slay,.slay-3,.ind-grid,.contact-grid,.entity{ grid-template-columns:repeat(2,minmax(0,1fr)); }
  .case-grid,.news-cards,.mile{ grid-template-columns:1fr; }
  .flow7{ grid-template-columns:repeat(2,minmax(0,1fr)); }
  .trust-in{ grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; }
  .adm-stat{ grid-template-columns:repeat(2,minmax(0,1fr)); }
  .ind-block-bd{ grid-template-columns:1fr; }
  .nf-grid{ grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:680px){
  .wrap{ padding:0 14px; }
  .topbar-roll,.topbar-r span,.dot-live{ display:none; }
  .hd-in{ padding:12px 14px; gap:14px; }
  .logo-tx b{ font-size:19px; }
  .hd-tel b{ font-size:16px; }
  .hd-sub{ display:none; }
  .hfeat{ grid-template-columns:1fr; }
  .hfeat-tx{ padding:18px; }
  .hfeat h1{ font-size:21px; }
  .hfeat-img{ aspect-ratio:16/10; }
  .hcats{ grid-template-columns:1fr; }
  .hside{ flex-direction:column; }
  .glay,.glay-4,.slay,.slay-3,.ind-grid,.contact-grid,.entity,.flow7,.trust-in,.adm-stat,.nf-grid,.news-cards{ grid-template-columns:1fr; }
  .ph-tx h1{ font-size:21px; }
  .ph-facts{ gap:16px; }
  .sec{ padding:26px 0; }
  .cta{ flex-direction:column; align-items:flex-start; }
  .case-card{ grid-template-columns:1fr; }
  .case-card img{ aspect-ratio:16/9; }
  .form-row{ grid-template-columns:1fr; }
  .buy{ padding:16px; }
  .buy-box h1{ font-size:20px; }
  .buy-price-now b{ font-size:27px; }
  .order-item{ grid-template-columns:1fr; }
  .order-item img{ width:100%; height:150px; }
  .fxbar{ right:8px; bottom:14px; gap:6px; }
  .fxbar a,.fx-top{ width:62px; }
  .fxbar a b{ font-size:10.5px; }
  .cash-card{ padding:18px; }
  .cash-row{ flex-direction:column; gap:2px; }
  .cash-row span{ width:auto; }
  .cash-foot{ grid-template-columns:1fr; }
  .cash-foot span{ width:auto; }
  .ft-top{ grid-template-columns:1fr; }
  .ft-col a{ padding:5px 0; }
  .nav-cats{ flex:1 1 auto; }
  .nav-cats-btn{ padding:0 14px; width:100%; justify-content:center; }
  .fxbar a:not(.fx-tel){ display:none; }
}
