/* ═══════════════════════════════════════════════════════════
   睿单 · Quiet Intelligence — v5
   mineral white / graphite green / restrained sage
   双声部字体：系统语言 = 无衬线/等宽 · 品牌情感词 = 宋体衬线
   ═══════════════════════════════════════════════════════════ */

:root{
  --mineral:   #ECEAE3;   /* 主背景 · 矿物白 */
  --mineral-2: #E3E1D8;
  --graphite:  #121613;   /* 深色章节 · 石墨绿 */
  --graphite-2:#171C18;
  --ink:       #1B1E1B;
  --ink-soft:  #3A403A;
  --muted:     #71776E;   /* 中性灰绿 */
  --muted-dark:#8B9188;
  --hairline:  rgba(27,30,27,.16);
  --hairline-d:rgba(233,232,225,.14);
  --sage:      #7E9878;   /* 品牌强调 · 鼠尾草绿 */
  --sage-hi:   #B7D2A8;
  --sage-dim:  #55654F;
  --paper-d:   #E6E5DD;   /* 深色章节上的正文 */
  --amber:     #C0A16B;   /* 仅用于"异常"状态 */
  --font-sans: "Archivo","Noto Sans SC","PingFang SC","Hiragino Sans GB","Microsoft YaHei",sans-serif;
  --font-serif:"Noto Serif SC","Songti SC","STSong","SimSun",serif;
  --font-mono: "Spline Sans Mono",ui-monospace,"SF Mono",Menlo,monospace;
  --page-max:1440px;
  --gutter:clamp(22px,4vw,64px);
}

*{ box-sizing:border-box; margin:0 }
html{ scroll-behavior:smooth }
body{
  background:var(--mineral);
  color:var(--ink);
  font-family:var(--font-sans);
  font-weight:400;
  line-height:1.75;
  overflow-x:hidden;
  -webkit-font-smoothing:antialiased;
}
a{ color:inherit; text-decoration:none }
button{ font:inherit; color:inherit; background:none; border:0; padding:0; cursor:pointer }
ul,ol{ padding:0; list-style:none }
.mono{ font-family:var(--font-mono); letter-spacing:.14em }
.serif{ font-family:var(--font-serif); font-style:normal; font-weight:600 }
strong{ font-weight:600 }
.js [data-reveal]{ opacity:0; transform:translateY(18px) }
html.js .hero__sub,html.js .hero__actions{ opacity:0 }

/* 细腻的材质颗粒，全站统一 */
body::after{
  content:""; position:fixed; inset:0; z-index:40; pointer-events:none; opacity:.018;
  background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 160 160' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.5'/%3E%3C/svg%3E");
  mix-blend-mode:overlay;
}

/* ── Header ─────────────────────────────────────────────── */
.site-header{
  position:fixed; inset:0 0 auto; z-index:50; height:78px;
  display:grid; grid-template-columns:auto auto 1fr auto auto; align-items:center; gap:44px;
  padding:0 var(--gutter);
  color:var(--paper-d);
  transition:color .4s, background-color .4s, border-color .4s;
  border-bottom:1px solid transparent;
}
.site-progress{
  position:fixed; z-index:70; left:0; right:0; top:0; height:2px;
  background:rgba(183,210,168,.08); pointer-events:none;
}
.site-progress i{
  display:block; width:100%; height:100%; transform:scaleX(0); transform-origin:left;
  background:linear-gradient(90deg,var(--sage-dim),var(--sage-hi));
  box-shadow:0 0 12px rgba(183,210,168,.28); will-change:transform;
}
.site-header.is-solid{
  background:rgba(236,234,227,.92);
  -webkit-backdrop-filter:blur(9px) saturate(1.06);
  backdrop-filter:blur(9px) saturate(1.06);
  color:var(--ink);
  border-bottom-color:var(--hairline);
}
.brand{ display:inline-flex; align-items:center }
/* 深色环境下 LOGO 走单色反白，页头变实底（浅色）时恢复品牌原彩 */
.brand__logo{
  display:block; height:32px; width:auto;
  filter:brightness(0) invert(.93);
  transition:filter .4s;
}
.site-header.is-solid .brand__logo{ filter:none }
.brand__desc{ font-size:8.5px; line-height:1.5; opacity:.5 }
.header__chapter{
  justify-self:center; display:flex; align-items:center; gap:12px;
  font-size:8px; color:currentColor; opacity:.42; white-space:nowrap;
}
.header__chapter b{ color:var(--sage-hi); font-weight:500 }
.site-header.is-solid .header__chapter b{ color:var(--sage-dim) }
.site-nav{ display:flex; gap:34px; margin-right:26px }
.site-nav a{ position:relative; font-size:12.5px; opacity:.68; transition:opacity .2s }
.site-nav a::after{
  content:""; position:absolute; left:0; right:100%; bottom:-5px; height:1px;
  background:currentColor; transition:right .3s cubic-bezier(.16,1,.3,1);
}
.site-nav a:hover{ opacity:1 }
.site-nav a:hover::after{ right:0 }
.header-cta{
  display:inline-flex; align-items:center; gap:22px;
  border:1px solid currentColor; padding:10px 16px;
  font-size:12px; letter-spacing:.06em;
  transition:background-color .22s, color .22s;
}
.site-header:not(.is-solid) .header-cta:hover{ background:var(--paper-d); color:var(--graphite) }
.site-header.is-solid .header-cta:hover{ background:var(--ink); color:var(--mineral) }
.header-cta i{ font-style:normal }
.menu-toggle{ display:none }

/* ── 首屏 ───────────────────────────────────────────────── */
.hero{
  position:relative; min-height:100vh; min-height:100svh; padding:0 var(--gutter);
  background:
    radial-gradient(1100px 720px at 70% 38%, #1C221D 0%, transparent 62%),
    var(--graphite);
  color:var(--paper-d);
  overflow:hidden;
  display:flex; flex-direction:column; justify-content:center;
}
.hero__field{ position:absolute; inset:0 }
.hero__field canvas{ display:block; width:100%!important; height:100%!important }
.hero__shade{
  position:absolute; inset:0; pointer-events:none;
  background:
    linear-gradient(90deg, rgba(18,22,19,.88) 6%, rgba(18,22,19,.46) 40%, rgba(18,22,19,0) 68%),
    linear-gradient(0deg,  rgba(18,22,19,.72) 0%, transparent 30%);
}
.hero__meta{
  position:absolute; top:108px; left:var(--gutter); right:var(--gutter);
  display:flex; justify-content:space-between;
  font-size:9px; color:var(--muted-dark);
}
.hero__core{ position:relative; z-index:2; max-width:1200px; margin-bottom:9vh }
.hero__h1{
  font-size:clamp(56px, 7.25vw, 118px);
  font-weight:300; line-height:1.04; letter-spacing:-.035em;
}
.hl{ display:block; overflow:hidden; padding-bottom:.06em; margin-bottom:-.06em }
.hl__t{ display:inline-block; will-change:transform }
.hl--indent{ padding-left:1.6em }
.hero__em{
  position:relative; display:inline-block;
  font-family:var(--font-serif); font-style:normal; font-weight:600;
  letter-spacing:.01em; color:var(--sage-hi);
}
.hero__em::after{
  content:""; position:absolute; left:.03em; right:.03em; bottom:.05em; height:2px;
  background:linear-gradient(90deg,var(--sage),var(--sage-hi));
  transform:scaleX(0); transform-origin:left;
  transition:transform .9s cubic-bezier(.16,1,.3,1);
}
.hero__em.is-underlined::after{ transform:scaleX(1) }
.hero__sub{
  margin-top:5vh; font-size:15px; line-height:2.1; color:#A9AFA6; max-width:560px;
}
.hero__sub strong{ color:var(--paper-d); font-weight:500 }
.hero__actions{ display:flex; align-items:center; gap:38px; margin-top:5vh }
.hero__cta{
  display:inline-flex; align-items:center; gap:26px;
  padding:15px 26px;
  border:1px solid rgba(233,232,225,.34);
  font-size:13px; letter-spacing:.08em;
  transition:border-color .22s, background-color .22s, color .22s;
}
.hero__cta:hover{ background:var(--sage-hi); border-color:var(--sage-hi); color:var(--graphite) }
.hero__cta i{ font-style:normal }
.hero__cta2{
  display:inline-flex; align-items:center; gap:12px;
  padding:6px 2px; font-size:13px; letter-spacing:.06em; color:#A9AFA6;
  border-bottom:1px solid rgba(233,232,225,.22);
  transition:color .22s, border-color .22s;
}
.hero__cta2:hover{ color:var(--sage-hi); border-color:var(--sage-hi) }
.hero__cta2 i{ font-style:normal; color:var(--sage-hi) }
.sysdot{
  width:5px; height:5px; border-radius:50%;
  background:var(--sage-hi); box-shadow:0 0 10px var(--sage-hi);
}
.hero__sysstate{ color:var(--sage-hi) }
/* 底部仪表条：把散落的读数收拢成一条完整的"控制台底边" */
.hero__deck{
  position:absolute; z-index:2; left:var(--gutter); right:var(--gutter); bottom:0;
  height:66px;
  display:flex; align-items:center; justify-content:space-between; gap:28px;
  font-size:8.5px; color:var(--muted-dark);
}
.deck__line{
  position:absolute; left:0; right:0; top:0; height:1px;
  background:linear-gradient(90deg,rgba(183,210,168,.28),rgba(233,232,225,.12) 40%,rgba(233,232,225,.12));
  transform-origin:left;
}
.deck__scroll{ display:inline-flex; align-items:center; gap:12px; letter-spacing:.24em }
.deck__scroll i{
  position:relative; width:1px; height:24px; overflow:hidden;
  background:rgba(233,232,225,.14);
}
.deck__scroll i::after{
  content:""; position:absolute; left:0; top:-100%; width:100%; height:100%;
  background:var(--sage-hi);
  animation:scroll-drip 2.6s cubic-bezier(.65,0,.35,1) infinite;
}
@keyframes scroll-drip{ 0%{ top:-100% } 58%,100%{ top:100% } }
.deck__layers{ display:flex; gap:30px; font-size:7.5px; letter-spacing:.2em; color:rgba(230,229,221,.38) }
.deck__layers b{ position:relative; font-weight:400; padding-left:15px }
.deck__layers b::before{
  content:""; position:absolute; left:0; top:50%; width:7px; height:1px;
  background:rgba(183,210,168,.4);
}
.deck__layers b:last-child{ color:var(--sage-hi) }
.deck__layers b:last-child::before{ background:var(--sage-hi); box-shadow:0 0 8px rgba(183,210,168,.35) }
.deck__state{ display:inline-flex; align-items:center; gap:13px }
.deck__state em{ font-style:normal; color:var(--sage-hi) }

/* 空间透镜：只在两处核心 WebGL 场景响应，揭示“肉眼之下的运营层” */
.spatial-lens{
  --lens-x:50%; --lens-y:50%;
  position:absolute; z-index:2; left:var(--lens-x); top:var(--lens-y);
  width:176px; height:176px; border-radius:50%; transform:translate(-50%,-50%) scale(.86);
  border:1px solid rgba(183,210,168,.32); opacity:0; pointer-events:none;
  background:radial-gradient(circle,rgba(183,210,168,.075),rgba(183,210,168,.015) 52%,transparent 70%);
  box-shadow:inset 0 0 36px rgba(183,210,168,.045),0 0 40px rgba(183,210,168,.025);
  transition:opacity .28s ease,transform .45s cubic-bezier(.16,1,.3,1);
}
.spatial-lens.is-visible{ opacity:1; transform:translate(-50%,-50%) scale(1) }
.spatial-lens::before,.spatial-lens::after{ content:""; position:absolute; background:rgba(183,210,168,.28) }
.spatial-lens::before{ width:24px; height:1px; left:calc(50% - 12px); top:50% }
.spatial-lens::after{ width:1px; height:24px; left:50%; top:calc(50% - 12px) }
.spatial-lens>i{ position:absolute; inset:12px; border:1px dashed rgba(183,210,168,.13); border-radius:50% }
.spatial-lens>span{ position:absolute; left:50%; bottom:-24px; transform:translateX(-50%); font-size:7px; color:rgba(183,210,168,.65); white-space:nowrap; letter-spacing:.18em }

/* ── 章节标签 ───────────────────────────────────────────── */
.sec-label{
  display:flex; align-items:center; gap:16px;
  font-size:9.5px; color:var(--muted);
}
.sec-label b{ font-weight:500; color:var(--ink) }
.sec-label i{ width:52px; height:1px; background:currentColor; opacity:.55 }
.sec-label--dark b{ color:var(--paper-d) }
.sec-label--dark{ color:var(--muted-dark) }

/* 标题遮罩揭示的通用结构（由 JS 包裹） */
[data-mask] .mline{ display:block; overflow:hidden; padding-bottom:.08em; margin-bottom:-.08em }
[data-mask] .mline__t{ display:inline-block; will-change:transform }

/* ── 01 问题 ────────────────────────────────────────────── */
.problem{ padding:19vh var(--gutter) 17vh; max-width:var(--page-max); margin:0 auto }
.problem__lead{
  margin:11vh 0 3.5vh 20vw;
  font-size:clamp(21px,2.3vw,34px); line-height:1.55; color:var(--muted); letter-spacing:-.01em;
}
.problem__h2{
  margin-left:20vw;
  font-size:clamp(40px,4.6vw,74px); font-weight:400; line-height:1.18; letter-spacing:-.025em;
}
.problem__h2 .serif{ letter-spacing:0; color:var(--ink) }
.problem__ledger{
  margin:11vh 0 0 20vw; max-width:880px;
  border-top:1px solid var(--hairline);
}
.problem__ledger li{
  position:relative; isolation:isolate;
  display:grid; grid-template-columns:64px 300px 1fr; align-items:baseline; gap:20px;
  padding:26px 0; border-bottom:1px solid var(--hairline);
  transition:padding .45s cubic-bezier(.16,1,.3,1),color .3s;
}
.problem__ledger li::before{
  content:""; position:absolute; z-index:-1; inset:0 -18px;
  background:rgba(126,152,120,.075); transform:scaleY(0); transform-origin:bottom;
  transition:transform .45s cubic-bezier(.16,1,.3,1);
}
.problem__ledger li:hover{ padding-left:12px; padding-right:12px }
.problem__ledger li:hover::before{ transform:scaleY(1) }
.problem__ledger li:hover .mono{ color:var(--sage-dim) }
.problem__ledger .mono{ font-size:10px; color:var(--sage) }
.problem__ledger p{ font-size:clamp(19px,1.7vw,25px); letter-spacing:-.01em }
.problem__ledger b{ font-weight:600 }
/* 「不」被划掉，"可 X"转为确认绿 —— 睿单做的事，就在这个动作里 */
.problem__ledger s{ position:relative; text-decoration:none; transition:color .4s }
.problem__ledger s::after{
  content:""; position:absolute; left:-4%; right:-4%; top:52%; height:2px;
  background:var(--sage); transform:scaleX(0); transform-origin:left;
  transition:transform .45s cubic-bezier(.16,1,.3,1) .05s;
}
.problem__ledger b>span{ transition:color .4s }
.problem__ledger li:hover s{ color:var(--muted) }
.problem__ledger li:hover s::after{ transform:scaleX(1) }
.problem__ledger li:hover b>span{ color:var(--sage-dim) }
.problem__ledger small{ font-size:12.5px; color:var(--muted); line-height:1.8 }
.problem__turn{
  margin:12vh 0 0 20vw;
  font-size:clamp(18px,1.8vw,26px); line-height:2; color:var(--ink-soft); letter-spacing:-.01em;
}
.problem__turn strong{ font-weight:600; color:var(--ink) }

/* ── 02 能力（唯一的 sticky 章节）──────────────────────── */
.cap{ background:var(--graphite); color:var(--paper-d) }
.cap__intro{ padding:17vh var(--gutter) 9vh; max-width:var(--page-max); margin:0 auto }
.cap__h2{
  margin-top:7vh;
  font-size:clamp(46px,5.6vw,96px); font-weight:300; line-height:1.1; letter-spacing:-.025em;
}
.cap__note{ margin:5vh 0 0 1px; font-size:14.5px; line-height:2.05; color:var(--muted-dark) }

.cap__stage{ height:380vh }
.cap__pin{ position:sticky; top:0; height:100vh; overflow:hidden }
.cap__pin::before,.cap__pin::after{
  content:""; position:absolute; z-index:5; left:4vw; right:4vw; height:1px;
  background:linear-gradient(90deg,rgba(183,210,168,.2),transparent 55%); pointer-events:none;
}
.cap__pin::before{ top:8vh }.cap__pin::after{ bottom:4vh; opacity:.45 }
.cap__field{ position:absolute; inset:0 }
.cap__field canvas{ display:block; width:100%!important; height:100%!important }
.cap__shade{
  position:absolute; inset:0; pointer-events:none;
  background:linear-gradient(90deg, rgba(18,22,19,.92) 4%, rgba(18,22,19,.55) 38%, rgba(18,22,19,.05) 66%);
}
.cap__top{
  position:absolute; z-index:3; top:12vh; left:4vw; right:4vw;
  display:flex; justify-content:space-between;
  font-size:8.5px; color:var(--muted-dark);
}
.cap__telemetry{
  position:absolute; z-index:3; right:4vw; bottom:7vh; width:220px;
  border-top:1px solid rgba(233,232,225,.16); color:var(--muted-dark);
}
.cap__telemetry>div{ display:grid; grid-template-columns:54px 1fr; padding:8px 0; border-bottom:1px solid rgba(233,232,225,.08); font-size:7.5px }
.cap__telemetry span{ opacity:.6 }.cap__telemetry b{ font-weight:500; color:var(--sage-hi); text-align:right; letter-spacing:.11em }
.cap__panels{
  position:absolute; z-index:3; left:4vw; top:46%; transform:translateY(-50%);
  width:min(560px,44vw);
}
html.js .cap__panels{ height:390px; overflow:hidden; isolation:isolate }
.cap-panel{ margin-bottom:44px }  /* 无 JS 时四个阶段自然纵向铺开 */
html.js .cap-panel{ position:absolute; inset:0; margin:0; opacity:0; visibility:hidden }
html.js .cap-panel.is-active{ visibility:visible }
.cap-panel__tag{ font-size:9px; color:var(--sage-hi) }
.cap-panel h3{
  margin:3.5vh 0; font-size:clamp(86px,10vw,168px);
  font-weight:300; line-height:.92; letter-spacing:-.04em;
}
.cap-panel__copy{ font-size:15.5px; line-height:2.05; color:#A9AFA6 }
.cap-panel__key{
  display:flex; align-items:center; gap:10px;
  margin-top:4.5vh; font-size:10px; letter-spacing:.3em; color:var(--muted-dark);
}
.cap-panel__key i{
  width:6px; height:6px; border-radius:50%;
  background:var(--sage-hi); box-shadow:0 0 12px var(--sage-hi);
}
.cap__index{
  position:absolute; z-index:4; left:4vw; bottom:6vh;
  display:flex; gap:1px;
}
.cap__index button{
  width:clamp(96px,8.6vw,132px); text-align:left; padding:13px 0 2px;
  border-top:1px solid rgba(233,232,225,.2);
  color:var(--muted-dark);
  transition:color .3s, border-color .3s;
}
.cap__index button b{ display:block; font-size:8.5px; font-weight:500; margin-bottom:8px }
.cap__index button span{ font-size:13.5px }
.cap__index button.is-active{ color:var(--paper-d); border-top-color:var(--sage-hi) }
.cap__progress{
  position:absolute; z-index:4; right:4vw; top:20vh; bottom:20vh; width:1px;
  background:rgba(233,232,225,.14);
}
.cap__progress i{ display:block; width:100%; height:0; background:var(--sage-hi) }

/* ── 03 运营闭环 ────────────────────────────────────────── */
.loop{ padding:19vh var(--gutter) 18vh; max-width:var(--page-max); margin:0 auto }
.loop__h2{
  margin-top:7vh;
  font-size:clamp(42px,5vw,84px); font-weight:400; line-height:1.14; letter-spacing:-.025em;
}
.loop__sub{ margin-top:4.5vh; font-size:14.5px; line-height:2.05; color:var(--muted) }
.loop__diagram{ margin-top:8vh }
.loop__diagram svg{ display:block; width:100%; height:auto; overflow:visible }
.loop__forward{ stroke:rgba(27,30,27,.3); stroke-width:1.2 }
.loop__dir{ stroke:var(--sage); stroke-width:1.1; opacity:.45 }
.loop__return{
  stroke:rgba(27,30,27,.22); stroke-width:1; stroke-dasharray:3 6;
  animation:loop-march 1.6s linear infinite;
}
@keyframes loop-march{ to{ stroke-dashoffset:-9 } }
.loop__node{ fill:var(--mineral); stroke:var(--sage); stroke-width:1.4; transition:fill .25s }
.loop__node.is-hot{ fill:var(--sage-hi) }
.loop__labels text{ fill:var(--muted); font-size:10.5px; letter-spacing:.16em }
#loop-signal{ fill:var(--sage); filter:drop-shadow(0 0 5px rgba(126,152,120,.9)) }
.loop__hint{ font-size:9.5px; fill:var(--muted); letter-spacing:.22em }
.loop__steps{
  margin-top:2vh;
  display:grid; grid-template-columns:repeat(4,1fr); gap:3.2vw;
}
.loop__steps li{
  border-top:1px solid var(--hairline); padding-top:22px;
  transition:border-color .35s;
}
.loop__steps li.is-hot{ border-top-color:var(--sage) }
.loop__steps b{ font-size:9.5px; color:var(--sage) }
.loop__steps h3{ margin:5.5vh 0 14px; font-size:21px; font-weight:500; letter-spacing:-.01em }
.loop__steps p{ font-size:12.5px; line-height:1.9; color:var(--muted); max-width:230px }

/* ── 04 现实被量化 ──────────────────────────────────────── */
.quant{
  background:var(--graphite-2); color:var(--paper-d);
  display:grid; grid-template-columns:47% 53%; gap:0; align-items:center;
  padding:16vh 4vw; min-height:100vh;
}
.quant__h2{
  margin-top:7vh;
  font-size:clamp(42px,4.6vw,78px); font-weight:300; line-height:1.12; letter-spacing:-.025em;
}
.quant__h2 .serif{ letter-spacing:.01em; color:#F2F4EC }
.quant__sub{ margin-top:4vh; font-size:14.5px; line-height:2.05; color:var(--muted-dark); max-width:470px }
.quant__judge{ margin-top:7vh; max-width:500px; border-top:1px solid var(--hairline-d) }
.quant__judge li{
  display:flex; align-items:center; gap:16px;
  padding:19px 0; border-bottom:1px solid var(--hairline-d);
}
.quant__judge i{
  flex:none; width:6px; height:6px; border-radius:50%;
  background:var(--sage-hi); box-shadow:0 0 10px rgba(183,210,168,.7);
  transition:box-shadow .35s, transform .35s;
}
.quant__judge b{ display:block; font-size:14px; font-weight:500; transition:color .35s }
.quant__judge span{ font-size:12px; color:var(--muted-dark) }
.quant__judge em{ margin-left:auto; font-style:normal; font-size:8.5px; color:var(--sage-hi); opacity:.75; transition:opacity .35s }
.quant__judge li.is-live i{ box-shadow:0 0 18px rgba(183,210,168,1); transform:scale(1.3) }
.quant__judge li.is-live b{ color:#F2F4EC }
.quant__judge li.is-live em{ opacity:1 }
.quant__slice{
  position:relative; margin-left:5vw; padding:30px;
  border:1px solid var(--hairline-d);
  background:linear-gradient(150deg,#1B211C 0%,#141914 70%);
  overflow:hidden;
  box-shadow:0 42px 90px -55px rgba(0,0,0,.75),inset 0 1px 0 rgba(255,255,255,.025);
}
.quant__slice::after{
  content:""; position:absolute; inset:0; pointer-events:none;
  background:radial-gradient(circle at var(--qx,50%) var(--qy,50%),rgba(183,210,168,.11),transparent 23%);
  opacity:.65;
}
.quant__plan{ display:block; width:100%; height:auto }
.qp-wall{ fill:none; stroke:rgba(183,210,168,.4); stroke-width:1.3 }
.qp-thin{ fill:none; stroke:rgba(183,210,168,.16); stroke-width:1 }
.qp-marker circle{ fill:var(--sage-hi) }
.qp-marker .qp-halo{ fill:none; stroke:rgba(183,210,168,.5); stroke-width:1 }
.quant__scan{
  position:absolute; top:0; bottom:0; left:-6%; width:60px; pointer-events:none;
  background:linear-gradient(90deg, transparent, rgba(183,210,168,.14) 55%, rgba(183,210,168,.55) 98%, transparent);
}
.quant__tags{ position:absolute; inset:30px }
.q-tag{
  position:absolute; left:var(--tx); top:var(--ty);
  display:flex; gap:10px; align-items:center;
  padding:7px 12px; font-size:9px; color:var(--paper-d);
  background:rgba(18,22,19,.82); border:1px solid rgba(183,210,168,.3);
  white-space:nowrap;
}
.q-tag b{ color:var(--sage-hi); font-weight:500 }
.quant__slicecap{
  position:absolute; left:30px; bottom:18px;
  font-size:8.5px; color:var(--muted-dark);
}

/* ── 05 关于 ────────────────────────────────────────────── */
.about{ padding:20vh var(--gutter) 18vh; max-width:var(--page-max); margin:0 auto }
.about__years{
  display:flex; align-items:center; gap:26px;
  margin:10vh 0 5vh; font-size:12px; color:var(--muted); letter-spacing:.3em;
}
/* 十年标尺：每 10% 一格年刻度 + 居中发丝线 */
.about__years i{
  flex:1; max-width:520px; height:9px;
  background:
    linear-gradient(var(--hairline),var(--hairline)) center/100% 1px no-repeat,
    repeating-linear-gradient(90deg, rgba(27,30,27,.26) 0 1px, transparent 1px 10%);
}
.about__h2{
  font-size:clamp(46px,5.4vw,92px); font-weight:400; line-height:1.12; letter-spacing:-.025em;
}
.about__h2 .serif{ letter-spacing:.01em }
.about__copy{ margin:8vh 0 0 34vw; max-width:560px }
.about__copy p{ font-size:14.5px; line-height:2.1; color:var(--ink-soft); margin-bottom:22px }
.about__vow{
  font-size:clamp(20px,2vw,28px)!important; color:var(--ink)!important;
  line-height:1.8!important; letter-spacing:.01em;
  border-left:2px solid var(--sage); padding-left:22px;
}

/* ── 06 联系 ────────────────────────────────────────────── */
.contact{
  background:var(--graphite); color:var(--paper-d);
  min-height:82vh; padding:14vh 4vw;
  display:flex; flex-direction:column; align-items:center; justify-content:center; text-align:center;
  position:relative; overflow:hidden;
}
.contact::before{
  content:""; position:absolute; width:min(72vw,980px); aspect-ratio:1; border-radius:50%;
  border:1px solid rgba(183,210,168,.07); background:radial-gradient(circle,rgba(126,152,120,.07),transparent 63%);
  animation:contact-breathe 11s ease-in-out infinite; pointer-events:none;
}
.contact::after{
  content:""; position:absolute; width:min(56vw,740px); aspect-ratio:1; border-radius:50%;
  border:1px dashed rgba(183,210,168,.13); pointer-events:none;
  animation:contact-rotate 90s linear infinite;
}
.contact>*{ position:relative; z-index:1 }
.contact__pre{ font-size:9.5px; letter-spacing:.34em; color:var(--muted-dark) }
.contact__h2{
  margin:6vh 0 7vh;
  font-size:clamp(54px,8vw,138px); line-height:1.12; letter-spacing:.02em;
}
.contact__link{
  display:flex; align-items:center; justify-content:space-between;
  width:min(560px,84vw); padding:18px 4px;
  border-bottom:1px solid rgba(233,232,225,.4);
  font-size:14.5px; letter-spacing:.02em;
  transition:border-color .25s, color .25s;
}
.contact__link:hover{ border-color:var(--sage-hi); color:var(--sage-hi) }
.contact__link i{ font-style:normal; font-size:18px; color:var(--sage-hi); transition:transform .3s cubic-bezier(.16,1,.3,1) }
.contact__link:hover i{ transform:translate(3px,-3px) }
.contact__info{
  display:flex; align-items:center; gap:46px;
  margin-top:34px; font-size:9.5px; letter-spacing:.16em; color:var(--muted-dark);
}
.contact__info b{ font-weight:500; color:var(--sage-hi); margin-right:11px }
.contact__info a{ transition:color .2s }
.contact__info a:hover{ color:var(--sage-hi) }

/* ── Footer ─────────────────────────────────────────────── */
.site-footer{
  background:var(--graphite); color:#767C74;
  border-top:1px solid rgba(233,232,225,.1);
  padding:42px var(--gutter);
  display:grid; grid-template-columns:1fr auto 1fr; align-items:center; gap:32px;
  font-size:11px;
}
.site-footer .brand__logo{ height:28px; filter:brightness(0) invert(.72) }
.site-footer__brand p{ margin-top:12px; font-size:11px }
.site-footer__nav{ display:flex; gap:28px }
.site-footer__nav a{ font-size:12px; color:#9AA096; transition:color .2s }
.site-footer__nav a:hover{ color:var(--paper-d) }
.site-footer__meta{ text-align:right; font-size:9px; letter-spacing:.14em; line-height:2.2 }
.site-footer__meta a{ display:block; color:#9AA096; transition:color .2s }
.site-footer__meta a:hover{ color:var(--sage-hi) }
.site-footer__meta p{ color:#767C74 }
.site-footer__legal{ margin-top:10px }
.site-footer__icp{ font-size:8.5px; opacity:.85 }

/* ── 自定义光标：测绘定位环 ─────────────────────────────
   中心点 1:1 跟手；刻度环缓动跟随并缓慢自转；
   exclusion 混合模式在深浅章节间自动反色 */
html.has-cursor, html.has-cursor *{ cursor:none!important }
.cursor{
  position:fixed; inset:0; z-index:200; pointer-events:none;
  opacity:0; transition:opacity .35s;
  color:#E9F5DD; mix-blend-mode:exclusion;
}
.cursor.is-on{ opacity:1 }
.cursor__dot{
  position:absolute; left:0; top:0; will-change:transform;
}
.cursor__dot::after{
  content:""; display:block; width:5px; height:5px; margin:-2.5px 0 0 -2.5px;
  border-radius:50%; background:currentColor;
  transition:transform .28s cubic-bezier(.16,1,.3,1);
}
.cursor__ring{
  position:absolute; left:0; top:0; width:38px; height:38px; margin:-19px 0 0 -19px;
  will-change:transform; transition:width .32s cubic-bezier(.16,1,.3,1), height .32s cubic-bezier(.16,1,.3,1), margin .32s cubic-bezier(.16,1,.3,1);
}
.cursor__ring u{
  position:absolute; inset:0; border:1px solid currentColor; border-radius:50%; opacity:.7;
  transition:opacity .3s;
}
.cursor__ring b{ position:absolute; background:currentColor; opacity:.9 }
.cursor__ring b:nth-of-type(1){ left:50%; top:-3px; width:1px; height:6px; margin-left:-.5px }
.cursor__ring b:nth-of-type(2){ right:-3px; top:50%; width:6px; height:1px; margin-top:-.5px }
.cursor__ring b:nth-of-type(3){ left:50%; bottom:-3px; width:1px; height:6px; margin-left:-.5px }
.cursor__ring b:nth-of-type(4){ left:-3px; top:50%; width:6px; height:1px; margin-top:-.5px }
.cursor.is-active .cursor__ring{ width:56px; height:56px; margin:-28px 0 0 -28px }
.cursor.is-active .cursor__ring u{ opacity:1 }
.cursor.is-active .cursor__dot::after{ transform:scale(.45) }
.cursor.is-down .cursor__ring{ width:30px; height:30px; margin:-15px 0 0 -15px }

::selection{ background:rgba(126,152,120,.3); color:#10130F }
.hero ::selection,.cap ::selection,.quant ::selection,
.contact ::selection,.site-footer ::selection{ background:rgba(183,210,168,.3); color:#F4F6F0 }
a:focus-visible,button:focus-visible{ outline:1px solid var(--sage); outline-offset:5px }
@keyframes contact-breathe{ 50%{ transform:scale(1.055); opacity:.72 } }
@keyframes contact-rotate{ to{ transform:rotate(360deg) } }

/* ── 响应式 ─────────────────────────────────────────────── */
/* 矮视口保险（720p 笔记本等）：压缩首屏纵向节奏，避免标题与坐标条相碰 */
@media (min-width:901px) and (max-height:700px){
  .hero__h1{ font-size:clamp(48px,6.2vw,92px) }
  .hero__sub{ margin-top:3.5vh }
  .hero__actions{ margin-top:3.5vh }
  .hero__core{ margin-bottom:7vh }
  .hero__meta{ top:92px }
}
@media (max-width:900px){
  .site-header{ height:64px; padding:0 20px; display:flex; justify-content:space-between; gap:16px }
  .brand__desc,.header__chapter{ display:none }
  .menu-toggle{
    display:grid; grid-template-columns:18px auto; gap:4px 8px; align-items:center;
    min-width:48px; min-height:44px; margin-left:auto;
  }
  .menu-toggle span{ display:block; width:18px; height:1px; background:currentColor; transition:transform .3s,opacity .3s }
  .menu-toggle span:nth-child(2){ grid-column:1 }
  .menu-toggle em{ grid-column:2; grid-row:1/3; font-style:normal; font-size:11px }
  .menu-toggle[aria-expanded="true"] span:first-child{ transform:translateY(2.5px) rotate(45deg) }
  .menu-toggle[aria-expanded="true"] span:nth-child(2){ transform:translateY(-2.5px) rotate(-45deg) }
  .site-nav{
    position:fixed; z-index:-1; left:0; right:0; top:64px; margin:0;
    display:flex; flex-direction:column; gap:0; padding:22px 20px 28px;
    background:rgba(236,234,227,.97); color:var(--ink); border-bottom:1px solid var(--hairline);
    opacity:0; visibility:hidden; transform:translateY(-10px);
    transition:opacity .3s,transform .3s,visibility .3s;
  }
  .site-nav.is-open{ opacity:1; visibility:visible; transform:none }
  .site-nav a{ font-size:15px; padding:13px 0; border-bottom:1px solid var(--hairline); opacity:1 }
  .site-nav a::after{ display:none }
  .site-nav a:last-child{ border-bottom:0 }
  .header-cta{ display:none }
  .hero{ padding:0 20px }
  .hero__meta{ top:84px; left:20px; right:20px }
  .hero__meta span:last-child{ display:none }
  .hero__h1{ font-size:clamp(38px,10.4vw,60px) }
  .hl--indent{ padding-left:0 }
  .hero__sub br{ display:none }
  .hero__shade{
    background:linear-gradient(0deg, rgba(18,22,19,.9) 8%, rgba(18,22,19,.35) 45%, rgba(18,22,19,.15));
  }
  .hero__deck{ left:20px; right:20px; height:56px; font-size:8px }
  .deck__layers,.deck__state-label,.spatial-lens,.cap__telemetry{ display:none }
  .hero__actions{ gap:24px }
  .problem,.loop,.about{ padding-left:20px; padding-right:20px }
  .problem__lead,.problem__h2,.problem__ledger,.problem__turn{ margin-left:0 }
  .problem__ledger li{ grid-template-columns:40px 1fr; grid-template-rows:auto auto }
  .problem__ledger small{ grid-column:2 }
  .cap__intro{ padding:13vh 20px 7vh }
  .cap__stage{ height:400vh }
  .cap__panels{ left:20px; right:20px; width:auto; top:42% }
  .cap-panel h3{ font-size:clamp(72px,21vw,110px) }
  .cap-panel__copy br{ display:none }
  .cap__index{ left:20px; right:20px }
  .cap__index li{ flex:1 }
  .cap__index button{ width:100% }
  .cap__index button span{ white-space:nowrap }
  .cap__progress{ right:20px }
  .cap__top{ top:80px; left:20px; right:20px }
  .loop__diagram{ display:none }         /* 移动端改为自然纵向阅读 */
  .loop__steps{ grid-template-columns:1fr; gap:0; margin-top:8vh }
  .loop__steps li{ padding:26px 0; border-bottom:1px solid var(--hairline); border-top:0 }
  .loop__steps li:first-child{ border-top:1px solid var(--hairline) }
  .loop__steps h3{ margin-top:14px }
  .loop__h2 br,.loop__sub br{ display:none }
  .quant{ grid-template-columns:1fr; padding:13vh 20px; gap:8vh }
  .quant__slice{ margin-left:0 }
  .quant__sub br{ display:none }
  .about__copy{ margin-left:0 }
  .contact__h2{ font-size:clamp(32px,9.6vw,60px) }
  .contact__info{ flex-direction:column; gap:14px; margin-top:28px }
  .brand__logo{ height:26px }
  .site-footer{
    grid-template-columns:1fr; align-items:flex-start; gap:26px; padding:36px 20px;
  }
  .site-footer__nav{ flex-wrap:wrap; gap:18px }
  .site-footer__meta{ text-align:left }
}

/* ── 动效降级 ───────────────────────────────────────────── */
@media (prefers-reduced-motion:reduce){
  html{ scroll-behavior:auto }
  *,*::before,*::after{ animation:none!important; transition:none!important }
  .cap__stage{ height:auto!important }
  .cap__pin{ position:relative!important; height:auto!important; min-height:0; padding:12vh var(--gutter) }
  .cap__field,.cap__shade,.cap__top,.cap__index,.cap__progress,.cap__telemetry{ display:none!important }
  html.js .cap__panels{ position:relative; left:auto; top:auto; transform:none; width:auto; height:auto }
  html.js .cap-panel{ position:relative; inset:auto; opacity:1!important; visibility:visible!important; transform:none!important; margin:0 0 11vh }
  .hero__em::after{ transform:scaleX(1) }
}
