/* Native Gallery: preserve image proportions and flow photos into columns. */
.harfang-masonry-section { padding: clamp(2rem, 5vw, 4rem) var(--gutter, 1.5rem); }
.harfang-masonry-section > .wp-block-gallery { width: min(1180px, 100%); margin-inline: auto; }
.wp-block-gallery.has-nested-images.is-style-harfang-masonry {
	display: block;
	--harfang-masonry-columns: 3;
	--harfang-masonry-gap: 1.25rem;
	column-gap: var(--harfang-masonry-gap);
}
/* Keep Gutenberg's empty media picker at full width. */
.wp-block-gallery.has-nested-images.is-style-harfang-masonry:has(> .wp-block-image) { column-count: var(--harfang-masonry-columns); }
.wp-block-gallery.is-style-harfang-masonry.columns-1 { --harfang-masonry-columns: 1; }
.wp-block-gallery.is-style-harfang-masonry.columns-2 { --harfang-masonry-columns: 2; }
.wp-block-gallery.is-style-harfang-masonry.columns-4 { --harfang-masonry-columns: 4; }
.wp-block-gallery.is-style-harfang-masonry.columns-5 { --harfang-masonry-columns: 5; }
.wp-block-gallery.is-style-harfang-masonry.columns-6 { --harfang-masonry-columns: 6; }
.wp-block-gallery.is-style-harfang-masonry.columns-7 { --harfang-masonry-columns: 7; }
.wp-block-gallery.is-style-harfang-masonry.columns-8 { --harfang-masonry-columns: 8; }
.wp-block-gallery.has-nested-images.is-style-harfang-masonry > figure.wp-block-image:not(#individual-image) {
	display: block;
	width: 100%;
	max-width: 100%;
	height: auto;
	margin: 0 0 var(--harfang-masonry-gap);
	break-inside: avoid;
	page-break-inside: avoid;
}
.wp-block-gallery.has-nested-images.is-style-harfang-masonry > figure.wp-block-image img {
	display: block;
	width: 100%;
	height: auto;
	/* Preserve the ratio from width/height attributes, including lazy-loaded
	   images with sizes="auto" whose intrinsic size is contained by WordPress. */
	object-fit: contain;
	border-radius: 16px;
}
.wp-block-gallery.has-nested-images.is-style-harfang-masonry > .blocks-gallery-caption { column-span: all; }
.editor-styles-wrapper .is-style-harfang-masonry > .block-list-appender { position: relative; column-span: all; }
@media (max-width: 900px) {
	.wp-block-gallery.has-nested-images.is-style-harfang-masonry:has(> .wp-block-image) { column-count: min(2, var(--harfang-masonry-columns)); }
}
@media (max-width: 540px) {
	.wp-block-gallery.has-nested-images.is-style-harfang-masonry:has(> .wp-block-image) { column-count: 1; }
}
