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


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

.header-banner {
  width: 100vw;          /* largeur de l'écran */
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw); /* supprime les marges du body */
  margin-top: calc(50% - 50vw); /* supprime les marges du body */
  height: 650px;
  background-image: url("images/bandeau.webp");
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  position: relative; /* important */
  display: flex;
  justify-content: center;
  align-items: center;
   border-bottom: 2px solid white;
}

/* Overlay semi-transparent POUR le bandeau, PAS pour le logo */
.header-banner::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.5);
  /*backdrop-filter: blur(1px);*/
  z-index: 1;
}

/* Le logo reste au-dessus de l’overlay */
.header-banner .logo {
  z-index: 2;
  position: relative;
  max-width: 600px; /* ajuste si besoin */
}

@media (max-width: 768px) {
  .header-banner {
    height: 150px;
  }

  .header-banner .logo {
    max-width: 50%;
	margin-top: 20px;
  }
}



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

/* Poster */
.poster {
  width: 100%;
  max-width: 744px;
  height: auto;
  border: 2px solid white;
  margin-bottom: -10px;
  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: 100%;
  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: 20px 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: 361px;
  height: auto;
  border: 2px solid white;
  display: block;
  pointer-events: none;
}

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


/* ---- 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: 0px auto;
  box-shadow: 0 0 10px rgba(255, 255, 255, 0.05);
  pointer-events: none;
  padding-top: 20px;
}

@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: 745px; /* largeur sur PC */
  height: auto;
  border: 2px solid white;
  margin: 0px auto;
  display: block;
  border-radius: 0;
}

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


/* 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;
}

/* Icône Instagram */
.insta-icon img {
  width: auto;
  height: 26px;
  filter: brightness(0) invert(1);
  transition: transform 0.2s ease;
  object-fit: contain;        /* s’assure qu’il ne soit jamais déformé */
  margin-bottom: -5px;
  pointer-events: none;
}

.insta-icon img:hover {
  transform: scale(1.1);
}


/* 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 fixe --- */
.fixed-footer {
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100%;
  background: rgba(0, 0, 0, 0.7);
  backdrop-filter: blur(4px);
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 5px 30px; /* ← on augmente un peu à gauche/droite */
  box-sizing: border-box; /* ← très important pour garder la largeur totale */
  z-index: 9999;
  border-top: 1px solid rgba(255, 255, 255, 0.1);
}

/* Bouton Contact */
.footer-btn {
  background: #fff;
  color: #000;
  padding: 5px 14px;
  border-radius: 8px;
  font-weight: lighter;
  text-decoration: none;
  display: inline-block;
  transition: all 0.2s ease;
}
.footer-btn:hover {
  background: #4c80ba;
  color: #fff;
}

/* Icône Instagram */
.footer-icon img {
  width: auto;
  height: 32px;
  filter: brightness(0) invert(1);
  transition: transform 0.2s ease;
  display: block;
  object-fit: contain;        /* s’assure qu’il ne soit jamais déformé */
}

.footer-icon img:hover {
  transform: scale(1.1);
}


/* --- Mobile: centré et compact --- */
@media (max-width: 768px) {
  .fixed-footer {
    flex-direction: row;
    justify-content: center;
    gap: 20px;
    padding: 12px;
  }

  .footer-btn {
    padding: 8px 14px;
    font-size: 0.9rem;
  }

  .footer-icon img {
    width: 28px;
    height: 28px;
  }
}


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

.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 */
  }
}

