#home_slides_container {
	position:relative;
	width:100vw;
	overflow:hidden;
	background-color:#243;
}
#home_slides_container.slideshow-active {
	height:100vh;
}

.home-slide {
	position:relative;
	overflow:hidden;
	width:100vw;
	font-size:1.2em;
}
.slideshow-active .home-slide {
	position:absolute;
	z-index:0;
	height:100vh;
	display:none;
	background-color:#243;
}
.slideshow-active .active-slide {
	transition-property:top,transform,opacity;
	transition-duration:0.8s;
	z-index:500;
	display:block;
	top:0%;
	transform:scale(1,1);
}
.slideshow-active .active-slide.transition-out {
	transform:scale(0.75,0.75);
	opacity:0.6;
	z-index:499;
}
.slideshow-active .transition-in {
	transform:scale(1.5,1.5);
}
.slideshow-active .transition-in.from-top {
	top:-130%;
}
.slideshow-active .transition-in.from-bottom {
	top:130%;
}

.home-slide p {
	line-height:2.25em;
}

.home-slide-inner {
	display:table;
	position:relative;
	padding:2em 2em;
	min-height:35em;
	width:calc(100vw - 4em);
}
.slideshow-active .home-slide-inner {
	padding:2em 3em;
	width:calc(100vw - 0em);
	height:calc(100vh - 0em);
}
.slideshow-active.short-screen .home-slide-inner {
	font-size:0.85em;
}

.home-slide-inner .vert-center {
	display:table-cell;
	vertical-align:middle;
}

.home-slide-inner h1 {
	font-weight:400;
}

.next-slide-arrow-container {
	display:none;
	position:absolute;
	bottom:1em;
	width:100%;
	text-align:center;
}
.slideshow-active .next-slide-arrow-container {
	display:block;
}

.next-slide-arrow {
	display:inline-block;
	width:4.3em;
	height:4.3em;
	background-color:rgba(0,0,0,0.4);
	border-radius:2em;
	cursor:pointer;
}
.next-slide-arrow.animated-element {
	transition-delay:0.5s;
}

.next-slide-arrow::before {
	content:"MORE";
	display:inline-block;
	width:100%;
	font-size:1em;
	font-weight:600;
	margin-top:0.7em;
	margin-bottom:0.3em;
}
.home-slide:last-of-type .next-slide-arrow::before {
	content:"RETURN";
	position:relative;
	top:1.5em;
	font-size:0.95em;
}

.next-slide-arrow::after {
	content:" ";
	display:inline-block;
	width:0;
	height:0;
	border:1em solid transparent;
	transform:translateY(0);
	transition-duration:0.4s;
	transition-property:transform;
}
.home-slide:not(:last-of-type) .next-slide-arrow::after {
	border-top:1.6em solid #BD8; /* Pointing down */
}
.home-slide:last-of-type .next-slide-arrow::after {
	border-bottom:1.6em solid #BD8; /* Pointing up */
	position:relative;
	top:-2.9em;
}
.next-slide-arrow.pulse::after {
	transform:translateY(0.25em);
}

.animated-element {
	position:relative;
	transition-property:left, top, opacity;
	transition-duration:0.7s;
	transition-delay:0s;
}
.animated-element:not(.animate) {
	opacity:0;
}
.animated-element.animate {
	opacity:1;
	top:0;
	left:0;
}

.animated-element.move-up:not(.animate) {
	top:2em;
}
.animated-element.move-right:not(.animate) {
	left:-2em;
}
.animated-element.move-down:not(.animate) {
	top:-2em;
}
.animated-element.move-left:not(.animate) {
	left:2em;
}

#slide_position_dots_container {
	display:none;
	position:absolute;
	left:1.5em;
	bottom:10vh;
	z-index:501;
	padding:0.5em;
	background-color:rgba(0,0,0,0.4);
	border-radius:1em;
	font-size:0.9em;
}

.slide-position-dot {
	width: 1.2em;
    height: 1.2em;
	border:2px solid #BD8;
	border-radius:1em;
	cursor:pointer;
}
.slide-position-dot:not(:last-of-type) {
	margin-bottom:0.5em;
}
.slide-position-dot.active-dot {
	background-color:#BD8;
	cursor:default;
}

@media (min-width:64em) and (min-height:39em) {
	#slide_position_dots_container {
		display:block;
	}
}

/* Some slide content is appearing too big on certain laptop resolutions */
@media (min-width:64em) and (max-height:42em) {
	.home-slide-inner {
		font-size:0.85em;
	}
}