.apcs-landing-sponsorship {
	--apcs-sponsorship-eyebrow-font-size: var(--wp--preset--font-size--md, 1.0625rem);
	--apcs-sponsorship-lede-font-size: clamp(1.5rem, 1.7vw, var(--wp--preset--font-size--xl, 1.5rem));
	--apcs-sponsorship-button-gap: 12px;
	--apcs-sponsorship-button-min-height: 70px;
	--apcs-sponsorship-button-pad-y: 20px;
	--apcs-sponsorship-button-pad-x: 42px;
	--apcs-sponsorship-button-font-size: 20px;
	--apcs-sponsorship-button-icon-size: 23px;
	padding-block: 108px 88px;
	border-bottom: 1px solid rgba(224, 224, 224, 0.3);
	background:
		linear-gradient(180deg, rgba(232, 241, 252, 0.62) 0%, rgba(242, 250, 247, 0.56) 100%),
		var(--apcs-base);
	scroll-margin-top: calc(var(--apcs-header-slot-height, 88px) + 28px);
	position: relative;
	overflow: hidden;
	isolation: isolate;
}

.apcs-landing-sponsorship::before,
.apcs-landing-sponsorship::after {
	content: "";
	position: absolute;
	inset: auto;
	pointer-events: none;
	z-index: 0;
	opacity: 0.5;
	will-change: transform;
	filter: blur(24px);
}

.apcs-landing-sponsorship::before {
	width: min(70vw, 840px);
	height: min(70vw, 840px);
	top: -6%;
	left: -4%;
	background: radial-gradient(circle at 38% 38%, rgba(74, 130, 210, 0.4) 0%, rgba(74, 130, 210, 0) 70%);
	animation:
		apcsSponsorshipAuroraFloatA 18s ease-in-out infinite alternate,
		apcsSponsorshipAuroraPulseA 5.4s ease-in-out infinite;
}

.apcs-landing-sponsorship::after {
	width: min(62vw, 760px);
	height: min(62vw, 760px);
	bottom: -10%;
	right: -2%;
	background: radial-gradient(circle at 62% 42%, rgba(55, 188, 173, 0.34) 0%, rgba(55, 188, 173, 0) 72%);
	animation:
		apcsSponsorshipAuroraFloatB 21s ease-in-out infinite alternate,
		apcsSponsorshipAuroraPulseB 5.4s ease-in-out infinite;
}

.apcs-landing-sponsorship > * {
	position: relative;
	z-index: 1;
}

@keyframes apcsSponsorshipAuroraFloatA {
	0% {
		transform: translate3d(0, 0, 0) scale(1);
	}
	100% {
		transform: translate3d(5%, 4%, 0) scale(1.14);
	}
}

@keyframes apcsSponsorshipAuroraFloatB {
	0% {
		transform: translate3d(0, 0, 0) scale(1);
	}
	100% {
		transform: translate3d(-5%, -4%, 0) scale(1.12);
	}
}

@keyframes apcsSponsorshipAuroraPulseA {
	0%,
	100% {
		opacity: 0.62;
	}
	50% {
		opacity: 0.38;
	}
}

@keyframes apcsSponsorshipAuroraPulseB {
	0%,
	100% {
		opacity: 0.34;
	}
	50% {
		opacity: 0.58;
	}
}

.apcs-landing-sponsorship__inner {
	display: grid;
	gap: 40px;
}

.apcs-landing-sponsorship__header {
	display: grid;
	gap: 18px;
	justify-items: center;
}

.apcs-landing-sponsorship__eyebrow {
	margin: 0;
	text-align: center;
}

.apcs-landing-sponsorship__eyebrow {
	font-family: "Manrope", sans-serif;
	font-size: var(--apcs-sponsorship-eyebrow-font-size);
	font-weight: 600;
	line-height: 1.5;
	letter-spacing: 0.16em;
	text-transform: uppercase;
	color: #4c6078;
}

.apcs-landing-sponsorship__eyebrow.has-md-font-size {
	font-size: var(--apcs-sponsorship-eyebrow-font-size) !important;
}

.apcs-landing-sponsorship__lede {
	margin: 0;
	max-width: 58ch;
	font-family: "Manrope", sans-serif;
	font-size: var(--apcs-sponsorship-lede-font-size);
	line-height: 1.58;
	text-align: center;
	text-wrap: pretty;
	color: #516171;
}

.apcs-landing-sponsorship__lede.has-xl-font-size {
	font-size: var(--apcs-sponsorship-lede-font-size) !important;
}

.apcs-landing-sponsorship__actions {
	gap: 0;
}

.apcs-landing-sponsorship__actions .wp-block-button {
	margin: 0;
}

.apcs-landing-sponsorship__actions .wp-block-button:not(.apcs-button-size-small):not(.apcs-button-size-medium),
.apcs-landing-sponsorship__actions .wp-block-button.apcs-button-size-large {
	--apcs-button-gap: var(--apcs-sponsorship-button-gap);
	--apcs-button-min-height: var(--apcs-sponsorship-button-min-height);
	--apcs-button-pad-y: var(--apcs-sponsorship-button-pad-y);
	--apcs-button-pad-x: var(--apcs-sponsorship-button-pad-x);
	--apcs-button-font-size: var(--apcs-sponsorship-button-font-size);
	--apcs-button-icon-size: var(--apcs-sponsorship-button-icon-size);
}

.apcs-landing-sponsorship__rows {
	display: grid;
	gap: 24px;
}

.apcs-landing-sponsorship__row {
	position: relative;
	padding: 20px 32px;
	border: 0;
	border-radius: 0;
	background: transparent;
	box-shadow: none;
	overflow: hidden;
}

.apcs-landing-sponsorship__logos {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	gap: 24px 64px;
}

.apcs-landing-sponsorship__logos > * {
	margin: 0;
}

.apcs-landing-sponsorship__logo {
	margin: 0;
}

.apcs-landing-sponsorship__logo a {
	display: block;
}

.apcs-landing-sponsorship__logo a:focus-visible {
	outline: 2px solid #2f6fed;
	outline-offset: 6px;
}

.apcs-landing-sponsorship__logo img {
	display: block;
	width: auto;
	max-width: min(220px, 18vw);
	height: clamp(24px, 3vw, 40px);
	object-fit: contain;
}

@media (max-width: 1279px) {
	.apcs-landing-sponsorship {
		padding-block: 96px 80px;
	}

	.apcs-landing-sponsorship__logo img {
		max-width: min(200px, 24vw);
	}
}

@media (max-width: 767px) {
	.apcs-landing-sponsorship {
		--apcs-sponsorship-eyebrow-font-size: var(--wp--preset--font-size--md, 1.0625rem);
		--apcs-sponsorship-lede-font-size: clamp(1.3125rem, 5vw, 1.5rem);
		--apcs-sponsorship-button-min-height: 64px;
		--apcs-sponsorship-button-pad-y: 18px;
		--apcs-sponsorship-button-pad-x: 32px;
		--apcs-sponsorship-button-font-size: 18px;
		--apcs-sponsorship-button-icon-size: 21px;
		padding-block: 52px 44px;
		padding-inline: 16px;
	}

	.apcs-landing-sponsorship::before,
	.apcs-landing-sponsorship::after {
		opacity: 0.32;
		filter: blur(20px);
	}

	@keyframes apcsSponsorshipAuroraPulseA {
		0%,
		100% {
			opacity: 0.42;
		}
		50% {
			opacity: 0.28;
		}
	}

	@keyframes apcsSponsorshipAuroraPulseB {
		0%,
		100% {
			opacity: 0.24;
		}
		50% {
			opacity: 0.4;
		}
	}

	.apcs-landing-sponsorship__inner {
		gap: 32px;
	}

	.apcs-landing-sponsorship__header {
		gap: 12px;
	}

	.apcs-landing-sponsorship__eyebrow {
		letter-spacing: 0.14em;
	}

	.apcs-landing-sponsorship__rows {
		gap: 16px;
	}

	.apcs-landing-sponsorship__row {
		padding: 20px 16px;
		border-radius: 0;
	}

	.apcs-landing-sponsorship__logos {
		gap: 20px 24px;
	}

	.apcs-landing-sponsorship__logo {
		width: calc(50% - 12px);
		text-align: center;
	}

	.apcs-landing-sponsorship__logo img {
		max-width: 100%;
		height: clamp(22px, 7vw, 32px);
		margin-inline: auto;
	}
}

@media (prefers-reduced-motion: reduce) {
	.apcs-landing-sponsorship::before,
	.apcs-landing-sponsorship::after {
		animation: none;
		transform: none;
	}
}
