/* ============================================
   FAQ SECTION
   ============================================ */
section.visible .faq-container {
  opacity: 1;
  transform: translateY(0);
  transition-delay: 0.6s;
}

/* FAQ Item */
.faq-item {
  background: rgba(100, 150, 255, 0.03);
  border: 1px solid rgba(100, 150, 255, 0.2);
  border-radius: 12px;
  margin-bottom: 20px;
  overflow: hidden;
  transition: all 0.3s ease-in-out;
}

.faq-item:hover {
  background: rgba(100, 150, 255, 0.05);
  border-color: rgba(100, 150, 255, 0.3);
}

.faq-item.active {
  background: rgba(100, 150, 255, 0.08) !important;
  border-color: rgba(100, 150, 255, 0.4) !important;
}

.faq-item.active .faq-toggle {
  transform: rotate(45deg);
}

.faq-item.active .faq-answer {
  max-height: 500px;
  padding: 20px;
  opacity: 1;
}

.faq-question {
  transition: all 300ms ease-in-out;
}

.faq-question:hover {
  background: rgba(100, 150, 255, 0.05);
}

.faq-question h3 {
  margin-bottom: 0;
  font-size: 1.5rem;
}

/* Responsive */
@media (max-width: 768px) {
  .faq-question {
    padding: 20px;
    gap: 12px;
  }
  .faq-icon {
    font-size: 24px;
  }
  .faq-question h3 {
    margin: 0;
    font-size: 1.125rem;
  }
  .faq-toggle {
    font-size: 28px;
  }
  .faq-item.active .faq-answer {
    padding: 20px 20px 20px 20px;
    opacity: 1 !important;
  }
}