/* FAQs V3 — Numbered Accordion + Brand Promise CTA */
.faq.v3 {
    /* Accordion list — 10px gap between items */
    .faq-v3-lst {
        gap: 0.56rem;
    }

    /* Accordion item — 20px radius (override default card radius for v3 only) */
    .faq-v3-itm {
        --bdr-rds-crd: 1.11rem;
    }

    /* Open state — flip closed white card to teal callout color, white text */
    .faq-v3-itm > details[open] {
        background-color: var(--lt-callout);
        color: var(--white);
    }

    /* Summary row */
    .faq-v3-smy {
        cursor: pointer;
        list-style: none;
        gap: 1.33rem;
    }

    .faq-v3-smy::-webkit-details-marker {
        display: none;
    }

    /* Number column — fixed 63px, centered, semi-opaque when closed */
    .faq-v3-num {
        flex: 0 0 3.5rem;
        text-align: center;
        opacity: 0.4;
    }

    .faq-v3-itm > details[open] .faq-v3-num {
        opacity: 0.6;
    }

    /* Title takes remaining space */
    .faq-v3-ttl {
        flex: 1 1 auto;
    }

    /* Plus / X icons — swap on open state */
    .faq-v3-icn {
        flex: 0 0 0.78rem;
        width: 0.78rem;
        height: 0.78rem;
        display: flex;
        align-items: center;
    }

    .faq-v3-icn svg {
        width: 100%;
        height: auto;
    }

    .faq-v3-icn-x {
        display: none;
    }

    .faq-v3-itm > details[open] .faq-v3-icn-plus {
        display: none;
    }

    .faq-v3-itm > details[open] .faq-v3-icn-x {
        display: flex;
    }

    /* CTA Brand Promise card — 24px radius (different from accordion) */
    .faq-v3-cta {
        --bdr-rds-crd: 1.33rem;
    }

    /* Desktop padding override — Figma 42px / 60px (default pd_v / pd_h on a 67ch parent resolves smaller) */
    @media screen and (min-width: 1280px) {
        .faq-v3-itm > details > .faq-v3-smy {
            padding: 2.33rem 3.33rem;
        }

        .faq-v3-itm > details > .faq-v3-bdy {
            padding-inline: 3.33rem;
            padding-bottom: 2.33rem;
        }

        .faq-v3-cta > .pd_v.pd_h {
            padding: 2.5rem 1.78rem;
        }
    }
}
