/* =========================================================
   royal-tiyu-hg.com.cn — 共享外壳样式 /assets/site.css
   轨道书脊 + 象牙白阅读面 + 深墨蓝数据区
   ========================================================= */

/* ---------- 1. 设计令牌 ---------- */
:root{
  --red:#8C1D33;
  --red-deep:#5E0F21;
  --red-ink:#3A0A15;
  --gold:#C9A227;
  --gold-light:#E7CE7A;
  --ink:#0F1E36;
  --ink-mid:#1D3357;
  --ivory:#F7F2E7;
  --jade:#2C8C86;
  --jade-light:#CFE6E3;
  --black:#1A161C;
  --muted:#6B6470;
  --line:rgba(26,22,28,.12);
  --line-gold:rgba(201,162,39,.42);
  --rail-w:88px;
  --r-card:28px;
  --r-pill:999px;
  --gutter:clamp(1.25rem,4vw,3rem);
  --shadow-card:0 22px 48px -30px rgba(94,15,33,.55);
  --ease:cubic-bezier(.22,1,.36,1);
  --font-display:"Noto Serif SC","Source Han Serif SC","Songti SC","STSong",serif;
  --font-body:"Noto Sans SC","Source Han Sans SC","PingFang SC","Hiragino Sans GB","Microsoft YaHei",sans-serif;
  --font-mono:"JetBrains Mono","Roboto Mono",ui-monospace,"SFMono-Regular",Menlo,Consolas,monospace;
}

/* ---------- 2. Reset ---------- */
*,*::before,*::after{box-sizing:border-box;}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:96px;}
body,h1,h2,h3,h4,p,ul,ol,figure,blockquote,dl,dd{margin:0;}
ul,ol{padding:0;list-style:none;}
img,svg{max-width:100%;display:block;}
button,input,select,textarea{font:inherit;color:inherit;}
button{background:none;border:0;}
a{color:inherit;text-decoration:none;}
table{border-collapse:collapse;width:100%;}
hr{border:0;border-top:1px solid var(--line);}

/* ---------- 3. 中文排版 ---------- */
body{
  font-family:var(--font-body);
  font-size:16px;
  line-height:1.7;
  color:var(--black);
  background-color:var(--ivory);
  background-image:linear-gradient(180deg,rgba(140,29,51,.06),rgba(140,29,51,0) 340px);
  -webkit-font-smoothing:antialiased;
}
h1,h2,h3,h4{
  font-family:var(--font-display);
  font-weight:700;
  line-height:1.16;
  letter-spacing:-.01em;
  color:var(--red-ink);
}
h1{font-weight:900;font-size:clamp(2.75rem,7vw,6rem);line-height:1.02;letter-spacing:-.02em;}
h2{font-size:clamp(1.55rem,3.1vw,2.3rem);}
h3{font-size:clamp(1.15rem,2vw,1.45rem);}
p{max-width:68ch;}
strong{font-weight:700;}
.mono{font-family:var(--font-mono);font-variant-numeric:tabular-nums;}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0;}
:focus-visible{outline:2px solid var(--gold);outline-offset:3px;border-radius:6px;}

/* ---------- 4. 布局工具 ---------- */
.container{width:min(100% - 2.5rem,1180px);margin-inline:auto;}
.section{padding-block:clamp(56px,8vw,96px);}
.section--tight{padding-block:clamp(36px,5vw,64px);}
.band{position:relative;padding-block:clamp(56px,8vw,96px);}
.band--dark{background:var(--ink);color:var(--ivory);}
.band--dark h2,.band--dark h3,.band--dark h1{color:var(--ivory);}
.band--red{background:linear-gradient(150deg,var(--red),var(--red-deep));color:var(--ivory);}
.band--red h1,.band--red h2,.band--red h3{color:var(--gold-light);}
.band--ivory{background:var(--ivory);}

.grid{display:grid;gap:clamp(1.25rem,2.4vw,1.75rem);}
.grid--3{grid-template-columns:1fr;}
.grid--12{grid-template-columns:repeat(12,minmax(0,1fr));}
.grid--split{grid-template-columns:1fr;}
.grid--reverse{grid-template-columns:1fr;}
.span-4,.span-5,.span-6,.span-7,.span-8{grid-column:span 12;}

.breadcrumb{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;font-family:var(--font-mono);font-size:.78rem;letter-spacing:.06em;color:var(--muted);}
.breadcrumb li{display:flex;align-items:center;gap:.5rem;}
.breadcrumb li+li::before{content:"/";color:var(--gold);}
.breadcrumb a:hover{color:var(--red);}

/* ---------- 5. 按钮 / 胶囊 / 标签 ---------- */
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:.5rem;
  padding:.78rem 1.5rem;
  font-family:var(--font-body);font-size:.95rem;font-weight:600;letter-spacing:.04em;
  border:1px solid transparent;border-radius:var(--r-pill);
  cursor:pointer;
  transition:background-color .3s var(--ease),color .3s var(--ease),border-color .3s var(--ease),transform .3s var(--ease);
}
.btn--gold{background:var(--gold);color:var(--black);}
.btn--gold:hover{background:var(--gold-light);transform:translateY(-2px);}
.btn--red{background:var(--red);color:var(--ivory);}
.btn--red:hover{background:var(--red-deep);transform:translateY(-2px);}
.btn--ghost{border-color:var(--line-gold);color:var(--gold-light);background:transparent;}
.btn--ghost:hover{background:rgba(201,162,39,.16);color:var(--ivory);}
.btn--pill{border-radius:var(--r-pill);}

.pill{
  display:inline-flex;align-items:center;gap:.4rem;
  padding:.32rem .8rem;border-radius:var(--r-pill);
  font-family:var(--font-mono);font-size:.74rem;font-weight:500;letter-spacing:.06em;
  background:var(--jade-light);color:var(--black);
}
.pill--gold{background:rgba(201,162,39,.18);color:var(--red-deep);}
.pill--dark{background:var(--ink-mid);color:var(--gold-light);}

.chip{
  display:inline-flex;align-items:center;gap:.4rem;
  padding:.5rem 1.05rem;border:1px solid var(--line);border-radius:var(--r-pill);
  font-size:.9rem;color:var(--black);cursor:pointer;
  transition:background-color .28s var(--ease),color .28s var(--ease),border-color .28s var(--ease);
}
.chip:hover{border-color:var(--gold);color:var(--red);}
.chip[aria-pressed="true"],.chip.is-active{background:var(--red);border-color:var(--red);color:var(--ivory);}

.tab-list{display:flex;flex-wrap:wrap;gap:.35rem;padding:.35rem;border-radius:var(--r-pill);background:rgba(15,30,54,.08);}
.tab{padding:.5rem 1.05rem;border-radius:var(--r-pill);font-size:.9rem;color:var(--muted);cursor:pointer;transition:background-color .28s var(--ease),color .28s var(--ease);}
.tab[aria-selected="true"]{background:var(--ink);color:var(--ivory);}

/* ---------- 6. 标题 / 正文块 ---------- */
.eyebrow{
  display:flex;align-items:center;gap:.6rem;
  font-family:var(--font-mono);font-size:.72rem;font-weight:500;letter-spacing:.26em;
  text-transform:uppercase;color:var(--red);
}
.band--dark .eyebrow,.band--red .eyebrow{color:var(--gold-light);}
.section-title{position:relative;padding-left:.9rem;}
.section-title::before{content:"";position:absolute;left:0;top:.16em;width:4px;height:1.05em;border-radius:2px;background:var(--gold);}
.prose{max-width:68ch;font-size:1.0625rem;line-height:1.75;}
.prose p+p{margin-top:1.05em;}
.prose h2{margin-top:1.6em;margin-bottom:.5em;}
.prose h3{margin-top:1.3em;margin-bottom:.4em;}
.prose ul,.prose ol{margin-top:.8em;padding-left:1.2em;list-style:disc;}
.prose li+li{margin-top:.35em;}
.prose a{color:var(--red);text-decoration:underline;text-decoration-color:var(--gold);text-underline-offset:3px;}
.band--dark .prose,.band--dark .prose a{color:var(--ivory);}
.divider-crown{display:flex;align-items:center;gap:1rem;color:var(--gold);font-size:.9rem;}
.divider-crown::before,.divider-crown::after{content:"";flex:1;height:1px;background:linear-gradient(90deg,rgba(201,162,39,0),rgba(201,162,39,.7),rgba(201,162,39,0));}

/* ---------- 7. 卡片 / 面板 / 数据模块 ---------- */
.card{
  background:#fff;border:1px solid var(--line);border-radius:var(--r-card);
  padding:clamp(1.35rem,2.4vw,1.9rem);box-shadow:var(--shadow-card);
}
.panel{border-radius:var(--r-card);padding:clamp(1.4rem,2.6vw,2rem);background:#fff;border:1px solid var(--line);}
.panel--dark{background:var(--ink);border-color:transparent;color:rgba(247,242,231,.86);}
.panel--dark h3,.panel--dark h2{color:var(--ivory);}
.data-panel{
  background:var(--ink);color:var(--ivory);border-radius:var(--r-card);
  padding:clamp(1.4rem,2.6vw,2rem);
  background-image:repeating-linear-gradient(135deg,rgba(201,162,39,.07) 0 1px,transparent 1px 16px);
}
.data-panel--mid{background:var(--ink-mid);}
.data-panel h3{color:var(--gold-light);}
.data-panel p{color:rgba(247,242,231,.78);}
.stat{display:flex;flex-direction:column;gap:.25rem;}
.stat__value{font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-weight:700;font-size:clamp(1.5rem,2.8vw,2.1rem);line-height:1.1;color:var(--gold-light);}
.stat__label{font-size:.8rem;letter-spacing:.06em;color:rgba(247,242,231,.68);}
.heat{display:grid;grid-auto-flow:column;gap:3px;}
.heat__cell{height:10px;border-radius:3px;background:var(--jade-light);}
.heat__cell--high{background:var(--jade);}

/* ---------- 8. 时间线 / 图片位 ---------- */
.timeline{position:relative;padding-left:2.2rem;border-left:1px solid var(--line-gold);}
.timeline__item{position:relative;padding-block:.8rem;}
.timeline__node{
  position:absolute;left:calc(-2.2rem - 6px);top:1.15rem;
  width:12px;height:12px;border-radius:50%;
  background:var(--ivory);border:2px solid var(--gold);
}
.timeline__node--current{background:var(--gold);box-shadow:0 0 0 6px rgba(201,162,39,.2);}
.band--dark .timeline__node{background:var(--ink);}

.media-frame{
  position:relative;overflow:hidden;border-radius:var(--r-card);
  aspect-ratio:16/9;
  background:linear-gradient(140deg,var(--ink) 0%,var(--ink-mid) 45%,var(--red-deep) 100%);
}
.media-frame img{width:100%;height:100%;object-fit:cover;}
.media-frame--wide{aspect-ratio:21/9;}
.media-frame--square{aspect-ratio:1/1;}
.media-frame__caption{
  position:absolute;inset:auto 0 0 0;padding:.9rem 1.15rem;
  background:linear-gradient(180deg,rgba(15,30,54,0),rgba(15,30,54,.88));
  color:var(--ivory);font-size:.85rem;letter-spacing:.03em;
}

/* ---------- 9. FAQ ---------- */
.faq{background:#fff;border:1px solid var(--line);border-radius:var(--r-card);overflow:hidden;}
.faq__item{border-bottom:1px solid var(--line);}
.faq__item:last-child{border-bottom:0;}
.faq__q{
  display:block;padding:1.1rem 1.35rem;cursor:pointer;
  font-family:var(--font-display);font-weight:700;font-size:1.02rem;color:var(--red-ink);
  list-style:none;
}
.faq__q::-webkit-details-marker{display:none;}
.faq__q::after{content:"＋";float:right;color:var(--gold);font-family:var(--font-mono);}
.faq__item[open] .faq__q::after{content:"－";}
.faq__a{padding:0 1.35rem 1.25rem;color:var(--muted);font-size:.96rem;}

/* ---------- 10. Skip link ---------- */
.skip-link{
  position:fixed;top:.75rem;left:.75rem;z-index:200;
  padding:.7rem 1.2rem;border-radius:var(--r-pill);
  background:var(--gold);color:var(--black);font-weight:700;
  transform:translateY(-220%);
  transition:transform .3s var(--ease);
}
.skip-link:focus{transform:translateY(0);}

/* ---------- 11. 头部：轨道书脊 + 移动抽屉 ---------- */
.site-header{position:fixed;inset:0 auto 0 0;width:var(--rail-w);z-index:90;}
.rail{
  position:relative;height:100%;height:100dvh;
  display:flex;flex-direction:column;align-items:center;gap:1.15rem;
  padding:1.15rem .6rem 1.35rem;
  background:linear-gradient(180deg,var(--red) 0%,var(--red-deep) 58%,var(--red-ink) 100%);
  border-right:1px solid var(--line-gold);
  overflow-y:auto;overflow-x:hidden;scrollbar-width:none;
}
.rail::-webkit-scrollbar{display:none;}
.rail__brand{display:flex;flex-direction:column;align-items:center;gap:.6rem;text-align:center;}
.rail__crown{
  width:30px;height:22px;background:var(--gold-light);
  clip-path:polygon(0% 100%,0% 26%,18% 54%,34% 6%,50% 46%,66% 6%,82% 54%,100% 26%,100% 100%);
}
.rail__brand-name{
  writing-mode:vertical-rl;font-family:var(--font-display);font-weight:900;
  font-size:1.05rem;letter-spacing:.18em;color:var(--gold-light);
}
.rail__brand-sub{
  writing-mode:vertical-rl;font-family:var(--font-mono);
  font-size:.56rem;letter-spacing:.14em;color:rgba(247,242,231,.62);
}
.rail__nav{flex:1 1 auto;display:flex;align-items:center;justify-content:center;width:100%;}
.nav-list{display:flex;flex-direction:column;align-items:center;gap:.1rem;width:100%;}
.nav-link{
  position:relative;display:block;
  writing-mode:vertical-rl;
  padding:.7rem .32rem;border-radius:var(--r-pill);
  font-size:.82rem;letter-spacing:.14em;color:rgba(247,242,231,.8);
  transition:color .3s var(--ease),background-color .3s var(--ease);
}
.nav-link:hover{color:var(--ivory);background:rgba(247,242,231,.1);}
.nav-link[aria-current="page"]{color:var(--gold-light);background:rgba(201,162,39,.16);}
.nav-link[aria-current="page"]::before{
  content:"";position:absolute;left:-3px;top:50%;transform:translateY(-50%);
  width:3px;height:20px;border-radius:2px;background:var(--gold);
}
.rail__actions{display:flex;flex-direction:column;align-items:center;gap:.5rem;width:100%;}
.rail__actions .btn{
  writing-mode:vertical-rl;
  padding:.75rem .48rem;font-size:.78rem;letter-spacing:.14em;
  border-radius:var(--r-pill);
}

/* 移动端品牌条 + 抽屉按钮 */
.mobile-bar{
  display:flex;align-items:center;justify-content:space-between;gap:1rem;
  padding:.8rem 1.15rem;
  background:linear-gradient(120deg,var(--red),var(--red-deep));
  border-bottom:1px solid var(--line-gold);
}
.mobile-bar__brand{display:flex;flex-direction:column;gap:.1rem;}
.mobile-bar__brand-name{font-family:var(--font-display);font-weight:900;font-size:1.06rem;letter-spacing:.12em;color:var(--gold-light);}
.mobile-bar__brand-sub{font-family:var(--font-mono);font-size:.58rem;letter-spacing:.16em;color:rgba(247,242,231,.68);}
.nav-toggle{
  position:fixed;right:20px;bottom:20px;z-index:110;
  width:56px;height:56px;border-radius:50%;
  display:grid;place-items:center;
  background:var(--gold);box-shadow:0 14px 28px -14px rgba(15,30,54,.7);
  cursor:pointer;
  transition:background-color .3s var(--ease),transform .3s var(--ease);
}
.nav-toggle:hover{background:var(--gold-light);}
.nav-toggle__bars{display:flex;flex-direction:column;gap:5px;width:22px;}
.nav-toggle__bars span{display:block;height:2px;border-radius:2px;background:var(--ink);transition:transform .35s var(--ease),opacity .25s var(--ease);}
.nav-toggle__label{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;}
.site-header[data-open] .nav-toggle__bars span:nth-child(1){transform:translateY(7px) rotate(45deg);}
.site-header[data-open] .nav-toggle__bars span:nth-child(2){opacity:0;}
.site-header[data-open] .nav-toggle__bars span:nth-child(3){transform:translateY(-7px) rotate(-45deg);}
.nav-scrim{display:none;}
html.nav-open,html.nav-open body{overflow:hidden;}

/* ---------- 12. 页脚 ---------- */
.site-footer{
  position:relative;color:rgba(247,242,231,.84);
  background:var(--ink);
  border-top:3px solid var(--gold);
  overflow:hidden;
}
.site-footer::before{
  content:"";position:absolute;inset:0;pointer-events:none;
  background-image:
    radial-gradient(circle at 8% 0%,rgba(140,29,51,.55),rgba(140,29,51,0) 55%),
    repeating-linear-gradient(135deg,rgba(201,162,39,.07) 0 1px,transparent 1px 18px);
}
.footer__inner{
  position:relative;z-index:1;
  display:grid;gap:2.25rem;grid-template-columns:1fr;
  padding-block:clamp(3rem,6vw,4.5rem) 2rem;
}
.footer__crown{
  display:block;width:34px;height:24px;margin-bottom:.9rem;background:var(--gold-light);
  clip-path:polygon(0% 100%,0% 26%,18% 54%,34% 6%,50% 46%,66% 6%,82% 54%,100% 26%,100% 100%);
}
.footer__name{font-family:var(--font-display);font-weight:900;font-size:1.3rem;letter-spacing:.08em;color:var(--gold-light);}
.footer__tagline{margin-top:.55rem;font-family:var(--font-mono);font-size:.78rem;letter-spacing:.08em;color:rgba(247,242,231,.66);max-width:34ch;}
.footer__contact{margin-top:1rem;font-size:.85rem;line-height:1.75;color:rgba(247,242,231,.7);max-width:44ch;}
.footer__cols{display:grid;gap:1.75rem;grid-template-columns:1fr;}
.footer__col-title{
  font-family:var(--font-mono);font-size:.72rem;letter-spacing:.22em;text-transform:uppercase;
  color:var(--gold);padding-bottom:.5rem;border-bottom:1px solid rgba(201,162,39,.25);
}
.footer__list{margin-top:.9rem;display:flex;flex-direction:column;gap:.5rem;}
.footer__link{font-size:.94rem;color:rgba(247,242,231,.82);transition:color .28s var(--ease),padding-left .28s var(--ease);}
.footer__link:hover{color:var(--gold-light);padding-left:4px;}
.footer__legal{
  display:flex;flex-wrap:wrap;gap:1.25rem;
  padding-top:1.5rem;border-top:1px solid rgba(201,162,39,.25);
}
.footer__legal-link{font-size:.86rem;color:rgba(247,242,231,.72);}
.footer__legal-link:hover{color:var(--gold-light);text-decoration:underline;text-underline-offset:4px;}
.footer__meta{
  display:flex;flex-wrap:wrap;justify-content:space-between;gap:.75rem;
  font-family:var(--font-mono);font-size:.76rem;letter-spacing:.04em;color:rgba(247,242,231,.58);
}
.footer__copyright{max-width:62ch;}

/* ---------- 13. 动效协议 ---------- */
html.js [data-reveal]{opacity:0;transform:translateY(18px);transition:opacity .48s var(--ease),transform .48s var(--ease);}
html.js [data-reveal].is-visible{opacity:1;transform:none;}
.scroll-progress{
  position:fixed;top:0;left:0;right:0;height:3px;width:auto;z-index:120;pointer-events:none;
  background:linear-gradient(90deg,var(--gold),var(--red));
  transform:scaleX(0);transform-origin:0 50%;
}
.to-top{
  position:fixed;right:1.5rem;bottom:6.75rem;z-index:105;
  width:44px;height:44px;border-radius:50%;
  display:grid;place-items:center;cursor:pointer;
  background:var(--ink);color:var(--gold-light);border:1px solid var(--line-gold);
  box-shadow:0 12px 24px -14px rgba(15,30,54,.8);
  transition:background-color .3s var(--ease),color .3s var(--ease);
}
.to-top:hover{background:var(--ink-mid);color:var(--ivory);}
.to-top[hidden]{display:none;}

/* ---------- 14. 平板 ---------- */
@media (min-width:768px){
  body{font-size:17px;line-height:1.75;}
  .grid--3{grid-template-columns:repeat(auto-fit,minmax(250px,1fr));}
  .footer__cols{grid-template-columns:repeat(3,minmax(0,1fr));gap:2rem;}
  .footer__inner{grid-template-columns:minmax(0,1fr) minmax(0,1fr);}
  .span-4{grid-column:span 6;}
  .span-5{grid-column:span 6;}
  .span-6{grid-column:span 6;}
  .span-7{grid-column:span 12;}
  .span-8{grid-column:span 12;}
}

/* ---------- 15. 桌面：固定轨道书脊 ---------- */
@media (min-width:1024px){
  body{padding-left:var(--rail-w);}
  .site-header{position:fixed;width:var(--rail-w);}
  .mobile-bar{display:none;}
  .nav-toggle{display:none;}
  .nav-scrim{display:none !important;}
  .scroll-progress{left:var(--rail-w);}
  .to-top{right:2rem;bottom:2rem;}
  .grid--split{grid-template-columns:minmax(0,7fr) minmax(0,5fr);}
  .grid--split.grid--reverse{grid-template-columns:minmax(0,5fr) minmax(0,7fr);}
  .span-4{grid-column:span 4;}
  .span-5{grid-column:span 5;}
  .span-6{grid-column:span 6;}
  .span-7{grid-column:span 7;}
  .span-8{grid-column:span 8;}
  .footer__inner{
    grid-template-columns:minmax(0,1.05fr) minmax(0,2fr);
    gap:3rem 4rem;
  }
  .footer__legal,.footer__meta{grid-column:1 / -1;}
}

/* ---------- 16. 移动端抽屉 ---------- */
@media (max-width:1023px){
  .site-header{position:sticky;top:0;width:100%;height:auto;}
  .rail{
    position:fixed;top:0;left:0;
    width:min(330px,86vw);height:100dvh;
    align-items:flex-start;gap:1.4rem;
    padding:1.5rem 1.25rem 2.25rem;
    background:linear-gradient(170deg,var(--red) 0%,var(--red-deep) 62%,var(--red-ink) 100%);
    border-right:1px solid var(--line-gold);
    box-shadow:0 0 70px rgba(15,30,54,.55);
    transform:translateX(-104%);
    visibility:hidden;
    transition:transform .45s var(--ease),visibility .45s linear;
    z-index:100;
  }
  .site-header[data-open] .rail{transform:none;visibility:visible;}
  .rail__brand{flex-direction:row;align-items:center;gap:.7rem;text-align:left;}
  .rail__crown{width:26px;height:19px;}
  .rail__brand-name{writing-mode:horizontal-tb;font-size:1.18rem;}
  .rail__brand-sub{writing-mode:horizontal-tb;font-size:.62rem;}
  .rail__nav{width:100%;justify-content:flex-start;margin-top:.35rem;}
  .nav-list{align-items:stretch;gap:.2rem;}
  .nav-link{
    writing-mode:horizontal-tb;
    padding:.85rem 1rem;border-radius:16px;font-size:1rem;letter-spacing:.08em;
  }
  .nav-link[aria-current="page"]{box-shadow:inset 3px 0 0 var(--gold);}
  .nav-link[aria-current="page"]::before{display:none;}
  .rail__actions{width:100%;margin-top:auto;}
  .rail__actions .btn{writing-mode:horizontal-tb;width:100%;padding:.9rem 1rem;font-size:.95rem;letter-spacing:.08em;}
  .nav-scrim{
    display:block;position:fixed;inset:0;z-index:95;
    background:rgba(26,22,28,.6);
    opacity:0;pointer-events:none;
    transition:opacity .3s var(--ease);
  }
  .site-header[data-open] .nav-scrim{opacity:1;pointer-events:auto;}
  .footer__inner{padding-bottom:6rem;}
}

@media (max-width:767px){
  :root{--r-card:20px;}
  .section,.band{padding-block:clamp(44px,10vw,64px);}
  h1{letter-spacing:-.01em;}
  .data-panel,.panel,.card{padding:1.35rem;}
}

/* ---------- 17. Reduced motion ---------- */
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto;scroll-padding-top:80px;}
  *,*::before,*::after{
    animation-duration:.001ms !important;
    animation-iteration-count:1 !important;
    transition-duration:.001ms !important;
  }
  html.js [data-reveal]{opacity:1;transform:none;}
  .btn:hover{transform:none;}
}
