/* ==========================================================================
   SECTION "BKB SYNTHÉSIS" – Grille 2×2 numérotée
   Lignes de séparation pointillées en croix, emblème central,
   numéros (01–04) avec titres et descriptions.
   Fond clair / blanc : lignes et textes sombres.
   ========================================================================== */

/* 1. Conteneur principal de la grille des 4 blocs */
.elementor-element-ac7e963,
[data-id="ac7e963"] {
    position: relative !important;
    display: flex !important;
    flex-direction: column !important;
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
}

/* Ligne pointillée horizontale GAUCHE */
.elementor-element-ac7e963::before,
[data-id="ac7e963"]::before {
    content: '' !important;
    position: absolute !important;
    top: 50% !important;
    left: 0 !important;
    width: calc(50% - 28px) !important;
    height: 0 !important;
    border-bottom: 1px dotted rgba(20, 40, 34, 0.28) !important;
    pointer-events: none !important;
    z-index: 3 !important;
    transform: translateY(-50%) !important;
}

/* Ligne pointillée horizontale DROITE */
.elementor-element-ac7e963::after,
[data-id="ac7e963"]::after {
    content: '' !important;
    position: absolute !important;
    top: 50% !important;
    right: 0 !important;
    width: calc(50% - 28px) !important;
    height: 0 !important;
    border-bottom: 1px dotted rgba(20, 40, 34, 0.28) !important;
    pointer-events: none !important;
    z-index: 3 !important;
    transform: translateY(-50%) !important;
}

/* 2. Les 2 rangées horizontales (Ligne 1 & Ligne 2) */
.elementor-element-3ef644a,
.elementor-element-8d6d1ea,
[data-id="3ef644a"],
[data-id="8d6d1ea"] {
    position: relative !important;
    display: flex !important;
    flex-direction: row !important;
    align-items: stretch !important;
    width: 100% !important;
    max-width: 100% !important;
    gap: 0 !important;
    box-sizing: border-box !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    border-bottom: none !important;
}

/* Ligne pointillée verticale HAUTE */
.elementor-element-3ef644a::after,
[data-id="3ef644a"]::after {
    content: '' !important;
    position: absolute !important;
    top: 0 !important;
    bottom: 28px !important;
    left: 50% !important;
    width: 0 !important;
    height: auto !important;
    border-right: 1px dotted rgba(20, 40, 34, 0.28) !important;
    pointer-events: none !important;
    z-index: 3 !important;
    transform: translateX(-50%) !important;
}

/* Ligne pointillée verticale BASSE */
.elementor-element-8d6d1ea::before,
[data-id="8d6d1ea"]::before {
    content: '' !important;
    position: absolute !important;
    top: 28px !important;
    bottom: 0 !important;
    left: 50% !important;
    width: 0 !important;
    height: auto !important;
    border-right: 1px dotted rgba(20, 40, 34, 0.28) !important;
    pointer-events: none !important;
    z-index: 3 !important;
    transform: translateX(-50%) !important;
}

[data-id="3ef644a"] > .e-con-inner,
[data-id="8d6d1ea"] > .e-con-inner {
    display: flex !important;
    flex-direction: row !important;
    align-items: stretch !important;
    width: 100% !important;
    max-width: 100% !important;
    gap: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    box-sizing: border-box !important;
}

/* Ligne 1 : Espacement bas au-dessus du centre et haut au-dessus des blocs */
.elementor-element-3ef644a,
[data-id="3ef644a"] {
    padding-top: 50px !important;
    padding-bottom: 80px !important;
    margin-bottom: 0 !important;
}

/* Ligne 2 : Espacement haut sous le centre et bas sous les blocs */
.elementor-element-8d6d1ea,
[data-id="8d6d1ea"] {
    padding-top: 80px !important;
    padding-bottom: 50px !important;
    margin-top: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
}

/* 3. Blocs Gauche (01 & 03) */
.elementor-element-eed540d,
.elementor-element-2cbbaab,
[data-id="eed540d"],
[data-id="2cbbaab"] {
    flex: 1 1 50% !important;
    width: 50% !important;
    max-width: 50% !important;
    border-right: none !important;
    padding-right: 75px !important;
    padding-left: 30px !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    position: relative !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: flex-start !important;
    align-items: flex-start !important;
    min-height: auto !important;
    box-sizing: border-box !important;
}

/* 4. Blocs Droite (02 & 04) */
.elementor-element-5daaf27,
.elementor-element-ee0acba,
[data-id="5daaf27"],
[data-id="ee0acba"] {
    flex: 1 1 50% !important;
    width: 50% !important;
    max-width: 50% !important;
    padding-left: 75px !important;
    padding-right: 30px !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    position: relative !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: flex-start !important;
    align-items: flex-start !important;
    min-height: auto !important;
    box-sizing: border-box !important;
}

/* Alignement strict des textes (titres et paragraphes) sur les badges */
[data-id="9460a8b"],
[data-id="ab7ccd1"],
[data-id="3068b09"],
[data-id="b12f185"] {
    padding-left: 0 !important;
    padding-right: 0 !important;
}

/* 5. Numéros (01, 02, 03, 04) – badges avec fond sombre */
.elementor-element-f444b99,
.elementor-element-da988f5,
.elementor-element-2ac0fa8,
.elementor-element-d297bef,
[data-id="f444b99"],
[data-id="da988f5"],
[data-id="2ac0fa8"],
[data-id="d297bef"] {
    margin-bottom: 22px !important;
}

[data-id="f444b99"] .elementor-heading-title,
[data-id="da988f5"] .elementor-heading-title,
[data-id="2ac0fa8"] .elementor-heading-title,
[data-id="d297bef"] .elementor-heading-title,
[data-id="9788ee9"] .elementor-heading-title,
[data-id="b5c1212"] .elementor-heading-title,
[data-id="9b9592d"] .elementor-heading-title,
[data-id="fa3c1c6"] .elementor-heading-title {
    font-family: "Space Grotesk", Sans-serif !important;
    letter-spacing: 0.05em !important;
    margin: 0 !important;
}

/* 6. Titres des blocs – texte sombre sur fond blanc */
[data-id="b50e464"] .elementor-heading-title,
[data-id="87a95b4"] .elementor-heading-title,
[data-id="08d0dd1"] .elementor-heading-title,
[data-id="a26981e"] .elementor-heading-title {
    font-family: "Clash Grotesk", "Space Grotesk", Sans-serif !important;
    letter-spacing: -0.01em !important;
    line-height: 1.25 !important;
    margin: 0 !important;
    margin-top: 0 !important;
    margin-bottom: 14px !important;
}

/* 7. Descriptions des blocs – texte gris doux lisible sur fond blanc */
[data-id="ee9c309"] p,
[data-id="3f1835b"] p,
[data-id="7d45cea"] p,
[data-id="04124c4"] p {
    font-family: "Inter", Sans-serif !important;
    line-height: 1.65 !important;
    max-width: 430px !important;
    margin: 0 !important;
}

/* 8. Conteneur wrapper du logo – retiré du flux, centré en absolu */
.elementor-element-231cddb,
[data-id="231cddb"] {
    position: absolute !important;
    top: 50% !important;
    left: 50% !important;
    transform: translate(-50%, -50%) !important;
    width: 32px !important;
    height: 32px !important;
    background-color: transparent !important;
    background: transparent !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    z-index: 10 !important;
    pointer-events: none !important;
    padding: 0 !important;
    margin: 0 !important;
    overflow: visible !important;
}

/* Emblème vert central */
.elementor-element-ba07fa6,
[data-id="ba07fa6"] {
    width: 32px !important;
    height: 32px !important;
    background-color: transparent !important;
    background: transparent !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 0 !important;
    margin: 0 !important;
}

.elementor-element-ba07fa6 .elementor-widget-container,
[data-id="ba07fa6"] .elementor-widget-container {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    background: transparent !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

[data-id="ba07fa6"] img {
    width: 22px !important;
    height: 22px !important;
    display: block !important;
    background: transparent !important;
    border-radius: 0 !important;
    box-shadow: none !important;
}

/* 9. Responsive (< 900px) */
@media (max-width: 900px) {
    .elementor-element-3ef644a,
    .elementor-element-8d6d1ea,
    [data-id="3ef644a"],
    [data-id="8d6d1ea"] {
        flex-direction: column !important;
        padding-top: 0 !important;
        padding-bottom: 0 !important;
    }

    .elementor-element-ac7e963::before,
    .elementor-element-ac7e963::after,
    [data-id="ac7e963"]::before,
    [data-id="ac7e963"]::after,
    .elementor-element-3ef644a::after,
    [data-id="3ef644a"]::after,
    .elementor-element-8d6d1ea::before,
    [data-id="8d6d1ea"]::before {
        display: none !important;
    }

    .elementor-element-eed540d,
    .elementor-element-2cbbaab,
    .elementor-element-5daaf27,
    .elementor-element-ee0acba,
    [data-id="eed540d"],
    [data-id="2cbbaab"],
    [data-id="5daaf27"],
    [data-id="ee0acba"] {
        width: 100% !important;
        max-width: 100% !important;
        border-right: none !important;
        padding: 24px 30px !important;
        min-height: auto !important;
    }

    .elementor-element-eed540d,
    .elementor-element-5daaf27,
    .elementor-element-2cbbaab,
    [data-id="eed540d"],
    [data-id="5daaf27"],
    [data-id="2cbbaab"] {
        border-bottom: 1px dotted rgba(20, 40, 34, 0.22) !important;
    }

    .elementor-element-ee0acba,
    [data-id="ee0acba"] {
        border-bottom: none !important;
    }

    /* Masquer le logo central sur mobile */
    .elementor-element-231cddb,
    [data-id="231cddb"] {
        display: none !important;
    }
}

