body {
  margin: 0;
  background-color: #000;
  color: #fff;
  font-family: 'Anton', Impact, sans-serif;
  background-image: url("fondsite.webp");
  background-size: cover;
  background-repeat: repeat;
  text-align: center;
  padding: 20px;
  box-sizing: border-box;
}

.layout {
  max-width: 1200px;
  margin: 0 auto;
  padding: 10px;
}

.logo {
  width: 100%;
  max-width: 500px;
  height: auto;
  margin: 0 auto 30px auto;
  display: block;
}

/* Poster */
.poster {
  width: 100%;
  max-width: 744px;
  height: auto;
  border: 2px solid white;
  margin-bottom: 30px;
  pointer-events: none;
}

/* Grilles vidéos/images */
.video-grid,
.image-grid,
.media-row {
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
  justify-content: center;
  margin: 30px 0;
}

.video-grid video,
.image-grid img,
.media-row video,
.media-row img {
  flex: 1 1 100%;   /* mobile/tablette par défaut */
  max-width: 95%;
  height: auto;
  border: 2px solid white;
}

/* Desktop : côte à côte */
@media (min-width: 1024px) {
  .video-grid video,
  .image-grid img,
  .media-row video,
  .media-row img {
    flex: 1 1 45%;
    max-width: 45%;
  }
}


/* Rows of 2 items (videos/images) */
.media-row {
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
  justify-content: center;
  margin: 30px 0;
}

.media-row video{
  flex: 1 1 100%;     /* par défaut mobile */
  /*max-width: 360px;*/
  height: auto;
  border: 2px solid white;
  display: block;
}

.media-row img {
  flex: 1 1 100%;     /* par défaut mobile */
  /*max-width: 360px;*/
  height: auto;
  border: 2px solid white;
  display: block;
  pointer-events: none;
}

/* ---- Resistance live video ---- */
.resistance-live-video {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  margin: 40px auto;
}

.resistance-live-video video {
  width: auto;              /* largeur automatique selon le ratio */
  max-width: 90%;           /* ne dépasse jamais 90% de la largeur de l’écran */
  max-height: 800px;        /* limite la hauteur sur PC */
  border: 2px solid white;
  border-radius: 0;
  display: block;
  height: auto;
}

/* ---- Version mobile ---- */
@media (max-width: 768px) {
  .resistance-live-video video {
    max-width: 100%;         /* un peu de marge sur les côtés */
    /*max-height: 450px;       limite la hauteur pour qu’on voie tout */
  }
}


/* Lyrics video */
.lyrics-video {
  margin: 40px 0;
}

.lyrics-video video {
  width: 100%;
  max-width: 100%;
  max-width: 744px;
  height: auto;
  border: 2px solid white;
}



/* Illustration */
.illustration {
  display: block;
  width: 100%;       
  height: auto;
  margin: 30px auto;
  box-shadow: 0 0 10px rgba(255, 255, 255, 0.05);
   pointer-events: none;
}

@media (min-width: 768px) {
  .illustration {
    max-width: 600px; /* seulement sur tablette/PC */
  }
}

/* Illustration2 */
.illustration2 {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
}

.illustration2 img {
  width: 100%;
  max-width: 800px; /* largeur sur PC */
  height: auto;
  border: 2px solid white;
  display: block;
  border-radius: 0;
}

/* Version mobile : même taille que les autres images */
@media (max-width: 768px) {
  .illustration2 img {
    max-width: 95%;
  }
}


/* Description */
.description {
  color: #fff;
  text-align: justify;
  margin: 20px auto 40px auto;
  padding: 0 5%;
  font-size: 16px;
  line-height: 1.6;
  max-width: 800px;
  font-family: 'Oswald', 'Arial Black', sans-serif;
  font-weight: 500;
}

/* Titles */
h1 {
  font-size: 1.6rem;        /* par défaut (mobile) */
  margin-bottom: 20px;
  letter-spacing: 2px;
}

@media (min-width: 1024px) {
  h1 {
    font-size: 2rem;    /* plus grand sur PC */
  }
}


/* Footer */
footer {
  margin-top: 40px;
  font-size: 0.9rem;
  color: #aaa;
  text-align: center;
}

.contact-btn {
  background: #fff;
  color: #000;
  padding: 12px 24px;
  border-radius: 8px;
  font-weight: normal;
  text-decoration: none;
  display: inline-block;
  transition: all 0.2s ease;
}
.contact-btn:hover {
  background: #f00;
  color: #fff;
}


.credits {
  margin-top: 10px;
  font-family: 'Oswald', 'Arial Black', sans-serif;
  font-weight: 300;
}

a {
  color: white;
  text-decoration: underline;
}

/* Responsive breakpoints */
@media (min-width: 1024px) {
  .media-row video,
  .media-row img {
    flex: 1 1 45%; /* côte à côte sur desktop */
  }
}

