/**
 * Layout for classic WordPress shortcode galleries in Elementor post content.
 */

.elementor-widget-theme-post-content .gallery {
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	gap: 1em;
	max-width: 100%;
}

.elementor-widget-theme-post-content .gallery.gallery-columns-1 {
	grid-template-columns: repeat(1, minmax(0, 1fr));
}

.elementor-widget-theme-post-content .gallery.gallery-columns-2 {
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.elementor-widget-theme-post-content .gallery.gallery-columns-3 {
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

.elementor-widget-theme-post-content .gallery.gallery-columns-4 {
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

.elementor-widget-theme-post-content .gallery.gallery-columns-5 {
	grid-template-columns: repeat(5, minmax(0, 1fr));
}

.elementor-widget-theme-post-content .gallery.gallery-columns-6 {
	grid-template-columns: repeat(6, minmax(0, 1fr));
}

.elementor-widget-theme-post-content .gallery.gallery-columns-7 {
	grid-template-columns: repeat(7, minmax(0, 1fr));
}

.elementor-widget-theme-post-content .gallery.gallery-columns-8 {
	grid-template-columns: repeat(8, minmax(0, 1fr));
}

.elementor-widget-theme-post-content .gallery.gallery-columns-9 {
	grid-template-columns: repeat(9, minmax(0, 1fr));
}

.elementor-widget-theme-post-content .gallery .gallery-item {
	box-sizing: border-box;
	/* Needed to override the ID-based inline CSS emitted by classic galleries. */
	float: none !important;
	min-width: 0;
	max-width: none;
	width: 100% !important;
	margin: 0 !important;
}

.elementor-widget-theme-post-content .gallery .gallery-icon,
.elementor-widget-theme-post-content .gallery .gallery-icon a {
	display: block;
	max-width: 100%;
}

.elementor-widget-theme-post-content .gallery .gallery-icon img {
	display: block;
	width: auto;
	max-width: 100%;
	height: auto;
}

.elementor-widget-theme-post-content .gallery .gallery-caption {
	box-sizing: border-box;
	max-width: 100%;
	margin: 0;
	overflow-wrap: anywhere;
}

/* Classic gallery markup can contain clearing elements between rows. */
.elementor-widget-theme-post-content .gallery > br {
	display: none;
}

@media (max-width: 1024px) {
	.elementor-widget-theme-post-content .gallery.gallery-columns-4,
	.elementor-widget-theme-post-content .gallery.gallery-columns-5,
	.elementor-widget-theme-post-content .gallery.gallery-columns-6,
	.elementor-widget-theme-post-content .gallery.gallery-columns-7,
	.elementor-widget-theme-post-content .gallery.gallery-columns-8,
	.elementor-widget-theme-post-content .gallery.gallery-columns-9 {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

@media (max-width: 767px) {
	.elementor-widget-theme-post-content .gallery.gallery-columns-2,
	.elementor-widget-theme-post-content .gallery.gallery-columns-3,
	.elementor-widget-theme-post-content .gallery.gallery-columns-4,
	.elementor-widget-theme-post-content .gallery.gallery-columns-5,
	.elementor-widget-theme-post-content .gallery.gallery-columns-6,
	.elementor-widget-theme-post-content .gallery.gallery-columns-7,
	.elementor-widget-theme-post-content .gallery.gallery-columns-8,
	.elementor-widget-theme-post-content .gallery.gallery-columns-9 {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}
