/* ==========================================================================
   Modul: FAQ V2 – modules/module-faq-v2.php
   Baut auf den FAQ-Styles aus all.css auf (.faq / .faq-listing)
   ========================================================================== */

.faq-v2 {
    position: relative;
    overflow: hidden;
}

.faq-v2__content {
    position: relative;
    z-index: 2;
    min-width: 0;
}

/* Liste */
.faq-v2 .faq-listing {
    padding: 20px 0;
}

/* Frage */
.faq-v2 .faq-listing .question,
.faq-v2 .faq-listing .question:hover,
.faq-v2 .faq-listing .question.is-active {
    background: var(--fv2-question-bg, #0f4c81);
    color: var(--fv2-question-color, #fff);
    border: 0;
}

.faq-v2 .faq-listing .question {
    margin-top: 12px;
    border-radius: 8px;
    transition: filter 0.2s ease, border-radius 0.2s ease;
}

.faq-v2 .faq-listing .question:first-child {
    margin-top: 0;
}

.faq-v2 .faq-listing .question:hover {
    filter: brightness(1.08);
}

.faq-v2 .faq-listing .question.is-active {
    border-radius: 8px 8px 0 0;
}

/* Pfeil */
.faq-v2 .faq-listing .question i {
    color: var(--fv2-arrow, #f7820f);
}

/* Antwort */
.faq-v2 .faq-listing .answer {
    padding: 20px;
    background: var(--fv2-answer-bg, #fff);
    border: 1px solid #e3e6ee;
    border-top-width: 0;
    border-radius: 0 0 8px 8px;
    box-shadow: 0 2px 6px rgba(15, 42, 80, 0.06);
}

.faq-v2 .faq-listing .question.is-active + .answer {
    border-color: #e3e6ee;
}

/* Illustration: auf kleinen Screens ausgeblendet */
.faq-v2__visual {
    display: none;
}

/* Desktop: zweispaltig mit Illustration rechts */
@media screen and (min-width: 1024px) {
    .module.faq-v2 .faq-v2__inner {
        display: grid;
        grid-template-columns: minmax(0, 1.25fr) minmax(0, 0.75fr);
        column-gap: 32px;
        width: 100%;
        padding: 40px 90px;
    }

    .module.faq-v2.no-image .faq-v2__inner {
        grid-template-columns: minmax(0, 1fr);
    }

    .faq-v2 .faq-listing {
        padding: 40px 0;
    }

    .faq-v2__visual {
        display: flex;
        align-items: flex-end;
        justify-content: flex-end;
        position: relative;
        margin: -40px -90px -40px 0;
        padding-bottom: var(--fv2-image-offset, 50px);
    }

    .faq-v2__image {
        display: block;
        width: 100%;
        max-width: 520px;
        height: auto;
        max-height: 620px;
        object-fit: contain;
        object-position: right bottom;
    }
}

@media (prefers-reduced-motion: reduce) {
    .faq-v2 .faq-listing .question {
        transition: none;
    }
}
