.cma-hero-video {
	--cma-hero-cover-color: #000;
	--cma-hero-cover-opacity: 0.4;
	position: relative;
	display: flex;
	align-items: center;
	min-height: 720px;
	padding: 140px 40px;
	overflow: hidden;
	color: #fff;
	background: var(--cma-hero-cover-image, none) center / cover no-repeat #111;
}

.cma-hero-video__media {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	z-index: 0;
	opacity: 0;
	transition: opacity .45s ease;
}

.cma-hero-video__media.is-loaded {
	opacity: 1;
}

.cma-hero-video__cover {
	position: absolute;
	inset: 0;
	z-index: 1;
	background: var(--cma-hero-cover-color);
	opacity: var(--cma-hero-cover-opacity);
	pointer-events: none;
}

.cma-hero-video__inner {
	position: relative;
	z-index: 2;
	width: 100%;
	max-width: 1300px;
	margin: 0 auto;
}

.cma-hero-video__subheader {
	margin: 0 0 18px;
	font: normal normal 700 20px/28px Geologica, sans-serif;
	color: #ed1c24;
	text-transform: uppercase;
	letter-spacing: 0.08em;
}

.cma-hero-video__header {
	max-width: 980px;
	margin: 0 0 28px;
	font: normal normal 800 92px/100px "Funnel Display", sans-serif;
	color: #fff;
}

.cma-hero-video__text {
	max-width: 760px;
	font: normal normal normal 21px/31px Geologica, sans-serif;
	color: #fff;
}

.cma-hero-video__text p {
	margin: 0 0 18px;
	color: inherit;
}

.cma-hero-video__button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	margin-top: 22px;
	padding: 14px 28px;
	border: 1px solid #ed1c24;
	border-radius: 4px;
	background: #ed1c24;
	color: #fff;
	font: normal normal 700 16px/22px Geologica, sans-serif;
	text-decoration: none;
	transition: background 0.2s ease, color 0.2s ease, opacity 0.2s ease;
}

.cma-hero-video__button:hover {
	background: transparent;
	color: #fff;
	text-decoration: none;
}

@media (max-width: 991px) {
	.cma-hero-video {
		min-height: 560px;
		padding: 110px 28px;
	}

	.cma-hero-video__header {
		font-size: 58px;
		line-height: 66px;
	}
}

@media (max-width: 640px) {
	.cma-hero-video {
		min-height: 480px;
		padding: 90px 20px;
	}

	.cma-hero-video__header {
		font-size: 42px;
		line-height: 48px;
	}

	.cma-hero-video__text {
		font-size: 17px;
		line-height: 26px;
	}
}
