.staff-grid {
  display: none;
}

.teams, .staff {
  width: min(100% - 32px, 450px);
  margin: 0 auto;
}

.teams {
    display: flex;
  flex-direction: column;
  gap: 32px;
  padding: 20px 0;
}

.team-card {
  background: rgba(255,255,255,0.05);
  border-radius: 20px;
  padding: 24px;
  backdrop-filter: blur(8px);
  max-width: 100%;
  margin: 0 auto;
  position: relative;
  overflow: hidden;
}

.team-card h2 {
  font-family: 'League Spartan', sans-serif;
  font-size: 2rem;
  margin: 0 0 8px;
}


.team-card::after {
  content: "";
  position: absolute;
  right: -40px;
  bottom: -40px;
  width: 150px;
  height: 150px;

  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;

  opacity: 0.8;
  pointer-events: none;
}

.team-card.requin::after {
  background-image: url("Images/requin.svg");
}

.team-card.poulpe::after {
  background-image: url("Images/poulpe.svg");
}

.team-card.espadon::after {
  background-image: url("Images/espadon.svg");
}

.team-card.huitre::after {
  background-image: url("Images/huitre.svg");
}

.power {
  margin: 0 0 22px;
  color: #f5ead2;
  font-weight: 700;
}

.players {
  display: flex;
  gap: 16px;
  overflow-x: auto;
  scroll-snap-type: x mandatory;
  scroll-padding-inline: 15%;
  padding-left: 15%;
  padding-right: 15%;
}

.players::-webkit-scrollbar {
  display: none;
}

.player {
  position: relative;
  flex: 0 0 90%;
  max-width : 240px;
  height: 240px;
  scroll-snap-align: center;
  border-radius: 14px;
  overflow: hidden;
  opacity: 0.4;
  transform: scale(0.85);
  transition: all 0.3s ease;

}

.player.active {
  opacity: 1;
  transform: scale(1);
}

.player img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.overlay {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  padding: 26px 10px 10px;
  background: linear-gradient(
    to top,
    rgba(0,0,0,0.92) 0%,
    rgba(0,0,0,0.65) 55%,
    rgba(0,0,0,0) 100%
  );
  display: flex;
  flex-direction: column;
}

.name {
  font-size: 1rem;
  font-weight: 900;
  line-height: 1;
  text-shadow: 0 2px 6px rgba(0,0,0,0.9);
}

.credit {
  margin-top: 4px;
  font-size: 0.68rem;
  opacity: 0.85;
  line-height: 1.1;
  text-shadow: 0 2px 6px rgba(0,0,0,0.9);
}


.staff-role {
  font-family: 'League Spartan';
  font-size: 1.8rem;
  margin-bottom: 20px;
}

.staff-players {
  display: flex;
  gap: 16px;
  overflow-x: auto;
  scroll-snap-type: x mandatory;
  padding: 0 20%;
}

.staff-player {
  position: relative;
  flex: 0 0 90%;
  max-width: 240px;
  aspect-ratio: 3/4;

  border-radius: 16px;
  overflow: hidden;

  scroll-snap-align: center;

  opacity: 0.4;
  transform: scale(0.85);
  transition: all 0.3s ease;
}

.staff-player.active {
  opacity: 1;
  transform: scale(1);
}

.staff-player img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.staff-players {
  -ms-overflow-style: none; 
  scrollbar-width: none;   
}

.staff-players::-webkit-scrollbar {
  display: none;             
}

.staff.team-card {
  text-align: center;
}

.staff-role {
  margin-bottom: 20px;
}




@media (min-width: 768px) {
  .teams {
    width: 100%;
    padding: 10px 16px 24px;
  }

  .team-card {
    padding: 18px;
  }
  
  .players {
     display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 24px;

    overflow: visible;
    scroll-snap-type: none;
    padding: 0;
  }
  
  .player {
    flex: unset;
    width: 100%;
    height: 260px;

    opacity: 1;
    transform: none;
  }
  .player.active {
    opacity: 1;
    transform: scale(1);
  }


  
   .staff-players {
    display: none; 
  }

  .staff-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 20px;
  }

  .staff-item {
    text-align: center;
  }

  .staff-label {
    font-family: 'League Spartan';
    font-weight: 900;
    font-size: 1.2rem;
    margin-bottom: 10px;
  }
	.staff-player {
  		opacity: 1;
  		transform: none;
	}


}





