.image-gallery {
  width: 100%;
  margin: 0 auto;
}

.gallery-section {
  margin-bottom: 1rem;
}

.image-row {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 1rem;
}

.image-item {
  flex: 1 1 300px;
  max-width: 100%;
}

.image-frame {
  padding: 1rem;
  border-radius: 5px;
  text-align: center;
  margin-bottom: 0.5rem;
}

.image-frame img {
  width: 100%;
  max-width: 450px;
  height: auto;
  display: block;
  margin: 0 auto;
}

.image-frame1 img {
  width: 100%;
  max-width: 250px;
  height: auto;
  display: block;
  margin: 0 auto;
}

.image-caption {
  font-family: Verdana, sans-serif;
  font-style: italic;
  margin-top: 0.5rem;
  font-size: 0.9rem;
  text-align: center;
}

/* Para pantallas pequeñas */
@media (max-width: 768px) {
  .image-item {
    flex: 1 1 100%;
  }
  
  .image-frame img {
    width: 90% !important; /* Ancho mayor en móviles */
    max-width: 300px; /* Límite máximo */
  }
}

.ruta-larga {
  overflow-wrap: break-word; /* Rompe solo cuando es necesario */
  word-break: break-word; /* Compatibilidad con navegadores antiguos */
  display: inline-block;
  max-width: 100%;
  font-family: monospace;
}

/* Para pantallas muy pequeñas */
@media (max-width: 480px) {
  .image-frame {
    padding: 0.5rem;
  }
  
  .image-frame img {
    width: 95% !important; /* Aún más grande en móviles pequeños */
  }
}