/* ==========================================================================
   PAGE BKB DÉVELOPPEMENT – SECTION « NOS DOMAINES D'INTERVENTION »
   Lignes pointillées en croix & emblème central.
   (Aucune modification de largeur de conteneur ni de typographie/couleurs.)
   ========================================================================== */

/* 1. Conteneur parent : point de repère absolu pour les lignes et le logo */
.elementor-element-0133057,
[data-id="0133057"] {
    position: relative !important;
}

/* Ligne pointillée horizontale GAUCHE */
[data-id="0133057"]::before {
    content: '' !important;
    position: absolute !important;
    top: 50% !important;
    left: 30px !important;
    width: calc(50% - 58px) !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 */
[data-id="0133057"]::after {
    content: '' !important;
    position: absolute !important;
    top: 50% !important;
    right: 30px !important;
    width: calc(50% - 58px) !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 : repères pour les lignes verticales */
.elementor-element-2d69e61,
.elementor-element-cfcefd3,
[data-id="2d69e61"],
[data-id="cfcefd3"] {
    position: relative !important;
}

/* Ligne pointillée verticale HAUTE (sur rangée 1 : 2d69e61) */
.elementor-element-2d69e61::after,
[data-id="2d69e61"]::after {
    content: '' !important;
    position: absolute !important;
    top: 20px !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 (sur rangée 2 : cfcefd3) */
.elementor-element-cfcefd3::before,
[data-id="cfcefd3"]::before {
    content: '' !important;
    position: absolute !important;
    top: 28px !important;
    bottom: 30px !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;
}

/* Espacement vertical autour de la ligne centrale */
.elementor-element-2d69e61,
[data-id="2d69e61"] {
    padding-bottom: 90px !important;
}

.elementor-element-cfcefd3,
[data-id="cfcefd3"] {
    padding-top: 90px !important;
}

/* Espacement horizontal des colonnes pour dégager la ligne verticale */
.elementor-element-6d3b0f1,
.elementor-element-fc5cb19,
[data-id="6d3b0f1"],
[data-id="fc5cb19"] {
    padding-right: 80px !important;
}

.elementor-element-a7ac0b6,
.elementor-element-455c107,
[data-id="a7ac0b6"],
[data-id="455c107"] {
    padding-left: 80px !important;
}

/* 3. Conteneur wrapper du logo – retiré du flux, centré en absolu au croisement */
.elementor-element-1d4643a,
[data-id="1d4643a"] {
    position: absolute !important;
    top: 50% !important;
    left: 50% !important;
    transform: translate(-50%, -50%) !important;
    width: 32px !important;
    height: 32px !important;
    background: transparent !important;
    background-color: 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;
}

/* Widget image de l'emblème */
.elementor-element-28c188d,
[data-id="28c188d"] {
    width: 32px !important;
    height: 32px !important;
    background: transparent !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 0 !important;
    margin: 0 !important;
}

.elementor-element-28c188d .elementor-widget-container,
[data-id="28c188d"] .elementor-widget-container {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    background: transparent !important;
    margin: 0 !important;
    padding: 0 !important;
}

[data-id="28c188d"] img {
    width: 22px !important;
    height: 22px !important;
    display: block !important;
    background: transparent !important;
}

/* 4. Responsive (< 900px) */
@media (max-width: 900px) {
    [data-id="0133057"]::before,
    [data-id="0133057"]::after,
    .elementor-element-2d69e61::after,
    [data-id="2d69e61"]::after,
    .elementor-element-cfcefd3::before,
    [data-id="cfcefd3"]::before {
        display: none !important;
    }

    .elementor-element-2d69e61,
    [data-id="2d69e61"] {
        padding-bottom: 0 !important;
    }

    .elementor-element-cfcefd3,
    [data-id="cfcefd3"] {
        padding-top: 0 !important;
    }

    .elementor-element-6d3b0f1,
    .elementor-element-fc5cb19,
    [data-id="6d3b0f1"],
    [data-id="fc5cb19"] {
        padding-right: 0 !important;
    }

    .elementor-element-a7ac0b6,
    .elementor-element-455c107,
    [data-id="a7ac0b6"],
    [data-id="455c107"] {
        padding-left: 0 !important;
    }

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