/* ============================= */
/* RÉINITIALISATION DES STYLES */
/* ============================= */

*{
margin:0;
padding:0;
box-sizing:border-box;
font-family:Arial, sans-serif;
color:#333;
}
a{ 
    text-decoration: none;
}

/* ============================= */
/* CORPS DE LA PAGE */
/* ============================= */

body{
font-family:Arial, sans-serif;
color:#333;
overflow-x: hidden; /* Coupe tout ce qui dépasse à droite par erreur */
    width: 100%;
}

/* ============================= */
/* EN-TÊTE DU SITE */
/* ============================= */

.header{
background:#FFF4F1;
border-bottom:1px solid #ddd;
}

/* ============================= */
/* BARRE DE NAVIGATION */
/* ============================= */

.nav{
display:flex;
justify-content:space-between;
align-items:center;
padding:15px 40px;
}


/* ============================= */
/* LOGO DU SITE */
/* ============================= */

.logo{
width:170px;

}

/* ============================= */
/* MENU PRINCIPAL */
/* ============================= */

.menu{
display:flex;
list-style:none;
gap:30px;
}

/* ============================= */
/* LIENS DU MENU */
/* ============================= */

.menu a{
text-decoration:none;
color:#333;
font-weight:bold;
padding:10px;
display:block;
}

/* ============================= */
/* EFFET AU SURVOL DES LIENS */
/* ============================= */

.menu a:hover{
color:#ff6b4a;
}

/* ============================= */
/* FLÈCHE DES MENUS DÉROULANTS */
/* ============================= */

.arrow{
font-size:12px;
margin-left:5px;
}

/* ============================= */
/* ÉLÉMENT CONTENANT UN MENU DÉROULANT */
/* ============================= */

.dropdown{
position:relative;
}

/* ============================= */
/* SOUS-MENU (MENU DÉROULANT) */
/* ============================= */

.submenu{
position:absolute;
top:40px;
left:0;
background:white;
list-style:none;
width:200px;
border:1px solid #ddd;
box-shadow:0 4px 10px rgba(0,0,0,0.1);
min-width: 250px; /* Un peu plus large pour les longs titres */
max-height: 400px; /* Optionnel : limite la hauteur */
overflow-y: auto;  /* Optionnel : ajoute un scroll si trop d'éléments */

/* paramètres pour l'animation d'apparition */

opacity:0;
visibility:hidden;
transform:translateY(10px);

transition:all 0.3s ease;
}

/* ============================= */
/* LIENS À L'INTÉRIEUR DU SOUS-MENU */
/* ============================= */

.submenu li a{
padding:10px;
}

/* ============================= */
/* AFFICHER LE MENU DÉROULANT AU SURVOL */
/* ============================= */

.dropdown:hover .submenu{
opacity:1;
visibility:visible;
transform:translateY(0);
}

/* ============================= */
/* EFFET AU SURVOL D’UN ÉLÉMENT DU SOUS-MENU */
/* ============================= */

.submenu li:hover{
background:#f5f5f5;
}

/* ============================= */
/* BOUTON MENU MOBILE (MENU HAMBURGER) */
/* ============================= */

.menu-toggle{
display:none;
font-size:28px;
cursor:pointer;
}

#main{
    height: auto;
    width: 100%;
}

#sectext{
    height: 90%;
    width: 100%;
    text-align: center;
    padding: 50px ;
    margin: 10px;
    font-size: 30px;
    line-height: normal;
    
}



.btncommIA{
    background: #FF6233;
    border: 1px #FF6233;
    border-radius: 3px;
    
   padding: 10px;
   margin: 20px 0; /* 20px en haut/bas, 0 à gauche/droite */
   
}


#Allcases {
    display: grid !important;
    /* Force 3 colonnes de taille égale */
    grid-template-columns: repeat(3, 1fr) !important; 
    gap: 25px !important;
    padding: 20px;
    max-width: 1200px;
    margin: 0 auto;
    width: 95% !important;
}

/* On cible toutes les cartes pour qu'elles aient la même taille */
[class^="case"], .case1, .case2, .case3, .case4, .case5, .case6, .case7 {
    border: 1px solid rgb(237, 234, 234) !important;
    background-color: rgb(247, 247, 247) !important;
    border-radius: 15px !important;
    padding: 30px !important;
    min-height: 350px !important;
    width: 100% !important; /* Emplie sa colonne sans déborder */
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: space-between !important;
    text-align: center !important;
}

/* Style des boutons avec écriture NOIRE */
.btnIAcommecerquiz {
    background-color: #ff6233 !important;
    color: black !important; /* Texte remis en noir */
    border-radius: 6px;
    font-weight: bold;
    height: 50px;
    width: 100%;
    max-width: 200px;
    margin: 20px auto 0 auto !important; /* Centre le bouton horizontalement */
    display: flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    border: none;
    cursor: pointer;
}

.btnIAcommecerquiz:hover{
    background-color: #ff6233;
    cursor: pointer;
    transition: all 0.3s ease;
}
.fa-solid {
    background-color: #FF6233;
    border-radius: 7px;
    height: 55px;
    width: 60px;
    padding: 19px;
    font-size: 20px;
   }

   /* FOOTER */

.footer{
    background-color:rgba(217, 217, 217, 0.17);
    color:#151515;
    padding:40px 0;
}


.footer-container {
    display: flex;
    flex-direction:column; /* met les éléments en colonne */
    align-items:flex-start;
}
.footer-logo{
    width:200px;
    margin : 0px;
    margin-left: 45%;
}
.footer-columns-wrapper {
    display: flex;
    justify-content: space-between;
    width: 100%; /* Pour occuper toute la largeur sous le logo */
    gap: 30px;
    flex-wrap:wrap;
    margin-left: 7%;
}

.footer-column {
    flex: 1;
    min-width: 200px;
}
.footer-column h3 {
    font-size: 1.5rem;
    font-weight: bold;
    margin-bottom: 20px;
    color: #000;
}
.footer-column p, 
.footer-column li {
    font-size: 0.95rem;
    line-height: 1.8; /* Donne de l'espace entre les lignes */
    margin-bottom: 8px;
}
.footer-column ul {
    list-style: none; /* Enlève les puces */
    padding: 0;
}
.footer-column a {
    text-decoration: none; /* Enlève le soulignement */
    color: #333;
    transition: 0.3s;
}

.footer-column a:hover {
    text-decoration: underline;
    color: #000;
}
/* La ligne horizontale */
.footer-line {
    border: 2px;
    border-top: 1px solid black; /* Ligne grise fine */
    margin:40px 0 20px 0;
    width: 85%;
    margin-left: 7%;
    
}

/* Le texte de copyright en bas */
.footer-copy {
    text-align: center;
    font-size: 0.9rem;
    color: #151515;
    margin-top: 40px;

}


/* ----------------------------------- */
.quiz-overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: #f4f4f4; /* Le fond gris de tes images */
    z-index: 9999;
    padding-top: 0;
}

.quiz-header-orange {
    background-color: #ff6233;
    color: black;
    padding: 15px 5%;
    display: flex;
    justify-content: space-between;
    align-items: center;
    font-weight: bold;
}



@media (max-width:768px){

/* MENU PRINCIPAL EN MODE MOBILE */

.menu{
display:none;
flex-direction:column;
background:white;
position:absolute;
top:80px;
left:0;
width:100%;
border-top:1px solid #ddd;
}

/* AFFICHER LE MENU LORSQU’IL EST ACTIVÉ */

.menu.active{
display:flex;
}

/* AFFICHER LE BOUTON HAMBURGER */

.menu-toggle{
display:block;
}

/* ADAPTATION DU MENU DÉROULANT EN MODE MOBILE */

.dropdown:hover .submenu{
position:static;
box-shadow:none;
border:none;
}

/* SOUS-MENU EN MODE MOBILE */

.submenu{
opacity:1;
visibility:visible;
transform:none;
display:none;
}

/* AFFICHER LE SOUS-MENU */

.dropdown:hover .submenu{
display:block;
}

}

/* ============================= */
/* TEXTE DU HAUT (RESPONSIF)     */
/* ============================= */

#sectext {
    width: 90%;
    max-width: 1000px;
    text-align: center;
    padding: 40px 20px;
    margin: 0 auto;
    /* Utilise clamp pour que le texte rétrécisse sur mobile */
    font-size: clamp(1.2rem, 4vw, 2.2rem); 
    line-height: 1.3;
}

/* ============================= */
/* GRILLE DES CARTES (MAGIE CSS) */
/* ============================= */

/* Utilisation de l'ID pour une priorité maximale */
div#Allcases {
    display: grid !important;
    /* On définit 3 colonnes fixes pour le mode bureau */
    grid-template-columns: repeat(3, 1fr) !important; 
    gap: 25px !important;
    padding: 20px !important;
    max-width: 1200px !important;
    margin: 0 auto !important;
    width: 95% !important;
}

/* On force les cartes à rester dans leur colonne */
div#Allcases [class^="case"] {
    width: 100% !important;
    max-width: 100% !important; /* Empêche l'étirement sur toute la ligne */
    box-sizing: border-box !important;
}
/* ============================= */
/* BOUTONS DANS LES CARTES       */
/* ============================= */

.btnIAcommecerquiz {
    background-color: #ff6233;
    color: black;
    border-radius: 6px;
    font-weight: bolder;
    height: 50px;
    width: 100%;      /* S'adapte à la carte */
    max-width: 220px; /* Mais garde une taille raisonnable */
    margin: 20px auto 0 auto; /* Centre le bouton horizontalement */
    display: flex;
    align-items: center;
    justify-content: center;
    border: none;
    padding: 0 15px;
}

/* ============================= */
/* ICONES (FONTAWESOME)          */
/* ============================= */

.fa-solid {
    background-color: #FF6233;
    border-radius: 7px;
    height: 60px;
    width: 60px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 24px;
    margin-bottom: 15px;
}


/* ===================================== */
/* RESPONSIVITÉ (ADAPTATION POUR MOBILE) */
/* ===================================== */
@@media screen and (max-width: 900px) {
    div#Allcases {
        grid-template-columns: repeat(2, 1fr) !important; /* 2 colonnes sur tablette */
    }
}

@media screen and (max-width: 600px) {
    div#Allcases {
        grid-template-columns: 1fr !important; /* 1 seule colonne sur petit téléphone */
    }
}

@media (max-width: 768px) {
    /* ... tes autres codes media (menu, etc.) ... */

    .hero h1 {
        font-size: 35px; /* Réduit la taille du gros titre sur mobile */
    }

    .cards {
        gap: 20px;
    }

    .feature {
        max-width: 100%; /* Les cartes prennent toute la largeur sur petit écran */
    }

    .footer-columns-wrapper {
        margin-left: 0;
        flex-direction: column; /* Colonnes du footer les unes sous les autres */
        text-align: center;
    }
    
    .footer-logo {
        margin-left: auto;
        margin-right: auto;
    }
}