/* video button heart beat */
.ct-pulse 
{ border-radius: 50%; -webkit-animation:pulse 2s ease-out infinite; animation:pulse 2s  ease-out infinite }
@keyframes pulse { 
0% { box-shadow: 0 0 0 0 rgba(255, 255, 255, .8); }
80% { box-shadow: 0 0 0 30px rgba(255, 255, 255, 0); }
}

/*FOOTER*/
/* 1. RESET COMPLET DES PARENTS (BLOCKSY/WORDPRESS) */
/* On force tous les parents directs du widget à ne pas avoir de marges */
[data-row="middle"], 
.ct-container-fluid, 
[data-column="widget-area-1"],
#block-17,
.ct-widget {
    padding: 0 !important;
    margin: 0 !important;
    max-width: 100% !important;
    width: 100% !important;
}

/* 2. FORCE BRUTE FULL WIDTH (FOND BLEU) */
.deep-mobility-footer {
    background-color: #053A52 !important;
    color: #f9f9f6;
    font-family: 'Inter', sans-serif;
    
    /* On sort le footer de son conteneur pour toucher les bords de l'écran */
    width: 100vw !important;
    position: relative !important;
    left: 50% !important;
    transform: translateX(-50%) !important;
    
    margin: 0 !important;
    padding: 60px 0 0 0 !important;
    box-sizing: border-box !important;
    overflow: hidden;
}

/* 3. CONTENEUR INTERNE (CONTENU CENTRÉ) */
.footer-container {
    max-width: 100%;
    margin: 0 auto !important;
    padding: 0 20px !important;
    display: grid;
    grid-template-columns: 1.5fr 0.8fr 0.8fr 1.2fr;
    gap: 40px;
}




/* 4. SÉCURITÉ ANTI-SCROLL HORIZONTAL */
html, body {
    overflow-x: hidden !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* 5. ÉLÉMENTS DU FOOTER */
.footer-column h3 {
    color: #CAE33E;
    font-size: 20px;
    font-weight: 700;
    text-transform: uppercase;
    margin-bottom: 25px;
}

.footer-links {
    list-style: none !important;
    padding: 0 !important;
}

.footer-links a {
    color: #FAFCFA;
    text-decoration: none;
    opacity: 0.7;
    transition: 0.3s;
}

.footer-links a:hover {
    color: #CAE33E;
    opacity: 1;
}

.footer-bottom {
    margin-top: 60px;
    padding: 30px 20px;
    border-top: 1px solid rgba(249, 249, 246, 0.1);
    width: 100%;
}

.footer-bottom-content {
    max-width: 100%;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
    font-size: 20px;
}

/* 6. RESPONSIVE MOBILE */
@media (max-width: 600px) {
    .footer-container {
        grid-template-columns: 1fr !important;
        text-align: center;
    }
    .social-links {
        justify-content: center;
        display: flex;
    }
}/* Taille du logo */
.footer-img-logo {
    width: 250px !important; /* Ajustez ce chiffre (ex: 200px, 300px) selon vos besoins */
    max-width: 100% !important; /* Sécurité pour ne pas dépasser sur mobile */
    height: auto !important; /* Garde les proportions */
    display: block;
    margin-bottom: 30px !important; /* Espace avec le texte en dessous */
}

/* On cible les titres de widgets de façon très large */
.widget-title, 
.widgettitle, 
h2.widget-title, 
.footer-widget-title,
section.widget h2 {
    color: #737C31 !important; 
    font-size: 20px !important;
    font-weight: bold !important;
    text-transform: none !important;
}
.ct-container {
    margin-bottom: 50px !important;
}
/*Footer*/



@media (max-width: 1024px) {
    /* 1. Centre le conteneur principal du bloc de boutons */
    #block-55 .stk-button-group #block-51{
        display: flex !important;
        justify-content: center !important; /* Centre les boutons horizontalement */
        align-items: center !important;
        flex-wrap: wrap !important; /* Permet de passer à la ligne si besoin */
        text-align: center !important;
        margin-left: auto !important;
        margin-right: auto !important;
    }

    /* 2. Retire l'alignement à gauche forcé par Stackable */
    #block-55 .stk-row.has-text-align-left {
        justify-content: center !important;
    }

    /* 3. Ajoute un petit espace entre les icônes pour qu'elles ne collent pas */
    #block-55 .stk-block-icon-button {
        margin: 5px !important;
        display: inline-block !important;
    }

    /* 4. Centre le titre CONTACT qui précède ce bloc */
    #block-55 #block-51 {
        text-align: center !important;
    }
[data-column="widget-area-6"] .stk-block-heading,
    [data-column="widget-area-6"] .stk-block-heading__text {
        text-align: center !important;
        margin-left: auto !important;
        margin-right: auto !important;
        display: block !important;
        width: 100% !important;
    }
}











/* logos under hero */


.logos-wrapper {
  background: #032536;
  padding: 60px 0;
  overflow: hidden;
  text-align: center;
}

.logos-title {
  font-size: 24px;
  margin-bottom: 60px;
	color: #2E2E2E;
	font-family: system-ui;

}

.logos-slider {
  overflow: hidden;
	 width: 100%;
}

.logos-track {
  display: flex;
  width: max-content;
  animation: scroll-logos 10s linear infinite;

}

.logos-track img {
  height: 150px;
  margin: 0 40px;
  opacity: 0.7;
  transition: opacity 0.3s ease;
	border-radius: 20px;

}

.logos-track img:hover {
  opacity: 1;
}

@keyframes scroll-logos {
  from {
    transform: translateX(0);
  }
  to {
    transform: translateX(-50%);
  }
}






/* ===== GLOBAL WORD BREAK FIX ===== */

/* نحبسو تكسير الكلمات فالموقع كامل */
body, 
body * {
    word-break: normal !important;
    overflow-wrap: break-word !important;
    hyphens: none !important;
}






