.cta-container {
	display: grid;
	grid-template-columns: 1fr;
	gap: 3px;
	background-color: var(--navy-blue);
	padding: var(--space-6) var(--space-4) var(--space-2);
}

.cta-container > div:first-child {
	border-bottom: 1px solid #FFF;
	margin-bottom: var(--space-4);
}

.footer-cta {
	display: grid;
	grid-template-columns: 111px 1fr;
	gap: var(--space-6);
	margin-bottom: var(--space-4);
	overflow: hidden;
	color: var(--white);
	text-decoration: none;
}

@media (hover : hover) {
	.footer-cta:hover h2,
	.footer-cta:hover p {
		color: var(--white);
	}

	.footer-cta p > img {
		transition: transform 0.3s ease-out;
	}

	.footer-cta:hover p > img {
		transform: translateX(5px);
	}
}

.footer-cta .img-cont {
	position: relative;
}

.footer-cta .content-section {
	place-self: center;
	justify-self: flex-start;
}

.footer-cta h2 {
	font-family: var(--font-display);
	font-size: var(--text-2xl);
	margin-bottom: var(--space-1);
	font-weight: 700;
}

.footer-cta p {
	font-size: var(--text-lg);
	line-height: var(--leading-snug);
}
.footer-cta p img {
	display: inline-block;
    margin-left: 6px;
    vertical-align: baseline;
	width: 25px;
}

@media (min-width: 40em) {
	.cta-container > div {
		display: grid;
	}
}

@media (min-width: 64em) {
	.cta-container {
		grid-template-columns: 1fr 1fr;
		gap: calc(50px + (92 - 50) * ((100vw - 1025px) / (1440 - 1025)));
		padding: 0 calc(30px + (92 - 30) * ((100vw - 1025px) / (1440 - 1025))) 0 var(--space-4);
		margin-bottom: -90px;
	}

	.cta-container > div:first-child,
	.cta-container > div:last-child {
		margin-top: -22px;
	}
	.cta-container > div:first-child {
		max-width: 497.68px;
		margin-left: auto;
		margin-bottom: unset;
	}
	.cta-container > div:last-child {
		max-width: 616.68px;
		margin-right: auto;
	}
	.footer-cta {
		grid-template-columns: 166px 1fr;
		gap: 35px;
	}
	.footer-cta .img-cont img {
		width: 100%;
	}
	.footer-cta .content-section {
		place-self: start;
		padding-top: 50px;
  	}
	.footer-cta h2 {
		font-size: calc(22px + (30 - 22) * ((100vw - 1025px) / (1440 - 1025)));
	}

	.footer-cta p {
		font-size: calc(15px + (18 - 15) * ((100vw - 1025px) / (1440 - 1025)));
	}
}

@media (min-width: 1440px) {
	.cta-container {
		gap: 92px;
		padding: 0 92px 0 var(--space-4);
	}

	.footer-cta h2 {
		font-size: var(--text-3xl);
	}
	.footer-cta p {
		font-size: var(--text-lg);
	}
}