.formule {
    background: #28466D;
    color: #FDFEFF;
    padding-inline: 24px;
    padding-block: 48px;
    margin-block: 24px;

    @media (width > 991px) {
        padding-inline: 0;
        margin-block: 48px;
    }

    h2 {
        color: #FDFEFF;
    }

    .accordion {
        display: flex;
        flex-direction: column;
        flex: 1;

        .item {
            border-bottom: 1px solid #FDFEFF;
            
            &:has(h4:focus) {
                border-bottom: 0;
            }
            
            &:has(h4[aria-expanded="true"]:focus) {
                border-bottom: 1px solid #FDFEFF;
            }
        }

        .title {
            display: flex;
            justify-content: space-between;
            align-items: center;
            color: #FDFEFF;
            padding: 10px 0;
            margin-bottom: 0;
            cursor: pointer;
            font-size: 18px;
            gap: 8px;
            margin-top: 0;

            &:before {
                display: none;
            }
            
            @media (width > 768px) {
                font-size: 24px;
            }

            strong {
                display: flex;
                align-items: center;
                font-weight: normal;
                gap: 16px;
            }

            > span {
                display: flex;
                align-items: center;
                transition: rotate 300ms ease-out;
                rotate: 180deg;
            }

            /* Focus visible WCAG */
            &:focus-visible {
                outline: 2px solid #FDFEFF;
                outline-offset: 2px;
            }
        }

        .content {
            margin-bottom: 0;
            padding: 0;
            height: 0;
            overflow: hidden;
            color: #FDFEFF;
            transition: height 0.3s ease, block-size 0.3s ease;
            transition-behavior: allow-discrete;

            .tags {
                margin-bottom: 16px;
                display: flex;
                flex-wrap: wrap;
                gap: 8px;

                span {
                    display: block;
                    padding: 4px 16px;
                    border-radius: 8px;
                    color: #28466D;
                    background: #FDFEFF;
                    font-weight: 600;
                }
            }

            p, ul, li {
                color: #FDFEFF !important;
            }

            a {
                color: #FDFEFF !important;
                border-bottom-color: #FDFEFF;
            }
            
            p:last-child, ul:last-child, li:last-child {
                margin-bottom: 0;
            }
        }

        .title[aria-expanded="true"] {

            + .content {
                padding: 24px 0;
                height: auto;
                overflow: initial;
            }

            > span {
                rotate: 0deg;
            }
        }

        .item:not(.title[aria-expanded="true"]) .title {
            border-radius: 12px;
        }

        .item + .item {
            margin-top: 16px;
        }
    }
}


/* @starting-style {
    .accordion .content {
        height: 0;
    }
} */
