.gb-general-content-cta {
	position: relative;
	overflow: hidden;
	background: var(--color-white);
	color: var(--color-white);
	padding-block: max(var(--section-spacing-md), calc(5 * var(--su)));
	padding-inline: var(--pk-site-gutter);
}

.gb-general-content-cta::before {
	content: "";
	position: absolute;
	top: max(2rem, calc(0 * var(--su)));
	left: calc(-9.125 * var(--su));
	width: calc(95.6875 * var(--su));
	height: calc(41.5625 * var(--su));
	background-image: url("../../../../assets/images/general-content-cta-line.svg");
	background-position: center;
	background-repeat: no-repeat;
	background-size: 100% 100%;
	pointer-events: none;
}

.gb-general-content-cta__inner {
	position: relative;
	z-index: 1;
	width: min(100%, calc(71.875 * var(--su)));
	margin-inline: auto;
}

.gb-general-content-cta__panel {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	gap: max(2rem, calc(4 * var(--su)));
	padding: max(3rem, calc(5 * var(--su))) max(3rem, calc(4 * var(--su)));
	border-radius: 0 var(--radius-2xl) 0 var(--radius-2xl);
	background: var(--color-basil);
}

.gb-general-content-cta__panel--deep-pine {
	background: var(--color-cypress);
}

.gb-general-content-cta__copy {
	display: flex;
	width: min(100%, calc(38.5 * var(--su)));
	flex-direction: column;
	align-items: flex-start;
	gap: max(1.5rem, calc(1.5 * var(--su)));
	padding-right: max(2rem, calc(4 * var(--su)));
}

.gb-general-content-cta__panel--no-media {
	justify-content: flex-start;
}

.gb-general-content-cta__panel--no-media .gb-general-content-cta__copy {
	width: 100%;
	padding-right: 0;
}

.gb-general-content-cta__heading {
	margin: 0;
	color: var(--color-white);
	font-size: var(--scaling-h2);
	margin-bottom: 0px !important;
}

.gb-general-content-cta__text {
	color: var(--color-white);
	font-size: var(--desktop-body-md);
}

.gb-general-content-cta__text > * {
	margin-block: 0;
}

.gb-general-content-cta__text > * + * {
	margin-top: max(1.5rem, calc(1.5 * var(--su)));
}

.gb-general-content-cta__cta {
	display: inline-flex;
	width: fit-content;
	align-items: center;
	gap: max(0.5rem, calc(0.5 * var(--su)));
	min-height: max(3rem, calc(3 * var(--su)));
	padding-block: max(0.25rem, calc(0.25 * var(--su)));
	padding-inline: max(1.25rem, calc(1.25 * var(--su))) max(0.25rem, calc(0.25 * var(--su)));
	border-radius: var(--radius-pill);
	background: var(--button-bg-1);
	color: var(--button-text-color-1);
	font-size: var(--pk-button-font-size);
	font-weight: var(--pk-button-font-weight);
	line-height: var(--pk-button-line-height);
	text-decoration: none;
	transition: background-color var(--transition-duration) var(--transition-easing),
		color var(--transition-duration) var(--transition-easing);
}

.gb-general-content-cta__cta:hover,
.gb-general-content-cta__cta:focus-visible {
	background: var(--button-bg-1-hover);
	color: var(--button-text-color-1-hover);
}

.gb-general-content-cta__cta:focus-visible {
	outline: var(--focus-ring-width) solid var(--pk-focus-ring-color);
	outline-offset: var(--focus-ring-offset);
}

.gb-general-content-cta__cta-icon {
	display: inline-flex;
	width: max(2.5rem, calc(2.5 * var(--su)));
	height: max(2.5rem, calc(2.5 * var(--su)));
	border-radius: var(--radius-pill);
	background-color: var(--button-icon-bg-1);
	background-image: url("data:image/svg+xml,%3Csvg width='20' height='20' viewBox='0 0 20 20' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M4.16669 10H15.8334M15.8334 10L10.8334 5M15.8334 10L10.8334 15' stroke='%2301261E' stroke-width='1.4' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
	background-position: center;
	background-repeat: no-repeat;
	background-size: max(1.25rem, calc(1.25 * var(--su)));
	transition: background-color var(--transition-duration) var(--transition-easing);
}

.gb-general-content-cta__cta:hover .gb-general-content-cta__cta-icon,
.gb-general-content-cta__cta:focus-visible .gb-general-content-cta__cta-icon {
	background-color: var(--button-icon-bg-1-hover);
}

.gb-general-content-cta__media {
	position: relative;
	width: max(18rem, calc(21.875 * var(--su)));
	aspect-ratio: 1;
	margin: 0;
	overflow: hidden;
	border-radius: 0 var(--radius-lg) 0 var(--radius-lg);
}

.gb-general-content-cta__media img {
	position: absolute;
	inset: 0;
	display: block;
	width: 100%;
	height: 100%;
	max-width: none;
	object-fit: cover;
}

@media only screen and (max-width: 992px) {
	.gb-general-content-cta {
		padding-block: max(var(--section-spacing-sm), calc(4 * var(--su)));
	}

	.gb-general-content-cta::before {
		display: none;
	}

	.gb-general-content-cta__inner {
		width: 100%;
	}

	.gb-general-content-cta__panel {
		flex-direction: column;
		align-items: stretch;
		gap: max(2rem, calc(2 * var(--su)));
		padding: max(3rem, calc(3 * var(--su))) max(1.5rem, calc(1.5 * var(--su)));
		border-radius: 0 var(--radius-xl) 0 var(--radius-xl);
	}

	.gb-general-content-cta__copy {
		width: 100%;
		gap: max(1.5rem, calc(1.5 * var(--su)));
		padding-right: max(2rem, calc(4 * var(--su)));
	}

	.gb-general-content-cta__heading {
		font-size: var(--scaling-h3);
	}

	.gb-general-content-cta__text {
		font-size: var(--desktop-body-sm);
	}

	.gb-general-content-cta__media {
		width: 100%;
	}
}
