@import url("https://fonts.googleapis.com/css2?family=Londrina+Outline&family=Montserrat:wght@300;400;800&display=swap");
@import url('https://fonts.googleapis.com/css2?family=Londrina+Outline&display=swap');

/* font-family: "Montserrat"; */


html{
    scroll-behavior: smooth;
}
body{
    padding: 0;
    margin: 0;
    z-index: 999;
    overflow-x: hidden;
}
a{
    text-decoration: none;
    color: black;
}

li{
    list-style: none;
}

/* Main banner */

#menu{
    color: #fff;
    font-size: 2.3rem;
    font-weight: bolder;
  }
.logo{
    font-size: 2rem;
    font-weight: bolder;
    text-decoration: none; /* Supprime la décoration par défaut des liens */
    position: relative; /* Position relative pour les effets supplémentaires */
    font-family: "Montserrat";
    color: #fff;
    letter-spacing: -6px;
}
.logo::before {
    content: ""; /* Pseudo-élément pour ajouter un trait au-dessus du "D" */
    position: absolute;
    top: 12.5px; /* Position du trait au-dessus du texte */
    left: 2px;
    width: 40px; /* Largeur du trait, ajuste selon la largeur du "D" */
    height: 5.5px; /* Hauteur du trait */
    background-color: #fff; /* Couleur du trait */
    border-radius: 3px; /* Arrondit les bords du trait */
}

.logo-shadow {
    text-shadow: 2px 2px 5px rgba(0, 0, 0, 0.3); /* Ombre portée pour un effet de profondeur */
}

.lien {
    margin: 0 20px;
}

.follow{
    text-align: right;
    margin-right: 12px;
}
.follow i{
    color: #fff;
}

/* .banner{
    background: linear-gradient(rgba(1, 2, 36, 0.782), rgba(1, 2, 15, 0.782)), url('../image/i8.jpg') no-repeat;
    background-position: 70% 20%;
    background-size: cover;
    height: 700px;
} */

.carousel-item {
    height: 600px;
}
.carousel {
    flex-grow: 1; /* Prend toute l'espace disponible */
}
.carousel-item img {
    height: 100%;
    object-fit: cover; /* Assure que l'image couvre toute la hauteur sans déformation */
    filter: brightness(20%);
}
/* .carousel-caption {
    position: absolute;
    right: 50px;
    top: -50%;
    transform: translateY(-50%);
} */
.banner2 {
    position: relative;
    height: 600px; /* Assure que la bannière a la même hauteur que le carrousel */
    margin: 0; /* Supprime les marges */
    padding: 0; /* Supprime le padding */
}
.header2 {
    width: 100%;
    z-index: 10; /* Assure que le header est au-dessus du carrousel */
    background-color: #000;
    padding-bottom: 16px;
}
.play-button-container {
    position: absolute;
    right: 200px;
    top: 48%;
    transform: translateY(-50%);
    z-index: 11; /* Assure que le bouton est au-dessus de l'image */
    text-align: right; /* Aligne le texte et le bouton à droite */
}
.description {
    margin-bottom: 20px; /* Espace entre la description et le bouton */
    color: #ffffff; /* Couleur du texte */
    text-transform: uppercase;
    font-weight: bolder;
    letter-spacing: 10px;
    font-size: 1.3rem;
}
.play-button{
    background-color: transparent;
    border: 1px solid #fff;
    color: #fff;
    border-radius: 0;
    font-weight: 600;
    letter-spacing: 8px;
    padding: 10px 15px;
}
.play-button:hover{
    background-color: #fff;
    color: #000;
    transition: background-position 1.5s ease, background-color 1s ease
}
.carousel-control-prev-icon,
.carousel-control-next-icon {
    border-radius: 50%; /* Pour rendre les icônes plus visibles */
    width: 40px; /* Largeur des icônes */
    height: 40px; /* Hauteur des icônes */
}
.header2 .liens a{
    color: #fff;
    letter-spacing: 2px;
    text-transform: uppercase;
    font-family: "Montserrat";
}
.liens .lien.active{
    border-bottom: 3px solid #fff;
    color: #fff;
    font-weight: bold;
    margin: auto;
}
@media (max-width:884px) {
    .liens .lien.active{
        width: 20%;
    }
    .banner{
        height: 600px;
    }
}
.liens .lien:hover{
    color: rgb(255, 200, 0);
}

/* icones reseaux sociaux */
.reseaux a{
    margin: 8px;
}

/* .select{
    border-radius: 50%;
    height: 35px;
    width: 35px;
    padding-left: 10px;
    background-color: #fff;
    border: none;
} */
/* select{
    
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    background: transparent;
    background-image: none;
    cursor: pointer;
} */

/* Style pour le deuxième header fixé */
.fixed {
    position: fixed;
    background-color: #000;
    top: 0;
    left: 0;
    width: 100%; /* Assurez-vous que la barre de navigation occupe toute la largeur */
    z-index: 1000; /* Si nécessaire, pour que la barre de navigation apparaisse au-dessus des autres éléments */
    /* Autres styles CSS pour le header fixé */
}


/* Nouvelles */

@keyframes dandine {
    0%, 100% {
        transform: rotate(0deg);
    }
    25% {
        transform: rotate(3deg);
    }
    50% {
        transform: rotate(-3deg);
    }
    75% {
        transform: rotate(3deg);
    }
}

@keyframes colorChange {
    0% {
        color: red; /* Rouge */
    }
    33% {
        color: rgb(255, 200, 0); /* Jaune */
    }
    66% {
        color: green; /* Vert */
    }
    100% {
        color: #ce1126; /* Retour au rouge */
    }
}

/* flash info */
.scroll-container {
    width: 100%;
    overflow: hidden;
    position: fixed;
    top: 90px;
    text-align: center; /* Centrer le texte horizontalement */
    z-index: 11;
}

.scroll-text {
    display: inline-block;
    white-space: nowrap;
    font-weight: bold;
    animation: scroll 10s linear infinite, blink 1s infinite;
    font-size: 1.5rem;
}

@keyframes scroll {
    0% {
        transform: translateX(-100%);
    }
    100% {
        transform: translateX(100%);
    }
}

@keyframes blink {
    0% {
        color: red;
    }
    25% {
        color: rgb(255, 200, 0);
    }
    50% {
        color: green;
    }
    75% {
        color: blue;
    }
    100% {
        color: red;
    }
}
.NouvelleTexteF {
    font-family: "Londrina Outline", sans-serif;
    text-align: center;
    font-weight: bolder;
    font-size: 5rem;
    padding-top: 70px;
    padding-bottom: 40px;
    overflow: hidden; /* Cache tout ce qui dépasse l'élément */
    white-space: nowrap; /* Empêche le texte de s'étendre sur plusieurs lignes */
    letter-spacing: 10px;
    color: #fff;
    opacity: 0.6;
}
.form-control:focus {
    border-color: rgb(255, 200, 0) !important;
    /* Vous pouvez personnaliser la couleur rouge selon vos préférences */
    box-shadow:none !important;
    /* Ajoutez une légère ombre rouge pour un effet de mise en évidence */
  }
  .form-control::placeholder {
    color: gray;
    font-size: 1.2rem;
  }

.btns{
    border: 2px solid rgb(255, 200, 0);
    color: rgb(255, 200, 0);
    background-color: transparent;
}
.btns:hover{
    background-color: rgb(255, 200, 0);
    color: #fff;
    transition: background-position 1.5s ease, background-color 1s ease
}


.NouvelleTexte {
    font-family: "Londrina Outline", sans-serif;
    text-align: center;
    font-weight: bolder;
    color: #fff;
    opacity: 0.6;
    font-size: 5rem;
    padding: 60px 0;
    overflow: hidden; /* Cache tout ce qui dépasse l'élément */
    white-space: nowrap; /* Empêche le texte de s'étendre sur plusieurs lignes */
    letter-spacing: 10px;
}

.ImageIllustration1 {
    background: linear-gradient(rgba(0, 0, 0, 0.638), rgba(0, 0, 0, 0.638)), url('../image/t3.jpg');
    background-size: cover;
    background-position: center 10%;
    height: 310px;
    background-attachment: fixed;
    transition: all 0.3s ease-in-out; /* Ajoute une transition à la couleur de fond */
    background-attachment: fixed;
}

/* Nouvel single */
.NewSingle{
    background: linear-gradient(rgba(0, 0, 0, 0.638), rgba(0, 0, 0, 0.638)), url('../image/t2.jpg');
    min-height: 500px;
    background-size: cover;
    background-position:20% center;
    display: flex;
    align-items: center; /* Centre verticalement le contenu */
}
.DescriptionSingle h1, .DescriptionSingle .btn {
    margin: 10px 0;
}
.DescriptionSingle h1{
    font-size: 3rem;
    letter-spacing: 7px;
}

.PlusSingle{
    color: rgb(255, 200, 0);
    border: 1px solid rgb(255, 200, 0);
    letter-spacing: 5px;
    font-weight: 600;
}
.bi-plus-lg{
    font-weight: 600;
}
.PlusSingle:hover{
    background-color: rgb(255, 200, 0);
    color: #fff;
    transition: background-position 1.5s ease, background-color 1s ease
}
.DescriptionSingle .btn:hover .bi-plus-lg{
    font-weight: 600;
}


.notif{
    color: #fff;
    background-color: rgb(6, 245, 165);
}



/* About */
.about{
    background:linear-gradient(to right, rgba(0, 0, 0, 0.996), rgba(0, 0, 0, 0.635)), url('../image/t17.jpg'), no-repeat;
    background-size: cover;
    background-position: -30% -10%;
    height: 470px;
    background-attachment: fixed;
}

.word{
    font-size:3em;
    letter-spacing: 4px;
    font-family: "Montserrat";
}
.About{
    color: rgb(255, 200, 0);
}


.none{
    opacity: 0; /* Masque le contenu par défaut */
    transform: translateY(-100%); /* Translate vers le haut pour les textes */
    transition: opacity 0.5s ease-in-out, transform 0.5s ease-in-out;
}
.none p{
    margin-left: 30px;
}

.icone{
    background-color: rgb(247, 250, 251);
    width: 50px;
    height: 50px;
    border-radius: 50%;
    font-size: 1.2rem;
    padding: 20px;
}
.icone:hover{
    background-color: rgb(6, 245, 165);
    transition: background 0.5s ease-in-out;
    transform: translateY(100%);
    color: #fff;
}


/* Envents */
.event{
    background: linear-gradient(rgba(0, 0, 0, 0.698), rgba(0, 0, 0, 0.698)),url('../image/t5.jpg'), no-repeat;
    background-position:none;
    background-size: cover;
    background-position: center;
    color: #fff;
    background-attachment: fixed;
}
.event .card{
    background: linear-gradient(rgba(0, 0, 0, 0.399), rgba(0, 0, 0, 0.399)),url('../image/t3.jpg'), no-repeat;
    background-position:none;
    background-size: cover;
    background-position: center;
    height: 450px;
    width: 100%;
}
.event1E{
    font-size: 3rem;
    font-family: "Montserrat";
    letter-spacing: 4px;
}
.ticket{
    background-color: transparent;
    border: 2px solid yellow;
    position: relative;
    top: 210px;
    padding: 16px 50px;
    font-weight: 700;
    color: yellow;
}
.ticket:hover{
    background-color: rgb(255, 200, 0);
    color: #fff;
    transition: background 0.5s ease-in-out;
    transform: translateY(100%);
}
.trid{
    color: rgb(183, 177, 177);
    opacity: 0.4;
}


/* News */
.news{
    background-color: #000;
}
.card0{
    width: 24rem;
    border: none;
    margin-bottom: 10px;
}
.card0 img{
    height: 100%;
}

.date{
    margin: auto;
    position: relative;
    top: -30px;
    background-color: rgb(255, 200, 0);
    color: #fff;
}
.text{
    margin-top: -26px;
}
.borders{
    border-bottom: 1px solid black;
}
.borders:hover{
    border-bottom: 1px solid rgb(255, 200, 0);
}
.news .card{
    position: relative;
    cursor: pointer;
    overflow: hidden;
}
.news .card img{
    transition: transform 0.3s ease, opacity 0.3s ease;
    width: 100%;
}
.news .card img:hover{
    opacity: 0.9;
    transform: scale(1.01);
}

/* bouton de défilement  */
.scroll-top-button {
    position: fixed;
    bottom: 20px;
    right: -50px;
    width: 40px;
    height: 40px;
    border: none;
    outline: none;
    color: #000;
    background-color:#fff;
    border: 2px solid black;
    cursor: pointer;
    opacity: 0;
    transition: opacity 0.5s, right 0.5s;
    border-radius: 50%;
    font-weight: bolder;
    z-index: 1;
  }
  
  .scroll-top-button:hover {
    background-color: #000;
    transition: background-color 0.5s;
    color: #fff;
  }
  
  .scroll-top-button.show {
    right: 20px;
    opacity: 1;
  }

  .video-container {
    position: relative;
    width: 100%;
    margin: 0 auto;
}

.video-container iframe {
    width: 100%;
    height: 515px; /* Hauteur de la vidéo */
}

  /* banner vidéo */
  .bannerVideo{
    background:linear-gradient(rgba(0, 0, 0, 0.581), rgba(0, 0, 0, 0.581)), url('../image/t18.jpg');
    background-size: cover;
    background-position: center -20%;
    height: 400px;
    transition: background-color 0.3s ease-in-out; /* Ajoute une transition à la couleur de fond */
    position: relative;
    background-attachment: fixed;
}
.video .card{
    height: 300px;
    cursor: pointer;
    overflow: hidden;
    transition: transform 0.3s ease, opacity 0.3s ease;
}
/* .video .card img{
    
} */
.video .card:hover{
    opacity: 0.9;
    transform: scale(1.01);
}

/* Modal vidéo */

/* .modal {
    display: none;
    position: fixed;
    z-index: 1;
    left: 0;
    top: 160px;
    width: 100%;
    height: 100%;
    overflow: auto;
    background-color: rgb(0, 0, 0);
    background-color: rgba(0, 0, 0, 0.9);
}

.modal-content {
    position: relative;
    margin: auto;
    padding: 0;
    width: 80%;
    max-width: 700px;
}

.close {
    position: absolute;
    top: 10px;
    right: 25px;
    color: #fff;
    font-size: 35px;
    font-weight: bold;
    cursor: pointer;
} */

iframe {
    width: 100%;
    height: 400px;
}
/* .video .card p{
    font-size: 1.2rem;
    letter-spacing: 3px;
    opacity: 0.6;
} */

/* banner Biographie */
.bannerBiograph{
    background:linear-gradient(rgba(0, 0, 0, 0.581), rgba(0, 0, 0, 0.581)), url('../image/t21.jpg');
    background-size: cover;
    background-position: center 20%;
    height: 400px;
    transition: background-color 0.3s ease-in-out; /* Ajoute une transition à la couleur de fond */
    position: relative;
    background-attachment: fixed;
}
.Bibliographie p, .FaitsMarq p {
    text-align: justify;
    opacity: 0.7;
}
.FaitsMarq .card{
    position: relative;
    overflow: hidden;
}
.FaitsMarq .card img{
    filter: brightness(70%);
    transition: transform 0.3s ease, opacity 0.3s ease;
}

.FaitsMarq .card img:hover{
    opacity: 0.9;
    transform: scale(1.11);
}

/* carrousel discographie */
.owl-carousel .item {
  position: relative;
  padding: 15px;
  background: #fff;
  border-radius: 10px;
  box-shadow: 0 4px 8px rgba(0,0,0,0.1);
  text-align: center;
  transition: transform 0.3s ease;
  height: 300px;
}

.owl-carousel .item img {
  width: 100%;
  border-radius: 10px;
}

.owl-carousel .item h4 {
  margin: 15px 0 0;
  font-size: 1.2em;
  color: #333;
}

.owl-carousel .item:hover {
  transform: translateY(-10px);
}

.custom-nav {
  text-align: center;
  margin-top: 20px;
}

.custom-nav button {
  background: transparent;
  color: #fff;
  border: none;
  width: 40px;
  height: 40px;
  cursor: pointer;
  outline: none;
  font-weight: bolder;
}

.custom-nav button:hover {
  color: #555;
}
.item a{
    border-bottom: 1px solid black;
    letter-spacing: 3px;
    font-weight: 600;
}
.item a:hover{
    color: rgb(255, 200, 0);
}

/* Actualités */
.bannerActualite{
    background:linear-gradient(rgba(0, 0, 0, 0.581), rgba(0, 0, 0, 0.581)), url('../image/t19.jpg');
    background-size: cover;
    background-position: center 10%;
    height: 400px;
    transition: background-color 0.3s ease-in-out; /* Ajoute une transition à la couleur de fond */
    position: relative;
    background-attachment: fixed;
}

/* Contact */
/* Styles de base pour le modal */
.modalC {
    display: none; /* Caché par défaut */
    position: fixed; /* Reste en place */
    z-index: 1; /* Devant tout le reste */
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    overflow: auto; /* Si le contenu est trop grand, le rendre scrollable */
    background-color: rgb(0,0,0); /* Couleur de fond */
    background-color: rgba(0,0,0,0.4); /* Couleur de fond avec opacité */
  }
  
  /* Style du contenu du modal */
  .modal-contentC {
    background-color: #fefefe;
    margin: 10% auto; /* 15% du haut et centré */
    padding: 20px;
    border: 1px solid #888;
    width: 80%; /* Peut être ajusté selon vos besoins */
    max-width: 600px; /* Limite maximale de la largeur */
    border-radius: 10px; /* Bords arrondis */
  }
  
  /* Bouton de fermeture */
  .closeC {
    color: #aaa;
    float: right;
    font-size: 28px;
    font-weight: bold;
  }
  
  .closeC:hover,
  .closeC:focus {
    color: black;
    text-decoration: none;
    cursor: pointer;
  }
  
  /* Styles pour le formulaire */
  #contactModal{
    z-index: 1000;
  }
  form {
    display: flex;
    flex-direction: column;
  }
  
  form label {
    margin-top: 10px;
    font-weight: 600;
  }
  
  #contactModal .form-control{
    margin-top: 5px;
    padding: 10px;
    border: 1px solid #ccc;
    border-radius: 5px;
    font-size: 16px;
    font-weight: 600;
  }
  #contactModal .form-control:focus {
    border-color: #333 !important;
    /* Vous pouvez personnaliser la couleur rouge selon vos préférences */
    box-shadow:none !important;
    /* Ajoutez une légère ombre rouge pour un effet de mise en évidence */
  }
  
  form button {
    margin-top: 15px;
    padding: 10px;
    background-color: #0e0c0c;
    color: #fff;
    border: none;
    border-radius: 5px;
    font-size: 16px;
    cursor: pointer;
  }
  
  form button:hover {
    background-color: #0c0c0ce7;
  }

  #contactBtn{
    cursor: pointer;
    font-family: "Montserrat";
    letter-spacing: 2px;
    color: #fff;
  }
  #contactBtn:hover{
    color: rgb(255, 200, 0);
  }
  #contactModal button{
    letter-spacing: 3px;
    font-weight: bolder;
  }



  @media (max-width:884px) {
    .navbar {
        display: flex;
        justify-content: space-between;
        align-items: center;
    }

    .navbar-toggler {
        position: absolute;
        right: 0;
    }

    .navbar-collapse {
        position: fixed;
        top: 0;
        left: -100%;
        height: 100%;
        width: 100%;
        max-width: 90%;
        background: #fff;
        transition: left 0.8s ease-in-out;
        z-index: 1000;
    }
    .close-icon {
        color: black;
    }
    
    
    .navbar-collapse.show {
        left: 0;
    }
    
    #menu {
        cursor: pointer;
    }
    
    .navbar-collapse .navbar-nav {
        flex-direction: column;
        padding-top: 1rem;
    }
    
    .logo {
        position: absolute;
        left: 50%;
        transform: translateX(-50%);
    }
    #logo2{
        color: #000;
    }
    #logo2::before{
        background-color: #000;
        height: 4.4px; /* Hauteur du trait */
        top: 13px;
    }
    .logo::before{
        height: 4.4px; /* Hauteur du trait */
        top: 13px;
    }
    .navbar-nav{
        text-align: center;
        margin-top: 100px;
    }
    
    .navbar-nav .liens {
        margin-bottom: 1rem;
    }
    .navbar-nav .liens .lien, #contactBtn{
        color: #000;
    }
    .follow{
        text-align: center;
    }
    .follow i{
        color: #000;
        font-size: 1.6rem;
    }
    .follow i:hover{
        color: yellow;
        transition: background-position 1.5s ease, color 1s ease;
    }
    .header2{
        padding-bottom: 0px;
        border: none;
    }
    .fixed{
        border: none;
    }
    .play-button-container {
        right: auto;
        text-align: center; /* Centre le texte et le bouton */
    }
    .description {
        letter-spacing: 4px;
        font-size: 1.1rem;
    }
    .NouvelleTexte, .NouvelleTexteF{
        font-size: 2.4rem;
        text-align: center;
    }
    .about{
        background:linear-gradient(to right, rgba(0, 0, 0, 0.996), rgba(0, 0, 0, 0.635)), url('../image/t22.jpg'), no-repeat;
        background-size: cover;
    }
    .bannerBiograph{
        background:linear-gradient(to right, rgba(0, 0, 0, 0.635), rgba(0, 0, 0, 0.635)), url('../image/t14.jpg'), no-repeat;
        background-position: center 20%;
    }
    .NouvelleTexteF{
        letter-spacing: 8px;
    }
    .NouvelleTexteResp{
        letter-spacing: 0px;
    }
    .NewSingle{
        text-align: center;
    }
    .word, .event1E{
        font-size: 2rem;
    }
    .modal-contentC{
        max-width: 100%;
        width: 100%;
    }
}

/* Chargement de page */
#splash-screen {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100vh;
    display: flex;
    justify-content: center;
    align-items: center;
    background-color: #000;
    z-index: 9999;
}

#splash-screen h1 {
    font-size: 1.4em;
    color: rgb(255, 200, 0);
    font-weight: bolder;
    letter-spacing: 7px;
}


/* responsive tablet */
@media screen and (min-width: 768px) and (max-width: 1024px) {
    .carousel-item {
      height: 1000px; /* Hauteur des images du carrousel pour cette plage de largeur */
    }
    .bannerVideo, .bannerActualite, .bannerBiograph{
        height: 700px;
    }
    
    .liens a, .liens #contactBtn{
        font-size: 1.7rem;
    }
    #menu, .logo{
        font-size: 3rem;
    }
    .play-button-container {
        right: center;
        text-align: center; /* Centre le texte et le bouton */
        margin-left: 120px;
    }
    p{
        font-size: 1.5rem;
    }
    .word{
        font-size: 3rem;
    }
    .NouvelleTexte, .NouvelleTexteF{
        font-size: 4.3rem;
    }
    .NouvelleTexteResp{
        letter-spacing: 10px;
    }
    
    .description, .scroll-text{
        font-size: 2rem;
    }
    .play-button{
        font-size: 1.4rem;
    }
    #splash-screen h1{
        font-size: 3.5rem;
    }
    .video .card p{
        font-size: 1.6rem;
    }
    #Card00{
        margin: auto;
        width: 33rem;
    }
    #Card00 img{
        height: 100%;
    }
    form label{
        font-size: 1.6rem;
    }
    #contactModal .form-control, form button{
        padding: 20px;
        font-size: 20px;
      }
    form button{
        font-size: 26px;
    }
    
  }


  /* grang écran */
  @media screen and (min-height: 800px) {
    
    .carousel-item {
      height: 1030px;
    }
    .bannerVideo, .bannerActualite, .bannerBiograph{
        height: 650px;
    }
      .follow i{
        font-size: 1.4rem;
      }
      .liens a, .liens #contactBtn{
        font-size: 1.3rem;
    }
    .logo{
        font-size: 3rem;
    }
    form label{
        font-size: 1.3rem;
    }
    #contactModal .form-control, form button{
        padding: 20px;
        font-size: 20px;
      }
    form button{
        font-size: 26px;
    }
    .video .card p{
        font-size: 1.3rem;
    }
    .word{
        font-size: 3.2rem;
    }
    .NouvelleTexte, .NouvelleTexteF{
        font-size: 5.2rem;
    }

    .description{
        font-size: 1.2rem;
    }
    .play-button{
        font-size: 1.3rem;
    }
    #splash-screen h1{
        font-size: 3.4rem;
    }
    .scroll-top-button {
        width: 50px;
        height: 50px;
      }
      .scroll-text{
        font-size: 1.4rem;
      }
    
  }





