.page-faq{
  --faq-sidebar-w:268px;
  --faq-gap:28px;
  background:var(--deep-blue);
  color:var(--light-gray);
  font-family:var(--font-body);
  line-height:1.7;
  overflow-wrap:break-word;
}
.page-faq h1,
.page-faq h2,
.page-faq p,
.page-faq ul,
.page-faq ol{
  margin:0;
  padding:0;
}
.page-faq .container{
  max-width:var(--container-w);
  margin:0 auto;
  padding:0 20px;
}
.page-faq a{
  color:var(--electric-blue);
  text-decoration:none;
  border-bottom:1px solid transparent;
  transition:color .2s ease,border-color .2s ease;
}
.page-faq a:hover{
  color:var(--white);
  border-bottom-color:var(--electric-blue);
}
.page-faq a:focus-visible,
.page-faq .faq-q:focus-visible{
  outline:2px solid var(--electric-blue);
  outline-offset:2px;
}
.page-faq .breadcrumb{
  display:flex;
  align-items:center;
  gap:10px;
  padding:20px 0 12px;
  font-family:var(--font-mono);
  font-size:.8rem;
  color:rgba(255,255,255,.55);
}
.page-faq .breadcrumb a{
  color:var(--gold);
  font-weight:600;
}
.page-faq .breadcrumb-sep{
  color:var(--line-gold);
}
.page-faq .faq-hero{
  margin-top:6px;
  background:linear-gradient(145deg,var(--navy-blue) 0%,var(--deep-blue) 75%);
  border:1px solid var(--line);
  border-left:3px solid var(--gold);
}
.page-faq .faq-hero-grid{
  display:grid;
  grid-template-columns:1fr;
}
.page-faq .faq-hero-copy{
  padding:30px 22px 0;
}
.page-faq .faq-eyebrow{
  margin-bottom:14px;
  color:var(--gold);
  font-family:var(--font-mono);
  font-size:.8rem;
  letter-spacing:.12em;
  text-transform:uppercase;
}
.page-faq .faq-hero h1{
  margin-bottom:16px;
  font-family:var(--font-head);
  font-size:2.1rem;
  line-height:1.12;
  font-weight:700;
  color:var(--white);
  letter-spacing:.01em;
}
.page-faq .faq-lead{
  margin-bottom:22px;
  font-size:1rem;
  color:rgba(255,255,255,.78);
  max-width:34em;
}
.page-faq .faq-hero-stats{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  padding-bottom:24px;
}
.page-faq .faq-hero-stat{
  flex:1 1 30%;
  min-width:110px;
  padding:12px 14px;
  background:rgba(255,255,255,.05);
  border:1px solid var(--line);
  font-size:.85rem;
  color:rgba(255,255,255,.65);
}
.page-faq .faq-hero-stat .mono{
  display:block;
  font-size:1.5rem;
  font-weight:700;
  line-height:1.15;
  color:var(--gold);
  margin-bottom:4px;
}
.page-faq .faq-hero-visual{
  padding:0 22px 22px;
}
.page-faq .faq-hero-visual img{
  display:block;
  width:100%;
  height:auto;
  aspect-ratio:2/1;
  object-fit:cover;
  border:1px solid var(--line);
  background:var(--navy-blue);
}
.page-faq .faq-layout{
  display:grid;
  grid-template-columns:1fr;
  gap:var(--faq-gap);
  padding-top:38px;
  padding-bottom:60px;
}
.page-faq .faq-index{
  align-self:start;
  background:var(--navy-blue);
  border:1px solid var(--line);
  padding:18px 14px;
}
.page-faq .faq-index-head{
  border-bottom:1px solid var(--line-gold);
  padding-bottom:12px;
  margin-bottom:12px;
}
.page-faq .faq-index-label{
  color:var(--gold);
  font-family:var(--font-mono);
  font-size:.8rem;
  letter-spacing:.06em;
  text-transform:uppercase;
}
.page-faq .faq-index-sub{
  display:block;
  margin-top:6px;
  font-size:.88rem;
  color:rgba(255,255,255,.6);
}
.page-faq .faq-index-list{
  list-style:none;
  margin-bottom:12px;
}
.page-faq .faq-index-item + .faq-index-item{
  border-top:1px solid var(--line);
}
.page-faq .faq-index-link{
  display:flex;
  align-items:center;
  gap:10px;
  padding:12px 8px;
  color:rgba(255,255,255,.86);
  font-weight:600;
  font-size:.95rem;
  border-left:2px solid transparent;
}
.page-faq .faq-index-link .mono{
  color:var(--gold);
  font-weight:400;
  font-size:.78rem;
  min-width:2em;
}
.page-faq .faq-index-link:hover,
.page-faq .faq-index-link[aria-current="true"]{
  color:var(--white);
  background:var(--gold-20);
  border-left-color:var(--gold);
}
.page-faq .faq-index-foot{
  display:flex;
  align-items:center;
  gap:8px;
  padding-top:12px;
  border-top:1px solid var(--line);
  color:rgba(255,255,255,.5);
  font-size:.75rem;
}
.page-faq .faq-index-foot .status-light{
  display:inline-block;
  width:8px;
  height:8px;
  background:var(--gold);
}
.page-faq .faq-content{
  min-width:0;
}
.page-faq .faq-section{
  scroll-margin-top:120px;
  margin-bottom:44px;
}
.page-faq .section-head{
  display:flex;
  align-items:center;
  gap:12px;
  border-bottom:2px solid var(--line-gold);
  padding-bottom:10px;
  margin-bottom:18px;
}
.page-faq .section-index{
  color:var(--gold);
  font-family:var(--font-mono);
  font-size:.8rem;
  font-weight:700;
  letter-spacing:.05em;
}
.page-faq .section-head h2{
  font-family:var(--font-head);
  font-size:1.55rem;
  line-height:1.2;
  font-weight:700;
  color:var(--white);
}
.page-faq .faq-item{
  margin-bottom:12px;
  background:var(--navy-blue);
  border:1px solid var(--line);
  border-left:3px solid var(--line);
  transition:border-color .2s ease;
}
.page-faq .faq-item:hover{
  border-color:var(--line-gold);
}
.page-faq .faq-item[open]{
  border-color:var(--line-gold);
  border-left-color:var(--gold);
}
.page-faq .faq-q{
  display:flex;
  align-items:center;
  gap:12px;
  padding:16px 14px 16px 18px;
  cursor:pointer;
  list-style:none;
  font-family:var(--font-head);
  font-size:1.02rem;
  font-weight:600;
  color:var(--white);
  line-height:1.4;
}
.page-faq .faq-q::-webkit-details-marker{
  display:none;
}
.page-faq .faq-q-num{
  flex:0 0 auto;
  min-width:3.2em;
  color:var(--gold);
  font-family:var(--font-mono);
  font-size:.75rem;
  font-weight:400;
  letter-spacing:.03em;
}
.page-faq .faq-q-text{
  flex:1 1 auto;
  min-width:0;
}
.page-faq .faq-q-icon{
  flex:0 0 auto;
  width:18px;
  height:18px;
  margin-left:auto;
  color:var(--gold);
  transition:transform .25s ease;
}
.page-faq .faq-item[open] .faq-q-icon{
  transform:rotate(45deg);
}
.page-faq .faq-a{
  padding:2px 18px 20px 52px;
  font-size:.94rem;
  color:rgba(255,255,255,.8);
  border-top:1px solid transparent;
}
.page-faq .faq-item[open] .faq-a{
  border-top-color:var(--line);
  padding-top:16px;
}
.page-faq .faq-a p{
  margin-bottom:10px;
}
.page-faq .faq-a p:last-child{
  margin-bottom:0;
}
.page-faq .faq-a a{
  font-weight:600;
}
.page-faq .faq-tips{
  margin-bottom:10px;
  padding-left:1.5em;
}
.page-faq .faq-tips li{
  margin-bottom:6px;
}
.page-faq .faq-tips li::marker{
  color:var(--gold);
}
.page-faq .faq-img-wrap{
  margin:18px 0 4px;
  padding:10px;
  border:1px solid var(--line);
  background:rgba(255,255,255,.04);
}
.page-faq .faq-img-wrap img{
  display:block;
  width:100%;
  height:auto;
  aspect-ratio:2/1;
  object-fit:cover;
  border:1px solid var(--line);
}
.page-faq .faq-img-caption{
  display:block;
  margin-top:10px;
  font-family:var(--font-mono);
  font-size:.75rem;
  color:rgba(255,255,255,.45);
  letter-spacing:.04em;
}
.page-faq .faq-feedback{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:10px;
  margin-top:10px;
  padding:14px 16px;
  border:1px dashed var(--line-gold);
  background:var(--gold-20);
  font-size:.85rem;
  color:rgba(255,255,255,.9);
}
.page-faq .faq-feedback-label{
  font-weight:600;
}
.page-faq .btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  font-family:var(--font-head);
  font-weight:700;
  font-size:.92rem;
  padding:11px 20px;
  border:1px solid transparent;
  text-decoration:none;
  transition:background .2s ease,color .2s ease,border-color .2s ease;
}
.page-faq .btn-gold{
  background:var(--gold);
  color:var(--deep-blue);
  border-color:var(--gold);
}
.page-faq .btn-gold:hover{
  background:transparent;
  color:var(--gold);
  border-color:var(--gold);
}
.page-faq .btn-outline{
  background:transparent;
  color:var(--white);
  border-color:var(--line-gold);
}
.page-faq .btn-outline:hover{
  color:var(--electric-blue);
  border-color:var(--electric-blue);
}
.page-faq .faq-support{
  margin-top:34px;
  padding:28px 22px;
  background:linear-gradient(135deg,var(--navy-blue) 0%,var(--deep-blue) 85%);
  border:1px solid var(--line-gold);
  border-top:3px solid var(--gold);
}
.page-faq .faq-support-title{
  margin-bottom:10px;
  font-family:var(--font-head);
  font-size:1.6rem;
  line-height:1.2;
  color:var(--white);
}
.page-faq .faq-support-intro{
  color:rgba(255,255,255,.72);
  font-size:.95rem;
  margin-bottom:18px;
}
.page-faq .faq-support-list{
  list-style:none;
  margin-bottom:20px;
}
.page-faq .faq-support-list li{
  padding:10px 0;
  border-bottom:1px solid var(--line);
  font-size:.95rem;
  color:rgba(255,255,255,.85);
}
.page-faq .faq-support-list .mono{
  display:block;
  color:var(--gold);
  font-size:.75rem;
  letter-spacing:.05em;
  margin-bottom:2px;
}
.page-faq .faq-support-links{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
}

@media (min-width:768px){
  .page-faq .faq-hero-grid{
    grid-template-columns:1.05fr .95fr;
    align-items:center;
  }
  .page-faq .faq-hero-copy{
    padding:42px 0 40px 42px;
  }
  .page-faq .faq-hero-visual{
    padding:28px 42px 28px 0;
  }
  .page-faq .faq-hero h1{
    font-size:2.7rem;
  }
  .page-faq .faq-layout{
    grid-template-columns:var(--faq-sidebar-w) minmax(0,1fr);
    gap:var(--faq-gap);
    align-items:start;
  }
  .page-faq .faq-index{
    position:sticky;
    top:120px;
  }
  .page-faq .faq-q{
    font-size:1.06rem;
  }
}

@media (min-width:1100px){
  .page-faq .faq-a{
    padding-left:58px;
  }
}
