/* protection.css */

/* Section principale */
.protection-content {
  margin-top: 40px;
  margin-bottom: 40px;
  font-family: "Helvetica Neue", Arial, sans-serif;
  line-height: 1.7;
  color: #333;
}

/* Titre principal - version desktop */
.protection-content .page-title {
  text-align: center;
  margin-top: 125px !important;
}

/* Adaptation mobile */
@media (max-width: 767px) {
  .protection-content .page-title {
    margin-top: -10px !important; /* réduit l’espace pour mobile */
    font-size: 1.9em;            /* ajuste la taille du texte si nécessaire */
    line-height: 1.2;            /* améliore la lisibilité sur petit écran */
  }
}


/* Intro */
.intro {
  background: #f5f9f7;
  padding: 25px;
  border-radius: 8px;
  box-shadow: 0 2px 6px rgba(0,0,0,0.1);
  margin-bottom: 40px;
}

.intro ul {
  list-style: none;
  padding-left:
  
  /* === Galerie horizontale Espace24 === */
.protection-gallery {
  display: flex;
  justify-content: center;
  gap: 20px;
  flex-wrap: wrap;          /* Passe en colonne sur mobile */
  margin-top: 30px;
}

.protection-card {
  position: relative;
  flex: 0 0 28%;            /* Chaque bloc prend ~28% */
  max-width: 280px;         /* Taille maîtrisée */
  overflow: hidden;
  border-radius: 8px;
  box-shadow: 0 4px 8px rgba(0,0,0,0.15);
  background: #fff;
}

.protection-card img {
  display: block;
  width: 100%;
  height: auto;
  transition: transform 0.3s ease;
}

.protection-card:hover img {
  transform: scale(1.05);   /* Zoom léger au survol */
}

/* === Titre FIXE en bas de l'image === */
.overlay-title {
  position: absolute;
  bottom: 0;                /* Collé en bas */
  left: 0;
  width: 100%;
  padding: 10px;
  background: rgba(54, 97, 80, 0.9); /* Bande verte semi-transparente */
  color: #fff;
  font-weight: bold;
  font-size: 1em;
  text-align: center;
  z-index: 2;
  opacity: 1;               /* Toujours visible */
  transform: none;
}

/* === Responsive === */
@media (max-width: 992px) {
  .protection-card {
    flex: 0 0 45%;           /* 2 colonnes sur tablette */
    max-width: 45%;
  }
}

@media (max-width: 768px) {
  .protection-card {
    flex: 0 0 100%;          /* 1 colonne sur mobile */
    max-width: 100%;
    margin-bottom: 20px;
  }
}

  
  /* Galerie horizontale */
.protection-gallery {
  display: flex;              /* Active le mode flexbox */
  justify-content: center;    /* Centre les images horizontalement */
  gap: 20px;                  /* Espacement entre les images */
  margin-top: 30px;
  flex-wrap: wrap;            /* Permet de passer à la ligne si écran trop petit */
}

.protection-gallery figure {
  flex: 1 1 250px;            /* Chaque image occupe une largeur flexible */
  max-width: 300px;           /* Largeur max par image */
  text-align: center;         /* Centre la légende */
}

.protection-gallery img {
  width: 100%;                /* Image prend toute la largeur du bloc */
  height: auto;               /* Respecte les proportions */
  border-radius: 8px;         /* Coins arrondis */
  box-shadow: 0 4px 8px rgba(0,0,0,0.15); /* Ombre légère */
  transition: transform 0.3s ease;
}

.protection-gallery img:hover {
  transform: scale(1.05);     /* Zoom léger au survol */
}

.protection-gallery figcaption {
  margin-top: 10px;
  font-size: 0.95em;
  color: #366150;
  font-weight: bold;
}

/* Galerie horizontale */
/* === Galerie horizontale Espace24 === */
.protection-gallery {
  display: flex;
  justify-content: center;
  gap: 20px;
  flex-wrap: wrap;          /* Passe en colonne sur mobile */
  margin-top: 30px;
}

.protection-card {
  position: relative;
  flex: 0 0 28%;            /* Chaque bloc prend ~28% */
  max-width: 280px;         /* Taille maîtrisée */
  overflow: hidden;
  border-radius: 8px;
  box-shadow: 0 4px 8px rgba(0,0,0,0.15);
  background: #fff;
}

.protection-card img {
  display: block;
  width: 100%;
  height: auto;
  transition: transform 0.3s ease;
}

.protection-card:hover img {
  transform: scale(1.05);   /* Zoom léger au survol */
}

/* === Titre FIXE en bas de l'image === */
.overlay-title {
  position: absolute;
  bottom: 0;                /* Collé en bas */
  left: 0;
  width: 100%;
  padding: 10px;
  background: rgba(54, 97, 80, 0.9); /* Bande verte semi-transparente */
  color: #fff;
  font-weight: bold;
  font-size: 1em;
  text-align: center;
  z-index: 2;
  opacity: 1;               /* Toujours visible */
  transform: none;
}

/* === Responsive === */
@media (max-width: 992px) {
  .protection-card {
    flex: 0 0 45%;           /* 2 colonnes sur tablette */
    max-width: 45%;
  }
}

@media (max-width: 768px) {
  .protection-card {
    flex: 0 0 100%;          /* 1 colonne sur mobile */
    max-width: 100%;
    margin-bottom: 20px;
  }
}

/* Galerie horizontale verrouillée */
main.protection-content .protection-gallery {
  display: flex !important;        /* Force flexbox */
  justify-content: center !important;
  gap: 20px !important;
  flex-wrap: wrap !important;      /* Passe en colonne sur mobile */
  margin-top: 30px !important;
}

main.protection-content .protection-gallery .protection-card {
  position: relative !important;   /* Permet overlay */
  flex: 0 0 30% !important;        /* Chaque bloc prend ~30% */
  max-width: 300px !important;
  overflow: hidden !important;
  border-radius: 8px !important;
  box-shadow: 0 4px 8px rgba(0,0,0,0.15) !important;
  text-align: center !important;
  margin: 0 !important;
  float: none !important;          /* Neutralise Bootstrap */
  display: block !important;
}

/* Image */
main.protection-content .protection-gallery .protection-card img {
  width: 100% !important;
  height: auto !important;
  display: block !important;
  transition: transform 0.3s ease !important;
}

main.protection-content .protection-gallery .protection-card:hover img {
  transform: scale(1.05) !important; /* Zoom au survol */
}

/* Overlay titre */
main.protection-content .protection-gallery .overlay-title {
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  width: 100% !important;
  background: rgba(54, 97, 80, 0.85) !important;
  color: #fff !important;
  font-size: 1em !important;
  font-weight: bold !important;
  text-align: center !important;
  padding: 10px !important;
  z-index: 2 !important;
}

/* Grille: espace entre colonnes */
.protection-gallery .col-xs-12,
.protection-gallery .col-sm-6,
.protection-gallery .col-md-4 {
  margin-bottom: 20px;
}

/* Carte image avec overlay titre fixe */
.card-img {
  position: relative;              /* Contexte pour overlay */
  overflow: hidden;
  border-radius: 8px;
  box-shadow: 0 4px 8px rgba(0,0,0,0.15);
}

.card-img img {
  display: block;
  width: 100%;
  height: auto;
  transition: transform 0.3s ease;
}

.card-img:hover img {
  transform: scale(1.05);          /* Zoom léger au survol */
}

/* Titre fixe en haut de l'image */
.card-img .overlay-title {
  position: absolute;
  top: 0;                          /* Collé au haut */
  left: 0;
  width: 100%;
  padding: 10px 12px;
  background: rgba(54, 97, 80, 0.88); /* Bande verte semi-transparente */
  color: #fff;
  font-weight: bold;
  font-size: 1em;
  text-align: center;
  z-index: 2;
}

/* Sécurité: neutraliser floats/marges hérités */
.protection-gallery .card-img,
.protection-gallery .overlay-title,
.protection-gallery img {
  float: none !important;
  margin: 0 !important;
}

/* Galerie horizontale */
.protection-gallery {
  display: flex;
  justify-content: center;
  gap: 20px;
  flex-wrap: wrap;
  margin-top: 30px;
}

.protection-card {
  position: relative;       /* Contexte pour overlay */
  flex: 0 0 30%;
  max-width: 300px;
  overflow: hidden;
  border-radius: 8px;
  box-shadow: 0 4px 8px rgba(0,0,0,0.15);
}

.protection-card img {
  width: 100%;
  height: auto;
  display: block;
  transition: transform 0.3s ease;
}

.protection-card:hover img {
  transform: scale(1.05);   /* Zoom au survol */
}

/* Overlay titre fixé sur l'image */
.overlay-title {
  position: absolute;
  top: 0;                   /* Fixé en haut de l'image */
  left: 0;
  width: 100%;
  background: rgba(54, 97, 80, 0.85);
  color: #fff;
  font-size: 1em;
  font-weight: bold;
  text-align: center;
  padding: 10px;
  z-index: 2;
}

/* Galerie horizontale */
.protection-gallery {
  display: flex !important;
  justify-content: center !important;
  gap: 20px !important;
  flex-wrap: wrap !important;
  margin-top: 30px !important;
}

.protection-card {
  position: relative !important;
  flex: 0 0 28% !important;       /* réduit la largeur pour un meilleur alignement */
  max-width: 320px !important;    /* taille plus petite qu’avant */
  overflow: hidden !important;
  border-radius: 8px !important;
  box-shadow: 0 4px 8px rgba(0,0,0,0.15) !important;
}

.protection-card img {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  transition: transform 0.3s ease !important;
}

.protection-card:hover img {
  transform: scale(1.05) !important;  /* zoom au survol */
}

/* Titre fixé en bas, toujours visible */
.protection-card .overlay-title {
  position: absolute !important;
  bottom: 0 !important;           /* collé en bas */
  left: 0 !important;
  width: 100% !important;
  padding: 10px !important;
  background: rgba(54, 97, 80, 0.9) !important;
  color: #fff !important;
  font-weight: bold !important;
  font-size: 1em !important;
  text-align: center !important;
  z-index: 2 !important;
  opacity: 1 !important;          /* toujours visible */
  transform: none !important;     /* pas de slide */
}

/* === Correction finale prioritaire === */
.protection-gallery {
  display: flex !important;
  justify-content: center !important;
  gap: 18px !important;
  flex-wrap: wrap !important;
  margin-top: 30px !important;
}

.protection-card {
  position: relative !important;
  flex: 0 0 27% !important;        /* ~1/3, légèrement réduit pour l’alignement */
  max-width: 280px !important;     /* taille maîtrisée, évite les débordements */
  overflow: hidden !important;
  border-radius: 8px !important;
  box-shadow: 0 4px 8px rgba(0,0,0,0.15) !important;
}

.protection-card img {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  transition: transform 0.3s ease !important;
}

.protection-card:hover img {
  transform: scale(1.05) !important;
}

/* Titre fixe en bas (prioritaire, écrase toutes les versions top:0) */
.protection-card .overlay-title {
  position: absolute !important;
  bottom: 0 !important;
  left: 0 !important;
  width: 100% !important;
  padding: 10px !important;
  background: rgba(54, 97, 80, 0.9) !important;
  color: #fff !important;
  font-weight: bold !important;
  font-size: 1em !important;
  text-align: center !important;
  z-index: 2 !important;
  opacity: 1 !important;
  transform: none !important;
}

/* Mobile: une image par ligne */
@media (max-width: 768px) {
  .protection-card {
    flex: 0 0 100% !important;
    max-width: 100% !important;
  }
}

/* === GALERIE INDÉPENDANTE, NOMS UNIQUES === */
.ep24-protect-gallery {
  display: flex !important;
  justify-content: center !important;
  gap: 18px !important;
  flex-wrap: wrap !important;
  margin-top: 30px !important;
}

.ep24-card {
  position: relative !important;
  flex: 0 0 27% !important;     /* ~1/3 par carte */
  max-width: 280px !important;  /* taille contrôlée pour alignement */
  overflow: hidden !important;
  border-radius: 8px !important;
  box-shadow: 0 4px 8px rgba(0,0,0,0.15) !important;
}

.ep24-card img {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  transition: transform 0.3s ease !important;
}

.ep24-card:hover img {
  transform: scale(1.05) !important;
}

/* Titre FIXE en bas de l'image (toujours visible) */
.ep24-overlay {
  position: absolute !important;
  bottom: 0 !important;
  left: 0 !important;
  width: 100% !important;
  padding: 10px !important;
  background: rgba(54, 97, 80, 0.9) !important;
  color: #fff !important;
  font-weight: bold !important;
  font-size: 1em !important;
  text-align: center !important;
  z-index: 2 !important;
  opacity: 1 !important;
  transform: none !important;
}

/* Mobile: une carte par ligne */
@media (max-width: 768px) {
  .ep24-card {
    flex: 0 0 100% !important;
    max-width: 100% !important;
  }
}

/* Espace vertical entre colonnes */
.ep24-grid-gallery > [class*="col-"] { margin-bottom: 20px; }

/* Carte interne: overlay et zoom, indépendante des floats */
.ep24-card {
  position: relative;
  overflow: hidden;
  border-radius: 8px;
  box-shadow: 0 4px 8px rgba(0,0,0,0.15);
}
.ep24-card img {
  display: block;
  width: 100%;
  height: auto;
  transition: transform 0.3s ease;
}
.ep24-card:hover img { transform: scale(1.05); }

/* Titre FIXE en bas */
.ep24-overlay {
  position: absolute;
  bottom: 0; left: 0; width: 100%;
  padding: 10px;
  background: rgba(54,97,80,0.9);
  color: #fff; font-weight: bold; font-size: 1em; text-align: center;
  z-index: 2;
}

/* Galerie horizontale */
.protection-gallery {
  display: flex !important;
  justify-content: center !important;
  gap: 20px !important;
  flex-wrap: wrap !important;
  margin-top: 30px !important;
}

.protection-card {
  position: relative !important;
  flex: 0 0 28% !important;       /* chaque bloc prend ~28% */
  max-width: 280px !important;    /* taille maîtrisée */
  overflow: hidden !important;
  border-radius: 8px !important;
  box-shadow: 0 4px 8px rgba(0,0,0,0.15) !important;
}

.protection-card img {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  transition: transform 0.3s ease !important;
}

.protection-card:hover img {
  transform: scale(1.05) !important;  /* zoom au survol */
}

/* Titre FIXE en bas */
.overlay-title {
  position: absolute !important;
  bottom: 0 !important;           /* collé en bas */
  left: 0 !important;
  width: 100% !important;
  padding: 10px !important;
  background: rgba(54, 97, 80, 0.9) !important;
  color: #fff !important;
  font-weight: bold !important;
  font-size: 1em !important;
  text-align: center !important;
  z-index: 2 !important;
  opacity: 1 !important;          /* toujours visible */
  transform: none !important;
}

/* Mobile: une image par ligne */
@media (max-width: 768px) {
  .protection-card {
    flex: 0 0 100% !important;
    max-width: 100% !important;
  }
}

/* === Galerie horizontale Espace24 === */
.protection-gallery {
  display: flex;
  justify-content: center;
  gap: 20px;
  flex-wrap: wrap;          /* Passe en colonne sur mobile */
  margin-top: 30px;
}

.protection-card {
  position: relative;
  flex: 0 0 28%;            /* Chaque bloc prend ~28% */
  max-width: 280px;         /* Taille maîtrisée */
  overflow: hidden;
  border-radius: 8px;
  box-shadow: 0 4px 8px rgba(0,0,0,0.15);
  background: #fff;         /* cohérence avec rachat/recyclage */
}

.protection-card img {
  display: block;
  width: 100%;
  height: auto;
  transition: transform 0.3s ease;
}

.protection-card:hover img {
  transform: scale(1.05);   /* Zoom léger au survol */
}

/* Titre FIXE en bas de l'image */
.overlay-title {
  position: absolute;
  bottom: 0;                /* Collé en bas */
  left: 0;
  width: 100%;
  padding: 10px;
  background: rgba(54, 97, 80, 0.9); /* Bande verte semi-transparente */
  color: #fff;
  font-weight: bold;
  font-size: 1em;
  text-align: center;
  z-index: 2;
  opacity: 1;               /* Toujours visible */
  transform: none;
}

/* === Responsive === */
@media (max-width: 992px) {
  .protection-card {
    flex: 0 0 45%;           /* 2 colonnes sur tablette */
    max-width: 45%;
  }
}

@media (max-width: 768px) {
  .protection-card {
    flex: 0 0 100%;          /* 1 colonne sur mobile */
    max-width: 100%;
    margin-bottom: 20px;
  }
}

/* Galerie horizontale */
.protection-gallery {
  display: flex !important;
  justify-content: center !important;
  gap: 20px !important;
  flex-wrap: wrap !important;
  margin-top: 30px !important;
}

.protection-card {
  position: relative !important;
  flex: 0 0 28% !important;       /* chaque bloc prend ~28% */
  max-width: 280px !important;    /* taille maîtrisée */
  overflow: hidden !important;
  border-radius: 8px !important;
  box-shadow: 0 4px 8px rgba(0,0,0,0.15) !important;
}

.protection-card img {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  transition: transform 0.3s ease !important;
}

.protection-card:hover img {
  transform: scale(1.05) !important;  /* zoom au survol */
}

/* Titre FIXE en bas de l'image */
.overlay-title {
  position: absolute !important;
  bottom: 0 !important;           /* collé en bas */
  left: 0 !important;
  width: 100% !important;
  padding: 10px !important;
  background: rgba(54, 97, 80, 0.9) !important;
  color: #fff !important;
  font-weight: bold !important;
  font-size: 1em !important;
  text-align: center !important;
  z-index: 2 !important;
  opacity: 1 !important;          /* toujours visible */
  transform: none !important;
}

/* Mobile: une image par ligne */
@media (max-width: 768px) {
  .protection-card {
    flex: 0 0 100% !important;
    max-width: 100% !important;
  }
}

/* Galerie horizontale */
main.protection-content .protection-gallery {
  display: flex !important;
  justify-content: center !important;
  gap: 20px !important;
  flex-wrap: wrap !important;
  margin-top: 30px !important;
}

main.protection-content .protection-gallery .protection-card {
  position: relative !important;
  flex: 0 0 28% !important;       /* largeur contrôlée */
  max-width: 280px !important;    /* taille maîtrisée */
  overflow: hidden !important;
  border-radius: 8px !important;
  box-shadow: 0 4px 8px rgba(0,0,0,0.15) !important;
}

main.protection-content .protection-gallery .protection-card img {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  transition: transform 0.3s ease !important;
}

main.protection-content .protection-gallery .protection-card:hover img {
  transform: scale(1.05) !important;
}

/* Titre FIXE en bas */
main.protection-content .protection-gallery .overlay-title {
  position: absolute !important;
  bottom: 0 !important;
  left: 0 !important;
  width: 100% !important;
  padding: 10px !important;
  background: rgba(54, 97, 80, 0.9) !important;
  color: #fff !important;
  font-weight: bold !important;
  font-size: 1em !important;
  text-align: center !important;
  z-index: 2 !important;
  opacity: 1 !important;
  transform: none !important;
}

/* === Galerie horizontale Espace24 === */
.protection-gallery {
  display: flex !important;
  justify-content: center !important;
  gap: 20px !important;
  flex-wrap: wrap !important;
  margin-top: 30px !important;
}

.protection-card {
  position: relative !important;
  flex: 0 0 28% !important;       /* largeur contrôlée */
  max-width: 280px !important;    /* taille maîtrisée */
  overflow: hidden !important;
  border-radius: 8px !important;
  box-shadow: 0 4px 8px rgba(0,0,0,0.15) !important;
}

.protection-card img {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  transition: transform 0.3s ease !important;
}

.protection-card:hover img {
  transform: scale(1.05) !important;
}

/* === Titre FIXE en bas de l'image === */
.overlay-title {
  position: absolute !important;
  bottom: 0 !important;           /* collé en bas */
  left: 0 !important;
  width: 100% !important;
  padding: 10px !important;
  background: rgba(54, 97, 80, 0.9) !important;
  color: #fff !important;
  font-weight: bold !important;
  font-size: 1em !important;
  text-align: center !important;
  z-index: 2 !important;
  opacity: 1 !important;          /* toujours visible */
  transform: none !important;
}

/* === Responsive === */
@media (max-width: 768px) {
  .protection-card {
    flex: 0 0 100% !important;
    max-width: 100% !important;
    margin-bottom: 20px !important;
  }
}

@media (max-width: 767px) {
  h2.page-title {
    margin-top: 10px !important;   /* force la marge réduite */
    padding-top: 0 !important;
  }
}