.contributors-conferences{
    display: flex;
    justify-content:flex-start;
    flex-wrap: wrap;
    margin-top: 10px;
    
}

/* Style pour les boutons de filtres */

.mobile-select, .mobile-select-flex {
    display: none;
}

.event-filter {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    margin-bottom: 30px;
}

.event-filter button:hover{
    transform: translateY(-5px);
    transition: transform 80ms ease-in-out;
}

.idle{
    color: #bcbaba !important;
    transition: none !important; /* Supprime les transitions */
    transform: none !important; /* Réinitialise la transformation */
}

.idle:hover{
    cursor: default !important;
}

/*----------------------------Display button------------------------------------*/
#displays-filter {
    text-align: center;
    line-height: 3rem;
    margin-bottom: 20px;
}

.display-button-filter {/* Style pour les boutons de filtres event */
    font-family: 'Totally_bold', Helvetica, Arial, Lucida, sans-serif;
    border: none;
    background-color: transparent;
    color: black;
    padding: 10px 17px;
    margin: 0 10px;
    cursor: pointer;
    border-radius: 40px;
    font-size: 2.3rem;
    transition: transform 80ms ease-in-out;
}

#displays-filter .active {
    background-color: #619FAA; /* Couleur de fond pour Bordeaux */
    color: white;
}

#displays-filter .active-paris {
    background-color: #DF949A !important; /* Couleur de fond pour Paris */
}

/*----------------------------Type button------------------------------------*/

#types-filter {
    margin-bottom: 10px;
}

#types-filter .active {
    background-color: #619FAA; /* Couleur de fond pour Bordeaux */
    color: white;
}

#types-filter .active-paris {
    background-color: #DF949A !important; /* Couleur de fond pour Paris */
}

.type-button-filter {/* Style pour les boutons de filtres event */
    font-family: 'Totally_bold', Helvetica, Arial, Lucida, sans-serif;
    border: none;
    background-color: transparent;
    color: black;
    padding: 10px 17px;
    margin: 0 10px;
    cursor: pointer;
    border-radius: 40px;
        font-size: 2.3rem;
        transition: transform 80ms ease-in-out;
    }
    
    /* Style personnalisé du select */
    #type-select, #day-select {
        margin: 0 !important;
        font-size: 1.7rem !important;
        padding: 7px 16px !important;
        font-family: 'Totally_bold', Helvetica, Arial, Lucida, sans-serif;
        border: none;
        background-color: #619FAA;
        color: white;
        cursor: pointer;
        border-radius: 40px;
        transition: transform 80ms ease-in-out;
        appearance: none;
        /* Cache la flèche native */
        width: 170px;
        /* Largeur pour éviter que le select soit trop petit */
        background-color: #619FAA;
        /* Fond du select */
        background-image: url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNCIgaGVpZ2h0PSIxNCIgdmlld0JveD0iMCAwIDE0IDE0Ij4KICA8cGF0aCBkPSJNMy41OTIgNC42NzlsMy40MDggMy40MDdMMTIuNDA3IDMuNTkybDEuNDExIDEuNDExLTYuMjk2IDYuMjk2LTYuMjk1LTYuMjk2eiIgZmlsbD0id2hpdGUiLz4KPC9zdmc+Cg==');
        background-repeat: no-repeat;
        background-position: right 16px center;
    }
    
    #type-select:focus, #day-select:focus {
        outline: none;
    }

    .select-paris{
        background-color: #DF949A !important;
    }

/*----------------------------Days button------------------------------------*/
#days-filter {
    text-align: center;
    line-height: 3rem;
    margin-bottom: 20px;
}

#days-filter .active {
    position: relative;
    text-decoration: none; /* Désactive l'underline par défaut */
    text-underline-offset: 12px;
    transition: all 100ms ease-in-out;
}

#days-filter .active::after {
    content: '';
    position: absolute;
    left: 0;
    right: 0;
    bottom: -12px; /* Décalage sous le texte */
    height: 12px; /* Épaisseur de la ligne */
    background-color: #619FAA; /* Couleur de la ligne pour Bordeaux */
    pointer-events: none;
}

#days-filter .active-paris {
    position: relative;
    text-decoration: none; /* Désactive l'underline par défaut */
    text-underline-offset: 12px;
    transition: all 100ms ease-in-out;
}

#days-filter .active-paris::after {
    content: '';
    position: absolute;
    left: 0;
    right: 0;
    bottom: -12px; /* Décalage sous le texte */
    height: 12px; /* Épaisseur de la ligne */
    background-color: #DF949A !important; /* Couleur de la ligne pour Paris */
    pointer-events: none;
}

.day-button-filter {/* Style pour les boutons de filtres days */
    font-family: 'Totally_bold', Helvetica, Arial, Lucida, sans-serif;
    border: none;
    background-color: transparent;
    text-decoration: solid underline 12px transparent;
    color: #619FAA;/* Bordeaux */
    margin: 0 17px;
    cursor: pointer;
    font-size: 2rem;
    transition: all 100ms ease-in-out;
}

.day-button-filter-paris{
    color: #DF949A !important;
}


/*----------------------------Reset button------------------------------------*/
#reset-filter{
    font-family: 'Totally_extrabold', Helvetica, Arial, Lucida, sans-serif;
    border: solid 2px #619FAA;
    padding: 3px 15px 3px 15px;
    cursor: pointer;
    border-radius: 40px;
    font-size: 1.8rem;
    font-weight: 500;
    background-color: transparent;
    color:#619FAA;
    transition: all 100ms ease-out;

}

.reset-filter-paris{
    border: solid 2px #DF949A !important;
    color: #DF949A !important;
}

#reset-filter:hover{
    background-color: #619FAA;
    color: white !important;
    transition: all 100ms ease-out;
}

.reset-filter-paris:hover{
    background-color: #DF949A !important;
}



/*-------------------------------Style pour les cards --------------------------------*/
.card {
    padding: 10px;
    width: 25%;
    transition: all 150ms ease-in-out;
    cursor: pointer;
}

.card:hover {
    transform: scale(1.05);
    transition: all 150ms ease-in-out;
}

.card a{
width: 100%;
height: 100%;

}

.card-img {
    aspect-ratio: 1.5 / 1;
    width: 100%;
    object-fit: cover;
}

.card h1 {
    color: black;
    padding: 0;
    font-size: 1.3rem;
    text-align: center;
}

.card p {
    color: black;
    font-size: 1rem;
    text-align: center;
    margin-top: 10px;
}

.card-content {
    text-align: center;
}

.card-content h2 {
    padding-bottom: 0;
    line-height: 1em;
}

.card ul {
    padding: 0 !important;
}

.card ul li {
    list-style: none;
    color: black;
    font-size: 0.9rem;
    text-align: center;
}

/*-------------------------------Différent media--------------------------------*/

@media (max-width: 1150px) {

    .card {
        width: 33.33333%;
    }
    
  }

  @media (max-width: 900px) {
    .card {
        width: 50%;
    }
    .modal-event-description{
        display: block !important;
    }
    .modal-event-flex{
        width: 100% !important;
    }
    .modal-description-flex{
        width: 100% !important;
    }
    
  }
 
 @media (max-width: 600px) { /* Style pour les smartphone*/

    .desktop-buttons {
        display: none; /* Cache les boutons de filtre sur mobile */
    }

    .mobile-select {
        display: block; /* Affiche les sélecteurs sur mobile */
    }

    .mobile-select-flex{
        display: flex;
        justify-content: space-around;
        align-items: center;
        margin-bottom: 20px;
        gap: 20px;
    }

    #reset-filter{
        font-size: 1.5rem !important;    
    }
    
    #types-filter {
        text-align: center;
    }

    .display-button-filter {/* Style pour les boutons de filtres event */

        margin: 0 !important;
        font-size: 1.7rem !important;
        padding: 7px 16px !important;
    }
    
    .type-button-filter {/* Style pour les boutons de filtres event */

        margin: 0 !important;
        font-size: 1.7rem !important;
        padding: 7px 16px !important;
    
    }
    
    .day-button-filter {/* Style pour les boutons de filtres days */

        margin: 0 5px !important;
        font-size: 1.5rem !important;
    }

    .card {
        width: 100%;
    }
    .modal-content{
        width: 100% !important;
        border-radius: 0 !important;
        max-width: 100% !important;
        max-height: 100vh !important;
        overflow: scroll !important;
    }
   
    .modal-flex{
        margin-top: 20px;
        flex-direction: column;
        padding-inline: 0 !important;
    }

    .modal-content-left{
        width: 100% !important;
        margin-bottom: 30px;
    }
    .modal-content-right{
        width: auto !important;
        margin-bottom: 100px;
    }

    .modal-content ul li {
        margin-left: 15px;
    }
    .modal-content-left h1{
        font-size: 4rem !important;
    }

    .modal-content-description{
        font-size: 14px !important;
    }

    .modal .close{
        font-size: 50px !important;
    }

 }
 

 /*-------------------------------Style pour la modal--------------------------------*/
.modal {
    display: none; /* Masquer la modal par défaut */
    position: fixed; /* Rester en place même lors du défilement */
    z-index: 1000; /* Placer devant les autres éléments */
    left: 0;
    top: 0;
    width: 100%; /* Largeur pleine */
    height: 110%; /* Hauteur pleine */
    overflow: auto; /* Activer le défilement si nécessaire */
    background-color: rgba(0,0,0,0.5); /* Fond noir transparent */
}

.modal-container{
    display: flex;
    justify-content: center;
    align-items: center;
    min-height: 100vh;
}

/* Style pour le contenu de la modal */
.modal-content {
    background-color: #fefefe;
    padding: 20px;
    border: 1px solid #888;
    width: 85%; /* Largeur de 80% */
    max-width: 1100px; /* Largeur maximale */
    box-shadow: 0 5px 15px rgba(0,0,0,0.3);
    border-radius: 8px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    height: 100%;
    max-height: 80vh;
    overflow-y: scroll;
    scrollbar-width: none;
}
.modal-flex{
    display: flex;
    justify-content: space-between;
    height: 100%;
    padding-inline: 30px;
    padding-bottom: 10px;
}

.modal-content-left{
    width: 55%;
    margin-right: 30px;
}

.modal-content-left h1{
    font-family: 'Totally_extrabold', Helvetica, Arial, Lucida, sans-serif;
    font-weight: 800;
    text-transform: uppercase;
    font-size: 5.5rem;
    color: #2d2d2d !important;
    line-height: 1em;
    text-align: left;
    padding-bottom: 30px;
}
.modal-content-left h2{
    padding: 0;
    font-size: 1.7rem;
    font-weight: 600;
    text-decoration: underline;
}
.modal-content-left h3{
    padding: 0;
}

.modal-event-description{
    display: flex;
}

.modal-description-flex{
    width: 70%;
}

.modal-event{
    margin-bottom:20px
}

.modal-event-flex{
    width: 30%;
    margin-right: 25px;
}



.modal-content-right{
    display: flex;
    flex-direction: column;
    justify-content: center;
    width:45%;
}



/* Style pour le bouton de fermeture */
.modal .close {
    color: #aaa;
    float: right;
    font-size: 28px;
    font-weight: bold;
    cursor: pointer;
    display: flex;
    justify-content: end;
}

.modal .close:hover,
.modal .close:focus {
    color: #000;
    text-decoration: none;
    cursor: pointer;
}
.modal-line::before{
    border-top: 1px solid #000;
    margin-block: 10px;
}


/* Style pour les images dans la modal */
.modal-img {
    max-width: 100%;
    height: 500px;
    display: block;
    margin: 0 auto;
    object-fit: cover;
    border-radius: 15px;
}

/* Style pour la description dans la modal */
.modal-content-description {
    line-height: 1.5;
    font-size: 1rem;
}

/* Style pour les listes dans la modal */
.modal-content ul {
    list-style: none ;
    list-style-type: none;
    padding: 0 !important;
}
.modal-content ul li {
    list-style: none;
    padding: 0 !important;
    font-size:18px;
    padding: 8px 0;
    margin-left: 10px;
    width: fit-content;
}

.modal-content ul li:last-child {
    border-bottom: none;
}

body.modal-open {
    overflow: hidden;
}

/*-------------------------------Style pour le bouton de redirection--------------------------------*/
.redirect-modal{
    text-decoration: underline;
    list-style-type:armenian; 
    margin-left: 25px;
}

.redirect-modal:hover{
    cursor: pointer;
    transform: scale(1.03);
    transition: transform 80ms ease-in-out;
}

.no-contributor{
    text-align: center;
    width: 100%;
    height: 40vh;
}

/*-------------------------------Style pour les tickets--------------------------------*/
.ticket-container {
    display: flex;
    align-items: center;
    justify-content: center;
  }

  .ticketing-button {
    background-color: #619FAA;
    border: none;
    border-radius: 30px;
    color: white;
    width: 120px;
    height: 50px;
    font-size: 26px;
    font-family: 'Totally_bold', Helvetica, Arial, Lucida, sans-serif;
    box-shadow:4px 6px 0 #225059;
    cursor: pointer;
    transition: box-shadow 600ms ease-in-out, box-shadow 0.3s ease-in-out;
    transition: transform 300ms ease-in-out, box-shadow 0.3s ease-in-out;
    animation: bounces 2s infinite;
  }

  .ticketing-button:hover {
      animation: bounces 0s infinite;
      box-shadow: 2px 3px 0 #225059; 
      transform: translate(2px, 3px);
  }

  .ticketing-button:active {
    box-shadow: 0px 0px #225059;
    transform: translate(4px, 6px);
  }
  
  @keyframes bounce {
      0%, 20%, 50%, 80%, 100% {
          box-shadow: 4px 6px 0 #225059;
          transform: translate(0, 0);
      }
      40% {
          box-shadow: 2px 3px 0 #225059;
          transform: translate(2px, 3px);
      }
      60% {
          box-shadow: 2px 3px 0 #225059;
          transform: translate(2px, 3px);
      }
  }
  
