.slider--large {
	position: relative;
	max-height: 100vh; /* Same as slide size - used for ScrollTrigger */
}

.slider--large .slide {
	background-color: rgba(222, 222, 222, 0.1);
	/* lighter shadow: much cheaper to repaint than the former 100px blur */
	box-shadow: rgba(0, 0, 0, 0.35) 0 20px 40px -15px;
	border-radius: var(--card-radius);
	transition: opacity 0.3s ease;
    overflow: hidden;
	opacity: 0.25;
	height: 70vh;
	/* explicit width (derived from height) so Flickity never measures a slide before its video has a size */
	aspect-ratio: 9 / 16;
	margin-right: 0.9rem;
}

.slider--large .slide.is-selected {
	opacity: 1;
}

.slider--large .video {
	aspect-ratio: 9 / 16;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}

.slider--large .flickity-button {
	z-index: 2;
}

.slider--large .slide_caption {
	position: absolute;
    display: flex;
    flex-direction: column;
    justify-content: end;
    background-image: linear-gradient(to top, rgba(0, 0, 0, 0.8) 50%, rgba(0, 0, 0, 0.01) 100%);
    padding: 1.5em 2em;
	left: 0;
    bottom: 0;
    width: 100%;
    height: calc(100% / 3);
}


.slider--large .slide .slide_caption {
	opacity: 0;
}

.slider--large .slide.is-selected .slide_caption {
	opacity: 1;
}

.slider--large .slide .slide_caption * {
	transition: transform 0.3s ease-in-out, opacity 0.3s ease-in-out;
	transform: translateY(100%);
	opacity: 0;
}

.slider--large .slide.is-selected .slide_caption * {
	transform: translateY(0%);
	opacity: 1;
}

.slide_caption > .slide_subtitle {
	font-size: 1em;
    line-height: 1.4;
    margin: 0px;
	margin-bottom: 0.35em;
}

.slide_caption > .slide_title {
	font-size: 8vw;
    font-weight: 600;
	line-height: 1;
    margin: 0px;
	margin-bottom: 0.35em;
}

.slide_caption > .badges {
	margin-bottom: .35em;
}

.slider--large .flickity-page-dots {
	bottom: -3em;
}

/* Toolbar */
.slider--large.flickity-enabled .slider_toolbar {
	justify-content: flex-start;
	top: 0;
    bottom: unset;
    padding: 2em;
}

/* Flickity Navigation */
.slider--large .flickity-prev-next-button.previous {
	left: 2em;
}

.slider--large .flickity-prev-next-button.next {
	right: 2em;
}

@media screen and (min-width: 640px) {
	.slider--large {
		margin: 3.5em 0px;
	}

	.slider--large::before,
	.slider--large::after {
		width: 15%;
	}

	.slider--large .slide {
		height: 80vh;
	}

	.slide_caption > .slide_subtitle {
		font-size: 1.17em;
	}

	.slide_caption > .slide_title {
		font-size: 5vw;
	}

	.slider--large .flickity-page-dots {
		bottom: -4em;
	}
}

@media screen and (min-width: 992px) {
	.slide_caption > .slide_title {
		font-size: 3vw;
	}
}