/* ==========================================================================
   SEC CTA Banner Stylesheet
   ========================================================================== */

.sec-cta-banner-wrapper {
	background: var(--sec-accent-gradient, linear-gradient(135deg, var(--cta-color-start, #7C3AED) 0%, var(--cta-color-end, #A855F7) 100%));
	padding: 60px 0;
	width: 100%;
	position: relative;
	overflow: hidden;
}

.sec-cta-banner-wrapper::before {
	content: '';
	position: absolute;
	top: -50%;
	left: 0;
	width: 100%;
	height: 200%;
	background:
		radial-gradient(circle at 18% 30%, rgba(255, 255, 255, 0.24) 0%, rgba(255, 255, 255, 0.08) 26%, transparent 58%),
		radial-gradient(circle at 86% 72%, rgba(255, 255, 255, 0.18) 0%, rgba(255, 255, 255, 0.06) 24%, transparent 54%);
	transform: translateX(-30%);
	pointer-events: none;
}

.sec-cta-banner-container {
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 30px;
}

.sec-cta-banner-text {
	max-width: 800px;
}

.sec-cta-banner-title {
	font-size: 32px;
	font-weight: 700;
	color: var(--cta-title-color, #ffffff);
	margin: 0 0 12px 0;
	line-height: 1.3;
	letter-spacing: -0.5px;
}

.sec-cta-banner-desc {
	font-size: 16px;
	color: var(--cta-desc-color, rgba(255, 255, 255, 0.9));
	margin: 0;
	line-height: 1.6;
}

/* White contrast button */
.sec-cta-banner-btn {
	background: rgba(255, 255, 255, 0.28) !important;
	color: #ffffff !important;
	border: 1px solid rgba(255, 255, 255, 0.55) !important;
	box-shadow: 0 8px 24px rgba(0, 0, 0, 0.18) !important;
	-webkit-backdrop-filter: var(--sec-glass-blur, blur(16px));
	backdrop-filter: var(--sec-glass-blur, blur(16px));
	text-shadow: 0 1px 10px rgba(0, 0, 0, 0.22);
}

.sec-cta-banner-btn:hover {
	transform: translateY(-3px) !important;
	background: rgba(255, 255, 255, 0.4) !important;
	color: #ffffff !important;
	box-shadow: var(--sec-shadow-md, 0 8px 24px rgba(0, 0, 0, 0.6)) !important;
}

/* Responsive Media Queries */
@media (max-width: 991px) {
	.sec-cta-banner-container {
		flex-direction: column;
		text-align: center;
	}
	
	.sec-cta-banner-title {
		font-size: 28px;
	}
	
	.sec-cta-banner-desc {
		font-size: 15px;
	}
}

@media (max-width: 575px) {
	.sec-cta-banner-wrapper {
		padding: 50px 0;
	}
	
	.sec-cta-banner-title {
		font-size: 24px;
	}
}

/* CTA keeps the full brand gradient in every theme. */
