/**
 * Nova Gallery G2 – Masonry Mode
 * Auto-activated when: crop=false AND ratio='original'
 * Creates Pinterest-like layout with natural image proportions
 */

/* Masonry container: use CSS columns instead of grid */
.nvf-gallery.nvf-gallery-g2.nvf-gallery--masonry .nvf-gallery-inner {
  display: block;
  column-gap: var(--nvf-gallery-gap, 20px);
  margin: 0;
}

/* Column count variants */
.nvf-gallery.nvf-gallery-g2.nvf-gallery--masonry.nvf-gallery--cols-1 .nvf-gallery-inner { column-count: 1; }
.nvf-gallery.nvf-gallery-g2.nvf-gallery--masonry.nvf-gallery--cols-2 .nvf-gallery-inner { column-count: 2; }
.nvf-gallery.nvf-gallery-g2.nvf-gallery--masonry.nvf-gallery--cols-3 .nvf-gallery-inner { column-count: 3; }
.nvf-gallery.nvf-gallery-g2.nvf-gallery--masonry.nvf-gallery--cols-4 .nvf-gallery-inner { column-count: 4; }
.nvf-gallery.nvf-gallery-g2.nvf-gallery--masonry.nvf-gallery--cols-5 .nvf-gallery-inner { column-count: 5; }
.nvf-gallery.nvf-gallery-g2.nvf-gallery--masonry.nvf-gallery--cols-6 .nvf-gallery-inner { column-count: 6; }

/* Masonry item: preserve natural aspect ratio, no cropping */
.nvf-gallery.nvf-gallery-g2.nvf-gallery--masonry .nvf-gallery-item {
  break-inside: avoid;
  -webkit-column-break-inside: avoid;
  display: block;
  width: 100%;
  margin-bottom: var(--nvf-gallery-gap, 20px);
  aspect-ratio: auto;
}

.nvf-gallery.nvf-gallery-g2.nvf-gallery--masonry .nvf-gallery-link {
  height: auto;
}

.nvf-gallery.nvf-gallery-g2.nvf-gallery--masonry .nvf-gallery-img {
  width: 100%;
  height: auto;
  object-fit: contain;
  object-position: center;
}

/* Masonry + captions: figcaption below */
.nvf-gallery.nvf-gallery-g2.nvf-gallery--masonry.nvf-gallery--captions .nvf-gallery-item {
  display: flex;
  flex-direction: column;
}

.nvf-gallery.nvf-gallery-g2.nvf-gallery--masonry.nvf-gallery--captions .nvf-gallery-figcaption {
  flex-shrink: 0;
}

/* Responsive: reduce columns on smaller screens */
@media (max-width: 900px) {
  .nvf-gallery.nvf-gallery-g2.nvf-gallery--masonry.nvf-gallery--cols-4 .nvf-gallery-inner,
  .nvf-gallery.nvf-gallery-g2.nvf-gallery--masonry.nvf-gallery--cols-5 .nvf-gallery-inner,
  .nvf-gallery.nvf-gallery-g2.nvf-gallery--masonry.nvf-gallery--cols-6 .nvf-gallery-inner {
    column-count: 2;
  }
}

@media (max-width: 600px) {
  .nvf-gallery.nvf-gallery-g2.nvf-gallery--masonry .nvf-gallery-inner {
    column-count: 1;
  }
}
