.faq-section { padding: 24px 0; background-color: #131316; }
.faq-section.alt-bg { background-color: #24232a; }
.faq-list { margin-top: 12px; display: flex; flex-direction: column; gap: 8px; }
.faq-item { background-color: #1c1b20; border-radius: 12px; padding: 0 20px; border: 1px solid rgba(255, 255, 255, 0.06); transition: border-color 0.2s ease, background-color 0.2s ease; }
.faq-item:has(.faq-question.active) { border-color: rgba(190, 30, 45, 0.2); background-color: #201f25; }
.faq-question { display: flex; align-items: center; justify-content: space-between; gap: 14px; padding: 16px 0; cursor: pointer; }
.faq-question .faq-question-text { font-family: "Plus Jakarta Sans", sans-serif; font-size: 15px; font-weight: 600; color: #f0f0f0; line-height: 1.3; }
.faq-question .faq-chevron { width: 20px; height: 20px; flex-shrink: 0; transition: transform 0.3s ease, color 0.3s ease; color: rgba(255, 255, 255, 0.75); background-color: rgba(255, 255, 255, 0.04); border-radius: 50%; padding: 3px; }
.faq-question.active .faq-chevron { transform: rotate(180deg); color: #BE1E2D; background-color: rgba(190, 30, 45, 0.1); }
.faq-answer { display: none; padding: 0 0 16px; }
.faq-answer.open { display: block; }
.faq-answer p { font-size: 14px; line-height: 24px; color: rgba(255, 255, 255, 0.75); margin: 0 0 8px; }
.faq-answer p:last-child { margin-bottom: 0; }
.faq-answer ul { padding-left: 18px; margin: 0 0 8px; }
.faq-answer ul li { font-size: 14px; line-height: 22px; color: rgba(255, 255, 255, 0.75); margin-bottom: 4px; }
.faq-answer a { color: #BE1E2D; font-weight: 600; }
.faq-answer a:hover { color: #ff6b7a; }
@media (min-width: 768px) {
  .faq-section { padding: 32px 0; }
  .faq-question .faq-question-text { font-size: 16px; }
  .faq-list { gap: 10px; }
}
