.faq{ background:#fff; padding:80px 0; }
.faq-grid{ display:grid; grid-template-columns:1.2fr .8fr; gap:50px; align-items:start; }

.faq-title{
  font-size:2.4rem; font-weight:800; color:#161616;
  margin-bottom:24px; padding-bottom:14px;
  border-bottom:3px solid #F4C61C; display:inline-block;
}

.faq-list{ display:flex; flex-direction:column; gap:8px; }

.faq-item{ border-radius:6px; overflow:hidden; background:#F5F5F8; transition:.25s; }
.faq-item.open{ background:#2F2454; }

.faq-question{
  width:100%; display:flex; align-items:flex-start; gap:14px;
  background:none; border:none; padding:18px 20px;
  text-align:left; cursor:pointer;
}

.faq-icon-q{
  flex-shrink:0; width:24px; height:24px; border-radius:50%;
  background:#2F2454; color:#fff; font-size:11px;
  display:flex; align-items:center; justify-content:center;
  margin-top:2px;
}
.faq-item.open .faq-icon-q{ background:#F4C61C; color:#2F2454; }

.faq-question-text{ flex:1; font-size:15px; font-weight:600; color:#333; line-height:1.5; }
.faq-item.open .faq-question-text{ color:#fff; }

.faq-toggle-icon{ flex-shrink:0; color:#888; font-size:14px; margin-top:3px; }
.faq-item.open .faq-toggle-icon{ color:#fff; }

.faq-answer{ max-height:0; overflow:hidden; transition:max-height .3s ease; }
.faq-answer p{ padding:0 20px 20px 58px; margin:0; font-size:14px; line-height:1.7; color:#666; }
.faq-item.open .faq-answer p{ color:#c9c5d8; }

.faq-image-col{ position:sticky; top:110px; text-align:center; }
.faq-image-col img{ max-width:100%; margin:0 auto; }

@media(max-width:992px){
  .faq-grid{ grid-template-columns:1fr; gap:32px; }
  .faq-image-col{ display:none; }
}