/* AL FAQ Manager — Frontend Styles */

.al-faqs {
    margin: 20px 0 30px;
}

.al-faq-item {
    border-bottom: 1px solid #e0e0e0;
    margin-bottom: 0;
}

.al-faq-item:first-child {
    border-top: 1px solid #e0e0e0;
}

.al-faq-question {
    cursor: pointer;
    padding: 20px 40px 20px 0;
    font-size: 21px;
    font-weight: 600;
    color: var(--alh-blue-1, #00194C);
    list-style: none;
    position: relative;
    line-height: 1.4;
    margin-bottom: 0;
}

.al-faq-question h3 {
    font-size: 21px;
    font-weight: 600;
    line-height: 1.4;
    margin-bottom: 0;
    color: inherit;
}

/* Remove default marker */
.al-faq-question::-webkit-details-marker {
    display: none;
}

.al-faq-question::marker {
    display: none;
    content: '';
}

/* Plus/minus icon */
.al-faq-question::after {
    content: '+';
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    font-size: 1.5em;
    font-weight: 300;
    color: var(--alh-accent, #F69D16);
    line-height: 1;
    transition: transform 0.2s ease;
}

.al-faq-item[open] > .al-faq-question::after {
    content: '\2212'; /* minus sign */
}

.al-faq-answer {
    padding: 0 0 20px 0;
    color: #333;
    font-size: 0.95em;
    line-height: 1.7;
}

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

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

/* Mobile adjustments */
@media (max-width: 768px) {
    .al-faq-question {
        padding: 16px 36px 16px 0;
        font-size: 0.95em;
    }

    .al-faq-answer {
        padding: 0 0 16px 0;
        font-size: 0.9em;
    }
}
