/* FAQ Accordion Fix - Overrides problematic styles */

.faq-answer {
    display: block !important;
    max-height: 0 !important;
    overflow: hidden !important;
    transition: max-height 0.4s ease, padding 0.4s ease !important;
    grid-template-rows: none !important;
}

.faq-answer > p,
.faq-answer > div {
    padding: 0 25px !important;
    margin: 0 !important;
    overflow: visible !important;
    min-height: auto !important;
}

.faq-item.active .faq-answer {
    max-height: 500px !important;
    padding-bottom: 25px !important;
    grid-template-rows: none !important;
}

.faq-question {
    outline: none !important;
    border: none !important;
    background: white !important;
    text-align: left !important;
    cursor: pointer !important;
}

.faq-question:focus {
    outline: none !important;
    box-shadow: none !important;
}

.faq-icon {
    transition: transform 0.3s ease !important;
}

.faq-item.active .faq-icon {
    transform: rotate(180deg) !important;
}

/* Responsive fixes */
@media (max-width: 768px) {
    .faq-item.active .faq-answer {
        padding: 0 20px 20px 20px !important;
    }
    
    .faq-answer > p,
    .faq-answer > div {
        padding: 0 20px !important;
    }
}

@media (max-width: 576px) {
    .faq-item.active .faq-answer {
        padding: 0 18px 18px 18px !important;
    }
    
    .faq-answer > p,
    .faq-answer > div {
        padding: 0 18px !important;
    }
}