.lf-carousel {
	aspect-ratio: 8 / 3;
	display: grid;
	grid-template-columns: minmax( 0, 1fr );
	grid-template-rows: minmax( 0, 1fr );
}

/* Fix gap beneath slider. */

[data-slick="lf-carousel"] {
	grid-column: 1 / -1;
	grid-row: 1 / -1;
}

[data-slick="lf-carousel"] .slides,
[data-slick="lf-carousel"] .slick-list{
	height: 100%;
}

.lf-carousel .slick-slide {
	line-height: 0;
}

.lf-carousel .slick-slide img {
	display: block;
	height: 100%;
	object-fit: cover;
	width: 100%;
}

/* Arrows */

.lf-carousel .slick-arrows-container .slick-prev,
.lf-carousel .slick-arrows-container .slick-next {
	background: rgba(0,0,0,0.3);
	border: none;
	border-radius: 0;
	cursor: pointer;
	display: block;
	font-size: 0;
	height: 60px;
	line-height: 0;
	opacity: 0.5;
	outline: none;
	padding: 0;
	position: absolute;
	top: 50%;
	transform: translate(0, -50%);
	transition: opacity 0.3s ease;
	width: 60px;
}

.lf-carousel .slick-arrows-container .slick-prev::before,
.lf-carousel .slick-arrows-container .slick-next::before {
	background: center / 40px no-repeat;
	content: '';
	inset: 0;
	position: absolute;
}

.lf-carousel .slick-arrows-container .slick-prev:hover,
.lf-carousel .slick-arrows-container .slick-prev:focus,
.lf-carousel .slick-arrows-container .slick-next:hover,
.lf-carousel .slick-arrows-container .slick-next:focus {
	opacity: 1;
}

.lf-carousel .slick-arrows-container .slick-prev {
	left: 25px;
}

.lf-carousel .slick-arrows-container .slick-prev::before {
	background-image: url( 'data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 640 640"><path d="M163 320L185.6 342.6L377.6 534.6L400.2 557.2L445.5 511.9L422.9 489.3L253.5 319.9L422.9 150.5L445.5 127.9L400.2 82.6L377.6 105.2L185.6 297.2L163 319.8z" fill="white"/></svg>' );
}

.lf-carousel .slick-arrows-container .slick-next {
	right: 25px;
}

.lf-carousel .slick-arrows-container .slick-next::before {
	background-image: url( 'data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 640 640"><path d="M477.5 320L454.9 342.6L262.9 534.6L240.3 557.3L195 512L217.6 489.4L387 320L217.6 150.6L195 128L240.3 82.7L262.9 105.4L454.9 297.4L477.5 320z" fill="white"/></svg>' );
}

/* Content Overlay */

.lf-carousel__content {
	align-items: flex-end;
	display: flex;
	grid-column: 1 / -1;
	grid-row: 1 / -1;
	margin-inline: auto;
	max-width: 1200px;
	width: calc( 100vw - 210px );
}

.lf-carousel__content-inner {
	background: linear-gradient(to bottom, hsla(215, 40%, 25%, 0.8) 0%, hsla(215, 40%, 25%, 0.4) 80%, transparent 100%);
	border-radius: 8px;
	padding: 50px;
	position: relative;
	width: 100%;
}

.lf-carousel__label h2 {
	color: white;
	font-size: 2.5rem;
	font-weight: 700;
	margin-top: 0;
	text-transform: uppercase;
}

.lf-carousel__links {
	display: flex;
	flex-wrap: wrap;
	gap: 20px;

}

.lf-carousel__links a {
	white-space: nowrap;
}

/* Responsive (desktop first) */

@media ( 960px > width ) {

	.lf-carousel {
		aspect-ratio: unset;
		display: block;
	}

	[data-slick="lf-carousel"] {
		aspect-ratio: 16 / 9;
		position: relative;
	}

	.lf-carousel__content {
		max-width: unset;
		width: 100%;
	}

	.lf-carousel__content-inner {
		background: hsla(215, 40%, 25%, 1);
		border-radius: 0;
	}
}