.footer-cta {
	position: relative;
	width: 100%;
	height: calc(100vw * 361 / 640);
}

.footer-cta .image {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	filter: grayscale(100%) opacity(0.3);
}

.footer-cta picture:before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: var(--white);
	pointer-events: none;
}

.footer-cta picture:after {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	mix-blend-mode: multiply;
	background: var(--pale-blue);
	pointer-events: none;
}

.panel-footer .ctas > *:nth-of-type(odd) .footer-cta picture:after {
	background: var(--red);
}

.footer-cta .content {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	display: flex;
	gap: 2px;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	justify-content: center;
	text-align: center;
	padding: 10px 24px;
}

.footer-cta .ornament {
	width: 44px;
}

.footer-cta .title {
	color: var(--white);
	font-family: var(--brandon);
	font-size: 30px;
	text-transform: uppercase;
	line-height: 1;
	font-weight: 900;
	margin-top: 9px;
	padding: 0 20px;
	max-width: 330px;
}

.footer-cta .subtitle {
	display: block;
	font-family: var(--roboto);
	font-weight: 400;
	font-size: 12px;
	line-height: 19px;
	text-transform: none;
	margin-top: 6px;
}

@media (min-width: 375px) {
	.footer-cta .title {
		font-size: 40px;
	}

	.footer-cta .subtitle {
		font-size: 14px;
	}
}

@media (min-width: 40em) {
	.footer-cta {
		height: calc(50vw * 406 / 720);
		min-height: 100%;
		width: 100%;
	}

	.footer-cta .title {
		font-size: calc(30px + (60 - 30) * ((100vw - 640px) / (1440 - 640)));
		max-width: calc(280px + (480 - 300) * ((100vw - 640px) / (1440 - 640)));
		line-height: 1.016667;
	}

	.footer-cta .subtitle {
		font-size: calc(12px + (22 - 12) * ((100vw - 640px) / (1440 - 640)));
		line-height: 1.272727;
	}

	.footer-cta .ornament {
		width: calc(38px + (84 - 38) * ((100vw - 640px) / (1440 - 640)));
	}

	.footer-cta .content {
		gap: calc(1px + (14 - 1) * ((100vw - 640px) / (1440 - 640)));
	}
}

@media (min-width: 90em) {
	.footer-cta .title {
		font-size: 60px;
		max-width: 480px;
	}

	.footer-cta .subtitle {
		font-size: 22px;
	}

	.footer-cta .ornament {
		width: 84px;
	}

	.footer-cta .content {
		gap: 14px;
	}
}
