.cas_client {
    &[data-color="#0f398f"] {
        .citation {
            &:before {
                filter: brightness(0) saturate(100%) invert(99%) sepia(1%) saturate(544%) hue-rotate(172deg) brightness(118%) contrast(100%);
            }
        }

        .cas_client__tableaux {
            &:not(:has(>[data-id="liste_resultats"].active)) {
                .cas_client__element {

                    h5,
                    .listing li {
                        color: var(--dark-blue) !important;
                    }
                }
            }

            &:has([data-target="liste_objectifs"].active) {
                .cc_choix[data-target="liste_resultats"] {
                    &:not(:hover) {
                        color: var(--dark-blue) !important;
                    }
                }
            }

            &:has([data-target="liste_resultats"].active) {
                .cc_choix[data-target="liste_resultats"].active {
                    &:hover {
                        background: var(--orange) !important;
                        color: var(--white) !important;
                    }
                }
            }
        }
    }

    .container {
        display: flex;
        align-items: center;
        gap: 40px;

        @media (max-width: 991px) {
            flex-direction: column;
        }

        @media (min-width: 992px) and (max-width: 1199px) {
            margin-bottom: 40px;
        }

        @media (min-width: 1200px) {
            gap: 80px;
        }

        .citation {
            position: relative;
            display: flex;
            flex-direction: column;
            gap: 15px;

            @media (min-width: 992px) {
                max-width: 560px;
            }

            @media (min-width: 992px) and (max-width: 1199px) {
                margin-left: 20px;
                max-width: 345px;
            }

            @media (min-width: 1200px) and (max-width: 1399px) {
                max-width: 400px;
            }

            &:before {
                content: url('../../img/quote_mark.svg');
                width: 55px;
                height: 40px;
                display: inline-block;

                @media (min-width: 992px) {
                    margin-left: -30px;
                }
            }

            h2 {
                font-style: italic;
                color: var(--dark-blue);
                font-family: var(--secondary-font);
                line-height: 1.2;
            }
        }

        .cas_client_wrapper_content {
            position: relative;

            @media (max-width: 991px) {
                width: 100%;
                display: flex;
                flex-direction: column;
                align-items: center;
            }

            img {
                border-radius: 4px;
            }

            .cas_client__tableaux {
                position: relative;
                height: fit-content;
                background: var(--white);
                border-radius: var(--border-radius);
                box-shadow: 0px 0px 24px rgba(0, 0, 0, 0.09);
                padding: 30px 30px 10px 30px;
                transform: translate(-50%, -20%);
                left: 50%;
                max-width: unset;

                @media (min-width: 992px) {
                    position: absolute;
                    right: -180px;
                    top: 50%;
                    transform: translate(0, -50%);
                    max-width: 280px;
                    left: unset;
                }

                @media (min-width: 992px) and (max-width: 1199px) {
                    right: -50px;
                    top: 65%;
                }

                &:has(>[data-id="liste_resultats"].active) {
                    background: #141446;

                    .cas_client__element h5,
                    .listing li {
                        color: var(--white);
                    }

                    h5 {
                        border-top: 1px solid var(--blue);
                    }

                    .cc_choix {
                        &:not(.active):not(:hover) {
                            background: transparent;
                        }

                        &#choix_resultats {
                            &:hover {
                                background: var(--orange) !important;
                                color: var(--white) !important;
                            }
                        }
                    }
                }

                a {
                    position: absolute;
                    bottom: -30px;
                    color: var(--orange);
                    right: 0;
                    transition: var(--transition);

                    &:hover {
                        color: var(--dark-blue);
                    }
                }

                .cas_client__choix {
                    display: flex;
                    border: 1px solid var(--orange);
                    color: var(--orange);
                    border-radius: 50px;
                    padding: 3px;
                    align-items: center;
                    text-transform: uppercase;
                    font-family: var(--secondary-font);
                    font-size: 12px;
                    width: fit-content;
                    gap: 2px;

                    .cc_choix {
                        background: var(--white);
                        color: var(--orange);
                        border-radius: 50px;
                        padding: 0 8px 0px 8px;
                        height: 22px;
                        display: flex;
                        align-items: center;
                        cursor: pointer;
                        transition: var(--transition);

                        &:hover {
                            background: var(--orange);
                            color: var(--white);
                        }

                        &.active {
                            background: var(--orange);
                            color: var(--white);

                            &:hover {
                                background: var(--white);
                                color: var(--orange);
                            }
                        }
                    }
                }

                .cas_client__element {
                    transform: translateX(0);
                    opacity: 1;
                    
                    &.active {
                        transition: opacity 0.3s ease, transform 0.3s ease;
                    }

                    &:not(.active) {
                        opacity: 0;
                        max-height: 0;
                        transform: translateX(-50px);

                        >* {
                            margin: 0;
                            padding: 0;
                        }
                    }

                    h5 {
                        margin: 15px 0;
                        border-top: 1px solid var(--grey);
                        padding-top: 15px;
                        color: var(--dark-blue);
                        text-transform: uppercase;
                    }

                    .listing {
                        padding: 0;

                        li {
                            color: var(--blue);
                            font-size: 16px;
                            line-height: 20px;
                            display: flex;
                            margin-bottom: 10px;

                            &:before {
                                content: '+';
                                background: var(--orange);
                                color: var(--white);
                                border-radius: 50px;
                                font-size: 16px;
                                padding: 0 0 3px 0;
                                margin: 3px 10px 0 0;
                                width: 16px;
                                height: 16px;
                                display: inline-flex;
                                justify-content: center;
                                align-items: center;
                                flex-shrink: 0;
                            }
                        }
                    }
                }
            }
        }
    }
}