/* ==========================================================================
   METAFILM® 官网 · v2（Apple 语汇）
   原则：
     1. 一屏只讲一个主张；文案极短，标题极大
     2. 视觉优先 —— 大幅产品画面铺满或近铺满，不用卡片框
     3. 字体层级只有三档：display / headline / body；不用小标签墙
     4. 深黑与深海军蓝两色交替分区；分隔靠留白，不靠边框
     5. 动效克制：滚动渐显 + 首屏视差，尊重 prefers-reduced-motion
   ========================================================================== */

:root{
  /* 色：与宣传片同族 */
  --black:      #000000;
  --near:       #05070d;
  --navy:       #05090f;      /* 分区交替用的深海军蓝（压暗一档，避免发灰） */
  --navy-2:     #070c16;

  --tx:         #f5f5f7;      /* Apple 白 */
  --tx-2:       #b8b8be;      /* 次要灰（由 #a1a1a6 提亮，满足 WCAG AA 4.5:1） */
  --tx-3:       #929298;      /* 三级灰（同上） */
  --hair:       rgba(255,255,255,.10);

  --blue:       #2997ff;      /* Apple 链接蓝 */
  --c-desktop:  #4db8ff;
  --c-ocd:      #a78bfa;
  --c-dlc:      #ffb340;
  --brand:      #7cf0d0;

  --maxw:       1120px;       /* Apple 正文栏宽 */
  --wide:       1680px;

  /* 字号：贴 Apple 的层级 */
  --t-hero:     clamp(52px, 9.2vw, 148px);
  --t-h1:       clamp(40px, 6.4vw, 96px);
  --t-h2:       clamp(30px, 4.4vw, 64px);
  --t-h3:       clamp(22px, 2.4vw, 34px);
  --t-lead:     clamp(18px, 1.6vw, 26px);
  --t-body:     17px;
  --t-sm:       14px;
  --t-num:      clamp(38px, 5.2vw, 84px);

  --gap:        clamp(80px, 11vw, 190px);   /* 分区间距：Apple 的大留白 */
  --ease:       cubic-bezier(.28,.11,.32,1);
}

*,*::before,*::after{ box-sizing:border-box }
html{ -webkit-text-size-adjust:100%; scroll-behavior:smooth }
body,h1,h2,h3,h4,p,ul,ol,li,figure,figcaption,table{ margin:0; padding:0 }
ul,ol{ list-style:none }
img,svg,video{ max-width:100%; display:block }
img,video{ height:auto }
button{ font:inherit; color:inherit; background:none; border:0; cursor:pointer }
table{ border-collapse:collapse; width:100% }
:target{ scroll-margin-top:70px }
[hidden]{ display:none !important }

body{
  background:var(--black);
  color:var(--tx);
  font-family:-apple-system,BlinkMacSystemFont,"SF Pro Display","SF Pro Text","PingFang SC","Hiragino Sans GB","Microsoft YaHei",Helvetica,Arial,sans-serif;
  font-size:var(--t-body);
  line-height:1.47;
  letter-spacing:-.01em;
  -webkit-font-smoothing:antialiased;
}
a{ color:var(--blue); text-decoration:none }
a:hover{ text-decoration:underline }
:focus-visible{ outline:2px solid var(--blue); outline-offset:4px; border-radius:4px }
h1,h2,h3,h4{ font-weight:700; letter-spacing:-.025em; line-height:1.05 }

.skip{ position:absolute; left:-9999px; top:0; z-index:300; background:var(--blue); color:#001; padding:10px 16px; font-weight:600 }
.skip:focus{ left:0 }
.vh{ position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0 0 0 0); white-space:nowrap }

/* 不支持 backdrop-filter 的引擎：把导航底加实，保证文字可读 */
@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){
  .nav{ background:rgba(0,0,0,.94) }
  .nav__menu{ background:rgba(0,0,0,.98) }
}

/* ---------- 版心 ---------- */
.col{ width:100%; max-width:var(--maxw); margin:0 auto; padding:0 24px }
.col--wide{ max-width:var(--wide) }
.col--narrow{ max-width:760px }
.col--text{ max-width:640px }

/* ---------- 分区：靠留白分隔，不画边框 ---------- */
.band{ padding:var(--gap) 0; position:relative }
.band--tight{ padding:calc(var(--gap) * .55) 0 }
.band--black{ background:var(--black) }
.band--navy{ background:var(--navy) }
.band--grad{ background:linear-gradient(180deg,var(--black) 0%,var(--navy-2) 40%,var(--navy) 60%,var(--black) 100%) }
.band--flush{ padding-bottom:0 }

/* ---------- 文字层级 ---------- */
.eyebrow{ font-size:var(--t-sm); font-weight:600; letter-spacing:.02em; color:var(--tx-2); margin-bottom:14px }
.hero-type{ font-size:var(--t-hero); font-weight:700; letter-spacing:-.035em; line-height:1.02 }
.h1{ font-size:var(--t-h1) }
.h2{ font-size:var(--t-h2) }
.h3{ font-size:var(--t-h3); font-weight:600; letter-spacing:-.02em }
.lead{ font-size:var(--t-lead); color:var(--tx-2); line-height:1.4; letter-spacing:-.012em }
.body{ color:var(--tx-2) }
.small{ font-size:var(--t-sm); color:var(--tx-3) }
.center{ text-align:center }
.mono{ font-family:ui-monospace,"SF Mono",Menlo,Consolas,monospace; letter-spacing:0 }

/* 更链接（Apple 的蓝色箭头链接） */
.more{ display:inline-flex; align-items:center; gap:5px; color:var(--blue); font-size:var(--t-lead) }
.more::after{ content:"›"; font-size:1.05em; transition:transform .2s var(--ease) }
.more:hover{ text-decoration:none }
.more:hover::after{ transform:translateX(3px) }
.more--sm{ font-size:var(--t-body) }

.links{ display:flex; flex-wrap:wrap; gap:10px 32px; align-items:center; justify-content:center }
.links--left{ justify-content:flex-start }

/* 按钮（少量使用） */
.pill{
  display:inline-flex; align-items:center; justify-content:center;
  min-width:120px; padding:12px 24px; border-radius:980px;
  font-size:18px; font-weight:600; letter-spacing:0;   /* 18px/600 属 WCAG「大号文字」，白字在蓝底达 3:1 以上 */
  background:#0a6fd8; color:#fff; border:0;
  transition:background .2s var(--ease), transform .2s var(--ease);
}
.pill:hover{ text-decoration:none; background:#0b5fb8; transform:translateY(-1px) }
.pill--ghost{ background:transparent; color:var(--blue); box-shadow:inset 0 0 0 1px var(--blue) }
.pill--ghost:hover{ background:rgba(41,151,255,.12) }

/* ---------- 导航（Apple 那条细窄毛玻璃条） ---------- */
.nav{
  position:sticky; top:0; z-index:200; height:48px;
  background:rgba(0,0,0,.8);
  backdrop-filter:saturate(180%) blur(20px);
  -webkit-backdrop-filter:saturate(180%) blur(20px);
}
.nav__in{ max-width:var(--wide); margin:0 auto; padding:0 24px; height:48px; display:flex; align-items:center; gap:34px }
.nav__brand{ display:flex; align-items:center; color:var(--tx); opacity:.9 }
.nav__brand:hover{ opacity:1; text-decoration:none }
.nav__brand svg{ height:17px; width:auto }
.nav__menu{ margin-left:auto; display:flex; align-items:center; gap:clamp(16px,2.4vw,36px) }
.nav__menu a{ color:var(--tx-2); font-size:12.5px; letter-spacing:0; transition:color .2s var(--ease) }
.nav__menu a:hover{ color:var(--tx); text-decoration:none }
.nav__menu a[aria-current="page"]{ color:var(--tx) }
.nav__burger{ display:none; margin-left:auto; width:40px; height:34px; padding:9px 7px }
.nav__burger span{ display:block; height:1.5px; background:var(--tx-2); border-radius:2px; transition:transform .25s var(--ease) }
.nav__burger span+span{ margin-top:5px }
.nav__burger[aria-expanded="true"] span:first-child{ transform:translateY(3.25px) rotate(45deg) }
.nav__burger[aria-expanded="true"] span:last-child{ transform:translateY(-3.25px) rotate(-45deg) }
@media (max-width:834px){
  .nav__menu{
    position:absolute; left:0; right:0; top:48px; background:rgba(0,0,0,.96);
    backdrop-filter:blur(20px); -webkit-backdrop-filter:blur(20px);
    max-height:0; overflow:hidden; transition:max-height .3s var(--ease);
  }
  .nav__menu.is-open{ max-height:420px }
  .nav__menu{ display:block; margin:0; padding:6px 24px 18px }
  .nav__menu a{ display:block; padding:12px 0; font-size:17px; border-bottom:1px solid var(--hair) }
  .nav__menu a:last-child{ border-bottom:0 }
  .nav__burger{ display:block }
}

/* ---------- 首屏：文字压在画面之上 ---------- */
.hero{ position:relative; overflow:hidden; padding:0; text-align:center; background:var(--black) }
.hero__bg{ position:relative; margin:0; overflow:hidden; background:var(--black) }
/* 网格由页面铺设（SVG 本身透明），保证底色是纯黑而不是一块灰 */
.hero__bg::before{
  content:""; position:absolute; inset:0; pointer-events:none;
  background-image:
    linear-gradient(rgba(255,255,255,.045) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.045) 1px, transparent 1px);
  background-size:80px 80px;
  /* 网格用径向遮罩淡出；不支持 mask 的旧引擎则整体降低强度，避免满屏硬网格 */
  opacity:.75;
  -webkit-mask-image:radial-gradient(90% 80% at 50% 40%,#000 30%,transparent 100%);
          mask-image:radial-gradient(90% 80% at 50% 40%,#000 30%,transparent 100%);
}
@supports not ((mask-image:none) or (-webkit-mask-image:none)){
  .hero__bg::before{ opacity:.35; background-size:96px 96px }
}
.hero__bg img{
  position:relative; z-index:1;
  width:100%; display:block;
  transform:scale(1.12); transform-origin:50% 46%;
}
.hero__bg::after{
  content:""; position:absolute; inset:0; z-index:2; pointer-events:none;
  background:
    radial-gradient(120% 90% at 50% 30%,rgba(0,0,0,.06) 0%,rgba(0,0,0,.42) 62%,rgba(0,0,0,.66) 100%),
    linear-gradient(180deg,rgba(0,0,0,.52) 0%,rgba(0,0,0,.10) 32%,rgba(0,0,0,.22) 74%,var(--black) 100%);
}
.hero__over{
  position:absolute; left:0; right:0; top:clamp(44px,6vw,92px);
  z-index:2; padding:0 24px;
}
.hero-type{ font-size:var(--t-hero); font-weight:700; letter-spacing:-.035em; line-height:1.02;
  text-shadow:0 2px 34px rgba(0,0,0,.7) }
.hero .lead{ margin:22px auto 0; max-width:560px; color:#e3e6ec; text-shadow:0 1px 22px rgba(0,0,0,.75) }
.hero__links{ margin-top:30px; justify-content:center }
/* 普通首屏（无背景图） */
.hero--plain{ padding:clamp(64px,9vw,132px) 0 0 }
.hero--plain .hero__over{ position:static; padding:0 }
/* 纯文字首屏：纯黑底 + 大标题，标题下不放图（Apple 首屏做法） */
.hero--text{
  padding:clamp(96px,15vh,190px) 0 clamp(84px,13vh,168px);
  text-align:center; background:var(--black);
}
.hero--text .hero__over{ position:static; padding:0 }
.hero--text .lead{ margin-left:auto; margin-right:auto; max-width:640px }
.hero--text .hero__links{ justify-content:center }
/* 纯文字首屏底部一道极淡的分区渐隐，避免与下一节硬接 */
.hero--text::after{
  content:""; position:absolute; left:0; right:0; bottom:0; height:120px; pointer-events:none;
  background:linear-gradient(180deg,transparent,var(--black));
}
/* 图文分离首屏：文字在上、整幅产品图在下（不裁切、不叠字） */
.hero--stack{ padding:clamp(56px,7.5vw,110px) 0 0; text-align:center }
.hero--stack .hero__over{ position:static; padding:0 }
.hero--stack .lead{ margin-left:auto; margin-right:auto; max-width:620px }
.hero--stack .hero__links{ justify-content:center }
.hero--stack .hero__figure{ margin:clamp(28px,3.6vw,56px) auto 0; max-width:1500px; padding:0 clamp(10px,2vw,28px) }
.hero--stack .hero__figure img{ width:100%; border-radius:18px; display:block }
@media (max-width:734px){
  .hero__over{ top:30px }
  .hero__bg img{ transform:scale(1.85) }
  .hero__bg::after{ background:linear-gradient(180deg,rgba(0,0,0,.84) 0%,rgba(0,0,0,.5) 45%,var(--black) 100%) }
  .hero .lead{ font-size:16.5px; margin-top:14px; max-width:none }
  .hero__links{ margin-top:18px }
}

/* ---------- 大幅画面（近铺满） ---------- */
.prism{ position:relative; margin:0 auto; max-width:var(--wide); padding:0 clamp(16px,3vw,48px) }
.prism img{ width:100%; border-radius:18px; display:block }
.prism--paper{ background:#fff; border-radius:18px; padding:clamp(14px,2vw,30px) }
.prism--paper img{ border-radius:10px }
.prism__cap{ margin-top:18px; text-align:center; font-size:var(--t-sm); color:var(--tx-3) }
/* 实拍照片：圆角 + 细边 + 投影，与深色站点同调 */
.photo{ margin:0 }
.photo img{
  width:100%; display:block; border-radius:16px;
  box-shadow:0 0 0 1px var(--hair), 0 22px 60px rgba(0,0,0,.55);
}
.photo figcaption{ margin-top:14px; font-size:var(--t-sm); color:var(--tx-3) }
/* 白底线稿图：单独给出白色衬底，避免与深色主题硬碰 */
.duo__media--paper{ background:#fff; border-radius:16px; padding:clamp(12px,1.6vw,26px) }
.duo__media--paper img{ border-radius:8px }

/* ---------- 视频 ---------- */
.film{ max-width:var(--wide); margin:0 auto; padding:0 clamp(16px,3vw,48px) }
.film video{ width:100%; border-radius:18px; background:#000 }
.film__cap{ margin-top:16px; text-align:center; font-size:var(--t-sm); color:var(--tx-3) }

/* ---------- 影片专区条目：左说明 / 右影片 + 规格表 ---------- */
.filmitem{
  display:grid; grid-template-columns:minmax(280px,0.86fr) minmax(420px,1.6fr);
  gap:clamp(28px,4vw,72px); align-items:start;
  padding:clamp(34px,4.4vw,64px) 0; border-top:1px solid var(--hair);
}
.filmitem:first-child{ border-top:0; padding-top:0 }
.filmitem__head{ position:sticky; top:84px }
.filmitem__spec{ grid-column:1 / -1; margin-top:clamp(24px,3vw,40px) }
.filmitem__spec .spec__r:first-child{ border-top:1px solid var(--hair) }
.filmitem .film{ margin:0 }
.filmitem .links{ flex-wrap:wrap }
@media (max-width:900px){
  .filmitem{ grid-template-columns:1fr }
  .filmitem__head{ position:static }
}

/* 竖屏动画那一行：窄屏改为上下堆叠，避免 iframe 撑破视口 */
.duo--portrait{ grid-template-columns:minmax(240px,1fr) minmax(200px,300px); align-items:center; text-align:left }
.duo--portrait .embed{ margin:0 }
@media (max-width:734px){
  .duo--portrait{ grid-template-columns:1fr }
  .duo--portrait .embed{ max-width:280px; margin:0 auto }
}

/* ---------- 三款产品：横向滚动的整屏块 ---------- */
.rail{ display:grid; grid-auto-flow:column; grid-auto-columns:minmax(320px,1fr); gap:clamp(18px,2.4vw,34px); overflow-x:auto; scroll-snap-type:x mandatory; padding:6px clamp(24px,4vw,64px) 26px; -webkit-overflow-scrolling:touch }
.rail::-webkit-scrollbar{ height:6px }
.rail::-webkit-scrollbar-thumb{ background:rgba(255,255,255,.18); border-radius:3px }
.rail__item{ scroll-snap-align:center; display:block; color:inherit }
.rail__item:hover{ text-decoration:none }
.rail__item img{
  width:100%; border-radius:16px; display:block;
  aspect-ratio:16 / 9; object-fit:cover;      /* 三张图统一比例，标题基线对齐 */
  background:#0b0e13;
  /* 细描边：深色照片的圆角与黑底同色会看不出来，加 1px 亮边把轮廓交代清楚 */
  outline:1px solid rgba(255,255,255,.22); outline-offset:-1px;
}
.rail__t{ margin-top:20px; font-size:var(--t-h3); font-weight:600 }
.rail__d{ margin-top:8px; color:var(--tx-2); font-size:var(--t-body) }
.rail__m{ margin-top:12px; font-size:var(--t-sm); color:var(--tx-3) }
@media (min-width:1200px){
  .rail{ grid-auto-flow:row; grid-template-columns:repeat(3,1fr); overflow:visible; padding-left:24px; padding-right:24px }
}

/* ---------- 大数字（Apple 的 stat 排版：数字巨大、说明极小） ---------- */
.figures{ display:grid; grid-template-columns:repeat(4,1fr); gap:clamp(28px,4vw,64px); text-align:center }
@media (max-width:1000px){ .figures{ grid-template-columns:repeat(2,1fr) } }
@media (max-width:560px){ .figures{ grid-template-columns:1fr } }
.figure__n{ font-size:var(--t-num); font-weight:700; letter-spacing:-.03em; line-height:1; white-space:nowrap }
.figure__n small{ font-size:.34em; font-weight:500; color:var(--tx-2); margin-left:6px; letter-spacing:0 }
.figure__n--long{ font-size:calc(var(--t-num) * .68) }
.figure__l{ margin-top:14px; color:var(--tx-2); font-size:var(--t-sm) }

/* ---------- 左右图文（Apple 的 50/50 版式） ---------- */
.duo{ display:grid; grid-template-columns:1fr 1fr; gap:clamp(30px,5vw,80px); align-items:center }
.duo--flip .duo__media{ order:-1 }
@media (max-width:900px){ .duo{ grid-template-columns:1fr; gap:28px } .duo--flip .duo__media{ order:0 } }
.duo__media img{ width:100%; border-radius:16px }
.duo__t{ font-size:var(--t-h2) }
.duo__b{ margin-top:20px; color:var(--tx-2); font-size:var(--t-lead); line-height:1.45 }
.duo__list{ margin-top:24px; display:grid; gap:14px }
.duo__list li{ position:relative; padding-left:22px; color:var(--tx-2) }
.duo__list li::before{ content:""; position:absolute; left:0; top:.6em; width:6px; height:6px; border-radius:50%; background:var(--accent,var(--brand)) }

/* ---------- 规格表（Apple 的细线表） ---------- */
.spec{ max-width:900px; margin:0 auto }
.spec__r{ display:grid; grid-template-columns:minmax(140px,.4fr) 1fr; gap:24px; padding:18px 0; border-bottom:1px solid var(--hair) }
.spec__r:first-child{ border-top:1px solid var(--hair) }
@media (max-width:600px){ .spec__r{ grid-template-columns:1fr; gap:6px } }
.spec__k{ color:var(--tx-3); font-size:var(--t-sm) }
.spec__v{ color:var(--tx) }
.spec__v b{ font-weight:600 }

/* ---------- 表格 ---------- */
.tbl-wrap{ max-width:900px; margin:0 auto; overflow-x:auto }
.tbl{ font-size:var(--t-body) }
.tbl th,.tbl td{ padding:16px 18px; text-align:left; border-bottom:1px solid var(--hair); vertical-align:top }
.tbl th{ color:var(--tx-3); font-weight:500; font-size:var(--t-sm); white-space:nowrap }
.tbl td{ color:var(--tx-2) }
.tbl td b{ color:var(--tx); font-weight:600 }
.tbl tr:last-child td{ border-bottom:0 }

/* ---------- 流程（Apple 的步骤条：细横线 + 小字） ---------- */
.steps{ display:grid; grid-template-columns:repeat(5,1fr); gap:clamp(18px,2.6vw,44px); max-width:1200px; margin:0 auto }
@media (max-width:1000px){ .steps{ grid-template-columns:repeat(2,1fr) } }
@media (max-width:560px){ .steps{ grid-template-columns:1fr } }
.step{ padding-top:20px; border-top:2px solid var(--accent,var(--brand)) }
.step__n{ font-size:12px; letter-spacing:.08em; color:var(--tx-3) }
.step__t{ margin-top:12px; font-size:clamp(17px,1.5vw,22px); font-weight:600; letter-spacing:-.015em; text-wrap:balance }
.step__d{ margin-top:8px; color:var(--tx-3); font-size:var(--t-sm) }

/* ---------- 提示 / 声明 ---------- */
.note{ margin-top:34px; color:var(--tx-3); font-size:var(--t-sm); line-height:1.6; max-width:900px; margin-left:auto; margin-right:auto }
.note b{ color:var(--tx-2); font-weight:500 }

/* ---------- 嵌入式交互 ---------- */
.embed{ max-width:var(--wide); margin:0 auto }
.embed iframe{ width:100%; height:min(80vh,820px); border:0; border-radius:18px; background:var(--navy) }
/* 产品动画：横向铺满内容栏宽。
   框高由该动画自身的宽高比决定（--ar 实测值）；动画内部已注入等比适配脚本，
   会在框内把整幅缩放到可见，既不留黑边也不需要拖动内部滚动条。 */
.embed--anim{
  position:relative; width:100%; max-width:var(--wide); margin:0 auto;
  overflow:hidden; aspect-ratio:var(--ar, 1.6);
}
.embed--anim .anim-scale{ position:absolute; inset:0 }
.embed--anim iframe{ width:100%; height:100%; border:0; display:block }

/* ---------- 移动端可用性：触控目标 ≥44px、正文字号不低于 15px ---------- */
@media (max-width:900px){
  .foot ul li{ margin:2px 0 }
  .foot ul a{ display:inline-block; padding:11px 0; min-height:44px; line-height:22px }
  .foot h4{ margin-bottom:6px }
  .more{ display:inline-flex; align-items:center; min-height:44px; padding:8px 0 }
  .nav__menu a{ display:flex; align-items:center; min-height:44px }
  .nav__brand{ min-height:44px; display:inline-flex; align-items:center }
  .tbl td, .tbl th{ padding:12px 12px }
  .spec__r{ min-height:44px }
  .spec__v a, .foot__bottom a, .foot__legal a{ display:inline-block; padding:9px 0 }
  .hero .lead, .lead{ font-size:16px }
  .note, .figure__l, .step__d, .film__cap, .prism__cap{ font-size:15px }
  /* 正文类字号统一不低于 15px（原先 14px 在手机上偏小） */
  main p, main li, .spec__v, .spec__k, .tbl td, .tbl th, .duo__b, .duo__list li, .step__t{ font-size:15px }
  .eyebrow, .step__n, .rail__m{ font-size:13.5px }
}
.embed--port{
  width:min(100%, 300px, calc(86vh * 9 / 16));
  aspect-ratio:9 / 16;             /* 1080 × 1920 画布 */
  margin:0 auto;
}
.embed--port iframe{ width:100%; height:100% }
@media (max-width:900px){
  .embed--land-desktop, .embed--land-ocd5000, .embed--land-dlc{ width:100% }
  .embed--port{ width:min(100%, 260px) }
}
@media (max-width:820px){ .embed iframe{ height:66vh; border-radius:12px } }

/* ---------- 页脚 ---------- */
.foot{ background:var(--black); border-top:1px solid var(--hair); padding:clamp(44px,5vw,64px) 0 40px; font-size:12.5px; color:var(--tx-3) }
.foot__grid{ display:grid; grid-template-columns:1.6fr 1fr 1fr 1fr; gap:clamp(22px,3vw,48px) }
@media (max-width:900px){ .foot__grid{ grid-template-columns:1fr 1fr } }
@media (max-width:560px){ .foot__grid{ grid-template-columns:1fr } }
.foot h4{ font-size:12.5px; color:var(--tx-2); font-weight:600; margin-bottom:14px; letter-spacing:0 }
.foot li+li{ margin-top:10px }
.foot a{ color:var(--tx-3) }
.foot a:hover{ color:var(--tx-2) }
.foot__bottom{ margin-top:clamp(30px,3.6vw,48px); padding-top:20px; border-top:1px solid var(--hair); display:flex; flex-wrap:wrap; gap:10px 28px }
.foot__legal{ margin-top:14px; line-height:1.7; max-width:900px }

/* ---------- 动效 ---------- */
.rise{ opacity:0; transform:translateY(28px); transition:opacity .9s var(--ease), transform .9s var(--ease) }
.rise.is-in{ opacity:1; transform:none }
.rise--slow{ transition-duration:1.2s }
@media (prefers-reduced-motion:reduce){
  html{ scroll-behavior:auto }
  .rise{ opacity:1 !important; transform:none !important; transition:none !important }
  .pill,.more::after{ transition:none !important }
}

/* 要点小标题（介于 h3 与正文之间，用于三栏要点） */
.pts__t{ font-size:clamp(19px,2vw,26px); font-weight:600; letter-spacing:-.012em; line-height:1.25 }
