/* ————— 天工旺量子科技 · 核心样式表 (Stitch 框架重塑版) ————— */

*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  background: var(--bg-deep, #05070F);
  color: var(--ink2);
  font-family: var(--f-en), var(--f-cn);
  -webkit-font-smoothing: antialiased;
  overflow-x: hidden;
}
::selection{background: var(--brand-cyan); color: #05070F}

/* ————— 全局点阵场 ————— */
#field{
  position: fixed;
  inset: 0;
  z-index: 0;
  pointer-events: none;
  opacity: .75;
  mix-blend-mode: screen;
}
.dom-dots #field{display:none}
.dom-dots body::before{
  content: "";
  position: fixed;
  inset: 0;
  background-image: radial-gradient(rgba(65, 188, 245, .20) 1px, transparent 1px);
  background-size: 28px 28px;
  pointer-events: none;
  z-index: 0;
}
#bar{
  position: fixed;
  top: 0;
  left: 0;
  height: 2px;
  width: 0;
  background: var(--grad-quantum-h);
  box-shadow: 0 0 12px var(--brand-cyan);
  z-index: 100;
}

/* ————— 顶部悬浮胶囊导航栏 ————— */
nav{
  position: fixed;
  top: 14px;
  left: 50%;
  transform: translateX(-50%);
  z-index: 50;
  display: flex;
  align-items: center;
  gap: 16px;
  padding: 8px 14px 8px 18px;
  border-radius: var(--rp);
  border: var(--hair-accent);
  background: rgba(5, 7, 15, .72);
  backdrop-filter: blur(28px);
  -webkit-backdrop-filter: blur(28px);
  box-shadow: 0 20px 50px -10px rgba(0,0,0,.6), 0 0 25px -5px rgba(65,188,245,.15), rgba(255,255,255,.2) 0 1px 0 0 inset;
  max-width: 96vw;
  flex-wrap: wrap;
  justify-content: center;
  transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1);
}
nav .nav-brand{
  display: inline-flex;
  align-items: center;
  gap: 10px;
  text-decoration: none;
  cursor: pointer;
  padding-right: 6px;
  user-select: none;
}
nav .logo-icon{
  width: 26px;
  height: 26px;
  border-radius: 50%;
  object-fit: contain;
  filter: drop-shadow(0 0 8px rgba(65,188,245,.6));
  transition: transform .3s cubic-bezier(.4,0,.2,1), filter .3s ease;
}
nav .nav-brand:hover .logo-icon{
  transform: rotate(15deg) scale(1.08);
  filter: drop-shadow(0 0 14px var(--brand-cyan));
}
nav .logo-title{
  font-weight: 600;
  letter-spacing: .12em;
  font-size: 13.5px;
  color: #fff;
  font-family: var(--f-cn);
  white-space: nowrap;
}
nav .logo-tag{
  font-style: normal;
  color: var(--brand-cyan);
  font-weight: 600;
  margin-left: 6px;
  font-size: 8.5px;
  letter-spacing: .18em;
  padding: 2px 7px;
  border-radius: var(--rp);
  background: rgba(65, 188, 245, 0.14);
  border: 0.5px solid rgba(65, 188, 245, 0.35);
}
.nav-links-desktop{
  display: inline-flex;
  align-items: center;
  gap: 16px;
}
nav a[data-p]{
  color: var(--mut);
  text-decoration: none;
  font-size: 10px;
  letter-spacing: .16em;
  text-transform: uppercase;
  cursor: pointer;
  transition: all .2s ease;
  padding: 4px 6px;
  border-radius: 6px;
  white-space: nowrap;
}
nav a[data-p] b{
  color: rgba(65, 188, 245, .45);
  font-weight: 400;
  margin-right: 4px;
}
nav a[data-p]:hover, nav a[data-p].on{
  color: #fff;
  background: rgba(65, 188, 245, .10);
}
nav a[data-p].on b{
  color: var(--brand-cyan);
  font-weight: 600;
}
nav .cta-contact{
  background: var(--grad-quantum);
  color: #fff;
  border: none;
  border-radius: var(--rp);
  padding: 6px 15px;
  font-size: 10px;
  letter-spacing: .16em;
  cursor: pointer;
  font-weight: 600;
  transition: all .2s ease;
  box-shadow: 0 0 16px rgba(65, 188, 245, 0.35);
  white-space: nowrap;
}
nav .cta-contact:hover{
  transform: translateY(-1px);
  box-shadow: 0 0 24px rgba(65, 188, 245, 0.6);
}

/* 移动端汉堡切换按钮 (桌面默认隐藏) */
.mobile-nav-toggle{
  display: none;
  background: rgba(255, 255, 255, 0.04);
  border: 1px solid rgba(255, 255, 255, 0.1);
  cursor: pointer;
  padding: 0;
  width: 40px;
  height: 40px;
  border-radius: 8px;
  position: relative;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  gap: 5px;
  z-index: 1001;
  -webkit-tap-highlight-color: transparent;
  transition: all 0.2s ease;
}
.mobile-nav-toggle:active{
  background: rgba(65, 188, 245, 0.15);
  border-color: rgba(65, 188, 245, 0.4);
}
.mobile-nav-toggle .toggle-line{
  display: block;
  width: 18px;
  height: 2px;
  background: #fff;
  border-radius: 2px;
  transition: transform 0.28s cubic-bezier(0.16, 1, 0.3, 1), opacity 0.2s ease, background-color 0.2s ease;
  transform-origin: center;
}
.mobile-nav-toggle.active .line-1{
  transform: translateY(7px) rotate(45deg);
  background: var(--brand-cyan);
}
.mobile-nav-toggle.active .line-2{
  opacity: 0;
  transform: scaleX(0);
}
.mobile-nav-toggle.active .line-3{
  transform: translateY(-7px) rotate(-45deg);
  background: var(--brand-cyan);
}

/* ————— 移动端全屏量子导航抽屉 ————— */
.mobile-drawer{
  position: fixed;
  inset: 0;
  z-index: 999;
  visibility: hidden;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.28s cubic-bezier(0.16, 1, 0.3, 1), visibility 0.28s;
}
.mobile-drawer.open{
  visibility: visible;
  opacity: 1;
  pointer-events: auto;
}
.mobile-drawer-backdrop{
  position: absolute;
  inset: 0;
  background: rgba(3, 5, 12, 0.78);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
}
.mobile-drawer-content{
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  width: min(86vw, 340px);
  background: rgba(6, 10, 22, 0.96);
  backdrop-filter: blur(32px);
  -webkit-backdrop-filter: blur(32px);
  border-left: 1px solid rgba(65, 188, 245, 0.22);
  box-shadow: -15px 0 40px rgba(0, 0, 0, 0.8), 0 0 30px rgba(65, 188, 245, 0.12);
  display: flex;
  flex-direction: column;
  transform: translateX(100%);
  transition: transform 0.32s cubic-bezier(0.16, 1, 0.3, 1);
  padding: max(16px, env(safe-area-inset-top)) 18px max(24px, env(safe-area-inset-bottom));
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
}
.mobile-drawer.open .mobile-drawer-content{
  transform: translateX(0);
}
.mobile-drawer-header{
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding-bottom: 16px;
  border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}
.mobile-drawer-header .nav-brand{
  display: inline-flex;
  align-items: center;
  gap: 10px;
  cursor: pointer;
}
.mobile-drawer-header .logo-icon{
  width: 28px;
  height: 28px;
  border-radius: 50%;
  object-fit: contain;
  filter: drop-shadow(0 0 8px rgba(65,188,245,.6));
}
.mobile-drawer-header .logo-title{
  font-weight: 600;
  letter-spacing: .12em;
  font-size: 14px;
  color: #fff;
  font-family: var(--f-cn);
  white-space: nowrap;
}
.mobile-drawer-close{
  background: rgba(255, 255, 255, 0.06);
  border: 1px solid rgba(255, 255, 255, 0.12);
  color: #fff;
  width: 36px;
  height: 36px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: all 0.2s;
  -webkit-tap-highlight-color: transparent;
}
.mobile-drawer-close:active{
  background: rgba(65, 188, 245, 0.2);
  border-color: var(--brand-cyan);
  color: var(--brand-cyan);
}
.mobile-drawer-body{
  display: flex;
  flex-direction: column;
  flex: 1;
  padding-top: 18px;
  justify-content: space-between;
}
.mobile-nav-group{
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.mobile-nav-link{
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 12px 16px;
  border-radius: 10px;
  text-decoration: none;
  background: rgba(255, 255, 255, 0.02);
  border: 1px solid transparent;
  color: #E2E8F0;
  cursor: pointer;
  transition: all 0.22s ease;
  -webkit-tap-highlight-color: transparent;
}
.mobile-nav-link:active, .mobile-nav-link.on{
  background: linear-gradient(90deg, rgba(65, 188, 245, 0.14), rgba(132, 97, 239, 0.08));
  border-color: rgba(65, 188, 245, 0.35);
  color: #fff;
  box-shadow: 0 0 16px rgba(65, 188, 245, 0.15);
}
.mobile-nav-link .m-num{
  font-family: var(--f-mono);
  font-size: 13px;
  font-weight: 600;
  color: var(--brand-cyan);
  opacity: 0.85;
}
.mobile-nav-link .m-text{
  font-size: 14.5px;
  font-weight: 500;
  font-family: var(--f-cn);
  letter-spacing: 0.05em;
  flex: 1;
}
.mobile-nav-link .m-sub{
  font-family: var(--f-mono);
  font-size: 9px;
  letter-spacing: 0.12em;
  color: var(--mut);
  opacity: 0.6;
}
.mobile-drawer-actions{
  margin-top: 24px;
  display: flex;
  flex-direction: column;
  gap: 18px;
}
.mobile-drawer-cta{
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  background: var(--grad-quantum);
  color: #fff;
  border: none;
  border-radius: 9999px;
  padding: 13px 20px;
  font-size: 13.5px;
  font-weight: 600;
  letter-spacing: 0.06em;
  cursor: pointer;
  box-shadow: 0 4px 20px rgba(65, 188, 245, 0.4);
  transition: all 0.2s ease;
  -webkit-tap-highlight-color: transparent;
}
.mobile-drawer-cta:active{
  transform: scale(0.98);
  box-shadow: 0 2px 10px rgba(65, 188, 245, 0.6);
}
.mobile-drawer-contact{
  display: flex;
  flex-direction: column;
  gap: 8px;
  padding: 12px 14px;
  background: rgba(255, 255, 255, 0.03);
  border: 1px solid rgba(255, 255, 255, 0.06);
  border-radius: 10px;
}
.m-contact-item{
  display: flex;
  flex-direction: column;
  gap: 2px;
}
.m-contact-item .m-label{
  font-size: 10px;
  color: var(--mut);
  letter-spacing: 0.05em;
}
.m-contact-item .m-val{
  font-size: 11.5px;
  color: #fff;
  font-family: var(--f-mono);
  text-decoration: none;
}
.m-contact-item a.m-val{
  color: var(--brand-cyan);
}
body.drawer-open{
  overflow: hidden !important;
  touch-action: none;
}
.mobile-only{
  display: none !important;
}
.table-scroll-hint{
  text-align: center;
  font-size: 11.5px;
  color: var(--brand-cyan);
  padding: 8px 12px;
  margin-bottom: 10px;
  background: rgba(65, 188, 245, 0.08);
  border: 1px dashed rgba(65, 188, 245, 0.25);
  border-radius: 6px;
  letter-spacing: 0.08em;
  animation: pulseHint 2.4s ease-in-out infinite;
}
@keyframes pulseHint{
  0%, 100%{ opacity: 0.75; }
  50%{ opacity: 1; }
}

/* ————— 单页应用切换动效 ————— */
.page{display:none}
.page.on{
  display: block;
  animation: pgin .42s cubic-bezier(.22,1,.36,1);
}
@keyframes pgin{
  from{opacity:0;transform:translateY(16px)}
  to{opacity:1;transform:none}
}

/* ————— 排版与版式 ————— */
section{
  position: relative;
  z-index: 1;
  min-height: 100vh;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 32px;
}
.wrap{width: 100%; max-width: 1280px; margin: 0 auto; box-sizing: border-box;}
.psec{
  min-height: auto;
  padding: 96px 32px 72px;
  border-top: 0.57px solid rgba(65, 188, 245, .12);
}
.kicker{
  font-size: 9.5px;
  letter-spacing: .22em;
  text-transform: uppercase;
  color: var(--mut);
  margin-bottom: 12px;
}
.kicker i{
  font-style: normal;
  color: var(--brand-cyan);
  margin-right: 8px;
  font-weight: 600;
}
.display{
  font-size: clamp(36px, 6.4vw, 96px);
  font-weight: 300;
  letter-spacing: -0.015em;
  line-height: 1.14;
  color: #fff;
}
.display b{
  font-weight: 600;
  background: var(--grad-quantum-h);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}
.lede{
  font-size: 14.5px;
  line-height: 2;
  color: var(--mut);
  max-width: 620px;
  font-family: var(--f-cn);
}

/* ————— Stitch 拟态容器与面板 (Shell & Panel) ————— */
.shell{
  display: flex;
  padding: 1px;
  border-radius: var(--r2);
  background:
    linear-gradient(rgba(65,188,245,.08) 1px, transparent 1px),
    linear-gradient(90deg, rgba(65,188,245,.08) 1px, transparent 1px),
    linear-gradient(135deg, rgba(65,188,245,.35), rgba(132,97,239,.35));
  transition: box-shadow .35s ease, transform .2s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  position: relative;
  transform-style: preserve-3d;
  perspective: 1000px;
}
.shell::before {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: inherit;
  opacity: 0;
  transition: opacity 0.3s ease;
  background: radial-gradient(
    600px circle at var(--mouse-x, 50%) var(--mouse-y, 50%),
    rgba(65, 188, 245, 0.4),
    transparent 40%
  );
  z-index: 0;
}
.shell:hover::before {
  opacity: 1;
}
.shell:hover{
  box-shadow: 0 12px 36px -8px rgba(65,188,245,.25);
  transform: translateY(-2px); /* Default if JS is disabled */
  z-index: 10;
}
.panel{
  border-radius: 31px;
  background: linear-gradient(160deg, rgba(13, 22, 46, .85), rgba(5, 7, 15, .90));
  border: 0.57px solid rgba(65, 188, 245, .18);
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
  box-shadow: rgba(0,0,0,.5) 0 25px 50px -12px, rgba(65,188,245,.2) 0 1px 0 0 inset;
  position: relative;
  z-index: 1;
  width: 100%;
}
.panel::before {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: inherit;
  opacity: 0;
  transition: opacity 0.3s ease;
  background: radial-gradient(
    800px circle at var(--mouse-x, 50%) var(--mouse-y, 50%),
    rgba(255, 255, 255, 0.04),
    transparent 40%
  );
  pointer-events: none;
  z-index: 0;
}
.shell:hover .panel::before {
  opacity: 1;
}
.shell>.panel{flex: 1}

/* ————— 胶囊徽章 Chips ————— */
.chip{
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 8px 16px;
  border-radius: var(--rp);
  border: var(--hair-accent);
  background: rgba(65, 188, 245, .08);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  font-size: 11.5px;
  letter-spacing: .08em;
  color: var(--ink2);
  font-family: var(--f-cn);
  transition: all .25s ease;
}
.chip:hover{
  border-color: var(--brand-cyan);
  background: rgba(65, 188, 245, .18);
  transform: translateY(-2px);
  box-shadow: 0 0 14px rgba(65, 188, 245, .25);
}
.chip .dot{
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: var(--brand-cyan);
  box-shadow: 0 0 12px var(--brand-cyan);
}

/* ————— 按钮 Buttons ————— */
.btn{
  display: inline-flex;
  align-items: center;
  gap: 10px;
  background: #080D1A;
  color: #fff;
  border: 0.57px solid rgba(65, 188, 245, .25);
  border-radius: var(--rp);
  padding: 11px 24px;
  font-size: 11px;
  letter-spacing: .18em;
  text-transform: uppercase;
  cursor: pointer;
  text-decoration: none;
  transition: all .2s ease;
  font-family: var(--f-en);
}
.btn:hover{
  border-color: var(--brand-cyan);
  box-shadow: 0 0 16px rgba(65, 188, 245, .3);
  transform: translateY(-1px);
}
.btn.pri{
  background: var(--grad-quantum);
  border: none;
  color: #fff;
  font-weight: 600;
  box-shadow: 0 0 20px rgba(65, 188, 245, .4);
}
.btn.pri:hover{
  box-shadow: 0 0 30px rgba(65, 188, 245, .7);
}
.btn.ghost{background: transparent}
.btn:disabled{
  opacity: .5;
  cursor: not-allowed;
  transform: none !important;
}

/* ————— 视差淡入动效 ————— */
.rv{opacity:0;transform:translateY(28px);transition:opacity .6s ease,transform .6s cubic-bezier(.4,0,.2,1)}
.rv.in{opacity:1;transform:none}

/* ————— 网格与表格 ————— */
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.grid4{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.grid5{display:grid;grid-template-columns:repeat(5,1fr);gap:14px}

.tbl{width:100%;border-collapse:collapse;margin-top:18px}
.tbl th{font-size:9px;letter-spacing:.18em;text-transform:uppercase;color:var(--mut);text-align:left;padding:10px 12px;border-bottom:1px solid rgba(65,188,245,.2)}
.tbl td{font-size:12.5px;padding:13px 12px;border-bottom:0.57px solid rgba(255,255,255,.08);color:var(--ink2);font-family:var(--f-cn);line-height:1.85;vertical-align:top}
.tbl td b{color:#fff}
.tbl .rec td{color:var(--mut);font-size:11.5px}
.note{font-size:10.5px;letter-spacing:.06em;color:rgba(244,244,245,.48);margin-top:14px;line-height:1.9;font-family:var(--f-cn)}

/* ————— 时间轴 ————— */
.tl{margin-top:28px;border-left:1px solid rgba(65,188,245,.25);padding-left:28px}
.tl .row{position:relative;padding:0 0 30px 8px;display:flex;gap:22px;align-items:baseline;flex-wrap:wrap}
.tl .row::before{content:"";position:absolute;left:-33px;top:6px;width:9px;height:9px;border-radius:50%;background:#05070E;border:1.5px solid var(--brand-cyan)}
.tl .row.big::before{background:var(--brand-cyan);box-shadow:0 0 16px var(--brand-cyan)}
.tl .yr{font-size:26px;font-weight:300;color:#fff;min-width:78px;letter-spacing:-0.01em}
.tl .tt{font-size:15px;color:var(--ink2);font-family:var(--f-cn)}
.tl .tt small{display:block;font-size:12.5px;color:var(--mut);margin-top:4px}

/* ————— 简历上传拖拽区 ————— */
.fup{
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  border: 0.57px dashed rgba(65, 188, 245, .4);
  border-radius: var(--r1);
  padding: 20px 16px;
  cursor: pointer;
  transition: all .2s ease;
  font-size: 12.5px;
  color: var(--mut);
  font-family: var(--f-cn);
  background: rgba(65, 188, 245, .04);
}
.fup:hover, .fup.dragover{
  border-color: var(--brand-cyan);
  background: rgba(65, 188, 245, .12);
  color: #fff;
  box-shadow: 0 0 18px rgba(65,188,245,.2);
}
.fup input{display:none}
.fup::before{content:"↑";font-size:16px;color:var(--brand-cyan);font-weight:bold}
.fup-info{display:flex;align-items:center;justify-content:space-between;width:100%}
.fup-remove{color:#F87171;cursor:pointer;font-size:12px;margin-left:8px;padding:2px 6px;border-radius:4px;border:0.5px solid rgba(248,113,113,0.3)}
.fup-remove:hover{background:rgba(248,113,113,0.2)}

/* ————— 自定义下拉菜单 ————— */
.ddown{position:relative}
.ddown .dd-btn{width:100%;display:flex;justify-content:space-between;align-items:center;background:rgba(255,255,255,.04);border:var(--hair-accent);border-radius:var(--r1);padding:12px 14px;color:#fff;font-size:13px;font-family:var(--f-cn);cursor:pointer;transition:all .2s ease}
.ddown .dd-btn:hover,.ddown.open .dd-btn{border-color:var(--brand-cyan);box-shadow:0 0 12px rgba(65,188,245,.2)}
.ddown .dd-btn::after{content:"";width:7px;height:7px;border-right:1.6px solid var(--mut);border-bottom:1.6px solid var(--mut);transform:rotate(45deg);margin-right:4px;flex:none;transition:transform .2s ease}
.ddown.open .dd-btn::after{transform:rotate(-135deg)}
.ddown .dd-val{color:var(--mut)}
.ddown.picked .dd-val{color:#fff}
.ddown .dd-list{position:absolute;left:0;right:0;top:calc(100% + 6px);background:linear-gradient(160deg,rgba(13,22,46,.95),rgba(5,7,15,.95));backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);border:0.57px solid rgba(65,188,245,.35);border-radius:var(--r1);padding:8px;z-index:40;display:none;max-height:280px;overflow-y:auto;box-shadow:rgba(0,0,0,.7) 0 18px 40px -10px}
.ddown.open .dd-list{display:block}
.ddown .dd-g{font-size:9px;letter-spacing:.18em;text-transform:uppercase;color:var(--brand-cyan);padding:8px 10px 4px;font-family:var(--f-en);font-weight:600}
.ddown .dd-opt{font-size:12.5px;color:var(--ink2);padding:9px 10px;border-radius:8px;cursor:pointer;font-family:var(--f-cn);transition:all .15s ease}
.ddown .dd-opt:hover{background:rgba(65,188,245,.2);color:#fff}
.ddown .dd-opt.sel{color:var(--brand-cyan);font-weight:600}

/* ————— 标签页与洞察筛选 ————— */
.itabs{display:flex;border-bottom:0.57px solid rgba(65,188,245,.2);margin-top:26px;flex-wrap:wrap}
.itab{flex:1;text-align:center;padding:14px 0 12px;font-size:14px;letter-spacing:.1em;color:var(--mut);cursor:pointer;position:relative;transition:color .2s ease;font-family:var(--f-cn);min-width:80px}
.itab::after{content:"";position:absolute;left:25%;right:25%;bottom:-1px;height:2px;background:transparent;transition:all .25s ease}
.itab:hover{color:#fff}
.itab.on{color:#fff;font-weight:500}
.itab.on::after{background:var(--grad-quantum-h);box-shadow:0 0 10px var(--brand-cyan)}
.iscenedesc{text-align:center;font-size:12.5px;color:var(--brand-cyan);margin-top:14px;letter-spacing:.08em;font-family:var(--f-cn);min-height:20px;transition:opacity .2s ease}

.insight-lr{display:grid;grid-template-columns:150px 1fr;gap:24px;align-items:start}
.itags{position:sticky;top:96px;display:flex;flex-direction:column;gap:8px}
.itag{font-size:11px;letter-spacing:.12em;color:var(--mut);padding:8px 14px;border-radius:9999px;border:0.57px solid rgba(255,255,255,.12);cursor:pointer;transition:all .2s ease;font-family:var(--f-cn)}
.itag:hover{color:#fff;border-color:var(--brand-cyan)}
.itag.on{color:#fff;background:rgba(65,188,245,.2);border-color:var(--brand-cyan);box-shadow:0 0 12px rgba(65,188,245,.3)}
.ilist{display:grid;grid-template-columns:1fr 1fr;gap:14px}

/* ————— 表单控制 ————— */
.frm{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:22px}
.frm .full{grid-column:1/-1}
.frm label{font-size:9.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--mut);display:block;margin-bottom:6px;font-family:var(--f-en)}
.frm input,.frm select,.frm textarea{
  width: 100%;
  background: rgba(255,255,255,.03);
  border: var(--hair-accent);
  border-radius: var(--r1);
  padding: 12px 14px;
  color: #fff;
  font-size: 13px;
  font-family: var(--f-cn);
  outline: none;
  transition: all .2s ease;
}
.frm .f-field{
  display: flex;
  flex-direction: column;
  position: relative;
}
.frm input:focus,.frm textarea:focus,.frm select:focus{
  border-color: var(--brand-cyan);
  box-shadow: 0 0 14px rgba(65, 188, 245, .28);
  background: rgba(65, 188, 245, .05);
}
.frm .err-hint{
  font-size: 11px;
  color: #F87171;
  margin-top: 5px;
  display: none;
  font-family: var(--f-cn);
  line-height: 1.4;
}
.frm .is-err input,
.frm .is-err textarea,
.frm .is-err .ddown .dd-btn{
  border-color: #F87171 !important;
  box-shadow: 0 0 12px rgba(248, 113, 113, 0.3) !important;
  background: rgba(248, 113, 113, 0.04);
}
.frm .is-err .err-hint{
  display: flex;
  align-items: center;
  gap: 4px;
  animation: shake 0.3s ease;
}
@keyframes shake {
  0%, 100% { transform: translateX(0); }
  25% { transform: translateX(-4px); }
  75% { transform: translateX(4px); }
}
.frm .is-valid input,
.frm .is-valid textarea{
  border-color: rgba(65, 188, 245, 0.45);
}
.frm .field-counter{
  font-size: 10px;
  color: var(--mut);
  text-align: right;
  font-family: var(--f-en);
}

/* ————— S1 英雄区 (Hero) ————— */
#s1{flex-direction:column;justify-content:flex-end;overflow:hidden}
#s1 .wrap{padding-bottom:9vh}
.hero-eyebrow{display:flex;align-items:center;gap:12px;margin-bottom:20px}
.hero-eyebrow .pulse{
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: var(--brand-cyan);
  box-shadow: 0 0 14px var(--brand-cyan);
  animation: pl 2s ease-in-out infinite;
}
@keyframes pl{0%,100%{opacity:.4;transform:scale(0.9)}50%{opacity:1;transform:scale(1.2)}}
.hero-badges{display:flex;gap:12px;margin-top:28px;flex-wrap:wrap}
.hero-lede{margin-top:16px;font-size:17px;line-height:2;color:var(--mut);max-width:800px;font-family:var(--f-cn)}
.hero-lede b{color:var(--brand-cyan);font-weight:600}
.scroll-cue{position:absolute;bottom:28px;right:40px;display:flex;align-items:center;gap:10px;font-size:9px;letter-spacing:.22em;color:var(--mut);text-transform:uppercase}
.scroll-cue .ln{width:1px;height:44px;background:linear-gradient(rgba(65,188,245,.6),transparent);position:relative;overflow:hidden}
.scroll-cue .ln::after{content:"";position:absolute;top:-40%;left:0;width:1px;height:40%;background:var(--brand-cyan);animation:drop 2s cubic-bezier(.4,0,.2,1) infinite}
@keyframes drop{to{top:110%}}
#mt{position:absolute;inset:auto 0 0 0;width:100%;height:46vh;pointer-events:none;opacity:.9}

/* ————— S2 威胁倒计时 ————— */
.tick{
  font-family: "Montserrat", var(--f-cn), monospace;
  font-size: 22px;
  letter-spacing: .34em;
  background: var(--grad-quantum-h);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  margin-top: 18px;
  font-variant-numeric: tabular-nums;
  font-weight: 600;
}
.cd{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:36px}
.cd .node{padding:20px 18px;border-radius:var(--r1);border:var(--hair-accent);background:rgba(13,22,46,.65);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);position:relative}
.cd .node .yr{font-size:clamp(28px,3.4vw,44px);font-weight:300;color:#fff;letter-spacing:-0.02em}
.cd .node .tt{font-size:9px;letter-spacing:.18em;text-transform:uppercase;color:var(--mut);margin-top:6px;line-height:1.8;font-family:var(--f-cn)}
.cd .node::before{content:"";position:absolute;top:0;left:16px;right:16px;height:1px;background:linear-gradient(90deg,var(--brand-cyan),transparent)}
.cd .node.hot{border-color:rgba(132,97,239,.6);background:rgba(132,97,239,.14);box-shadow:0 0 20px rgba(132,97,239,.25)}
.cd .node.hot .yr{color:var(--brand-violet);font-weight:600}

/* ————— S3 攀登之路 ————— */
#climb{height:420vh;min-height:auto;display:block;padding:0}
#climb .sticky{position:sticky;top:0;height:100vh;display:flex;align-items:center;justify-content:center;overflow:hidden}
#climb svg{width:100%;height:100%;position:absolute;inset:0}
.mlab{font-size:9.5px;letter-spacing:.12em;fill:rgba(244,244,245,.5);font-family:var(--f-cn)}
.mnum{font-size:13px;letter-spacing:.04em;fill:rgba(255,255,255,.3);font-weight:300}
.node-c{fill:#05070E;stroke:rgba(65,188,245,.4);stroke-width:1}
.act .node-c{fill:var(--brand-cyan);stroke:#fff}
.act .mnum{fill:#fff;font-weight:600}
.act .mlab{fill:var(--brand-cyan)}
#photon{filter:drop-shadow(0 0 10px var(--brand-cyan)) drop-shadow(0 0 26px rgba(65,188,245,.9))}
.climb-hud{position:absolute;right:5vw;top:50%;transform:translateY(-50%);text-align:right;z-index:2}
.climb-hud .big{font-size:clamp(36px,4.6vw,64px);font-weight:300;color:#fff;letter-spacing:-0.02em}
.climb-hud .sub{font-size:9px;letter-spacing:.22em;color:var(--mut);text-transform:uppercase;margin-top:6px;font-family:var(--f-cn)}
.climb-title{position:absolute;left:5vw;top:16vh;z-index:2}

/* ————— S4 中继展望 ————— */
.road{display:flex;align-items:flex-end;gap:8px;margin-top:56px}
.road .st{flex:1;position:relative;padding-top:14px}
.road .st .bar{height:calc(18px + var(--h)*1px);border-radius:8px 8px 0 0;background:linear-gradient(180deg,rgba(65,188,245,.14),rgba(65,188,245,.02));border:var(--hair-accent);border-bottom:none}
.road .st .nm{font-size:9px;letter-spacing:.1em;color:var(--mut);margin-top:8px;line-height:1.6;font-family:var(--f-cn)}
.road .st .ix{font-size:9px;color:rgba(255,255,255,.3);letter-spacing:.14em}
.road .st.here .bar{background:linear-gradient(180deg,var(--brand-cyan),rgba(65,188,245,.15));box-shadow:0 0 30px rgba(65,188,245,.5);border-color:var(--brand-cyan)}
.road .st.here .nm{color:#fff;font-weight:600}
.road .st.here::after{content:"我们在这里 · SRN";position:absolute;top:-34px;left:50%;transform:translateX(-50%);white-space:nowrap;font-size:9px;letter-spacing:.16em;color:#fff;background:var(--grad-quantum);border-radius:var(--rp);padding:5px 12px;box-shadow:0 0 16px rgba(65,188,245,.4)}

/* ————— S5 产品长廊 ————— */
#s5{display:block;padding:0;height:280vh}
.sticky5{position:sticky;top:0;height:100vh;display:flex;flex-direction:column;justify-content:center;overflow:hidden}
.sticky5 .wrap{max-width:1280px;margin:0 auto;width:100%;padding:0 32px}
.rail{margin-top:40px;padding-left:max(32px,calc((100vw - 1280px)/2 + 32px))}
.track{display:flex;gap:16px;width:max-content;will-change:transform}
.pcard{flex:0 0 clamp(560px,42vw,900px)}
.rail-hud{display:flex;align-items:center;gap:14px;margin-top:28px;padding-left:max(32px,calc((100vw - 1280px)/2 + 32px))}
.rail-hud .bar{width:180px;height:2px;background:rgba(255,255,255,.14);position:relative}
.rail-hud .bar i{position:absolute;left:0;top:0;height:2px;width:0;background:var(--grad-quantum-h);box-shadow:0 0 8px var(--brand-cyan)}
.rail-hud .ix{font-size:10px;letter-spacing:.22em;color:var(--mut);text-transform:uppercase}
.pcard .inner{padding:32px 28px}
.pcard .ix{font-size:9px;letter-spacing:.22em;color:var(--brand-cyan);font-weight:600}
.pcard h3{font-size:24px;font-weight:400;color:#fff;margin:14px 0 10px;font-family:var(--f-cn);letter-spacing:.04em}
.pcard p{font-size:12.5px;line-height:2;color:var(--mut);font-family:var(--f-cn)}
.pcard .specs{display:flex;gap:8px;margin-top:18px;flex-wrap:wrap}
.pcard .specs span{font-size:9px;letter-spacing:.12em;padding:5px 12px;border-radius:var(--rp);border:var(--hair-accent);color:var(--ink2);font-family:var(--f-cn);background:rgba(65,188,245,.06)}

/* ————— S6 全国量子网络地图 ————— */
#s6{display:block;padding:0;height:260vh}
.sticky6{position:sticky;top:0;height:100vh;display:flex;flex-direction:column;justify-content:center;overflow:hidden}
.sticky6 .wrap{max-width:1280px;margin:0 auto;width:100%;padding:0 32px}
#map-svg{width:100%;max-width:840px;display:block;margin:8px auto 0}
.legend6{display:flex;gap:10px;margin-top:18px;flex-wrap:wrap}
.legend6 .chip{opacity:.25;transform:translateY(6px);transition:all .5s cubic-bezier(.4,0,.2,1)}
.legend6 .chip.on{opacity:1;transform:none;border-color:var(--brand-cyan);box-shadow:0 0 16px rgba(65,188,245,.3)}
#g-fin,#g-sci,#g-plan{opacity:0;transition:opacity .8s ease}
#g-fin.on,#g-sci.on,#g-plan.on{opacity:1}
.mnode{fill:var(--brand-cyan)}
.mnode.halo{fill:none;stroke:var(--brand-cyan);stroke-width:1}
.nsci{fill:none;stroke:#fff;stroke-width:1.6}
.nsci.halo2{stroke:rgba(255,255,255,.5);stroke-width:.8}
.nplan{fill:none;stroke:var(--brand-violet);stroke-width:1.2;stroke-dasharray:3 3;animation:breathe 2.8s ease-in-out infinite}
@keyframes breathe{0%,100%{opacity:.25}50%{opacity:.95}}
.marc{fill:none;stroke:var(--brand-cyan);stroke-width:1.2;stroke-dasharray:4 5;animation:dashmove 4.5s linear infinite;filter:drop-shadow(0 0 6px var(--brand-cyan))}
@keyframes dashmove{to{stroke-dashoffset:-90}}
.mdot{fill:rgba(65,188,245,.4)}
#mprov path{fill:rgba(255,255,255,.02);stroke:rgba(65,188,245,.18);stroke-width:1;stroke-dasharray:.5 6;stroke-linecap:round;transition:all .7s ease}
#mprov path.lit{fill:rgba(65,188,245,.28);stroke:var(--brand-cyan);stroke-width:1.2}
#mprov path.litp{fill:rgba(132,97,239,.18);stroke:var(--brand-violet);animation:breathe 3.2s ease-in-out infinite}
#mprov path.litq{fill:rgba(65,188,245,.38);stroke:var(--brand-cyan);stroke-width:1.4;animation:breathe 3.2s ease-in-out infinite}
.mcity{font-size:9.5px;fill:#fff;font-family:var(--f-cn);font-weight:500}
.s6-close{text-align:center;font-size:clamp(15px,1.7vw,22px);color:var(--brand-cyan);letter-spacing:.14em;opacity:0;transform:translateY(10px);transition:all .7s ease;margin-top:8px;font-family:var(--f-cn)}
.s6-close.on{opacity:1;transform:none}
.map-note{text-align:center;font-size:9px;letter-spacing:.16em;color:rgba(244,244,245,.4);margin-top:14px;font-family:var(--f-cn)}

/* ————— 页脚 Footer ————— */
footer{position:relative;z-index:1;padding:32px;text-align:center;font-size:10px;letter-spacing:.16em;color:rgba(244,244,245,.4);font-family:var(--f-cn);border-top:0.57px solid rgba(65,188,245,.1)}

/* ————— 量子暗黑微光 Toast 弹窗 ————— */
#quantum-toast-box{
  position: fixed;
  bottom: 32px;
  right: 32px;
  z-index: 9999;
  display: flex;
  flex-direction: column;
  gap: 12px;
  pointer-events: none;
}
.quantum-toast{
  pointer-events: auto;
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 14px 20px;
  border-radius: var(--r1);
  background: rgba(13, 22, 46, 0.92);
  backdrop-filter: blur(24px);
  -webkit-backdrop-filter: blur(24px);
  border: 1px solid rgba(65, 188, 245, 0.4);
  box-shadow: 0 16px 36px rgba(0,0,0,0.6), 0 0 24px rgba(65, 188, 245, 0.3);
  color: #fff;
  font-size: 13px;
  font-family: var(--f-cn);
  transform: translateX(50px);
  opacity: 0;
  transition: all .35s cubic-bezier(.22,1,.36,1);
  max-width: 400px;
}
.quantum-toast.show{
  transform: translateX(0);
  opacity: 1;
}
.quantum-toast.success{
  border-color: rgba(65, 188, 245, 0.6);
}
.quantum-toast.error{
  border-color: rgba(248, 113, 113, 0.7);
  box-shadow: 0 16px 36px rgba(0,0,0,0.6), 0 0 24px rgba(248, 113, 113, 0.3);
}
.quantum-toast .t-icon{
  width: 20px;
  height: 20px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 11px;
  font-weight: bold;
  flex-shrink: 0;
}
.quantum-toast.success .t-icon{
  background: var(--brand-cyan);
  color: #05070E;
  box-shadow: 0 0 10px var(--brand-cyan);
}
.quantum-toast.error .t-icon{
  background: #F87171;
  color: #fff;
  box-shadow: 0 0 10px #F87171;
}

/* ————— 首页核心数据看板 (Hero Stats Bar) ————— */
.hero-stats {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 16px;
  margin-top: 40px;
}
.stat-card {
  background: rgba(14, 18, 32, 0.7);
  backdrop-filter: blur(16px);
  border: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: var(--radius-card);
  padding: 24px 20px;
  transition: all var(--trans-snappy);
  position: relative;
  overflow: hidden;
}
.stat-card::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 2px;
  background: var(--grad-quantum);
  opacity: 0.3;
  transition: opacity var(--trans-snappy);
}
.stat-card:hover {
  transform: translateY(-4px);
  border-color: rgba(65, 188, 245, 0.35);
  box-shadow: 0 12px 30px rgba(0,0,0,0.5), 0 0 20px rgba(65, 188, 245, 0.15);
}
.stat-card:hover::before {
  opacity: 1;
}
.stat-num {
  font-family: var(--f-mono);
  font-size: clamp(28px, 3.2vw, 42px);
  font-weight: 300;
  line-height: 1.1;
  background: var(--grad-quantum);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  display: flex;
  align-items: baseline;
  gap: 4px;
}
.stat-num small {
  font-size: 14px;
  font-family: var(--f-cn);
  color: var(--mut);
  -webkit-text-fill-color: initial;
}
.stat-title {
  font-size: 14px;
  font-weight: 500;
  color: #fff;
  margin-top: 10px;
  font-family: var(--f-cn);
}
.stat-desc {
  font-size: 11.5px;
  line-height: 1.8;
  color: var(--mut);
  margin-top: 6px;
  font-family: var(--f-cn);
}

/* ————— 战略对比矩阵 (Comparison Matrix) ————— */
.cmp-table-wrap {
  overflow-x: auto;
  margin-top: 32px;
  border-radius: var(--radius-card);
  border: 1px solid rgba(255, 255, 255, 0.08);
  background: rgba(14, 18, 30, 0.65);
  backdrop-filter: blur(16px);
}
.cmp-tbl {
  width: 100%;
  border-collapse: collapse;
  text-align: left;
  font-size: 12.5px;
  font-family: var(--f-cn);
}
.cmp-tbl th, .cmp-tbl td {
  padding: 18px 22px;
  border-bottom: 1px solid rgba(255, 255, 255, 0.06);
  line-height: 1.8;
}
.cmp-tbl th {
  font-size: 13.5px;
  font-weight: 600;
  color: var(--mut);
  background: rgba(255, 255, 255, 0.02);
}
.cmp-tbl th.col-qsdc {
  color: #fff;
  background: rgba(65, 188, 245, 0.08);
  border-left: 1px solid rgba(65, 188, 245, 0.3);
  border-right: 1px solid rgba(65, 188, 245, 0.3);
}
.cmp-tbl td.col-qsdc {
  background: rgba(65, 188, 245, 0.04);
  color: #fff;
  font-weight: 500;
  border-left: 1px solid rgba(65, 188, 245, 0.3);
  border-right: 1px solid rgba(65, 188, 245, 0.3);
}
.cmp-tbl tr:last-child td {
  border-bottom: none;
}
.tag-adv {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  color: var(--brand-cyan);
  font-weight: 600;
  font-size: 11.5px;
}

/* ————— 量子专网部署规划测算器 (Network Planner - Quantum Cockpit) ————— */
.s-planner-section {
  padding: 60px 0 80px;
}
.planner-panel {
  background: radial-gradient(circle at 75% 15%, rgba(65,188,245,0.08) 0%, rgba(132,97,239,0.05) 45%, rgba(10,14,26,0.92) 100%);
  border: 1px solid rgba(65, 188, 245, 0.25);
  border-radius: var(--radius-card);
  padding: 36px 40px;
  box-shadow: 0 24px 60px rgba(0,0,0,0.55), inset 0 1px 0 rgba(255,255,255,0.08), 0 0 40px rgba(65,188,245,0.05);
}
.planner-grid {
  display: grid;
  grid-template-columns: 1.25fr 1fr;
  gap: 36px;
  margin-top: 24px;
  align-items: stretch;
}
.calc-ctrl {
  margin-bottom: 22px;
}
.calc-ctrl-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 10px;
}
.calc-ctrl-title {
  font-size: 13.5px;
  font-weight: 500;
  color: #fff;
  display: flex;
  align-items: center;
  letter-spacing: 0.02em;
}
.calc-val-pill {
  background: rgba(65, 188, 245, 0.1);
  border: 1px solid rgba(65, 188, 245, 0.35);
  padding: 3px 12px;
  border-radius: 14px;
  box-shadow: 0 0 12px rgba(65,188,245,0.15);
}
.calc-val-pill .val-glow {
  font-family: var(--f-mono);
  color: #5eead4;
  font-size: 14.5px;
  font-weight: 600;
  text-shadow: 0 0 8px rgba(94,234,212,0.4);
}
.calc-range-wrap {
  margin: 10px 0 12px;
}
.calc-range {
  width: 100%;
  height: 6px;
  -webkit-appearance: none;
  background: linear-gradient(90deg, #41bcf5 0%, #8461ef var(--pct, 25%), rgba(255,255,255,0.08) var(--pct, 25%), rgba(255,255,255,0.08) 100%);
  border-radius: 3px;
  outline: none;
  cursor: pointer;
  transition: background .1s;
}
.calc-range::-webkit-slider-thumb {
  -webkit-appearance: none;
  width: 20px;
  height: 20px;
  border-radius: 50%;
  background: #5eead4;
  cursor: pointer;
  box-shadow: 0 0 14px rgba(94,234,212,0.8), 0 0 0 3px rgba(10,14,26,0.8);
  border: 2px solid #fff;
  transition: transform .15s, box-shadow .15s;
}
.calc-range::-webkit-slider-thumb:hover,
.calc-range::-webkit-slider-thumb:active {
  transform: scale(1.2);
  box-shadow: 0 0 20px rgba(94,234,212,1), 0 0 0 4px rgba(65,188,245,0.4);
}
.calc-dist-presets {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
  margin-top: 8px;
}
.calc-preset-chip {
  padding: 5px 12px;
  border-radius: 12px;
  border: 1px solid rgba(255,255,255,0.1);
  background: rgba(255,255,255,0.03);
  color: var(--mut);
  font-size: 11.5px;
  font-family: var(--f-mono);
  cursor: pointer;
  transition: all .2s;
}
.calc-preset-chip:hover,
.calc-preset-chip.active {
  border-color: #41bcf5;
  background: rgba(65, 188, 245, 0.15);
  color: #fff;
  box-shadow: 0 0 10px rgba(65,188,245,0.2);
}

/* 场景 2x2 科技卡片 */
.calc-scenario-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
  margin-top: 8px;
}
.calc-card-btn {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 12px 14px;
  border-radius: 12px;
  border: 1px solid rgba(255,255,255,0.1);
  background: rgba(255,255,255,0.03);
  color: var(--mut);
  cursor: pointer;
  text-align: left;
  transition: all .2s;
  position: relative;
  font-family: var(--f-cn);
}
.calc-card-btn:hover {
  border-color: rgba(65,188,245,0.4);
  background: rgba(255,255,255,0.05);
}
.calc-card-btn.active {
  border-color: #41bcf5;
  background: linear-gradient(135deg, rgba(65,188,245,0.16) 0%, rgba(132,97,239,0.1) 100%);
  box-shadow: 0 0 16px rgba(65,188,245,0.15);
}
.calc-card-icon {
  font-size: 18px;
  flex-shrink: 0;
}
.calc-card-body {
  display: flex;
  flex-direction: column;
  gap: 2px;
  flex: 1;
  min-width: 0;
}
.calc-card-name {
  font-size: 12.5px;
  font-weight: 500;
  color: #fff;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.calc-card-tag {
  font-size: 10.5px;
  color: var(--mut);
  font-family: var(--f-mono);
  transition: color .2s;
}
.calc-card-btn.active .calc-card-tag {
  color: #41bcf5;
}
.calc-card-chk {
  font-size: 12px;
  color: transparent;
  flex-shrink: 0;
  transition: color .2s;
}
.calc-card-btn.active .calc-card-chk {
  color: #41bcf5;
}

/* 光纤条件双段开关 */
.calc-segment-opts {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 8px;
  margin-top: 8px;
}
.calc-segment-btn {
  padding: 10px 14px;
  border-radius: 12px;
  border: 1px solid rgba(255,255,255,0.1);
  background: rgba(255,255,255,0.03);
  cursor: pointer;
  text-align: left;
  display: flex;
  flex-direction: column;
  gap: 2px;
  transition: all .2s;
  font-family: var(--f-cn);
}
.calc-segment-title {
  font-size: 12px;
  font-weight: 500;
  color: #fff;
}
.calc-segment-desc {
  font-size: 10.5px;
  color: var(--mut);
}
.calc-segment-btn:hover {
  border-color: rgba(65,188,245,0.3);
}
.calc-segment-btn.active {
  border-color: #41bcf5;
  background: rgba(65, 188, 245, 0.12);
  box-shadow: 0 0 14px rgba(65,188,245,0.12);
}
.calc-segment-btn.active .calc-segment-desc {
  color: #5eead4;
}

/* 测算输出仪表舱 (Quantum HUD) */
.calc-out-box {
  background: rgba(8, 12, 22, 0.88);
  border: 1px solid rgba(65, 188, 245, 0.22);
  border-radius: var(--radius-card);
  padding: 24px;
  display: flex;
  flex-direction: column;
  height: 100%;
  box-shadow: inset 0 0 24px rgba(65,188,245,0.04);
}
.calc-hud-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 18px;
  padding-bottom: 12px;
  border-bottom: 1px solid rgba(255,255,255,0.06);
}
.calc-status-badge {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-size: 11px;
  color: #5eead4;
  font-family: var(--f-mono);
  background: rgba(94,234,212,0.08);
  border: 1px solid rgba(94,234,212,0.25);
  padding: 2px 8px;
  border-radius: 10px;
}
.status-dot {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: #5eead4;
  box-shadow: 0 0 8px #5eead4;
  display: inline-block;
}
.calc-metrics-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
  margin-bottom: 20px;
  flex: 1;
}
.calc-metric-card {
  background: rgba(255,255,255,0.025);
  border: 1px solid rgba(255,255,255,0.06);
  border-radius: 12px;
  padding: 12px 14px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 3px;
  transition: all .2s;
}
.calc-metric-card.highlight {
  background: rgba(65,188,245,0.05);
  border-color: rgba(65,188,245,0.25);
}
.calc-metric-label {
  font-size: 11px;
  color: var(--mut);
  letter-spacing: 0.02em;
}
.calc-metric-val {
  font-family: var(--f-mono);
  font-size: 15px;
  font-weight: 600;
  color: #41bcf5;
  text-shadow: 0 0 8px rgba(65,188,245,0.25);
  margin: 2px 0;
}
.calc-metric-hint {
  font-size: 10px;
  color: rgba(255,255,255,0.4);
}
.calc-apply-btn {
  width: 100%;
  justify-content: center;
  padding: 14px 20px;
  font-size: 13px;
  font-weight: 600;
  letter-spacing: 0.08em;
  border-radius: 12px;
  margin-top: auto;
}

/* ————— 终章：量子星门联络卡片 (CONNECT Portal) ————— */
.connect-section {
  padding: 40px 0 80px;
}
.connect-shell {
  overflow: hidden;
  border-radius: var(--radius-card);
  border: 1px solid rgba(185,185,232,0.22);
  box-shadow: 0 24px 60px rgba(0,0,0,0.6), 0 0 40px rgba(65,188,245,0.08);
}
.connect-panel {
  position: relative;
  text-align: center;
  padding: 80px 40px;
  background: #080c16;
  overflow: hidden;
}
.connect-aurora-bg {
  position: absolute;
  inset: 0;
  background: radial-gradient(ellipse at 50% 30%, rgba(65,188,245,0.22) 0%, rgba(132,97,239,0.15) 35%, rgba(8,12,22,0.96) 75%);
  pointer-events: none;
  z-index: 0;
}
.connect-orbital-rings {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  width: 700px;
  height: 700px;
  pointer-events: none;
  z-index: 0;
}
.connect-orbital-rings .ring {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  border-radius: 50%;
  border: 1px solid rgba(65,188,245,0.08);
}
.connect-orbital-rings .ring-1 {
  width: 280px;
  height: 280px;
}
.connect-orbital-rings .ring-2 {
  width: 480px;
  height: 480px;
  border-style: dashed;
}
.connect-orbital-rings .ring-3 {
  width: 680px;
  height: 680px;
  border-color: rgba(132,97,239,0.06);
}
.connect-content {
  position: relative;
  z-index: 1;
  max-width: 680px;
  margin: 0 auto;
}
.connect-kicker {
  justify-content: center;
  margin-bottom: 20px;
}
.connect-heading {
  font-size: clamp(32px, 5.2vw, 60px);
  line-height: 1.25;
  font-weight: 700;
  letter-spacing: 0.02em;
  display: flex;
  flex-direction: column;
  gap: 6px;
}
.connect-heading .ch-line {
  display: block;
}
.connect-heading .gradient-accent {
  background: linear-gradient(135deg, #41bcf5 20%, #b9b9e8 60%, #c084fc 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  text-shadow: 0 0 30px rgba(65,188,245,0.25);
}
.connect-lede {
  margin: 20px auto 32px;
  font-size: clamp(14px, 1.8vw, 16.5px);
  color: rgba(255,255,255,0.75);
  line-height: 1.6;
  text-align: center;
  max-width: 540px;
}
.connect-actions {
  display: flex;
  justify-content: center;
  gap: 14px;
  flex-wrap: wrap;
  margin-bottom: 32px;
}
.connect-btn {
  cursor: pointer;
  padding: 16px 38px;
  font-size: 13.5px;
  font-weight: 600;
  letter-spacing: 0.12em;
  border-radius: 30px;
  box-shadow: 0 8px 30px rgba(65,188,245,0.35);
}
.connect-trust-grid {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 24px;
  flex-wrap: wrap;
  padding-top: 24px;
  border-top: 1px solid rgba(255,255,255,0.08);
}
.trust-badge-item {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-size: 12px;
  color: rgba(255,255,255,0.65);
}
.trust-badge-icon {
  font-size: 14px;
}

/* ————— 客户案例与行业标杆 (Case Bento Card & Tabs) ————— */
.case-tabs {
  margin-top: 24px;
}
.case-tabs .itab {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
}
.itab-ico {
  font-style: normal;
  font-size: 14px;
}
.case-bento-shell {
  position: relative;
  overflow: hidden;
}
.case-bento-panel {
  padding: 36px 32px;
}
.case-header-row {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
  gap: 12px;
  margin-bottom: 14px;
}
.case-honor-badge {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 6px 14px;
  background: linear-gradient(135deg, rgba(234, 179, 8, 0.12), rgba(202, 138, 4, 0.04));
  border: 1px solid rgba(234, 179, 8, 0.35);
  border-radius: 9999px;
  font-size: 12px;
  color: #fde047;
  font-family: var(--f-cn);
  font-weight: 500;
  box-shadow: 0 0 16px rgba(234, 179, 8, 0.12);
}
.case-honor-badge .badge-ico {
  font-size: 13px;
}
.case-title {
  font-size: 24px;
  color: #fff;
  font-family: var(--f-cn);
  font-weight: 400;
  margin: 0 0 24px 0;
  line-height: 1.4;
}
.case-metrics-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 14px;
  margin-bottom: 22px;
}
.case-metric-cell {
  background: rgba(14, 20, 36, 0.6);
  border: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: 10px;
  padding: 18px 20px;
  display: flex;
  flex-direction: column;
  transition: all 0.2s ease;
}
.case-metric-cell.highlight {
  border-color: rgba(65, 188, 245, 0.35);
  background: linear-gradient(135deg, rgba(65, 188, 245, 0.1) 0%, rgba(13, 22, 46, 0.6) 100%);
}
.case-metric-cell:hover {
  border-color: rgba(65, 188, 245, 0.4);
  transform: translateY(-2px);
}
.case-m-label {
  font-size: 12px;
  color: var(--mut);
  font-family: var(--f-cn);
  margin-bottom: 8px;
}
.case-m-val {
  font-size: clamp(26px, 2.5vw, 36px);
  font-weight: 300;
  font-family: var(--f-mono);
  color: #fff;
  letter-spacing: -0.02em;
  line-height: 1.1;
  margin-bottom: 8px;
}
.case-metric-cell.highlight .case-m-val {
  color: var(--brand-cyan);
  text-shadow: 0 0 16px rgba(65, 188, 245, 0.35);
}
.case-m-hint {
  font-size: 11.5px;
  color: rgba(255, 255, 255, 0.5);
  font-family: var(--f-cn);
}
.case-contrast-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px;
  margin-bottom: 22px;
}
.case-contrast-card {
  padding: 18px 20px;
  border-radius: 10px;
  background: rgba(255, 255, 255, 0.02);
  border: 1px solid rgba(255, 255, 255, 0.06);
}
.case-contrast-card.pain {
  background: rgba(239, 68, 68, 0.03);
  border-color: rgba(239, 68, 68, 0.15);
}
.case-contrast-card.solution {
  background: rgba(65, 188, 245, 0.04);
  border-color: rgba(65, 188, 245, 0.2);
}
.case-card-tag {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-size: 12px;
  font-weight: 600;
  font-family: var(--f-cn);
  margin-bottom: 8px;
}
.case-contrast-card.pain .case-card-tag {
  color: #f87171;
}
.case-contrast-card.solution .case-card-tag {
  color: var(--brand-cyan);
}
.tag-dot {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  display: inline-block;
}
.tag-dot.red {
  background: #ef4444;
  box-shadow: 0 0 6px rgba(239, 68, 68, 0.6);
}
.tag-dot.cyan {
  background: var(--brand-cyan);
  box-shadow: 0 0 6px rgba(65, 188, 245, 0.8);
}
.case-contrast-card p {
  font-size: 12.5px;
  line-height: 1.85;
  color: var(--mut);
  margin: 0;
  font-family: var(--f-cn);
}
.case-footer-row {
  padding-top: 16px;
  border-top: 1px solid rgba(255, 255, 255, 0.08);
}
.case-cert-text {
  font-size: 12px;
  line-height: 1.8;
  color: rgba(255, 255, 255, 0.7);
  font-family: var(--f-cn);
}
.case-cert-text b {
  color: #fff;
  font-weight: 500;
}

/* ————— 招聘为什么加入 (Careers Bento Grid) ————— */
.career-bento-grid {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 14px;
}
.career-bento-item {
  height: 100%;
}
.career-bento-inner {
  padding: 26px 22px;
  height: 100%;
  display: flex;
  flex-direction: column;
}
.career-bento-num {
  font-size: clamp(34px, 3.4vw, 52px);
  font-weight: 300;
  color: #fff;
  letter-spacing: -0.02em;
  line-height: 1;
  font-family: var(--f-mono);
}
.career-bento-num.glow-teal {
  color: #38bdf8;
  text-shadow: 0 0 20px rgba(56, 189, 248, 0.35);
}
.career-bento-unit {
  font-size: 14px;
  color: var(--mut);
  margin-left: 6px;
  font-family: var(--f-cn);
  font-weight: 400;
}
.career-bento-title {
  font-size: 14px;
  color: var(--pri2);
  font-family: var(--f-cn);
  font-weight: 400;
  margin-top: 12px;
  line-height: 1.4;
}
.career-bento-desc {
  font-size: 11.5px;
  line-height: 1.85;
  color: var(--mut);
  margin-top: 6px;
  font-family: var(--f-cn);
}

/* ————— 概念验证 PoC 实施路径 (PoC Process) ————— */
.poc-steps {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 20px;
  margin-top: 32px;
}
.poc-step {
  background: rgba(14, 18, 30, 0.65);
  border: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: var(--radius-card);
  padding: 26px 22px;
  position: relative;
  transition: all var(--trans-snappy);
}
.poc-step:hover {
  transform: translateY(-4px);
  border-color: rgba(65, 188, 245, 0.35);
  box-shadow: 0 12px 30px rgba(0,0,0,0.5);
}
.poc-step-num {
  width: 32px;
  height: 32px;
  border-radius: 50%;
  background: rgba(65, 188, 245, 0.12);
  border: 1px solid var(--brand-cyan);
  color: var(--brand-cyan);
  display: flex;
  align-items: center;
  justify-content: center;
  font-family: var(--f-mono);
  font-weight: 600;
  font-size: 13px;
  margin-bottom: 14px;
}

/* ————— 学术论文与专利索引卡片 (Papers List) ————— */
.papers-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 20px;
  margin-top: 24px;
}
.paper-item {
  background: rgba(14, 18, 30, 0.65);
  border: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: var(--radius-card);
  padding: 24px 26px;
  transition: all var(--trans-snappy);
}
.paper-item:hover {
  border-color: rgba(132, 97, 239, 0.4);
  transform: translateY(-2px);
  box-shadow: 0 8px 24px rgba(0,0,0,0.4);
}
.paper-meta {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 10px;
  font-size: 11px;
  font-family: var(--f-mono);
  color: var(--brand-violet);
}
.paper-cite-tag {
  background: rgba(65, 188, 245, 0.1);
  border: 1px solid rgba(65, 188, 245, 0.3);
  color: var(--brand-cyan);
  padding: 2px 8px;
  border-radius: 12px;
  font-size: 10px;
}

/* ————— 洞察问答手风琴 (FAQ Accordion) ————— */
.faq-wrap {
  display: flex;
  flex-direction: column;
  gap: 14px;
  margin-top: 24px;
}
.faq-card {
  background: rgba(14, 18, 30, 0.65);
  border: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: var(--radius-card);
  overflow: hidden;
  transition: all var(--trans-snappy);
}
.faq-card:hover {
  border-color: rgba(255, 255, 255, 0.16);
}
.faq-card.open {
  border-color: rgba(65, 188, 245, 0.4);
  background: rgba(16, 22, 38, 0.85);
  box-shadow: 0 10px 30px rgba(0,0,0,0.4);
}
.faq-head {
  padding: 22px 26px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  cursor: pointer;
  user-select: none;
}
.faq-head h3 {
  font-size: 15.5px;
  font-weight: 500;
  color: #fff;
  font-family: var(--f-cn);
  display: flex;
  align-items: center;
  gap: 12px;
  margin: 0;
}
.faq-badge {
  font-size: 10px;
  font-family: var(--f-mono);
  padding: 2px 8px;
  border-radius: 4px;
  background: rgba(255,255,255,0.05);
  color: var(--brand-cyan);
  border: 1px solid rgba(65,188,245,0.2);
}
.faq-chevron {
  width: 18px;
  height: 18px;
  transition: transform var(--trans-snappy);
  color: var(--mut);
  flex-shrink: 0;
}
.faq-card.open .faq-chevron {
  transform: rotate(180deg);
  color: var(--brand-cyan);
}
.faq-body {
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.4s cubic-bezier(.22,1,.36,1), padding 0.3s;
  padding: 0 26px;
}
.faq-card.open .faq-body {
  max-height: 400px;
  padding: 0 26px 24px 26px;
}
.faq-body p {
  font-size: 13px;
  line-height: 2.1;
  color: #D4D4D8;
  font-family: var(--f-cn);
  border-top: 1px solid rgba(255,255,255,0.06);
  padding-top: 16px;
  margin: 0;
}

/* ————— 全新多列科技页脚 (Site Footer) ————— */
.site-footer {
  background: #060912;
  border-top: 1px solid rgba(255, 255, 255, 0.08);
  padding: 68px 0 36px;
  color: var(--mut);
  font-family: var(--f-cn);
  position: relative;
  z-index: 10;
  width: 100%;
}
.site-footer .wrap {
  width: 100%;
  max-width: 1280px;
  margin: 0 auto;
  padding: 0 32px;
  box-sizing: border-box;
}

/* 左右双翼主网格 */
.footer-layout {
  display: grid;
  grid-template-columns: 1.28fr 1.32fr;
  gap: 44px;
  align-items: start;
}

/* 左翼：品牌航标与研发基地 */
.footer-brand-pane {
  display: flex;
  flex-direction: column;
  text-align: left;
}
.footer-brand-title {
  display: flex;
  align-items: center;
  gap: 14px;
  margin-bottom: 18px;
}
.footer-logo-img {
  width: 32px;
  height: 32px;
  filter: drop-shadow(0 0 12px rgba(65, 188, 245, .6));
}
.footer-brand-name {
  color: #fff;
  font-size: 17px;
  font-weight: 600;
  letter-spacing: .06em;
  line-height: 1.2;
}
.footer-brand-tagline {
  font-size: 9.5px;
  letter-spacing: .16em;
  color: var(--brand-cyan);
  font-family: var(--f-mono);
  margin-top: 3px;
  opacity: 0.9;
}
.footer-brand-desc {
  font-size: 13px;
  line-height: 2.0;
  color: var(--mut);
  margin: 0 0 24px 0;
  max-width: 580px;
  text-align: left;
}
.footer-base-card {
  background: rgba(255, 255, 255, 0.02);
  border: 1px solid rgba(255, 255, 255, 0.06);
  border-radius: 8px;
  padding: 16px 20px;
  display: flex;
  flex-direction: column;
  gap: 12px;
  max-width: 580px;
  text-align: left;
}
.base-item {
  display: flex;
  align-items: center;
  gap: 10px;
  font-size: 12.5px;
  color: #CBD5E1;
  white-space: nowrap;
}
.base-icon {
  width: 15px;
  height: 15px;
  stroke: var(--brand-cyan);
  flex-shrink: 0;
}
.base-item b {
  color: #fff;
  font-weight: 500;
  margin-right: 2px;
}

/* 右翼：业务导航与高光卡片 */
.footer-nav-pane {
  display: flex;
  flex-direction: column;
  gap: 28px;
}
.footer-nav-cols {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 36px;
}
.footer-nav-col h4 {
  font-size: 14px;
  font-weight: 600;
  color: #fff;
  margin-bottom: 18px;
  letter-spacing: 0.04em;
}
.footer-nav-col ul {
  list-style: none;
  padding: 0;
  margin: 0;
}
.footer-nav-col ul li {
  margin-bottom: 12px;
}
.footer-nav-col ul li a {
  color: var(--mut);
  font-size: 12.5px;
  text-decoration: none;
  transition: color var(--trans-snappy);
  cursor: pointer;
}
.footer-nav-col ul li a:hover {
  color: var(--brand-cyan);
}

/* 发光联络卡片 */
.footer-contact-cards {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px;
}
.contact-action-card {
  display: flex;
  align-items: center;
  gap: 14px;
  padding: 16px 18px;
  border-radius: 10px;
  text-decoration: none;
  background: rgba(16, 24, 40, 0.5);
  border: 1px solid rgba(255, 255, 255, 0.08);
  transition: all 0.28s cubic-bezier(0.16, 1, 0.3, 1);
  position: relative;
  overflow: hidden;
}
.contact-action-card::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 2px;
  background: linear-gradient(90deg, transparent, var(--card-accent, #41BCF5), transparent);
  opacity: 0;
  transition: opacity 0.28s ease;
}
.card-biz {
  --card-accent: #41BCF5;
  background: linear-gradient(135deg, rgba(65, 188, 245, 0.06) 0%, rgba(10, 15, 29, 0.8) 100%);
  border-color: rgba(65, 188, 245, 0.18);
}
.card-hr {
  --card-accent: #A855F7;
  background: linear-gradient(135deg, rgba(168, 85, 247, 0.06) 0%, rgba(10, 15, 29, 0.8) 100%);
  border-color: rgba(168, 85, 247, 0.18);
}
.contact-action-card:hover {
  transform: translateY(-2px);
  box-shadow: 0 10px 24px -6px rgba(0, 0, 0, 0.5), 0 0 16px -2px rgba(65, 188, 245, 0.18);
  border-color: var(--card-accent, #41BCF5);
}
.contact-action-card:hover::before {
  opacity: 1;
}
.card-icon-wrap {
  width: 38px;
  height: 38px;
  border-radius: 8px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}
.card-biz .card-icon-wrap {
  background: rgba(65, 188, 245, 0.12);
  color: #41BCF5;
}
.card-hr .card-icon-wrap {
  background: rgba(168, 85, 247, 0.12);
  color: #C084FC;
}
.card-icon-wrap svg {
  width: 19px;
  height: 19px;
}
.card-text-wrap {
  flex: 1;
  min-width: 0;
}
.card-label {
  font-size: 11.5px;
  color: #94A3B8;
  letter-spacing: 0.03em;
  margin-bottom: 2px;
}
.card-email {
  font-family: var(--f-mono);
  font-size: 13px;
  font-weight: 500;
  color: #fff;
  letter-spacing: 0.02em;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.card-tip {
  font-size: 11px;
  color: var(--mut);
  margin-top: 3px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.card-arrow {
  color: #64748B;
  font-size: 16px;
  transition: transform 0.2s ease, color 0.2s ease;
}
.contact-action-card:hover .card-arrow {
  transform: translateX(4px);
  color: #fff;
}

/* 底部居中对齐栏 */
.footer-bottom {
  margin-top: 48px;
  padding-top: 24px;
  border-top: 1px solid rgba(255, 255, 255, 0.06);
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  font-size: 12px;
  line-height: 1.8;
  gap: 8px;
  color: var(--mut);
}
.footer-bottom .footer-sub {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: 8px;
}
.footer-bottom .footer-sep {
  opacity: 0.35;
}
.footer-bottom a {
  color: var(--mut);
  text-decoration: none;
  transition: color var(--trans-snappy);
}
.footer-bottom a:hover {
  color: var(--brand-cyan);
}

/* ————— 响应式适配 ————— */

/* ————— P4 洞察与权威媒体矩阵专属系统 (Insight Media Matrix) ————— */
.insight-stats-bar {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 16px;
  margin-top: 36px;
  padding: 24px;
  border-radius: var(--r1);
  background: linear-gradient(160deg, rgba(65, 188, 245, 0.08) 0%, rgba(132, 97, 239, 0.04) 100%);
  border: 1px solid rgba(65, 188, 245, 0.2);
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
  box-shadow: 0 16px 36px -10px rgba(0, 0, 0, 0.45);
}
.stat-cell {
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 8px 16px;
  border-right: 1px solid rgba(255, 255, 255, 0.08);
}
.stat-cell:last-child {
  border-right: none;
}
.stat-num {
  font-family: var(--f-en);
  font-size: 38px;
  font-weight: 700;
  line-height: 1.1;
  background: var(--grad-quantum-h);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  display: flex;
  align-items: baseline;
  gap: 4px;
  filter: drop-shadow(0 0 16px rgba(65, 188, 245, 0.35));
}
.stat-num small {
  font-size: 16px;
  font-weight: 500;
  -webkit-text-fill-color: var(--brand-cyan);
}
.stat-lbl {
  font-size: 12px;
  color: var(--mut);
  margin-top: 6px;
  font-family: var(--f-cn);
  letter-spacing: 0.04em;
}

/* ————— 焦点头条展卡 ————— */
.insight-spotlight-wrap {
  margin-top: 40px;
}
.spotlight-title-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 16px;
}
.spotlight-label {
  font-size: 13px;
  font-weight: 600;
  color: var(--brand-cyan);
  display: inline-flex;
  align-items: center;
  gap: 6px;
  letter-spacing: 0.06em;
}
.spotlight-sub {
  font-family: var(--f-en);
  font-size: 10px;
  letter-spacing: 0.16em;
  color: var(--mut);
}
.insight-spotlight-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 20px;
}
.spotlight-card {
  background: linear-gradient(165deg, rgba(14, 22, 42, 0.8) 0%, rgba(6, 10, 22, 0.95) 100%);
  border: 1px solid rgba(65, 188, 245, 0.22);
  border-radius: var(--r1);
  padding: 24px 22px;
  display: flex;
  flex-direction: column;
  position: relative;
  transition: all 0.32s cubic-bezier(0.16, 1, 0.3, 1);
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
  overflow: hidden;
}
.spotlight-card::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 2px;
  background: var(--grad-quantum-h);
  opacity: 0.4;
  transition: opacity 0.3s;
}
.spotlight-card:hover {
  border-color: rgba(65, 188, 245, 0.55);
  transform: translateY(-5px);
  box-shadow: 0 20px 40px -10px rgba(0, 0, 0, 0.6), 0 0 24px -4px rgba(65, 188, 245, 0.25);
}
.spotlight-card:hover::before {
  opacity: 1;
}
.spotlight-tag {
  display: inline-block;
  font-size: 10.5px;
  font-weight: 600;
  padding: 3px 10px;
  border-radius: 9999px;
  background: rgba(65, 188, 245, 0.12);
  border: 1px solid rgba(65, 188, 245, 0.3);
  color: var(--brand-cyan);
  margin-bottom: 12px;
  width: fit-content;
}
.spotlight-meta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  font-size: 11.5px;
  color: var(--mut);
  margin-bottom: 12px;
}
.spotlight-media {
  font-weight: 500;
  color: #E2E8F0;
}
.spotlight-card-title {
  font-size: 16px;
  font-weight: 600;
  line-height: 1.5;
  margin-bottom: 10px;
}
.spotlight-card-title a {
  color: #fff;
  text-decoration: none;
  transition: color 0.2s;
}
.spotlight-card-title a:hover {
  color: var(--brand-cyan);
}
.spotlight-desc {
  font-size: 12.5px;
  line-height: 1.75;
  color: #94A3B8;
  margin-bottom: 18px;
  flex-grow: 1;
}
.spotlight-action {
  margin-top: auto;
  border-top: 1px solid rgba(255, 255, 255, 0.08);
  padding-top: 14px;
}
.btn-spotlight-link {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-size: 12px;
  font-weight: 600;
  color: var(--brand-cyan);
  text-decoration: none;
  transition: all 0.2s;
}
.btn-spotlight-link:hover {
  color: #fff;
}
.btn-spotlight-link svg {
  transition: transform 0.2s;
}
.btn-spotlight-link:hover svg {
  transform: translate(2px, -2px);
}

/* ————— 媒体报道矩阵部分 ————— */
.insight-media-section {
  margin-top: 56px;
}
.media-section-head {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 24px;
  flex-wrap: wrap;
}
.section-title-md {
  font-size: 24px;
  font-weight: 600;
  color: #fff;
  font-family: var(--f-cn);
  letter-spacing: 0.02em;
}
.section-subtitle-md {
  font-size: 13px;
  color: var(--mut);
  margin-top: 6px;
  font-family: var(--f-cn);
}
.media-stats-badge {
  font-size: 12px;
  color: var(--brand-cyan);
  background: rgba(65, 188, 245, 0.08);
  border: 1px solid rgba(65, 188, 245, 0.25);
  padding: 6px 16px;
  border-radius: 9999px;
  font-family: var(--f-cn);
}
.media-stats-badge b {
  font-size: 14px;
  color: #fff;
}

/* 工具栏：分类标签与搜索 */
.insight-toolbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  margin-bottom: 28px;
  flex-wrap: wrap;
}
.media-tabs {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
}
.mtab {
  background: rgba(255, 255, 255, 0.04);
  border: 1px solid rgba(255, 255, 255, 0.1);
  color: var(--mut);
  padding: 8px 16px;
  border-radius: 9999px;
  font-size: 12px;
  font-family: var(--f-cn);
  cursor: pointer;
  transition: all 0.22s ease;
  display: inline-flex;
  align-items: center;
  gap: 6px;
}
.mtab:hover {
  color: #fff;
  border-color: rgba(65, 188, 245, 0.5);
}
.mtab.on {
  color: #fff;
  background: rgba(65, 188, 245, 0.16);
  border-color: var(--brand-cyan);
  box-shadow: 0 0 16px rgba(65, 188, 245, 0.28);
}
.tab-cnt {
  font-size: 10px;
  padding: 1px 6px;
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.08);
  transition: all 0.2s;
}
.mtab.on .tab-cnt {
  background: var(--brand-cyan);
  color: #05070F;
  font-weight: 700;
}

/* 搜索框 */
.insight-search-box {
  position: relative;
  display: flex;
  align-items: center;
  min-width: 280px;
  max-width: 380px;
  flex-grow: 1;
}
.insight-search-box input {
  width: 100%;
  background: rgba(10, 15, 30, 0.75);
  border: 1px solid rgba(255, 255, 255, 0.14);
  border-radius: 9999px;
  padding: 9px 38px 9px 38px;
  color: #fff;
  font-size: 12.5px;
  font-family: var(--f-cn);
  outline: none;
  transition: all 0.25s ease;
}
.insight-search-box input:focus {
  border-color: var(--brand-cyan);
  box-shadow: 0 0 18px rgba(65, 188, 245, 0.3);
  background: rgba(14, 22, 42, 0.95);
}
.insight-search-box input::placeholder {
  color: rgba(255, 255, 255, 0.35);
}
.insight-search-box .search-icon {
  position: absolute;
  left: 14px;
  width: 15px;
  height: 15px;
  color: var(--mut);
  pointer-events: none;
}
#media-search-clear {
  position: absolute;
  right: 12px;
  background: none;
  border: none;
  color: var(--mut);
  font-size: 16px;
  cursor: pointer;
  padding: 2px 6px;
  line-height: 1;
  transition: color 0.2s;
}
#media-search-clear:hover {
  color: #fff;
}

/* 报道卡片网格 */
.media-card-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(340px, 1fr));
  gap: 18px;
}
.media-card {
  background: rgba(12, 17, 30, 0.65);
  border: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: 14px;
  padding: 20px 22px;
  display: flex;
  flex-direction: column;
  transition: all 0.28s cubic-bezier(0.16, 1, 0.3, 1);
  position: relative;
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
}
.media-card:hover {
  border-color: rgba(65, 188, 245, 0.45);
  background: rgba(16, 23, 40, 0.88);
  transform: translateY(-4px);
  box-shadow: 0 14px 30px -8px rgba(0, 0, 0, 0.55), 0 0 20px -4px rgba(65, 188, 245, 0.22);
}
.media-card-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  margin-bottom: 12px;
}
.media-cat-badge {
  font-size: 10px;
  font-weight: 600;
  padding: 2px 8px;
  border-radius: 4px;
  letter-spacing: 0.04em;
}
.badge-权威专访 {
  background: rgba(239, 68, 68, 0.12);
  color: #F87171;
  border: 1px solid rgba(239, 68, 68, 0.3);
}
.badge-学术突破 {
  background: rgba(65, 188, 245, 0.12);
  color: var(--brand-cyan);
  border: 1px solid rgba(65, 188, 245, 0.3);
}
.badge-行业标准 {
  background: rgba(132, 97, 239, 0.14);
  color: #A78BFA;
  border: 1px solid rgba(132, 97, 239, 0.3);
}
.badge-产业落地 {
  background: rgba(16, 185, 129, 0.12);
  color: #34D399;
  border: 1px solid rgba(16, 185, 129, 0.3);
}
.media-source-name {
  font-size: 12px;
  font-weight: 500;
  color: #E2E8F0;
  margin-left: auto;
}
.media-date {
  font-size: 11px;
  color: var(--mut);
  font-family: var(--f-en);
}
.media-card-title {
  font-size: 15px;
  font-weight: 500;
  line-height: 1.55;
  margin-bottom: 10px;
}
.media-card-title a {
  color: #fff;
  text-decoration: none;
  transition: color 0.2s;
}
.media-card-title a:hover {
  color: var(--brand-cyan);
}
.media-card-desc {
  font-size: 12.5px;
  line-height: 1.75;
  color: #94A3B8;
  margin-bottom: 16px;
  flex-grow: 1;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.media-card-foot {
  display: flex;
  align-items: center;
  justify-content: space-between;
  border-top: 1px solid rgba(255, 255, 255, 0.06);
  padding-top: 12px;
  margin-top: auto;
}
.media-channel-tag {
  font-size: 11px;
  color: var(--mut);
  font-family: var(--f-cn);
}
.media-link-btn {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  font-size: 11.5px;
  color: var(--brand-cyan);
  text-decoration: none;
  font-weight: 500;
  transition: all 0.2s;
}
.media-link-btn:hover {
  color: #fff;
  text-shadow: 0 0 8px var(--brand-cyan);
}
.media-link-btn svg {
  transition: transform 0.2s;
}
.media-link-btn:hover svg {
  transform: translate(2px, -2px);
}

/* 展开与收起控制 */
.media-expand-wrap {
  text-align: center;
  margin-top: 36px;
}
.btn-insight-more {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 12px 32px;
  border-radius: 9999px;
  border: 1px solid rgba(65, 188, 245, 0.35);
  background: linear-gradient(135deg, rgba(65, 188, 245, 0.12), rgba(132, 97, 239, 0.08));
  color: #fff;
  font-size: 13.5px;
  font-family: var(--f-cn);
  cursor: pointer;
  transition: all 0.25s ease;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.35);
}
.btn-insight-more:hover {
  background: linear-gradient(135deg, rgba(65, 188, 245, 0.25), rgba(132, 97, 239, 0.2));
  border-color: var(--brand-cyan);
  box-shadow: 0 0 24px rgba(65, 188, 245, 0.35);
  transform: translateY(-2px);
}
.icon-toggle-arrow {
  transition: transform 0.3s cubic-bezier(0.16, 1, 0.3, 1);
}
.btn-insight-more.is-expanded .icon-toggle-arrow {
  transform: rotate(180deg);
}

/* ══════════════════════════════════════════════════════════
   移动端与平板端响应式系统 (Mobile Responsive & Touch Engine)
   兼容主流安卓浏览器、iOS Safari 及微信内嵌浏览器
   ══════════════════════════════════════════════════════════ */

/* 平板中屏适配 (<= 960px) */
@media (max-width: 960px) {
  .insight-stats-bar {
    grid-template-columns: repeat(2, 1fr);
    gap: 16px;
  }
  .stat-cell:nth-child(2) {
    border-right: none;
  }
  .insight-spotlight-grid {
    grid-template-columns: 1fr;
  }
  .insight-toolbar {
    flex-direction: column;
    align-items: stretch;
  }
  .insight-search-box {
    max-width: 100%;
  }
  .footer-layout {
    grid-template-columns: 1fr;
    gap: 36px;
  }
  .footer-brand-desc,
  .footer-base-card {
    max-width: 100%;
  }
  .planner-grid {
    grid-template-columns: 1fr;
    gap: 32px;
  }
}

/* 核心移动端适配 (<= 768px: 涵盖所有主流手机) */
@media (max-width: 768px) {
  /* ————— 顶部导航栏通栏化 ————— */
  nav {
    top: 0;
    left: 0;
    transform: none;
    width: 100%;
    max-width: 100%;
    border-radius: 0;
    border-top: none;
    border-left: none;
    border-right: none;
    padding: max(10px, env(safe-area-inset-top)) 16px 10px;
    justify-content: space-between;
    gap: 0;
    background: rgba(5, 7, 15, 0.88);
    backdrop-filter: blur(24px);
    -webkit-backdrop-filter: blur(24px);
    box-shadow: 0 4px 24px rgba(0, 0, 0, 0.6);
  }
  nav .nav-links-desktop {
    display: none !important;
  }
  .mobile-nav-toggle {
    display: flex !important;
  }
  .mobile-only {
    display: block !important;
  }
  .desktop-only {
    display: none !important;
  }

  /* ————— 通用容器与页面边距 ————— */
  section {
    padding: 72px 16px 36px;
    min-height: auto;
  }
  .wrap {
    padding: 0 4px;
  }
  .psec {
    padding: 76px 16px 36px !important;
  }
  .display {
    font-size: clamp(26px, 7.5vw, 40px) !important;
    line-height: 1.22;
    letter-spacing: -0.01em;
  }
  .lede {
    font-size: 13.5px;
    line-height: 1.85;
    margin-top: 14px;
    max-width: 100%;
  }
  .kicker {
    font-size: 9px;
    letter-spacing: 0.18em;
    margin-bottom: 8px;
  }

  /* ————— S1 首屏 (Hero) ————— */
  #s1 {
    padding-top: max(84px, calc(68px + env(safe-area-inset-top)));
    padding-bottom: 24px;
    min-height: 88vh;
    display: flex;
    flex-direction: column;
    justify-content: center;
  }
  #s1 .wrap {
    padding-bottom: 8px;
  }
  #s1 .display {
    margin-top: 4px;
  }
  .hero-lede {
    font-size: 13.5px;
    line-height: 1.85;
    margin: 16px 0 20px;
    max-width: 100%;
  }
  .hero-badges {
    gap: 8px;
    margin-bottom: 20px;
    flex-wrap: wrap;
  }
  .chip {
    font-size: 10.5px;
    padding: 5px 12px;
  }
  .hero-stats {
    grid-template-columns: repeat(2, 1fr);
    gap: 12px;
    margin-top: 20px;
  }
  .stat-card {
    padding: 16px 14px;
  }
  .stat-card .stat-num {
    font-size: clamp(24px, 5.5vw, 32px);
  }
  .stat-card .stat-num small {
    font-size: 12px;
  }
  .stat-card .stat-title {
    font-size: 12px;
    margin-top: 6px;
  }
  .stat-card .stat-desc {
    font-size: 11px;
    line-height: 1.5;
    margin-top: 4px;
  }
  .scroll-cue {
    display: none !important;
  }

  /* ————— S2 威胁倒计时 ————— */
  #s2 {
    padding: 60px 16px;
  }
  .cd {
    grid-template-columns: repeat(2, 1fr);
    gap: 10px;
    margin-top: 22px;
  }
  .cd .node {
    padding: 16px 14px;
  }
  .cd .yr {
    font-size: 22px;
  }
  .cd .tt {
    font-size: 11px;
    line-height: 1.5;
  }
  .tick {
    font-size: 14px;
    padding: 6px 14px;
    width: fit-content;
  }

  /* ————— S-Compare 战略对比矩阵 ————— */
  #s-compare {
    padding: 60px 16px !important;
  }
  .cmp-table-wrap {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    margin-top: 16px;
    border-radius: 10px;
    border: 1px solid rgba(65, 188, 245, 0.22);
    background: rgba(10, 15, 30, 0.5);
    padding-bottom: 8px;
  }
  .cmp-tbl {
    min-width: 640px;
    width: 100%;
  }
  .cmp-tbl th, .cmp-tbl td {
    padding: 12px 14px;
    font-size: 12px;
    line-height: 1.6;
  }

  /* ————— S3 攀登之路 (移动端：手势轮播滑轨，杜绝 420vh 滚轮死锁，高仅 360px) ————— */
  #climb {
    height: auto !important;
    min-height: auto !important;
    display: block !important;
    padding: 56px 16px 36px !important;
  }
  #climb .sticky {
    display: none !important;
  }
  .mobile-climb-wrap {
    display: flex;
    flex-direction: column;
    width: 100%;
  }
  .m-years-track-wrap {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    margin: 18px 0 16px;
    padding: 4px 2px 8px;
    scrollbar-width: none;
  }
  .m-years-track-wrap::-webkit-scrollbar {
    display: none;
  }
  .m-years-track {
    display: flex;
    gap: 8px;
    width: max-content;
  }
  .m-year-chip {
    background: rgba(255, 255, 255, 0.04);
    border: 1px solid rgba(255, 255, 255, 0.12);
    color: var(--mut);
    font-family: var(--f-mono);
    font-size: 13px;
    font-weight: 600;
    padding: 7px 15px;
    border-radius: 9999px;
    cursor: pointer;
    transition: all 0.22s ease;
    -webkit-tap-highlight-color: transparent;
  }
  .m-year-chip.on {
    background: rgba(65, 188, 245, 0.2);
    border-color: var(--brand-cyan);
    color: #fff;
    box-shadow: 0 0 16px rgba(65, 188, 245, 0.4);
    transform: scale(1.05);
  }
  .m-climb-card {
    width: 100%;
    border-radius: 14px;
    touch-action: pan-y;
    user-select: none;
  }
  .m-climb-card-inner {
    padding: 22px 20px;
    display: flex;
    flex-direction: column;
  }
  .m-card-top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 12px;
    gap: 8px;
  }
  .m-card-badge {
    font-family: var(--f-mono);
    font-size: 11px;
    font-weight: 600;
    color: var(--brand-cyan);
    background: rgba(65, 188, 245, 0.12);
    border: 1px solid rgba(65, 188, 245, 0.3);
    border-radius: 9999px;
    padding: 3px 10px;
  }
  .m-card-meta {
    font-size: 10.5px;
    color: var(--mut);
    font-family: var(--f-mono);
  }
  .m-card-title {
    font-size: 18px;
    font-weight: 500;
    color: #fff;
    margin-bottom: 10px;
    line-height: 1.35;
    font-family: var(--f-cn);
  }
  .m-card-desc {
    font-size: 13px;
    line-height: 1.85;
    color: var(--mut);
    min-height: 52px;
    font-family: var(--f-cn);
  }
  .m-card-progress {
    width: 100%;
    height: 3px;
    background: rgba(255, 255, 255, 0.08);
    border-radius: 2px;
    margin: 16px 0 14px;
    overflow: hidden;
  }
  .m-card-progress-bar {
    height: 100%;
    background: var(--grad-quantum-h);
    box-shadow: 0 0 8px var(--brand-cyan);
    transition: width 0.3s cubic-bezier(0.16, 1, 0.3, 1);
  }
  .m-card-nav {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    margin-top: 4px;
  }
  .m-card-btn {
    background: rgba(255, 255, 255, 0.05);
    border: 1px solid rgba(255, 255, 255, 0.12);
    color: #fff;
    font-size: 12px;
    padding: 8px 14px;
    border-radius: 8px;
    cursor: pointer;
    transition: all 0.2s;
    font-family: var(--f-cn);
    -webkit-tap-highlight-color: transparent;
  }
  .m-card-btn:active {
    background: rgba(65, 188, 245, 0.2);
    border-color: var(--brand-cyan);
    color: var(--brand-cyan);
  }
  .m-card-counter {
    font-family: var(--f-mono);
    font-size: 10px;
    color: var(--mut);
    opacity: 0.8;
    letter-spacing: 0.02em;
  }

  /* ————— S4 中继展望 ————— */
  .road {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    padding-bottom: 24px;
    padding-top: 36px;
    margin-top: 36px;
    min-width: 100%;
  }
  .road .st {
    min-width: 64px;
  }

  /* ————— S5 产品长廊 (移动端：原生触控横滑吸附，顺畅直通) ————— */
  #s5 {
    height: auto !important;
    min-height: auto !important;
    display: block !important;
    padding: 60px 16px 36px !important;
  }
  .sticky5 {
    position: static !important;
    height: auto !important;
    overflow: visible !important;
  }
  .sticky5 .wrap {
    padding: 0;
  }
  .rail {
    margin-top: 20px !important;
    padding-left: 0 !important;
    width: 100% !important;
  }
  .track {
    display: flex !important;
    gap: 14px !important;
    width: 100% !important;
    overflow-x: auto !important;
    scroll-snap-type: x mandatory !important;
    -webkit-overflow-scrolling: touch !important;
    padding-bottom: 14px !important;
    transform: none !important;
    scrollbar-width: none;
  }
  .track::-webkit-scrollbar {
    display: none;
  }
  .pcard {
    flex: 0 0 calc(100vw - 44px) !important;
    max-width: 88vw !important;
    scroll-snap-align: start !important;
  }
  .pcard .inner {
    padding: 22px 18px;
  }
  .pcard h3 {
    font-size: 18px;
    margin: 10px 0 8px;
  }
  .pcard p {
    font-size: 12px;
    line-height: 1.7;
  }
  .rail-hud {
    margin-top: 14px !important;
    padding-left: 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    width: 100% !important;
  }

  /* ————— S6 全国量子网络地图 (移动端：直观缩放自适应 + 点击点亮) ————— */
  #s6 {
    height: auto !important;
    min-height: auto !important;
    display: block !important;
    padding: 60px 16px 40px !important;
  }
  .sticky6 {
    position: static !important;
    height: auto !important;
    overflow: visible !important;
  }
  .sticky6 .wrap {
    padding: 0;
  }
  #map-svg {
    max-width: 100%;
    height: auto;
  }
  .legend6 {
    justify-content: center;
    gap: 8px;
    margin-top: 16px;
  }
  .legend6 .chip {
    font-size: 10.5px;
    padding: 6px 12px;
    cursor: pointer;
    -webkit-tap-highlight-color: transparent;
  }
  .s6-close {
    font-size: 14px;
    opacity: 1 !important;
    transform: none !important;
    margin-top: 16px;
  }

  /* ————— S-Planner 方案计算器 (移动端量子控制台) ————— */
  .s-planner-section {
    padding: 36px 0 48px;
  }
  .planner-panel {
    padding: 20px 14px;
    border-radius: 16px;
  }
  .planner-grid {
    grid-template-columns: 1fr;
    gap: 20px;
    margin-top: 16px;
  }
  .calc-ctrl {
    margin-bottom: 16px;
  }
  .calc-ctrl-title {
    font-size: 12.5px;
  }
  .calc-val-pill {
    padding: 2px 10px;
  }
  .calc-val-pill .val-glow {
    font-size: 13.5px;
  }
  .calc-range {
    height: 6px;
  }
  .calc-range::-webkit-slider-thumb {
    width: 22px;
    height: 22px;
  }
  .calc-dist-presets {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 6px;
    margin-top: 8px;
  }
  .calc-preset-chip {
    padding: 6px 2px;
    font-size: 10.5px;
    text-align: center;
    border-radius: 8px;
  }
  .calc-scenario-grid {
    grid-template-columns: 1fr 1fr;
    gap: 8px;
  }
  .calc-card-btn {
    padding: 10px 8px;
    gap: 6px;
    border-radius: 10px;
  }
  .calc-card-icon {
    font-size: 15px;
  }
  .calc-card-name {
    font-size: 11.5px;
  }
  .calc-card-tag {
    font-size: 9.5px;
  }
  .calc-card-chk {
    display: none;
  }
  .calc-segment-opts {
    grid-template-columns: 1fr;
    gap: 6px;
  }
  .calc-segment-btn {
    padding: 8px 12px;
    border-radius: 10px;
  }
  .calc-segment-title {
    font-size: 11.5px;
  }
  .calc-segment-desc {
    font-size: 10px;
  }
  .calc-out-box {
    padding: 16px 14px;
    border-radius: 14px;
  }
  .calc-hud-header {
    margin-bottom: 14px;
    padding-bottom: 10px;
  }
  .calc-metrics-grid {
    grid-template-columns: 1fr 1fr;
    gap: 8px;
    margin-bottom: 14px;
  }
  .calc-metric-card {
    padding: 8px 10px;
    border-radius: 10px;
    gap: 2px;
  }
  .calc-metric-label {
    font-size: 10px;
  }
  .calc-metric-val {
    font-size: 13.5px;
    margin: 1px 0;
  }
  .calc-metric-hint {
    font-size: 9.5px;
  }
  .calc-apply-btn {
    padding: 12px 14px;
    font-size: 12.5px;
  }

  /* ————— S8 Connect 终章星门 (移动端紧凑高质感) ————— */
  .connect-section {
    padding: 24px 0 48px;
  }
  .connect-panel {
    padding: 36px 16px 28px !important;
    border-radius: 18px;
  }
  .connect-kicker {
    margin-bottom: 14px;
  }
  .connect-heading {
    font-size: 24px !important;
    line-height: 1.35;
    gap: 4px;
  }
  .connect-lede {
    font-size: 13px !important;
    margin: 12px auto 20px !important;
    line-height: 1.55;
  }
  .connect-actions {
    margin-bottom: 20px;
  }
  .connect-btn {
    width: 100%;
    justify-content: center;
    padding: 13px 20px;
    font-size: 13px;
  }
  .connect-trust-grid {
    display: flex;
    justify-content: center;
    gap: 8px 14px;
    padding-top: 16px;
    border-top: 1px solid rgba(255,255,255,0.08);
  }
  .trust-badge-item {
    font-size: 11px;
    gap: 4px;
  }

  /* ————— P1 ~ P6 全局栅格流式折叠 ————— */
  .grid2 {
    grid-template-columns: 1fr !important;
    gap: 16px;
  }
  .grid4 {
    grid-template-columns: 1fr !important;
    gap: 14px;
  }
  .grid5 {
    grid-template-columns: 1fr !important;
    gap: 12px;
  }

  /* ————— P3 客户案例与行业落地移动端重塑 ————— */
  .case-tabs {
    display: flex !important;
    flex-wrap: nowrap !important;
    overflow-x: auto !important;
    -webkit-overflow-scrolling: touch;
    scroll-snap-type: x mandatory;
    gap: 8px !important;
    border-bottom: none !important;
    padding: 4px 4px 8px !important;
    scrollbar-width: none;
    -ms-overflow-style: none;
  }
  .case-tabs::-webkit-scrollbar {
    display: none;
  }
  .case-tabs .itab {
    flex: none !important;
    scroll-snap-align: start;
    white-space: nowrap !important;
    padding: 8px 16px !important;
    border-radius: 9999px !important;
    background: rgba(255, 255, 255, 0.04) !important;
    border: 1px solid rgba(255, 255, 255, 0.1) !important;
    font-size: 13px !important;
    letter-spacing: 0.04em !important;
    color: var(--mut) !important;
    min-width: auto !important;
    transition: all 0.2s ease !important;
  }
  .case-tabs .itab::after {
    display: none !important;
  }
  .case-tabs .itab.on {
    background: rgba(65, 188, 245, 0.16) !important;
    border-color: var(--brand-cyan) !important;
    color: #fff !important;
    box-shadow: 0 0 14px rgba(65, 188, 245, 0.25) !important;
  }
  .iscenedesc {
    font-size: 11.5px !important;
    margin-top: 8px !important;
  }
  .case-bento-panel {
    padding: 20px 16px !important;
  }
  .case-header-row {
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 8px !important;
    margin-bottom: 12px !important;
  }
  .case-honor-badge {
    font-size: 11px !important;
    padding: 4px 10px !important;
  }
  .case-title {
    font-size: 17px !important;
    margin: 0 0 16px 0 !important;
    line-height: 1.4 !important;
  }
  .case-metrics-grid {
    grid-template-columns: repeat(3, 1fr) !important;
    gap: 6px !important;
    margin-bottom: 14px !important;
  }
  .case-metric-cell {
    padding: 10px 6px !important;
    border-radius: 8px !important;
    align-items: center !important;
    text-align: center !important;
  }
  .case-m-label {
    font-size: 9.5px !important;
    white-space: nowrap !important;
    margin-bottom: 4px !important;
    transform: scale(0.95);
  }
  .case-m-val {
    font-size: 17px !important;
    margin-bottom: 4px !important;
  }
  .case-m-hint {
    font-size: 9px !important;
    line-height: 1.25 !important;
    transform: scale(0.92);
  }
  .case-contrast-grid {
    grid-template-columns: 1fr !important;
    gap: 8px !important;
    margin-bottom: 14px !important;
  }
  .case-contrast-card {
    padding: 12px 14px !important;
    border-radius: 8px !important;
  }
  .case-contrast-card p {
    font-size: 11.5px !important;
    line-height: 1.7 !important;
  }
  .case-footer-row {
    padding-top: 12px !important;
  }
  .case-cert-text {
    font-size: 11px !important;
    line-height: 1.6 !important;
  }

  .poc-steps {
    grid-template-columns: 1fr;
    gap: 14px;
  }
  .papers-grid {
    grid-template-columns: 1fr;
    gap: 14px;
  }
  .paper-item {
    padding: 18px 16px;
  }
  .cases-grid {
    grid-template-columns: 1fr !important;
    gap: 14px;
  }
  .partner-grid {
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 10px;
  }
  .tbl {
    font-size: 12px;
  }
  .tbl th, .tbl td {
    padding: 10px 12px;
  }

  /* ————— 表单系统与 iOS 聚焦适配 ————— */
  .frm {
    grid-template-columns: 1fr !important;
    gap: 14px;
  }
  .frm input,
  .frm select,
  .frm textarea,
  .insight-search-box input {
    font-size: 16px !important; /* 彻底防止 iOS Safari 放大视口 */
    padding: 12px 14px;
    border-radius: 8px;
  }
  .frm .full {
    grid-column: 1/-1;
  }
  .frm .ddown .dd-btn {
    min-height: 46px;
    padding: 12px 14px;
  }
  .frm .dd-opt {
    padding: 12px 14px;
    font-size: 14px;
  }
  .frm button[type="submit"],
  .btn.pri {
    min-height: 48px;
    font-size: 14.5px;
    justify-content: center;
  }

  /* ————— P4 洞察与权威媒体矩阵 ————— */
  .insight-stats-bar {
    grid-template-columns: repeat(2, 1fr);
    gap: 12px;
    padding: 16px;
  }
  .stat-cell {
    padding: 8px 10px;
    border-right: none;
    border-bottom: 1px solid rgba(255, 255, 255, 0.08);
  }
  .stat-cell:nth-last-child(-n+2) {
    border-bottom: none;
  }
  .stat-cell .stat-num {
    font-size: 28px;
  }
  .insight-spotlight-grid {
    grid-template-columns: 1fr;
    gap: 14px;
  }
  .spotlight-card {
    padding: 18px 16px;
  }
  .insight-toolbar {
    flex-direction: column;
    align-items: stretch;
    gap: 12px;
  }
  .insight-filter-tabs {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    flex-wrap: nowrap;
    padding-bottom: 6px;
    gap: 6px;
  }
  .mtab {
    white-space: nowrap;
    padding: 8px 14px;
    font-size: 12.5px;
  }
  .insight-search-box {
    max-width: 100%;
    min-width: 100%;
  }
  .media-card-grid {
    grid-template-columns: 1fr;
    gap: 14px;
  }
  .media-card {
    padding: 16px 18px;
  }

  /* ————— P6 招聘与岗位机会 ————— */
  .insight-lr {
    grid-template-columns: 1fr;
    gap: 16px;
  }
  .itags {
    display: flex;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    flex-direction: row;
    gap: 8px;
    padding-bottom: 6px;
    white-space: nowrap;
  }
  .itag {
    padding: 7px 14px;
    font-size: 12px;
    white-space: nowrap;
  }
  .ilist {
    grid-template-columns: 1fr;
    gap: 14px;
  }

  /* ————— P6 为什么加入 Bento Grid (高度削减 70%) ————— */
  .career-bento-grid {
    grid-template-columns: 1fr 1fr !important;
    gap: 8px !important;
    margin-top: 14px !important;
  }
  .career-bento-item .career-bento-inner {
    padding: 14px 12px !important;
  }
  .career-bento-item .career-bento-num {
    font-size: 24px !important;
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: baseline !important;
    gap: 2px 4px !important;
  }
  .career-bento-item .career-bento-unit {
    font-size: 10.5px !important;
    margin-left: 0 !important;
    color: var(--brand-cyan) !important;
    font-weight: 500 !important;
  }
  .career-bento-item .career-bento-title {
    font-size: 12px !important;
    margin-top: 6px !important;
    line-height: 1.35 !important;
    color: #fff !important;
  }
  .career-bento-item .career-bento-desc {
    font-size: 10px !important;
    line-height: 1.55 !important;
    margin-top: 4px !important;
    color: rgba(255, 255, 255, 0.55) !important;
  }
  .career-bento-hero {
    grid-column: 1 / -1 !important;
  }
  .career-bento-hero .hero-inner {
    padding: 16px 14px !important;
    background: linear-gradient(135deg, rgba(65, 188, 245, 0.1) 0%, rgba(13, 22, 46, 0.7) 100%) !important;
    border: 1px solid rgba(65, 188, 245, 0.3) !important;
  }
  .career-bento-hero .career-bento-num {
    font-size: 28px !important;
  }
  .career-bento-hero .career-bento-title {
    font-size: 13px !important;
  }
  .career-bento-hero .career-bento-desc {
    font-size: 10.5px !important;
    color: rgba(255, 255, 255, 0.7) !important;
  }

  /* ————— 全网页脚 (Site Footer 紧凑优雅重塑) ————— */
  .site-footer {
    padding: 28px 0 calc(20px + env(safe-area-inset-bottom)) !important;
  }
  .site-footer .wrap {
    padding: 0 16px;
  }
  .footer-layout {
    grid-template-columns: 1fr !important;
    gap: 16px !important;
  }
  .footer-brand-title {
    margin-bottom: 8px;
  }
  .footer-logo-img {
    width: 26px !important;
    height: 26px !important;
  }
  .footer-brand-name {
    font-size: 16px !important;
  }
  .footer-brand-desc {
    font-size: 11.5px !important;
    line-height: 1.55 !important;
    margin-bottom: 10px !important;
    color: rgba(255, 255, 255, 0.65) !important;
    text-align: left !important;
  }
  .footer-base-card {
    padding: 8px 10px !important;
    gap: 4px !important;
    margin-top: 0 !important;
    background: rgba(255, 255, 255, 0.025) !important;
    border-radius: 8px !important;
    border: 1px solid rgba(255, 255, 255, 0.06) !important;
    max-width: 100%;
  }
  .base-item {
    white-space: normal !important;
    font-size: 11px !important;
    line-height: 1.4 !important;
    display: flex !important;
    align-items: flex-start !important;
  }
  .base-item .base-icon {
    width: 13px !important;
    height: 13px !important;
    margin-right: 6px !important;
    margin-top: 2px !important;
    flex-shrink: 0 !important;
  }
  .footer-nav-pane {
    margin-top: 0 !important;
  }
  .footer-nav-cols {
    grid-template-columns: 1fr 1fr !important;
    gap: 16px !important;
    margin-top: 0 !important;
  }
  .footer-nav-col h4 {
    font-size: 12px !important;
    margin-bottom: 6px !important;
    color: rgba(255, 255, 255, 0.85) !important;
  }
  .footer-nav-col ul li {
    margin-bottom: 4px !important;
  }
  .footer-nav-col ul li a {
    font-size: 11.5px !important;
    line-height: 1.3 !important;
  }
  /* 商务合作与人才招聘重塑为双列微胶囊 (高度削减 75%) */
  .footer-contact-cards {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 8px !important;
    margin-top: 12px !important;
  }
  .contact-action-card {
    padding: 8px 10px !important;
    border-radius: 10px !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    min-height: 52px !important;
    align-items: flex-start !important;
    position: relative !important;
  }
  .contact-action-card .card-icon-wrap {
    width: 20px !important;
    height: 20px !important;
    margin-bottom: 4px !important;
    padding: 3px !important;
    border-radius: 5px !important;
  }
  .contact-action-card .card-icon-wrap svg {
    width: 12px !important;
    height: 12px !important;
  }
  .contact-action-card .card-text-wrap {
    width: 100% !important;
  }
  .contact-action-card .card-label {
    font-size: 10.5px !important;
    color: rgba(255, 255, 255, 0.55) !important;
    margin-bottom: 1px !important;
  }
  .contact-action-card .card-email {
    font-size: 10px !important;
    font-weight: 600 !important;
    word-break: break-all !important;
    letter-spacing: -0.02em !important;
  }
  .contact-action-card .card-tip {
    display: none !important;
  }
  .contact-action-card .card-arrow {
    position: absolute !important;
    right: 8px !important;
    top: 8px !important;
    font-size: 11px !important;
    opacity: 0.5 !important;
  }
  .footer-desc-br {
    display: none !important;
  }
  .footer-bottom {
    margin-top: 16px !important;
    padding-top: 12px !important;
    font-size: 10px !important;
    gap: 3px !important;
    text-align: center !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
  }
}

/* 触控与手势设备特定优化 (消除粘性 Hover 与 3D 颠簸) */
@media (hover: none) {
  .shell {
    transform: none !important;
  }
  .shell:hover {
    transform: none !important;
  }
  .stat-card:hover,
  .spotlight-card:hover,
  .media-card:hover,
  .poc-step:hover,
  .paper-item:hover,
  .contact-action-card:hover {
    transform: none !important;
  }
  .stat-card:active,
  .spotlight-card:active,
  .media-card:active,
  .poc-step:active,
  .contact-action-card:active {
    opacity: 0.88;
  }
}

/* 超窄屏手机微调 (<= 480px) */
@media (max-width: 480px) {
  .hero-stats {
    grid-template-columns: 1fr 1fr;
    gap: 8px;
  }
  .stat-card {
    padding: 14px 10px;
  }
  .stat-card .stat-num {
    font-size: 22px;
  }
  .cd {
    grid-template-columns: 1fr 1fr;
    gap: 8px;
  }
  .insight-stats-bar {
    grid-template-columns: 1fr 1fr;
    gap: 8px;
    padding: 12px;
  }
  .stat-cell .stat-num {
    font-size: 22px;
  }
  .footer-nav-cols {
    grid-template-columns: 1fr 1fr;
    gap: 16px;
  }
}

/* ————— 悬浮返回顶部胶囊按钮 (移动端与桌面端自适应) ————— */
.btn-back-to-top {
  position: fixed;
  bottom: max(24px, calc(16px + env(safe-area-inset-bottom)));
  right: 18px;
  width: 44px;
  height: 44px;
  border-radius: 50%;
  background: rgba(10, 15, 30, 0.88);
  border: 1px solid rgba(65, 188, 245, 0.35);
  color: var(--brand-cyan);
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  z-index: 90;
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.5), 0 0 16px rgba(65, 188, 245, 0.2);
  opacity: 0;
  visibility: hidden;
  transform: translateY(12px);
  transition: all 0.28s cubic-bezier(0.16, 1, 0.3, 1);
  -webkit-tap-highlight-color: transparent;
}
.btn-back-to-top.visible {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}
.btn-back-to-top:hover {
  background: rgba(65, 188, 245, 0.18);
  border-color: var(--brand-cyan);
  box-shadow: 0 8px 28px rgba(0, 0, 0, 0.6), 0 0 24px rgba(65, 188, 245, 0.4);
}
.btn-back-to-top:active {
  transform: scale(0.92);
}


