/* vidaytu/contacto-cta-banner */

.vidaytu-contacto-cta-banner {
	width: 100%;
}

/* ---------- Section background variants ---------- */

.vidaytu-contacto-cta-banner.is-bg-default {
	background: var(--wp--preset--color--bg);
}
.vidaytu-contacto-cta-banner.is-bg-soft {
	background: var(--wp--preset--color--bg-soft);
}
.vidaytu-contacto-cta-banner.is-bg-muted {
	background: var(--wp--preset--color--bg-muted);
}
.vidaytu-contacto-cta-banner.is-bg-navy {
	background: var(--wp--preset--color--navy);
	color: #fff;
}
.vidaytu-contacto-cta-banner.is-bg-primary {
	background: var(--wp--preset--color--primary);
	color: #fff;
}

/* ---------- Layout sizes ---------- */

.vidaytu-contacto-cta-banner.is-size-compact {
	padding-block: var(--wp--preset--spacing--40);
}
.vidaytu-contacto-cta-banner.is-size-comfortable {
	padding-block: var(--wp--preset--spacing--60);
}
.vidaytu-contacto-cta-banner.is-size-spacious {
	padding-block: var(--wp--preset--spacing--70);
}

.vidaytu-contacto-cta-banner__inner {
	max-width: var(--wp--style--global--content-size);
	margin-inline: auto;
	padding-inline: var(--wp--preset--spacing--40);
	display: flex;
	flex-direction: column;
	gap: var(--wp--preset--spacing--30);
}

.vidaytu-contacto-cta-banner.is-align-center .vidaytu-contacto-cta-banner__inner {
	align-items: center;
	text-align: center;
}
.vidaytu-contacto-cta-banner.is-align-left .vidaytu-contacto-cta-banner__inner {
	align-items: flex-start;
	text-align: left;
}

/* ---------- Eyebrow ---------- */

.vidaytu-contacto-cta-banner__eyebrow {
	margin: 0;
	font-size: var(--wp--preset--font-size--sm);
	font-weight: 600;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	color: var(--wp--preset--color--primary);
}
.vidaytu-contacto-cta-banner.is-bg-navy .vidaytu-contacto-cta-banner__eyebrow,
.vidaytu-contacto-cta-banner.is-bg-primary .vidaytu-contacto-cta-banner__eyebrow {
	color: #fff;
	opacity: 0.85;
}

/* ---------- Title ---------- */

.vidaytu-contacto-cta-banner__title {
	margin: 0;
	font-family: var(--wp--preset--font-family--display);
	font-size: var(--wp--preset--font-size--3xl);
	font-weight: 700;
	line-height: 1.2;
	letter-spacing: -0.01em;
	color: var(--wp--preset--color--navy);
	max-width: 36ch;
}
.vidaytu-contacto-cta-banner.is-bg-navy .vidaytu-contacto-cta-banner__title,
.vidaytu-contacto-cta-banner.is-bg-primary .vidaytu-contacto-cta-banner__title {
	color: #fff;
}
.vidaytu-contacto-cta-banner.is-align-center .vidaytu-contacto-cta-banner__title {
	margin-inline: auto;
}

/* ---------- Body ---------- */

.vidaytu-contacto-cta-banner__body {
	margin: 0;
	font-size: var(--wp--preset--font-size--md);
	line-height: 1.6;
	color: var(--wp--preset--color--text-muted);
	max-width: 60ch;
}
.vidaytu-contacto-cta-banner__body p {
	margin: 0;
}
.vidaytu-contacto-cta-banner__body p + p {
	margin-top: 0.5rem;
}
.vidaytu-contacto-cta-banner.is-align-center .vidaytu-contacto-cta-banner__body {
	margin-inline: auto;
}
.vidaytu-contacto-cta-banner.is-bg-navy .vidaytu-contacto-cta-banner__body,
.vidaytu-contacto-cta-banner.is-bg-primary .vidaytu-contacto-cta-banner__body {
	color: rgba(255, 255, 255, 0.85);
}

/* ---------- Actions ---------- */

.vidaytu-contacto-cta-banner__actions {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: var(--wp--preset--spacing--30);
	margin-top: var(--wp--preset--spacing--20);
}
.vidaytu-contacto-cta-banner.is-align-center .vidaytu-contacto-cta-banner__actions {
	justify-content: center;
}

.vidaytu-contacto-cta-banner__cta {
	display: inline-flex;
	align-items: center;
	gap: 0.4rem;
	font-weight: 600;
	text-decoration: none;
	white-space: nowrap;
	transition: background-color 0.15s ease, color 0.15s ease, border-color 0.15s ease;
}

.vidaytu-contacto-cta-banner__cta--button {
	background: var(--wp--preset--color--primary);
	color: #fff;
	padding: 0.85rem 1.65rem;
	border-radius: var(--wp--custom--radius--md);
}
.vidaytu-contacto-cta-banner__cta--button:hover {
	background: var(--wp--preset--color--primary-hover);
	color: #fff;
}

.vidaytu-contacto-cta-banner__cta--outline {
	background: transparent;
	color: var(--wp--preset--color--primary);
	padding: 0.78rem 1.6rem;
	border-radius: var(--wp--custom--radius--md);
	border: 2px solid var(--wp--preset--color--primary);
}
.vidaytu-contacto-cta-banner__cta--outline:hover {
	background: var(--wp--preset--color--primary);
	color: #fff;
}

.vidaytu-contacto-cta-banner__cta--link {
	background: transparent;
	padding: 0.6rem 0.2rem;
	color: var(--wp--preset--color--primary);
}
.vidaytu-contacto-cta-banner__cta--link:hover {
	color: var(--wp--preset--color--primary-hover);
}
.vidaytu-contacto-cta-banner__cta-arrow {
	display: inline-block;
	transition: transform 0.15s ease;
}
.vidaytu-contacto-cta-banner__cta--link:hover .vidaytu-contacto-cta-banner__cta-arrow {
	transform: translateX(2px);
}

/* CTA inversions on dark surfaces */
.vidaytu-contacto-cta-banner.is-bg-navy .vidaytu-contacto-cta-banner__cta--button,
.vidaytu-contacto-cta-banner.is-bg-primary .vidaytu-contacto-cta-banner__cta--button {
	background: #fff;
	color: var(--wp--preset--color--navy);
}
.vidaytu-contacto-cta-banner.is-bg-navy .vidaytu-contacto-cta-banner__cta--button:hover,
.vidaytu-contacto-cta-banner.is-bg-primary .vidaytu-contacto-cta-banner__cta--button:hover {
	background: var(--wp--preset--color--bg-soft);
	color: var(--wp--preset--color--navy);
}
.vidaytu-contacto-cta-banner.is-bg-navy .vidaytu-contacto-cta-banner__cta--outline,
.vidaytu-contacto-cta-banner.is-bg-primary .vidaytu-contacto-cta-banner__cta--outline {
	color: #fff;
	border-color: #fff;
}
.vidaytu-contacto-cta-banner.is-bg-navy .vidaytu-contacto-cta-banner__cta--outline:hover,
.vidaytu-contacto-cta-banner.is-bg-primary .vidaytu-contacto-cta-banner__cta--outline:hover {
	background: #fff;
	color: var(--wp--preset--color--navy);
}
.vidaytu-contacto-cta-banner.is-bg-navy .vidaytu-contacto-cta-banner__cta--link,
.vidaytu-contacto-cta-banner.is-bg-primary .vidaytu-contacto-cta-banner__cta--link {
	color: #fff;
}

/* ---------- Responsive ---------- */

@media (max-width: 760px) {
	.vidaytu-contacto-cta-banner__title {
		font-size: var(--wp--preset--font-size--2xl);
	}
	.vidaytu-contacto-cta-banner__actions {
		width: 100%;
		flex-direction: column;
		align-items: stretch;
	}
	.vidaytu-contacto-cta-banner.is-align-center .vidaytu-contacto-cta-banner__actions {
		align-items: center;
	}
	.vidaytu-contacto-cta-banner__cta {
		width: 100%;
		max-width: 320px;
		justify-content: center;
	}
	.vidaytu-contacto-cta-banner__cta--link {
		width: auto;
	}
}
