/* ============================================================
   首页 Banner 轮播 v1（2026-10-17）
   作用：仅首页 hero 区域；所有选择器 #pcv4 前缀（站点存在 #pcv4 *{padding:0} 重置）
   ============================================================ */

/* ---------- 容器（CN .hero / EN .enhero） ---------- */
#pcv4 .hero-in.ldbn-wrap{max-width:none!important;width:100%!important;padding:0!important;display:block!important;background:transparent!important}
#pcv4 .hero-in.ldbn-wrap>*{flex:none}
#pcv4 .hero{padding-bottom:64px!important}
#pcv4 .hero .hstats{max-width:1240px!important;width:1240px!important;margin:0 auto!important}
#pcv4 .enhero .in{width:100%!important;max-width:none!important;padding:0!important;display:block!important}
#pcv4 .enhero{padding-bottom:64px!important}
#pcv4 .enhero .hstats{max-width:1240px!important;width:auto!important;margin:26px auto 0!important}

/* ---------- 轮播骨架 ---------- */
#pcv4 .ldbn{position:relative;width:100%;overflow:hidden;background:#F1F4F7;container-type:inline-size}
#pcv4 .ldbn-stage{display:flex;width:100%;transition:transform .5s cubic-bezier(.22,1,.28,1);will-change:transform}
#pcv4 .ldbn-slide{position:relative;flex:0 0 100%;width:100%;display:block;aspect-ratio:1903/670;text-decoration:none;line-height:0}
#pcv4 .ldbn-slide:focus-visible{outline:3px solid #1A6BF0;outline-offset:-3px}
#pcv4 .ldbn-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
#pcv4 .ldbn-copy{position:absolute;inset:0;display:block;--k:calc(100cqw / 1903);font-family:"PingFang SC","Microsoft YaHei","Helvetica Neue",Arial,sans-serif}
#pcv4 .ldbn-copy>*{position:absolute;display:block;margin:0;line-height:1;white-space:nowrap}

/* ---------- 中文文字层 ① 活塞（白字压蓝块） ---------- */
#pcv4 .s1 .ldbn-eb{left:calc(185 * var(--k));top:calc(118 * var(--k));font-size:calc(26 * var(--k));color:rgba(255,255,255,.95);letter-spacing:calc(.2 * var(--k))}
#pcv4 .s1 .ldbn-h{left:calc(179 * var(--k));top:calc(156 * var(--k));font-size:calc(71 * var(--k));font-weight:800;color:#fff;letter-spacing:calc(.5 * var(--k))}
#pcv4 .s1 .ldbn-tags{left:calc(178 * var(--k));top:calc(266 * var(--k));display:grid;grid-template-columns:calc(188 * var(--k)) calc(196 * var(--k));gap:calc(10 * var(--k)) calc(18 * var(--k));align-items:center;justify-items:stretch}
#pcv4 .s1 .ldbn-tags>span{display:flex;align-items:center;justify-content:center;height:calc(33 * var(--k));border:calc(1.4 * var(--k)) solid rgba(255,255,255,.85);border-radius:calc(9 * var(--k));padding:0;font-size:calc(18.5 * var(--k));font-weight:600;color:#fff;background:transparent;letter-spacing:calc(.2 * var(--k))}
#pcv4 .s1 .ldbn-mat{left:calc(179 * var(--k));top:calc(356 * var(--k));font-size:calc(24 * var(--k));color:#fff}
#pcv4 .s1 .ldbn-band{left:calc(450 * var(--k));top:calc(515 * var(--k));height:calc(50 * var(--k));display:flex;align-items:center;padding-left:14px;padding-right:14px;color:#fff;overflow:hidden;font-size:calc(22 * var(--k));letter-spacing:calc(.3 * var(--k))}

/* ---------- 中文文字层 ② 颗粒（蓝字压浅底） ---------- */
#pcv4 .s2 .ldbn-eb{left:calc(185 * var(--k));top:calc(133 * var(--k));font-size:calc(22 * var(--k));color:#5E7183;letter-spacing:calc(.2 * var(--k))}
#pcv4 .s2 .ldbn-h{left:calc(184 * var(--k));top:calc(165 * var(--k));font-size:calc(62 * var(--k));font-weight:800;color:#0A4E9E;letter-spacing:calc(.5 * var(--k))}
#pcv4 .s2 .ldbn-tags{left:calc(180 * var(--k));top:calc(266 * var(--k));display:grid;grid-template-columns:calc(188 * var(--k)) calc(196 * var(--k));gap:calc(10 * var(--k)) calc(12 * var(--k));align-items:center;justify-items:stretch}
#pcv4 .s2 .ldbn-tags>span{display:flex;align-items:center;justify-content:center;height:calc(31 * var(--k));border:calc(1.2 * var(--k)) solid #5A5B5D;border-radius:calc(8 * var(--k));padding:0;font-size:calc(18.5 * var(--k));font-weight:600;color:#0A4E9E;background:#fff;letter-spacing:calc(.2 * var(--k))}
#pcv4 .s2 .ldbn-mat{left:calc(181 * var(--k));top:calc(372 * var(--k));font-size:calc(23 * var(--k));color:#2A3B4B}
#pcv4 .s2 .ldbn-band{left:calc(642 * var(--k));top:calc(498 * var(--k));height:calc(51 * var(--k));display:flex;align-items:center;padding-left:16px;padding-right:16px;color:#fff;overflow:hidden;font-size:calc(23 * var(--k));letter-spacing:calc(.3 * var(--k))}

/* ---------- EN 文字层 ① ---------- */
#pcv4 .s1e .ldbn-eb{left:calc(178 * var(--k));top:calc(122 * var(--k));font-size:calc(20 * var(--k));color:rgba(255,255,255,.95);letter-spacing:calc(.4 * var(--k))}
#pcv4 .s1e .ldbn-h{left:calc(174 * var(--k));top:calc(156 * var(--k));font-size:calc(46 * var(--k));font-weight:800;color:#fff;letter-spacing:calc(.2 * var(--k));max-width:calc(800 * var(--k));white-space:nowrap;line-height:1.12}
#pcv4 .s1e .ldbn-tags{left:calc(174 * var(--k));top:calc(300 * var(--k));display:grid;grid-template-columns:repeat(2,auto);gap:calc(10 * var(--k)) calc(14 * var(--k));align-items:center}
#pcv4 .s1e .ldbn-tags>span{display:flex;align-items:center;justify-content:center;height:calc(34 * var(--k));border:calc(1.4 * var(--k)) solid rgba(255,255,255,.85);border-radius:calc(9 * var(--k));padding-left:calc(16 * var(--k));padding-right:calc(16 * var(--k));font-size:calc(16 * var(--k));font-weight:600;color:#fff;background:transparent}
#pcv4 .s1e .ldbn-mat{left:calc(176 * var(--k));top:calc(392 * var(--k));font-size:calc(18 * var(--k));color:#fff;max-width:calc(800 * var(--k));white-space:normal;line-height:1.5}
#pcv4 .s1e .ldbn-band{left:calc(450 * var(--k));top:calc(486 * var(--k));height:calc(50 * var(--k));display:flex;align-items:center;padding-left:14px;padding-right:14px;color:#fff;overflow:hidden;font-size:calc(18 * var(--k));letter-spacing:calc(.2 * var(--k))}

/* ---------- EN 文字层 ② ---------- */
#pcv4 .s2e .ldbn-eb{left:calc(184 * var(--k));top:calc(132 * var(--k));font-size:calc(19 * var(--k));color:#5E7183;letter-spacing:calc(.3 * var(--k))}
#pcv4 .s2e .ldbn-h{left:calc(180 * var(--k));top:calc(170 * var(--k));font-size:calc(34 * var(--k));font-weight:800;color:#0A4E9E;letter-spacing:calc(.2 * var(--k));max-width:calc(640 * var(--k));white-space:nowrap;line-height:1.16}
#pcv4 .s2e .ldbn-tags{left:calc(180 * var(--k));top:calc(300 * var(--k));display:grid;grid-template-columns:repeat(2,auto);gap:calc(10 * var(--k)) calc(14 * var(--k));align-items:center}
#pcv4 .s2e .ldbn-tags>span{display:flex;align-items:center;justify-content:center;height:calc(32 * var(--k));border:calc(1.2 * var(--k)) solid #5A5B5D;border-radius:calc(8 * var(--k));padding-left:calc(14 * var(--k));padding-right:calc(14 * var(--k));font-size:calc(16 * var(--k));font-weight:600;color:#0A4E9E;background:#fff}
#pcv4 .s2e .ldbn-mat{left:calc(182 * var(--k));top:calc(388 * var(--k));font-size:calc(18 * var(--k));color:#2A3B4B;max-width:calc(800 * var(--k));white-space:normal;line-height:1.5}
#pcv4 .s2e .ldbn-band{left:calc(600 * var(--k));top:calc(474 * var(--k));height:calc(50 * var(--k));display:flex;align-items:center;padding-left:15px;padding-right:15px;color:#fff;overflow:hidden;font-size:calc(18 * var(--k));letter-spacing:calc(.2 * var(--k))}

/* ---------- 色条底色（伪元素，动画只控 scaleX） ---------- */
#pcv4 .ldbn-band::before{content:"";position:absolute;inset:0;background:rgba(10,12,14,.94)}
#pcv4 .s2 .ldbn-band::before,#pcv4 .s2e .ldbn-band::before{background:#0B5CA8}
#pcv4 .ldbn-band .bt{position:relative}

/* ---------- 箭头 / 指示点 ---------- */
#pcv4 .ldbn-arr{position:absolute;top:50%;transform:translateY(-50%);width:46px;height:46px;border-radius:50%;border:none;background:rgba(255,255,255,.55);backdrop-filter:blur(6px);cursor:pointer;display:grid;place-items:center;opacity:0;transition:opacity .25s,background .25s;z-index:5}
#pcv4 .ldbn-arr svg{width:20px;height:20px;fill:none;stroke:#0A2A44;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}
#pcv4 .ldbn-arr.prev{left:26px}
#pcv4 .ldbn-arr.next{right:26px}
#pcv4 .ldbn:hover .ldbn-arr,#pcv4 .ldbn-arr:focus-visible{opacity:1}
#pcv4 .ldbn-arr:hover{background:rgba(255,255,255,.9)}
#pcv4 .ldbn-dots{position:absolute;left:0;right:0;bottom:18px;display:flex;justify-content:center;gap:9px;z-index:5}
#pcv4 .ldbn-dots button{width:26px;height:4px;border-radius:2px;border:none;background:rgba(10,42,68,.25);cursor:pointer;transition:background .25s,width .25s;padding:0}
#pcv4 .ldbn-dots button.on{background:#1A6BF0;width:38px}

/* ---------- 打字机：ghost 占位（不抖动）+ 绝对定位逐字追加 + 光标 ---------- */
#pcv4 .ldbn-eb .mkin,#pcv4 .ldbn-h .mkin{position:relative;display:block;overflow:hidden}
#pcv4 .ldbn-eb .gh,#pcv4 .ldbn-h .gh{display:block;visibility:hidden;white-space:nowrap}
#pcv4 .ldbn-eb .tp,#pcv4 .ldbn-h .tp{position:absolute;left:0;top:0;display:block;white-space:nowrap}
#pcv4 .ldbn-h .tp::after{content:"";display:inline-block;width:.05em;height:.84em;margin-left:.04em;background:currentColor;vertical-align:-.04em;animation:_ldCaret 1s steps(1,end) infinite}
#pcv4 .ldbn-eb .tp::after{content:"";display:inline-block;width:.06em;height:.9em;margin-left:.06em;background:currentColor;vertical-align:0;animation:_ldCaret 1s steps(1,end) infinite;opacity:.85}
#pcv4 .tp.ld-done::after{animation:none;opacity:0;transition:opacity .45s ease .7s}
@keyframes _ldCaret{0%,49%{opacity:1}50%,100%{opacity:0}}

/* ---------- 入场编排（纯 transform/opacity） ---------- */
@media (prefers-reduced-motion: no-preference){
  #pcv4 .ldbn-tags>span{opacity:0;transform:translate3d(0,12px,0);will-change:transform,opacity}
  #pcv4 .ldbn-mat{opacity:0;transform:translate3d(0,10px,0)}
  #pcv4 .ldbn-band::before{transform:scaleX(0);transform-origin:0 50%;will-change:transform}
  #pcv4 .ldbn-band .bt{opacity:0;will-change:opacity}

  #pcv4 .ldbn-slide.on .ldbn-tags>span{opacity:1;transform:none;transition:opacity .42s ease .95s,transform .6s cubic-bezier(.19,1,.22,1) .95s}
  #pcv4 .ldbn-slide.on .ldbn-tags>span:nth-child(2){transition-delay:1s,1s}
  #pcv4 .ldbn-slide.on .ldbn-tags>span:nth-child(3){transition-delay:1.05s,1.05s}
  #pcv4 .ldbn-slide.on .ldbn-tags>span:nth-child(4){transition-delay:1.1s,1.1s}
  #pcv4 .ldbn-slide.on .ldbn-mat{opacity:1;transform:none;transition:opacity .5s ease 1.16s,transform .66s cubic-bezier(.19,1,.22,1) 1.16s}
  #pcv4 .ldbn-slide.on .ldbn-band::before{transform:scaleX(1);transition:transform .62s cubic-bezier(.19,1,.22,1) 1.22s}
  #pcv4 .ldbn-slide.on .ldbn-band .bt{opacity:1;transition:opacity .32s linear 1.4s}
}
@media (prefers-reduced-motion: reduce){
  #pcv4 .ldbn-stage{transition:none}
  #pcv4 .ldbn-tags>span,#pcv4 .ldbn-mat{opacity:1!important;transform:none!important}
  #pcv4 .ldbn-band::before{transform:none!important}
  #pcv4 .ldbn-band .bt{opacity:1!important}
  #pcv4 .ldbn-eb .tp::after,#pcv4 .ldbn-h .tp::after{display:none!important}
  #pcv4 .ldbn-eb .mktx,#pcv4 .ldbn-h .mktx{transform:none!important}
}

/* ---------- ≤1100 降级（PC 设计稿，仅保证不崩） ---------- */
@media (max-width:1100px){
  #pcv4 .ldbn-slide{aspect-ratio:auto;height:320px}
  #pcv4 .ldbn-img{object-position:70% center}
  #pcv4 .ldbn-copy>*{display:none}
  #pcv4 .ldbn-copy .ldbn-h{display:block;left:24px;top:40%;font-size:30px;line-height:1.15;white-space:normal;max-width:70%}
}
