section:not(.cartes) {
    h1:has(+p),
    .h1_like:has(+.p),
    h2:has(+p),
    .h2_like:has(+.p),
    h3:has(+p),
    .h3_like:has(+.p),
    h4:has(+p),
    .h4_like:has(+p) {
        margin-bottom: 20px;
    }
}

section {
    .section__title:has(h1+p),
    .section__title:has(.h1_like+p),
    .section__title:has(h2+p),
    .section__title:has(.h2_like+p),
    .section__title:has(h3+p),
    .section__title:has(.h3_like+p),
    .section__title:has(h4+p),
    .section__title:has(.h4_like+p) {
        margin-bottom: 50px;
    }
}

section {
    .section__title {
        display: flex;
        flex-direction: column;
        margin: 0 auto 50px auto;
        max-width: 960px;

        &.text-center {
            text-align: center;

            * {
                text-align: center;
            }
        }

        &.text-end {
            text-align: flex-end;

            * {
                text-align: flex-end;
            }
        }

        &.text-start {
            text-align: flex-start;

            * {
                text-align: flex-start;
            }
        }

        p {
            max-width: 720px;
        }
    }
}

section:not(.galerie, .form) {
    .section__title {
        p {
            margin-top: 22px;
            font-family: var(--sans);
            color: #3B362D;
            font-size: 18px;
            line-height: 1.5;
            letter-spacing: 0.01em;
            
            
        }
    }
}

section:not(.hdp, [data-color]) {
    +section:not([data-color], .form, .cpt, .newsletter, .header_and_menu, .statutory, .galerie, .basic_2cols, .recemment_ajoutes, .decennies) {
        padding-top: 0 !important;
        padding-bottom: 0 !important;
    }
}

section {
    &.pb-0 {
        padding-bottom: 0px;
    }

    &.pt-0 {
        padding-top: 0px;
    }
}

/* ============================= */
/* PADDING GLOBAL DES SECTIONS */
/* ============================= */

section {
    padding: 24px 0;
}

@media (min-width: 768px) {
    section {
        padding: 32px 0;
    }
}

@media (min-width: 992px) {
    section {
        padding: 40px 0;
    }
}

@media (min-width: 1200px) {
    section {
        padding: 50px 0;
    }
}

@media (min-width: 1400px) {
    section {
        padding: 60px 0;
    }
}

section {
    &[data-color="#ffffff"] {
        background-color: var(--white);
        position: relative;

        &:has(+ [data-color="#ffffff"]) {
            padding-bottom: 25px;
        }

        &+section[data-color="#ffffff"] {
            padding-top: 25px;
        }
    }

    &[data-color="#9a5cff"],
    &[data-color="#004baf"] {
        .section__title,
        &.etapes,
        &.columns {
            h1,
            h2,
            h3,
            h4,
            h5,
            p,
            li {
                color: var(--white);
            }
        }

        .wrapper_slider .splide__arrows .splide__arrow--prev,
        .wrapper_slider .splide__arrows .splide__arrow--next {
            &:not(:hover) {
                border: 1px solid var(--white) !important;
            }
        }

        .wrapper_slider .splide__arrows .splide__arrow--prev::after,
        .wrapper_slider .splide__arrows .splide__arrow--next::before {
            color: var(--white) !important;
        }

        .wrapper_slider .splide__arrows .splide__arrow--prev::before,
        .wrapper_slider .splide__arrows .splide__arrow--next::after {
            filter: brightness(0) saturate(100%) invert(91%) sepia(92%) saturate(32%) hue-rotate(106deg) brightness(108%) contrast(107%) !important;
        }
    }

    &[data-color="#9a5cff"] {
        background: var(--gradient-purple);
        position: relative;

        &:has(+ [data-color="#9a5cff"]) {
            padding-bottom: 25px;
        }

        &+section[data-color="#9a5cff"] {
            padding-top: 25px;
        }
    }

    &[data-color="#004baf"] {
        background: var(--gradient-blue);
        position: relative;

        &:has(+ [data-color="#004baf"]) {
            padding-bottom: 25px;
        }

        &+section[data-color="#004baf"] {
            padding-top: 25px;
        }
    }

    &:not([data-color]) {
        background: var(--grey);
    }
}