/*
.swiper-container > .swiper-wrapper > .swiper-slide
.swipe-container.full == full screen
.swiper-container.min == absolute controls
*/


/****************************/
/****************************/
/********** GLOBAL **********/
/****************************/
/****************************/

/********** DEFAULT **********/

.swiper-container {
	position:relative;
	width:100%;
}

/********** SWIPER-SLIDE **********/

.swiper-slide {
	display:block;
	margin:0;
	opacity:0;
}
.swiper-slide-active {
	opacity:1;
}

/********** SWIPER-SLIDE-CONTENT **********/

.swiper-container .swiper-slide .swiper-slide-content {
	position:relative;
	height:100%;
	width:100%;
}

/********** VERTICAL-CENTERED **********/

.swiper-container.vertical-centered .swiper-wrapper {
	-webkit-box-align:center;
	-webkit-align-items:center;
	   -moz-box-align:center;
	    -ms-flex-align:center;
	        align-items:center;
}

/********** @MEDIA **********/

@media (min-width:0px) {
	.swiper-container.full .swiper-slide .swiper-slide-content {
		padding:3.5rem 1.5rem;
	}
}
@media (min-width:760px) {
	.swiper-container.full .swiper-slide .swiper-slide-content {
		padding:6rem;
	}
}

/********** MOBILE 100VH FIX **********/

@media (max-width:760px) {
	body.mobile .swiper-container.full .swiper-slide .swiper-slide-content {
		padding-bottom:10rem;
		-webkit-transition:padding .25s ease;
		-o-transition:padding .25s ease;
		-moz-transition:padding .25s ease;
		transition:padding .25s ease;
	}
	body.mobile.scrolled.end .swiper-container.full .swiper-slide .swiper-slide-content {
		padding-bottom:3.5rem;
	}
}

/******************************/
/******************************/
/********** ON / OFF **********/
/******************************/
/******************************/
/* JS > if < 2 slides */

.swiper-container.off .swiper-wrapper {
	-webkit-transform: translate3d(0,0,0) !important;
	   -moz-transform: translate3d(0,0,0) !important;
	        transform: translate3d(0,0,0) !important;
}
.swiper-container.off .swiper-controls .previous,
.swiper-container.off .swiper-controls .next,
.swiper-container.off + .swiper-controls .previous,
.swiper-container.off + .swiper-controls .next {
	display: none;
}

/********************************/
/********************************/
/********** NAVIGATION **********/
/********************************/
/********************************/

/*.swiper-controls > .previous + .swiper-pagination + .next */

/*****************************/
/********** DEFAULT **********/
/*****************************/

.swiper-controls {
	position:relative;
	z-index:10;
	width:100%;
	display:-webkit-inline-box;
	display:-webkit-inline-flex;
	display:-moz-inline-box;
	display:-ms-inline-flexbox;
	display:inline-flex;
	-webkit-box-align:center;
	-webkit-align-items:center;
	   -moz-box-align:center;
	    -ms-flex-align:center;
	        align-items:center;
	-webkit-box-pack: justify;
	-webkit-justify-content: space-between;
	   -moz-box-pack: justify;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
	line-height:1em;
	min-height:1em;
	margin:0;
	pointer-events:none;
}
.swiper-controls > * {
	z-index:100;
	margin:0;
	pointer-events:auto;
}

/*************************************/
/********** NEXT / PREVIOUS **********/
/*************************************/

.swiper-controls .previous,
.swiper-controls .next {
	display:-webkit-inline-box;
	display:-webkit-inline-flex;
	display:-moz-inline-box;
	display:-ms-inline-flexbox;
	display:inline-flex;
	-webkit-box-align:center;
	-webkit-align-items:center;
	   -moz-box-align:center;
	    -ms-flex-align:center;
	        align-items:center;
	pointer-events:auto;
}
.swiper-controls .previous {
	left:0;
	-webkit-box-ordinal-group:2;
	-webkit-order:1;
	   -moz-box-ordinal-group:2;
	    -ms-flex-order:1;
	        order:1;
}
.swiper-controls .next {
	right:0;
	-webkit-box-ordinal-group:4;
	-webkit-order:3;
	   -moz-box-ordinal-group:4;
	    -ms-flex-order:3;
	        order:3;
}
.swiper-controls .previous:before,
.swiper-controls .next:after {
	font-family:'icomoon';
	display:block;
}
.swiper-controls .swiper-button-disabled {
	opacity:.25;
	pointer-events:none !important;
}

/********************************/
/********** PAGINATION **********/
/********************************/

.swiper-pagination {
	position:relative;
	z-index:10;
	display:-webkit-inline-box;
	display:-webkit-inline-flex;
	display:-moz-inline-box;
	display:-ms-inline-flexbox;
	display:inline-flex;
    -webkit-box-pack:center;
    -webkit-justify-content:center;
       -moz-box-pack:center;
        -ms-flex-pack:center;
            justify-content:center;
	-webkit-box-ordinal-group:3;
	-webkit-order:2;
	   -moz-box-ordinal-group:3;
	    -ms-flex-order:2;
	        order:2;
}
.swiper-pagination-bullet {
	height:1em;
	width:2em;
	opacity:.25;
	background:none;
	-webkit-box-shadow:inset 0 0 0 .125em;
	   -moz-box-shadow:inset 0 0 0 .125em;
	        box-shadow:inset 0 0 0 .125em;
}
.swiper-pagination-bullet-active {
	opacity:1;
}

/********************************/
/********** SWIPER MIN **********/
/********************************/

.swiper-container.min .swiper-controls {
	position:absolute;
	top:0;
	height:100%;
}
.swiper-container.min .swiper-controls .previous,
.swiper-container.min .swiper-controls .next {
	position:absolute;
	top:50%;
	-webkit-transform:translate3d(0,-50%,0);
	   -moz-transform:translate3d(0,-50%,0);
	        transform:translate3d(0,-50%,0);
}
.swiper-container.min .swiper-pagination {
	position:absolute;
	top:100%;
	-webkit-transform:translate3d(0,100%,0);
	   -moz-transform:translate3d(0,100%,0);
	        transform:translate3d(0,100%,0);
}

/****************************/
/********** ONLOAD **********/
/****************************/

.swiper-container.onload .swiper-controls .previous,
.swiper-container.onload .swiper-controls .next {
	opacity:0;
}
.swiper-container.onload .swiper-controls .previous {
	-webkit-transform:translate3d(-100%,-50%,0);
	   -moz-transform:translate3d(-100%,-50%,0);
	        transform:translate3d(-100%,-50%,0);
}
.swiper-container.onload .swiper-controls .next {
	-webkit-transform:translate3d(100%,-50%,0);
	   -moz-transform:translate3d(100%,-50%,0);
	        transform:translate3d(100%,-50%,0);
}

/****************************/
/********** @MEDIA **********/
/****************************/

.swiper-controls {
	font-size:2em;
	padding: 0 var(--global-margin);
}

/** desktop **/

@media (min-width:760px) {
	.swiper-container.min .swiper-controls {
		left:-webkit-calc(var(--global-margin) * -1);
		left:-moz-calc(var(--global-margin) * -1);
		left:calc(var(--global-margin) * -1);
		width:-webkit-calc(100vw + var(--global-margin) * 2);
		width:-moz-calc(100vw + var(--global-margin) * 2);
		width:calc(100vw + var(--global-margin) * 2);
		padding:0 var(--global-margin);
	}
}

/** mobile **/

@media (max-width:760px) {
	.swiper-container.min .swiper-slide .swiper-slide-content {
		width:-webkit-calc(100vw - 5em);
		width:-moz-calc(100vw - 5em);
		width:calc(100vw - 5em);
		margin-left:auto;
		margin-right:auto;
	}
	.swiper-container.min .swiper-controls {
		left:50%;
		width:100vw;
		-webkit-transform:translate3d(-50%,0,0);
		   -moz-transform:translate3d(-50%,0,0);
		        transform:translate3d(-50%,0,0);
	}
}

/********************************/
/********************************/
/********** SWIPERABLE **********/
/********************************/
/********************************/
/* grid <> swiper */

.swiper-container.swiperable {
	overflow-x:hidden;
}
.swiper-container.swiperable .items {
	-webkit-box-pack:unset;
	-webkit-justify-content:unset;
	   -moz-box-pack:unset;
	    -ms-flex-pack:unset;
	        justify-content:unset;
	gap:0;
	display:-webkit-box;
	display:-webkit-flex;
	display:-moz-box;
	display:-ms-flexbox;
	display:flex;
}
.swiper-container.swiperable .swiper-slide {
	position:relative;
	display:-webkit-box;
	display:-webkit-flex;
	display:-moz-box;
	display:-ms-flexbox;
	display:flex;
	height:auto;
}
.swiper-container.swiperable .swiper-slide.empty {
	display:none;
}
.swiper-container.swiperable .item-content {
	position:relative;
	display:-webkit-box;
	display:-webkit-flex;
	display:-moz-box;
	display:-ms-flexbox;
	display:flex;
	-webkit-box-orient:vertical;
	-webkit-box-direction:normal;
	-webkit-flex-direction:column;
	   -moz-box-orient:vertical;
	   -moz-box-direction:normal;
	    -ms-flex-direction:column;
	        flex-direction:column;
	-webkit-box-align:center;
	-webkit-align-items:center;
	   -moz-box-align:center;
	    -ms-flex-align:center;
	        align-items:center;
	width:100%;
	margin:0;
}
.swiper-container .swiper-slide .item-bg {
	width:100%;
	max-width:none;
}
.swiper-container.swiperable .grid-message {
	display:none;
}

/********** @MEDIA **********/

.swiper-container.swiperable {
	margin-left:-webkit-calc(var(--global-margin) * -2);
	margin-left:-moz-calc(var(--global-margin) * -2);
	margin-left:calc(var(--global-margin) * -2);
	margin-right:-webkit-calc(var(--global-margin) * -2);
	margin-right:-moz-calc(var(--global-margin) * -2);
	margin-right:calc(var(--global-margin) * -2);
	width:-webkit-calc(100% + -webkit-calc(var(--global-margin) * 4));
	width:-moz-calc(100% + -moz-calc(var(--global-margin) * 4));
	width:calc(100% + calc(var(--global-margin) * 4));
	padding:0 -webkit-calc(var(--global-margin) * 2);
	padding:0 -moz-calc(var(--global-margin) * 2);
	padding:0 calc(var(--global-margin) * 2);
}
.large .swiper-container.swiperable {
	margin-left:-webkit-calc(var(--global-margin) * -1);
	margin-left:-moz-calc(var(--global-margin) * -1);
	margin-left:calc(var(--global-margin) * -1);
	margin-right:-webkit-calc(var(--global-margin) * -1);
	margin-right:-moz-calc(var(--global-margin) * -1);
	margin-right:calc(var(--global-margin) * -1);
	width:-webkit-calc(100% + -webkit-calc(var(--global-margin) * 2));
	width:-moz-calc(100% + -moz-calc(var(--global-margin) * 2));
	width:calc(100% + calc(var(--global-margin) * 2));
	padding:0 -webkit-calc(var(--global-margin));
	padding:0 -moz-calc(var(--global-margin));
	padding:0 calc(var(--global-margin));
}
.swiper-container.swiperable .swiper-slide:not(:first-child) {
	margin:0 0 0 var(--grid-gap);
}