.zyre-addon-image-grid .zyre-image-grid-item {
	--image-grid-column: 3;
	text-decoration: none;
	outline: 0;
    float: left;
    width: calc(100% / var(--image-grid-column));
}

.zyre-image-grid-content-display--overlay .zyre-image-grid-item-inner {
	--height: 356px;
	height: calc(var(--height) * var(--item-span-height, 1));
}

.zyre-addon-image-grid .zyre-image-grid-filter-tab {
	display: inline-flex;
}

.zyre-addon-image-grid .zyre-image-grid-item-img-wrapper {
	height: 100%;
}

.zyre-addon-image-grid .zyre-image-grid-item img {
	width: 100%;
	height: 100%;
}

.zyre-addon-image-grid .zyre-image-grid-filter-tab,
.zyre-addon-image-grid .zyre-image-grid-item-inner,
.zyre-addon-image-grid .zyre-image-grid-item-content,
.zyre-addon-image-grid .zyre-image-grid-item-content > * {
	transition: var(--zy-transition);
}

.zyre-image-grid-content-display--overlay .zyre-image-grid-item-content,
.zyre-addon-image-grid .zyre-image-grid-item-content::before,
.zyre-addon-image-grid .zyre-image-grid-open-lightbox-btn {
	transition: opacity 0.5s;
}

.zyre-image-grid-content-display--overlay .zyre-image-grid-item-content {
	overflow: hidden;
}

.zyre-addon-image-grid .zyre-image-grid-item-content::before {
	content: "";
    left: 0;
    top: 0;
    bottom: 0;
    right: 0;
    position: absolute;
    z-index: 0;
	opacity: 0;
}

.zyre-addon-image-grid:not(.zyre-image-grid-content-display--overlay) .zyre-image-grid-item-content:hover::before,
.zyre-addon-image-grid.zyre-image-grid-content-display--overlay .zyre-image-grid-item:hover .zyre-image-grid-item-content::before {
	opacity: 1;
}

.zyre-addon-image-grid .zyre-image-grid-item-content > * {
	position: relative;
	z-index: 1;
}

.zyre-addon-image-grid .zyre-image-grid-open-lightbox-btn {
    width: 32px;
    height: 32px;
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    background-color: rgba(0, 0, 0, 0.5);
    border-radius: 50%;
    align-content: center;
    text-align: center;
    text-decoration: none;
    outline: 0;
	z-index: 2;
	opacity: 0;
}

.zyre-addon-image-grid .zyre-image-grid-open-lightbox-btn svg {
	fill: #fff;
	margin: 0 auto;
}

.zyre-addon-image-grid .zyre-image-grid-item:hover .zyre-image-grid-open-lightbox-btn {
	opacity: 1;
}