/* ============================================================
   SiCap · 江苏矽谦半导体  设计令牌系统 (Design Tokens)
   风格：深空科技 · 品牌蓝
   证据来源：
     - bg / text / 结构色 → PEA 风格库 dark-tech「深空科技」变体
     - accent 蓝 → SiCap logo 实测主色 #0080D0（提亮以适配深色底）
     - accent 橙 → SiCap logo 实测辅色 #F0A000（每屏 ≤1 处）
   铁律：所有样式值必须取自下列令牌，禁止令牌外硬编码
   ============================================================ */

:root{
  /* ---------- color · 背景 ---------- */
  --bg-primary:   #050810;
  --bg-secondary: #0A0F1A;
  --bg-tertiary:  #0F1625;

  /* ---------- color · 文字 ---------- */
  --text-primary:   #F0F4F8;
  --text-secondary: #A9B6C6;
  --text-muted:     #6B7A8C;

  /* ---------- color · 强调（品牌蓝，源自 logo） ---------- */
  --accent:          #0A84D8;
  --accent-hover:    #2E9EEA;
  --accent-pressed:  #0069B0;
  --accent-bright:   #37A6EA;   /* 深底小字 / 图标专用 */
  --accent-warm:     #F0A000;   /* logo 橙：每屏 ≤1 处 */

  /* ---------- color · 描边 ---------- */
  --border:        #1B2433;
  --border-strong: #2A3648;

  /* ---------- spacing（base 4px，8 级） ---------- */
  --sp-xs:  4px;
  --sp-sm:  8px;
  --sp-md:  16px;
  --sp-lg:  24px;
  --sp-xl:  32px;
  --sp-2xl: 48px;
  --sp-3xl: 64px;
  --sp-4xl: 96px;

  /* ---------- radius ---------- */
  --r-sm: 2px;
  --r-md: 4px;
  --r-lg: 6px;
  --r-xl: 10px;
  --r-full: 9999px;

  /* ---------- typography ---------- */
  --font-heading: "Bahnschrift", "DIN Alternate", "Inter", "PingFang SC",
                  "Noto Sans SC", "Microsoft YaHei", system-ui, sans-serif;
  --font-body:    "Inter", "Segoe UI Variable Text", "Segoe UI",
                  "PingFang SC", "Noto Sans SC", "Microsoft YaHei", system-ui, sans-serif;
  --font-mono:    "Cascadia Mono", "JetBrains Mono", Consolas,
                  "SFMono-Regular", ui-monospace, monospace;

  --fs-xs:  12px;
  --fs-sm:  14px;
  --fs-md:  16px;
  --fs-lg:  18px;
  --fs-xl:  22px;
  --fs-2xl: 28px;
  --fs-3xl: 36px;
  --fs-4xl: 48px;
  --fs-5xl: 64px;

  --fw-regular: 400;
  --fw-medium:  500;
  --fw-semi:    600;
  --fw-bold:    700;

  --lh-tight:   1.15;
  --lh-snug:    1.35;
  --lh-normal:  1.6;
  --lh-relaxed: 1.85;

  /* ---------- shadows ---------- */
  --sh-sm: 0 1px 2px rgba(0,0,0,.40);
  --sh-md: 0 4px 12px rgba(0,0,0,.45);
  --sh-lg: 0 12px 32px rgba(0,0,0,.50);
  --sh-xl: 0 24px 64px rgba(0,0,0,.55);

  /* ---------- motion ---------- */
  --ease-standard:   cubic-bezier(.4, 0, .2, 1);
  --ease-emphasized: cubic-bezier(.2, 0, 0, 1);
  --ease-decelerated:cubic-bezier(0, 0, .2, 1);
  --dur-fast:   150ms;
  --dur-normal: 300ms;
  --dur-slow:   500ms;
  --dur-slower: 800ms;

  /* ---------- layout ---------- */
  --maxw: 1200px;
  --pad-x: var(--sp-2xl);      /* 桌面 48px */
  --nav-h: 68px;
}

/* ============================================================
   Reset & base
   ============================================================ */
*,*::before,*::after{ box-sizing:border-box; }
html{ -webkit-text-size-adjust:100%; scroll-behavior:smooth; }
@media (prefers-reduced-motion: reduce){
  html{ scroll-behavior:auto; }
  *,*::before,*::after{
    animation-duration:.01ms !important;
    animation-iteration-count:1 !important;
    transition-duration:.01ms !important;
  }
}
body{
  margin:0;
  background:var(--bg-primary);
  color:var(--text-primary);
  font-family:var(--font-body);
  font-size:var(--fs-md);
  line-height:var(--lh-normal);
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
  overflow-x:hidden;
}
img{ max-width:100%; display:block; }
a{ color:inherit; text-decoration:none; }
button{ font:inherit; color:inherit; background:none; border:0; cursor:pointer; }
h1,h2,h3,h4{ margin:0; font-family:var(--font-heading); font-weight:var(--fw-semi);
             line-height:var(--lh-tight); letter-spacing:-.01em; }
p{ margin:0; }
ul{ margin:0; padding:0; list-style:none; }
table{ border-collapse:collapse; width:100%; }
:focus-visible{ outline:2px solid var(--accent-bright); outline-offset:3px; }
::selection{ background:var(--accent); color:var(--text-primary); }

/* 数字统一等宽 */
.num{ font-family:var(--font-mono); font-variant-numeric:tabular-nums; }

/* ============================================================
   Layout 栅格
   ============================================================ */
.wrap{ width:100%; max-width:var(--maxw); margin-inline:auto; padding-inline:var(--pad-x); }
.section{ padding-block:var(--sp-4xl); position:relative; }
.section--tight{ padding-block:var(--sp-3xl); }
.section--alt{ background:var(--bg-secondary); }
.grid{ display:grid; gap:var(--sp-lg); }
.g-2{ grid-template-columns:repeat(2,minmax(0,1fr)); }
.g-3{ grid-template-columns:repeat(3,minmax(0,1fr)); }
.g-4{ grid-template-columns:repeat(4,minmax(0,1fr)); }

/* 防止栅格/弹性子项被宽内容（640px 表格、长串文字）撑破容器导致横向溢出。
   grid/flex 子项默认 min-width:auto，会把 min-content 宽度当作下限。 */
.grid > *,
.split > *,
.split--wide > *,
.split--narrow > *,
.scene__grid > *,
.spec-cols > *,
.feat > *,
.team > *,
.market > *,
.apps > *,
.invest > *,
.footer__grid > *,
.hero__grid > *{ min-width:0; }

/* 网格纹理（SVG pattern，非渐变） */
.tex-grid{
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='80' height='80'%3E%3Cpath d='M0 0H80M0 0V80' fill='none' stroke='%23ffffff' stroke-opacity='0.035' stroke-width='1'/%3E%3C/svg%3E");
}
.tex-grid-lg{
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cpath d='M0 0H160M0 0V160' fill='none' stroke='%23ffffff' stroke-opacity='0.05' stroke-width='1'/%3E%3C/svg%3E");
}
.tex-dots{
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24'%3E%3Ccircle cx='1' cy='1' r='1' fill='%23ffffff' fill-opacity='0.05'/%3E%3C/svg%3E");
}

/* ============================================================
   导航栏（顶部固定长条贯穿）
   ============================================================ */
.nav{
  position:fixed; inset-block-start:0; inset-inline:0; z-index:100;
  height:var(--nav-h);
  background:rgba(5,8,16,.86);
  border-bottom:1px solid transparent;
  transition:border-color var(--dur-normal) var(--ease-standard),
             background var(--dur-normal) var(--ease-standard);
}
.nav.is-stuck{ background:rgba(5,8,16,.96); border-bottom-color:var(--border); }
.nav__inner{ height:100%; display:flex; align-items:center; gap:var(--sp-xl); }
.nav__logo{ display:flex; align-items:center; gap:var(--sp-sm); flex-shrink:0; }
.nav__logo img{ height:30px; width:auto; }
.nav__logo-text{ display:flex; flex-direction:column; line-height:1.1; }
.nav__logo-cn{ font-family:var(--font-heading); font-weight:var(--fw-semi);
               font-size:var(--fs-sm); letter-spacing:.06em; }
.nav__logo-en{ font-family:var(--font-mono); font-size:var(--fs-xs);
               color:var(--text-muted); letter-spacing:.18em; }
.nav__menu{ display:flex; align-items:center; gap:var(--sp-xl); margin-inline-start:auto; }
.nav__link{
  position:relative; font-size:var(--fs-sm); font-weight:var(--fw-medium);
  color:var(--text-secondary); padding-block:var(--sp-sm);
  transition:color var(--dur-fast) var(--ease-standard);
}
.nav__link:hover{ color:var(--text-primary); }
.nav__link::after{
  content:""; position:absolute; inset-block-end:0; inset-inline-start:0;
  width:100%; height:1px; background:var(--accent-bright);
  transform:scaleX(0); transform-origin:left;
  transition:transform var(--dur-normal) var(--ease-emphasized);
}
.nav__link:hover::after,.nav__link[aria-current="page"]::after{ transform:scaleX(1); }
.nav__link[aria-current="page"]{ color:var(--text-primary); }
.nav__cta{ flex-shrink:0; }
.nav__burger{
  display:none; margin-inline-start:auto; width:40px; height:40px;
  align-items:center; justify-content:center;
  border:1px solid var(--border); border-radius:var(--r-md);
}
.nav__burger span{ display:block; width:16px; height:1px; background:var(--text-primary); }
.nav__burger span+span{ margin-block-start:4px; }

/* ============================================================
   按钮
   ============================================================ */
.btn{
  display:inline-flex; align-items:center; justify-content:center; gap:var(--sp-sm);
  height:44px; padding-inline:var(--sp-lg);
  font-size:var(--fs-sm); font-weight:var(--fw-medium); letter-spacing:.02em;
  border-radius:var(--r-md); border:1px solid transparent;
  white-space:nowrap;
  transition:background var(--dur-fast) var(--ease-standard),
             border-color var(--dur-fast) var(--ease-standard),
             color var(--dur-fast) var(--ease-standard);
}
.btn--primary{ background:var(--accent); color:var(--text-primary); }
.btn--primary:hover{ background:var(--accent-hover); }
.btn--primary:active{ background:var(--accent-pressed); }
.btn--ghost{ border-color:var(--border-strong); color:var(--text-primary); }
.btn--ghost:hover{ border-color:var(--accent-bright); color:var(--accent-bright); }
.btn--sm{ height:36px; padding-inline:var(--sp-md); }
.btn__arrow{ transition:transform var(--dur-fast) var(--ease-standard); }
.btn:hover .btn__arrow{ transform:translateX(3px); }

/* ============================================================
   排版组件
   ============================================================ */
.eyebrow{
  display:inline-flex; align-items:center; gap:var(--sp-sm);
  font-family:var(--font-mono); font-size:var(--fs-xs);
  letter-spacing:.18em; text-transform:uppercase; color:var(--accent-bright);
}
.eyebrow::before{ content:""; width:16px; height:1px; background:var(--accent-bright); }
.h1{ font-size:clamp(var(--fs-3xl),5.2vw,var(--fs-5xl)); }
.h2{ font-size:clamp(var(--fs-2xl),3.6vw,var(--fs-4xl)); }
.h3{ font-size:var(--fs-xl); font-weight:var(--fw-semi); }
.h4{ font-size:var(--fs-lg); font-weight:var(--fw-semi); }
.lead{ font-size:var(--fs-lg); line-height:var(--lh-relaxed); color:var(--text-secondary); }
.body{ color:var(--text-secondary); line-height:var(--lh-relaxed); }
.muted{ color:var(--text-muted); }
.accent{ color:var(--accent-bright); }
.warm{ color:var(--accent-warm); }
.mono{ font-family:var(--font-mono); }
.balance{ text-wrap:balance; }
.pretty{ text-wrap:pretty; }
.section-head{ max-width:720px; margin-block-end:var(--sp-3xl); }
.section-head .h2{ margin-block:var(--sp-md) 0; }
.section-head .body{ margin-block-start:var(--sp-md); }
.rule{ height:1px; background:var(--border); }

/* 序号标 */
.idx{
  font-family:var(--font-mono); font-size:var(--fs-xs);
  letter-spacing:.14em; color:var(--accent-bright);
}

/* ============================================================
   卡片
   ============================================================ */
.card{
  background:var(--bg-secondary);
  border:1px solid var(--border);
  border-radius:var(--r-lg);
  padding:var(--sp-xl);
  transition:border-color var(--dur-normal) var(--ease-standard),
             background var(--dur-normal) var(--ease-standard);
}
.card:hover{ border-color:var(--border-strong); background:var(--bg-tertiary); }
.card--flat{ background:transparent; }
.card__title{ font-family:var(--font-heading); font-size:var(--fs-lg);
              font-weight:var(--fw-semi); margin-block-end:var(--sp-sm); }
.card__body{ font-size:var(--fs-sm); color:var(--text-secondary); line-height:var(--lh-relaxed); }

/* 角标线卡片（科技感直角装饰） */
.card--corner{ position:relative; overflow:hidden; }
.card--corner::before{
  content:""; position:absolute; inset-block-start:0; inset-inline-start:0;
  width:24px; height:1px; background:var(--accent);
}
.card--corner::after{
  content:""; position:absolute; inset-block-start:0; inset-inline-start:0;
  width:1px; height:24px; background:var(--accent);
}

/* 图片框 */
.frame{
  border:1px solid var(--border); border-radius:var(--r-lg);
  overflow:hidden; background:var(--bg-secondary);
}
.frame img{ width:100%; height:100%; object-fit:cover; }
.caption{
  margin-block-start:var(--sp-sm); font-size:var(--fs-xs);
  color:var(--text-muted); line-height:var(--lh-snug);
}

/* ============================================================
   数据
   ============================================================ */
.stat__value{
  font-family:var(--font-heading); font-weight:var(--fw-bold);
  font-size:var(--fs-4xl); line-height:1; letter-spacing:-.02em;
  font-variant-numeric:tabular-nums;
}
.stat__unit{ font-size:var(--fs-lg); font-weight:var(--fw-medium); margin-inline-start:2px; }
.stat__label{
  margin-block-start:var(--sp-md); font-size:var(--fs-sm);
  color:var(--text-secondary);
}

/* ============================================================
   表格
   ============================================================ */
.tbl{ font-size:var(--fs-sm); }
.tbl th,.tbl td{
  text-align:start; padding:var(--sp-md) var(--sp-lg);
  border-bottom:1px solid var(--border);
}
.tbl thead th{
  font-family:var(--font-mono); font-size:var(--fs-xs);
  letter-spacing:.12em; text-transform:uppercase;
  color:var(--text-muted); font-weight:var(--fw-medium);
  border-bottom-color:var(--border-strong);
}
.tbl tbody tr{ transition:background var(--dur-fast) var(--ease-standard); }
.tbl tbody tr:hover{ background:var(--bg-tertiary); }
.tbl td:first-child{ color:var(--text-primary); font-weight:var(--fw-medium); }
.tbl .cell-hi{ color:var(--accent-bright); font-family:var(--font-mono);
               font-variant-numeric:tabular-nums; }
.tbl-scroll{ overflow-x:auto; border:1px solid var(--border); border-radius:var(--r-lg); }
.tbl-scroll .tbl{ min-width:640px; }
.tbl-scroll th:first-child,.tbl-scroll td:first-child{ padding-inline-start:var(--sp-lg); }

/* 标签 */
.chip{
  display:inline-flex; align-items:center; height:26px; padding-inline:var(--sp-md);
  border:1px solid var(--border-strong); border-radius:var(--r-full);
  font-family:var(--font-mono); font-size:var(--fs-xs); letter-spacing:.06em;
  color:var(--text-secondary);
}
.chip--accent{ border-color:var(--accent); color:var(--accent-bright); }

/* ============================================================
   页脚
   ============================================================ */
.footer{
  background:var(--bg-secondary);
  border-top:1px solid var(--border);
  padding-block:var(--sp-3xl) var(--sp-xl);
}
.footer__grid{
  display:grid; grid-template-columns:1.6fr 1fr 1fr 1.4fr;
  gap:var(--sp-2xl);
}
.footer__brand img{ height:32px; margin-block-end:var(--sp-lg); }
.footer__title{
  font-family:var(--font-mono); font-size:var(--fs-xs);
  letter-spacing:.14em; text-transform:uppercase;
  color:var(--text-muted); margin-block-end:var(--sp-md);
}
.footer__item{ font-size:var(--fs-sm); color:var(--text-secondary);
               line-height:var(--lh-relaxed); }
.footer__item + .footer__item{ margin-block-start:var(--sp-sm); }
.footer__item a:hover{ color:var(--accent-bright); }
.footer__bottom{
  margin-block-start:var(--sp-3xl); padding-block-start:var(--sp-lg);
  border-top:1px solid var(--border);
  display:flex; justify-content:space-between; gap:var(--sp-md); flex-wrap:wrap;
  font-size:var(--fs-xs); color:var(--text-muted);
}

/* ============================================================
   滚动揭示动效（compositor 属性 only · IntersectionObserver 驱动）
   渐进增强：仅在 <html class="js"> 时才隐藏初始状态。
   若 JS 被禁用/拦截，页面内容默认可⻅，不会白屏。
   ============================================================ */
.js [data-anim="fade-up"]{
  opacity:0; transform:translate3d(0,24px,0);
  transition:opacity var(--dur-slower) var(--ease-decelerated),
             transform var(--dur-slower) var(--ease-decelerated);
}
.js [data-anim="fade-in"]{
  opacity:0;
  transition:opacity var(--dur-slower) var(--ease-decelerated);
}
.js [data-anim="mask-up"]{
  opacity:0; transform:translate3d(0,100%,0);
  transition:opacity var(--dur-slower) var(--ease-emphasized),
             transform var(--dur-slower) var(--ease-emphasized);
}
.js [data-anim="scale-in"]{
  opacity:0; transform:scale3d(.96,.96,1);
  transition:opacity var(--dur-slower) var(--ease-decelerated),
             transform var(--dur-slower) var(--ease-decelerated);
}
[data-anim].is-in{ opacity:1; transform:none; }
@media (prefers-reduced-motion: reduce){
  .js [data-anim]{ opacity:1 !important; transform:none !important; }
}

/* 逐项延迟 */
[data-delay="1"]{ transition-delay:60ms; }
[data-delay="2"]{ transition-delay:120ms; }
[data-delay="3"]{ transition-delay:180ms; }
[data-delay="4"]{ transition-delay:240ms; }
[data-delay="5"]{ transition-delay:300ms; }
[data-delay="6"]{ transition-delay:360ms; }

/* ============================================================
   响应式
   ============================================================ */
@media (max-width:1199px){
  :root{ --pad-x:var(--sp-xl); }
  .g-4{ grid-template-columns:repeat(2,minmax(0,1fr)); }
  .footer__grid{ grid-template-columns:1fr 1fr; }
}
@media (max-width:860px){
  .nav__menu{
    position:fixed; inset-block-start:var(--nav-h); inset-inline:0;
    flex-direction:column; align-items:flex-start; gap:0;
    background:var(--bg-secondary);
    border-bottom:1px solid var(--border);
    padding:var(--sp-sm) var(--pad-x) var(--sp-lg);
    margin:0; display:none;
  }
  .nav__menu.is-open{ display:flex; }
  .nav__link{ padding-block:var(--sp-md); width:100%; border-bottom:1px solid var(--border); }
  .nav__link::after{ display:none; }
  .nav__burger{ display:flex; }
  .nav__cta{ display:none; }
}
@media (max-width:767px){
  :root{ --pad-x:var(--sp-md); --fs-4xl:36px; --fs-5xl:40px; }
  .section{ padding-block:var(--sp-3xl); }
  .section-head{ margin-block-end:var(--sp-xl); }
  .g-2,.g-3,.g-4{ grid-template-columns:1fr; }
  .footer__grid{ grid-template-columns:1fr; gap:var(--sp-xl); }
  .card{ padding:var(--sp-lg); }
  .btn{ width:100%; }
  .btn--sm{ width:auto; }
}

/* ============================================================
   共享区块组件（阶段4 沉淀，四页复用）
   ============================================================ */

/* ---------- 居中 Hero 徽标 ---------- */
.mark{
  width:72px; height:72px; margin-inline:auto; margin-block-end:var(--sp-xl);
  border:1px solid var(--border-strong); border-radius:var(--r-lg);
  display:flex; align-items:center; justify-content:center;
  background:var(--bg-secondary);
}
.mark img{ width:52px; }

/* ---------- 数据带 ---------- */
.strip{
  padding-block:var(--sp-lg); border-block:1px solid var(--border);
  display:flex; justify-content:center; gap:var(--sp-4xl); flex-wrap:wrap;
}
.strip--start{ justify-content:flex-start; gap:var(--sp-2xl); border-block-start:0; }
.strip__i{
  font-family:var(--font-mono); font-size:var(--fs-xs);
  letter-spacing:.12em; color:var(--text-muted); text-transform:uppercase;
}
.strip__i b{
  display:block; font-family:var(--font-heading); font-size:var(--fs-xl);
  color:var(--text-primary); letter-spacing:0; margin-block-end:var(--sp-xs);
  font-variant-numeric:tabular-nums; font-weight:var(--fw-bold);
}

/* ---------- 子页首屏 ---------- */
.page-hero{
  padding-block:calc(var(--nav-h) + var(--sp-3xl)) var(--sp-2xl);
  border-bottom:1px solid var(--border); position:relative;
}
.page-hero .h1{ font-size:clamp(var(--fs-3xl),4.4vw,var(--fs-4xl)); margin-block-start:var(--sp-lg); }
.page-hero .lead{ margin-block-start:var(--sp-lg); max-width:64ch; }
.crumb{
  margin-block-start:var(--sp-xl); padding-block-start:var(--sp-md);
  border-top:1px solid var(--border);
  font-family:var(--font-mono); font-size:var(--fs-xs);
  color:var(--text-muted); letter-spacing:.1em;
}
.crumb a:hover{ color:var(--accent-bright); }

/* ---------- 两栏分栏 ---------- */
.split{ display:grid; grid-template-columns:1fr 1fr; gap:var(--sp-3xl); align-items:center; }
.split--wide{ grid-template-columns:1.15fr .85fr; align-items:start; }
.split--narrow{ grid-template-columns:1fr 1.4fr; align-items:start; }

/* ---------- 勾选列表 ---------- */
.checklist li{
  display:flex; gap:var(--sp-md); align-items:flex-start;
  padding-block:var(--sp-md); border-bottom:1px solid var(--border);
  font-size:var(--fs-sm); color:var(--text-secondary); line-height:var(--lh-relaxed);
}
.checklist li::before{ content:"✓"; color:var(--accent-bright); font-weight:var(--fw-bold); flex-shrink:0; }

/* ---------- 特性网格 ---------- */
.feat{ display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:var(--sp-lg); }
.feat__i{
  padding:var(--sp-xl); background:var(--bg-secondary);
  border:1px solid var(--border); border-radius:var(--r-lg);
  transition:border-color var(--dur-normal) var(--ease-standard);
}
.feat__i:hover{ border-color:var(--border-strong); }
.feat__v{
  font-family:var(--font-heading); font-size:var(--fs-2xl); font-weight:var(--fw-bold);
  color:var(--accent-bright); font-variant-numeric:tabular-nums; line-height:1;
}
.feat__t{ margin-block-start:var(--sp-md); font-weight:var(--fw-semi); font-size:var(--fs-md); }
.feat__d{ margin-block-start:var(--sp-sm); font-size:var(--fs-sm);
          color:var(--text-secondary); line-height:var(--lh-relaxed); }

/* ---------- KV 键值列表 ---------- */
.kv{ border-top:1px solid var(--border); }
.kv__r{
  display:grid; grid-template-columns:minmax(140px,200px) 1fr; gap:var(--sp-lg);
  padding-block:var(--sp-md); border-bottom:1px solid var(--border);
  font-size:var(--fs-sm);
}
.kv__k{ color:var(--text-muted); }
.kv__v{ color:var(--text-primary); }
.kv__v.hi{ color:var(--accent-bright); font-family:var(--font-mono);
           font-variant-numeric:tabular-nums; }

/* ---------- 人员卡 ---------- */
.team{ display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:var(--sp-lg); }
.person{
  padding:var(--sp-xl); background:var(--bg-secondary);
  border:1px solid var(--border); border-radius:var(--r-lg);
  border-top:2px solid var(--accent);
}
.person__name{ font-family:var(--font-heading); font-size:var(--fs-lg); font-weight:var(--fw-semi); }
.person__role{ margin-block-start:var(--sp-xs); font-family:var(--font-mono);
               font-size:var(--fs-xs); color:var(--accent-bright); letter-spacing:.08em; }
.person__desc{ margin-block-start:var(--sp-md); font-size:var(--fs-sm);
               color:var(--text-secondary); line-height:var(--lh-relaxed); }

/* ---------- 联系方式行 ---------- */
.cline{
  display:flex; gap:var(--sp-md); align-items:flex-start;
  padding-block:var(--sp-md); border-bottom:1px solid var(--border);
}
.cline__k{ flex:0 0 88px; font-family:var(--font-mono); font-size:var(--fs-xs);
           color:var(--text-muted); letter-spacing:.08em; padding-block-start:2px; }
.cline__v{ font-size:var(--fs-sm); color:var(--text-primary); line-height:var(--lh-relaxed); }
.cline__v a:hover{ color:var(--accent-bright); }

/* ---------- 序号步骤 ---------- */
.steps{ display:grid; gap:0; }
.step{
  display:grid; grid-template-columns:56px 1fr; gap:var(--sp-lg);
  padding-block:var(--sp-lg); border-bottom:1px solid var(--border);
}
.step:first-child{ border-top:1px solid var(--border); }
.step__no{ font-family:var(--font-mono); font-size:var(--fs-sm);
           color:var(--accent-bright); letter-spacing:.08em; }
.step__t{ font-family:var(--font-heading); font-size:var(--fs-lg); font-weight:var(--fw-semi); }
.step__d{ margin-block-start:var(--sp-sm); font-size:var(--fs-sm);
          color:var(--text-secondary); line-height:var(--lh-relaxed); max-width:70ch; }

/* ---------- 应用场景详情 ---------- */
.scene{ padding-block:var(--sp-3xl); border-bottom:1px solid var(--border); }
.scene:last-of-type{ border-bottom:0; }
.scene__head{
  display:grid; grid-template-columns:auto 1fr auto; gap:var(--sp-xl);
  align-items:baseline; padding-block-end:var(--sp-md);
}
.scene__no{ font-family:var(--font-mono); font-size:var(--fs-xs);
            color:var(--text-muted); letter-spacing:.14em; }
.scene__name{ font-family:var(--font-heading); font-size:var(--fs-2xl); font-weight:var(--fw-semi); }
.scene__val{
  font-family:var(--font-mono); font-size:var(--fs-sm); color:var(--accent-bright);
  font-variant-numeric:tabular-nums; white-space:nowrap;
}
.scene__grid{ display:grid; grid-template-columns:1.4fr 1fr; gap:var(--sp-3xl); margin-block-start:var(--sp-lg); }

/* ---------- 表单 ---------- */
.form{ display:grid; gap:var(--sp-lg); }
.field{ display:grid; gap:var(--sp-sm); }
.field label{ font-size:var(--fs-sm); color:var(--text-secondary); }
.field input,.field select,.field textarea{
  width:100%; background:var(--bg-secondary); color:var(--text-primary);
  border:1px solid var(--border-strong); border-radius:var(--r-md);
  padding:var(--sp-md); font:inherit; font-size:var(--fs-sm);
  transition:border-color var(--dur-fast) var(--ease-standard);
}
.field input:focus,.field select:focus,.field textarea:focus{
  border-color:var(--accent-bright); outline:none;
}
.field textarea{ min-height:120px; resize:vertical; }
.field__hint{ font-size:var(--fs-xs); color:var(--text-muted); }

/* ---------- 响应式补充 ---------- */
@media (max-width:1199px){
  .feat{ grid-template-columns:repeat(2,minmax(0,1fr)); }
  .team{ grid-template-columns:repeat(2,minmax(0,1fr)); }
  .split--narrow{ grid-template-columns:1fr; }
}
@media (max-width:1000px){
  .split,.split--wide{ grid-template-columns:1fr; gap:var(--sp-2xl); }
  .scene__grid{ grid-template-columns:1fr; gap:var(--sp-2xl); }
}
@media (max-width:767px){
  .feat,.team{ grid-template-columns:1fr; }
  .strip{ gap:var(--sp-xl); }
  .kv__r{ grid-template-columns:1fr; gap:var(--sp-xs); }
  .scene__head{ grid-template-columns:1fr; gap:var(--sp-sm); }
  .scene__name{ font-size:var(--fs-xl); }
  .step{ grid-template-columns:40px 1fr; gap:var(--sp-md); }
}
