/* ===== page-products · 专区与数据服务 ===== */
.page-products{
  --pr-ink:#0B1F2A;
  --pr-hair:rgba(110,122,118,.34);
  --pr-hair-soft:rgba(110,122,118,.16);
  background:var(--aoa-night);
  color:var(--aoa-cream);
  font-family:var(--aoa-display);
  overflow-x:hidden;
}

/* --- 面包屑 --- */
.page-products .aoa-crumbs{
  margin-bottom:clamp(20px,3vw,34px);
}
.page-products .aoa-crumbs ol{
  display:flex;
  flex-wrap:wrap;
  gap:6px 10px;
  margin:0;
  padding:0;
  list-style:none;
  font-size:13px;
  font-family:var(--aoa-mono);
  letter-spacing:.04em;
  color:var(--aoa-mist);
}
.page-products .aoa-crumbs a{
  color:var(--aoa-mist);
  text-decoration:none;
  border-bottom:1px solid transparent;
  transition:color var(--aoa-ease),border-color var(--aoa-ease);
}
.page-products .aoa-crumbs a:hover{
  color:var(--aoa-mint);
  border-bottom-color:var(--aoa-mint);
}
.page-products .aoa-crumbs li+li::before{
  content:"/";
  margin-right:10px;
  color:var(--aoa-rock);
}
.page-products .aoa-crumbs [aria-current="page"]{
  color:var(--aoa-cream);
}

/* --- 首屏 --- */
.page-products .pr-hero{
  position:relative;
  padding:clamp(28px,5vw,60px) 0 clamp(40px,5vw,72px);
  background:
    radial-gradient(120% 90% at 8% 0%, rgba(59,224,176,.09), transparent 58%),
    radial-gradient(90% 80% at 100% 20%, rgba(94,107,224,.12), transparent 60%),
    var(--aoa-night);
  border-bottom:1px solid var(--pr-hair-soft);
}
.page-products .pr-hero__grid{
  display:grid;
  gap:clamp(26px,4vw,48px);
  align-items:end;
}
.page-products .pr-hero__copy{
  min-width:0;
}
.page-products .pr-hero h1{
  margin:.35em 0 .5em;
  font-weight:800;
  letter-spacing:-.02em;
  font-size:clamp(2rem,4.6vw,3.35rem);
  line-height:1.14;
  max-width:15em;
}
.page-products .pr-hero__lede{
  max-width:40em;
  margin:0;
  font-size:clamp(15px,1.4vw,17px);
  line-height:1.78;
  color:var(--aoa-mist);
}
.page-products .pr-hero__acts{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  margin-top:clamp(22px,3vw,32px);
}
.page-products .pr-hero__art{
  min-width:0;
  border:1px solid var(--pr-hair);
  background:var(--aoa-board);
  box-shadow:0 24px 60px -40px rgba(0,0,0,.9);
}
.page-products .pr-hero__art img{
  display:block;
  width:100%;
  max-width:100%;
  height:auto;
  object-fit:cover;
}

/* --- 路径图 --- */
.page-products .pr-waymap{
  padding:clamp(36px,5vw,68px) 0 clamp(40px,5vw,76px);
  background:linear-gradient(180deg, var(--aoa-night) 0%, #0d2331 62%, var(--aoa-moss-deep) 100%);
}
.page-products .pr-waymap__intro{
  max-width:42em;
  margin:14px 0 0;
  color:var(--aoa-mist);
  font-size:15px;
  line-height:1.75;
}
.page-products .pr-waymap__line{
  display:block;
  width:100%;
  height:34px;
  margin:clamp(26px,4vw,42px) 0 0;
  overflow:visible;
}
.page-products .pr-waymap__line line{
  stroke:var(--aoa-mint);
  stroke-width:1.4;
  stroke-dasharray:3 7;
  opacity:.55;
  vector-effect:non-scaling-stroke;
}
.page-products .pr-waymap__line circle{
  fill:#0d2331;
  stroke:var(--aoa-mint);
  stroke-width:2.4;
  vector-effect:non-scaling-stroke;
}
.page-products .pr-waymap__nodes{
  display:grid;
  gap:14px;
  margin:clamp(8px,1.6vw,14px) 0 0;
  padding:0;
  list-style:none;
}
.page-products .pr-node{
  display:flex;
  flex-direction:column;
  gap:9px;
  height:100%;
  padding:20px 18px 22px;
  border:1px solid var(--pr-hair-soft);
  background:rgba(7,19,25,.5);
  color:var(--aoa-cream);
  text-decoration:none;
  transform-origin:center bottom;
  transition:border-color var(--aoa-ease),background var(--aoa-ease),transform var(--aoa-ease);
}
.page-products .pr-node:hover,
.page-products .pr-node:focus-visible{
  border-color:var(--aoa-mint);
  background:rgba(44,74,59,.42);
  transform:scale(1.04);
  outline:none;
}
.page-products .pr-node__step{
  font-family:var(--aoa-mono);
  font-size:12px;
  letter-spacing:.12em;
  color:var(--aoa-mint);
}
.page-products .pr-node__title{
  font-size:18px;
  font-weight:700;
  letter-spacing:-.01em;
  line-height:1.3;
}
.page-products .pr-node__desc{
  font-size:14px;
  line-height:1.72;
  color:var(--aoa-mist);
}
.page-products .pr-node__go{
  margin-top:auto;
  padding-top:10px;
  font-family:var(--aoa-mono);
  font-size:12px;
  letter-spacing:.1em;
  color:var(--aoa-amber);
  border-top:1px solid var(--pr-hair-soft);
}

/* --- 通用分区 --- */
.page-products .pr-zone{
  padding:clamp(44px,6vw,88px) 0;
}
.page-products .pr-zone--light{
  background:var(--aoa-cream);
  color:var(--pr-ink);
}
.page-products .pr-zone--light .aoa-section-title,
.page-products .pr-zone--light h3{
  color:var(--pr-ink);
}
.page-products .pr-zone--light .aoa-label{
  color:var(--aoa-moss);
}
.page-products .pr-zone--board{
  background:var(--aoa-board);
}
.page-products .pr-zone--moss{
  background:var(--aoa-moss-deep);
}
.page-products .pr-zone--night{
  background:var(--aoa-night);
}
.page-products .pr-zone--intel{
  background:
    linear-gradient(135deg, rgba(44,74,59,.94) 0%, rgba(16,40,31,.96) 62%),
    var(--aoa-moss);
}

/* --- 场馆档案 --- */
.page-products .pr-venues__grid{
  display:grid;
  gap:clamp(24px,4vw,52px);
  margin-top:clamp(22px,3vw,34px);
}
.page-products .pr-venues__body{
  min-width:0;
}
.page-products .pr-venues__body p{
  max-width:40em;
  margin:0 0 14px;
  font-size:15px;
  line-height:1.78;
  color:#2F3B44;
}
.page-products .pr-table{
  width:100%;
  margin-top:clamp(18px,2.6vw,28px);
  border:1px solid var(--pr-hair);
  border-collapse:collapse;
  font-size:14px;
}
.page-products .pr-table__cap{
  caption-side:top;
  padding:0 0 10px;
  text-align:left;
  font-family:var(--aoa-mono);
  font-size:12px;
  letter-spacing:.12em;
  color:var(--aoa-moss);
}
.page-products .pr-table thead th{
  padding:12px 14px;
  background:var(--aoa-board);
  color:var(--aoa-cream);
  font-family:var(--aoa-mono);
  font-size:11px;
  font-weight:600;
  letter-spacing:.12em;
  text-align:left;
  white-space:nowrap;
}
.page-products .pr-table tbody th{
  padding:14px;
  font-family:var(--aoa-mono);
  font-size:14px;
  font-weight:700;
  color:var(--aoa-moss);
  text-align:left;
  vertical-align:top;
  white-space:nowrap;
}
.page-products .pr-table td{
  padding:14px;
  vertical-align:top;
  line-height:1.7;
  color:#2F3B44;
  border-top:1px solid var(--pr-hair);
}
.page-products .pr-table tbody tr{
  transition:background var(--aoa-ease);
}
.page-products .pr-table tbody tr:hover{
  background:rgba(44,74,59,.1);
}
.page-products .pr-venues__art{
  align-self:start;
  min-width:0;
  border:1px solid var(--pr-hair);
  background:var(--aoa-board);
}
.page-products .pr-venues__art img{
  display:block;
  width:100%;
  max-width:100%;
  height:auto;
  object-fit:cover;
}
.page-products .pr-venues__art .aoa-media__cap{
  padding:10px 14px;
  font-size:12px;
  line-height:1.6;
  color:var(--pr-ink);
  background:rgba(44,74,59,.1);
}

/* --- 数据看板 --- */
.page-products .pr-board__head{
  display:grid;
  gap:22px;
  align-items:end;
  margin-bottom:clamp(26px,3.4vw,40px);
}
.page-products .pr-board__lead p{
  max-width:40em;
  margin:14px 0 0;
  font-size:15px;
  line-height:1.78;
  color:var(--aoa-mist);
}
.page-products .pr-board__anchor{
  display:flex;
  align-items:baseline;
  gap:.18em;
  margin:0;
  padding:14px 20px;
  background:rgba(44,74,59,.55);
  border-left:4px solid var(--aoa-mint);
  color:var(--aoa-cream);
  white-space:nowrap;
}
.page-products .pr-board__num{
  font-family:var(--aoa-mono);
  font-weight:700;
  font-size:clamp(3rem,6.4vw,4.4rem);
  line-height:.86;
  letter-spacing:-.03em;
  color:var(--aoa-mint);
}
.page-products .pr-board__anchor .aoa-figure__unit{
  font-size:13px;
  letter-spacing:.12em;
  color:var(--aoa-mist);
}
.page-products .pr-board__list{
  display:grid;
  gap:1px;
  margin:0;
  padding:0;
  list-style:none;
  background:var(--pr-hair-soft);
  border:1px solid var(--pr-hair-soft);
}
.page-products .pr-dim{
  display:grid;
  gap:8px;
  padding:20px 20px 22px;
  background:var(--aoa-board);
  transition:background var(--aoa-ease);
}
.page-products .pr-dim:hover{
  background:#0c1d26;
}
.page-products .pr-dim__key{
  font-size:17px;
  font-weight:700;
  letter-spacing:-.01em;
  color:var(--aoa-cream);
  padding-left:12px;
  border-left:3px solid var(--aoa-mint);
}
.page-products .pr-dim__q{
  margin:0;
  font-size:14px;
  line-height:1.72;
  color:var(--aoa-mist);
}
.page-products .pr-board__art{
  margin:clamp(26px,3.4vw,40px) 0 0;
  min-width:0;
  border:1px solid var(--pr-hair);
}
.page-products .pr-board__art img{
  display:block;
  width:100%;
  max-width:100%;
  height:auto;
  object-fit:cover;
}
.page-products .pr-board__art .aoa-media__cap{
  padding:10px 14px;
  font-size:12px;
  color:var(--aoa-mist);
  background:rgba(7,19,25,.72);
}

/* --- 球员数据 --- */
.page-products .pr-players__grid{
  display:grid;
  gap:clamp(24px,4vw,52px);
  margin-top:clamp(22px,3vw,34px);
  align-items:start;
}
.page-products .pr-players__art{
  min-width:0;
  border:1px solid var(--pr-hair);
  background:var(--aoa-board);
}
.page-products .pr-players__art img{
  display:block;
  width:100%;
  max-width:100%;
  height:auto;
  object-fit:cover;
}
.page-products .pr-players__body{
  min-width:0;
}
.page-products .pr-players__body > p{
  max-width:40em;
  margin:0 0 clamp(20px,2.6vw,28px);
  font-size:15px;
  line-height:1.78;
  color:var(--aoa-mist);
}
.page-products .pr-players__list{
  display:grid;
  gap:12px;
  margin:0;
  padding:0;
  list-style:none;
}
.page-products .pr-skill{
  padding:16px 18px 18px;
  border:1px solid var(--pr-hair-soft);
  border-left:3px solid var(--aoa-violet);
  background:rgba(7,19,25,.4);
  transition:border-left-color var(--aoa-ease),background var(--aoa-ease);
}
.page-products .pr-skill:hover{
  border-left-color:var(--aoa-mint);
  background:rgba(44,74,59,.35);
}
.page-products .pr-skill__name{
  display:block;
  margin-bottom:6px;
  font-family:var(--aoa-mono);
  font-size:13px;
  font-weight:700;
  letter-spacing:.1em;
  color:var(--aoa-mint);
}
.page-products .pr-skill__use{
  margin:0;
  font-size:14px;
  line-height:1.72;
  color:var(--aoa-cream);
}

/* --- 赛前情报 --- */
.page-products .pr-intel__grid{
  display:grid;
  gap:clamp(26px,4vw,52px);
  align-items:center;
}
.page-products .pr-intel__copy{
  min-width:0;
}
.page-products .pr-intel__copy p{
  max-width:38em;
  margin:16px 0 0;
  font-size:15px;
  line-height:1.78;
  color:rgba(241,238,227,.82);
}
.page-products .pr-intel__copy .aoa-btn{
  margin-top:clamp(22px,3vw,30px);
}
.page-products .pr-intel__art{
  min-width:0;
  border:1px solid var(--pr-hair);
  background:var(--aoa-board);
}
.page-products .pr-intel__art img{
  display:block;
  width:100%;
  max-width:100%;
  height:auto;
  object-fit:cover;
}

/* --- 谁适合用 --- */
.page-products .pr-fit__lede{
  max-width:40em;
  margin:14px 0 clamp(24px,3vw,36px);
  font-size:15px;
  line-height:1.78;
  color:#2F3B44;
}
.page-products .pr-fit__list{
  display:grid;
  gap:16px;
  margin:0;
  padding:0;
  list-style:none;
}
.page-products .pr-fit-card{
  position:relative;
  padding:24px 22px 26px;
  border:1px solid var(--pr-hair);
  background:#FAF8F0;
  transition:border-color var(--aoa-ease),transform var(--aoa-ease);
}
.page-products .pr-fit-card:hover{
  border-color:var(--aoa-moss);
  transform:translateY(-2px);
}
.page-products .pr-fit-card__num{
  display:block;
  margin-bottom:12px;
  font-family:var(--aoa-mono);
  font-size:12px;
  letter-spacing:.14em;
  color:var(--aoa-clay);
}
.page-products .pr-fit-card h3{
  margin:0 0 10px;
  font-size:18px;
  font-weight:700;
  letter-spacing:-.01em;
}
.page-products .pr-fit-card p{
  margin:0;
  font-size:14px;
  line-height:1.78;
  color:#33414B;
}

/* --- 服务路径与支持 --- */
.page-products .pr-support__lede{
  max-width:44em;
  margin:14px 0 clamp(26px,3.4vw,38px);
  font-size:15px;
  line-height:1.78;
  color:var(--aoa-mist);
}
.page-products .pr-flow{
  display:grid;
  gap:1px;
  margin:0;
  padding:0;
  list-style:none;
  background:var(--pr-hair-soft);
  border:1px solid var(--pr-hair-soft);
}
.page-products .pr-flow__step{
  padding:22px 20px 24px;
  background:rgba(7,19,25,.55);
  border-top:3px solid var(--aoa-amber);
  transition:background var(--aoa-ease);
}
.page-products .pr-flow__step:hover{
  background:rgba(44,74,59,.4);
}
.page-products .pr-flow__idx{
  display:block;
  margin-bottom:10px;
  font-family:var(--aoa-mono);
  font-size:12px;
  letter-spacing:.14em;
  color:var(--aoa-amber);
}
.page-products .pr-flow__step h3{
  margin:0 0 8px;
  font-size:17px;
  font-weight:700;
}
.page-products .pr-flow__step p{
  margin:0;
  font-size:14px;
  line-height:1.74;
  color:var(--aoa-mist);
}
.page-products .pr-support__foot{
  margin-top:clamp(26px,3.4vw,38px);
  padding-top:clamp(22px,3vw,30px);
  border-top:1px solid var(--pr-hair);
}
.page-products .pr-support__foot p{
  max-width:44em;
  margin:0 0 12px;
  font-size:14px;
  line-height:1.76;
  color:var(--aoa-mist);
}
.page-products .pr-support__foot a{
  color:var(--aoa-cream);
  text-decoration:none;
  border-bottom:1px solid var(--aoa-mint);
  transition:color var(--aoa-ease);
}
.page-products .pr-support__foot a:hover{
  color:var(--aoa-mint);
}
.page-products .pr-support__foot .aoa-btn{
  margin-top:14px;
}

/* --- 响应式 --- */
@media (min-width:700px){
  .page-products .pr-waymap__nodes{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:16px;
  }
  .page-products .pr-board__list{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .page-products .pr-fit__list{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .page-products .pr-flow{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
}

@media (min-width:960px){
  .page-products .pr-hero__grid{
    grid-template-columns:minmax(0,7fr) minmax(0,5fr);
  }
  .page-products .pr-waymap__nodes{
    grid-template-columns:repeat(4,minmax(0,1fr));
  }
  .page-products .pr-venues__grid{
    grid-template-columns:minmax(0,7fr) minmax(0,5fr);
  }
  .page-products .pr-board__head{
    grid-template-columns:minmax(0,1fr) auto;
  }
  .page-products .pr-board__list{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
  .page-products .pr-players__grid{
    grid-template-columns:minmax(0,4fr) minmax(0,8fr);
  }
  .page-products .pr-intel__grid{
    grid-template-columns:minmax(0,5fr) minmax(0,7fr);
  }
  .page-products .pr-fit__list{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
  .page-products .pr-fit-card:nth-child(2){
    transform:translateY(18px);
  }
  .page-products .pr-fit-card:nth-child(2):hover{
    transform:translateY(16px);
  }
}

@media (max-width:520px){
  .page-products .pr-table{
    font-size:13px;
  }
  .page-products .pr-table thead th,
  .page-products .pr-table td,
  .page-products .pr-table tbody th{
    padding:10px 9px;
  }
  .page-products .pr-board__anchor{
    padding:12px 16px;
  }
}
<<<END>>>
