/*
 * Section Réassurance (flexible-business-cases-reassurance). Namespacé, dépend de
 * event-base.css (variables --bc-*).
 * Pas de description.txt fournie pour cette section : typo reprise des
 * conventions déjà établies. Pas d'eyebrow (absent de la maquette de
 * référence, contrairement aux autres sections).
 */

/* Padding réduit au minimum par rapport au générique (80px desktop / 40px
   mobile, cf. flexible-business-cases-base.css), tout en restant symétrique
   haut/bas pour garder le contenu centré. */
.flexible-business-cases-reassurance.flexible-business-cases-section {
    padding: 32px 0;
}

@media (max-width: 767px) {
    .flexible-business-cases-reassurance.flexible-business-cases-section {
        padding: 20px 0;
    }
}

.flexible-business-cases-reassurance__title {
    font-family: var(--bc-font-heading);
    font-weight: 800;
    font-size: 32px;
    line-height: 1.25;
    margin: 0 0 16px;
    color: var(--bc-section-color-text, var(--bc-color-text));
    text-align: left;
}

.flexible-business-cases-reassurance__subtitle {
    font-family: var(--bc-font-body);
    font-size: 18px;
    margin: 0 0 32px;
    color: var(--bc-section-color-text, var(--bc-color-text-muted));
}

.flexible-business-cases-reassurance__box {
    display: flex;
    flex-wrap: wrap;
    gap: 32px;
    padding: 32px;
}

/* space-between (pas center) : les items s'étalent sur toute la largeur de
   l'encadré (premier collé à gauche, dernier collé à droite) plutôt que
   groupés au centre avec un grand vide de part et d'autre. */
.flexible-business-cases-reassurance__box--centered {
    justify-content: space-between;
}

.flexible-business-cases-reassurance__item {
    flex: 1 1 160px;
    max-width: 220px;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 8px;
    text-align: center;
}

.flexible-business-cases-reassurance__box--centered .flexible-business-cases-reassurance__item {
    flex: 1 1 200px;
    max-width: 260px;
}

.flexible-business-cases-reassurance__item-donnee {
    margin: 0;
    font-family: var(--bc-font-body);
    font-weight: 800;
    font-size: 40px;
    line-height: 1;
    color: var(--bc-color-accent);
}

.flexible-business-cases-reassurance__item-image {
    max-width: 160px;
    max-height: 48px;
    object-fit: contain;
}

.flexible-business-cases-reassurance__item-texte {
    margin: 0;
    width: 100%;
    font-family: var(--bc-font-body);
    font-size: 14px;
    line-height: 1.4;
    color: var(--bc-section-color-text, var(--bc-color-text-muted));
    /* Casse les mots trop longs pour tenir dans la carte (ex. un texte sans
       espaces) au lieu de déborder sur les cartes voisines. */
    overflow-wrap: break-word;
    word-break: break-word;
}

/* ── Grand écran (≥24", ≥1920px) ──────────────────────────────────────── */

@media (min-width: 1920px) {
    /* Pas de max-width élargi ici : cette section doit garder le même
       conteneur (1200px, flexible-business-cases-base.css) que les autres
       sections du catalogue. Un max-width différent par section déréglait
       l'alignement horizontal entre sections sur très grand écran (ou à
       zoom réduit, qui élargit la fenêtre effective en px CSS au-delà de
       1920px) — chaque conteneur se centrant indépendamment avec une
       largeur différente. */

    .flexible-business-cases-reassurance__item-donnee {
        font-size: 48px;
    }
}

/* ── Tablette (~768-1199px) ───────────────────────────────────────────── */

@media (max-width: 1199px) {
    .flexible-business-cases-reassurance__box {
        gap: 24px;
        padding: 24px;
    }

    .flexible-business-cases-reassurance__item {
        flex: 1 1 calc(50% - 12px);
    }

    .flexible-business-cases-reassurance__item-donnee {
        font-size: 32px;
    }
}

/* ── Mobile (<768px) ──────────────────────────────────────────────────── */

@media (max-width: 767px) {
    /* 2 colonnes (pas empilé sur 1 seule) : demande explicite. */
    .flexible-business-cases-reassurance__box {
        justify-content: center;
        padding: 20px;
        gap: 24px;
    }

    /* Spécificité (2 classes) obligatoire pour battre
       .box--centered .item définie hors media query, sinon cette dernière
       l'emporte malgré la media query (même si elle est plus tardive dans
       le fichier, elle a une specificité plus forte que .item seul). */
    .flexible-business-cases-reassurance__item,
    .flexible-business-cases-reassurance__box--centered .flexible-business-cases-reassurance__item {
        flex: 1 1 calc(50% - 12px);
        max-width: calc(50% - 12px);
    }

    /* Police réduite pour que "ISO 27001" tienne sur une ligne en 2 colonnes. */
    .flexible-business-cases-reassurance__item-donnee {
        font-size: 20px;
    }

    .flexible-business-cases-reassurance__item-texte {
        font-size: 13px;
    }

    .flexible-business-cases-reassurance__title {
        font-size: 24px;
    }
}
