/* ==========================================================================
   B体育赛场登录 — /assets/site.css
   共享外壳：reset / tokens / 中文排版 / 页头 / 页脚 / 通用组件
   ========================================================================== */

/* ---------- 1. Reset ---------- */
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body,h1,h2,h3,h4,h5,h6,p,ul,ol,li,figure,blockquote,dl,dd{margin:0;padding:0}
ul,ol{list-style:none}
img,svg,video{display:block;max-width:100%;height:auto}
a{color:inherit;text-decoration:none}
button{font:inherit;color:inherit;background:none;border:0;cursor:pointer}
input,textarea,select{font:inherit}
hr{border:0}
table{border-collapse:collapse}

/* ---------- 2. Design tokens ---------- */
:root{
  /* 品牌色 */
  --ink:#08211B;          /* 夜场墨绿 */
  --ink-2:#0E3129;        /* 看台深绿 */
  --ink-3:#17503F;        /* 草皮绿 */
  --lime:#C8FF3E;         /* 荧光青柠 */
  --lime-soft:#E4FF9B;    /* 青柠浅影 */
  --amber:#F5A623;        /* 琥珀高亮 */
  --paper:#F7F4EA;        /* 暖白 */
  --char:#131A17;         /* 炭黑 */
  --mist:#A9C3B8;         /* 雾青 */
  --moss:#4F6659;         /* 苔绿 */

  --line:rgba(169,195,184,.32);
  --line-soft:rgba(169,195,184,.18);
  --line-dark:rgba(19,26,23,.16);
  --lime-line:rgba(200,255,62,.30);

  /* 形状 */
  --r-xs:4px;
  --r-md:14px;
  --r-pill:999px;

  /* 字号阶梯 */
  --fs-12:12px;
  --fs-14:14px;
  --fs-17:17px;
  --fs-22:22px;
  --fs-30:30px;
  --fs-44:44px;
  --fs-64:64px;
  --fs-84:84px;

  /* 字体 */
  --font-sans:"PingFang SC","Hiragino Sans GB","Source Han Sans SC","Noto Sans SC","Microsoft YaHei",system-ui,-apple-system,"Segoe UI",sans-serif;
  --font-mono:"Roboto Mono",ui-monospace,SFMono-Regular,"SF Mono",Menlo,Consolas,"Liberation Mono",monospace;

  --wrap:1280px;
  --gutter:clamp(16px,4vw,48px);
  --shadow-1:0 20px 44px rgba(4,16,13,.42);
}

/* ---------- 3. 基础排版 ---------- */
body{
  font-family:var(--font-sans);
  font-size:var(--fs-17);
  line-height:1.85;
  letter-spacing:.01em;
  background-color:var(--ink);
  color:var(--paper);
  min-height:100vh;
  overflow-x:hidden;
}
h1,h2,h3,h4{font-weight:900;line-height:1.08;letter-spacing:-.02em;font-stretch:95%}
h1{font-size:clamp(34px,6vw,64px)}
h2{font-size:clamp(26px,4.2vw,44px)}
h3{font-size:clamp(20px,2.6vw,30px)}
h4{font-size:var(--fs-22);letter-spacing:0}
p{max-width:68ch}
strong{font-weight:800;color:var(--lime)}
::selection{background:var(--lime);color:var(--char)}

.num,.data-card__value,.entry__no,.footer-contact__val,.footer-bottom__icp{
  font-family:var(--font-mono);
  font-variant-numeric:tabular-nums;
  font-feature-settings:"tnum" 1;
}

.lede{font-size:clamp(17px,2vw,22px);line-height:1.8;color:var(--mist);max-width:34ch}
.note{font-size:var(--fs-12);letter-spacing:.08em;color:var(--mist);line-height:1.7}

/* ---------- 4. 焦点与无障碍 ---------- */
:focus-visible{
  outline:2px solid var(--lime);
  outline-offset:3px;
  border-radius:2px;
}
.skip-link{
  position:absolute;
  left:50%;
  top:10px;
  transform:translate(-50%,-180%);
  z-index:200;
  display:inline-block;
  padding:10px 20px;
  border-radius:var(--r-xs);
  background:var(--lime);
  color:var(--char);
  font-size:var(--fs-14);
  font-weight:800;
  letter-spacing:.06em;
  transition:transform 180ms ease;
}
.skip-link:focus,.skip-link:focus-visible{transform:translate(-50%,0)}
.visually-hidden{
  position:absolute;width:1px;height:1px;margin:-1px;padding:0;
  overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0;
}

/* ---------- 5. 布局原语 ---------- */
.container{
  width:100%;
  max-width:var(--wrap);
  margin-inline:auto;
  padding-inline:var(--gutter);
}
.section{padding-block:clamp(48px,7vw,96px)}
.section--tight{padding-block:clamp(28px,4vw,52px)}
.section--paper{background:var(--paper);color:var(--char)}
.section--paper .lede{color:var(--moss)}
.section--paper .note{color:var(--moss)}
.section--paper strong{color:var(--ink-3)}
.section--paper .annotation{color:var(--ink-3)}
.section--paper .annotation::before{background:var(--ink-3)}
.section--paper .card{background:#FFFFFF;border-color:var(--line-dark);color:var(--char)}
.section--paper .card:hover{border-color:var(--ink-3)}
.section--paper .entry{border-color:var(--line-dark)}
.section--paper .entry__no{color:var(--ink-3)}
.section--paper .entry__desc,
.section--paper .entry__meta{color:var(--moss)}
.section--paper .data-card__note{color:var(--mist)}

.grid{display:grid;gap:clamp(20px,3vw,40px)}
.grid--8-4{grid-template-columns:minmax(0,2fr) minmax(0,1fr)}
.grid--7-5{grid-template-columns:minmax(0,7fr) minmax(0,5fr)}
@media (max-width:899px){
  .grid--8-4,.grid--7-5{grid-template-columns:minmax(0,1fr)}
}

/* ---------- 6. 通用组件 ---------- */
.annotation{
  display:inline-flex;
  align-items:center;
  gap:8px;
  font-size:var(--fs-12);
  letter-spacing:.26em;
  color:var(--lime);
  line-height:1.4;
}
.annotation::before{content:"";width:22px;height:1px;background:var(--lime);flex:none}
.annotation--tilt{transform:rotate(-4deg);transform-origin:left center}

.btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  min-height:44px;
  padding:0 22px;
  border:1px solid transparent;
  border-radius:var(--r-xs);
  font-size:var(--fs-14);
  font-weight:800;
  letter-spacing:.08em;
  line-height:1;
  text-align:center;
  transition:background-color 180ms ease,color 180ms ease,border-color 180ms ease,transform 180ms ease;
}
.btn--lime{background:var(--lime);color:var(--char);border-color:var(--lime)}
.btn--lime:hover{background:var(--lime-soft);border-color:var(--lime-soft);transform:translateY(-1px)}
.btn--ghost{background:transparent;color:var(--paper);border-color:var(--line)}
.btn--ghost:hover{border-color:var(--lime);color:var(--lime)}
.section--paper .btn--ghost{color:var(--char);border-color:var(--line-dark)}
.section--paper .btn--ghost:hover{color:var(--ink-3);border-color:var(--ink-3)}
.btn--block{width:100%}

.card{
  background:var(--ink-2);
  border:1px solid var(--line);
  border-radius:var(--r-md);
  padding:clamp(18px,2.6vw,28px);
  transition:border-color 200ms ease,transform 200ms ease;
}
.card:hover{border-color:var(--lime);transform:translateY(-2px)}

.data-card{
  background:var(--ink-2);
  border:1px solid var(--line);
  border-radius:var(--r-xs);
  padding:18px 20px;
  display:grid;
  gap:6px;
  transition:border-color 200ms ease,transform 200ms ease;
}
.data-card:hover{border-color:var(--lime);transform:translateY(-2px)}
.data-card__label{font-size:var(--fs-12);letter-spacing:.2em;color:var(--mist)}
.data-card__value{
  font-size:clamp(30px,4vw,44px);
  font-weight:700;
  line-height:1.05;
  letter-spacing:-.02em;
  color:var(--lime);
}
.data-card__note{font-size:var(--fs-12);line-height:1.7;color:var(--mist)}
.data-card--amber .data-card__value{color:var(--amber)}

.entry{
  display:grid;
  grid-template-columns:auto minmax(0,1fr) auto;
  gap:6px 20px;
  align-items:baseline;
  padding:18px 0;
  border-bottom:1px solid var(--line);
  transition:border-color 200ms ease;
}
.entry:hover{border-bottom-color:var(--lime)}
.entry__no{font-size:var(--fs-12);letter-spacing:.12em;color:var(--lime)}
.entry__title{font-size:clamp(17px,2vw,22px);font-weight:800;letter-spacing:-.01em}
.entry__desc{grid-column:2 / -1;font-size:var(--fs-14);line-height:1.75;color:var(--mist);max-width:52ch}
.entry__meta{font-family:var(--font-mono);font-size:var(--fs-12);color:var(--mist);white-space:nowrap}

.chips{display:flex;flex-wrap:wrap;gap:8px}
.chip{
  display:inline-flex;
  align-items:center;
  min-height:34px;
  padding:0 14px;
  border:1px solid var(--line);
  border-radius:var(--r-pill);
  font-size:var(--fs-14);
  letter-spacing:.04em;
  color:var(--mist);
  transition:background-color 180ms ease,color 180ms ease,border-color 180ms ease;
}
.chip:hover{border-color:var(--lime);color:var(--paper)}
.chip.is-active,.chip[aria-pressed="true"]{
  background:var(--lime);
  border-color:var(--lime);
  color:var(--char);
  font-weight:800;
}
.section--paper .chip{color:var(--moss);border-color:var(--line-dark)}
.section--paper .chip:hover{color:var(--char);border-color:var(--ink-3)}
.section--paper .chip.is-active,.section--paper .chip[aria-pressed="true"]{color:var(--char);border-color:var(--lime)}

/* 折叠组 */
.accordion{border-top:1px solid var(--line)}
.accordion__item{border-bottom:1px solid var(--line)}
.accordion__button{
  display:flex;
  width:100%;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  padding:18px 2px;
  font-size:var(--fs-17);
  font-weight:800;
  line-height:1.5;
  text-align:left;
  color:var(--paper);
  transition:color 180ms ease;
}
.accordion__button:hover{color:var(--lime)}
.accordion__sign{
  position:relative;
  flex:none;
  width:16px;
  height:16px;
  transition:transform 260ms ease;
}
.accordion__sign::before,
.accordion__sign::after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  top:50%;
  height:2px;
  background:var(--lime);
  transform:translateY(-50%);
}
.accordion__sign::after{transform:translateY(-50%) rotate(90deg);transition:transform 260ms ease}
.accordion__item[data-open] .accordion__sign{transform:rotate(180deg)}
.accordion__item[data-open] .accordion__sign::after{transform:translateY(-50%) rotate(0deg)}
.accordion__panel{
  display:grid;
  grid-template-rows:0fr;
  transition:grid-template-rows 260ms ease;
}
.accordion__panel-inner{
  overflow:hidden;
  min-height:0;
  visibility:hidden;
  transition:visibility 0s linear 260ms;
  padding:0 2px;
}
.accordion__panel-inner > *{padding-bottom:20px}
.accordion__item[data-open] .accordion__panel{grid-template-rows:1fr}
.accordion__item[data-open] .accordion__panel-inner{visibility:visible;transition-delay:0s}
.section--paper .accordion,
.section--paper .accordion__item{border-color:var(--line-dark)}
.section--paper .accordion__button{color:var(--char)}
.section--paper .accordion__button:hover{color:var(--ink-3)}

/* 时间线 */
.timeline{position:relative;display:grid;gap:24px;padding-left:26px}
.timeline::before{
  content:"";
  position:absolute;
  left:6px;
  top:8px;
  bottom:8px;
  width:2px;
  background:var(--ink-3);
}
.timeline__item{position:relative}
.timeline__item::before{
  content:"";
  position:absolute;
  left:-25px;
  top:8px;
  width:10px;
  height:10px;
  border-radius:50%;
  background:var(--lime);
  box-shadow:0 0 0 4px rgba(200,255,62,.14);
}
.timeline__time{font-family:var(--font-mono);font-size:var(--fs-12);letter-spacing:.1em;color:var(--lime)}
.timeline__title{margin-top:4px;font-size:var(--fs-17);font-weight:800}
.timeline__desc{margin-top:4px;font-size:var(--fs-14);line-height:1.75;color:var(--mist);max-width:46ch}
.section--paper .timeline::before{background:var(--line-dark)}
.section--paper .timeline__time{color:var(--ink-3)}
.section--paper .timeline__desc{color:var(--moss)}

/* 左右对照 */
.compare{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
.compare__col{padding:0 clamp(16px,3vw,32px)}
.compare__col:first-child{padding-left:0}
.compare__col:last-child{padding-right:0;border-left:1px solid var(--line)}
.compare__diff{
  display:inline-block;
  padding:0 5px;
  border-radius:2px;
  background:rgba(245,166,35,.18);
  color:var(--amber);
  font-weight:800;
}
@media (max-width:699px){
  .compare{grid-template-columns:minmax(0,1fr)}
  .compare__col{padding:0 0 20px}
  .compare__col:last-child{border-left:0;border-top:1px solid var(--line);padding-top:20px;padding-bottom:0}
}

/* 图片容器（供页面阶段放置占位图） */
.media-frame{
  position:relative;
  overflow:hidden;
  border-radius:var(--r-md);
  border:1px solid var(--line);
  background:var(--ink-2);
  transition:border-color 200ms ease;
}
.media-frame:hover{border-color:var(--lime)}
.media-frame img{width:100%;height:100%;object-fit:cover;object-position:center}
.media-frame--slant{
  border-radius:0;
  clip-path:polygon(0 0,100% 0,100% calc(100% - 44px),calc(100% - 44px) 100%,0 100%);
}
.media-frame--ratio-wide{aspect-ratio:21 / 9}
.media-frame--ratio-std{aspect-ratio:16 / 9}
.media-frame--ratio-tall{aspect-ratio:4 / 5}
.media-frame__caption{
  position:absolute;
  inset:auto 0 0 0;
  padding:16px;
  font-size:var(--fs-12);
  letter-spacing:.1em;
  color:var(--paper);
  background:linear-gradient(to top,rgba(8,33,27,.92),rgba(8,33,27,0));
}

/* 面包屑 */
.breadcrumbs{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:8px;
  font-size:var(--fs-12);
  letter-spacing:.1em;
  color:var(--moss);
}
.breadcrumbs__link{color:inherit;border-bottom:1px solid transparent;transition:color 180ms ease,border-color 180ms ease}
.breadcrumbs__link:hover{color:var(--ink-3);border-bottom-color:var(--ink-3)}
.breadcrumbs__sep{color:var(--mist)}
.breadcrumbs__current{color:var(--char);font-weight:700}
.section--paper .breadcrumbs{color:var(--moss)}

/* ---------- 7. 页头 ---------- */
.site-header{
  position:sticky;
  top:0;
  z-index:90;
  background-color:var(--ink);
  background-image:
    repeating-linear-gradient(112deg,rgba(169,195,184,.07) 0 1px,transparent 1px 28px),
    radial-gradient(120% 160% at 78% -40%,rgba(23,80,63,.75) 0%,rgba(8,33,27,0) 62%);
  color:var(--paper);
  border-bottom:1px solid var(--lime-line);
  transition:box-shadow 220ms ease,background-color 220ms ease;
}
.site-header[data-condensed]{box-shadow:0 14px 34px rgba(3,12,10,.5)}

.header-shell{
  width:100%;
  max-width:var(--wrap);
  margin-inline:auto;
  padding:14px var(--gutter) 0;
  display:grid;
  grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);
  grid-template-areas:
    "season brand actions"
    "nav nav nav";
  align-items:center;
  column-gap:clamp(10px,2vw,24px);
  transition:padding 220ms ease;
}

.masthead__season{
  grid-area:season;
  justify-self:start;
  display:inline-flex;
  align-items:center;
  gap:8px;
  writing-mode:vertical-rl;
  text-orientation:mixed;
  font-size:var(--fs-12);
  letter-spacing:.34em;
  color:var(--mist);
  line-height:1;
  max-height:56px;
}
.masthead__season-dot{
  display:block;
  width:6px;
  height:6px;
  border-radius:50%;
  background:var(--lime);
  box-shadow:0 0 0 3px rgba(200,255,62,.16);
}

.masthead__brand{
  grid-area:brand;
  justify-self:center;
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:4px;
  text-align:center;
  min-width:0;
}
.masthead__brand-name{
  font-size:clamp(19px,2.3vw,26px);
  font-weight:900;
  letter-spacing:.04em;
  line-height:1.15;
  font-stretch:92%;
  color:var(--paper);
  transition:font-size 220ms ease;
}
.masthead__brand:hover .masthead__brand-name{color:var(--lime-soft)}
.masthead__brand-sub{
  font-family:var(--font-mono);
  font-size:10px;
  letter-spacing:.28em;
  color:var(--mist);
  white-space:nowrap;
}

.masthead__actions{
  grid-area:actions;
  justify-self:end;
  display:flex;
  align-items:center;
  gap:10px;
}

/* 移动导航按钮 */
.nav-toggle{
  grid-area:toggle;
  display:none;
  width:44px;
  height:40px;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:5px;
  border:1px solid var(--line);
  border-radius:var(--r-xs);
  background:rgba(14,49,41,.6);
  transition:border-color 180ms ease;
}
.nav-toggle:hover{border-color:var(--lime)}
.nav-toggle__bar{
  display:block;
  width:18px;
  height:2px;
  background:var(--lime);
  transition:transform 220ms ease,opacity 180ms ease;
}
.nav-toggle[aria-expanded="true"] .nav-toggle__bar:nth-child(1){transform:translateY(7px) rotate(45deg)}
.nav-toggle[aria-expanded="true"] .nav-toggle__bar:nth-child(2){opacity:0}
.nav-toggle[aria-expanded="true"] .nav-toggle__bar:nth-child(3){transform:translateY(-7px) rotate(-45deg)}

/* 栏目导航 */
.primary-nav{
  grid-area:nav;
  margin-top:12px;
  border-top:1px solid var(--line-soft);
}
.primary-nav__list{
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  align-items:center;
  gap:clamp(10px,2.4vw,34px);
  padding:10px 0 12px;
  visibility:visible;
}
.primary-nav__item{display:block}
.primary-nav__link{
  position:relative;
  display:inline-block;
  padding:6px 2px;
  font-size:var(--fs-14);
  letter-spacing:.08em;
  color:rgba(247,244,234,.78);
  transition:color 180ms ease;
}
.primary-nav__link:hover{color:var(--lime)}
.primary-nav__link[aria-current="page"]{color:var(--paper);font-weight:700}
.primary-nav__link[aria-current="page"]::after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:0;
  height:2px;
  background:var(--lime);
}

/* 阅读进度轨 */
.scroll-rail{
  height:2px;
  width:100%;
  background:rgba(169,195,184,.14);
}
.scroll-rail__bar{
  display:block;
  height:100%;
  width:100%;
  background:var(--lime);
  transform:scaleX(0);
  transform-origin:0 50%;
  transition:transform 120ms linear;
}

/* 页头：桌面端收缩为单行 */
@media (min-width:900px){
  .site-header[data-condensed] .header-shell{
    grid-template-columns:auto minmax(0,1fr) auto;
    grid-template-areas:"brand nav actions";
    padding-top:8px;
    padding-bottom:8px;
    column-gap:clamp(16px,3vw,40px);
  }
  .site-header[data-condensed] .masthead__season{display:none}
  .site-header[data-condensed] .masthead__brand{justify-self:start;align-items:flex-start;text-align:left}
  .site-header[data-condensed] .masthead__brand-name{font-size:var(--fs-17)}
  .site-header[data-condensed] .masthead__brand-sub{display:none}
  .site-header[data-condensed] .primary-nav{margin-top:0;border-top:0}
  .site-header[data-condensed] .primary-nav__list{padding:0;gap:clamp(10px,2vw,26px)}
  .site-header[data-condensed] .primary-nav__link{font-size:var(--fs-12);padding:8px 2px}
  .site-header[data-condensed] .masthead__actions .btn{min-height:36px;padding:0 16px;font-size:var(--fs-12)}
}

/* 页头：手机与平板 */
@media (max-width:899px){
  .header-shell{
    grid-template-columns:minmax(0,1fr) auto auto;
    grid-template-areas:
      "brand actions toggle"
      "nav nav nav";
    padding-top:10px;
    column-gap:10px;
  }
  .masthead__season{display:none}
  .masthead__brand{justify-self:start;align-items:flex-start;text-align:left}
  .masthead__brand-name{font-size:16px;letter-spacing:.02em}
  .masthead__brand-sub{display:none}
  .masthead__actions{justify-self:end}
  .masthead__actions .btn{min-height:38px;padding:0 14px;font-size:var(--fs-12);letter-spacing:.04em}
  .nav-toggle{display:inline-flex}

  .primary-nav{
    margin-top:10px;
    border-top:1px solid var(--line-soft);
    display:grid;
    grid-template-rows:0fr;
    transition:grid-template-rows 260ms ease;
  }
  .primary-nav__list{
    flex-direction:column;
    flex-wrap:nowrap;
    align-items:stretch;
    gap:0;
    padding:0;
    overflow:hidden;
    min-height:0;
    visibility:hidden;
    transition:visibility 0s linear 260ms;
  }
  .primary-nav__item{border-bottom:1px solid var(--line-soft)}
  .primary-nav__item:last-child{border-bottom:0}
  .primary-nav__link{display:block;padding:14px 4px;font-size:var(--fs-17)}
  .primary-nav__link[aria-current="page"]::after{left:4px;right:auto;width:24px;bottom:10px}
  .primary-nav[data-open]{grid-template-rows:1fr}
  .primary-nav[data-open] .primary-nav__list{visibility:visible;transition-delay:0s}
  body.nav-open{overflow:hidden}
}

/* ---------- 8. 页脚 ---------- */
.site-footer{
  position:relative;
  background-color:var(--ink-2);
  background-image:
    repeating-linear-gradient(112deg,rgba(169,195,184,.06) 0 1px,transparent 1px 30px),
    radial-gradient(90% 120% at 12% 0%,rgba(23,80,63,.55) 0%,rgba(14,49,41,0) 60%);
  color:var(--paper);
  border-top:1px solid var(--lime-line);
}
.footer-shell{
  width:100%;
  max-width:var(--wrap);
  margin-inline:auto;
  padding:clamp(36px,6vw,72px) var(--gutter) 0;
}
.footer-grid{
  display:grid;
  grid-template-columns:1.25fr 1fr 1.15fr;
  gap:clamp(28px,4vw,64px);
}
.footer-brand__name{
  font-size:clamp(20px,2.4vw,26px);
  font-weight:900;
  letter-spacing:.04em;
  line-height:1.2;
  font-stretch:92%;
}
.footer-brand__rule{
  display:block;
  width:52px;
  height:3px;
  margin:14px 0;
  background:var(--lime);
}
.footer-brand__desc{
  font-size:var(--fs-14);
  line-height:1.8;
  color:var(--mist);
  max-width:26ch;
}
.footer-col__title{
  display:flex;
  align-items:center;
  gap:8px;
  margin-bottom:16px;
  font-size:var(--fs-12);
  font-weight:700;
  letter-spacing:.3em;
  color:var(--lime);
}
.footer-col__title::before{content:"";width:6px;height:6px;background:var(--lime)}
.footer-links{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:8px 18px;
}
.footer-links--legal{
  margin-top:14px;
  padding-top:14px;
  border-top:1px solid var(--line-soft);
}
.footer-link{
  display:inline-block;
  padding:3px 0;
  font-size:var(--fs-14);
  color:rgba(247,244,234,.82);
  border-bottom:1px solid transparent;
  transition:color 180ms ease,border-color 180ms ease;
}
.footer-link:hover{color:var(--lime);border-bottom-color:var(--lime)}
.footer-contact{display:grid;gap:10px}
.footer-contact__item{
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  gap:12px;
  align-items:baseline;
}
.footer-contact__key{
  font-size:var(--fs-12);
  letter-spacing:.18em;
  color:var(--mist);
  white-space:nowrap;
}
.footer-contact__val{
  font-size:var(--fs-12);
  line-height:1.7;
  color:var(--paper);
  word-break:break-word;
}
.footer-contact__note{
  margin-top:14px;
  font-size:var(--fs-12);
  line-height:1.75;
  color:var(--mist);
  max-width:34ch;
}
.footer-bottom{
  margin-top:clamp(28px,5vw,56px);
  padding-block:18px 22px;
  border-top:1px solid var(--line-soft);
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  justify-content:space-between;
  gap:8px 24px;
  font-size:var(--fs-12);
  letter-spacing:.08em;
  color:var(--mist);
}
.footer-bottom__copy{max-width:none}
.footer-bottom__icp{color:var(--mist)}

@media (max-width:899px){
  .footer-grid{grid-template-columns:minmax(0,1fr);gap:32px}
  .footer-brand__desc{max-width:none}
  .footer-bottom{justify-content:flex-start}
}

/* ---------- 9. 滚动显现 ---------- */
.js-reveal [data-reveal]{
  opacity:0;
  transform:translateY(16px);
  transition:opacity 400ms ease,transform 400ms ease;
}
.js-reveal [data-reveal].is-visible{opacity:1;transform:none}

/* ---------- 10. 动效降级 ---------- */
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{
    animation-duration:.001ms !important;
    animation-iteration-count:1 !important;
    transition-duration:.001ms !important;
    scroll-behavior:auto !important;
  }
  .scroll-rail__bar{transition:none}
  .js-reveal [data-reveal]{opacity:1;transform:none}
  .accordion__panel{transition:none}
  .primary-nav{transition:none}
}
