/**
 * Bloc Texte - Styles
 */

.blocTexte {
    width: 100%;
    padding: 50px 0;
}

.blocTexte__image{
    img{
            width: 100%;
    height: 100%;
    object-fit: contain;
    }
}

.blocTexte__inner {
    display: flex;
    flex-direction: column;
    gap: 25px;
    max-width: 996px;
    margin: 0 auto;
    text-align: center;
}

/* === HEADER (lead + titre) === */
.blocTexte__header {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 40px;
    margin-bottom: 25px;
}

/* === LEAD === */
.blocTexte__lead {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    margin: 0;
    font-family: 'Comfortaa', sans-serif;
    font-weight: 700;
    font-size: 16px;
    line-height: 1;
}

.blocTexte__lead--orange {
    color: #F05534;
}

.blocTexte__lead--navy {
    color: #202E3B;
}

.blocTexte__lead-icon {
    display: block;
    width: 12px;
    height: auto;
    flex-shrink: 0;
}

/* === TITRE === */
.blocTexte__title {
    margin: 0;
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
    font-size: 35px;
    line-height: 1.1;
    color: #202E3B;
}

/* === CONTENU TEXTE === */
.blocTexte__intro,
.blocTexte__body,
.blocTexte__conclusion {
    font-family: 'Montserrat', sans-serif;
    font-size: 14px;
    line-height: 1.5;
    color: #202E3B;
}

.blocTexte__intro p,
.blocTexte__body p,
.blocTexte__conclusion p {
    margin: 0 0 1em;
    font-size: 14px;
}

.blocTexte__intro p:last-child,
.blocTexte__body p:last-child,
.blocTexte__conclusion p:last-child {
    margin-bottom: 0;
}

/* ol centré : numéros collés au texte */
.blocTexte__intro ol {
    list-style-position: inside;
    padding-left: 0;
    text-align: center;
}

.blocTexte__conclusion {
    font-weight: 700;
}

/* === CORPS COLONNABLE === */
.blocTexte__body[data-cols="2"] {
    column-count: 2;
    column-gap: 50px;
    text-align: left;
}

.blocTexte__body[data-cols="3"] {
    column-count: 3;
    column-gap: 40px;
    text-align: left;
}

.blocTexte__body[data-cols="2"] > *,
.blocTexte__body[data-cols="3"] > * {
    break-inside: avoid;
}

/* Coupure de colonne manuelle : ajouter <p class="column-break"></p> dans l'éditeur */
.blocTexte__body[data-cols="2"] .column-break,
.blocTexte__body[data-cols="3"] .column-break {
    break-before: column;
    margin: 0;
    padding: 0;
}

.blocTexte__body[data-cols="2"] ul,
.blocTexte__body[data-cols="3"] ul,
.blocTexte__body[data-cols="2"] ol,
.blocTexte__body[data-cols="3"] ol {
    margin: 0;
    padding-left: 21px;
}

.blocTexte__body[data-cols="2"] li,
.blocTexte__body[data-cols="3"] li {
    margin-bottom: 5px;
}

/* === THÈME SOMBRE === */
.blocTexte--dark .blocTexte__title,
.blocTexte--dark .blocTexte__intro,
.blocTexte--dark .blocTexte__body,
.blocTexte--dark .blocTexte__conclusion {
    color: #F8F5E2;
}

.blocTexte--dark .blocTexte__lead--navy {
    color: #F8F5E2;
}

/* === RESPONSIVE === */
@media (max-width: 991px) {
    .blocTexte__title {
        font-size: 28px;
    }

    .blocTexte__body[data-cols="3"] {
        column-count: 2;
        column-gap: 30px;
    }
}

@media (max-width: 600px) {
    .blocTexte {
        padding: 35px 0;
    }

    .blocTexte__header {
        gap: 25px;
        margin-bottom: 15px;
    }

    .blocTexte__title {
        font-size: 24px;
    }

    .blocTexte__body[data-cols="2"],
    .blocTexte__body[data-cols="3"] {
        column-count: 1;
        text-align: center;
    }
}

/* Ajustements spécifiques AS SaintJacques FC */

.blocTexte.alt h2,
.blocTexte.alt .h3{
            font-size: 25px!important;
            font-weight: 600!important;
        }
.blocTexte.alt .h3{
    padding-bottom: 0!important;
}

.blocTexte.alt .blocTexte__header{
    margin-bottom: 0!important;
}