/* ==========================================================================
   CTA Banner Block
   ========================================================================== */

.pillar-cta-banner {
	background: #ffffff;
	color: #ffffff;
	padding: var(--pillar-cta-banner-padding-y, 6vh) clamp(1.5rem, 4vw, 3.5rem);
}

.pillar-cta-banner__inner {
	display: flex;
	align-items: center;
	justify-content: space-between;
	flex-wrap: wrap;
	gap: clamp(1.5rem, 4vw, 3rem);
	max-width: 1056px;
	margin: 0 auto;
	padding: clamp(2rem, 4vw, 2.75rem) clamp(2rem, 4vw, 3.5rem);
	background: #282828;
	border-radius: 20px;
}

.pillar-cta-banner__content {
	flex: 1 1 320px;
	max-width: 720px;
}

.pillar-cta-banner__title {
	margin: 0 0 0.65rem;
	font-size: clamp(1.15rem, 2vw, 1.55rem);
	font-weight: 700;
	line-height: 1.3;
	color: #ffffff;
}

.pillar-cta-banner__subtitle {
	margin: 0;
	font-size: clamp(0.82rem, 1.05vw, 0.95rem);
	font-weight: 400;
	line-height: 1.6;
	color: rgba(255, 255, 255, 0.88);
}

.pillar-cta-banner__button {
	display: inline-flex;
	align-items: center;
	gap: 0.65rem;
	flex-shrink: 0;
	padding: 0.85rem 1.6rem;
	border-radius: 999px;
	background: var(--pillar-yellow, #ffa800);
	color: #111111;
	font-size: 0.95rem;
	font-weight: 600;
	text-decoration: none;
	transition: opacity 0.2s ease, transform 0.2s ease;
}

.pillar-cta-banner__button:hover {
	opacity: 0.92;
	transform: translateY(-1px);
}

.pillar-cta-banner__button-arrow {
	font-size: 1.1rem;
	line-height: 1;
	color: #111111;
}

.wp-block-acf-cta-banner {
	margin: 0;
	max-width: none;
}

@media (max-width: 768px) {
	.pillar-cta-banner__inner {
		flex-direction: column;
		align-items: flex-start;
	}

	.pillar-cta-banner__button {
		width: 100%;
		justify-content: center;
	}
}
