.page-about {
  --ab-hair: rgba(244, 241, 234, .14);
  --ab-hair-2: rgba(244, 241, 234, .3);
  --ab-sans: var(--font-display);
  background: var(--ink);
  color: var(--paper);
}

/* ---------- 首屏 ---------- */
.page-about .ab-hero {
  padding: 18px 0 0;
}

.page-about .ab-hero__grid {
  display: grid;
  gap: 32px;
  padding: 20px 0 44px;
  border-bottom: 1px solid var(--ab-hair);
}

.page-about .ab-hero__title {
  margin: 14px 0 0;
  font-family: var(--font-display);
  font-size: clamp(34px, 8.6vw, 78px);
  line-height: 1.02;
  letter-spacing: -.005em;
}

.page-about .ab-hero__title::after {
  content: "";
  display: block;
  width: 72px;
  height: 6px;
  margin-top: 22px;
  background: linear-gradient(90deg, var(--rosso), var(--blue) 55%, var(--neon));
  transform: skewX(-14deg);
}

.page-about .ab-hero__lede {
  margin: 20px 0 0;
  max-width: 44ch;
  font-size: 17px;
  line-height: 1.8;
  color: var(--ash);
}

.page-about .ab-hero__facts {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1px;
  margin: 0;
  background: var(--ab-hair);
  border: 1px solid var(--ab-hair);
}

.page-about .ab-fact {
  background: var(--ink);
  padding: 16px 14px 18px;
}

.page-about .ab-fact dt {
  font-size: 11px;
  letter-spacing: .16em;
  color: var(--ash);
}

.page-about .ab-fact dd {
  margin: 8px 0 0;
  font-family: var(--font-mono);
  font-size: 28px;
  line-height: 1;
  letter-spacing: .02em;
  font-variant-numeric: tabular-nums;
  color: var(--neon);
}

/* ---------- 书脊时间线 ---------- */
.page-about .ab-spine {
  padding: 0 0 52px;
}

.page-about .ab-spine__inner {
  display: grid;
  gap: 30px;
}

.page-about .ab-spine__rail {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  gap: 0;
  overflow-x: auto;
  scrollbar-width: thin;
  border-top: 2px solid var(--ab-hair-2);
}

.page-about .ab-spine__node {
  position: relative;
  flex: 1 0 168px;
  padding: 18px 16px 0 0;
}

.page-about .ab-spine__node::before {
  content: "";
  position: absolute;
  top: -2px;
  left: 0;
  width: 24px;
  height: 2px;
  background: var(--rosso);
}

.page-about .ab-spine__year {
  display: block;
  font-family: var(--font-mono);
  font-size: 13px;
  letter-spacing: .08em;
  font-variant-numeric: tabular-nums;
  color: var(--gold);
}

.page-about .ab-spine__note {
  display: block;
  margin-top: 8px;
  font-size: 14px;
  line-height: 1.65;
  color: var(--ash);
}

.page-about .ab-spine__media {
  margin: 0;
}

/* ---------- 通用分区 ---------- */
.page-about .ab-band {
  position: relative;
  padding: 56px 0;
}

.page-about .ab-band--graphite { background: var(--graphite); }
.page-about .ab-band--wine {
  background: linear-gradient(158deg, #4d0c18 0%, var(--wine) 48%, #2a0710 100%);
}
.page-about .ab-band--blue {
  background: linear-gradient(150deg, #0d2040 0%, var(--blue-deep) 55%, #0a1730 100%);
}
.page-about .ab-band--teal {
  background: linear-gradient(150deg, var(--teal) 0%, #08241f 100%);
}
.page-about .ab-band--indigo {
  background: linear-gradient(150deg, #3b2a6b 0%, #201542 62%, #17102f 100%);
}

.page-about .ab-band--wine::before,
.page-about .ab-band--blue::before {
  content: "";
  position: absolute;
  inset: 0 0 auto 0;
  height: 4px;
  background: linear-gradient(90deg, var(--rosso) 0 33%, var(--blue) 33% 66%, var(--neon) 66% 100%);
}

.page-about .ab-head {
  max-width: 62ch;
  margin-bottom: 30px;
}

.page-about .ab-head__title {
  margin: 12px 0 0;
  font-family: var(--font-display);
  font-size: clamp(26px, 5vw, 42px);
  line-height: 1.14;
}

.page-about .ab-head__lede {
  margin: 14px 0 0;
  font-size: 16px;
  line-height: 1.8;
  color: var(--ash);
}

/* ---------- 我们是谁 ---------- */
.page-about .ab-about__grid {
  display: grid;
  gap: 28px;
}

.page-about .ab-about__body p {
  margin: 0 0 18px;
  max-width: 66ch;
  font-size: 17px;
  line-height: 1.85;
  color: var(--paper);
}

.page-about .ab-about__body p:last-child { margin-bottom: 0; }

.page-about .ab-about__list {
  list-style: none;
  margin: 0;
  padding: 0;
  border-top: 1px solid var(--ab-hair);
}

.page-about .ab-about__list li {
  display: flex;
  gap: 12px;
  padding: 14px 0;
  border-bottom: 1px solid var(--ab-hair);
  font-size: 15px;
  line-height: 1.7;
  color: var(--paper);
}

.page-about .ab-about__list li::before {
  content: "";
  flex: none;
  width: 6px;
  height: 6px;
  margin-top: 9px;
  background: var(--neon);
  transform: rotate(45deg);
}

/* ---------- 团队分工 ---------- */
.page-about .ab-roles {
  list-style: none;
  margin: 0;
  padding: 0;
  border-top: 1px solid var(--ab-hair);
}

.page-about .ab-role {
  display: grid;
  gap: 10px;
  padding: 24px 0 26px;
  border-bottom: 1px solid var(--ab-hair);
}

.page-about .ab-role__num {
  font-family: var(--font-mono);
  font-size: 14px;
  letter-spacing: .08em;
  font-variant-numeric: tabular-nums;
  color: var(--neon);
}

.page-about .ab-role__title {
  margin: 0;
  font-family: var(--font-display);
  font-size: 21px;
  line-height: 1.35;
}

.page-about .ab-role__text {
  margin: 0;
  max-width: 62ch;
  font-size: 16px;
  line-height: 1.8;
  color: var(--paper);
}

.page-about .ab-role__meta {
  margin: 0;
  font-family: var(--font-mono);
  font-size: 12px;
  letter-spacing: .12em;
  color: var(--ash);
}

/* ---------- 年龄段对比带 ---------- */
.page-about .ab-pano {
  overflow-x: auto;
  scroll-snap-type: x mandatory;
  padding-bottom: 8px;
  scrollbar-width: thin;
  scrollbar-color: var(--rosso) transparent;
}

.page-about .ab-pano__track {
  list-style: none;
  margin: 0;
  padding: 4px var(--gutter) 18px;
  display: flex;
  gap: 16px;
  width: max-content;
}

.page-about .ab-pano__card {
  scroll-snap-align: start;
  flex: 0 0 min(78vw, 300px);
  display: flex;
  flex-direction: column;
  gap: 12px;
  padding: 22px 20px 24px;
  background: rgba(11, 12, 15, .58);
  border: 1px solid var(--ab-hair);
  border-top: 3px solid var(--u, var(--neon));
  transition: transform var(--t-fast) var(--ease), border-color var(--t-fast) var(--ease);
}

.page-about .ab-pano__card:hover {
  transform: translateY(-4px);
  border-color: var(--ab-hair-2);
}

.page-about .ab-pano__card--u15 { --u: var(--neon); }
.page-about .ab-pano__card--u16 { --u: #5c8be8; }
.page-about .ab-pano__card--u17 { --u: var(--gold); }
.page-about .ab-pano__card--u18 { --u: #e23a55; }
.page-about .ab-pano__card--u19 { --u: #9b7bff; }

.page-about .ab-pano__age {
  margin: 0;
  font-family: var(--font-mono);
  font-size: 34px;
  line-height: 1;
  letter-spacing: .04em;
  font-variant-numeric: tabular-nums;
  color: var(--u, var(--neon));
}

.page-about .ab-pano__name {
  margin: 0;
  font-family: var(--font-display);
  font-size: 18px;
  line-height: 1.45;
}

.page-about .ab-pano__meta {
  margin: 0;
  display: grid;
  gap: 12px;
}

.page-about .ab-pano__meta dt {
  font-size: 11px;
  letter-spacing: .16em;
  color: var(--ash);
}

.page-about .ab-pano__meta dd {
  margin: 4px 0 0;
  font-size: 14px;
  line-height: 1.7;
  color: var(--paper);
}

/* ---------- 梯队档案 ---------- */
.page-about .ab-dossier__media {
  margin: 0 0 30px;
}

.page-about .ab-dossier {
  display: grid;
  gap: 24px;
}

.page-about .ab-dossier__list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.page-about .ab-dossier__link {
  display: block;
  padding: 10px 16px;
  border: 1px solid var(--ab-hair);
  font-family: var(--font-mono);
  font-size: 13px;
  letter-spacing: .1em;
  color: var(--paper);
  text-decoration: none;
  transition: background var(--t-fast) var(--ease), border-color var(--t-fast) var(--ease), color var(--t-fast) var(--ease);
}

.page-about .ab-dossier__link:hover,
.page-about .ab-dossier__link:focus-visible {
  background: var(--neon);
  border-color: var(--neon);
  color: var(--ink);
}

.page-about .ab-dossier__panels {
  display: grid;
  gap: 18px;
}

.page-about .ab-file {
  scroll-margin-top: 110px;
  padding: 24px 20px 26px;
  background: rgba(244, 241, 234, .045);
  border: 1px solid var(--ab-hair);
  border-left: 3px solid var(--u, var(--rosso));
  transition: background var(--t-base) var(--ease);
}

.page-about .ab-file:hover { background: rgba(244, 241, 234, .085); }

.page-about .ab-file--u15 { --u: var(--neon); }
.page-about .ab-file--u16 { --u: #5c8be8; }
.page-about .ab-file--u17 { --u: var(--gold); }
.page-about .ab-file--u18 { --u: #e23a55; }
.page-about .ab-file--u19 { --u: #9b7bff; }

.page-about .ab-file__head {
  display: flex;
  align-items: baseline;
  flex-wrap: wrap;
  gap: 12px;
  margin-bottom: 14px;
}

.page-about .ab-file__age {
  font-family: var(--font-mono);
  font-size: 26px;
  line-height: 1;
  letter-spacing: .06em;
  font-variant-numeric: tabular-nums;
  color: var(--u, var(--gold));
}

.page-about .ab-file__title {
  margin: 0;
  font-family: var(--font-display);
  font-size: 19px;
  line-height: 1.4;
}

.page-about .ab-file__grid {
  margin: 0;
  display: grid;
  gap: 0;
}

.page-about .ab-file__row {
  padding: 12px 0;
  border-top: 1px dashed var(--ab-hair);
}

.page-about .ab-file__row dt {
  margin-bottom: 6px;
  font-size: 11px;
  letter-spacing: .16em;
  color: var(--neon);
}

.page-about .ab-file__row dd {
  margin: 0;
  font-size: 15px;
  line-height: 1.75;
  color: var(--paper);
}

/* ---------- 成长曲线 ---------- */
.page-about .ab-chart {
  margin: 0;
}

.page-about .ab-chart svg {
  display: block;
  width: 100%;
  height: auto;
  overflow: visible;
}

.page-about .ab-chart__grid {
  stroke: rgba(244, 241, 234, .08);
  stroke-width: 1;
}

.page-about .ab-chart__axis {
  stroke: rgba(244, 241, 234, .24);
  stroke-width: 1;
}

.page-about .ab-chart__tick {
  fill: var(--ash);
  font-family: var(--font-mono);
  font-size: 13px;
  letter-spacing: .08em;
}

.page-about .ab-chart__line {
  fill: none;
  stroke-width: 2.5;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.page-about .ab-chart__line--time { stroke: var(--neon); }
.page-about .ab-chart__line--pass { stroke: #5c8be8; }
.page-about .ab-chart__line--duel { stroke: var(--gold); }

.page-about .ab-chart__node circle {
  fill: var(--ink);
  stroke-width: 2;
  transform-box: fill-box;
  transform-origin: center;
  transition: transform var(--t-fast) var(--ease);
}

.page-about .ab-chart__node--time circle { stroke: var(--neon); }
.page-about .ab-chart__node--pass circle { stroke: #5c8be8; }
.page-about .ab-chart__node--duel circle { stroke: var(--gold); }

.page-about .ab-chart__node:hover circle { transform: scale(1.7); }

.page-about .ab-legend {
  list-style: none;
  margin: 20px 0 0;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  gap: 10px 22px;
}

.page-about .ab-legend__item {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-size: 13px;
  letter-spacing: .06em;
  color: var(--paper);
}

.page-about .ab-legend__item::before {
  content: "";
  width: 16px;
  height: 3px;
  background: currentColor;
}

.page-about .ab-legend__item--time { color: var(--neon); }
.page-about .ab-legend__item--pass { color: #5c8be8; }
.page-about .ab-legend__item--duel { color: var(--gold); }

.page-about .ab-chart figcaption {
  margin-top: 16px;
  max-width: 76ch;
  font-size: 13px;
  line-height: 1.75;
  color: var(--ash);
}

.page-about .ab-curve__banner {
  margin: 40px 0 0;
}

/* ---------- 协作机构 ---------- */
.page-about .ab-partners {
  display: grid;
  gap: 28px;
}

.page-about .ab-partners__intro p {
  margin: 0 0 16px;
  max-width: 60ch;
  font-size: 16px;
  line-height: 1.85;
  color: var(--paper);
}

.page-about .ab-partners__intro .btn {
  margin-top: 6px;
}

.page-about .ab-partners__list {
  list-style: none;
  margin: 0;
  padding: 0;
  border-top: 1px solid var(--ab-hair);
}

.page-about .ab-partners__list li {
  position: relative;
  padding: 14px 0 14px 34px;
  border-bottom: 1px solid var(--ab-hair);
  font-size: 15px;
  line-height: 1.7;
  color: var(--paper);
}

.page-about .ab-partners__list li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 20px;
  width: 16px;
  height: 2px;
  background: var(--gold);
}

/* ---------- 三个赛季 ---------- */
.page-about .ab-seasons {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  gap: 18px;
}

.page-about .ab-season {
  padding: 24px 20px 26px;
  background: var(--ink);
  border: 1px solid var(--ab-hair);
  border-top: 3px solid var(--rosso);
  transition: transform var(--t-fast) var(--ease), border-color var(--t-fast) var(--ease);
}

.page-about .ab-season:hover {
  transform: translateY(-4px);
  border-color: var(--ab-hair-2);
}

.page-about .ab-season__tag {
  margin: 0;
  font-family: var(--font-mono);
  font-size: 11px;
  letter-spacing: .18em;
  color: var(--gold);
}

.page-about .ab-season__title {
  margin: 12px 0 16px;
  font-family: var(--font-display);
  font-size: 19px;
  line-height: 1.4;
}

.page-about .ab-season__list {
  list-style: none;
  margin: 0;
  padding: 0;
}

.page-about .ab-season__list li {
  position: relative;
  padding: 10px 0 10px 16px;
  border-top: 1px solid var(--ab-hair);
  font-size: 14px;
  line-height: 1.7;
  color: var(--ash);
}

.page-about .ab-season__list li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 18px;
  width: 6px;
  height: 1px;
  background: var(--neon);
}

.page-about .ab-tally {
  display: grid;
  gap: 1px;
  margin-top: 34px;
  background: var(--ab-hair);
  border: 1px solid var(--ab-hair);
}

.page-about .ab-tally__item {
  display: flex;
  flex-direction: column;
  gap: 8px;
  padding: 20px 18px;
  background: var(--ink);
}

.page-about .ab-tally__num {
  font-family: var(--font-mono);
  font-size: 26px;
  line-height: 1;
  letter-spacing: .02em;
  font-variant-numeric: tabular-nums;
  color: var(--neon);
}

.page-about .ab-tally__lab {
  font-size: 13px;
  line-height: 1.6;
  color: var(--ash);
}

/* ---------- 结尾指引 ---------- */
.page-about .ab-cta__inner {
  display: grid;
  gap: 24px;
}

.page-about .ab-cta__title {
  margin: 0;
  font-family: var(--font-display);
  font-size: clamp(24px, 4.6vw, 36px);
  line-height: 1.2;
}

.page-about .ab-cta__links {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}

/* ---------- 响应式 ---------- */
@media (min-width: 640px) {
  .page-about .ab-hero__facts { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  .page-about .ab-tally { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}

@media (min-width: 768px) {
  .page-about .ab-band { padding: 84px 0; }
  .page-about .ab-spine { padding-bottom: 72px; }
  .page-about .ab-spine__inner {
    grid-template-columns: 8fr 4fr;
    align-items: end;
    gap: 40px;
  }
  .page-about .ab-head { margin-bottom: 40px; }
}

@media (min-width: 900px) {
  .page-about .ab-hero__grid {
    grid-template-columns: 7fr 5fr;
    align-items: end;
    gap: 48px;
    padding-bottom: 56px;
  }
  .page-about .ab-about__grid {
    grid-template-columns: 7fr 5fr;
    gap: 52px;
  }
  .page-about .ab-role {
    grid-template-columns: 72px 200px minmax(0, 1fr);
    gap: 12px 24px;
    padding: 28px 0;
  }
  .page-about .ab-role__num { grid-column: 1; grid-row: 1; }
  .page-about .ab-role__title { grid-column: 2; grid-row: 1 / span 2; }
  .page-about .ab-role__text { grid-column: 3; grid-row: 1; }
  .page-about .ab-role__meta { grid-column: 3; grid-row: 2; }
  .page-about .ab-dossier {
    grid-template-columns: 168px minmax(0, 1fr);
    gap: 48px;
    align-items: start;
  }
  .page-about .ab-dossier__index {
    position: sticky;
    top: 104px;
  }
  .page-about .ab-dossier__list {
    flex-direction: column;
    flex-wrap: nowrap;
    gap: 0;
    border-top: 1px solid var(--ab-hair);
  }
  .page-about .ab-dossier__link {
    border: 0;
    border-bottom: 1px solid var(--ab-hair);
    padding: 13px 14px;
  }
  .page-about .ab-partners {
    grid-template-columns: 6fr 6fr;
    gap: 52px;
  }
  .page-about .ab-seasons {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 0;
    align-items: start;
  }
  .page-about .ab-season:nth-child(2) { margin-top: 44px; }
  .page-about .ab-season:nth-child(3) { margin-top: 88px; }
  .page-about .ab-cta__inner {
    grid-template-columns: 7fr 5fr;
    align-items: center;
    gap: 40px;
  }
  .page-about .ab-cta__links { justify-content: flex-end; }
}

@media (min-width: 1024px) {
  .page-about .ab-pano__card { flex-basis: 292px; }
}

@media (min-width: 1480px) {
  .page-about .ab-pano__track {
    padding-left: calc((100vw - var(--wrap)) / 2 + var(--gutter));
    padding-right: calc((100vw - var(--wrap)) / 2 + var(--gutter));
  }
}

@media (prefers-reduced-motion: reduce) {
  .page-about .ab-pano__card,
  .page-about .ab-season,
  .page-about .ab-file,
  .page-about .ab-chart__node circle {
    transition: none;
  }
  .page-about .ab-pano__card:hover,
  .page-about .ab-season:hover,
  .page-about .ab-chart__node:hover circle {
    transform: none;
  }
}
<<<END>>>
