.page-faq{
  --faq-gap:clamp(22px,3.4vw,44px);
  --faq-pad:clamp(22px,3.6vw,38px);
  --faq-soft:var(--ink-soft);
  background:var(--cream);
  color:var(--ink);
}

.page-faq .breadcrumbs{padding-top:clamp(16px,2.4vw,26px)}

.page-faq .eyebrow--onink{color:var(--celadon-500)}

/* ---------- 首屏 ---------- */
.page-faq .faq-hero{
  padding:clamp(18px,3vw,32px) 0 clamp(40px,6vw,76px);
}
.page-faq .faq-hero__inner{
  display:grid;
  gap:var(--faq-gap);
  align-items:center;
}
.page-faq .faq-hero h1{
  font-size:clamp(2rem,7vw,3.9rem);
  line-height:1.06;
  letter-spacing:-.02em;
  margin:14px 0 18px;
  color:var(--ink-900);
}
.page-faq .faq-hero .lede{
  max-width:46ch;
  color:var(--faq-soft);
  font-size:clamp(15px,1.9vw,18px);
}
.page-faq .faq-hero__chips{
  list-style:none;
  margin:clamp(20px,3vw,28px) 0 0;
  padding:0;
  display:flex;
  flex-wrap:wrap;
  gap:10px;
}
.page-faq .faq-chip{
  display:inline-flex;
  align-items:center;
  padding:10px 18px;
  border-radius:999px;
  border:1px solid var(--line-strong);
  background:var(--paper);
  color:var(--ink);
  font-size:14px;
  text-decoration:none;
  transition:transform .2s var(--ease),border-color .2s var(--ease),background .2s var(--ease);
}
.page-faq .faq-chip:hover,
.page-faq .faq-chip:focus-visible{
  transform:translateY(-2px);
  border-color:var(--orange-600);
  color:var(--orange-700);
}
.page-faq .faq-hero__facts{
  list-style:none;
  margin:clamp(24px,3.4vw,34px) 0 0;
  padding:20px 0 0;
  border-top:1px solid var(--line);
  display:grid;
  gap:14px;
}
.page-faq .faq-fact{
  display:flex;
  flex-direction:column;
  gap:4px;
}
.page-faq .faq-fact__k{
  font-size:13px;
  letter-spacing:.1em;
  color:var(--celadon-700);
}
.page-faq .faq-fact__v{
  font-size:clamp(18px,2.4vw,22px);
  font-weight:700;
  color:var(--ink-900);
}
.page-faq .faq-hero__visual{
  margin:0;
  border-radius:var(--radius-lg);
  overflow:hidden;
  background:var(--ink-800);
  border:1px solid var(--line);
  box-shadow:0 24px 60px -40px rgba(7,24,38,.6);
}
.page-faq .faq-hero__visual img{
  display:block;
  width:100%;
  height:auto;
  max-width:100%;
  object-fit:cover;
}

/* ---------- 开工前 ---------- */
.page-faq .faq-prep__intro{
  max-width:56ch;
  color:var(--faq-soft);
  margin-top:10px;
}
.page-faq .faq-prep__list{
  list-style:none;
  margin:clamp(26px,3.6vw,38px) 0 0;
  padding:0;
  display:grid;
  gap:16px;
  counter-reset:none;
}
.page-faq .faq-prep__item{
  position:relative;
  background:var(--paper);
  border:1px solid var(--line);
  border-radius:var(--radius-lg);
  padding:var(--faq-pad);
}
.page-faq .faq-prep__no{
  display:inline-block;
  font-size:12px;
  letter-spacing:.14em;
  color:var(--orange-600);
  margin-bottom:12px;
}
.page-faq .faq-prep__item h3{
  margin:0 0 10px;
  font-size:clamp(17px,2.2vw,21px);
}
.page-faq .faq-prep__item p{
  margin:0;
  color:var(--faq-soft);
  font-size:15px;
  line-height:1.78;
}
.page-faq .faq-prep__item::after{
  content:"";
  position:absolute;
  left:var(--faq-pad);
  bottom:0;
  width:44px;
  height:3px;
  border-radius:3px;
  background:var(--celadon-500);
}

/* ---------- 费用与授权 ---------- */
.page-faq .faq-fee{
  margin:clamp(44px,6vw,80px) 0;
  padding:clamp(40px,6vw,78px) 0;
  background:var(--ink-900);
  color:var(--cream);
}
.page-faq .faq-fee__inner{
  display:grid;
  gap:var(--faq-gap);
  align-items:center;
}
.page-faq .faq-fee .eyebrow{margin-bottom:10px}
.page-faq .faq-fee h2{
  color:var(--cream);
  margin:0 0 14px;
}
.page-faq .faq-fee__lead{
  max-width:52ch;
  color:var(--mist);
  font-size:clamp(15px,1.8vw,17px);
  line-height:1.8;
}
.page-faq .faq-fee__pair{
  display:grid;
  gap:12px;
  margin:clamp(22px,3vw,30px) 0;
}
.page-faq .faq-fee__card{
  background:var(--ink-800);
  border:1px solid var(--ink-700);
  border-radius:var(--radius-md);
  padding:22px;
}
.page-faq .faq-fee__card h3{
  margin:0 0 8px;
  color:var(--orange-400);
  font-size:17px;
}
.page-faq .faq-fee__card p{
  margin:0;
  color:var(--mist);
  font-size:14.5px;
  line-height:1.78;
}
.page-faq .faq-fee__visual{
  margin:0;
  border-radius:var(--radius-lg);
  overflow:hidden;
  background:var(--ink-800);
  border:1px solid var(--ink-700);
}
.page-faq .faq-fee__visual img{
  display:block;
  width:100%;
  height:auto;
  max-width:100%;
  object-fit:cover;
}

/* ---------- 问答主体 ---------- */
.page-faq .faq-qa__intro{
  margin-top:10px;
  max-width:58ch;
  color:var(--faq-soft);
}
.page-faq .faq-qa__intro a{
  color:var(--celadon-700);
  text-decoration:underline;
  text-underline-offset:3px;
}
.page-faq .faq-body{
  position:relative;
  display:grid;
  gap:22px;
  margin-top:clamp(24px,3.4vw,36px);
}
.page-faq .faq-radio{
  position:absolute;
  width:1px;
  height:1px;
  padding:0;
  margin:0;
  border:0;
  opacity:0;
  pointer-events:none;
  clip-path:inset(50%);
  overflow:hidden;
}
.page-faq .faq-index__title{
  margin:0 0 12px;
  font-size:12px;
  letter-spacing:.14em;
  color:var(--celadon-700);
}
.page-faq .faq-index__list{
  list-style:none;
  margin:0;
  padding:0;
  display:flex;
  flex-wrap:wrap;
  gap:8px;
}
.page-faq .faq-index__label{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:10px 16px;
  border-radius:999px;
  border:1px solid var(--line-strong);
  background:var(--paper);
  color:var(--ink);
  font-size:14px;
  cursor:pointer;
  white-space:nowrap;
  transition:background .2s var(--ease),color .2s var(--ease),border-color .2s var(--ease);
}
.page-faq .faq-index__label:hover{
  border-color:var(--orange-600);
  color:var(--orange-700);
}
.page-faq .faq-index__count{
  font-family:var(--font-mono);
  font-size:12px;
  color:var(--celadon-700);
}
.page-faq #faq-cat-all:checked ~ .faq-index label[for="faq-cat-all"],
.page-faq #faq-cat-download:checked ~ .faq-index label[for="faq-cat-download"],
.page-faq #faq-cat-fee:checked ~ .faq-index label[for="faq-cat-fee"],
.page-faq #faq-cat-search:checked ~ .faq-index label[for="faq-cat-search"],
.page-faq #faq-cat-coop:checked ~ .faq-index label[for="faq-cat-coop"]{
  background:var(--ink-900);
  border-color:var(--ink-900);
  color:var(--paper);
}
.page-faq #faq-cat-all:checked ~ .faq-index label[for="faq-cat-all"] .faq-index__count,
.page-faq #faq-cat-download:checked ~ .faq-index label[for="faq-cat-download"] .faq-index__count,
.page-faq #faq-cat-fee:checked ~ .faq-index label[for="faq-cat-fee"] .faq-index__count,
.page-faq #faq-cat-search:checked ~ .faq-index label[for="faq-cat-search"] .faq-index__count,
.page-faq #faq-cat-coop:checked ~ .faq-index label[for="faq-cat-coop"] .faq-index__count{
  color:var(--orange-400);
}
.page-faq #faq-cat-download:checked ~ .faq-stream .faq-group:not(.faq-group--download),
.page-faq #faq-cat-fee:checked ~ .faq-stream .faq-group:not(.faq-group--fee),
.page-faq #faq-cat-search:checked ~ .faq-stream .faq-group:not(.faq-group--search),
.page-faq #faq-cat-coop:checked ~ .faq-stream .faq-group:not(.faq-group--coop){
  display:none;
}

.page-faq .faq-group{
  margin-bottom:clamp(26px,3.6vw,36px);
}
.page-faq .faq-group:last-child{margin-bottom:0}
.page-faq .faq-group__head{
  display:flex;
  align-items:baseline;
  gap:12px;
  padding-bottom:10px;
  border-bottom:2px solid var(--ink-900);
}
.page-faq .faq-group__title{
  margin:0;
  font-size:clamp(17px,2.2vw,21px);
  color:var(--ink-900);
}
.page-faq .faq-group__count{
  font-size:13px;
  color:var(--celadon-700);
}
.page-faq .faq-item{
  border-bottom:1px solid var(--line);
}
.page-faq .faq-item__q{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:16px;
  padding:18px 2px;
  cursor:pointer;
  list-style:none;
  font-weight:600;
  font-size:clamp(15px,1.7vw,16.5px);
  line-height:1.5;
  color:var(--ink-900);
}
.page-faq .faq-item__q::-webkit-details-marker{display:none}
.page-faq .faq-item__q::after{
  content:"+";
  flex:0 0 auto;
  width:28px;
  height:28px;
  border-radius:50%;
  display:inline-grid;
  place-items:center;
  background:var(--cream);
  border:1px solid var(--line-strong);
  color:var(--orange-600);
  font-family:var(--font-mono);
  font-size:15px;
  line-height:1;
  transition:background .2s var(--ease),color .2s var(--ease),transform .2s var(--ease);
}
.page-faq .faq-item__q:hover::after{
  background:var(--orange-400);
  color:var(--ink-900);
  border-color:var(--orange-400);
}
.page-faq .faq-item[open] .faq-item__q::after{
  content:"−";
  background:var(--orange-600);
  border-color:var(--orange-600);
  color:var(--paper);
}
.page-faq .faq-item__a{
  padding:2px 0 22px 16px;
  border-left:2px solid var(--celadon-500);
  margin-left:2px;
  color:var(--faq-soft);
  font-size:15px;
  line-height:1.8;
  max-width:66ch;
}
.page-faq .faq-item__a p{margin:0}

/* ---------- 联系 ---------- */
.page-faq .faq-help{padding-bottom:clamp(48px,7vw,88px)}
.page-faq .faq-help__inner{
  display:grid;
  gap:clamp(22px,3.4vw,40px);
  background:var(--paper);
  border:1px solid var(--line);
  border-radius:var(--radius-lg);
  padding:clamp(24px,4vw,52px);
}
.page-faq .faq-help__copy h2{margin:10px 0 14px}
.page-faq .faq-help__copy p{
  max-width:50ch;
  color:var(--faq-soft);
  font-size:15.5px;
  line-height:1.8;
  margin:0 0 22px;
}
.page-faq .faq-help__contacts{
  list-style:none;
  margin:0;
  padding:0;
  display:grid;
  gap:14px;
  align-content:start;
}
.page-faq .faq-contact{
  display:grid;
  gap:4px;
  padding-bottom:14px;
  border-bottom:1px solid var(--line);
}
.page-faq .faq-contact__label{
  font-size:12px;
  letter-spacing:.12em;
  color:var(--celadon-700);
}
.page-faq .faq-contact__value{
  font-family:var(--font-mono);
  font-size:clamp(14.5px,1.8vw,17px);
  font-weight:500;
  color:var(--ink-900);
  text-decoration:none;
  word-break:break-word;
}
.page-faq a.faq-contact__value:hover{
  color:var(--orange-700);
  text-decoration:underline;
  text-underline-offset:4px;
}
.page-faq .faq-contact__value--plain{
  font-family:var(--font-body);
  font-size:15px;
  font-weight:400;
}
.page-faq .faq-contact__note{
  font-size:13.5px;
  line-height:1.75;
  color:var(--mist);
  filter:brightness(.72);
}

/* ---------- 响应式 ---------- */
@media (min-width:600px){
  .page-faq .faq-hero__facts{grid-template-columns:repeat(3,1fr)}
  .page-faq .faq-fee__pair{grid-template-columns:1fr 1fr}
}

@media (min-width:880px){
  .page-faq .faq-hero__inner{grid-template-columns:1.02fr .98fr}
  .page-faq .faq-prep__list{grid-template-columns:1.12fr .96fr .88fr;align-items:start}
  .page-faq .faq-prep__item:nth-child(2){transform:translateY(18px)}
  .page-faq .faq-prep__item:nth-child(3){transform:translateY(6px)}
  .page-faq .faq-fee__inner{grid-template-columns:1.06fr .94fr}
  .page-faq .faq-help__inner{grid-template-columns:1.05fr .95fr}
}

@media (min-width:960px){
  .page-faq .faq-body{grid-template-columns:250px minmax(0,1fr);gap:clamp(32px,4vw,56px);align-items:start}
  .page-faq .faq-index{position:sticky;top:24px}
  .page-faq .faq-index__list{flex-direction:column;flex-wrap:nowrap;gap:6px}
  .page-faq .faq-index__label{white-space:normal}
  .page-faq .faq-stream{min-width:0}
}

@media (prefers-reduced-motion:reduce){
  .page-faq .faq-chip,
  .page-faq .faq-item__q::after,
  .page-faq .faq-index__label{
    transition:none;
  }
  .page-faq .faq-chip:hover,
  .page-faq .faq-chip:focus-visible{
    transform:none;
  }
}
<<<END>>>
