/* 首页样式（仅首页使用） */

/* ---------- 首屏：通栏大图 + 下方两栏 ---------- */
.hero-split {
  position: relative;
  padding: 32px 0 58px;
  border-bottom: 1px solid var(--line);
  background: linear-gradient(180deg, #fff 0%, var(--surface) 100%);
}

/* 通栏大图：厂区实景，按原片比例展示，只做极小裁切 */
.hero-figure {
  position: relative;
  margin: 0;
  overflow: hidden;
  border-radius: 24px;
  background: var(--surface);
  box-shadow: 0 20px 44px rgba(11, 30, 46, 0.12);
}

.hero-figure img {
  width: 100%;
  height: auto;
  aspect-ratio: 16 / 8.5;
  object-fit: cover;
  object-position: center 50%;
  display: block;
}

/* 图下两栏：左文右信息 */
.hero-lower {
  display: grid;
  grid-template-columns: 1.15fr 0.85fr;
  gap: 48px;
  align-items: start;
  margin-top: 32px;
}

.hero-copy { max-width: 780px; }

.hero-copy h1 {
  margin-top: 12px;
  font-size: clamp(29px, 3.1vw, 39px);
  letter-spacing: -0.02em;
  line-height: 1.18;
  color: var(--ink);
}

.hero-copy h1 em {
  font-style: normal;
  position: relative;
  z-index: 0;
  color: var(--brand-strong);
  white-space: nowrap;
}

.hero-copy h1 em::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 4px;
  height: 8px;
  border-radius: 4px;
  background: rgba(11, 132, 184, 0.18);
  z-index: -1;
}

.hero-lead {
  margin-top: 14px;
  max-width: 560px;
  font-size: 16px;
  color: #3f5566;
}

.hero-actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 12px;
  margin-top: 22px;
}

.hero-side {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  min-width: 0;
}

.hero-points {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.hero-points li {
  padding: 6px 13px;
  font-size: 12.5px;
  color: #3f5566;
  background: #fff;
  border: 1px solid var(--line);
  border-radius: 999px;
  transition: border-color 0.2s ease, color 0.2s ease, background-color 0.2s ease;
}

.hero-points li:hover {
  border-color: #a9d9ec;
  background: var(--brand-soft);
  color: var(--brand-strong);
}

.facts-title {
  margin-top: 18px;
  font-size: 11.5px;
  font-weight: 700;
  letter-spacing: 0.14em;
  color: var(--brand-strong);
}

/* 常见工件与工艺：两列标签 */
.hero-facts {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
  margin-top: 10px;
  padding: 14px 0 0;
  border-top: 1px solid var(--line);
  list-style: none;
}

.hero-fact {
  min-width: 0;
  display: inline-flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 4px 10px;
  padding: 9px 14px;
  background: #fff;
  border: 1px solid var(--line);
  border-radius: 999px;
  overflow-wrap: anywhere;
  transition: border-color 0.2s ease, box-shadow 0.2s ease, background-color 0.2s ease;
}

.hero-fact:hover {
  border-color: #a9d9ec;
  background: var(--brand-soft);
  box-shadow: 0 6px 16px rgba(11, 30, 46, 0.08);
}

.hero-fact .fact-label {
  font-size: 12.5px;
  font-weight: 600;
  letter-spacing: 0.01em;
  color: var(--ink);
}

.hero-fact .fact-val {
  font-size: 12px;
  color: var(--muted);
}

.hero-fact a { color: var(--ink); text-decoration: none; transition: color 0.2s ease; }
.hero-fact a:hover { color: var(--brand-strong); }

/* ---------- 业务能力（便当格拼贴） ---------- */
/* 内容区变宽后，拼贴块同步加高，保持卡片比例 */
.bento {
  display: grid;
  grid-template-columns: 1.35fr 0.9fr 0.9fr;
  grid-template-rows: 330px 280px;
  grid-template-areas:
    "a a b"
    "c d d";
  gap: 16px;
  margin-top: 26px;
}

.bento-tile {
  position: relative;
  display: flex;
  overflow: hidden;
  border-radius: 18px;
  background: #0b1e2e;
  color: #fff;
  text-decoration: none;
  transition: transform 0.25s ease, box-shadow 0.25s ease;
}

.bento-tile:hover {
  transform: translateY(-3px);
  box-shadow: 0 18px 38px rgba(11, 30, 46, 0.24);
}

.bento-tile img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.5s ease;
}

.bento-tile:hover img { transform: scale(1.04); }

.bento-tile::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(11, 30, 46, 0.05) 28%, rgba(11, 30, 46, 0.86) 100%);
  pointer-events: none;
}

.bento-a { grid-area: a; }
.bento-b { grid-area: b; }
.bento-c { grid-area: c; }
.bento-d { grid-area: d; }

.bento-body {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 7px;
  align-self: flex-end;
  padding: 24px 26px;
  width: 100%;
}

.bento-num {
  font-size: 11.5px;
  font-weight: 700;
  letter-spacing: 0.18em;
  color: var(--brand);
}

.bento-body h3 { font-size: 20px; line-height: 1.35; color: #fff; }
.bento-a .bento-body h3,
.bento-d .bento-body h3 { font-size: 23px; }

.bento-body p {
  max-width: 520px;
  font-size: 13.5px;
  line-height: 1.65;
  color: #b7cdda;
}

.bento-link {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  margin-top: 4px;
  font-size: 13px;
  font-weight: 600;
  color: var(--brand-light);
  transition: gap 0.2s ease;
}

.bento-tile:hover .bento-link { gap: 11px; }

/* ---------- 工艺能力带 ---------- */
.band {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  border-top: 2px solid var(--ink);
  margin-top: 22px;
}

.band-step {
  padding: 20px 20px 16px;
  border-right: 1px solid var(--line);
  transition: background-color 0.25s ease;
}

.band-step:last-child { border-right: 0; }
.band-step:hover { background: rgba(232, 244, 250, 0.55); }

.band-num {
  display: block;
  font-size: 30px;
  line-height: 1;
  font-weight: 700;
  color: rgba(11, 132, 184, 0.24);
  letter-spacing: -0.02em;
}

.band-step h3 { margin-top: 9px; font-size: 16px; }
.band-step p { margin-top: 9px; font-size: 14px; color: var(--muted); }

.band-list {
  list-style: none;
  margin-top: 10px;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 6px;
  font-size: 13px;
  color: #3f5b6e;
}

.band-list li { display: flex; gap: 7px; }
.band-list li::before { content: "·"; color: var(--brand); font-weight: 700; }

/* 每步的交付物：流程带的证据行 */
.band-out {
  margin-top: 12px;
  padding-top: 10px;
  border-top: 1px dashed var(--line);
  font-size: 12.5px;
  line-height: 1.6;
  color: #3f5b6e;
}

.band-out span {
  display: inline-block;
  margin-right: 6px;
  padding: 1px 6px;
  border-radius: 4px;
  background: var(--brand-soft);
  color: var(--brand-strong);
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.06em;
}

/* ---------- 场景对照 ---------- */
.cmp-lead {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 30px;
  flex-wrap: wrap;
  margin-bottom: 28px;
}

.cmp-hint { font-size: 13px; color: var(--muted); }

/* ---------- 全页串联：章节编号 + 段间连接线 ---------- */
.flow-sec { position: relative; --flow-gap: 46px; }

/* 编号章：每段开头一枚，落在内容左缘，与段间细线同轴 */
.flow-no {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 26px;
  height: 26px;
  margin-bottom: 14px;
  font-size: 11.5px;
  font-weight: 700;
  letter-spacing: 0.02em;
  font-variant-numeric: tabular-nums;
  color: var(--brand-strong);
  background: var(--bg);
  border: 1px solid #bcd6e4;
  border-radius: 999px;
  transition: color 0.25s ease, background-color 0.25s ease, border-color 0.25s ease, box-shadow 0.25s ease;
}

/* 段与段之间的细线：从上一段底部接到下一段的编号章，x 与编号圆心对齐
   （容器最大 1680、左右留白 24、编号宽 26 → 宽屏下圆心 = 50% - 803px） */
.flow-sec::before,
.flow-sec::after {
  content: "";
  position: absolute;
  left: max(37px, calc(50% - 803px));
  width: 1px;
  height: var(--flow-gap);
  background: rgba(11, 30, 46, 0.15);
  pointer-events: none;
  transition: background-color 0.3s ease;
}

.flow-sec::before { top: 0; }
.flow-sec::after { bottom: 0; }

/* 滚到这一段时，编号与连接线点亮 */
.flow-sec.is-active .flow-no {
  color: #fff;
  background: var(--brand);
  border-color: var(--brand);
  box-shadow: 0 0 0 4px rgba(11, 132, 184, 0.14);
}

.flow-sec.is-active::before,
.flow-sec.is-active::after { background: rgba(11, 132, 184, 0.42); }

.board-sec.flow-sec { --flow-gap: 56px; }

/* ---------- 质量与追溯：浅色受控记录面板（与全站底色统一） ---------- */
.board-sec {
  position: relative;
  padding: 56px 0;
  background: var(--surface);
}

/* 记录面板：白底落在浅灰底上，只靠一层轻阴影托住，不加边框 */
.qc-board {
  position: relative;
  display: grid;
  grid-template-columns: 0.84fr 1.16fr;
  gap: 26px 46px;
  align-items: stretch;
  padding: 34px 36px 30px;
  background: var(--bg);
  border-radius: 20px;
  box-shadow: 0 2px 6px rgba(11, 30, 46, 0.03), 0 16px 38px rgba(11, 30, 46, 0.06);
}

/* 左栏纵向撑满，链接贴底，与右侧记录行末尾齐平 */
.qc-intro {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}

.qc-title {
  margin-top: 12px;
  font-size: clamp(25px, 3vw, 33px);
  line-height: 1.22;
  letter-spacing: -0.02em;
  color: var(--ink);
}

.qc-lead {
  margin-top: 16px;
  margin-bottom: 22px;
  max-width: 390px;
  font-size: 15px;
  line-height: 1.85;
  color: var(--muted);
}

.qc-more {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin-top: auto;
  padding-bottom: 4px;
  font-size: 13.5px;
  font-weight: 600;
  color: var(--brand-strong);
  text-decoration: none;
  border-bottom: 1px solid rgba(11, 132, 184, 0.34);
  transition: color 0.2s ease, border-color 0.2s ease;
}

.qc-more:hover { color: var(--brand); border-color: var(--brand); }
.qc-more:hover .btn-arrow { transform: rotate(45deg) translate(3px, -3px); }

/* 左栏底部两个入口：主做法链接 + 标准与记录 */
.qc-actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px 20px;
  margin-top: auto;
}

.qc-actions .qc-more { margin-top: 0; }

.qc-link {
  font-size: 13px;
  color: var(--muted);
  text-decoration: none;
  padding-bottom: 3px;
  border-bottom: 1px solid var(--line);
  transition: color 0.2s ease, border-color 0.2s ease;
}

.qc-link:hover { color: var(--brand-strong); border-color: rgba(11, 132, 184, 0.4); }

.qc-log { display: grid; }

.qc-row {
  display: grid;
  grid-template-columns: 42px 84px minmax(0, 1fr);
  gap: 8px 14px;
  align-items: baseline;
  padding: 20px 12px;
  border-top: 1px solid var(--line);
  transition: background-color 0.2s ease, border-color 0.2s ease;
}

.qc-row:last-child { border-bottom: 1px solid var(--line); }

.qc-row:hover {
  background: var(--brand-soft);
  border-color: rgba(11, 132, 184, 0.38);
}

.qc-num {
  font-size: 12.5px;
  font-weight: 700;
  letter-spacing: 0.14em;
  font-variant-numeric: tabular-nums;
  color: #7e95a5;
  transition: color 0.2s ease;
}

.qc-row:hover .qc-num { color: var(--brand); }

.qc-name {
  font-size: 16.5px;
  color: var(--ink);
}

.qc-desc {
  font-size: 14.5px;
  line-height: 1.75;
  color: var(--muted);
}

.qc-tags {
  grid-column: 1 / -1;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 12px 16px;
  margin-top: 10px;
  padding-top: 22px;
  border-top: 1px solid var(--line);
}

.qc-tags-label {
  font-size: 11.5px;
  font-weight: 700;
  letter-spacing: 0.16em;
  color: var(--brand-strong);
}

.qc-tag-list {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  list-style: none;
}

.qc-tag-list li {
  padding: 5px 12px;
  font-size: 12.5px;
  color: var(--ink);
  background: var(--surface);
  border: 1px solid var(--line);
  border-radius: 999px;
  transition: border-color 0.2s ease, color 0.2s ease, background-color 0.2s ease;
}

.qc-tag-list li:hover {
  border-color: var(--brand);
  background: var(--brand-soft);
  color: var(--brand-strong);
}

.qc-tags-note {
  margin-left: auto;
  font-size: 12px;
  color: var(--muted);
}

/* ---------- CTA ---------- */
.cta-section { padding: 10px 0 54px; }

.cta-band {
  display: grid;
  grid-template-columns: 1.4fr 0.9fr;
  gap: 36px;
  align-items: center;
  padding: 32px 38px;
  border-radius: 22px;
  background:
    radial-gradient(600px 300px at 96% 0%, rgba(11, 132, 184, 0.24), transparent 68%),
    var(--ink);
  color: #fff;
}

.cta-band h2 { font-size: clamp(23px, 2.8vw, 31px); }
.cta-band p { margin-top: 12px; color: #a9c2d1; font-size: 15px; max-width: 520px; }

.cta-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; justify-content: flex-end; }

.cta-band .btn-ghost {
  background: transparent;
  border-color: rgba(255, 255, 255, 0.28);
  color: #fff;
}

.cta-band .btn-ghost:hover {
  border-color: var(--brand);
  color: #fff;
  background: rgba(11, 132, 184, 0.14);
}

/* ---------- 响应式 ---------- */
@media (max-width: 980px) {
  .hero-figure img { aspect-ratio: 16 / 8.5; }
  .hero-lower { grid-template-columns: 1fr; gap: 26px; margin-top: 26px; }
  .hero-copy { max-width: 100%; }
  .hero-split { padding-bottom: 50px; }
  .bento {
    grid-template-columns: 1fr 1fr;
    grid-template-rows: 260px 230px 240px;
    grid-template-areas:
      "a a"
      "b c"
      "d d";
  }
  .qc-board { grid-template-columns: 1fr; gap: 26px; padding: 28px 26px 26px; }
  .qc-lead { max-width: 640px; }
  .qc-tags-note { margin-left: 0; }
  .band { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .band-step:nth-child(2) { border-right: 0; }
  .band-step:nth-child(1),
  .band-step:nth-child(2) { border-bottom: 1px solid var(--line); }
  .cta-band { grid-template-columns: 1fr; padding: 36px 28px; }
  .cta-actions { justify-content: flex-start; }
}

/* 四步流程与场景卡在窄屏纵向堆叠，避免挤在一行 */
@media (max-width: 720px) {
  .band { grid-template-columns: 1fr; }
  .band-step { border-right: 0; border-bottom: 1px solid var(--line); }
  .band-step:last-child { border-bottom: 0; }
}

@media (max-width: 640px) {
  .flow-sec { --flow-gap: 38px; }
  .board-sec.flow-sec { --flow-gap: 42px; }
  .flow-sec::before,
  .flow-sec::after { left: 30px; }
  .flow-no { width: 24px; height: 24px; margin-bottom: 12px; }
  .hero-split { padding: 20px 0 42px; }
  .hero-figure { border-radius: 18px; }
  .hero-figure img { aspect-ratio: 16 / 9; }
  .hero-lower { margin-top: 22px; gap: 22px; }
  .hero-copy h1 { font-size: 26px; line-height: 1.25; }
  .hero-lead { font-size: 15px; }
  /* 胶囊行与材料文字一律允许换行，绝不撑宽 */
  .hero-points { flex-wrap: wrap; gap: 6px; }
  .hero-points li { flex: 0 1 auto; max-width: 100%; white-space: normal; overflow-wrap: anywhere; }
  .hero-fact .fact-label,
  .hero-fact .fact-val { white-space: normal; overflow-wrap: anywhere; }
  /* 材料条两列排布，首屏更紧凑 */
  .hero-facts { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
  /* 两列里改成上下两行（工件在上、工艺在下）：一行塞不下时不会折成高低不齐 */
  .hero-fact {
    flex: none;
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-start;
    gap: 2px;
    width: 100%;
  }
  .bento {
    grid-template-columns: 1fr;
    grid-template-rows: repeat(4, 230px);
    grid-template-areas: "a" "b" "c" "d";
    gap: 12px;
  }
  .bento-body { padding: 20px 18px; }
  .bento-a .bento-body h3, .bento-d .bento-body h3 { font-size: 20px; }
  .bento-body h3 { font-size: 18px; }
  .cta-section { padding-bottom: 44px; }
  .board-sec { padding: 42px 0 44px; }
  .qc-board {
    padding: 24px 18px 22px;
    border-radius: 16px;
    box-shadow: 0 2px 5px rgba(11, 30, 46, 0.03), 0 10px 24px rgba(11, 30, 46, 0.05);
  }
  .qc-title { font-size: 26px; }
  .qc-row {
    grid-template-columns: 32px minmax(0, 1fr);
    padding: 16px 8px;
  }
  .qc-desc { grid-column: 2 / -1; }
  .qc-tags { margin-top: 12px; }

  /* 窄屏防溢出：文本容器、胶囊与卡片不撑破视口 */
  .hero-lower > *,
  .hero-figure,
  .hero-copy,
  .hero-copy h1,
  .hero-lead,
  .hero-side,
  .hero-points,
  .hero-points li,
  .hero-facts,
  .hero-facts > *,
  .sec-head > div,
  .cmp-lead > div,
  .band-step,
  .scene-card,
  .qc-board > *,
  .news-feature-wrap > *,
  .cta-band > * {
    max-width: 100%;
    min-width: 0;
  }
  .hero-copy h1,
  .sec-title,
  .qc-title { overflow-wrap: anywhere; }
  .hero-copy h1 em { white-space: normal; }
  .hero-points li { white-space: normal; overflow-wrap: anywhere; }
}

/* ---------- 场景卡（四个场景，四个重点） ---------- */
.scene-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
  margin-top: 24px;
}

.scene-card {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 11px;
  padding: 24px 24px 20px;
  background: #fff;
  border: 1px solid var(--line);
  border-radius: 18px;
  overflow: hidden;
  transition: transform 0.25s ease, box-shadow 0.25s ease, border-color 0.25s ease;
}

.scene-card::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 3px;
  background: var(--brand);
  transform: scaleX(0.22);
  transform-origin: left;
  transition: transform 0.3s ease;
}

.scene-card:hover {
  transform: translateY(-3px);
  border-color: #a9d9ec;
  box-shadow: var(--shadow-md);
}

.scene-card:hover::before { transform: scaleX(1); }

.scene-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
}

.scene-num {
  font-size: 11.5px;
  font-weight: 600;
  letter-spacing: 0.16em;
  color: var(--muted);
}

.scene-head h3 { margin-top: 6px; font-size: 20px; }

.scene-key-wrap {
  flex-shrink: 0;
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 4px;
}

.key-label {
  font-size: 10.5px;
  letter-spacing: 0.14em;
  color: var(--muted);
}

.scene-key {
  flex-shrink: 0;
  padding-top: 2px;
  font-size: 17px;
  font-weight: 700;
  line-height: 1.25;
  letter-spacing: 0.01em;
  color: var(--ink);
  white-space: nowrap;
}

.scene-parts { font-size: 12.5px; color: var(--muted); }

.scene-focus {
  list-style: none;
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  margin: 0;
  padding: 0;
}

.scene-focus li {
  padding: 5px 11px;
  font-size: 12.5px;
  font-weight: 600;
  color: var(--brand-strong);
  background: var(--brand-soft);
  border: 1px solid #bfe3f2;
  border-radius: 999px;
}

/* 做法紧跟标题：浅青底 + 左侧品牌色，成为卡片里的主信息 */
.scene-do {
  margin-top: 2px;
  padding: 11px 13px;
  border-left: 3px solid var(--brand);
  border-radius: 0 10px 10px 0;
  background: var(--brand-soft);
  font-size: 14px;
  line-height: 1.7;
  color: var(--ink);
}

.scene-do strong {
  margin-right: 6px;
  color: var(--brand-strong);
  font-weight: 700;
}

@media (max-width: 900px) {
  .scene-grid { grid-template-columns: 1fr; }
}

@media (max-width: 640px) {
  .scene-card { padding: 20px 18px 16px; }
  .scene-head h3 { font-size: 18px; }
  .scene-key { font-size: 16px; }
}

/* ---------- 到访位置：示意图 + 地址 ---------- */
.map-sec { padding: 10px 0 54px; }

.map-card {
  display: grid;
  grid-template-columns: 1.15fr 0.85fr;
  min-width: 0;
  background: #fff;
  border: 1px solid var(--line);
  border-radius: 22px;
  overflow: hidden;
}

.map-media {
  min-width: 0;
  background: var(--surface);
}

.map-media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.map-info {
  min-width: 0;
  padding: 34px 38px;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}

.map-addr {
  margin-top: 12px;
  font-size: 16px;
  line-height: 1.7;
  color: var(--ink);
}

.map-meta {
  list-style: none;
  margin: 16px 0 0;
  padding: 0;
  display: grid;
  gap: 9px;
  font-size: 13.5px;
  color: var(--muted);
}

.map-meta li { display: flex; gap: 10px; }

.map-meta li span {
  flex-shrink: 0;
  width: 44px;
  color: var(--brand-strong);
  font-weight: 600;
}

.map-meta a { color: var(--ink); text-decoration: none; transition: color 0.2s ease; }
.map-meta a:hover { color: var(--brand-strong); }

.map-info .link-more {
  margin-top: auto;
  padding-top: 18px;
}

@media (max-width: 980px) {
  .map-card { grid-template-columns: 1fr; }
  .map-media { aspect-ratio: 16 / 9; }
  .map-info { padding: 24px 22px 26px; }
  .map-info .link-more { margin-top: 18px; padding-top: 0; }
}

/* 小屏手机（390–430）：字号再收一档，保证不横向溢出 */
@media (max-width: 430px) {
  /* 小屏左右留白 16、编号宽 24 → 圆心 28，细线与编号保持同轴 */
  .flow-sec::before,
  .flow-sec::after { left: 28px; }
  .hero-copy h1 { font-size: 25px; }
  .hero-lead { font-size: 15px; }
  .hero-points li { font-size: 12px; padding: 5px 10px; }
  .hero-facts { gap: 6px; }
  .hero-fact { padding: 8px 12px; }
  .hero-fact .fact-label { font-size: 12px; }
  .hero-fact .fact-val { font-size: 11.5px; }
  .qc-board { padding: 20px 14px 18px; }
  .qc-title { font-size: 23px; }
  .scene-card { padding: 18px 16px 14px; }
  .map-info { padding: 20px 18px 22px; }
}
