/* Galleries: uniform 4:3 images, 2 per row on mobile */

/* Classic [gallery] shortcode */
body .gallery {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin: 0 0 1.5em;
}
body .gallery .gallery-item {
    float: none;
    margin: 0;
    padding: 0;
    width: calc((100% - 20px) / 3);
    max-width: none;
}
body .gallery.gallery-columns-2 .gallery-item { width: calc((100% - 10px) / 2); }
body .gallery.gallery-columns-4 .gallery-item { width: calc((100% - 30px) / 4); }
body .gallery .gallery-icon,
body .gallery .gallery-icon a {
    display: block;
    aspect-ratio: 4 / 3;
    overflow: hidden;
}
body .gallery .gallery-icon img {
    display: block;
    width: 100%;
    height: 100%;
    max-width: none;
    object-fit: cover;
    margin: 0;
}
@media (max-width: 767px) {
    body .gallery .gallery-item,
    body .gallery.gallery-columns-3 .gallery-item,
    body .gallery.gallery-columns-4 .gallery-item {
        width: calc((100% - 10px) / 2);
    }
}

/* Gutenberg gallery block */
body .wp-block-gallery.has-nested-images figure.wp-block-image,
body .wp-block-gallery.has-nested-images figure.wp-block-image a {
    aspect-ratio: 4 / 3;
    overflow: hidden;
}
body .wp-block-gallery.has-nested-images figure.wp-block-image img {
    width: 100%;
    height: 100%;
    aspect-ratio: 4 / 3;
    object-fit: cover;
}
@media (max-width: 767px) {
    body .wp-block-gallery.has-nested-images.columns-3 figure.wp-block-image:not(#individual-image),
    body .wp-block-gallery.has-nested-images.columns-default figure.wp-block-image:not(#individual-image) {
        width: calc(50% - var(--wp--style--unstable-gallery-gap, 16px) / 2);
        flex-grow: 0;
    }
}
