/* ============================================
   IMAGES - Système harmonisé CFM77
   5 types de base + variantes de taille
   ============================================ */

/* --------------------------------------------
   1. IMAGE RONDE (avatars, photos)
   Structure : <div class="img_ronde"><img></div>
   -------------------------------------------- */

.img_ronde {
  width: 90px;
  height: 90px;
  border-radius: 50%;
  overflow: hidden;
  flex-shrink: 0;
  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.15);
}

.img_ronde img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.img_ronde.sm { width: 80px; height: 80px; }
.img_ronde.lg { width: 120px; height: 120px; }

/* Variante avec bordure (équipe accueil) */
.img_ronde.bordure {
  border: 3px solid #ffffff;
}

.img_ronde.bordure:hover {
  transform: scale(1.1);
}

/* --------------------------------------------
   2. IMAGE ICÔNE (logos, pictogrammes)
   Structure : <img class="img_icone">
   -------------------------------------------- */

.img_icone {
  width: 80px;
  height: 80px;
  object-fit: contain;
  flex-shrink: 0;
}

.img_icone.sm { width: 70px; height: 70px; }
.img_icone.lg { width: 120px; height: auto; }

/* --------------------------------------------
   3. IMAGE CARTE (rectangulaire arrondie)
   Structure : <img class="img_carte">
   -------------------------------------------- */

.img_carte {
  width: 180px;
  height: auto;
  border-radius: 8px;
  object-fit: cover;
}

.img_carte.lg {
  max-width: 350px;
  width: 100%;
}

/* --------------------------------------------
   4. IMAGE TARIF (prix, paiement)
   Structure : <div class="img_tarif"><img></div>
   -------------------------------------------- */

.img_tarif {
  width: 120px;
  height: auto;
  flex-shrink: 0;
}

.img_tarif img {
  width: 100%;
  height: auto;
  object-fit: contain;
}

/* Grande image tarif (cartes cliquables) */
.img_tarif.xl {
  width: auto;
  border-radius: 12px;
  overflow: hidden;
  box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1);
  transition: transform 0.3s ease;
}

.img_tarif.xl:hover {
  transform: translateY(-8px) scale(1.02);
}

.img_tarif.xl img {
  display: block;
  height: 400px;
}

/* --------------------------------------------
   5. IMAGE BANNIÈRE (pleine largeur)
   Structure : <img class="img_banniere">
   -------------------------------------------- */

.img_banniere {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  object-position: center;
}

/* --------------------------------------------
   RESPONSIVE
   -------------------------------------------- */

@media (max-width: 950px) {
  .img_ronde { width: 85px; height: 85px; }
  .img_ronde.sm { width: 75px; height: 75px; }
  .img_ronde.lg { width: 100px; height: 100px; }

  .img_carte { width: 150px; }

  .img_tarif.xl img { height: 350px; }
}

@media (max-width: 480px) {
  .img_ronde { width: 70px; height: 70px; }
  .img_ronde.sm { width: 60px; height: 60px; }
  .img_ronde.lg { width: 85px; height: 85px; }

  .img_icone { width: 60px; height: 60px; }

  .img_carte { width: 120px; }
  .img_carte.lg { max-width: 280px; }

  .img_tarif { width: 100px; margin-bottom: 15px; }
  .img_tarif.xl img { height: 280px; }
}
