/*! E-Gallery v1.2.0 by Elementor */
.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-item:not(:hover) .e-gallery-overlay {
    display: none
    }
.e-gallery-item.e-gallery-item--hidden {
    transform: scale3d(0, 0, 0);
    opacity: 0
    }
.e-gallery-image {
    background-position: center center;
    background-size: cover;
    width: 100%;
    transform-origin: center top;
    transition: var(--animation-duration)
    }
.e-gallery-overlay {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    display: flex;
    align-items: center;
    justify-content: space-evenly;
    flex-wrap: wrap;
    flex-direction: column;
    color: #fff;
    background-color: rgba(0, 0, 0, 0.5)
    }
.e-gallery-overlay__title {
    font-size: 24px
    }
.e-gallery-grid:not(.e-gallery--animated) {
    display: grid;
    grid-gap: var(--vgap) var(--hgap);
    grid-template-columns: repeat(var(--columns), 1fr)
    }
.e-gallery-grid:not(.e-gallery--animated) .e-gallery-item--hidden {
    position: absolute
    }
.e-gallery-grid.e-gallery--animated {
    padding-bottom: var(--container-aspect-ratio)
    }
.e-gallery-grid.e-gallery--animated .e-gallery-item {
    position: absolute;
    width: var(--item-width)
    }
.e-gallery-grid .e-gallery-image {
    padding-bottom: var(--aspect-ratio)
    }
.e-gallery-justified {
    padding-bottom: calc(var(--container-aspect-ratio) * 100%)
    }
.e-gallery-justified .e-gallery-item {
    position: absolute;
    height: var(--item-height)
    }
.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
    }
.e-gallery-masonry .e-gallery-image {
    padding-bottom: var(--item-height)
    }
.e-gallery--lazyload .e-gallery-image:not(.e-gallery-image-loaded) {
    filter: opacity(0);
    transform: scale(0.5)
    }