/*
 * kp-cta.css — CTA pre-footer (Home bloc 7).
 *
 * Figma : 10132:954. Fond photo sombre (vignette haut+bas) + carte glass centrée
 * (titre 64px + sous-titre + 2 boutons : primary orange + ghost outline).
 * Auto-enqueué (kp-pattern-cta, dep kp-tokens).
 *
 * NB : présent en pre-footer sur TOUTES les pages dans Figma → candidat synced
 * wp_block quand les autres pages seront construites (pour l'instant inline Home).
 */

.kp-cta {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 10.75rem var(--kp-section-padding-x, 4.5rem); /* 172 */
	overflow: clip;
	background-color: var(--kp-color-surface-deep);
	background-image: url('../../img/kp-cta-bg.jpg');
	background-size: cover;
	background-position: center;
}

/* Vignette haut + bas vers noir */
.kp-cta::before {
	content: "";
	position: absolute;
	inset: 0;
	z-index: 0;
	background: linear-gradient(
		180deg,
		var(--kp-color-surface-deep) 0%,
		rgba(10, 10, 10, 0.6) 12%,
		rgba(10, 10, 10, 0) 32%,
		rgba(10, 10, 10, 0) 68%,
		rgba(10, 10, 10, 0.6) 88%,
		var(--kp-color-surface-deep) 100%
	);
}

.kp-cta__card {
	position: relative;
	z-index: 1;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 3.75rem; /* 60 */
	width: 100%;
	max-width: 1096px;
	padding: var(--kp-space-12) var(--kp-space-8);
	background: rgba(255, 255, 255, 0.02);
	border: 1px solid rgba(255, 255, 255, 0.12);
	border-radius: var(--kp-radius-md); /* léger arrondi (8px) sur la carte glassy */
	-webkit-backdrop-filter: blur(20px);
	backdrop-filter: blur(20px);
}

.kp-cta__text {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: var(--kp-space-6);
	text-align: center;
}

.kp-cta__title {
	margin: 0;
	font-family: var(--kp-font-sans);
	font-size: clamp(2.25rem, 5.5vw, 4rem); /* ~64 */
	font-weight: var(--kp-font-weight-light);
	letter-spacing: -0.05em;
	line-height: 1.1;
	color: var(--kp-color-text-inverse);
}

.kp-cta__subtitle {
	margin: 0;
	max-width: 760px;
	font-family: var(--kp-font-sans);
	font-size: var(--kp-font-size-20);
	font-weight: var(--kp-font-weight-regular);
	line-height: 1.3;
	color: var(--kp-color-text-muted);
}

.kp-cta__actions {
	display: flex;
	gap: var(--kp-space-6);
	flex-wrap: wrap;
	justify-content: center;
}

.kp-cta__actions .kp-btn {
	width: 300px;
	max-width: 100%;
}

@media (max-width: 768px) {
	.kp-cta {
		padding: var(--kp-space-20) var(--kp-space-6);
	}
	.kp-cta__card {
		padding: var(--kp-space-10) var(--kp-space-6);
	}
}
