.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.init .slides > * > *:nth-child(1) {
    opacity: 1;
}

.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 li.transition {
    transition: opacity linear 1.2s;
}

.slider.zoomin li picture {
    overflow: hidden;
    transition: transform 0s 1.2s linear;
}

.slider.zoomin li.active picture {
    transform: scale(1.05);
    transition: transform 8s 0s linear;
}

.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: none;
    justify-content: space-between;
	position: absolute;
    width: min(calc(var(--base-w) * 1px) - (var(--page-margin) * 2), 100vw - (var(--page-margin) * 2));
	/*top: calc(min(90px, (90 / var(--base-w)) * 100vw) + (1.2222em / 2));*/
	top: calc(min(45px, (45 / var(--base-w)) * 100vw) + (1.2222em / 2));
	font-size: 45px;
	z-index: 20;
}

@media screen and (max-width: 960px) {
	.slider .ctrl-arr {
		width: calc(100vw - (var(--page-margin-mobile) * 4));
		left: calc(var(--page-margin-mobile) * 2);
		top: calc((var(--page-margin-mobile) * 1.5) + (1.2222em / 2));
		font-size: min(24px, (24 / var(--base-w-mobile)) * 100vw);
	}
}

.slider .ctrl-arr.show {
    display: flex;
}

.slider .ctrl-arr button {
	display: block;
	width: 12px;
	height: 34px;
	background: url("../images/ico-arrow-slideshow.svg") center center no-repeat;
	background-size: contain;
	transform: translateY(-50%);
}

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

.slider .ctrl-arr button[data-dir="prev"] {
	opacity: 0;
	pointer-events: none;
}

.slider .ctrl-arr button[data-dir="next"] {
    transform: scaleX(-100%) translateY(-50%);
}

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

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

.slider .ctrl-bts button {
	display: block;
	width: 15px;
	height: 15px;
	background-color: rgb(var(--color-beige-3));
	padding: 0;
	transition: background-color 0.4s;
}

.slider .ctrl-bts button.ctrl-bt-on {
	background-color: rgb(var(--color-khaki-1));
}

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

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

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

figcaption {
	display: none;
}

figure figcaption {
	display: block;
}


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


section.header .slider,
section.header .slider .slides,
section.header .slider .slides li,
section.header .slider .slides picture {
	display: block;
	width: calc(min(1920px, 100vw) - min(100px, (100 / var(--base-w)) * 100vw));
    height: var(--header-img-h);
}

section.header.small .slider,
section.header.small .slider .slides,
section.header.small .slider .slides li,
section.header.small .slider .slides picture {
	height: var(--header-small-img-h);
}

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

.slider .ctrl-bts {
	position: absolute;
	left: calc(max(0px, 50vw - 700px) + var(--page-margin));
	bottom: min(65px, (165 / 1400) * 100vw);
	z-index: 20;
}

@media screen and (max-width: 960px) {
	section.header .slider,
	section.header .slider .slides,
	section.header .slider .slides li,
	section.header .slider .slides picture {
		width: 100vw;
	    height: var(--header-img-h-mobile);
	}
	
	section.header .slider {
	    height: auto;
	}
	
	section.header.small .slider,
	section.header.small .slider .slides,
	section.header.small .slider .slides li,
	section.header.small .slider .slides picture {
		width: calc(100vw - (var(--page-margin-mobile) * 2));
		height: var(--realisations-img-h-mobile);
	}
}


/*************************************
	Inline
 *************************************/


.slider.inline {
	display: flex;
	flex-direction: column;
	/*row-gap: min(75px, (75 / var(--base-w)) * 100vw);*/
	row-gap: min(34px, (34 / var(--base-w)) * 100vw);
}

.slider.inline h2 {
	order: 1;
}

.slider.inline .slides {
	order: 2;
}

.slider.inline .slides ul {
	column-gap: var(--grid-gap);
}

.slider.inline .slides li,
.slider.inline .slides picture {
	display: block;
	width: calc((var(--grid-column-w) * 4) + (var(--grid-gap) * 3));
	/*height: calc(((var(--grid-column-w) * 4) + (var(--grid-gap) * 3)) * (255 / 350));*/
	height: calc((var(--grid-column-w) * 4) + (var(--grid-gap) * 3));
}

.slider.inline .slides li {
	height: auto;
}

/*.slider.inline .slides li .text {
	color: rgb(var(--color-charcoal));
	font-weight: 300;
	font-size: min(30px, (30 / var(--base-w)) * 100vw);
	line-height: 1.2222em;
	margin-top: 0.2em;
}*/

@media screen and (max-width: 960px) {
	.slider.inline {
		row-gap: 0;
	}
	.slider.inline h2 {
		padding: calc(var(--page-margin-mobile) * 1.5) calc(var(--page-margin-mobile) * 2);
	}	
	
	.slider.inline .slides ul {
		margin-left: calc(var(--page-margin-mobile) * 2);
	}
	
	.slider.inline .slides li,
	.slider.inline .slides picture {
		width: calc((var(--grid-column-w) * 9) + (var(--grid-gap) * 8));
		height: calc(((var(--grid-column-w) * 9) + (var(--grid-gap) * 8)) * (165 / 225));
	}
	
	.slider.inline .slides li {
		height: auto;
	}
	
	.slider.inline .slides li .text {
		font-size: min(18px, (18 / var(--base-w-mobile)) * 100vw);
	}
}
