.elementor-248 .elementor-element.elementor-element-605c7cb{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-248 .elementor-element.elementor-element-7688586{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}.elementor-248 .elementor-element.elementor-element-2fdb9bf{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-248 .elementor-element.elementor-element-e67fe1f{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}.elementor-248 .elementor-element.elementor-element-11fc7ea{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-248 .elementor-element.elementor-element-0174e91{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-248 .elementor-element.elementor-element-8549e13{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-248 .elementor-element.elementor-element-00e4692{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-248 .elementor-element.elementor-element-8ceefa8{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}:root{--page-title-display:none;}@media(max-width:767px){.elementor-248 .elementor-element.elementor-element-e67fe1f{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}.elementor-248 .elementor-element.elementor-element-8ceefa8{--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:10px;--padding-right:10px;}}/* Start custom CSS for html, class: .elementor-element-ae320f0 *//* Variables et Reset */

:root {

    --mck-blue-dark: #001e3c !important;

    --mck-blue-bright: #004fb0 !important;

    --font-primary: 'Montserrat', sans-serif !important;

}



.mck-wwh-section {

    position: relative !important;

   

    font-family: var(--font-primary) !important;

}



/* LE TEXTE GÉANT (FIXE EN FOND) */

.mck-wwh-sticky {

    position: sticky !important;

    top: 0 !important;

    height: 100vh !important;

    display: flex !important;

    align-items: center !important;

    justify-content: center !important;

    overflow: hidden !important;

    z-index: 1 !important; /* Reste derrière les images */

}



.mck-wwh-giant {

    font-size: 80px !important;

    font-weight: 500 !important;

    color: #ffffff !important;

    text-transform: uppercase !important;

    letter-spacing: -2px !important;

    text-align: center !important;

    width: 100% !important;

    margin: 0 !important;

    line-height: 1 !important;

}

.mck-srv-desc{

    

        align-items: center !important;}

/* Style pour le texte de description */





/* LE CONTENU DÉFILANT */

.mck-wwh-scroll-content {

    position: relative !important;

    z-index: 2 !important; /* Passe au-dessus du texte géant */

    padding-top: 80vh !important; 

}



.mck-wwh-gallery {

    max-width: 1200px !important;

    margin: 0 auto !important;

    display: flex !important;

    flex-direction: column !important;

    padding: 0 40px !important;

}



/* CARTES IMAGES */

.mck-wwh-card {

    position: relative !important;

    width: clamp(280px, 40%, 400px) !important;

    height: clamp(350px, 50vw, 500px) !important;

    margin-bottom: 80px !important;

    box-shadow: 0 30px 60px rgba(0,0,0,0.3) !important;

    will-change: transform !important; /* Optimisation pour le JS */

}



.mck-wwh-card img {

    width: 100% !important;

    height: 100% !important;

    object-fit: cover !important;

    display: block !important;

}

.mck-srv-desc .text {

    font-family: 'Montserrat', sans-serif;

    font-size: 15px;

    font-weight: 400;

    line-height: 1.8;

    color: rgba(255, 255, 255, 0.7);

    letter-spacing: 0.2px;

    transition: color 0.4s ease;



    /* --- CENTRAGE CRITIQUE --- */

    text-align: center;          /* Centre le texte à l'intérieur du paragraphe */

    max-width: 600px;            /* Limite la largeur */

    width: 100% !important;      /* Prend toute la largeur disponible jusqu'au max-width */

    margin-left: auto !important; /* Centre le bloc horizontalement */

    margin-right: auto !important;/* Centre le bloc horizontalement */

    display: block;              /* S'assure que c'est un bloc pour que les marges auto fonctionnent */

}



/* Changement de couleur au survol du parent */

.mck-service-row:hover .mck-srv-desc .text {

    color: #ffffff;

}



/* Si vous voulez aussi centrer verticalement dans le parent (mck-srv-desc) */

.mck-srv-desc {

    display: flex;

    justify-content: center; /* Centre horizontalement le contenu du div */

    align-items: center;     /* Centre verticalement si le div a une hauteur définie */

    width: 100%;

}

/* Dispersion en quinconce */

.align-left { align-self: flex-start !important; margin-left: 5% !important; }

.align-right { align-self: flex-end !important; margin-right: 5% !important; margin-top: -20vh !important; }

.align-center { align-self: center !important; margin-top: -15vh !important; }



/* LABELS BLANCS (Industries) */

.mck-wwh-label {
    position: absolute;
    bottom: -15px;
    right: -15px;
    background: #ffffff;
    color: #000;
    padding: 15px 25px;
    font-weight: 800;
    font-size: 14px;
    box-shadow: 0 15px 35px rgba(0,0,0,0.2);
    z-index: 10;
    opacity: 0; /* Caché par défaut */
    transform: translateY(10px);
    transition: all 0.4s ease;
    pointer-events: none;
}
.mck-wwh-card:hover .mck-wwh-label {
    opacity: 1; /* Apparaît au survol */
    transform: translateY(0);
}


.mck-wwh-label span { font-weight: 500; font-size: 11px; color: #666; text-transform: uppercase; }




/* BOUTON CONTACT (Fin de section) */

.mck-wwh-footer {

    height: 60vh !important;

    display: flex !important;

    align-items: center !important;

    justify-content: center !important;

    padding-bottom: 10vh !important;

}



.mck-circle-btn-large {

    width: 140px !important;

    height: 140px !important;

    border: 1px solid rgba(255, 255, 255, 0.4) !important;

    border-radius: 50% !important;

    display: flex !important;

    align-items: center !important;

    justify-content: center !important;

    text-decoration: none !important;

    position: relative !important;

    overflow: hidden !important;

    transition: 0.4s !important;

}



.btn-txt {

    position: relative !important;

    z-index: 2 !important;

    color: #ffffff !important;

    font-weight: 700 !important;

    font-size: 13px !important;

    display: flex !important;

    flex-direction: column !important;

    align-items: center !important;

    gap: 8px !important;

    transition: 0.4s !important;

}



.btn-txt svg { width: 16px !important; height: 16px !important; transition: 0.4s !important; }



.btn-hover-fill {

    position: absolute !important;

    top: 100% !important; 

    left: 0 !important; 

    width: 100% !important; 

    height: 100% !important;

    background: #ffffff !important;

    transition: top 0.4s cubic-bezier(0.85, 0, 0.15, 1) !important;

    z-index: 1 !important;

}



.mck-circle-btn-large:hover { border-color: #ffffff !important; transform: translateY(-5px) !important; }

.mck-circle-btn-large:hover .btn-hover-fill { top: 0 !important; }

.mck-circle-btn-large:hover .btn-txt { color: var(--mck-blue-dark) !important; }

.mck-circle-btn-large:hover svg { transform: translate(3px, -3px) !important; }



/* RESPONSIVE MOBILE */

@media (max-width: 768px) {

    .mck-wwh-gallery { padding: 0 20px !important; }

    .mck-wwh-card { width: 100% !important; height: 400px !important; margin-bottom: 60px !important; margin-top: 0 !important; }

    .align-left, .align-right, .align-center { align-self: center !important; margin-left: 0 !important; margin-right: 0 !important; }

     .mck-wwh-label { opacity: 1; transform: none; right: 0; bottom: -10px; }
 }/* End custom CSS */