.fig-gallery {
    --fig-columns: 4;
    --fig-gap: 16px;
    display: grid;
    grid-template-columns: repeat(var(--fig-columns), minmax(0, 1fr));
    gap: var(--fig-gap);
    width: 100%;
}

.fig-gallery--masonry {
    grid-auto-rows: 8px;
    align-items: start;
}

.fig-gallery__item {
    display: block;
    min-width: 0;
    margin: 0;
}

.fig-gallery__link,
.fig-gallery__media {
    display: block;
    width: 100%;
}

.fig-gallery__media {
    overflow: hidden;
    box-sizing: border-box;
}

.fig-gallery--has-frame .fig-gallery__media {
    background: #fff;
    padding: 8px;
}

.fig-gallery__image {
    display: block;
    width: 100%;
    max-width: 100%;
    height: auto;
    margin: 0;
}

.fig-gallery--grid .fig-gallery__image {
    height: 300px;
    object-fit: cover;
}

.fig-gallery__caption {
    margin: 8px 0 0;
    line-height: 1.45;
}

.elementor-editor-active .fig-gallery--masonry .fig-gallery__item {
    transition: none;
}
