@import url("https://fonts.googleapis.com/css2?family=Roboto+Condensed:wght@300&display=swap");

/* =============================================
   DISQUEOVER — Custom design classes (maquette)
   ============================================= */

/* Glassmorphism nav */
.glass {
  background: rgba(17, 24, 39, 0.85);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}

/* Fixed nav — hide/show on scroll */
#main-nav {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 1000;
  transition: transform 0.35s ease;
}
#main-nav.nav-hidden {
  transform: translateY(-100%);
}

/* Hide scrollbars (timeline) */
.hide-scrollbar {
  scrollbar-width: none;
  -ms-overflow-style: none;
}
.hide-scrollbar::-webkit-scrollbar {
  display: none;
}

/* Fade-in-up animation */
@keyframes fadeInUp {
  from {
    opacity: 0;
    transform: translateY(40px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
.animate-fadeInUp {
  animation: fadeInUp 0.8s ease forwards;
}
.animate-fadeInUp-delay-1 {
  animation: fadeInUp 0.8s ease 0.15s both;
}
.animate-fadeInUp-delay-2 {
  animation: fadeInUp 0.8s ease 0.3s both;
}
.animate-fadeInUp-delay-3 {
  animation: fadeInUp 0.8s ease 0.45s both;
}

/* Scroll progress bar */
.progress-bar {
  position: fixed;
  top: 0;
  left: 0;
  height: 2px;
  background: linear-gradient(90deg, #a855f7, #ec4899);
  z-index: 1001;
  transition: width 0.1s linear;
  width: 0%;
}

/* Intersection observer reveal */
.reveal {
  opacity: 0;
  transform: translateY(30px);
  transition: opacity 0.7s ease, transform 0.7s ease;
}
.reveal.visible {
  opacity: 1;
  transform: translateY(0);
}

/* Hero section body override */
body {
  background-color: #111827;
}

/* Timeline card hover */
.timeline-card {
  transition: transform 0.3s ease, border-color 0.3s ease;
}
.timeline-card:hover {
  transform: translateY(-10px);
}

/* Stats bento card hover */
.bento-card {
  transition: transform 0.3s ease;
}
.bento-card:hover {
  transform: scale(1.02);
}

body .button,
html .button {
  position: relative;
  display: table;
  padding: 0.5em 3em;
  background: #000;
  color: #fff;
  text-decoration: none;
  margin-top: 1.5em;
  font-weight: bold;
  margin-left: 1em;
  text-transform: uppercase;
}
body .button:hover,
html .button:hover {
  background: #2f2f2f;
}

h1
{
  font-size: 1.4em;
}

.swiper {
  width: auto;
}

.swiper .overlay {
}
@media (min-width: 640px) {
  .swiper .overlay {
    background: rgba(0, 0, 0, 0.3);
  }
}
.swiper .swiper-image {
  position: absolute;
  right: 0;
  width: 600px;
  height: 250px;
  margin: auto;
  text-align: center;
  transform: scale3d(1, 1, 1);
  backface-visibility: hidden !important;
  will-change: transform;
  transition: transform 1500ms ease;
  transition-delay: 0.4s;
  background-image: url('images/accueil/playlist_carre.jpg');
  background-repeat: no-repeat;
  position: right bottom;
  background-size: cover;

}

.swiper .swiper-image2 {
  position: absolute;
  left: 0;
  width: 600px;
  height: 250px;
  margin: auto;
  text-align: center;
  transform: scale3d(1, 1, 1);
  backface-visibility: hidden !important;
  will-change: transform;
  transition: transform 1500ms ease;
  transition-delay: 0.4s;
    background-image: url('images/accueil/selec_carre.jpg');
  background-repeat: no-repeat;
  position: right bottom;
  background-size: cover;
}

.swiper .swiper-image3 {
  position: absolute;
  right: 0;
  width: 600px;
  height: 250px;
  margin: auto;
  text-align: center;
  transform: scale3d(1, 1, 1);
  backface-visibility: hidden !important;
  will-change: transform;
  transition: transform 1500ms ease;
  transition-delay: 0.4s;
    background-image: url('images/accueil/anniv_carre.jpg');
  background-repeat: no-repeat;
  position: right bottom;
  background-size: cover;
}


.swiper .content-wrapper {
  position: relative;
  display: grid;
  grid-template-columns: 1fr;
  grid-template-rows: 1fr;
  grid-template-areas: ".";
  height: 250px;
  width: 100%;
  justify-items: start;
  align-items: flex-start;
  margin-top: 2%;
}
@media (min-width: 640px) {
  .swiper .content-wrapper.content-right {
    justify-items: end;
  }
}
.swiper .content-wrapper .content {
  padding: 1.5em;
  margin-right: 10%;
  color: white;
  opacity: 0;
  width: 100%;
  max-width: 250px;
  transition-duration: 1.5s, 0.6s;
  transition-property: opacity, transform;
  transition-delay: 0.4s;
}


.swiper .content-wrapper .content :first-child {
  margin: 0;
}
@media (min-width: 640px) {
  .swiper .content-wrapper .content {
    padding: 0 5%;
  }
}




.swiper .swiper-slide {
  margin: 0;
  overflow: hidden !important;
  background-color: #7dd1aa;
}


.swiper .swiper-slide.swiper-slide-active .swiper-image {
  transform: scale3d(1.02, 1.02, 1);
  will-change: transform;
}
.swiper .swiper-slide.swiper-slide-active .content {
  opacity: 1;
}
.swiper .swiper-nav-wrapper {
  position: absolute;
  bottom: 6em;
  right: 6em;
}
@media (min-width: 640px) {
  .swiper .swiper-nav-wrapper {
    bottom: 4.5em;
  }
}
.swiper .swiper-nav-wrapper .swiper-button-next {
  margin-top: 2%;
  right: 0;
  left: 0;
}
.swiper .swiper-nav-wrapper .swiper-button-prev {
  margin-top: 2%;
  right: 15px;
  left: auto;
}
.swiper .swiper-nav-wrapper .swiper-button-next,
.swiper .swiper-nav-wrapper .swiper-button-prev {
  background: rgba(0, 0, 0, 0.5);
  width: 60px;
  height: 60px;
}
.swiper .swiper-nav-wrapper .swiper-button-next:hover,
.swiper .swiper-nav-wrapper .swiper-button-prev:hover {
  background: rgba(0, 0, 0, 0.8);
}

.swiper-button-next:after,
.swiper-button-prev:after {
  display: none;
}


.swiper-button-next,
.swiper-container-rtl .swiper-button-prev {
  background-image: url("data:image/svg+xml,%0A%3Csvg width='9px' height='16px' viewBox='0 0 9 16' version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cg id='Page-1' stroke='none' stroke-width='1' fill='none' fill-rule='evenodd'%3E%3Cg id='chevron-right' fill='%23FFFFFF' fill-rule='nonzero'%3E%3Cpath d='M8.674805,7.066406 L1.924805,0.316406 C1.696288,0.105468 1.432619,0 1.133789,0 C0.834959,0 0.57129,0.105468 0.342773,0.316406 C0.114257,0.544923 0,0.808592 0,1.107422 C0,1.406251 0.114257,1.669921 0.342773,1.898438 L6.301758,7.857422 L0.342773,13.816406 C0.114257,14.044923 0,14.308592 0,14.607422 C0,14.906251 0.114257,15.169921 0.342773,15.398438 C0.465821,15.521485 0.584472,15.609375 0.69873,15.662109 C0.812989,15.714844 0.958007,15.741211 1.133789,15.741211 C1.309571,15.741211 1.454589,15.714844 1.568848,15.662109 C1.683106,15.609375 1.801757,15.521485 1.924805,15.398438 L8.674805,8.648438 C8.903321,8.419921 9.017578,8.156251 9.017578,7.857422 C9.017578,7.558592 8.903321,7.294923 8.674805,7.066406 Z' id='Path'%3E%3C/path%3E%3C/g%3E%3C/g%3E%3C/svg%3E") !important;
  left: 10px;
  background-repeat: no-repeat !important;
  background-position: center !important;
  right: auto;
  width: 60px !important;
  height: 60px !important;
}

.swiper-button-prev,
.swiper-container-rtl .swiper-button-next {
  background-image: url("data:image/svg+xml,%0A%3Csvg width='9px' height='16px' viewBox='0 0 9 16' version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cg id='Page-1' stroke='none' stroke-width='1' fill='none' fill-rule='evenodd'%3E%3Cg id='chevron-right' transform='translate(4.508789, 7.870605) rotate(-180.000000) translate(-4.508789, -7.870605) translate(-0.000000, -0.000000)' fill='%23FFFFFF' fill-rule='nonzero'%3E%3Cpath d='M8.674805,7.066406 L1.924805,0.316406 C1.696288,0.105468 1.432619,0 1.133789,0 C0.834959,0 0.57129,0.105468 0.342773,0.316406 C0.114257,0.544923 0,0.808592 0,1.107422 C0,1.406251 0.114257,1.669921 0.342773,1.898438 L6.301758,7.857422 L0.342773,13.816406 C0.114257,14.044923 0,14.308592 0,14.607422 C0,14.906251 0.114257,15.169921 0.342773,15.398438 C0.465821,15.521485 0.584472,15.609375 0.69873,15.662109 C0.812989,15.714844 0.958007,15.741211 1.133789,15.741211 C1.309571,15.741211 1.454589,15.714844 1.568848,15.662109 C1.683106,15.609375 1.801757,15.521485 1.924805,15.398438 L8.674805,8.648438 C8.903321,8.419921 9.017578,8.156251 9.017578,7.857422 C9.017578,7.558592 8.903321,7.294923 8.674805,7.066406 Z' id='Path'%3E%3C/path%3E%3C/g%3E%3C/g%3E%3C/svg%3E") !important;
  auto: 10px;
  background-repeat: no-repeat !important;
  background-position: center !important;
  right: left;
  width: 60px !important;
  height: 60px !important;
}







@media all and (max-width: 800px)

{


body .button,
html .button {
  margin-top: 0em;
  font-weight: bold;
  margin-left: 0em;
}

.swiper {
  width: auto;
  height: 160px;
}

.swiper .content-wrapper .content {
  margin-top: -2.5%;  
  padding: 1.5em;
  position: left;
  font-size: 0.9em;
  color: white;
  opacity: 0;
  width: 35%;
  transition-duration: 1.5s, 0.6s;
  transition-property: opacity, transform;
  transition-delay: 0.4s;
}

h1
{
  font-size: 1.05em;
}

.swiper .swiper-image {
  position: absolute;
  right: 0;
  width: 600px;
  height: 250px;
  margin: auto;
  text-align: center;
  transform: scale3d(1, 1, 1);
  backface-visibility: hidden !important;
  will-change: transform;
  transition: transform 1500ms ease;
  transition-delay: 0.4s;
  background-image: url('images/accueil/playlist_mob.jpg');
  background-repeat: no-repeat;
  position: right bottom;
  background-size: cover;

}

.swiper .swiper-image2 {
  position: absolute;
  left: 0;
  width: 600px;
  height: 250px;
  margin: auto;
  text-align: center;
  transform: scale3d(1, 1, 1);
  backface-visibility: hidden !important;
  will-change: transform;
  transition: transform 1500ms ease;
  transition-delay: 0.4s;
    background-image: url('images/accueil/selec_mob.jpg');
  background-repeat: no-repeat;
  position: right bottom;
  background-size: cover;
}

.swiper .swiper-image3 {
  position: absolute;
  right: 0;
  width: 600px;
  height: 250px;
  margin: auto;
  text-align: center;
  transform: scale3d(1, 1, 1);
  backface-visibility: hidden !important;
  will-change: transform;
  transition: transform 1500ms ease;
  transition-delay: 0.4s;
    background-image: url('images/accueil/anniv_mob.jpg');
  background-repeat: no-repeat;
  position: right bottom;
  background-size: cover;
}


}