
.gallery-masonry {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(180px, 1fr));
  grid-auto-flow: dense;
  gap: 10px;
}

.gallery-masonry a {
  display: block;
  border-radius: 10px;
  overflow: hidden;
  position: relative;
}

.gallery-masonry picture,
.gallery-masonry img {
  width: 100%;
  height: 100%;
  object-fit: cover; /* recorta sin deformar */
  display: block;
  transition: transform 0.3s ease;
}

.gallery-masonry a img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.3s ease;
}

.gallery-masonry a:hover img {
  transform: scale(1.05);
}

/* Variantes para collage */
.gallery-masonry a.wide {
  grid-column: span 2;
}
.gallery-masonry a.tall {
  grid-row: span 2;
}
.gallery-masonry a.big {
  grid-column: span 2;
  grid-row: span 2;
}

/* Responsive ajustes */
@media (max-width: 768px) {
  .gallery-masonry {
    grid-template-columns: repeat(auto-fill, minmax(120px, 1fr));
  }
}
