/* ==========================================================================
   恒星璀璨 TNTSTAR · 原型样式
   令牌与 02-视觉与交互规范 完全一致。生产环境沿用此文件，不要另起颜色。
   ========================================================================== */

:root{
  /* 底色与层次 */
  --bg-base:#06070B; --bg-raised:#0B0D13; --bg-sunken:#030406;
  --hair:rgba(255,255,255,.08); --hair-strong:rgba(255,255,255,.16);
  --glass:rgba(6,7,11,.72);
  /* 文字 */
  --ink:#F4F6F9; --ink-sub:#A7AEBD; --ink-faint:#6E7686;
  /* 强调 */
  --star:#E9B44C; --star-2:#FFD98A; --blaze:#FF5A36; --beam:#3D7BFF;
  --ok:#3FBF7F;
  /* 圆角 */
  --r-xs:4px; --r-sm:8px; --r-md:16px; --r-pill:999px;
  /* 间距（8pt 基线） */
  /* 间距刻度：8pt 基线。12px 仅用于紧凑组件内间距，不外扩到区块布局 */
  --s2:8px; --s3:12px; --s4:16px; --s5:24px; --s6:32px;
  --s7:48px; --s8:64px; --s9:96px; --s10:128px;
  /* 动效 */
  --ease-out:cubic-bezier(.22,1,.36,1);
  --ease-io:cubic-bezier(.65,0,.35,1);
  --d-xs:120ms; --d-sm:200ms; --d-md:360ms; --d-lg:640ms;
  /* 版式 */
  --wrap:1280px; --wrap-narrow:1120px;
  --font-cjk:"PingFang SC","Microsoft YaHei UI","Noto Sans SC",system-ui,-apple-system,"Segoe UI",sans-serif;
}

/* 无正文的条目：非链接样式 + 角标。全站不允许出现 href="#" */
.nolink{display:flex;align-items:center;justify-content:space-between;gap:var(--s4);color:var(--ink-faint);cursor:not-allowed}
.nolink .ext{color:var(--ink-faint)}

/* 素材槽位占位框：有设计感，不留空框。data-slot 标编号，素材到位时按编号换成 <img>。
   换成 <img> 时必须同时给 width/height 与 aspect-ratio，否则 CLS 会破 0.1 */
.slot-ph{position:relative;display:flex;flex-direction:column;justify-content:flex-end;gap:var(--s2);
  border:1px solid var(--hair);border-radius:var(--r-sm);overflow:hidden;padding:var(--s5);
  min-height:120px;color:var(--ink-sub);
  background:radial-gradient(120% 80% at 18% 0%,rgba(233,180,76,.16),transparent 62%),
             linear-gradient(160deg,var(--bg-raised),var(--bg-sunken))}
.slot-ph::after{content:"";position:absolute;inset:0;pointer-events:none;
  background-image:linear-gradient(rgba(255,255,255,.04) 1px,transparent 1px),
                   linear-gradient(90deg,rgba(255,255,255,.04) 1px,transparent 1px);
  background-size:48px 48px;
  -webkit-mask-image:radial-gradient(120% 90% at 70% 10%,#000,transparent 75%);
  mask-image:radial-gradient(120% 90% at 70% 10%,#000,transparent 75%)}
.slot-ph__id{position:relative;font-size:12px;font-weight:700;letter-spacing:.08em;color:var(--star);text-transform:uppercase}
.slot-ph__req{position:relative;font-size:13px;color:var(--ink-faint)}
.card .slot-ph{min-height:96px;padding:var(--s4)}

/* 平台标记：24 网格，1.5px 单色描边，随文字色 */
.platmark{width:24px;height:24px;vertical-align:-6px;margin-right:var(--s2);
  stroke:currentColor;fill:none;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;opacity:.9}

*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{
  margin:0;background:var(--bg-base);color:var(--ink);
  font-family:var(--font-cjk);font-size:16px;line-height:1.75;
  text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;
  overflow-x:hidden;
}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
button{font:inherit;color:inherit}

/* 焦点：始终可见 */
:focus-visible{outline:2px solid var(--star);outline-offset:3px;border-radius:var(--r-xs)}

/* 跳转到主内容 */
.skip{
  position:absolute;left:-9999px;top:0;z-index:100;
  background:var(--star);color:#0a0a0a;padding:12px 20px;border-radius:0 0 var(--r-sm) 0;font-weight:700;
}
.skip:focus{left:0}

.wrap{width:min(100% - 48px,var(--wrap));margin-inline:auto}
@media (max-width:640px){ .wrap{width:min(100% - 32px,var(--wrap))} }

/* ---------- 排版 ---------- */
.d1{font-size:clamp(40px,7vw,96px);line-height:1.02;letter-spacing:-.03em;font-weight:800;margin:0}
.d2{font-size:clamp(32px,5vw,64px);line-height:1.06;letter-spacing:-.02em;font-weight:800;margin:0}
h1,.h1{font-size:clamp(28px,3.4vw,44px);line-height:1.15;letter-spacing:-.015em;font-weight:700;margin:0}
h2,.h2{font-size:clamp(22px,2.4vw,32px);line-height:1.25;letter-spacing:-.01em;font-weight:700;margin:0}
h3,.h3{font-size:18px;line-height:1.4;font-weight:600;margin:0}
p{margin:0}
.lead{font-size:clamp(16px,1.4vw,19px);line-height:1.8;color:var(--ink-sub)}
.sub{color:var(--ink-sub)}
.micro{font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-faint);font-weight:600}
.en{font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-faint)}
.grad-star{background:linear-gradient(100deg,var(--star-2),var(--star) 45%,#C88A2E);-webkit-background-clip:text;background-clip:text;color:transparent}
.hairline{height:1px;background:var(--hair);border:0;margin:0}

/* ---------- 区块节奏 ---------- */
section{padding-block:clamp(64px,9vw,160px)}
.sec-head{display:grid;gap:var(--s4);max-width:820px;margin-bottom:clamp(32px,5vw,64px)}
.sec-num{display:flex;align-items:center;gap:var(--s3);color:var(--ink-faint);font-size:12px;letter-spacing:.12em;text-transform:uppercase;font-weight:600}
.sec-num::before{content:"";width:40px;height:1px;background:var(--hair-strong)}

/* ---------- 顶栏 ---------- */
.header{position:sticky;top:0;z-index:50;transition:height var(--d-sm) var(--ease-out),background var(--d-sm) linear}
.header__in{
  display:flex;align-items:center;gap:var(--s5);
  height:84px;padding-inline:max(24px,calc((100vw - var(--wrap))/2));
  border-bottom:1px solid transparent;
  transition:height var(--d-sm) var(--ease-out),background var(--d-sm) linear,border-color var(--d-sm) linear,backdrop-filter var(--d-sm) linear;
}
.header.is-stuck .header__in{
  height:64px;background:var(--glass);border-bottom-color:var(--hair);
  backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);
}
.brand{display:flex;align-items:center;gap:12px;flex:none}
.brand__mark{
  width:34px;height:34px;border-radius:var(--r-pill);flex:none;
  background:radial-gradient(circle at 32% 28%,var(--star-2),var(--star) 42%,#8A5F16 100%);
  box-shadow:0 0 0 1px rgba(255,217,138,.35),0 0 24px rgba(233,180,76,.28);
}
.brand__txt{display:flex;flex-direction:column;line-height:1.15}
.brand__zh{font-weight:800;letter-spacing:.02em}
.brand__en{font-size:11px;letter-spacing:.22em;color:var(--ink-faint);text-transform:uppercase}
.nav{display:flex;align-items:center;gap:var(--s5);margin-left:auto}
.nav a{font-size:15px;color:var(--ink-sub);padding:8px 0;position:relative}
.nav a::after{content:"";position:absolute;left:0;right:100%;bottom:2px;height:1px;background:var(--star);transition:right var(--d-md) var(--ease-out)}
.nav a:hover{color:var(--ink)}
.nav a:hover::after{right:0}
.nav .is-current{color:var(--ink)}
.nav .is-current::after{right:0;background:var(--star)}

/* ---------- 按钮（全站仅三种） ---------- */
.btn{
  display:inline-flex;align-items:center;gap:10px;justify-content:center;
  padding:14px 26px;border-radius:var(--r-sm);border:1px solid transparent;
  font-weight:700;font-size:15px;cursor:pointer;
  transition:transform var(--d-xs) var(--ease-out),background var(--d-sm) linear,border-color var(--d-sm) linear,box-shadow var(--d-md) var(--ease-out);
}
.btn--primary{background:linear-gradient(180deg,var(--star-2),var(--star));color:#12100A;box-shadow:0 6px 28px rgba(233,180,76,.22)}
.btn--primary:hover{transform:translateY(-2px);box-shadow:0 10px 34px rgba(233,180,76,.34)}
.btn--ghost{border-color:var(--hair-strong);color:var(--ink);background:transparent}
.btn--ghost:hover{transform:translateY(-2px);border-color:var(--star);background:rgba(233,180,76,.06)}
.btn--text{padding:8px 0;color:var(--beam);background:none;border:0}
.btn--text:hover{color:#6C9DFF}
.btn--sm{padding:10px 18px;font-size:14px}
.btn[aria-disabled="true"]{opacity:.5;pointer-events:none}
.btn__arrow{transition:transform var(--d-sm) var(--ease-out)}
.btn:hover .btn__arrow{transform:translateX(4px)}

/* ---------- 首屏 ---------- */
.hero{position:relative;padding-block:clamp(72px,10vw,150px) clamp(48px,7vw,110px);overflow:hidden}
.hero__glow{
  position:absolute;inset:-20% -10% auto -10%;height:120%;pointer-events:none;z-index:0;
  background:
    radial-gradient(46% 40% at 22% 18%,rgba(233,180,76,.20),transparent 62%),
    radial-gradient(34% 30% at 78% 8%,rgba(61,123,255,.14),transparent 60%),
    radial-gradient(60% 50% at 50% 100%,rgba(255,90,54,.08),transparent 65%);
  filter:blur(2px);
}
.hero__dots{
  position:absolute;inset:0;z-index:0;pointer-events:none;opacity:.55;
  background-image:radial-gradient(rgba(255,255,255,.10) 1px,transparent 1px);
  background-size:34px 34px;
  mask-image:radial-gradient(60% 50% at 50% 30%,#000 20%,transparent 78%);
  -webkit-mask-image:radial-gradient(60% 50% at 50% 30%,#000 20%,transparent 78%);
}
.hero__in{position:relative;z-index:1;display:grid;gap:var(--s6)}
.hero__eyebrow{display:flex;flex-wrap:wrap;align-items:center;gap:var(--s4)}
.chip{
  display:inline-flex;align-items:center;gap:8px;padding:6px 14px;border-radius:var(--r-pill);
  border:1px solid var(--hair);font-size:12px;letter-spacing:.06em;color:var(--ink-sub);background:rgba(255,255,255,.02);
}
.chip--star{border-color:rgba(233,180,76,.42);color:var(--star)}
.hero__title{max-width:16ch}
.hero__lead{max-width:62ch}
.hero__cta{display:flex;flex-wrap:wrap;gap:var(--s4);align-items:center}
.hero__note{font-size:13px;color:var(--ink-faint)}

/* 数据条 */
.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:0;border-top:1px solid var(--hair);border-bottom:1px solid var(--hair);margin-top:var(--s8)}
.stat{padding:var(--s6) var(--s5);border-right:1px solid var(--hair)}
.stat:last-child{border-right:0}
.stat__num{font-size:clamp(26px,3vw,40px);font-weight:800;letter-spacing:-.02em;font-variant-numeric:tabular-nums}
.stat__lb{font-size:13px;color:var(--ink-sub);margin-top:6px}
@media (max-width:900px){ .stats{grid-template-columns:repeat(2,1fr)} .stat:nth-child(2){border-right:0} .stat:nth-child(1),.stat:nth-child(2){border-bottom:1px solid var(--hair)} }

/* ---------- 卡片 ---------- */
.card{
  background:var(--bg-raised);border:1px solid var(--hair);border-radius:var(--r-md);
  padding:var(--s6);transition:border-color var(--d-md) var(--ease-out),transform var(--d-md) var(--ease-out),background var(--d-md) linear;
}
.card:hover{border-color:rgba(233,180,76,.38);transform:translateY(-3px)}
.card__idx{font-size:12px;letter-spacing:.14em;color:var(--ink-faint);font-weight:700}
.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--s5)}
.grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--s6)}
.grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--s5)}
@media (max-width:1080px){ .grid-4{grid-template-columns:repeat(2,1fr)} .grid-3{grid-template-columns:1fr 1fr} }
@media (max-width:820px){ .grid-3,.grid-2{grid-template-columns:1fr} }
@media (max-width:560px){ .grid-4{grid-template-columns:1fr} }

/* 纲领三栏 */
.doctrine{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border:1px solid var(--hair);border-radius:var(--r-md);overflow:hidden}
.doctrine__col{padding:var(--s7) var(--s6);border-right:1px solid var(--hair);background:linear-gradient(180deg,rgba(255,255,255,.022),transparent)}
.doctrine__col:last-child{border-right:0}
.doctrine__key{font-size:12px;letter-spacing:.14em;color:var(--star);text-transform:uppercase;font-weight:700}
@media (max-width:900px){ .doctrine{grid-template-columns:1fr} .doctrine__col{border-right:0;border-bottom:1px solid var(--hair)} .doctrine__col:last-child{border-bottom:0} }

/* 痛点对照 */
.pain{display:grid;grid-template-columns:1fr 1fr;gap:0;border:1px solid var(--hair);border-radius:var(--r-md);overflow:hidden}
.pain__row{display:contents}
.pain__q,.pain__a{padding:var(--s5) var(--s6);border-bottom:1px solid var(--hair);font-size:15px}
.pain__q{color:var(--ink-sub);background:rgba(255,255,255,.015)}
.pain__a{color:var(--ink)}
.pain__q::before{content:"痛点";display:block;font-size:11px;letter-spacing:.14em;color:var(--ink-faint);margin-bottom:6px}
.pain__a::before{content:"TNTSTAR 的回应";display:block;font-size:11px;letter-spacing:.14em;color:var(--star);margin-bottom:6px}
.pain__row:last-child .pain__q,.pain__row:last-child .pain__a{border-bottom:0}
@media (max-width:820px){
  .pain{grid-template-columns:1fr}
  .pain__q::before{content:"痛点"}
  .pain__a{border-left:2px solid rgba(233,180,76,.5)}
}

/* 凭证墙 */
.proof{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--s5)}
@media (max-width:1080px){ .proof{grid-template-columns:repeat(2,1fr)} }
@media (max-width:560px){ .proof{grid-template-columns:1fr} }
.proof__card{
  display:flex;flex-direction:column;gap:var(--s3);
  border:1px solid var(--hair);border-radius:var(--r-md);padding:var(--s5);
  background:linear-gradient(180deg,rgba(255,255,255,.02),transparent);
  transition:border-color var(--d-md) var(--ease-out),transform var(--d-md) var(--ease-out);
}
.proof__card:hover{border-color:rgba(233,180,76,.4);transform:translateY(-3px)}
.proof__src{font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--star);font-weight:700}
.proof__ttl{font-weight:600;line-height:1.5}
.proof__meta{font-size:13px;color:var(--ink-faint);margin-top:auto}

/* 端口矩阵 */
.portals{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--s4)}
@media (max-width:1080px){ .portals{grid-template-columns:repeat(2,1fr)} }
@media (max-width:640px){ .portals{grid-template-columns:1fr} }
.portal{
  display:flex;flex-direction:column;gap:var(--s3);
  border:1px solid var(--hair);border-radius:var(--r-md);padding:var(--s5);
  background:var(--bg-raised);position:relative;overflow:hidden;
}
.portal::before{content:"";position:absolute;inset:0;background:linear-gradient(120deg,transparent 30%,rgba(255,255,255,.06),transparent 70%);transform:translateX(-120%);transition:transform var(--d-lg) var(--ease-out)}
.portal:hover::before{transform:translateX(120%)}
.portal__top{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--s3)}
.portal__name{font-weight:700}
.portal__desc{font-size:14px;color:var(--ink-sub)}
.badge{display:inline-flex;align-items:center;gap:6px;padding:3px 10px;border-radius:var(--r-pill);border:1px solid var(--hair);font-size:11px;letter-spacing:.06em;white-space:nowrap;color:var(--ink-sub)}
.badge--live{border-color:rgba(233,180,76,.5);color:var(--star)}
.badge--soon{border-color:var(--hair-strong);color:var(--ink-faint)}
.badge::before{content:"";width:5px;height:5px;border-radius:50%;background:currentColor}
.portal__foot{margin-top:auto;display:flex;gap:var(--s3);align-items:center}

/* 下载区 */
.dl{position:relative;border-top:1px solid var(--hair);border-bottom:1px solid var(--hair);background:var(--bg-sunken);overflow:hidden}
.dl__glow{position:absolute;inset:auto -10% -40% -10%;height:80%;background:radial-gradient(50% 60% at 50% 100%,rgba(233,180,76,.16),transparent 70%);pointer-events:none}
.dl__in{position:relative;display:grid;gap:var(--s6);justify-items:center;text-align:center}
.dl__plats{display:flex;flex-wrap:wrap;gap:var(--s3);justify-content:center}
.plat{display:inline-flex;align-items:center;gap:8px;padding:10px 16px;border:1px solid var(--hair);border-radius:var(--r-pill);font-size:14px;color:var(--ink-sub);background:rgba(255,255,255,.02)}
.plat svg{width:16px;height:16px;fill:currentColor;opacity:.85}

/* 创始人区 */
.founder{display:grid;grid-template-columns:.9fr 1.1fr;gap:var(--s8);align-items:center}
@media (max-width:900px){ .founder{grid-template-columns:1fr;gap:var(--s6)} }
.portrait{
  aspect-ratio:4/5;border-radius:var(--r-md);border:1px solid var(--hair);position:relative;overflow:hidden;
  background:
    radial-gradient(60% 50% at 50% 25%,rgba(233,180,76,.18),transparent 65%),
    linear-gradient(160deg,#10131B,#07080C);
  display:grid;place-items:center;
}
.portrait__ph{font-size:13px;color:var(--ink-faint);text-align:center;padding:var(--s5);line-height:1.9}

/* 链接列表 */
.links{display:grid;gap:0;border-top:1px solid var(--hair)}
.links a{display:flex;align-items:center;justify-content:space-between;gap:var(--s4);padding:var(--s5) var(--s2);border-bottom:1px solid var(--hair);transition:padding-inline var(--d-md) var(--ease-out),background var(--d-md) linear}
.links a:hover{padding-inline:var(--s5);background:rgba(255,255,255,.02)}
.links .ext{font-size:12px;color:var(--ink-faint);letter-spacing:.08em}

/* 表单 */
.field{display:grid;gap:8px}
.field label{font-size:14px;color:var(--ink-sub)}
.field input,.field select,.field textarea{
  background:var(--bg-sunken);border:1px solid var(--hair);border-radius:var(--r-xs);
  padding:13px 14px;color:var(--ink);font-size:15px;width:100%;
  transition:border-color var(--d-sm) linear,box-shadow var(--d-sm) linear;
}
.field input:focus,.field select:focus,.field textarea:focus{outline:none;border-color:var(--star);box-shadow:0 0 0 3px rgba(233,180,76,.18)}
.form{display:grid;gap:var(--s5)}
.hint{font-size:13px;color:var(--ink-faint)}
.status{font-size:14px;color:var(--ok)}

/* 下载页专用 */
.platcards{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--s5)}
@media (max-width:1080px){ .platcards{grid-template-columns:repeat(2,1fr)} }
@media (max-width:640px){ .platcards{grid-template-columns:1fr} }
.platcard{display:flex;flex-direction:column;gap:var(--s4);border:1px solid var(--hair);border-radius:var(--r-md);padding:var(--s6);background:var(--bg-raised)}
.platcard__os{display:flex;align-items:center;gap:10px;font-weight:700}
.platcard__os svg{width:20px;height:20px;fill:currentColor;opacity:.9}
.kv{display:grid;grid-template-columns:auto 1fr;gap:6px var(--s5);font-size:14px}
.kv dt{color:var(--ink-faint)}
.kv dd{margin:0;font-variant-numeric:tabular-nums;word-break:break-all}
.steps{counter-reset:st;display:grid;gap:var(--s5)}
.steps li{list-style:none;display:grid;grid-template-columns:auto 1fr;gap:var(--s5);align-items:start}
.steps li::before{counter-increment:st;content:counter(st,decimal-leading-zero);color:var(--star);font-weight:800;font-size:13px;letter-spacing:.08em;padding-top:4px}
.faq{border-top:1px solid var(--hair)}
.faq details{border-bottom:1px solid var(--hair);padding:var(--s5) 0}
.faq summary{cursor:pointer;font-weight:600;list-style:none;display:flex;justify-content:space-between;gap:var(--s4)}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";color:var(--star);font-weight:400}
.faq details[open] summary::after{content:"–"}
.faq p{margin-top:var(--s3);color:var(--ink-sub);font-size:15px}
.table{width:100%;border-collapse:collapse;font-size:14px}
.table th,.table td{text-align:left;padding:14px var(--s4);border-bottom:1px solid var(--hair);vertical-align:top}
.table th{color:var(--ink-faint);font-weight:600;font-size:12px;letter-spacing:.08em;text-transform:uppercase}

/* 页脚 */
.footer{background:var(--bg-sunken);border-top:1px solid var(--hair);padding-block:var(--s8)}
.footer__grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:var(--s7)}
@media (max-width:900px){ .footer__grid{grid-template-columns:1fr 1fr} }
@media (max-width:560px){ .footer__grid{grid-template-columns:1fr} }
.footer h4{margin:0 0 var(--s4);font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-faint)}
.footer ul{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.footer li a{color:var(--ink-sub);font-size:14px}
.footer li a:hover{color:var(--star)}
.footer__bottom{margin-top:var(--s8);padding-top:var(--s5);border-top:1px solid var(--hair);display:flex;flex-wrap:wrap;gap:var(--s4);justify-content:space-between;font-size:13px;color:var(--ink-faint)}

/* 对话框 */
dialog{border:1px solid var(--hair-strong);background:var(--bg-raised);color:var(--ink);border-radius:var(--r-md);padding:var(--s7);max-width:560px;width:calc(100% - 32px)}
dialog::backdrop{background:rgba(2,3,5,.72);backdrop-filter:blur(6px)}

/* 进场动画（JS 加 .in，尊重减少动态） */
.reveal{opacity:0;transform:translateY(20px);transition:opacity var(--d-lg) var(--ease-out),transform var(--d-lg) var(--ease-out)}
.reveal.in{opacity:1;transform:none}
.reveal[data-d="1"]{transition-delay:80ms}
.reveal[data-d="2"]{transition-delay:160ms}
.reveal[data-d="3"]{transition-delay:240ms}

/* 原型标注（上线前删除） */
.todo{
  display:inline-flex;align-items:center;gap:6px;margin-left:8px;
  font-size:11px;letter-spacing:.06em;color:#0F0D08;background:var(--star);
  padding:2px 8px;border-radius:var(--r-pill);font-weight:700;vertical-align:middle;
}
.todo--muted{background:transparent;color:var(--star);border:1px dashed rgba(233,180,76,.55)}
.proto-note{
  border:1px dashed rgba(233,180,76,.45);border-radius:var(--r-sm);
  padding:var(--s4) var(--s5);color:var(--ink-sub);font-size:14px;background:rgba(233,180,76,.04);
}

@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation-duration:.001ms !important;animation-iteration-count:1 !important;transition-duration:.001ms !important}
  .reveal{opacity:1;transform:none}
}

@media print{ .header,.dl__glow{display:none} body{background:#fff;color:#000} }

/* ---------- 小屏导航（≤980px 只留下载按钮，避免汉堡菜单的额外复杂度） ---------- */
@media (max-width:980px){
  .nav{gap:var(--s4)}
  .nav a:not(.btn){display:none}
  .header__in{height:72px;padding-inline:20px}
}
@media (max-width:420px){
  .brand__en{display:none}
  .btn--sm{padding:9px 14px;font-size:13px}
}

/* ---------- 图片与视频落位（2026-10-14 A1：把占位框换成真实素材时用） ---------- */
/* 帧内媒体一律绝对定位铺满，避免与占位框叠加后的布局位移（CLS） */
.frame > img, .frame > video, .portrait > img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0}
/* 结构版人像位落了真图后，隐藏它下面的占位块（用通用兄弟选择器，中间夹着说明行也能命中） */
.portrait > img ~ .portrait__ph{display:none}
/* 素材署名/来源小签（临时素材标识，替换正式素材时可一并去掉） */
.media-credit{position:absolute;left:16px;bottom:16px;z-index:4;font-size:11px;letter-spacing:.08em;color:var(--ink-faint);background:rgba(6,7,11,.5);border:1px solid var(--hair);border-radius:999px;padding:3px 10px}
