/**
 * EK FAQ Accordion Styles
 * 
 * Minimal, clean accordion design with:
 * - Semantic HTML (h3 headings)
 * - Schema.org microdata attributes
 * - Accessibility features (ARIA, keyboard nav)
 * - Smooth animations via jQuery
 * - Responsive design
 * 
 * @package EK
 */

.ek-faq-accordion {
    margin: 1.25rem 0;
    text-align: left;
}

.ek-faq-item {
    border-bottom: 1px solid rgba(0, 0, 0, 0.25);
}

.ek-faq-question {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0.9375rem 0;
    cursor: pointer;
    user-select: none;
    margin: 0;
    font-size: inherit;
    font-weight: inherit;
}

.ek-faq-question:focus {
    outline: none;
}

.ek-faq-question-text {
    flex: 1;
    font-weight: 400;
    font-size: 1.25rem;
    line-height: 1.4;
    text-align: left;
}

.ek-faq-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 1.25rem;
    height: 1.25rem;
    margin-left: 0.9375rem;
    flex-shrink: 0;
    transition: transform 0.3s ease;
}

.ek-faq-icon svg {
    width: 0.75rem;
    height: 0.75rem;
    display: block;
}

/* Rotate chevron when item is open */
.ek-faq-item-open .ek-faq-icon {
    transform: rotate(90deg);
}

.ek-faq-answer {
    overflow: hidden;
    display: none;
    /* Note: No CSS transitions here - jQuery slideDown/slideUp handles the animation */
}

.ek-faq-answer-content {
    padding: 0 0 0.9375rem 0;
    text-align: left;
}

.ek-faq-answer-content p:first-child {
    margin-top: 0;
}

.ek-faq-answer-content p:last-child {
    margin-bottom: 0;
}

.ek-faq-no-results {
    padding: 1.25rem;
    text-align: center;
    color: #666;
    font-style: italic;
}

/* Responsive */
@media (max-width: 48rem) {
    .ek-faq-question {
        padding: 0.75rem 0.9375rem;
    }

    .ek-faq-question-text {
        font-size: 0.875rem;
    }

    .ek-faq-answer-content {
        padding: 0.9375rem;
    }
}

