.hero__media {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.hero__content {
	position: absolute;
	inset: 0;
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
	padding: clamp(2rem, 6vw, 4rem);
	color: #fff;
	background: linear-gradient(
		to top,
		rgba(0,0,0,.6),
		rgba(0,0,0,0)
	);
}
}



.hero__title {
  line-height: 1.1;
  margin-bottom: .75rem;
	color: var(--text-inverse);
}

.hero-actions {
	display: flex;
	gap: 0.75rem;
	z-index: 3;
}

.hero-action {
	background: rgba(0,0,0,.45);
	color: #fff;
	border-radius: 999px;
	padding: .5rem 1rem;
	backdrop-filter: blur(4px);
}

.hero--video-active .hero-slider {
	opacity: 0;
	pointer-events: none;
}

.hero-video-layer {
	position: absolute;
	inset: 0;
	z-index: 2;
}

.hero-video {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.hero-actions {
	display: flex;
	gap: 0.75rem;
	z-index: 3;
}

.hero-action {
	background: rgba(0,0,0,.45);
	color: #fff;
	border-radius: 999px;
	padding: .5rem 1rem;
	backdrop-filter: blur(4px);
}

.hero--video-active .hero-slider {
	opacity: 0;
	pointer-events: none;
}

.hero-video-layer {
	position: absolute;
	inset: 0;
	z-index: 2;
}

.hero-video {
	width: 100%;
	height: 100%;
	object-fit: cover;
	max-height: 480px;
}

@media (min-width:780px) {

	.hero__video video.hero__video-el {
	max-height: 480px;
	min-width: 100%;
	object-fit: cover;
	object-position: center;
}
}

.card__arrow {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	width: 48px;
	height: 48px;
	border-radius: 50%;
	background: rgba(0,0,0,.75);
	color: #fff;
	border: none;
	cursor: pointer;
	z-index: 10;
	display: flex;
	align-items: center;
	justify-content: center;
	backdrop-filter: blur(6px);
}

.card__arrow.prev { left: 1.5rem; }
.card__arrow.next { right: 1.5rem; }

.card__arrow::before {
	font-size: 52px;
	font-weight: 400;
}

.card__arrow.prev::before { content: "‹"; }
.card__arrow.next::before { content: "›"; }

.card__arrow:hover {
	background: rgba(0,0,0,.7);
}


/* ---------------------------
   HERO HEIGHT SYSTEM
---------------------------- */

.hero {
	position: relative;
	margin-bottom: var(--section-gap);

}

/* Slider container */
.hero__slider {
	position: relative;
	overflow: hidden;
	height: 70vh;
	min-height: 520px;
	max-height: 820px;
}

/* Desktop refinement */
@media (min-width: 992px) {
		.hero, .hero__slider {
		height: 72vh;
		max-height: 760px;
	}
}

/* Track */
.hero__slider .card__track {
	display: flex;
	height: 100%;
	transition: transform .6s ease;
}

/* Slides */
.hero__slide {
	flex: 0 0 100%;
	height: 100%;
	position: relative;
}

.hero__media {
	width: 100%;
	height: 100%;
	object-fit: cover;
}