/* Equal Gallery for Elementor — equal-size crop grid */

.ege-on.ege-basic .elementor-image-gallery .gallery,
.ege-on.ege-basic .elementor-widget-image-gallery .gallery {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--ege-gap, 12px) !important;
  margin: 0 !important;
  width: 100%;
}

.ege-on.ege-basic .elementor-image-gallery .gallery.gallery-columns-1,
.ege-on.ege-basic .elementor-widget-image-gallery .gallery.gallery-columns-1 {
  grid-template-columns: minmax(0, 1fr);
}

.ege-on.ege-basic .elementor-image-gallery .gallery.gallery-columns-2,
.ege-on.ege-basic .elementor-widget-image-gallery .gallery.gallery-columns-2 {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.ege-on.ege-basic .elementor-image-gallery .gallery.gallery-columns-4,
.ege-on.ege-basic .elementor-widget-image-gallery .gallery.gallery-columns-4 {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.ege-on.ege-basic .elementor-image-gallery .gallery.gallery-columns-5,
.ege-on.ege-basic .elementor-widget-image-gallery .gallery.gallery-columns-5 {
  grid-template-columns: repeat(5, minmax(0, 1fr));
}

.ege-on.ege-basic .elementor-image-gallery .gallery.gallery-columns-6,
.ege-on.ege-basic .elementor-widget-image-gallery .gallery.gallery-columns-6 {
  grid-template-columns: repeat(6, minmax(0, 1fr));
}

.ege-on.ege-basic .elementor-image-gallery .gallery-item,
.ege-on.ege-basic .elementor-widget-image-gallery .gallery-item {
  float: none !important;
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
  text-align: inherit;
}

.ege-on.ege-basic .elementor-image-gallery .gallery-icon,
.ege-on.ege-basic .elementor-widget-image-gallery .gallery-icon {
  aspect-ratio: var(--ege-ratio, 1 / 1);
  overflow: hidden;
  border-radius: var(--ege-radius, 8px);
  background: #f3f1ee;
}

.ege-on.ege-basic .elementor-image-gallery .gallery-icon a,
.ege-on.ege-basic .elementor-widget-image-gallery .gallery-icon a {
  display: block;
  width: 100%;
  height: 100%;
}

.ege-on.ege-basic .elementor-image-gallery .gallery-icon img,
.ege-on.ege-basic .elementor-widget-image-gallery .gallery-icon img,
.ege-on.ege-basic .elementor-image-gallery .gallery-item img,
.ege-on.ege-basic .elementor-widget-image-gallery .gallery-item img {
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  object-fit: var(--ege-fit, cover);
  object-position: var(--ege-pos, center center);
  display: block;
  border-radius: var(--ege-radius, 8px);
}

.ege-on.ege-basic .elementor-image-gallery .gallery-caption {
  margin-top: 8px;
}

/* Elementor Gallery widget (background-image tiles) */
.ege-on.ege-widget .elementor-gallery__container .e-gallery-item,
.ege-on.ege-widget .elementor-gallery-item {
  overflow: hidden;
  border-radius: var(--ege-radius, 8px);
}

.ege-on.ege-widget .e-gallery-grid {
  gap: var(--ege-gap, 12px) !important;
}

.ege-on.ege-widget .e-gallery-item .e-gallery-image,
.ege-on.ege-widget .elementor-gallery-item__overlay + .e-gallery-image {
  background-size: cover !important;
  background-position: var(--ege-pos, center center) !important;
}

.ege-on.ege-widget .e-gallery-item {
  aspect-ratio: var(--ege-ratio, 1 / 1);
}

.ege-on.ege-widget .e-gallery-item .e-gallery-image {
  height: 100% !important;
  padding-bottom: 0 !important;
}

/* Gutenberg gallery */
.ege-on.ege-blocks .wp-block-gallery {
  --wp--style--unstable-gallery-gap: var(--ege-gap, 12px);
}

.ege-on.ege-blocks .wp-block-gallery .wp-block-image,
.ege-on.ege-blocks .wp-block-gallery .blocks-gallery-item {
  aspect-ratio: var(--ege-ratio, 1 / 1);
  overflow: hidden;
  border-radius: var(--ege-radius, 8px);
}

.ege-on.ege-blocks .wp-block-gallery img {
  width: 100% !important;
  height: 100% !important;
  object-fit: var(--ege-fit, cover);
  object-position: var(--ege-pos, center center);
}

@media (max-width: 1024px) {
  .ege-on.ege-basic .elementor-image-gallery .gallery,
  .ege-on.ege-basic .elementor-widget-image-gallery .gallery {
    grid-template-columns: repeat(var(--ege-tablet-cols, 2), minmax(0, 1fr)) !important;
  }
}

@media (max-width: 767px) {
  .ege-on.ege-basic .elementor-image-gallery .gallery,
  .ege-on.ege-basic .elementor-widget-image-gallery .gallery {
    grid-template-columns: repeat(var(--ege-mobile-cols, 1), minmax(0, 1fr)) !important;
  }
}
