::root {
	--content-width: 1640px;
}

figure {margin: 0;}

/*************************************************
Gallery
*************************************************/
.gallery .grid-item {overflow: hidden;}
.gallery[data-gallery-style="masonry"] .grid-item:nth-child(3) {margin-top: var(--section-space-xs);}
.gallery figure {margin: 0;}
.gallery[data-gallery-style="grid"] {
	align-items: stretch;
    grid-template-columns: repeat(3, minmax(0px, 1fr));
    grid-column-gap: var(--space-xs);
    grid-row-gap: var(--space-xs);
    display: grid;
}

.gallery figure {position: relative;}
.gallery figcaption {
	position: absolute;
	bottom: 0;
    left: 0;
    right: 0;
    background-color: rgba(0, 0, 0, 0.75);
    padding: 1em;
    color: #ffffff;
    font-weight: bold;
    -webkit-font-smoothing: antialiased;
    font-size: 1em;
    text-align: center;
    line-height: var(--oxy-small-line-height);
    /* pointer-events: none; */
    transition: 0.3s ease-in-out opacity;
    display: block;
	    opacity: 0;
}

.gallery figure:hover figcaption,
.gallery figure:focus-within figcaption {opacity: 1;}

.gallery[data-gallery-style="grid"] figure {aspect-ratio: 1 / 1;}

.gallery[data-gallery-style="grid"] a,
.gallery[data-gallery-style="grid"] img {
	height: 100%;
	object-fit: cover;
}

@media (min-width: 992px) {
  .gallery[data-gallery-style="masonry"] .grid-item:nth-child(5) {margin-top: calc(var(--section-space-xs) * .6);}
}

.gallery img {transition: all var(--transition-duration) var(--transition-timing);}
.gallery img:hover,
.gallery img:focus-within {transform: scale(1.025);}

.gallery--aspect-1 img {aspect-ratio: 1 / 1;}
.pswp__caption__center {text-align: center;}

.gallery {
	--gutter: 20px;
	width: 100%;
}
.grid-sizer, .gallery[data-gallery-style="masonry"] .grid-item { width: calc(33.3333% - var(--gutter)); }
.grid-item--width2 { width: calc(66.6666% - var(--gutter));}
.gutter-sizer { width: var(--gutter); }
.gallery[data-gallery-style="masonry"] .grid-item {margin-bottom: var(--gutter);}
.grid-item img {width: 100%; display: block; object-fit: cover;}
.grid-item--width2 img {aspect-ratio: 2 / 1;}
@media (max-width: 991px) {
	.gallery {--gutter: 10px;}
	.gallery[data-gallery-style="grid"] {grid-template-columns: repeat(2, minmax(0px, 1fr));}
}
@media (max-width: 768px) {
	.grid-sizer, .gallery[data-gallery-style="masonry"] .grid-item { width: calc(50% - var(--gutter)); }
	.grid-item--width2 { width: calc(100% - var(--gutter));}
	.gallery[data-gallery-style="grid"] {grid-template-columns: 1fr;}
}

.swiper-gallery {
	--swiper-theme-color: var(--primary);
	--swiper-navigation-size: var(--text-xl);
	
	& .swiper-button-next, & .swiper-button-prev {
		width: var(--swiper-navigation-size);
		border-radius: 50%;
		background-color: var(--white);
		padding: var(--swiper-navigation-size);
		margin-top: calc(0px - (var(--swiper-navigation-size)));
		box-shadow: var(--box-shadow-m);
	}
	
	img {
		border-radius: var(--radius-xl);
		aspect-ratio: 4 / 3;
	}
}

/*************************************************
Swiper
*************************************************/
.swiper {
	width: 100%;
	max-width: 100%;
}

.swiper-slide img {width: 100%; height: 100%; object-fit: cover;}

.swiper-slide {
	height: auto !important;
}

.swiper-wrapper {display: flex;
flex-direction: row;
align-items: stretch;}

.swiper-gallery a {height: 100%;}
.swiper-gallery img {object-fit: cover;}