.page-faq{
  --faq-body:rgba(245,239,228,.80);
  --faq-soft:rgba(245,239,228,.62);
  --faq-seam:rgba(242,200,121,.30);
  position:relative;
  overflow-x:hidden;
  background:
    radial-gradient(120% 70% at 84% -8%, rgba(217,154,78,.11), transparent 58%),
    radial-gradient(90% 60% at 6% 42%, rgba(122,31,43,.14), transparent 62%),
    var(--ink);
  color:var(--cream);
}

.page-faq .section{
  position:relative;
  padding:56px 0;
}

.page-faq .section + .section{
  border-top:1px solid var(--line);
}

.page-faq .section-head{
  max-width:640px;
}

.page-faq .section-index{
  font-family:var(--mono);
  font-size:.72rem;
  letter-spacing:.16em;
  text-transform:uppercase;
  color:var(--gold);
  margin:0 0 12px;
}

.page-faq .section-title{
  font-family:var(--serif);
  font-size:clamp(1.55rem,4.4vw,2.2rem);
  line-height:1.26;
  font-weight:700;
  margin:0 0 12px;
  color:var(--cream);
}

.page-faq .section-note{
  margin:0;
  font-size:1rem;
  line-height:1.8;
  color:var(--faq-soft);
}

/* 首屏 */
.page-faq .guide-hero{
  position:relative;
  padding:20px 0 56px;
}

.page-faq .guide-hero::after{
  content:"";
  position:absolute;
  top:56px;
  bottom:24px;
  left:14px;
  width:2px;
  background:linear-gradient(180deg,transparent,var(--faq-seam) 18%,rgba(242,200,121,.08) 82%,transparent);
  pointer-events:none;
}

.page-faq .breadcrumb{
  margin-bottom:26px;
}

.page-faq .hero-grid{
  display:grid;
  gap:34px;
}

.page-faq .eyebrow{
  font-family:var(--mono);
  font-size:.72rem;
  letter-spacing:.16em;
  color:var(--amber);
  margin:0;
}

.page-faq .hero-copy h1{
  font-family:var(--serif);
  font-weight:700;
  font-size:clamp(2rem,7.2vw,4.2rem);
  line-height:1.1;
  letter-spacing:.01em;
  margin:14px 0 0;
  color:var(--cream);
  max-width:12em;
}

.page-faq .hero-lede{
  margin:18px 0 0;
  max-width:34em;
  font-size:1.02rem;
  line-height:1.85;
  color:var(--faq-body);
}

.page-faq .hero-actions{
  margin-top:26px;
}

.page-faq .hero-foot{
  margin:20px 0 0;
  font-size:.78rem;
  letter-spacing:.08em;
  color:var(--mist);
}

.page-faq .hero-figure{
  margin:0;
  position:relative;
  border-radius:var(--r-xl);
  overflow:hidden;
  border:1px solid var(--line-gold);
  background:var(--ink-2);
  box-shadow:0 24px 48px rgba(11,22,34,.62);
}

.page-faq .hero-figure img{
  display:block;
  width:100%;
  max-width:100%;
  height:auto;
  aspect-ratio:4/5;
  object-fit:cover;
  filter:saturate(.88) brightness(.92);
}

.page-faq .hero-cap{
  font-family:var(--mono);
  font-size:.7rem;
  letter-spacing:.1em;
  color:var(--mist);
  padding:12px 16px 14px;
  border-top:1px solid var(--line);
  background:rgba(11,22,34,.72);
}

/* 三步台阶 */
.page-faq .steps{
  list-style:none;
  margin:36px 0 0;
  padding:0;
  position:relative;
}

.page-faq .step{
  display:grid;
  grid-template-columns:56px minmax(0,1fr);
  gap:14px;
  padding:26px 0;
  border-top:1px solid var(--line);
}

.page-faq .step:last-child{
  border-bottom:1px solid var(--line);
}

.page-faq .step-num{
  font-family:var(--mono);
  font-size:1.5rem;
  line-height:1;
  letter-spacing:.06em;
  color:var(--gold);
  text-decoration:none;
  display:inline-block;
  padding-top:4px;
  transition:color var(--t) var(--ease),transform var(--t) var(--ease);
}

.page-faq .step-num:hover,
.page-faq .step-num:focus-visible{
  color:var(--amber);
  transform:translateY(-2px);
}

.page-faq .step-body h3{
  font-family:var(--serif);
  font-size:1.2rem;
  line-height:1.4;
  margin:0 0 10px;
  color:var(--cream);
}

.page-faq .step-body p{
  margin:0 0 12px;
  font-size:.98rem;
  line-height:1.85;
  color:var(--faq-body);
}

.page-faq .step-link{
  display:inline-flex;
  align-items:center;
  gap:6px;
  font-family:var(--mono);
  font-size:.78rem;
  letter-spacing:.08em;
  color:var(--gold);
  text-decoration:none;
  border-bottom:1px solid var(--line-gold);
  padding-bottom:3px;
  transition:color var(--t) var(--ease),border-color var(--t) var(--ease);
}

.page-faq .step-link:hover,
.page-faq .step-link:focus-visible{
  color:var(--cream);
  border-color:var(--cream);
}

/* 问答 */
.page-faq .qa-layout{
  display:grid;
  gap:32px;
}

.page-faq .qa-figure{
  margin:0;
  border-radius:var(--r-lg);
  overflow:hidden;
  border:1px solid var(--line-gold);
  background:var(--ink-2);
}

.page-faq .qa-figure img{
  display:block;
  width:100%;
  max-width:100%;
  height:auto;
  aspect-ratio:4/3;
  object-fit:cover;
  filter:saturate(.86) brightness(.94);
}

.page-faq .qa-main .section-head{
  max-width:520px;
}

.page-faq .accordion{
  margin-top:28px;
}

.page-faq .accordion--wide{
  max-width:820px;
}

.page-faq .accordion-item{
  border-top:1px solid var(--line);
  transition:background var(--t) var(--ease);
}

.page-faq .accordion-item:last-child{
  border-bottom:1px solid var(--line);
}

.page-faq .accordion-btn{
  display:flex;
  align-items:baseline;
  justify-content:space-between;
  gap:18px;
  width:100%;
  padding:18px 0;
  cursor:pointer;
  list-style:none;
  font-family:var(--serif);
  font-size:1.06rem;
  line-height:1.55;
  color:var(--cream);
  transition:color var(--t) var(--ease);
}

.page-faq .accordion-btn::-webkit-details-marker{
  display:none;
}

.page-faq .accordion-btn::after{
  content:"+";
  flex:0 0 auto;
  font-family:var(--mono);
  font-size:1.15rem;
  line-height:1;
  color:var(--gold);
  transition:transform var(--t) var(--ease),color var(--t) var(--ease);
}

.page-faq .accordion-item[open] .accordion-btn{
  color:var(--gold);
}

.page-faq .accordion-item[open] .accordion-btn::after{
  content:"−";
  color:var(--amber);
}

.page-faq .accordion-panel{
  padding:2px 0 22px 18px;
  margin-left:2px;
  border-left:1px solid var(--line-gold);
}

.page-faq .accordion-panel p{
  margin:0;
  font-size:.96rem;
  line-height:1.85;
  color:var(--faq-body);
}

.page-faq .qa-section--alt{
  background:linear-gradient(180deg,rgba(15,42,42,.55),rgba(11,22,34,0) 78%);
}

/* 帮助区 */
.page-faq .help-grid{
  display:grid;
  gap:32px;
}

.page-faq .help-copy p{
  margin:0 0 14px;
  font-size:.98rem;
  line-height:1.85;
  color:var(--faq-body);
  max-width:36em;
}

.page-faq .help-copy .btn-row{
  margin-top:22px;
}

.page-faq .help-card{
  position:relative;
  border:1px solid var(--line-gold);
  border-radius:var(--r-xl);
  background:linear-gradient(160deg,rgba(122,31,43,.28),rgba(18,34,50,.9) 62%);
  padding:24px 20px;
  box-shadow:var(--shadow-wine);
  overflow:hidden;
}

.page-faq .help-card::before{
  content:"";
  position:absolute;
  top:0;
  bottom:0;
  left:0;
  width:2px;
  background:linear-gradient(180deg,transparent,var(--gold),transparent);
}

.page-faq .contact-list{
  margin:0;
  display:grid;
  gap:18px;
}

.page-faq .contact-row{
  display:grid;
  gap:6px;
  padding-bottom:16px;
  border-bottom:1px solid var(--line);
}

.page-faq .contact-row:last-child{
  padding-bottom:0;
  border-bottom:0;
}

.page-faq .contact-row dt{
  font-family:var(--mono);
  font-size:.7rem;
  letter-spacing:.16em;
  color:var(--mist);
}

.page-faq .contact-row dd{
  margin:0;
}

.page-faq .contact-value{
  font-size:.92rem;
  line-height:1.7;
  color:var(--cream);
  word-break:break-word;
}

.page-faq .copy-row{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:10px;
}

.page-faq .copy-row .mono{
  font-size:.86rem;
  letter-spacing:.02em;
}

/* 后续入口 */
.page-faq .next-links{
  margin-top:32px;
  display:grid;
  gap:14px;
}

.page-faq .next-link{
  display:grid;
  gap:8px;
  padding:22px 20px;
  border:1px solid var(--line);
  border-radius:var(--r-lg);
  background:rgba(18,34,50,.6);
  text-decoration:none;
  color:var(--cream);
  transition:border-color var(--t) var(--ease),transform var(--t) var(--ease),background var(--t) var(--ease);
}

.page-faq .next-link:hover,
.page-faq .next-link:focus-visible{
  border-color:var(--line-gold);
  background:rgba(18,34,50,.95);
  transform:translateY(-3px);
}

.page-faq .next-kicker{
  font-size:.68rem;
  letter-spacing:.16em;
  color:var(--gold);
}

.page-faq .next-title{
  font-family:var(--serif);
  font-size:1.1rem;
  line-height:1.4;
}

.page-faq .next-desc{
  font-size:.9rem;
  line-height:1.7;
  color:var(--faq-soft);
}

/* 桌面与宽屏 */
@media (min-width:760px){
  .page-faq .section{
    padding:72px 0;
  }

  .page-faq .guide-hero{
    padding:28px 0 76px;
  }

  .page-faq .guide-hero::after{
    left:var(--band);
    width:3px;
  }

  .page-faq .next-links{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .page-faq .help-card{
    padding:30px 28px;
  }
}

@media (min-width:920px){
  .page-faq .hero-grid{
    grid-template-columns:minmax(0,1fr) minmax(0,.62fr);
    gap:56px;
    align-items:end;
  }

  .page-faq .hero-figure{
    margin-top:18px;
  }

  .page-faq .steps{
    margin-top:56px;
  }

  .page-faq .steps::before{
    content:"";
    position:absolute;
    top:-16px;
    bottom:32px;
    left:var(--band);
    width:1px;
    background:linear-gradient(180deg,transparent,var(--line-gold) 16%,var(--line-gold) 84%,transparent);
  }

  .page-faq .step{
    width:min(100%,56%);
    padding:32px 0;
  }

  .page-faq .step:nth-child(2){
    margin-left:auto;
  }

  .page-faq .step:nth-child(3){
    width:min(100%,50%);
    margin-left:6%;
  }

  .page-faq .qa-layout{
    grid-template-columns:minmax(0,.68fr) minmax(0,1fr);
    gap:52px;
    align-items:start;
  }

  .page-faq .qa-figure{
    position:sticky;
    top:24px;
  }

  .page-faq .help-grid{
    grid-template-columns:minmax(0,1fr) minmax(0,.82fr);
    gap:56px;
    align-items:start;
  }

  .page-faq .next-links{
    grid-template-columns:repeat(4,minmax(0,1fr));
  }
}

@media (prefers-reduced-motion:reduce){
  .page-faq .step-num,
  .page-faq .step-link,
  .page-faq .accordion-btn,
  .page-faq .next-link{
    transition:none;
  }

  .page-faq .next-link:hover,
  .page-faq .next-link:focus-visible,
  .page-faq .step-num:hover,
  .page-faq .step-num:focus-visible{
    transform:none;
  }
}
