/* ==========================================================
   首页专属板块样式（仅 body.home-v2 生效）
   依赖：style.css（基础重置/.wrap）+ site-v2.css（头尾）
   ========================================================== */

/* ---------- 首屏 ---------- */
body.home-v2 .hero{
  position:relative;background:var(--ink);color:#fff;overflow:hidden;padding:74px 0 0;
}
body.home-v2 .hero::before{
  content:"";position:absolute;inset:0;
  background:
    radial-gradient(900px 500px at 78% 8%,rgba(23,57,95,.85),transparent 62%),
    radial-gradient(700px 420px at 8% 92%,rgba(211,36,26,.14),transparent 60%);
}
body.home-v2 .hero::after{
  content:"";position:absolute;inset:0;border-radius:0;width:auto;height:auto;
  background-image:linear-gradient(rgba(255,255,255,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.045) 1px,transparent 1px);
  background-size:64px 64px;
  -webkit-mask-image:radial-gradient(70% 60% at 50% 40%,#000,transparent 78%);
  mask-image:radial-gradient(70% 60% at 50% 40%,#000,transparent 78%);
}
body.home-v2 .hero .wrap{position:relative;z-index:2;display:block}
body.home-v2 .hero-grid{display:grid;grid-template-columns:1.08fr .92fr;gap:64px;align-items:center;padding-bottom:60px}
body.home-v2 .badge{
  display:inline-flex;align-items:center;gap:10px;font-size:12.5px;letter-spacing:1.6px;
  color:rgba(255,255,255,.72);border:1px solid rgba(255,255,255,.16);padding:7px 14px;border-radius:2px;
}
body.home-v2 .badge b{color:#fff;font-weight:700}
body.home-v2 .badge i{width:6px;height:6px;background:var(--brand);border-radius:50%;box-shadow:0 0 0 4px rgba(211,36,26,.2)}
body.home-v2 .hero h1{
  margin:26px 0 0;font-size:47px;line-height:1.28;font-weight:800;letter-spacing:-.6px;color:#fff;
}
body.home-v2 .hero h1 .em{color:#fff;position:relative;white-space:nowrap}
body.home-v2 .hero h1 .em::after{
  content:"";position:absolute;left:0;right:0;bottom:4px;height:9px;background:rgba(211,36,26,.5);z-index:-1;
}
body.home-v2 .hero h1 .lt{color:rgba(255,255,255,.62);font-weight:600}
body.home-v2 .hero-sub{margin:22px 0 0;max-width:600px;font-size:15.5px;line-height:1.95;color:rgba(255,255,255,.7)}
body.home-v2 .hero-sub b{color:#fff;font-weight:600}
body.home-v2 .hero-act{display:flex;align-items:center;gap:12px;margin-top:34px;flex-wrap:wrap}
body.home-v2 .hero-note{margin-top:18px;display:flex;align-items:center;gap:20px;flex-wrap:wrap;font-size:12.5px;color:rgba(255,255,255,.5)}
body.home-v2 .hero-note span{display:flex;align-items:center;gap:6px}
body.home-v2 .hero-note i{width:12px;height:12px;border:1px solid rgba(255,255,255,.4);border-radius:50%;position:relative}
body.home-v2 .hero-note i::after{content:"";position:absolute;left:3px;top:3px;width:4px;height:4px;background:var(--brand);border-radius:50%}

/* 按钮 */
body.home-v2 .btn-red{background:var(--brand);color:#fff;box-shadow:0 8px 20px rgba(211,36,26,.22)}
body.home-v2 .btn-red:hover{background:var(--brand-dark);box-shadow:0 12px 26px rgba(211,36,26,.3)}
body.home-v2 .btn-line{border:1px solid rgba(255,255,255,.34);color:#fff;background:transparent}
body.home-v2 .btn-line:hover{border-color:#fff;background:rgba(255,255,255,.08)}
body.home-v2 .btn-ghost{border:1px solid var(--border);color:var(--navy);background:#fff}
body.home-v2 .btn-ghost:hover{border-color:var(--navy);background:var(--navy);color:#fff}
body.home-v2 .btn .ar{transition:.25s}
body.home-v2 .btn:hover .ar{transform:translateX(3px)}

/* 资质卡 */
body.home-v2 .qcard{background:#fff;color:var(--text);border-radius:4px;box-shadow:0 24px 60px rgba(8,23,43,.28);overflow:hidden;position:relative}
body.home-v2 .qcard-top{background:var(--navy);color:#fff;padding:18px 24px;display:flex;align-items:center;justify-content:space-between}
body.home-v2 .qcard-top .t{font-size:13px;letter-spacing:2.4px;text-transform:uppercase;opacity:.72}
body.home-v2 .qcard-top .y{font-size:12px;letter-spacing:1px;border:1px solid rgba(255,255,255,.3);padding:3px 9px;border-radius:2px}
body.home-v2 .qlist{padding:8px 24px 4px}
body.home-v2 .qrow{display:flex;gap:14px;padding:17px 0;border-bottom:1px solid #EEF1F5}
body.home-v2 .qrow:last-child{border-bottom:0}
body.home-v2 .qrow .ic{width:34px;height:34px;flex-shrink:0;border:1px solid var(--border);border-radius:2px;display:grid;place-items:center;color:var(--brand)}
body.home-v2 .qrow h4{font-size:14.5px;font-weight:700;color:var(--ink);letter-spacing:.2px}
body.home-v2 .qrow p{font-size:12.5px;color:var(--text-sub);line-height:1.7;margin-top:2px}
body.home-v2 .qrow .star{color:var(--brand);font-size:11.5px;letter-spacing:1px;vertical-align:1px}
body.home-v2 .qcerts{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:#EEF1F5;border-top:1px solid #EEF1F5}
body.home-v2 .qcerts a{background:#fff;padding:12px;display:block}
body.home-v2 .qcerts img{width:100%;height:92px;object-fit:cover;object-position:top center;border:1px solid var(--border);border-radius:2px;transition:.3s}
body.home-v2 .qcerts a:hover img{border-color:var(--brand)}
body.home-v2 .qcerts em{display:block;font-style:normal;font-size:11.5px;color:#8A97A8;text-align:center;margin-top:7px}

/* 数据条 */
body.home-v2 .facts{border-top:1px solid rgba(255,255,255,.12);display:grid;grid-template-columns:repeat(4,1fr)}
body.home-v2 .fact{padding:26px 28px 30px;border-left:1px solid rgba(255,255,255,.1)}
body.home-v2 .fact:first-child{border-left:0;padding-left:0}
body.home-v2 .fact .n{font-size:34px;font-weight:800;line-height:1.1;letter-spacing:-1px;color:#fff;font-variant-numeric:tabular-nums}
body.home-v2 .fact .n i{font-style:normal;font-size:14px;font-weight:600;margin-left:4px;color:rgba(255,255,255,.6)}
body.home-v2 .fact .l{margin-top:8px;font-size:13px;color:rgba(255,255,255,.55)}

/* ---------- 段落骨架 ---------- */
body.home-v2 .sec{padding:92px 0}
body.home-v2 .sec-paper{background:var(--bg-gray)}
body.home-v2 .sec-head{max-width:720px;margin-bottom:52px;text-align:left}
body.home-v2 .eyebrow{
  display:inline-flex;align-items:center;gap:10px;font-size:11.5px;font-weight:700;letter-spacing:2.6px;
  color:var(--brand);text-transform:uppercase;
}
body.home-v2 .eyebrow::before{content:"";width:26px;height:1px;background:var(--brand)}
body.home-v2 h2.st{font-size:33px;line-height:1.4;font-weight:800;color:var(--ink);letter-spacing:-.4px;margin-top:14px}
body.home-v2 h2.st em{font-style:normal;color:var(--navy)}
body.home-v2 .sec-desc{margin-top:14px;font-size:15px;color:var(--text-sub);line-height:1.9;max-width:640px}

/* ---------- 产品系列 ---------- */
body.home-v2 .series-grid{display:grid;grid-template-columns:1fr 1fr;gap:26px}
body.home-v2 .series{background:#fff;border:1px solid var(--border);border-radius:4px;padding:34px 32px 30px;transition:.3s;position:relative;overflow:hidden}
body.home-v2 .series::before{content:"";position:absolute;left:0;top:0;width:100%;height:3px;background:var(--brand)}
body.home-v2 .series.gm::before{background:var(--navy)}
body.home-v2 .series:hover{box-shadow:0 1px 2px rgba(8,23,43,.04),0 14px 36px rgba(8,23,43,.08);border-color:#D3DBE6;transform:translateY(-2px)}
body.home-v2 .series-h{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}
body.home-v2 .series-h h3{font-size:22px;font-weight:800;color:var(--ink)}
body.home-v2 .series-h .cnt{font-size:12px;font-weight:700;color:var(--brand);border:1px solid rgba(211,36,26,.3);background:#FCF1EF;padding:4px 10px;border-radius:2px;white-space:nowrap}
body.home-v2 .series.gm .series-h .cnt{color:var(--navy);border-color:rgba(14,35,64,.22);background:#F0F4F9}
body.home-v2 .series-h .en{display:block;font-size:11px;letter-spacing:2px;color:#8A97A8;text-transform:uppercase;margin-top:6px}
body.home-v2 .series p.d{margin-top:14px;font-size:14px;color:var(--text-sub);line-height:1.85}
body.home-v2 .pills{display:flex;flex-wrap:wrap;gap:8px;margin-top:22px}
body.home-v2 .pill{font-size:13px;padding:7px 13px;border:1px solid var(--border);border-radius:2px;color:var(--text);background:#FCFDFE;transition:.2s}
body.home-v2 .pill:hover{border-color:var(--navy);color:var(--navy)}
body.home-v2 .pill.hot{border-color:rgba(211,36,26,.35);background:#FCF1EF;color:var(--brand-dark);font-weight:600}
body.home-v2 .pill.hot::after{content:"热";font-size:10px;margin-left:5px;opacity:.7}
body.home-v2 .series-f{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:24px;padding-top:18px;border-top:1px dashed var(--border);font-size:13px;color:#8A97A8}
body.home-v2 .series-f a{color:var(--brand);font-weight:600}

/* 三步选型 */
body.home-v2 .pick{margin-top:26px;background:var(--navy);color:#fff;border-radius:4px;padding:30px 34px;display:grid;grid-template-columns:auto 1fr;gap:34px;align-items:center}
body.home-v2 .pick-l .eyebrow{color:rgba(255,255,255,.55)}
body.home-v2 .pick-l h3{font-size:20px;font-weight:800;margin-top:10px}
body.home-v2 .pick-l a{display:inline-block;margin-top:14px;font-size:13.5px;color:#fff;border-bottom:1px solid rgba(255,255,255,.35);padding-bottom:2px}
body.home-v2 .pick-steps{display:grid;grid-template-columns:repeat(3,1fr)}
body.home-v2 .pick-steps>div{padding:0 22px;border-left:1px solid rgba(255,255,255,.12)}
body.home-v2 .pick-steps>div:first-child{border-left:0;padding-left:0}
body.home-v2 .pick-steps span{font-size:11px;letter-spacing:1.6px;color:#E8553F;font-weight:700}
body.home-v2 .pick-steps h4{font-size:14.5px;font-weight:700;margin:6px 0 5px}
body.home-v2 .pick-steps p{font-size:12.5px;color:rgba(255,255,255,.55);line-height:1.7}

/* ---------- 能力（深色） ---------- */
body.home-v2 .cap{background:var(--ink);color:#fff;position:relative;overflow:hidden}
body.home-v2 .cap::before{content:"";position:absolute;inset:0;background:radial-gradient(800px 400px at 82% 0%,rgba(23,57,95,.9),transparent 65%)}
body.home-v2 .cap .wrap{position:relative;z-index:2}
body.home-v2 .cap h2.st{color:#fff}
body.home-v2 .cap h2.st em{color:rgba(255,255,255,.6)}
body.home-v2 .cap .sec-desc{color:rgba(255,255,255,.58)}
body.home-v2 .cap .eyebrow{color:#E8553F}
body.home-v2 .cap-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid rgba(255,255,255,.12)}
body.home-v2 .cap-item{padding:34px 28px 8px;border-left:1px solid rgba(255,255,255,.1)}
body.home-v2 .cap-item:first-child{border-left:0;padding-left:0}
body.home-v2 .cap-item .no{font-size:12px;letter-spacing:2px;color:rgba(255,255,255,.35)}
body.home-v2 .cap-item h3{font-size:17px;font-weight:700;margin:14px 0 10px;color:#fff}
body.home-v2 .cap-item p{font-size:13.5px;line-height:1.85;color:rgba(255,255,255,.58)}
body.home-v2 .cap-item .k{margin-top:16px;font-size:12.5px;color:#E8553F;font-weight:700}

/* ---------- 行业 ---------- */
body.home-v2 .ind-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--border);border-left:1px solid var(--border)}
body.home-v2 .ind{padding:26px 24px 28px;border-right:1px solid var(--border);border-bottom:1px solid var(--border);background:#fff;transition:.3s;position:relative}
body.home-v2 .ind:hover{background:var(--bg-gray)}
body.home-v2 .ind-no{font-size:11.5px;letter-spacing:1.6px;color:#8A97A8;transition:.3s}
body.home-v2 .ind:hover .ind-no{color:var(--brand)}
body.home-v2 .ind h4{font-size:15.5px;font-weight:700;color:var(--ink);margin:10px 0 8px}
body.home-v2 .ind p{font-size:12.5px;color:var(--text-sub);line-height:1.75}
body.home-v2 .ind::after{content:"";position:absolute;left:0;top:0;height:2px;width:0;background:var(--brand);transition:.35s}
body.home-v2 .ind:hover::after{width:100%}

/* ---------- 案例 ---------- */
body.home-v2 .case-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
body.home-v2 .case{border:1px solid var(--border);border-radius:4px;background:#fff;padding:30px 28px;display:flex;flex-direction:column;transition:.3s}
body.home-v2 .case:hover{box-shadow:0 1px 2px rgba(8,23,43,.04),0 14px 36px rgba(8,23,43,.08);border-color:#D3DBE6;transform:translateY(-2px)}
body.home-v2 .case .tag{font-size:11.5px;letter-spacing:1.2px;color:var(--navy);background:#F0F4F9;padding:4px 10px;border-radius:2px;align-self:flex-start}
body.home-v2 .case h3{font-size:17px;font-weight:700;color:var(--ink);margin:16px 0 10px;line-height:1.5}
body.home-v2 .case p{font-size:13.5px;color:var(--text-sub);line-height:1.85;flex:1}
body.home-v2 .case .res{display:flex;gap:22px;margin-top:20px;padding-top:18px;border-top:1px solid #EEF1F5}
body.home-v2 .case .res div b{display:block;font-size:20px;font-weight:800;color:var(--brand);letter-spacing:-.5px;line-height:1.2}
body.home-v2 .case .res div span{font-size:11.5px;color:#8A97A8}

/* ---------- 区域 ---------- */
body.home-v2 .area{display:grid;grid-template-columns:.82fr 1.18fr;gap:60px;align-items:start}
body.home-v2 .area-l .kv{display:flex;gap:36px;margin-top:28px;padding-top:26px;border-top:1px solid var(--border)}
body.home-v2 .area-l .kv div b{font-size:28px;font-weight:800;color:var(--ink);letter-spacing:-.8px;display:block;line-height:1.2}
body.home-v2 .area-l .kv div span{font-size:12.5px;color:#8A97A8}
body.home-v2 .cities{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--border);border-left:1px solid var(--border)}
body.home-v2 .cities a{padding:15px 14px;border-right:1px solid var(--border);border-bottom:1px solid var(--border);font-size:13.5px;color:var(--text);display:flex;align-items:center;justify-content:space-between;gap:6px;background:#fff;transition:.2s}
body.home-v2 .cities a span{font-size:10px;color:#8A97A8;letter-spacing:.5px}
body.home-v2 .cities a:hover{background:var(--navy);color:#fff}
body.home-v2 .cities a:hover span{color:rgba(255,255,255,.55)}

/* ---------- 新闻 ---------- */
body.home-v2 .news-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:44px;flex-wrap:wrap}
body.home-v2 .news-head .sec-head{margin-bottom:0}
body.home-v2 .news-list{border-top:1px solid var(--border)}
body.home-v2 .news-item{display:grid;grid-template-columns:108px 1fr auto;gap:26px;align-items:center;padding:24px 0;border-bottom:1px solid var(--border);transition:.25s}
body.home-v2 .news-item:hover{padding-left:10px}
body.home-v2 .news-item .d{font-size:12.5px;color:#8A97A8;letter-spacing:.6px}
body.home-v2 .news-item .d b{display:block;font-size:22px;font-weight:800;color:var(--ink);letter-spacing:-.5px;line-height:1.2}
body.home-v2 .news-item h3{font-size:15.5px;font-weight:600;color:var(--ink);line-height:1.6}
body.home-v2 .news-item p{font-size:12.5px;color:#8A97A8;margin-top:5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
body.home-v2 .news-item:hover h3{color:var(--brand)}
body.home-v2 .news-item .go{font-size:12.5px;color:#8A97A8;white-space:nowrap}

/* ---------- 收尾 CTA ---------- */
body.home-v2 .cta{background:var(--navy);color:#fff;position:relative;overflow:hidden}
body.home-v2 .cta::before{content:"";position:absolute;inset:0;background:radial-gradient(700px 380px at 12% 100%,rgba(211,36,26,.18),transparent 62%),radial-gradient(600px 320px at 88% 0%,rgba(23,57,95,.9),transparent 60%)}
body.home-v2 .cta .wrap{position:relative;z-index:2;padding-top:72px;padding-bottom:72px;display:grid;grid-template-columns:1.15fr .85fr;gap:60px;align-items:center}
body.home-v2 .cta h2{font-size:31px;font-weight:800;line-height:1.42;letter-spacing:-.4px;color:#fff}
body.home-v2 .cta p{margin-top:16px;font-size:14.5px;color:rgba(255,255,255,.66);line-height:1.9;max-width:520px}
body.home-v2 .cta .acts{display:flex;gap:12px;margin-top:30px;flex-wrap:wrap}
body.home-v2 .cta-card{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.14);border-radius:4px;padding:26px 28px;display:flex;gap:22px;align-items:center}
body.home-v2 .cta-card img{width:96px;height:96px;background:#fff;padding:5px;border-radius:3px}
body.home-v2 .cta-card .info h4{font-size:14px;font-weight:700;margin-bottom:10px}
body.home-v2 .cta-card .info .tel{display:block;font-size:19px;font-weight:800;color:#fff;margin-bottom:6px}
body.home-v2 .cta-card .info dl{font-size:12.5px;color:rgba(255,255,255,.62);line-height:1.9}
body.home-v2 .cta-card .info dt{display:inline;color:rgba(255,255,255,.4)}
body.home-v2 .cta-card .info dd{display:inline}

/* ---------- 动效 ---------- */
body.home-v2 .rv{opacity:0;transform:translateY(20px);transition:opacity .7s cubic-bezier(.22,.61,.36,1),transform .7s cubic-bezier(.22,.61,.36,1)}
body.home-v2 .rv.in{opacity:1;transform:none}

/* ---------- 响应式 ---------- */
@media (max-width:1080px){
  body.home-v2 .hero-grid{grid-template-columns:1fr;gap:44px}
  body.home-v2 .hero h1{font-size:40px}
  body.home-v2 .qcard{max-width:520px}
  body.home-v2 .facts{grid-template-columns:repeat(2,1fr)}
  body.home-v2 .fact:nth-child(3){border-left:0;padding-left:0}
  body.home-v2 .fact:nth-child(1),body.home-v2 .fact:nth-child(2){border-bottom:1px solid rgba(255,255,255,.1)}
  body.home-v2 .cap-grid{grid-template-columns:repeat(2,1fr)}
  body.home-v2 .cap-item:nth-child(3){border-left:0;padding-left:0}
  body.home-v2 .ind-grid{grid-template-columns:repeat(2,1fr)}
  body.home-v2 .case-grid{grid-template-columns:1fr}
  body.home-v2 .area{grid-template-columns:1fr;gap:40px}
  body.home-v2 .cta .wrap{grid-template-columns:1fr;gap:36px}
  body.home-v2 .pick{grid-template-columns:1fr;gap:24px}
  body.home-v2 .pick-steps{grid-template-columns:1fr}
  body.home-v2 .pick-steps>div{border-left:0;padding:12px 0;border-top:1px solid rgba(255,255,255,.12)}
  body.home-v2 .pick-steps>div:first-child{padding-top:0;border-top:0}
}
@media (max-width:720px){
  body.home-v2 .hero{padding-top:48px}
  body.home-v2 .hero h1{font-size:31px;line-height:1.35}
  body.home-v2 .hero h1 .lt{display:block;font-size:17px;font-weight:500;line-height:1.55;margin-top:12px;letter-spacing:0}
  body.home-v2 .hero-sub{font-size:14.5px}
  body.home-v2 h2.st{font-size:25px}
  body.home-v2 .sec{padding:64px 0}
  body.home-v2 .series-grid{grid-template-columns:1fr}
  body.home-v2 .series{padding:26px 22px}
  body.home-v2 .cap-grid{grid-template-columns:1fr}
  body.home-v2 .cap-item{border-left:0;padding:24px 0 0;border-top:1px solid rgba(255,255,255,.1)}
  body.home-v2 .cap-item:first-child{border-top:0;padding-top:0}
  body.home-v2 .ind-grid{grid-template-columns:1fr 1fr}
  body.home-v2 .cities{grid-template-columns:1fr 1fr}
  body.home-v2 .news-item{grid-template-columns:64px 1fr;gap:16px}
  body.home-v2 .news-item .go{display:none}
  body.home-v2 .news-item .d b{font-size:18px}
  body.home-v2 .cta h2{font-size:24px}
  body.home-v2 .qcard-top{padding:15px 18px}
  body.home-v2 .qlist{padding:6px 18px 2px}
}
@media (prefers-reduced-motion:reduce){
  body.home-v2 .rv{opacity:1;transform:none;transition:none}
}

/* ---------- 首屏致电行 ---------- */
body.home-v2 .hero-call{margin-top:16px;font-size:14px;color:rgba(255,255,255,.72)}
body.home-v2 .hero-call a{color:#fff;font-size:19.5px;font-weight:700;letter-spacing:.5px;text-decoration:none;margin:0 3px;white-space:nowrap}
body.home-v2 .hero-call a:hover{color:#ffc9c0}
body.home-v2 .hero-call .sep{margin:0 6px;color:rgba(255,255,255,.35)}
body.home-v2 .hero-call .hint{font-size:12.5px;color:rgba(255,255,255,.5);margin-left:6px}
@media (max-width:720px){body.home-v2 .hero-call{font-size:13px}body.home-v2 .hero-call a{font-size:17px}body.home-v2 .hero-call .hint{display:block;margin:4px 0 0}}
