.page-faq{
  --faq-muted:#BCCAC1;
  --faq-soft:rgba(244,247,240,.06);
  --faq-card:rgba(45,226,197,.05);
  --faq-gap:clamp(1rem,3vw,2rem);
  background:linear-gradient(180deg,var(--ink-900) 0%,var(--ink-850) 55%,var(--ink-900) 100%);
  color:var(--mist);
  font-family:var(--font-body);
  line-height:1.75;
  overflow-x:hidden;
}
.page-faq a{ color:inherit; text-decoration:none; }
.page-faq .faq-hero{
  padding:clamp(1.25rem,4vw,2.5rem) 0 clamp(2rem,5vw,3.5rem);
  border-bottom:1px solid var(--line);
}
.page-faq .faq-hero__inner{
  display:grid;
  gap:var(--faq-gap);
  align-items:center;
}
.page-faq .crumbs{ font-size:.8rem; color:var(--faq-muted); margin-bottom:1.25rem; }
.page-faq .crumbs__sep{ margin:0 .45rem; color:var(--line); }
.page-faq .crumbs__link{ border-bottom:1px solid transparent; }
.page-faq .crumbs__link:hover{ color:var(--lime); border-bottom-color:var(--lime); }
.page-faq .eyebrow{
  font-family:var(--font-mono);
  font-size:.72rem;
  letter-spacing:.16em;
  text-transform:uppercase;
  color:var(--aqua);
  margin:0 0 .75rem;
}
.page-faq .faq-hero h1{
  font-family:var(--font-display);
  font-weight:900;
  font-size:clamp(1.9rem,6.4vw,3.4rem);
  line-height:1.16;
  letter-spacing:-.02em;
  margin:0 0 1rem;
}
.page-faq .faq-hero__lead{
  font-size:clamp(.95rem,2.2vw,1.0625rem);
  color:var(--faq-muted);
  max-width:34rem;
  margin:0 0 1.5rem;
}
.page-faq .faq-jump{
  display:flex;
  flex-wrap:wrap;
  gap:.5rem;
  list-style:none;
  margin:0;
  padding:0;
}
.page-faq .faq-jump__link{
  display:inline-block;
  padding:.5rem 1rem;
  border:1px solid var(--line);
  border-radius:var(--radius-pill);
  background:var(--faq-soft);
  font-size:.85rem;
  color:var(--mist);
  transition:border-color .25s var(--ease),color .25s var(--ease),background .25s var(--ease);
}
.page-faq .faq-jump__link:hover,
.page-faq .faq-jump__link:focus-visible{
  border-color:var(--lime);
  color:var(--lime);
  background:rgba(201,255,63,.08);
}
.page-faq .faq-hero__figure{
  margin:0;
  border-radius:var(--radius-xl);
  overflow:hidden;
  border:1px solid var(--line);
  background:var(--ink-800);
  box-shadow:var(--shadow-panel);
}
.page-faq .faq-hero__figure img{
  display:block;
  width:100%;
  height:auto;
  max-width:100%;
  object-fit:cover;
  aspect-ratio:2/1;
}
.page-faq .faq-hero__caption{
  font-family:var(--font-mono);
  font-size:.72rem;
  letter-spacing:.08em;
  color:var(--faq-muted);
  padding:.75rem 1.1rem;
  border-top:1px solid var(--line);
}

.page-faq .faq-triage{ padding:clamp(2rem,5vw,3.5rem) 0; }
.page-faq .section-head{ margin-bottom:clamp(1.25rem,3vw,2rem); }
.page-faq .section-head h2{
  font-family:var(--font-display);
  font-size:clamp(1.35rem,3.6vw,1.9rem);
  line-height:1.3;
  margin:0;
  font-weight:800;
}
.page-faq .faq-triage__grid{
  display:grid;
  gap:1rem;
}
.page-faq .triage-card{
  position:relative;
  padding:1.35rem 1.25rem 1.25rem;
  border-radius:var(--radius-lg);
  border:1px solid var(--line);
  background:linear-gradient(160deg,var(--ink-700),var(--ink-800));
  display:flex;
  flex-direction:column;
  gap:.6rem;
}
.page-faq .triage-card__num{
  font-family:var(--font-mono);
  font-size:.78rem;
  color:var(--orange);
  letter-spacing:.14em;
}
.page-faq .triage-card__title{
  font-family:var(--font-display);
  font-size:1.05rem;
  font-weight:800;
  margin:0;
  line-height:1.4;
}
.page-faq .triage-card__say{ margin:0; font-size:.9rem; color:var(--faq-muted); }
.page-faq .triage-card__do{
  margin:0;
  font-size:.9rem;
  padding-left:.85rem;
  border-left:2px solid var(--lime);
}
.page-faq .triage-card__k{ color:var(--lime); font-weight:700; }
.page-faq .triage-card__link{
  margin-top:auto;
  font-size:.85rem;
  color:var(--aqua);
  border-bottom:1px dashed rgba(45,226,197,.5);
  align-self:flex-start;
}
.page-faq .triage-card__link:hover{ color:var(--lime); border-bottom-color:var(--lime); }

.page-faq .faq-layout{
  display:grid;
  gap:clamp(1.5rem,3vw,2.5rem);
  padding-bottom:clamp(2.5rem,6vw,4rem);
}
.page-faq .faq-side{
  border-radius:var(--radius-lg);
  border:1px solid var(--line);
  background:var(--ink-800);
  padding:1.25rem;
}
.page-faq .faq-side__label{ margin:0 0 .9rem; color:var(--orange); }
.page-faq .faq-side__list{
  list-style:none;
  margin:0 0 1rem;
  padding:0;
  display:flex;
  flex-direction:column;
  gap:.15rem;
}
.page-faq .faq-side__link{
  display:flex;
  gap:.6rem;
  align-items:baseline;
  padding:.55rem .5rem;
  border-radius:var(--radius-md);
  font-size:.9rem;
  color:var(--faq-muted);
  border-left:2px solid transparent;
  transition:background .2s var(--ease),color .2s var(--ease),border-color .2s var(--ease);
}
.page-faq .faq-side__link .mono{
  font-family:var(--font-mono);
  font-size:.72rem;
  color:var(--grey);
}
.page-faq .faq-side__link:hover,
.page-faq .faq-side__link:focus-visible{
  background:var(--faq-soft);
  color:var(--mist);
  border-left-color:var(--lime);
}
.page-faq .faq-side__link:hover .mono{ color:var(--lime); }
.page-faq .faq-side__note{
  font-size:.8rem;
  color:var(--grey);
  margin:0 0 1rem;
  padding-top:.9rem;
  border-top:1px solid var(--line);
}

.page-faq .faq-block{
  scroll-margin-top:6rem;
  margin-bottom:clamp(1.75rem,4vw,2.75rem);
}
.page-faq .faq-block:last-child{ margin-bottom:0; }
.page-faq .faq-block__head{ margin-bottom:1.1rem; }
.page-faq .section-num{
  display:inline-block;
  font-family:var(--font-mono);
  font-size:.75rem;
  letter-spacing:.18em;
  color:var(--orange);
  border:1px solid rgba(255,107,44,.4);
  border-radius:var(--radius-pill);
  padding:.15rem .6rem;
  margin-bottom:.7rem;
}
.page-faq .faq-block__head h2{
  font-family:var(--font-display);
  font-size:clamp(1.25rem,3.4vw,1.75rem);
  font-weight:800;
  line-height:1.3;
  margin:0 0 .55rem;
}
.page-faq .faq-block__intro{
  margin:0;
  font-size:.92rem;
  color:var(--faq-muted);
  max-width:44rem;
}
.page-faq .qa{
  border-top:1px solid var(--line);
  background:linear-gradient(180deg,rgba(15,42,34,.5),rgba(17,23,20,.2));
  padding:0 1rem;
  border-radius:0;
}
.page-faq .qa:last-of-type{ border-bottom:1px solid var(--line); }
.page-faq .qa[open]{
  background:linear-gradient(180deg,rgba(15,42,34,.85),rgba(17,23,20,.35));
  border-radius:var(--radius-md);
  border-top-color:rgba(201,255,63,.35);
}
.page-faq .qa__q{
  cursor:pointer;
  list-style:none;
  display:flex;
  gap:1rem;
  align-items:flex-start;
  justify-content:space-between;
  padding:.95rem 0;
}
.page-faq .qa__q::-webkit-details-marker{ display:none; }
.page-faq .qa__q h3{
  font-family:var(--font-display);
  font-size:.98rem;
  font-weight:700;
  line-height:1.55;
  margin:0;
}
.page-faq .qa__q::after{
  content:"+";
  flex:0 0 auto;
  font-family:var(--font-mono);
  font-size:1.15rem;
  line-height:1.3;
  color:var(--lime);
  transition:transform .25s var(--ease);
}
.page-faq .qa[open] .qa__q::after{ content:"–"; }
.page-faq .qa__q:hover h3{ color:var(--lime); }
.page-faq .qa__a{
  padding:0 0 1.1rem;
  font-size:.92rem;
  color:var(--faq-muted);
  max-width:46rem;
}
.page-faq .qa__a p{ margin:0 0 .75rem; }
.page-faq .qa__a p:last-child{ margin-bottom:0; }
.page-faq .qa__a a{
  color:var(--aqua);
  border-bottom:1px dashed rgba(45,226,197,.5);
}
.page-faq .qa__a a:hover{ color:var(--lime); border-bottom-color:var(--lime); }
.page-faq .qa__steps,
.page-faq .qa__bullets{
  margin:0 0 .75rem;
  padding-left:1.15rem;
  display:flex;
  flex-direction:column;
  gap:.4rem;
}
.page-faq .qa__steps{ counter-reset:step; list-style:none; padding-left:0; }
.page-faq .qa__steps li{
  counter-increment:step;
  position:relative;
  padding-left:1.9rem;
}
.page-faq .qa__steps li::before{
  content:counter(step,decimal-leading-zero);
  position:absolute;
  left:0;
  top:.1rem;
  font-family:var(--font-mono);
  font-size:.75rem;
  color:var(--orange);
}
.page-faq .qa__bullets li::marker{ color:var(--aqua); }
.page-faq .qa__a strong{ color:var(--mist); font-weight:700; }
.page-faq .qa__a .mono{
  font-family:var(--font-mono);
  font-size:.82rem;
  color:var(--aqua);
}

.page-faq .faq-diagram{
  margin:1.25rem 0 1.5rem;
  border:1px solid var(--line);
  border-radius:var(--radius-lg);
  overflow:hidden;
  background:var(--ink-800);
}
.page-faq .faq-diagram img{
  display:block;
  width:100%;
  height:auto;
  max-width:100%;
  object-fit:cover;
  aspect-ratio:8/5;
}
.page-faq .faq-diagram__caption{
  font-size:.78rem;
  font-family:var(--font-mono);
  letter-spacing:.04em;
  color:var(--faq-muted);
  padding:.7rem 1rem;
  border-top:1px solid var(--line);
}

.page-faq .faq-cta{
  padding:clamp(1.75rem,4vw,2.5rem) 0 clamp(2.5rem,6vw,4rem);
}
.page-faq .faq-cta__inner{
  display:grid;
  gap:1.25rem;
  border-radius:var(--radius-xl);
  padding:clamp(1.5rem,4vw,2.5rem);
  background:var(--paper);
  color:var(--ink-900);
  border:1px solid rgba(7,26,21,.15);
}
.page-faq .faq-cta__text h2{
  font-family:var(--font-display);
  font-size:clamp(1.3rem,3.4vw,1.8rem);
  font-weight:900;
  line-height:1.3;
  margin:0 0 .6rem;
  color:var(--ink-900);
}
.page-faq .faq-cta__text p{
  margin:0;
  font-size:.92rem;
  color:#2E453B;
  max-width:42rem;
}
.page-faq .faq-cta__actions{
  display:flex;
  flex-wrap:wrap;
  gap:.6rem;
  align-items:center;
}
.page-faq .faq-cta .cta{ color:var(--mist); border-color:rgba(7,26,21,.35); }
.page-faq .faq-cta .cta--lime{
  background:var(--lime);
  color:var(--ink-900);
  border-color:var(--lime);
}
.page-faq .faq-cta .cta--ghost{
  background:transparent;
  color:var(--ink-900);
  border:1px solid rgba(7,26,21,.4);
}
.page-faq .faq-cta .cta--ghost:hover{
  border-color:var(--ink-900);
  background:rgba(7,26,21,.06);
}

@media (min-width:640px){
  .page-faq .faq-triage__grid{ grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (min-width:900px){
  .page-faq .faq-hero__inner{ grid-template-columns:1.05fr .95fr; gap:clamp(2rem,4vw,3.5rem); }
  .page-faq .faq-triage__grid{ grid-template-columns:repeat(3,minmax(0,1fr)); }
}
@media (min-width:960px){
  .page-faq .faq-layout{ grid-template-columns:250px minmax(0,1fr); align-items:start; }
  .page-faq .faq-side{
    position:sticky;
    top:1.5rem;
    max-height:calc(100vh - 3rem);
    overflow-y:auto;
  }
  .page-faq .faq-cta__inner{ grid-template-columns:minmax(0,1fr) auto; align-items:center; }
  .page-faq .faq-cta__actions{ justify-content:flex-end; }
}
@media (prefers-reduced-motion:reduce){
  .page-faq *{ transition-duration:.001ms !important; animation-duration:.001ms !important; }
}
<<<END>>>
</main>
