/* ================================================================
   HOME — 首页专属区块样式
     · ABOUT  公司介绍（漂浮三角 + 毛玻璃卡片）
     · APPLICATION  应用领域六边形蜂窝
     · SEARCH  产品检索
     · NEWS  最新发展轮播
   依赖：tokens.css、base.css
   ================================================================ */

/* ================================================================
   3. ABOUT  ─ floating 3D blurred logos + frosted glass card
   ================================================================ */
.about {
  position: relative; padding: 100px 0 90px;
  background: #fff;
  overflow: hidden;
  perspective: 1600px;
}
.about__deco {
  position: absolute; inset: 0; pointer-events: none;
  transform-style: preserve-3d;
  will-change: transform;
}
.about__deco i {
  position: absolute; display: block;
  opacity: 0;
  will-change: transform, opacity, filter;
}
.about__deco i::before {
  content: ""; display: block; width: 100%; height: 100%;
  background: var(--green);
}
.about__deco i.l1 { left: 71%; top: 8%; width: 280px; height: 130px;
                    opacity: .18 !important; filter: blur(5px); }
.about__deco i.l1::before { clip-path: polygon(0 0, 100% 0, 0 100%); }
.about__deco i.l2 { left: 18%; top: 4%; width: 70px; height: 35px;
                    opacity: .12 !important; filter: blur(3px); }
.about__deco i.l2::before { clip-path: polygon(0 0, 100% 0, 0 100%); }
.about__deco i.l3 { left: 33%; bottom: 12%; width: 110px; height: 65px;
                    opacity: .15 !important; filter: blur(8px); }
.about__deco i.l3::before { clip-path: polygon(0 0, 100% 0, 0 100%); }
.about__deco i.r1 { left: -5%; top: 48%; width: 300px; height: 150px;
                    opacity: .14 !important; filter: blur(10px); }
.about__deco i.r1::before { clip-path: polygon(0 100%, 100% 100%, 100% 0); }
.about__deco i.r2 { right: 16%; bottom: 5%; width: 480px; height: 210px;
                    opacity: .10 !important; filter: blur(12px); }
.about__deco i.r2::before { clip-path: polygon(0 100%, 100% 100%, 100% 0); }

.about__stage {
  position: absolute; inset: 0;
  transform-style: preserve-3d;
  will-change: transform;
  pointer-events: none;
}
.about__stage img {
  position: absolute; opacity: 0; will-change: transform, opacity;
}
.about__inner {
  position: relative; z-index: 2;
  max-width: 1080px; margin: 0 auto;
  padding: 0 clamp(20px, 5vw, 60px);
  display: grid; grid-template-columns: minmax(200px, 240px) 1fr;
  gap: clamp(40px, 7vw, 10px); align-items: start;
}
.about__head { position: relative; top: -42px; }
.about__head .label-cn-1 {
  font-family: var(--font-display);
  font-size: 36px; color: var(--red);
  letter-spacing: .15em; line-height: 1;
  font-weight: 900;
}
.about__head .label-cn-2 {
  font-family: var(--font-display);
  font-size: 36px; color: var(--red); margin-top: 0px;
  letter-spacing: .12em; font-weight: 900;
}
.about__head .label-en {
  margin-top: 18px;
  font-family: var(--font-en);
  font-size: 15px; letter-spacing: .2em; color: var(--green);
  font-weight: 600;
}
.about__head .rule {
  display: block; width: 50px; height: 2px; background: var(--green);
  margin-top: 14px;
}
.about__head .triangle {
  display: block; width: 38px; aspect-ratio: 54 / 33;
  background: url('../../../images/half-green-logo.svg') no-repeat center / contain;
  margin-bottom: 14px;
  margin-left: -40px;
}
.about__cta {
  margin-top: 32px;
  border: 1px solid var(--green);
}
.about__card {
  background: rgba(255,255,255,.3);
  backdrop-filter: blur(10px) saturate(120%);
  -webkit-backdrop-filter: blur(10px) saturate(120%);
  border: 1px solid rgba(255,255,255,.7);
  border-radius: 6px;
  padding: clamp(28px, 3.5vw, 34px) clamp(28px, 4vw, 40px);
  box-shadow: 0 18px 60px -28px rgba(31,92,54,.18);
  font-size: 14px; line-height: 2.1;
  color: #4A554E; letter-spacing: .02em;
  font-family: var(--font-cn);
  text-align: justify;
}
.about__card p + p { margin-top: .9em; }
.about__card mark {
  background: transparent;
  color: var(--green-deep); font-weight: 600;
}

/* about 右侧文案：只给内层文字块 .zz-copy(#brxe-hrgt01) 加白色半透磨砂卡 + 30px 内边距（不是整块 .about__content）*/
.about .zz-copy {
  background: rgba(255,255,255,.5);
  backdrop-filter: blur(8px) saturate(120%);
  -webkit-backdrop-filter: blur(8px) saturate(120%);
  border: 1px solid rgba(255,255,255,.7);
  border-radius: 10px;
  box-shadow: 0 18px 60px -28px rgba(31,92,54,.18);
  padding: 30px;
}
/* about「了解更多」（克隆的 cta-pill）距上方标题 30px（原 .about__cta 的 margin 在替换后丢失，这里补回）*/
.about .cta-pill--bordered { margin-top: 30px; }

/* ================================================================
   4. APPLICATION  ─ 10 flat-top hexagons (5 images + 5 text labels)
   全宽分子背景容器 .appbg 包住 应用领域 + 产品检索
   ================================================================ */
.appbg {
  position: relative; z-index: 10;   /* 必须 above pulled-up news drawer */
  background: #fff url('https://v.sh-original.com/image/default/4D78FCFD92244F099332B02A832189DA-6-2.jpg') no-repeat center center / cover;  /* 分子背景part.jpg → 阿里云 VOD */
}
.apps {
  position: relative;
  padding: 0px 0px 40px 0px;
  background: transparent;
  perspective: 1600px;
  perspective-origin: 50% 35%;
  z-index: 10;
  overflow: hidden;
}
.apps__grid, .hex { transform-style: preserve-3d; }
.apps__title {
  position: absolute; right: clamp(20px, 8vw, 140px); bottom: clamp(0px, 6vw, 0px);
  text-align: right; z-index: 2;
}
.apps__title::before {
  content:""; position: absolute; right: 6px; top: -34px;
  width: 38px; aspect-ratio: 54 / 33;
  background: url('../../../images/half-green-logo.svg') no-repeat center / contain;
}
.apps__title .cn {
  font-family: var(--font-display); font-size: clamp(26px, 2.4vw, 42px); color: var(--red); font-weight: 900;
  letter-spacing: .15em; line-height: 1;
}
.apps__title .en {
  margin-top: 8px; margin-right: 4px; font-size: clamp(13px, 2vw, 23px); letter-spacing: .2em; color: var(--green);
  font-family: var(--font-en); font-weight: 600;
}
.apps__grid {
  --w: clamp(140px, 16vw, 230px);
  --h: calc(var(--w) * 0.866);
  position: relative;
  width: calc(var(--w) * 4);
  height: calc(var(--h) * 2.5);
  margin: 40px auto;
}
.apps__grid--six { width: calc(var(--w) * 4.75); }
.hex {
  position: absolute;
  width: var(--w);
  height: var(--h);
  clip-path: polygon(25% 0%, 75% 0%, 100% 50%, 75% 100%, 25% 100%, 0% 50%);
  overflow: hidden;
  /* PERF（D）：去掉常驻 will-change —— 10 个六边形=10 个常驻合成层（含 clip-path 裁剪，
     成本更高）。聚拢入场是一次性的、hover 缩放是临时的，二者动画期间浏览器都会自动提升。 */
  transition: filter .4s var(--ease-out), transform .5s var(--ease-out);
}
.hex--img { cursor: pointer; }
.hex--img .pic, .hex--img video {
  position: absolute; inset: 0; width: 100%; height: 100%;
  object-fit: cover;
  transition: transform .8s var(--ease-out), opacity .5s;
}
.hex--img video { opacity: 0; }
.hex--img.is-playing video { opacity: 1; }
.hex--img.is-playing .pic { opacity: 0; }
.hex--img:hover { transform: scale(1.04); z-index: 4; }
.hex--img::after {
  content:""; position: absolute; inset: 0; pointer-events: none;
  background: linear-gradient(180deg, rgba(0,20,15,0) 55%, rgba(0,20,15,.35) 100%);
}

.hex--text {
  display: flex; align-items: center; justify-content: center;
  color: #fff; text-align: left;
  cursor: default;
  padding: 50px;
}
.hex--text .cn {
  display: block;
  font-family: var(--font-display);
  font-size: clamp(18px, 1.6vw, 24px);
  font-weight: 900; letter-spacing: .15em;
  text-shadow: 0 2px 8px rgba(0,0,0,.18);
}
.hex--text .en {
  display: block;
  font-family: var(--font-en);
  font-size: 10px; font-weight: 600; letter-spacing: .25em;
  opacity: .92; margin-top: 0;
}
.hex--aero       { background: linear-gradient(120deg, #F2F0CA 0%, #FFFFFF 80%, #FFFFFF 100%); justify-content: flex-start; align-items: center; }
.hex--aero       .cn, .hex--aero       .en { color: #6F3215 !important; text-shadow: none; }
.hex--optical    { background: linear-gradient(299deg, #A8DCD8 0%, #FFFFFF 80%, #FFFFFF 100%); align-items: flex-end; }
.hex--optical    .cn, .hex--optical    .en { color: #114035 !important; text-shadow: none; text-align: right; }
.hex--newenergy  { background: linear-gradient(213deg, #A7A9BE 0%, #FFFFFF 80%, #FFFFFF 100%); justify-content: right; align-items: flex-start; }
.hex--newenergy  .cn, .hex--newenergy  .en { color: #272A48 !important; text-shadow: none; text-align: right; }
.hex--nuke       { background: linear-gradient(205deg, #E13647 0%, #FFFFFF 80%, #FFFFFF 100%); align-items: flex-start; }
.hex--nuke       .cn, .hex--nuke       .en { color: #9F353B !important; text-shadow: none; }
.hex--semi       { background: linear-gradient(204deg, #C2B0E0 0%, #FFFFFF 80%, #FFFFFF 100%); align-items: flex-start; }
.hex--semi       .cn { color: #38237B !important; text-shadow: none; text-align: right; line-height: 1.1; margin-bottom: 6px; }
.hex--semi       .en { color: #38237B !important; text-shadow: none; text-align: right; line-height: 1.5; }
.hex--ai         { background: linear-gradient(-153deg, #B8D6F5 0%, #FFFFFF 80%, #FFFFFF 100%); align-items: center; justify-content: center; }
.hex--ai         .cn, .hex--ai .en { color: #114035 !important; text-shadow: none; text-align: center; }
.hex--ai         .cn { line-height: 1.1; margin-bottom: 6px; }
.hex--ai         .en { line-height: 1.5; }
.hex--text[data-text-align="left"]  { justify-content: flex-start; }
.hex--text[data-text-align="right"] { justify-content: flex-end; }
.hex--text[data-text-align="left"] .cn,
.hex--text[data-text-align="left"] .en { text-align: left; }
.hex--text[data-text-align="right"] .cn,
.hex--text[data-text-align="right"] .en { text-align: right; }

/* 10/12-hex extended diamond cluster */
.hex.t1 { left: calc(var(--w) * 0.75); top: 0; }
.hex.t2 { left: calc(var(--w) * 2.25); top: 0; }
.hex.t6 { left: calc(var(--w) * 3.75); top: 0; }
.hex.i1 { left: 0;                      top: calc(var(--h) * 0.5); }
.hex.i2 { left: calc(var(--w) * 1.5);  top: calc(var(--h) * 0.5); }
.hex.i3 { left: calc(var(--w) * 3);    top: calc(var(--h) * 0.5); }
.hex.i4 { left: calc(var(--w) * 0.75); top: var(--h); }
.hex.i5 { left: calc(var(--w) * 2.25); top: var(--h); }
.hex.i6 { left: calc(var(--w) * 3.75); top: var(--h); }
.hex.t3 { left: 0;                      top: calc(var(--h) * 1.5); }
.hex.t4 { left: calc(var(--w) * 1.5);  top: calc(var(--h) * 1.5); }
.hex.t5 { left: calc(var(--w) * 3);    top: calc(var(--h) * 1.5); }

.hex.t1 div { margin-top: -10px; }
.hex.t2 div { margin-top: -50px; }
.hex.t6 div { margin-top: -8px; }
.hex.t3 div { margin-top: 10px; }
.hex.t4 div { margin-top: -15px; }
.hex.t5 div { margin-bottom: -50px; }

/* ================================================================
   5. SEARCH  ─ 产品检索框
   ================================================================ */
.search {
  position: relative;
  background: transparent;
  overflow: hidden;
  padding: 0px 0 0px;
  z-index: 10;
}
.search__title {
  position: relative; z-index: 3;
  text-align: center;
  margin: 0 auto 44px;
}
.search__title .triangle {
  display: block;
  width: 42px; aspect-ratio: 54 / 33;
  margin: 0 auto 14px;
  background: url('../../../images/half-green-logo.svg') no-repeat center / contain;
}
.search__box { position: relative; z-index: 5; }
.search__title .cn {
  font-family: var(--font-display);
  font-size: 36px;
  color: var(--green) !important;
  font-weight: 900;
  letter-spacing: .15em;
  line-height: 1;
}
.search__title .en {
  margin-top: 6px;
  font-size: 13px; letter-spacing: .2em;
  color: var(--green) !important;
  font-family: var(--font-en); font-weight: 600;
}
.search__box {
  width: min(680px, 90vw); margin: 0 auto;
  background: #Ffffff;
  border: 1px solid rgba(47,131,78,.18);
  border-radius: 999px;
  display: flex; align-items: center;
  padding: 6px 16px 6px 28px;
  box-shadow: 0 18px 40px -16px rgba(47,131,78,.06),
              0 4px 12px -4px rgba(47,131,78,.06);
  transform-origin: bottom center;
  transform: perspective(1200px) rotateX(-90deg) translateY(60px);
  opacity: 0;
  /* PERF（D）：去掉常驻 will-change —— 仅一次性 3D 翻转入场需要，揭示后无持续动画。 */
  transition: all linear 150ms;
}
.search__box:hover {
  box-shadow: 0 18px 40px -16px rgba(47,131,78,.26),
              0 4px 12px -4px rgba(47,131,78,.26);
  border: 1px solid rgba(47,131,78,.8);
}
.search__box input {
  flex: 1; border: 0; outline: 0; background: transparent;
  padding: 4px 8px; font-size: 15px; color: var(--ink); font-family: inherit;
}
.search__box input::placeholder { color: #9CB0A2; }
.search__box button {
  padding: 8px 20px; border-radius: 999px;
  background: var(--green); color: #fff;
  font-size: 14px; letter-spacing: 0;
  transition: background .3s, transform .3s;
}
.search__box button:hover { background: var(--green-deep); transform: translateX(2px); }
.search__tags {
  width: min(680px, 90vw); margin: 18px auto 0;
  display: flex; flex-wrap: wrap; align-items: center;
  gap: 8px;
  font-size: 13px; color: var(--ink-soft);
  font-family: var(--font-cn);
}
.search__tags .label { color: var(--ink-soft); margin-right: 4px; }
.search__tags a {
  display: inline-block;
  padding: 5px 14px;
  border: 1px solid rgba(47,131,78,.25);
  border-radius: 999px;
  color: var(--green);
  background: rgba(47,131,78,.04);
  transition: background .25s, color .25s, border-color .25s;
}
.search__tags a:hover {
  background: var(--green);
  color: #fff;
  border-color: var(--green);
}

/* ================================================================
   6. NEWS  ─ 最新发展轮播卡片
   注意：news drawer 初始位置在视口上方，靠 .appbg 的不透明背景遮挡
   ================================================================ */
.news {
  position: relative;
  padding: 120px 0 16px;
  background: #E2EEE6;
  overflow: visible;
}
.news__drawer { margin-top: 40px; }
.news::before {
  content:""; position: absolute; left: 0; right: 0; top: -1px; height: 165px;
  background: #fff;
  clip-path: polygon(0 0, 100% 0, 50% 100%);
  pointer-events: none; z-index: 5;
}
.news__head {
  max-width: 1200px; margin: 0 auto 40px;
  padding: 0 clamp(20px, 5vw, 60px);
  position: relative; z-index: 5;
  padding-top: 38px;
}
.news__head::before {
  content:""; position: absolute; left: clamp(20px, 5vw, 22px); top: 0;
  width: 38px; aspect-ratio: 54 / 33;
  background: url('../../../images/half-green-logo.svg') no-repeat center / contain;
}
.news__head .cn {
  font-family: var(--font-display); font-size: clamp(26px, 2.4vw, 42px); color: var(--red); font-weight: 900;
  letter-spacing: .15em; line-height: 1;
}
.news__head .en {
  margin-top: 6px; font-size: clamp(13px, 2vw, 23px); letter-spacing: .2em; color: var(--green);
  font-family: var(--font-en); font-weight: 600;
}
.news__viewport {
  position: relative;
  max-width: 1280px; margin: 0 auto;
  padding: 0 clamp(20px, 5vw, 60px);
}
.news__track {
  display: flex; gap: 20px;
  transition: transform .8s var(--ease-out);
  will-change: transform;
}
/* 轮播窗口（PHP 注入真实新闻时包裹 .news__track）：桌面只显示 4 张、裁掉第 5 张起的卡。
   纵向 padding + 等量负 margin：给卡片阴影/hover 上浮留出空间，避免被横向裁剪连带切掉，且不改变布局位置。 */
.news__window { overflow: hidden; padding: 24px 0 60px; margin: -24px 0 -60px; }
.news__card {
  flex: 0 0 calc((100% - 60px) / 4);
  aspect-ratio: 4/5;
  min-height: 320px;
  border-radius: 6px; overflow: hidden;
  cursor: pointer; position: relative;
  background: #1a2520;
  box-shadow: 0 14px 36px -18px rgba(0,0,0,.40);
  transition: transform .45s var(--ease-out), box-shadow .45s;
}
.news__card:hover { transform: translateY(-10px); box-shadow: 0 28px 60px -20px rgba(0,0,0,.55); }
.news__card .pic {
  position: absolute; inset: 0;
  background-size: cover; background-position: center;
  transition: transform .9s var(--ease-out);
}
.news__card:hover .pic { transform: scale(1.08); }
.news__card .veil {
  position: absolute; inset: 0;
  background: linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0) 35%, #0b371c82 65%, #011609d9 100%);
  pointer-events: none;
}
.news__card .body {
  position: absolute; left: 0; right: 0; bottom: 0;
  padding: 22px 22px 12px 22px; color: #fff;
}
.news__card .body .icon {
  width: 32px; height: 32px; margin-bottom: 14px;
  filter: brightness(0) invert(1);
  opacity: .9;
}
.news__card .body h4 {
  font-size: 14px; line-height: 1.6; color: #fff;
  font-weight: 500;
  font-family: var(--font-cn);
  display: -webkit-box; -webkit-box-orient: vertical;
  -webkit-line-clamp: 3; overflow: hidden;
  min-height: 4.3em;
}
.news__card .body .meta {
  margin-top: 14px; padding-top: 12px;
  border-top: 1px solid rgba(255,255,255,.25);
  display: flex; align-items: center; justify-content: space-between;
  font-size: 12px; color: rgba(255,255,255,.85); letter-spacing: .08em;
  font-family: var(--font-en);
}
.news__card .body .meta .arrow {
  width: 30px; height: 30px; border-radius: 50%;
  background: rgba(255,255,255,.22); color: #fff;
  display: grid; place-items: center;
  /* PERF（B）：去掉 backdrop-filter:blur —— 卡片轮播抽屉随滚动逐帧位移时，每张卡的
     这个小圆点都要重算背景模糊（24 张卡=24 个模糊区/合成层）→ GPU 滚动掉帧主因之一。
     圆点压在卡片底部的深色 veil 上，模糊近乎不可见；改为略提亮的半透明纯底，视觉等效。 */
  transition: all .35s var(--ease-out);
}
.news__card:hover .body .meta .arrow { background: var(--red); transform: translateX(4px); }
.news__nav {
  position: absolute; top: 50%; transform: translateY(-50%);
  width: 38px; height: 90px;
  background: transparent; border: 0; padding: 0;
  cursor: pointer; z-index: 5;
  transition: transform .3s var(--ease-out), opacity .3s;
  opacity: .85;
}
.news__nav:hover { opacity: 1; transform: translateY(-50%) scale(1.08); }
.news__nav img { display: block; width: 100%; height: 100%; object-fit: contain; }
.news__nav--prev { left: -52px; }
.news__nav--next { right: -52px; }
.news__dots i.is-active { background: var(--green); }
.news__dots {
  margin-top: 36px; display: flex; justify-content: center; gap: 10px;
  position: relative; z-index: 5;
}
.news__dots i {
  width: 10px; height: 10px; border-radius: 50%;
  background: rgba(47,131,78,.25);
  transition: all .35s var(--ease-out); cursor: pointer;
}
.news__dots i.is-active { background: var(--green); width: 28px; border-radius: 5px; }
.news__more { margin-left: -71px; display: flex; justify-content: center; position: absolute; z-index: 9; bottom: -70px; left: 50%; }

/* ================================================================
   RESPONSIVE (首页专属)
   ================================================================ */
@media (max-width: 980px) {
  .about__inner { grid-template-columns: 1fr; }
  .about__head { position: static; }

  /* ===== 应用领域：标题在上(不再盖住六边形) + 六边形横向滑动约 2 格 + 视频默认播放 ===== */
  .apps {
    display: flex; flex-direction: column;   /* 标题在上、网格在下：彻底避免标题盖住六边形 */
    overflow: visible;
    padding: 70px 0 24px;                     /* 顶部避开固定导航(64px) */
    perspective: none;                        /* 移动端不做 3D 聚拢入场 */
  }
  .apps__title {                              /* 移到顶部(flex order) */
    order: -1; position: relative; inset: auto;  /* 清除桌面态 right:8vw（relative 下会把标题左移 33px 错位） */
    text-align: left;
    padding: 40px 0 0 46px;                   /* 上 40 给绝对定位三角(高约26+间距14)；左 46 与企业文化一致 */
    margin: 0 0 16px;
  }
  /* 应用领域 + 最新发展 标题：与「关于·企业文化」标题统一（三角 42px 右边对齐中文左边 + 字号 + 间距）。
     用绝对定位三角（非负 margin 流内块）—— 后者在 .apps 的 flex 列里会把标题整体左移错位。 */
  .apps__title::before, .news__head::before {
    content: ""; display: block; position: absolute;
    width: 42px; aspect-ratio: 54 / 33; height: auto;
    left: 4px; top: 0;                               /* 三角右边(4+42=46)=中文左边；位于中文上方 */
    margin: 0;
    background: url('../../../images/half-green-logo.svg') no-repeat center / contain;
  }
  .apps__title .cn, .news__head .cn {
    font-size: clamp(26px, 2.4vw, 42px); letter-spacing: .15em; line-height: 1.1;
  }
  .apps__title .en, .news__head .en {
    margin-top: 8px; font-size: clamp(13px, 2vw, 23px); letter-spacing: .25em;
  }
  .apps__grid {
    --w: clamp(190px, 52vw, 240px); /* 放大：一屏约 2 格六边形 */
    width: 100%; min-width: 0;
    height: calc(var(--h) * 2.6);
    margin: 0;
    padding-left: 18px;
    overflow-x: auto; overflow-y: hidden;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
    transform-style: flat;
  }
  .apps__grid::-webkit-scrollbar { display: none; }
  .hex--img video { opacity: 1; }   /* 视频默认显示（底层 pic 作出帧前兜底） */

  /* ===== 最新发展：标题与应用领域统一形式 + 左侧留 40px + 原生横向滑动 ===== */
  .news__head {                     /* 与 apps__title / 企业文化 标题统一 */
    position: relative;
    padding: 40px 40px 0 46px;      /* 上 40 给三角；左 46 */
    margin-bottom: 28px;
  }
  .news__viewport {
    padding-left: 40px;             /* 卡片左侧也留 40px */
    overflow-x: auto; -webkit-overflow-scrolling: touch;
    scroll-snap-type: x mandatory; scroll-padding-left: 40px; scrollbar-width: none;
  }
  .news__viewport::-webkit-scrollbar { display: none; }
  .news__track { transform: none !important; transition: none; }
  .news__card { flex: 0 0 78%; scroll-snap-align: start; }
  .news__window { overflow: visible; padding: 0; margin: 0; }   /* 移动端走 .news__viewport 原生横滑，窗口透传不裁剪 */
  .news__card.is-clone { display: none; }   /* 克隆卡仅供桌面无缝循环；移动端原生横滑只显示真实卡 */
  .news__nav { display: none; }     /* 左右箭头原本就在视口外，移动端隐藏 */
  .news__dots { display: none; }    /* 改原生滚动后圆点不再反映位置，隐藏 */
  /* 「了解更多」按钮移进新闻绿底、抬到 V 遮罩之上（不再压在 V 型斜边上）；底部留白容纳它 */
  .news { padding-bottom: 86px; }
  .news__more { bottom: 30px; margin-left: -71px; }

  /* ===== 三角形 V 遮罩：陡度与移动端 hero 一致（20.8vw≈86px@414，缓 V）；
     并恢复「最新发展 → 页脚」绿色 V 遮罩（上一版改成渐变后消失了）。 ===== */
  .news::before,
  .vision::before {
    height: clamp(56px, 20.8vw, 150px);
  }
}
