/* Static overrides to replace dynamic carousels with grids and ensure visibility */

/* Generic resets for Squarespace gallery wrapper heights */
.gallery, .gallery-section-wrapper, .gallery-reel, .gallery-reel-wrapper {
  min-height: 0 !important;
  height: auto !important;
}

/* Screenshot gallery: display all slides in a responsive grid */
.gallery .gallery-reel-list {
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap: 20px !important;
  transform: none !important;
}
.gallery .gallery-reel-item {
  position: static !important;
  width: auto !important;
  height: auto !important;
}
.gallery .gallery-reel-item-wrapper,
.gallery .gallery-reel-item-src {
  position: static !important;
  width: 100% !important;
  height: auto !important;
}
.gallery .gallery-reel-item img {
  width: 100% !important;
  height: auto !important;
  object-fit: cover !important;
}

/* Hide any gallery navigation/controls that won't function statically */
.gallery [data-test="gallery-controls"],
.gallery .gallery-navigation,
.gallery .gallery-bullets,
.gallery .gallery-controls {
  display: none !important;
}

/* Reviews carousel: display as grid */
.user-items-list-carousel__slides {
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
  gap: 20px !important;
  transform: none !important;
}
.user-items-list-carousel__slide {
  width: auto !important;
}
.user-items-list-carousel__slideshow-holder,
.user-items-list-carousel__slides-revealer {
  overflow: visible !important;
}
.user-items-list-carousel__media-container,
.user-items-list-carousel__media-inner {
  width: 100% !important;
  height: auto !important;
}
.user-items-list-carousel__media {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  object-fit: cover !important;
}

/* Hide non-functional carousel arrows/pagination */
.user-items-list-carousel__arrow-wrapper,
.user-items-list-carousel__pagination {
  display: none !important;
}

/* Section backgrounds: ensure background image covers when present */
.section-background .background-image-fx,
.section-background .section-background-content img.background-image-fx {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
}

/* Ensure lazy placeholders are visible */
[data-load="false"] {
  opacity: 1 !important;
}

/* Blog lists: avoid accidental overflow clipping */
.blog, .collection-type-blog, .sqs-blog, .blog-collection,
.blog .content, .collection-type-blog .content {
  overflow: visible !important;
}
