/* -------------
    SOMMAIRE
------------- */

/*
    @AUTHOR : Nicolas BOUDOT

    BLOC
    Style générale de tous les blocs
*/

/*
  00 - GÉNÉRAL
  01 - BACKGROUND-COLOR & COLOR
  02 - BACKGROUND-IMAGE & FILTER
*/



/* -----------------
  00 - GÉNÉRAL
----------------- */

.bloc {
    margin: 60px 0;
}

.bloc[class*="bgc-"] {
    padding: 60px 0;
    margin: 0;
}

.blocs-gap {
    column-gap: 62px;
}
/* Gestion des gaps si on utilise flex */
.blocs-gap.row {
    column-gap: 0;
    margin-inline: -31px;
}
.blocs-gap [class*="col-"] {
    padding-inline: 31px;
}

@media (max-width: 992px) {
    .bloc {
        margin: 30px 0;
    }
    .blocs-gap.row {
        display: flex;
        margin-inline: 0;
        row-gap: 3rem;
        flex-direction: column;
    }
    .blocs-gap [class*="col-"] {
        padding-inline: 0;
        width: 100%;
    }
    .bloc .bloc {
        margin-top: 0;
    }
}

    /* @changelog 2024-01-23 [FIX] (Nicolas) Gestion des inceptions de blocs */
    .bloc .bloc {
        padding: 0;
        margin-top: 4rem;
        margin-bottom: 0;
    }

/* @changelog 2025-04-22 [FIX] (Nicolas) Annuler l'espace entre un bloc titre et le suivant car un bloc titre est rarement fait pour être seul */
.bloc_title {
    padding-bottom: 0;
}

    .bloc_title + .bloc {
        padding-top: 0;
    }

/* @changelog 2025-01-17 [FIX] (Nicolas) Remise en place des classes par défaut utilisées par WP */
.alignleft {
    float: left;
    margin: 0 15px 10px 0;
}

.alignright {
    float: right;
    margin: 0 0 10px 15px;
}

.aligncenter {
    display: block;
    margin: 0 auto;
}



/* -------------------------
  01 - BACKGROUND & COLOR
------------------------- */

/*
  @infos :
    On défini les couleurs du texte en fonction de la couleur de fond du bloc.
*/

.bloc.bgc-tertiary,
.bloc.bgc-tertiary a {
    color: var(--dark-text);
}



/* ---------------------------------
  02 - BACKGROUND-IMAGE & FILTER
--------------------------------- */

.bloc.bg-picture {
    position: relative;
    text-align: center;
    padding: 145px 0;
}

    .bloc.bg-picture::before {
        content: "";
        position: absolute;
        inset: 0;
        background-color: rgb(var(--rgb_c-primary) , 0.75);
    }

.bloc.bg-picture,
.bloc.bg-picture h2,
.bloc.bg-picture a:not(.atom_button) {
    color: var(--white);
}

.templatePageTextBloc .bloc .bloc_texteImage-pictures .cover img,
.templatePageTextBloc .bloc .bloc_picture_gallery .cover img {
    border-radius: 20px;
}

@media (max-width: 767px) {
    .bloc_texteImage .bloc_texteImage-pictures {
        margin-top: 0;
    }
}

.bloc.bg-primary,
.bloc.bg-primary h2,
.bloc.bg-primary h3,
.bloc.bg-primary h4,
.bloc.bg-primary h5,
.bloc.bg-primary h6,
.bloc.bg-primary p,
.bloc.bg-primary a,
.bloc.bg-primary button,
.bloc.bg-primary input,
.bloc.bg-primary textarea {
    color: var(--white);
}

.have-bgc {
    padding: 35px 20px;
}

.have-bgc ul, .have-bgc ol,
.have-bgc ul:not([class]) {
    margin-block: 0;
}

.bloc .have-bgc + * {
    margin-top: 3rem;
}

.card {
    padding: 4.5rem 4rem;
    border-radius: 20px;
    font-size: 1.8rem;
}

.bloc .card {
    max-width: 100%;
}

.card.bgc-secondary,
.card.bgc-primary {
    color: var(--white);
}

.card.bgc-secondary h2,
.card.bgc-primary h2,
.card.bgc-secondary h3,
.card.bgc-primary h3,
.card.bgc-secondary h4,
.card.bgc-primary h4,
.card.bgc-secondary h5,
.card.bgc-primary h5,
.card.bgc-secondary h6,
.card.bgc-primary h6 {
    color: var(--white);
}

.bloc.no-marge-in-mobile .bloc {
    margin: 0 !important
}

