.notransition {
	transition: none !important;
}

.slider {
	display: block;
	position: relative;
}

.slider .slides {
	position: relative;
	width: 100%;
	overflow: hidden;
}

.slider .slides > * {
	display: flex;
    position: relative;
	transition: transform 1.2s cubic-bezier(0.6,0,0.4,1);
    z-index: 1;

    -webkit-backface-visibility: hidden;
    -webkit-transform-style: preserve-3d;
}

.slider .slides.touch > * {
	transition: transform 0.4s cubic-bezier(0,0.6,0.4,1);
}

.slider .slides > * > * {
	display: block;
	position: relative;
    z-index: 2;
}

.slider li img, 
.slider li picture img,
.slider article img, 
.slider article picture img {
	width: 100%;
	height: 100%;
    object-fit: cover;
}

.slider.fadein .slides > * {
	display: block;
}

.slider.fadein .slides > * > * {
	display: block;
	position: absolute;
    opacity: 0;
	transition: opacity 1.2s linear;
    z-index: 10;
}

.slider.fadein .slides > * > *.active,
.slider.zoomin .slides > * > *.active {
    opacity: 1;
    z-index: 20;
}

.slider.fadein .slides > * > *:only-child {
	animation: kf-slider-fade-in 1.2s linear 0s both;
    z-index: 20;
}

.slider.fadein.zoomin .slides > * > *:only-child > * {
	animation: kf-slider-fade-in 1.2s linear 0s both;
}

@keyframes kf-slider-fade-in {
    0% {
		opacity: 0;
	}
    100% {
		opacity: 1;
	}
}

.slider.zoomin .slides > * > *:only-child {
	opacity: 1;
	animation: kf-slider-zoom-in 6.2s cubic-bezier(0.4,0,0.6,1) 0s both;
    z-index: 20;
}

@keyframes kf-slider-zoom-in {
    0% {
		transform: scale(1);
	}
	100% {
		transform: scale(1.15);
	}
}

.slider.fadein li.transition {
    transition: opacity linear 1.2s;
}

.slider.fadein li.transition picture {
    transition: transform linear 6.2s 0s;
}

.slider.zoomin li picture {
    overflow: hidden;
}

.slider.zoomin li.transition picture {
    transform: scale(1.15);
    transition: transform cubic-bezier(0.4,0,0.6,1) 6.2s 0s;
}

.slider.pan li picture {
    transform: scale(1.15);
    transform-origin: left center;
}

.slider.pan li.transition picture {
    transform-origin: right center;
    transition: transform-origin linear 6.2s 0s;
}

.slider .ctrl-arr {
    display: flex;
    justify-content: space-between;
    width: 40px;
}

.slider .ctrl-arr button {
	display: block;
	width: 12px;
	height: 12px;
}

.slider .ctrl-arr button:after {
    content: "";
    display: block;
    width: 8px;
    height: 8px;
    border-bottom: solid 1px rgb(var(--color-grey-94));
    border-left: solid 1px rgb(var(--color-grey-94));
    transform: rotate(45deg);
}

.slider .ctrl-arr button:disabled {
    pointer-events: none;
    opacity: 0.2;
}

.slider .ctrl-arr button[data-dir="next"] {
    transform: rotate(180deg);
}

/*.slider .ctrl-bts {
    display: none;
}

.slider .ctrl-bts.show {
    display: flex;
    flex-flow: row wrap;
}

.slider .ctrl-bts button {
	display: block;
	width: 8px;
	height: 8px;
	background-color: rgba(var(--color-black),0.5);
	border-radius: 4px;
	padding: 0;
	transition: background-color 0.4s;
}

.slider .ctrl-bts button + button {
    margin: 0 0 0 5px;
}

.slider .ctrl-bts button.ctrl-bt-on {
	background-color: rgba(var(--color-grey-94),0.5);
}*/

.slider .ctrl-bts {
    display: none;
}

.slider .ctrl-bts.show {
    display: flex;
    flex-flow: row wrap;
	column-gap: 8px;
}

.slider .ctrl-bts button {
	display: block;
	width: 8px;
	height: 8px;
	background-color: rgba(var(--color-white),1);
	border-radius: 4px;
	padding: 0;
	transition: background-color 0.4s;
}

.slider .ctrl-bts button.ctrl-bt-on {
	background-color: rgba(var(--color-orange),1);
}

.slider .slider-status {
    display: none;
	color: rgb(var(--color-grey-94));
	font-size: 16px;
	line-height: 1.2em;
}

.slider .slider-status.show {
    display: block;
}

.slider .box-shadow {
	display: none;
}


/*************************************
	Header
 *************************************/


/*section.header .slider, 
section.header .slider li,
section.header .slider picture,
section.header .slider img {
	width: 100vw;
}

section.header, 
section.header .slider, 
section.header .slider .slides, 
section.header .slider ul, 
section.header .slider li,
section.header .slider picture {
	height: calc((1200/1920) * 100vw);
}

section.header figcaption {
	display: none;
}

@media screen and (max-width: 640px) {
	section.header,
	section.header .slider {
		height: auto;
	}
	
	section.header .slider .slides, 
	section.header .slider ul, 
	section.header .slider li,
	section.header .slider picture,
	section.header .slider img {
		height: 110vw;
	}
}*/

section.header div.slider {
	max-width: none;	
	opacity: 0;
}

section.header div.slider:before {
	content: "";
	display: block;
	position: absolute;
	width: 100%;
	height: calc(100% + calc((40 / 1280) * 100vw));
	left: 0;
	top: calc((-20 / 1280) * 100vw);
	background-image: linear-gradient(rgba(var(--color-black),0), rgba(var(--color-black),1) calc((20 / 1280) * 100vw), rgba(var(--color-black),1) calc(100% - ((20 / 1280) * 100vw)), rgba(var(--color-black),0) 100%);
	opacity: 0.25;
}

section.header div.slider.show {
	opacity: 1;
    transition: opacity 0.6s linear;
}

section.header .slides,
section.header .slides > ul > li,
section.header .slides > ul > li picture,
section.header .slides > ul > li picture img,
section.header .slides > div > article,
section.header .slides > div > article picture,
section.header .slides > div > article picture img {
    display: block;
    position: relative;
    width: 100vw;
	height: max(min(460px, 60vw), (830 / 1920) * 100vw);
}

section.header .slides {
	margin: 0 auto;
}

section.header .slider .ctrl-arr {
	position: absolute;
    width: min(610px, 100vw - 40px);
	left: 0;
	right: 0;
	top: 50%;
	margin: 0 auto;
	transform: translateY(-50%);
	z-index: 10;
}

section.header .slider .ctrl-bts {
	justify-content: center;
	position: absolute;
    width: min(650px, 100vw);
	left: 0;
	right: 0;
	bottom: calc(20px + ((105 / 1920) * 100vw));
	margin: 0 auto;
	z-index: 10;
}

section.header .slider div.text {
	position: sticky;
	bottom: 0;
	z-index: 2;
}

/*section.header .slider div.text h2 {
	display: block;
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	background-image: linear-gradient(rgba(var(--color-black),0), rgba(var(--color-black),0.95));
	text-shadow: 0 0 10px rgb(255,255,0);
	padding: 48px 0;
	animation: kf-h2-glow 0.8s linear alternate infinite;
}*/

section.header .slider div.text div.text-container {
	display: grid;
	justify-content: center;
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	background-image: linear-gradient(rgba(var(--color-black),0), rgba(var(--color-black),0.95));
	color: rgb(var(--color-white));
	text-align: center;
	/*margin: 0 auto;*/
	padding: 96px 0 calc(48px + ((105 / 1920) * 100vw)) 0;
}


/*************************************
	Slideshow
 *************************************/


.slider.slideshow {
	overflow: visible;
}

.slider.slideshow, 
.slider.slideshow li,
.slider.slideshow li img {
	position: relative;
	width: calc((1215/1920) * 100vw);
}

.slider.slideshow, 
.slider.slideshow .slides, 
.slider.slideshow ul, 
.slider.slideshow li {
	height: calc((835/1920) * 100vw);
}

.slider.slideshow.reverse {
	margin-left: auto;
}

.slider.slideshow.reverse .ctrl_arr,
.slider.slideshow.reverse .ctrl-arr {
	right: auto;
	left: 0;
}

.slider.slideshow.reverse.nav-btm .ctrl_arr,
.slider.slideshow.reverse.nav-btm .ctrl-arr {
	top: auto;
	bottom: 0;
	transform: translate(-150%, 0);
}


@media screen and (max-width: 640px) {
	/*.slider {
		overflow: auto;	
	}*/

	.slider .ctrl_arr, 
	.slider.slideshow.reverse .ctrl_arr, 
	.slider.slideshow.reverse.nav-btm .ctrl_arr,
	.slider .ctrl-arr, 
	.slider.slideshow.reverse .ctrl-arr, 
	.slider.slideshow.reverse.nav-btm .ctrl-arr {
		position: relative;
		left: auto;
		right: auto;
		top: auto;
		transform: none;
		padding: calc((25 / 640) * 100vw) calc((50 / 640) * 100vw);
	}

	section.intro.bckg-lavender .ctrl_arr,
	section.intro.bckg-lavender .ctrl-arr {
		width: calc((590 / 640) * 100vw);
		background: rgb(var(--lavender));
	}

	/*section.header .slider .slides, 
	section.header .slider ul, 
	section.header .slider li {
		height: calc((650 / 640) * 100vw);
	}

	section.header, 
	section.header .slider {
		height: auto;
	}*/

	section.header .slider .ctrl_arr,
	section.header .slider .ctrl-arr {
		padding: 0;
	}

	.slider.slideshow, 
	.slider.slideshow li,
	.slider.slideshow li img {
		width: 100vw;
	}

	.slider.slideshow .slides, 
	.slider.slideshow ul, 
	.slider.slideshow li {
		height: 100vw;
	}

	.slider.slideshow {
		height: auto;
	}
}