/* =====================================================================
   robotdiy.net 前台样式 v7 —— Y2K 数码编辑部（视觉焕新，内容不变）
   底色：深海军蓝 #0D1320 · 蓝灰 #111A2A · 卡片 #1B2940
   主强调：电光青 #00FFFF；点缀芭比粉 #FF4FA3 / 柠檬黄 #F9E900
   正文：#E8EEF6；次要 #AAB6C8；边线 rgba(159,190,225,.18)
   大星形 + 零件线稿仅作装饰；动效用 transform/opacity；尊重 reduced-motion
   ===================================================================== */

:root {
  --warm: #0D1320;
  --gray: #111A2A;
  --white: #1B2940;
  --ink: #E8EEF6;
  --muted: #AAB6C8;
  --lime: #00FFFF;
  --accent: #7AFFFF;
  --dark: #080C14;
  --on-dark: #E8EEF6;
  --on-dark-muted: #AAB6C8;
  --line: rgba(159, 190, 225, .12);
  --line-2: rgba(159, 190, 225, .22);
  --olive: #00FFFF;
  --olive-deep: #00FFFF;
  --lime-lo: #00C8C8;
  --lime-hi: #7AFFFF;
  --accent-hi: #B8FFFF;
  --accent-lo: #00B8B8;
  --ink-2: #D3DFE9;
  --ink-on-accent: #0D1320;
  --pink: #FF4FA3;
  --lemon: #F9E900;
  --panel: #1B2940;
  --navy: #0D1320;

  --font-body: Inter, -apple-system, BlinkMacSystemFont, 'Segoe UI', 'PingFang SC', 'Hiragino Sans GB', 'Noto Sans SC', 'Microsoft YaHei', sans-serif;
  --font-head: Inter, -apple-system, BlinkMacSystemFont, 'Segoe UI', 'PingFang SC', 'Hiragino Sans GB', 'Noto Sans SC', 'Microsoft YaHei', sans-serif;
  --font-mono: ui-monospace, 'SFMono-Regular', Menlo, Consolas, monospace;

  --wrap: 1280px;
  --pad: clamp(20px, 4vw, 56px);
  --block-y: clamp(100px, 12vw, 160px);
  --r-lg: 28px;
  --r-md: 24px;
  --r-sm: 20px;
  --ease: cubic-bezier(.2, .7, .2, 1);
  --slide-ms: 7s;
  --grid: repeat(12, minmax(0, 1fr));
}

/* ---------- 基础 ---------- */
*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; scroll-behavior: smooth; }
body {
  margin: 0;
  font-family: var(--font-body);
  font-size: 16px;
  line-height: 1.7;
  color: var(--ink);
  background: var(--warm);
  overflow-x: hidden;
  -webkit-font-smoothing: antialiased;
}
html.nav-locked { overflow: hidden; height: 100%; touch-action: none; }
html.nav-locked body { overflow: hidden; overscroll-behavior: none; }
img { max-width: 100%; height: auto; display: block; }
a { color: inherit; text-decoration: none; }
button { font: inherit; color: inherit; cursor: pointer; }
input, textarea { font: inherit; }
h1, h2, h3, h4 {
  font-family: var(--font-head);
  margin: 0;
  font-weight: 400;
  letter-spacing: -.03em;
  line-height: 1.12;
}
p { margin: 0; }
ul { margin: 0; padding: 0; list-style: none; }
figure { margin: 0; }
:focus-visible { outline: 2px solid var(--ink); outline-offset: 3px; border-radius: 6px; }
::selection { background: var(--lime); color: var(--ink); }
.sr-only { position: absolute !important; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0; }
.skip-link { position: absolute; left: 1rem; top: -100px; z-index: 300; background: var(--ink); color: var(--white); padding: .5rem 1rem; border-radius: 999px; font-weight: 500; }
.skip-link:focus { top: .75rem; }
.hp { position: absolute; left: -9999px; width: 1px; height: 1px; overflow: hidden; }
.wrap { width: 100%; max-width: calc(var(--wrap) + var(--pad) * 2); margin: 0 auto; padding: 0 var(--pad); position: relative; z-index: 1; }
.wrap--narrow { max-width: calc(860px + var(--pad) * 2); }
.wrap--mid { max-width: calc(1080px + var(--pad) * 2); }

/* ---------- 色块（暖白/浅灰/白；黄绿仅局部强调） ---------- */
.block { position: relative; padding: var(--block-y) 0; overflow: hidden; isolation: isolate; color: var(--ink); }
.block--warm, .block--white { background: var(--warm); }
.block--gray { background: var(--gray); }
.block--paper { background: var(--white); }
.block--tight-top { padding-top: clamp(48px, 6vw, 88px); }
/* 兼容旧类名：不再大面积铺绿 */
.block--lime { background: var(--warm); }
.block--grid::before { display: none; }
.glow { display: none !important; }

/* 页脚深色 */
.block--dark {
  background: var(--dark);
  color: var(--on-dark);
  --muted: var(--on-dark-muted);
  --olive: var(--lime);
  --olive-deep: var(--lime);
  --ink-2: var(--on-dark);
  --line: rgba(255, 255, 255, .1);
  --line-2: rgba(255, 255, 255, .16);
}

/* ---------- 玻璃 / 卡片（极淡边框，无重阴影） ---------- */
.glass { position: relative; border-radius: var(--r-md); }
.glass--light {
  background: rgba(255, 255, 255, .82);
  border: 1px solid var(--line);
  box-shadow: none;
}
.glass--lime {
  background: var(--lime);
  border: 1px solid rgba(26, 29, 22, .08);
  box-shadow: none;
}
@supports ((-webkit-backdrop-filter: blur(1px)) or (backdrop-filter: blur(1px))) {
  .glass--light {
    -webkit-backdrop-filter: blur(16px) saturate(140%);
    backdrop-filter: blur(16px) saturate(140%);
    background: rgba(255, 255, 255, .72);
  }
}
.glass::after { display: none; }
.gcard {
  border-radius: var(--r-lg);
  border: 1px solid var(--line);
  background: var(--white);
  transition: border-color .35s var(--ease);
}
a.gcard:hover { border-color: var(--line-2); transform: none; box-shadow: none; }

/* ---------- 文字 ---------- */
.display { font-size: clamp(36px, 5.2vw, 72px); font-weight: 300; letter-spacing: -.04em; line-height: 1.05; text-wrap: balance; }
.display--post { font-size: clamp(32px, 4.2vw, 56px); font-weight: 350; line-height: 1.08; }
.h2 { font-size: clamp(26px, 3vw, 42px); font-weight: 400; }
.h3 { font-size: clamp(20px, 1.8vw, 26px); font-weight: 450; line-height: 1.25; }
.lead { font-size: clamp(15px, 1.2vw, 17px); line-height: 1.7; max-width: 36em; color: var(--muted); }
.body { color: var(--muted); max-width: 40em; font-size: 15px; line-height: 1.7; }
.body--sm { font-size: 14px; }
.eyebrow, .tag {
  display: inline-flex;
  align-items: center;
  gap: .55em;
  font-size: 11px;
  letter-spacing: .12em;
  text-transform: uppercase;
  color: var(--muted);
  font-weight: 500;
}
.tag__dot {
  width: 6px; height: 6px; border-radius: 50%;
  background: var(--lime);
  box-shadow: none;
}
.tag--on-lime { color: var(--ink); }
.tag--on-lime .tag__dot { background: var(--ink); box-shadow: none; }
.vtext { display: none !important; }
.ph { color: var(--muted); font-style: normal; border-bottom: 1px dashed currentColor; }
.ph-line { display: block; height: 12px; width: var(--w, 60%); border-radius: 999px; background: rgba(26, 29, 22, .08); margin: 6px 0; }
.ph-line--thin { height: 8px; background: rgba(26, 29, 22, .05); }

/* 章节头：小号全大写标签，无巨型描边编号 */
.bhead { display: grid; gap: 14px; margin-bottom: clamp(40px, 5vw, 72px); max-width: 42em; }
.bhead__num { display: none; }
.bhead__body { display: grid; gap: 12px; }
.bhead__title { font-size: clamp(28px, 3.6vw, 48px); font-weight: 350; letter-spacing: -.03em; }
.bhead__lead { color: var(--muted); max-width: 36em; font-size: 15px; line-height: 1.7; }
.split-head { display: flex; justify-content: space-between; align-items: flex-end; gap: 24px; flex-wrap: wrap; margin-bottom: clamp(40px, 5vw, 72px); }
.split-head .bhead { margin-bottom: 0; }

/* 黄绿小圆徽章 */
.badge {
  display: inline-flex; align-items: center; justify-content: center;
  min-height: 28px; padding: 0 12px;
  border-radius: 999px;
  background: var(--lime);
  color: var(--ink);
  font-size: 10px; font-weight: 600;
  letter-spacing: .1em; text-transform: uppercase;
  white-space: nowrap;
}

/* ---------- 按钮 / 胶囊 ---------- */
.btn {
  display: inline-flex; align-items: center; justify-content: center; gap: .5em;
  min-height: 46px; padding: 0 22px;
  border-radius: 999px; border: 1px solid transparent;
  font-weight: 500; font-size: 15px; white-space: nowrap;
  transition: background .3s, border-color .3s, color .3s, transform .25s var(--ease);
}
.btn svg { transition: transform .3s var(--ease); }
.btn:hover svg { transform: translateX(3px); }
.btn:active { transform: scale(.98); }
.btn--sm { min-height: 38px; padding: 0 16px; font-size: 14px; }
.btn--lg { min-height: 52px; padding: 0 26px; font-size: 15px; }
.btn--ink { background: var(--lime); color: var(--ink-on-accent); box-shadow: none; border-color: var(--lime); }
.btn--ink:hover { background: var(--accent); color: var(--ink-on-accent); box-shadow: none; border-color: var(--accent); }
.btn--lime { background: var(--lime); color: var(--ink-on-accent); }
.btn--lime:hover { background: var(--accent); color: var(--ink-on-accent); }
.btn--line { color: var(--ink); border-color: var(--line-2); background: transparent; }
.btn--line:hover { border-color: var(--ink); background: var(--white); }
.btn--glass { color: var(--ink); border-color: var(--line-2); background: rgba(255, 255, 255, .7); }
.btn--glass:hover { background: var(--white); border-color: var(--ink); }
.btns { display: flex; gap: 12px; flex-wrap: wrap; }
.btns--center { justify-content: center; }
.pill {
  display: inline-flex; align-items: center; gap: 6px;
  min-height: 30px; padding: 0 14px; border-radius: 999px;
  font-size: 13px; font-weight: 500;
  border: 1px solid var(--line); background: var(--white); color: var(--ink);
  white-space: nowrap;
}
.pill--green { background: var(--lime); border-color: transparent; }
.pill--glass {
  min-height: 38px; padding: 0 16px; font-size: 13px;
  background: rgba(255, 255, 255, .88); border-color: rgba(255, 255, 255, .95);
  box-shadow: none; transition: background .25s, border-color .25s;
}
a.pill--glass:hover { background: var(--white); border-color: var(--line-2); transform: none; box-shadow: none; }
.pill--glass.is-active { background: var(--ink); color: var(--white); border-color: var(--ink); }
.pill--ink { min-height: 38px; padding: 0 16px; font-size: 13px; background: var(--ink); color: var(--white); border-color: var(--ink); }
.pill--ink:hover { background: var(--accent); color: var(--ink); border-color: var(--accent); }
.pill--ph { color: var(--muted); border-style: dashed; }
.iconbtn {
  display: inline-grid; place-items: center;
  width: 42px; height: 42px; border-radius: 50%;
  border: 1px solid var(--line); background: rgba(255, 255, 255, .85); color: var(--ink);
  transition: background .25s, border-color .25s, color .25s;
}
.iconbtn:hover { background: var(--ink); color: var(--white); border-color: var(--ink); }

/* ---------- 图片位 ---------- */
.frame { position: relative; overflow: hidden; border-radius: var(--r-sm); width: 100%; }
.frame img { width: 100%; height: 100%; object-fit: cover; }
.frame--contain img { object-fit: contain; background: #fff; }
.frame__ph {
  position: absolute; inset: 0; display: grid; place-content: center; justify-items: center;
  gap: 8px; text-align: center; padding: 12px;
  font-size: 11px; letter-spacing: .12em; text-transform: uppercase; color: var(--muted);
}
.frame--light, .frame--dark {
  background: var(--gray);
  box-shadow: inset 0 0 0 1px var(--line);
}
.frame__ph::before, .frame__ph::after { content: ""; position: absolute; width: 14px; height: 14px; border: 1px solid rgba(26, 29, 22, .25); }
.frame__ph::before { top: 12px; left: 12px; border-right: 0; border-bottom: 0; }
.frame__ph::after { bottom: 12px; right: 12px; border-left: 0; border-top: 0; }
.frame__ico { display: grid; place-items: center; width: 40px; height: 40px; border-radius: 50%; border: 1px dashed currentColor; background: rgba(200, 227, 90, .35); }
.frame__key { opacity: .7; letter-spacing: .04em; text-transform: none; }

/* ---------- 顶栏：半透明白玻璃细条 ---------- */
.nav {
  position: fixed; top: max(14px, env(safe-area-inset-top, 0px)); left: 0; right: 0; z-index: 100;
  padding: 0 max(var(--pad), env(safe-area-inset-right, 0px)) 0 max(var(--pad), env(safe-area-inset-left, 0px));
  pointer-events: none;
}
.nav__bar {
  pointer-events: auto;
  max-width: var(--wrap); margin: 0 auto;
  display: flex; align-items: center; justify-content: space-between; gap: 16px;
  min-height: 56px; padding: 6px 8px 6px 18px;
  border-radius: 999px;
  background: rgba(255, 255, 255, .78);
  border: 1px solid rgba(255, 255, 255, .9);
  transition: background .35s, border-color .35s;
}
@supports ((-webkit-backdrop-filter: blur(1px)) or (backdrop-filter: blur(1px))) {
  .nav__bar {
    -webkit-backdrop-filter: blur(18px) saturate(140%);
    backdrop-filter: blur(18px) saturate(140%);
    background: rgba(255, 255, 255, .62);
  }
}
.nav.is-scrolled .nav__bar { background: rgba(255, 255, 255, .92); border-color: var(--line); }
.nav.is-on-dark .nav__bar { background: rgba(255, 255, 255, .94); border-color: var(--line); }
.brand { display: inline-flex; align-items: center; gap: 10px; font-weight: 500; font-size: 17px; letter-spacing: -.02em; color: var(--ink); }
.brand__logo { height: 34px; width: 34px; object-fit: contain; }
.brand__mark { position: relative; width: 24px; height: 24px; border-radius: 50%; background: var(--lime); }
.brand__mark i { position: absolute; inset: 7px; border-radius: 50%; background: var(--ink); }
.nav__list { display: flex; align-items: center; gap: 2px; }
.nav__link {
  display: inline-flex; align-items: center; gap: 6px;
  min-height: 40px; padding: 0 12px; border-radius: 999px;
  font-size: 14px; font-weight: 450; color: var(--ink); cursor: pointer; list-style: none;
  transition: background .25s;
}
.nav__link::-webkit-details-marker { display: none; }
.nav__link:hover, .drop[open] > .nav__link { background: rgba(0, 0, 0, .04); }
.nav__link.is-active { background: rgba(0, 0, 0, .06); }
.nav__link--icon { padding: 0 10px; }
.nav__link--icon .ico { display: block; flex: none; }
.nav__search-txt { display: none; }
.nav__no { font-size: 10px; color: var(--muted); letter-spacing: .08em; font-weight: 500; }
.nav__cta-item { margin-left: 4px; }
.drop { position: relative; }
.drop__chev { transition: transform .3s; }
.drop[open] .drop__chev { transform: rotate(180deg); }
.drop__panel {
  position: absolute; top: calc(100% + 12px); left: 50%; transform: translateX(-50%);
  width: max-content; max-width: min(860px, 90vw); padding: 22px;
  border-radius: var(--r-md); background: rgba(255, 255, 255, .96); border: 1px solid var(--line);
}
.drop__cols { display: grid; grid-template-columns: repeat(var(--cols, 3), minmax(150px, 1fr)); gap: 20px 28px; }
.drop__title { font-size: 11px; letter-spacing: .12em; text-transform: uppercase; color: var(--muted); margin-bottom: 8px; }
.drop__cols a { display: block; padding: 5px 0; font-size: 14px; }
.drop__cols a:hover { color: var(--accent); }
.drop__muted { color: var(--muted); font-size: 14px; }
.drop__all {
  display: inline-flex; align-items: center; gap: 8px;
  margin-top: 18px; padding-top: 14px; border-top: 1px solid var(--line);
  width: 100%; font-weight: 500; color: var(--ink);
}
.drop__all:hover { color: var(--accent); }
.drop__types { display: grid; gap: 2px; min-width: 260px; }
.drop__types a {
  display: flex; justify-content: space-between; align-items: baseline; gap: 18px;
  padding: 8px 10px; margin: 0 -10px; border-radius: 12px; font-size: 14px; font-weight: 500;
}
.drop__types a:hover { background: rgba(200, 227, 90, .28); }
.drop__types small { font-size: 11px; letter-spacing: .06em; color: var(--muted); font-weight: 400; white-space: nowrap; }
.nav__toggle { display: none; width: 42px; height: 42px; border-radius: 50%; border: 1px solid var(--line); background: rgba(255, 255, 255, .85); place-items: center; position: relative; z-index: 5; cursor: pointer; -webkit-tap-highlight-color: transparent; }
.nav__toggle-close { display: none; }

@media (max-width: 960px) {
  .nav__toggle { display: inline-grid; }
  .nav__menu {
    position: absolute; top: calc(100% + 10px); left: 0; right: 0; display: none;
    max-height: calc(100vh - 110px); overflow-y: auto; padding: 12px;
    border-radius: var(--r-md); background: rgba(255, 255, 255, .98); border: 1px solid var(--line);
  }
  .nav.is-open .nav__menu { display: block; }
  .nav.is-open .nav__toggle-open { display: none; }
  .nav.is-open .nav__toggle-close { display: block; }
  .nav__list { flex-direction: column; align-items: stretch; gap: 2px; }
  .nav__link { width: 100%; min-height: 48px; font-size: 16px; border-radius: 14px; }
  .nav__search-txt { display: inline; }
  .drop__panel { position: static; transform: none; width: auto; max-width: none; background: var(--gray); margin: 4px 0 8px; padding: 14px; box-shadow: none; }
  .drop__cols { grid-template-columns: 1fr 1fr; }
  .nav__cta-item { margin: 10px 0 0; }
  .nav__cta-item .btn { width: 100%; min-height: 48px; }
}

/* ---------- 语言快捷条：手机在汉堡菜单；电脑在地球面板顶部 ---------- */
.lang-chips {
  display: none;
  flex-wrap: wrap;
  gap: 8px;
  margin: 0 0 10px;
}
.lang-chip {
  display: inline-flex; align-items: center; justify-content: center;
  min-height: 36px; padding: 0 12px; border-radius: 999px;
  border: 1px solid rgba(159, 190, 225, .22);
  background: rgba(8, 14, 20, .45); color: var(--ink);
  font-size: 13px; font-weight: 700; text-decoration: none;
  transition: background .15s, border-color .15s, color .15s;
}
.lang-chip:hover { border-color: rgba(0, 255, 255, .4); color: var(--lime); }
.lang-chip.is-on {
  background: var(--lime); color: var(--ink-on-accent); border-color: transparent;
}
.lang-chip.is-on:hover { color: var(--ink-on-accent); }
@media (max-width: 960px) {
  .lang-chips--menu { display: flex; }
  .lang-chips--panel { display: none; } /* 手机避免菜单里重复两排 */
}
@media (min-width: 961px) {
  .lang-chips--menu { display: none; }
  .lang-chips--panel { display: flex; }
}

/* ---------- 语言菜单（桌面：一点开 → 列表；正文仍中/英） ---------- */
.nav__lang-item { margin-left: 2px; position: relative; }
.lang { position: relative; }
.lang__btn {
  display: inline-flex; align-items: center; gap: 6px;
  height: 36px; padding: 0 12px 0 10px; border-radius: 999px;
  border: 1px solid transparent; background: transparent;
  color: var(--ink); font: inherit; font-size: 13px; font-weight: 600;
  cursor: pointer; transition: background .2s, border-color .2s, color .2s;
}
.lang__btn:hover, .lang.is-open .lang__btn {
  background: rgba(0, 255, 255, .12); border-color: rgba(0, 255, 255, .28);
}
.lang__btn:focus-visible { outline: 2px solid var(--accent); outline-offset: 2px; }
.lang__cur {
  max-width: 7.5em; overflow: hidden; text-overflow: ellipsis; white-space: nowrap;
  letter-spacing: .01em;
}
.lang__chev { opacity: .7; transition: transform .2s; }
.lang.is-open .lang__chev { transform: rotate(180deg); }
.lang__panel {
  position: absolute; top: calc(100% + 10px); right: 0; z-index: 80;
  width: min(320px, calc(100vw - 24px));
  padding: 12px; border-radius: 16px;
  border: 1px solid rgba(159, 190, 225, .16);
  box-shadow: 0 18px 48px rgba(0, 0, 0, .35);
  color: var(--ink);
}
.lang__panel[hidden] { display: none !important; }
.lang__head {
  margin: 0 0 8px; font-size: 11px; font-weight: 700;
  letter-spacing: .08em; text-transform: uppercase; color: var(--muted);
}
.lang__q {
  width: 100%; height: 40px; margin: 0 0 10px; padding: 0 12px;
  border-radius: 10px; border: 1px solid rgba(159, 190, 225, .18);
  background: rgba(8, 14, 20, .55); color: var(--ink);
  font: inherit; font-size: 14px;
}
.lang__q::placeholder { color: var(--muted); opacity: .85; }
.lang__q:focus { outline: 2px solid var(--accent); outline-offset: 1px; }
.lang__scroll {
  max-height: min(420px, 55vh); overflow: auto;
  margin: 0 -4px; padding: 0 4px;
  scrollbar-width: thin;
}
.lang__group {
  margin: 10px 0 6px; font-size: 11px; font-weight: 700;
  letter-spacing: .06em; text-transform: uppercase; color: var(--muted);
}
.lang__group:first-child { margin-top: 2px; }
.lang__opts { display: grid; gap: 2px; }
.lang__opt {
  display: flex; align-items: center;
  min-height: 38px; padding: 0 12px; border-radius: 10px;
  font-size: 14px; font-weight: 500; color: var(--ink);
  text-decoration: none; transition: background .15s, color .15s;
}
.lang__opt:hover { background: rgba(159, 190, 225, .12); }
.lang__opt.is-on {
  background: var(--lime); color: var(--ink-on-accent); font-weight: 700;
}
.lang__opt.is-hidden, .lang__group.is-hidden { display: none; }
.lang__more { margin-top: 8px; }
.lang__more-btn {
  display: inline-flex;
  align-items: center; justify-content: space-between; gap: 8px;
  width: 100%; min-height: 42px; padding: 0 12px;
  border-radius: 10px; border: 1px dashed rgba(0, 255, 255, .35);
  background: rgba(0, 255, 255, .06); color: var(--lime);
  font: inherit; font-size: 13px; font-weight: 700; cursor: pointer;
}
.lang__more-chev {
  width: 8px; height: 8px; border-right: 2px solid currentColor; border-bottom: 2px solid currentColor;
  transform: rotate(45deg); transition: transform .2s; opacity: .85;
}
.lang__more.is-open .lang__more-chev { transform: rotate(-135deg); }
.lang__more-body { margin-top: 4px; }
html[dir="rtl"] .lang__panel { right: auto; left: 0; }
@media (max-width: 960px) {
  .nav__lang-item { margin: 10px 0 0; }
  .lang { width: 100%; }
  .lang__btn { width: 100%; justify-content: center; height: 44px; }
  .lang__panel {
    position: static; width: 100%; margin-top: 8px;
    box-shadow: none; background: rgba(13, 19, 32, .55);
  }
  .lang__scroll { max-height: 280px; }
  .lang-chip { min-height: 40px; }
}
.lang__more-body[hidden] { display: none !important; }
@media (min-width: 961px) {
  .lang__panel {
    width: min(360px, calc(100vw - 24px));
  }
  .lang__scroll { max-height: min(360px, 50vh); }
}

/* =====================================================================
   首屏：照片主角；标题左下细排；搜索白胶囊
   ===================================================================== */
.hero {
  position: relative; height: 100vh; height: 100svh; min-height: 560px;
  overflow: hidden; background: var(--warm);
  view-timeline: --hero block; isolation: isolate;
  --dock-h: 140px; --dock-b: 40px; --nav-h: 100px;
}
.hero__stage { position: absolute; inset: 0; transform-origin: 50% 0; will-change: transform, opacity; }
.hero__slides { position: absolute; inset: 0; touch-action: pan-y pinch-zoom; }
.slide { position: absolute; inset: 0; opacity: 0; visibility: hidden; transition: opacity 1.1s var(--ease), visibility 0s linear 1.1s; }
.slide.is-active { opacity: 1; visibility: visible; transition: opacity 1.1s var(--ease), visibility 0s; z-index: 1; }
.slide__media { position: absolute; inset: 0; overflow: hidden; }
.slide__media img, .slide__ph {
  position: absolute; inset: -2%; width: 104%; height: 104%; object-fit: cover;
  transform: scale(1.08); transform-origin: 55% 40%; transition: transform 1.2s var(--ease);
}
@media (max-width: 960px) {
  /* 手机：上图下文——图片单独一块，标题/按钮在图下方独立区域，绝不盖图 */
  .hero {
    height: auto;
    min-height: 0;
    --hero-media-h: calc(100vw * 9 / 16);
    --slide-copy-h: 200px;
  }
  .hero__stage {
    position: relative;
    inset: auto;
    width: 100%;
    height: auto;
    min-height: 0;
    max-height: none;
    display: flex;
    flex-direction: column;
  }
  .hero__slides {
    position: relative;
    inset: auto;
    flex: none;
    width: 100%;
    height: calc(var(--hero-media-h) + var(--slide-copy-h));
  }
  .slide__media {
    position: absolute;
    top: 0; left: 0; right: 0;
    height: var(--hero-media-h);
    bottom: auto;
    background: #080C14;
  }
  .slide__media img, .slide__ph {
    position: absolute; inset: 0; width: 100%; height: 100%;
    object-fit: cover; /* 画幅已是 16:9，cover = 看全横图 */
    object-position: center center;
    transform: none !important;
  }
  .slide.is-active .slide__media img,
  .slide.is-prev .slide__media img,
  .slide.is-active .slide__ph,
  .slide.is-prev .slide__ph {
    animation: none !important;
  }
  .slide--img .slide__media::after { display: none; } /* 文案不在图上，无需压暗 */

  .slide__content {
    position: absolute;
    top: var(--hero-media-h);
    left: 0; right: 0;
    bottom: auto;
    height: auto;
    min-height: var(--slide-copy-h);
    margin: 0;
    padding: 16px max(var(--pad), env(safe-area-inset-right, 0px)) 14px max(var(--pad), env(safe-area-inset-left, 0px));
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: flex-start;
    gap: 8px;
    background: var(--warm);
    color: var(--ink) !important;
    z-index: 2;
  }
  .slide__content .slide__sub { color: var(--muted) !important; -webkit-line-clamp: 3; }
  .slide__content .slide__cap .tag {
    background: rgba(0, 255, 255, .12);
    color: var(--lime);
    border-color: rgba(0, 255, 255, .28);
  }
  .slide__title { max-width: 100%; font-size: clamp(22px, 6vw, 30px); }
  .hero .y2k-deco {
    top: 0; bottom: auto;
    height: var(--hero-media-h);
  }
  .hero__dock {
    position: relative;
    left: auto; right: auto; bottom: auto;
    margin: 0;
    width: 100%;
    padding: 8px max(var(--pad), env(safe-area-inset-left, 0px)) calc(12px + env(safe-area-inset-bottom, 0px));
    background: var(--warm);
    border-top: 1px solid var(--line);
    z-index: 3;
  }
}
.slide.is-active .slide__media img, .slide.is-active .slide__ph,
.slide.is-prev .slide__media img, .slide.is-prev .slide__ph { animation: kenburns 9s linear forwards; }
@keyframes kenburns { from { transform: scale(1.08) translate3d(1%, 0, 0); } to { transform: scale(1) translate3d(0, 0, 0); } }
/* 底部柔和暗角，让细白/深字可读；照片仍占主导 */
.slide--img .slide__media::after {
  content: ""; position: absolute; inset: 0;
  background:
    linear-gradient(0deg, rgba(7, 13, 20, .72) 0%, rgba(7, 13, 20, .28) 40%, transparent 66%),
    linear-gradient(90deg, rgba(7, 13, 20, .42) 0%, transparent 46%);
}

.slide__ph { display: block; overflow: hidden; background: var(--gray); }
.slide__ph::before {
  content: ""; position: absolute; inset: 0;
  background-image: linear-gradient(var(--line) 1px, transparent 1px), linear-gradient(90deg, var(--line) 1px, transparent 1px);
  background-size: 72px 72px;
}
.slide__ph i { position: absolute; border-radius: 50%; filter: blur(40px); opacity: .5; }
.slide--1 .slide__ph { background: radial-gradient(circle at 72% 36%, #163848, var(--warm) 64%); }
.slide--1 .slide__ph i:nth-child(1) { width: 40vw; height: 40vw; right: 8%; top: 10%; background: rgba(0, 255, 255, .28); }
.slide--2 .slide__ph { background: radial-gradient(circle at 28% 28%, #1C3545, var(--gray) 68%); }
.slide--3 .slide__ph { background: linear-gradient(180deg, #152735, var(--warm)); }
.slide__ph i:nth-child(2), .slide__ph i:nth-child(3) { display: none; }
.slide__ph-num {
  position: absolute; right: 6%; bottom: 22%;
  font-weight: 300; font-size: clamp(120px, 22vw, 320px); line-height: .8; letter-spacing: -.06em;
  color: transparent; -webkit-text-stroke: 1px rgba(230, 238, 245, .12);
}
.slide__ph-key {
  position: absolute; z-index: 1; right: var(--pad); top: 120px;
  font-size: 11px; letter-spacing: .1em; color: var(--muted);
  padding: 4px 10px; border-radius: 999px; background: rgba(13, 19, 32, .7);
}

.slide__content {
  position: absolute; left: 0; right: 0; top: 0; bottom: 0; margin: 0 auto;
  display: flex; flex-direction: column; justify-content: flex-end; align-items: flex-start;
  gap: clamp(10px, 1.8vh, 18px);
  padding-top: var(--nav-h);
  padding-bottom: calc(var(--dock-b) + var(--dock-h) + clamp(16px, 3.5vh, 36px));
  z-index: 2; color: #F8FBFF;
}
.slide:not(.slide--img) .slide__content { color: var(--ink); }
.slide__title {
  font-size: clamp(28px, min(4.8vw, 6.2vh), 56px);
  font-weight: 300; letter-spacing: -.035em; line-height: 1.05;
  max-width: min(100%, 16ch); overflow-wrap: break-word;
}
html[lang^="zh"] .slide__title { max-width: min(100%, 10em); font-weight: 400; letter-spacing: 0; line-break: strict; }
.slide__sub {
  font-size: clamp(14px, min(1.2vw, 2vh), 16px);
  max-width: min(100%, 36em); line-height: 1.55;
  color: rgba(248, 251, 255, .82);
  white-space: normal; display: -webkit-box;
  -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden;
}
.slide:not(.slide--img) .slide__sub { color: var(--muted); }
.slide__cap .tag {
  padding: 5px 12px; border-radius: 999px;
  background: rgba(255, 255, 255, .14); color: rgba(255, 255, 255, .9);
  border: 1px solid rgba(255, 255, 255, .22); backdrop-filter: blur(8px);
}
.slide:not(.slide--img) .slide__cap .tag { background: rgba(20, 35, 48, .84); color: var(--muted); border-color: var(--line); }
.slide__btns .btn--ink { background: var(--lime); color: var(--ink-on-accent); }
.slide__btns .btn--ink:hover { background: var(--accent); color: var(--ink-on-accent); }

.slide__line { display: block; opacity: 0; transform: translate3d(0, 28px, 0); transition: opacity .45s ease, transform .45s var(--ease); }
.slide.is-active .slide__line { opacity: 1; transform: none; transition: opacity .8s ease, transform 1s var(--ease); }
.slide.is-active .slide__cap { transition-delay: .2s; }
.slide.is-active .slide__title .slide__line { transition-delay: .32s; }
.slide.is-active .slide__sub { transition-delay: .44s; }
.slide.is-active .slide__btns { transition-delay: .56s; }

.hero__label {
  position: absolute; z-index: 3; top: 96px; right: var(--pad);
  padding: 6px 12px; border-radius: 999px;
  background: rgba(13, 19, 32, .84); color: var(--ink);
  border: 1px solid rgba(159, 190, 225, .2);
  -webkit-backdrop-filter: blur(10px); backdrop-filter: blur(10px);
}
.hero__v { display: none !important; }

.hero__dock {
  position: absolute; left: 0; right: 0; bottom: var(--dock-b); margin: 0 auto; z-index: 4;
  display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 12px; align-items: end;
}
.dock {
  display: grid; gap: 12px; padding: 0; border-radius: 0;
  background: transparent; border: 0; box-shadow: none;
  -webkit-backdrop-filter: none; backdrop-filter: none;
}
.dock.glass, .dock.glass--light { background: transparent; border: 0; box-shadow: none; }
.hsearch {
  display: flex; align-items: center; gap: 8px;
  padding: 5px 5px 5px 18px; border-radius: 999px;
  background: #fff; border: 1px solid rgba(255, 255, 255, .95);
  box-shadow: none; transition: border-color .25s;
}
.hsearch:focus-within { border-color: var(--ink); box-shadow: none; }
.hsearch__ico { display: inline-grid; color: var(--muted); }
.hsearch input { flex: 1; min-width: 0; height: 44px; border: 0; outline: none; background: transparent; color: var(--ink); font-size: 15px; }
.hsearch input::placeholder { color: var(--muted); }
.hsearch input::-webkit-search-cancel-button { cursor: pointer; }
.dock__cats { display: flex; align-items: center; gap: 10px; min-width: 0; }
.dock__h { flex: none; font-size: 11px; letter-spacing: .12em; text-transform: uppercase; color: rgba(255, 255, 255, .7); padding-left: 4px; }
.dock__pills {
  display: flex; gap: 8px; overflow-x: auto; scrollbar-width: none; padding: 2px;
  -webkit-mask-image: linear-gradient(90deg, #000 88%, transparent); mask-image: linear-gradient(90deg, #000 88%, transparent);
}
.dock__pills::-webkit-scrollbar { display: none; }
.dock__pills li { flex: none; }
.dock__pills li:last-child { padding-right: 20px; }

.hero__ctrl {
  display: grid; grid-template-columns: auto auto; grid-template-rows: auto auto;
  gap: 10px 8px; align-content: center; justify-items: center;
  padding: 14px 16px; border-radius: 28px;
  background: rgba(255, 255, 255, .88); border: 1px solid rgba(255, 255, 255, .95);
}
.hero__ctrl.glass, .hero__ctrl.glass--light { background: rgba(255, 255, 255, .88); }
.hero__count { grid-column: 1 / -1; display: flex; align-items: center; gap: 8px; font-size: 12px; letter-spacing: .06em; color: var(--muted); }
.hero__count-cur, .hero__count strong {
  display: inline-grid; place-items: center;
  box-sizing: border-box;
  width: 42px; height: 42px; min-width: 42px; padding: 0;
  border-radius: 50%;
  background: var(--lime); color: var(--ink-on-accent);
  font-size: 14px; font-weight: 650; font-variant-numeric: tabular-nums;
  letter-spacing: 0; line-height: 1;
  box-shadow: 0 0 0 3px rgba(0, 255, 255, .18);
}
.hero__count-of { font-variant-numeric: tabular-nums; color: var(--muted); }
.hero__dots { grid-column: 1 / -1; display: flex; gap: 5px; }
.hero__dot { position: relative; width: 40px; height: 3px; padding: 0; border: 0; border-radius: 999px; background: rgba(26, 29, 22, .12); overflow: hidden; }
.hero__dot::before { content: ""; position: absolute; inset: -12px 0; }
.hero__dot i { position: absolute; inset: 0; border-radius: inherit; background: var(--ink); transform: scaleX(0); transform-origin: 0 50%; }
.hero__dot.is-active i { transform: scaleX(1); }
.hero.is-playing .hero__dot.is-active i { transform: scaleX(0); animation: heroProgress var(--slide-ms) linear forwards; }
.hero.is-paused .hero__dot.is-active i { animation-play-state: paused; }
@keyframes heroProgress { to { transform: scaleX(1); } }

@supports (animation-timeline: view()) {
  @media (prefers-reduced-motion: no-preference) {
    .hero__stage { animation: heroOut linear both; animation-timeline: --hero; animation-range: exit 0% exit 100%; }
    @keyframes heroOut { to { transform: translate3d(0, 28%, 0) scale(.92); opacity: .2; } }
  }
}
.hero + .block { margin-top: 0; border-radius: 0; box-shadow: none; z-index: 2; }

/* ---------- 数据条 ---------- */
.stats { padding: clamp(72px, 9vw, 120px) 0; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.stats::before { display: none; }
.stats__list { display: grid; grid-template-columns: repeat(4, 1fr); gap: 0; }
.stat { display: grid; gap: 8px; padding: 8px clamp(16px, 2.4vw, 36px); border-left: 1px solid var(--line); }
.stat:first-child { border-left: 0; padding-left: 0; }
.stat__no { font-size: 11px; letter-spacing: .12em; text-transform: uppercase; color: var(--muted); }
.stat__value { font-weight: 300; font-size: clamp(40px, 5vw, 72px); line-height: .95; letter-spacing: -.04em; }
.stat__label { font-size: 14px; color: var(--muted); }

/* ---------- 分类卡 ---------- */
.cats { display: grid; grid-template-columns: var(--grid); gap: clamp(16px, 2vw, 28px); }
.cat {
  grid-column: span 4; display: grid; gap: 14px; padding: 0;
  background: transparent; border: 0; border-radius: 0;
}
.cat.gcard, .cat.glass { background: transparent; border: 0; box-shadow: none; padding: 0; }
@media (min-width: 961px) {
  .cats > .cat:nth-child(-n + 2) { grid-column: span 6; }
  .cats > .cat:nth-child(-n + 2) .cat__img { aspect-ratio: 16 / 9 !important; }
  .cats > .cat:only-child, .cats > .cat:nth-child(3n + 3):last-child { grid-column: span 12; }
  .cats > .cat:nth-child(3n + 3):last-child .cat__img { aspect-ratio: 21 / 8 !important; }
  .cats > .cat:nth-child(3n + 4):last-child, .cats > .cat:nth-child(3n + 3):nth-last-child(2) { grid-column: span 6; }
}
.cat__no {
  position: absolute; top: 16px; left: 16px; z-index: 2;
  display: inline-grid; place-items: center;
  min-width: 36px; height: 28px; padding: 0 10px; border-radius: 999px;
  font-size: 11px; letter-spacing: .08em; font-variant-numeric: tabular-nums;
  background: var(--lime); color: var(--ink-on-accent); font-weight: 650;
}
.cat__img { border-radius: var(--r-lg); overflow: hidden; }
.cat__img img { mix-blend-mode: normal; transition: transform 1s var(--ease); }
a.cat:hover .cat__img img { transform: scale(1.03); }
.cat__name {
  display: flex; justify-content: space-between; align-items: center; gap: 12px;
  padding: 0 2px; font-weight: 450; font-size: 18px; letter-spacing: -.02em;
}
.cat__name svg {
  flex: none; width: 34px; height: 34px; padding: 8px; border-radius: 50%;
  background: var(--ink); color: var(--white); transition: transform .4s var(--ease), background .25s;
}
@media (hover: hover) and (pointer: fine) {
  a.cat:hover .cat__name svg { transform: rotate(-45deg); background: var(--accent); color: var(--ink); }
}
a.cat:active .cat__name svg { background: var(--accent); color: var(--ink-on-accent); }
.cat--ph .cat__name .ph-line { flex: 1; max-width: var(--w); }

/* ---------- 产品卡（目录风） ---------- */
.rail-ctrl { display: flex; gap: 8px; }
.rail {
  position: relative; z-index: 1;
  display: grid; grid-auto-flow: column; grid-auto-columns: clamp(260px, 28vw, 360px);
  gap: 24px; overflow-x: auto; scroll-snap-type: x mandatory;
  --edge: max(var(--pad), calc((100vw - var(--wrap)) / 2));
  scroll-padding-inline: var(--edge);
  padding: 4px var(--edge) 24px;
  scrollbar-width: thin; scrollbar-color: rgba(0,0,0,.2) transparent;
}
.rail::-webkit-scrollbar { height: 4px; }
.rail::-webkit-scrollbar-thumb { background: rgba(0,0,0,.2); border-radius: 999px; }
.pcard {
  scroll-snap-align: start;
  display: flex; flex-direction: column; gap: 12px;
  padding: 0; background: transparent; border: 0; border-radius: 0;
}
.pcard.gcard, .pcard.glass { background: transparent; border: 0; box-shadow: none; padding: 0; }
.pcard__img { margin-bottom: 0; border-radius: var(--r-lg); overflow: hidden; }
.pcard__img img { mix-blend-mode: normal; transition: transform 1s var(--ease); }
a.pcard:hover .pcard__img img { transform: scale(1.03); }
a.pcard:hover { transform: none; box-shadow: none; }
.pcard__meta { display: flex; flex-wrap: wrap; gap: 6px; padding: 0 2px; }
.pcard__meta span, .pcard__meta li {
  font-size: 10px; letter-spacing: .1em; text-transform: uppercase;
  color: var(--muted); font-weight: 500;
  padding: 3px 0;
}
.pcard__meta span + span::before, .pcard__meta li + li::before {
  content: "·"; margin-right: 6px; opacity: .45;
}
.pcard__no { display: none; }
.pcard__name { font-size: 18px; font-weight: 450; line-height: 1.3; letter-spacing: -.02em; padding: 0 2px; }
.pcard__desc { display: none; }
.pcard__more { display: none; }
.pcard--ph .ph-line { margin-left: 2px; }
.pgrid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 28px 20px; }
.pgrid--3 { grid-template-columns: repeat(3, 1fr); }

/* ---------- Logo 墙 ---------- */
.logos { display: grid; grid-template-columns: repeat(5, 1fr); gap: 12px; }
.logos li {
  position: relative; display: grid; place-items: center;
  height: 96px; padding: 10px 16px; border-radius: var(--r-sm);
  overflow: hidden; border: 1px solid var(--line); background: var(--white);
  transition: border-color .3s;
}
.logos li:hover { transform: none; border-color: var(--line-2); }
.logos img { max-height: 56px; width: auto; filter: grayscale(1); opacity: .7; transition: filter .3s, opacity .3s; }
.logos li:hover img { filter: none; opacity: 1; }
.logos img.logo--sq { position: absolute; inset: 0; width: 100%; height: 100%; max-height: none; object-fit: cover; border-radius: inherit; }

/* ---------- CTA（暗绿，不扎眼） ---------- */
.cta {
  padding: clamp(72px, 9vw, 120px) 0;
  background:
    radial-gradient(ellipse 55% 70% at 90% 10%, rgba(0, 255, 255, .08), transparent 55%),
    linear-gradient(145deg, #111A2A 0%, #0D1320 50%, #0D1320 100%);
  border-top: 1px solid rgba(0, 255, 255, .12);
  border-bottom: 1px solid rgba(255, 255, 255, .04);
}
.cta.block--lime { background:
  radial-gradient(ellipse 55% 70% at 90% 10%, rgba(0, 255, 255, .08), transparent 55%),
  linear-gradient(145deg, #111A2A 0%, #0D1320 50%, #0D1320 100%);
}
.cta::before { display: none; }
.cta__in { display: grid; grid-template-columns: 1fr auto; grid-template-areas: "tag tag" "title btn"; gap: 18px 40px; align-items: end; }
.cta__in .tag, .cta__in .eyebrow { grid-area: tag; }
.cta__title { grid-area: title; font-size: clamp(28px, 3.8vw, 52px); font-weight: 350; letter-spacing: -.03em; line-height: 1.12; max-width: 18ch; color: #E8EEF6; }
.cta__in .btn { grid-area: btn; }
.cta .badge, .cta .eyebrow { color: rgba(0, 255, 255, .7); }

/* ---------- 页脚 ---------- */
.foot { padding: clamp(70px, 8vw, 110px) 0 28px; }
.foot__top { display: grid; grid-template-columns: 1.5fr .8fr 1fr 1.4fr; gap: 40px; }
.foot__brand { display: grid; gap: 16px; align-content: start; }
.foot__tagline { color: var(--on-dark-muted); max-width: 28em; font-size: 14px; line-height: 1.7; }
.foot__social { display: flex; flex-wrap: wrap; gap: 8px; }
.foot__social .pill { background: rgba(255,255,255,.06); border-color: rgba(255,255,255,.14); color: var(--on-dark); }
.foot__social .pill:hover { background: var(--lime); color: var(--ink); border-color: var(--lime); }
.foot__h { font-size: 11px; letter-spacing: .12em; text-transform: uppercase; color: var(--on-dark-muted); margin-bottom: 14px; }
.foot__col ul { display: grid; gap: 8px; }
.foot__col a { font-size: 14px; color: var(--on-dark); transition: color .25s; }
.foot__col a:hover { color: var(--lime); }
.foot__contact li { font-size: 14px; color: var(--on-dark-muted); overflow-wrap: anywhere; }
.foot__contact a:hover { color: var(--lime); }
.sub { display: flex; gap: 6px; padding: 5px; border-radius: 999px; background: rgba(255,255,255,.08); border: 1px solid rgba(255,255,255,.12); }
.sub input { flex: 1; min-width: 0; border: 0; background: transparent; color: var(--on-dark); font-size: 14px; padding: 0 12px; outline: none; }
.sub input::placeholder { color: var(--on-dark-muted); }
.sub:focus-within { border-color: var(--lime); box-shadow: none; }
.foot .brand { color: var(--on-dark); }
.foot .brand__logo { height: 38px; width: 38px; }
.foot .brand__logo--chip { background: var(--white); padding: 6px 10px; border-radius: 10px; height: 40px; box-sizing: border-box; }
.foot__giant {
  margin: clamp(28px, 4vw, 48px) 0 0;
  font-weight: 300; font-size: clamp(40px, 9vw, 96px); line-height: .85; letter-spacing: -.05em;
  color: transparent; -webkit-text-stroke: 1px rgba(243, 245, 238, .08);
  white-space: nowrap; overflow: hidden; user-select: none; opacity: .55;
}
.foot__base {
  display: flex; justify-content: space-between; gap: 16px; flex-wrap: wrap;
  margin-top: 24px; padding-top: 20px; border-top: 1px solid rgba(255,255,255,.12);
  font-size: 13px; color: var(--on-dark-muted);
}
.foot__top-link:hover { color: var(--lime); }
.block--dark .alert--ok { background: var(--lime); border-color: var(--lime); color: var(--ink); }
.block--dark .iconbtn { background: rgba(255,255,255,.08); color: var(--on-dark); border-color: rgba(255,255,255,.16); }
.block--dark .iconbtn:hover { background: var(--lime); color: var(--ink); border-color: var(--lime); }
.block--dark .ph-line { background: rgba(255,255,255,.12); }

/* ---------- 提示 ---------- */
.alert { display: flex; gap: 10px; align-items: flex-start; margin: 12px 0; padding: 12px 16px; border-radius: var(--r-sm); font-size: 14px; color: var(--ink); border: 1px solid var(--line); }
.alert svg { flex: none; margin-top: 2px; }
.alert--ok { background: rgba(200, 227, 90, .35); border-color: rgba(155, 180, 60, .4); }
.alert--err { background: #FDECE8; border-color: #E8A597; color: #8A2A1B; }

/* ---------- 内页首屏 ---------- */
.phero { padding: clamp(140px, 14vw, 200px) 0 clamp(64px, 8vw, 110px); background: var(--warm); }
.phero.block--lime { background: var(--warm); }
.phero__in { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: clamp(20px, 4vw, 60px); align-items: end; }
.phero__in--wide { grid-template-columns: minmax(0, 1fr) auto; }
.phero__main { display: grid; gap: 20px; justify-items: start; }
.phero__main .display { max-width: 16ch; }
.phero__v { display: none; }
.phero__num { display: none; }
.phero--media .phero__in { grid-template-columns: minmax(0, 1.15fr) minmax(0, .85fr); align-items: center; }
.phero__media { padding: 0; border-radius: var(--r-lg); overflow: hidden; border: 1px solid var(--line); transform: none; background: var(--white); }
.phero__count { display: grid; justify-items: end; font-size: 11px; letter-spacing: .12em; text-transform: uppercase; color: var(--muted); }
.phero__count strong { font-size: clamp(56px, 8vw, 110px); line-height: .85; letter-spacing: -.04em; color: var(--ink); font-weight: 300; -webkit-text-stroke: 0; }
.phero--post { padding-bottom: clamp(56px, 6vw, 90px); }
.phero--search .phero__main { width: 100%; }
.hsearch--page { width: min(100%, 680px); padding: 6px 6px 6px 18px; border: 1px solid var(--line); }
.hsearch--page input { height: 48px; font-size: 16px; }
.crumbs { display: flex; flex-wrap: wrap; gap: 10px; font-size: 11px; letter-spacing: .1em; text-transform: uppercase; color: var(--muted); }
.crumbs a:hover { color: var(--accent); }
.crumbs [aria-current] { color: var(--ink); font-weight: 600; }
.chips { display: flex; flex-wrap: wrap; gap: 8px; }
.chips--lg { gap: 10px; margin-top: 12px; }
.back { display: inline-flex; align-items: center; gap: 8px; margin-bottom: 24px; font-weight: 500; color: var(--ink); }
.back:hover { color: var(--accent); }
.meta { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; font-size: 13px; color: var(--muted); }

/* ---------- 搜索 ---------- */
.sgroup { margin-bottom: clamp(48px, 6vw, 80px); }
.sgroup__h {
  display: flex; align-items: baseline; gap: 12px;
  font-size: clamp(22px, 2.4vw, 32px); font-weight: 350;
  margin-bottom: 20px; padding-bottom: 14px; border-bottom: 1px solid var(--line);
}
.sgroup__h span { font-size: 12px; letter-spacing: .12em; color: var(--muted); font-weight: 500; }
.sgroup__h small { font-size: 11px; font-weight: 600; padding: 2px 10px; border-radius: 999px; background: var(--lime); color: var(--ink); }

/* ---------- 关于 ---------- */
.chapters { display: grid; gap: clamp(80px, 10vw, 140px); }
.chapter { display: grid; grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr); gap: clamp(28px, 5vw, 80px); align-items: center; }
.chapter--flip .chapter__text { order: 2; }
.chapter__text { position: relative; display: grid; gap: 14px; }
.chapter__num { font-size: 11px; letter-spacing: .12em; text-transform: uppercase; color: var(--muted); font-weight: 500; -webkit-text-stroke: 0; }
.chapter__media { padding: 0; border-radius: var(--r-lg); overflow: hidden; border: 1px solid var(--line); background: var(--white); }
.chapter:nth-child(odd) .chapter__media { transform: none; }
.values { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; }
.value {
  padding: clamp(24px, 3vw, 36px); display: grid; gap: 12px; align-content: start; min-height: 220px;
  border: 1px solid var(--line); background: var(--white); border-radius: var(--r-lg);
}
.value.gcard, .value.glass { box-shadow: none; }
.value__no { font-size: 11px; letter-spacing: .12em; color: var(--muted); font-weight: 500; -webkit-text-stroke: 0; }
.value__title { font-size: 22px; font-weight: 450; }
.value__text { color: var(--muted); font-size: 15px; line-height: 1.7; }

/* ---------- 联系 ---------- */
.contact { display: grid; grid-template-columns: minmax(0, 1.4fr) minmax(0, 1fr); gap: 20px; align-items: start; }
.contact__form { padding: clamp(24px, 3.5vw, 44px); display: grid; gap: 16px; border: 1px solid var(--line); background: var(--white); border-radius: var(--r-lg); }
.contact__side { display: grid; gap: 16px; }
.contact__info { padding: clamp(24px, 3vw, 36px); display: grid; gap: 16px; border-radius: var(--r-lg); }
.contact__media { padding: 0; border-radius: var(--r-lg); overflow: hidden; border: 1px solid var(--line); }
.info { display: grid; gap: 16px; }
.info li { display: grid; grid-template-columns: 40px 1fr; gap: 12px; align-items: center; }
.info li > svg { width: 40px; height: 40px; padding: 10px; border-radius: 50%; background: rgba(255,255,255,.55); color: var(--ink); }
.info small { display: block; font-size: 11px; letter-spacing: .12em; text-transform: uppercase; color: var(--olive-deep); }
.info a:hover { color: var(--accent); }
.form { display: grid; gap: 16px; }
.form__row { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.field { display: grid; gap: 7px; }
.field label { font-size: 13px; font-weight: 500; }
.req { color: var(--accent); }
.input {
  width: 100%; min-height: 48px; padding: 11px 16px; border-radius: var(--r-sm);
  border: 1px solid var(--line-2); background: var(--warm); color: var(--ink);
  transition: border-color .25s, background .25s;
}
textarea.input { resize: vertical; min-height: 150px; }
.input:focus { outline: none; border-color: var(--ink); background: #fff; box-shadow: none; }
.form .btn { justify-self: start; }

/* ---------- 博客 ---------- */
.feature {
  display: grid; grid-template-columns: minmax(0, 1.15fr) minmax(0, 1fr);
  gap: clamp(20px, 3.5vw, 48px); padding: 0; align-items: center;
  border: 0; background: transparent;
}
.feature.gcard, .feature.glass { background: transparent; border: 0; box-shadow: none; padding: 0; }
.feature__body { display: grid; gap: 16px; padding: 8px 0; justify-items: start; }
.feature .h2 a:hover, .post .h3 a:hover { color: var(--accent); }
.posts { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; margin-top: 28px; }
.post {
  padding: 0; display: grid; gap: 12px; align-content: start;
  background: transparent; border: 0;
}
.post.gcard, .post.glass { background: transparent; border: 0; box-shadow: none; padding: 0; }
.post > .meta, .post > .h3, .post > .body, .post > .ph-line { margin-left: 2px; margin-right: 2px; }
.post__no { font-size: 11px; letter-spacing: .1em; color: var(--muted); font-weight: 500; }
.empty-note { display: flex; align-items: center; justify-content: center; gap: 8px; margin-top: 28px; font-size: 14px; color: var(--muted); }
.empty-note a { color: var(--accent); font-weight: 500; text-decoration: underline; text-underline-offset: 3px; }
.post-cover { padding: 0; border-radius: var(--r-lg); overflow: hidden; margin-bottom: 24px; border: 1px solid var(--line); }
.prose {
  padding: clamp(24px, 4vw, 48px); margin-bottom: 28px;
  font-size: 16px; line-height: 1.75; color: var(--ink-2);
  border: 1px solid var(--line); background: var(--white); border-radius: var(--r-lg);
}
.prose > * + * { margin-top: 1.1em; }
.rich img { border-radius: var(--r-sm); }
.rich table { width: 100%; border-collapse: collapse; font-size: 14px; display: block; overflow-x: auto; }
.rich th, .rich td { padding: 10px 12px; border-bottom: 1px solid var(--line); text-align: left; }
.rich a { color: var(--accent); text-decoration: underline; text-underline-offset: 2px; }
.empty {
  padding: clamp(28px, 5vw, 56px); display: grid; gap: 12px; justify-items: center; text-align: center;
  border: 1px solid var(--line); background: var(--white); border-radius: var(--r-lg);
}
.empty .body { margin: 0 auto; }
.empty__ico { display: grid; place-items: center; width: 56px; height: 56px; border-radius: 50%; background: var(--lime); color: var(--ink); }

/* ---------- 产品详情 ---------- */
.pdetail { padding: clamp(120px, 12vw, 170px) 0 clamp(64px, 8vw, 110px); }
.pdetail__grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: clamp(28px, 4vw, 64px); align-items: start; margin-top: 28px; }
.pdetail__media { padding: 12px; border-radius: var(--r-lg); border: 1px solid var(--line); background: var(--white); }
.pdetail__info { display: grid; gap: 20px; justify-items: start; }
.gal { display: grid; gap: 10px; }
.gal__main img { transition: opacity .25s; }
.gal__main.is-swapping img { opacity: .2; }
.gal__thumbs { display: flex; gap: 8px; overflow-x: auto; padding: 2px; scrollbar-width: thin; }
.gal__thumb {
  flex: none; width: 84px; height: 53px; border-radius: 12px; overflow: hidden;
  border: 1px solid transparent; background: #fff; opacity: .7; transition: opacity .2s, border-color .2s;
  cursor: pointer; padding: 0;
}
.gal__thumb img { width: 100%; height: 100%; object-fit: cover; }
.gal__thumb:hover, .gal__thumb:focus-visible { opacity: 1; }
.gal__thumb.is-on { opacity: 1; border-color: var(--accent); }
.gal__credit { margin: -2px 4px 0; font-size: 12px; line-height: 1.45; color: var(--muted); overflow-wrap: anywhere; }
.gal__credit a { color: inherit; text-decoration: underline; text-decoration-color: rgba(26, 29, 22, .25); text-underline-offset: 2px; }
.gal__credit a:hover { color: var(--ink); }
.specs { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; width: 100%; }
.specs__row { padding: 10px 14px; border-radius: var(--r-sm); border: 1px solid var(--line); background: var(--white); }
.specs dt { font-size: 11px; letter-spacing: .1em; text-transform: uppercase; color: var(--muted); }
.specs dd { margin: 2px 0 0; font-size: 14px; font-weight: 500; line-height: 1.4; color: var(--ink); }
.notes { display: grid; gap: 8px; width: 100%; }
.notes li {
  display: flex; gap: 12px; align-items: center; padding: 12px 16px;
  border-radius: var(--r-sm); font-size: 14px; color: var(--muted);
  border: 1px solid var(--line); background: var(--white);
}
.notes svg { color: var(--muted); flex: none; }
.credit { display: flex; gap: 10px; align-items: flex-start; margin-top: 16px; font-size: 13px; line-height: 1.6; color: var(--muted); }
.credit svg { flex: none; margin-top: 3px; color: var(--muted); }
.parts { padding: clamp(64px, 8vw, 110px) 0; }
.parts__card {
  display: flex; justify-content: space-between; align-items: center; gap: 28px 48px; flex-wrap: wrap;
  padding: clamp(24px, 3.5vw, 44px); border: 1px solid var(--line); background: var(--white); border-radius: var(--r-lg);
}
.parts__text { max-width: 640px; display: grid; gap: 12px; }

/* 项目详情富文本 */
.proj { font-size: 16px; line-height: 1.75; }
.proj h2 { font-size: clamp(22px, 2.2vw, 28px); font-weight: 450; line-height: 1.25; margin-top: 1.8em; padding-top: 1.1em; border-top: 1px solid var(--line); }
.proj h2:first-child { margin-top: 0; padding-top: 0; border-top: 0; }
.proj h3 { font-size: 18px; font-weight: 500; margin-top: 1.6em; }
.proj ul { padding-left: 1.2em; list-style: disc; }
.proj li + li { margin-top: .35em; }
.proj table { font-size: 14px; }
.proj th { font-size: 11px; letter-spacing: .08em; text-transform: uppercase; color: var(--muted); font-weight: 600; white-space: nowrap; }
.proj td { vertical-align: top; }
.proj table.kv th { text-transform: none; letter-spacing: 0; font-size: 14px; color: var(--muted); width: 26%; white-space: normal; }
.proj tr.grp th { background: rgba(200, 227, 90, .22); color: var(--ink); font-size: 12px; }
.proj tfoot td { font-weight: 600; border-bottom: 0; background: rgba(200, 227, 90, .28); }
.proj td.num { text-align: right; white-space: nowrap; font-variant-numeric: tabular-nums; }
.proj .bom-total { padding: 12px 16px; border-radius: var(--r-sm); background: rgba(200, 227, 90, .22); font-weight: 500; }
.proj .dl { display: inline-flex; align-items: center; gap: 6px; font-weight: 600; }
.proj ul.links { list-style: none; padding: 0; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px 20px; }
.proj ul.links li { margin: 0; padding: 10px 0; border-bottom: 1px solid var(--line); }
.proj ul.links a { font-weight: 500; }
.proj ul.links span { display: block; font-size: 12px; color: var(--muted); overflow-wrap: anywhere; }
.proj code { font-size: .9em; padding: 1px 6px; border-radius: 6px; background: rgba(26, 29, 22, .06); overflow-wrap: anywhere; }
.proj ol.credits { padding-left: 1.4em; font-size: 13px; color: var(--muted); }
.proj ol.credits li { margin: 4px 0; overflow-wrap: anywhere; }
.proj table.bom { display: block; overflow-x: auto; -webkit-overflow-scrolling: touch; max-width: 100%; }
.proj table.kv { display: table; width: 100%; }

/* ---------- 404 ---------- */
.nf { min-height: 100vh; min-height: 100svh; display: grid; align-items: center; padding: 140px 0 80px; background: var(--warm); }
.nf.block--lime { background: var(--warm); }
.nf__in { display: grid; justify-items: center; text-align: center; }
.nf__code {
  font-weight: 300; font-size: clamp(120px, 24vw, 320px); line-height: .8; letter-spacing: -.06em;
  color: transparent; -webkit-text-stroke: 1px rgba(26, 29, 22, .18);
}
.nf__card {
  margin-top: -.2em; padding: clamp(24px, 3.5vw, 44px); display: grid; gap: 16px; justify-items: center;
  max-width: 520px; border: 1px solid var(--line); background: var(--white); border-radius: var(--r-lg);
}

/* ---------- 滚动渐显 ---------- */
html.io [data-reveal] { opacity: 0; transform: translate3d(0, 20px, 0); transition: opacity .8s var(--ease) var(--d, 0s), transform .8s var(--ease) var(--d, 0s); }
html.io [data-reveal].is-in { opacity: 1; transform: none; }

/* ---------- 响应式 ---------- */
@media (max-width: 1100px) {
  .foot__top { grid-template-columns: 1fr 1fr; }
  .logos { grid-template-columns: repeat(4, 1fr); }
  .pgrid { grid-template-columns: repeat(3, 1fr); }
}
@media (max-width: 960px) {
  .hero__label { display: none; }
  .hero { --dock-b: 16px; --dock-h: 148px; }
  .hero__dock {
    grid-template-columns: 1fr; gap: 8px;
    padding-bottom: env(safe-area-inset-bottom, 0px);
  }
  .dock__suggest { display: none; } /* 手机隐藏建议词，腾出首屏 */
  .dock { gap: 8px; }
  .hsearch { padding-left: 12px; }
  .hsearch input { font-size: 16px; height: 44px; } /* 防 iOS 聚焦放大 */
  .hero__ctrl {
    grid-template-columns: auto 1fr auto auto; grid-template-rows: auto;
    align-items: center; padding: 6px 8px 6px 12px; border-radius: 999px;
  }
  .hero__count, .hero__dots { grid-column: auto; }
  .hero__count strong { font-size: 16px; }
  .hero__dots { justify-content: center; }
  .hero__dot { width: 32px; height: 4px; }
  .hero__dot::before { inset: -18px -6px; } /* 加大圆点热区 */
  .hero__ctrl .iconbtn { width: 44px; height: 44px; min-width: 44px; }
  .dock__h { color: var(--muted); }
  .pill--glass, .pill--ink { min-height: 40px; padding: 0 14px; font-size: 13px; }
  .dock__suggest-a { padding: 8px 4px; min-height: 40px; display: inline-flex; align-items: center; }
  .slide__sub { white-space: normal; -webkit-line-clamp: 2; }
  .slide__title { font-size: clamp(24px, 6.4vw, 36px); max-width: min(100%, 14ch); }
  /* 手机文案已在图下独立区，不再为叠层 dock 预留大 padding */
  .slide__content { gap: 8px; }
  .slide__ph-num { bottom: auto; top: 16%; font-size: 40vw; }
  .stats__list { grid-template-columns: 1fr 1fr; gap: 28px 0; }
  .stat:nth-child(3) { border-left: 0; padding-left: 0; }
  .cats { grid-template-columns: 1fr 1fr; }
  .cat { grid-column: span 1; }
  .phero__in, .phero--media .phero__in { grid-template-columns: 1fr; }
  .phero__count { justify-items: start; }
  .chapter { grid-template-columns: 1fr; }
  .chapter--flip .chapter__text { order: 0; }
  .values { grid-template-columns: 1fr; }
  .value { min-height: 0; }
  .contact { grid-template-columns: 1fr; }
  .feature { grid-template-columns: 1fr; }
  .posts { grid-template-columns: 1fr 1fr; }
  .pdetail__grid { grid-template-columns: 1fr; }
  .pgrid--3 { grid-template-columns: repeat(2, 1fr); }
  .cta__in { grid-template-columns: 1fr; grid-template-areas: "tag" "title" "btn"; align-items: start; }
  .cta__in .btn { justify-self: start; }
  .proj ul.links { grid-template-columns: 1fr; }
  .nav__menu { max-height: calc(100dvh - 100px - env(safe-area-inset-bottom, 0px)); }
  .lang__scroll { max-height: 200px; }
  .lang__q { font-size: 16px; height: 44px; }
  .proj table.bom::before {
    content: "← 左右滑动查看 →";
    display: block; font-size: 11px; color: var(--muted);
    letter-spacing: .06em; margin: 0 0 8px; text-transform: uppercase;
  }
}
@media (max-width: 640px) {
  :root {
    --pad: clamp(16px, 4.2vw, 22px);
    --block-y: clamp(56px, 12vw, 88px);
  }
  body { font-size: 15px; }
  .nav { top: max(8px, env(safe-area-inset-top, 0px)); }
  .nav__bar { min-height: 52px; padding-left: 14px; }
  .hero {
    min-height: 0; height: auto;
    --dock-b: 10px; --nav-h: 72px; --dock-h: 132px;
  }
  .hero__stage { height: auto; max-height: none; }
  .hero__slides { height: calc(var(--hero-media-h) + var(--slide-copy-h)); }
  .hsearch { padding-left: 12px; gap: 8px; }
  .hsearch input { height: 44px; font-size: 16px; }
  .hsearch .btn { min-height: 40px; padding: 0 14px; }
  .dock__h { display: none; }
  .dock__cats { margin-top: 0; }
  .pill--glass, .pill--ink { min-height: 40px; padding: 0 12px; font-size: 12px; }
  .slide__title { font-size: clamp(22px, min(7.2vw, 4.6vh), 32px); max-width: min(100%, 13ch); }
  .slide__sub { font-size: 13px; -webkit-line-clamp: 2; }
  .slide__cap .tag { font-size: 10px; letter-spacing: .1em; padding: 4px 10px; }
  .slide__btns .btn--lg { min-height: 44px; padding: 0 18px; font-size: 14px; }
  .stat { padding: 4px 12px; }
  .stat__value { font-size: 32px; }
  .cats { grid-template-columns: 1fr; }
  .cat__name { font-size: 17px; }
  .rail { grid-auto-columns: 82%; gap: 14px; }
  .pgrid { grid-template-columns: 1fr; gap: 18px; } /* 单列，卡片可读 */
  .pgrid .pcard__name { font-size: 16px; }
  .logos { grid-template-columns: repeat(3, 1fr); gap: 8px; }
  .logos li { height: 72px; padding: 6px; }
  .posts { grid-template-columns: 1fr; }
  .form__row { grid-template-columns: 1fr; }
  .form .btn, .phero .btns .btn, .pdetail .btns .btn { width: 100%; }
  .form .input, .form textarea, .sub input { font-size: 16px; }
  .sub input { min-height: 44px; }
  .btns { width: 100%; }
  .foot__top { grid-template-columns: 1fr; gap: 24px; }
  .foot__giant { font-size: 14vw; opacity: .35; }
  .drop__cols { grid-template-columns: 1fr; }
  .prose { font-size: 15px; }
  .specs { grid-template-columns: 1fr; }
  .about-hero__geo, .about-chapters__geo, .about-values__geo { opacity: .28; }
  .ysil--b, .ysil--c { display: none; }
}
@media (max-width: 760px) {
  .proj table.bom { font-size: 13px; }
  .proj table.bom td:first-child { min-width: 150px; }
  .proj table.bom td:nth-child(2) { min-width: 170px; }
  .proj table.bom th[colspan] { position: sticky; left: 0; }
}

html:lang(zh) h1, html:lang(zh) h2, html:lang(zh) h3, html:lang(zh) .display { letter-spacing: 0; line-height: 1.22; }
html:lang(zh) body { line-height: 1.75; }
html:lang(zh) .slide__sub { white-space: normal; }

/* ---------- v6 深色主题细节与可读性 ---------- */
:root { color-scheme: dark; }
::selection { background: var(--lime); color: var(--ink-on-accent); }
:focus-visible { outline-color: var(--lime); }
.skip-link { background: var(--lime); color: var(--ink-on-accent); }
.glass--light {
  background: rgba(17, 29, 42, .88);
  border-color: rgba(159, 190, 225, .16);
}
@supports ((-webkit-backdrop-filter: blur(1px)) or (backdrop-filter: blur(1px))) {
  .glass--light { background: rgba(17, 29, 42, .76); }
}
.glass--lime { background: var(--lime); color: var(--ink-on-accent); }
.nav__bar, .nav.is-scrolled .nav__bar, .nav.is-on-dark .nav__bar {
  background: rgba(11, 18, 27, .4);
  border-color: rgba(159, 190, 225, .14);
}
@supports ((-webkit-backdrop-filter: blur(1px)) or (backdrop-filter: blur(1px))) {
  .nav__bar { background: rgba(11, 18, 27, .32); }
}
.nav__link:hover, .drop[open] > .nav__link, .nav__link.is-active { background: rgba(159, 190, 225, .09); }
.drop__panel { background: rgba(16, 27, 39, .98); }
@media (max-width: 960px) {
  .nav__menu { background: rgba(16, 27, 39, .98); }
}
.drop__types a:hover { background: rgba(0, 255, 255, .12); }
.nav__toggle, .iconbtn { background: rgba(20, 35, 48, .82); color: var(--ink); }
.lang__btn { background: transparent; color: var(--ink); }
.badge, .tag--on-lime { color: var(--ink-on-accent); }
.btn--ink, .pill--ink { background: var(--lime); border-color: var(--lime); color: var(--ink-on-accent); }
.btn--ink:hover, .pill--ink:hover, .btn--lime:hover { background: var(--accent); border-color: var(--accent); color: var(--ink-on-accent); }
.btn--lime, .pill--green, .pill--green:hover { color: var(--ink-on-accent); }
.btn--line:hover, .btn--glass, .btn--glass:hover, .pill { background: var(--white); color: var(--ink); }
.pill--glass { background: rgba(20, 35, 48, .4); border-color: rgba(159, 190, 225, .18); }
.pill--glass.is-active { background: var(--lime); border-color: var(--lime); color: var(--ink-on-accent); }
.foot__social .pill:hover { color: var(--ink-on-accent); }
.sgroup__h small, .cat__no { color: var(--ink-on-accent); }
.iconbtn:hover, .block--dark .iconbtn:hover { background: var(--lime); color: var(--ink-on-accent); border-color: var(--lime); }
.slide:not(.slide--img) .slide__content { color: var(--ink); }
.slide--img .slide__content { color: #F8FBFF; }
.slide--1 .slide__ph { background: radial-gradient(circle at 72% 36%, #163848, var(--warm) 64%); }
.slide--2 .slide__ph { background: radial-gradient(circle at 28% 28%, #1C3545, var(--gray) 68%); }
.slide--3 .slide__ph { background: linear-gradient(180deg, #152735, var(--warm)); }
.hero__label {
  background: rgba(13, 19, 32, .48); border-color: rgba(159, 190, 225, .16); color: var(--ink);
}
.hero__ctrl, .hero__ctrl.glass, .hero__ctrl.glass--light {
  background: rgba(13, 19, 32, .35); border-color: rgba(159, 190, 225, .16); color: var(--ink);
}
.hsearch { background: rgba(13, 19, 32, .42); border-color: rgba(159, 190, 225, .18); }
.hsearch:focus-within, .input:focus { border-color: var(--lime); }
.hsearch input, .input { color-scheme: dark; }
.input:focus { background: #1B2940; }
.hero__dot { background: rgba(230, 238, 245, .22); }
.hero__dot i { background: var(--lime); }
.slide__btns .btn--ink { background: var(--lime); color: var(--ink-on-accent); }
.cat__no, .empty__ico { color: var(--ink-on-accent); }
.cat__name svg { background: rgba(0, 255, 255, .16); color: var(--lime); }
.cat__name svg:hover { background: var(--accent); color: var(--ink-on-accent); }
.logos li { background: #F8FAFC; }
.contact__info { background: #1B2940; color: var(--ink); }
.info li > svg { background: rgba(0, 255, 255, .12); color: var(--lime); }
.contact__company, .about__operator {
  display: grid; gap: 5px; padding-top: 14px;
  border-top: 1px solid var(--line); overflow-wrap: anywhere;
}
.contact__company small, .about__operator span {
  color: var(--muted); font-size: 11px; letter-spacing: .1em; text-transform: uppercase;
}
.contact__company strong, .about__operator strong { font-size: 14px; font-weight: 550; }
.about__operator { width: min(100%, 34em); }
.about__operator a { color: var(--lime); font-size: 14px; }
.about__operator a:hover { color: var(--accent); }
.foot__company { display: grid; gap: 4px; color: var(--on-dark); font-size: 13px; overflow-wrap: anywhere; }
.foot__company span { color: var(--on-dark-muted); font-size: 11px; letter-spacing: .1em; text-transform: uppercase; }
.foot .brand__logo--chip { background: #FFFFFF; }
.alert--ok, .block--dark .alert--ok { background: var(--lime); border-color: var(--lime); color: var(--ink-on-accent); }
.alert--err { background: #351D22; border-color: #8E4B55; color: #FFDCE0; }
.frame__ph::before, .frame__ph::after { border-color: rgba(159, 190, 225, .28); }
.frame__ico { background: rgba(0, 255, 255, .12); color: var(--lime); }
.phero__count strong, .nf__code { color: var(--ink); }
.nf__code { color: transparent; -webkit-text-stroke-color: rgba(230, 238, 245, .2); }
.proj tr.grp th, .proj tfoot td, .proj .bom-total { background: rgba(0, 255, 255, .12); }
.proj code { background: rgba(159, 190, 225, .1); }
.rail { scrollbar-color: rgba(159, 190, 225, .3) transparent; }
.rail::-webkit-scrollbar-thumb { background: rgba(159, 190, 225, .3); }

/* ---------- v6.2 RobotDIY：顶栏圆角、加绿、丰富层次 ---------- */
.nav__bar {
  border-radius: 999px !important;
  background: rgba(13, 19, 32, .55) !important;
  border: 1px solid rgba(0, 255, 255, .2) !important;
  box-shadow: 0 8px 28px rgba(0, 0, 0, .22), inset 0 1px 0 rgba(0, 255, 255, .1);
}
@supports ((-webkit-backdrop-filter: blur(1px)) or (backdrop-filter: blur(1px))) {
  .nav__bar {
    -webkit-backdrop-filter: blur(22px) saturate(160%) !important;
    backdrop-filter: blur(22px) saturate(160%) !important;
    background: rgba(13, 19, 32, .42) !important;
  }
}
.nav.is-scrolled .nav__bar,
.nav.is-on-dark .nav__bar {
  background: rgba(13, 19, 32, .72) !important;
}
.nav__link {
  border-radius: 999px !important;
}
.nav__link:hover, .drop[open] > .nav__link {
  background: rgba(0, 255, 255, .12) !important;
}
.nav__link.is-active {
  background: rgba(0, 255, 255, .2) !important;
  box-shadow: inset 0 0 0 1px rgba(0, 255, 255, .55);
  color: var(--accent-hi);
}
.nav__toggle { border-radius: 50% !important; }
.hero {
  background:
    radial-gradient(ellipse 55% 45% at 78% 18%, rgba(0, 255, 255, .16), transparent 60%),
    radial-gradient(ellipse 40% 35% at 12% 70%, rgba(0, 160, 200, .22), transparent 65%),
    var(--warm);
}
.hero__ctrl, .hero__ctrl.glass, .hero__ctrl.glass--light {
  background: rgba(13, 19, 32, .18) !important;
  border: 1px solid rgba(0, 255, 255, .14) !important;
  border-radius: 999px !important;
  box-shadow: none;
  -webkit-backdrop-filter: blur(14px) saturate(130%);
  backdrop-filter: blur(14px) saturate(130%);
}
.hsearch {
  background: rgba(13, 19, 32, .42) !important;
  border: 1px solid rgba(0, 255, 255, .2) !important;
  box-shadow: none;
  -webkit-backdrop-filter: blur(18px) saturate(140%);
  backdrop-filter: blur(18px) saturate(140%);
}
.block--paper {
  background:
    radial-gradient(ellipse 80% 50% at 50% 0%, rgba(0, 255, 255, .07), transparent 55%),
    var(--warm);
}
.block--gray {
  background:
    linear-gradient(180deg, rgba(0, 255, 255, .05), transparent 28%),
    var(--gray);
}
.stats {
  border-top: 1px solid rgba(0, 255, 255, .18);
  border-bottom: 1px solid rgba(0, 255, 255, .12);
  background: linear-gradient(90deg, rgba(0, 255, 255, .06), transparent 40%, rgba(0, 255, 255, .06));
}
.stat__value { color: var(--accent-hi); }
.stat { border-left-color: rgba(0, 255, 255, .16); }
.eyebrow { color: var(--lime-hi); }
.bhead__title::after {
  content: ""; display: block; width: 48px; height: 3px; margin-top: 14px;
  border-radius: 999px; background: linear-gradient(90deg, var(--lime), transparent);
}
.pcard, .cat__img, .frame--light, .frame--dark {
  box-shadow: inset 0 0 0 1px rgba(0, 255, 255, .08);
}
a.cat:hover .cat__img, .pcard:hover {
  box-shadow: inset 0 0 0 1px rgba(0, 255, 255, .35), 0 16px 40px rgba(0, 0, 0, .25);
}
.pill--glass {
  border-color: rgba(0, 255, 255, .22) !important;
}
.pill--glass:hover, a.pill--glass:hover {
  border-color: var(--lime) !important;
  background: rgba(0, 255, 255, .12) !important;
}
.hero__dot { height: 4px; background: rgba(0, 255, 255, .22); }
.hero__dot i { background: var(--lime); }
.iconbtn {
  border-radius: 50% !important;
  border-color: rgba(0, 255, 255, .3) !important;
}
@media (max-width: 960px) {
  .nav__link { border-radius: 999px !important; }
  .hero__count-cur, .hero__count strong { width: 38px; height: 38px; min-width: 38px; font-size: 13px; }
}

/* ---------- Sprint1：中文防挤 + 运营主体卡 ---------- */
html:lang(zh) .display,
html:lang(zh) .cta__title,
html:lang(zh) .bhead__title,
html:lang(zh) .phero__main .display {
  font-weight: 500;
  letter-spacing: 0;
  line-height: 1.28;
  max-width: min(100%, 14em);
  overflow-wrap: break-word;
  word-break: break-word;
}
html:lang(zh) .display { font-size: clamp(28px, 4.2vw, 48px); }
html:lang(zh) .cta__title { font-size: clamp(26px, 3.6vw, 44px); max-width: min(100%, 12em); }
html:lang(zh) .slide__title {
  font-size: clamp(24px, min(5.2vw, 4.4vh), 40px);
  font-weight: 500; letter-spacing: 0; line-height: 1.25;
  max-width: min(100%, 12em);
}
html:lang(zh) .nav__no { display: none; }
html:lang(zh) .nav__link { gap: 0; padding-inline: 12px; }

.opcard {
  display: grid; grid-template-columns: auto 1fr; gap: 16px 18px; align-items: center;
  padding: 18px 20px; border-radius: var(--r-md);
  border: 1px solid rgba(0, 255, 255, .28);
  background: linear-gradient(135deg, rgba(0, 255, 255, .1), rgba(20, 35, 48, .35));
  max-width: 40em;
}
.opcard__mark {
  width: 52px; height: 52px; border-radius: 14px;
  display: grid; place-items: center;
  background: rgba(7, 13, 20, .55); border: 1px solid rgba(159, 190, 225, .16);
}
.opcard__mark img { width: 32px; height: 32px; object-fit: contain; }
.opcard__eyebrow {
  margin: 0 0 4px; font-size: 11px; letter-spacing: .1em; text-transform: uppercase; color: var(--muted);
}
.opcard__name { margin: 0; font-size: 16px; font-weight: 550; line-height: 1.35; overflow-wrap: anywhere; }
.opcard__meta { margin: 8px 0 0; display: grid; gap: 4px; }
.opcard__meta a { color: var(--lime); font-size: 14px; }
.opcard__meta a:hover { color: var(--accent); }
.opcard--panel { background: rgba(16, 27, 39, .92); border-color: rgba(0, 255, 255, .35); }
.opcard--embed {
  margin: 14px 0 4px; padding: 14px 16px;
  background: rgba(7, 13, 20, .35); border-color: rgba(0, 255, 255, .3);
}
.opcard--foot {
  margin-top: 4px; padding: 14px 16px; max-width: 28em;
  background: rgba(255, 255, 255, .04); border-color: rgba(0, 255, 255, .22);
}
.opcard--foot .opcard__eyebrow { color: var(--on-dark-muted); }
.opcard--foot .opcard__name { color: var(--on-dark); font-size: 14px; }
.opcard--compact .opcard__mark { width: 44px; height: 44px; border-radius: 12px; }
.opcard--compact .opcard__mark img { width: 26px; height: 26px; }
.opcard-section { display: grid; gap: 28px; }
.opcard-section .bhead { margin-bottom: 0; }

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { animation-duration: .001ms !important; animation-iteration-count: 1 !important; transition-duration: .001ms !important; transition-delay: 0s !important; }
  .slide.is-active .slide__media img, .slide.is-active .slide__ph { animation: none; }
  .slide__media img, .slide__ph { transform: none; }
  html.io [data-reveal] { opacity: 1; transform: none; }
  a.pcard:hover .pcard__img img, a.cat:hover .cat__img img { transform: none; }
}

/* ---------- v6.3 顶栏去黑坨 + 桌面层次 ---------- */
/* 关键害：半透明顶栏里再铺一层几乎不透明的 .nav__menu 黑底 */
.nav__menu { background: transparent !important; box-shadow: none !important; border: 0 !important; }
.nav__bar {
  background: rgba(13, 19, 32, .36) !important;
  border: 1px solid rgba(0, 255, 255, .16) !important;
  box-shadow: 0 10px 32px rgba(0, 0, 0, .16), inset 0 1px 0 rgba(255, 255, 255, .05) !important;
}
@supports ((-webkit-backdrop-filter: blur(1px)) or (backdrop-filter: blur(1px))) {
  .nav__bar {
    -webkit-backdrop-filter: blur(24px) saturate(160%) !important;
    backdrop-filter: blur(24px) saturate(160%) !important;
    background: rgba(13, 19, 32, .28) !important;
  }
}
.nav.is-scrolled .nav__bar,
.nav.is-on-dark .nav__bar {
  background: rgba(13, 19, 32, .68) !important;
}
/* 01/02/03 装饰号：桌面也收掉，少一层廉价感 */
.nav__no { display: none; }
.nav__link { gap: 0; font-weight: 500; letter-spacing: .01em; padding-inline: 14px; }
.lang__btn {
  background: transparent !important;
  border-color: rgba(0, 255, 255, .2) !important;
  box-shadow: none !important;
}
.lang__btn:hover, .lang.is-open .lang__btn {
  background: rgba(0, 255, 255, .12) !important;
}
.lang__panel {
  background: rgba(13, 19, 32, .9) !important;
  border: 1px solid rgba(0, 255, 255, .22) !important;
  box-shadow: 0 18px 48px rgba(0, 0, 0, .4) !important;
}
@supports ((-webkit-backdrop-filter: blur(1px)) or (backdrop-filter: blur(1px))) {
  .lang__panel {
    -webkit-backdrop-filter: blur(20px) saturate(140%);
    backdrop-filter: blur(20px) saturate(140%);
    background: rgba(13, 19, 32, .78) !important;
  }
}

/* 轮播控件：横条轻玻璃，不再是右下角黑坨 */
.hero__ctrl {
  background: rgba(255,255,255,.04) !important;
  border-color: rgba(255,255,255,.12) !important;
  display: flex !important;
  flex-wrap: nowrap;
  align-items: center;
  justify-content: flex-end;
  gap: 10px 12px;
  padding: 8px 10px 8px 14px !important;
  grid-template-columns: none !important;
  grid-template-rows: none !important;
}
.hero__count { grid-column: auto !important; margin: 0; }
.hero__dots { grid-column: auto !important; margin: 0; }
.hero__count-cur, .hero__count strong {
  width: 34px; height: 34px; min-width: 34px; font-size: 12px;
  box-shadow: 0 0 0 2px rgba(0, 255, 255, .16);
}
.hero__ctrl .iconbtn {
  width: 36px; height: 36px;
  background: transparent !important;
  border-color: rgba(0, 255, 255, .28) !important;
}
.hero__ctrl .iconbtn:hover {
  background: rgba(0, 255, 255, .16) !important;
}

@media (max-width: 960px) {
  .hero__ctrl .iconbtn {
    width: 44px !important; height: 44px !important; min-width: 44px !important;
  }
  .hero__count-cur, .hero__count strong {
    width: 36px; height: 36px; min-width: 36px;
  }
}


/* 分区别像硬切黑块 */
.block--paper {
  background:
    radial-gradient(ellipse 70% 45% at 50% -10%, rgba(0, 255, 255, .08), transparent 55%),
    linear-gradient(180deg, #111A2A 0%, var(--white) 28%) !important;
}
.block--gray {
  background:
    linear-gradient(180deg, rgba(0, 255, 255, .04), transparent 30%),
    var(--gray) !important;
}
.bhead { margin-bottom: 8px; }
.bhead__title { letter-spacing: -.02em; }
.pcard {
  transition: transform .35s var(--ease), border-color .35s, box-shadow .35s;
}
.pcard:hover { transform: translateY(-3px); }
.cta.block--lime {
  background:
    radial-gradient(ellipse 55% 70% at 90% 10%, rgba(0, 255, 255, .10), transparent 55%),
    linear-gradient(145deg, #111A2A 0%, #0D1320 50%, #0D1320 100%) !important;
}
.cta__title { color: #E8EEF6 !important; }
.cta .badge, .cta .eyebrow { color: rgba(0, 255, 255, .75) !important; background: transparent; }
@media (max-width: 960px) {
  .nav__menu {
    background: rgba(13, 19, 32, .96) !important;
    border: 1px solid rgba(0, 255, 255, .16) !important;
  }
  .hero__ctrl {
    justify-content: space-between;
    border-radius: 20px !important;
  }
}

/* ---------- v6.4：搜索标注、建议词、联系页、层次 ---------- */
.hsearch__ico {
  display: inline-grid !important; place-items: center;
  flex: none; width: 22px; height: 22px; border-radius: 0;
  color: var(--lime) !important;
  background: transparent;
  border: 0;
}
.hsearch__ico .ico { color: inherit; stroke: currentColor; }
.hsearch__label {
  flex: none; font-size: 12px; font-weight: 650; letter-spacing: .08em;
  text-transform: uppercase; color: var(--lime-hi, var(--lime));
  padding-right: 4px; border-right: 1px solid rgba(159, 190, 225, .18);
  margin-right: 2px;
}
.dock__suggest {
  display: flex; flex-wrap: wrap; align-items: center; gap: 8px 10px;
  margin: 2px 2px 0; font-size: 12px;
}
.dock__suggest-h {
  color: rgba(159, 190, 225, .42); letter-spacing: .06em; text-transform: uppercase;
  font-size: 10px; font-weight: 600;
}
.dock__suggest-a {
  color: rgba(159, 190, 225, .55); padding: 2px 0;
  border-bottom: 1px solid rgba(159, 190, 225, .18);
  transition: color .2s, border-color .2s;
}
.dock__suggest-a:hover { color: var(--lime); border-color: rgba(0, 255, 255, .45); }
.dock__h { color: rgba(159, 190, 225, .4) !important; font-weight: 600; }
.pill--glass {
  background: rgba(20, 35, 48, .28) !important;
  border-color: rgba(159, 190, 225, .12) !important;
  color: rgba(230, 238, 245, .72) !important;
  font-weight: 450;
}
.pill--glass:hover, a.pill--glass:hover {
  color: var(--ink) !important;
  border-color: rgba(0, 255, 255, .35) !important;
  background: rgba(0, 255, 255, .1) !important;
}
.contact__hint { margin: 0 0 18px; color: var(--muted); max-width: 36em; }
.contact__info {
  padding: 22px; border-radius: var(--r-md);
  border: 1px solid rgba(0, 255, 255, .18);
  background: rgba(17, 26, 42, .55);
}
.contact__topics { margin-top: 18px; }
.contact__topic-list { display: grid; gap: 10px; margin-top: 10px; }
.contact__topic-list li {
  display: grid; grid-template-columns: auto 1fr; gap: 12px; align-items: center;
  padding: 12px 14px; border-radius: 14px;
  border: 1px solid rgba(159, 190, 225, .1);
  background: rgba(255,255,255,.03);
}
.contact__topic-list strong { display: block; font-size: 14px; font-weight: 550; }
.contact__topic-list small { color: var(--muted); font-size: 12px; }
.contact__topic-ico {
  display: grid; place-items: center; width: 36px; height: 36px; border-radius: 10px;
  background: rgba(0, 255, 255, .1); color: var(--lime);
}
.contact__quick { display: grid; gap: 10px; margin-top: 16px; }
.contact__quick .btn { justify-content: center; }
.contact__media { margin-top: 18px; }
@media (max-width: 960px) {
  .hsearch__label { display: none; }
  .dock__suggest { gap: 6px 8px; }
}

/* ---------- v6.5：关于页低调几何层次 + 原文折叠 ---------- */
.about-hero, .about-chapters, .about-values { position: relative; isolation: isolate; }
.about-hero__geo, .about-chapters__geo, .about-values__geo {
  pointer-events: none; position: absolute; inset: 0; z-index: 0; opacity: .55;
  background:
    radial-gradient(ellipse 40% 35% at 88% 18%, rgba(0, 255, 255, .05), transparent 70%),
    radial-gradient(ellipse 30% 28% at 8% 78%, rgba(159, 190, 225, .04), transparent 65%),
    linear-gradient(rgba(159, 190, 225, .035) 1px, transparent 1px),
    linear-gradient(90deg, rgba(159, 190, 225, .035) 1px, transparent 1px);
  background-size: auto, auto, 48px 48px, 48px 48px;
}
.about-chapters__geo {
  background:
    radial-gradient(circle at 92% 40%, rgba(0, 255, 255, .04), transparent 42%),
    repeating-linear-gradient(-18deg, transparent 0 22px, rgba(159, 190, 225, .025) 22px 23px);
}
.about-values__geo {
  background:
    radial-gradient(ellipse 50% 40% at 50% 0%, rgba(0, 255, 255, .045), transparent 60%),
    linear-gradient(rgba(159, 190, 225, .03) 1px, transparent 1px),
    linear-gradient(90deg, rgba(159, 190, 225, .03) 1px, transparent 1px);
  background-size: auto, 56px 56px, 56px 56px;
}
.about-hero > .wrap, .about-chapters > .wrap, .about-values > .wrap { position: relative; z-index: 1; }

.chapter__text {
  padding: 22px 24px; border-radius: var(--r-md);
  border: 1px solid rgba(159, 190, 225, .1);
  background: rgba(16, 27, 39, .35);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.03);
}
.chapter__text::before {
  content: ""; position: absolute; top: 18px; left: 0; width: 3px; height: 42px;
  border-radius: 999px; background: rgba(0, 255, 255, .35);
}
.chapter__media {
  box-shadow: 0 0 0 1px rgba(159, 190, 225, .06), 0 18px 40px rgba(0,0,0,.18);
}

.values { gap: 18px; }
.value {
  position: relative; overflow: hidden;
  padding: 28px 24px 26px; border-radius: var(--r-md);
  border: 1px solid rgba(159, 190, 225, .12);
  background:
    linear-gradient(160deg, rgba(0, 255, 255, .04), transparent 42%),
    rgba(16, 27, 39, .42);
  min-height: 100%;
}
.value__mark {
  position: absolute; right: -18px; top: -18px; width: 88px; height: 88px;
  border: 1px solid rgba(0, 255, 255, .12); border-radius: 22px;
}
@media (hover: hover) and (pointer: fine) {
  .value__mark { transform: rotate(18deg); }
}
.value__mark::after {
  content: ""; position: absolute; inset: 14px;
  border: 1px solid rgba(159, 190, 225, .08); border-radius: 14px;
}
.value__no { color: rgba(0, 255, 255, .55); }
.value__text { color: rgba(159, 190, 225, .62); font-size: 14px; line-height: 1.7; }

.orig {
  margin-top: 28px; padding: 0; border-radius: 16px;
  border: 1px solid rgba(159, 190, 225, .12);
  background: rgba(7, 13, 20, .35);
}
.orig__sum {
  cursor: pointer; list-style: none; padding: 14px 18px;
  font-size: 13px; font-weight: 550; color: rgba(159, 190, 225, .72);
}
.orig__sum::-webkit-details-marker { display: none; }
.orig__sum::before { content: "＋ "; color: rgba(0, 255, 255, .55); }
.orig[open] .orig__sum::before { content: "－ "; }
.orig__note {
  margin: 0; padding: 0 18px 10px;
  font-size: 12px; color: rgba(159, 190, 225, .42);
}
.orig__body {
  margin: 0 12px 14px; padding: 16px 18px; border-radius: 12px;
  border: 1px solid rgba(159, 190, 225, .08);
  background: rgba(255,255,255,.02);
  opacity: .88; font-size: 14px;
}

/* 「显示原文」——低调文字链，不抢正文 */
.orig {
  margin: 6px 0 10px;
  border: 0;
  background: transparent;
}
.orig__btn {
  display: inline-flex !important;
  align-items: center;
  gap: 4px;
  min-height: 28px;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: var(--muted) !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  letter-spacing: .02em;
  cursor: pointer;
  list-style: none;
  box-shadow: none !important;
  animation: none !important;
  text-decoration: underline;
  text-underline-offset: 3px;
  text-decoration-color: rgba(159, 190, 225, .35);
}
.orig__btn::-webkit-details-marker { display: none; }
.orig__btn:hover { color: var(--lime) !important; text-decoration-color: var(--lime); }
.orig__btn-txt { padding: 0; }
.orig[open] .orig__btn { color: var(--lime) !important; }
.orig__panel {
  margin-top: 8px;
  padding: 10px 12px;
  border-radius: 10px;
  border: 1px solid rgba(159, 190, 225, .16);
  background: rgba(7, 13, 20, .4);
}
.orig__body {
  margin: 0;
  color: var(--muted);
  font-size: 13px;
  line-height: 1.55;
  white-space: pre-wrap;
}
@media (max-width: 640px) {
  .orig__btn { width: auto; justify-content: flex-start; }
}

/* ---------- v7 Y2K 装饰：星形 / 科技网格 / 零件线稿（纯视觉，无文案） ---------- */
.y2k-deco {
  pointer-events: none;
  position: absolute;
  inset: 0;
  z-index: 0;
  overflow: hidden;
}
/* 勿改 .hero__stage 的 absolute，否则轮播图塌掉 */
.y2k-deco + .wrap,
.phero > .y2k-deco ~ .wrap,
.phero > .y2k-deco ~ .phero__in,
.block > .y2k-deco ~ .wrap { position: relative; z-index: 1; }
.hero, .phero, .nf, .blog-hero, .cta, .contact-hero { position: relative; isolation: isolate; }

.ystar {
  position: absolute;
  display: block;
  background:
    linear-gradient(145deg, rgba(0,255,255,.92) 0%, rgba(255,79,163,.78) 48%, rgba(249,233,0,.7) 100%);
  opacity: .42;
  filter: saturate(1.15);
  transform: rotate(var(--rot, -12deg));
  clip-path: polygon(
    50% 0%, 61% 22%, 86% 12%, 74% 34%, 100% 42%, 76% 52%, 88% 78%,
    62% 68%, 50% 96%, 38% 68%, 12% 78%, 24% 52%, 0% 42%, 26% 34%, 14% 12%, 39% 22%
  );
  animation: ystar-float 14s var(--ease) infinite alternate;
  will-change: transform;
}
.ystar--lg { width: clamp(180px, 28vw, 360px); height: clamp(180px, 28vw, 360px); }
.ystar--md { width: clamp(90px, 14vw, 168px); height: clamp(90px, 14vw, 168px); opacity: .34; }
.ystar--sm { width: clamp(42px, 7vw, 72px); height: clamp(42px, 7vw, 72px); opacity: .5;
  background: linear-gradient(160deg, var(--lemon), var(--pink));
  animation-duration: 10s;
}
.ystar--ghost {
  background: linear-gradient(145deg, rgba(0,255,255,.35), rgba(255,79,163,.22));
  opacity: .22; filter: blur(.4px);
}
.ystar--a { top: 8%; right: 4%; --rot: -18deg; }
.ystar--b { top: 28%; right: 18%; --rot: 22deg; animation-delay: -4s; }
.ystar--c { bottom: 18%; right: 8%; --rot: 8deg; animation-delay: -7s; }
.ystar--d { top: 12%; left: 6%; --rot: -28deg; }
.ystar--e { bottom: 12%; left: 10%; --rot: 16deg; }

@keyframes ystar-float {
  from { transform: rotate(var(--rot, -12deg)) translate3d(0,0,0) scale(1); }
  to { transform: rotate(calc(var(--rot, -12deg) + 8deg)) translate3d(6px, -10px, 0) scale(1.04); }
}

.ygrid {
  position: absolute; inset: 0;
  background:
    linear-gradient(rgba(159,190,225,.045) 1px, transparent 1px),
    linear-gradient(90deg, rgba(159,190,225,.045) 1px, transparent 1px);
  background-size: 52px 52px;
  mask-image: radial-gradient(ellipse 70% 60% at 80% 20%, #000 20%, transparent 70%);
  -webkit-mask-image: radial-gradient(ellipse 70% 60% at 80% 20%, #000 20%, transparent 70%);
  opacity: .9;
}
.ygrid--soft {
  mask-image: radial-gradient(ellipse 55% 50% at 10% 80%, #000 10%, transparent 65%);
  -webkit-mask-image: radial-gradient(ellipse 55% 50% at 10% 80%, #000 10%, transparent 65%);
}
.yorb {
  position: absolute; width: 42%; height: 42%;
  border: 1px solid rgba(0,255,255,.1);
  border-radius: 50%;
  top: -8%; right: -6%;
}
.yorb::after {
  content: ""; position: absolute; inset: 18%;
  border: 1px dashed rgba(255,79,163,.14);
  border-radius: 50%;
}

.ysil {
  position: absolute;
  width: clamp(120px, 18vw, 220px);
  height: clamp(120px, 18vw, 220px);
  opacity: .14;
  color: var(--lime);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
}
.ysil--gear {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 120 120' fill='none' stroke='%2300FFFF' stroke-width='1.6'%3E%3Cpath d='M60 14l6 10 11-2 2 11 10 6-2 11 11 2-6 10 6 10-11 2 2 11-10 6-2 11-11-2-6 10-6-10-11 2-2-11-10-6 2-11-11-2 6-10-6-10 11-2-2-11 10-6 2-11 11 2z'/%3E%3Ccircle cx='60' cy='60' r='16'/%3E%3Ccircle cx='60' cy='60' r='6'/%3E%3C/svg%3E");
}
.ysil--joint {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 120 120' fill='none' stroke='%2300FFFF' stroke-width='1.6'%3E%3Crect x='18' y='48' width='34' height='24' rx='4'/%3E%3Crect x='68' y='48' width='34' height='24' rx='4'/%3E%3Ccircle cx='60' cy='60' r='14'/%3E%3Cpath d='M52 60h16M60 52v16'/%3E%3Cpath d='M28 40v-10h16M92 80v10H76'/%3E%3C/svg%3E");
}
.ysil--pcb {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 120 120' fill='none' stroke='%2300FFFF' stroke-width='1.4'%3E%3Crect x='20' y='24' width='80' height='72' rx='6'/%3E%3Ccircle cx='40' cy='44' r='6'/%3E%3Ccircle cx='80' cy='44' r='6'/%3E%3Cpath d='M40 50v20h40V50M34 78h52M28 36h-8M100 36h8M28 84h-8M100 84h8'/%3E%3C/svg%3E");
}
.ysil--motor {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 120 120' fill='none' stroke='%2300FFFF' stroke-width='1.6'%3E%3Crect x='30' y='34' width='60' height='52' rx='10'/%3E%3Ccircle cx='60' cy='60' r='16'/%3E%3Ccircle cx='60' cy='60' r='5'/%3E%3Cpath d='M42 34V26h36v8M48 86v8h24v-8M90 48h10v24H90'/%3E%3C/svg%3E");
}
.ysil--a { left: -2%; bottom: 8%; }
.ysil--b { right: -1%; top: 42%; opacity: .1; }
.ysil--c { left: 4%; top: 16%; opacity: .1; }
@media (hover: hover) and (pointer: fine) {
  .ysil--c { transform: rotate(-20deg); }
}

/* 轮播图在下，星形半透明盖在图上；dock/文案更高一层 */
.hero__slides { z-index: 1; }
.hero .y2k-deco {
  z-index: 3;
  mix-blend-mode: normal;
  opacity: 1;
  pointer-events: none;
}
.hero .ygrid { opacity: .35; }
.hero .yorb { opacity: .55; }
.hero .ystar--lg { opacity: .36; }
.hero .ystar--md { opacity: .28; }
.hero .ystar--sm { opacity: .42; }
.hero .ystar--a { top: 10%; right: 2%; }
.hero .ystar--b { top: 36%; right: 14%; width: clamp(70px, 11vw, 130px); height: clamp(70px, 11vw, 130px); }
.hero .ystar--c { display: none; }
@media (min-width: 961px) {
  .hero .ystar--c { display: block; bottom: 26%; right: 4%; }
}
.hero .ysil { opacity: .12; }
.hero__label { z-index: 4; }
.hero__dock { z-index: 5; }
.slide__content { z-index: 4; }

.phero .y2k-deco, .blog-hero .y2k-deco { opacity: 1; }
.phero .ystar--a, .blog-hero .ystar--a { top: 6%; right: 2%; }
.phero .ystar--b, .blog-hero .ystar--b { top: 34%; right: 16%; }
.nf .ystar--a { top: 8%; right: 8%; opacity: .35; }
.cta .y2k-deco { opacity: .7; }
.cta .ystar { opacity: .22; }

.block--deco { position: relative; isolation: isolate; }
.block--deco > .y2k-deco { opacity: .7; }
.block--deco > .y2k-deco .ystar { display: none; }
.block--deco > .wrap { position: relative; z-index: 1; }

/* 卡片/按钮青粉层次微调 */
.btn--ink, .pill--ink {
  box-shadow: 0 0 0 1px rgba(0,255,255,.25), 0 8px 24px rgba(0,255,255,.12);
}
.badge {
  background: linear-gradient(120deg, var(--lime), #7AFFFF);
  color: var(--ink-on-accent);
}
.tag__dot { background: var(--pink); box-shadow: 0 0 0 3px rgba(255,79,163,.18); }
.stat__value { color: var(--lime); }
.bhead__title::after {
  background: linear-gradient(90deg, var(--lime), var(--pink), transparent);
}
.nav__link.is-active {
  box-shadow: inset 0 0 0 1px rgba(0,255,255,.55);
  color: #B8FFFF;
}
.logos li {
  background: #F4F7FB;
  border: 1px solid rgba(159,190,225,.14);
  border-radius: 16px;
}
.chapter__text::before { background: linear-gradient(180deg, var(--lime), var(--pink)); }
.value__no { color: var(--lemon); opacity: .7; }
.orig__sum::before { color: var(--lime); }
.about-hero__geo, .about-chapters__geo, .about-values__geo {
  background:
    radial-gradient(ellipse 40% 35% at 88% 18%, rgba(0,255,255,.05), transparent 70%),
    radial-gradient(ellipse 30% 28% at 8% 78%, rgba(255,79,163,.04), transparent 65%),
    linear-gradient(rgba(159,190,225,.035) 1px, transparent 1px),
    linear-gradient(90deg, rgba(159,190,225,.035) 1px, transparent 1px);
  background-size: auto, auto, 48px 48px, 48px 48px;
}
.cta.block--lime {
  background:
    radial-gradient(ellipse 50% 60% at 92% 8%, rgba(255,79,163,.12), transparent 55%),
    radial-gradient(ellipse 40% 50% at 8% 90%, rgba(0,255,255,.08), transparent 50%),
    linear-gradient(145deg, #111A2A 0%, #0D1320 55%, #080C14 100%) !important;
}
.cta .badge, .cta .eyebrow { color: rgba(0,255,255,.78) !important; }

@media (max-width: 960px) {
  .ystar--lg { width: 88px; height: 88px; opacity: .2; }
  .ystar--md { width: 48px; height: 48px; opacity: .16; }
  .ystar--sm { width: 28px; height: 28px; opacity: .28; }
  .ysil { opacity: .06; width: 84px; height: 84px; }
  .hero .ystar--lg { opacity: .16; }
  .hero .ystar--md { opacity: .12; }
  .hero .ystar--a { top: 6%; right: -2%; }
  .hero .ystar--b { top: 22%; right: 8%; }
  .hero .ystar--c { display: none !important; }
  .ygrid { opacity: .22; }
  .block--deco > .y2k-deco { opacity: .4; }
}
@media (max-width: 640px) {
  .ystar--lg { width: 64px; height: 64px; opacity: .14; }
  .hero .ystar--lg { width: 64px; height: 64px; opacity: .12; }
  .hero .ystar--md { display: none; } /* 首屏只留一颗小星 */
}
@media (prefers-reduced-motion: reduce) {
  .ystar { animation: none !important; }
}

/* ---------- v7.1 手机端专项补丁 ---------- */
@media (max-width: 960px) {
  .dock__suggest { display: none !important; } /* 盖过后面的 display:flex */

  /* 装饰星/零件：手机上摆正，不再歪着转 */
  .ystar, .hero .ystar, .phero .ystar, .blog-hero .ystar, .cta .ystar, .nf .ystar {
    --rot: 0deg !important;
    transform: none !important;
    animation: none !important;
  }
  .ysil--c { transform: none !important; }
  .value__mark { transform: none !important; }

  /* 箭头/按钮图标垂直居中，避免视觉发歪 */
  .ico {
    display: block;
    flex: none;
    vertical-align: middle;
  }
  .btn .ico, .pill .ico, .iconbtn .ico, .cat__name svg, .hsearch__ico .ico {
    transform: none !important;
  }
  .cat__name svg {
    display: grid; place-items: center;
  }
}

@media (max-width: 960px) {
  .nav.is-open::after {
    content: "";
    position: fixed; inset: 0; z-index: -1;
    background: rgba(0, 0, 0, .42);
    pointer-events: auto;
  }
  .foot {
    padding-bottom: max(24px, env(safe-area-inset-bottom, 0px));
  }
  .nf { padding-top: calc(100px + env(safe-area-inset-top, 0px)); }
}



/* ---------- v7.2 上图下文（必须放最后，压过前面的 top:0 / bottom:0） ---------- */
@media (max-width: 960px) {
  .hero {
    height: auto !important;
    min-height: 0 !important;
    --hero-media-h: calc(100vw * 9 / 16);
    --slide-copy-h: 200px;
  }
  .hero__stage {
    position: relative !important;
    inset: auto !important;
    height: auto !important;
    max-height: none !important;
    display: flex;
    flex-direction: column;
  }
  .hero__slides {
    position: relative !important;
    inset: auto !important;
    height: calc(var(--hero-media-h) + var(--slide-copy-h)) !important;
    flex: none;
  }
  .hero .slide__media {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    bottom: auto !important;
    height: var(--hero-media-h) !important;
    inset: auto 0 auto 0; /* left right only — avoid inset:0 reset */
  }
  .hero .slide__media img,
  .hero .slide__ph {
    object-fit: cover !important;
    object-position: center center !important;
    transform: none !important;
    animation: none !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
  }
  .hero .slide--img .slide__media::after { display: none !important; }

  .hero .slide__content {
    position: absolute !important;
    top: var(--hero-media-h) !important;
    left: 0 !important;
    right: 0 !important;
    bottom: auto !important;
    height: auto !important;
    min-height: var(--slide-copy-h);
    padding: 16px max(var(--pad), 16px) 14px !important;
    padding-top: 16px !important;
    padding-bottom: 14px !important;
    margin: 0 !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: flex-start !important;
    align-items: flex-start !important;
    gap: 8px !important;
    background: var(--warm) !important;
    color: var(--ink) !important;
    z-index: 2;
  }
  .hero .slide__content .slide__sub {
    color: var(--muted) !important;
  }
  .hero .slide__content .slide__cap .tag {
    background: rgba(0, 255, 255, .12) !important;
    color: var(--lime) !important;
    border-color: rgba(0, 255, 255, .28) !important;
  }
  .hero .y2k-deco {
    top: 0 !important;
    bottom: auto !important;
    height: var(--hero-media-h) !important;
  }
  .hero__dock {
    position: relative !important;
    left: auto !important;
    right: auto !important;
    bottom: auto !important;
    margin: 0 !important;
    width: 100%;
    padding: 8px max(var(--pad), 16px) calc(12px + env(safe-area-inset-bottom, 0px)) !important;
    background: var(--warm) !important;
    border-top: 1px solid var(--line);
    z-index: 3;
  }
}


/* i18n wrap：长译文不撑破布局 */
.display, .bhead__title, .lead, .slide__title, .slide__sub, .h2, .h3, .body, .cat__name, .pcard__name {
  overflow-wrap: anywhere;
  word-break: break-word;
}
.lang__opt, .lang__cur { overflow-wrap: anywhere; }
