/* ---------- FAQ accordion ---------- */
.faq-page{padding:88px 0;}
.faq-list{max-width:840px;}
.faq-item{border-bottom:1px solid var(--line);}
.faq-item:first-child{border-top:1px solid var(--line);}

.faq-q{
  width:100%;
  display:flex; align-items:center; gap:18px;
  padding:26px 4px;
  background:none; border:0; text-align:left; cursor:pointer;
  font-family:'Satoshi',sans-serif; font-size:17px; font-weight:600;
  color:var(--ink);
  transition:color .2s;
}
.faq-q:hover{color:var(--accent);}
.faq-idx{
  font-family:'Satoshi',monospace; font-size:12px; font-weight:400;
  color:var(--accent); flex:none;
}
.faq-q-text{flex:1;}
.faq-caret{
  width:9px; height:9px; flex:none;
  border-right:1.5px solid currentColor; border-bottom:1.5px solid currentColor;
  transform:rotate(45deg);
  transition:transform .25s ease;
}
.faq-item.open .faq-q{color:var(--accent);}
.faq-item.open .faq-caret{transform:rotate(-135deg);}

.faq-a{
  max-height:0;
  overflow:hidden;
  transition:max-height .35s ease;
}
.faq-a-inner{
  padding:0 4px 28px 34px;
  color:var(--steel);
  font-size:15px; line-height:1.75;
  max-width:780px;
}
.faq-a-inner p{margin-bottom:14px;}
.faq-a-inner p:last-child{margin-bottom:0;}

@media (max-width:560px){
  .faq-q{font-size:15.5px; gap:12px;}
  .faq-a-inner{padding-left:4px;}
}
