/* Correction pour éliminer la bande foncée en haut */
body::after { 
    display: none !important; 
    content: none !important; 
} 

/* Correction pour la bannière en background */
body { 
    overflow-x: hidden !important; /* Empêcher le défilement horizontal causé par des éléments plus larges que la fenêtre */
}

.figurine-banner { 
    position: fixed !important; 
    top: 0 !important; 
    left: 0 !important; 
    width: 100vw !important; /* Utiliser vw au lieu de % pour s'assurer que ça prend toute la largeur de la fenêtre */ 
    height: 100vh !important; /* Prendre toute la hauteur de la vue */
    background: transparent !important; 
    overflow: hidden !important; 
    z-index: -1 !important;
    max-width: none !important; /* Ignorer les contraintes max-width du parent */
    pointer-events: none !important; /* S'assurer que la bannière n'interfère pas avec les interactions */
} 

.figurine-banner-inner {
    display: flex !important;
    align-items: center !important;
    height: 100% !important;
    animation: figurineScroll 40s linear infinite !important;
    width: max-content !important;
    min-width: 300vw !important; /* S'assurer que c'est assez large pour couvrir l'écran avec des figurines */
    position: relative !important;
    left: 0 !important;
}

/* Augmenter l'espacement et la densité des figurines */
.banner-figurine {
    margin: 0 15px !important;
    opacity: 0.2 !important; /* Augmenter légèrement l'opacité pour une meilleure visibilité */
    width: 130px !important;
    height: 200px !important;
}

.hero-section { 
    position: relative; 
    z-index: 1; 
}

/* Corrections pour le formulaire */
.form-container {
    background-color: rgba(51, 94, 158, 0.6) !important;
    backdrop-filter: blur(10px);
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 16px;
    padding: 30px !important;
}

.form-container h2 {
    color: white !important;
    text-align: center;
    margin-bottom: 25px;
    font-size: 1.8rem;
    font-weight: 600;
}

/* Correction pour le menu mobile */
@media (max-width: 991px) {
    .main-nav {
        position: fixed !important;
        top: 0 !important;
        right: -100% !important; /* Commence en dehors de l'écran */
        width: 80% !important;
        max-width: 350px !important;
        height: 100vh !important;
        background-color: var(--primary) !important;
        transition: all 0.3s ease !important;
        z-index: 9999 !important; /* Très élevé pour être au-dessus de tout */
        box-shadow: -5px 0 20px rgba(0, 0, 0, 0.3) !important;
        padding: 80px 0 30px !important;
        display: block !important;
    }
    
    body.menu-open .main-nav::before {
        opacity: 1 !important;
        visibility: visible !important;
    }
    
    /* Assurer que le menu prend toute la largeur sur mobile très petit */
    @media (max-width: 400px) {
        .main-nav {
            width: 100% !important;
            max-width: 100% !important;
        }
    }
    
    /* Améliorer le positionnement du bouton hamburger */
    .mobile-menu-toggle {
        margin-left: 10px !important;
    }
    
    /* Améliorer l'apparence des liens dans le menu mobile */
    .main-nav ul li a {
        font-size: 18px !important;
        padding: 15px 25px !important;
        display: block !important;
        color: white !important;
    }
}

/* Fix pour la bannière de cookies */
.cookie-banner.show {
    transform: translateY(0) !important;
}

/* Fix pour le menu hamburger */
.mobile-menu-toggle {
    z-index: 1010 !important; /* Assurer que le bouton est au-dessus de tout */
    position: relative;
    margin-left: auto !important; /* Aligner le bouton à droite */
}

.main-header {
    z-index: 1000 !important; /* S'assurer que l'en-tête est au-dessus des autres éléments */
    justify-content: space-between !important; /* Assurer que les éléments sont bien espacés */
}

/* S'assurer que le logo et la navigation sont correctement alignés */
.logo-container {
    flex: 0 0 auto !important; /* Ne pas permettre au logo de s'étendre */
}

.main-nav {
    z-index: 1005 !important; /* S'assurer que la navigation est au-dessus des autres éléments */
    margin-left: auto !important; /* Pousser le menu vers la droite */
}

.main-nav.active {
    /* Remplacer la couleur de débogage par la couleur primaire de l'application */
    background-color: var(--primary) !important;
    right: 0 !important;
    opacity: 0.95 !important;
    display: block !important;
    /* Force la visibilité même si problème de transition */
    transform: translateX(0) !important;
    visibility: visible !important;
}

.mobile-menu-toggle.active {
    /* Remplacer la couleur de débogage par une couleur transparente */
    background-color: rgba(255, 255, 255, 0.2) !important;
}

/* Réparer les problèmes d'événements tactiles sur mobile */
.mobile-menu-toggle {
    touch-action: manipulation;
    -webkit-tap-highlight-color: transparent;
}

/* Styles pour rendre le bouton hamburger plus facile à cliquer */
.hamburger-btn {
    width: 44px;
    height: 44px;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    background: rgba(255, 255, 255, 0.1);
    border-radius: 8px;
    margin-left: auto !important; /* S'assurer qu'il est à droite */
    order: 3 !important; /* Le placer en dernier dans le flex container */
}

.hamburger-btn:hover {
    background: rgba(255, 255, 255, 0.2);
}

/* Ajuster les styles responsive */
@media (min-width: 992px) {
    .mobile-menu-toggle {
        display: none !important; /* Masquer le menu hamburger sur desktop */
    }
}

@media (max-width: 991px) {
    .main-header {
        padding: 0.8rem 1rem !important; /* Ajuster l'espacement du header */
        flex-wrap: nowrap !important; /* Éviter que les éléments passent à la ligne */
    }
    
    .logo-container {
        flex: 1 !important; /* Donner plus d'espace au logo */
    }
}

/* Correction pour la taille de l'image d'exemple */
.hero-image {
    max-width: 450px !important;
    margin: 0 auto !important;
    width: 100% !important;
    overflow: hidden !important;
}

.starter-pack-example {
    max-width: 70% !important;
    height: auto !important;
    object-fit: contain !important;
}

@media (max-width: 991px) {
    .hero-image {
        max-width: 350px !important;
    }
}

@media (max-width: 767px) {
    .hero-image {
        max-width: 300px !important;
    }
    
    .starter-pack-example {
        max-width: 200px !important;
    }
}

@media (max-width: 480px) {
    .hero-image {
        max-width: 250px !important;
    }
    
    .starter-pack-example {
        max-width: 160px !important;
    }
}
