/* Feuille de la page d'accueil GoExploria, portée sous .gx-accueil.
   GÉNÉRÉ par scripts/build_accueil_sections.py — ne pas modifier à la main. */
.gx-accueil{--navy-dark: #0a1628;
    --navy-primary: #1a2942;
    --navy-medium: #2a3f5f;
    --navy-light: #3d5a80;
    --accent-gold: #d4af37;
    --accent-yellow: #ffd700;
    --white: #ffffff;
    --gray-light: #f8f9fa;
    --gray-medium: #e9ecef;
    --overlay-dark: rgba(10, 22, 40, 0.7);
    --overlay-medium: rgba(10, 22, 40, 0.5);

    
    --bosse-border: #e0e0e0;
    --bosse-shadow: 0 10px 40px rgba(0, 0, 0, 0.08);
    --bosse-bg: #ffffff;
    --bosse-accent: #d32f2f;
    --bosse-radius: 16px;}
.gx-accueil .design-bosse-section{padding: 80px 0;
    width: 100%;}
.gx-accueil .design-bosse-block{background: var(--bosse-bg);
    border: 1px solid var(--bosse-border);
    box-shadow: var(--bosse-shadow);
    border-radius: var(--bosse-radius);
    padding: 30px;
    margin-bottom: 40px;}
.gx-accueil .design-bosse-title{text-align: center;
    font-family: 'Montserrat', sans-serif;
    font-size: 32px;
    font-weight: 900;
    color: var(--navy-dark);
    text-transform: uppercase;
    letter-spacing: 2px;
    margin-bottom: 30px;
    width: 100%;}
.gx-accueil .design-bosse-controls{display: flex;
    justify-content: space-between;
    align-items: center;
    width: 100%;
    margin-top: 20px;}
.gx-accueil .design-bosse-label{font-size: 14px;
    font-weight: 700;
    color: #888;
    text-transform: uppercase;
    display: flex;
    align-items: center;
    gap: 8px;}
.gx-accueil .design-bosse-more-btn{background: var(--bosse-accent);
    color: #fff;
    padding: 10px 25px;
    border-radius: 50px;
    font-weight: 700;
    text-decoration: none;
    display: flex;
    align-items: center;
    gap: 10px;
    transition: all 0.3s ease;}
.gx-accueil .design-bosse-more-btn:hover{background: var(--navy-dark);
    transform: translateY(-2px);}
.gx-accueil *{margin: 0;
    padding: 0;
    box-sizing: border-box;}
.gx-accueil{font-family: 'Montserrat', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    color: #333333;
    overflow-x: hidden !important;
    
    background-color: #ffffff;
    width: 100%;
    margin: 0;
    padding: 0;
    position: relative;
    max-width: 100vw;}
.gx-accueil{overflow-x: hidden !important;
    width: 100%;}
.gx-accueil *{max-width: 100vw;}
.gx-accueil .main-content{width: 100%;
    max-width: 100vw;
    overflow-x: hidden;
    position: relative;}
.gx-accueil .header-top{display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 8px 40px;
    background-color: var(--navy-primary);
    font-size: 12px;
    font-weight: 500;
    letter-spacing: 0.5px;
    transition: background-color 0.3s ease;}
.gx-accueil .header-contact a{color: var(--white);
    text-decoration: none;
    transition: color 0.3s ease;}
.gx-accueil .header-contact a:hover{color: var(--accent-gold);}
.gx-accueil .header-promo{color: var(--accent-yellow);
    font-weight: 600;}
.gx-accueil .header-nav{background-color: var(--navy-dark);
    border-bottom: 1px solid rgba(255, 255, 255, 0.1);
    transition: background-color 0.3s ease;
    position: relative;}
.gx-accueil .nav-container{display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 16px 40px;
    max-width: 1920px;
    margin: 0 auto;}
.gx-accueil .nav-left{display: flex;
    align-items: center;
    gap: 24px;}
.gx-accueil .menu-toggle{background: none;
    border: none;
    cursor: pointer;
    display: none;
    flex-direction: column;
    gap: 6px;
    padding: 10px;
    z-index: 1001;}
.gx-accueil .menu-toggle span{width: 28px;
    height: 3px;
    background-color: var(--white);
    transition: all 0.3s ease;
    border-radius: 2px;}
.gx-accueil .menu-toggle:hover span{background-color: var(--accent-gold);}
.gx-accueil .menu-toggle.active span:nth-child(1){transform: rotate(45deg) translate(8px, 8px);}
.gx-accueil .menu-toggle.active span:nth-child(2){opacity: 0;}
.gx-accueil .menu-toggle.active span:nth-child(3){transform: rotate(-45deg) translate(8px, -8px);}
.gx-accueil .logo{display: flex;
    align-items: center;
    gap: 12px;
    text-decoration: none;
    color: var(--white);}
.gx-accueil .logo-map-icon{width: 50px !important;
    height: 50px !important;
    object-fit: contain;}
.gx-accueil .logo img:not(.logo-map-icon){width: auto;
    height: auto;
    max-height: 96px;
    max-width: 280px;
    object-fit: contain;
    display: block;
    filter: drop-shadow(0 2px 6px rgba(0,0,0,0.35));}
.gx-accueil .logo-text{display: flex;
    flex-direction: column;
    line-height: 1.2;}
.gx-accueil .logo-go{font-size: 24px;
    font-weight: 800;
    color: var(--accent-gold);}
.gx-accueil .logo-exploria{font-size: 24px;
    font-weight: 800;
    color: var(--white);}
.gx-accueil .logo-location{font-size: 10px;
    font-weight: 500;
    color: var(--white);
    letter-spacing: 1px;}
.gx-accueil .nav-center{flex: 1;
    display: flex;
    justify-content: center;
    position: relative;}
.gx-accueil .nav-menu{display: flex;
    list-style: none;
    gap: 32px;
    margin: 0;
    padding: 0;}
.gx-accueil .nav-menu li a{color: var(--white);
    text-decoration: none;
    font-size: 13px;
    font-weight: 600;
    letter-spacing: 0.5px;
    transition: color 0.3s ease;
    position: relative;}
.gx-accueil .nav-menu li a:hover{color: var(--accent-gold);}
.gx-accueil .nav-video-channel-link{display: none;}
.gx-accueil .nav-account-icon{display: flex !important;
    align-items: center;
    justify-content: center;
    gap: 6px;
    width: auto;
    height: 36px;
    padding: 0 6px;
    transition: all 0.25s ease !important;
    font-size: 13px !important;
    font-weight: 600;
    letter-spacing: 0.5px;}
.gx-accueil .nav-account-icon:hover{background: rgba(212,175,55,0.2) !important;
    border-color: #d4af37 !important;
    color: #d4af37 !important;
    transform: scale(1.08);}
.gx-accueil .nav-right{display: flex;
    align-items: center;
    gap: 20px;}
.gx-accueil .nav-icon{color: var(--white);
    cursor: pointer;
    transition: all 0.3s ease;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    border-radius: 50%;}
.gx-accueil .nav-icon:hover{color: var(--accent-gold);
    background-color: rgba(255, 255, 255, 0.05);}
.gx-accueil .nav-devis-btn{position: relative;
    overflow: hidden;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    height: 40px;
    padding: 0 14px;
    border-radius: 999px;
    border: 1px solid rgba(212, 175, 55, 0.5);
    background: linear-gradient(135deg, #d4af37, #f4c96a);
    color: #1a2942;
    text-decoration: none;
    font-size: 13px;
    font-weight: 700;
    white-space: nowrap;
    transition: transform 0.2s ease, box-shadow 0.2s ease, opacity 0.2s ease;}
.gx-accueil .nav-devis-btn i{font-size: 14px;}
.gx-accueil .nav-devis-btn:hover{color: #1a2942;
    transform: translateY(-1px);
    box-shadow: 0 8px 20px rgba(212, 175, 55, 0.35);
    opacity: 0.95;}
.gx-accueil .nav-devis-btn::before{content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    border-radius: 999px;
    background: linear-gradient(90deg, transparent, rgba(255,255,255,0.3), transparent);
    animation: devis-btn-ripple 2s ease-in-out infinite;
    pointer-events: none;}
@keyframes devis-btn-ripple{
    0% {
        left: -100%;
    }
    100% {
        left: 100%;
    }
}
@media (max-width: 1200px){.gx-accueil .nav-devis-btn{width: 40px;
        min-width: 40px;
        padding: 0;
        border-radius: 50%;}
.gx-accueil .nav-devis-btn span{display: none;}}
@media (max-width: 768px){.gx-accueil .nav-devis-btn{width: 36px;
        min-width: 36px;
        height: 36px;}}
.gx-accueil .mobile-search-trigger{display: none;}
.gx-accueil .main-content{position: relative;
    min-height: 100vh;}
.gx-accueil .video-carousel-background{position: absolute;
    top: 0;
    left: 0;
    right: 0;
    width: 100%;
    height: 100%;
    z-index: 0;
    overflow: hidden;
    border-radius: 0;}
.gx-accueil .video-carousel-container{position: relative;
    width: 100%;
    height: 100%;}
.gx-accueil .video-slide{position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    opacity: 0;
    transition: opacity 1.5s ease-in-out;
    overflow: hidden;
    background: #000;}
.gx-accueil .video-slide.active{opacity: 1;}
.gx-accueil .video-background{width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center center;
    display: block;}
.gx-accueil iframe.video-background{position: absolute;
    top: 50%;
    left: 50%;
    width: 100%;
    height: 100%;
    transform: translate(-50%, -50%);
    border: none;
    pointer-events: none;
    will-change: width, height, transform;}
.gx-accueil .carousel-controls{position: absolute;
    bottom: 200px;
    left: 50%;
    transform: translateX(-50%);
    display: none;
    gap: 12px;
    z-index: 10;}
.gx-accueil .carousel-dot{width: 12px;
    height: 12px;
    border-radius: 50%;
    border: 2px solid var(--white);
    background-color: transparent;
    cursor: pointer;
    transition: all 0.3s ease;}
.gx-accueil .carousel-dot:hover{background-color: var(--accent-gold);
    border-color: var(--accent-gold);}
.gx-accueil .carousel-dot.active{background-color: var(--white);
    transform: scale(1.2);}
.gx-accueil .hero-sound-toggle{position: absolute;
    left: 24px;
    bottom: 250px;
    z-index: 20;
    width: 52px;
    height: 52px;
    border-radius: 50%;
    background: rgba(101, 113, 132, 0.55);
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
    border: 1.5px solid rgba(255, 255, 255, 0.25);
    color: #ffffff;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: all 0.25s ease;
    box-shadow: 0 4px 14px rgba(0, 0, 0, 0.35);}
.gx-accueil .hero-sound-toggle:hover{background: rgba(212, 175, 55, 0.25);
    border-color: #d4af37;
    color: #d4af37;
    transform: scale(1.08);}
.gx-accueil .hero-sound-toggle.is-unmuted{background: rgba(212, 175, 55, 0.25);
    border-color: #d4af37;
    color: #d4af37;}
@media (max-width: 768px){.gx-accueil .hero-sound-toggle{left: 16px;
        bottom: 120px;
        width: 44px;
        height: 44px;}}
.gx-accueil .video-carousel-background, .gx-accueil .video-carousel-container{position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;}
.gx-accueil .hero-video-overlay{position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(to bottom, rgba(0, 0, 0, 0.3), rgba(0, 0, 0, 0.6));
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 2;
    pointer-events: none;}
.gx-accueil .hero-video-info{text-align: center;
    max-width: 800px;
    padding: 0 40px;
    pointer-events: auto;}
.gx-accueil .hero-video-main-title{font-size: 56px;
    font-weight: 800;
    color: var(--white);
    text-shadow: 0 4px 20px rgba(0, 0, 0, 0.8);
    margin-bottom: 20px;
    line-height: 1.2;
    letter-spacing: -1px;}
.gx-accueil .hero-video-description{font-size: 20px;
    font-weight: 400;
    color: var(--white);
    text-shadow: 0 2px 10px rgba(0, 0, 0, 0.8);
    margin-bottom: 30px;
    line-height: 1.5;}
.gx-accueil .hero-video-main-button{display: inline-block;
    background: var(--accent-gold);
    color: var(--navy-dark);
    padding: 16px 40px;
    border-radius: 8px;
    font-size: 18px;
    font-weight: 700;
    text-decoration: none;
    transition: all 0.3s ease;
    box-shadow: 0 4px 20px rgba(212, 175, 55, 0.4);
    text-transform: uppercase;
    letter-spacing: 1px;}
.gx-accueil .hero-video-main-button:hover{background: #ffd700;
    transform: translateY(-3px);
    box-shadow: 0 6px 30px rgba(212, 175, 55, 0.6);}
.gx-accueil .hero-video-cards-overlay{position: absolute;
    bottom: 40px;
    left: 50%;
    transform: translateX(-50%);
    z-index: 10;
    width: auto;
    max-width: 95%;
    background: transparent;
    padding: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 15px;}
.gx-accueil .hero-video-cards{display: flex;
    gap: 20px;
    justify-content: flex-start;
    align-items: center;
    overflow-x: auto;
    overflow-y: hidden;
    padding: 0;
    position: relative;
    width: auto;
    max-width: 100%;
    scroll-behavior: smooth;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
    -ms-overflow-style: none;}
.gx-accueil .hero-video-cards::-webkit-scrollbar{display: none;}
.gx-accueil .carousel-nav-btn{position: relative;
    width: 45px;
    height: 70px;
    background: rgba(10, 22, 40, 0.85);
    border: 2px solid var(--accent-gold);
    border-radius: 8px;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 20;
    transition: all 0.3s ease;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.4);
    flex-shrink: 0;}
.gx-accueil .carousel-nav-btn:hover{background: rgba(10, 22, 40, 0.95);
    border-color: #ffd700;
    transform: scale(1.05);}
.gx-accueil .carousel-nav-btn.prev{order: -1;}
.gx-accueil .carousel-nav-btn.next{order: 1;}
.gx-accueil .carousel-nav-btn svg{width: 28px;
    height: 28px;
    fill: none;
    stroke: var(--accent-gold);
    stroke-width: 3;
    stroke-linecap: round;
    stroke-linejoin: round;}
.gx-accueil .hero-video-card{position: relative;
    width: 210px;
    min-width: 210px;
    height: 140px;
    border-radius: 12px;
    overflow: hidden;
    cursor: pointer;
    transition: all 0.4s ease;
    border: 3px solid transparent;
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.5);
    flex-shrink: 0;
    display: block;}
.gx-accueil .hero-video-card:hover{transform: scale(1.05);
    border-color: var(--accent-gold);}
.gx-accueil .hero-video-card.active{border-color: var(--accent-gold);
    border-width: 4px;}
.gx-accueil .hero-video-card-thumbnail{width: 100%;
    height: 100%;
    object-fit: cover;}
.gx-accueil .hero-video-card-overlay{position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(to bottom, rgba(0, 0, 0, 0.3), rgba(0, 0, 0, 0.7));
    display: flex;
    align-items: center;
    justify-content: center;
    transition: background 0.3s ease;}
.gx-accueil .hero-video-card:hover .hero-video-card-overlay{background: linear-gradient(to bottom, rgba(0, 0, 0, 0.2), rgba(0, 0, 0, 0.5));}
.gx-accueil .hero-video-card-play{width: 50px;
    height: 50px;
    background: rgba(212, 175, 55, 0.9);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.3s ease;}
.gx-accueil .hero-video-card:hover .hero-video-card-play{background: var(--accent-gold);
    transform: scale(1.1);}
.gx-accueil .hero-video-card-play svg{width: 20px;
    height: 20px;
    fill: var(--navy-dark);
    margin-left: 3px;}
.gx-accueil .hero-video-card-title{position: absolute;
    bottom: 10px;
    left: 12px;
    right: 12px;
    color: var(--white);
    font-size: 13px;
    font-weight: 700;
    text-align: center;
    text-shadow: 0 2px 8px rgba(0, 0, 0, 0.9);
    line-height: 1.3;}
.gx-accueil .hero-mobile-header{display: none;}
.gx-accueil .hero-content{text-align: center;
    max-width: 1200px;
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 50px;
    position: relative;
    z-index: 5;
    padding-top: 50px;}
.gx-accueil .hero-text{animation: fadeInUp 1s ease-out;}
.gx-accueil .hero-title{display: flex;
    flex-direction: column;
    gap: 8px;}
.gx-accueil .hero-subtitle{font-size: 48px;
    font-weight: 300;
    letter-spacing: 8px;
    color: var(--white);
    opacity: 0.9;}
.gx-accueil .hero-main{font-size: 72px;
    font-weight: 900;
    letter-spacing: 4px;
    color: var(--white);
    text-shadow: 0 4px 20px rgba(0, 0, 0, 0.5);}
.gx-accueil .hero-search{width: 100%;
    max-width: 900px;
    animation: fadeInUp 1s ease-out 0.3s backwards;}
.gx-accueil .search-container{background-color: rgba(255, 255, 255, 0.95);
    border-radius: 8px;
    padding: 8px;
    display: flex;
    align-items: center;
    gap: 16px;
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.3);
    border: 3px solid var(--accent-gold);}
.gx-accueil .search-wrapper{flex: 1;
    display: flex;
    align-items: center;
    gap: 16px;
    padding: 0 16px;}
.gx-accueil .search-icon{color: var(--navy-primary);
    flex-shrink: 0;}
.gx-accueil .search-input{flex: 1;
    border: none;
    outline: none;
    font-size: 16px;
    font-weight: 500;
    color: var(--navy-dark);
    background: transparent;
    padding: 16px 0;}
.gx-accueil .search-input::placeholder{color: var(--navy-light);}
.gx-accueil .search-brand{padding: 8px 24px;
    border-left: 2px solid var(--gray-medium);}
.gx-accueil .plan-n-go-logo{height: 40px;
    width: auto;
    object-fit: contain;}
.gx-accueil .hero-scroll-btn{background: none;
    border: 2px solid var(--white);
    color: var(--white);
    width: 50px;
    height: 50px;
    border-radius: 50%;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.3s ease;
    animation: bounce 2s infinite;}
.gx-accueil .hero-scroll-btn:hover{background-color: var(--accent-gold);
    border-color: var(--accent-gold);
    transform: translateY(4px);}
@keyframes fadeInUp{
    from {
        opacity: 0;
        transform: translateY(30px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}
@keyframes bounce{

    0%,
    20%,
    50%,
    80%,
    100% {
        transform: translateY(0);
    }

    40% {
        transform: translateY(-10px);
    }

    60% {
        transform: translateY(-5px);
    }
}
@media (min-width: 1920px){.gx-accueil .nav-container{padding: 20px 80px;}
.gx-accueil .hero-main{font-size: 84px;}}
@media (max-width: 1440px){.gx-accueil .nav-container{padding: 16px 30px;}
.gx-accueil .header-top{padding: 8px 30px;}}
@media (max-width: 1200px){.gx-accueil .nav-menu{gap: 20px;}
.gx-accueil .nav-menu li a{font-size: 12px;}
.gx-accueil .hero-main{font-size: 64px;}}
@media (max-width: 992px){.gx-accueil .header-top{padding: 8px 20px;
        font-size: 11px;}
.gx-accueil .nav-container{padding: 12px 20px;}
.gx-accueil .nav-center{position: fixed;
        top: 0;
        left: -100%;
        width: 100%;
        height: 100vh;
        background-color: var(--navy-dark);
        display: flex;
        align-items: center;
        justify-content: center;
        transition: left 0.3s ease;
        z-index: 10070;}
.gx-accueil .nav-center.active{left: 0;}
.gx-accueil .nav-menu{flex-direction: column;
        gap: 30px;
        text-align: center;}
.gx-accueil .nav-menu li a{font-size: 20px;}
.gx-accueil .menu-toggle{display: flex;}
.gx-accueil .logo img{width: 60px;
        height: 60px;}
.gx-accueil .hero-main{font-size: 56px;
        letter-spacing: 3px;}
.gx-accueil .search-container{max-width: 700px;}
.gx-accueil .main-content{margin-top: 0;}}
@media (max-width: 1024px){.gx-accueil .design-bosse-section{padding: 40px 0;}
.gx-accueil .main-content{margin-top: 70px;}}
@media (max-width: 768px){.gx-accueil .header-top{padding: 6px 15px;
        font-size: 10px;
        background-color: rgba(26, 41, 66, 0.8);}
.gx-accueil .header-nav{background-color: rgba(26, 41, 66, 0.6);}
.gx-accueil .header-contact a{font-size: 10px;}
.gx-accueil .header-promo{font-size: 10px;}
.gx-accueil .nav-container{padding: 10px 15px;}
.gx-accueil .nav-left{gap: 12px;}
.gx-accueil .logo{display: none;}
.gx-accueil .nav-right{gap: 10px;}
.gx-accueil .nav-icon{width: 38px;
        height: 38px;}
.gx-accueil .hero-mobile-header{display: block;
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        z-index: 20;
        padding: 15px 20px;}
.gx-accueil .hero-mobile-email{text-align: center;
        margin-bottom: 10px;}
.gx-accueil .hero-mobile-email a{color: #d4af37;
        font-size: 11px;
        font-weight: 600;
        text-decoration: none;
        letter-spacing: 0.5px;}
.gx-accueil .hero-mobile-logo-container{display: flex;
        align-items: center;
        justify-content: center;
        gap: 12px;}
.gx-accueil .hero-mobile-map{width: 35px;
        height: 35px;
        object-fit: contain;}
.gx-accueil .hero-mobile-logo{text-decoration: none;
        display: flex;
        align-items: center;
        gap: 10px;}
.gx-accueil .hero-mobile-logo-img{width: 120px;
        height: 80;
        object-fit: contain;}
.gx-accueil .hero-mobile-logo .logo-text{text-align: left;}
.gx-accueil .hero-mobile-logo .logo-exploria{font-size: 18px;
        font-weight: 800;
        color: var(--white);}
.gx-accueil .hero-mobile-logo .logo-location{font-size: 8px;
        font-weight: 500;
        color: var(--white);
        letter-spacing: 1px;}
.gx-accueil .hero-video-cards-overlay{bottom: 40px;
        width: auto;
        max-width: 95%;
        padding: 0;
        gap: 10px;}
.gx-accueil .hero-video-card{width: 180px;
        min-width: 180px;
        height: 140px;}
.gx-accueil .hero-video-card-title{font-size: 11px;}
.gx-accueil .hero-video-main-title{font-size: 36px;}
.gx-accueil .hero-video-description{font-size: 16px;
        margin-bottom: 20px;}
.gx-accueil .hero-video-main-button{font-size: 14px;
        padding: 12px 30px;}
.gx-accueil .carousel-nav-btn{width: 35px;
        height: 60px;}
.gx-accueil .carousel-nav-btn svg{width: 22px;
        height: 22px;}
.gx-accueil .video-carousel-background{top: 15px;
        left: 0;
        right: 0;
        width: 100%;
        height: calc(100% - 195px);
        border-radius: 0;}
.gx-accueil .hero-content{margin-top: 40px;
        padding-top: 40px;
        padding-left: 0;
        padding-right: 0;
        gap: 35px;
        max-width: 100%;}
.gx-accueil .hero-main{font-size: 48px;
        letter-spacing: 2px;}
.gx-accueil .search-container{flex-direction: column;
        gap: 0;
        padding: 6px;
        max-width: 100%;
        width: 100%;
        margin: 0;}
.gx-accueil .search-wrapper{padding: 14px 18px;
        width: 100%;}
.gx-accueil .search-input{font-size: 15px;
        padding: 12px 0;}
.gx-accueil .search-brand{border-left: none;
        border-top: 2px solid var(--gray-medium);
        padding: 14px 18px;
        width: 100%;
        display: flex;
        justify-content: center;}
.gx-accueil .plan-n-go-logo{height: 38px;}
.gx-accueil .carousel-controls{bottom: 25px;}
.gx-accueil .carousel-dot{width: 11px;
        height: 11px;}
.gx-accueil .hero-video-footer{padding: 20px 15px;
        background: #ffffff;}
.gx-accueil .hero-video-cards{flex-direction: row;
        gap: 10px;
        overflow-x: auto;
        justify-content: flex-start;
        flex-wrap: nowrap;
        padding-bottom: 10px;}
.gx-accueil .hero-video-card{width: 180px;
        min-width: 180px;
        height: 110px;
        flex-shrink: 0;}
.gx-accueil .hero-video-card-title{font-size: 11px;
        bottom: 8px;
        left: 8px;
        right: 8px;}
.gx-accueil .main-content{margin-top: 75px;}}
@media (max-width: 600px){.gx-accueil .hero-main{font-size: 42px;
        letter-spacing: 1px;}
.gx-accueil .search-input{font-size: 14px;}
.gx-accueil .search-input::placeholder{font-size: 13px;}}
@media (max-width: 480px){.gx-accueil .header-top{padding: 5px 12px;
        font-size: 9px;}
.gx-accueil .header-contact a{font-size: 9px;
        letter-spacing: 0;}
.gx-accueil .header-promo{font-size: 9px;}
.gx-accueil .nav-container{padding: 8px 12px;}
.gx-accueil .nav-left{gap: 10px;}
.gx-accueil .logo img{width: 50px;
        height: 50px;}
.gx-accueil .nav-right{gap: 6px;}
.gx-accueil .nav-icon{width: 34px;
        height: 34px;}
.gx-accueil .nav-icon svg{width: 20px;
        height: 20px;}
.gx-accueil .design-bosse-section{padding: 10px 0;}
.gx-accueil .design-bosse-block{margin-bottom: 10px;}
.gx-accueil .video-carousel-background, .gx-accueil .video-carousel-container{height: 100% !important;
        min-height: 100% !important;}
.gx-accueil .slideshows-v2-section{margin-top: 40px !important;
        padding-top: 0 !important;
        background-color: transparent !important;}
.gx-accueil .hero-content{padding-top: 15px;
        gap: 12px;
        flex-grow: 0;
        justify-content: flex-start;}
.gx-accueil .hero-video-cards-overlay{position: relative;
        bottom: 40px;
        transform: none;
        left: 0;
        width: 100%;
        margin-top: 40px;}
.gx-accueil .hero-main{font-size: 38px;
        letter-spacing: 0;}
.gx-accueil .search-container{padding: 5px;
        border-width: 2px;
        width: 100%;
        margin: 0;}
.gx-accueil .search-wrapper{padding: 12px 14px;}
.gx-accueil .search-icon{width: 20px;
        height: 20px;}
.gx-accueil .search-input{font-size: 13px;
        padding: 10px 0;}
.gx-accueil .search-brand{padding: 10px 12px;}
.gx-accueil .plan-n-go-logo{height: 30px;}
.gx-accueil .hero-mobile-logo-img{width: 180px !important;
        max-height: 80px !important;
        object-fit: contain;}
.gx-accueil .hero-mobile-map{width: 75px !important;
        height: 75px !important;
        object-fit: contain;}
.gx-accueil .hero-mobile-logo-container{display: flex;
        align-items: center;
        justify-content: center;
        gap: 20px;
        margin-bottom: 20px;}
.gx-accueil .carousel-controls{bottom: 20px;}
.gx-accueil .carousel-dot{width: 8px;
        height: 8px;
        border-width: 1.5px;}
.gx-accueil .main-content>*:first-child+*{margin-top: 0 !important;
        padding-top: 0 !important;}
.gx-accueil .hero-mobile-header{display: flex !important;
        flex-direction: column;
        align-items: center;
        background-color: transparent !important;
        width: 100%;
        padding: 5px 0;
        margin-top: 15px !important;
        z-index: 1 !important;
        gap: 5px;}
.gx-accueil .main-content{margin-top: 58px;
        background-color: #0a1628 !important;}
.gx-accueil .hero-mobile-email{text-align: center;
        width: 100%;
        margin-bottom: 5px;}
.gx-accueil .hero-mobile-email a{color: #ffffff !important;
        text-decoration: none;
        font-size: 11px;
        font-weight: 700;
        letter-spacing: 1px;
        text-shadow: 0 1px 4px rgba(0, 0, 0, 0.5);}
.gx-accueil .mobile-search-trigger{display: flex;}
.gx-accueil .hero-video-cards-overlay{display: flex !important;
        position: absolute !important;
        bottom: 20px !important;
        left: 50% !important;
        transform: translateX(-50%) !important;
        width: 100% !important;
        z-index: 100 !important;
        margin-top: 0 !important;}}
@media (max-width: 375px){.gx-accueil .header-top{padding: 4px 10px;
        font-size: 8px;}
.gx-accueil .header-contact a{display: none;}
.gx-accueil .header-promo{font-size: 8px;
        margin: 0 auto;}
.gx-accueil .nav-container{padding: 8px 10px;}
.gx-accueil .logo img{width: 45px;
        height: 45px;}
.gx-accueil .nav-right{gap: 4px;}
.gx-accueil .nav-icon{width: 32px;
        height: 32px;}
.gx-accueil .hero-main{font-size: 32px;}
.gx-accueil .search-input{font-size: 12px;}
.gx-accueil .search-input::placeholder{font-size: 11px;}
.gx-accueil .plan-n-go-logo{height: 25px;}}
@media (max-height: 500px) and (orientation: landscape){.gx-accueil .header-top{display: none;}
.gx-accueil .nav-container{padding: 8px 20px;}
.gx-accueil .hero-content{gap: 20px;}
.gx-accueil .hero-main{font-size: 32px;}
.gx-accueil .search-container{max-width: 600px;}
.gx-accueil .hero-scroll-btn{display: none;}
.gx-accueil .carousel-controls{bottom: 15px;}
.gx-accueil .main-content{margin-top: 60px;}}
@media (max-width: 320px){.gx-accueil .hero-main{font-size: 28px;}
.gx-accueil .search-wrapper{flex-direction: column;
        gap: 8px;
        align-items: flex-start;}
.gx-accueil .search-icon{width: 18px;
        height: 18px;}}
.gx-accueil .quick-link-item{display: flex;
    align-items: center;
    justify-content: center;
    height: 48px;
    
    width: auto;
    transition: transform 0.3s ease;
    cursor: pointer;
    position: relative;
    padding: 0 10px;}
.gx-accueil .quick-link-item img{height: 100%;
    width: auto;
    object-fit: contain;}
.gx-accueil .quick-link-item.info-trigger img{height: 65px;
    
    animation: flash-info-bosse 2s infinite;}
@keyframes flash-info-bosse{

    0%,
    50%,
    100% {
        opacity: 1;
    }

    25%,
    75% {
        opacity: 0.6;
    }
}
.gx-accueil .quick-link-item:hover{transform: translateY(-3px);}
@media (max-width: 1200px){}
@media (max-width: 1100px){}
@media (max-width: 768px){}
.gx-accueil .lang-switcher{position: relative;}
.gx-accueil .lang-btn{display: flex;
    align-items: center;
    gap: 5px;
    background: rgba(255, 255, 255, 0.08);
    border: 1px solid rgba(255, 255, 255, 0.12);
    border-radius: 20px;
    padding: 5px 10px 5px 8px;
    cursor: pointer;
    color: var(--white);
    font-family: 'Montserrat', sans-serif;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.5px;
    transition: all 0.2s ease;
    white-space: nowrap;}
.gx-accueil .lang-btn:hover, .gx-accueil .lang-switcher.open .lang-btn{background: rgba(212, 175, 55, 0.15);
    border-color: rgba(212, 175, 55, 0.4);
    color: var(--accent-gold);}
.gx-accueil .lang-btn .lang-flag{font-size: 18px; line-height: 1; vertical-align: middle; border-radius: 2px;}
.gx-accueil .lang-btn .lang-code{font-size: 11px; font-weight: 800; letter-spacing: 0.8px;}
.gx-accueil .lang-chevron{transition: transform 0.2s ease;
    flex-shrink: 0;
    opacity: 0.7;}
.gx-accueil .lang-switcher.open .lang-chevron{transform: rotate(180deg); opacity: 1;}
.gx-accueil .lang-dropdown{position: absolute;
    top: calc(100% + 10px);
    right: 0;
    background: var(--navy-dark);
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 12px;
    padding: 6px;
    list-style: none;
    margin: 0;
    min-width: 165px;
    box-shadow: 0 8px 32px rgba(0, 0, 0, 0.5);
    opacity: 0;
    visibility: hidden;
    transform: translateY(-6px);
    transition: opacity 0.2s ease, transform 0.2s ease, visibility 0.2s;
    z-index: 10200;}
.gx-accueil .lang-switcher.open .lang-dropdown{opacity: 1;
    visibility: visible;
    transform: translateY(0);}
.gx-accueil .lang-option{display: flex;
    align-items: center;
    gap: 10px;
    padding: 9px 12px;
    border-radius: 8px;
    cursor: pointer;
    transition: background 0.15s ease;
    color: rgba(255, 255, 255, 0.7);
    font-family: 'Montserrat', sans-serif;
    font-size: 13px;
    font-weight: 600;
    user-select: none;}
.gx-accueil .lang-option:hover{background: rgba(255, 255, 255, 0.07); color: var(--white);}
.gx-accueil .lang-option.lang-active{background: rgba(212, 175, 55, 0.12); color: var(--accent-gold);}
.gx-accueil .lang-option .lang-flag{font-size: 20px; line-height: 1; flex-shrink: 0; vertical-align: middle; border-radius: 2px;}
.gx-accueil .lang-option .lang-name{flex: 1;}
.gx-accueil .lang-option.lang-active::after{content: '';
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: var(--accent-gold);
    flex-shrink: 0;}
@media (max-width: 480px){.gx-accueil .lang-btn .lang-code{display: none;}
.gx-accueil .lang-btn{padding: 5px 8px; gap: 0;}}
.gx-accueil{--vm-gold: #d4af37;
  --vm-gold-light: rgba(212, 175, 55, 0.1);
  --vm-gold-border: rgba(212, 175, 55, 0.3);
  --vm-dark: #1a2942;
  --vm-text: #000000;
  --vm-muted: #6c757d;
  --vm-bg: #ffffff;
  --vm-bg-alt: #f8f9fa;
  --vm-border: #e9ecef;
  --vm-radius: 8px;
  --vm-transition: 0.3s cubic-bezier(0.4, 0, 0.2, 1);}
@keyframes slideInVerticalVideo{
  from { opacity: 0; transform: translateX(-10px); }
  to   { opacity: 1; transform: translateX(0); }
}
@keyframes spin{ to { transform: rotate(360deg); } }
.gx-accueil .vmenu{display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 4px;
  padding: 10px 12px;
  border-bottom: 1px solid var(--vm-border);}
.gx-accueil .vmenu .icon-blue{width: 38px; height: 38px;
  background: radial-gradient(circle at 36% 32%, #72c8ff 0%, #1b72cc 45%, #0a3d82 100%);
  border: 2px solid rgba(255,255,255,0.35);
  border-radius: 50%;
  box-shadow: 0 3px 10px rgba(0,0,0,0.35), inset 0 1px 0 rgba(255,255,255,0.2);
  display: flex;
  align-items: center;
  justify-content: center;
  transition: transform 0.2s, box-shadow 0.2s;}
.gx-accueil .vmenu .icon-blue:hover{transform: scale(1.12);
  box-shadow: 0 5px 16px rgba(0,0,0,0.45), inset 0 1px 0 rgba(255,255,255,0.2);}
.gx-accueil .vmenu .picto-label{font-family: Georgia, 'Times New Roman', serif;
  font-style: italic;
  font-weight: 900;
  font-size: 16px;
  color: #fff;
  line-height: 1;
  text-shadow: 0 1px 3px rgba(0,0,0,0.4);
  user-select: none;}
.gx-accueil .vmenu .picto-icon{font-size: 16px;
  color: #fff;
  line-height: 1;
  text-shadow: 0 1px 3px rgba(0,0,0,0.4);}
@media (max-width: 992px){}
@media (max-width: 768px){}
@media (max-width: 480px){}
@keyframes slideInVerticalVideo{
    from {
        opacity: 0;
        transform: translateX(-10px);
    }
    to {
        opacity: 1;
        transform: translateX(0);
    }
}
.gx-accueil{--vm-gold: #d4af37;
  --vm-gold-light: rgba(212, 175, 55, 0.1);
  --vm-gold-border: rgba(212, 175, 55, 0.3);
  --vm-dark: #1a2942;
  --vm-muted: #6c757d;
  --vm-bg: #ffffff;
  --vm-bg-alt: #f8f9fa;
  --vm-border: #e9ecef;
  --vm-radius: 12px;
  --vm-transition: 0.35s cubic-bezier(0.4, 0, 0.2, 1);}
@media (max-width: 1024px){}
@media (max-width: 768px){}
@keyframes fadeInUp{
    from {
        opacity: 0;
        transform: translateY(10px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}
@media (max-width: 1200px){}
@media (max-width: 992px){}
@media (max-width: 768px){}
@media (max-width: 480px){}
@media (max-width: 1200px){}
@media (max-width: 992px){}
@media (max-width: 768px){}
.gx-accueil .external-link{background: #1a2942;
            color: white !important;
            display: inline-flex;
            align-items: center;
            gap: 8px;}
.gx-accueil .external-link:hover{background: #d4af37 !important;
            color: #1a2942 !important;}
@media (max-width: 1024px){}
@media (max-width: 768px){}
@media (max-width: 1200px){}
@media (max-width: 768px){}
.gx-accueil .services-trigger-v4{display: inline-block;
            padding: 12px 24px;
            background: #1a2942;
            color: white;
            border-radius: 8px;
            cursor: pointer;
            font-weight: 600;
            transition: all 0.3s ease;}
.gx-accueil .services-trigger-v4:hover{background: #d4af37;
            transform: translateY(-2px);}
.gx-accueil .snb-anchor{display: block;
    position: relative;
    top: -140px;
    visibility: hidden;
    pointer-events: none;
    height: 0;}
.gx-accueil .snb-bar{position: sticky;
    top: 80px;
    z-index: 200;
    background: rgba(255, 255, 255, 0.80);
    border-bottom: 2px solid #d4af37;
    box-shadow: 0 2px 12px rgba(0, 0, 0, 0.25);}
.gx-accueil .snb-inner{display: flex;
    align-items: center;
    gap: 0;
    max-width: 1600px;
    margin: 0 auto;
    padding: 0 20px;
    height: 48px;
    overflow: hidden;}
.gx-accueil .snb-label{display: flex;
    align-items: center;
    gap: 8px;
    flex-shrink: 0;
    color: #d4af37;
    font-family: 'Montserrat', sans-serif;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    white-space: nowrap;}
.gx-accueil .snb-label i{font-size: 14px;}
.gx-accueil .snb-divider{width: 1px;
    height: 24px;
    background: rgba(212, 175, 55, 0.35);
    margin: 0 16px;
    flex-shrink: 0;}
.gx-accueil .snb-links{display: flex;
    align-items: center;
    gap: 4px;
    list-style: none;
    margin: 0;
    padding: 0;
    overflow-x: auto;
    scrollbar-width: none;
    -ms-overflow-style: none;
    flex: 1;}
.gx-accueil .snb-links::-webkit-scrollbar{display: none;}
.gx-accueil .snb-link{display: flex;
    align-items: center;
    gap: 6px;
    padding: 6px 14px;
    border-radius: 20px;
    text-decoration: none;
    font-family: 'Montserrat', sans-serif;
    font-size: 16px;
    font-weight: 600;
    color: linear-gradient(90deg, #0a1628 0%, #1a2942 100%);
    white-space: nowrap;
    transition: all 0.22s ease;
    border: 1px solid transparent;}
.gx-accueil .snb-link i{font-size: 12px;
    color: #d4af37;
    flex-shrink: 0;}
.gx-accueil .snb-link:hover, .gx-accueil .snb-link.active{background: rgba(212, 175, 55, 0.15);
    border-color: rgba(212, 175, 55, 0.4);
    color: #d4af37;}
.gx-accueil .snb-link.active{background: rgba(212, 175, 55, 0.22);
    border-color: #d4af37;
    color: #d4af37;}
@media (max-width: 1024px){.gx-accueil .snb-label span{display: none;}
.gx-accueil .snb-label{gap: 0;}
.gx-accueil .snb-divider{margin: 0 10px;}
.gx-accueil .snb-link{padding: 6px 10px;}}
@media (max-width: 768px){.gx-accueil .snb-bar{top: 60px;}
.gx-accueil .snb-inner{padding: 0 8px;
        height: 56px;}
.gx-accueil .snb-label{display: none;}
.gx-accueil .snb-divider{display: none;}
.gx-accueil .snb-link{flex-direction: column;
        gap: 3px;
        padding: 6px 8px;
        border-radius: 8px;
        align-items: center;}
.gx-accueil .snb-link i{font-size: 13px;}
.gx-accueil .snb-link span{font-size: 9px;
        line-height: 1.1;
        text-align: center;
        max-width: 60px;
        white-space: normal;}}
.gx-accueil .destinations-spinner{width: 50px;
    height: 50px;
    border: 4px solid #e0e0e0;
    border-top-color: #0a1628;
    border-radius: 50%;
    animation: spin 0.8s linear infinite;}
@keyframes spin{
    to { transform: rotate(360deg); }
}
@media (max-width: 1024px){}
@media (max-width: 768px){}
@media (max-width: 480px){}
.gx-accueil .quick-link-item{display: flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    cursor: pointer;
    flex-shrink: 0;}
.gx-accueil .icon-circle{border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.2s ease;}
.gx-accueil .icon-blue{width: 68px;
    height: 68px;
    background: radial-gradient(circle at 36% 32%, #72c8ff 0%, #1b72cc 45%, #0a3d82 100%);
    border: 2.5px solid rgba(255, 255, 255, 0.40);
    box-shadow: 0 5px 18px rgba(0, 0, 0, 0.50), inset 0 2px 0 rgba(255, 255, 255, 0.28);
    transition: all 0.22s ease;}
.gx-accueil .icon-blue:hover{transform: scale(1.10);
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.60), inset 0 2px 0 rgba(255, 255, 255, 0.28);}
.gx-accueil .quick-link-item.active .icon-blue, .gx-accueil .quick-link-item.info-trigger.active .icon-blue{box-shadow: 0 0 0 3px #d4af37, 0 5px 18px rgba(0, 0, 0, 0.50);}
.gx-accueil .picto-label{font-family: Georgia, 'Times New Roman', serif;
    font-style: italic;
    font-weight: 900;
    font-size: 26px;
    color: #ffffff;
    line-height: 1;
    letter-spacing: -1px;
    text-shadow: 0 1px 3px rgba(0, 0, 0, 0.4);
    user-select: none;}
.gx-accueil .picto-icon{font-size: 24px;
    color: #ffffff;
    line-height: 1;
    text-shadow: 0 1px 3px rgba(0, 0, 0, 0.4);}
.gx-accueil .icon-standard{display: none;}
.gx-accueil .icon-large{display: none;}
.gx-accueil .cat-trigger-label{display: none;}
@media (max-width: 1024px){.gx-accueil .icon-circle{width: 32px; height: 32px; font-size: 12px;}}
@media (max-width: 768px){.gx-accueil .icon-circle{width: 36px; height: 36px;}}
@media (max-width: 480px){}
.gx-accueil .cat-mega-panel{position: fixed;
    width: 820px;
    max-width: calc(100vw - 24px);
    background: #ffffff;
    border: 1px solid rgba(10, 22, 40, 0.08);
    border-radius: 16px;
    box-shadow: 0 20px 60px rgba(0, 0, 0, 0.30);
    display: flex;
    flex-direction: row;
    opacity: 0;
    visibility: hidden;
    transform: translateY(8px);
    transition: opacity 0.22s ease, transform 0.22s ease, visibility 0.22s;
    z-index: 10500;
    overflow: hidden;}
.gx-accueil .cat-mega-panel.open{opacity: 1;
    visibility: visible;
    transform: translateY(0);}
.gx-accueil .cat-mega-left{width: 260px;
    flex-shrink: 0;
    background: #f7f9fc;
    border-right: 1px solid rgba(10, 22, 40, 0.08);
    padding: 14px 0;
    overflow-y: auto;
    max-height: 480px;}
.gx-accueil .cat-mega-header{display: flex;
    align-items: center;
    gap: 10px;
    padding: 10px 20px 14px;
    border-bottom: 1px solid rgba(10, 22, 40, 0.08);
    margin-bottom: 6px;}
.gx-accueil .cat-mega-header-icon{width: 36px;
    height: 36px;
    background: rgba(26, 114, 204, 0.12);
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #1a72cc;
    font-size: 16px;}
.gx-accueil .cat-mega-header-title{font-size: 13px;
    font-weight: 800;
    letter-spacing: 1.8px;
    text-transform: uppercase;
    color: #0a1628;
    font-family: 'Montserrat', sans-serif;}
.gx-accueil .cat-mega-cat-item{display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 13px 20px;
    cursor: pointer;
    color: #0a1628;
    font-size: 15px;
    font-weight: 600;
    font-family: 'Montserrat', sans-serif;
    transition: background 0.15s ease, color 0.15s ease, border-color 0.15s ease;
    border-left: 3px solid transparent;
    text-decoration: none;
    gap: 10px;}
.gx-accueil .cat-mega-cat-item:hover, .gx-accueil .cat-mega-cat-item.active{background: rgba(26, 114, 204, 0.08);
    color: #0a3d82;
    border-left-color: #1a72cc;
    font-weight: 700;}
.gx-accueil .cat-mega-cat-count{font-size: 12px;
    font-weight: 700;
    color: #6b7280;
    background: rgba(10, 22, 40, 0.06);
    border-radius: 12px;
    padding: 2px 9px;
    flex-shrink: 0;
    transition: background 0.15s, color 0.15s;}
.gx-accueil .cat-mega-cat-item.active .cat-mega-cat-count, .gx-accueil .cat-mega-cat-item:hover .cat-mega-cat-count{background: rgba(26, 114, 204, 0.15);
    color: #0a3d82;}
.gx-accueil .cat-mega-cat-arrow{font-size: 11px;
    color: #9ca3af;
    flex-shrink: 0;
    transition: transform 0.2s, color 0.2s;
    opacity: 0.7;}
.gx-accueil .cat-mega-cat-item.active .cat-mega-cat-arrow, .gx-accueil .cat-mega-cat-item:hover .cat-mega-cat-arrow{color: #1a72cc;
    opacity: 1;
    transform: translateX(2px);}
.gx-accueil .cat-mega-right{flex: 1;
    padding: 0;
    display: flex;
    flex-direction: column;
    min-height: 0;}
.gx-accueil .cat-mega-right-inner{flex: 1;
    overflow-y: auto;
    padding: 18px 20px;
    max-height: 440px;}
.gx-accueil .cat-mega-activities{display: none;
    grid-template-columns: 1fr 1fr;
    gap: 6px;}
.gx-accueil .cat-mega-activities.visible{display: grid;}
.gx-accueil .cat-mega-act-link{display: flex;
    align-items: center;
    gap: 10px;
    padding: 12px 14px;
    border-radius: 10px;
    color: #334155;
    font-size: 14.5px;
    font-weight: 500;
    font-family: 'Montserrat', sans-serif;
    text-decoration: none;
    transition: background 0.15s ease, color 0.15s ease, transform 0.15s ease;}
.gx-accueil .cat-mega-act-link:hover{background: rgba(26, 114, 204, 0.08);
    color: #0a3d82;
    transform: translateX(3px);
    font-weight: 600;}
.gx-accueil .cat-mega-act-dot{width: 7px;
    height: 7px;
    border-radius: 50%;
    background: #1a72cc;
    flex-shrink: 0;
    transition: background 0.15s, transform 0.15s;}
.gx-accueil .cat-mega-act-link:hover .cat-mega-act-dot{background: #0a3d82;
    transform: scale(1.3);}
.gx-accueil .cat-mega-empty{color: #94a3b8;
    font-size: 14px;
    padding: 32px 20px;
    text-align: center;
    font-style: italic;
    font-family: 'Montserrat', sans-serif;}
.gx-accueil .cat-mega-footer{padding: 14px 20px;
    background: #f7f9fc;
    border-top: 1px solid rgba(10, 22, 40, 0.08);
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-shrink: 0;}
.gx-accueil .cat-mega-view-all{display: inline-flex;
    align-items: center;
    gap: 8px;
    color: #1a72cc;
    font-size: 13px;
    font-weight: 700;
    font-family: 'Montserrat', sans-serif;
    text-decoration: none;
    letter-spacing: 0.5px;
    transition: color 0.2s, transform 0.2s;}
.gx-accueil .cat-mega-view-all:hover{color: #0a3d82; transform: translateX(2px);}
.gx-accueil .cat-mega-view-all-cats{display: inline-flex;
    align-items: center;
    gap: 6px;
    color: #64748b;
    font-size: 13px;
    font-weight: 600;
    font-family: 'Montserrat', sans-serif;
    text-decoration: none;
    transition: color 0.2s;}
.gx-accueil .cat-mega-view-all-cats:hover{color: #0a1628;}
.gx-accueil .cat-mega-left::-webkit-scrollbar, .gx-accueil .cat-mega-right-inner::-webkit-scrollbar{width: 6px;}
.gx-accueil .cat-mega-left::-webkit-scrollbar-track, .gx-accueil .cat-mega-right-inner::-webkit-scrollbar-track{background: transparent;}
.gx-accueil .cat-mega-left::-webkit-scrollbar-thumb, .gx-accueil .cat-mega-right-inner::-webkit-scrollbar-thumb{background: rgba(10, 22, 40, 0.15); border-radius: 3px;}
.gx-accueil .cat-mega-left::-webkit-scrollbar-thumb:hover, .gx-accueil .cat-mega-right-inner::-webkit-scrollbar-thumb:hover{background: rgba(10, 22, 40, 0.3);}
@media (max-width: 768px){.gx-accueil .cat-mega-panel{display: none !important;}}
.gx-accueil .nav-videos-dropdown{position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    width: 100%;
    max-height: 0;
    background: #ffffff;
    box-shadow: 0 20px 60px rgba(0, 0, 0, 0.2);
    opacity: 0;
    visibility: hidden;
    overflow: hidden;
    transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
    z-index: 9999;
    border-top: 3px solid rgba(212, 175, 55, 0.5);}
.gx-accueil .nav-videos-dropdown.active{max-height: 480px;
    opacity: 1;
    visibility: visible;}
.gx-accueil .nav-videos-header{padding: 20px 24px;
    background: #f8f9fa;
    border-bottom: 2px solid rgba(212, 175, 55, 0.3);}
.gx-accueil .nav-videos-title{font-size: 18px;
    font-weight: 700;
    color: #1a2942;
    margin: 0 0 6px 0;
    text-transform: uppercase;
    letter-spacing: 0.5px;}
.gx-accueil .nav-videos-subtitle{font-size: 13px;
    font-weight: 400;
    color: #6c757d;
    margin: 0;}
.gx-accueil .nav-videos-list{max-height: 320px;
    overflow-x: auto;
    overflow-y: hidden;
    padding: 16px;
    display: flex;
    gap: 20px;
    scroll-behavior: smooth;}
.gx-accueil .nav-videos-list::-webkit-scrollbar{height: 8px;}
.gx-accueil .nav-videos-list::-webkit-scrollbar-track{background: #f8f9fa;
    border-radius: 4px;
    margin: 0 4px;}
.gx-accueil .nav-videos-list::-webkit-scrollbar-thumb{background: linear-gradient(90deg, rgba(212, 175, 55, 0.6) 0%, rgba(212, 175, 55, 0.4) 100%);
    border-radius: 4px;
    transition: background 0.3s ease;}
.gx-accueil .nav-videos-list::-webkit-scrollbar-thumb:hover{background: linear-gradient(90deg, rgba(212, 175, 55, 0.8) 0%, rgba(212, 175, 55, 0.6) 100%);}
.gx-accueil .nav-video-thumbnail{position: relative;
    width: 100%;
    height: 180px;
    flex-shrink: 0;
    overflow: hidden;
    background: #000;}
.gx-accueil .nav-video-thumbnail img{width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.3s ease;}
.gx-accueil .nav-video-play-icon{position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 32px;
    height: 32px;
    background: rgba(255, 0, 0, 0.9);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.3s ease;}
.gx-accueil .nav-video-play-icon svg{width: 14px;
    height: 14px;
    fill: #ffffff;
    margin-left: 2px;}
.gx-accueil .nav-video-duration{position: absolute;
    bottom: 4px;
    right: 4px;
    background: rgba(0, 0, 0, 0.85);
    color: #ffffff;
    font-size: 11px;
    font-weight: 600;
    padding: 2px 6px;
    border-radius: 3px;}
.gx-accueil .nav-video-info{flex: 1;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    min-width: 0;
    padding: 12px;}
.gx-accueil .nav-video-title{font-size: 13px;
    font-weight: 600;
    color: #1a2942;
    margin: 0 0 8px 0;
    line-height: 1.4;
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    min-height: 36px;}
.gx-accueil .nav-video-meta{display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;}
.gx-accueil .nav-video-category{display: inline-flex;
    align-items: center;
    gap: 4px;
    font-size: 11px;
    font-weight: 600;
    color: #d4af37;
    background: rgba(212, 175, 55, 0.15);
    padding: 3px 8px;
    border-radius: 4px;
    text-transform: uppercase;}
.gx-accueil .nav-video-category svg{width: 12px;
    height: 12px;
    fill: currentColor;}
.gx-accueil .nav-video-date{font-size: 11px;
    font-weight: 500;
    color: #6c757d;}
.gx-accueil .nav-videos-empty{padding: 40px 20px;
    text-align: center;
    color: #6c757d;}
.gx-accueil .nav-videos-empty svg{width: 48px;
    height: 48px;
    margin-bottom: 12px;
    opacity: 0.3;}
.gx-accueil .nav-videos-empty p{font-size: 14px;
    margin: 0;}
@keyframes slideInVideo{
    from {
        opacity: 0;
        transform: translateY(-10px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}
@media (max-width: 1200px){.gx-accueil .nav-videos-dropdown{width: 750px;}
.gx-accueil .nav-videos-list{grid-template-columns: repeat(2, 1fr);
        gap: 14px;}
.gx-accueil .nav-video-thumbnail{height: 140px;}}
@media (max-width: 992px){.gx-accueil .nav-videos-dropdown{width: 650px;}
.gx-accueil .nav-videos-list{grid-template-columns: repeat(2, 1fr);
        gap: 12px;
        padding: 12px;}
.gx-accueil .nav-video-thumbnail{height: 130px;}
.gx-accueil .nav-video-title{font-size: 12px;}
.gx-accueil .nav-video-category{font-size: 10px;}}
@media (max-width: 768px){.gx-accueil .nav-videos-dropdown{position: fixed;
        top: 120px;
        left: 0;
        right: 0;
        width: 100%;
        transform: none;
        max-width: none;
        border-radius: 0;
        max-height: calc(100vh - 140px);}
.gx-accueil .nav-videos-list{display: flex;
        flex-direction: row;
        gap: 12px;
        padding: 12px;
        overflow-x: auto;
        overflow-y: hidden;
        max-height: none;}
.gx-accueil .nav-videos-header{padding: 16px 18px;}
.gx-accueil .nav-videos-title{font-size: 16px;}
.gx-accueil .nav-videos-subtitle{font-size: 12px;}
.gx-accueil .nav-video-thumbnail{height: 150px;}
.gx-accueil .nav-video-title{font-size: 12px;
        min-height: 32px;}
.gx-accueil .nav-video-info{padding: 10px;}
.gx-accueil .nav-video-category{font-size: 9px;
        padding: 2px 6px;}
.gx-accueil .nav-video-date{font-size: 10px;}
.gx-accueil .nav-video-duration{font-size: 10px;}
.gx-accueil .nav-videos-dropdown::before, .gx-accueil .nav-videos-dropdown::after{display: none;}}
@media (max-width: 600px){.gx-accueil .nav-videos-dropdown{top: 110px;}
.gx-accueil .nav-videos-list{gap: 10px;
        padding: 10px;}
.gx-accueil .nav-video-thumbnail{height: 140px;}
.gx-accueil .nav-video-title{font-size: 12px;
        min-height: auto;}
.gx-accueil .nav-video-info{padding: 10px;}}
@media (max-width: 480px){.gx-accueil .nav-videos-dropdown{top: 100px;}
.gx-accueil .nav-videos-header{padding: 12px 14px;}
.gx-accueil .nav-videos-title{font-size: 14px;}
.gx-accueil .nav-videos-subtitle{font-size: 11px;}
.gx-accueil .nav-videos-list{padding: 8px;
        gap: 8px;}
.gx-accueil .nav-video-thumbnail{height: 130px;}
.gx-accueil .nav-video-info{padding: 8px;}
.gx-accueil .nav-video-title{font-size: 11px;}}
.gx-accueil .nav-videos-dropdown::before{content: '';
    position: absolute;
    top: -8px;
    left: 50%;
    transform: translateX(-50%);
    width: 0;
    height: 0;
    border-left: 8px solid transparent;
    border-right: 8px solid transparent;
    border-bottom: 8px solid #e9ecef;}
.gx-accueil .nav-videos-dropdown::after{content: '';
    position: absolute;
    top: -6px;
    left: 50%;
    transform: translateX(-50%);
    width: 0;
    height: 0;
    border-left: 7px solid transparent;
    border-right: 7px solid transparent;
    border-bottom: 7px solid #ffffff;}
.gx-accueil .gxt-section{background:#fff;margin:60px 40px 0;font-family:Montserrat,sans-serif;}
.gx-accueil .gxt-hero-header{background:#fff;padding:24px 24px 20px;border-bottom:2px solid #e0e0e0;}
.gx-accueil .gxt-hero-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;}
.gx-accueil .gxt-hero-brand{display:flex;align-items:center;gap:16px;}
.gx-accueil .gxt-hero-title{color:#1a2942;font-size:20px;font-weight:700;margin:0;}
.gx-accueil .gxt-hero-visit-btn{background:#f26522;color:#fff;padding:6px 16px;border-radius:20px;text-decoration:none;font-size:12px;font-weight:600;transition:all .2s;}
.gx-accueil .gxt-hero-visit-btn:hover{background:#e84c10;}
.gx-accueil .gxt-hero-main-title{color:#1a2942;font-size:28px;font-weight:800;margin:0;text-transform:uppercase;letter-spacing:1px;}
.gx-accueil .gxt-hero-subtitle{color:#555;font-size:14px;line-height:1.6;margin:0 0 18px;font-weight:400;}
.gx-accueil .gxt-hero-options{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:16px;flex-wrap:wrap;}
.gx-accueil .gxt-hero-options-group{display:flex;gap:8px;flex-wrap:wrap;}
.gx-accueil .gxt-hero-option-btn{background:#f8f9fa;border:1px solid #d0d0d0;color:#555;padding:8px 16px;border-radius:20px;font-size:12px;font-weight:600;cursor:pointer;transition:all .2s;display:inline-flex;align-items:center;gap:6px;}
.gx-accueil .gxt-hero-option-btn:hover{background:#f26522;color:#fff;border-color:#f26522;}
.gx-accueil .gxt-hero-option-btn i{font-size:11px;}
.gx-accueil .gxt-hero-plans{display:flex;align-items:center;gap:12px;}
.gx-accueil .gxt-hero-plans-label{color:#666;font-size:12px;font-weight:600;}
.gx-accueil .gxt-hero-plans-link, .gx-accueil .gxt-hero-visit-link{color:#f26522;text-decoration:none;font-size:12px;font-weight:600;transition:color .2s;}
.gx-accueil .gxt-hero-plans-link:hover, .gx-accueil .gxt-hero-visit-link:hover{color:#e84c10;text-decoration:underline;}
.gx-accueil .gxt-hero-breadcrumb{background:#f8f9fa;padding:12px 16px;border-radius:8px;border:1px solid #e0e0e0;}
.gx-accueil .gxt-breadcrumb-section{}
.gx-accueil .gxt-breadcrumb-title{color:#1a2942;font-size:13px;font-weight:700;margin:0 0 8px;text-transform:uppercase;}
.gx-accueil .gxt-breadcrumb-path{display:flex;align-items:center;gap:8px;flex-wrap:wrap;}
.gx-accueil .gxt-breadcrumb-link{color:#666;text-decoration:none;font-size:12px;transition:color .2s;}
.gx-accueil .gxt-breadcrumb-link:hover{color:#f26522;}
.gx-accueil .gxt-breadcrumb-link.active{color:#f26522;font-weight:600;}
.gx-accueil .gxt-breadcrumb-sep{color:#ccc;font-size:12px;}
.gx-accueil .gxt-header{display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:14px 24px;
  background:#f8f9fa;
  border-bottom:2px solid #e0e0e0;}
.gx-accueil .gxt-logo{height:90px;width:auto;}
.gx-accueil .gxt-header-brand{display:flex;justify-content:center;align-items:center;}
.gx-accueil .gxt-header-brand--hero{width:100%;margin-bottom:10px;}
.gx-accueil .gxt-header-brand--hero .gxt-logo{height:84px;}
.gx-accueil .gxt-search-wrap{width:100%;max-width:680px;flex:1;}
.gx-accueil .gxt-search-bar{display:flex;max-width:520px;width:100%;border-radius:24px;overflow:hidden;border:1px solid #d0d0d0;}
.gx-accueil .gxt-search-input{flex:1;background:#fff;color:#333;border:none;padding:9px 16px;font-size:13px;font-family:Montserrat,sans-serif;outline:none;}
.gx-accueil .gxt-search-input::placeholder{color:#999;}
.gx-accueil .gxt-search-btn{background:#f26522;border:none;color:#fff;padding:9px 16px;cursor:pointer;transition:background .2s;}
.gx-accueil .gxt-search-btn:hover{background:#e84c10;}
.gx-accueil .gxt-header-actions{display:flex;gap:8px;flex-shrink:0;}
.gx-accueil .gxt-social-btn{width:34px;height:34px;border-radius:50%;background:#e0e0e0;color:#666;display:flex;align-items:center;justify-content:center;text-decoration:none;font-size:13px;transition:all .2s;}
.gx-accueil .gxt-social-btn:hover{background:#f26522;color:#fff;}
.gx-accueil .gxt-social-yt:hover{background:#ff0000;}
.gx-accueil .gxt-filters-bar{background:#f8f9fa;padding:10px 24px;border-bottom:1px solid #e0e0e0;overflow-x:auto;}
.gx-accueil .gxt-filters-inner{display:flex;gap:8px;min-width:max-content;}
.gx-accueil .gxt-filter{background:#fff;color:#555;border:1px solid #d0d0d0;border-radius:20px;padding:7px 16px;font-size:12px;font-weight:600;font-family:Montserrat,sans-serif;cursor:pointer;transition:all .2s;white-space:nowrap;}
.gx-accueil .gxt-filter:hover{background:#f0f0f0;color:#333;}
.gx-accueil .gxt-filter.active{background:linear-gradient(135deg,#e84c10,#f26522);color:#fff;border-color:transparent;}
.gx-accueil .gxt-player-wrap{display:none;gap:0;background:#f8f9fa;border-bottom:2px solid #e0e0e0;}
.gx-accueil .gxt-player-wrap.gxt-player-active{display:flex;}
.gx-accueil .gxt-player-main{flex:1;min-width:0;padding:20px 20px 20px 24px;}
.gx-accueil .gxt-player-embed{position:relative;padding-bottom:56.25%;background:#000;border-radius:8px;overflow:hidden;}
.gx-accueil .gxt-player-embed iframe{position:absolute;top:0;left:0;width:100%;height:100%;border:none;}
.gx-accueil .gxt-player-info{padding:16px 0 0;}
.gx-accueil .gxt-player-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px;}
.gx-accueil .gxt-player-badge{background:linear-gradient(135deg,#e84c10,#f26522);color:#fff;padding:4px 12px;border-radius:12px;font-size:11px;font-weight:700;text-transform:uppercase;}
.gx-accueil .gxt-close-player{background:#e0e0e0;border:none;color:#666;width:32px;height:32px;border-radius:50%;cursor:pointer;font-size:13px;transition:all .2s;}
.gx-accueil .gxt-close-player:hover{background:#f26522;color:#fff;}
.gx-accueil .gxt-player-title{color:#1a2942;font-size:18px;font-weight:700;margin:0 0 10px;line-height:1.3;}
.gx-accueil .gxt-player-stats{display:flex;align-items:center;gap:8px;color:#666;font-size:12px;margin-bottom:12px;flex-wrap:wrap;}
.gx-accueil .gxt-player-stats strong{color:#f26522;}
.gx-accueil .gxt-dot{color:#ccc;}
.gx-accueil .gxt-player-desc{color:#555;font-size:13px;line-height:1.6;margin:0 0 14px;}
.gx-accueil .gxt-player-actions{display:flex;gap:10px;}
.gx-accueil .gxt-action-btn{background:#e0e0e0;color:#555;text-decoration:none;padding:8px 16px;border-radius:20px;font-size:12px;font-weight:600;transition:all .2s;}
.gx-accueil .gxt-action-btn:hover{background:#f26522;color:#fff;}
.gx-accueil .gxt-player-sidebar{width:320px;flex-shrink:0;background:#fff;border-left:1px solid #e0e0e0;padding:16px;overflow-y:auto;max-height:600px;}
.gx-accueil .gxt-sidebar-title{color:#1a2942;font-size:14px;font-weight:700;margin:0 0 14px;display:flex;align-items:center;gap:8px;}
.gx-accueil .gxt-sidebar-title i{color:#f26522;}
.gx-accueil .gxt-sidebar-item{display:flex;gap:10px;padding:8px;border-radius:8px;cursor:pointer;transition:background .2s;margin-bottom:6px;}
.gx-accueil .gxt-sidebar-item:hover{background:#f8f9fa;}
.gx-accueil .gxt-sidebar-thumb{width:100px;height:56px;object-fit:cover;border-radius:4px;flex-shrink:0;}
.gx-accueil .gxt-sidebar-meta{flex:1;min-width:0;}
.gx-accueil .gxt-sidebar-item-title{color:#333;font-size:12px;font-weight:600;margin:0 0 3px;line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
.gx-accueil .gxt-sidebar-item-channel{color:#666;font-size:11px;margin:0 0 2px;}
.gx-accueil .gxt-sidebar-item-stats{color:#999;font-size:10px;margin:0;}
.gx-accueil .gxt-content-bar{display:flex;align-items:center;justify-content:space-between;padding:18px 24px 12px;border-bottom:1px solid #e0e0e0;}
.gx-accueil .gxt-content-title{color:#1a2942;font-size:16px;font-weight:700;margin:0;display:flex;align-items:center;gap:10px;}
.gx-accueil .gxt-content-title i{color:#f26522;}
.gx-accueil .gxt-video-count{color:#666;font-size:12px;font-weight:600;}
.gx-accueil .gxt-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;padding:20px 24px 32px;background:#fff;}
.gx-accueil .gxt-card{background:#fff;border-radius:10px;overflow:hidden;cursor:pointer;transition:transform .2s,box-shadow .2s;border:1px solid #e0e0e0;}
.gx-accueil .gxt-card:hover{transform:translateY(-4px);box-shadow:0 12px 32px rgba(0,0,0,.15);}
.gx-accueil .gxt-card--playing{border-color:#f26522;box-shadow:0 0 0 2px rgba(242,101,34,.4);}
.gx-accueil .gxt-thumb{position:relative;padding-bottom:56.25%;background:#000;overflow:hidden;}
.gx-accueil .gxt-thumb-img{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover;transition:transform .3s;}
.gx-accueil .gxt-card:hover .gxt-thumb-img{transform:scale(1.05);}
.gx-accueil .gxt-duration{position:absolute;bottom:6px;right:6px;background:rgba(0,0,0,.85);color:#fff;font-size:11px;font-weight:700;padding:2px 6px;border-radius:4px;z-index:2;}
.gx-accueil .gxt-play-overlay{position:absolute;inset:0;background:rgba(0,0,0,.35);display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .2s;z-index:3;}
.gx-accueil .gxt-card:hover .gxt-play-overlay{opacity:1;}
.gx-accueil .gxt-play-icon{width:52px;height:52px;background:rgba(242,101,34,.92);border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-size:18px;padding-left:4px;box-shadow:0 4px 20px rgba(242,101,34,.5);}
.gx-accueil .gxt-cat-pill{position:absolute;top:8px;left:8px;font-size:10px;font-weight:700;padding:3px 8px;border-radius:10px;text-transform:uppercase;z-index:2;color:#fff;}
.gx-accueil .gxt-cat-gastronomie{background:#e74c3c;}
.gx-accueil .gxt-cat-destinations{background:#2980b9;}
.gx-accueil .gxt-cat-aventure{background:#27ae60;}
.gx-accueil .gxt-cat-evenements{background:#8e44ad;}
.gx-accueil .gxt-cat-culture{background:#d4af37;color:#0a1628;}
.gx-accueil .gxt-card-body{display:flex;gap:10px;padding:12px;}
.gx-accueil .gxt-avatar{flex-shrink:0;}
.gx-accueil .gxt-avatar-img{width:34px;height:34px;border-radius:50%;object-fit:cover;border:2px solid #e0e0e0;}
.gx-accueil .gxt-card-meta{flex:1;min-width:0;}
.gx-accueil .gxt-card-title{color:#333;font-size:13px;font-weight:600;margin:0 0 4px;line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
.gx-accueil .gxt-card-channel{color:#666;font-size:11px;margin:0 0 3px;}
.gx-accueil .gxt-card-stats{color:#999;font-size:10px;margin:0;}
.gx-accueil .gxt-no-results{display:none;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;color:#999;gap:12px;font-size:14px;}
.gx-accueil .gxt-no-results i{font-size:3rem;color:#ccc;}
@media(max-width:1200px){.gx-accueil .gxt-grid{grid-template-columns:repeat(3,1fr);}}
@media(max-width:900px){.gx-accueil .gxt-section{margin:40px 0 0;}
.gx-accueil .gxt-grid{grid-template-columns:repeat(2,1fr);}
.gx-accueil .gxt-player-wrap{flex-direction:column;}
.gx-accueil .gxt-player-sidebar{width:100%;max-height:300px;border-left:none;border-top:1px solid #e0e0e0;}}
@media(max-width:600px){.gx-accueil .gxt-header{display:flex;flex-wrap:wrap;gap:10px;}
.gx-accueil .gxt-search-wrap{order:3;width:100%;}
.gx-accueil .gxt-grid{grid-template-columns:1fr;padding:12px;}
.gx-accueil .gxt-filters-bar{padding:8px 12px;}
.gx-accueil .gxt-content-bar{padding:12px;}}
.gx-accueil .ttk-section{background: #111;
    margin: 0;
    font-family: Montserrat, sans-serif;}
.gx-accueil .ttk-filters{display: flex;
    flex-wrap: wrap;
    gap: 8px;}
.gx-accueil .ttk-filters .ttk-filter-btn i{margin-right: 6px;}
.gx-accueil .ttk-grid{display: grid;
    grid-template-columns: repeat(6, 1fr);
    gap: 2px;
    background: #000;
    padding: 2px;}
.gx-accueil .ttk-card{position: relative;
    aspect-ratio: 9 / 16;
    overflow: hidden;
    cursor: pointer;
    background: #1a1a1a;}
.gx-accueil .ttk-card-inner{position: absolute;
    inset: 0;}
.gx-accueil .ttk-card-img{width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform 0.35s ease;}
.gx-accueil .ttk-card:hover .ttk-card-img{transform: scale(1.06);}
.gx-accueil .ttk-card-text-overlay{position: absolute;
    top: 0;
    left: 0;
    right: 0;
    padding: 12px 10px 30px;
    background: linear-gradient(to bottom, rgba(0,0,0,0.55) 0%, transparent 100%);
    color: #fff;
    font-size: 13px;
    font-weight: 700;
    line-height: 1.35;
    white-space: pre-line;
    z-index: 2;}
.gx-accueil .ttk-card-bottom{position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    padding: 28px 8px 8px;
    background: linear-gradient(to top, rgba(0,0,0,0.75) 0%, transparent 100%);
    z-index: 2;}
.gx-accueil .ttk-card-views{color: #fff;
    font-size: 12px;
    font-weight: 700;
    display: flex;
    align-items: center;
    gap: 5px;}
.gx-accueil .ttk-card-views i{font-size: 11px;}
.gx-accueil .ttk-card-hover-play{position: absolute;
    inset: 0;
    background: rgba(0,0,0,0.25);
    display: flex;
    align-items: center;
    justify-content: center;
    opacity: 0;
    transition: opacity 0.2s;
    z-index: 3;}
.gx-accueil .ttk-card:hover .ttk-card-hover-play{opacity: 1;}
.gx-accueil .ttk-card-hover-play i{width: 52px;
    height: 52px;
    background: rgba(254,44,85,0.88);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    font-size: 20px;
    padding-left: 4px;
    box-shadow: 0 6px 24px rgba(254,44,85,0.5);}
.gx-accueil .ttk-cta-bar{display: flex;
    background: #1a1a2e;
    border-top: 3px solid #fe2c55;}
.gx-accueil .ttk-cta-item{flex: 1;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 18px 28px;
    gap: 16px;
    border-right: 1px solid rgba(255,255,255,0.07);}
.gx-accueil .ttk-cta-item:last-child{border-right: none;}
.gx-accueil .ttk-cta-label{color: #fff;
    font-size: 15px;
    font-weight: 800;
    letter-spacing: 0.5px;
    text-transform: uppercase;}
.gx-accueil .ttk-cta-btn{background: transparent;
    border: 2px solid rgba(255,255,255,0.35);
    color: #fff;
    padding: 10px 22px;
    border-radius: 24px;
    font-size: 13px;
    font-weight: 700;
    text-decoration: none;
    white-space: nowrap;
    transition: all 0.25s;
    display: flex;
    align-items: center;
    gap: 8px;
    cursor: pointer;}
.gx-accueil .ttk-cta-btn:hover{background: #fe2c55;
    border-color: #fe2c55;
    color: #fff;}
.gx-accueil .ttk-tiktok-icon{width: 18px;
    height: 18px;
    object-fit: contain;}
.gx-accueil .ttk-stat{display: flex;
    align-items: center;
    gap: 6px;
    font-size: 13px;
    font-weight: 600;
    color: #111;}
.gx-accueil .ttk-stat-btn{background: #f5f5f5;
    border: none;
    width: 38px;
    height: 38px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    font-size: 16px;
    color: #111;
    transition: background 0.2s;}
.gx-accueil .ttk-stat-btn:hover{background: #ffe0e5;}
@keyframes ttk-pulse{
    0%   { transform: scale(1); }
    50%  { transform: scale(1.3); }
    100% { transform: scale(1); }
}
.gx-accueil .ttk-share-icons{display: flex;
    gap: 6px;
    margin-left: auto;}
.gx-accueil .ttk-share-btn{width: 34px;
    height: 34px;
    border-radius: 50%;
    border: none;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 14px;
    color: #fff;
    transition: opacity 0.2s;}
.gx-accueil .ttk-share-btn:hover{opacity: 0.8;}
.gx-accueil .ttk-share-fb{background: #1877f2;}
.gx-accueil .ttk-share-wa{background: #25d366;}
.gx-accueil .ttk-share-tw{background: #1da1f2;}
.gx-accueil .ttk-share-link{background: #888;}
.gx-accueil .ttk-share-more{background: #555;}
@media (max-width: 1200px){.gx-accueil .ttk-grid{grid-template-columns: repeat(4, 1fr);}}
@media (max-width: 900px){.gx-accueil .ttk-grid{grid-template-columns: repeat(3, 1fr);}
.gx-accueil .ttk-cta-bar{flex-direction: column;}
.gx-accueil .ttk-cta-item{border-right: none; border-bottom: 1px solid rgba(255,255,255,0.07);}}
@media (max-width: 600px){.gx-accueil .ttk-grid{grid-template-columns: repeat(2, 1fr);}}
.gx-accueil .chat-space-section{background: #f7f9fc;
    margin-top: 28px;}
.gx-accueil .chat-space-container{max-width: 1280px;
    margin: 0 auto;
    padding: 30px 24px 42px;}
.gx-accueil .chat-space-overview{display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 14px;
    margin-bottom: 20px;}
.gx-accueil .chat-kpi-card{background: #ffffff;
    border: 1px solid #e5ecf5;
    border-radius: 12px;
    padding: 14px 16px;}
.gx-accueil .chat-kpi-card span{color: #6b7280;
    font-size: 12px;
    display: block;}
.gx-accueil .chat-kpi-card strong{color: #0a1628;
    font-size: 26px;
    font-weight: 800;}
.gx-accueil .chat-single-showcase{background: #fff;
    border: 1px solid #e6edf8;
    border-radius: 16px;
    box-shadow: 0 10px 28px rgba(10, 22, 40, 0.06);
    padding: 24px;}
.gx-accueil .chat-single-image-wrap{display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 14px;
    justify-content: center;
    margin-bottom: 18px;}
.gx-accueil .chat-image-card{border-radius: 12px;
    border: 1px solid #e8edf6;
    background: #f9fbff;
    padding: 8px;}
.gx-accueil .chat-single-image-wrap img{width: 100%;
    max-height: 320px;
    object-fit: contain;
    border-radius: 8px;}
.gx-accueil .chat-single-content{text-align: center;
    max-width: 920px;
    margin: 0 auto;}
.gx-accueil .chat-single-content h3{margin: 0 0 10px;
    font-size: 24px;
    color: #0a1628;}
.gx-accueil .chat-single-content p{margin: 0 0 10px;
    color: #546476;
    font-size: 14px;
    line-height: 1.65;}
.gx-accueil .chat-service-points{margin-top: 14px;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;}
.gx-accueil .chat-service-points span{background: #f3f8ff;
    border: 1px solid #deeafd;
    border-radius: 10px;
    padding: 10px 12px;
    font-size: 13px;
    font-weight: 600;
    color: #2a4f7b;
    display: flex;
    align-items: center;
    gap: 8px;}
.gx-accueil .chat-service-points i{color: #1e71d8;}
@media (max-width: 991px){.gx-accueil .chat-space-overview{grid-template-columns: 1fr 1fr;}}
@media (max-width: 640px){.gx-accueil .chat-space-overview, .gx-accueil .chat-service-points{grid-template-columns: 1fr;}
.gx-accueil .chat-single-image-wrap{grid-template-columns: 1fr;}}
.gx-accueil .mail-space-section{background: #ffffff;
    margin-top: 22px;}
.gx-accueil .mail-space-container{max-width: 1280px;
    margin: 0 auto;
    padding: 30px 24px 46px;}
.gx-accueil .mail-performance{display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 14px;
    margin-bottom: 20px;}
.gx-accueil .mail-metric{border-radius: 12px;
    padding: 14px 16px;
    background: linear-gradient(135deg, #f6fbff, #eef5ff);
    border: 1px solid #deebff;}
.gx-accueil .mail-metric span{display: block;
    color: #527095;
    font-size: 12px;}
.gx-accueil .mail-metric strong{font-size: 28px;
    color: #0e2a4a;
    font-weight: 800;}
.gx-accueil .mail-campaign-grid{display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 16px;}
.gx-accueil .mail-campaign-card{background: #fff;
    border: 1px solid #e7eef8;
    border-radius: 14px;
    overflow: hidden;
    box-shadow: 0 8px 24px rgba(26, 58, 143, 0.06);}
.gx-accueil .mail-campaign-card img{width: 100%;
    height: 190px;
    object-fit: cover;}
.gx-accueil .mail-campaign-body{padding: 16px;}
.gx-accueil .mail-campaign-head{margin-bottom: 10px;}
.gx-accueil .mail-campaign-badge{display: inline-flex;
    align-items: center;
    gap: 6px;
    border-radius: 999px;
    padding: 4px 10px;
    background: #edf4ff;
    border: 1px solid #d7e7ff;
    color: #275b9c;
    font-size: 11px;
    font-weight: 700;
    margin-bottom: 8px;}
.gx-accueil .mail-campaign-body h3{margin: 0 0 7px;
    color: #0a1628;
    font-size: 17px;}
.gx-accueil .mail-campaign-body p{margin: 0;
    color: #5a6878;
    font-size: 13px;
    line-height: 1.5;}
.gx-accueil .mail-svg-widget{border-radius: 10px;
    border: 1px solid #dce8f8;
    background: linear-gradient(135deg, #f7fbff, #f0f6ff);
    padding: 8px 10px;
    margin-top: 12px;}
.gx-accueil .mail-svg-widget svg{width: 100%;
    height: 66px;
    display: block;}
.gx-accueil .mail-feature-list{list-style: none;
    padding: 0;
    margin: 12px 0 0;
    display: grid;
    gap: 8px;}
.gx-accueil .mail-feature-list li{display: flex;
    align-items: center;
    gap: 8px;
    font-size: 12px;
    color: #44566f;
    font-weight: 600;}
.gx-accueil .mail-feature-list li i{color: #2d7ff9;}
.gx-accueil .mail-campaign-card.hidden{display: none;}
@media (max-width: 991px){.gx-accueil .mail-performance, .gx-accueil .mail-campaign-grid{grid-template-columns: 1fr 1fr;}}
@media (max-width: 640px){.gx-accueil .mail-performance, .gx-accueil .mail-campaign-grid{grid-template-columns: 1fr;}}
.gx-accueil .blog-space-section{background: #f8fafc;
    margin-top: 22px;
    margin-bottom: 12px;}
.gx-accueil .blog-space-container{max-width: 1280px;
    margin: 0 auto;
    padding: 107px 24px 70px;}
.gx-accueil .blog-top-news-area{display: grid;
    grid-template-columns: 1.7fr 1fr;
    gap: 18px;
    margin-bottom: 16px;}
.gx-accueil .blog-featured-story{position: relative;
    border-radius: 16px;
    overflow: hidden;
    min-height: 360px;
    margin-bottom: 18px;}
.gx-accueil .blog-featured-story img{position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;}
.gx-accueil .blog-featured-overlay{position: relative;
    z-index: 1;
    min-height: 360px;
    padding: 30px;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    background: linear-gradient(to top, rgba(10, 22, 40, 0.85), rgba(10, 22, 40, 0.15));
    color: #fff;}
.gx-accueil .blog-chip{display: inline-block;
    width: fit-content;
    background: #f26522;
    padding: 4px 10px;
    border-radius: 999px;
    font-size: 11px;
    font-weight: 700;}
.gx-accueil .blog-featured-overlay h3{margin: 10px 0 6px;
    font-size: clamp(24px, 3vw, 34px);
    line-height: 1.2;}
.gx-accueil .blog-featured-overlay p{margin: 0;
    max-width: 740px;
    font-size: 14px;
    color: rgba(255, 255, 255, 0.92);}
.gx-accueil .blog-post-meta{display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin: 10px 0 8px;}
.gx-accueil .blog-post-meta span{background: rgba(255, 255, 255, 0.18);
    border: 1px solid rgba(255, 255, 255, 0.25);
    border-radius: 999px;
    padding: 4px 10px;
    font-size: 11px;
    color: #fff;
    font-weight: 600;}
.gx-accueil .blog-share-row{margin-top: 14px;
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;}
.gx-accueil .blog-share-label{font-size: 12px;
    font-weight: 700;
    color: #fff;}
.gx-accueil .blog-social-icons{display: flex;
    gap: 8px;}
.gx-accueil .blog-social-icons a{width: 30px;
    height: 30px;
    border-radius: 50%;
    border: 1px solid rgba(255, 255, 255, 0.35);
    background: rgba(255, 255, 255, 0.15);
    color: #fff;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    transition: all 0.2s ease;}
.gx-accueil .blog-social-icons a:hover{background: #ffffff;
    color: #0a1628;}
.gx-accueil .blog-posts-grid{display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 16px;}
.gx-accueil .blog-post-card{border-radius: 14px;
    overflow: hidden;
    border: 1px solid #e8edf3;
    background: #fff;}
.gx-accueil .blog-post-card img{width: 100%;
    height: 170px;
    object-fit: cover;}
.gx-accueil .blog-post-body{padding: 14px;}
.gx-accueil .blog-post-body span{font-size: 11px;
    color: #6a7a8d;
    font-weight: 700;
    text-transform: uppercase;}
.gx-accueil .blog-post-body h4{margin: 8px 0 0;
    font-size: 16px;
    line-height: 1.35;
    color: #0a1628;}
.gx-accueil .blog-card-meta{display: flex;
    gap: 10px;
    flex-wrap: wrap;
    margin-top: 10px;
    color: #6f8198;
    font-size: 12px;}
.gx-accueil .blog-card-tags{display: flex;
    gap: 8px;
    flex-wrap: wrap;
    margin-top: 10px;}
.gx-accueil .blog-card-tags a{text-decoration: none;
    color: #3b5a86;
    background: #f2f6fb;
    border: 1px solid #e3ebf4;
    border-radius: 999px;
    padding: 4px 10px;
    font-size: 11px;
    font-weight: 600;}
.gx-accueil .blog-card-share{margin-top: 10px;
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;}
.gx-accueil .blog-card-share span{font-size: 12px;
    color: #5d6f87;
    font-weight: 700;
    text-transform: none;}
.gx-accueil .blog-card-share a{width: 26px;
    height: 26px;
    border-radius: 50%;
    border: 1px solid #d9e4ef;
    background: #f7fbff;
    color: #3b5a86;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    transition: all 0.2s ease;}
.gx-accueil .blog-card-share a:hover{background: #3b5a86;
    color: #fff;
    border-color: #3b5a86;}
.gx-accueil .blog-post-card.hidden{display: none;}
.gx-accueil .blog-featured-story.hidden{display: none;}
.gx-accueil .blog-breaking-column{background: #fff;
    border: 1px solid #e8edf3;
    border-radius: 16px;
    padding: 14px;}
.gx-accueil .blog-breaking-column h4{margin: 4px 6px 12px;
    font-size: 16px;
    color: #0a1628;}
.gx-accueil .blog-mini-post{display: flex;
    gap: 10px;
    border-bottom: 1px solid #edf1f7;
    padding: 10px 6px;}
.gx-accueil .blog-mini-post:last-child{border-bottom: none;}
.gx-accueil .blog-mini-post.hidden{display: none;}
.gx-accueil .blog-mini-post img{width: 110px;
    height: 78px;
    border-radius: 8px;
    object-fit: cover;}
.gx-accueil .blog-mini-post span{color: #6d7c8e;
    font-size: 11px;
    text-transform: uppercase;
    font-weight: 700;}
.gx-accueil .blog-mini-post small{display: block;
    margin-top: 4px;
    color: #7d8da2;
    font-size: 11px;}
.gx-accueil .blog-mini-post p{margin: 4px 0 0;
    font-size: 13px;
    line-height: 1.35;
    color: #1b2b40;}
.gx-accueil .blog-top-news-categories{display: flex;
    gap: 8px;
    flex-wrap: wrap;
    margin-bottom: 16px;}
.gx-accueil .blog-top-news-categories span{background: #ffffff;
    border: 1px solid #e2e8f1;
    border-radius: 999px;
    padding: 6px 11px;
    font-size: 11px;
    font-weight: 700;
    color: #55667d;}
@media (max-width: 991px){.gx-accueil .blog-top-news-area{grid-template-columns: 1fr;}
.gx-accueil .blog-posts-grid{grid-template-columns: 1fr 1fr;}}
@media (max-width: 640px){.gx-accueil .blog-space-container{padding: 24px 16px 36px;}
.gx-accueil .blog-featured-story, .gx-accueil .blog-featured-overlay{min-height: 300px;}
.gx-accueil .blog-posts-grid{grid-template-columns: 1fr;}}
.gx-accueil .social-space-section{background: #f7f9fc;
    margin-top: 24px;}
.gx-accueil .social-space-container{max-width: 1280px;
    margin: 0 auto;
    padding: 30px 24px 48px;}
.gx-accueil .social-intro-card{background: linear-gradient(135deg, #ffffff, #f4f8ff);
    border: 1px solid #e1eaf7;
    border-radius: 16px;
    padding: 18px 20px;
    margin-bottom: 16px;}
.gx-accueil .social-intro-card h3{margin: 0 0 8px;
    font-size: 24px;
    color: #0a1628;}
.gx-accueil .social-intro-card p{margin: 0;
    font-size: 14px;
    color: #55667d;
    line-height: 1.65;}
.gx-accueil .social-icons-grid{display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 14px;
    margin-bottom: 16px;}
.gx-accueil .social-icon-card{background: #fff;
    border: 1px solid #e5edf9;
    border-radius: 14px;
    padding: 16px 12px;
    text-align: center;
    box-shadow: 0 6px 20px rgba(10, 22, 40, 0.05);
    animation: social-float 3.2s ease-in-out infinite;}
.gx-accueil .social-icon-card i{font-size: 28px;
    margin-bottom: 8px;}
.gx-accueil .social-icon-card span{display: block;
    font-size: 13px;
    font-weight: 700;
    color: #25344a;}
.gx-accueil .social-icon-card:nth-child(2n){animation-delay: .4s;}
.gx-accueil .social-icon-card:nth-child(3n){animation-delay: .8s;}
@keyframes social-float{
    0%, 100% { transform: translateY(0); }
    50% { transform: translateY(-6px); }
}
.gx-accueil .social-icon-card.pinterest i{color: #e60023;}
.gx-accueil .social-icon-card.instagram i{color: #d62976;}
.gx-accueil .social-icon-card.facebook i{color: #1877f2;}
.gx-accueil .social-icon-card.tiktok i{color: #111111;}
.gx-accueil .social-icon-card.linkedin i{color: #0a66c2;}
.gx-accueil .social-icon-card.twitch i{color: #9146ff;}
.gx-accueil .social-icon-card.snapchat i{color: #f4cb00;}
.gx-accueil .social-icon-card.youtube i{color: #ff0000;}
.gx-accueil .social-services-grid{display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;}
.gx-accueil .social-service-item{background: #fff;
    border: 1px solid #e4ebf5;
    border-radius: 14px;
    padding: 16px;}
.gx-accueil .social-service-item h4{margin: 0 0 8px;
    color: #153152;
    font-size: 17px;}
.gx-accueil .social-service-item h4 i{color: #1e71d8;
    margin-right: 6px;}
.gx-accueil .social-service-item p{margin: 0;
    color: #576a84;
    font-size: 13px;
    line-height: 1.6;}
@media (max-width: 991px){.gx-accueil .social-icons-grid{grid-template-columns: repeat(3, minmax(0, 1fr));}}
@media (max-width: 640px){.gx-accueil .social-icons-grid, .gx-accueil .social-services-grid{grid-template-columns: 1fr 1fr;}}
@media (max-width: 480px){.gx-accueil .social-icons-grid, .gx-accueil .social-services-grid{grid-template-columns: 1fr;}}
.gx-accueil .slideshows-v2-section{margin: 0 40px 0 40px;
    padding: 20px 0;
    background-color: transparent;}
.gx-accueil .slideshows-v2-container{position: relative;
    overflow: hidden;
    background: transparent;
    margin-bottom: 20px;
    height: 450px;
    border-radius: 12px;}
.gx-accueil .slideshows-v2-track{display: flex;
    transition: transform 1.5s cubic-bezier(0.25, 0.46, 0.45, 0.94);
    height: 100%;}
.gx-accueil .slideshows-v2-slide{display: flex;
    flex: 0 0 100%;
    height: 100%;}
.gx-accueil .slideshows-v2-column{overflow: hidden;
    transition: transform 0.3s ease, box-shadow 0.3s ease;}
.gx-accueil .slideshows-v2-column:hover{transform: translateY(-3px);
    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.12);}
.gx-accueil .slideshows-v2-half{width: 50%;}
.gx-accueil .slideshows-v2-main-tile{position: relative;
    height: 100%;}
.gx-accueil .slideshows-v2-grid{display: grid;
    grid-template-columns: 1fr 1fr;
    grid-template-rows: 1fr 1fr;
    height: 100%;
    gap: 1px;
    background-color: #f0f0f0;}
.gx-accueil .slideshows-v2-tile{position: relative;
    overflow: hidden;
    background-color: white;}
.gx-accueil .slideshows-v2-tile img, .gx-accueil .slideshows-v2-main-tile img{width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform 0.5s ease;}
.gx-accueil .slideshows-v2-overlay{position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    background: linear-gradient(to top, rgba(0, 0, 0, 0.8), transparent);
    padding: 15px 20px 15px;
    color: white;
    transform: translateY(0);
    transition: transform 0.4s ease;}
.gx-accueil .slideshows-v2-badge{position: absolute;
    top: 12px;
    left: 12px;
    color: white;
    padding: 5px 12px;
    border-radius: 4px;
    font-size: 0.75rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    z-index: 5;
    box-shadow: 0 3px 6px rgba(0, 0, 0, 0.3);}
.gx-accueil .slideshows-v2-badge-new{background: linear-gradient(135deg, #ff4757, #ff3838);}
.gx-accueil .slideshows-v2-badge-hot{background: linear-gradient(135deg, #ff9f1a, #ff7f00);}
.gx-accueil .slideshows-v2-badge-trending{background: linear-gradient(135deg, #2ed573, #1dd1a1);}
.gx-accueil .slideshows-v2-badge-popular{background: linear-gradient(135deg, #1e90ff, #3742fa);}
.gx-accueil .slideshows-v2-title{font-size: 1.1rem;
    font-weight: 700;
    margin-bottom: 4px;
    text-shadow: 0 2px 4px rgba(0, 0, 0, 0.8);}
.gx-accueil .slideshows-v2-description{font-size: 0.8rem;
    opacity: 0.9;
    line-height: 1.3;}
.gx-accueil .slideshows-v2-play-btn{position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%) scale(0.8);
    width: 65px;
    height: 65px;
    background: rgba(0, 0, 0, 0.85);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    font-size: 24px;
    cursor: pointer;
    z-index: 10;
    transition: all 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275);
    border: 3px solid rgba(255, 255, 255, 0.3);
    opacity: 0;
    visibility: hidden;}
.gx-accueil .slideshows-v2-item:hover .slideshows-v2-play-btn{opacity: 1;
    visibility: visible;
    transform: translate(-50%, -50%) scale(1);}
.gx-accueil .slideshows-v2-play-btn:hover{background: rgba(200, 0, 0, 0.95);
    transform: translate(-50%, -50%) scale(1.1);
    border-color: rgba(255, 255, 255, 0.6);}
.gx-accueil .slideshows-v2-nav{display: flex;
    justify-content: center;
    align-items: center;
    gap: 12px;
    margin-top: 25px;}
.gx-accueil .slideshows-v2-dot{width: 14px;
    height: 14px;
    border-radius: 50%;
    background: rgba(74, 111, 165, 0.3);
    cursor: pointer;
    transition: all 0.3s ease;}
.gx-accueil .slideshows-v2-dots{display: flex;
    gap: 10px;}
.gx-accueil .slideshows-v2-dot-active{background: #4a6fa5;
    transform: scale(1.3);
    box-shadow: 0 0 10px rgba(74, 111, 165, 0.5);}
.gx-accueil .slideshows-v2-nav-btn{background: white;
    border: 2px solid #e1e8f0;
    color: #4a6fa5;
    width: 45px;
    height: 45px;
    border-radius: 50%;
    font-size: 18px;
    cursor: pointer;
    transition: all 0.3s ease;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 3px 8px rgba(0, 0, 0, 0.05);}
.gx-accueil .slideshows-v2-nav-btn:hover{background: #4a6fa5;
    color: white;
    border-color: #4a6fa5;
    transform: scale(1.1);
    box-shadow: 0 5px 12px rgba(74, 111, 165, 0.3);}
.gx-accueil .slideshows-v2-modal{display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.9);
    z-index: 1000;
    justify-content: center;
    align-items: center;
    opacity: 0;
    transition: opacity 0.4s ease;}
.gx-accueil .slideshows-v2-modal-active{display: flex;
    opacity: 1;}
.gx-accueil .slideshows-v2-modal-content{background: white;
    border-radius: 12px;
    width: 90%;
    max-width: 900px;
    overflow: hidden;
    box-shadow: 0 20px 50px rgba(0, 0, 0, 0.5);
    transform: scale(0.9);
    transition: transform 0.4s ease;}
.gx-accueil .slideshows-v2-modal-active .slideshows-v2-modal-content{transform: scale(1);}
.gx-accueil .slideshows-v2-modal-header{display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 18px 24px;
    background: #f8fafc;
    border-bottom: 1px solid #e1e8f0;}
.gx-accueil .slideshows-v2-modal-title{font-size: 1.3rem;
    font-weight: 700;
    color: #2d3748;}
.gx-accueil .slideshows-v2-close-modal{background: none;
    border: none;
    color: #718096;
    font-size: 28px;
    cursor: pointer;
    transition: color 0.3s ease;
    line-height: 1;
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;}
.gx-accueil .slideshows-v2-close-modal:hover{background-color: #f1f5f9;
    color: #e53e3e;}
.gx-accueil .slideshows-v2-video-container{position: relative;
    padding-bottom: 56.25%;
    height: 0;
    overflow: hidden;
    background: #000;}
.gx-accueil .slideshows-v2-video-container iframe{position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: none;}
.gx-accueil .slideshows-v2-item:hover img{transform: scale(1.08);}
.gx-accueil .slideshows-v2-item:hover .slideshows-v2-overlay{transform: translateY(0);}
@media (max-width: 1024px){.gx-accueil .slideshows-v2-section{margin: 0 20px 0 20px;}
.gx-accueil .slideshows-v2-container{height: 380px;
        background: transparent;
        box-shadow: none;
        border: none;}
.gx-accueil .slideshows-v2-slide{flex-direction: column;}
.gx-accueil .slideshows-v2-half{width: 100%;
        height: 50%;}
.gx-accueil .slideshows-v2-grid{grid-template-columns: 1fr 1fr;
        grid-template-rows: 1fr 1fr;}}
@media (max-width: 768px){.gx-accueil .slideshows-v2-section{margin: 0;}
.gx-accueil .slideshows-v2-container{height: 350px;
        background: transparent;
        box-shadow: none;
        border: none;}
.gx-accueil .slideshows-v2-slide{flex-direction: column;}
.gx-accueil .slideshows-v2-half{width: 100%;
        height: 50%;}
.gx-accueil .slideshows-v2-grid{grid-template-columns: 1fr 1fr;
        grid-template-rows: 1fr 1fr;}
.gx-accueil .slideshows-v2-title{font-size: 1rem;}
.gx-accueil .slideshows-v2-play-btn{width: 55px;
        height: 55px;
        font-size: 20px;}}
@media (max-width: 480px){.gx-accueil .slideshows-v2-container{height: 300px;
        background: transparent;
        box-shadow: none;
        border: none;}
.gx-accueil .slideshows-v2-grid{grid-template-columns: 1fr 1fr;
        grid-template-rows: 1fr 1fr;}
.gx-accueil .slideshows-v2-title{font-size: 0.9rem;}
.gx-accueil .slideshows-v2-badge{font-size: 0.65rem;
        padding: 4px 10px;
        top: 8px;
        left: 8px;}
.gx-accueil .slideshows-v2-description{font-size: 0.7rem;}
.gx-accueil .slideshows-v2-play-btn{width: 45px;
        height: 45px;
        font-size: 18px;}
.gx-accueil .slideshows-v2-nav-btn{width: 40px;
        height: 40px;
        font-size: 16px;}}
.gx-accueil .video-player-v2-section{background: #ffffff;
    margin: 0 40px;
    border-radius: 16px;
    overflow: hidden;
    box-shadow: 0 4px 24px rgba(0,0,0,0.08);}
.gx-accueil .video-player-v2-container{max-width: 100%;
    padding: 0;}
.gx-accueil .video-player-v2-filters{display: flex;
    gap: 10px;
    align-items: center;
    flex-wrap: wrap;}
.gx-accueil .video-player-v2-filter-btn{padding: 8px 18px;
    background: #ffffff;
    border: 2px solid #e0e0e0;
    border-radius: 20px;
    font-family: 'Montserrat', sans-serif;
    font-size: 13px;
    font-weight: 600;
    color: #333333;
    cursor: pointer;
    transition: all 0.3s ease;
    white-space: nowrap;
    flex-shrink: 0;
    display: inline-flex;
    align-items: center;
    gap: 6px;}
.gx-accueil .video-player-v2-filter-btn:hover{background: #fff5f0;
    border-color: #f26522;
    color: #f26522;
    transform: translateY(-1px);}
.gx-accueil .video-player-v2-filter-btn.active{background: #f26522;
    border-color: #f26522;
    color: #ffffff;}
.gx-accueil .video-player-v2-content{display: grid;
    grid-template-columns: 1fr 340px;
    gap: 0;
    align-items: start;
    background: #f0f2f5;
    padding: 28px 32px;
    gap: 24px;}
.gx-accueil .video-player-v2-main{background: #ffffff;
    border-radius: 12px;
    overflow: hidden;
    box-shadow: 0 4px 20px rgba(0,0,0,0.10);}
.gx-accueil .video-player-v2-wrapper{position: relative;
    width: 100%;
    aspect-ratio: 16 / 9;
    background: #000;
    border-radius: 12px 12px 0 0;
    overflow: hidden;}
.gx-accueil .video-player-v2-wrapper > [data-gx-video]{border-radius: inherit !important;}
.gx-accueil .video-player-v2-video{position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;}
.gx-accueil .video-player-v2-controls{background: #0a1628;
    padding: 14px 20px;}
.gx-accueil .video-player-v2-progress-bar{width: 100%;
    height: 5px;
    background: rgba(255,255,255,0.15);
    border-radius: 3px;
    cursor: pointer;
    margin-bottom: 12px;
    position: relative;
    overflow: hidden;}
.gx-accueil .video-player-v2-progress-filled{height: 100%;
    background: linear-gradient(90deg, #e84c10, #f9a52c);
    border-radius: 3px;
    width: 0%;
    transition: width 0.1s linear;
    position: relative;}
.gx-accueil .video-player-v2-progress-filled::after{content: '';
    position: absolute;
    right: -4px;
    top: 50%;
    transform: translateY(-50%);
    width: 11px;
    height: 11px;
    background: #ffffff;
    border-radius: 50%;
    box-shadow: 0 0 6px rgba(242,101,34,0.8);}
.gx-accueil .video-player-v2-controls-bottom{display: flex;
    justify-content: space-between;
    align-items: center;}
.gx-accueil .video-player-v2-controls-left, .gx-accueil .video-player-v2-controls-right{display: flex;
    align-items: center;
    gap: 10px;}
.gx-accueil .video-player-v2-control-btn{background: rgba(255,255,255,0.08);
    border: none;
    color: #ffffff;
    cursor: pointer;
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.2s;
    border-radius: 8px;}
.gx-accueil .video-player-v2-control-btn:hover{background: rgba(255,255,255,0.16);
    transform: scale(1.06);}
.gx-accueil .video-player-v2-control-btn.play-btn{width: 52px;
    height: 52px;
    background: linear-gradient(135deg, #e84c10, #f9a52c);
    border-radius: 50%;}
.gx-accueil .video-player-v2-control-btn.play-btn:hover{background: linear-gradient(135deg, #c43c0a, #f08020);
    transform: scale(1.08);}
.gx-accueil .video-player-v2-time{color: rgba(255,255,255,0.75);
    font-size: 13px;
    font-weight: 500;
    min-width: 95px;
    font-family: 'Montserrat', sans-serif;}
.gx-accueil .video-player-v2-counter{color: #ffffff;
    font-size: 12px;
    font-weight: 600;
    background: rgba(255,255,255,0.1);
    padding: 5px 12px;
    border-radius: 16px;
    min-width: 55px;
    text-align: center;
    font-family: 'Montserrat', sans-serif;}
.gx-accueil .video-player-v2-info{padding: 20px 24px;
    background: #ffffff;
    border-top: 1px solid #e8eaed;}
.gx-accueil .video-player-v2-title{font-size: 20px;
    font-weight: 700;
    color: #1a2942;
    margin: 0 0 6px 0;
    letter-spacing: 0.3px;
    font-family: 'Montserrat', sans-serif;}
.gx-accueil .video-player-v2-description{font-size: 14px;
    color: #5f6b7c;
    margin: 0;
    line-height: 1.6;
    font-family: 'Montserrat', sans-serif;}
.gx-accueil .video-player-v2-playlist{background: #1a2942;
    border-radius: 12px;
    overflow: hidden;
    box-shadow: 0 4px 20px rgba(0,0,0,0.18);
    display: flex;
    flex-direction: column;
    align-self: stretch;}
.gx-accueil .video-player-v2-playlist-header{padding: 16px 20px;
    background: #0a1628;
    border-bottom: 1px solid rgba(255,255,255,0.08);
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-shrink: 0;}
.gx-accueil .video-player-v2-playlist-title{font-size: 14px;
    font-weight: 700;
    color: #ffffff;
    margin: 0;
    text-transform: uppercase;
    letter-spacing: 1.5px;
    font-family: 'Montserrat', sans-serif;
    display: flex;
    align-items: center;
    gap: 8px;}
.gx-accueil .vp-playlist-count{font-size: 11px;
    color: rgba(255,255,255,0.5);
    font-family: 'Montserrat', sans-serif;
    font-weight: 500;}
.gx-accueil .video-player-v2-playlist-items{list-style: none;
    margin: 0;
    padding: 0;
    overflow-y: auto;
    flex: 1;}
.gx-accueil .video-player-v2-playlist-items::-webkit-scrollbar{width: 5px;}
.gx-accueil .video-player-v2-playlist-items::-webkit-scrollbar-track{background: rgba(255,255,255,0.04);}
.gx-accueil .video-player-v2-playlist-items::-webkit-scrollbar-thumb{background: rgba(212,175,55,0.45); border-radius: 3px;}
.gx-accueil .video-player-v2-playlist-items::-webkit-scrollbar-thumb:hover{background: rgba(212,175,55,0.7);}
.gx-accueil .video-player-v2-playlist-item{display: flex;
    align-items: center;
    gap: 12px;
    padding: 12px 16px;
    cursor: pointer;
    transition: background 0.2s;
    border-bottom: 1px solid rgba(255,255,255,0.05);
    border-left: 3px solid transparent;}
.gx-accueil .video-player-v2-playlist-item:hover{background: rgba(255,255,255,0.06);}
.gx-accueil .video-player-v2-playlist-item.active{background: rgba(242,101,34,0.12);
    border-left-color: #f26522;}
.gx-accueil .video-player-v2-playlist-thumbnail{position: relative;
    width: 100px;
    height: 60px;
    border-radius: 6px;
    overflow: hidden;
    flex-shrink: 0;
    background: #000;}
.gx-accueil .video-player-v2-playlist-thumbnail img{width: 100%;
    height: 100%;
    object-fit: cover;}
.gx-accueil .video-player-v2-playlist-badge{position: absolute;
    bottom: 4px;
    right: 4px;
    background: rgba(0,0,0,0.82);
    color: #ffffff;
    font-size: 9px;
    font-weight: 700;
    padding: 2px 6px;
    border-radius: 3px;
    text-transform: uppercase;
    letter-spacing: 0.4px;
    font-family: 'Montserrat', sans-serif;}
.gx-accueil .video-player-v2-play-icon{position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 28px;
    height: 28px;
    background: rgba(242,101,34,0.9);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    opacity: 0;
    transition: opacity 0.2s;}
.gx-accueil .video-player-v2-playlist-item:hover .video-player-v2-play-icon{opacity: 1;}
.gx-accueil .video-player-v2-playlist-info{flex: 1;
    min-width: 0;}
.gx-accueil .video-player-v2-playlist-name{font-size: 13px;
    font-weight: 600;
    color: #e8eaed;
    margin: 0 0 4px 0;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    font-family: 'Montserrat', sans-serif;}
.gx-accueil .video-player-v2-playlist-item.active .video-player-v2-playlist-name{color: #f9a52c;}
.gx-accueil .video-player-v2-playlist-type{font-size: 11px;
    color: rgba(255,255,255,0.45);
    margin: 0;
    font-family: 'Montserrat', sans-serif;}
@media (max-width: 1280px){.gx-accueil .video-player-v2-content{grid-template-columns: 1fr 300px;}}
@media (max-width: 1024px){.gx-accueil .video-player-v2-content{grid-template-columns: 1fr 280px;
        padding: 20px 24px;
        gap: 20px;}
.gx-accueil .vp-espace-btn{display: none;}}
@media (max-width: 768px){.gx-accueil .video-player-v2-section{margin: 0 12px;
        border-radius: 12px;}
.gx-accueil .video-player-v2-content{grid-template-columns: 1fr;
        padding: 16px;
        gap: 16px;}
.gx-accueil .video-player-v2-playlist{max-height: 380px;}
.gx-accueil .video-player-v2-main{border-radius: 10px;}
.gx-accueil .video-player-v2-wrapper{border-radius: 10px 10px 0 0;}
.gx-accueil .vp-logos-group{gap: 6px;}
.gx-accueil .vp-logo-mytube{height: 40px;}
.gx-accueil .vp-logo-plans{height: 32px;}
.gx-accueil .vp-record-btn{width: 36px; height: 36px; font-size: 14px;}
.gx-accueil .vp-upload-btn{min-width: unset; padding: 10px 12px;}
.gx-accueil .vp-upload-text{display: none;}
.gx-accueil .vp-upload-icon{width: 36px; height: 36px; font-size: 14px;}}
@media (max-width: 480px){.gx-accueil .video-player-v2-section{margin: 0; border-radius: 0;}
.gx-accueil .video-player-v2-content{padding: 12px; gap: 12px;}
.gx-accueil .video-player-v2-control-btn{width: 34px; height: 34px;}
.gx-accueil .video-player-v2-control-btn.play-btn{width: 44px; height: 44px;}
.gx-accueil .video-player-v2-time{font-size: 11px; min-width: 70px;}
.gx-accueil .video-player-v2-counter{font-size: 11px; padding: 4px 8px;}
.gx-accueil .video-player-v2-title{font-size: 17px;}
.gx-accueil .video-player-v2-info{padding: 14px 16px;}
.gx-accueil .video-player-v2-playlist-thumbnail{width: 84px; height: 50px;}}
.gx-accueil .mss-gallery-wrapper{width: 100%;
    margin-bottom: 36px;
    user-select: none;
    -webkit-user-select: none;}
.gx-accueil .mss-gallery-container{position: relative;
    overflow: hidden;
    height: 450px;
    border-radius: 12px;
    box-shadow: 0 5px 20px rgba(0,0,0,0.28);
    background: #0a1628;
    border: 1px solid rgba(255,255,255,0.07);
    margin-bottom: 20px;}
.gx-accueil .mss-gallery-track{display: flex;
    height: 100%;
    transition: transform 1.5s cubic-bezier(0.25, 0.46, 0.45, 0.94);}
.gx-accueil .mss-gallery-slide{display: flex;
    flex: 0 0 100%;
    height: 100%;}
.gx-accueil .mss-gallery-col{overflow: hidden;}
.gx-accueil .mss-gallery-col--half{width: 50%;}
.gx-accueil .mss-gallery-main{position: relative;
    height: 100%;}
.gx-accueil .mss-gallery-grid{display: grid;
    grid-template-columns: 1fr 1fr;
    grid-template-rows: 1fr 1fr;
    height: 100%;
    gap: 2px;
    background-color: rgba(255,255,255,0.05);}
.gx-accueil .mss-gallery-tile{position: relative;
    overflow: hidden;
    background-color: #0a1628;}
.gx-accueil .mss-gallery-item{position: relative;
    cursor: pointer;
    overflow: hidden;
    height: 100%;}
.gx-accueil .mss-gallery-item img{width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform 0.55s ease;}
.gx-accueil .mss-gallery-item:hover img{transform: scale(1.07);}
.gx-accueil .mss-gallery-overlay{position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    background: linear-gradient(to top, rgba(0,0,0,0.85) 0%, rgba(0,0,0,0.18) 60%, transparent 100%);
    padding: 14px 16px;
    color: #ffffff;}
.gx-accueil .mss-gallery-badge{position: absolute;
    top: 12px;
    left: 12px;
    color: #ffffff;
    padding: 4px 11px;
    border-radius: 4px;
    font-family: 'Montserrat', sans-serif;
    font-size: 0.7rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.6px;
    z-index: 5;
    box-shadow: 0 2px 8px rgba(0,0,0,0.4);}
.gx-accueil .mss-gallery-badge--new{background: linear-gradient(135deg, #ff4757, #ff3838);}
.gx-accueil .mss-gallery-badge--hot{background: linear-gradient(135deg, #f26522, #e84c10);}
.gx-accueil .mss-gallery-badge--trending{background: linear-gradient(135deg, #2ed573, #1dd1a1);}
.gx-accueil .mss-gallery-badge--popular{background: linear-gradient(135deg, #1e90ff, #3742fa);}
.gx-accueil .mss-gallery-title{font-family: 'Montserrat', sans-serif;
    font-size: 1rem;
    font-weight: 700;
    margin-bottom: 3px;
    text-shadow: 0 2px 6px rgba(0,0,0,0.9);
    line-height: 1.25;}
.gx-accueil .mss-gallery-desc{font-family: 'Montserrat', sans-serif;
    font-size: 0.75rem;
    opacity: 0.88;
    line-height: 1.35;
    text-shadow: 0 1px 4px rgba(0,0,0,0.8);}
.gx-accueil .mss-gallery-main .mss-gallery-title{font-size: 1.25rem;}
.gx-accueil .mss-gallery-main .mss-gallery-desc{font-size: 0.82rem;}
.gx-accueil .mss-gallery-play{position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%) scale(0.82);
    width: 62px;
    height: 62px;
    background: rgba(0, 0, 0, 0.75);
    border: 3px solid rgba(255,255,255,0.4);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #ffffff;
    font-size: 22px;
    cursor: pointer;
    z-index: 10;
    opacity: 0;
    visibility: hidden;
    transition: all 0.35s cubic-bezier(0.175, 0.885, 0.32, 1.275);}
.gx-accueil .mss-gallery-item:hover .mss-gallery-play{opacity: 1;
    visibility: visible;
    transform: translate(-50%, -50%) scale(1);}
.gx-accueil .mss-gallery-play:hover{background: rgba(242, 101, 34, 0.92);
    border-color: #f26522;
    transform: translate(-50%, -50%) scale(1.1);}
.gx-accueil .mss-gallery-nav{display: flex;
    justify-content: center;
    align-items: center;
    gap: 14px;
    margin-top: 18px;}
.gx-accueil .mss-gallery-dots{display: flex;
    gap: 10px;
    align-items: center;}
.gx-accueil .mss-gallery-dot{width: 12px;
    height: 12px;
    border-radius: 50%;
    background: rgba(255,255,255,0.22);
    cursor: pointer;
    transition: all 0.3s ease;
    border: none;
    padding: 0;}
.gx-accueil .mss-gallery-dot--active{background: #f26522;
    transform: scale(1.35);
    box-shadow: 0 0 10px rgba(242,101,34,0.55);}
.gx-accueil .mss-gallery-nav-btn{width: 44px;
    height: 44px;
    border-radius: 50%;
    background: rgba(255,255,255,0.08);
    border: 2px solid rgba(255,255,255,0.18);
    color: #ffffff;
    font-size: 16px;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.25s ease;}
.gx-accueil .mss-gallery-nav-btn:hover{background: #f26522;
    border-color: #f26522;
    transform: scale(1.08);
    box-shadow: 0 5px 14px rgba(242,101,34,0.38);}
@media (max-width: 1024px){.gx-accueil .mss-gallery-container{height: 380px;
        border-radius: 10px;}}
@media (max-width: 768px){.gx-accueil .mss-gallery-container{height: auto;
        border-radius: 8px;}
.gx-accueil .mss-gallery-slide{flex-direction: column;}
.gx-accueil .mss-gallery-col--half{width: 100%;
        height: auto;}
.gx-accueil .mss-gallery-main{height: 220px;}
.gx-accueil .mss-gallery-grid{height: 220px;}
.gx-accueil .mss-gallery-title{font-size: 0.9rem;}
.gx-accueil .mss-gallery-play{width: 52px;
        height: 52px;
        font-size: 18px;}
.gx-accueil .mss-gallery-nav-btn{width: 38px;
        height: 38px;
        font-size: 14px;}}
@media (max-width: 480px){.gx-accueil .mss-gallery-main{height: 180px;}
.gx-accueil .mss-gallery-grid{height: 180px;}
.gx-accueil .mss-gallery-badge{font-size: 0.62rem;
        padding: 3px 8px;}
.gx-accueil .mss-gallery-title{font-size: 0.82rem;}
.gx-accueil .mss-gallery-desc{font-size: 0.7rem;}
.gx-accueil .mss-gallery-play{width: 44px;
        height: 44px;
        font-size: 16px;}}
.gx-accueil .vedette-block-header{font-family: 'Montserrat', sans-serif;
    overflow: hidden;
    margin-bottom: 32px;
    box-shadow: 0 4px 24px rgba(0,0,0,0.06);
    border-radius: 0 0 12px 12px;}
.gx-accueil .vedette-block-topbar{display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    padding: 10px 28px;
    background: linear-gradient(90deg, #1565c0, #1e88e5 50%, #42a5f5);
    flex-wrap: wrap;}
.gx-accueil .vedette-block-breadcrumb{display: flex;
    align-items: center;
    gap: 6px;
    flex-wrap: wrap;}
.gx-accueil .vedette-block-breadcrumb i{color: rgba(255,255,255,0.75);
    font-size: 10px;}
.gx-accueil .vedette-block-breadcrumb a{color: rgba(255,255,255,0.85);
    text-decoration: none;
    font-size: 11px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    transition: color 0.2s ease;}
.gx-accueil .vedette-block-breadcrumb a:hover{color: #ffffff;
    text-decoration: underline;}
.gx-accueil .vedette-block-breadcrumb span.active{color: #ffffff;
    font-size: 11px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.5px;}
.gx-accueil .vedette-block-espaces{display: flex;
    align-items: center;
    gap: 6px;
    flex-wrap: wrap;}
.gx-accueil .vedette-espace-btn{display: inline-flex;
    align-items: center;
    gap: 5px;
    padding: 5px 12px;
    background: rgba(0,0,0,0.18);
    border: 1px solid rgba(255,255,255,0.22);
    border-radius: 20px;
    color: rgba(255,255,255,0.88);
    font-family: 'Montserrat', sans-serif;
    font-size: 10px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    text-decoration: none;
    cursor: pointer;
    transition: all 0.2s ease;
    white-space: nowrap;}
.gx-accueil .vedette-espace-btn:hover, .gx-accueil .vedette-espace-btn.active{background: rgba(255,255,255,0.25);
    border-color: rgba(255,255,255,0.55);
    color: #ffffff;}
.gx-accueil .vedette-espace-btn i{font-size: 10px;}
.gx-accueil .vedette-block-heading{background: #ffffff;
    padding: 30px 28px 20px;
    text-align: center;}
.gx-accueil .vedette-block-eyebrow{display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: 10px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 2px;
    color: #1e88e5;
    margin-bottom: 10px;}
.gx-accueil .vedette-block-title{font-family: 'Montserrat', sans-serif;
    font-size: clamp(22px, 2.5vw, 34px);
    font-weight: 900;
    color: #0a1628;
    text-transform: uppercase;
    letter-spacing: 1.5px;
    margin: 0 0 10px;
    line-height: 1.15;}
.gx-accueil .vedette-block-highlight{color: #1e88e5;}
.gx-accueil .vedette-block-lead{font-size: 13px;
    color: rgba(10,22,40,0.55);
    line-height: 1.6;
    max-width: 560px;
    margin: 0 auto;}
.gx-accueil .vedette-block-controls{background: #f9fafb;
    border-top: 1px solid rgba(10,22,40,0.07);
    padding: 14px 28px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    flex-wrap: wrap;}
.gx-accueil .vedette-block-more-btn{display: inline-flex;
    align-items: center;
    gap: 7px;
    padding: 8px 20px;
    background: #1e88e5;
    color: #ffffff;
    border: none;
    border-radius: 6px;
    font-family: 'Montserrat', sans-serif;
    font-size: 11px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.8px;
    text-decoration: none;
    cursor: pointer;
    transition: all 0.25s ease;
    white-space: nowrap;
    flex-shrink: 0;
    box-shadow: 0 2px 10px rgba(30,136,229,0.3);}
.gx-accueil .vedette-block-more-btn:hover{background: #1565c0;
    transform: translateY(-1px);
    box-shadow: 0 4px 16px rgba(30,136,229,0.45);
    color: #ffffff;}
@media (max-width: 768px){.gx-accueil .vedette-block-topbar{flex-direction: column;
        align-items: flex-start;
        gap: 10px;
        padding: 12px 16px;}
.gx-accueil .vedette-block-espaces{gap: 5px;}
.gx-accueil .vedette-espace-btn span{display: none;}
.gx-accueil .vedette-espace-btn{padding: 5px 9px;}
.gx-accueil .vedette-block-heading{padding: 20px 16px 16px;}
.gx-accueil .vedette-block-controls{padding: 12px 16px;
        flex-direction: column;
        align-items: stretch;
        gap: 10px;}
.gx-accueil .vedette-block-more-btn{justify-content: center;}}
.gx-accueil .events-media-carousel{position: relative;
    width: 100%;
    height: 420px;
    overflow: hidden;
    background: #0a1628;
    margin-bottom: 36px;
    border-radius: 12px;
    box-shadow: 0 8px 32px rgba(0,0,0,0.18);}
.gx-accueil .events-media-track{position: relative;
    width: 100%;
    height: 100%;}
.gx-accueil .events-media-slide{position: absolute;
    inset: 0;
    opacity: 0;
    transition: opacity 0.7s ease;
    pointer-events: none;}
.gx-accueil .events-media-slide.active{opacity: 1;
    pointer-events: auto;}
.gx-accueil .events-media-slide img, .gx-accueil .events-media-slide video{width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;}
.gx-accueil .events-media-slide::after{content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(to top, rgba(0,0,0,0.70) 0%, rgba(0,0,0,0.15) 55%, transparent 100%);
    pointer-events: none;}
.gx-accueil .events-media-caption{position: absolute;
    bottom: 52px;
    left: 0;
    right: 0;
    padding: 0 40px;
    z-index: 2;
    color: #ffffff;}
.gx-accueil .events-media-caption h3{font-family: 'Montserrat', sans-serif;
    font-size: clamp(18px, 2vw, 26px);
    font-weight: 800;
    margin: 0 0 6px;
    text-shadow: 0 2px 8px rgba(0,0,0,0.5);}
.gx-accueil .events-media-caption p{font-family: 'Montserrat', sans-serif;
    font-size: 13px;
    font-weight: 400;
    margin: 0;
    opacity: 0.88;
    text-shadow: 0 1px 4px rgba(0,0,0,0.5);}
.gx-accueil .events-media-badge{display: inline-flex;
    align-items: center;
    gap: 5px;
    background: rgba(30,136,229,0.85);
    color: #ffffff;
    font-family: 'Montserrat', sans-serif;
    font-size: 10px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 1px;
    padding: 4px 10px;
    border-radius: 20px;
    margin-bottom: 8px;}
.gx-accueil .events-media-badge--video{background: rgba(21,101,192,0.9);}
.gx-accueil .events-media-nav{position: absolute;
    top: 50%;
    transform: translateY(-50%);
    z-index: 10;
    width: 44px;
    height: 44px;
    background: rgba(255,255,255,0.15);
    border: 2px solid rgba(255,255,255,0.35);
    border-radius: 50%;
    color: #ffffff;
    font-size: 16px;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.2s ease;
    backdrop-filter: blur(4px);}
.gx-accueil .events-media-nav:hover{background: rgba(30,136,229,0.75);
    border-color: #1e88e5;}
.gx-accueil .events-media-nav--prev{left: 16px;}
.gx-accueil .events-media-nav--next{right: 16px;}
.gx-accueil .events-media-dots{position: absolute;
    bottom: 16px;
    left: 50%;
    transform: translateX(-50%);
    z-index: 10;
    display: flex;
    gap: 8px;
    align-items: center;}
.gx-accueil .events-media-dots button{width: 8px;
    height: 8px;
    border-radius: 50%;
    border: 2px solid rgba(255,255,255,0.6);
    background: transparent;
    cursor: pointer;
    transition: all 0.25s ease;
    padding: 0;}
.gx-accueil .events-media-dots button.active{background: #ffffff;
    border-color: #ffffff;
    width: 22px;
    border-radius: 4px;}
@media (max-width: 768px){.gx-accueil .events-media-carousel{height: 260px;
        border-radius: 8px;}
.gx-accueil .events-media-caption{bottom: 44px;
        padding: 0 20px;}
.gx-accueil .events-media-nav{width: 36px;
        height: 36px;
        font-size: 13px;}}
@media (max-width: 480px){.gx-accueil .events-media-carousel{height: 210px;}
.gx-accueil .events-media-caption h3{font-size: 15px;}}
.gx-accueil .vedette-media-open-btn{position: absolute;
    top: 14px;
    right: 14px;
    z-index: 10;
    width: 42px;
    height: 42px;
    background: rgba(0,0,0,0.45);
    border: 2px solid rgba(255,255,255,0.5);
    border-radius: 50%;
    color: #ffffff;
    font-size: 15px;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.22s ease;
    backdrop-filter: blur(4px);
    opacity: 0;
    transform: scale(0.85);}
.gx-accueil .events-media-slide.active .vedette-media-open-btn{opacity: 1;
    transform: scale(1);}
.gx-accueil .vedette-media-open-btn:hover{background: rgba(30,136,229,0.75);
    border-color: #1e88e5;
    transform: scale(1.1);}
.gx-accueil .vedette-media-open-btn--play{top: 50%;
    right: auto;
    left: 50%;
    transform: translate(-50%, -50%) scale(0.85);
    width: 64px;
    height: 64px;
    font-size: 22px;
    background: rgba(0,0,0,0.55);
    border-width: 3px;}
.gx-accueil .events-media-slide.active .vedette-media-open-btn--play{opacity: 1;
    transform: translate(-50%, -50%) scale(1);}
.gx-accueil .vedette-media-open-btn--play:hover{transform: translate(-50%, -50%) scale(1.1);}
.gx-accueil .vedette-lightbox{position: fixed;
    inset: 0;
    z-index: 9999;
    display: none;
    flex-direction: column;
    align-items: center;
    justify-content: center;}
.gx-accueil .vedette-lightbox.active{display: flex;}
.gx-accueil .vedette-lightbox-bg{position: absolute;
    inset: 0;
    background: rgba(0,0,0,0.92);
    cursor: pointer;}
.gx-accueil .vedette-lightbox-close{position: absolute;
    top: 18px;
    right: 20px;
    z-index: 2;
    width: 44px;
    height: 44px;
    background: rgba(255,255,255,0.12);
    border: 2px solid rgba(255,255,255,0.35);
    border-radius: 50%;
    color: #ffffff;
    font-size: 18px;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.2s ease;}
.gx-accueil .vedette-lightbox-close:hover{background: rgba(220,50,50,0.7);
    border-color: #e53935;}
.gx-accueil .vedette-lightbox-nav{position: absolute;
    top: 50%;
    transform: translateY(-50%);
    z-index: 2;
    width: 50px;
    height: 50px;
    background: rgba(255,255,255,0.12);
    border: 2px solid rgba(255,255,255,0.35);
    border-radius: 50%;
    color: #ffffff;
    font-size: 18px;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.2s ease;}
.gx-accueil .vedette-lightbox-nav:hover{background: rgba(30,136,229,0.7);
    border-color: #1e88e5;}
.gx-accueil .vedette-lightbox-prev{left: 20px;}
.gx-accueil .vedette-lightbox-next{right: 20px;}
.gx-accueil .vedette-lightbox-stage{position: relative;
    z-index: 2;
    display: flex;
    align-items: center;
    justify-content: center;
    max-width: 92vw;
    max-height: 80vh;}
.gx-accueil .vedette-lightbox-img{max-width: 92vw;
    max-height: 80vh;
    object-fit: contain;
    border-radius: 6px;
    box-shadow: 0 16px 60px rgba(0,0,0,0.6);}
.gx-accueil .vedette-lightbox-video{max-width: 92vw;
    max-height: 80vh;
    border-radius: 6px;
    box-shadow: 0 16px 60px rgba(0,0,0,0.6);
    background: #000;}
.gx-accueil .vedette-lightbox-info{position: relative;
    z-index: 2;
    text-align: center;
    margin-top: 16px;
    color: #ffffff;
    max-width: 600px;
    padding: 0 20px;}
.gx-accueil .vedette-lightbox-info h3{font-family: 'Montserrat', sans-serif;
    font-size: 18px;
    font-weight: 800;
    margin: 0 0 4px;}
.gx-accueil .vedette-lightbox-info p{font-family: 'Montserrat', sans-serif;
    font-size: 13px;
    opacity: 0.75;
    margin: 0;}
.gx-accueil .vedette-lightbox-counter{position: absolute;
    bottom: 20px;
    left: 50%;
    transform: translateX(-50%);
    z-index: 2;
    font-family: 'Montserrat', sans-serif;
    font-size: 12px;
    font-weight: 600;
    color: rgba(255,255,255,0.6);
    letter-spacing: 1px;}
@media (max-width: 768px){.gx-accueil .vedette-lightbox-nav{width: 38px; height: 38px; font-size: 14px;}
.gx-accueil .vedette-lightbox-prev{left: 8px;}
.gx-accueil .vedette-lightbox-next{right: 8px;}
.gx-accueil .vedette-lightbox-info h3{font-size: 15px;}}
.gx-accueil .events-vedette-v2-section{width: 100%;
    padding: 60px 0;
    background: #ffffff;
    position: relative;}
.gx-accueil .events-vedette-v2-container{max-width: 100%;
    margin: 0 auto;
    padding: 0 40px;}
.gx-accueil .events-vedette-v2-header{display: flex;
    flex-direction: column; 
    gap: 20px;
    margin-bottom: 40px;
    text-align: center;}
.gx-accueil .events-vedette-v2-title{width: 100%;
    font-family: 'Montserrat', sans-serif;
    font-size: 26px;
    font-weight: 800;
    color: #1a1a1a;
    letter-spacing: 1px;
    margin: 0;
    text-transform: uppercase;}
.gx-accueil .events-vedette-v2-header-controls{display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    gap: 20px;}
.gx-accueil .events-vedette-v2-filters{display: flex;
    gap: 10px;
    align-items: center;}
.gx-accueil .filter-label{font-size: 13px;
    font-weight: 700;
    color: #666;
    margin-right: 5px;
    text-transform: uppercase;}
.gx-accueil .events-vedette-v2-filter-btn{padding: 8px 18px;
    background: #ffffff;
    border: 2px solid #e0e0e0;
    border-radius: 20px;
    font-family: 'Montserrat', sans-serif;
    font-size: 13px;
    font-weight: 600;
    color: #333333;
    cursor: pointer;
    transition: all 0.3s ease;
    white-space: nowrap;
    flex-shrink: 0;}
.gx-accueil .events-vedette-v2-filter-btn:hover{background: #f5f5f5;
    border-color: #d32f2f;
    color: #d32f2f;
    transform: translateY(-1px);}
.gx-accueil .events-vedette-v2-filter-btn.active{background: #d32f2f;
    border-color: #d32f2f;
    color: #ffffff;}
.gx-accueil .events-vedette-v2-more-btn{display: flex;
    align-items: center;
    gap: 8px;
    padding: 8px 20px;
    background: #d32f2f;
    border: none;
    border-radius: 40px;
    font-family: 'Montserrat', sans-serif;
    font-size: 14px;
    font-weight: 700;
    color: #ffffff;
    cursor: pointer;
    transition: all 0.3s ease;
    box-shadow: 0 3px 12px rgba(211, 47, 47, 0.3);
    white-space: nowrap;
    flex-shrink: 0;}
.gx-accueil .events-vedette-v2-more-btn:hover{background: #b71c1c;
    transform: translateY(-1px);
    box-shadow: 0 5px 18px rgba(211, 47, 47, 0.4);}
.gx-accueil .events-vedette-v2-plus-icon{display: flex;
    align-items: center;
    justify-content: center;
    width: 24px;
    height: 24px;
    background: #ffffff;
    color: #d32f2f;
    border-radius: 50%;
    font-size: 18px;
    font-weight: 700;}
.gx-accueil .events-vedette-v2-scroll-wrapper{width: 100%;
    overflow: hidden;
    position: relative;}
.gx-accueil .events-vedette-v2-scroll-container{display: flex;
    gap: 20px;
    overflow: visible;
    padding-bottom: 8px;
    will-change: transform;}
.gx-accueil .vedette-carousel-outer{position: relative;
    padding: 0 52px;}
.gx-accueil .vedette-carousel-btn{position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 44px;
    height: 44px;
    border-radius: 50%;
    background: #ffffff;
    border: 2px solid #e0e0e0;
    color: #555555;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 15px;
    z-index: 10;
    transition: all 0.3s ease;
    box-shadow: 0 3px 14px rgba(0,0,0,0.12);
    outline: none;
    padding: 0;}
.gx-accueil .vedette-carousel-prev{left: 0;}
.gx-accueil .vedette-carousel-next{right: 0;}
.gx-accueil .events-vedette-v2-section .vedette-carousel-btn:hover{background: #d32f2f;
    border-color: #d32f2f;
    color: #ffffff;
    box-shadow: 0 4px 18px rgba(211,47,47,0.35);}
.gx-accueil .vedette-carousel-progress{height: 3px;
    background: #f0f0f0;
    margin: 14px 52px 4px;
    border-radius: 2px;
    overflow: hidden;}
.gx-accueil .vedette-carousel-bar{height: 100%;
    width: 0%;
    border-radius: 2px;
    transition: width 3.5s linear;}
.gx-accueil .events-vedette-v2-section .vedette-carousel-bar{background: #d32f2f;}
.gx-accueil .events-vedette-v2-card{background: #ffffff;
    border-radius: 12px;
    overflow: hidden;
    box-shadow: 0 3px 15px rgba(0, 0, 0, 0.1);
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    cursor: pointer;
    position: relative;
    display: flex;
    flex-direction: column;
    min-width: 320px;
    max-width: 320px;
    flex-shrink: 0;}
.gx-accueil .events-vedette-v2-card:hover{transform: translateY(-6px);
    box-shadow: 0 8px 30px rgba(0, 0, 0, 0.15);}
.gx-accueil .events-vedette-v2-card.events-vedette-v2-hidden{display: none;}
.gx-accueil .events-vedette-v2-card-image{position: relative;
    width: 100%;
    height: 180px;
    overflow: hidden;}
.gx-accueil .events-vedette-v2-card-image img{width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.4s ease;}
.gx-accueil .events-vedette-v2-card:hover .events-vedette-v2-card-image img{transform: scale(1.08);}
.gx-accueil .events-vedette-v2-card-date{position: absolute;
    top: 12px;
    left: 12px;
    background: #1b5e20;
    padding: 6px 14px;
    border-radius: 6px;
    z-index: 2;}
.gx-accueil .events-vedette-v2-date-text{font-family: 'Montserrat', sans-serif;
    font-size: 12px;
    font-weight: 700;
    color: #ffffff;
    letter-spacing: 0.5px;}
.gx-accueil .events-vedette-v2-card-content{padding: 18px;
    display: flex;
    flex-direction: column;
    gap: 10px;
    flex: 1;}
.gx-accueil .events-vedette-v2-card-title{font-family: 'Montserrat', sans-serif;
    font-size: 17px;
    font-weight: 700;
    color: #1a1a1a;
    margin: 0;
    line-height: 1.3;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;}
.gx-accueil .events-vedette-v2-card-description{font-family: 'Montserrat', sans-serif;
    font-size: 13px;
    font-weight: 400;
    color: #666666;
    line-height: 1.5;
    margin: 0;
    flex: 1;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;}
.gx-accueil .events-vedette-v2-card-footer{display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    padding-top: 10px;
    border-top: 1px solid #f0f0f0;}
.gx-accueil .events-vedette-v2-card-location{font-family: 'Montserrat', sans-serif;
    font-size: 12px;
    font-weight: 600;
    color: #333333;
    display: flex;
    align-items: center;
    gap: 4px;}
.gx-accueil .events-vedette-v2-card-location::before{content: '📍';
    font-size: 13px;}
.gx-accueil .events-vedette-v2-card-tag{font-family: 'Montserrat', sans-serif;
    font-size: 11px;
    font-weight: 500;
    color: #666666;
    background: #f5f5f5;
    padding: 4px 10px;
    border-radius: 10px;
    white-space: nowrap;}
@media (max-width: 1024px){.gx-accueil .events-vedette-v2-section{padding: 40px 0;}
.gx-accueil .events-vedette-v2-container{padding: 0 20px;}
.gx-accueil .events-vedette-v2-header{gap: 15px;}
.gx-accueil .events-vedette-v2-title{font-size: 18px;}
.gx-accueil .events-vedette-v2-filters{gap: 6px;}
.gx-accueil .events-vedette-v2-filter-btn{font-size: 11px;
        padding: 6px 14px;}
.gx-accueil .events-vedette-v2-more-btn{font-size: 12px;
        padding: 6px 16px;}
.gx-accueil .events-vedette-v2-plus-icon{width: 22px;
        height: 22px;
        font-size: 17px;}
.gx-accueil .events-vedette-v2-card{min-width: 260px;
        max-width: 260px;}
.gx-accueil .events-vedette-v2-card-image{height: 170px;}}
@media (max-width: 768px){.gx-accueil .events-vedette-v2-section{padding: 30px 0;}
.gx-accueil .events-vedette-v2-container{padding: 0 15px;}
.gx-accueil .events-vedette-v2-header{flex-direction: column;
        align-items: flex-start;
        gap: 12px;
        margin-bottom: 20px;}
.gx-accueil .events-vedette-v2-title{font-size: 16px;
        width: 100%;
        white-space: normal;
        line-height: 1.3;}
.gx-accueil .events-vedette-v2-filters{width: 100%;
        overflow-x: auto;
        scrollbar-width: none;
        gap: 6px;
        padding-bottom: 5px;}
.gx-accueil .events-vedette-v2-filters::-webkit-scrollbar{display: none;}
.gx-accueil .events-vedette-v2-filter-btn{font-size: 11px;
        padding: 6px 12px;
        border-radius: 16px;}
.gx-accueil .events-vedette-v2-more-btn{font-size: 12px;
        padding: 7px 16px;
        align-self: flex-start;}
.gx-accueil .events-vedette-v2-plus-icon{width: 20px;
        height: 20px;
        font-size: 16px;}
.gx-accueil .events-vedette-v2-scroll-container{gap: 15px;
        padding-bottom: 12px;}
.gx-accueil .events-vedette-v2-card{min-width: 280px;
        max-width: 280px;}
.gx-accueil .events-vedette-v2-card-image{height: 180px;}
.gx-accueil .events-vedette-v2-card-content{padding: 16px;}
.gx-accueil .events-vedette-v2-card-title{font-size: 15px;}
.gx-accueil .events-vedette-v2-card-description{font-size: 12px;}
.gx-accueil .events-vedette-v2-card-footer{padding-top: 8px;}
.gx-accueil .events-vedette-v2-card-location{font-size: 11px;}
.gx-accueil .events-vedette-v2-card-tag{font-size: 10px;
        padding: 3px 8px;}}
@media (max-width: 480px){.gx-accueil .events-vedette-v2-section{padding: 25px 0;}
.gx-accueil .events-vedette-v2-container{padding: 0 12px;}
.gx-accueil .events-vedette-v2-title{font-size: 14px;
        font-weight: 800;}
.gx-accueil .events-vedette-v2-filter-btn{font-size: 10px;
        padding: 5px 10px;}
.gx-accueil .events-vedette-v2-more-btn{font-size: 11px;
        padding: 6px 14px;}
.gx-accueil .events-vedette-v2-plus-icon{width: 18px;
        height: 18px;
        font-size: 14px;}
.gx-accueil .events-vedette-v2-scroll-container{gap: 12px;}
.gx-accueil .events-vedette-v2-card{min-width: 260px;
        max-width: 260px;}
.gx-accueil .events-vedette-v2-card-image{height: 160px;}
.gx-accueil .events-vedette-v2-card-content{padding: 14px;}
.gx-accueil .events-vedette-v2-card-title{font-size: 14px;}
.gx-accueil .events-vedette-v2-card-description{font-size: 11px;}
.gx-accueil .events-vedette-v2-card-date{top: 10px;
        left: 10px;
        padding: 5px 12px;}
.gx-accueil .events-vedette-v2-date-text{font-size: 11px;}}
.gx-accueil .vedette-block-header{font-family: 'Montserrat', sans-serif;
    overflow: hidden;
    margin-bottom: 32px;
    box-shadow: 0 4px 24px rgba(0,0,0,0.06);
    border-radius: 0 0 12px 12px;}
.gx-accueil .vedette-block-topbar{display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    padding: 10px 28px;
    background: linear-gradient(90deg, #1565c0, #1e88e5 50%, #42a5f5);
    flex-wrap: wrap;}
.gx-accueil .vedette-block-breadcrumb{display: flex;
    align-items: center;
    gap: 6px;
    flex-wrap: wrap;}
.gx-accueil .vedette-block-breadcrumb i{color: rgba(255,255,255,0.75);
    font-size: 10px;}
.gx-accueil .vedette-block-breadcrumb a{color: rgba(255,255,255,0.85);
    text-decoration: none;
    font-size: 11px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    transition: color 0.2s ease;}
.gx-accueil .vedette-block-breadcrumb a:hover{color: #ffffff;
    text-decoration: underline;}
.gx-accueil .vedette-block-breadcrumb span.active{color: #ffffff;
    font-size: 11px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.5px;}
.gx-accueil .vedette-block-espaces{display: flex;
    align-items: center;
    gap: 6px;
    flex-wrap: wrap;}
.gx-accueil .vedette-espace-btn{display: inline-flex;
    align-items: center;
    gap: 5px;
    padding: 5px 12px;
    background: rgba(0,0,0,0.18);
    border: 1px solid rgba(255,255,255,0.22);
    border-radius: 20px;
    color: rgba(255,255,255,0.88);
    font-family: 'Montserrat', sans-serif;
    font-size: 10px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    text-decoration: none;
    cursor: pointer;
    transition: all 0.2s ease;
    white-space: nowrap;}
.gx-accueil .vedette-espace-btn:hover, .gx-accueil .vedette-espace-btn.active{background: rgba(255,255,255,0.25);
    border-color: rgba(255,255,255,0.55);
    color: #ffffff;}
.gx-accueil .vedette-espace-btn i{font-size: 10px;}
.gx-accueil .vedette-block-heading{background: #ffffff;
    padding: 30px 28px 20px;
    text-align: center;}
.gx-accueil .vedette-block-eyebrow{display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: 10px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 2px;
    color: #1e88e5;
    margin-bottom: 10px;}
.gx-accueil .vedette-block-title{font-family: 'Montserrat', sans-serif;
    font-size: clamp(22px, 2.5vw, 34px);
    font-weight: 900;
    color: #0a1628;
    text-transform: uppercase;
    letter-spacing: 1.5px;
    margin: 0 0 10px;
    line-height: 1.15;}
.gx-accueil .vedette-block-highlight{color: #1e88e5;}
.gx-accueil .vedette-block-lead{font-size: 13px;
    color: rgba(10,22,40,0.55);
    line-height: 1.6;
    max-width: 560px;
    margin: 0 auto;}
.gx-accueil .vedette-block-controls{background: #f9fafb;
    border-top: 1px solid rgba(10,22,40,0.07);
    padding: 14px 28px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    flex-wrap: wrap;}
.gx-accueil .vedette-block-more-btn{display: inline-flex;
    align-items: center;
    gap: 7px;
    padding: 8px 20px;
    background: #1e88e5;
    color: #ffffff;
    border: none;
    border-radius: 6px;
    font-family: 'Montserrat', sans-serif;
    font-size: 11px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.8px;
    text-decoration: none;
    cursor: pointer;
    transition: all 0.25s ease;
    white-space: nowrap;
    flex-shrink: 0;
    box-shadow: 0 2px 10px rgba(30,136,229,0.3);}
.gx-accueil .vedette-block-more-btn:hover{background: #1565c0;
    transform: translateY(-1px);
    box-shadow: 0 4px 16px rgba(30,136,229,0.45);
    color: #ffffff;}
@media (max-width: 768px){.gx-accueil .vedette-block-topbar{flex-direction: column;
        align-items: flex-start;
        gap: 10px;
        padding: 12px 16px;}
.gx-accueil .vedette-block-espaces{gap: 5px;}
.gx-accueil .vedette-espace-btn span{display: none;}
.gx-accueil .vedette-espace-btn{padding: 5px 9px;}
.gx-accueil .vedette-block-heading{padding: 20px 16px 16px;}
.gx-accueil .vedette-block-controls{padding: 12px 16px;
        flex-direction: column;
        align-items: stretch;
        gap: 10px;}
.gx-accueil .vedette-block-more-btn{justify-content: center;}}
.gx-accueil .dest-media-carousel{position: relative;
    width: 100%;
    height: 420px;
    overflow: hidden;
    background: #0a1628;
    margin-bottom: 36px;
    border-radius: 12px;
    box-shadow: 0 8px 32px rgba(0,0,0,0.18);}
.gx-accueil .dest-media-track{position: relative;
    width: 100%;
    height: 100%;}
.gx-accueil .dest-media-slide{position: absolute;
    inset: 0;
    opacity: 0;
    transition: opacity 0.7s ease;
    pointer-events: none;}
.gx-accueil .dest-media-slide.active{opacity: 1;
    pointer-events: auto;}
.gx-accueil .dest-media-slide img, .gx-accueil .dest-media-slide video{width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;}
.gx-accueil .dest-media-slide::after{content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(to top, rgba(0,0,0,0.70) 0%, rgba(0,0,0,0.15) 55%, transparent 100%);
    pointer-events: none;}
.gx-accueil .dest-media-caption{position: absolute;
    bottom: 52px;
    left: 0;
    right: 0;
    padding: 0 40px;
    z-index: 2;
    color: #ffffff;}
.gx-accueil .dest-media-caption h3{font-family: 'Montserrat', sans-serif;
    font-size: clamp(18px, 2vw, 26px);
    font-weight: 800;
    margin: 0 0 6px;
    text-shadow: 0 2px 8px rgba(0,0,0,0.5);}
.gx-accueil .dest-media-caption p{font-family: 'Montserrat', sans-serif;
    font-size: 13px;
    font-weight: 400;
    margin: 0;
    opacity: 0.88;
    text-shadow: 0 1px 4px rgba(0,0,0,0.5);}
.gx-accueil .dest-media-badge{display: inline-flex;
    align-items: center;
    gap: 5px;
    background: rgba(30,136,229,0.85);
    color: #ffffff;
    font-family: 'Montserrat', sans-serif;
    font-size: 10px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 1px;
    padding: 4px 10px;
    border-radius: 20px;
    margin-bottom: 8px;}
.gx-accueil .dest-media-badge--video{background: rgba(21,101,192,0.9);}
.gx-accueil .dest-media-nav{position: absolute;
    top: 50%;
    transform: translateY(-50%);
    z-index: 10;
    width: 44px;
    height: 44px;
    background: rgba(255,255,255,0.15);
    border: 2px solid rgba(255,255,255,0.35);
    border-radius: 50%;
    color: #ffffff;
    font-size: 16px;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.2s ease;
    backdrop-filter: blur(4px);}
.gx-accueil .dest-media-nav:hover{background: rgba(30,136,229,0.75);
    border-color: #1e88e5;}
.gx-accueil .dest-media-nav--prev{left: 16px;}
.gx-accueil .dest-media-nav--next{right: 16px;}
.gx-accueil .dest-media-dots{position: absolute;
    bottom: 16px;
    left: 50%;
    transform: translateX(-50%);
    z-index: 10;
    display: flex;
    gap: 8px;
    align-items: center;}
.gx-accueil .dest-media-dots button{width: 8px;
    height: 8px;
    border-radius: 50%;
    border: 2px solid rgba(255,255,255,0.6);
    background: transparent;
    cursor: pointer;
    transition: all 0.25s ease;
    padding: 0;}
.gx-accueil .dest-media-dots button.active{background: #ffffff;
    border-color: #ffffff;
    width: 22px;
    border-radius: 4px;}
@media (max-width: 768px){.gx-accueil .dest-media-carousel{height: 260px; border-radius: 8px;}
.gx-accueil .dest-media-caption{bottom: 44px; padding: 0 20px;}
.gx-accueil .dest-media-nav{width: 36px; height: 36px; font-size: 13px;}}
@media (max-width: 480px){.gx-accueil .dest-media-carousel{height: 210px;}
.gx-accueil .dest-media-caption h3{font-size: 15px;}}
.gx-accueil .vedette-media-open-btn{position: absolute;
    top: 14px;
    right: 14px;
    z-index: 10;
    width: 42px;
    height: 42px;
    background: rgba(0,0,0,0.45);
    border: 2px solid rgba(255,255,255,0.5);
    border-radius: 50%;
    color: #ffffff;
    font-size: 15px;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.22s ease;
    backdrop-filter: blur(4px);
    opacity: 0;
    transform: scale(0.85);}
.gx-accueil .dest-media-slide.active .vedette-media-open-btn, .gx-accueil .events-media-slide.active .vedette-media-open-btn{opacity: 1;
    transform: scale(1);}
.gx-accueil .vedette-media-open-btn:hover{background: rgba(30,136,229,0.75);
    border-color: #1e88e5;
    transform: scale(1.1);}
.gx-accueil .vedette-media-open-btn--play{top: 50%;
    right: auto;
    left: 50%;
    transform: translate(-50%, -50%) scale(0.85);
    width: 64px;
    height: 64px;
    font-size: 22px;
    background: rgba(0,0,0,0.55);
    border-width: 3px;}
.gx-accueil .dest-media-slide.active .vedette-media-open-btn--play, .gx-accueil .events-media-slide.active .vedette-media-open-btn--play{opacity: 1;
    transform: translate(-50%, -50%) scale(1);}
.gx-accueil .vedette-media-open-btn--play:hover{transform: translate(-50%, -50%) scale(1.1);}
.gx-accueil .vedette-lightbox{position: fixed;
    inset: 0;
    z-index: 9999;
    display: none;
    flex-direction: column;
    align-items: center;
    justify-content: center;}
.gx-accueil .vedette-lightbox.active{display: flex;}
.gx-accueil .vedette-lightbox-bg{position: absolute;
    inset: 0;
    background: rgba(0,0,0,0.92);
    cursor: pointer;}
.gx-accueil .vedette-lightbox-close{position: absolute;
    top: 18px;
    right: 20px;
    z-index: 2;
    width: 44px;
    height: 44px;
    background: rgba(255,255,255,0.12);
    border: 2px solid rgba(255,255,255,0.35);
    border-radius: 50%;
    color: #ffffff;
    font-size: 18px;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.2s ease;}
.gx-accueil .vedette-lightbox-close:hover{background: rgba(220,50,50,0.7);
    border-color: #e53935;}
.gx-accueil .vedette-lightbox-nav{position: absolute;
    top: 50%;
    transform: translateY(-50%);
    z-index: 2;
    width: 50px;
    height: 50px;
    background: rgba(255,255,255,0.12);
    border: 2px solid rgba(255,255,255,0.35);
    border-radius: 50%;
    color: #ffffff;
    font-size: 18px;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.2s ease;}
.gx-accueil .vedette-lightbox-nav:hover{background: rgba(30,136,229,0.7);
    border-color: #1e88e5;}
.gx-accueil .vedette-lightbox-prev{left: 20px;}
.gx-accueil .vedette-lightbox-next{right: 20px;}
.gx-accueil .vedette-lightbox-stage{position: relative;
    z-index: 2;
    display: flex;
    align-items: center;
    justify-content: center;
    max-width: 92vw;
    max-height: 80vh;}
.gx-accueil .vedette-lightbox-img{max-width: 92vw;
    max-height: 80vh;
    object-fit: contain;
    border-radius: 6px;
    box-shadow: 0 16px 60px rgba(0,0,0,0.6);}
.gx-accueil .vedette-lightbox-video{max-width: 92vw;
    max-height: 80vh;
    border-radius: 6px;
    box-shadow: 0 16px 60px rgba(0,0,0,0.6);
    background: #000;}
.gx-accueil .vedette-lightbox-info{position: relative;
    z-index: 2;
    text-align: center;
    margin-top: 16px;
    color: #ffffff;
    max-width: 600px;
    padding: 0 20px;}
.gx-accueil .vedette-lightbox-info h3{font-family: 'Montserrat', sans-serif;
    font-size: 18px;
    font-weight: 800;
    margin: 0 0 4px;}
.gx-accueil .vedette-lightbox-info p{font-family: 'Montserrat', sans-serif;
    font-size: 13px;
    opacity: 0.75;
    margin: 0;}
.gx-accueil .vedette-lightbox-counter{position: absolute;
    bottom: 20px;
    left: 50%;
    transform: translateX(-50%);
    z-index: 2;
    font-family: 'Montserrat', sans-serif;
    font-size: 12px;
    font-weight: 600;
    color: rgba(255,255,255,0.6);
    letter-spacing: 1px;}
@media (max-width: 768px){.gx-accueil .vedette-lightbox-nav{width: 38px; height: 38px; font-size: 14px;}
.gx-accueil .vedette-lightbox-prev{left: 8px;}
.gx-accueil .vedette-lightbox-next{right: 8px;}
.gx-accueil .vedette-lightbox-info h3{font-size: 15px;}}
.gx-accueil .destinations-vedette-v2-section{width: 100%;
    padding: 60px 0;
    background: #f8f9fa;
    position: relative;}
.gx-accueil .destinations-vedette-v2-container{max-width: 100%;
    margin: 0 auto;
    padding: 0 40px;}
.gx-accueil .destinations-vedette-v2-header{display: flex;
    flex-direction: column;
    gap: 20px;
    margin-bottom: 40px;
    text-align: center;}
.gx-accueil .destinations-vedette-v2-title{width: 100%;
    font-family: 'Montserrat', sans-serif;
    font-size: 26px;
    font-weight: 800;
    color: #1a1a1a;
    letter-spacing: 1px;
    margin: 0;
    text-transform: uppercase;}
.gx-accueil .destinations-vedette-v2-header-controls{display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    gap: 20px;}
.gx-accueil .destinations-vedette-v2-filters{display: flex;
    gap: 10px;
    align-items: center;}
.gx-accueil .filter-label{font-size: 13px;
    font-weight: 700;
    color: #666;
    margin-right: 5px;
    text-transform: uppercase;}
.gx-accueil .destinations-vedette-v2-filter-btn{padding: 8px 18px;
    background: #ffffff;
    border: 2px solid #e0e0e0;
    border-radius: 20px;
    font-family: 'Montserrat', sans-serif;
    font-size: 13px;
    font-weight: 600;
    color: #333333;
    cursor: pointer;
    transition: all 0.3s ease;
    white-space: nowrap;}
.gx-accueil .destinations-vedette-v2-filter-btn:hover{background: #f5f5f5;
    border-color: #d32f2f;
    color: #d32f2f;}
.gx-accueil .destinations-vedette-v2-filter-btn.active{background: #d32f2f;
    border-color: #d32f2f;
    color: #ffffff;}
.gx-accueil .destinations-vedette-v2-more-btn{display: flex;
    align-items: center;
    gap: 8px;
    padding: 8px 20px;
    background: #d32f2f;
    border: none;
    border-radius: 40px;
    font-family: 'Montserrat', sans-serif;
    font-size: 14px;
    font-weight: 700;
    color: #ffffff;
    cursor: pointer;
    transition: all 0.3s ease;
    box-shadow: 0 3px 12px rgba(211, 47, 47, 0.3);
    white-space: nowrap;
    flex-shrink: 0;}
.gx-accueil .destinations-vedette-v2-more-btn:hover{background: #b71c1c;
    transform: translateY(-1px);
    box-shadow: 0 5px 18px rgba(211, 47, 47, 0.4);}
.gx-accueil .destinations-vedette-v2-plus-icon{display: flex;
    align-items: center;
    justify-content: center;
    width: 24px;
    height: 24px;
    background: #ffffff;
    color: #d32f2f;
    border-radius: 50%;
    font-size: 18px;
    font-weight: 700;}
.gx-accueil .destinations-vedette-v2-scroll-wrapper{width: 100%;
    overflow: hidden;
    position: relative;}
.gx-accueil .destinations-vedette-v2-scroll-container{display: flex;
    gap: 20px;
    overflow: visible;
    padding-bottom: 8px;
    will-change: transform;}
.gx-accueil .destinations-vedette-v2-section .vedette-carousel-btn:hover{background: #1e88e5;
    border-color: #1e88e5;
    color: #ffffff;
    box-shadow: 0 4px 18px rgba(30,136,229,0.35);}
.gx-accueil .destinations-vedette-v2-section .vedette-carousel-bar{background: #1e88e5;}
.gx-accueil .destinations-vedette-v2-card{background: #ffffff;
    border-radius: 12px;
    overflow: hidden;
    box-shadow: 0 3px 15px rgba(0, 0, 0, 0.1);
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    cursor: pointer;
    position: relative;
    display: flex;
    flex-direction: column;
    min-width: 320px;
    max-width: 320px;
    flex-shrink: 0;}
.gx-accueil .destinations-vedette-v2-card:hover{transform: translateY(-6px);
    box-shadow: 0 8px 30px rgba(0, 0, 0, 0.15);}
.gx-accueil .destinations-vedette-v2-card-image{position: relative;
    width: 100%;
    height: 180px;
    overflow: hidden;}
.gx-accueil .destinations-vedette-v2-card-image img{width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.4s ease;}
.gx-accueil .destinations-vedette-v2-card:hover .destinations-vedette-v2-card-image img{transform: scale(1.08);}
.gx-accueil .destinations-vedette-v2-card-content{padding: 18px;
    display: flex;
    flex-direction: column;
    gap: 10px;
    flex: 1;}
.gx-accueil .destinations-vedette-v2-card-title{font-family: 'Montserrat', sans-serif;
    font-size: 17px;
    font-weight: 700;
    color: #1a1a1a;
    margin: 0;
    line-height: 1.3;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;}
.gx-accueil .destinations-vedette-v2-card-description{font-family: 'Montserrat', sans-serif;
    font-size: 13px;
    font-weight: 400;
    color: #666666;
    line-height: 1.5;
    margin: 0;
    flex: 1;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;}
.gx-accueil .destinations-vedette-v2-card-footer{display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    padding-top: 10px;
    border-top: 1px solid #f0f0f0;}
.gx-accueil .destinations-vedette-v2-card-location{font-family: 'Montserrat', sans-serif;
    font-size: 12px;
    font-weight: 600;
    color: #333333;
    display: flex;
    align-items: center;
    gap: 4px;}
.gx-accueil .destinations-vedette-v2-card-location::before{content: '📍';
    font-size: 13px;}
.gx-accueil .destinations-vedette-v2-card-rating{font-size: 12px;
    line-height: 1;}
@media (max-width: 1024px){.gx-accueil .destinations-vedette-v2-section{padding: 40px 0;}
.gx-accueil .destinations-vedette-v2-container{padding: 0 20px;}
.gx-accueil .destinations-vedette-v2-header{gap: 15px;}
.gx-accueil .destinations-vedette-v2-title{font-size: 18px;}
.gx-accueil .destinations-vedette-v2-more-btn{font-size: 12px;
        padding: 6px 16px;}
.gx-accueil .destinations-vedette-v2-plus-icon{width: 22px;
        height: 22px;
        font-size: 17px;}
.gx-accueil .destinations-vedette-v2-card{min-width: 260px;
        max-width: 260px;}
.gx-accueil .destinations-vedette-v2-card-image{height: 170px;}}
@media (max-width: 768px){.gx-accueil .destinations-vedette-v2-section{padding: 30px 0;}
.gx-accueil .destinations-vedette-v2-container{padding: 0 15px;}
.gx-accueil .destinations-vedette-v2-header{flex-direction: column;
        align-items: flex-start;
        gap: 12px;
        margin-bottom: 20px;}
.gx-accueil .destinations-vedette-v2-title{font-size: 16px;
        width: 100%;
        white-space: normal;
        line-height: 1.3;}
.gx-accueil .destinations-vedette-v2-more-btn{font-size: 12px;
        padding: 7px 16px;
        align-self: flex-start;}
.gx-accueil .destinations-vedette-v2-plus-icon{width: 20px;
        height: 20px;
        font-size: 16px;}
.gx-accueil .destinations-vedette-v2-scroll-container{gap: 15px;
        padding-bottom: 12px;}
.gx-accueil .destinations-vedette-v2-card{min-width: 280px;
        max-width: 280px;}
.gx-accueil .destinations-vedette-v2-card-image{height: 180px;}
.gx-accueil .destinations-vedette-v2-card-content{padding: 16px;}
.gx-accueil .destinations-vedette-v2-card-title{font-size: 15px;}
.gx-accueil .destinations-vedette-v2-card-description{font-size: 12px;}
.gx-accueil .destinations-vedette-v2-card-footer{padding-top: 8px;}
.gx-accueil .destinations-vedette-v2-card-location{font-size: 11px;}
.gx-accueil .destinations-vedette-v2-card-rating{font-size: 11px;}}
@media (max-width: 480px){.gx-accueil .destinations-vedette-v2-section{padding: 25px 0;}
.gx-accueil .destinations-vedette-v2-container{padding: 0 12px;}
.gx-accueil .destinations-vedette-v2-title{font-size: 14px;
        font-weight: 800;}
.gx-accueil .destinations-vedette-v2-more-btn{font-size: 11px;
        padding: 6px 14px;}
.gx-accueil .destinations-vedette-v2-plus-icon{width: 18px;
        height: 18px;
        font-size: 14px;}
.gx-accueil .destinations-vedette-v2-scroll-container{gap: 12px;}
.gx-accueil .destinations-vedette-v2-card{min-width: 260px;
        max-width: 260px;}
.gx-accueil .destinations-vedette-v2-card-image{height: 160px;}
.gx-accueil .destinations-vedette-v2-card-content{padding: 14px;}
.gx-accueil .destinations-vedette-v2-card-title{font-size: 14px;}
.gx-accueil .destinations-vedette-v2-card-description{font-size: 11px;}}
.gx-accueil .restaurants-vedette-v2-section{width: 100%;
    padding: 60px 0;
    background: #ffffff;
    position: relative;}
.gx-accueil .restaurants-vedette-v2-container{max-width: 100%;
    margin: 0 auto;
    padding: 0 40px;}
.gx-accueil .restaurants-vedette-v2-header{display: flex;
    flex-direction: column;
    gap: 20px;
    margin-bottom: 40px;
    text-align: center;}
.gx-accueil .restaurants-vedette-v2-title{width: 100%;
    font-family: 'Montserrat', sans-serif;
    font-size: 26px;
    font-weight: 800;
    color: #1a1a1a;
    letter-spacing: 1px;
    margin: 0;
    text-transform: uppercase;}
.gx-accueil .restaurants-vedette-v2-header-controls{display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    gap: 20px;}
.gx-accueil .restaurants-vedette-v2-filters{display: flex;
    gap: 10px;
    align-items: center;}
.gx-accueil .filter-label{font-size: 13px;
    font-weight: 700;
    color: #666;
    margin-right: 5px;
    text-transform: uppercase;}
.gx-accueil .restaurants-vedette-v2-filter-btn{padding: 8px 18px;
    background: #ffffff;
    border: 2px solid #e0e0e0;
    border-radius: 20px;
    font-family: 'Montserrat', sans-serif;
    font-size: 13px;
    font-weight: 600;
    color: #333333;
    cursor: pointer;
    transition: all 0.3s ease;
    white-space: nowrap;}
.gx-accueil .restaurants-vedette-v2-filter-btn:hover{background: #f5f5f5;
    border-color: #d32f2f;
    color: #d32f2f;}
.gx-accueil .restaurants-vedette-v2-filter-btn.active{background: #d32f2f;
    border-color: #d32f2f;
    color: #ffffff;}
.gx-accueil .restaurants-vedette-v2-more-btn{display: flex;
    align-items: center;
    gap: 8px;
    padding: 8px 20px;
    background: #d32f2f;
    border: none;
    border-radius: 40px;
    font-family: 'Montserrat', sans-serif;
    font-size: 14px;
    font-weight: 700;
    color: #ffffff;
    cursor: pointer;
    transition: all 0.3s ease;
    box-shadow: 0 3px 12px rgba(211, 47, 47, 0.3);
    white-space: nowrap;
    flex-shrink: 0;}
.gx-accueil .restaurants-vedette-v2-more-btn:hover{background: #b71c1c;
    transform: translateY(-1px);
    box-shadow: 0 5px 18px rgba(211, 47, 47, 0.4);}
.gx-accueil .restaurants-vedette-v2-plus-icon{display: flex;
    align-items: center;
    justify-content: center;
    width: 24px;
    height: 24px;
    background: #ffffff;
    color: #d32f2f;
    border-radius: 50%;
    font-size: 18px;
    font-weight: 700;}
.gx-accueil .restaurants-vedette-v2-scroll-wrapper{width: 100%;
    overflow: hidden;
    position: relative;}
.gx-accueil .restaurants-vedette-v2-scroll-container{display: flex;
    gap: 20px;
    overflow-x: auto;
    overflow-y: hidden;
    scroll-behavior: smooth;
    padding-bottom: 15px;
    scrollbar-width: thin;
    scrollbar-color: #d32f2f #f0f0f0;}
.gx-accueil .restaurants-vedette-v2-scroll-container::-webkit-scrollbar{height: 8px;}
.gx-accueil .restaurants-vedette-v2-scroll-container::-webkit-scrollbar-track{background: #f0f0f0;
    border-radius: 4px;}
.gx-accueil .restaurants-vedette-v2-scroll-container::-webkit-scrollbar-thumb{background: #d32f2f;
    border-radius: 4px;}
.gx-accueil .restaurants-vedette-v2-scroll-container::-webkit-scrollbar-thumb:hover{background: #b71c1c;}
.gx-accueil .restaurants-vedette-v2-card{background: #ffffff;
    border-radius: 12px;
    overflow: hidden;
    box-shadow: 0 3px 15px rgba(0, 0, 0, 0.1);
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    cursor: pointer;
    position: relative;
    display: flex;
    flex-direction: column;
    min-width: 320px;
    max-width: 320px;
    flex-shrink: 0;}
.gx-accueil .restaurants-vedette-v2-card:hover{transform: translateY(-6px);
    box-shadow: 0 8px 30px rgba(0, 0, 0, 0.15);}
.gx-accueil .restaurants-vedette-v2-card-image{position: relative;
    width: 100%;
    height: 180px;
    overflow: hidden;}
.gx-accueil .restaurants-vedette-v2-card-image img{width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.4s ease;}
.gx-accueil .restaurants-vedette-v2-card:hover .restaurants-vedette-v2-card-image img{transform: scale(1.08);}
.gx-accueil .restaurants-vedette-v2-card-badge{position: absolute;
    top: 12px;
    right: 12px;
    background: rgba(211, 47, 47, 0.95);
    padding: 6px 14px;
    border-radius: 6px;
    z-index: 2;}
.gx-accueil .restaurants-vedette-v2-badge-text{font-family: 'Montserrat', sans-serif;
    font-size: 11px;
    font-weight: 700;
    color: #ffffff;
    letter-spacing: 0.5px;
    text-transform: uppercase;}
.gx-accueil .restaurants-vedette-v2-card-content{padding: 18px;
    display: flex;
    flex-direction: column;
    gap: 10px;
    flex: 1;}
.gx-accueil .restaurants-vedette-v2-card-title{font-family: 'Montserrat', sans-serif;
    font-size: 17px;
    font-weight: 700;
    color: #1a1a1a;
    margin: 0;
    line-height: 1.3;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;}
.gx-accueil .restaurants-vedette-v2-card-description{font-family: 'Montserrat', sans-serif;
    font-size: 13px;
    font-weight: 400;
    color: #666666;
    line-height: 1.5;
    margin: 0;
    flex: 1;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;}
.gx-accueil .restaurants-vedette-v2-card-footer{display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    padding-top: 10px;
    border-top: 1px solid #f0f0f0;}
.gx-accueil .restaurants-vedette-v2-card-location{font-family: 'Montserrat', sans-serif;
    font-size: 12px;
    font-weight: 600;
    color: #333333;
    display: flex;
    align-items: center;
    gap: 4px;}
.gx-accueil .restaurants-vedette-v2-card-location::before{content: '📍';
    font-size: 13px;}
.gx-accueil .restaurants-vedette-v2-card-rating{font-size: 12px;
    line-height: 1;}
@media (max-width: 1024px){.gx-accueil .restaurants-vedette-v2-section{padding: 40px 0;}
.gx-accueil .restaurants-vedette-v2-container{padding: 0 20px;}
.gx-accueil .restaurants-vedette-v2-header{gap: 15px;}
.gx-accueil .restaurants-vedette-v2-title{font-size: 18px;}
.gx-accueil .restaurants-vedette-v2-more-btn{font-size: 12px;
        padding: 6px 16px;}
.gx-accueil .restaurants-vedette-v2-plus-icon{width: 22px;
        height: 22px;
        font-size: 17px;}
.gx-accueil .restaurants-vedette-v2-card{min-width: 260px;
        max-width: 260px;}
.gx-accueil .restaurants-vedette-v2-card-image{height: 170px;}}
@media (max-width: 768px){.gx-accueil .restaurants-vedette-v2-section{padding: 30px 0;}
.gx-accueil .restaurants-vedette-v2-container{padding: 0 15px;}
.gx-accueil .restaurants-vedette-v2-header{flex-direction: column;
        align-items: flex-start;
        gap: 12px;
        margin-bottom: 20px;}
.gx-accueil .restaurants-vedette-v2-title{font-size: 16px;
        width: 100%;
        white-space: normal;
        line-height: 1.3;}
.gx-accueil .restaurants-vedette-v2-more-btn{font-size: 12px;
        padding: 7px 16px;
        align-self: flex-start;}
.gx-accueil .restaurants-vedette-v2-plus-icon{width: 20px;
        height: 20px;
        font-size: 16px;}
.gx-accueil .restaurants-vedette-v2-scroll-container{gap: 15px;
        padding-bottom: 12px;}
.gx-accueil .restaurants-vedette-v2-card{min-width: 280px;
        max-width: 280px;}
.gx-accueil .restaurants-vedette-v2-card-image{height: 180px;}
.gx-accueil .restaurants-vedette-v2-card-content{padding: 16px;}
.gx-accueil .restaurants-vedette-v2-card-title{font-size: 15px;}
.gx-accueil .restaurants-vedette-v2-card-description{font-size: 12px;}
.gx-accueil .restaurants-vedette-v2-card-footer{padding-top: 8px;}
.gx-accueil .restaurants-vedette-v2-card-location{font-size: 11px;}
.gx-accueil .restaurants-vedette-v2-card-rating{font-size: 11px;}
.gx-accueil .restaurants-vedette-v2-card-badge{top: 10px;
        right: 10px;
        padding: 5px 12px;}
.gx-accueil .restaurants-vedette-v2-badge-text{font-size: 10px;}}
@media (max-width: 480px){.gx-accueil .restaurants-vedette-v2-section{padding: 25px 0;}
.gx-accueil .restaurants-vedette-v2-container{padding: 0 12px;}
.gx-accueil .restaurants-vedette-v2-title{font-size: 14px;
        font-weight: 800;}
.gx-accueil .restaurants-vedette-v2-more-btn{font-size: 11px;
        padding: 6px 14px;}
.gx-accueil .restaurants-vedette-v2-plus-icon{width: 18px;
        height: 18px;
        font-size: 14px;}
.gx-accueil .restaurants-vedette-v2-scroll-container{gap: 12px;}
.gx-accueil .restaurants-vedette-v2-card{min-width: 260px;
        max-width: 260px;}
.gx-accueil .restaurants-vedette-v2-card-image{height: 160px;}
.gx-accueil .restaurants-vedette-v2-card-content{padding: 14px;}
.gx-accueil .restaurants-vedette-v2-card-title{font-size: 14px;}
.gx-accueil .restaurants-vedette-v2-card-description{font-size: 11px;}
.gx-accueil .restaurants-vedette-v2-card-badge{top: 8px;
        right: 8px;
        padding: 4px 10px;}
.gx-accueil .restaurants-vedette-v2-badge-text{font-size: 9px;}}
.gx-accueil .products-vedette-v2-section{width: 100%;
    padding: 60px 0;
    background: linear-gradient(180deg, #ffffff 0%, #faf7f2 100%);
    position: relative;}
.gx-accueil .products-vedette-v2-container{max-width: 100%;
    margin: 0 auto;
    padding: 0 40px;}
.gx-accueil .products-vedette-v2-filters{display: flex;
    align-items: center;
    gap: 6px;
    flex-wrap: wrap;}
.gx-accueil .products-vedette-v2-filter-btn{display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 6px 14px;
    background: rgba(255, 255, 255, 0.95);
    border: 1.5px solid rgba(255, 255, 255, 0.5);
    border-radius: 20px;
    font-family: 'Montserrat', sans-serif;
    font-size: 16px;
    font-weight: 700;
    color: #1a2942;
    cursor: pointer;
    transition: all 0.25s ease;
    white-space: nowrap;
    letter-spacing: 0.3px;
    text-transform: uppercase;}
.gx-accueil .products-vedette-v2-filter-btn:hover{background: #fff;
    border-color: #d4af37;
    color: #d4af37;
    transform: translateY(-1px);}
.gx-accueil .products-vedette-v2-filter-btn.active{background: linear-gradient(135deg, #d4af37 0%, #f26522 100%);
    border-color: transparent;
    color: #ffffff;
    box-shadow: 0 3px 16px rgba(242, 101, 34, 0.35);}
.gx-accueil .products-vedette-v2-filter-btn i{font-size: 16px;}
.gx-accueil .products-vedette-v2-carousel{margin-top: 6px;}
.gx-accueil .products-vedette-v2-scroll-wrapper{width: 100%;
    overflow: hidden;
    position: relative;
    padding: 8px 0 16px;}
.gx-accueil .products-vedette-v2-scroll-container{display: flex;
    gap: 20px;
    overflow: visible;
    padding-bottom: 8px;
    will-change: transform;}
.gx-accueil .products-vedette-v2-section .vedette-carousel-bar{background: linear-gradient(90deg, #d4af37, #f26522);}
.gx-accueil .products-vedette-v2-section .vedette-carousel-btn:hover{background: linear-gradient(135deg, #d4af37 0%, #f26522 100%);
    border-color: transparent;
    color: #ffffff;
    box-shadow: 0 4px 18px rgba(242, 101, 34, 0.4);}
.gx-accueil .products-vedette-v2-card{background: #ffffff;
    border-radius: 14px;
    overflow: hidden;
    box-shadow: 0 2px 16px rgba(10, 22, 40, 0.06);
    border: 1px solid #f0ece3;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    cursor: pointer;
    position: relative;
    display: flex;
    flex-direction: column;
    min-width: 260px;
    max-width: 260px;
    flex-shrink: 0;
    font-family: 'Montserrat', sans-serif;}
.gx-accueil .products-vedette-v2-card:hover{transform: translateY(-8px);
    box-shadow: 0 16px 40px rgba(10, 22, 40, 0.18);
    border-color: #d4af37;}
.gx-accueil .products-vedette-v2-card-image{position: relative;
    width: 100%;
    height: 240px;
    overflow: hidden;
    background: #f7f4ee;}
.gx-accueil .products-vedette-v2-card-image img{width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.5s ease;}
.gx-accueil .products-vedette-v2-card:hover .products-vedette-v2-card-image img{transform: scale(1.08);}
.gx-accueil .products-vedette-v2-badge{position: absolute;
    top: 12px;
    left: 12px;
    display: inline-flex;
    align-items: center;
    gap: 5px;
    padding: 5px 16px;
    border-radius: 4px;
    font-size: 16px;
    font-weight: 800;
    color: #ffffff;
    letter-spacing: 0.8px;
    text-transform: uppercase;
    z-index: 3;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.18);}
.gx-accueil .products-vedette-v2-badge--promo{background: linear-gradient(135deg, #e53935, #d32f2f);}
.gx-accueil .products-vedette-v2-badge--new{background: linear-gradient(135deg, #1e88e5, #1565c0);}
.gx-accueil .products-vedette-v2-badge--hot{background: linear-gradient(135deg, #f26522, #e84c10);}
.gx-accueil .products-vedette-v2-badge--trending{background: linear-gradient(135deg, #d4af37, #b8922d);}
.gx-accueil .products-vedette-v2-fav{position: absolute;
    top: 16px;
    right: 16px;
    width: 36px;
    height: 36px;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.95);
    border: none;
    color: #444;
    font-size: 14px;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 3;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.12);
    transition: all 0.25s ease;}
.gx-accueil .products-vedette-v2-fav:hover, .gx-accueil .products-vedette-v2-fav.is-active{background: #e53935;
    color: #ffffff;
    transform: scale(1.08);}
.gx-accueil .products-vedette-v2-quick{position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    padding: 12px;
    background: linear-gradient(180deg, rgba(10, 22, 40, 0) 0%, rgba(10, 22, 40, 0.92) 100%);
    transform: translateY(110%);
    transition: transform 0.35s cubic-bezier(0.4, 0, 0.2, 1);
    z-index: 2;}
.gx-accueil .products-vedette-v2-card:hover .products-vedette-v2-quick{transform: translateY(0);}
.gx-accueil .products-vedette-v2-quick-btn{width: 100%;
    padding: 9px 14px;
    background: #ffffff;
    border: none;
    border-radius: 8px;
    font-family: 'Montserrat', sans-serif;
    font-size: 12px;
    font-weight: 700;
    color: #0a1628;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
    letter-spacing: 0.3px;
    transition: all 0.2s ease;}
.gx-accueil .products-vedette-v2-quick-btn:hover{background: #d4af37;
    color: #ffffff;}
.gx-accueil .products-vedette-v2-card-content{padding: 16px 16px 14px;
    display: flex;
    flex-direction: column;
    gap: 7px;
    flex: 1;}
.gx-accueil .products-vedette-v2-card-brand{font-size: 16px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 1.2px;
    color: #d4af37;}
.gx-accueil .products-vedette-v2-card-title{font-size: 15px;
    font-weight: 700;
    color: #1a2942;
    margin: 0;
    line-height: 1.35;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    min-height: 40px;}
.gx-accueil .products-vedette-v2-card-rating{display: flex;
    align-items: center;
    gap: 2px;
    color: #f59f00;
    font-size: 12px;}
.gx-accueil .products-vedette-v2-card-rating .far{color: #dcdcdc;}
.gx-accueil .products-vedette-v2-card-reviews{margin-left: 4px;
    font-size: 16px;
    font-weight: 600;
    color: #888;}
.gx-accueil .products-vedette-v2-card-footer{display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    padding-top: 16px;
    margin-top: 4px;
    border-top: 1px solid #f0ece3;}
.gx-accueil .products-vedette-v2-price-block{display: flex;
    flex-direction: column;
    gap: 2px;}
.gx-accueil .products-vedette-v2-price-old{font-size: 16px;
    font-weight: 500;
    color: #aaa;
    text-decoration: line-through;
    line-height: 1;}
.gx-accueil .products-vedette-v2-price{font-size: 18px;
    font-weight: 800;
    color: #0a1628;
    line-height: 1.1;
    letter-spacing: -0.2px;}
.gx-accueil .products-vedette-v2-add-btn{width: 40px;
    height: 40px;
    border-radius: 50%;
    background: linear-gradient(135deg, #d4af37 0%, #f26522 100%);
    border: none;
    color: #ffffff;
    font-size: 14px;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 3px 16px rgba(242, 101, 34, 0.35);
    transition: all 0.25s ease;
    flex-shrink: 0;}
.gx-accueil .products-vedette-v2-add-btn:hover{transform: translateY(-2px) rotate(-6deg);
    box-shadow: 0 6px 18px rgba(242, 101, 34, 0.5);}
@media (max-width: 1024px){.gx-accueil .products-vedette-v2-section{padding: 45px 0;}
.gx-accueil .products-vedette-v2-container{padding: 0 20px;}
.gx-accueil .products-vedette-v2-card{min-width: 240px; max-width: 240px;}
.gx-accueil .products-vedette-v2-card-image{height: 210px;}
.gx-accueil .products-vedette-v2-filter-btn{font-size: 10px; padding: 5px 11px;}}
@media (max-width: 768px){.gx-accueil .products-vedette-v2-section{padding: 30px 0;}
.gx-accueil .products-vedette-v2-container{padding: 0 12px;}
.gx-accueil .products-vedette-v2-section .vedette-carousel-outer{padding: 0 38px;}
.gx-accueil .products-vedette-v2-section .vedette-carousel-btn{width: 34px; height: 34px; font-size: 12px;}
.gx-accueil .products-vedette-v2-section .vedette-carousel-progress{margin: 10px 38px 2px;}
.gx-accueil .products-vedette-v2-filters{flex-wrap: nowrap;
        overflow-x: auto;
        scrollbar-width: none;
        -webkit-overflow-scrolling: touch;
        gap: 6px;
        padding-bottom: 4px;
        width: 100%;}
.gx-accueil .products-vedette-v2-filters::-webkit-scrollbar{display: none;}
.gx-accueil .products-vedette-v2-filter-btn{flex-shrink: 0;
        font-size: 10px;
        padding: 5px 10px;}
.gx-accueil .products-vedette-v2-card{min-width: 200px; max-width: 200px; border-radius: 12px;}
.gx-accueil .products-vedette-v2-card-image{height: 180px;}
.gx-accueil .products-vedette-v2-card-content{padding: 12px; gap: 6px;}
.gx-accueil .products-vedette-v2-card-brand{font-size: 9px; letter-spacing: 1px;}
.gx-accueil .products-vedette-v2-card-title{font-size: 13px; min-height: 34px;}
.gx-accueil .products-vedette-v2-card-rating{font-size: 11px;}
.gx-accueil .products-vedette-v2-card-reviews{font-size: 10px;}
.gx-accueil .products-vedette-v2-price{font-size: 15px;}
.gx-accueil .products-vedette-v2-price-old{font-size: 10px;}
.gx-accueil .products-vedette-v2-badge{font-size: 9px; padding: 4px 8px;}
.gx-accueil .products-vedette-v2-add-btn{width: 34px; height: 34px; font-size: 12px;}
.gx-accueil .products-vedette-v2-fav{width: 30px; height: 30px; font-size: 12px;}}
@media (max-width: 480px){.gx-accueil .products-vedette-v2-container{padding: 0 8px;}
.gx-accueil .products-vedette-v2-section .vedette-carousel-outer{padding: 0 6px;}
.gx-accueil .products-vedette-v2-section .vedette-carousel-btn{width: 30px; height: 30px; font-size: 11px;
        background: rgba(255,255,255,0.92);}
.gx-accueil .products-vedette-v2-section .vedette-carousel-prev{left: -2px;}
.gx-accueil .products-vedette-v2-section .vedette-carousel-next{right: -2px;}
.gx-accueil .products-vedette-v2-section .vedette-carousel-progress{margin: 10px 6px 2px;}
.gx-accueil .products-vedette-v2-scroll-container{gap: 12px;}
.gx-accueil .products-vedette-v2-card{min-width: 75vw; max-width: 75vw;}
.gx-accueil .products-vedette-v2-card-image{height: 56vw; max-height: 240px;}
.gx-accueil .products-vedette-v2-card-content{padding: 12px 14px;}
.gx-accueil .products-vedette-v2-card-title{font-size: 14px; min-height: 36px;}
.gx-accueil .products-vedette-v2-price{font-size: 16px;}
.gx-accueil .products-vedette-v2-add-btn{width: 36px; height: 36px; font-size: 13px;}
.gx-accueil .products-vedette-v2-quick{transform: translateY(0); background: linear-gradient(180deg, rgba(10,22,40,0) 0%, rgba(10,22,40,0.75) 100%); padding: 10px;}
.gx-accueil .products-vedette-v2-quick-btn{font-size: 11px; padding: 7px 10px;}}
@media (max-width: 360px){.gx-accueil .products-vedette-v2-card{min-width: 82vw; max-width: 82vw;}
.gx-accueil .products-vedette-v2-card-title{font-size: 13px;}
.gx-accueil .products-vedette-v2-price{font-size: 15px;}}
.gx-accueil .pkg-section{font-family: 'Montserrat', sans-serif;
    background: #ffffff;
    color: #333333;}
.gx-accueil .page6-wrapper{background: #ffffff;
    overflow: hidden;}
.gx-accueil .pkg-content-area{padding: 40px 40px 60px;
    max-width: 1400px;
    margin: 0 auto;}
.gx-accueil .pkg-category-section{margin-bottom: 60px;}
.gx-accueil .pkg-category-header{display: flex;
    align-items: center;
    gap: 18px;
    margin-bottom: 28px;
    padding-bottom: 16px;
    border-bottom: 2px solid #f0f4f8;}
.gx-accueil .pkg-cat-icon{width: 56px;
    height: 56px;
    border-radius: 14px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 22px;
    color: #ffffff;
    flex-shrink: 0;}
.gx-accueil .pkg-cat-icon--quebec{background: linear-gradient(135deg, #1565c0, #1e88e5);}
.gx-accueil .pkg-cat-icon--europe{background: linear-gradient(135deg, #1565c0, #1e88e5);}
.gx-accueil .pkg-cat-titles{flex: 1;}
.gx-accueil .pkg-category-title{font-size: 1.6rem;
    font-weight: 800;
    color: #1a2942;
    margin: 0 0 2px;
    line-height: 1.2;}
.gx-accueil .pkg-category-subtitle{font-size: 0.9rem;
    color: #888888;
    margin: 0;
    font-weight: 500;}
.gx-accueil .pkg-category-count{background: linear-gradient(135deg, #1565c0, #1e88e5);
    color: #ffffff;
    font-size: 0.8rem;
    font-weight: 700;
    padding: 6px 14px;
    border-radius: 20px;
    white-space: nowrap;
    font-family: 'Montserrat', sans-serif;
    letter-spacing: 0.3px;}
.gx-accueil .pkg-filters{display: flex;
    gap: 10px;
    align-items: center;
    flex-wrap: wrap;}
.gx-accueil .pkg-filter-btn{padding: 8px 18px;
    background: #ffffff;
    border: 2px solid #e0e0e0;
    border-radius: 20px;
    font-family: 'Montserrat', sans-serif;
    font-size: 13px;
    font-weight: 600;
    color: #333333;
    cursor: pointer;
    transition: all 0.3s ease;
    white-space: nowrap;
    flex-shrink: 0;
    display: inline-flex;
    align-items: center;
    gap: 6px;}
.gx-accueil .pkg-filter-btn:hover{background: #e3f2fd;
    border-color: #1e88e5;
    color: #1565c0;
    transform: translateY(-1px);}
.gx-accueil .pkg-filter-btn.active{background: linear-gradient(135deg, #1565c0, #1e88e5);
    border-color: #1e88e5;
    color: #ffffff;}
.gx-accueil .packages-grid{display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 28px;}
.gx-accueil .package-card{background: #ffffff;
    border: 1px solid #e8edf5;
    border-radius: 16px;
    overflow: hidden;
    transition: all 0.3s ease;
    display: flex;
    flex-direction: column;
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.05);}
.gx-accueil .package-card:hover{transform: translateY(-8px);
    border-color: #bbdefb;
    box-shadow: 0 16px 40px rgba(30, 136, 229, 0.15);}
.gx-accueil .package-image{height: 230px;
    width: 100%;
    overflow: hidden;
    position: relative;}
.gx-accueil .package-image img{width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.6s cubic-bezier(0.4, 0, 0.2, 1);}
.gx-accueil .package-card:hover .package-image img{transform: scale(1.07);}
.gx-accueil .package-badge{position: absolute;
    top: 16px;
    right: 16px;
    padding: 6px 14px;
    border-radius: 50px;
    font-size: 0.75rem;
    font-weight: 800;
    color: #ffffff;
    letter-spacing: 0.5px;
    text-transform: uppercase;
    z-index: 2;
    font-family: 'Montserrat', sans-serif;}
.gx-accueil .pkg-badge--popular{background: linear-gradient(135deg, #e84c10, #f26522); box-shadow: 0 4px 12px rgba(242,101,34,0.45);}
.gx-accueil .pkg-badge--new{background: linear-gradient(135deg, #2e7d32, #43a047); box-shadow: 0 4px 12px rgba(67,160,71,0.4);}
.gx-accueil .pkg-badge--luxe{background: linear-gradient(135deg, #b8860b, #d4af37); box-shadow: 0 4px 12px rgba(212,175,55,0.4);}
.gx-accueil .pkg-badge--couple{background: linear-gradient(135deg, #ad1457, #e91e8c); box-shadow: 0 4px 12px rgba(233,30,140,0.4);}
.gx-accueil .pkg-badge--exclusif{background: linear-gradient(135deg, #4527a0, #7b1fa2); box-shadow: 0 4px 12px rgba(123,31,162,0.4);}
.gx-accueil .pkg-badge--top{background: linear-gradient(135deg, #0277bd, #0288d1); box-shadow: 0 4px 12px rgba(2,119,189,0.4);}
.gx-accueil .package-content{padding: 22px;
    flex-grow: 1;
    display: flex;
    flex-direction: column;}
.gx-accueil .package-header{display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 12px;
    margin-bottom: 12px;}
.gx-accueil .package-header h3{font-size: 1.15rem;
    font-weight: 700;
    color: #1a2942;
    line-height: 1.3;
    margin: 0;
    flex: 1;}
.gx-accueil .package-price{font-size: 1.45rem;
    font-weight: 800;
    color: #1e88e5;
    white-space: nowrap;
    flex-shrink: 0;}
.gx-accueil .package-price span{font-size: 0.8rem;
    font-weight: 500;
    color: #999999;}
.gx-accueil .package-location{display: flex;
    align-items: center;
    gap: 7px;
    color: #666666;
    font-size: 0.88rem;
    font-weight: 600;
    margin-bottom: 12px;}
.gx-accueil .package-location i{color: #1e88e5;
    font-size: 12px;}
.gx-accueil .package-description{font-size: 0.88rem;
    color: #777777;
    line-height: 1.65;
    flex-grow: 1;
    margin-bottom: 16px;}
.gx-accueil .package-features{display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-bottom: 20px;}
.gx-accueil .feature{background: #e3f2fd;
    border: 1px solid #bbdefb;
    padding: 5px 12px;
    border-radius: 50px;
    font-size: 0.8rem;
    color: #1565c0;
    font-weight: 600;
    display: flex;
    align-items: center;
    gap: 5px;}
.gx-accueil .feature i{color: #1e88e5;
    font-size: 10px;}
.gx-accueil .pkg-btn-primary{display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    padding: 13px 20px;
    background: linear-gradient(135deg, #1565c0, #1e88e5, #42a5f5);
    color: #ffffff;
    border: none;
    border-radius: 10px;
    font-family: 'Montserrat', sans-serif;
    font-size: 0.9rem;
    font-weight: 700;
    text-decoration: none;
    cursor: pointer;
    transition: all 0.3s ease;
    margin-top: auto;
    box-shadow: 0 4px 16px rgba(30, 136, 229, 0.35);
    letter-spacing: 0.3px;}
.gx-accueil .pkg-btn-primary:hover{transform: translateY(-2px);
    box-shadow: 0 8px 24px rgba(30, 136, 229, 0.5);
    color: #ffffff;}
.gx-accueil .showcase-packages{margin: 60px 0 40px;}
.gx-accueil .showcase-header{text-align: center;
    margin-bottom: 36px;}
.gx-accueil .showcase-header h2{font-size: 2rem;
    font-weight: 800;
    color: #1a2942;
    margin-bottom: 8px;}
.gx-accueil .showcase-header p{font-size: 1rem;
    color: #777777;}
.gx-accueil .showcase-grid{display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;}
.gx-accueil .showcase-item{background: #ffffff;
    border: 1px solid #e8edf5;
    border-top: 4px solid #1e88e5;
    border-radius: 14px;
    padding: 24px 22px;
    transition: all 0.3s ease;
    display: flex;
    flex-direction: column;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.04);}
.gx-accueil .showcase-item:hover{transform: translateY(-6px);
    border-top-color: #f26522;
    box-shadow: 0 12px 32px rgba(30, 136, 229, 0.12);}
.gx-accueil .showcase-item h4{font-size: 1rem;
    font-weight: 700;
    color: #1a2942;
    margin: 0 0 8px;
    line-height: 1.3;}
.gx-accueil .showcase-item p{font-size: 0.85rem;
    color: #888888;
    flex-grow: 1;
    margin-bottom: 12px;
    line-height: 1.5;}
.gx-accueil .showcase-price{font-size: 1.3rem;
    font-weight: 800;
    color: #1e88e5;}
.gx-accueil .showcase-price span{font-size: 0.8rem;
    color: #999999;
    font-weight: 500;}
.gx-accueil .showcase-item-footer{display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    margin-top: 4px;}
.gx-accueil .showcase-details-btn{display: inline-flex;
    align-items: center;
    gap: 5px;
    padding: 5px 12px;
    background: transparent;
    color: #1e88e5;
    border: 1.5px solid #1e88e5;
    border-radius: 6px;
    font-family: 'Montserrat', sans-serif;
    font-size: 0.75rem;
    font-weight: 600;
    text-decoration: none;
    white-space: nowrap;
    transition: all 0.22s ease;}
.gx-accueil .showcase-details-btn:hover{background: #1e88e5;
    color: #ffffff;
    transform: translateY(-1px);}
.gx-accueil .showcase-badge{display: inline-flex;
    align-items: center;
    gap: 5px;
    padding: 4px 12px;
    border-radius: 50px;
    font-size: 0.72rem;
    font-weight: 700;
    margin-bottom: 12px;
    align-self: flex-start;
    text-transform: uppercase;
    letter-spacing: 0.4px;}
.gx-accueil .showcase-badge.quebec{background: linear-gradient(135deg, #1565c0, #42a5f5);
    color: #ffffff;}
.gx-accueil .showcase-badge.europe{background: linear-gradient(135deg, #1565c0, #1e88e5);
    color: #ffffff;}
.gx-accueil .creation-section{margin-top: 60px;}
.gx-accueil .creation-card{background: #f8fafd;
    border: 1px solid #e3ecf7;
    border-radius: 20px;
    padding: 48px;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 48px;
    align-items: start;}
.gx-accueil .creation-info h3{font-size: 1.8rem;
    font-weight: 800;
    color: #1a2942;
    margin-bottom: 14px;}
.gx-accueil .creation-info p{font-size: 0.95rem;
    color: #666666;
    margin-bottom: 24px;
    line-height: 1.7;}
.gx-accueil .features-list{list-style: none;
    padding: 0;
    margin: 0;}
.gx-accueil .features-list li{display: flex;
    align-items: center;
    gap: 12px;
    color: #444444;
    font-weight: 500;
    font-size: 0.92rem;
    padding: 8px 0;
    border-bottom: 1px solid #eef2f8;}
.gx-accueil .features-list li:last-child{border-bottom: none;}
.gx-accueil .features-list i{color: #1e88e5;
    font-size: 14px;
    flex-shrink: 0;}
.gx-accueil .creation-form{background: #ffffff;
    border: 1px solid #e3ecf7;
    border-radius: 16px;
    padding: 36px;}
.gx-accueil .creation-form h3{font-size: 1.3rem;
    font-weight: 800;
    color: #1a2942;
    margin-bottom: 24px;}
.gx-accueil .pkg-form-group{margin-bottom: 18px;}
.gx-accueil .pkg-form-group label{display: block;
    font-size: 0.78rem;
    font-weight: 700;
    color: #555555;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    margin-bottom: 6px;}
.gx-accueil .pkg-form-group input, .gx-accueil .pkg-form-group select, .gx-accueil .pkg-form-group textarea{width: 100%;
    padding: 12px 16px;
    background: #f7fafc;
    border: 1px solid #dde6f0;
    border-radius: 10px;
    color: #333333;
    font-family: 'Montserrat', sans-serif;
    font-size: 0.9rem;
    transition: border-color 0.2s, box-shadow 0.2s;
    box-sizing: border-box;}
.gx-accueil .pkg-form-group input:focus, .gx-accueil .pkg-form-group select:focus, .gx-accueil .pkg-form-group textarea:focus{outline: none;
    border-color: #1e88e5;
    background: #ffffff;
    box-shadow: 0 0 0 3px rgba(30, 136, 229, 0.12);}
.gx-accueil .pkg-form-group textarea{height: 100px;
    resize: vertical;}
.gx-accueil .btn-create{display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    width: 100%;
    padding: 15px 20px;
    background: linear-gradient(135deg, #1565c0, #1e88e5, #42a5f5);
    color: #ffffff;
    border: none;
    border-radius: 10px;
    font-family: 'Montserrat', sans-serif;
    font-size: 1rem;
    font-weight: 700;
    cursor: pointer;
    transition: all 0.3s ease;
    margin-top: 8px;
    box-shadow: 0 4px 16px rgba(30, 136, 229, 0.3);}
.gx-accueil .btn-create:hover{transform: translateY(-2px);
    box-shadow: 0 10px 28px rgba(30, 136, 229, 0.45);
    color: #ffffff;}
.gx-accueil .pkg-card-actions{display: flex;
    gap: 10px;
    margin-top: 14px;}
.gx-accueil .pkg-btn-secondary{display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
    flex: 1;
    padding: 10px 14px;
    background: transparent;
    color: #1e88e5;
    border: 2px solid #1e88e5;
    border-radius: 10px;
    font-family: 'Montserrat', sans-serif;
    font-size: 0.82rem;
    font-weight: 600;
    text-decoration: none;
    cursor: pointer;
    transition: all 0.25s ease;
    white-space: nowrap;}
.gx-accueil .pkg-btn-secondary:hover{background: #e3f2fd;
    border-color: #1565c0;
    color: #1565c0;
    transform: translateY(-1px);}
.gx-accueil .pkg-btn-primary{flex: 1;}
.gx-accueil .creation-slider{position: relative;
    width: 100%;
    border-radius: 12px;
    overflow: hidden;
    margin-bottom: 22px;
    aspect-ratio: 5 / 3;
    background: #e3f2fd;}
.gx-accueil .creation-slide{position: absolute;
    inset: 0;
    opacity: 0;
    transition: opacity 0.7s ease;}
.gx-accueil .creation-slide.active{opacity: 1;
    position: relative;}
.gx-accueil .creation-slide img{width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;}
.gx-accueil .creation-slide-dots{position: absolute;
    bottom: 12px;
    left: 50%;
    transform: translateX(-50%);
    display: flex;
    gap: 8px;
    z-index: 5;}
.gx-accueil .creation-dot{width: 9px;
    height: 9px;
    border-radius: 50%;
    background: rgba(255,255,255,0.55);
    cursor: pointer;
    transition: background 0.3s ease, transform 0.3s ease;
    border: 2px solid rgba(255,255,255,0.8);}
.gx-accueil .creation-dot.active{background: #ffffff;
    transform: scale(1.25);}
@media (max-width: 1200px){.gx-accueil .packages-grid{grid-template-columns: repeat(2, 1fr);}
.gx-accueil .creation-card{grid-template-columns: 1fr;}}
@media (max-width: 992px){.gx-accueil .showcase-grid{grid-template-columns: repeat(2, 1fr);}
.gx-accueil .pkg-content-area{padding: 32px 24px 48px;}}
@media (max-width: 768px){.gx-accueil .pkg-content-area{padding: 24px 16px 40px;}
.gx-accueil .packages-grid{grid-template-columns: 1fr; gap: 20px;}
.gx-accueil .showcase-grid{grid-template-columns: 1fr; gap: 14px;}
.gx-accueil .creation-card{padding: 28px 20px; gap: 28px;}
.gx-accueil .creation-form{padding: 24px 16px;}
.gx-accueil .pkg-category-title{font-size: 1.3rem;}
.gx-accueil .pkg-filter-btn{font-size: 11px; padding: 6px 12px;}}
@media (max-width: 480px){.gx-accueil .pkg-content-area{padding: 16px 12px 32px;}
.gx-accueil .creation-card{padding: 20px 12px;}
.gx-accueil .packages-grid{gap: 16px;}}
.gx-accueil .travel-section{font-family: 'Inter', sans-serif;
    margin: 60px 40px 100px 40px;
    padding: 0;
    background: transparent;
    position: relative;
    z-index: 10;}
.gx-accueil .travel-container{display: flex;
    flex-wrap: wrap;
    gap: 50px;
    margin-top: 40px;}
.gx-accueil .travel-alerts{flex: 1 1 55%; min-width: 320px;}
.gx-accueil .travel-bullets{flex: 1 1 35%; min-width: 320px;}
.gx-accueil .info-section-header{display: flex;
    align-items: center;
    gap: 20px;
    margin-bottom: 40px;}
.gx-accueil .info-section-icon{width: 60px; height: 60px;
    background: linear-gradient(135deg, #0066CC, #00CC99);
    border-radius: 18px;
    display: flex; align-items: center; justify-content: center;
    color: white; font-size: 1.6rem;
    box-shadow: 0 10px 25px rgba(0, 102, 204, 0.2);}
.gx-accueil .info-section-title{font-family: 'Poppins', sans-serif; font-size: 2.2rem; font-weight: 700; color: #1a1a1a; margin: 0;}
.gx-accueil .info-section-sub{font-size: 1.05rem; color: #666666; margin: 5px 0 0 0; font-weight: 500;}
.gx-accueil .alert-card{background: #ffffff; border-radius: 20px; padding: 30px; margin-bottom: 20px;
    border: 1px solid #e1e8f0; display: flex; align-items: flex-start; gap: 20px;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1); box-shadow: 0 4px 10px rgba(0,0,0,0.02);}
.gx-accueil .alert-card:hover{transform: translateY(-6px); border-color: #3399FF; box-shadow: 0 15px 35px rgba(0, 102, 204, 0.08);}
.gx-accueil .alert-icon{width: 50px; height: 50px; border-radius: 14px; display: flex; align-items: center; justify-content: center;
    font-size: 1.3rem; flex-shrink: 0;}
.gx-accueil .alert-orange{background: #fff7ed; color: #ea580c; border: 1px solid #ffedd5;}
.gx-accueil .alert-blue{background: #eff6ff; color: #2563eb; border: 1px solid #dbeafe;}
.gx-accueil .alert-red{background: #fef2f2; color: #dc2626; border: 1px solid #fee2e2;}
.gx-accueil .alert-green{background: #f0fdf4; color: #16a34a; border: 1px solid #dcfce7;}
.gx-accueil .alert-content{flex: 1;}
.gx-accueil .alert-title{font-weight: 700; font-size: 1.25rem; margin: 0 0 10px 0; color: #1a1a1a;}
.gx-accueil .alert-desc{font-size: 1rem; color: #555555; margin: 0 0 20px 0; line-height: 1.6;}
.gx-accueil .alert-meta{display: flex; flex-wrap: wrap; gap: 20px; font-size: 0.9rem; color: #888888; font-weight: 500;}
.gx-accueil .meta-item{display: flex; align-items: center; gap: 6px;}
.gx-accueil .meta-item i{color: #00CC99;}
.gx-accueil .bullets-grid{display: flex; flex-direction: column; gap: 20px;}
.gx-accueil .bullet-item{background: #ffffff; border-radius: 20px; padding: 25px; display: flex; align-items: center; gap: 20px;
    border: 1px solid #e1e8f0; transition: all 0.3s ease; box-shadow: 0 4px 10px rgba(0,0,0,0.02);}
.gx-accueil .bullet-item:hover{border-color: #00CC99; transform: translateX(8px); box-shadow: 0 10px 25px rgba(0, 204, 153, 0.1);}
.gx-accueil .plane-icon{width: 55px; height: 55px; background: #f8fafc; border-radius: 14px;
    display: flex; align-items: center; justify-content: center; font-size: 1.3rem; color: #0066CC; border: 1px solid #e1e8f0;}
.gx-accueil .plane-details{flex: 1;}
.gx-accueil .plane-route{font-weight: 700; font-size: 1.25rem; color: #1a1a1a; margin: 0 0 8px 0; display: flex; align-items: center; gap: 12px;}
.gx-accueil .plane-route i{font-size: 1rem; color: #00CC99;}
.gx-accueil .plane-status{font-size: 1rem; color: #555555; margin: 0; display: flex; align-items: center; justify-content: space-between;}
.gx-accueil .status-badge{background: #dcfce7; color: #166534; padding: 5px 14px; border-radius: 50px; font-size: 0.85rem; font-weight: 600;}
.gx-accueil .status-warning{background: #fef08a; color: #854d0e;}
.gx-accueil .status-danger{background: #fee2e2; color: #b91c1c;}
.gx-accueil .flight-time{font-size: 0.9rem; color: #888888; display: flex; align-items: center; gap: 6px; margin-top: 10px; font-weight: 500;}
.gx-accueil .flight-time i{color: #0066CC;}
.gx-accueil .weather-badge{display: inline-flex; align-items: center; gap: 8px; background: #f8fafc; border: 1px solid #e1e8f0;
    padding: 8px 15px; border-radius: 50px; font-size: 0.85rem; color: #555555; margin-top: 12px; font-weight: 500;}
.gx-accueil .weather-badge i{color: #0066CC;}
.gx-accueil .btn-outline-primary{display: inline-flex; align-items: center; gap: 10px; background: #ffffff; padding: 16px 30px;
    border-radius: 50px; font-weight: 700; color: #0066CC; border: 2px solid #e1e8f0; font-size: 1.05rem;
    transition: all 0.3s ease; text-decoration: none; cursor: pointer;}
.gx-accueil .btn-outline-primary:hover{border-color: #0066CC; background: #f8fafc; transform: translateY(-2px); box-shadow: 0 5px 15px rgba(0, 102, 204, 0.1);}
@media (max-width: 1024px){.gx-accueil .travel-section{margin: 60px 20px 0 20px;}}
@media (max-width: 768px){.gx-accueil .travel-section{padding: 0; 
        margin: 40px 0;}
.gx-accueil .travel-container{flex-direction: column; 
        gap: 30px;}
.gx-accueil .travel-alerts, .gx-accueil .travel-bullets{width: 100%; 
        padding: 0 15px;}
.gx-accueil .info-section-header{margin-bottom: 25px; 
        padding: 0 5px;}
.gx-accueil .info-section-title{font-size: 1.8rem;}
.gx-accueil .alert-card{padding: 20px; 
        flex-direction: column; 
        gap: 15px;
        border-radius: 15px;}
.gx-accueil .bullet-item{padding: 20px; 
        flex-direction: column; 
        text-align: center;
        border-radius: 15px;}
.gx-accueil .plane-status{flex-direction: column; 
        gap: 10px; 
        align-items: center;}
.gx-accueil .plane-route{justify-content: center; font-size: 1.15rem;}
.gx-accueil .flight-time{justify-content: center;}}
@media (max-width: 480px){.gx-accueil .info-section-title{font-size: 1.5rem;}
.gx-accueil .alert-title{font-size: 1.1rem;}}
.gx-accueil .travelinfo-airline-icon{width: 56px;
    height: 56px;
    background: linear-gradient(135deg, #00acc1, #00bcd4, #26c6da);
    border-radius: 14px;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 4px 16px rgba(0, 188, 212, 0.35);}
.gx-accueil .travelinfo-airline-icon i{font-size: 1.5rem;
    color: #ffffff;}
.gx-accueil .tourism-section{font-family: 'Montserrat', sans-serif;
    margin: 60px 40px;
    padding: 0;
    background: transparent;
    position: relative;}
.gx-accueil .tourism-container{display: flex;
    flex-direction: column;
    gap: 70px;
    max-width: 1400px;
    margin: 40px auto 0;
    padding: 0 40px;}
.gx-accueil .section-header{display: flex;
    justify-content: space-between;
    align-items: flex-end;
    margin-bottom: 32px;
    border-bottom: 2px solid #e8edf5;
    padding-bottom: 20px;}
.gx-accueil .section-header-left h3{font-size: 1.5rem;
    font-weight: 700;
    color: #1a2942;
    margin-bottom: 4px;}
.gx-accueil .section-header-left p{color: #888888;
    font-size: 0.95rem;}
.gx-accueil .experience-counter{display: inline-flex;
    align-items: center;
    gap: 6px;
    background: #e3f2fd;
    color: #1e88e5;
    padding: 7px 18px;
    border-radius: 50px;
    font-weight: 700;
    font-size: 0.82rem;
    border: 1px solid #bbdefb;}
.gx-accueil .aventures-grid{display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 24px;}
.gx-accueil .aventure-card{background: #ffffff;
    border: 1px solid #e8edf5;
    border-top: 4px solid #1e88e5;
    border-radius: 14px;
    padding: 30px 24px;
    transition: all 0.3s ease;
    display: flex;
    flex-direction: column;
    box-shadow: 0 2px 10px rgba(0,0,0,0.04);}
.gx-accueil .aventure-card:hover{border-top-color: #f26522;
    transform: translateY(-6px);
    box-shadow: 0 16px 36px rgba(30,136,229,0.12);}
.gx-accueil .aventure-icon{width: 54px;
    height: 54px;
    background: #e3f2fd;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.4rem;
    margin-bottom: 20px;
    color: #1e88e5;}
.gx-accueil .aventure-title{font-size: 1.05rem;
    font-weight: 700;
    color: #1a2942;
    margin-bottom: 10px;}
.gx-accueil .aventure-desc{color: #666666;
    line-height: 1.6;
    font-size: 0.88rem;
    margin-bottom: 20px;
    flex-grow: 1;}
.gx-accueil .aventure-meta{display: flex;
    flex-wrap: wrap;
    gap: 10px;
    padding-top: 16px;
    border-top: 1px solid #e8edf5;}
.gx-accueil .meta-tag{display: inline-flex;
    align-items: center;
    gap: 5px;
    font-size: 0.78rem;
    color: #1e88e5;
    font-weight: 600;
    background: #e3f2fd;
    padding: 3px 10px;
    border-radius: 20px;}
.gx-accueil .saisons-carousel{display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 20px;}
.gx-accueil .saison-card{background: #ffffff;
    border: 1px solid #e8edf5;
    border-radius: 14px;
    padding: 28px 20px;
    text-align: center;
    transition: all 0.3s ease;
    box-shadow: 0 2px 10px rgba(0,0,0,0.04);}
.gx-accueil .saison-card:hover{border-color: #1e88e5;
    transform: translateY(-6px);
    box-shadow: 0 14px 30px rgba(30,136,229,0.12);}
.gx-accueil .saison-emoji{width: 52px;
    height: 52px;
    background: #e3f2fd;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.3rem;
    color: #1e88e5;
    margin: 0 auto 16px;}
.gx-accueil .saison-name{font-size: 1rem; font-weight: 700; color: #1a2942; margin-bottom: 14px;}
.gx-accueil .saison-activite{display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    font-size: 0.82rem;
    color: #555555;
    margin-bottom: 7px;
    font-weight: 500;}
.gx-accueil .saison-activite i{color: #1e88e5;}
.gx-accueil .saison-temp{display: inline-block;
    padding: 5px 14px;
    background: #e3f2fd;
    color: #1565c0;
    border-radius: 30px;
    font-size: 0.8rem;
    font-weight: 700;
    margin-top: 14px;}
.gx-accueil .hiver-section{background: transparent;
    border-radius: 0;
    padding: 0;
    position: relative;}
.gx-accueil .hiver-header{display: flex;
    align-items: center;
    gap: 20px;
    margin-bottom: 32px;
    border-bottom: 2px solid #e8edf5;
    padding-bottom: 20px;}
.gx-accueil .hiver-icon{width: 56px;
    height: 56px;
    background: #e3f2fd;
    border-radius: 14px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.5rem;
    color: #1e88e5;}
.gx-accueil .hiver-title{font-size: 1.5rem; font-weight: 700; color: #1a2942; margin: 0;}
.gx-accueil .hiver-sub{font-size: 0.9rem; color: #888888; margin-top: 3px;}
.gx-accueil .hiver-grid{display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 24px;}
.gx-accueil .hiver-activity-card{background: #ffffff;
    border: 1px solid #e8edf5;
    border-top: 4px solid #1e88e5;
    border-radius: 14px;
    padding: 28px;
    transition: all 0.3s ease;
    box-shadow: 0 2px 10px rgba(0,0,0,0.04);}
.gx-accueil .hiver-activity-card:hover{border-top-color: #f26522;
    transform: translateY(-6px);
    box-shadow: 0 16px 36px rgba(30,136,229,0.12);}
.gx-accueil .activity-icon-big{width: 54px;
    height: 54px;
    background: #e3f2fd;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.4rem;
    color: #1e88e5;
    margin-bottom: 18px;}
.gx-accueil .activity-name{font-size: 1rem; font-weight: 700; color: #1a2942; margin-bottom: 10px;}
.gx-accueil .activity-desc{color: #666666; line-height: 1.6; font-size: 0.85rem; margin-bottom: 18px;}
.gx-accueil .activity-difficulte{display: flex;
    align-items: center;
    justify-content: space-between;
    font-size: 0.78rem;
    font-weight: 700;
    color: #1e88e5;
    border-top: 1px solid #e8edf5;
    padding-top: 16px;}
.gx-accueil .difficulty-stars{color: #f9a52c; letter-spacing: 2px;}
.gx-accueil .snow-decoration{display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 6px 14px;
    background: #e3f2fd;
    color: #1565c0;
    border-radius: 20px;
    font-size: 0.8rem;
    font-weight: 600;
    margin-top: 12px;}
.gx-accueil .btn-hiver-cta{display: inline-flex;
    align-items: center;
    gap: 10px;
    background: linear-gradient(135deg, #1e88e5, #1565c0);
    color: #ffffff;
    padding: 14px 36px;
    border-radius: 50px;
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
    font-size: 0.95rem;
    text-decoration: none;
    margin-top: 40px;
    transition: all 0.3s ease;
    box-shadow: 0 6px 20px rgba(30,136,229,0.3);}
.gx-accueil .btn-hiver-cta:hover{background: linear-gradient(135deg, #f26522, #e84c10);
    box-shadow: 0 8px 24px rgba(242,101,34,0.35);
    transform: translateY(-2px);
    color: #ffffff;}
.gx-accueil .stats-footer{padding: 30px 0;
    border-top: 2px solid #e8edf5;
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-top: 30px;}
.gx-accueil .stat-tag{font-weight: 700; color: #555555; font-size: 0.9rem; display: flex; align-items: center; gap: 8px;}
.gx-accueil .stat-tag span{color: #1e88e5;}
.gx-accueil .tourism-eco-icon{width: 56px;
    height: 56px;
    background: linear-gradient(135deg, #43a047, #66bb6a);
    border-radius: 14px;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 4px 16px rgba(67,160,71,0.3);}
.gx-accueil .tourism-eco-icon i{font-size: 1.4rem;
    color: #ffffff;}
@media (max-width: 1200px){.gx-accueil .aventures-grid, .gx-accueil .hiver-grid{grid-template-columns: repeat(2, 1fr);}
.gx-accueil .saisons-carousel{grid-template-columns: repeat(2, 1fr);}}
@media (max-width: 1024px){.gx-accueil .tourism-section{margin: 40px 20px;}}
@media (max-width: 768px){.gx-accueil .tourism-section{margin: 30px 0;}
.gx-accueil .tourism-container{gap: 50px; padding: 0 16px;}
.gx-accueil .section-header{flex-direction: column; align-items: flex-start; gap: 12px;}
.gx-accueil .aventures-grid, .gx-accueil .hiver-grid, .gx-accueil .saisons-carousel{grid-template-columns: 1fr !important; gap: 16px;}
.gx-accueil .hiver-header{flex-direction: column; align-items: flex-start;}
.gx-accueil .btn-hiver-cta{width: 100%; justify-content: center; padding: 14px 20px;}
.gx-accueil .stats-footer{flex-direction: column; gap: 20px;}}
.gx-accueil ﻿


.bt-section{background: #f8f9fc;}
.gx-accueil .bt-body{max-width: 1400px;
    margin: 0 auto;
    padding: 60px 40px;}
.gx-accueil .resto-header-main.bt-header-main{display: grid;
    grid-template-columns: 460px minmax(0, 1fr) 460px;
    align-items: center;
    gap: 12px;}
.gx-accueil .resto-header-main.bt-header-main .resto-header-center{grid-column: 2;
    width: 100%;
    text-align: center;}
.gx-accueil .resto-header-main.bt-header-main .resto-header-logo-right{grid-column: 3;
    justify-self: end;
    width: 460px;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: flex-end;
    gap: 14px;}
.gx-accueil .bt-next-level-image{display: block;
    width: clamp(180px, 18vw, 280px);
    height: auto;}
.gx-accueil .bt-header-dest-row{justify-content: center;
    width: 100%;
    margin-top: 10px;}
.gx-accueil .bt-header-dest-row .resto-dest-icon-box{margin-right: 14px;}
.gx-accueil .bt-header-dest-row .resto-dest-breadcrumb{justify-content: center;
    text-align: center;
    flex-wrap: wrap;}
.gx-accueil .bt-more-btn{display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    min-width: 230px;
    font-size: 16px;
    font-weight: 700;
    color: #ffffff;
    text-decoration: none;
    background: #1a3a8f;
    padding: 14px 26px;
    border-radius: 999px;
    white-space: nowrap;
    transition: background 0.2s ease, transform 0.2s ease;}
.gx-accueil .bt-more-btn:hover{background: #0f235f;
    transform: translateY(-1px);}
.gx-accueil .bt-dual-grid{display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 32px;
    margin-bottom: 48px;}
.gx-accueil .bt-card{background: #fff;
    border: 1px solid #e8ecf0;
    border-radius: 20px;
    padding: 36px;
    display: flex;
    flex-direction: column;
    gap: 20px;
    transition: box-shadow 0.3s ease, transform 0.3s ease;}
.gx-accueil .bt-card:hover{box-shadow: 0 16px 48px rgba(0,0,0,0.08);
    transform: translateY(-4px);}
.gx-accueil .bt-card-top{display: flex;
    align-items: flex-start;
    gap: 18px;}
.gx-accueil .bt-icon-box{flex-shrink: 0;
    width: 56px;
    height: 56px;
    background: rgba(26, 58, 143, 0.07);
    color: #1a3a8f;
    border-radius: 14px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 22px;}
.gx-accueil .bt-icon-image-box{width: clamp(72px, 8vw, 108px);
    height: clamp(72px, 8vw, 108px);
    padding: 6px;
    background: #fff;
    border: 1px solid #eef1f5;}
.gx-accueil .bt-icon-image{display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;}
.gx-accueil .bt-icon-tourisme{background: rgba(0, 174, 154, 0.08);
    color: #00ae9a;}
.gx-accueil .bt-card-title{font-size: 20px;
    font-weight: 800;
    color: #0a1628;
    margin: 0 0 6px;}
.gx-accueil .bt-card-desc{font-size: 14px;
    color: #666;
    line-height: 1.65;
    margin: 0;}
.gx-accueil .bt-features{list-style: none;
    padding: 0;
    margin: 0;
    border-top: 1px solid #f0f2f5;}
.gx-accueil .bt-features li{padding: 10px 0;
    font-size: 13.5px;
    font-weight: 600;
    color: #444;
    display: flex;
    align-items: center;
    gap: 10px;
    border-bottom: 1px solid #f0f2f5;}
.gx-accueil .bt-features li i{color: #00c9b7;
    font-size: 15px;
    flex-shrink: 0;}
.gx-accueil .bt-carousel{flex: 1;}
.gx-accueil .bt-carousel-stage{position: relative;
    width: 100%;
    padding-bottom: 56.25%;
    border-radius: 14px;
    overflow: hidden;
    background: #0a1628;
    transition: opacity 0.2s ease;}
.gx-accueil .bt-carousel-stage.bt-carousel-fade{opacity: 0;}
.gx-accueil .bt-carousel-preview{position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform 0.4s ease;}
.gx-accueil .bt-carousel-stage:hover .bt-carousel-preview{transform: scale(1.03);}
.gx-accueil .bt-carousel-stage iframe{position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    border: none;
    z-index: 5;}
.gx-accueil .bt-carousel-play{position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 60px;
    height: 60px;
    border-radius: 50%;
    background: rgba(255,255,255,0.92);
    border: none;
    color: #1a3a8f;
    font-size: 20px;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: background 0.2s ease, transform 0.2s ease;
    z-index: 3;}
.gx-accueil .bt-carousel-play:hover{background: #fff;
    transform: translate(-50%, -50%) scale(1.12);}
.gx-accueil .bt-carousel-arrow{position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 38px;
    height: 38px;
    border-radius: 50%;
    background: rgba(10,22,40,0.55);
    border: none;
    color: #fff;
    font-size: 14px;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 4;
    transition: background 0.2s ease, transform 0.2s ease;}
.gx-accueil .bt-carousel-prev{left: 12px;}
.gx-accueil .bt-carousel-next{right: 12px;}
.gx-accueil .bt-carousel-arrow:hover{background: #1a3a8f;
    transform: translateY(-50%) scale(1.1);}
.gx-accueil .bt-carousel-counter{position: absolute;
    bottom: 40px;
    right: 12px;
    background: rgba(10,22,40,0.6);
    color: #fff;
    font-size: 11px;
    font-weight: 700;
    padding: 3px 10px;
    border-radius: 50px;
    z-index: 4;
    letter-spacing: 0.5px;}
.gx-accueil .bt-carousel-title-bar{position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    background: linear-gradient(transparent, rgba(10,22,40,0.85));
    color: #fff;
    font-size: 12px;
    font-weight: 700;
    padding: 20px 14px 10px;
    z-index: 4;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;}
.gx-accueil .bt-cta-btn{display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 12px 28px;
    border-radius: 50px;
    font-size: 13px;
    font-weight: 800;
    letter-spacing: 0.5px;
    text-decoration: none;
    transition: all 0.25s ease;
    align-self: flex-start;}
.gx-accueil .bt-cta-primary{background: #1a3a8f;
    color: #fff;}
.gx-accueil .bt-cta-primary:hover{background: #0a1628; color: #d4af37;}
.gx-accueil .bt-cta-secondary{background: transparent;
    color: #1a3a8f;
    border: 2px solid #1a3a8f;}
.gx-accueil .bt-cta-secondary:hover{background: #1a3a8f; color: #fff;}
.gx-accueil .bt-stats-grid{display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 20px;}
.gx-accueil .bt-stat-unit{background: #fff;
    border: 1px solid #e8ecf0;
    border-radius: 16px;
    padding: 28px 20px;
    text-align: center;
    transition: all 0.3s ease;}
.gx-accueil .bt-stat-unit:hover{border-color: #1a3a8f;
    box-shadow: 0 8px 24px rgba(26,58,143,0.08);}
.gx-accueil .bt-stat-number{display: block;
    font-size: 34px;
    font-weight: 900;
    color: #1a3a8f;
    margin-bottom: 4px;}
.gx-accueil .bt-stat-label{font-size: 11px;
    font-weight: 700;
    color: #888;
    text-transform: uppercase;
    letter-spacing: 1px;}
@media (max-width: 1100px){.gx-accueil .bt-dual-grid{grid-template-columns: 1fr;}}
@media (max-width: 768px){.gx-accueil .resto-header-main.bt-header-main{grid-template-columns: 1fr;
        gap: 10px;}
.gx-accueil .resto-header-main.bt-header-main .resto-header-center, .gx-accueil .resto-header-main.bt-header-main .resto-header-logo-right{grid-column: auto;
        justify-self: center;
        width: 100%;
        flex-direction: column;
        align-items: center;
        justify-content: center;}
.gx-accueil .bt-body{padding: 40px 20px;}
.gx-accueil .bt-stats-grid{grid-template-columns: repeat(2, 1fr);}
.gx-accueil .bt-card{padding: 24px;}
.gx-accueil .bt-vthumb{width: 100px;}
.gx-accueil .bt-vthumb img{height: 56px;}}
@media (max-width: 480px){.gx-accueil .bt-stats-grid{grid-template-columns: 1fr 1fr;}
.gx-accueil .bt-card-top{flex-direction: column;}
.gx-accueil .bt-icon-box{flex-shrink: 0;
    width: 56px;
    height: 56px;
    background: rgba(26, 58, 143, 0.07);
    color: #1a3a8f;
    border-radius: 14px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 22px;}}
.gx-accueil .multilingual-v2-section{background: #fff;
    font-family: Montserrat, sans-serif;}
.gx-accueil .mlg-container{max-width: 1200px;
    margin: 0 auto;
    padding: 48px 40px;}
.gx-accueil .lang-grid-container{display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 25px;
    margin-top: 40px;}
.gx-accueil .lang-card{background: #fff;
    border: 1px solid #eee;
    border-radius: 20px;
    padding: 35px 20px;
    text-align: center;
    position: relative;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    box-shadow: 0 4px 15px rgba(0,0,0,0.02);}
.gx-accueil .lang-card:hover{transform: translateY(-10px);
    border-color: #008080;
    box-shadow: 0 15px 35px rgba(0, 0, 0, 0.08);}
.gx-accueil .lang-status-badge{position: absolute;
    top: 15px;
    right: 15px;
    padding: 4px 12px;
    border-radius: 50px;
    font-size: 10px;
    font-weight: 800;
    color: #fff;
    text-transform: uppercase;
    letter-spacing: 0.5px;}
.gx-accueil .lang-status-badge.principale{background: #8e44ad;}
.gx-accueil .lang-status-badge.populaire{background: #1abc9c;}
.gx-accueil .lang-status-badge.nouveau{background: #e67e22;}
.gx-accueil .lang-status-badge.prochaine{background: #795548;}
.gx-accueil .flag-circle{width: 90px;
    height: 90px;
    margin: 0 auto 25px;
    border-radius: 50%;
    overflow: hidden;
    box-shadow: 0 8px 25px rgba(0,0,0,0.1);
    border: 3px solid #fff;
    background: #f8f9fa;
    display: flex;
    align-items: center;
    justify-content: center;}
.gx-accueil .flag-circle img{width: 100%;
    height: 100%;
    object-fit: cover;}
.gx-accueil .lang-card h3{font-size: 22px;
    font-weight: 800;
    color: #333;
    margin-bottom: 15px;}
.gx-accueil .lang-card p{font-size: 13px;
    color: #777;
    line-height: 1.6;
    margin-bottom: 25px;
    min-height: 48px;}
.gx-accueil .lang-select-btn{display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    width: 100%;
    padding: 12px 20px;
    border: 2px solid #008080;
    border-radius: 50px;
    background: transparent;
    color: #008080;
    font-weight: 700;
    font-size: 14px;
    cursor: pointer;
    transition: all 0.3s ease;}
.gx-accueil .lang-select-btn:hover{background: #008080;
    color: #fff;}
.gx-accueil .lang-select-btn.selected{background: #eafffa;
    color: #008080;
    border-color: #008080;}
.gx-accueil .lang-select-btn.selected i{background: #008080;
    color: #fff;
    width: 18px;
    height: 18px;
    border-radius: 50%;
    font-size: 10px;
    display: flex;
    align-items: center;
    justify-content: center;}
.gx-accueil .enterprise-footer-note{margin-top: 50px;
    padding-top: 30px;
    border-top: 1px solid #f0f0f0;
    text-align: center;}
.gx-accueil .note-box{display: inline-flex;
    align-items: center;
    gap: 15px;
    background: #f8fcfd;
    padding: 15px 40px;
    border-radius: 50px;
    border: 1px solid #e0f2f1;
    font-weight: 700;
    color: #006064;}
.gx-accueil .note-box i{font-size: 20px; color: #00838f;}
@media (max-width: 1200px){.gx-accueil .lang-grid-container{grid-template-columns: repeat(2, 1fr);}}
@media (max-width: 768px){.gx-accueil .mlg-container{padding: 32px 20px;}}
@media (max-width: 600px){.gx-accueil .lang-grid-container{grid-template-columns: 1fr;}
.gx-accueil .mlg-container{padding: 24px 14px;}}
.gx-accueil .news-v2-section{background: #fff;
    font-family: Montserrat, sans-serif;}
.gx-accueil .news-container{max-width: 1200px;
    margin: 0 auto;
    padding: 48px 40px;}
.gx-accueil .news-explore-divider{margin: 56px 0 32px;
    text-align: center;}
.gx-accueil .news-explore-divider h2{font-size: 22px;
    font-weight: 800;
    color: #1a3a8f;
    margin-bottom: 8px;}
.gx-accueil .news-explore-divider p{font-size: 14px;
    color: #94a3b8;}
.gx-accueil .news-articles-grid{display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 30px;
    margin-top: 40px;}
.gx-accueil .news-article-card{background: #fff;
    border: 1px solid #eee;
    border-radius: 20px;
    overflow: hidden;
    transition: all 0.3s ease;
    display: flex;
    flex-direction: column;}
.gx-accueil .news-article-card:hover{transform: translateY(-10px);
    border-color: #d32f2f;
    box-shadow: 0 15px 35px rgba(0,0,0,0.08);}
.gx-accueil .news-article-image{height: 200px;
    background: #f8f9fa;
    position: relative;
    overflow: hidden;}
.gx-accueil .news-article-image img{width: 100%;
    height: 100%;
    object-fit: cover;}
.gx-accueil .news-region-badge{position: absolute;
    bottom: 0;
    left: 0;
    background: #1a3a8f;
    color: #fff;
    padding: 6px 15px;
    font-size: 11px;
    font-weight: 800;
    text-transform: uppercase;
    border-top-right-radius: 12px;}
.gx-accueil .news-article-body{padding: 25px;
    flex-grow: 1;
    display: flex;
    flex-direction: column;}
.gx-accueil .news-category{font-size: 11px;
    font-weight: 800;
    color: #d32f2f;
    text-transform: uppercase;
    margin-bottom: 10px;
    letter-spacing: 1px;
    display: flex;
    align-items: center;
    gap: 8px;}
.gx-accueil .news-article-body h3{font-size: 19px;
    font-weight: 800;
    line-height: 1.4;
    margin-bottom: 15px;
    color: #0a1628;}
.gx-accueil .news-article-body p{font-size: 14px;
    color: #666;
    line-height: 1.6;
    margin-bottom: 20px;
    flex-grow: 1;}
.gx-accueil .news-article-footer{display: flex;
    justify-content: space-between;
    align-items: center;
    padding-top: 20px;
    border-top: 1px solid #f0f0f0;}
.gx-accueil .news-time{font-size: 12px;
    color: #aaa;
    font-weight: 600;}
.gx-accueil .news-read-btn{color: #1a3a8f;
    font-weight: 800;
    font-size: 13px;
    text-transform: uppercase;
    text-decoration: none;
    display: flex;
    align-items: center;
    gap: 5px;}
.gx-accueil .news-read-btn:hover{color: #d32f2f;}
.gx-accueil .news-region-grid{display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 20px;}
.gx-accueil .region-explore-card{position: relative;
    height: 250px;
    border-radius: 20px;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    text-align: center;
    border: none;
    background-size: cover;
    background-position: center;
    transition: transform 0.4s cubic-bezier(0.4, 0, 0.2, 1);
    color: #fff;
    padding: 30px;}
.gx-accueil .region-explore-card::before{content: '';
    position: absolute;
    top: 0; left: 0; right: 0; bottom: 0;
    background: linear-gradient(to bottom, rgba(10, 22, 40, 0.2) 0%, rgba(10, 22, 40, 0.85) 100%);
    transition: background 0.3s ease;
    z-index: 1;}
.gx-accueil .region-explore-card:hover{transform: translateY(-8px) scale(1.02);}
.gx-accueil .region-explore-card:hover::before{background: linear-gradient(to bottom, rgba(211, 47, 47, 0.2) 0%, rgba(10, 22, 40, 0.95) 100%);}
.gx-accueil .region-explore-card h4{font-size: 24px;
    font-weight: 800;
    color: #fff;
    margin-bottom: 10px;
    z-index: 2;
    text-transform: uppercase;
    letter-spacing: 2px;}
.gx-accueil .region-count{display: inline-block;
    font-size: 11px;
    font-weight: 700;
    color: #fff;
    margin-bottom: 25px;
    background: rgba(255, 255, 255, 0.15);
    padding: 8px 16px;
    border-radius: 50px;
    z-index: 2;
    backdrop-filter: blur(5px);
    border: 1px solid rgba(255, 255, 255, 0.2);}
.gx-accueil .region-explore-btn{width: auto;
    min-width: 130px;
    padding: 12px 25px;
    border: 2px solid #fff;
    color: #fff;
    background: transparent;
    border-radius: 50px;
    font-weight: 800;
    font-size: 11px;
    text-transform: uppercase;
    cursor: pointer;
    transition: all 0.3s ease;
    z-index: 2;}
.gx-accueil .region-explore-btn:hover{background: #fff;
    color: #1a3a8f;}
@media (max-width: 1024px){.gx-accueil .news-articles-grid{grid-template-columns: repeat(2, 1fr);}
.gx-accueil .news-region-grid{grid-template-columns: repeat(2, 1fr);}}
@media (max-width: 768px){.gx-accueil .news-articles-grid{grid-template-columns: 1fr;}
.gx-accueil .news-container{padding: 32px 20px;}}
@media (max-width: 480px){.gx-accueil .news-region-grid{grid-template-columns: 1fr;}
.gx-accueil .news-container{padding: 24px 14px;}}
.gx-accueil .web-services-v2-section{background: #fff;
    font-family: Montserrat, sans-serif;}
.gx-accueil .ws-container{max-width: 1200px;
    margin: 0 auto;
    padding: 48px 40px;}
.gx-accueil .ws-cta-final{margin-top: 80px;
    text-align: center;
    background: #1a3a8f;
    padding: 60px 40px;
    border-radius: 24px;
    color: #fff;}
.gx-accueil .ws-cta-title{font-size: 28px;
    font-weight: 800;
    margin-bottom: 20px;
    color: #fff;}
.gx-accueil .ws-cta-desc{font-size: 16px;
    opacity: 0.9;
    max-width: 700px;
    margin: 0 auto 40px;
    line-height: 1.7;}
.gx-accueil .ws-cta-btn{display: inline-flex;
    align-items: center;
    gap: 10px;
    background: #fff;
    color: #1a3a8f;
    padding: 14px 32px;
    border-radius: 8px;
    font-size: 14px;
    font-weight: 800;
    text-decoration: none;
    transition: all 0.25s ease;
    letter-spacing: 0.5px;}
.gx-accueil .ws-cta-btn:hover{background: #eff6ff;
    transform: translateY(-2px);
    box-shadow: 0 8px 24px rgba(0,0,0,0.15);}
.gx-accueil .web-badge-pro{display: inline-block;
    background: rgba(26, 58, 143, 0.05);
    color: #1a3a8f;
    padding: 8px 20px;
    border-radius: 50px;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 1.5px;
    margin-bottom: 25px;
    border: 1px solid rgba(26, 58, 143, 0.1);}
.gx-accueil .web-carousels-grid{display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 30px;
    margin-top: 50px;}
.gx-accueil .web-carousel-box{background: #fcfcfc;
    border: 1px solid #eee;
    border-radius: 24px;
    padding: 30px;
    transition: all 0.4s ease;
    position: relative;
    display: flex;
    flex-direction: column;
    min-height: 500px;}
.gx-accueil .web-carousel-box:hover{border-color: #1a3a8f;
    box-shadow: 0 20px 50px rgba(0,0,0,0.05);
    transform: translateY(-5px);}
.gx-accueil .web-carousel-header{display: flex;
    align-items: center;
    gap: 15px;
    margin-bottom: 25px;
    border-bottom: 1px solid #eee;
    padding-bottom: 20px;}
.gx-accueil .web-carousel-icon{width: 50px;
    height: 50px;
    background: #1a3a8f;
    color: #fff;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 20px;}
.gx-accueil .web-carousel-header h2{font-size: 18px;
    font-weight: 800;
    color: #0a1628;
    line-height: 1.2;}
.gx-accueil .web-carousel-header h2 span{display: block;
    font-size: 11px;
    font-weight: 500;
    color: #888;
    margin-top: 4px;}
.gx-accueil .web-carousel-content{position: relative;
    flex-grow: 1;
    overflow: hidden;}
.gx-accueil .web-inner-item{text-align: center;
    padding: 20px 10px;}
.gx-accueil .web-item-circle{width: 100px;
    height: 100px;
    margin: 0 auto 20px;
    border-radius: 50%;
    border: 4px solid #fff;
    box-shadow: 0 10px 25px rgba(0,0,0,0.1);
    background: #fff;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;}
.gx-accueil .web-item-circle img{width: 100%; height: 100%; object-fit: cover;}
.gx-accueil .web-item-circle i{font-size: 40px; color: #1a3a8f;}
.gx-accueil .web-item-name{font-size: 20px; font-weight: 800; color: #1a3a8f; margin-bottom: 8px;}
.gx-accueil .web-item-sub{font-size: 13px; font-weight: 600; color: #666; margin-bottom: 15px;}
.gx-accueil .web-item-tag{display: inline-block;
    padding: 5px 15px;
    background: #f0f0f0;
    border-radius: 50px;
    font-size: 11px;
    font-weight: 700;
    color: #333;
    margin-bottom: 20px;}
.gx-accueil .web-editor-block{display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 60px;
    margin-top: 100px;
    align-items: center;
    background: #f8fbfd;
    padding: 60px;
    border-radius: 30px;
    border: 1px solid #e0f2f1;}
.gx-accueil .web-editor-text h3{font-size: 28px;
    font-weight: 900;
    color: #1a3a8f;
    margin-bottom: 25px;
    display: flex;
    align-items: center;
    gap: 15px;}
.gx-accueil .ai-pill{background: #d32f2f;
    color: #fff;
    font-size: 10px;
    padding: 4px 12px;
    border-radius: 50px;
    letter-spacing: 1px;}
.gx-accueil .web-editor-text p{font-size: 15px;
    color: #555;
    line-height: 1.8;
    margin-bottom: 25px;}
.gx-accueil .web-editor-features{display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 20px;}
.gx-accueil .web-ef-unit{display: flex;
    align-items: center;
    gap: 12px;
    background: #fff;
    padding: 15px;
    border-radius: 12px;
    font-size: 13px;
    font-weight: 700;
    color: #333;
    box-shadow: 0 4px 10px rgba(0,0,0,0.02);}
.gx-accueil .web-ef-unit i{color: #1a3a8f;}
.gx-accueil .web-browser-ui{background: #fff;
    border-radius: 20px;
    box-shadow: 0 30px 60px rgba(0,0,0,0.1);
    overflow: hidden;}
.gx-accueil .ui-head{background: #f1f3f4;
    padding: 12px 20px;
    display: flex;
    gap: 8px;
    align-items: center;}
.gx-accueil .ui-dot{width: 10px; height: 10px; border-radius: 50%;}
.gx-accueil .red{background: #ff5f56;}
.gx-accueil .yellow{background: #ffbd2e;}
.gx-accueil .green{background: #27c93f;}
.gx-accueil .ui-url{background: #fff;
    flex-grow: 1;
    margin-left: 15px;
    border-radius: 4px;
    height: 24px;
    font-size: 10px;
    padding: 0 15px;
    display: flex;
    align-items: center;
    color: #aaa;}
.gx-accueil .ui-content{padding: 40px; text-align: center;}
.gx-accueil .web-services-grid{display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 25px;
    margin-top: 80px;}
.gx-accueil .web-service-card{position: relative;
    height: 300px;
    border-radius: 20px;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    padding: 30px;
    background-size: cover;
    background-position: center;
    border: none;
    transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
    color: #fff;
    cursor: pointer;}
.gx-accueil .web-service-card::before{content: '';
    position: absolute;
    top: 0; left: 0; right: 0; bottom: 0;
    background: linear-gradient(to bottom, rgba(10, 22, 40, 0.1) 0%, rgba(10, 22, 40, 0.9) 100%);
    z-index: 1;}
.gx-accueil .web-service-card:hover{transform: translateY(-10px) scale(1.02);}
.gx-accueil .web-service-card:hover::before{background: linear-gradient(to bottom, rgba(211, 47, 47, 0.2) 0%, rgba(10, 22, 40, 0.95) 100%);}
.gx-accueil .web-service-card i{position: absolute;
    top: 25px;
    left: 25px;
    font-size: 28px;
    color: rgba(255, 255, 255, 0.9);
    z-index: 2;
    background: rgba(10, 22, 40, 0.4);
    width: 50px;
    height: 50px;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    backdrop-filter: blur(5px);}
.gx-accueil .web-service-card h4{position: relative;
    z-index: 2;
    font-size: 18px;
    font-weight: 800;
    color: #fff;
    margin-bottom: 10px;
    text-transform: uppercase;
    letter-spacing: 1px;}
.gx-accueil .web-service-card p{position: relative;
    z-index: 2;
    font-size: 13px;
    color: rgba(255, 255, 255, 0.8);
    line-height: 1.5;
    margin: 0;}
.gx-accueil .web-service-card .tech-badge{position: absolute;
    top: 25px;
    right: 25px;
    background: #d32f2f;
    color: #fff;
    padding: 4px 10px;
    border-radius: 4px;
    font-size: 9px;
    font-weight: 800;
    z-index: 2;
    letter-spacing: 0.5px;}
@media (max-width: 1100px){.gx-accueil .web-carousels-grid{grid-template-columns: repeat(2, 1fr);
        gap: 20px;}}
@media (max-width: 991px){.gx-accueil .ws-container{padding: 36px 24px;}
.gx-accueil .web-carousels-grid{grid-template-columns: 1fr;}
.gx-accueil .web-carousel-box{min-height: auto;}
.gx-accueil .web-editor-block{grid-template-columns: 1fr;
        gap: 40px;
        padding: 40px 25px;}
.gx-accueil .web-editor-text{text-align: center;}
.gx-accueil .web-editor-text h3{justify-content: center;}
.gx-accueil .web-editor-features{grid-template-columns: 1fr;
        max-width: 400px;
        margin: 0 auto;}
.gx-accueil .web-services-grid{grid-template-columns: repeat(2, 1fr);}}
@media (max-width: 768px){.gx-accueil .ws-container{padding: 28px 16px;}
.gx-accueil .ws-cta-final{padding: 40px 20px;}
.gx-accueil .ws-cta-title{font-size: 20px;}
.gx-accueil .web-editor-text h3{font-size: 20px;
        flex-direction: column;
        gap: 10px;}
.gx-accueil .web-service-card{padding: 20px;}
.gx-accueil .web-service-card i{font-size: 24px;}
.gx-accueil .web-service-card h4{font-size: 14px;}
.gx-accueil .web-service-card p{font-size: 12px;}}
@media (max-width: 480px){.gx-accueil .web-services-grid{grid-template-columns: 1fr;}
.gx-accueil .web-item-name{font-size: 18px;}
.gx-accueil .ui-content h4{font-size: 18px !important;}
.gx-accueil .design-bosse-more-btn{width: 100%;
        justify-content: center;
        padding: 15px !important;}}
.gx-accueil .agency-v2-section{background: #fff;
    font-family: Montserrat, sans-serif;}
.gx-accueil .agency-v2-container{max-width: 1200px;
    margin: 0 auto;
    padding: 48px 40px;}
.gx-accueil .agency-header-more-btn{display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 10px 22px;
    border: 2px solid #3b82f6;
    border-radius: 8px;
    background: transparent;
    color: #3b82f6;
    font-size: 13px;
    font-weight: 700;
    text-decoration: none;
    transition: all 0.25s ease;
    margin-left: 6px;
    white-space: nowrap;}
.gx-accueil .agency-header-more-btn:hover{background: #3b82f6;
    color: #fff;
    transform: translateY(-1px);
    box-shadow: 0 6px 16px rgba(59,130,246,0.3);}
.gx-accueil .agency-v2-content{display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 40px;
    align-items: start;}
.gx-accueil .agency-v2-info-card{background: #f8fafc; 
    border-radius: 24px;
    padding: 40px;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.05);
    border: 1px solid #f1f5f9;}
.gx-accueil .agency-v2-brand{display: flex;
    align-items: center;
    gap: 20px;
    margin-bottom: 30px;}
.gx-accueil .agency-v2-logo-box{width: 64px;
    height: 64px;
    background: linear-gradient(135deg, #1a3a8f 0%, #2d5cc2 100%);
    border-radius: 16px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #ffffff;
    font-size: 28px;
    box-shadow: 0 8px 16px rgba(26, 58, 143, 0.2);}
.gx-accueil .agency-v2-brand-text h2{font-size: 24px;
    font-weight: 700;
    color: #1e293b;
    margin: 0;}
.gx-accueil .agency-v2-brand-text p{font-size: 14px;
    color: #64748b;
    margin: 4px 0 0 0;}
.gx-accueil .agency-v2-description{margin-bottom: 30px;}
.gx-accueil .agency-v2-description h3{font-size: 20px;
    font-weight: 700;
    color: #1e293b;
    margin-bottom: 15px;}
.gx-accueil .agency-v2-description p{font-size: 16px;
    color: #475569;
    line-height: 1.7;
    margin-bottom: 15px;}
.gx-accueil .agency-v2-features{list-style: none;
    padding: 0;
    margin: 0;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 15px;}
.gx-accueil .agency-v2-features li{display: flex;
    align-items: center;
    gap: 10px;
    font-size: 14px;
    color: #334155;
    font-weight: 600;}
.gx-accueil .agency-v2-features li i{color: #0ea5e9;
    font-size: 16px;}
.gx-accueil .agency-v2-form-card{background: #f8fafc; 
    border-radius: 24px;
    padding: 40px;
    box-shadow: 0 10px 25px rgba(15, 23, 42, 0.05);
    position: relative;
    border: 1px solid #f1f5f9;}
.gx-accueil .agency-v2-form-title{font-size: 24px;
    font-weight: 700;
    color: #0f172a;
    margin-bottom: 30px;
    text-align: center;}
.gx-accueil .agency-v2-form-grid{display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 20px;
    margin-bottom: 20px;}
.gx-accueil .agency-v2-input-group{display: flex;
    flex-direction: column;
    gap: 8px;}
.gx-accueil .agency-v2-input-group.full{grid-column: span 2;}
.gx-accueil .agency-v2-input-group label{font-size: 14px;
    font-weight: 600;
    color: #475569;}
.gx-accueil .agency-v2-input-group input, .gx-accueil .agency-v2-input-group select{padding: 12px 16px;
    border: 1px solid #e2e8f0;
    border-radius: 10px;
    font-size: 15px;
    color: #1e293b;
    transition: all 0.3s ease;
    background-color: #ffffff;}
.gx-accueil .agency-v2-input-group input:focus, .gx-accueil .agency-v2-input-group select:focus{outline: none;
    border-color: #1a3a8f;
    background-color: #ffffff;
    box-shadow: 0 0 0 4px rgba(26, 58, 143, 0.1);}
.gx-accueil .agency-v2-submit-btn{width: 100%;
    padding: 16px;
    background: linear-gradient(135deg, #1a3a8f 0%, #2d5cc2 100%);
    color: #ffffff;
    border: none;
    border-radius: 12px;
    font-size: 16px;
    font-weight: 700;
    cursor: pointer;
    transition: all 0.3s ease;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    box-shadow: 0 10px 20px rgba(26, 58, 143, 0.2);}
.gx-accueil .agency-v2-submit-btn:hover{transform: translateY(-2px);
    box-shadow: 0 12px 24px rgba(26, 58, 143, 0.3);
    filter: brightness(1.1);}
.gx-accueil .agency-v2-footer-content{margin-top: 40px;}
.gx-accueil .agency-v2-plans-grid{display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
    margin-bottom: 40px;}
.gx-accueil .agency-v2-plan-item{background: #ffffff;
    border: 1px solid #e2e8f0;
    padding: 20px;
    border-radius: 16px;
    text-align: center;
    transition: all 0.3s ease;}
.gx-accueil .agency-v2-plan-item:hover{background: #ffffff;
    border-color: #1a3a8f;
    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.05);
    transform: translateY(-4px);}
.gx-accueil .agency-v2-plan-icon{width: 40px;
    height: 40px;
    background: #f8fafc;
    border-radius: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 15px;
    color: #1a3a8f;
    font-size: 18px;
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.05);}
.gx-accueil .agency-v2-plan-item h4{font-size: 16px;
    font-weight: 700;
    color: #1e293b;
    margin-bottom: 8px;}
.gx-accueil .agency-v2-plan-item p{font-size: 13px;
    color: #64748b;
    margin: 0;}
.gx-accueil .agency-v2-stats{display: flex;
    justify-content: center;
    gap: 0;
    margin-top: 24px;
    border: 1px solid #e2e8f0;
    border-radius: 16px;
    overflow: hidden;}
.gx-accueil .agency-v2-stat-unit{flex: 1;
    text-align: center;
    padding: 24px 20px;
    border-right: 1px solid #e2e8f0;}
.gx-accueil .agency-v2-stat-unit:last-child{border-right: none;}
.gx-accueil .agency-v2-stat-value{display: block;
    font-size: 32px;
    font-weight: 900;
    color: #1e293b;
    margin-bottom: 4px;
    line-height: 1;}
.gx-accueil .agency-v2-stat-label{font-size: 12px;
    color: #64748b;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.5px;}
@media (max-width: 1024px){.gx-accueil .agency-v2-content{grid-template-columns: 1fr;}}
@media (max-width: 768px){.gx-accueil .agency-v2-container{padding: 32px 20px;}
.gx-accueil .agency-header-more-btn{display: none;}
.gx-accueil .agency-v2-info-card, .gx-accueil .agency-v2-form-card{padding: 25px 20px;
        border-radius: 20px;}
.gx-accueil .agency-v2-title{font-size: 26px;}
.gx-accueil .agency-v2-subtitle{font-size: 15px;}
.gx-accueil .agency-v2-features{grid-template-columns: 1fr;}
.gx-accueil .agency-v2-form-grid{grid-template-columns: 1fr;}
.gx-accueil .agency-v2-input-group.full{grid-column: span 1;}
.gx-accueil .agency-v2-plans-grid{grid-template-columns: 1fr;}
.gx-accueil .agency-v2-stats{flex-direction: row;
        justify-content: space-around;
        gap: 20px;
        padding: 20px;}}
@media (max-width: 480px){.gx-accueil .agency-v2-container{padding: 24px 14px;}
.gx-accueil .agency-v2-info-card, .gx-accueil .agency-v2-form-card{padding: 20px 15px;}
.gx-accueil .agency-v2-title{font-size: 22px;}
.gx-accueil .agency-v2-stats{flex-direction: column;
        gap: 15px;}
.gx-accueil .agency-v2-stat-value{font-size: 28px;}
.gx-accueil .agency-v2-brand{flex-direction: column;
        text-align: center;
        gap: 15px;}
.gx-accueil .agency-v2-logo-box{margin: 0 auto;}}
.gx-accueil{--pm-blue:       #3b82f6;
    --pm-blue-dark:  #1d4ed8;
    --pm-blue-light: #eff6ff;
    --pm-navy:       #0a1628;
    --pm-navy-mid:   #1a3a8f;
    --pm-gray-bg:    #f8fafc;
    --pm-border:     #e2e8f0;
    --pm-text:       #1e293b;
    --pm-muted:      #64748b;}
@keyframes pm-blink{
    0%, 100% { opacity: 1; }
    50%       { opacity: 0.3; }
}
@media (max-width: 1100px){}
@media (max-width: 900px){}
@media (max-width: 640px){}
@media (max-width: 480px){}
.gx-accueil .immo-v2-section{background: #fff;
    font-family: Montserrat, sans-serif;}
.gx-accueil .immo-v2-container{max-width: 1200px;
    margin: 0 auto;
    padding: 48px 40px;}
.gx-accueil .immo-header-more-btn{display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 10px 22px;
    border: 2px solid #3b82f6;
    border-radius: 8px;
    background: transparent;
    color: #3b82f6;
    font-size: 13px;
    font-weight: 700;
    text-decoration: none;
    transition: all 0.25s ease;
    margin-left: 6px;
    white-space: nowrap;}
.gx-accueil .immo-header-more-btn:hover{background: #3b82f6;
    color: #fff;
    box-shadow: 0 6px 16px rgba(59,130,246,0.3);}
.gx-accueil .immo-v2-grid{display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 24px;
    margin-bottom: 60px;}
.gx-accueil .immo-v2-card{background: #ffffff;
    border-radius: 30px;
    overflow: hidden;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.05);
    transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
    border: 1px solid #f1f5f9;
    display: flex;
    flex-direction: column;
    height: 100%;}
.gx-accueil .immo-v2-card:hover{transform: translateY(-12px);
    box-shadow: 0 25px 50px rgba(15, 23, 42, 0.1);
    border-color: #cbd5e1;}
.gx-accueil .immo-v2-card-img{position: relative;
    height: 260px;
    overflow: hidden;}
.gx-accueil .immo-v2-card-img img{width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.8s ease;}
.gx-accueil .immo-v2-card:hover .immo-v2-card-img img{transform: scale(1.1);}
.gx-accueil .immo-v2-img-badge{position: absolute;
    top: 20px;
    left: 20px;
    background: rgba(255, 255, 255, 0.95);
    backdrop-filter: blur(8px);
    padding: 8px 18px;
    border-radius: 30px;
    font-weight: 700;
    font-size: 12px;
    color: #1a3a8f;
    box-shadow: 0 4px 12px rgba(0,0,0,0.1);
    z-index: 2;}
.gx-accueil .immo-v2-card-content{padding: 30px;
    flex: 1;
    display: flex;
    flex-direction: column;}
.gx-accueil .immo-v2-card-title{font-size: 24px;
    font-weight: 700;
    margin-bottom: 10px;
    color: #1e293b;}
.gx-accueil .immo-v2-location{display: flex;
    align-items: center;
    gap: 8px;
    color: #64748b;
    font-weight: 500;
    margin-bottom: 20px;
    font-size: 14px;}
.gx-accueil .immo-v2-location i{color: #ef4444;}
.gx-accueil .immo-v2-features{display: flex;
    flex-wrap: wrap;
    gap: 20px;
    margin-bottom: 25px;
    padding: 15px 0;
    border-top: 1px solid #f1f5f9;
    border-bottom: 1px solid #f1f5f9;}
.gx-accueil .immo-v2-feature-item{display: flex;
    align-items: center;
    gap: 8px;
    font-weight: 600;
    color: #475569;
    font-size: 13px;}
.gx-accueil .immo-v2-feature-item i{color: #1a3a8f;
    font-size: 16px;}
.gx-accueil .immo-v2-price{font-size: 20px;
    font-weight: 800;
    color: #1a3a8f;
    margin-bottom: 12px;
    letter-spacing: -0.3px;}
.gx-accueil .immo-v2-btn{display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    width: 100%;
    margin-top: auto;
    background: #0f172a;
    color: #ffffff;
    padding: 12px 24px;
    border-radius: 50px;
    font-weight: 700;
    font-size: 14px;
    text-decoration: none;
    transition: all 0.3s ease;}
.gx-accueil .immo-v2-btn:hover{background: #1a3a8f;
    transform: scale(1.05);}
.gx-accueil .immo-v2-agent-cta{background: #f8fafc;
    border: 1px solid #e2e8f0;
    border-radius: 35px;
    padding: 30px 40px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 30px;
    margin-top: 30px;}
.gx-accueil .immo-v2-agent-info{display: flex;
    align-items: center;
    gap: 25px;}
.gx-accueil .immo-v2-agent-img{width: 80px;
    height: 80px;
    border-radius: 50%;
    object-fit: cover;
    border: 4px solid #ffffff;
    box-shadow: 0 10px 20px rgba(0,0,0,0.05);}
.gx-accueil .immo-v2-agent-details h4{font-size: 22px;
    font-weight: 700;
    margin-bottom: 4px;
    color: #0f172a;}
.gx-accueil .immo-v2-agent-details p{font-size: 15px;
    color: #64748b;
    margin: 0;}
.gx-accueil .immo-v2-contact-btn{background: linear-gradient(135deg, #1a3a8f 0%, #2d5cc2 100%);
    color: #ffffff;
    padding: 16px 40px;
    border-radius: 50px;
    text-decoration: none;
    font-weight: 700;
    font-size: 16px;
    transition: all 0.3s ease;
    box-shadow: 0 10px 20px rgba(26, 58, 143, 0.2);}
.gx-accueil .immo-v2-contact-btn:hover{transform: translateY(-3px);
    box-shadow: 0 15px 30px rgba(26, 58, 143, 0.3);}
@media (max-width: 1200px){.gx-accueil .immo-v2-grid{grid-template-columns: repeat(3, 1fr);}}
@media (max-width: 1024px){.gx-accueil .immo-v2-container{padding: 40px 24px;}
.gx-accueil .immo-v2-grid{grid-template-columns: repeat(2, 1fr);
        gap: 22px;
        margin-bottom: 40px;}
.gx-accueil .immo-v2-card{border-radius: 22px;}
.gx-accueil .immo-v2-card-img{height: 220px;}
.gx-accueil .immo-v2-card-content{padding: 22px;}
.gx-accueil .immo-v2-card-title{font-size: 20px;}}
@media (max-width: 768px){.gx-accueil .immo-v2-container{padding: 28px 16px;}
.gx-accueil .immo-header-more-btn{display: none;}
.gx-accueil .immo-v2-grid{grid-template-columns: repeat(2, 1fr);
        gap: 16px;
        margin-bottom: 32px;}
.gx-accueil .immo-v2-card{border-radius: 18px;}
.gx-accueil .immo-v2-card-img{height: 170px;}
.gx-accueil .immo-v2-img-badge{top: 12px;
        left: 12px;
        padding: 6px 12px;
        font-size: 10px;}
.gx-accueil .immo-v2-card-content{padding: 16px;}
.gx-accueil .immo-v2-price{font-size: 17px;
        margin-bottom: 8px;}
.gx-accueil .immo-v2-card-title{font-size: 17px;
        margin-bottom: 6px;}
.gx-accueil .immo-v2-location{font-size: 12px;
        margin-bottom: 12px;}
.gx-accueil .immo-v2-features{gap: 10px;
        padding: 10px 0;
        margin-bottom: 16px;}
.gx-accueil .immo-v2-feature-item{font-size: 11px;
        gap: 5px;}
.gx-accueil .immo-v2-feature-item i{font-size: 13px;}
.gx-accueil .immo-v2-btn{padding: 10px 16px;
        font-size: 12px;
        gap: 6px;}
.gx-accueil .immo-v2-agent-cta{flex-direction: column;
        text-align: center;
        padding: 24px 18px;
        border-radius: 20px;
        gap: 20px;}
.gx-accueil .immo-v2-agent-info{flex-direction: column;
        gap: 14px;
        width: 100%;}
.gx-accueil .immo-v2-agent-img{width: 82px;
        height: 82px;}
.gx-accueil .immo-v2-agent-details h4{font-size: 18px;}
.gx-accueil .immo-v2-agent-details p{font-size: 13px;}
.gx-accueil .immo-v2-contact-btn{width: 100%;
        text-align: center;
        padding: 13px 20px;
        font-size: 14px;}}
@media (max-width: 560px){.gx-accueil .immo-v2-container{padding: 22px 12px;}
.gx-accueil .immo-v2-grid{grid-template-columns: 1fr;
        gap: 18px;}
.gx-accueil .immo-v2-card{border-radius: 16px;}
.gx-accueil .immo-v2-card-img{height: 200px;}
.gx-accueil .immo-v2-card-content{padding: 18px;}
.gx-accueil .immo-v2-card-title{font-size: 19px;}
.gx-accueil .immo-v2-price{font-size: 19px;}
.gx-accueil .immo-v2-features{gap: 14px;}
.gx-accueil .immo-v2-feature-item{font-size: 12px;}
.gx-accueil .immo-v2-btn{font-size: 13px;
        padding: 11px 18px;}}
@media (max-width: 380px){.gx-accueil .immo-v2-container{padding: 18px 10px;}
.gx-accueil .immo-v2-card-img{height: 180px;}
.gx-accueil .immo-v2-card-content{padding: 14px;}
.gx-accueil .immo-v2-features{gap: 10px;}
.gx-accueil .immo-v2-agent-img{width: 72px;
        height: 72px;}}
.gx-accueil ﻿


.resto-service-block, .gx-accueil .resto-service-block *, .gx-accueil .resto-service-block *::before, .gx-accueil .resto-service-block *::after{font-family: 'Montserrat', sans-serif;}
.gx-accueil .resto-service-block .fas, .gx-accueil .resto-service-block .fa-solid{font-family: "Font Awesome 6 Free" !important;
    font-weight: 900 !important;}
.gx-accueil .resto-service-block .fas::before, .gx-accueil .resto-service-block .fa-solid::before{font-family: "Font Awesome 6 Free" !important;
    font-weight: 900 !important;}
.gx-accueil .resto-service-block .far, .gx-accueil .resto-service-block .fa-regular{font-family: "Font Awesome 6 Free" !important;
    font-weight: 400 !important;}
.gx-accueil .resto-service-block .far::before, .gx-accueil .resto-service-block .fa-regular::before{font-family: "Font Awesome 6 Free" !important;
    font-weight: 400 !important;}
.gx-accueil .resto-service-block .fab, .gx-accueil .resto-service-block .fa-brands{font-family: "Font Awesome 6 Brands" !important;
    font-weight: 400 !important;}
.gx-accueil .resto-service-block .fab::before, .gx-accueil .resto-service-block .fa-brands::before{font-family: "Font Awesome 6 Brands" !important;
    font-weight: 400 !important;}
.gx-accueil .resto-service-block{width: calc(100% - 64px);
    max-width: 1600px;
    margin: 32px auto;
    font-family: 'Montserrat', sans-serif;
    border-radius: 14px;
    overflow: hidden;
    box-shadow: 0 8px 40px rgba(0,0,0,0.1);}
.gx-accueil .resto-header-block{width: 100%;
    font-family: 'Montserrat', sans-serif;
    background: #f8f8f8;
    position: relative;
    overflow: hidden;}
.gx-accueil .resto-header-block::before{content: none;}
.gx-accueil .resto-header-main{position: relative;
    z-index: 1;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    align-items: center;
    gap: 12px;
    padding: 18px 24px 16px;
    min-height: 100px;}
.gx-accueil .resto-header-logo-left, .gx-accueil .resto-header-logo-right{display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 8px;}
.gx-accueil .resto-header-logo-left .logo-wrapper, .gx-accueil .resto-header-logo-right .logo-wrapper{width: 44px;
    height: 44px;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.9);
    border: 2px solid rgba(30,136,229,0.25);
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    box-shadow: 0 2px 8px rgba(0,0,0,0.1);
    transition: transform 0.3s ease, box-shadow 0.3s ease;
    text-decoration: none;
    flex-shrink: 0;}
.gx-accueil .resto-header-logo-left .logo-wrapper:hover, .gx-accueil .resto-header-logo-right .logo-wrapper:hover{transform: scale(1.05);
    box-shadow: 0 6px 28px rgba(0,0,0,0.4);}
.gx-accueil .resto-header-logo-left .logo-wrapper img, .gx-accueil .resto-header-logo-right .logo-wrapper img{width: 100%;
    height: 100%;
    object-fit: cover;
    padding: 0;}
.gx-accueil .resto-logo-label{font-size: 10px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    color: rgba(10,22,40,0.65);
    text-align: center;
    line-height: 1.3;
    word-break: break-word;
    overflow-wrap: break-word;
    max-width: 100%;}
.gx-accueil .resto-accord-btn{display: flex;
    flex-direction: column;
    align-items: center;
    gap: 4px;
    text-decoration: none;
    padding: 7px 10px;
    border: 1.5px solid #1e88e5;
    border-radius: 10px;
    background: rgba(30,136,229,0.06);
    cursor: pointer;
    transition: all 0.25s ease;
    max-width: 100%;}
.gx-accueil .resto-accord-btn:hover{background: rgba(30,136,229,0.14);
    border-color: #1565c0;
    transform: translateY(-2px);
    box-shadow: 0 6px 20px rgba(30,136,229,0.25);}
.gx-accueil .resto-accord-btn-label{font-size: 9px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.4px;
    color: rgba(10,22,40,0.65);
    text-align: center;
    line-height: 1.25;
    word-break: break-word;
    overflow-wrap: break-word;
    max-width: 100%;}
.gx-accueil .resto-accord-btn-cta{display: inline-flex;
    align-items: center;
    gap: 4px;
    font-size: 9px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    color: #1e88e5;
    background: rgba(30,136,229,0.1);
    border: 1px solid rgba(30,136,229,0.3);
    border-radius: 20px;
    padding: 2px 8px;
    transition: background 0.2s ease;
    white-space: nowrap;}
.gx-accueil .resto-accord-btn:hover .resto-accord-btn-cta{background: #1e88e5;
    color: #ffffff;
    border-color: #1e88e5;}
.gx-accueil .resto-accord-btn--sm{padding: 5px 8px;
    gap: 3px;}
.gx-accueil .resto-accord-btn--sm .resto-accord-btn-label{font-size: 8px;}
.gx-accueil .resto-accord-btn--sm .resto-accord-btn-cta{font-size: 8px;
    padding: 2px 6px;}
.gx-accueil .resto-header-center{grid-column: 2;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 12px;
    text-align: center;}
.gx-accueil .resto-header-logo-left{display: none !important;}
.gx-accueil .resto-header-logo-right{grid-column: 3;
    justify-self: end;
    width: auto;
    flex-direction: row;
    justify-content: flex-end;
    align-items: center;
    gap: 12px;}
.gx-accueil .resto-header-title{font-size: clamp(18px, 2.4vw, 28px);
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: 2px;
    color: #0a1628;
    line-height: 1.2;
    text-shadow: none;
    margin: 0;}
.gx-accueil .resto-header-subtitle{font-size: clamp(11px, 1.1vw, 14px);
    font-weight: 500;
    color: rgba(10,22,40,0.68);
    line-height: 1.55;
    max-width: 520px;
    margin: 0;
    text-shadow: none;}
.gx-accueil .resto-header-tabs{display: flex;
    flex-wrap: wrap;
    gap: 8px;
    justify-content: center;
    align-items: center;}
.gx-accueil .resto-tab-count{display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 20px;
    height: 20px;
    padding: 0 5px;
    border-radius: 10px;
    background: rgba(10,22,40,0.12);
    color: #0a1628;
    font-size: 10px;
    font-weight: 800;
    line-height: 1;
    transition: background 0.25s ease, color 0.25s ease;
    margin-right: 2px;}
.gx-accueil .resto-tab-btn.active .resto-tab-count{background: rgba(255,255,255,0.3);
    color: #ffffff;}
.gx-accueil .resto-tab-btn{padding: 6px 18px;
    border-radius: 20px;
    border: 2px solid rgba(10,22,40,0.28);
    background: rgba(255,255,255,0.55);
    color: #0a1628;
    font-family: 'Montserrat', sans-serif;
    font-size: 12px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    cursor: pointer;
    transition: all 0.25s ease;
    white-space: nowrap;
    text-decoration: none !important;}
.gx-accueil .resto-tab-btn:hover{background: rgba(255,255,255,0.9);
    border-color: rgba(10,22,40,0.55);
    transform: translateY(-1px);
    box-shadow: 0 3px 10px rgba(0,0,0,0.1);
    text-decoration: none !important;}
.gx-accueil .resto-tab-btn.active{background: #1e88e5;
    border-color: #1e88e5;
    color: #ffffff;
    box-shadow: 0 3px 14px rgba(30,136,229,0.45);
    text-decoration: none !important;}
.gx-accueil .resto-tab-btn:focus, .gx-accueil .resto-tab-btn:focus-visible, .gx-accueil .resto-tab-btn:active{text-decoration: none !important;}
.gx-accueil .resto-events-dropdown{position: relative;
    display: inline-flex;}
.gx-accueil .resto-events-btn{display: inline-flex;
    align-items: center;
    gap: 7px;
    background: linear-gradient(135deg, rgba(30,136,229,0.12), rgba(30,136,229,0.06));
    border-color: rgba(30,136,229,0.5);
    color: #1e88e5;}
.gx-accueil .resto-events-btn:hover{background: linear-gradient(135deg, rgba(30,136,229,0.22), rgba(30,136,229,0.1));
    border-color: #1e88e5;
    color: #1565c0;}
.gx-accueil .resto-events-dropdown.open .resto-events-btn{background: linear-gradient(135deg, rgba(30,136,229,0.22), rgba(30,136,229,0.1));
    border-color: #1e88e5;}
.gx-accueil .resto-events-chevron{font-size: 10px !important;
    transition: transform 0.25s ease;}
.gx-accueil .resto-events-dropdown.open .resto-events-chevron{transform: rotate(180deg);}
.gx-accueil .resto-events-menu{display: none;
    position: absolute;
    top: calc(100% + 8px);
    left: 50%;
    transform: translateX(-50%);
    min-width: 220px;
    background: #ffffff;
    border: 1px solid rgba(10,22,40,0.12);
    border-radius: 10px;
    box-shadow: 0 12px 40px rgba(0,0,0,0.15), 0 2px 8px rgba(0,0,0,0.08);
    overflow: hidden;
    z-index: 200;
    animation: eventsMenuIn 0.22s cubic-bezier(0.34, 1.56, 0.64, 1);}
.gx-accueil .resto-events-dropdown.open .resto-events-menu{display: block;}
@keyframes eventsMenuIn{
    from { opacity: 0; transform: translateX(-50%) translateY(-6px) scale(0.96); }
    to   { opacity: 1; transform: translateX(-50%) translateY(0) scale(1); }
}
.gx-accueil .resto-events-item{display: flex;
    align-items: center;
    gap: 10px;
    padding: 10px 16px;
    color: #0a1628;
    font-family: 'Montserrat', sans-serif;
    font-size: 12px;
    font-weight: 600;
    text-decoration: none;
    transition: background 0.18s ease, color 0.18s ease;
    border-bottom: 1px solid rgba(10,22,40,0.06);}
.gx-accueil .resto-events-item:last-child{border-bottom: none;}
.gx-accueil .resto-events-item i{width: 16px;
    text-align: center;
    color: #f26522;
    font-size: 13px;
    flex-shrink: 0;}
.gx-accueil .resto-events-item:hover{background: rgba(242,101,34,0.07);
    color: #f26522;}
.gx-accueil .resto-events-item:hover i{color: #f26522;}
.gx-accueil .resto-plans-btn{display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 9px 18px;
    background: linear-gradient(135deg, rgba(212,175,55,0.18), rgba(212,175,55,0.08));
    border: 1.5px solid rgba(212,175,55,0.6);
    border-radius: 6px;
    color: #d4af37;
    font-family: 'Montserrat', sans-serif;
    font-size: 12px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.8px;
    text-decoration: none;
    cursor: pointer;
    white-space: nowrap;
    flex-shrink: 0;
    transition: all 0.25s ease;}
.gx-accueil .resto-plans-btn:hover{background: linear-gradient(135deg, rgba(212,175,55,0.35), rgba(212,175,55,0.15));
    border-color: #d4af37;
    color: #f0c93a;
    transform: translateY(-1px);
    box-shadow: 0 5px 18px rgba(212,175,55,0.3);}
.gx-accueil .resto-plans-btn i{font-size: 12px;}
.gx-accueil .resto-header-destinations-bar{position: relative;
    z-index: 1;
    background: rgba(10, 22, 40, 0.07);
    backdrop-filter: none;
    -webkit-backdrop-filter: none;
    display: flex;
    flex-direction: column;
    gap: 10px;
    padding: 12px 32px;
    border-top: 1px solid rgba(10,22,40,0.12);}
.gx-accueil .resto-dest-row{display: flex;
    align-items: center;
    gap: 14px;
    width: 100%;
    flex-wrap: wrap;}
.gx-accueil .resto-actions-row{display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 12px;
    width: 100%;
    flex-wrap: wrap;
    padding-top: 8px;
    border-top: 1px solid rgba(10,22,40,0.1);}
.gx-accueil .resto-dest-icon-box{display: flex;
    align-items: center;
    gap: 6px;
    background: rgba(242, 101, 34, 0.2);
    border: 1px solid rgba(242, 101, 34, 0.45);
    border-radius: 6px;
    padding: 6px 12px;
    flex-shrink: 0;}
.gx-accueil .resto-dest-icon-box img{width: 22px;
    height: 22px;
    object-fit: contain;}
.gx-accueil .resto-dest-icon-box span{font-size: 11px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 1px;
    color: #f26522;}
.gx-accueil .resto-dest-breadcrumb{display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;}
.gx-accueil .vp-dest-breadcrumb{flex: 1;
    min-width: 0;
    display: flex;
    align-items: center;
    flex-wrap: nowrap;
    gap: 8px;}
.gx-accueil .vp-dest-select{appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    min-width: 150px;
    max-width: 210px;
    padding: 6px 28px 6px 10px;
    border: 1px solid rgba(10, 22, 40, 0.18);
    border-radius: 8px;
    background: #fff;
    color: #0a1628;
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.5px;}
.gx-accueil .vp-dest-select:focus{outline: none;
    border-color: #f26522;
    box-shadow: 0 0 0 2px rgba(242, 101, 34, 0.18);}
.gx-accueil .resto-dest-link{font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.8px;
    color: #0a1628;
    text-decoration: none;
    transition: color 0.2s ease;
    white-space: nowrap;}
.gx-accueil .resto-dest-link:hover, .gx-accueil .resto-dest-link.active{color: #f26522;}
.gx-accueil .resto-dest-link.active{text-decoration: underline;
    text-underline-offset: 3px;}
.gx-accueil .resto-dest-sep{color: rgba(10,22,40,0.35);
    font-size: 14px;
    font-weight: 300;}
.gx-accueil .resto-header-ctas{display: flex;
    align-items: center;
    gap: 10px;
    flex-shrink: 0;}
.gx-accueil .resto-cta-btn{display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 9px 20px;
    border-radius: 6px;
    font-family: 'Montserrat', sans-serif;
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.8px;
    text-decoration: none;
    cursor: pointer;
    border: none;
    transition: all 0.25s ease;
    white-space: nowrap;}
.gx-accueil .resto-cta-btn.primary{background: #1e88e5;
    color: #ffffff;
    box-shadow: 0 3px 12px rgba(30,136,229,0.4);}
.gx-accueil .resto-cta-btn.primary:hover{background: #1565c0;
    transform: translateY(-1px);
    box-shadow: 0 5px 18px rgba(30,136,229,0.5);}
.gx-accueil .resto-cta-btn.secondary{background: rgba(30,136,229,0.08);
    color: #1565c0;
    border: 2px solid rgba(30,136,229,0.4);}
.gx-accueil .resto-cta-btn.secondary:hover{background: rgba(30,136,229,0.16);
    border-color: #1e88e5;
    color: #1e88e5;
    transform: translateY(-1px);}
.gx-accueil .resto-cta-btn .cta-plus{display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 20px;
    height: 20px;
    background: rgba(255,255,255,0.25);
    border-radius: 50%;
    font-size: 14px;
    font-weight: 900;
    line-height: 1;}
.gx-accueil .resto-header-shimmer{position: relative;
    z-index: 1;
    width: 100%;
    height: 4px;
    background: linear-gradient(90deg, #f26522, #f26522, #d4af37, #f26522, #f26522);
    background-size: 300% 100%;
    animation: resto-shimmer 3s linear infinite;}
@keyframes resto-shimmer{
    0%   { background-position: 200% 0; }
    100% { background-position: -200% 0; }
}
.gx-accueil .resto-media-strip{display: block;
    background: #0e1a2e;
    position: relative;
    z-index: 1;}
@media (max-width: 1024px){.gx-accueil .resto-header-main{grid-template-columns: repeat(3, minmax(0, 1fr));
        padding: 20px 20px 16px;}
.gx-accueil .resto-header-logo-left .logo-wrapper, .gx-accueil .resto-header-logo-right .logo-wrapper{width: 90px;
        height: 90px;}}
@media (max-width: 768px){.gx-accueil .resto-service-block{width: 100%;
        margin: 0;
        border-radius: 0;}
.gx-accueil .resto-header-main{display: grid;
        grid-template-columns: 1fr;
        padding: 16px 14px 14px;
        gap: 10px;
        min-height: auto;
        align-items: center;
        justify-content: center;}
.gx-accueil .resto-header-center{grid-column: auto;}
.gx-accueil .resto-header-logo-left{display: none;}
.gx-accueil .resto-header-logo-right{grid-column: auto;
        justify-self: center;
        width: 100%;
        flex-direction: column;
        justify-content: center;
        align-items: center;}
.gx-accueil .resto-header-logo-left .logo-wrapper, .gx-accueil .resto-header-logo-right .logo-wrapper{width: 44px;
        height: 44px;}
.gx-accueil .resto-header-destinations-bar{padding: 10px 14px;
        flex-direction: column;
        align-items: stretch;
        gap: 8px;}
.gx-accueil .resto-dest-row{flex-wrap: wrap;
        gap: 8px;}
.gx-accueil .resto-dest-breadcrumb{display: none;}
.gx-accueil .resto-dest-breadcrumb.vp-dest-breadcrumb{display: flex;
        width: 100%;
        flex-wrap: wrap;}
.gx-accueil .vp-dest-select{min-width: 145px;}
.gx-accueil .resto-actions-row{flex-direction: column;
        align-items: stretch;
        gap: 8px;
        padding-top: 8px;
        justify-content: flex-start;}
.gx-accueil .resto-header-ctas{width: 100%;
        justify-content: center;
        flex-wrap: wrap;}
.gx-accueil .resto-cta-btn{flex: 1;
        min-width: 120px;
        justify-content: center;}
.gx-accueil .resto-plans-btn, .gx-accueil .resto-events-nav-btn{width: 100%;
        justify-content: center;}
.gx-accueil .resto-lang-switcher{width: 100%;}
.gx-accueil .resto-lang-select{flex: 1;
        min-width: 0;}}
@media (max-width: 480px){.gx-accueil .resto-header-tabs{gap: 5px;}
.gx-accueil .resto-tab-btn{font-size: 10px;
        padding: 5px 10px;}
.gx-accueil .resto-cta-btn{font-size: 11px;
        padding: 8px 12px;}
.gx-accueil .resto-header-title{font-size: 15px;
        letter-spacing: 1px;}
.gx-accueil .resto-header-subtitle{font-size: 11px;}
.gx-accueil .resto-events-grid{grid-template-columns: 1fr;
        padding: 16px 12px;}
.gx-accueil .resto-events-header{padding: 24px 14px 18px;}
.gx-accueil .resto-events-types-bar{padding: 12px 12px;
        gap: 6px;}
.gx-accueil .resto-event-type-btn{font-size: 11px;
        padding: 6px 12px;}
.gx-accueil .resto-plans-inner{padding: 40px 14px 32px;}
.gx-accueil .resto-plans-grid{gap: 14px;}
.gx-accueil .resto-plan-header{padding: 30px 18px 16px;}
.gx-accueil .resto-plan-features{padding: 16px 18px;}
.gx-accueil .resto-plan-cta{margin: 0 18px 18px;}
.gx-accueil .resto-plans-footer{flex-direction: column;
        gap: 14px;
        align-items: center;}}
.gx-accueil .resto-content-area{position: relative;
    z-index: 2;
    background: #f9fafb;
    padding: 32px;}
.gx-accueil .resto-content-inner{max-width: 1400px;
    margin: 0 auto;}
.gx-accueil .resto-filter-status{display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 28px;
    flex-wrap: wrap;
    width: 100%;}
.gx-accueil .resto-filter-label{font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 1px;
    color: #666;}
.gx-accueil .resto-filter-badge{display: inline-flex;
    align-items: center;
    gap: 6px;
    background: #f26522;
    color: #fff;
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.8px;
    padding: 4px 14px;
    border-radius: 20px;}
.gx-accueil .resto-filter-badge.dest{background: #0a1628;}
.gx-accueil .resto-filter-count{font-size: 12px;
    font-weight: 600;
    color: #888;
    margin-left: auto;}
.gx-accueil .resto-cards-grid{display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 24px;
    min-height: 200px;
    width: 100%;}
.gx-accueil .resto-cards-grid-break{grid-column: 1 / -1;
    width: 100%;
    margin: 8px 0;}
.gx-accueil .resto-card{background: #ffffff;
    border-radius: 12px;
    overflow: hidden;
    box-shadow: 0 4px 16px rgba(0,0,0,0.08);
    transition: transform 0.3s ease, box-shadow 0.3s ease, opacity 0.3s ease;
    display: flex;
    flex-direction: column;}
.gx-accueil .resto-card:hover{transform: translateY(-4px);
    box-shadow: 0 10px 32px rgba(0,0,0,0.14);}
.gx-accueil .resto-card.hidden{display: none;}
.gx-accueil .resto-card-img{position: relative;
    width: 100%;
    height: 200px;
    overflow: hidden;}
.gx-accueil .resto-card-img img{width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.4s ease;}
.gx-accueil .resto-card:hover .resto-card-img img{transform: scale(1.05);}
.gx-accueil .resto-card-badges{position: absolute;
    top: 12px;
    left: 12px;
    display: flex;
    flex-wrap: wrap;
    gap: 5px;}
.gx-accueil .resto-badge{font-size: 10px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    padding: 3px 10px;
    border-radius: 4px;
    color: #fff;
    background: #f26522;}
.gx-accueil .resto-badge.cat-entrees{background: #27ae60;}
.gx-accueil .resto-badge.cat-mets{background: #2980b9;}
.gx-accueil .resto-badge.cat-desserts{background: #8e44ad;}
.gx-accueil .resto-badge.cat-vins{background: #f26522;}
.gx-accueil .resto-badge.cat-toutes{background: #f26522;}
.gx-accueil .resto-card-rating{position: absolute;
    bottom: 10px;
    right: 12px;
    background: rgba(0,0,0,0.65);
    color: #ffd700;
    font-size: 11px;
    font-weight: 700;
    padding: 3px 8px;
    border-radius: 4px;
    backdrop-filter: blur(4px);}
.gx-accueil .resto-price-overlay{position: absolute;
    bottom: 10px;
    left: 12px;
    background: #f26522;
    color: #ffffff;
    font-size: 15px;
    font-weight: 900;
    padding: 4px 14px;
    border-radius: 6px;
    letter-spacing: 0.5px;
    box-shadow: 0 2px 8px rgba(0,0,0,0.3);}
.gx-accueil .resto-card-subcategory{font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.8px;
    color: #999;}
.gx-accueil .resto-card-body{padding: 18px 18px 14px;
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 8px;}
.gx-accueil .resto-card-name{font-size: 16px;
    font-weight: 800;
    color: #0a1628;
    margin: 0;
    text-transform: uppercase;
    letter-spacing: 0.5px;}
.gx-accueil .resto-card-dest{font-size: 11px;
    font-weight: 600;
    color: #f26522;
    text-transform: uppercase;
    letter-spacing: 0.8px;
    display: flex;
    align-items: center;
    gap: 4px;}
.gx-accueil .resto-card-desc{font-size: 12px;
    color: #555;
    line-height: 1.6;
    margin: 0;
    flex: 1;}
.gx-accueil .resto-card-accord{display: flex;
    align-items: center;
    gap: 6px;
    font-size: 11px;
    font-weight: 600;
    color: #7d3c98;
    background: #f5eef8;
    padding: 5px 10px;
    border-radius: 6px;}
.gx-accueil .resto-card-footer{padding: 12px 18px 16px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    border-top: 1px solid #f0f0f0;
    gap: 10px;}
.gx-accueil .resto-card-price{font-size: 13px;
    font-weight: 800;
    color: #0a1628;}
.gx-accueil .resto-card-reserve-btn{display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 8px 16px;
    background: #1e88e5;
    color: #ffffff;
    border: none;
    border-radius: 6px;
    font-family: 'Montserrat', sans-serif;
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    cursor: pointer;
    text-decoration: none;
    transition: all 0.25s ease;
    white-space: nowrap;
    box-shadow: 0 2px 8px rgba(30,136,229,0.3);}
.gx-accueil .resto-card-reserve-btn:hover{background: #1565c0;
    transform: translateY(-1px);
    box-shadow: 0 4px 14px rgba(30,136,229,0.45);}
.gx-accueil .resto-no-results{display: none;
    grid-column: 1 / -1;
    text-align: center;
    padding: 60px 20px;
    color: #999;
    font-size: 14px;
    font-weight: 600;}
.gx-accueil .resto-no-results i{display: block;
    font-size: 40px;
    margin-bottom: 12px;
    color: #ddd;}
.gx-accueil .resto-lang-switcher{display: flex;
    align-items: center;
    gap: 8px;
    flex-shrink: 0;}
.gx-accueil .resto-lang-switcher > i{color: rgba(10,22,40,0.5);
    font-size: 14px;
    flex-shrink: 0;}
.gx-accueil .resto-lang-select{appearance: none;
    -webkit-appearance: none;
    background: rgba(255,255,255,0.65);
    border: 1.5px solid rgba(10,22,40,0.22);
    border-radius: 6px;
    color: #0a1628;
    font-family: 'Montserrat', sans-serif;
    font-size: 12px;
    font-weight: 700;
    padding: 6px 28px 6px 10px;
    cursor: pointer;
    outline: none;
    transition: all 0.2s ease;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath d='M0 0l5 6 5-6z' fill='rgba(10,22,40,0.45)'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 9px center;}
.gx-accueil .resto-lang-select:hover{border-color: rgba(242,101,34,0.7);
    background-color: rgba(255,255,255,0.85);}
.gx-accueil .resto-lang-select:focus{border-color: #f26522;
    box-shadow: 0 0 0 2px rgba(242,101,34,0.2);}
.gx-accueil .resto-lang-select option{background: #ffffff;
    color: #0a1628;
    font-size: 13px;}
.gx-accueil .resto-lang-btn-REMOVED{background: transparent;
    border: none;
    padding: 4px 7px;
    font-family: 'Montserrat', sans-serif;
    font-size: 11px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 1px;
    color: rgba(255,255,255,0.5);
    cursor: pointer;
    border-radius: 4px;
    transition: all 0.2s ease;
    line-height: 1;}
.gx-accueil .resto-lang-btn-REMOVED:hover{color: #ffffff;
    background: rgba(255,255,255,0.1);}
.gx-accueil .resto-lang-sep-REMOVED{color: rgba(255,255,255,0.2);
    font-size: 12px;
    font-weight: 300;
    pointer-events: none;}
.gx-accueil .resto-events-nav-btn{background: #1e88e5;
    color: #ffffff;
    border: 1.5px solid #1e88e5 !important;
    display: inline-flex;
    align-items: center;
    gap: 7px;
    box-shadow: 0 3px 10px rgba(30,136,229,0.3);}
.gx-accueil .resto-events-nav-btn:hover{background: #1565c0;
    border-color: #1565c0 !important;
    color: #ffffff;
    transform: translateY(-1px);
    box-shadow: 0 4px 16px rgba(30,136,229,0.4);}
.gx-accueil .resto-section-std-header{position: relative;
    background: #ffffff;
    display: grid;
    grid-template-columns: 90px 1fr 90px;
    align-items: center;
    gap: 16px;
    padding: 16px 24px 14px;
    border-bottom: 1px solid rgba(10,22,40,0.1);}
.gx-accueil .resto-section-logo-left, .gx-accueil .resto-section-logo-right{display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;}
.gx-accueil .logo-wrapper-xs{width: 44px;
    height: 44px;
    border-radius: 50%;
    background: rgba(255,255,255,0.85);
    border: 2px solid rgba(10,22,40,0.14);
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    box-shadow: 0 3px 14px rgba(0,0,0,0.1);
    text-decoration: none;
    transition: transform 0.3s ease, box-shadow 0.3s ease;}
.gx-accueil .logo-wrapper-xs:hover{transform: scale(1.05);
    box-shadow: 0 5px 20px rgba(0,0,0,0.18);}
.gx-accueil .logo-wrapper-xs img{width: 100%;
    height: 100%;
    object-fit: cover;}
.gx-accueil .resto-section-center{display: flex;
    flex-direction: column;
    align-items: center;
    gap: 8px;
    text-align: center;}
.gx-accueil .resto-section-eyebrow{display: inline-flex;
    align-items: center;
    gap: 7px;
    font-size: 11px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 1.5px;
    color: #f26522;}
.gx-accueil .resto-section-title{font-size: clamp(15px, 2vw, 22px);
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: 1.5px;
    color: #0a1628;
    margin: 0;
    line-height: 1.2;}
.gx-accueil .resto-section-desc{font-size: 12px;
    font-weight: 500;
    color: rgba(10,22,40,0.65);
    line-height: 1.55;
    max-width: 520px;
    margin: 0;}
.gx-accueil .resto-section-std-shimmer{position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: 3px;
    background: linear-gradient(90deg, #f26522, #f9a52c, #d4af37, #f9a52c, #f26522);
    background-size: 300% 100%;
    animation: resto-shimmer 3s linear infinite;}
@media (max-width: 768px){.gx-accueil .resto-section-std-header{display: flex;
        flex-wrap: wrap;
        padding: 18px 16px 16px;
        gap: 12px;
        text-align: center;
        align-items: center;
        justify-content: center;}
.gx-accueil .resto-section-center{order: 1; flex: 0 0 100%;}
.gx-accueil .resto-section-logo-left{order: 2; flex: 1; flex-direction: row; justify-content: center; gap: 8px;}
.gx-accueil .resto-section-logo-right{order: 2; flex: 1; flex-direction: row; justify-content: center; gap: 8px;}
.gx-accueil .logo-wrapper-xs{width: 44px; height: 44px;}}
.gx-accueil .resto-events-section{background: #f9fafb;
    font-family: 'Montserrat', sans-serif;
    padding: 0 0 48px;}
.gx-accueil .resto-events-header{text-align: center;
    padding: 48px 32px 32px;
    background: #ffffff;
    border-bottom: 1px solid rgba(10,22,40,0.08);}
.gx-accueil .resto-events-eyebrow{display: inline-flex;
    align-items: center;
    gap: 8px;
    font-size: 11px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 1.5px;
    color: #f26522;
    margin-bottom: 12px;}
.gx-accueil .resto-events-eyebrow i{font-size: 13px;}
.gx-accueil .resto-events-title{font-size: clamp(20px, 2.5vw, 30px);
    font-weight: 900;
    color: #0a1628;
    margin: 0 0 10px;
    text-transform: uppercase;
    letter-spacing: 1px;}
.gx-accueil .resto-events-lead{font-size: 14px;
    color: rgba(10,22,40,0.6);
    margin: 0;
    max-width: 520px;
    margin: 0 auto;
    line-height: 1.55;}
.gx-accueil .resto-events-types-bar{display: flex;
    align-items: center;
    gap: 8px;
    padding: 16px 32px;
    overflow-x: auto;
    overflow-y: visible;
    scrollbar-width: none;
    -ms-overflow-style: none;
    background: #ffffff;
    border-bottom: 2px solid rgba(10,22,40,0.07);
    flex-wrap: nowrap;
    white-space: nowrap;}
.gx-accueil .resto-events-types-bar::-webkit-scrollbar{display: none;}
.gx-accueil .resto-event-type-btn{display: inline-flex;
    align-items: center;
    gap: 7px;
    padding: 8px 18px;
    border-radius: 22px;
    border: 1.5px solid rgba(10,22,40,0.2);
    background: transparent;
    color: #0a1628;
    font-family: 'Montserrat', sans-serif;
    font-size: 12px;
    font-weight: 700;
    white-space: nowrap;
    cursor: pointer;
    transition: all 0.22s ease;
    flex-shrink: 0;}
.gx-accueil .resto-type-count{display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 20px;
    height: 20px;
    padding: 0 5px;
    border-radius: 10px;
    background: rgba(10,22,40,0.1);
    color: #0a1628;
    font-size: 10px;
    font-weight: 800;
    line-height: 1;
    transition: background 0.22s ease, color 0.22s ease;
    flex-shrink: 0;}
.gx-accueil .resto-event-type-btn.active .resto-type-count{background: rgba(255,255,255,0.28);
    color: #ffffff;}
.gx-accueil .resto-event-type-btn i{font-size: 12px;
    color: #f26522;
    transition: color 0.22s ease;}
.gx-accueil .resto-event-type-btn:hover{border-color: #1e88e5;
    color: #1e88e5;
    background: rgba(30,136,229,0.06);
    transform: translateY(-1px);}
.gx-accueil .resto-event-type-btn:hover i{color: #1e88e5;}
.gx-accueil .resto-event-type-btn.active{background: #1e88e5;
    border-color: #1e88e5;
    color: #ffffff;
    box-shadow: 0 3px 12px rgba(30,136,229,0.38);}
.gx-accueil .resto-event-type-btn.active i{color: #ffffff;}
.gx-accueil .resto-events-grid{display: grid;
    grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
    gap: 24px;
    padding: 32px;
    max-width: 1400px;
    margin: 0 auto;}
.gx-accueil .resto-event-card{background: #ffffff;
    border-radius: 12px;
    overflow: hidden;
    box-shadow: 0 2px 12px rgba(0,0,0,0.07);
    transition: transform 0.25s ease, box-shadow 0.25s ease;
    display: flex;
    flex-direction: column;}
.gx-accueil .resto-event-card:hover{transform: translateY(-4px);
    box-shadow: 0 10px 30px rgba(0,0,0,0.13);}
.gx-accueil .resto-event-card.hidden{display: none;}
.gx-accueil .resto-event-card-img{position: relative;
    height: 180px;
    overflow: hidden;
    flex-shrink: 0;}
.gx-accueil .resto-event-card-img img{width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform 0.4s ease;}
.gx-accueil .resto-event-card:hover .resto-event-card-img img{transform: scale(1.05);}
.gx-accueil .resto-event-badge{position: absolute;
    top: 12px;
    right: 12px;
    background: #f26522;
    color: #ffffff;
    font-size: 10px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.8px;
    padding: 4px 10px;
    border-radius: 12px;
    box-shadow: 0 2px 8px rgba(0,0,0,0.2);}
.gx-accueil .resto-event-card-body{padding: 18px 20px 20px;
    display: flex;
    flex-direction: column;
    gap: 8px;
    flex: 1;}
.gx-accueil .resto-event-card-title{font-size: 14px;
    font-weight: 800;
    color: #0a1628;
    margin: 0;
    line-height: 1.3;}
.gx-accueil .resto-event-card-desc{font-size: 12px;
    color: rgba(10,22,40,0.6);
    margin: 0;
    line-height: 1.5;
    flex: 1;}
.gx-accueil .resto-event-card-footer{display: flex;
    align-items: center;
    justify-content: space-between;
    margin-top: 4px;
    gap: 10px;}
.gx-accueil .resto-event-card-price{font-size: 15px;
    font-weight: 900;
    color: #f26522;}
.gx-accueil .resto-event-card-cta{display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 8px 16px;
    background: #1e88e5;
    color: #ffffff;
    border: none;
    border-radius: 6px;
    font-family: 'Montserrat', sans-serif;
    font-size: 11px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.6px;
    cursor: pointer;
    transition: all 0.22s ease;
    flex-shrink: 0;
    box-shadow: 0 2px 8px rgba(30,136,229,0.3);}
.gx-accueil .resto-event-card-cta:hover{background: #1565c0;
    transform: translateY(-1px);
    box-shadow: 0 4px 14px rgba(30,136,229,0.4);}
.gx-accueil .resto-events-no-results{display: none;
    grid-column: 1 / -1;
    flex-direction: column;
    align-items: center;
    gap: 12px;
    padding: 60px 20px;
    color: rgba(10,22,40,0.4);
    font-size: 14px;
    font-weight: 600;
    text-align: center;}
.gx-accueil .resto-events-no-results i{font-size: 40px;
    color: rgba(10,22,40,0.2);}
@media (max-width: 768px){.gx-accueil .resto-events-grid{grid-template-columns: repeat(auto-fill, minmax(240px, 1fr));
        padding: 24px 16px;}
.gx-accueil .resto-events-header{padding: 32px 20px 24px;}
.gx-accueil .resto-events-types-bar{padding: 16px 16px;}}
.gx-accueil .resto-plans-section{background: #f9fafb;
    font-family: 'Montserrat', sans-serif;}
.gx-accueil .resto-plans-topbar{display: flex;
    align-items: center;
    justify-content: center;
    gap: 16px;
    padding: 10px 32px;
    background: linear-gradient(90deg, #e84c10, #f26522 50%, #f9a52c);
    flex-wrap: wrap;}
.gx-accueil .resto-plans-topbar-badge{display: inline-flex;
    align-items: center;
    gap: 6px;
    background: rgba(0,0,0,0.2);
    border: 1px solid rgba(255,255,255,0.25);
    border-radius: 20px;
    padding: 3px 12px;
    font-size: 10px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 1.5px;
    color: #fff;
    white-space: nowrap;}
.gx-accueil .resto-plans-topbar-text{font-size: 12px;
    font-weight: 600;
    color: rgba(255,255,255,0.92);}
.gx-accueil .resto-plans-inner{max-width: 1340px;
    margin: 0 auto;
    padding: 72px 40px 64px;}
.gx-accueil .resto-plans-heading{text-align: center;
    margin-bottom: 52px;}
.gx-accueil .resto-plans-eyebrow{display: inline-block;
    font-size: 11px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 3px;
    color: #f26522;
    margin-bottom: 12px;}
.gx-accueil .resto-plans-title{font-size: clamp(26px, 3vw, 42px);
    font-weight: 900;
    color: #ffffff;
    text-transform: uppercase;
    letter-spacing: 2px;
    margin: 0 0 16px;
    line-height: 1.15;}
.gx-accueil .resto-plans-highlight{color: #f26522;}
.gx-accueil .resto-plans-lead{font-size: 14px;
    color: rgba(255,255,255,0.55);
    line-height: 1.7;
    max-width: 640px;
    margin: 0 auto;}
.gx-accueil .resto-plans-grid{display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 28px;
    margin-bottom: 48px;}
.gx-accueil .resto-plan-card{background: #ffffff;
    border: 1px solid rgba(10,22,40,0.1);
    border-radius: 18px;
    display: flex;
    flex-direction: column;
    overflow: hidden;
    position: relative;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
    box-shadow: 0 2px 12px rgba(0,0,0,0.06);}
.gx-accueil .resto-plan-card:hover{transform: translateY(-6px);
    box-shadow: 0 12px 36px rgba(30,136,229,0.15);}
.gx-accueil .resto-plan-card.featured{background: linear-gradient(160deg, #e8f4fd, #f0f8ff);
    border-color: #1e88e5;
    box-shadow: 0 0 30px rgba(30,136,229,0.18);
    transform: translateY(-8px);}
.gx-accueil .resto-plan-card.featured:hover{transform: translateY(-14px);}
.gx-accueil .resto-plan-badge{position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    background: linear-gradient(90deg, #e84c10, #f26522);
    color: #ffffff;
    font-size: 10px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 1.5px;
    padding: 4px 20px;
    border-radius: 0 0 10px 10px;
    white-space: nowrap;}
.gx-accueil .resto-plan-header{padding: 40px 28px 24px;
    text-align: center;
    border-bottom: 1px solid rgba(10,22,40,0.08);}
.gx-accueil .resto-plan-icon{width: 54px;
    height: 54px;
    margin: 0 auto 14px;
    background: rgba(30,136,229,0.1);
    border: 1px solid rgba(30,136,229,0.25);
    border-radius: 14px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 22px;
    color: #1e88e5;}
.gx-accueil .resto-plan-card.featured .resto-plan-icon{background: rgba(30,136,229,0.18);
    border-color: #1e88e5;}
.gx-accueil .resto-plan-name{font-size: 18px;
    font-weight: 900;
    color: #0a1628;
    text-transform: uppercase;
    letter-spacing: 2px;
    margin-bottom: 12px;}
.gx-accueil .resto-plan-price{display: flex;
    align-items: baseline;
    justify-content: center;
    gap: 3px;
    margin-bottom: 10px;}
.gx-accueil .resto-plan-amount{font-size: 44px;
    font-weight: 900;
    color: #f26522;
    line-height: 1;}
.gx-accueil .resto-plan-currency{font-size: 22px;
    font-weight: 700;
    color: #f26522;}
.gx-accueil .resto-plan-period{font-size: 13px;
    font-weight: 600;
    color: rgba(10,22,40,0.45);}
.gx-accueil .resto-plan-tagline{font-size: 12px;
    color: rgba(10,22,40,0.5);
    margin: 0;
    line-height: 1.5;}
.gx-accueil .resto-plan-features{list-style: none;
    margin: 0;
    padding: 24px 28px;
    display: flex;
    flex-direction: column;
    gap: 10px;
    flex: 1;}
.gx-accueil .resto-plan-features li{display: flex;
    align-items: center;
    gap: 10px;
    font-size: 12px;
    font-weight: 600;
    color: rgba(10,22,40,0.75);}
.gx-accueil .resto-plan-features li i.fa-check{color: #27ae60;
    font-size: 11px;
    flex-shrink: 0;}
.gx-accueil .resto-plan-feat-no{opacity: 0.38;}
.gx-accueil .resto-plan-feat-no i.fa-times{color: #f9a52c;
    font-size: 11px;
    flex-shrink: 0;}
.gx-accueil .resto-plan-cta{display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    margin: 0 28px 28px;
    padding: 13px 20px;
    border-radius: 10px;
    font-size: 12px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 1px;
    text-decoration: none;
    transition: all 0.25s ease;}
.gx-accueil .resto-plan-cta.starter{background: rgba(30,136,229,0.07);
    border: 1.5px solid rgba(30,136,229,0.35);
    color: #1e88e5;}
.gx-accueil .resto-plan-cta.starter:hover{background: rgba(30,136,229,0.14);
    border-color: #1e88e5;
    transform: translateY(-1px);}
.gx-accueil .resto-plan-cta.pro{background: #1e88e5;
    color: #ffffff;
    box-shadow: 0 6px 20px rgba(30,136,229,0.35);}
.gx-accueil .resto-plan-cta.pro:hover{background: #1565c0;
    transform: translateY(-1px);
    box-shadow: 0 10px 28px rgba(30,136,229,0.45);}
.gx-accueil .resto-plan-cta.premium{background: rgba(30,136,229,0.12);
    border: 1.5px solid rgba(30,136,229,0.45);
    color: #1565c0;}
.gx-accueil .resto-plan-cta.premium:hover{background: rgba(30,136,229,0.22);
    border-color: #1e88e5;
    color: #1e88e5;
    transform: translateY(-1px);}
.gx-accueil .resto-plans-footer{text-align: center;
    padding-top: 16px;
    border-top: 1px solid rgba(10,22,40,0.08);
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 32px;
    flex-wrap: wrap;}
.gx-accueil .resto-plans-footer p{font-size: 12px;
    color: rgba(10,22,40,0.45);
    margin: 0;}
.gx-accueil .resto-plans-contact{display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 10px 24px;
    background: rgba(30,136,229,0.07);
    border: 1.5px solid rgba(30,136,229,0.4);
    border-radius: 8px;
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.8px;
    color: #1e88e5;
    text-decoration: none;
    transition: all 0.25s ease;}
.gx-accueil .resto-plans-contact:hover{background: rgba(30,136,229,0.15);
    border-color: #1e88e5;
    transform: scale(1.02);}
@media (max-width: 1024px){.gx-accueil .resto-plans-grid{grid-template-columns: repeat(2, 1fr);}
.gx-accueil .resto-plan-card.featured{transform: translateY(0);}}
@media (max-width: 640px){.gx-accueil .resto-plans-grid{grid-template-columns: 1fr;}
.gx-accueil .resto-plans-inner{padding: 48px 20px 40px;}
.gx-accueil .resto-lang-switcher{margin-left: 8px;}}
.gx-accueil .resto-reservation-section{background: #ffffff;
    padding: 48px 32px;
    text-align: center;
    border-top: 1px solid rgba(10,22,40,0.08);}
.gx-accueil .resto-reservation-section h3{font-size: 22px;
    font-weight: 900;
    color: #0a1628;
    text-transform: uppercase;
    letter-spacing: 2px;
    margin: 0 0 10px;}
.gx-accueil .resto-reservation-section p{font-size: 13px;
    color: rgba(10,22,40,0.6);
    margin: 0 0 28px;}
.gx-accueil .resto-reservation-form{display: flex;
    justify-content: center;
    gap: 12px;
    flex-wrap: wrap;
    max-width: 680px;
    margin: 0 auto;}
.gx-accueil .resto-reservation-form select, .gx-accueil .resto-reservation-form input[type="date"], .gx-accueil .resto-reservation-form input[type="number"]{padding: 12px 16px;
    border: 2px solid rgba(10,22,40,0.18);
    background: #ffffff;
    color: #0a1628;
    border-radius: 8px;
    font-family: 'Montserrat', sans-serif;
    font-size: 13px;
    font-weight: 600;
    flex: 1;
    min-width: 140px;
    outline: none;
    transition: border-color 0.2s ease;}
.gx-accueil .resto-reservation-form select option{background: #ffffff;
    color: #0a1628;}
.gx-accueil .resto-reservation-form select:focus, .gx-accueil .resto-reservation-form input:focus{border-color: #1e88e5;}
.gx-accueil .resto-reservation-submit{padding: 12px 28px;
    background: #1e88e5;
    color: #ffffff;
    border: none;
    border-radius: 8px;
    font-family: 'Montserrat', sans-serif;
    font-size: 13px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 1px;
    cursor: pointer;
    transition: all 0.25s ease;
    white-space: nowrap;
    display: inline-flex;
    align-items: center;
    gap: 8px;}
.gx-accueil .resto-reservation-submit:hover{background: #1565c0;
    transform: translateY(-1px);
    box-shadow: 0 5px 18px rgba(30,136,229,0.5);}
@media (max-width: 1280px){.gx-accueil .resto-cards-grid{grid-template-columns: repeat(3, 1fr);}}
@media (max-width: 1024px){.gx-accueil .resto-cards-grid{grid-template-columns: repeat(2, 1fr);}
.gx-accueil .resto-content-area{padding: 24px 20px;}}
@media (max-width: 600px){.gx-accueil .resto-cards-grid{grid-template-columns: 1fr;}
.gx-accueil .resto-content-area{padding: 20px 16px;}
.gx-accueil .resto-reservation-section{padding: 36px 16px;}
.gx-accueil .resto-reservation-form{flex-direction: column;}}
@media (max-width: 768px){.gx-accueil .resto-header-destinations-bar{padding: 12px;
        gap: 10px;}
.gx-accueil .resto-dest-row{display: grid !important;
        grid-template-columns: 1fr !important;
        align-items: stretch !important;
        gap: 10px !important;
        width: 100% !important;}
.gx-accueil .resto-dest-icon-box{width: 100% !important;
        max-width: 240px !important;
        justify-self: center !important;
        justify-content: center !important;
        min-width: 0 !important;}
.gx-accueil .resto-dest-breadcrumb, .gx-accueil .resto-dest-breadcrumb.vp-dest-breadcrumb, .gx-accueil .vp-dest-breadcrumb{display: grid !important;
        grid-template-columns: 1fr !important;
        align-items: stretch !important;
        gap: 8px !important;
        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;
        overflow: visible !important;}
.gx-accueil .resto-dest-sep{display: none !important;}
.gx-accueil .vp-dest-select, .gx-accueil .resto-dest-select{width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;
        height: auto !important;
        min-height: 40px !important;
        font-size: 12px !important;
        white-space: normal !important;}}
@media (min-width: 769px) and (max-width: 1100px){.gx-accueil .resto-dest-row{align-items: stretch !important;}
.gx-accueil .resto-dest-breadcrumb.vp-dest-breadcrumb, .gx-accueil .vp-dest-breadcrumb{display: grid !important;
        grid-template-columns: repeat(2, minmax(160px, 1fr)) !important;
        gap: 8px !important;
        width: 100% !important;
        min-width: 0 !important;}
.gx-accueil .resto-dest-sep{display: none !important;}
.gx-accueil .vp-dest-select, .gx-accueil .resto-dest-select{width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;}}
.gx-accueil .goexp-resa-overlay{display: none;
    position: fixed;
    inset: 0;
    background: rgba(5, 12, 28, 0.82);
    backdrop-filter: blur(6px);
    -webkit-backdrop-filter: blur(6px);
    z-index: 99990;
    align-items: center;
    justify-content: center;
    padding: 20px;}
.gx-accueil .goexp-resa-overlay.open{display: flex;}
.gx-accueil .goexp-resa-box{background: #ffffff;
    border: 1px solid rgba(10,22,40,0.1);
    border-radius: 14px;
    width: 100%;
    max-width: 540px;
    padding: 32px 36px 28px;
    box-shadow: 0 20px 60px rgba(0,0,0,0.18), 0 0 0 1px rgba(30,136,229,0.1);
    animation: resaModalIn 0.28s cubic-bezier(0.34, 1.56, 0.64, 1);
    position: relative;
    max-height: 90vh;
    overflow-y: auto;}
@keyframes resaModalIn{
    from { opacity: 0; transform: scale(0.88) translateY(20px); }
    to   { opacity: 1; transform: scale(1) translateY(0); }
}
.gx-accueil .goexp-resa-header{display: flex;
    align-items: center;
    gap: 14px;
    margin-bottom: 4px;}
.gx-accueil .goexp-resa-icon{width: 46px;
    height: 46px;
    border-radius: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 18px;
    flex-shrink: 0;}
.gx-accueil .goexp-resa-icon.table-type{background: rgba(30,136,229,0.1);
    border: 1.5px solid rgba(30,136,229,0.35);
    color: #1e88e5;}
.gx-accueil .goexp-resa-icon.wine-type{background: rgba(30,136,229,0.1);
    border: 1.5px solid rgba(30,136,229,0.35);
    color: #1e88e5;}
.gx-accueil .goexp-resa-titles{flex: 1;
    min-width: 0;}
.gx-accueil .goexp-resa-titles h3{margin: 0 0 3px;
    font-size: 17px;
    font-weight: 800;
    color: #0a1628;
    line-height: 1.2;}
.gx-accueil .goexp-resa-titles p{margin: 0;
    font-size: 12px;
    color: rgba(10,22,40,0.5);}
.gx-accueil .goexp-resa-close-btn{background: rgba(10,22,40,0.06);
    border: 1px solid rgba(10,22,40,0.14);
    color: rgba(10,22,40,0.5);
    width: 32px;
    height: 32px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    font-size: 14px;
    line-height: 1;
    flex-shrink: 0;
    transition: all 0.2s ease;}
.gx-accueil .goexp-resa-close-btn:hover{background: rgba(30,136,229,0.12);
    border-color: rgba(30,136,229,0.4);
    color: #1e88e5;}
.gx-accueil .goexp-resa-divider{height: 1px;
    background: linear-gradient(90deg, transparent, rgba(30,136,229,0.35), rgba(30,136,229,0.2), transparent);
    margin: 18px 0;}
.gx-accueil .goexp-resa-form{display: flex;
    flex-direction: column;
    gap: 14px;}
.gx-accueil .goexp-resa-row{display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 12px;}
.gx-accueil .goexp-resa-field{display: flex;
    flex-direction: column;
    gap: 6px;}
.gx-accueil .goexp-resa-label{font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.8px;
    color: rgba(10,22,40,0.55);}
.gx-accueil .goexp-resa-input, .gx-accueil .goexp-resa-select, .gx-accueil .goexp-resa-textarea{background: #f8f9fb;
    border: 1.5px solid rgba(10,22,40,0.15);
    border-radius: 8px;
    color: #0a1628;
    font-family: 'Montserrat', sans-serif;
    font-size: 13px;
    padding: 10px 14px;
    outline: none;
    transition: border-color 0.2s ease, box-shadow 0.2s ease;
    width: 100%;
    box-sizing: border-box;}
.gx-accueil .goexp-resa-select{appearance: none;
    -webkit-appearance: none;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath d='M0 0l5 6 5-6z' fill='rgba(10,22,40,0.4)'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 12px center;
    padding-right: 34px;
    cursor: pointer;
    background-color: #f8f9fb;}
.gx-accueil .goexp-resa-select option{background: #ffffff;
    color: #0a1628;}
.gx-accueil .goexp-resa-textarea{resize: vertical;
    min-height: 72px;}
.gx-accueil .goexp-resa-input:focus, .gx-accueil .goexp-resa-select:focus, .gx-accueil .goexp-resa-textarea:focus{border-color: #1e88e5;
    box-shadow: 0 0 0 3px rgba(30,136,229,0.12);
    background: #ffffff;}
.gx-accueil .goexp-resa-input.selection-field{color: rgba(10,22,40,0.6);
    font-style: italic;
    cursor: default;}
.gx-accueil .goexp-resa-submit{display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    padding: 13px 28px;
    background: #1e88e5;
    border: none;
    border-radius: 8px;
    color: #ffffff;
    font-family: 'Montserrat', sans-serif;
    font-size: 13px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 1px;
    cursor: pointer;
    transition: all 0.3s ease;
    margin-top: 4px;
    box-shadow: 0 4px 14px rgba(30,136,229,0.35);}
.gx-accueil .goexp-resa-submit:hover{background: #1565c0;
    transform: translateY(-2px);
    box-shadow: 0 8px 24px rgba(30,136,229,0.45);}
.gx-accueil .goexp-resa-success{display: none;
    flex-direction: column;
    align-items: center;
    gap: 12px;
    padding: 24px 0 12px;
    text-align: center;}
.gx-accueil .goexp-resa-success.show{display: flex;}
.gx-accueil .goexp-resa-success-icon{width: 64px;
    height: 64px;
    background: linear-gradient(135deg, rgba(34,197,94,0.2), rgba(34,197,94,0.1));
    border: 2px solid rgba(34,197,94,0.5);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 26px;
    color: #22c55e;
    animation: resaSuccessPop 0.4s cubic-bezier(0.34, 1.56, 0.64, 1);}
@keyframes resaSuccessPop{
    from { transform: scale(0); opacity: 0; }
    to   { transform: scale(1); opacity: 1; }
}
.gx-accueil .goexp-resa-success h4{margin: 0;
    font-size: 18px;
    font-weight: 800;
    color: #0a1628;}
.gx-accueil .goexp-resa-success p{margin: 0;
    font-size: 13px;
    color: rgba(10,22,40,0.55);
    line-height: 1.5;}
@media (max-width: 560px){.gx-accueil .goexp-resa-box{padding: 24px 20px 20px;
        border-radius: 10px;}
.gx-accueil .goexp-resa-row{grid-template-columns: 1fr;}
.gx-accueil .goexp-resa-titles h3{font-size: 15px;}}
@media (max-width: 1100px){}
@media (max-width: 1024px){}
@media (max-width: 760px){}
@media (max-width: 480px){}
.gx-accueil{--footer-bg-dark: #0a1628;
    --footer-bg-medium: #1a2942;
    --footer-text-primary: #ffffff;
    --footer-text-secondary: rgba(255, 255, 255, 0.7);
    --footer-accent: #d4af37;
    --footer-accent-hover: #f0c14b;}
.gx-accueil .footer-v2{background: linear-gradient(180deg, #0a1628 0%, #050d1a 100%);
    color: var(--footer-text-primary);
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    margin-top: 60px;}
.gx-accueil .footer-v2-container{max-width: 1400px;
    margin: 0 auto;
    padding: 0 40px;}
.gx-accueil .footer-v2-newsletter{background: linear-gradient(135deg, #1a2942 0%, #0a1628 100%);
    border-bottom: 1px solid rgba(212, 175, 55, 0.2);
    padding: 60px 0;}
.gx-accueil .footer-v2-newsletter-content{display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 40px;}
.gx-accueil .footer-v2-newsletter-text{flex: 1;}
.gx-accueil .footer-v2-newsletter-title{font-size: 32px;
    font-weight: 700;
    margin: 0 0 10px 0;
    color: var(--footer-text-primary);
    letter-spacing: -0.5px;}
.gx-accueil .footer-v2-newsletter-subtitle{font-size: 16px;
    color: var(--footer-text-secondary);
    margin: 0;
    line-height: 1.6;}
.gx-accueil .footer-v2-newsletter-form{flex: 1;
    display: flex;
    gap: 12px;
    max-width: 500px;}
.gx-accueil .footer-v2-newsletter-input{flex: 1;
    padding: 16px 20px;
    background: rgba(255, 255, 255, 0.05);
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 8px;
    color: var(--footer-text-primary);
    font-size: 15px;
    transition: all 0.3s ease;}
.gx-accueil .footer-v2-newsletter-input:focus{outline: none;
    background: rgba(255, 255, 255, 0.08);
    border-color: var(--footer-accent);}
.gx-accueil .footer-v2-newsletter-input::placeholder{color: rgba(255, 255, 255, 0.4);}
.gx-accueil .footer-v2-newsletter-btn{padding: 16px 32px;
    background: var(--footer-accent);
    color: #0a1628;
    border: none;
    border-radius: 8px;
    font-size: 15px;
    font-weight: 600;
    cursor: pointer;
    display: flex;
    align-items: center;
    gap: 8px;
    transition: all 0.3s ease;
    white-space: nowrap;}
.gx-accueil .footer-v2-newsletter-btn:hover{background: var(--footer-accent-hover);
    transform: translateY(-2px);
    box-shadow: 0 8px 20px rgba(212, 175, 55, 0.3);}
.gx-accueil .footer-v2-newsletter-btn svg{transition: transform 0.3s ease;}
.gx-accueil .footer-v2-newsletter-btn:hover svg{transform: translateX(4px);}
.gx-accueil .footer-v2-main{padding: 80px 0 60px;}
.gx-accueil .footer-v2-grid{display: grid;
    grid-template-columns: 2fr 1fr 1fr 1fr 1.2fr;
    gap: 60px;}
.gx-accueil .footer-v2-brand{padding-right: 40px;}
.gx-accueil .footer-v2-logo{display: flex;
    align-items: center;
    gap: 12px;
    text-decoration: none;
    margin-bottom: 24px;}
.gx-accueil .footer-v2-logo-img{width: 60px;
    height: 60px;
    object-fit: contain;}
.gx-accueil .footer-v2-logo-text{display: flex;
    flex-direction: column;}
.gx-accueil .footer-v2-logo-name{font-size: 24px;
    font-weight: 800;
    color: var(--footer-text-primary);
    letter-spacing: -0.5px;}
.gx-accueil .footer-v2-logo-location{font-size: 11px;
    font-weight: 500;
    color: var(--footer-accent);
    letter-spacing: 1.5px;
    margin-top: 2px;}
.gx-accueil .footer-v2-description{font-size: 14px;
    line-height: 1.8;
    color: var(--footer-text-secondary);
    margin: 0 0 30px 0;}
.gx-accueil .footer-v2-social{display: flex;
    gap: 12px;}
.gx-accueil .footer-v2-social-link{width: 42px;
    height: 42px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(255, 255, 255, 0.05);
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 50%;
    color: var(--footer-text-secondary);
    transition: all 0.3s ease;}
.gx-accueil .footer-v2-social-link:hover{background: var(--footer-accent);
    border-color: var(--footer-accent);
    color: #0a1628;
    transform: translateY(-4px);}
.gx-accueil .footer-v2-column-title{font-size: 16px;
    font-weight: 700;
    color: var(--footer-text-primary);
    margin: 0 0 24px 0;
    letter-spacing: 0.5px;
    text-transform: uppercase;}
.gx-accueil .footer-v2-links{list-style: none;
    margin: 0;
    padding: 0;}
.gx-accueil .footer-v2-links li{margin-bottom: 14px;}
.gx-accueil .footer-v2-link{color: var(--footer-text-secondary);
    text-decoration: none;
    font-size: 14px;
    transition: all 0.3s ease;
    display: inline-block;
    position: relative;}
.gx-accueil .footer-v2-link::before{content: '';
    position: absolute;
    bottom: -2px;
    left: 0;
    width: 0;
    height: 1px;
    background: var(--footer-accent);
    transition: width 0.3s ease;}
.gx-accueil .footer-v2-link:hover{color: var(--footer-accent);
    padding-left: 8px;}
.gx-accueil .footer-v2-link:hover::before{width: 100%;}
.gx-accueil .footer-v2-contact{list-style: none;
    margin: 0;
    padding: 0;}
.gx-accueil .footer-v2-contact-item{display: flex;
    align-items: flex-start;
    gap: 12px;
    margin-bottom: 18px;
    color: var(--footer-text-secondary);
    font-size: 14px;
    line-height: 1.6;}
.gx-accueil .footer-v2-contact-item svg{flex-shrink: 0;
    margin-top: 2px;
    color: var(--footer-accent);}
.gx-accueil .footer-v2-contact-item a{color: var(--footer-text-secondary);
    text-decoration: none;
    transition: color 0.3s ease;}
.gx-accueil .footer-v2-contact-item a:hover{color: var(--footer-accent);}
.gx-accueil .footer-v2-bottom{background: rgba(0, 0, 0, 0.3);
    border-top: 1px solid rgba(255, 255, 255, 0.05);
    padding: 30px 0;}
.gx-accueil .footer-v2-bottom-content{display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 30px;}
.gx-accueil .footer-v2-copyright{color: var(--footer-text-secondary);
    font-size: 14px;}
.gx-accueil .footer-v2-copyright p{margin: 0;}
.gx-accueil .footer-v2-legal{display: flex;
    align-items: center;
    gap: 16px;
    flex-wrap: wrap;}
.gx-accueil .footer-v2-legal-link{color: var(--footer-text-secondary);
    text-decoration: none;
    font-size: 13px;
    transition: color 0.3s ease;}
.gx-accueil .footer-v2-legal-link:hover{color: var(--footer-accent);}
.gx-accueil .footer-v2-separator{color: rgba(255, 255, 255, 0.2);
    font-size: 13px;}
@media (max-width: 1024px){.gx-accueil .footer-v2-container{padding: 0 30px;}
.gx-accueil .footer-v2-grid{grid-template-columns: 2fr 1fr 1fr;
        gap: 40px;}
.gx-accueil .footer-v2-brand{grid-column: 1 / -1;
        padding-right: 0;
        max-width: 600px;}
.gx-accueil .footer-v2-newsletter-content{flex-direction: column;
        text-align: center;}
.gx-accueil .footer-v2-newsletter-form{max-width: 100%;}}
@media (max-width: 768px){.gx-accueil .footer-v2-container{padding: 0 20px;}
.gx-accueil .footer-v2-newsletter{padding: 40px 0;}
.gx-accueil .footer-v2-newsletter-title{font-size: 24px;}
.gx-accueil .footer-v2-newsletter-subtitle{font-size: 14px;}
.gx-accueil .footer-v2-newsletter-form{flex-direction: column;}
.gx-accueil .footer-v2-newsletter-btn{justify-content: center;}
.gx-accueil .footer-v2-main{padding: 50px 0 40px;}
.gx-accueil .footer-v2-grid{grid-template-columns: 1fr;
        gap: 40px;}
.gx-accueil .footer-v2-brand{text-align: center;}
.gx-accueil .footer-v2-logo{justify-content: center;}
.gx-accueil .footer-v2-social{justify-content: center;}
.gx-accueil .footer-v2-column-title{font-size: 14px;
        margin-bottom: 16px;}
.gx-accueil .footer-v2-bottom-content{flex-direction: column;
        text-align: center;}
.gx-accueil .footer-v2-legal{justify-content: center;}
.gx-accueil .footer-v2-copyright{font-size: 13px;}
.gx-accueil .footer-v2-legal-link{font-size: 12px;}}
@media (max-width: 480px){.gx-accueil .footer-v2-newsletter-input{padding: 14px 16px;
        font-size: 14px;}
.gx-accueil .footer-v2-newsletter-btn{padding: 14px 24px;
        font-size: 14px;}
.gx-accueil .footer-v2-logo-img{width: 50px;
        height: 50px;}
.gx-accueil .footer-v2-logo-name{font-size: 20px;}
.gx-accueil .footer-v2-logo-location{font-size: 10px;}
.gx-accueil .footer-v2-social-link{width: 38px;
        height: 38px;}
.gx-accueil .footer-v2-legal{flex-direction: column;
        gap: 8px;}
.gx-accueil .footer-v2-separator{display: none;}}
.gx-accueil img, .gx-accueil video{max-width: 100%;}
@media (max-width: 768px){.gx-accueil{-webkit-text-size-adjust: 100%;}
.gx-accueil .main-content{overflow-x: hidden;}
.gx-accueil .resto-header-title{font-size: clamp(18px, 5vw, 28px) !important;
        line-height: 1.2;
        overflow-wrap: anywhere;
        padding-inline: 12px;}
.gx-accueil [class*="scroll-container"], .gx-accueil [class*="scroll-wrapper"]{-webkit-overflow-scrolling: touch;}
.gx-accueil .nav-icon, .gx-accueil .menu-toggle, .gx-accueil .lang-btn, .gx-accueil .quick-link-item{min-height: 40px;}}
@media (max-width: 480px){.gx-accueil .resto-header-title{font-size: clamp(16px, 5.5vw, 22px) !important;}
.gx-accueil{overflow-x: hidden;}
.gx-accueil .container, .gx-accueil .row{max-width: 100%;}}
.gx-accueil .go-home-hero .search-bar-v2-container{display: flex !important;
    grid-template-columns: none !important;
    align-items: center;
    gap: 12px !important;
    width: 100%;}
@media (max-width: 1024px){.gx-accueil .go-home-hero .search-bar-v2-container{display: flex !important;
        grid-template-columns: none !important;}}
@media (max-width: 560px){}
.gx-accueil .header-v2{transition: background-color .3s ease, box-shadow .3s ease, border-color .3s ease;}
@media (max-width: 640px){}
.gx-accueil .header-v2, .gx-accueil .header-v2 .header-nav, .gx-accueil .header-v2 .header-top{transition: background-color .35s ease, box-shadow .35s ease, border-color .35s ease, backdrop-filter .35s ease;}
body:not(.hdr-scrolled):not(.hdr-search-open) .gx-accueil .header-v2, body:not(.hdr-scrolled):not(.hdr-search-open) .gx-accueil .header-v2 .header-nav, body:not(.hdr-scrolled):not(.hdr-search-open) .gx-accueil .header-v2 .header-top, body:not(.hdr-scrolled):not(.hdr-search-open) .gx-accueil .header-v2.scrolled, body:not(.hdr-scrolled):not(.hdr-search-open) .gx-accueil .header-v2.scrolled .header-nav{background: transparent !important;
    background-color: transparent !important;
    box-shadow: none !important;
    border-bottom-color: transparent !important;}
@keyframes wcHeroUp{ from { opacity: 0; transform: translateY(26px); } to { opacity: 1; transform: none; } }
.gx-accueil .go-home-hero .search-bar-v2{width: min(820px, 94%) !important;
    margin: 0 auto !important;
    background: rgba(255, 255, 255, .12) !important;
    -webkit-backdrop-filter: blur(18px) saturate(160%); backdrop-filter: blur(18px) saturate(160%);
    border: 1px solid rgba(255, 255, 255, .24) !important;
    border-radius: 999px !important;
    box-shadow: 0 24px 60px rgba(4, 10, 22, .42) !important;
    padding: 8px !important;
    animation: wcHeroUp .85s .16s cubic-bezier(.2, .7, .2, 1) both;}
@media (max-width: 640px){}
.gx-accueil [data-snb-next-nav] .snb-links{scroll-behavior: smooth;}
.gx-accueil [data-snb-next-nav] .snb-scroll-controls{display: inline-flex;
        align-items: center;
        gap: 6px;
        margin-left: 10px;
        flex-shrink: 0;}
.gx-accueil [data-snb-next-nav] .snb-scroll-btn{width: 30px;
        height: 30px;
        border-radius: 50%;
        border: 1px solid rgba(212, 175, 55, 0.45);
        background: #fff;
        color: #1a2942;
        cursor: pointer;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        transition: all .2s ease;}
.gx-accueil [data-snb-next-nav] .snb-scroll-btn:hover{background: #d4af37;
        color: #fff;
        border-color: #d4af37;}
@media (max-width: 768px){.gx-accueil [data-snb-next-nav] .snb-scroll-controls{gap: 4px;
            margin-left: 6px;}
.gx-accueil [data-snb-next-nav] .snb-scroll-btn{width: 28px;
            height: 28px;}}
.gx-accueil .nl-agency-section{background: linear-gradient(180deg,#f8faff 0%,#fff 100%);}
.gx-accueil .nl-agency-body{padding: 0 40px 60px;}
.gx-accueil .nl-hero-banner{background: linear-gradient(135deg,#0f2240 0%,#1e3a5f 60%,#0d1b35 100%);
    border-radius: 24px; margin: 24px 0; padding: 64px;
    display: grid; grid-template-columns: 1fr 1fr; gap: 60px;
    align-items: center; position: relative; overflow: hidden;}
.gx-accueil .nl-hero-bg-mesh{position: absolute; inset: 0; pointer-events: none;
    background-image: linear-gradient(rgba(255,255,255,0.02) 1px, transparent 1px),
                      linear-gradient(90deg, rgba(255,255,255,0.02) 1px, transparent 1px);
    background-size: 40px 40px;}
.gx-accueil .nl-hero-badge{display: inline-flex; align-items: center; gap: 8px;
    background: rgba(52,211,153,0.15); border: 1px solid rgba(52,211,153,0.3);
    color: #34d399; border-radius: 999px; padding: 6px 16px;
    font-size: 11px; font-weight: 700; text-transform: uppercase; letter-spacing: 1px;
    margin-bottom: 24px;}
.gx-accueil .nl-badge-dot{width: 7px; height: 7px; background: #34d399; border-radius: 50%;
    animation: nlPulse 2s infinite;}
@keyframes nlPulse{ 0%,100%{opacity:1;transform:scale(1)} 50%{opacity:0.4;transform:scale(1.4)} }
.gx-accueil .nl-hero-title{font-family: 'Playfair Display', serif;
    font-size: clamp(32px, 3.5vw, 52px); color: #fff;
    line-height: 1.1; margin-bottom: 20px;}
.gx-accueil .nl-hero-title em{font-style: italic; color: #e8761a;}
.gx-accueil .nl-hero-desc{font-size: 16px; color: rgba(255,255,255,0.7); line-height: 1.85; margin-bottom: 36px;}
.gx-accueil .nl-hero-actions{display: flex; gap: 14px; flex-wrap: wrap; margin-bottom: 40px;}
.gx-accueil .nl-btn-primary{background: #e8761a; color: #fff; padding: 14px 28px; border-radius: 10px;
    font-weight: 700; font-size: 14px; text-decoration: none;
    display: inline-flex; align-items: center; gap: 8px; transition: all 0.2s;}
.gx-accueil .nl-btn-primary:hover{background: #c45e0e; transform: translateY(-2px); color: #fff;}
.gx-accueil .nl-btn-secondary{border: 2px solid rgba(255,255,255,0.3); color: #fff; padding: 14px 28px;
    border-radius: 10px; font-weight: 700; font-size: 14px; text-decoration: none;
    display: inline-flex; align-items: center; gap: 8px; transition: all 0.2s;}
.gx-accueil .nl-btn-secondary:hover{border-color: #fff; background: rgba(255,255,255,0.08); color: #fff;}
.gx-accueil .nl-hero-kpis{display: flex; gap: 32px;}
.gx-accueil .nl-kpi strong{display: block; font-family: 'Bebas Neue', sans-serif; font-size: 40px; color: #e8761a; line-height: 1;}
.gx-accueil .nl-kpi span{font-size: 11px; color: rgba(255,255,255,0.55); text-transform: uppercase; letter-spacing: 0.8px; margin-top: 4px; display: block;}
.gx-accueil .nl-dashboard-mock{background: rgba(255,255,255,0.06); border: 1px solid rgba(255,255,255,0.12);
    border-radius: 16px; overflow: hidden;}
.gx-accueil .nl-dash-topbar{background: rgba(255,255,255,0.06); padding: 10px 16px;
    border-bottom: 1px solid rgba(255,255,255,0.08);
    display: flex; align-items: center; gap: 10px;}
.gx-accueil .nl-dash-dots{display: flex; gap: 5px;}
.gx-accueil .nl-dash-dots span{width: 9px; height: 9px; border-radius: 50%; background: rgba(255,255,255,0.2);}
.gx-accueil .nl-dash-dots span:nth-child(1){background: #ff5f57;}
.gx-accueil .nl-dash-dots span:nth-child(2){background: #febc2e;}
.gx-accueil .nl-dash-dots span:nth-child(3){background: #28c840;}
.gx-accueil .nl-dash-title{font-size: 11px; color: rgba(255,255,255,0.4); margin-left: 8px;}
.gx-accueil .nl-dash-body{padding: 24px; display: flex; flex-direction: column; gap: 18px;}
.gx-accueil .nl-dash-metric{display: flex; align-items: center; gap: 12px;}
.gx-accueil .nl-dash-label{font-size: 12px; color: rgba(255,255,255,0.6); width: 130px; flex-shrink: 0;}
.gx-accueil .nl-dash-bar-wrap{flex: 1; height: 6px; background: rgba(255,255,255,0.08); border-radius: 999px; overflow: hidden;}
.gx-accueil .nl-dash-bar{height: 100%; border-radius: 999px; background: linear-gradient(90deg,#e8761a,#f5a623);}
.gx-accueil .nl-dash-val{font-size: 13px; font-weight: 700; color: #e8761a; min-width: 48px; text-align: right;}
.gx-accueil .nl-dash-live{display: flex; justify-content: space-between; padding-top: 12px;
    border-top: 1px solid rgba(255,255,255,0.07); font-size: 11px; color: rgba(255,255,255,0.4);}
.gx-accueil .nl-conseil-grid{display: grid; grid-template-columns: repeat(4,1fr); gap: 20px; margin: 32px 0;}
.gx-accueil .nl-conseil-card{background: #fff; border: 1.5px solid #e5e7eb; border-radius: 20px; padding: 32px;
    transition: all 0.3s;}
.gx-accueil .nl-conseil-card:hover{border-color: #e8761a; transform: translateY(-4px); box-shadow: 0 20px 48px rgba(232,118,26,0.1);}
.gx-accueil .nl-conseil-icon{width: 52px; height: 52px; border-radius: 14px;
    display: flex; align-items: center; justify-content: center;
    font-size: 22px; margin-bottom: 18px;}
.gx-accueil .nl-conseil-card h3{font-size: 16px; font-weight: 700; color: #1a1a1a; margin-bottom: 10px;}
.gx-accueil .nl-conseil-card p{font-size: 13px; color: #666; line-height: 1.7; margin-bottom: 16px;}
.gx-accueil .nl-conseil-tag{font-size: 11px; font-weight: 700; text-transform: uppercase; letter-spacing: 0.8px;
    color: #10b981; background: rgba(16,185,129,0.1); padding: 4px 10px;
    border-radius: 6px; display: inline-block;}
.gx-accueil .nl-form-section{background: #f8faff; border-radius: 24px; padding: 56px;
    display: grid; grid-template-columns: 1fr 1fr; gap: 60px; margin-top: 32px;}
.gx-accueil .nl-form-eyebrow{display: inline-flex; align-items: center; gap: 6px;
    font-size: 11px; font-weight: 700; text-transform: uppercase; letter-spacing: 1.5px;
    color: #e8761a; background: #fef3ea; padding: 6px 14px; border-radius: 999px; margin-bottom: 16px;}
.gx-accueil .nl-form-left h3{font-family: 'Playfair Display', serif; font-size: 28px; color: #1a1a1a; margin-bottom: 14px;}
.gx-accueil .nl-form-left p{font-size: 15px; color: #666; line-height: 1.8; margin-bottom: 24px;}
.gx-accueil .nl-form-benefits{list-style: none; display: flex; flex-direction: column; gap: 12px;}
.gx-accueil .nl-form-benefits li{font-size: 14px; color: #444; display: flex; align-items: center; gap: 10px;}
.gx-accueil .nl-form-benefits li i{color: #10b981; font-size: 14px; flex-shrink: 0;}
.gx-accueil .nl-consul-form{display: flex; flex-direction: column; gap: 16px;}
.gx-accueil .nl-form-row{display: grid; grid-template-columns: 1fr 1fr; gap: 16px;}
.gx-accueil .nl-form-group{display: flex; flex-direction: column; gap: 6px;}
.gx-accueil .nl-form-group label{font-size: 12px; font-weight: 700; color: #374151;}
.gx-accueil .nl-form-group input, .gx-accueil .nl-form-group select, .gx-accueil .nl-form-group textarea{border: 1.5px solid #e5e7eb; border-radius: 10px; padding: 12px 14px;
    font-size: 14px; color: #1a1a1a; background: #fff; outline: none;
    transition: border-color 0.2s; font-family: 'DM Sans', sans-serif;}
.gx-accueil .nl-form-group input:focus, .gx-accueil .nl-form-group select:focus, .gx-accueil .nl-form-group textarea:focus{border-color: #e8761a;}
.gx-accueil .nl-btn-submit{background: linear-gradient(135deg,#e8761a,#c04f10); color: #fff;
    border: none; border-radius: 10px; padding: 16px; font-size: 15px;
    font-weight: 700; cursor: pointer; display: flex; align-items: center;
    justify-content: center; gap: 8px; transition: all 0.2s;}
.gx-accueil .nl-btn-submit:hover{transform: translateY(-2px); box-shadow: 0 12px 32px rgba(232,118,26,0.35);}
.gx-accueil .nl-form-note{font-size: 11px; color: #9ca3af; text-align: center; margin-top: 4px;}
@media(max-width:1100px){.gx-accueil .nl-hero-banner{grid-template-columns: 1fr;}
.gx-accueil .nl-conseil-grid{grid-template-columns: repeat(2,1fr);}
.gx-accueil .nl-form-section{grid-template-columns: 1fr;}}
@media(max-width:640px){.gx-accueil .nl-agency-body{padding: 0 16px 40px;}
.gx-accueil .nl-hero-banner{padding: 36px 24px;}
.gx-accueil .nl-conseil-grid{grid-template-columns: 1fr;}
.gx-accueil .nl-hero-kpis{flex-wrap: wrap; gap: 20px;}
.gx-accueil .nl-form-row{grid-template-columns: 1fr;}
.gx-accueil .nl-form-section{padding: 32px 24px;}}
.gx-accueil .nl-plans-section{background: #fff;}
.gx-accueil .nl-plans-body{padding: 0 40px 60px;}
.gx-accueil .nl-plans-intro{display: flex; justify-content: space-between; align-items: center;
    gap: 40px; margin: 24px 0 40px; padding: 32px 40px;
    background: linear-gradient(135deg,#f8faff,#fff);
    border: 1px solid #e5e7eb; border-radius: 20px;}
.gx-accueil .nl-plans-intro-text p{font-size: 15px; color: #555; line-height: 1.8; max-width: 600px;}
.gx-accueil .nl-plans-intro-stats{display: flex; gap: 32px; flex-shrink: 0;}
.gx-accueil .nl-intro-stat{text-align: center;}
.gx-accueil .nl-intro-stat strong{display: block; font-family: 'Bebas Neue', sans-serif; font-size: 42px; color: #e8761a; line-height: 1;}
.gx-accueil .nl-intro-stat span{font-size: 11px; color: #888; text-transform: uppercase; letter-spacing: 0.8px; margin-top: 4px; display: block;}
.gx-accueil .nl-plans-grid{display: grid; grid-template-columns: repeat(5,1fr); gap: 18px; margin-bottom: 32px;}
.gx-accueil .nl-plan-card{background: #fff; border: 2px solid #e5e7eb; border-radius: 24px; padding: 32px;
    position: relative; overflow: hidden; transition: all 0.3s; display: flex; flex-direction: column;}
.gx-accueil .nl-plan-card:hover{transform: translateY(-6px); box-shadow: 0 24px 60px rgba(0,0,0,0.1);}
.gx-accueil .nl-plan-card.nl-plan-featured{border-color: #e8761a; background: linear-gradient(160deg,#fffbf7,#fff);}
.gx-accueil .nl-plan-badge{position: absolute; top: 0; right: 0;
    color: #fff; font-size: 10px; font-weight: 700;
    text-transform: uppercase; letter-spacing: 0.8px;
    padding: 5px 14px; border-radius: 0 22px 0 12px;}
.gx-accueil .nl-plan-icon-wrap{width: 60px; height: 60px; border-radius: 16px;
    display: flex; align-items: center; justify-content: center;
    font-size: 26px; color: #fff; margin-bottom: 16px;}
.gx-accueil .nl-plan-label{font-size: 10px; font-weight: 800; text-transform: uppercase; letter-spacing: 1.5px; margin-bottom: 10px;}
.gx-accueil .nl-plan-title{font-size: 17px; font-weight: 700; color: #1a1a1a; margin-bottom: 10px; line-height: 1.3;}
.gx-accueil .nl-plan-desc{font-size: 13px; color: #666; line-height: 1.65; margin-bottom: 20px; flex: 1;}
.gx-accueil .nl-plan-features{list-style: none; display: flex; flex-direction: column; gap: 8px; margin-bottom: 24px;}
.gx-accueil .nl-plan-features li{font-size: 12px; color: #444; display: flex; align-items: flex-start; gap: 8px; line-height: 1.5;}
.gx-accueil .nl-plan-features li i{font-size: 12px; flex-shrink: 0; margin-top: 2px;}
.gx-accueil .nl-plan-price{display: inline-flex; align-self: flex-start;
    margin: 0 0 14px; padding: 5px 10px;
    border-radius: 999px; font-size: 11px; font-weight: 800;
    color: #fff; background: #1f2a44;}
.gx-accueil .nl-plan-cta{display: flex; align-items: center; justify-content: center; gap: 8px;
    color: #fff; font-weight: 700; font-size: 13px; padding: 12px;
    border-radius: 10px; text-decoration: none; text-align: center;
    transition: all 0.2s;}
.gx-accueil .nl-plan-cta:hover{opacity: 0.9; transform: translateY(-1px); color: #fff;}
.gx-accueil .nl-plans-compare-banner{background: linear-gradient(135deg,#0f2240,#1e3a5f); border-radius: 20px;
    padding: 40px 48px; display: flex; justify-content: space-between;
    align-items: center; gap: 40px;}
.gx-accueil .nl-compare-left h3{font-size: 22px; font-weight: 700; color: #fff; margin-bottom: 8px;}
.gx-accueil .nl-compare-left p{font-size: 14px; color: rgba(255,255,255,0.7); line-height: 1.7; max-width: 500px;}
.gx-accueil .nl-compare-btns{display: flex; gap: 12px; flex-shrink: 0;}
.gx-accueil .nl-compare-btn-primary{background: #e8761a; color: #fff; padding: 14px 24px; border-radius: 10px;
    font-weight: 700; font-size: 14px; text-decoration: none;
    display: inline-flex; align-items: center; gap: 8px; white-space: nowrap;}
.gx-accueil .nl-compare-btn-secondary{border: 2px solid rgba(255,255,255,0.3); color: #fff; padding: 14px 24px;
    border-radius: 10px; font-weight: 700; font-size: 14px; text-decoration: none;
    display: inline-flex; align-items: center; gap: 8px; white-space: nowrap;}
.gx-accueil .nl-compare-btn-secondary:hover{border-color: #fff; color: #fff;}
@media(max-width:1300px){.gx-accueil .nl-plans-grid{grid-template-columns: repeat(3,1fr);}}
@media(max-width:900px){.gx-accueil .nl-plans-grid{grid-template-columns: repeat(2,1fr);}
.gx-accueil .nl-plans-intro{flex-direction: column;}
.gx-accueil .nl-plans-compare-banner{flex-direction: column;}}
@media(max-width:640px){.gx-accueil .nl-plans-body{padding: 0 16px 40px;}
.gx-accueil .nl-plans-grid{grid-template-columns: 1fr;}
.gx-accueil .nl-plans-intro-stats{flex-wrap: wrap; gap: 20px;}}
.gx-accueil .nl-editor-section{background: #f8faff;}
.gx-accueil .nl-editor-body{padding: 0 40px 60px;}
.gx-accueil .nl-editor-showcase{display: grid; grid-template-columns: 1fr 1fr; gap: 70px;
    align-items: center; margin: 24px 0 48px;}
.gx-accueil .nl-ed-eyebrow{display: inline-flex; align-items: center; gap: 6px;
    font-size: 11px; font-weight: 700; text-transform: uppercase; letter-spacing: 1.5px;
    color: #8b5cf6; background: rgba(139,92,246,0.1); padding: 6px 14px;
    border-radius: 999px; margin-bottom: 16px;}
.gx-accueil .nl-editor-left h2{font-family: 'Playfair Display', serif; font-size: clamp(28px,3vw,42px); color: #1a1a1a; line-height: 1.15; margin-bottom: 16px;}
.gx-accueil .nl-editor-left h2 em{font-style: italic; color: #e8761a;}
.gx-accueil .nl-editor-left > p{font-size: 15px; color: #555; line-height: 1.8; margin-bottom: 28px;}
.gx-accueil .nl-editor-left{padding: 0 24px;}
.gx-accueil .nl-ed-steps{display: flex; flex-direction: column; gap: 20px; margin-bottom: 32px;}
.gx-accueil .nl-ed-step{display: flex; gap: 16px; align-items: flex-start;}
.gx-accueil .nl-ed-step-num{width: 36px; height: 36px; border-radius: 50%; background: #e8761a; color: #fff;
    display: flex; align-items: center; justify-content: center;
    font-weight: 800; font-size: 14px; flex-shrink: 0;}
.gx-accueil .nl-ed-step h4{font-size: 14px; font-weight: 700; color: #1a1a1a; margin-bottom: 4px;}
.gx-accueil .nl-ed-step p{font-size: 13px; color: #666; line-height: 1.6;}
.gx-accueil .nl-ed-actions{display: flex; gap: 12px; flex-wrap: wrap;}
.gx-accueil .nl-btn-outline-dark{border: 2px solid #1a1a1a; color: #1a1a1a; padding: 14px 24px; border-radius: 10px;
    font-weight: 700; font-size: 14px; text-decoration: none;
    display: inline-flex; align-items: center; gap: 8px; transition: all 0.2s;}
.gx-accueil .nl-btn-outline-dark:hover{background: #1a1a1a; color: #fff;}
.gx-accueil .nl-editor-right{position: relative; justify-self: end; width: 100%; max-width: 700px;}
.gx-accueil .nl-browser-frame{background: #fff; border-radius: 16px; overflow: hidden;
    box-shadow: 0 32px 80px rgba(0,0,0,0.15); border: 1px solid #e5e7eb;}
.gx-accueil .nl-browser-bar{background: #f1f3f5; padding: 10px 16px; display: flex; align-items: center; gap: 12px;
    border-bottom: 1px solid #e5e7eb;}
.gx-accueil .nl-browser-dots{display: flex; gap: 5px;}
.gx-accueil .nl-browser-dots span{width: 10px; height: 10px; border-radius: 50%;}
.gx-accueil .nl-browser-dots span:nth-child(1){background: #ff5f57;}
.gx-accueil .nl-browser-dots span:nth-child(2){background: #febc2e;}
.gx-accueil .nl-browser-dots span:nth-child(3){background: #28c840;}
.gx-accueil .nl-browser-url{flex: 1; background: #fff; border: 1px solid #e5e7eb; border-radius: 6px; padding: 4px 12px; font-size: 11px; color: #666; text-align: center;}
.gx-accueil .nl-browser-actions{display: flex; gap: 10px; color: #888; font-size: 13px;}
.gx-accueil .nl-browser-content{position: relative;}
.gx-accueil .nl-preview-hero{background: linear-gradient(135deg,#0f2240,#1e3a5f); padding: 14px 16px 20px;}
.gx-accueil .nl-preview-nav{display: flex; align-items: center; justify-content: space-between; margin-bottom: 20px;}
.gx-accueil .nl-prev-logo{font-size: 12px; font-weight: 800; color: #fff;}
.gx-accueil .nl-prev-links{display: flex; gap: 12px;}
.gx-accueil .nl-prev-links span{font-size: 9px; color: rgba(255,255,255,0.7);}
.gx-accueil .nl-prev-cta-btn{background: #e8761a; color: #fff; font-size: 9px; font-weight: 700; padding: 4px 10px; border-radius: 5px;}
.gx-accueil .nl-preview-hero-content{padding: 0 8px;}
.gx-accueil .nl-prev-eyebrow{font-size: 9px; font-weight: 700; text-transform: uppercase; letter-spacing: 1px; color: #e8761a; margin-bottom: 6px;}
.gx-accueil .nl-prev-title{font-size: 18px; font-weight: 800; color: #fff; line-height: 1.2; margin-bottom: 6px;}
.gx-accueil .nl-prev-sub{font-size: 10px; color: rgba(255,255,255,0.65); margin-bottom: 14px;}
.gx-accueil .nl-prev-btns{display: flex; gap: 8px;}
.gx-accueil .nl-prev-btn-a{background: #e8761a; color: #fff; font-size: 9px; font-weight: 700; padding: 5px 12px; border-radius: 5px;}
.gx-accueil .nl-prev-btn-b{border: 1px solid rgba(255,255,255,0.4); color: #fff; font-size: 9px; font-weight: 700; padding: 5px 12px; border-radius: 5px;}
.gx-accueil .nl-preview-cards{display: grid; grid-template-columns: repeat(3,1fr); gap: 8px; padding: 12px;}
.gx-accueil .nl-prev-card{border-radius: 8px; padding: 12px; text-align: center; font-size: 10px; font-weight: 700; color: #1a1a1a;}
.gx-accueil .nl-prev-card i{display: block; font-size: 18px; margin-bottom: 5px;}
.gx-accueil .nl-editor-tools-overlay{position: absolute; bottom: 60px; right: 10px;}
.gx-accueil .nl-tool-badge{background: rgba(139,92,246,0.9); color: #fff; font-size: 10px; font-weight: 700;
    padding: 6px 12px; border-radius: 20px;
    display: flex; align-items: center; gap: 5px;}
.gx-accueil .nl-floating-pill{position: absolute; background: #fff; border: 1px solid #e5e7eb;
    border-radius: 999px; padding: 6px 14px; font-size: 11px; font-weight: 700;
    color: #1a1a1a; box-shadow: 0 6px 20px rgba(0,0,0,0.1);
    display: flex; align-items: center; gap: 6px;}
.gx-accueil .nl-fp-1{bottom: -10px; left: -20px;}
.gx-accueil .nl-fp-2{bottom: 40px; right: -20px;}
.gx-accueil .nl-fp-3{top: 20px; right: -30px;}
.gx-accueil .nl-floating-pill i{color: #e8761a;}
.gx-accueil .nl-ed-features-grid{width: 100%; display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 20px; margin-bottom: 48px;}
.gx-accueil .nl-ed-feature-card{background: #fff; border: 1.5px solid #e5e7eb; border-radius: 20px; padding: 28px; transition: all 0.3s;}
.gx-accueil .nl-ed-feature-card:hover{transform: translateY(-3px); box-shadow: 0 16px 40px rgba(0,0,0,0.08);}
.gx-accueil .nl-ed-feature-icon{width: 48px; height: 48px; border-radius: 12px; display: flex; align-items: center; justify-content: center; font-size: 20px; margin-bottom: 16px;}
.gx-accueil .nl-ed-feature-card h4{font-size: 15px; font-weight: 700; color: #1a1a1a; margin-bottom: 8px;}
.gx-accueil .nl-ed-feature-card p{font-size: 13px; color: #666; line-height: 1.65;}
.gx-accueil .nl-ed-plans-row{display: grid; grid-template-columns: repeat(3,1fr); gap: 20px;}
.gx-accueil .nl-ed-plan{background: #fff; border: 2px solid #e5e7eb; border-radius: 20px; padding: 36px; position: relative;}
.gx-accueil .nl-ed-plan-featured{border-color: #e8761a; background: linear-gradient(160deg,#fffbf7,#fff);}
.gx-accueil .nl-ed-plan-badge{font-size: 10px; font-weight: 700; text-transform: uppercase; letter-spacing: 0.8px; color: #e8761a; margin-bottom: 12px;}
.gx-accueil .nl-ed-plan-name{font-size: 14px; font-weight: 700; text-transform: uppercase; letter-spacing: 1px; color: #888; margin-bottom: 8px;}
.gx-accueil .nl-ed-plan-price{font-family: 'Bebas Neue', sans-serif; font-size: 44px; color: #1a1a1a; line-height: 1; margin-bottom: 4px;}
.gx-accueil .nl-ed-plan-price span{font-size: 15px; font-weight: 400; color: #888; font-family: 'DM Sans', sans-serif;}
.gx-accueil .nl-ed-plan-list{list-style: none; display: flex; flex-direction: column; gap: 10px; margin: 20px 0 28px;}
.gx-accueil .nl-ed-plan-list li{font-size: 13px; color: #444; display: flex; align-items: center; gap: 8px;}
.gx-accueil .nl-ed-plan-list li i{color: #10b981; font-size: 13px;}
.gx-accueil .nl-disabled{opacity: 0.45;}
.gx-accueil .nl-disabled i{color: #ccc !important;}
.gx-accueil .nl-ed-plan-cta{display: block; text-align: center; padding: 14px; border-radius: 10px; font-weight: 700; font-size: 14px; text-decoration: none; transition: all 0.2s;}
.gx-accueil .nl-ed-cta-light{background: #f0f4ff; color: #1e3a5f; border: 2px solid #e5e7eb;}
.gx-accueil .nl-ed-cta-light:hover{background: #1e3a5f; color: #fff;}
.gx-accueil .nl-ed-cta-orange{background: #e8761a; color: #fff;}
.gx-accueil .nl-ed-cta-orange:hover{background: #c45e0e; color: #fff;}
@media(max-width:1100px){.gx-accueil .nl-editor-showcase{grid-template-columns: repeat(2,minmax(0,1fr)); gap: 28px; align-items: start;}
.gx-accueil .nl-editor-left{padding: 0;}
.gx-accueil .nl-ed-features-grid{grid-template-columns: repeat(2,1fr);}
.gx-accueil .nl-ed-plans-row{grid-template-columns: 1fr;}
.gx-accueil .nl-floating-pill{display: none;}}
@media(max-width:900px){.gx-accueil .nl-editor-showcase{grid-template-columns: 1fr;}
.gx-accueil .nl-editor-right{justify-self: stretch; max-width: none;}}
@media(max-width:640px){.gx-accueil .nl-editor-body{padding: 0 16px 40px;}
.gx-accueil .nl-ed-features-grid{grid-template-columns: 1fr;}}
.gx-accueil .nl-api-section{background: linear-gradient(180deg, #fff 0%, #f8faff 100%);}
.gx-accueil .nl-api-body{padding: 0 40px 60px;}
.gx-accueil .nl-api-hero{background: linear-gradient(135deg, #0a1628 0%, #1a2a4a 100%);
    border-radius: 28px;
    margin: 24px 0 48px;
    padding: 56px 64px;
    display: grid;
    grid-template-columns: 1.2fr 0.8fr;
    gap: 50px;
    align-items: center;
    position: relative;
    overflow: hidden;}
.gx-accueil .nl-api-hero::before{content: '';
    position: absolute;
    top: -50%;
    right: -30%;
    width: 80%;
    height: 200%;
    background: radial-gradient(circle, rgba(232,118,26,0.08) 0%, transparent 70%);
    pointer-events: none;}
.gx-accueil .nl-api-badge{display: inline-flex;
    align-items: center;
    gap: 8px;
    background: rgba(52,211,153,0.15);
    border: 1px solid rgba(52,211,153,0.3);
    color: #34d399;
    border-radius: 999px;
    padding: 6px 16px;
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 1px;
    margin-bottom: 24px;}
.gx-accueil .nl-api-hero h2{font-family: 'Playfair Display', serif;
    font-size: clamp(32px, 3.2vw, 46px);
    color: #fff;
    line-height: 1.15;
    margin-bottom: 20px;}
.gx-accueil .nl-api-hero h2 em{font-style: italic; color: #e8761a;}
.gx-accueil .nl-api-hero > p{font-size: 15px;
    color: rgba(255,255,255,0.7);
    line-height: 1.8;
    margin-bottom: 28px;}
.gx-accueil .nl-api-stats{display: flex;
    gap: 32px;
    margin-bottom: 32px;
    flex-wrap: wrap;}
.gx-accueil .nl-api-stat strong{display: block;
    font-family: 'Bebas Neue', sans-serif;
    font-size: 38px;
    color: #e8761a;
    line-height: 1;}
.gx-accueil .nl-api-stat span{font-size: 11px;
    color: rgba(255,255,255,0.55);
    text-transform: uppercase;
    letter-spacing: 0.8px;
    margin-top: 4px;
    display: block;}
.gx-accueil .nl-api-actions{display: flex; gap: 14px; flex-wrap: wrap;}
.gx-accueil .nl-btn-secondary-api{border: 2px solid rgba(255,255,255,0.3);
    color: #fff;
    padding: 14px 28px;
    border-radius: 10px;
    font-weight: 700;
    font-size: 14px;
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    transition: all 0.2s;}
.gx-accueil .nl-btn-secondary-api:hover{border-color: #fff; background: rgba(255,255,255,0.08); color: #fff;}
.gx-accueil .nl-api-hero-code{position: relative;}
.gx-accueil .nl-code-window{background: #0d1117;
    border-radius: 16px;
    overflow: hidden;
    border: 1px solid rgba(255,255,255,0.1);
    box-shadow: 0 25px 50px -12px rgba(0,0,0,0.5);}
.gx-accueil .nl-code-header{background: #161b22;
    padding: 12px 16px;
    display: flex;
    align-items: center;
    gap: 8px;
    border-bottom: 1px solid #30363d;}
.gx-accueil .nl-code-dot{width: 10px;
    height: 10px;
    border-radius: 50%;}
.gx-accueil .nl-code-dot.red{background: #ff5f57;}
.gx-accueil .nl-code-dot.yellow{background: #febc2e;}
.gx-accueil .nl-code-dot.green{background: #28c840;}
.gx-accueil .nl-code-title{margin-left: 8px;
    font-size: 11px;
    color: #8b949e;
    font-family: monospace;}
.gx-accueil .nl-code-body{padding: 20px;
    overflow-x: auto;}
.gx-accueil .nl-code-body pre{margin: 0;
    font-family: 'Fira Code', 'Courier New', monospace;
    font-size: 11px;
    line-height: 1.6;
    color: #e6edf3;}
.gx-accueil .nl-api-floating-badge{position: absolute;
    bottom: -15px;
    right: -15px;
    background: #e8761a;
    color: #fff;
    font-size: 11px;
    font-weight: 700;
    padding: 8px 16px;
    border-radius: 999px;
    display: flex;
    align-items: center;
    gap: 8px;
    box-shadow: 0 8px 20px rgba(232,118,26,0.4);}
.gx-accueil .nl-api-features{display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 24px;
    margin-bottom: 60px;}
.gx-accueil .nl-api-feature-card{background: #fff;
    border: 1.5px solid #e5e7eb;
    border-radius: 20px;
    padding: 32px;
    transition: all 0.3s ease;}
.gx-accueil .nl-api-feature-card:hover{transform: translateY(-4px);
    border-color: #e8761a;
    box-shadow: 0 20px 40px rgba(0,0,0,0.08);}
.gx-accueil .nl-api-feature-icon{width: 52px;
    height: 52px;
    border-radius: 14px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 22px;
    margin-bottom: 20px;}
.gx-accueil .nl-api-feature-card h3{font-size: 16px;
    font-weight: 700;
    color: #1a1a1a;
    margin-bottom: 10px;}
.gx-accueil .nl-api-feature-card p{font-size: 13px;
    color: #666;
    line-height: 1.7;
    margin-bottom: 16px;}
.gx-accueil .nl-api-feature-tag{display: inline-block;
    font-size: 10px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.8px;
    padding: 4px 10px;
    border-radius: 6px;}
.gx-accueil .nl-api-integrations{background: #fff;
    border: 1px solid #e5e7eb;
    border-radius: 28px;
    padding: 56px;
    margin-bottom: 60px;
    text-align: center;}
.gx-accueil .nl-integrations-eyebrow{display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 1.5px;
    color: #e8761a;
    background: #fef3ea;
    padding: 6px 14px;
    border-radius: 999px;
    margin-bottom: 20px;}
.gx-accueil .nl-api-integrations h3{font-family: 'Playfair Display', serif;
    font-size: 28px;
    color: #1a1a1a;
    margin-bottom: 12px;}
.gx-accueil .nl-api-integrations > p{font-size: 15px;
    color: #666;
    max-width: 550px;
    margin: 0 auto 40px;}
.gx-accueil .nl-integrations-grid{display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 16px;
    margin-bottom: 32px;}
.gx-accueil .nl-integration-card{background: #f8faff;
    border: 1px solid #e5e7eb;
    border-radius: 50px;
    padding: 8px 20px 8px 12px;
    display: inline-flex;
    align-items: center;
    gap: 10px;
    transition: all 0.2s;}
.gx-accueil .nl-integration-card:hover{border-color: #e8761a;
    transform: translateY(-2px);}
.gx-accueil .nl-integration-icon{width: 32px;
    height: 32px;
    border-radius: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 16px;}
.gx-accueil .nl-integration-card span{font-size: 13px;
    font-weight: 600;
    color: #1a1a1a;}
.gx-accueil .nl-integrations-cta a{display: inline-flex;
    align-items: center;
    gap: 8px;
    color: #e8761a;
    font-weight: 700;
    font-size: 14px;
    text-decoration: none;
    transition: gap 0.2s;}
.gx-accueil .nl-integrations-cta a:hover{gap: 12px;}
.gx-accueil .nl-webhooks-demo{background: linear-gradient(135deg, #f8faff 0%, #fff 100%);
    border-radius: 28px;
    padding: 56px;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 60px;
    margin-bottom: 60px;
    border: 1px solid #e5e7eb;}
.gx-accueil .nl-demo-badge{display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 1.5px;
    color: #8b5cf6;
    background: rgba(139,92,246,0.1);
    padding: 6px 14px;
    border-radius: 999px;
    margin-bottom: 20px;}
.gx-accueil .nl-webhooks-demo h3{font-family: 'Playfair Display', serif;
    font-size: clamp(26px, 2.8vw, 36px);
    color: #1a1a1a;
    line-height: 1.2;
    margin-bottom: 16px;}
.gx-accueil .nl-webhooks-demo h3 em{font-style: italic; color: #e8761a;}
.gx-accueil .nl-webhooks-demo > p{font-size: 15px;
    color: #666;
    line-height: 1.8;
    margin-bottom: 24px;}
.gx-accueil .nl-demo-list{list-style: none;
    display: flex;
    flex-direction: column;
    gap: 12px;
    margin-bottom: 32px;}
.gx-accueil .nl-demo-list li{font-size: 14px;
    color: #444;
    display: flex;
    align-items: center;
    gap: 10px;}
.gx-accueil .nl-demo-list li i{color: #10b981; font-size: 14px;}
.gx-accueil .nl-btn-webhook{background: linear-gradient(135deg, #8b5cf6, #6d28d9);
    color: #fff;
    padding: 14px 28px;
    border-radius: 10px;
    font-weight: 700;
    font-size: 14px;
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    transition: all 0.2s;}
.gx-accueil .nl-btn-webhook:hover{transform: translateY(-2px); box-shadow: 0 12px 28px rgba(139,92,246,0.35); color: #fff;}
.gx-accueil .nl-webhook-config-mock{background: #fff;
    border: 1.5px solid #e5e7eb;
    border-radius: 20px;
    padding: 28px;
    box-shadow: 0 12px 32px rgba(0,0,0,0.05);}
.gx-accueil .nl-mock-header{display: flex;
    justify-content: space-between;
    align-items: center;
    padding-bottom: 16px;
    margin-bottom: 20px;
    border-bottom: 1px solid #e5e7eb;
    font-size: 13px;
    font-weight: 600;
    color: #374151;}
.gx-accueil .nl-mock-status{font-size: 11px; display: flex; align-items: center; gap: 5px;}
.gx-accueil .nl-mock-field{margin-bottom: 20px;}
.gx-accueil .nl-mock-field label{display: block;
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.8px;
    color: #888;
    margin-bottom: 6px;}
.gx-accueil .nl-mock-input{background: #f8faff;
    border: 1px solid #e5e7eb;
    border-radius: 10px;
    padding: 12px 14px;
    font-size: 13px;
    color: #1a1a1a;
    font-family: monospace;}
.gx-accueil .nl-mock-tags{display: flex;
    flex-wrap: wrap;
    gap: 8px;}
.gx-accueil .nl-mock-tag{background: #eff6ff;
    color: #3b82f6;
    font-size: 11px;
    font-weight: 600;
    padding: 5px 12px;
    border-radius: 20px;}
.gx-accueil .nl-mock-actions{display: flex;
    gap: 12px;
    margin-top: 20px;}
.gx-accueil .nl-mock-btn{background: #f1f3f5;
    padding: 8px 16px;
    border-radius: 8px;
    font-size: 12px;
    font-weight: 600;
    color: #555;
    cursor: default;
    display: inline-flex;
    align-items: center;
    gap: 6px;}
.gx-accueil .nl-api-cta-banner{background: linear-gradient(135deg, #0f2240, #1e3a5f);
    border-radius: 24px;
    padding: 48px 56px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    gap: 30px;}
.gx-accueil .nl-cta-content h3{font-size: 24px;
    color: #fff;
    margin-bottom: 8px;}
.gx-accueil .nl-cta-content p{font-size: 14px;
    color: rgba(255,255,255,0.7);
    max-width: 500px;}
.gx-accueil .nl-cta-buttons{display: flex;
    gap: 14px;
    flex-wrap: wrap;}
.gx-accueil .nl-cta-primary{background: #e8761a;
    color: #fff;
    padding: 14px 28px;
    border-radius: 10px;
    font-weight: 700;
    font-size: 14px;
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    transition: all 0.2s;}
.gx-accueil .nl-cta-primary:hover{background: #c45e0e; transform: translateY(-2px); color: #fff;}
.gx-accueil .nl-cta-secondary{border: 2px solid rgba(255,255,255,0.3);
    color: #fff;
    padding: 14px 28px;
    border-radius: 10px;
    font-weight: 700;
    font-size: 14px;
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    transition: all 0.2s;}
.gx-accueil .nl-cta-secondary:hover{border-color: #fff; background: rgba(255,255,255,0.08); color: #fff;}
@media(max-width: 1200px){.gx-accueil .nl-api-features{grid-template-columns: repeat(2, 1fr);}}
@media(max-width: 1000px){.gx-accueil .nl-api-hero{grid-template-columns: 1fr; padding: 40px;}
.gx-accueil .nl-webhooks-demo{grid-template-columns: 1fr;}
.gx-accueil .nl-api-integrations{padding: 40px 24px;}}
@media(max-width: 768px){.gx-accueil .nl-api-body{padding: 0 20px 40px;}
.gx-accueil .nl-api-hero{padding: 32px 24px;}
.gx-accueil .nl-api-features{grid-template-columns: 1fr;}
.gx-accueil .nl-api-stats{gap: 20px;}
.gx-accueil .nl-api-cta-banner{flex-direction: column; text-align: center; padding: 32px 24px;}
.gx-accueil .nl-integrations-grid{justify-content: center;}
.gx-accueil .nl-api-floating-badge{display: none;}}
@media(max-width: 480px){.gx-accueil .nl-code-body pre{font-size: 8px;}
.gx-accueil .nl-mock-tags{flex-wrap: wrap;}}
.gx-accueil .nl-forms-section{background: linear-gradient(180deg, #fff 0%, #f8faff 100%);}
.gx-accueil .nl-forms-body{padding: 0 40px 60px;}
.gx-accueil .nl-forms-hero{background: linear-gradient(135deg, #1a1a2e 0%, #16213e 50%, #0f0f1a 100%);
    border-radius: 28px;
    margin: 24px 0 48px;
    padding: 56px 64px;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 50px;
    align-items: center;
    position: relative;
    overflow: hidden;}
.gx-accueil .nl-forms-hero::before{content: '';
    position: absolute;
    top: -30%;
    left: -20%;
    width: 70%;
    height: 160%;
    background: radial-gradient(circle, rgba(232,118,26,0.08) 0%, transparent 70%);
    pointer-events: none;}
.gx-accueil .nl-forms-badge{display: inline-flex;
    align-items: center;
    gap: 8px;
    background: rgba(232,118,26,0.15);
    border: 1px solid rgba(232,118,26,0.3);
    color: #e8761a;
    border-radius: 999px;
    padding: 6px 16px;
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 1px;
    margin-bottom: 24px;}
.gx-accueil .nl-forms-hero h2{font-family: 'Playfair Display', serif;
    font-size: clamp(32px, 3.2vw, 46px);
    color: #fff;
    line-height: 1.15;
    margin-bottom: 20px;}
.gx-accueil .nl-forms-hero h2 em{font-style: italic; color: #e8761a;}
.gx-accueil .nl-forms-hero > p{font-size: 15px;
    color: rgba(255,255,255,0.7);
    line-height: 1.8;
    margin-bottom: 28px;}
.gx-accueil .nl-forms-stats{display: flex;
    gap: 32px;
    margin-bottom: 32px;
    flex-wrap: wrap;}
.gx-accueil .nl-forms-stat strong{display: block;
    font-family: 'Bebas Neue', sans-serif;
    font-size: 38px;
    color: #e8761a;
    line-height: 1;}
.gx-accueil .nl-forms-stat span{font-size: 11px;
    color: rgba(255,255,255,0.55);
    text-transform: uppercase;
    letter-spacing: 0.8px;
    margin-top: 4px;
    display: block;}
.gx-accueil .nl-forms-actions{display: flex; gap: 14px; flex-wrap: wrap;}
.gx-accueil .nl-btn-secondary-forms{border: 2px solid rgba(255,255,255,0.3);
    color: #fff;
    padding: 14px 28px;
    border-radius: 10px;
    font-weight: 700;
    font-size: 14px;
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    transition: all 0.2s;}
.gx-accueil .nl-btn-secondary-forms:hover{border-color: #fff; background: rgba(255,255,255,0.08); color: #fff;}
.gx-accueil .nl-forms-hero-preview{position: relative;}
.gx-accueil .nl-form-preview-card{background: #fff;
    border-radius: 20px;
    overflow: hidden;
    box-shadow: 0 25px 50px -12px rgba(0,0,0,0.35);}
.gx-accueil .nl-preview-header{background: linear-gradient(135deg, #e8761a, #c04f10);
    padding: 14px 20px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    color: #fff;}
.gx-accueil .nl-preview-title{font-size: 14px; font-weight: 700; display: flex; align-items: center; gap: 8px;}
.gx-accueil .nl-preview-badge{font-size: 10px;
    background: rgba(255,255,255,0.2);
    padding: 4px 10px;
    border-radius: 20px;}
.gx-accueil .nl-preview-fields{padding: 20px; background: #fff;}
.gx-accueil .nl-preview-field{margin-bottom: 12px;
    display: flex;
    align-items: center;
    gap: 10px;
    background: #f8faff;
    border: 1px solid #e5e7eb;
    border-radius: 10px;
    padding: 0 12px;}
.gx-accueil .nl-preview-field i{color: #e8761a; font-size: 14px;}
.gx-accueil .nl-preview-field input, .gx-accueil .nl-preview-field select{border: none;
    background: transparent;
    padding: 12px 0;
    width: 100%;
    font-size: 13px;
    outline: none;}
.gx-accueil .nl-preview-field.half{width: calc(50% - 6px); display: inline-flex; margin-right: 12px;}
.gx-accueil .nl-preview-field.half:last-child{margin-right: 0;}
.gx-accueil .nl-preview-submit{background: #e8761a;
    color: #fff;
    padding: 12px;
    border-radius: 10px;
    text-align: center;
    font-weight: 700;
    font-size: 13px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-top: 8px;}
.gx-accueil .nl-preview-secure{font-size: 10px; font-weight: normal; opacity: 0.8;}
.gx-accueil .nl-preview-footer{background: #f0fdf4;
    padding: 10px 20px;
    font-size: 11px;
    color: #10b981;
    display: flex;
    align-items: center;
    gap: 6px;
    border-top: 1px solid #dcfce7;}
.gx-accueil .nl-floating-badge{position: absolute;
    background: #fff;
    border-radius: 999px;
    padding: 8px 16px;
    font-size: 11px;
    font-weight: 700;
    box-shadow: 0 8px 20px rgba(0,0,0,0.12);
    display: flex;
    align-items: center;
    gap: 8px;
    white-space: nowrap;}
.gx-accueil .nl-fb-1{bottom: -15px; left: -20px; color: #10b981;}
.gx-accueil .nl-fb-2{top: -15px; right: -20px; color: #8b5cf6;}
.gx-accueil .nl-forms-templates, .gx-accueil .nl-forms-features{margin-bottom: 60px;}
.gx-accueil .nl-section-header{text-align: center;
    margin-bottom: 40px;}
.gx-accueil .nl-section-eyebrow{display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 1.5px;
    color: #e8761a;
    background: #fef3ea;
    padding: 6px 14px;
    border-radius: 999px;
    margin-bottom: 16px;}
.gx-accueil .nl-section-header h3{font-family: 'Playfair Display', serif;
    font-size: 28px;
    color: #1a1a1a;
    margin-bottom: 12px;}
.gx-accueil .nl-section-header p{font-size: 15px;
    color: #666;
    max-width: 550px;
    margin: 0 auto;}
.gx-accueil .nl-templates-grid{display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 24px;}
.gx-accueil .nl-template-card{background: #fff;
    border: 1.5px solid #e5e7eb;
    border-radius: 20px;
    padding: 28px;
    transition: all 0.3s;
    position: relative;}
.gx-accueil .nl-template-card:hover{transform: translateY(-4px);
    border-color: #e8761a;
    box-shadow: 0 20px 40px rgba(0,0,0,0.08);}
.gx-accueil .nl-template-icon{width: 48px;
    height: 48px;
    border-radius: 14px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 20px;
    margin-bottom: 16px;}
.gx-accueil .nl-template-tag{position: absolute;
    top: 20px;
    right: 20px;
    font-size: 9px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.8px;
    padding: 4px 10px;
    border-radius: 20px;}
.gx-accueil .nl-template-card h4{font-size: 16px;
    font-weight: 700;
    color: #1a1a1a;
    margin-bottom: 8px;}
.gx-accueil .nl-template-card p{font-size: 13px;
    color: #666;
    line-height: 1.65;
    margin-bottom: 16px;}
.gx-accueil .nl-template-fields{display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-bottom: 20px;}
.gx-accueil .nl-template-fields span{font-size: 10px;
    color: #888;
    background: #f8faff;
    padding: 4px 10px;
    border-radius: 20px;
    display: inline-flex;
    align-items: center;
    gap: 4px;}
.gx-accueil .nl-template-cta{display: inline-flex;
    align-items: center;
    gap: 8px;
    color: #e8761a;
    font-weight: 700;
    font-size: 13px;
    text-decoration: none;
    transition: gap 0.2s;}
.gx-accueil .nl-template-cta:hover{gap: 12px;}
.gx-accueil .nl-features-grid{display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 24px;}
.gx-accueil .nl-feature-card{background: #fff;
    border: 1.5px solid #e5e7eb;
    border-radius: 20px;
    padding: 32px;
    transition: all 0.3s;}
.gx-accueil .nl-feature-card:hover{transform: translateY(-3px); border-color: #e8761a;}
.gx-accueil .nl-feature-icon{width: 52px;
    height: 52px;
    border-radius: 14px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 22px;
    margin-bottom: 18px;}
.gx-accueil .nl-feature-card h4{font-size: 15px;
    font-weight: 700;
    color: #1a1a1a;
    margin-bottom: 8px;}
.gx-accueil .nl-feature-card p{font-size: 13px;
    color: #666;
    line-height: 1.7;}
.gx-accueil .nl-forms-integrations{background: linear-gradient(135deg, #f8faff, #fff);
    border: 1px solid #e5e7eb;
    border-radius: 24px;
    padding: 48px;
    text-align: center;
    margin-bottom: 60px;}
.gx-accueil .nl-integrations-header{margin-bottom: 32px;}
.gx-accueil .nl-integrations-header i{font-size: 32px;
    color: #e8761a;
    margin-bottom: 12px;}
.gx-accueil .nl-integrations-header h3{font-size: 22px;
    color: #1a1a1a;
    margin-bottom: 8px;}
.gx-accueil .nl-integrations-header p{font-size: 14px;
    color: #666;}
.gx-accueil .nl-integrations-list{display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 12px;}
.gx-accueil .nl-integration-item{display: flex;
    align-items: center;
    gap: 10px;
    padding: 10px 20px;
    border: 1px solid;
    border-radius: 50px;
    font-size: 13px;
    font-weight: 600;
    transition: all 0.2s;}
.gx-accueil .nl-integration-item:hover{transform: translateY(-2px);}
.gx-accueil .nl-integration-more{display: flex;
    align-items: center;
    gap: 6px;
    color: #888;
    font-size: 13px;}
.gx-accueil .nl-forms-demo{background: #0a1628;
    border-radius: 28px;
    padding: 56px;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 50px;
    margin-bottom: 60px;
    align-items: center;}
.gx-accueil .nl-demo-badge{display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 1.5px;
    color: #34d399;
    background: rgba(52,211,153,0.1);
    padding: 6px 14px;
    border-radius: 999px;
    margin-bottom: 20px;}
.gx-accueil .nl-demo-info h3{font-family: 'Playfair Display', serif;
    font-size: clamp(26px, 2.8vw, 36px);
    color: #fff;
    line-height: 1.2;
    margin-bottom: 16px;}
.gx-accueil .nl-demo-info h3 em{font-style: italic; color: #e8761a;}
.gx-accueil .nl-demo-info p{font-size: 14px;
    color: rgba(255,255,255,0.7);
    line-height: 1.8;
    margin-bottom: 24px;}
.gx-accueil .nl-demo-info ul{list-style: none;
    margin-bottom: 32px;}
.gx-accueil .nl-demo-info li{color: rgba(255,255,255,0.8);
    font-size: 14px;
    margin-bottom: 10px;
    display: flex;
    align-items: center;
    gap: 10px;}
.gx-accueil .nl-demo-info li i{color: #10b981;}
.gx-accueil .nl-demo-btn{background: #e8761a;
    color: #fff;
    padding: 14px 28px;
    border-radius: 10px;
    font-weight: 700;
    font-size: 14px;
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    transition: all 0.2s;}
.gx-accueil .nl-demo-btn:hover{transform: translateY(-2px); background: #c45e0e; color: #fff;}
.gx-accueil .nl-builder-mock{background: #1e293b;
    border-radius: 16px;
    padding: 20px;
    display: flex;
    gap: 20px;
    border: 1px solid #334155;}
.gx-accueil .nl-builder-sidebar{width: 120px;
    display: flex;
    flex-direction: column;
    gap: 8px;}
.gx-accueil .nl-builder-field-type{background: #334155;
    padding: 8px 10px;
    border-radius: 8px;
    font-size: 10px;
    color: #94a3b8;
    display: flex;
    align-items: center;
    gap: 6px;
    cursor: default;}
.gx-accueil .nl-builder-canvas{flex: 1;
    background: #0f172a;
    border-radius: 12px;
    padding: 16px;}
.gx-accueil .nl-builder-field-row{display: flex; gap: 12px; margin-bottom: 12px;}
.gx-accueil .nl-builder-field{background: #334155;
    padding: 10px 12px;
    border-radius: 8px;
    font-size: 11px;
    color: #cbd5e1;
    flex: 1;}
.gx-accueil .nl-field-required{color: #ef4444;}
.gx-accueil .nl-builder-submit{background: #e8761a;
    padding: 10px;
    border-radius: 8px;
    font-size: 11px;
    font-weight: 700;
    text-align: center;
    color: #fff;
    margin-top: 12px;}
.gx-accueil .nl-forms-cta{background: linear-gradient(135deg, #fef3ea, #fff3e6);
    border-radius: 24px;
    padding: 48px 56px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    gap: 30px;
    border: 1px solid #fde4c5;}
.gx-accueil .nl-cta-content h3{font-size: 24px;
    color: #1a1a1a;
    margin-bottom: 8px;}
.gx-accueil .nl-cta-content p{font-size: 14px;
    color: #666;}
.gx-accueil .nl-cta-buttons{display: flex; gap: 14px; flex-wrap: wrap;}
.gx-accueil .nl-cta-primary{background: #e8761a;
    color: #fff;
    padding: 14px 28px;
    border-radius: 10px;
    font-weight: 700;
    font-size: 14px;
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    transition: all 0.2s;}
.gx-accueil .nl-cta-primary:hover{background: #c45e0e; transform: translateY(-2px); color: #fff;}
.gx-accueil .nl-cta-secondary{border: 2px solid #e8761a;
    color: #e8761a;
    padding: 14px 28px;
    border-radius: 10px;
    font-weight: 700;
    font-size: 14px;
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    transition: all 0.2s;}
.gx-accueil .nl-cta-secondary:hover{background: #e8761a; color: #fff;}
@media(max-width: 1200px){.gx-accueil .nl-templates-grid{grid-template-columns: repeat(2, 1fr);}
.gx-accueil .nl-features-grid{grid-template-columns: repeat(2, 1fr);}}
@media(max-width: 1000px){.gx-accueil .nl-forms-hero{grid-template-columns: 1fr; padding: 40px;}
.gx-accueil .nl-forms-demo{grid-template-columns: 1fr;}}
@media(max-width: 768px){.gx-accueil .nl-forms-body{padding: 0 20px 40px;}
.gx-accueil .nl-templates-grid{grid-template-columns: 1fr;}
.gx-accueil .nl-features-grid{grid-template-columns: 1fr;}
.gx-accueil .nl-forms-cta{flex-direction: column; text-align: center; padding: 32px 24px;}
.gx-accueil .nl-floating-badge{display: none;}
.gx-accueil .nl-builder-mock{flex-direction: column;}
.gx-accueil .nl-builder-sidebar{width: 100%; flex-direction: row; flex-wrap: wrap;}}
.gx-accueil .nl-seo-section{background: linear-gradient(180deg, #f8faff 0%, #fff 100%);}
.gx-accueil .nl-seo-body{padding: 0 40px 60px;}
.gx-accueil .nl-seo-hero{background: linear-gradient(135deg, #0a1628 0%, #1a2a4a 100%);
    border-radius: 28px;
    margin: 24px 0 48px;
    padding: 56px 64px;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 50px;
    align-items: center;
    position: relative;
    overflow: hidden;}
.gx-accueil .nl-seo-hero::before{content: '';
    position: absolute;
    top: -30%;
    left: -20%;
    width: 70%;
    height: 160%;
    background: radial-gradient(circle, rgba(232,118,26,0.08) 0%, transparent 70%);
    pointer-events: none;}
.gx-accueil .nl-seo-badge{display: inline-flex;
    align-items: center;
    gap: 8px;
    background: rgba(52,211,153,0.15);
    border: 1px solid rgba(52,211,153,0.3);
    color: #34d399;
    border-radius: 999px;
    padding: 6px 16px;
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 1px;
    margin-bottom: 24px;}
.gx-accueil .nl-seo-hero h2{font-family: 'Playfair Display', serif;
    font-size: clamp(32px, 3.2vw, 46px);
    color: #fff;
    line-height: 1.15;
    margin-bottom: 20px;}
.gx-accueil .nl-seo-hero h2 em{font-style: italic; color: #e8761a;}
.gx-accueil .nl-seo-hero > p{font-size: 15px;
    color: rgba(255,255,255,0.7);
    line-height: 1.8;
    margin-bottom: 28px;}
.gx-accueil .nl-seo-stats{display: flex;
    gap: 24px;
    margin-bottom: 32px;
    flex-wrap: wrap;}
.gx-accueil .nl-seo-stat{display: flex;
    align-items: center;
    gap: 12px;
    background: rgba(255,255,255,0.05);
    padding: 10px 18px;
    border-radius: 12px;
    border: 1px solid rgba(255,255,255,0.1);}
.gx-accueil .nl-seo-stat i{font-size: 24px;
    color: #e8761a;}
.gx-accueil .nl-seo-stat strong{display: block;
    font-family: 'Bebas Neue', sans-serif;
    font-size: 22px;
    color: #fff;
    line-height: 1;}
.gx-accueil .nl-seo-stat span{font-size: 10px;
    color: rgba(255,255,255,0.6);
    text-transform: uppercase;
    letter-spacing: 0.5px;}
.gx-accueil .nl-seo-actions{display: flex;
    gap: 14px;
    flex-wrap: wrap;}
.gx-accueil .nl-btn-secondary-seo{border: 2px solid rgba(255,255,255,0.3);
    color: #fff;
    padding: 14px 28px;
    border-radius: 10px;
    font-weight: 700;
    font-size: 14px;
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    transition: all 0.2s;}
.gx-accueil .nl-btn-secondary-seo:hover{border-color: #fff;
    background: rgba(255,255,255,0.08);
    color: #fff;}
.gx-accueil .nl-seo-dashboard-mock{background: rgba(255,255,255,0.05);
    border: 1px solid rgba(255,255,255,0.1);
    border-radius: 20px;
    overflow: hidden;
    backdrop-filter: blur(10px);}
.gx-accueil .nl-dash-header{background: rgba(255,255,255,0.08);
    padding: 14px 20px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    border-bottom: 1px solid rgba(255,255,255,0.08);}
.gx-accueil .nl-dash-header-left{font-size: 12px;
    font-weight: 600;
    color: rgba(255,255,255,0.8);}
.gx-accueil .nl-live-badge{font-size: 10px;
    color: #34d399;
    display: flex;
    align-items: center;
    gap: 6px;}
.gx-accueil .nl-live-badge i{font-size: 6px;}
.gx-accueil .nl-dash-score{padding: 24px;
    display: flex;
    align-items: center;
    gap: 20px;
    border-bottom: 1px solid rgba(255,255,255,0.08);}
.gx-accueil .nl-score-ring{position: relative;
    width: 80px;
    height: 80px;}
.gx-accueil .nl-score-value{position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    font-family: 'Bebas Neue', sans-serif;
    font-size: 28px;
    color: #e8761a;}
.gx-accueil .nl-score-info strong{display: block;
    font-size: 14px;
    color: #fff;
    margin-bottom: 4px;}
.gx-accueil .nl-score-info span{font-size: 11px;
    color: rgba(255,255,255,0.5);}
.gx-accueil .nl-dash-metrics{padding: 20px;
    display: flex;
    flex-direction: column;
    gap: 16px;}
.gx-accueil .nl-dash-metric-item{display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px;}
.gx-accueil .nl-metric-label{font-size: 11px;
    color: rgba(255,255,255,0.6);
    width: 120px;}
.gx-accueil .nl-metric-value{font-size: 13px;
    font-weight: 700;
    width: 60px;}
.gx-accueil .nl-metric-value.up{color: #10b981;}
.gx-accueil .nl-progress-bar{flex: 1;
    height: 5px;
    background: rgba(255,255,255,0.1);
    border-radius: 999px;
    overflow: hidden;}
.gx-accueil .nl-progress-fill{height: 100%;
    background: linear-gradient(90deg, #e8761a, #f59e0b);
    border-radius: 999px;}
.gx-accueil .nl-dash-footer{background: rgba(255,255,255,0.05);
    padding: 12px 20px;
    display: flex;
    justify-content: space-between;
    font-size: 10px;
    color: rgba(255,255,255,0.4);}
.gx-accueil .nl-ai-badge{position: absolute;
    top: 20px;
    right: -10px;
    background: #8b5cf6;
    color: #fff;
    font-size: 11px;
    font-weight: 700;
    padding: 6px 14px;
    border-radius: 999px;
    display: flex;
    align-items: center;
    gap: 6px;}
.gx-accueil .nl-section-header{text-align: center;
    margin-bottom: 40px;}
.gx-accueil .nl-section-eyebrow{display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 1.5px;
    color: #e8761a;
    background: #fef3ea;
    padding: 6px 14px;
    border-radius: 999px;
    margin-bottom: 16px;}
.gx-accueil .nl-section-header h3{font-family: 'Playfair Display', serif;
    font-size: 28px;
    color: #1a1a1a;
    margin-bottom: 12px;}
.gx-accueil .nl-gradient-text{background: linear-gradient(135deg, #e8761a, #f59e0b);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;}
.gx-accueil .nl-section-header p{font-size: 15px;
    color: #666;
    max-width: 550px;
    margin: 0 auto;}
.gx-accueil .nl-seo-features{margin-bottom: 60px;}
.gx-accueil .nl-seo-features-grid{display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 24px;}
.gx-accueil .nl-seo-feature-card{background: #fff;
    border: 1.5px solid #e5e7eb;
    border-radius: 20px;
    padding: 32px;
    transition: all 0.3s;}
.gx-accueil .nl-seo-feature-card:hover{transform: translateY(-4px);
    border-color: #e8761a;
    box-shadow: 0 20px 40px rgba(0,0,0,0.08);}
.gx-accueil .nl-seo-feature-icon{width: 52px;
    height: 52px;
    border-radius: 14px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 22px;
    margin-bottom: 18px;}
.gx-accueil .nl-seo-feature-card h4{font-size: 16px;
    font-weight: 700;
    color: #1a1a1a;
    margin-bottom: 10px;}
.gx-accueil .nl-seo-feature-card p{font-size: 13px;
    color: #666;
    line-height: 1.7;
    margin-bottom: 16px;}
.gx-accueil .nl-seo-feature-tag{display: inline-block;
    font-size: 10px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.8px;
    padding: 4px 10px;
    border-radius: 6px;}
.gx-accueil .nl-seo-international{background: #fff;
    border: 1px solid #e5e7eb;
    border-radius: 28px;
    padding: 48px;
    margin-bottom: 60px;}
.gx-accueil .nl-international-grid{display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 16px;
    margin-top: 32px;}
.gx-accueil .nl-market-card{background: #f8faff;
    border-radius: 16px;
    padding: 16px 20px;
    display: flex;
    align-items: center;
    gap: 14px;
    transition: all 0.2s;}
.gx-accueil .nl-market-card:hover{background: #fff;
    border-color: #e8761a;
    transform: translateX(4px);}
.gx-accueil .nl-market-flag{font-size: 28px;}
.gx-accueil .nl-market-info strong{display: block;
    font-size: 14px;
    color: #1a1a1a;}
.gx-accueil .nl-market-info span{font-size: 11px;
    color: #888;}
.gx-accueil .nl-market-volume{margin-left: auto;
    font-family: 'Bebas Neue', sans-serif;
    font-size: 20px;
    color: #e8761a;}
.gx-accueil .nl-market-more{text-align: center;
    padding: 16px;
    color: #e8761a;
    font-size: 13px;
    font-weight: 600;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;}
.gx-accueil .nl-seo-tools{background: #f8faff;
    border-radius: 24px;
    padding: 48px;
    margin-bottom: 60px;
    text-align: center;}
.gx-accueil .nl-tools-header{margin-bottom: 32px;}
.gx-accueil .nl-tools-header i{font-size: 36px;
    color: #e8761a;
    margin-bottom: 12px;}
.gx-accueil .nl-tools-header h3{font-size: 22px;
    color: #1a1a1a;
    margin-bottom: 8px;}
.gx-accueil .nl-tools-header p{font-size: 14px;
    color: #666;}
.gx-accueil .nl-tools-grid{display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 16px;}
.gx-accueil .nl-tool-card{background: #fff;
    border: 1px solid #e5e7eb;
    border-radius: 50px;
    padding: 10px 20px;
    display: inline-flex;
    align-items: center;
    gap: 10px;
    transition: all 0.2s;}
.gx-accueil .nl-tool-card:hover{border-color: #e8761a;
    transform: translateY(-2px);}
.gx-accueil .nl-tool-icon{width: 32px;
    height: 32px;
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 16px;}
.gx-accueil .nl-tool-card span{font-size: 13px;
    font-weight: 500;
    color: #1a1a1a;}
.gx-accueil .nl-tool-api{background: linear-gradient(135deg, #e8761a, #f59e0b);
    border: none;
    border-radius: 50px;
    padding: 10px 20px;
    display: inline-flex;
    align-items: center;
    gap: 10px;
    color: #fff;}
.gx-accueil .nl-tool-api i, .gx-accueil .nl-tool-api span{color: #fff;}
.gx-accueil .nl-seo-audit-form{background: linear-gradient(135deg, #fff, #f8faff);
    border: 1px solid #e5e7eb;
    border-radius: 28px;
    padding: 56px;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 60px;
    margin-bottom: 60px;}
.gx-accueil .nl-audit-badge{display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 1.5px;
    color: #10b981;
    background: rgba(16,185,129,0.1);
    padding: 6px 14px;
    border-radius: 999px;
    margin-bottom: 16px;}
.gx-accueil .nl-audit-left h3{font-family: 'Playfair Display', serif;
    font-size: 28px;
    color: #1a1a1a;
    margin-bottom: 14px;}
.gx-accueil .nl-audit-left h3 em{font-style: italic;
    color: #e8761a;}
.gx-accueil .nl-audit-left p{font-size: 15px;
    color: #666;
    line-height: 1.8;
    margin-bottom: 24px;}
.gx-accueil .nl-audit-benefits{list-style: none;
    display: flex;
    flex-direction: column;
    gap: 12px;}
.gx-accueil .nl-audit-benefits li{font-size: 14px;
    color: #444;
    display: flex;
    align-items: center;
    gap: 10px;}
.gx-accueil .nl-audit-benefits li i{color: #10b981;
    font-size: 14px;}
.gx-accueil .nl-audit-form .nl-form-group{margin-bottom: 16px;}
.gx-accueil .nl-audit-form .nl-form-row{display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 16px;}
.gx-accueil .nl-audit-form .nl-form-group label{display: block;
    font-size: 12px;
    font-weight: 700;
    color: #374151;
    margin-bottom: 6px;}
.gx-accueil .nl-audit-form .nl-form-group input, .gx-accueil .nl-audit-form .nl-form-group select{width: 100%;
    border: 1.5px solid #e5e7eb;
    border-radius: 10px;
    padding: 12px 14px;
    font-size: 14px;
    transition: border-color 0.2s;}
.gx-accueil .nl-audit-form .nl-form-group input:focus, .gx-accueil .nl-audit-form .nl-form-group select:focus{outline: none;
    border-color: #e8761a;}
.gx-accueil .nl-btn-submit-audit{width: 100%;
    background: linear-gradient(135deg, #e8761a, #c04f10);
    color: #fff;
    border: none;
    border-radius: 10px;
    padding: 14px;
    font-size: 14px;
    font-weight: 700;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    transition: all 0.2s;
    margin-top: 8px;}
.gx-accueil .nl-btn-submit-audit:hover{transform: translateY(-2px);
    box-shadow: 0 12px 32px rgba(232,118,26,0.35);}
.gx-accueil .nl-form-note{font-size: 11px;
    color: #9ca3af;
    text-align: center;
    margin-top: 12px;}
.gx-accueil .nl-seo-cta-banner{background: linear-gradient(135deg, #0f2240, #1e3a5f);
    border-radius: 24px;
    padding: 48px 56px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 40px;
    flex-wrap: wrap;}
.gx-accueil .nl-cta-content{display: flex;
    flex-direction: column;
    align-items: flex-start;}
.gx-accueil .nl-cta-content i{font-size: 36px;
    color: #f59e0b;
    margin-bottom: 12px;}
.gx-accueil .nl-cta-content h3{font-size: 24px;
    color: #fff;
    margin-bottom: 8px;}
.gx-accueil .nl-cta-content p{font-size: 14px;
    color: rgba(255,255,255,0.7);
    max-width: 500px;}
.gx-accueil .nl-cta-buttons{display: flex;
    gap: 14px;
    flex-wrap: wrap;}
.gx-accueil .nl-cta-primary{background: #e8761a;
    color: #fff;
    padding: 14px 28px;
    border-radius: 10px;
    font-weight: 700;
    font-size: 14px;
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    transition: all 0.2s;}
.gx-accueil .nl-cta-primary:hover{background: #c45e0e;
    transform: translateY(-2px);
    color: #fff;}
.gx-accueil .nl-cta-secondary{border: 2px solid rgba(255,255,255,0.3);
    color: #fff;
    padding: 14px 28px;
    border-radius: 10px;
    font-weight: 700;
    font-size: 14px;
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    transition: all 0.2s;}
.gx-accueil .nl-cta-secondary:hover{border-color: #fff;
    background: rgba(255,255,255,0.08);
    color: #fff;}
@media (max-width: 1100px){.gx-accueil .nl-seo-hero{grid-template-columns: 1fr; padding: 40px;}
.gx-accueil .nl-seo-features-grid{grid-template-columns: repeat(2, 1fr);}
.gx-accueil .nl-international-grid{grid-template-columns: repeat(2, 1fr);}
.gx-accueil .nl-seo-audit-form{grid-template-columns: 1fr; gap: 32px;}}
@media (max-width: 768px){.gx-accueil .nl-seo-body{padding: 0 20px 40px;}
.gx-accueil .nl-seo-features-grid{grid-template-columns: 1fr;}
.gx-accueil .nl-international-grid{grid-template-columns: 1fr;}
.gx-accueil .nl-seo-cta-banner{flex-direction: column; text-align: center; padding: 32px 24px;}
.gx-accueil .nl-cta-content{align-items: center; text-align: center;}
.gx-accueil .nl-audit-form .nl-form-row{grid-template-columns: 1fr;}
.gx-accueil .nl-seo-stats{justify-content: center;}}
.gx-accueil .cd-section{background: linear-gradient(180deg,#f8faff 0%,#fff 100%);}
.gx-accueil .cd-body{padding: 0 40px 60px;}
.gx-accueil .cd-gradient-text{background: linear-gradient(135deg,#e8761a,#f59e0b);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;}
.gx-accueil .cd-section-header{text-align: center; margin-bottom: 40px;}
.gx-accueil .cd-eyebrow{display: inline-flex; align-items: center; gap: 6px;
    font-size: 11px; font-weight: 700; text-transform: uppercase;
    letter-spacing: 1.5px; color: #e8761a; background: #fef3ea;
    padding: 6px 14px; border-radius: 999px; margin-bottom: 16px;}
.gx-accueil .cd-section-header h3{font-family: 'Playfair Display', serif; font-size: 28px;
    color: #1a1a1a; margin-bottom: 12px;}
.gx-accueil .cd-section-header p{font-size: 15px; color: #666; max-width: 580px; margin: 0 auto;}
.gx-accueil .cd-hero{background: linear-gradient(135deg,#0a1628 0%,#1a2a4a 100%);
    border-radius: 28px; margin: 24px 0 48px; padding: 56px 64px;
    display: grid; grid-template-columns: 1fr 1fr; gap: 50px;
    align-items: center; position: relative; overflow: hidden;}
.gx-accueil .cd-hero::before{content: ''; position: absolute; top: -30%; left: -20%; width: 70%; height: 160%;
    background: radial-gradient(circle,rgba(232,118,26,.08) 0%,transparent 70%);
    pointer-events: none;}
.gx-accueil .cd-badge{display: inline-flex; align-items: center; gap: 8px;
    background: rgba(52,211,153,.15); border: 1px solid rgba(52,211,153,.3);
    color: #34d399; border-radius: 999px; padding: 6px 16px;
    font-size: 11px; font-weight: 700; text-transform: uppercase;
    letter-spacing: 1px; margin-bottom: 24px;}
.gx-accueil .cd-hero h2{font-family: 'Playfair Display', serif;
    font-size: clamp(28px,3vw,42px); color: #fff;
    line-height: 1.15; margin-bottom: 20px;}
.gx-accueil .cd-hero h2 em{font-style: italic; color: #e8761a;}
.gx-accueil .cd-hero > p, .gx-accueil .cd-hero-content > p{font-size: 15px; color: rgba(255,255,255,.7); line-height: 1.8; margin-bottom: 28px;}
.gx-accueil .cd-stats{display: flex; gap: 18px; margin-bottom: 32px; flex-wrap: wrap;}
.gx-accueil .cd-stat{display: flex; align-items: center; gap: 10px;
    background: rgba(255,255,255,.05); padding: 10px 16px;
    border-radius: 12px; border: 1px solid rgba(255,255,255,.1);}
.gx-accueil .cd-stat i{font-size: 22px; color: #e8761a;}
.gx-accueil .cd-stat strong{display: block; font-family:'Bebas Neue',sans-serif; font-size: 20px; color: #fff; line-height: 1;}
.gx-accueil .cd-stat span{font-size: 10px; color: rgba(255,255,255,.6); text-transform: uppercase; letter-spacing: .5px;}
.gx-accueil .cd-actions{display: flex; gap: 14px; flex-wrap: wrap;}
.gx-accueil .cd-hero-visual{position: relative; display: flex; flex-direction: column; gap: 20px;}
.gx-accueil .cd-avatar-card{background: rgba(255,255,255,.07); border: 1px solid rgba(255,255,255,.12);
    border-radius: 20px; padding: 20px 24px;
    display: flex; align-items: center; gap: 16px;
    backdrop-filter: blur(12px);}
.gx-accueil .cd-avatar-img-wrap{position: relative; flex-shrink: 0;}
.gx-accueil .cd-avatar-img{width: 90px; height: 90px; border-radius: 50%; object-fit: cover; object-position: top; border: 3px solid #e8761a;}
.gx-accueil .cd-avatar-live{position: absolute; bottom: -4px; left: 50%; transform: translateX(-50%);
    background: #10b981; color: #fff; font-size: 8px; font-weight: 700;
    padding: 2px 8px; border-radius: 999px; white-space: nowrap;
    display: flex; align-items: center; gap: 4px;}
.gx-accueil .cd-avatar-live i{font-size: 6px; animation: cdBlink 1.5s infinite;}
@keyframes cdBlink{ 0%,100%{opacity:1} 50%{opacity:.2} }
.gx-accueil .cd-avatar-info strong{display: block; font-size: 14px; color: #fff; font-weight: 700;}
.gx-accueil .cd-avatar-info span{font-size: 11px; color: rgba(255,255,255,.5);}
.gx-accueil .cd-avatar-wave{display: flex; align-items: center; gap: 3px; margin-left: auto;}
.gx-accueil .cd-avatar-wave span{display: block; width: 4px; border-radius: 99px; background: #e8761a;
    animation: cdWave 1.2s ease-in-out infinite;}
.gx-accueil .cd-avatar-wave span:nth-child(1){height:8px;  animation-delay:0s;}
.gx-accueil .cd-avatar-wave span:nth-child(2){height:16px; animation-delay:.1s;}
.gx-accueil .cd-avatar-wave span:nth-child(3){height:24px; animation-delay:.2s;}
.gx-accueil .cd-avatar-wave span:nth-child(4){height:16px; animation-delay:.3s;}
.gx-accueil .cd-avatar-wave span:nth-child(5){height:8px;  animation-delay:.4s;}
@keyframes cdWave{
    0%,100%{ transform: scaleY(1); opacity:.6; }
    50%     { transform: scaleY(1.8); opacity:1; }
}
.gx-accueil .cd-email-mock{background: #fff; border-radius: 16px; overflow: hidden;
    box-shadow: 0 12px 40px rgba(0,0,0,.18);}
.gx-accueil .cd-email-header{background: #f3f4f6; padding: 10px 16px;
    display: flex; align-items: center; gap: 10px;
    border-bottom: 1px solid #e5e7eb;}
.gx-accueil .cd-email-dots{display: flex; gap: 5px;}
.gx-accueil .cd-email-dots span{width: 10px; height: 10px; border-radius: 50%; display: block;}
.gx-accueil .cd-email-title{font-size: 12px; font-weight: 600; color: #555; display: flex; align-items: center; gap: 6px;}
.gx-accueil .cd-email-title i{color: #e8761a;}
.gx-accueil .cd-email-meta{padding: 10px 16px; border-bottom: 1px solid #f0f0f0;}
.gx-accueil .cd-email-row{display: flex; gap: 8px; font-size: 11px; padding: 2px 0;}
.gx-accueil .cd-email-row label{color: #999; min-width: 36px;}
.gx-accueil .cd-email-row span{color: #555;}
.gx-accueil .cd-email-subject{color: #1a1a1a; font-weight: 700;}
.gx-accueil .cd-email-body{padding: 14px 16px;}
.gx-accueil .cd-email-banner{background: linear-gradient(135deg,#0a1628,#1e3a5f);
    border-radius: 10px; padding: 12px 16px;
    display: flex; align-items: center; gap: 12px; margin-bottom: 14px;}
.gx-accueil .cd-email-banner i{font-size: 24px; color: #e8761a;}
.gx-accueil .cd-email-banner strong{display: block; font-size: 12px; color: #fff;}
.gx-accueil .cd-email-banner span{font-size: 10px; color: rgba(255,255,255,.6);}
.gx-accueil .cd-email-text{margin-bottom: 12px; display: flex; flex-direction: column; gap: 6px;}
.gx-accueil .cd-email-line{height: 8px; background: #f0f0f0; border-radius: 4px;}
.gx-accueil .cd-line-lg{width: 90%;}
.gx-accueil .cd-line-md{width: 70%;}
.gx-accueil .cd-line-sm{width: 50%;}
.gx-accueil .cd-email-cta-btn{background: linear-gradient(135deg,#e8761a,#c04f10);
    color: #fff; border-radius: 8px; padding: 10px 18px;
    font-size: 12px; font-weight: 700; display: inline-flex; align-items: center; gap: 6px;
    margin-bottom: 12px;}
.gx-accueil .cd-email-footer-mock{padding-top: 10px; border-top: 1px solid #f0f0f0;}
.gx-accueil .cd-floating-notif{position: absolute; bottom: -16px; left: -16px;
    background: #fff; border-radius: 12px; padding: 10px 14px;
    display: flex; align-items: center; gap: 10px;
    box-shadow: 0 8px 20px rgba(0,0,0,.15);}
.gx-accueil .cd-floating-notif i{font-size: 18px; color: #10b981;}
.gx-accueil .cd-floating-notif strong{display: block; font-size: 11px; color: #1a1a1a;}
.gx-accueil .cd-floating-notif span{font-size: 10px; color: #666;}
.gx-accueil .cd-features{margin-bottom: 60px;}
.gx-accueil .cd-features-grid{display: grid; grid-template-columns: repeat(3,1fr); gap: 24px;}
.gx-accueil .cd-feature-card{background: #fff; border: 1.5px solid #e5e7eb;
    border-radius: 20px; padding: 32px; transition: all .3s;}
.gx-accueil .cd-feature-card:hover{transform: translateY(-4px); border-color: #e8761a; box-shadow: 0 20px 40px rgba(0,0,0,.08);}
.gx-accueil .cd-feature-icon{width: 52px; height: 52px; border-radius: 14px;
    display: flex; align-items: center; justify-content: center;
    font-size: 22px; margin-bottom: 18px;}
.gx-accueil .cd-feature-card h4{font-size: 16px; font-weight: 700; color: #1a1a1a; margin-bottom: 10px;}
.gx-accueil .cd-feature-card p{font-size: 13px; color: #666; line-height: 1.7; margin-bottom: 16px;}
.gx-accueil .cd-feature-tag{display: inline-block; font-size: 10px; font-weight: 700;
    text-transform: uppercase; letter-spacing: .8px; padding: 4px 10px; border-radius: 6px;}
.gx-accueil .cd-how{background: linear-gradient(135deg,#0a1628,#1e3a5f);
    border-radius: 28px; padding: 56px 48px; margin-bottom: 60px;}
.gx-accueil .cd-how .cd-section-header h3{color: #fff;}
.gx-accueil .cd-how .cd-section-header p{color: rgba(255,255,255,.6);}
.gx-accueil .cd-how .cd-eyebrow{background: rgba(232,118,26,.2);}
.gx-accueil .cd-steps{display: flex; align-items: center; gap: 16px; justify-content: center; flex-wrap: wrap;}
.gx-accueil .cd-step{flex: 1; min-width: 200px; max-width: 260px; text-align: center;
    background: rgba(255,255,255,.05); border: 1px solid rgba(255,255,255,.1);
    border-radius: 20px; padding: 32px 24px; position: relative;}
.gx-accueil .cd-step-num{position: absolute; top: -14px; left: 50%; transform: translateX(-50%);
    font-family: 'Bebas Neue', sans-serif; font-size: 28px; color: #e8761a;
    background: #0a1628; padding: 0 8px; line-height: 1;}
.gx-accueil .cd-step-icon{width: 60px; height: 60px; background: rgba(232,118,26,.15);
    border-radius: 18px; display: flex; align-items: center; justify-content: center;
    font-size: 26px; color: #e8761a; margin: 16px auto 20px;}
.gx-accueil .cd-step h4{font-size: 18px; color: #fff; margin-bottom: 10px; font-weight: 700;}
.gx-accueil .cd-step p{font-size: 13px; color: rgba(255,255,255,.6); line-height: 1.7;}
.gx-accueil .cd-step-arrow{font-size: 24px; color: rgba(255,255,255,.2); flex-shrink: 0;}
.gx-accueil .cd-sectors{background: #fff; border: 1px solid #e5e7eb;
    border-radius: 28px; padding: 48px; margin-bottom: 60px;}
.gx-accueil .cd-sectors-grid{display: grid; grid-template-columns: repeat(3,1fr); gap: 24px; margin-top: 8px;}
.gx-accueil .cd-sector-card{text-align: center; padding: 24px; background: #f8faff;
    border-radius: 20px; transition: all .3s;}
.gx-accueil .cd-sector-card:hover{transform: translateY(-4px); background: #fff; box-shadow: 0 12px 24px rgba(0,0,0,.08);}
.gx-accueil .cd-sector-icon{width: 60px; height: 60px; background: linear-gradient(135deg,#e8761a20,#f59e0b20);
    border-radius: 20px; display: flex; align-items: center; justify-content: center;
    margin: 0 auto 16px; font-size: 28px; color: #e8761a;}
.gx-accueil .cd-sector-card h4{font-size: 15px; margin-bottom: 6px; font-weight: 700; color: #1a1a1a;}
.gx-accueil .cd-sector-card p{font-size: 12px; color: #888;}
.gx-accueil .cd-form{background: linear-gradient(135deg,#fff,#f8faff);
    border: 1px solid #e5e7eb; border-radius: 28px; padding: 56px;
    display: grid; grid-template-columns: 1fr 1fr; gap: 60px; margin-bottom: 60px;}
.gx-accueil .cd-form-badge{display: inline-flex; align-items: center; gap: 6px;
    font-size: 11px; font-weight: 700; text-transform: uppercase; letter-spacing: 1.5px;
    color: #10b981; background: rgba(16,185,129,.1); padding: 6px 14px;
    border-radius: 999px; margin-bottom: 16px;}
.gx-accueil .cd-form-left h3{font-family:'Playfair Display',serif; font-size: 26px; margin-bottom: 14px;}
.gx-accueil .cd-form-left h3 em{font-style: italic; color: #e8761a;}
.gx-accueil .cd-form-left p{font-size: 15px; color: #666; line-height: 1.8; margin-bottom: 24px;}
.gx-accueil .cd-benefits{list-style: none; display: flex; flex-direction: column; gap: 12px;}
.gx-accueil .cd-benefits li{font-size: 14px; color: #444; display: flex; align-items: center; gap: 10px;}
.gx-accueil .cd-benefits li i{color: #10b981;}
.gx-accueil .cd-form-group{margin-bottom: 16px;}
.gx-accueil .cd-form-row{display: grid; grid-template-columns: 1fr 1fr; gap: 16px;}
.gx-accueil .cd-form-group label{display: block; font-size: 12px; font-weight: 700; color: #374151; margin-bottom: 6px;}
.gx-accueil .cd-form-group input, .gx-accueil .cd-form-group select{width: 100%; border: 1.5px solid #e5e7eb; border-radius: 10px;
    padding: 12px 14px; font-size: 14px; transition: border-color .2s;}
.gx-accueil .cd-form-group input:focus, .gx-accueil .cd-form-group select:focus{outline: none; border-color: #e8761a;}
.gx-accueil .cd-btn-submit{width: 100%; background: linear-gradient(135deg,#e8761a,#c04f10);
    color: #fff; border: none; border-radius: 10px; padding: 14px;
    font-size: 14px; font-weight: 700; cursor: pointer;
    display: flex; align-items: center; justify-content: center; gap: 8px;
    transition: all .2s; margin-top: 8px;}
.gx-accueil .cd-btn-submit:hover{transform: translateY(-2px); box-shadow: 0 12px 32px rgba(232,118,26,.35);}
.gx-accueil .cd-form-note{font-size: 11px; color: #9ca3af; text-align: center; margin-top: 12px;}
.gx-accueil .cd-cta{background: linear-gradient(135deg,#0f2240,#1e3a5f);
    border-radius: 24px; padding: 48px 56px;
    display: flex; justify-content: space-between; align-items: center;
    gap: 40px; flex-wrap: wrap;}
.gx-accueil .cd-cta-content{display: flex; flex-direction: column; align-items: flex-start;}
.gx-accueil .cd-cta-content i{font-size: 36px; color: #e8761a; margin-bottom: 12px;}
.gx-accueil .cd-cta-content h3{font-size: 22px; color: #fff; margin-bottom: 8px;}
.gx-accueil .cd-cta-content p{font-size: 14px; color: rgba(255,255,255,.7); max-width: 500px;}
.gx-accueil .cd-cta-buttons{display: flex; gap: 14px; flex-wrap: wrap;}
.gx-accueil .cd-cta-primary{background: #e8761a; color: #fff; padding: 14px 28px; border-radius: 10px;
    font-weight: 700; font-size: 14px; text-decoration: none;
    display: inline-flex; align-items: center; gap: 8px; transition: all .2s;}
.gx-accueil .cd-cta-primary:hover{background: #c45e0e; transform: translateY(-2px); color: #fff;}
.gx-accueil .cd-cta-secondary{border: 2px solid rgba(255,255,255,.3); color: #fff; padding: 14px 28px;
    border-radius: 10px; font-weight: 700; font-size: 14px; text-decoration: none;
    display: inline-flex; align-items: center; gap: 8px; transition: all .2s;}
.gx-accueil .cd-cta-secondary:hover{border-color: #fff; background: rgba(255,255,255,.08); color: #fff;}
@media (max-width:1100px){.gx-accueil .cd-hero{grid-template-columns: 1fr; padding: 40px;}
.gx-accueil .cd-features-grid{grid-template-columns: repeat(2,1fr);}
.gx-accueil .cd-sectors-grid{grid-template-columns: repeat(2,1fr);}
.gx-accueil .cd-form{grid-template-columns: 1fr; gap: 32px;}
.gx-accueil .cd-steps{flex-direction: column; align-items: stretch;}
.gx-accueil .cd-step-arrow{transform: rotate(90deg); text-align: center;}}
@media (max-width:768px){.gx-accueil .cd-body{padding: 0 20px 40px;}
.gx-accueil .cd-features-grid{grid-template-columns: 1fr;}
.gx-accueil .cd-sectors-grid{grid-template-columns: 1fr;}
.gx-accueil .cd-cta{flex-direction: column; text-align: center; padding: 32px 24px;}
.gx-accueil .cd-cta-content{align-items: center; text-align: center;}
.gx-accueil .cd-form .cd-form-row{grid-template-columns: 1fr;}
.gx-accueil .cd-floating-notif{position: static; margin-top: 8px;}}
.gx-accueil [data-snb-media-nav] .snb-links{scroll-behavior: smooth;}
.gx-accueil [data-snb-media-nav] .snb-scroll-controls{display: inline-flex;
        align-items: center;
        gap: 6px;
        margin-left: 10px;
        flex-shrink: 0;}
.gx-accueil [data-snb-media-nav] .snb-scroll-btn{width: 30px;
        height: 30px;
        border-radius: 50%;
        border: 1px solid rgba(212, 175, 55, 0.45);
        background: #fff;
        color: #1a2942;
        cursor: pointer;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        transition: all .2s ease;}
.gx-accueil [data-snb-media-nav] .snb-scroll-btn:hover{background: #d4af37;
        color: #fff;
        border-color: #d4af37;}
@media (max-width: 768px){.gx-accueil [data-snb-media-nav] .snb-scroll-controls{gap: 4px;
            margin-left: 6px;}
.gx-accueil [data-snb-media-nav] .snb-scroll-btn{width: 28px;
            height: 28px;}}
.gx-accueil .avis-clients-section{padding:32px 40px 56px;
  background:linear-gradient(180deg,#f7fbff 0%,#ffffff 100%);}
.gx-accueil .avis-row{display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
  margin-top:18px;}
.gx-accueil .avis-card{border-radius:16px;
  box-shadow:0 10px 30px rgba(17,32,64,.12);
  border:1px solid rgba(18,34,66,.08);
  min-height:190px;}
.gx-accueil .avis-row-style-a .avis-card-a{background:#fff;
  padding:16px;}
.gx-accueil .avis-top{display:flex;
  gap:12px;
  align-items:center;}
.gx-accueil .avis-top img{width:56px;
  height:56px;
  border-radius:50%;
  object-fit:cover;}
.gx-accueil .avis-top h3{margin:0;
  font-size:16px;
  color:#102442;}
.gx-accueil .avis-top p{margin:4px 0 0;
  font-size:12px;
  color:#5a6d87;}
.gx-accueil .avis-stars{margin-top:10px;
  color:#f59e0b;
  letter-spacing:1px;
  font-size:15px;}
.gx-accueil .avis-text{margin:10px 0 0;
  font-size:14px;
  line-height:1.6;
  color:#2a3d5c;}
.gx-accueil .avis-row-style-b .avis-card-b{background:linear-gradient(160deg,#14243f 0%,#233e66 100%);
  color:#fff;
  padding:18px;
  position:relative;
  overflow:hidden;}
.gx-accueil .avis-row-style-b .avis-card-b::after{content:'';
  position:absolute;
  width:120px;
  height:120px;
  right:-35px;
  top:-35px;
  border-radius:50%;
  background:rgba(255,255,255,.08);}
.gx-accueil .avis-badge{display:inline-block;
  background:rgba(255,255,255,.18);
  border:1px solid rgba(255,255,255,.28);
  border-radius:999px;
  font-size:11px;
  padding:4px 10px;
  margin-bottom:8px;}
.gx-accueil .avis-row-style-b h3{margin:0;
  font-size:17px;}
.gx-accueil .avis-row-style-b .avis-text{color:#deebff;}
.gx-accueil .avis-foot{margin-top:14px;
  display:flex;
  justify-content:space-between;
  align-items:center;
  font-size:13px;}
.gx-accueil .avis-row-style-google .avis-card-google{background:#fff;
  padding:16px;
  border:1px solid #d9e3f2;
  box-shadow:0 8px 24px rgba(19,41,78,.10);}
.gx-accueil .avis-google-head{display:flex;
  align-items:center;
  gap:10px;}
.gx-accueil .avis-google-mark{width:34px;
  height:34px;
  border-radius:50%;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  font-weight:800;
  color:#fff;
  background:conic-gradient(from 180deg,#ea4335,#fbbc05,#34a853,#4285f4,#ea4335);}
.gx-accueil .avis-row-style-google h3{margin:0;
  font-size:16px;
  color:#123157;}
.gx-accueil .avis-row-style-google p{margin:3px 0 0;
  font-size:12px;
  color:#6580a5;}
.gx-accueil .avis-google-score{margin-top:10px;
  display:flex;
  align-items:baseline;
  gap:8px;}
.gx-accueil .avis-google-score strong{font-size:22px;
  color:#0f2c50;}
.gx-accueil .avis-google-score span{color:#f59e0b;
  letter-spacing:1px;}
@media(max-width:1024px){.gx-accueil .avis-clients-section{padding:28px 16px 46px;}
.gx-accueil .avis-row{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media(max-width:640px){.gx-accueil .avis-row{grid-template-columns:1fr;}}
.gx-accueil .etm-section{background:linear-gradient(180deg,#f8fbff 0%,#ffffff 100%);padding:26px 0 70px}
.gx-accueil .etm-container{max-width:100%;padding:0 40px}
.gx-accueil .etm-filters{display:flex;align-items:center;flex-wrap:wrap;gap:8px}
.gx-accueil .etm-filter-btn{border:1px solid #dce6f5;background:#fff;color:#2b3d5b;border-radius:999px;padding:9px 14px;
    font:700 12px/1 'Montserrat',sans-serif;display:inline-flex;align-items:center;gap:6px;cursor:pointer;
    transition:all .2s ease}
.gx-accueil .etm-filter-btn:hover{border-color:#e8761a;color:#e8761a;transform:translateY(-1px)}
.gx-accueil .etm-filter-btn.active{background:#e8761a;border-color:#e8761a;color:#fff;box-shadow:0 8px 18px rgba(232,118,26,.28)}
.gx-accueil .etm-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:24px}
.gx-accueil .etm-card{background:#fff;border:1px solid #e6edf8;border-radius:18px;overflow:hidden;
    box-shadow:0 8px 26px rgba(12,38,82,.08);transition:transform .22s ease, box-shadow .22s ease}
.gx-accueil .etm-card:hover{transform:translateY(-4px);box-shadow:0 16px 34px rgba(12,38,82,.14)}
.gx-accueil .etm-card-media{position:relative;aspect-ratio:16/9;overflow:hidden}
.gx-accueil .etm-card-media img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .35s ease}
.gx-accueil .etm-card:hover .etm-card-media img{transform:scale(1.04)}
.gx-accueil .etm-badge{position:absolute;left:12px;top:12px;background:rgba(15,40,76,.88);color:#fff;border:1px solid rgba(255,255,255,.35);
    border-radius:999px;padding:5px 10px;font:700 10px/1 'Montserrat',sans-serif;letter-spacing:.4px;text-transform:uppercase}
.gx-accueil .etm-card-content{padding:16px}
.gx-accueil .etm-card-content h3{margin:0 0 8px;font:800 18px/1.3 'Montserrat',sans-serif;color:#102647}
.gx-accueil .etm-card-content p{margin:0 0 12px;font:500 14px/1.6 'Montserrat',sans-serif;color:#55657f}
.gx-accueil .etm-card-link{display:inline-flex;align-items:center;gap:6px;text-decoration:none;border-radius:10px;
    background:#f2f6ff;border:1px solid #d9e4f6;color:#123f8d;padding:8px 12px;font:700 12px/1 'Montserrat',sans-serif}
.gx-accueil .etm-card-link:hover{background:#123f8d;color:#fff;border-color:#123f8d}
.gx-accueil .etm-empty{display:none;align-items:center;justify-content:center;flex-direction:column;gap:8px;color:#7f8ba2;padding:36px 10px}
.gx-accueil .etm-empty i{font-size:28px;color:#b4bfd2}
@media (max-width:1100px){.gx-accueil .etm-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:768px){.gx-accueil .etm-container{padding:0 16px}
.gx-accueil .etm-grid{grid-template-columns:1fr}}
.gx-accueil .gic-section{background:radial-gradient(1200px 500px at 20% -10%,#fff0e8 0%,transparent 70%),radial-gradient(900px 500px at 100% 0,#edf5ff 0%,transparent 72%),#f8fafc;padding:34px 0 78px;}
.gx-accueil .gic-container{max-width:100%;padding:0 40px;}
.gx-accueil .gic-destinations .resto-dest-link{background:none;border:none;padding:0;cursor:pointer;}
.gx-accueil .gic-destinations{display:flex;align-items:center;flex-wrap:wrap;gap:8px;}
.gx-accueil .gic-dest-btn{font-family:Montserrat,sans-serif;
  font-weight:800;
  letter-spacing:.25px;
  border-radius:999px;
  border:1px solid #dbe3ef;
  color:#27364d;
  background:#fff;
  transition:all .2s ease;}
.gx-accueil .gic-dest-btn--xl{padding:10px 18px;font-size:13px;}
.gx-accueil .gic-dest-btn--md{padding:8px 14px;font-size:12px;}
.gx-accueil .gic-dest-btn--sm{padding:6px 11px;font-size:11px;}
.gx-accueil .gic-dest-btn--pill{padding:12px 16px;font-size:12px;border-radius:14px;}
.gx-accueil .gic-dest-btn:hover{border-color:#f26522;color:#f26522;transform:translateY(-1px);}
.gx-accueil .gic-dest-btn.active{background:linear-gradient(135deg,#f26522,#d4af37);border-color:transparent;color:#fff;box-shadow:0 8px 18px rgba(242,101,34,.3);}
.gx-accueil .gic-categories{display:flex;align-items:center;flex-wrap:wrap;gap:8px;}
.gx-accueil .gic-filter-btn{border:1px solid #dbe3ef;
  color:#32455f;
  background:#fff;
  border-radius:999px;
  font-family:Montserrat,sans-serif;
  font-weight:700;
  cursor:pointer;
  transition:all .22s ease;
  display:inline-flex;
  align-items:center;
  gap:6px;}
.gx-accueil .gic-filter-btn--wide{padding:11px 20px;font-size:13px;}
.gx-accueil .gic-filter-btn--chip{padding:7px 12px;font-size:11px;}
.gx-accueil .gic-filter-btn--tall{padding:13px 14px;font-size:12px;border-radius:14px;}
.gx-accueil .gic-filter-btn--pill{padding:10px 18px;font-size:12px;border-radius:26px;}
.gx-accueil .gic-filter-btn--soft{padding:9px 15px;font-size:12px;background:#f6f9ff;}
.gx-accueil .gic-filter-btn:hover{border-color:#e60023;color:#e60023;transform:translateY(-1px);}
.gx-accueil .gic-filter-btn.active{background:#e60023;border-color:#e60023;color:#fff;box-shadow:0 10px 20px rgba(230,0,35,.25);}
.gx-accueil .gic-layout{display:flex;flex-direction:column;gap:16px;padding-top:20px;}
.gx-accueil .gic-row{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:16px;align-items:start;}
.gx-accueil .gic-card{break-inside:avoid;
  display:block;
  margin:0;
  background:#fff;
  border-radius:18px;
  overflow:hidden;
  box-shadow:0 8px 24px rgba(11,20,39,.08);
  transition:transform .25s ease, box-shadow .25s ease;
  border:1px solid rgba(17,24,39,.05);}
.gx-accueil .gic-card:hover{transform:translateY(-5px);box-shadow:0 16px 36px rgba(11,20,39,.16);}
.gx-accueil .gic-card--h{grid-column:span 1;}
.gx-accueil .gic-media-wrap{position:relative;
  overflow:hidden;
  aspect-ratio:var(--gic-ratio,4/5);
  background:#e6ecf5;}
.gx-accueil .gic-media-wrap img{width:100%;
  height:100%;
  object-fit:cover;
  display:block;
  transition:transform .35s ease;}
.gx-accueil .gic-card:hover .gic-media-wrap img{transform:scale(1.04);}
.gx-accueil .gic-save-btn, .gx-accueil .gic-more-btn{position:absolute;
  z-index:3;
  border:none;
  cursor:pointer;
  transition:transform .2s ease,opacity .2s ease;
  opacity:0;}
.gx-accueil .gic-save-btn{top:10px;right:10px;
  background:#e60023;color:#fff;
  border-radius:999px;
  padding:8px 12px;
  font-size:11px;font-weight:700;
  letter-spacing:.2px;}
.gx-accueil .gic-more-btn{bottom:10px;right:10px;
  width:32px;height:32px;border-radius:50%;
  background:#fff;color:#1f2937;font-size:13px;}
.gx-accueil .gic-card:hover .gic-save-btn, .gx-accueil .gic-card:hover .gic-more-btn{opacity:1;}
.gx-accueil .gic-save-btn:hover, .gx-accueil .gic-more-btn:hover{transform:scale(1.06);}
.gx-accueil .gic-overlay{position:absolute;
  left:0;right:0;bottom:0;
  padding:48px 12px 10px;
  background:linear-gradient(180deg,rgba(0,0,0,0) 10%,rgba(0,0,0,.72) 100%);
  color:#fff;}
.gx-accueil .gic-pill{display:inline-block;
  margin-bottom:6px;
  background:rgba(255,255,255,.2);
  backdrop-filter:blur(4px);
  border:1px solid rgba(255,255,255,.4);
  color:#fff;
  font-size:10px;
  font-weight:700;
  padding:4px 10px;
  border-radius:999px;
  text-transform:uppercase;
  letter-spacing:.4px;}
.gx-accueil .gic-overlay h3{margin:0 0 4px;
  font-size:14px;
  line-height:1.25;
  font-weight:800;
  text-shadow:0 2px 14px rgba(0,0,0,.35);}
.gx-accueil .gic-overlay p{margin:0;
  font-size:11px;
  display:flex;
  align-items:center;
  gap:5px;
  opacity:.92;}
.gx-accueil .gic-tags{display:flex;
  flex-wrap:wrap;
  gap:6px;
  padding:10px 10px 12px;}
.gx-accueil .gic-tag{border:1px solid #e8edf5;
  background:#f6f8fc;
  color:#44536b;
  font-size:10px;
  font-weight:700;
  padding:5px 9px;
  border-radius:999px;
  cursor:pointer;
  letter-spacing:.2px;}
.gx-accueil .gic-tag:hover{border-color:#e60023;color:#e60023;background:#fff;}
.gx-accueil .gic-tag.is-active{border-color:#e60023;background:#ffe8ee;color:#e60023;}
.gx-accueil .gic-empty{display:none;align-items:center;justify-content:center;flex-direction:column;color:#8b95a7;padding:52px 12px;gap:10px;}
.gx-accueil .gic-empty i{font-size:34px;color:#c3ccda;}
@media(max-width:1200px){.gx-accueil .gic-row{grid-template-columns:repeat(3,minmax(0,1fr));}}
@media(max-width:900px){.gx-accueil .gic-container{padding:0 16px;}
.gx-accueil .gic-row{grid-template-columns:repeat(2,minmax(0,1fr));}
.gx-accueil .gic-card--h{grid-column:span 1;}}
@media(max-width:620px){.gx-accueil .gic-row{grid-template-columns:1fr;}
.gx-accueil .gic-card--h{grid-column:span 1;}}
.gx-accueil #vp-chaine .vp-dest-select{min-width: 150px;
    max-width: 210px;
    padding: 6px 28px 6px 10px;
    border: 1px solid rgba(10, 22, 40, 0.18);
    border-radius: 8px;
    background: #fff;
    color: #0a1628;
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.5px;}
.gx-accueil #vp-chaine .vp-dest-select:focus{outline: none;
    border-color: #f26522;
    box-shadow: 0 0 0 2px rgba(242, 101, 34, 0.18);}
.gx-accueil #vp-chaine .vp-dest-breadcrumb{flex: 1;
    min-width: 0;
    display: flex;
    align-items: center;
    flex-wrap: nowrap;
    gap: 8px;}
.gx-accueil #vp-chaine .resto-dest-row{display: flex;
    align-items: center;
    flex-wrap: nowrap;
    gap: 12px;}
.gx-accueil #vp-chaine .vp-dest-select{flex: 1;
    min-width: 120px;}
.gx-accueil #vp-chaine .video-player-v2-controls{display: none;}
.gx-accueil :is(#vp-chaine, #vp-reseaux) .vp-network-section{margin-top: 24px;
    background: linear-gradient(180deg, #ffffff 0%, #f6f9ff 100%);
    border: 1px solid rgba(12, 28, 54, 0.08);
    border-radius: 16px;
    padding: 18px;}
.gx-accueil :is(#vp-chaine, #vp-reseaux) .vp-network-head h3{margin: 0;
    color: #0a1628;
    font-size: clamp(18px, 2vw, 24px);
    font-weight: 900;
    letter-spacing: 0.02em;
    text-transform: uppercase;}
.gx-accueil :is(#vp-chaine, #vp-reseaux) .vp-network-head p{margin: 8px 0 0;
    color: #5b6c84;
    font-size: 13px;
    line-height: 1.5;
    max-width: 860px;}
.gx-accueil :is(#vp-chaine, #vp-reseaux) .vp-network-grid{margin-top: 14px;
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 12px;}
.gx-accueil :is(#vp-chaine, #vp-reseaux) .vp-network-card{position: relative;
    display: flex;
    align-items: flex-start;
    gap: 10px;
    text-decoration: none;
    color: #ffffff;
    border-radius: 14px;
    padding: 14px 12px;
    min-height: 126px;
    box-shadow: 0 10px 22px rgba(13, 31, 62, 0.2);
    transition: transform 0.2s ease, box-shadow 0.2s ease;}
.gx-accueil :is(#vp-chaine, #vp-reseaux) .vp-network-card:hover{transform: translateY(-3px);
    box-shadow: 0 16px 28px rgba(13, 31, 62, 0.28);}
.gx-accueil :is(#vp-chaine, #vp-reseaux) .vp-network-icon{width: 38px;
    height: 38px;
    border-radius: 10px;
    background: rgba(255, 255, 255, 0.18);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 17px;
    flex-shrink: 0;}
.gx-accueil :is(#vp-chaine, #vp-reseaux) .vp-network-body h4{margin: 0 0 6px;
    font-size: 14px;
    font-weight: 800;
    line-height: 1.3;}
.gx-accueil :is(#vp-chaine, #vp-reseaux) .vp-network-body p{margin: 0;
    font-size: 11.5px;
    line-height: 1.45;
    color: rgba(255, 255, 255, 0.92);}
.gx-accueil :is(#vp-chaine, #vp-reseaux) .vp-network-go{position: absolute;
    right: 10px;
    bottom: 10px;
    font-size: 11px;
    opacity: 0.9;}
.gx-accueil :is(#vp-chaine, #vp-reseaux) .vp-network-card:nth-child(1){background: linear-gradient(135deg, #ff0000, #a30000);}
.gx-accueil :is(#vp-chaine, #vp-reseaux) .vp-network-card:nth-child(2){background: linear-gradient(135deg, #1ab7ea, #0a6c95);}
.gx-accueil :is(#vp-chaine, #vp-reseaux) .vp-network-card:nth-child(3){background: linear-gradient(135deg, #0e6fff, #033785);}
.gx-accueil :is(#vp-chaine, #vp-reseaux) .vp-network-card:nth-child(4){background: linear-gradient(135deg, #ff0084, #7d0055);}
.gx-accueil :is(#vp-chaine, #vp-reseaux) .vp-network-card:nth-child(5){background: linear-gradient(135deg, #23b2ff, #0076a9);}
.gx-accueil :is(#vp-chaine, #vp-reseaux) .vp-network-card:nth-child(6){background: linear-gradient(135deg, #7cd62e, #2a7a13);}
.gx-accueil :is(#vp-chaine, #vp-reseaux) .vp-network-card:nth-child(7){background: linear-gradient(135deg, #4f5bd5, #222a78);}
.gx-accueil :is(#vp-chaine, #vp-reseaux) .vp-network-card:nth-child(8){background: linear-gradient(135deg, #f16822, #9f3d12);}
.gx-accueil :is(#vp-chaine, #vp-reseaux) .vp-network-card:nth-child(9){background: linear-gradient(135deg, #7b7e87, #3f4149);}
.gx-accueil :is(#vp-chaine, #vp-reseaux) .vp-network-card:nth-child(10){background: linear-gradient(135deg, #9146ff, #4a168f);}
.gx-accueil :is(#vp-chaine, #vp-reseaux) .vp-network-card:nth-child(11){background: linear-gradient(135deg, #ff9f1a, #8e4d00);}
.gx-accueil :is(#vp-chaine, #vp-reseaux) .vp-network-card:nth-child(12){background: linear-gradient(135deg, #00a8ff, #045f8d);}
.gx-accueil :is(#vp-chaine, #vp-reseaux) .vp-network-card:nth-child(13){background: linear-gradient(135deg, #ff5f5f, #8c1c1c);}
@media (max-width: 992px){.gx-accueil #vp-chaine .resto-dest-row{flex-wrap: wrap;}
.gx-accueil #vp-chaine .vp-dest-breadcrumb{width: 100%;
        flex-wrap: wrap;}
.gx-accueil #vp-chaine .vp-dest-select{min-width: 145px;}
.gx-accueil :is(#vp-chaine, #vp-reseaux) .vp-network-grid{grid-template-columns: repeat(2, minmax(0, 1fr));}}
@media (max-width: 620px){.gx-accueil :is(#vp-chaine, #vp-reseaux) .vp-network-grid{grid-template-columns: 1fr;}}
.gx-accueil #my-tube .resto-header-main{grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 10px;}
.gx-accueil #my-tube .resto-header-center{grid-column: 2;
    width: 100%;
    max-width: 100%;}
.gx-accueil #my-tube .resto-header-logo-left{display: none !important;}
.gx-accueil #my-tube .resto-header-logo-right{pointer-events: auto;
    width: auto;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 8px;}
.gx-accueil #my-tube .resto-header-logo-right{grid-column: 3;
    justify-self: auto;}
@media (max-width: 1024px){.gx-accueil #my-tube .resto-header-main{grid-template-columns: repeat(3, minmax(0, 1fr));}}
@media (max-width: 768px){.gx-accueil #my-tube .resto-header-logo-right{width: auto;}}
.gx-accueil .gifts-vedette-v2-section .resto-header-title{color: #0f172a;}
.gx-accueil .gifts-vedette-v2-section .products-vedette-v2-card-image::after{background: linear-gradient(180deg, rgba(255,255,255,0) 42%, rgba(230,82,22,.16) 100%);}
.gx-accueil #resto-ambiance-vedette-v2 .resto-header-main{grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 10px;}
.gx-accueil #resto-ambiance-vedette-v2 .resto-header-center{grid-column: 2;
    width: 100%;
    max-width: 100%;}
.gx-accueil #resto-ambiance-vedette-v2 .resto-header-logo-left{display: none !important;}
.gx-accueil #resto-ambiance-vedette-v2 .resto-header-logo-right{grid-column: 3;
    justify-self: end;
    width: auto;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 8px;}
.gx-accueil #resto-ambiance-vedette-v2 .resto-header-logo-right{pointer-events: auto;}
@media (max-width: 1024px){.gx-accueil #resto-ambiance-vedette-v2 .resto-header-main{grid-template-columns: repeat(3, minmax(0, 1fr));}}
@media (max-width: 768px){.gx-accueil #resto-ambiance-vedette-v2{overflow: hidden;}
.gx-accueil #resto-ambiance-vedette-v2 .products-vedette-v2-container{padding-left: 10px;
        padding-right: 10px;}
.gx-accueil #resto-ambiance-vedette-v2 .resto-header-block{border-radius: 16px;
        overflow: hidden;}
.gx-accueil #resto-ambiance-vedette-v2 .resto-header-main{display: flex !important;
        flex-direction: column;
        align-items: center;
        grid-template-columns: minmax(0, 1fr) !important;
        gap: 12px;
        width: 100%;
        padding: 22px 14px 18px;
        min-height: 0;}
.gx-accueil #resto-ambiance-vedette-v2 .resto-header-center, .gx-accueil #resto-ambiance-vedette-v2 .resto-header-logo-right{width: 100%;
        max-width: 100%;
        grid-column: auto !important;
        justify-self: center;}
.gx-accueil #resto-ambiance-vedette-v2 .resto-header-center{order: 1;
        display: flex;
        align-items: center;
        gap: 10px;
        text-align: center;}
.gx-accueil #resto-ambiance-vedette-v2 .resto-header-logo-right{order: 2;
        display: flex;
        justify-content: center;
        align-items: center;
        flex-direction: row;
        pointer-events: auto;}
.gx-accueil #resto-ambiance-vedette-v2 .resto-header-logo-right a{display: inline-flex;
        max-width: min(260px, 76vw);}
.gx-accueil #resto-ambiance-vedette-v2 .bt-next-level-image{display: block;
        width: min(260px, 76vw);
        max-width: 100%;
        height: auto;
        object-fit: contain;}
.gx-accueil #resto-ambiance-vedette-v2 .resto-header-title{width: 100%;
        max-width: 100%;
        font-size: clamp(21px, 6vw, 30px);
        line-height: 1.12;
        letter-spacing: 1.6px;
        overflow-wrap: anywhere;}
.gx-accueil #resto-ambiance-vedette-v2 .resto-header-subtitle{width: 100%;
        max-width: min(420px, 92vw);
        font-size: 13px;
        line-height: 1.45;}
.gx-accueil #resto-ambiance-vedette-v2 .resto-header-tabs{width: 100%;
        display: grid;
        grid-template-columns: 1fr;
        gap: 10px;
        justify-items: center;
        overflow: visible;}
.gx-accueil #resto-ambiance-vedette-v2 .resto-tab-btn{width: min(330px, 88vw);
        justify-content: center;
        white-space: normal;
        min-height: 44px;}
.gx-accueil #resto-ambiance-vedette-v2 .resto-header-destinations-bar{padding: 12px;}
.gx-accueil #resto-ambiance-vedette-v2 .resto-dest-row, .gx-accueil #resto-ambiance-vedette-v2 .resto-dest-breadcrumb.vp-dest-breadcrumb{width: 100%;
        display: grid;
        grid-template-columns: 1fr;
        gap: 8px;}
.gx-accueil #resto-ambiance-vedette-v2 .resto-dest-icon-box{width: 100%;
        justify-content: center;}
.gx-accueil #resto-ambiance-vedette-v2 .resto-dest-sep{display: none;}
.gx-accueil #resto-ambiance-vedette-v2 .vp-dest-select{width: 100%;
        min-width: 0;
        max-width: 100%;}
.gx-accueil #resto-ambiance-vedette-v2 .resto-actions-row{align-items: stretch;}
.gx-accueil #resto-ambiance-vedette-v2 .resto-header-ctas, .gx-accueil #resto-ambiance-vedette-v2 .resto-cta-btn, .gx-accueil #resto-ambiance-vedette-v2 .resto-events-nav-btn, .gx-accueil #resto-ambiance-vedette-v2 .resto-plans-btn, .gx-accueil #resto-ambiance-vedette-v2 .resto-lang-switcher{width: 100%;
        min-width: 0;}
.gx-accueil #resto-ambiance-vedette-v2 .resto-header-ctas{display: grid;
        grid-template-columns: 1fr;
        gap: 8px;}}
@media (max-width: 420px){.gx-accueil #resto-ambiance-vedette-v2 .resto-header-main{padding-left: 10px;
        padding-right: 10px;}
.gx-accueil #resto-ambiance-vedette-v2 .resto-header-title{font-size: 21px;}
.gx-accueil #resto-ambiance-vedette-v2 .bt-next-level-image{width: min(230px, 78vw);}
.gx-accueil #resto-ambiance-vedette-v2 .resto-tab-btn{width: min(310px, 92vw);
        font-size: 12px;
        padding-left: 12px;
        padding-right: 12px;}}
.gx-accueil #resto-ambiance-vedette-v2 .products-vedette-v2-scroll-container{display: flex;
    gap: 20px;
    overflow: visible;
    padding-bottom: 8px;
    will-change: transform;}
.gx-accueil #resto-ambiance-vedette-v2 .resto-ambiance-v2-card{min-width: 280px;
    max-width: 280px;
    flex-shrink: 0;}
.gx-accueil #resto-ambiance-vedette-v2 .resto-ambiance-v2-card .resto-card-img{height: 220px;}
.gx-accueil .immo-specialized-section{scroll-margin-top: 130px;
            padding-top: 42px;}
.gx-accueil .immo-specialized-section .immo-specialized-kicker{display: inline-flex;
            align-items: center;
            gap: 8px;
            padding: 8px 16px;
            border-radius: 999px;
            background: #fff4ed;
            color: #e65216;
            font-size: 13px;
            font-weight: 800;
            letter-spacing: .08em;
            text-transform: uppercase;
            box-shadow: 0 10px 24px rgba(230, 82, 22, .12);}
.gx-accueil .immo-specialized-section .immo-v2-grid{align-items: stretch;}
.gx-accueil .immo-specialized-section .immo-v2-card{min-height: 100%;}
.gx-accueil .immo-specialized-section .immo-specialized-actions{display: flex;
            justify-content: center;
            margin-top: 28px;}
.gx-accueil .immo-specialized-section .immo-specialized-cta{display: inline-flex;
            align-items: center;
            gap: 10px;
            padding: 13px 26px;
            border-radius: 999px;
            background: linear-gradient(135deg, #e65216, #ff8b4a);
            color: #fff;
            font-weight: 900;
            text-decoration: none;
            box-shadow: 0 16px 32px rgba(230, 82, 22, .24);
            transition: transform .2s ease, box-shadow .2s ease;}
.gx-accueil .immo-specialized-section .immo-specialized-cta:hover{color: #fff;
            transform: translateY(-2px);
            box-shadow: 0 20px 38px rgba(230, 82, 22, .3);}
@media (max-width: 767px){.gx-accueil .immo-specialized-section{padding-top: 28px;}}
.gx-accueil{--nv-blue:   #1a3a8f;
    --nv-orange: #e8761a;
    --nv-green:  #10b981;
    --nv-purple: #8b5cf6;
    --nv-dark:   #0d1f3c;
    --nv-light:  #f8faff;
    --nv-border: #e5e7eb;}
.gx-accueil .nv-section{background: linear-gradient(180deg,#f8faff 0%,#fff 100%);}
.gx-accueil .nv-body{padding: 0 40px 60px;}
.gx-accueil .nv-grad-text{background: linear-gradient(135deg, var(--nv-orange), #f59e0b);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;}
.gx-accueil .nv-eyebrow{display: inline-flex; align-items: center; gap: 6px;
    font-size: 11px; font-weight: 700; text-transform: uppercase; letter-spacing: 1.5px;
    color: var(--nv-orange); background: #fef3ea;
    padding: 5px 14px; border-radius: 999px; margin-bottom: 10px;}
.gx-accueil .nv-block-header{display: flex; justify-content: space-between; align-items: flex-end;
    margin-bottom: 28px; flex-wrap: wrap; gap: 12px;}
.gx-accueil .nv-block-title{font-family: 'Playfair Display', Georgia, serif;
    font-size: 26px; color: #1a1a1a; margin: 0;}
.gx-accueil .nv-see-all{font-size: 13px; font-weight: 700; color: var(--nv-orange);
    text-decoration: none; display: flex; align-items: center; gap: 6px; white-space: nowrap;}
.gx-accueil .nv-see-all:hover{text-decoration: underline;}
.gx-accueil .nv-ticker{background: var(--nv-dark); border-radius: 10px; padding: 0;
    display: flex; align-items: stretch; margin: 20px 0 32px;
    overflow: hidden; height: 40px;}
.gx-accueil .nv-ticker-label{background: var(--nv-orange); color: #fff; padding: 0 16px;
    font-size: 11px; font-weight: 800; letter-spacing: 1.5px; text-transform: uppercase;
    display: flex; align-items: center; gap: 6px; flex-shrink: 0;}
.gx-accueil .nv-ticker-label i{font-size: 7px; animation: nvBlink 1.2s infinite;}
@keyframes nvBlink{ 0%,100%{opacity:1} 50%{opacity:.1} }
.gx-accueil .nv-ticker-track{flex: 1; overflow: hidden; display: flex; align-items: center;}
.gx-accueil .nv-ticker-inner{display: flex; gap: 60px; white-space: nowrap;
    animation: nvTicker 40s linear infinite; padding-left: 24px;}
.gx-accueil .nv-ticker-inner span{font-size: 13px; color: rgba(255,255,255,.85); flex-shrink: 0;}
@keyframes nvTicker{ 0%{transform:translateX(0)} 100%{transform:translateX(-50%)} }
.gx-accueil .nv-hero{display: grid; grid-template-columns: 1fr 340px;
    gap: 24px; margin-bottom: 48px; align-items: stretch;}
.gx-accueil .nv-hero-img-wrap{position: relative; border-radius: 20px; overflow: hidden;
    min-height: 380px;}
.gx-accueil .nv-hero-img{width: 100%; height: 100%; object-fit: cover;
    transition: transform .5s;}
.gx-accueil .nv-hero-img-wrap:hover .nv-hero-img{transform: scale(1.04);}
.gx-accueil .nv-hero-overlay{position: absolute; inset: 0;
    background: linear-gradient(0deg, rgba(10,22,40,.92) 0%, rgba(10,22,40,.3) 60%, transparent 100%);
    padding: 28px 32px; display: flex; flex-direction: column; justify-content: flex-end;}
.gx-accueil .nv-hero-badge{display: inline-flex; align-items: center; gap: 6px;
    background: var(--nv-orange); color: #fff;
    font-size: 10px; font-weight: 800; text-transform: uppercase; letter-spacing: 1px;
    padding: 4px 12px; border-radius: 6px; margin-bottom: 12px; align-self: flex-start;}
.gx-accueil .nv-hero-regions{display: flex; gap: 8px; margin-bottom: 14px; flex-wrap: wrap;}
.gx-accueil .nv-region-pill{font-size: 10px; font-weight: 700; color: #fff;
    padding: 3px 10px; border-radius: 999px;}
.gx-accueil .nv-hero-title{font-family: 'Playfair Display', Georgia, serif;
    font-size: clamp(20px, 2.2vw, 30px); color: #fff;
    line-height: 1.25; margin-bottom: 12px;}
.gx-accueil .nv-hero-desc{font-size: 14px; color: rgba(255,255,255,.75); line-height: 1.7; margin-bottom: 18px;}
.gx-accueil .nv-hero-meta{display: flex; align-items: center; gap: 20px; flex-wrap: wrap;}
.gx-accueil .nv-hero-meta span{font-size: 12px; color: rgba(255,255,255,.6); display: flex; align-items: center; gap: 5px;}
.gx-accueil .nv-hero-read-btn{background: var(--nv-orange); color: #fff; padding: 8px 18px; border-radius: 8px;
    font-size: 13px; font-weight: 700; text-decoration: none;
    display: inline-flex; align-items: center; gap: 7px; transition: background .2s;
    margin-left: auto;}
.gx-accueil .nv-hero-read-btn:hover{background: #c45e0e; color: #fff;}
.gx-accueil .nv-hero-sidebar{background: #fff; border: 1.5px solid var(--nv-border);
    border-radius: 20px; overflow: hidden; display: flex; flex-direction: column;}
.gx-accueil .nv-sidebar-label{background: var(--nv-dark); color: #fff;
    padding: 12px 18px; font-size: 11px; font-weight: 700;
    text-transform: uppercase; letter-spacing: 1px;
    display: flex; align-items: center; gap: 7px;}
.gx-accueil .nv-sidebar-label i{color: var(--nv-orange);}
.gx-accueil .nv-mini-article{padding: 12px 18px; border-bottom: 1px solid #f0f0f0;
    text-decoration: none; display: block; transition: background .2s;}
.gx-accueil .nv-mini-article:last-child{border-bottom: none;}
.gx-accueil .nv-mini-article:hover{background: var(--nv-light);}
.gx-accueil .nv-mini-meta{display: flex; align-items: center; gap: 8px; margin-bottom: 5px;}
.gx-accueil .nv-mini-time{font-size: 10px; color: #999; display: flex; align-items: center; gap: 4px;}
.gx-accueil .nv-mini-cat{font-size: 9px; font-weight: 700; text-transform: uppercase; color: var(--nv-orange); background: #fef3ea; padding: 2px 7px; border-radius: 4px;}
.gx-accueil .nv-mini-title{font-size: 13px; font-weight: 600; color: #1a1a1a; line-height: 1.45; margin: 0;}
.gx-accueil .nv-regions-block{margin-bottom: 48px;}
.gx-accueil .nv-tabs{display: flex; gap: 8px; margin-bottom: 24px;
    border-bottom: 2px solid var(--nv-border); padding-bottom: 0;
    overflow-x: auto; scrollbar-width: none; flex-wrap: nowrap;}
.gx-accueil .nv-tabs::-webkit-scrollbar{display: none;}
.gx-accueil .nv-tab{display: flex; align-items: center; gap: 7px;
    padding: 10px 20px; border: none; background: transparent;
    font-size: 14px; font-weight: 600; color: #666; cursor: pointer;
    border-bottom: 3px solid transparent; margin-bottom: -2px;
    white-space: nowrap; transition: all .2s; border-radius: 0;}
.gx-accueil .nv-tab:hover{color: var(--tab-color);}
.gx-accueil .nv-tab.active{color: var(--tab-color); border-bottom-color: var(--tab-color);}
.gx-accueil .nv-tab-flag{font-size: 16px;}
.gx-accueil .nv-tab-count{font-size: 10px; font-weight: 700; padding: 2px 7px; border-radius: 999px;}
.gx-accueil .nv-tab-panel{display: none;}
.gx-accueil .nv-tab-panel.active{display: block;}
.gx-accueil .nv-articles-grid{display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px;}
.gx-accueil .nv-article-card{background: #fff; border: 1.5px solid var(--nv-border);
    border-radius: 18px; overflow: hidden; transition: all .3s;
    display: flex; flex-direction: column;}
.gx-accueil .nv-article-card:hover{transform: translateY(-4px); box-shadow: 0 16px 40px rgba(0,0,0,.08); border-color: var(--nv-orange);}
.gx-accueil .nv-article-img-wrap{position: relative; height: 180px; overflow: hidden;}
.gx-accueil .nv-article-img{width: 100%; height: 100%; object-fit: cover; transition: transform .4s;}
.gx-accueil .nv-article-card:hover .nv-article-img{transform: scale(1.06);}
.gx-accueil .nv-article-region-badge{position: absolute; top: 10px; left: 10px;
    color: #fff; font-size: 9px; font-weight: 800; text-transform: uppercase;
    letter-spacing: .8px; padding: 3px 9px; border-radius: 5px;}
.gx-accueil .nv-article-body{padding: 18px 20px; flex: 1; display: flex; flex-direction: column;}
.gx-accueil .nv-article-cat{font-size: 10px; font-weight: 700; text-transform: uppercase; letter-spacing: .8px; margin-bottom: 8px;}
.gx-accueil .nv-article-title{font-family: 'Playfair Display', Georgia, serif; font-size: 16px; font-weight: 700; color: #1a1a1a; line-height: 1.4; margin-bottom: 10px;}
.gx-accueil .nv-article-desc{font-size: 12px; color: #666; line-height: 1.65; flex: 1; margin-bottom: 14px;}
.gx-accueil .nv-article-footer{display: flex; justify-content: space-between; align-items: center;}
.gx-accueil .nv-article-time{font-size: 11px; color: #999; display: flex; align-items: center; gap: 4px;}
.gx-accueil .nv-article-read{font-size: 12px; font-weight: 700; text-decoration: none; display: flex; align-items: center; gap: 4px;}
.gx-accueil .nv-article-read:hover{text-decoration: underline;}
.gx-accueil .nv-explore-more{display: flex !important; flex-direction: column !important;
    align-items: center; justify-content: center; text-align: center;
    padding: 32px 24px; border-width: 2px; border-style: dashed;}
.gx-accueil .nv-explore-icon{font-size: 44px; margin-bottom: 14px;}
.gx-accueil .nv-explore-more h4{font-size: 18px; font-weight: 700; margin-bottom: 8px;}
.gx-accueil .nv-explore-more p{font-size: 13px; color: #888; margin-bottom: 20px;}
.gx-accueil .nv-explore-btn{color: #fff; padding: 10px 22px; border-radius: 10px;
    font-size: 13px; font-weight: 700; text-decoration: none;
    display: inline-flex; align-items: center; gap: 7px; transition: opacity .2s;}
.gx-accueil .nv-explore-btn:hover{opacity: .88; color: #fff;}
.gx-accueil .nv-quick-regions{margin-bottom: 48px;}
.gx-accueil .nv-quick-grid{display: grid; grid-template-columns: repeat(6, 1fr); gap: 14px;}
.gx-accueil .nv-quick-card{background: #fff; border: 1.5px solid var(--nv-border);
    border-radius: 14px; padding: 18px 14px; text-decoration: none;
    display: flex; flex-direction: column; align-items: center; text-align: center; gap: 6px;
    transition: all .25s;
    border-top: 3px solid var(--qc, var(--nv-orange));}
.gx-accueil .nv-quick-card:hover{transform: translateY(-3px); box-shadow: 0 8px 20px rgba(0,0,0,.07);}
.gx-accueil .nv-quick-flag{font-size: 28px;}
.gx-accueil .nv-quick-label{font-size: 13px; font-weight: 700; color: #1a1a1a;}
.gx-accueil .nv-quick-count{font-size: 11px; font-weight: 600;}
.gx-accueil .nv-alerts-block{background: linear-gradient(135deg, #0d1f3c, #1a3a8f);
    border-radius: 28px; padding: 56px; margin-bottom: 48px;
    display: grid; grid-template-columns: 1fr 1fr; gap: 60px; align-items: start;}
.gx-accueil .nv-alerts-badge{display: inline-flex; align-items: center; gap: 7px;
    background: rgba(232,118,26,.2); border: 1px solid rgba(232,118,26,.35);
    color: #e8761a; padding: 5px 14px; border-radius: 999px;
    font-size: 11px; font-weight: 700; text-transform: uppercase; letter-spacing: 1px;
    margin-bottom: 18px;}
.gx-accueil .nv-alerts-left h3{font-family: 'Playfair Display', Georgia, serif;
    font-size: 28px; color: #fff; line-height: 1.2; margin-bottom: 14px;}
.gx-accueil .nv-alerts-left h3 em{font-style: italic; color: var(--nv-orange);}
.gx-accueil .nv-alerts-left p{font-size: 14px; color: rgba(255,255,255,.7); line-height: 1.8; margin-bottom: 22px;}
.gx-accueil .nv-alerts-features{list-style: none; display: flex; flex-direction: column; gap: 10px;}
.gx-accueil .nv-alerts-features li{font-size: 13px; color: rgba(255,255,255,.8); display: flex; align-items: center; gap: 9px;}
.gx-accueil .nv-alerts-features li i{color: var(--nv-green);}
.gx-accueil .nv-form-group{margin-bottom: 16px;}
.gx-accueil .nv-form-group label{display: block; font-size: 12px; font-weight: 700;
    color: rgba(255,255,255,.8); margin-bottom: 7px;}
.gx-accueil .nv-form-group input, .gx-accueil .nv-form-group select{width: 100%; background: rgba(255,255,255,.08);
    border: 1.5px solid rgba(255,255,255,.15);
    border-radius: 10px; padding: 12px 14px;
    font-size: 14px; color: #fff; transition: border-color .2s;}
.gx-accueil .nv-form-group input::placeholder{color: rgba(255,255,255,.4);}
.gx-accueil .nv-form-group select option{background: #1a3a8f; color: #fff;}
.gx-accueil .nv-form-group input:focus, .gx-accueil .nv-form-group select:focus{outline: none; border-color: var(--nv-orange);}
.gx-accueil .nv-region-checkboxes{display: flex; flex-wrap: wrap; gap: 8px;}
.gx-accueil .nv-checkbox-label{cursor: pointer;}
.gx-accueil .nv-checkbox-label input{display: none;}
.gx-accueil .nv-checkbox-pill{display: inline-block; padding: 5px 12px; border-radius: 999px;
    font-size: 12px; font-weight: 600; color: rgba(255,255,255,.7);
    background: rgba(255,255,255,.08); border: 1.5px solid rgba(255,255,255,.15);
    transition: all .2s; cursor: pointer;}
.gx-accueil .nv-checkbox-label input:checked + .nv-checkbox-pill{background: var(--cc, var(--nv-orange)); color: #fff;
    border-color: var(--cc, var(--nv-orange));}
.gx-accueil .nv-btn-submit{width: 100%; background: linear-gradient(135deg, var(--nv-orange), #c04f10);
    color: #fff; border: none; border-radius: 10px; padding: 14px;
    font-size: 14px; font-weight: 700; cursor: pointer;
    display: flex; align-items: center; justify-content: center; gap: 8px;
    transition: all .2s; margin-top: 6px;}
.gx-accueil .nv-btn-submit:hover{transform: translateY(-2px); box-shadow: 0 12px 32px rgba(232,118,26,.4);}
.gx-accueil .nv-form-note{font-size: 11px; color: rgba(255,255,255,.4); text-align: center; margin-top: 10px;}
.gx-accueil .nv-cta{background: linear-gradient(135deg, #fef3ea, #fff3e6);
    border-radius: 24px; padding: 40px 48px;
    display: flex; justify-content: space-between; align-items: center;
    gap: 32px; flex-wrap: wrap;}
.gx-accueil .nv-cta-content{display: flex; flex-direction: column;}
.gx-accueil .nv-cta-content i{font-size: 32px; color: var(--nv-orange); margin-bottom: 10px;}
.gx-accueil .nv-cta-content h3{font-size: 22px; color: #1a1a1a; margin-bottom: 6px;}
.gx-accueil .nv-cta-content p{font-size: 14px; color: #666;}
.gx-accueil .nv-cta-buttons{display: flex; gap: 12px; flex-wrap: wrap;}
.gx-accueil .nv-cta-primary{background: var(--nv-orange); color: #fff; padding: 12px 24px;
    border-radius: 10px; font-weight: 700; font-size: 14px; text-decoration: none;
    display: inline-flex; align-items: center; gap: 7px; transition: all .2s;}
.gx-accueil .nv-cta-primary:hover{background: #c45e0e; transform: translateY(-2px); color: #fff;}
.gx-accueil .nv-cta-secondary{border: 2px solid var(--nv-orange); color: var(--nv-orange); padding: 12px 24px;
    border-radius: 10px; font-weight: 700; font-size: 14px; text-decoration: none;
    display: inline-flex; align-items: center; gap: 7px; transition: all .2s;}
.gx-accueil .nv-cta-secondary:hover{background: var(--nv-orange); color: #fff;}
@media(max-width:1200px){.gx-accueil .nv-quick-grid{grid-template-columns: repeat(3, 1fr);}
.gx-accueil .nv-hero{grid-template-columns: 1fr;}
.gx-accueil .nv-hero-sidebar{min-height: 0;}
.gx-accueil .nv-alerts-block{grid-template-columns: 1fr; gap: 36px;}}
@media(max-width:900px){.gx-accueil .nv-body{padding: 0 20px 40px;}
.gx-accueil .nv-articles-grid{grid-template-columns: 1fr 1fr;}
.gx-accueil .nv-quick-grid{grid-template-columns: repeat(2, 1fr);}
.gx-accueil .nv-alerts-block{padding: 36px 24px;}
.gx-accueil .nv-cta{flex-direction: column; text-align: center;}
.gx-accueil .nv-cta-content{align-items: center;}
.gx-accueil .nv-cta-buttons{justify-content: center;}}
@media(max-width:600px){.gx-accueil .nv-articles-grid{grid-template-columns: 1fr;}
.gx-accueil .nv-quick-grid{grid-template-columns: repeat(2, 1fr);}
.gx-accueil .nv-tabs{flex-wrap: nowrap;}
.gx-accueil .nv-hero-overlay{padding: 20px;}}
.gx-accueil .gx-tpl-header{background:#0f172a;color:#fff;padding:14px 0}
.gx-accueil .gx-tpl-header-inner{max-width:1280px;margin:0 auto;padding:0 24px;display:flex;align-items:center;gap:24px;flex-wrap:wrap}
.gx-accueil .gx-tpl-logo{display:flex;align-items:center;gap:10px;color:#fff;text-decoration:none;font-weight:800}
.gx-accueil .gx-tpl-logo img{height:38px;width:auto;display:block}
.gx-accueil .gx-tpl-nav{display:flex;gap:20px;margin-left:auto;flex-wrap:wrap}
.gx-accueil .gx-tpl-nav a{color:rgba(255,255,255,.85);text-decoration:none;font-size:14px;font-weight:600}
.gx-accueil .gx-tpl-nav a:hover{color:#fff}
.gx-accueil .gx-tpl-btn{background:#1677ff;color:#fff;padding:10px 20px;border-radius:999px;text-decoration:none;font-weight:700;font-size:14px}
.gx-accueil .gx-tpl-footer{background:#0f172a;color:rgba(255,255,255,.75);padding:56px 0 0;margin-top:40px}
.gx-accueil .gx-tpl-footer-top{max-width:1280px;margin:0 auto;padding:0 24px 40px;display:grid;grid-template-columns:1.6fr 1fr 1fr 1.2fr;gap:32px}
@media(max-width:900px){.gx-accueil .gx-tpl-footer-top{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.gx-accueil .gx-tpl-footer-top{grid-template-columns:1fr}}
.gx-accueil .gx-tpl-footer-brand img{height:44px;width:auto;display:block;margin-bottom:14px}
.gx-accueil .gx-tpl-footer h5{color:#fff;font-size:14px;margin:0 0 14px;text-transform:uppercase;letter-spacing:.05em}
.gx-accueil .gx-tpl-footer ul{list-style:none;padding:0;margin:0}
.gx-accueil .gx-tpl-footer li{margin-bottom:10px;font-size:14px}
.gx-accueil .gx-tpl-footer a{color:rgba(255,255,255,.75);text-decoration:none}
.gx-accueil .gx-tpl-footer a:hover{color:#fff}
.gx-accueil .gx-tpl-social{display:flex;gap:10px;margin-top:16px}
.gx-accueil .gx-tpl-social a{width:36px;height:36px;border-radius:50%;border:1px solid rgba(255,255,255,.2);display:flex;align-items:center;justify-content:center}
.gx-accueil .gx-tpl-footer-bottom{border-top:1px solid rgba(255,255,255,.1);padding:20px 24px;text-align:center;font-size:13px}
.gx-accueil img{pointer-events:auto !important}
.gx-accueil [class*="overlay"], .gx-accueil [class*="-shade"], .gx-accueil [class*="gradient"], .gx-accueil [class*="-veil"], .gx-accueil [class*="mask"], .gx-accueil [class*="play-btn"], .gx-accueil [class*="-badge"], .gx-accueil [class*="caption"]{pointer-events:none}
.gx-accueil [class*="overlay"] a, .gx-accueil [class*="overlay"] button, .gx-accueil [class*="caption"] a, .gx-accueil [class*="caption"] h1, .gx-accueil [class*="caption"] h2, .gx-accueil [class*="caption"] h3, .gx-accueil [class*="caption"] h4, .gx-accueil [class*="caption"] p, .gx-accueil [class*="overlay"] h1, .gx-accueil [class*="overlay"] h2, .gx-accueil [class*="overlay"] h3, .gx-accueil [class*="overlay"] h4, .gx-accueil [class*="overlay"] p, .gx-accueil [class*="overlay"] span{pointer-events:auto}
.gx-accueil .region-explore-bg, .gx-accueil .web-service-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0;border-radius:inherit}
.gx-accueil .region-explore-card, .gx-accueil .web-service-card{isolation:isolate}
.gx-accueil .region-explore-card::before, .gx-accueil .web-service-card::before, .gx-accueil .events-media-slide::after, .gx-accueil .dest-media-slide::after, .gx-accueil .ttk-card-text-overlay, .gx-accueil .ttk-card-bottom, .gx-accueil .gxt-duration, .gx-accueil .gxt-cat-pill, .gx-accueil .nav-video-play-icon, .gx-accueil .vertical-menu-v2-video-play-icon, .gx-accueil .products-vedette-v2-quick, .gx-accueil [class*="-play"]:not([class*="-player"]):not([class*="-playing"]):not(button):not(a), .gx-accueil [class*="-pill"]:not(button):not(a), .gx-accueil [class*="badge"]{pointer-events:none}
.gx-accueil [class*="-play"]:not([class*="-player"]):not([class*="-playing"]):not(button):not(a) a, .gx-accueil [class*="-play"]:not([class*="-player"]):not([class*="-playing"]):not(button):not(a) button, .gx-accueil .products-vedette-v2-quick button{pointer-events:auto}
.gx-accueil.gx-accueil [class*="-player"], .gx-accueil.gx-accueil .gxt-card--playing, .gx-accueil.gx-accueil .gx-joue, .gx-accueil.gx-accueil .gx-lecteur, .gx-accueil.gx-accueil .gx-lecteur iframe, .gx-accueil.gx-accueil .gx-lecteur video, .gx-accueil.gx-accueil .gx-lecteur-fermer, .gx-accueil.gx-accueil button[class*="-pill"]{pointer-events:auto}
.gx-accueil, html.gx-tpl-verrou .gx-accueil body{overflow: hidden;}
.gx-accueil .gx-off{display: none !important;}
.gx-accueil .gx-lecteur{position: absolute; inset: 0; z-index: 5; background: #000;}
.gx-accueil .gx-lecteur iframe{display: block; width: 100%; height: 100%; border: 0;}
.gx-accueil .gx-lecteur-fermer{position: absolute; top: 8px; right: 8px; z-index: 6;
    display: flex; align-items: center; justify-content: center;
    width: 30px; height: 30px; border-radius: 50%;
    background: rgba(0,0,0,.62); color: #fff;
    font: 700 20px/1 system-ui, sans-serif; cursor: pointer;}
.gx-accueil .gx-lecteur-fermer:hover{background: rgba(0,0,0,.85);}
.gx-accueil .gx-joue > *:not(.gx-lecteur){opacity: 0; pointer-events: none;}
.gx-accueil .gx-lecteur video{display: block; width: 100%; height: 100%; border: 0; background: #000; object-fit: contain;}
.gx-accueil .bt-carousel-stage video, .gx-accueil .video-player-v2-main video, .gx-accueil .gxt-player-frame video{position: absolute; inset: 0; z-index: 5;
    display: block; width: 100%; height: 100%; border: 0; background: #000;}
html.gx-tpl-edition .gx-accueil .nv-tab-panel{display: block;}
html.gx-tpl-edition .gx-accueil .creation-slider{aspect-ratio: auto; height: auto; overflow: visible;}
html.gx-tpl-edition .gx-accueil .creation-slide{position: relative; opacity: 1; transition: none;}
@media (max-width: 600px){.gx-accueil .mss-gallery-tile .mss-gallery-desc{display: none;}}
@media (max-width: 600px){.gx-accueil .nl-seo-hero-visual .nl-ai-badge{position: static;
        display: inline-flex;
        margin: 0 0 12px;}}
