.e-gallery-container {
	position: relative;
	display: flex;
	flex-wrap: wrap;
}

.e-gallery-container:not(.e-gallery-grid) {
	transition: padding-bottom var(--animation-duration);
}

.e-gallery-item {
	position: relative;
	flex-grow: 0;
	flex-shrink: 0;
	transition-property: all;
	transition-duration: var(--animation-duration);
}

.e-gallery-image {
	background-position: center center;
	background-size: cover;
	width: 100%;
	transform-origin: center top;
	transition: var(--animation-duration);
}

.e-gallery-justified {
	padding-bottom: calc(var(--container-aspect-ratio) * 100%);
}

.e-gallery-justified .e-gallery-item {
	position: absolute;
	width: calc(var(--item-width) * ( 100% - var(--hgap) * var(--gap-count) ));
	height: var(--item-height);
	top: calc(var(--item-top) + ( var(--row) * var(--vgap) ));
}

.e-gallery-justified .e-gallery-image {
	height: 100%;
}

.e-gallery-masonry {
	height: 0;
	margin-bottom: calc(var(--highest-column-gap-count) * var(--vgap));
}

.e-gallery-masonry .e-gallery-item {
	position: absolute;
	width: calc(100% / var(--columns) - ( var(--hgap) * ( var(--columns) - 1 ) / var(--columns) ));
	top: calc(var(--percent-height) + ( var(--items-in-column) * var(--vgap) ));
}

.e-gallery-masonry .e-gallery-image {
	padding-bottom: var(--item-height);
}

.e-gallery--ltr.e-gallery-justified .e-gallery-item {
	left: calc(var(--item-start) * ( 100% - var(--hgap) * var(--gap-count) ) + var(--hgap) * var(--item-row-index));
}

.e-gallery--ltr.e-gallery-masonry .e-gallery-item {
	left: calc(( 100% / var(--columns) - ( var(--hgap) * ( var(--columns) - 1 ) / var(--columns) ) ) * var(--column) + ( var(--hgap) * var(--column) ));
}