/* ========================================
   HEADER - Configuration complète
   ======================================== */
header .top-header {
    display: none !important;
}

.bottom-header {
    transition: all 0.2s ease !important;
    position: fixed !important;
    width: 100% !important;
}

.bottom-header.sticky {
    border-top: none !important;
    border-bottom: none !important;
}

header {
    margin-bottom: 80px !important;
}

.primary-bg.menu-item.menu-item-type-custom.menu-item-object-custom.menu-item-2250 a {
    color: black !important;
}

/* Mobile - Configuration hamburger + header */
@media screen and (max-width: 768px) {
    header .top-header {
        display: none !important;
    }
    
    .hamburger {
        top: 45px !important;
        right: 15px !important;
    }
    
    .sticky .hamburger {
        top: 40px !important;
    }
    
    header {
        position: relative;
        z-index: 9999999;
        padding-top: 5px !important;
        padding-bottom: 5px !important;
    }
}

/* Tablet - Configuration hamburger + header */
@media only screen and (min-width: 768px) and (max-width: 991px) {
    header {
        padding-top: 10px !important;
        padding-bottom: 10px !important;
        margin-bottom: 80px !important;
    }
    
    .bottom-header.sticky {
        padding-top: 20px !important;
        padding-bottom: 20px !important;
    }
    
    .hamburger {
        top: 50px !important;
        right: 50px !important;
    }
    
    .sticky .hamburger {
        top: 45px !important;
    }
}

/* ========================================
   LOGO - Transition fluide responsive
   ======================================== */
.logo-desktop img {
    transition: max-width 0.3s ease, margin 0.3s ease !important;
    transform-origin: left top !important;
}

/* XL - Desktop large (1200px+) */
@media (min-width: 1200px) {
    .logo-desktop img {
        max-width: 300px !important;
    }
    .bottom-header.sticky .logo-desktop img {
        max-width: 190px !important;
    }
}

/* LG - Desktop (992-1199px) */
@media (min-width: 992px) and (max-width: 1199px) {
    .logo-desktop img {
        max-width: 200px !important;
    }
    .bottom-header.sticky .logo-desktop img {
        max-width: 190px !important;
    }
}

/* MD - Tablet (768-991px) */
@media (min-width: 768px) and (max-width: 991px) {
    .logo-desktop img {
        max-width: 200px !important;
    }
    .bottom-header.sticky .logo-desktop img {
        max-width: 150px !important;
    }
}

/* SM - Mobile (576-767px) */
@media (min-width: 576px) and (max-width: 767px) {
    .logo-desktop img {
        max-width: 190px !important;
        margin-top: 5px !important;
    }
    
    .bottom-header.sticky .logo-desktop img {
        max-width: 150px !important;
        margin-top: 15px !important;
        margin-bottom: 15px !important;
    }
}

/* XS - Small mobile (575px et moins) */
@media (max-width: 575px) {
    .logo-desktop img {
        max-width: 190px !important;
        margin-top: 5px !important;
    }
    
    .bottom-header.sticky .logo-desktop img {
        max-width: 150px !important;
        margin-top: 15px !important;
        margin-bottom: 15px !important;
    }
}

/* ========================================
   BOUTON GET A QUOTE (version anglaise)
   ======================================== */
#menu-main {
    display: block !important;
}
#menu-main > li {
    display: inline-block !important;
}
#menu-item-2256 {
    position: relative !important;
    display: inline-block !important;
}
#menu-item-2256 a {
    background-color: #fdc600 !important;
    color: #000000 !important;
    padding-top: 55px !important;
    padding-bottom: 55px !important;
    padding-left: 15px !important;
    padding-right: 15px !important;
    display: inline-block !important;
    margin-top: -55px !important;
    margin-bottom: -55px !important;
    font-weight: 600 !important;
    transition: padding-bottom 0.3s ease, margin-bottom 0.3s ease !important;
}
#menu-item-2256 a::before,
#menu-item-2256 a::after,
#menu-item-2256 a:hover::before,
#menu-item-2256 a:hover::after {
    display: none !important;
}
#menu-item-2256 a:hover {
    background-color: #e5b400 !important;
}
.bottom-header.sticky #menu-item-2256 a {
    padding-top: 55px !important;
    padding-bottom: 27px !important;
    margin-bottom: -26px !important;
    transition-delay: 0.15s !important;
}

/* ========================================
   SECTION HERO - Configuration de base
   ======================================== */
.col-sm-6.mobile-full.hero-content {
    display: flex !important;
    flex-direction: column !important;
}

/* IMAGE BACKGROUND - Marge en haut sur mobile */
@media (max-width: 767px) {
    .bg {
        margin-top: 60px !important;
    }
}

/* ========================================
   HERO CONTENT - Ajustement vertical par breakpoint
   ======================================== */

/* XXXL - Ultra-ultra-wide (2200px+) */
@media (min-width: 2200px) {
    .col-sm-6.mobile-full.hero-content {
        margin-top: 0px !important;
    }
}

/* XXL2 - Ultra-wide large (1900-2199px) */
@media (min-width: 1900px) and (max-width: 2199px) {
    .col-sm-6.mobile-full.hero-content {
        margin-top: 0px !important;
    }
}

/* XXL1 - Ultra-wide (1600-1899px) */
@media (min-width: 1600px) and (max-width: 1899px) {
    .col-sm-6.mobile-full.hero-content {
        margin-top: 0px !important;
    }
}

/* XL2 - Desktop très large (1501-1599px) */
@media (min-width: 1501px) and (max-width: 1599px) {
    .col-sm-6.mobile-full.hero-content {
        margin-top: -40px !important;
    }
}

/* XL1 - Laptop standard (1367-1500px) */
@media (min-width: 1367px) and (max-width: 1500px) {
    .col-sm-6.mobile-full.hero-content {
        margin-top: 0px !important;
    }
}

/* XL0 - Laptop petit (1200-1366px) */
@media (min-width: 1200px) and (max-width: 1366px) {
    .col-sm-6.mobile-full.hero-content {
        margin-top: 0px !important;
    }
}

/* LG - Desktop (992-1199px) */
@media (min-width: 992px) and (max-width: 1199px) {
    .col-sm-6.mobile-full.hero-content {
        margin-top: 0px !important;
    }
}

/* MD - Tablet (768-991px) */
@media (min-width: 768px) and (max-width: 991px) {
    .col-sm-6.mobile-full.hero-content {
        margin-top: 0px !important;
    }
}

/* SM/XS - Mobile (767px et moins) */
@media (max-width: 767px) {
    .col-sm-6.mobile-full.hero-content {
        margin-top: 0px !important;
    }
}

/* ========================================
   H2 HERO - Gros titre par breakpoint
   ======================================== */

/* XXXL - Ultra-ultra-wide (2200px+) */
@media (min-width: 2200px) {
    .hero-content h2.h2-hero {
        order: 1 !important;
        font-size: 4.5rem !important;
        font-weight: 700 !important;
        line-height: 1.1 !important;
        margin-bottom: 40px !important;
        margin-top: 0 !important;
        padding-right: 60px !important;
        text-transform: uppercase !important;
    }
}

/* XXL2 - Ultra-wide large (1900-2199px) */
@media (min-width: 1900px) and (max-width: 2199px) {
    .hero-content h2.h2-hero {
        order: 1 !important;
        font-size: 4.2rem !important;
        font-weight: 700 !important;
        line-height: 1.1 !important;
        margin-bottom: 38px !important;
        margin-top: 0 !important;
        padding-right: 50px !important;
        text-transform: uppercase !important;
    }
}

/* XXL1 - Ultra-wide (1600-1899px) */
@media (min-width: 1600px) and (max-width: 1899px) {
    .hero-content h2.h2-hero {
        order: 1 !important;
        font-size: 3.4rem !important;
        font-weight: 700 !important;
        line-height: 1.1 !important;
        margin-bottom: 35px !important;
        margin-top: 0 !important;
        padding-right: 25px !important;
        text-transform: uppercase !important;
    }
}

/* XL2 - Desktop très large (1501-1599px) */
@media (min-width: 1501px) and (max-width: 1599px) {
    .hero-content h2.h2-hero {
        order: 1 !important;
        font-size: 3.2rem !important;
        font-weight: 700 !important;
        line-height: 1.1 !important;
        margin-bottom: 30px !important;
        margin-top: 0 !important;
        padding-right: 0px !important;
        text-transform: uppercase !important;
    }
}

/* XL1 - Laptop standard (1367-1500px) */
@media (min-width: 1367px) and (max-width: 1500px) {
    .hero-content h2.h2-hero {
        order: 1 !important;
        font-size: 3rem !important;
        font-weight: 700 !important;
        line-height: 1.1 !important;
        margin-bottom: 30px !important;
        margin-top: -50px !important;
        padding-right: 0px !important;
        text-transform: uppercase !important;
    }
}

/* XL0 - Laptop petit (1200-1366px) */
@media (min-width: 1200px) and (max-width: 1366px) {
    .hero-content h2.h2-hero {
        order: 1 !important;
        font-size: 2.45rem !important;
        font-weight: 700 !important;
        line-height: 1.1 !important;
        margin-bottom: 30px !important;
        margin-top: 0 !important;
        padding-right: 0px !important;
        text-transform: uppercase !important;
    }
}

/* LG - Desktop (992-1199px) */
@media (min-width: 992px) and (max-width: 1199px) {
    .hero-content h2.h2-hero {
        order: 1 !important;
        font-size: 2.rem !important;
        font-weight: 700 !important;
        line-height: 1.1 !important;
        margin-bottom: 30px !important;
        margin-top: 0 !important;
        padding-right: 0px !important;
        text-transform: uppercase !important;
    }
}

/* MD - Tablet (768-991px) */
@media (min-width: 768px) and (max-width: 991px) {
    .hero-content h2.h2-hero {
        order: 1 !important;
        font-size: 1.6rem !important;
        font-weight: 700 !important;
        line-height: 1.1 !important;
        margin-bottom: 25px !important;
        margin-top: 0 !important;
        padding-right: 0px !important;
        text-transform: uppercase !important;
    }
}

/* SM - Mobile large (576-767px) */
@media (min-width: 576px) and (max-width: 767px) {
    .hero-content h2.h2-hero {
        order: 1 !important;
        font-size: 1.5rem !important;
        font-weight: 700 !important;
        line-height: 1.1 !important;
        margin-bottom: 20px !important;
        margin-top: 0 !important;
        padding-right: 0px !important;
        text-transform: uppercase !important;
    }
}

/* XS - Mobile petit (575px et moins) */
@media (max-width: 575px) {
    .hero-content h2.h2-hero {
        order: 1 !important;
        font-size: 1.5rem !important;
        font-weight: 700 !important;
        line-height: 1.1 !important;
        margin-bottom: 20px !important;
        margin-top: 0 !important;
        padding-right: 0px !important;
        text-transform: uppercase !important;
    }
}

/* ========================================
   BOUTON HERO - Position par breakpoint
   ======================================== */

/* XXXL - Ultra-ultra-wide (2200px+) */
@media (min-width: 2200px) {
    .hero-content a.btn.btn-main {
        order: 2 !important;
        margin-top: 0px !important;
        margin-bottom: 35px !important;
        display: inline-block !important;
        width: auto !important;
        align-self: flex-start !important;
    }
}

/* XXL2 - Ultra-wide large (1900-2199px) */
@media (min-width: 1900px) and (max-width: 2199px) {
    .hero-content a.btn.btn-main {
        order: 2 !important;
        margin-top: 0px !important;
        margin-bottom: 32px !important;
        display: inline-block !important;
        width: auto !important;
        align-self: flex-start !important;
    }
}

/* XXL1 - Ultra-wide (1600-1899px) */
@media (min-width: 1600px) and (max-width: 1899px) {
    .hero-content a.btn.btn-main {
        order: 2 !important;
        margin-top: 0px !important;
        margin-bottom: 30px !important;
        display: inline-block !important;
        width: auto !important;
        align-self: flex-start !important;
    }
}

/* XL2 - Desktop très large (1501-1599px) */
@media (min-width: 1501px) and (max-width: 1599px) {
    .hero-content a.btn.btn-main {
        order: 2 !important;
        margin-top: 0px !important;
        margin-bottom: 30px !important;
        display: inline-block !important;
        width: auto !important;
        align-self: flex-start !important;
    }
}

/* XL1 - Laptop standard (1367-1500px) */
@media (min-width: 1367px) and (max-width: 1500px) {
    .hero-content a.btn.btn-main {
        order: 2 !important;
        margin-top: -5px !important;
        margin-bottom: 30px !important;
        display: inline-block !important;
        width: auto !important;
        align-self: flex-start !important;
    }
}

/* XL0 - Laptop petit (1200-1366px) */
@media (min-width: 1200px) and (max-width: 1366px) {
    .hero-content a.btn.btn-main {
        order: 2 !important;
        margin-top: -10px !important;
        margin-bottom: 30px !important;
        display: inline-block !important;
        width: auto !important;
        align-self: flex-start !important;
    }
}

/* LG - Desktop (992-1199px) */
@media (min-width: 992px) and (max-width: 1199px) {
    .hero-content a.btn.btn-main {
        order: 2 !important;
        margin-top: 0px !important;
        margin-bottom: 30px !important;
        display: inline-block !important;
        width: auto !important;
        align-self: flex-start !important;
    }
}

/* MD - Tablet (768-991px) */
@media (min-width: 768px) and (max-width: 991px) {
    .hero-content a.btn.btn-main {
        order: 2 !important;
        margin-top: 0px !important;
        margin-bottom: 25px !important;
        display: inline-block !important;
        width: auto !important;
        align-self: flex-start !important;
    }
}

/* SM - Mobile large (576-767px) */
@media (min-width: 576px) and (max-width: 767px) {
    .hero-content a.btn.btn-main {
        order: 2 !important;
        margin-top: 0px !important;
        margin-bottom: 25px !important;
        display: inline-block !important;
        width: auto !important;
        align-self: flex-start !important;
    }
}

/* XS - Mobile petit (575px et moins) */
@media (max-width: 575px) {
    .hero-content a.btn.btn-main {
        order: 2 !important;
        margin-top: 0px !important;
        margin-bottom: 25px !important;
        display: inline-block !important;
        width: auto !important;
        align-self: flex-start !important;
    }
}

/* ========================================
   H1 SEO - Petit texte gris par breakpoint
   ======================================== */

/* XXXL - Ultra-ultra-wide (2200px+) */
@media (min-width: 2200px) {
    .hero-content h1.h1-seo {
        order: 3 !important;
        font-size: 1.15rem !important;
        font-weight: 400 !important;
        color: #8B8B8B !important;
        margin-bottom: 0 !important;
        margin-top: 200px !important;
        padding-right: 0px !important;
        line-height: 1.5 !important;
        text-transform: none !important;
        max-width: 700px !important;
    }
}

/* XXL2 - Ultra-wide large (1900-2199px) */
@media (min-width: 1900px) and (max-width: 2199px) {
    .hero-content h1.h1-seo {
        order: 3 !important;
        font-size: 0.98rem !important;
        font-weight: 400 !important;
        color: #8B8B8B !important;
        margin-bottom: 0 !important;
        margin-top: 110px !important;
        padding-right: 0px !important;
        line-height: 1.5 !important;
        text-transform: none !important;
        max-width: 680px !important;
    }
}

/* XXL1 - Ultra-wide (1600-1899px) */
@media (min-width: 1600px) and (max-width: 1899px) {
    .hero-content h1.h1-seo {
        order: 3 !important;
        font-size: 0.95rem !important;
        font-weight: 400 !important;
        color: #8B8B8B !important;
        margin-bottom: 0 !important;
        margin-top: 100px !important;
        padding-right: 0px !important;
        line-height: 1.5 !important;
        text-transform: none !important;
        max-width: 650px !important;
    }
}

/* XL2 - Desktop très large (1501-1599px) */
@media (min-width: 1501px) and (max-width: 1599px) {
    .hero-content h1.h1-seo {
        order: 3 !important;
        font-size: 0.75rem !important;
        font-weight: 400 !important;
        color: #8B8B8B !important;
        margin-bottom: 0 !important;
        margin-top: 120px !important;
        padding-right: 0px !important;
        line-height: 1.5 !important;
        text-transform: none !important;
        max-width: 480px !important;
    }
}

/* XL1 - Laptop standard (1367-1500px) */
@media (min-width: 1367px) and (max-width: 1500px) {
    .hero-content h1.h1-seo {
        order: 3 !important;
        font-size: 0.68rem !important;
        font-weight: 400 !important;
        color: #8B8B8B !important;
        margin-bottom: 0 !important;
        margin-top: 170px !important;
        padding-right: 120px !important;
        line-height: 1.5 !important;
        text-transform: none !important;
        max-width: 600px !important;
    }
}

/* XL0 - Laptop petit (1200-1366px) */
@media (min-width: 1200px) and (max-width: 1366px) {
    .hero-content h1.h1-seo {
        order: 3 !important;
        font-size: 0.65rem !important;
        font-weight: 400 !important;
        color: #8B8B8B !important;
        margin-bottom: 0 !important;
        margin-top: 80px !important;
        padding-right: 50px !important;
        line-height: 1.5 !important;
        text-transform: none !important;
        max-width: 600px !important;
    }
}

/* LG - Desktop (992-1199px) */
@media (min-width: 992px) and (max-width: 1199px) {
    .hero-content h1.h1-seo {
        order: 3 !important;
        font-size: 0.8rem !important;
        font-weight: 400 !important;
        color: #8B8B8B !important;
        margin-bottom: 0 !important;
        margin-top: 50px !important;
        padding-right: 0px !important;
        line-height: 1.5 !important;
        text-transform: none !important;
        max-width: 550px !important;
    }
}

/* MD - Tablet (768-991px) */
@media (min-width: 768px) and (max-width: 991px) {
    .hero-content h1.h1-seo {
        order: 3 !important;
        font-size: 0.65rem !important;
        font-weight: 400 !important;
        color: #8B8B8B !important;
        margin-bottom: 0 !important;
        margin-top: 30px !important;
        padding-right: 12px !important;
        line-height: 1.3 !important;
        text-transform: none !important;
        max-width: 500px !important;
    }
}

/* SM - Mobile large (576-767px) */
@media (min-width: 576px) and (max-width: 767px) {
    .hero-content h1.h1-seo {
        order: 3 !important;
        font-size: 0.7rem !important;
        font-weight: 400 !important;
        color: #8B8B8B !important;
        margin-bottom: 0 !important;
        margin-top: 0 !important;
        padding-right: 0px !important;
        line-height: 1.5 !important;
        text-transform: none !important;
        max-width: 100% !important;
    }
}

/* XS - Mobile petit (575px et moins) */
@media (max-width: 575px) {
    .hero-content h1.h1-seo {
        order: 3 !important;
        font-size: 0.5rem !important;
        font-weight: 400 !important;
        color: #8B8B8B !important;
        margin-bottom: 0 !important;
        margin-top: 0 !important;
        padding-right: 0px !important;
        line-height: 0.8rem !important;
        text-transform: none !important;
        max-width: 100% !important;
    }
}

/* ========================================
   BOUTON HERO - Taille responsive
   ======================================== */

/* XL2 - Desktop très large (1501-1599px) */
@media (min-width: 1501px) and (max-width: 1599px) {
    .hero-content .btn-main {
        font-size: 1rem !important;
        padding: 18px 35px !important;
    }
}

/* XL1 - Laptop standard (1367-1500px) */
@media (min-width: 1367px) and (max-width: 1500px) {
    .hero-content .btn-main {
        font-size: 0.95rem !important;
        padding: 16px 32px !important;
    }
}

/* XL0 - Laptop petit (1200-1366px) */
@media (min-width: 1200px) and (max-width: 1366px) {
    .hero-content .btn-main {
        font-size: 0.9rem !important;
        padding: 15px 30px !important;
    }
}

/* LG - Desktop (992-1199px) */
@media (min-width: 992px) and (max-width: 1199px) {
    .hero-content .btn-main {
        font-size: 0.9rem !important;
        padding: 15px 28px !important;
    }
}

/* MD - Tablet (768-991px) */
@media (min-width: 768px) and (max-width: 991px) {
    .hero-content .btn-main {
        font-size: 0.85rem !important;
        padding: 14px 26px !important;
    }
}

/* SM - Mobile large (576-767px) */
@media (min-width: 576px) and (max-width: 767px) {
    .hero-content .btn-main {
        font-size: 0.8rem !important;
        padding: 12px 24px !important;
    }
}

/* XS - Mobile petit (575px et moins) */
@media (max-width: 575px) {
    .hero-content .btn-main {
        font-size: 0.75rem !important;
        padding: 12px 22px !important;
    }
}

/* ========================================
   FORMULAIRES
   ======================================== */
.wpcf7-form.sent {
    display: none;
}

div .screen-reader-response {
    font-size: 30px;
    color: #fdc600;
    clip: unset !important;
    clip-path: unset !important;
    height: unset !important;
    width: unset !important;
    position: inherit !important;
}

.screen-reader-response li {
    display: none;
}

/* ========================================
   SECTION NOS SERVICES - Espacement complet par breakpoint
   ======================================== */

/* XXXL - Ultra-ultra-wide (2200px+) */
@media (min-width: 2200px) {
    .bloc-services {
        margin-top: 0px !important;
        padding-bottom: 50px !important;
    }
    
    .bloc-services .push-down {
        padding-bottom: 0px !important;
        padding-top: 50px !important;
    }
}

/* XXL2 - Ultra-wide large (1900-2199px) */
@media (min-width: 1900px) and (max-width: 2199px) {
    .bloc-services {
        margin-top: 0px !important;
        padding-bottom: 45px !important;
    }
    
    .bloc-services .push-down {
        padding-bottom: 0px !important;
        padding-top: 45px !important;
    }
}

/* XXL1 - Ultra-wide (1600-1899px) */
@media (min-width: 1600px) and (max-width: 1899px) {
    .bloc-services {
        margin-top: 0px !important;
        padding-bottom: 40px !important;
    }
    
    .bloc-services .push-down {
        padding-bottom: 0px !important;
        padding-top: 40px !important;
    }
}

/* XL2 - Desktop très large (1501-1599px) */
@media (min-width: 1501px) and (max-width: 1599px) {
    .bloc-services {
        margin-top: -200px !important;
        padding-bottom: 140px !important;
    }
    
    .bloc-services .push-down {
        padding-bottom: 0px !important;
        padding-top: 40px !important;
    }
}

/* XL1 - Laptop standard (1367-1500px) */
@media (min-width: 1367px) and (max-width: 1500px) {
    .bloc-services {
        margin-top: 0px !important;
        padding-bottom: 40px !important;
    }
    
    .bloc-services .push-down {
        padding-bottom: 0px !important;
        padding-top: 40px !important;
    }
}

/* XL0 - Laptop petit (1200-1366px) */
@media (min-width: 1200px) and (max-width: 1366px) {
    .bloc-services {
        margin-top: -20px !important;
        margin-bottom: 20px !important;
        padding-bottom: 40px !important;
    }
    
    .bloc-services .push-down {
        padding-bottom: 0px !important;
        padding-top: 40px !important;
    }
}

/* LG - Desktop (992-1199px) */
@media (min-width: 992px) and (max-width: 1199px) {
    .bloc-services {
        margin-top: 0px !important;
        padding-bottom: 35px !important;
    }
    
    .bloc-services .push-down {
        padding-bottom: 0px !important;
        padding-top: 35px !important;
    }
}

/* MD - Tablet (768-991px) */
@media (min-width: 768px) and (max-width: 991px) {
    .bloc-services {
        margin-top: -120px !important;
        padding-bottom: 30px !important;
    }
    
    .bloc-services .push-down {
        padding-bottom: 0px !important;
        padding-top: 30px !important;
    }
}

/* SM - Mobile large (576-767px) */
@media (min-width: 576px) and (max-width: 767px) {
    .bloc-services {
        margin-top: 60px !important;
        padding-bottom: 20px !important;
    }
    
    .bloc-services .push-down {
        padding-bottom: 0px !important;
        padding-top: 0px !important;
    }
}

/* XS - Mobile petit (575px et moins) */
@media (max-width: 575px) {
    .bloc-services {
        margin-top: 60px !important;
        padding-bottom: 20px !important;
    }
    
    .bloc-services .push-down {
        padding-bottom: 0px !important;
        padding-top: 0px !important;
    }
}

/* ========================================
   SECTION NOS SERVICES - Images carrées
   ======================================== */

/* Conteneur carré parfait */
.liste-services .effect-apollo figure {
    position: relative !important;
    overflow: hidden !important;
    margin: 0 !important;
    width: 100% !important;
    padding-bottom: 100% !important;
    height: 0 !important;
    background: #000;
}

.liste-services .effect-apollo img {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center !important;
    transition: opacity 0.35s, transform 0.35s;
}

.liste-services .effect-apollo a {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
}

.liste-services .effect-apollo figcaption {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 100% !important;
    padding: 20px;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    background: transparent !important;
    transition: background 0.35s;
    z-index: 2;
}

.liste-services .effect-apollo figcaption h3 {
    color: #fff !important;
    text-align: center !important;
    margin: 0 !important;
    text-shadow: 2px 2px 8px rgba(0,0,0,0.8) !important;
}

/* Enlever highlight blanc */
.liste-services figure figcaption::before,
.liste-services figure figcaption::after {
    display: none !important;
    content: none !important;
}

/* Hover effect - Images zoomées par défaut */
.liste-services figure.effect-apollo img {
    transform: scale(1.02) !important;
}

.liste-services figure.effect-apollo:hover img {
    opacity: 0.9;
    transform: scale(0.98) !important;
}

/* Espacement entre images */
.liste-services {
    margin-left: -10px !important;
    margin-right: -10px !important;
}

.liste-services .col-sm-6 {
    padding: 10px !important;
}

/* Tablet - 2 colonnes */
@media (max-width: 991px) and (min-width: 577px) {
    .liste-services .col-sm-6 {
        width: 50% !important;
        float: left !important;
        padding: 10px !important;
    }
}

/* Mobile - 1 colonne */
@media (max-width: 576px) {
    .liste-services {
        margin-left: 0 !important;
        margin-right: 0 !important;
    }
    
    .liste-services .col-sm-6 {
        width: 100% !important;
        float: none !important;
        display: block !important;
        padding: 0 !important;
        margin-bottom: 20px !important;
        max-width: 100% !important;
    }
    
    .liste-services .col-sm-6:last-child {
        margin-bottom: 0 !important;
    }
    
    .liste-services .effect-apollo figcaption {
        padding: 15px !important;
    }
    
    .liste-services .effect-apollo figcaption h3 {
        font-size: 16px !important;
    }
}

@media (max-width: 400px) {
    .liste-services .col-sm-6 {
        margin-bottom: 15px !important;
    }
    
    .liste-services .effect-apollo figcaption {
        padding: 12px !important;
    }
    
    .liste-services .effect-apollo figcaption h3 {
        font-size: 14px !important;
    }
}

/* ========================================
   SECTION BLOC-EQUIPE (30 ans) - Espacement complet
   ======================================== */

/* XXXL - Ultra-ultra-wide (2200px+) */
@media (min-width: 2200px) {
    section.bloc-equipe,
    .bloc-equipe {
        padding-top: 250px !important;
        padding-bottom: 200px !important;
    }
}

/* XXL2 - Ultra-wide large (1900-2199px) */
@media (min-width: 1900px) and (max-width: 2199px) {
    section.bloc-equipe,
    .bloc-equipe {
        padding-top: 200px !important;
        padding-bottom: 200px !important;
    }
}

/* XXL1 - Ultra-wide (1600-1899px) */
@media (min-width: 1600px) and (max-width: 1899px) {
    section.bloc-equipe,
    .bloc-equipe {
        padding-top: 200px !important;
        padding-bottom: 200px !important;
    }
}

/* XL2 - Desktop très large (1501-1599px) */
@media (min-width: 1501px) and (max-width: 1599px) {
    section.bloc-equipe,
    .bloc-equipe {
        padding-top: 200px !important;
        padding-bottom: 200px !important;
    }
}

/* XL1 - Laptop standard (1367-1500px) */
@media (min-width: 1367px) and (max-width: 1500px) {
    section.bloc-equipe,
    .bloc-equipe {
        padding-top: 120px !important;
        padding-bottom: 150px !important;
    }
}

/* XL0 - Laptop petit (1200-1366px) */
@media (min-width: 1200px) and (max-width: 1366px) {
    section.bloc-equipe,
    .bloc-equipe {
        padding-top: 120px !important;
        padding-bottom: 150px !important;
    }
}

/* LG - Desktop (992-1199px) */
@media (min-width: 992px) and (max-width: 1199px) {
    section.bloc-equipe,
    .bloc-equipe {
        padding-top: 100px !important;
        padding-bottom: 120px !important;
    }
}

/* MD - Tablet (768-991px) */
@media (min-width: 768px) and (max-width: 991px) {
    section.bloc-equipe,
    .bloc-equipe {
        padding-top: 80px !important;
        padding-bottom: 80px !important;
    }
}

/* SM - Mobile large (576-767px) */
@media (min-width: 576px) and (max-width: 767px) {
    section.bloc-equipe,
    .bloc-equipe {
        padding-top: 60px !important;
        padding-bottom: 0px !important;
    }
}

/* XS - Mobile petit (575px et moins) */
@media (max-width: 575px) {
    section.bloc-equipe,
    .bloc-equipe {
        padding-top: 60px !important;
        padding-bottom: 0px !important;
    }
}

/* Desktop très large - Aligne le texte avec le logo */
@media (min-width: 2000px) {
    .bloc-equipe .col-lg-5 {
        padding-left: 0 !important;
    }
}

/* Padding paragraphe pour lisibilité */
@media (min-width: 1200px) {
    .bloc-equipe .col-lg-5 p {
        padding-right: 50px !important;
    }
}

/* H2 Taille + Padding responsive */
@media (min-width: 1600px) {
    section.bloc-equipe .container .row .col-lg-5 h2 {
        padding-right: 180px !important;
    }
}

@media (min-width: 1200px) and (max-width: 1599px) {
    section.bloc-equipe .container .row .col-lg-5 h2 {
        padding-right: 80px !important;
    }
}

@media (min-width: 992px) and (max-width: 1199px) {
    section.bloc-equipe .container .row .col-lg-5 h2 {
        padding-right: 80px !important;
    }
}

@media (min-width: 576px) and (max-width: 767px) {
    section.bloc-equipe h2 {
        font-size: 1.6rem !important;
    }
}

@media (max-width: 575px) {
    section.bloc-equipe h2 {
        font-size: 1.5rem !important;
    }
}

/* Espace entre texte et vidéo (mobile/tablet) */
@media (min-width: 768px) and (max-width: 991px) {
    .bloc-equipe .col-lg-5 {
        margin-bottom: 40px !important;
    }
}

@media (max-width: 767px) {
    .bloc-equipe .col-lg-5 {
        margin-bottom: 50px !important;
    }
}

/* VIDÉO CLOUDFLARE - Effet hover */
.bloc-equipe .image-90 {
    line-height: 0 !important;
    font-size: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
}

.bloc-equipe .image-90 > div {
    border-radius: 10px !important;
    overflow: hidden !important;
    transition: transform 0.3s ease, box-shadow 0.3s ease !important;
}

.bloc-equipe .image-90:hover > div {
    transform: scale(0.97) !important;
    box-shadow: 
        0 0 0 5px #ffffff,
        0 8px 20px rgba(0, 0, 0, 0.15) !important;
}

/* ========================================
   VIDÉO CLOUDFLARE - Padding mobile + Border radius
   ======================================== */

/* SM - Mobile large (576-767px) */
@media (min-width: 576px) and (max-width: 767px) {
    .video-cloudflare-wrapper {
        margin-left: 15px !important;
        margin-right: 15px !important;
        border-radius: 10px !important;
        overflow: hidden !important;
    }
}

/* XS - Mobile petit (575px et moins) */
@media (max-width: 575px) {
    .video-cloudflare-wrapper {
        margin-left: 15px !important;
        margin-right: 15px !important;
        border-radius: 10px !important;
        overflow: hidden !important;
    }
}

/* ========================================
   SECTION SOUMISSION
   ======================================== */
.bloc-soumission {
    padding-top: 150px !important;
}

.bloc-soumission img {
    border-radius: 10px !important;
}

@media (min-width: 768px) and (max-width: 991px) {
    .bloc-soumission {
        padding-top: 80px !important;
    }
}

@media (max-width: 767px) {
    .bloc-soumission {
        padding-top: 20px !important;
    }
    
    .bloc-soumission .btn-main {
        margin-bottom: 50px !important;
    }
}

/* ========================================
   SECTION SOUMISSION - Padding paragraphe
   ======================================== */

/* XXXL - Ultra-ultra-wide (2200px+) */
@media (min-width: 2200px) {
    .bloc-soumission p {
        padding-right: 120px !important;
    }
}

/* XXL2 - Ultra-wide large (1900-2199px) */
@media (min-width: 1900px) and (max-width: 2199px) {
    .bloc-soumission p {
        padding-right: 110px !important;
    }
}

/* XXL1 - Ultra-wide (1600-1899px) */
@media (min-width: 1600px) and (max-width: 1899px) {
    .bloc-soumission p {
        padding-right: 100px !important;
    }
}

/* XL2 - Desktop très large (1501-1599px) */
@media (min-width: 1501px) and (max-width: 1599px) {
    .bloc-soumission p {
        padding-right: 80px !important;
    }
}

/* XL1 - Laptop standard (1367-1500px) */
@media (min-width: 1367px) and (max-width: 1500px) {
    .bloc-soumission p {
        padding-right: 60px !important;
    }
}

/* XL0 - Laptop petit (1200-1366px) */
@media (min-width: 1200px) and (max-width: 1366px) {
    .bloc-soumission p {
        padding-right: 40px !important;
    }
}

/* LG - Desktop (992-1199px) */
@media (min-width: 992px) and (max-width: 1199px) {
    .bloc-soumission p {
        padding-right: 30px !important;
    }
}

/* MD - Tablet (768-991px) */
@media (min-width: 768px) and (max-width: 991px) {
    .bloc-soumission p {
        padding-right: 20px !important;
    }
}

/* SM - Mobile large (576-767px) */
@media (min-width: 576px) and (max-width: 767px) {
    .bloc-soumission p {
        padding-right: 0px !important;
    }
}

/* XS - Mobile petit (575px et moins) */
@media (max-width: 575px) {
    .bloc-soumission p {
        padding-right: 0px !important;
    }
}

/* ========================================
   SECTION CARROUSEL
   ======================================== */
.carrousel-solutions {
    margin-top: 100px !important;
    margin-bottom: 100px !important;
}

/* XXXL - Ultra-ultra-wide (2200px+) */
@media (min-width: 2200px) {
    .carrousel-solutions {
        min-height: 1240px !important;
        background-size: cover !important;
        background-position: center center !important;
    }
}

/* XXL2 - Ultra-wide large (2000-2199px) */
@media (min-width: 2000px) and (max-width: 2199px) {
    .carrousel-solutions {
        min-height: 700px !important;
        background-size: cover !important;
        background-position: center center !important;
    }
}

/* XXL1 - Ultra-wide (1800-1999px) */
@media (min-width: 1800px) and (max-width: 1999px) {
    .carrousel-solutions {
        min-height: 600px !important;
        background-size: cover !important;
        background-position: center center !important;
    }
}

@media (min-width: 768px) and (max-width: 991px) {
    .carrousel-solutions {
        padding-top: 80px !important;
    }
}

@media (max-width: 767px) {
    .carrousel-solutions {
        padding-top: 40px !important;
        margin-bottom: 20px !important;
        margin-top: 0px !important;
    }
}

/* CARROUSEL - Border radius */
#carousel.owl-carousel {
    border-radius: 10px !important;
    overflow: hidden !important;
}

#carousel .owl-stage-outer {
    border-radius: 16px !important;
}

/* SECTION CARROUSEL - Cacher background mobile */
@media (min-width: 576px) and (max-width: 767px) {
    .carrousel-solutions {
        background-image: none !important;
        background-color: transparent !important;
    }
}

@media (max-width: 575px) {
    .carrousel-solutions {
        background-image: none !important;
        background-color: transparent !important;
    }
}

/* Espacement titres et textes */
.carrousel-solutions .item h2 {
    margin-top: 50px !important;
}

@media (min-width: 768px) and (max-width: 991px) {
    .carrousel-solutions .item h2 {
        margin-top: 40px !important;
    }
}

@media (max-width: 767px) {
    .carrousel-solutions .item h2 {
        margin-top: 30px !important;
    }
}

.carrousel-solutions .item .d-flex {
    margin-bottom: 0 !important;
}

.carrousel-solutions .item p {
    margin-bottom: 40px !important;
}

@media (max-width: 767px) {
    .carrousel-solutions .item p {
        margin-bottom: 30px !important;
    }
}

/* Flèches carrousel - Position */
.carrousel-solutions #carousel {
    position: relative !important;
}

.carrousel-solutions #carousel .owl-nav {
    position: absolute !important;
    left: 91% !important;
    right: 40px !important;
    top: 88% !important;
    bottom: auto !important;
    transform: translateY(-50%) !important;
    display: flex !important;
    flex-direction: column-reverse !important;
    margin: 5px !important;
    z-index: 100 !important;
}

@media (min-width: 768px) and (max-width: 991px) {
    .carrousel-solutions #carousel .owl-nav {
        left: 85% !important;
        top: 85% !important;
    }
}

@media (max-width: 767px) {
    .carrousel-solutions #carousel .owl-nav {
        left: 83% !important;
        top: 90% !important;
    }
}

.carrousel-solutions #carousel .owl-prev,
.carrousel-solutions #carousel .owl-next {
    position: static !important;
    margin: 0 !important;
}

.carrousel-solutions #carousel .owl-prev {
    display: none !important;
}

/* Lien "En savoir plus" */
.lien-en-savoir-plus,
.lien-en-savoir-plus:visited {
    color: #000000 !important;
    text-decoration: none !important;
    font-weight: bold !important;
}

.lien-en-savoir-plus:hover {
    color: #000000 !important;
    text-decoration: underline !important;
}

/* ========================================
   PAGES ENTREPRISE ET SERVICES
   ======================================== */

/* Images services carrées */
.liste-autres-services figure.effect-apollo {
    min-height: 0 !important;
    height: 0 !important;
    padding-bottom: 100% !important;
    position: relative !important;
    overflow: hidden !important;
}

.liste-autres-services figure.effect-apollo img {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    z-index: 0 !important;
}

.liste-autres-services figure.effect-apollo a {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 100% !important;
    z-index: 2 !important;
}

.liste-autres-services figure.effect-apollo figcaption {
    position: static !important;
    z-index: 3 !important;
}

.liste-autres-services figure.effect-apollo figcaption h3 {
    position: absolute !important;
    top: 50% !important;
    left: 50% !important;
    transform: translate(-50%, -50%) !important;
    max-width: 90% !important;
    margin: 0 !important;
    color: #fdc600 !important;
    text-align: center !important;
}

/* Enlever effet highlight */
.liste-autres-services figure figcaption::before,
.liste-autres-services figure figcaption::after {
    display: none !important;
    content: none !important;
}

/* Gap entre images (4 colonnes) */
.liste-autres-services .col-sm-3 {
    padding: 5px !important;
    margin-bottom: -5px;
}

/* Gap entre images (3 colonnes) */
.liste-autres-services .col-sm-4 {
    padding: 5px !important;
    margin-bottom: -5px;
}

.liste-autres-services {
    margin-top: 70px !important;
}

/* ========================================
   PAGES SERVICES - Flèches carrousel
   ======================================== */
.single-services .owl-carousel {
    position: relative !important;
}

.single-services .owl-nav {
    position: absolute !important;
    right: 50px !important;
    top: 100% !important;
    transform: translateY(-50%) !important;
    z-index: 100 !important;
}

@media (min-width: 768px) and (max-width: 991px) {
    .single-services .owl-nav {
        right: 20px !important;
        top: 50% !important;
    }
}

@media (max-width: 767px) {
    .single-services .owl-nav {
        right: 15px !important;
        bottom: 20px !important;
        top: auto !important;
        transform: none !important;
    }
}

/* ========================================
   FLÈCHES CARROUSEL - Style global
   ======================================== */
.owl-prev {
    display: none !important;
}

.owl-next span {
    display: none !important;
}

.owl-next:hover {
    opacity: 0.7 !important;
}

/* ========================================
   SECTION CLIENTÈLE
   ======================================== */
.bloc-clientele {
    margin-top: 80px !important;
    margin-bottom: 80px !important;
}

@media (max-width: 768px) {
    .bloc-clientele {
        margin-top: 50px !important;
        margin-bottom: 50px !important;
    }
}

/* ========================================
   PAGE MARQUAGE
   ======================================== */
.marquage .col-sm-6.big-padding {
    padding-left: 0 !important;
    margin-left: 0 !important;
}

/* Tabs - H2 et H3 */
.tabs .tab-content h2 {
    font-size: 2.8rem !important;
}

.tabs .tab-content h3 {
    font-size: 1.2rem !important;
}

@media (max-width: 767px) {
    .tabs .tab-content h2 {
        font-size: 1.5rem !important;
    }
    
    .tabs .tab-content h3 {
        font-size: 1.1rem !important;
    }
    
    .tabs .nav-tabs li a {
        line-height: 1.8 !important;
    }
}

/* Tabs - Alignement contenu */
.tabs .tab-content .row {
    align-items: flex-start !important;
}

/* ========================================
   PAGE CONTACT
   ======================================== */
@media (max-width: 576px) {
    body.page-template-template-contact section.contact .container-fluid .row .col-sm-6.text-center.p-0 figure.effect-apollo {
        padding-bottom: 0 !important;
        height: auto !important;
        min-height: 250px !important;
    }
}

@media (max-width: 400px) {
    body.page-template-template-contact section.contact .container-fluid .row .col-sm-6.text-center.p-0 figure.effect-apollo {
        min-height: 200px !important;
    }
}

@media (max-width: 360px) {
    body.page-template-template-contact section.contact .container-fluid .row .col-sm-6.text-center.p-0 figure.effect-apollo {
        min-height: 180px !important;
    }
}

/* ========================================
   FOOTER
   ======================================== */
footer {
    margin-top: 80px !important;
    border-top: none !important;
    padding-top: 0 !important;
}

footer::before {
    display: none !important;
}

footer .widgets {
    border-top: none !important;
    padding-top: 20px !important;
}

footer .widgets::before {
    display: none !important;
}

footer .widgets .col-sm-4 img {
    max-width: 55% !important;
    height: auto !important;
}

footer .socials {
    margin-top: 50px !important;
}

@media (max-width: 767px) {
    footer {
        margin-top: 20px !important;
    }
    
    footer .widgets {
        padding-top: 20px !important;
    }
    
    footer .widgets .col-sm-4 img {
        max-width: 70% !important;
        margin-top: 30px !important;
    }
}

/* ========================================
   BOUTONS - Animation propre
   ======================================== */
.btn-main::before,
.btn-main::after {
    display: none !important;
}

.btn-main {
    border-radius: 8px !important;
    transition: transform 0.2s, box-shadow 0.2s !important;
    background-color: #ffffff !important;
}

.btn-main:hover {
    border-radius: 10px !important;
    transform: translateY(-3px) !important;
    background-color: #ffffff !important;
    color: #000000 !important;
}

/* ========================================
   FIX TABLETTE - Élargir conteneurs
   ======================================== */

/* SM - Tablette portrait (576-767px) */
@media (min-width: 576px) and (max-width: 767px) {
    
    /* Élargir TOUS les conteneurs */
    .container {
        max-width: 97% !important;
        width: 97% !important;
    }
    
    /* Section Hero spécifiquement */
    section.hero .container,
    .hero-content .container {
        max-width: 97% !important;
        width: 97% !important;
    }
    
    /* Toutes les sections */
    section .container {
        max-width: 97% !important;
        width: 97% !important;
        padding-left: 15px !important;
        padding-right: 15px !important;
    }
}

/* MD - Tablette paysage (768-991px) */
@media (min-width: 768px) and (max-width: 991px) {
    
    /* Élargir conteneurs */
    .container {
        max-width: 90% !important;
        width: 90% !important;
    }
}

/* ========================================
   MENU MOBILE - Règles consolidées
   ======================================== */

/* Background du menu */
.mm-panel .sub-menu,
.mm-panel .sub-menu.mm-listview {
    background-color: #000000 !important;
}

.mm-panel .sub-menu li,
.mm-panel .sub-menu .mm-listitem {
    background-color: #000000 !important;
}

.mm-panel .sub-menu {
    margin-top: 20px !important;
    margin-bottom: 20px !important;
}

/* Logo mobile */
.mm-navbar .logo img {
    content: url('https://scelltech.com/wp-content/uploads/2026/04/logo-mobile-new.png') !important;
}

/* ========================================
   FIX HAMBURGER - Centrage parfait des lignes + Alignement avec logo
   ======================================== */

/* ========================================
   FIX HAMBURGER - Alignement dans header sticky
   ======================================== */

/* Forcer position relative même en mode sticky */
@media (max-width: 991px) {
    .bottom-header.sticky .hamburger,
    .sticky .hamburger {
        position: relative !important;
        top: auto !important;
        right: auto !important;
        bottom: auto !important;
        transform: none !important;
        -webkit-transform: none !important;
        -moz-transform: none !important;
        -o-transform: none !important;
        -ms-transform: none !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        height: 30px !important;
        width: 30px !important;
    }
}

@media (max-width: 991px) {
    /* Conteneur hamburger - Position relative pour flexbox */
    .hamburger {
        position: relative !important;  /* Au lieu de absolute */
        top: auto !important;
        right: auto !important;
        bottom: auto !important;
        transform: none !important;
        -webkit-transform: none !important;
        -moz-transform: none !important;
        -o-transform: none !important;
        -ms-transform: none !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        height: 30px !important;
        width: 30px !important;
    }
    
    /* Wrapper du span - Permettre positionnement absolu des pseudo-éléments */
    .hamburger span {
        position: relative !important;
        display: block !important;
        margin: 0 !important;
    }
}

/* ========================================
   FIX HAMBURGER CLOSE (X) - Repositionner au bon endroit
   ======================================== */

@media (max-width: 3000px) {
    /* ULTRA-SPÉCIFIQUE - Annuler le flex: 1 */
    .mm-navbars_top > .mm-navbar > a.hamburger.close,
    .mm-navbars_top > .mm-navbar > a.hamburger-5.close {
        flex: none !important;
        -webkit-box-flex: 0 !important;
        -ms-flex: none !important;
        width: 40px !important;
        height: 30px !important;
        padding: 5px !important;
			margin-top: -5px!important
        margin: 0 !important;
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
    }
    
    /* Positionnement et centrage */
    a.hamburger.close,
    a.hamburger-5.close {
        position: relative !important;
        top: auto !important;
        right: auto !important;
        bottom: auto !important;
        transform: none !important;
        -webkit-transform: none !important;
        float: none !important;
    }
    
    /* Spans du X - Centrer les lignes */
    .hamburger.close span,
    .hamburger-5.close span {
        position: relative !important;
        display: block !important;
        margin: 0 !important;
    }
}

/* ========================================
   FIX MENU MOBILE - Alignement horizontal de la navbar jaune
   ======================================== */

@media (max-width: 991px) {
    /* Navbar jaune - Flexbox avec alignement vertical centré */
    .mm-navbars_top > .mm-navbar {
        display: flex !important;
        align-items: center !important;
        justify-content: flex-start !important;
        height: 65px !important;
        padding: 0 15px !important;
    }
    
    /* Logo - Pas de flex, juste sa taille naturelle */
    .mm-navbars_top .logo {
        flex: none !important;
        -webkit-box-flex: 0 !important;
        -ms-flex: none !important;
        display: flex !important;
        align-items: center !important;
        padding: 0 !important;
        margin: 0 !important;
        width: auto !important;
    }
	
	/* Annuler padding-left sur l'image du logo */
.mm-navbars_top .logo img {
    max-height: 40px !important;
    width: auto !important;
    padding-left: 0 !important;
    margin-left: 0 !important;
}
    
    .mm-navbars_top .logo img {
        max-height: 40px !important;
        width: auto !important;
    }
    
    /* Bouton Soumission - Prend tout l'espace restant et centre le texte */
    .mm-navbars_top .btn-soumission {
        flex: 1 !important;
        -webkit-box-flex: 1 !important;
        -ms-flex: 1 !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        padding: 8px 16px !important;
        margin: 0 !important;
        text-align: center !important;
    }
    
    /* X (hamburger close) - Pas de flex, juste sa taille */
    .mm-navbars_top .hamburger.close {
        flex: none !important;
        -webkit-box-flex: 0 !important;
        -ms-flex: none !important;
        margin: 0 !important;
    }
}

/* ========================================
   MENU MOBILE - Sous-menu Services background noir
   ======================================== */

@media (max-width: 991px) {
    /* Override le rgba blanc avec noir solide */
    .mm-menu_theme-dark .mm-listitem_opened > .mm-btn_next,
    .mm-menu_theme-dark .mm-listitem_opened > .mm-panel {
        background: rgba(0, 0, 0, 1) !important;
    }
    
    /* Au cas où - Background noir pour tout le panel */
    .mm-panel .sub-menu,
    .mm-panel .sub-menu.mm-listview {
        background-color: #000000 !important;
    }
}

/* ========================================
   MENU MOBILE - Border-left 4px jaune (menu principal seulement)
   ======================================== */

@media (max-width: 991px) {
    /* Items du menu PRINCIPAL seulement - border jaune 4px */
    .mm-menu > .mm-panel > .mm-listview > li > a:not(.mm-btn_next) {
        border-left: 4px solid #fdc600 !important;
    }
    
    /* Items du SUBMENU - pas de border ou border noir */
    .mm-menu .sub-menu li a {
        border-left: 4px solid #000000 !important;
    }
    
    /* Enlever border du bouton next (flèche) */
    .mm-btn_next {
        border-left: none !important;
    }
}



/* ========================================
   MENU MOBILE - Centrer flèche "next" verticalement
   ======================================== */

@media (max-width: 991px) {
    .mm-btn_next {
        margin-top: 3.5px !important;
    }
}

@media (max-width: 991px) {
    .mm-btn_next {
        margin-top: 3.5px !important;
        color: rgba(255, 255, 255, 0.85) !important;
    }
    
    /* Au cas où la flèche soit un pseudo-élément */
    .mm-btn_next::before,
    .mm-btn_next::after {
        color: rgba(255, 255, 255, 0.85) !important;
        border-color: rgba(255, 255, 255, 0.85) !important;
    }
}

/* ========================================
   MENU MOBILE - Cacher la scrollbar
   ======================================== */

@media (max-width: 991px) {
    /* Cacher scrollbar - Firefox */
    .mm-menu,
    .mm-panel,
    .mm-wrapper__blocker {
        scrollbar-width: none !important;
    }
    
    /* Cacher scrollbar - Chrome, Safari, Edge */
    .mm-menu::-webkit-scrollbar,
    .mm-panel::-webkit-scrollbar,
    .mm-wrapper__blocker::-webkit-scrollbar {
        display: none !important;
        width: 0 !important;
        height: 0 !important;
    }
    
    /* Cacher scrollbar - IE, ancien Edge */
    .mm-menu,
    .mm-panel,
    .mm-wrapper__blocker {
        -ms-overflow-style: none !important;
    }
}

/* ========================================
   H1 PAGE SERVICES - Stylisation par sections
   ======================================== */

/* Partie principale - Plus grosse, jaune */
h1 .h1-primary {
    font-size: 2.2rem !important;
    font-weight: 700 !important;
    color: #fdc600 !important;
    display: block !important;
    margin-bottom: 10px !important;
}

h1 .h1-primary-blanc {
    font-size: 1.4rem !important;
    font-weight: 400 !important;
    color: #ffffff !important;
    display: block !important;
    margin-bottom: 10px !important;
}

/* Partie secondaire - Moyenne, blanc */
h1 .h1-secondary {
    font-size: 0.9rem !important;
    font-weight: 500 !important;
    color: #ffffff !important;
    display: block !important;
    margin-bottom: 8px !important;
}

/* Localisation - Petite, gris */
h1 .h1-location {
    font-size: 0.8rem !important;
    font-weight: 400 !important;
    color: #8B8B8B !important;
    display: block !important;
}

/* Responsive - Tablet */
@media (min-width: 768px) and (max-width: 991px) {
    h1 .h1-primary {
        font-size: 2.2rem !important;
    }
    h1 .h1-secondary {
        font-size: 1.4rem !important;
    }
    h1 .h1-location {
        font-size: 1rem !important;
    }
}

/* Responsive - Mobile */
@media (max-width: 767px) {
    h1 .h1-primary {
        font-size: 1.3rem !important;
    }
    h1 .h1-secondary {
        font-size: 0.6rem !important;
    }
    h1 .h1-location {
        font-size: 0.9rem !important;
    }
}

