@font-face {
	font-family: 'nexa_boldregular';
	font-weight: bold;
	font-style: normal;
	src: url('../fonts/nexa_boldfree_macroman/Nexa_Free_Bold-webfont.eot');
	src: url('../fonts/nexa_boldfree_macroman/Nexa_Free_Bold-webfont.eot?#iefix') format('embedded-opentype'), url('../fonts/nexa_boldfree_macroman/Nexa_Free_Bold-webfont.woff2') format('woff2'), url('../fonts/nexa_boldfree_macroman/Nexa_Free_Bold-webfont.woff') format('woff'), url('../fonts/nexa_boldfree_macroman/Nexa_Free_Bold-webfont.ttf') format('truetype'), url('../fonts/nexa_boldfree_macroman/Nexa_Free_Bold-webfont.svg#nexa_boldregular') format('svg');
}

.slideshow {
	position: relative;
	width: 100%; /* define width here */
	max-width: 1600px;
	margin: 0 auto;
}

.slideshow:focus {
	outline: none;
}

.js .slideshow::after {
	content: '';
	position: absolute;
	top: 50%;
	left: 50%;
	width: 70px;
	height: 70px;
	margin: -35px 0 0 -35px;
	pointer-events: none;
	border: 10px solid rgba(255, 255, 255, 0.1);
	border-top-color: #ffeb3b;
	border-radius: 50%;
	-webkit-transition: opacity 0.3s;
	transition: opacity 0.3s;
	-webkit-animation: rotateLoader 0.8s linear infinite forwards;
	animation: rotateLoader 0.8s linear infinite forwards;
}

@-webkit-keyframes rotateLoader {
	to {
		-webkit-transform: rotate3d(360deg);
		transform: rotate3d(360deg);
	}
}

@keyframes rotateLoader {
	to {
		-webkit-transform: rotate3d(0, 0, 1, 360deg);
		transform: rotate3d(0, 0, 1, 360deg);
	}
}

.js .slideshow--loaded::after {
	opacity: 0;
}

.js .slideshow {
	height: 100vh; /* define height here */
	max-height: 1000px;
	pointer-events: none;
}

.slide {
	position: relative;
	width: 100%;
	margin: 0 0 1em 0;
	padding: 10em 5em;
    padding-top: 12em;
}

.js .slide {
	position: absolute;
	top: 0px;
	left: 0;
	height: 100%;
	margin: 0;
	pointer-events: none;
	opacity: 0;
	overflow: hidden;
}

.js .slide--current {
	pointer-events: auto;
	opacity: 1;
}

.slide-imgwrap {
	position: relative;
	width: calc(100% - 6em);
	height: 100%;
	margin: 0 auto;
	opacity: 0.7;
}

.no-js .slide-imgwrap {
	height: 400px;
}

.slide__img-inner {
	position: absolute;
	width: 100%;
	height: 100%;
	-webkit-transform: rotateZ(0deg);
	transform: rotateZ(0deg);
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
	will-change: tranform, opacity;
	background-position: 50% 50%;
	background-size: cover;
}

.slide__title {
	position: absolute;
	bottom: 50px;
	/* left: 0; */
	padding: 2em;
	color: #e8e8e8;
}
@media screen and (max-width: 45em) {
	.slide__title {
		bottom: 0px;
	}
}

.js .slide__title {
	pointer-events: none;
	opacity: 0;
}

.js .slide--current .slide__title {
	pointer-events: auto;
	opacity: 1;
}

.slide__title-main {
	font-family: 'nexa_boldregular', serif;
	font-size: 4em;
	line-height: 0.8;
	display: inline-block;
	margin: 0;
}

.slide__title-sub {
	font-size: 1.0em;
	line-height: 1.5;
	margin: 1em 0 0 0;
}

.slide__title-sub a {
	border-bottom: none;
}


/* Media query for smaller screens (general elements) */

@media only screen and (max-width : 1024px) {
	.slide {
		padding: 6em 0;
        padding-top: 0;
	}
}


@media screen and (max-width: 45em) {
	.slideshow {
		padding-top: 7em;
	}
	.js .slideshow {
		height: calc(100vh - 60px);
	}
	.no-js .slide {
		padding: 4em 0 0;
	}
	.slide-imgwrap {
		width: calc(100% - 1em);
	}
	.slide__title {
		width: calc(100% - 2em);
		margin: 0 0 4em 0;
		padding: 1.5em;
	}
	.slide__title-main {
		font-size: 2em;
	}
	.slide__title-sub {
		font-size: 0.75em;
	}
}

/* Individual layouts */

/* Layout 1: 3 grid images */

.slide--layout-1 .slide__img {
	position: absolute;
	width: calc(50% - 1em);
}

.slide--layout-1 .slide__img:first-child {
	left: 0.5em;
	height: 100%;
}

.slide--layout-1 .slide__img:nth-child(n+2) {
	left: calc(50% + 0.5em);
	height: calc(50% - 0.5em);
}

.slide--layout-1 .slide__img:nth-child(3) {
	top: calc(50% + 0.5em);
}


/* Layout 2: polaroid stack for 5 images */

.slide--layout-2 .slide__img {
	position: absolute;
	top: 50%;
	left: 50%;
}

.slide--layout-2 .slide__img:not(:last-child) {
	width: 300px;
	height: 300px;
}

.slide--layout-2 .slide__img:not(:last-child) .slide__img-inner {
	border: 5px solid #fff;
}

.slide--layout-2 .slide__img:first-child {
	-webkit-transform: translate3d(-50%,-50%,0) translate3d(-60%,-40%,0) rotate(-16deg);
	transform: translate3d(-50%,-50%,0) translate3d(-60%,-40%,0) rotate(-16deg);
}

.slide--layout-2 .slide__img:nth-child(2) {
	-webkit-transform: translate3d(-50%,-50%,0) translate3d(60%,-40%,0) rotate(10deg);
	transform: translate3d(-50%,-50%,0) translate3d(60%,-40%,0) rotate(10deg);
}

.slide--layout-2 .slide__img:nth-child(3) {
	-webkit-transform: translate3d(-50%,-50%,0) translate3d(60%,40%,0) rotate(-15deg);
	transform: translate3d(-50%,-50%,0) translate3d(60%,40%,0) rotate(-15deg);
}

.slide--layout-2 .slide__img:nth-child(4) {
	-webkit-transform: translate3d(-50%,-50%,0) translate3d(-60%,40%,0) rotate(10deg);
	transform: translate3d(-50%,-50%,0) translate3d(-60%,40%,0) rotate(10deg);
}

.slide--layout-2 .slide__img:last-child {
	-webkit-transform: translate3d(-50%,-50%,0);
	transform: translate3d(-50%,-50%,0);
	width: 450px;
	height: 400px;
}

.slide--layout-2 .slide__img:last-child .slide__img-inner {
	border: 10px solid #fff;
	border-bottom-width: 65px;
}

.slide__img-caption {
	font-family: 'Gochi Hand', cursive;
	position: absolute;
	width: 100%;
	top: 100%;
	text-align: center;
	margin: 0;
	padding: 1em;
	font-size: 1.25em;
	color: #25303b;
	font-weight: normal;
}

@media screen and (max-width: 45em) {
	.slide--layout-2 .slide__img:not(:last-child) {
		width: 100px;
		height: 100px;
	}
	.slide--layout-2 .slide__img:last-child .slide__img-inner {
		border-bottom-width: 40px;
	}
	.slide--layout-2 .slide__img:last-child {
		width: 160px;
		height: 160px;
	}
	.slide__img-caption {
		font-size: 0.75em;
	}
}

/* Layout 3: card stack with 7 images */

.slide--layout-3 .slide__img {
	position: absolute;
	width: 450px;
	height: 450px;
	top: 40%;
	left: 50%;
	-webkit-transform: translate3d(-50%,-50%,0) translate3d(-50%,0,0) rotate(-10deg);
	transform: translate3d(-50%,-50%,0) translate3d(-50%,0,0) rotate(-10deg);
}

@media screen and (max-width: 45em) {
	.slide--layout-3 .slide__img {
		width: 200px;
		height: 200px;
	}
}


.slide--layout-3 .slide__img-inner {
	-webkit-transform-origin: 50% 200%;
	transform-origin: 50% 200%;
}

/* Layout 4: asymmetrical with 4 images */

.slide--layout-4 .slide__img {
	position: absolute;
}

.slide--layout-4 .slide__img:nth-child(2) {
	top: 20%;
	left: 20%;
	width: 30%;
	height: 45%;
}

.slide--layout-4 .slide__img:first-child {
	top: 25%;
	left: 5%;
	width: 70%;
	height: 75%;
}

.slide--layout-4 .slide__img:nth-child(3) {
	top: 0;
	left: 40%;
	width: 40%;
	height: 60%;
}

.slide--layout-4 .slide__img:nth-child(4) {
	top: 50%;
	left: 70%;
	width: 30%;
	height: 35%;
}


/* Layout 5: grid with 20 images */

.slide--layout-5 .slide-imgwrap {
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-justify-content: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-align-content: center;
	-ms-flex-line-pack: center;
	align-content: center;
	padding: 8% 0;
	width: 80%;
}

.slide--layout-5 .slide__img {
	position: relative;
	width: calc((100% / 2) - 10px);
	padding-bottom: calc((100% / 6) - 10px);
	min-height: 250px;
	margin: 5px;
}

@media screen and (max-width: 45em) {
	.slide--layout-5 .slide__img {
		min-height: 150px;
	}
}


/* Layout 6: 3 round images */

.slide--layout-6 .slide__img {
	position: absolute;
	top: 50%;
	left: 50%;
	width: 45%;
	padding-bottom: 45%;
	-webkit-transform: translate3d(-50%,-50%,0);
	transform: translate3d(-50%,-50%,0);
}

.slide--layout-6 .slide__img-inner {
	border-radius: 50%;
}

.slide--layout-6 .slide__img:first-child {
	-webkit-transform: translate3d(20%,-40%,0) scale(0.6);
	transform: translate3d(20%,-40%,0) scale(0.6);
}

.slide--layout-6 .slide__img:nth-child(3) {
	-webkit-transform: translate3d(-120%,-60%,0) scale(0.75);
	transform: translate3d(-120%,-60%,0) scale(0.75);
}

/* Layout 7: 3 rhomboid images */

.slide--layout-7 .slide__img {
	position: absolute;
	top: 10%;
	width: 40%;
	height: 80%;
}

.slide--layout-7 .slide__img:nth-child(2) {
	left: 30%;
}

.slide--layout-7 .slide__img:nth-child(3) {
	left: 60%;
}

.slide--layout-7 .slide__img-inner {
	-webkit-clip-path: polygon(0% 100%, 30% 0%, 100% 0%, 70% 100%);
	clip-path: polygon(0% 100%, 30% 0%, 100% 0%, 70% 100%);
	-webkit-clip-path: url('#polygon-clip-rhomboid');
	clip-path: url('../index.html#polygon-clip-rhomboid'); /* Firefox needs this path */
}