/* General CTA Styles */
.cta-banner {
	font-size: 0.875rem;
	border-radius: 44px;
	box-shadow: 0 0 0 1px #0000000d, 0 1px 2px #0000001f;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex-wrap: wrap;
	gap: 10px;
	overflow: hidden;
	padding: 8px;
	width: 100%;
	transition: all 0.1s ease-in-out;
}





.cta-banner:hover {
	background-color: #fafafa;
	box-shadow: 0 0 0 1px #00000014, 0 1px 2px #00000030;
}

h2.title.title--large {
	max-width: 500px;
	width: 100%;
	line-height: 1;
}

p.body.body--large.pt-8 {
	max-width: 450px;
	width: 100%;
}


/* CTA Banner Responsive Adjustments */
@media (min-width: 640px) {
	.cta-banner {
		width: auto;
		padding: 6px 24px;
	}
}

/* CTA Wrapper Styles */
.cta-wrapper {
	border-radius: 2.625rem;
	overflow: hidden;
	padding: 2.625rem;
	min-height: 440px;
	background: linear-gradient(0deg, #fafafa 0% 100%), #d3d3d3 50%/cover no-repeat;
}

/* CTA Wrapper Responsive Layout */
@media (min-width: 768px) {
	.cta-wrapper {
		display: grid;
		grid-template-columns: 1fr 1fr;
		grid-template-rows: 1fr;
	}
}

/* CTA Image Wrapper */
.cta-image-wrapper {
	position: relative;
	width: 100%;
	height: 100%;
}

/* CTA Image Styles */
.cta-image {
	position: absolute;
	top: 0;
	left: 0;
	margin-top: 40px;
	width: max-content;
	max-width: 700px;
	height: auto;
}

@media screen and (min-width: 768px) {
	.cta-image {
		margin-top: 0;
	}
}

@media all and (max-width: 430px) {
	.cta-image {
		position: absolute;
		top: -1.85rem;
	}
}

/* CTA Button */
.cta__button {
	margin-top: 0.5rem;
}

/* CTA Icon */
.cta-icon {
	width: 24px;
	aspect-ratio: 1;
	object-fit: contain;
	object-position: center;
	align-self: stretch;
	margin: auto 0;
}

/* CTA Message */
.cta-message {
	color: #000;
	font-weight: 600;
	align-self: stretch;
	margin: auto 0;
}

/* CTA Link */
.cta-link {
	color: #0a6df2;
	font-weight: 500;
	align-self: stretch;
	margin: auto 0;
	gap: 4px;
	cursor: pointer;
}

/* Container Styles */
.container {
	padding: 3rem 1rem;
}