/* Canarias Landing System (.cnl-*)
   Mobile-first, update-proof frente a Listeo.
   Cargado SOLO en páginas con _cnp_landing=1 o template canarias-landing.php.
   Specificity alta intencionada (body.cnl-landing-active .cnl-landing X) para
   vencer al CSS global del theme sin tocar el theme. */

body.cnl-landing-active {
	background: #fff !important;
}

body.cnl-landing-active .cnl-page,
body.cnl-landing-active .cnl-landing,
body.cnl-landing-active .cnl-landing * {
	box-sizing: border-box;
}

body.cnl-landing-active .cnl-landing {
	--cnl-yellow: #F5C518;
	--cnl-yellow-soft: #FFE082;
	--cnl-yellow-dark: #B8911A;
	--cnl-ink: #0D1A2E;
	--cnl-ink-soft: #22324A;
	--cnl-cream: #FAF3E0;
	--cnl-cream-soft: #FDFBF6;
	--cnl-line: #E8DEC6;
	--cnl-muted: #5B6472;
	--cnl-white: #FFFFFF;
	--cnl-success: #16A34A;
	--cnl-shadow: 0 18px 44px rgba(13, 26, 46, 0.12);
	--cnl-shadow-sm: 0 4px 14px rgba(13, 26, 46, 0.06);

	width: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
	color: var(--cnl-ink) !important;
	background: var(--cnl-white) !important;
	font-family: var(--canarias-sans, Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif) !important;
	font-size: 17px !important;
	line-height: 1.6 !important;
	overflow-x: clip;
}

body.cnl-landing-active .cnl-landing :is(h1, h2, h3, h4, h5, h6, p, li, a, span, strong, em, small, button, input, textarea, select) {
	font-family: var(--canarias-sans, Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif) !important;
	letter-spacing: 0 !important;
}

body.cnl-landing-active .cnl-landing :is(h1, h2, h3, h4, h5, h6) {
	margin: 0 0 14px !important;
	color: var(--cnl-ink) !important;
	font-weight: 750 !important;
	line-height: 1.08 !important;
	text-transform: none !important;
}

body.cnl-landing-active .cnl-landing h1 {
	font-size: clamp(2.2rem, 5vw, 3.6rem) !important;
	line-height: 1.08 !important;
	letter-spacing: -0.02em !important;
	max-width: 18ch;
}

body.cnl-landing-active .cnl-landing h2 {
	font-size: clamp(1.65rem, 3.8vw, 2.4rem) !important;
	line-height: 1.15 !important;
	letter-spacing: -0.015em !important;
	max-width: 22ch;
}

body.cnl-landing-active .cnl-landing h3 {
	font-size: clamp(1.2rem, 2.2vw, 1.45rem) !important;
	line-height: 1.25 !important;
	letter-spacing: -0.01em !important;
}

body.cnl-landing-active .cnl-landing p:not(.cnl-price):not(.cnl-note) {
	margin: 0 0 18px !important;
	color: var(--cnl-ink-soft) !important;
	font-size: 1.06rem !important;
	line-height: 1.65 !important;
}

body.cnl-landing-active .cnl-landing a {
	color: inherit !important;
	text-decoration-thickness: 0.08em;
	text-underline-offset: 0.18em;
}

body.cnl-landing-active .cnl-content > :first-child,
body.cnl-landing-active .cnl-section > :first-child {
	margin-top: 0 !important;
}

body.cnl-landing-active .cnl-content > :last-child,
body.cnl-landing-active .cnl-section > :last-child {
	margin-bottom: 0 !important;
}

body.cnl-landing-active .cnl-container {
	width: min(100% - 32px, 1120px) !important;
	margin-inline: auto !important;
}

body.cnl-landing-active .cnl-container--narrow {
	width: min(100% - 32px, 820px) !important;
	margin-inline: auto !important;
}

body.cnl-landing-active .cnl-section {
	padding: clamp(36px, 6vw, 72px) 0 !important;
	position: relative;
}

body.cnl-landing-active .cnl-section--cream {
	background: var(--cnl-cream) !important;
}

body.cnl-landing-active .cnl-section--soft {
	background: var(--cnl-cream-soft) !important;
}

body.cnl-landing-active .cnl-hero {
	padding: clamp(40px, 7vw, 84px) 0 clamp(28px, 5vw, 56px) !important;
	background:
		radial-gradient(ellipse at top right, rgba(245, 197, 24, 0.16), transparent 55%),
		linear-gradient(180deg, rgba(250, 243, 224, 0.92), rgba(255, 255, 255, 1)) !important;
}

body.cnl-landing-active .cnl-hero__grid,
body.cnl-landing-active .cnl-grid {
	display: grid !important;
	gap: 32px !important;
}

body.cnl-landing-active .cnl-hero__grid {
	align-items: center !important;
}

body.cnl-landing-active .cnl-hero__media {
	display: block !important;
	width: 100% !important;
	border-radius: 18px !important;
	overflow: hidden !important;
	background: linear-gradient(135deg, var(--cnl-cream) 0%, var(--cnl-yellow-soft) 100%) !important;
	box-shadow: var(--cnl-shadow) !important;
	aspect-ratio: 3 / 2 !important;
	position: relative !important;
}

body.cnl-landing-active .cnl-hero__media img {
	display: block !important;
	width: 100% !important;
	height: 100% !important;
	object-fit: cover !important;
	object-position: center !important;
}

body.cnl-landing-active .cnl-feature-icon {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 48px !important;
	height: 48px !important;
	margin: 0 0 16px !important;
	background: var(--cnl-yellow) !important;
	border-radius: 12px !important;
	font-size: 24px !important;
	font-weight: 700 !important;
	line-height: 1 !important;
	color: var(--cnl-ink) !important;
	box-shadow: 0 4px 12px rgba(245, 197, 24, 0.3) !important;
}

body.cnl-landing-active .cnl-feature-icon svg {
	width: 26px !important;
	height: 26px !important;
	color: var(--cnl-ink) !important;
	stroke: currentColor !important;
	display: block !important;
}

/* === Feature grid editorial (sección "Lo que Canarias.app hace") ===
   Patrón Slack/WSJ Membership: icon outline yellow brand, sin pill cuadrado,
   borderless compact icon grid (shadcn pattern). Solo aplica a la sección
   que NO es cnl-section--soft (steps mantienen su modifier --step). */
body.cnl-landing-active .cnl-section:not(.cnl-section--soft) .cnl-feature-grid .cnl-card .cnl-feature-icon:not(.cnl-feature-icon--step) {
	width: auto !important;
	height: auto !important;
	background: transparent !important;
	border-radius: 0 !important;
	box-shadow: none !important;
	padding: 0 !important;
	margin: 0 0 18px !important;
	color: var(--cnl-yellow-ink, #B8870F) !important;
}

body.cnl-landing-active .cnl-section:not(.cnl-section--soft) .cnl-feature-grid .cnl-card .cnl-feature-icon:not(.cnl-feature-icon--step) svg {
	width: 32px !important;
	height: 32px !important;
	color: var(--cnl-yellow-ink, #B8870F) !important;
	stroke: currentColor !important;
	stroke-width: 1.75 !important;
	display: block !important;
}

/* Cards de la feature grid editorial: borderless minimal con hover lift */
body.cnl-landing-active .cnl-section:not(.cnl-section--soft) .cnl-feature-grid .cnl-card {
	background: #fff !important;
	border: 1px solid rgba(13, 26, 46, 0.06) !important;
	border-radius: 16px !important;
	padding: 26px 24px !important;
	box-shadow: 0 1px 2px rgba(13, 26, 46, 0.03) !important;
	transition: transform 0.18s ease, box-shadow 0.18s ease, border-color 0.18s ease !important;
}

body.cnl-landing-active .cnl-section:not(.cnl-section--soft) .cnl-feature-grid .cnl-card:hover {
	transform: translateY(-3px) !important;
	border-color: rgba(245, 197, 24, 0.45) !important;
	box-shadow: 0 12px 28px -16px rgba(13, 26, 46, 0.18), 0 4px 10px -4px rgba(245, 197, 24, 0.12) !important;
}

body.cnl-landing-active .cnl-section:not(.cnl-section--soft) .cnl-feature-grid .cnl-card h3 {
	font-size: 19px !important;
	font-weight: 700 !important;
	line-height: 1.25 !important;
	margin: 0 0 10px !important;
	color: var(--cnl-ink, #0D1A2E) !important;
}

body.cnl-landing-active .cnl-section:not(.cnl-section--soft) .cnl-feature-grid .cnl-card p {
	font-size: 15px !important;
	line-height: 1.6 !important;
	color: var(--cnl-ink-soft, #22324A) !important;
	margin: 0 !important;
}

@media (prefers-reduced-motion: reduce) {
	body.cnl-landing-active .cnl-section:not(.cnl-section--soft) .cnl-feature-grid .cnl-card {
		transition: none !important;
	}
	body.cnl-landing-active .cnl-section:not(.cnl-section--soft) .cnl-feature-grid .cnl-card:hover {
		transform: none !important;
	}
}

/* ====================================================================
   Bento asymmetric grid — "Lo que Canarias.app hace por tu negocio"
   Patrón: v0.dev bento + iconos Lucide grandes (sin mockups inventados).
   Layout desktop: 7+5 / 5+3+4 / 12. Cards "star" con bg yellow soft.
   ==================================================================== */
body.cnl-landing-active .cnl-bento-grid {
	display: grid !important;
	grid-template-columns: 1fr !important;
	gap: 18px !important;
	align-items: stretch !important;
}

body.cnl-landing-active .cnl-bento-card {
	position: relative !important;
	display: flex !important;
	flex-direction: column !important;
	gap: 22px !important;
	background: #fff !important;
	border: 1px solid rgba(13, 26, 46, 0.08) !important;
	border-radius: 20px !important;
	padding: 32px 28px !important;
	box-shadow: 0 1px 2px rgba(13, 26, 46, 0.03) !important;
	transition: transform 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease !important;
}

body.cnl-landing-active .cnl-bento-card:hover {
	transform: translateY(-4px) !important;
	border-color: rgba(245, 197, 24, 0.55) !important;
	box-shadow: 0 18px 38px -20px rgba(13, 26, 46, 0.22), 0 6px 16px -8px rgba(245, 197, 24, 0.18) !important;
}

body.cnl-landing-active .cnl-bento-card--star {
	background: linear-gradient(135deg, rgba(245, 197, 24, 0.12), rgba(245, 197, 24, 0.04)) !important;
	border-color: rgba(245, 197, 24, 0.35) !important;
}

body.cnl-landing-active .cnl-bento-card__icon {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 76px !important;
	height: 76px !important;
	border-radius: 20px !important;
	background: rgba(245, 197, 24, 0.16) !important;
	color: var(--cnl-yellow-ink, #8B6914) !important;
	flex-shrink: 0 !important;
	align-self: flex-start !important;
}

body.cnl-landing-active .cnl-bento-card--star .cnl-bento-card__icon {
	background: var(--cnl-yellow, #F5C518) !important;
	color: var(--cnl-ink, #0D1A2E) !important;
	box-shadow: 0 10px 24px -8px rgba(245, 197, 24, 0.5) !important;
}

body.cnl-landing-active .cnl-bento-card__icon svg {
	width: 38px !important;
	height: 38px !important;
	stroke: currentColor !important;
	display: block !important;
}

body.cnl-landing-active .cnl-bento-card__content {
	display: flex !important;
	flex-direction: column !important;
	gap: 10px !important;
	flex: 1 !important;
}

body.cnl-landing-active .cnl-bento-card__content h3 {
	margin: 0 !important;
	font-family: 'Inter', system-ui, sans-serif !important;
	font-size: 22px !important;
	font-weight: 800 !important;
	line-height: 1.2 !important;
	letter-spacing: -0.01em !important;
	color: var(--cnl-ink, #0D1A2E) !important;
}

body.cnl-landing-active .cnl-bento-card__content p {
	margin: 0 !important;
	font-size: 15.5px !important;
	line-height: 1.6 !important;
	color: var(--cnl-ink-soft, #22324A) !important;
}

body.cnl-landing-active .cnl-bento-card__chip {
	position: absolute !important;
	top: 22px !important;
	right: 22px !important;
	display: inline-flex !important;
	align-items: center !important;
	padding: 6px 12px !important;
	border-radius: 999px !important;
	background: var(--cnl-yellow, #F5C518) !important;
	color: var(--cnl-ink, #0D1A2E) !important;
	font-size: 10.5px !important;
	font-weight: 800 !important;
	letter-spacing: 0.06em !important;
	text-transform: uppercase !important;
	line-height: 1 !important;
	box-shadow: 0 4px 12px -4px rgba(245, 197, 24, 0.5) !important;
}

/* Tablet 720+: 2 cols genéricas */
@media (min-width: 720px) {
	body.cnl-landing-active .cnl-bento-grid {
		grid-template-columns: repeat(12, 1fr) !important;
		gap: 20px !important;
	}
	body.cnl-landing-active .cnl-bento-card { grid-column: span 6 !important; }
	body.cnl-landing-active .cnl-bento-card--full { grid-column: span 12 !important; }
}

/* Desktop ancho ≥1024: layout asimétrico bento */
@media (min-width: 1024px) {
	body.cnl-landing-active .cnl-bento-card--wide         { grid-column: span 7 !important; }
	body.cnl-landing-active .cnl-bento-card--medium       { grid-column: span 5 !important; }
	body.cnl-landing-active .cnl-bento-card--medium-wide  { grid-column: span 5 !important; }
	body.cnl-landing-active .cnl-bento-card--small-a      { grid-column: span 3 !important; }
	body.cnl-landing-active .cnl-bento-card--small-b      { grid-column: span 4 !important; }
	body.cnl-landing-active .cnl-bento-card--full         { grid-column: span 12 !important; }
}

/* Card full-width bottom: layout horizontal icon + content */
@media (min-width: 720px) {
	body.cnl-landing-active .cnl-bento-card--full {
		flex-direction: row !important;
		align-items: center !important;
		gap: 32px !important;
		padding: 28px 32px !important;
	}
	body.cnl-landing-active .cnl-bento-card--full .cnl-bento-card__icon {
		align-self: center !important;
	}
}

@media (prefers-reduced-motion: reduce) {
	body.cnl-landing-active .cnl-bento-card {
		transition: none !important;
	}
	body.cnl-landing-active .cnl-bento-card:hover {
		transform: none !important;
	}
}

/* Step head: número + título en una sola línea */
body.cnl-landing-active .cnl-step-head {
	display: flex !important;
	align-items: center !important;
	gap: 12px !important;
	margin: 0 0 10px !important;
}

body.cnl-landing-active .cnl-step-head h3 {
	margin: 0 !important;
}

/* Modifier del icon usado en steps: cuadrado compacto, sin margin propio */
body.cnl-landing-active .cnl-feature-icon--step {
	width: 36px !important;
	height: 36px !important;
	margin: 0 !important;
	font-size: 17px !important;
	border-radius: 9px !important;
	flex-shrink: 0 !important;
	box-shadow: 0 2px 8px rgba(245, 197, 24, 0.28) !important;
}

body.cnl-landing-active .cnl-stack--center .cnl-proof,
body.cnl-landing-active .cnl-section--cream .cnl-stack--center > .cnl-proof {
	align-self: center !important;
}

body.cnl-landing-active .cnl-proof {
	display: inline-flex !important;
	align-items: center !important;
	align-self: flex-start !important;
	width: auto !important;
	max-width: max-content !important;
	gap: 10px !important;
	padding: 8px 14px !important;
	margin: 0 0 18px !important;
	background: var(--cnl-white) !important;
	border: 1px solid var(--cnl-line) !important;
	border-radius: 999px !important;
	font-size: 0.92rem !important;
	font-weight: 600 !important;
	color: var(--cnl-ink) !important;
	box-shadow: var(--cnl-shadow-sm) !important;
}

body.cnl-landing-active .cnl-hero .cnl-actions {
	justify-content: center !important;
	align-self: center !important;
}

body.cnl-landing-active .cnl-h2-sub {
	display: block !important;
	margin-top: 10px !important;
	font-size: 0.58em !important;
	font-weight: 600 !important;
	color: var(--cnl-ink-soft) !important;
	letter-spacing: -0.005em !important;
	line-height: 1.3 !important;
}

@media (min-width: 720px) {
	body.cnl-landing-active .cnl-h2-sub {
		font-size: 0.52em !important;
		margin-top: 12px !important;
	}
}

body.cnl-landing-active .cnl-landing .cnl-proof__stars {
	color: var(--cnl-yellow) !important;
	letter-spacing: -1px !important;
	font-size: 1em !important;
	line-height: 1 !important;
	word-spacing: -3px !important;
}

body.cnl-landing-active .cnl-stat-row {
	display: grid !important;
	grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
	gap: 0 !important;
	margin: 32px 0 0 !important;
	padding: 24px 0 0 !important;
	border-top: 1px solid var(--cnl-line) !important;
}

body.cnl-landing-active .cnl-stat-row > div {
	text-align: left !important;
	padding: 4px 18px 4px 0 !important;
}

body.cnl-landing-active .cnl-stat-row > div + div {
	border-left: 1px solid var(--cnl-line) !important;
	padding-left: 22px !important;
}

@media (max-width: 540px) {
	body.cnl-landing-active .cnl-stat-row {
		grid-template-columns: 1fr !important;
		gap: 14px !important;
	}
	body.cnl-landing-active .cnl-stat-row > div + div {
		border-left: 0 !important;
		border-top: 1px solid var(--cnl-line) !important;
		padding-left: 0 !important;
		padding-top: 14px !important;
	}
}

body.cnl-landing-active .cnl-stat-row strong {
	display: block !important;
	font-size: clamp(1.5rem, 3vw, 2rem) !important;
	font-weight: 850 !important;
	color: var(--cnl-ink) !important;
	line-height: 1 !important;
	letter-spacing: -0.02em !important;
	font-variant-numeric: tabular-nums !important;
}

body.cnl-landing-active .cnl-stat-row span {
	display: block !important;
	margin-top: 4px !important;
	font-size: 0.88rem !important;
	color: var(--cnl-muted) !important;
	line-height: 1.3 !important;
}

body.cnl-landing-active .cnl-stack {
	display: flex !important;
	flex-direction: column !important;
	gap: 16px !important;
}

body.cnl-landing-active .cnl-kicker {
	display: inline-flex !important;
	align-items: center !important;
	align-self: flex-start !important;
	gap: 8px !important;
	width: auto !important;
	max-width: max-content !important;
	margin: 0 0 16px !important;
	padding: 6px 14px 6px 11px !important;
	border: 1px solid rgba(245, 197, 24, 0.55) !important;
	border-radius: 999px !important;
	background: linear-gradient(135deg, rgba(245, 197, 24, 0.18), rgba(245, 197, 24, 0.06)) !important;
	box-shadow: 0 1px 2px rgba(13, 26, 46, 0.04), 0 6px 18px -10px rgba(245, 197, 24, 0.45) !important;
	color: var(--cnl-ink) !important;
	font-size: 11px !important;
	font-weight: 600 !important;
	line-height: 1.35 !important;
	letter-spacing: 0.4px !important;
	text-transform: uppercase !important;
}

body.cnl-landing-active .cnl-lead {
	max-width: 58ch !important;
	margin: 0 0 22px !important;
	color: var(--cnl-ink-soft) !important;
	font-size: clamp(1.15rem, 2.4vw, 1.4rem) !important;
	line-height: 1.5 !important;
	font-weight: 450 !important;
}

body.cnl-landing-active .cnl-actions {
	display: flex !important;
	flex-wrap: wrap !important;
	align-items: center !important;
	gap: 12px !important;
	margin: 26px 0 0 !important;
}

body.cnl-landing-active .cnl-actions br {
	display: none !important;
}

body.cnl-landing-active .cnl-actions p {
	display: contents !important;
}

body.cnl-landing-active .cnl-button,
body.cnl-landing-active .cnl-button:visited {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	min-height: 52px !important;
	min-width: 52px !important;
	padding: 14px 22px !important;
	border: 2px solid var(--cnl-ink) !important;
	border-radius: 10px !important;
	background: var(--cnl-ink) !important;
	color: var(--cnl-white) !important;
	box-shadow: 0 4px 14px rgba(13, 26, 46, 0.1) !important;
	font-size: 1.02rem !important;
	font-weight: 800 !important;
	line-height: 1.15 !important;
	text-align: center !important;
	text-decoration: none !important;
	white-space: normal !important;
	cursor: pointer !important;
	transition: transform 160ms ease, box-shadow 160ms ease, background-color 160ms ease, border-color 160ms ease !important;
}

body.cnl-landing-active .cnl-button:hover,
body.cnl-landing-active .cnl-button:focus-visible {
	transform: translateY(-1px);
	box-shadow: 0 12px 24px rgba(13, 26, 46, 0.18) !important;
}

body.cnl-landing-active .cnl-button:focus-visible {
	outline: 3px solid rgba(245, 197, 24, 0.75) !important;
	outline-offset: 3px !important;
}

body.cnl-landing-active .cnl-button--primary,
body.cnl-landing-active .cnl-button--primary:visited {
	border-color: var(--cnl-yellow) !important;
	background: var(--cnl-yellow) !important;
	color: var(--cnl-ink) !important;
}

body.cnl-landing-active .cnl-button--primary:hover,
body.cnl-landing-active .cnl-button--primary:focus-visible {
	border-color: var(--cnl-ink) !important;
	background: var(--cnl-ink) !important;
	color: var(--cnl-white, #ffffff) !important;
}

body.cnl-landing-active .cnl-button--secondary,
body.cnl-landing-active .cnl-button--secondary:visited {
	border-color: rgba(13, 26, 46, 0.18) !important;
	background: var(--cnl-white) !important;
	color: var(--cnl-ink) !important;
}

body.cnl-landing-active .cnl-card,
body.cnl-landing-active .cnl-price-card {
	display: flex !important;
	flex-direction: column !important;
	gap: 12px !important;
	min-width: 0 !important;
	padding: 22px !important;
	border: 1px solid var(--cnl-line) !important;
	border-radius: 8px !important;
	background: var(--cnl-white) !important;
	box-shadow: 0 1px 0 rgba(13, 26, 46, 0.05) !important;
}

body.cnl-landing-active .cnl-card--featured,
body.cnl-landing-active .cnl-price-card--featured {
	border: 2px solid var(--cnl-yellow) !important;
	box-shadow: var(--cnl-shadow) !important;
}

body.cnl-landing-active .cnl-cards,
body.cnl-landing-active .cnl-pricing-grid,
body.cnl-landing-active .cnl-feature-grid {
	display: grid !important;
	grid-template-columns: 1fr !important;
	gap: 16px !important;
	align-items: stretch !important;
}

body.cnl-landing-active .cnl-price {
	display: flex !important;
	align-items: baseline !important;
	gap: 6px !important;
	margin: 2px 0 8px !important;
	color: var(--cnl-ink) !important;
	font-size: clamp(2rem, 9vw, 3rem) !important;
	font-weight: 850 !important;
	line-height: 1 !important;
	font-variant-numeric: tabular-nums !important;
}

body.cnl-landing-active .cnl-price small {
	color: var(--cnl-muted) !important;
	font-size: 0.95rem !important;
	font-weight: 700 !important;
}

body.cnl-landing-active .cnl-price-strike {
	color: var(--cnl-muted) !important;
	font-size: 0.42em !important;
	font-weight: 700 !important;
	text-decoration: line-through !important;
	text-decoration-thickness: 2px !important;
	opacity: 0.65 !important;
	align-self: baseline !important;
	margin-right: 4px !important;
	letter-spacing: 0 !important;
}

body.cnl-landing-active .cnl-badge {
	display: inline-flex !important;
	align-items: center !important;
	gap: 6px !important;
	width: fit-content !important;
	padding: 5px 9px !important;
	border-radius: 999px !important;
	background: rgba(22, 163, 74, 0.12) !important;
	color: #14532D !important;
	font-size: 0.78rem !important;
	font-weight: 800 !important;
	line-height: 1.2 !important;
}

body.cnl-landing-active .cnl-list {
	display: grid !important;
	gap: 10px !important;
	margin: 0 !important;
	padding: 0 !important;
	list-style: none !important;
}

body.cnl-landing-active .cnl-list li {
	position: relative !important;
	margin: 0 !important;
	padding-left: 26px !important;
	color: var(--cnl-ink-soft) !important;
	font-size: 0.98rem !important;
	line-height: 1.55 !important;
}

body.cnl-landing-active .cnl-list li::before {
	content: "" !important;
	position: absolute !important;
	left: 0 !important;
	top: 0.28em !important;
	width: 18px !important;
	height: 18px !important;
	border-radius: 50% !important;
	background: var(--cnl-yellow) !important;
	background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230D1A2E' stroke-width='3.5' stroke-linecap='round' stroke-linejoin='round'><polyline points='5 12 10 17 19 8'/></svg>") !important;
	background-size: 70% !important;
	background-position: center !important;
	background-repeat: no-repeat !important;
	box-shadow: 0 2px 6px rgba(245, 197, 24, 0.25) !important;
}

body.cnl-landing-active .cnl-media {
	display: block !important;
	width: 100% !important;
	overflow: hidden !important;
	border-radius: 8px !important;
	background: var(--cnl-cream) !important;
	aspect-ratio: 4 / 3 !important;
}

body.cnl-landing-active .cnl-media img,
body.cnl-landing-active .cnl-media picture,
body.cnl-landing-active .cnl-media video {
	display: block !important;
	width: 100% !important;
	height: 100% !important;
	object-fit: cover !important;
}

body.cnl-landing-active .cnl-faq {
	display: grid !important;
	gap: 12px !important;
}

body.cnl-landing-active .cnl-faq details {
	border: 1px solid var(--cnl-line) !important;
	border-radius: 8px !important;
	background: var(--cnl-white) !important;
	padding: 16px 18px !important;
}

body.cnl-landing-active .cnl-faq summary {
	color: var(--cnl-ink) !important;
	font-weight: 800 !important;
	cursor: pointer !important;
	border-radius: 6px !important;
	outline: none !important;
}

body.cnl-landing-active .cnl-faq summary:focus-visible {
	outline: 3px solid rgba(245, 197, 24, 0.85) !important;
	outline-offset: 4px !important;
}

body.cnl-landing-active .cnl-faq details > *:last-child {
	margin-bottom: 0 !important;
}

body.cnl-landing-active .cnl-split {
	display: grid !important;
	grid-template-columns: 1fr !important;
	gap: 28px !important;
	align-items: start !important;
}

body.cnl-landing-active .cnl-note {
	margin: 14px 0 0 !important;
	color: var(--cnl-muted) !important;
	font-size: 0.92rem !important;
	line-height: 1.5 !important;
}

@media (min-width: 720px) {
	body.cnl-landing-active .cnl-container,
	body.cnl-landing-active .cnl-container--narrow {
		width: min(100% - 48px, 1120px) !important;
	}

	body.cnl-landing-active .cnl-hero__grid {
		grid-template-columns: minmax(0, 1.05fr) minmax(280px, 0.95fr) !important;
		gap: clamp(28px, 5vw, 64px) !important;
	}

	body.cnl-landing-active .cnl-cards,
	body.cnl-landing-active .cnl-feature-grid {
		grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
		gap: 18px !important;
	}

	/* "Cómo te montamos la ficha en 24 horas" → 4 cards en una fila */
	body.cnl-landing-active .cnl-section--soft .cnl-feature-grid {
		grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
		gap: 14px !important;
	}
	body.cnl-landing-active .cnl-section--soft .cnl-feature-grid .cnl-card {
		padding: 18px !important;
	}
	body.cnl-landing-active .cnl-section--soft .cnl-feature-grid .cnl-card h3 {
		font-size: 19px !important;
		line-height: 1.25 !important;
	}
	body.cnl-landing-active .cnl-section--soft .cnl-feature-grid .cnl-card p {
		font-size: 15px !important;
		line-height: 1.55 !important;
	}

	/* Caso vivo: 2-col text + mockup */
	body.cnl-landing-active .cnl-case-grid {
		display: grid !important;
		grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
		gap: clamp(20px, 4vw, 56px) !important;
		align-items: center !important;
		max-width: 1180px !important;
		width: 100% !important;
		margin: 0 auto !important;
		align-self: stretch !important;
	}
	body.cnl-landing-active .cnl-stack--center > .cnl-case-grid {
		align-self: center !important;
	}
	body.cnl-landing-active .cnl-case-grid > .cnl-stack {
		text-align: left !important;
		align-items: flex-start !important;
		min-width: 0 !important;
	}
	body.cnl-landing-active .cnl-stack--center .cnl-case-grid .cnl-stack,
	body.cnl-landing-active .cnl-stack--center .cnl-case-grid .cnl-stack > h3,
	body.cnl-landing-active .cnl-stack--center .cnl-case-grid .cnl-stack > p,
	body.cnl-landing-active .cnl-stack--center .cnl-case-grid .cnl-stack > ul,
	body.cnl-landing-active .cnl-stack--center .cnl-case-grid .cnl-stack > ul li,
	body.cnl-landing-active .cnl-stack--center .cnl-case-grid .cnl-stack .cnl-note {
		text-align: left !important;
	}
	body.cnl-landing-active .cnl-case-grid .cnl-note {
		font-size: 15px !important;
		line-height: 1.55 !important;
		color: var(--cnl-ink-soft) !important;
		opacity: 0.92 !important;
		margin-top: 12px !important;
	}
	body.cnl-landing-active .cnl-stack--center .cnl-case-grid .cnl-stack .cnl-actions {
		justify-content: flex-start !important;
		align-self: flex-start !important;
	}
	body.cnl-landing-active .cnl-case-grid .cnl-stack > ul.cnl-list {
		align-self: stretch !important;
		max-width: none !important;
	}
	body.cnl-landing-active .cnl-case-mockup {
		display: flex !important;
		justify-content: center !important;
		align-items: center !important;
		margin: 0 !important;
		min-width: 0 !important;
	}
	body.cnl-landing-active .cnl-case-mockup img {
		max-width: 100% !important;
		width: 100% !important;
		height: auto !important;
		border-radius: 0 !important;
		box-shadow: none !important;
		background: transparent !important;
		display: block !important;
	}
	body.cnl-landing-active .cnl-case-mockup {
		background: transparent !important;
	}
}

@media (max-width: 719px) {
	body.cnl-landing-active .cnl-case-grid {
		grid-template-columns: 1fr !important;
	}
}

@media (min-width: 720px) {
	body.cnl-landing-active .cnl-pricing-grid {
		grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)) !important;
		gap: 18px !important;
	}

	body.cnl-landing-active .cnl-split {
		grid-template-columns: minmax(0, 1fr) minmax(300px, 0.85fr) !important;
		gap: clamp(28px, 5vw, 58px) !important;
	}
}

/* Desktop ancho: 50/50 estricto — ambos cards con igual ancho para que TODOS los
   bullets quepan en 1 línea (los más largos miden ~62 chars en ambos lados).
   El "winner pattern" lo da el borde dorado del featured, no su ancho.
   Solo aplica >=1024px para no afectar tablet/mobile. */
@media (min-width: 1024px) {
	body.cnl-landing-active .cnl-split {
		grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
		gap: clamp(22px, 3.5vw, 44px) !important;
	}
}

@media (max-width: 430px) {
	body.cnl-landing-active .cnl-actions {
		align-items: stretch !important;
	}

	body.cnl-landing-active .cnl-button {
		width: 100% !important;
	}

	body.cnl-landing-active .cnl-card,
	body.cnl-landing-active .cnl-price-card {
		padding: 18px !important;
	}
}

/* ============================================================
 * Landing typography fix - 2026-05-25 (Codex review)
 * Objetivo: laptop ~1500px con texto mas grande, cards menos densas,
 * sin depender del root font-size de Listeo.
 * Override final: gana por cascada sobre las reglas anteriores.
 * Propuesta completa: docs/ai/PROPOSAL_LANDING_TYPO_FIX_2026-05-25.md
 * ============================================================ */

body.cnl-landing-active .cnl-landing {
	font-size: 16px !important;
	line-height: 1.62 !important;
}

body.cnl-landing-active .cnl-landing :is(h1, h2, h3, h4, h5, h6, p, li, a, span, strong, em, small, button, input, textarea, select) {
	letter-spacing: 0 !important;
}

body.cnl-landing-active .cnl-landing h1 {
	font-size: 34px !important;
	line-height: 1.08 !important;
	letter-spacing: 0 !important;
	max-width: none !important;
	text-wrap: balance;
}

@media (max-width: 540px) {
	body.cnl-landing-active .cnl-landing h1 {
		font-size: 28px !important;
		line-height: 1.15 !important;
	}
}

@media (max-width: 380px) {
	body.cnl-landing-active .cnl-landing h1 {
		font-size: 26px !important;
		line-height: 1.18 !important;
	}
}

body.cnl-landing-active .cnl-landing h2 {
	font-size: 28px !important;
	line-height: 1.14 !important;
	letter-spacing: 0 !important;
	max-width: none !important;
}

body.cnl-landing-active .cnl-landing h3 {
	font-size: 19px !important;
	line-height: 1.2 !important;
	letter-spacing: 0 !important;
}

body.cnl-landing-active .cnl-landing h4 {
	font-size: 16px !important;
	line-height: 1.25 !important;
	letter-spacing: 0 !important;
}

body.cnl-landing-active .cnl-landing p:not(.cnl-price):not(.cnl-note) {
	font-size: 15px !important;
	line-height: 1.62 !important;
}

body.cnl-landing-active .cnl-lead {
	font-size: 18px !important;
	line-height: 1.45 !important;
	max-width: 56ch !important;
}

body.cnl-landing-active .cnl-button,
body.cnl-landing-active .cnl-button:visited {
	min-height: 50px !important;
	padding: 13px 20px !important;
	font-size: 15px !important;
	line-height: 1.15 !important;
	letter-spacing: 0 !important;
}

body.cnl-landing-active .cnl-list li {
	font-size: 15px !important;
	line-height: 1.55 !important;
}

body.cnl-landing-active .cnl-stat-row strong {
	font-size: 27px !important;
	line-height: 1 !important;
	letter-spacing: 0 !important;
}

body.cnl-landing-active .cnl-stat-row span {
	font-size: 13px !important;
	line-height: 1.35 !important;
}

body.cnl-landing-active .cnl-kicker {
	padding: 6px 14px 6px 11px !important;
	font-size: 11px !important;
	font-weight: 700 !important;
	line-height: 1.35 !important;
	letter-spacing: 0.05em !important;
	text-transform: uppercase !important;
}

body.cnl-landing-active .cnl-kicker__dot {
	display: inline-block !important;
	width: 8px !important;
	height: 8px !important;
	border-radius: 50% !important;
	background: var(--cnl-yellow, #F5C518) !important;
	box-shadow: 0 0 0 0 rgba(245, 197, 24, 0.6) !important;
	animation: cnl-kicker-pulse 2.4s ease-out infinite !important;
	flex-shrink: 0 !important;
}

@keyframes cnl-kicker-pulse {
	0% { box-shadow: 0 0 0 0 rgba(245, 197, 24, 0.55); }
	70% { box-shadow: 0 0 0 9px rgba(245, 197, 24, 0); }
	100% { box-shadow: 0 0 0 0 rgba(245, 197, 24, 0); }
}

@media (prefers-reduced-motion: reduce) {
	body.cnl-landing-active .cnl-kicker__dot { animation: none !important; }
}

/* Phone frame para mockup case real */
body.cnl-landing-active .cnl-phone-frame {
	position: relative !important;
	width: 100% !important;
	max-width: 300px !important;
	margin: 0 auto !important;
	padding: 10px !important;
	background: #0D1A2E !important;
	border-radius: 42px !important;
	box-shadow: 0 30px 60px -20px rgba(13, 26, 46, 0.35), 0 12px 28px -12px rgba(13, 26, 46, 0.25), inset 0 0 0 1.5px rgba(255, 255, 255, 0.06) !important;
	aspect-ratio: 9 / 19.5 !important;
	overflow: hidden !important;
}

body.cnl-landing-active .cnl-phone-notch {
	position: absolute !important;
	top: 16px !important;
	left: 50% !important;
	transform: translateX(-50%) !important;
	width: 92px !important;
	height: 22px !important;
	background: #000 !important;
	border-radius: 14px !important;
	z-index: 3 !important;
}

body.cnl-landing-active .cnl-phone-screen {
	display: block !important;
	width: 100% !important;
	height: 100% !important;
	object-fit: cover !important;
	object-position: top center !important;
	background: transparent !important;
	border-radius: 0 !important;
}

body.cnl-landing-active .cnl-badge {
	padding: 5px 9px !important;
	font-size: 13px !important;
	line-height: 1.2 !important;
	letter-spacing: 0 !important;
}

body.cnl-landing-active .cnl-proof {
	padding: 8px 13px !important;
	font-size: 13px !important;
	line-height: 1.25 !important;
	letter-spacing: 0 !important;
}

body.cnl-landing-active .cnl-card,
body.cnl-landing-active .cnl-price-card {
	gap: 12px !important;
	padding: 22px !important;
}

body.cnl-landing-active .cnl-card h3,
body.cnl-landing-active .cnl-price-card h3 {
	font-size: 19px !important;
	line-height: 1.2 !important;
	letter-spacing: 0 !important;
}

body.cnl-landing-active .cnl-card p:not(.cnl-price):not(.cnl-note),
body.cnl-landing-active .cnl-price-card p:not(.cnl-price):not(.cnl-note) {
	font-size: 16px !important;
	line-height: 1.58 !important;
}

body.cnl-landing-active .cnl-price-card > p:not(.cnl-price) {
	font-size: 14.5px !important;
	line-height: 1.5 !important;
}

body.cnl-landing-active .cnl-price-card .cnl-note {
	font-size: 13.5px !important;
	line-height: 1.4 !important;
	color: var(--cnl-muted) !important;
	margin-top: -4px !important;
	margin-bottom: 6px !important;
}

body.cnl-landing-active .cnl-price-card .cnl-actions {
	justify-content: center !important;
	margin-top: auto !important;
}

body.cnl-landing-active .cnl-card .cnl-list li,
body.cnl-landing-active .cnl-price-card .cnl-list li {
	font-size: 15px !important;
	line-height: 1.52 !important;
}

body.cnl-landing-active .cnl-price-card .cnl-list li {
	font-size: 13.5px !important;
	line-height: 1.5 !important;
	padding-left: 22px !important;
}

body.cnl-landing-active .cnl-price-card .cnl-list li::before {
	width: 15px !important;
	height: 15px !important;
	top: 0.18em !important;
}

body.cnl-landing-active .cnl-price {
	font-size: 38px !important;
	line-height: 1 !important;
	letter-spacing: 0 !important;
}

body.cnl-landing-active .cnl-price small {
	font-size: 16px !important;
	line-height: 1.2 !important;
}

@media (max-width: 430px) {
	body.cnl-landing-active .cnl-card,
	body.cnl-landing-active .cnl-price-card {
		padding: 20px !important;
	}
}

@media (min-width: 720px) and (max-width: 1099px) {
	/* Tablet / pantalla mediana: tamaños intermedios para que el h1 no se rompa
	   a 3 líneas en viewports entre 720-1099px (laptop pequeño, browser reducido). */
	body.cnl-landing-active .cnl-landing h1 {
		font-size: 38px !important;
		line-height: 1.1 !important;
	}
	body.cnl-landing-active .cnl-landing h2 {
		font-size: 32px !important;
		line-height: 1.12 !important;
	}
	body.cnl-landing-active .cnl-lead {
		font-size: 20px !important;
	}
}

@media (min-width: 1100px) {
	body.cnl-landing-active .cnl-container {
		width: min(100% - 56px, 1180px) !important;
	}

	body.cnl-landing-active .cnl-container--narrow {
		width: min(100% - 56px, 880px) !important;
	}

	body.cnl-landing-active .cnl-landing h1 {
		font-size: 42px !important;
		line-height: 1.1 !important;
		max-width: 46ch !important;
	}

	body.cnl-landing-active .cnl-landing h2 {
		font-size: 36px !important;
		line-height: 1.14 !important;
		max-width: 40ch !important;
	}

	body.cnl-landing-active .cnl-faq {
		text-align: left !important;
		width: 100% !important;
	}

	body.cnl-landing-active .cnl-landing h3 {
		font-size: 22px !important;
		line-height: 1.2 !important;
	}

	body.cnl-landing-active .cnl-landing h4 {
		font-size: 18px !important;
		line-height: 1.25 !important;
	}

	body.cnl-landing-active .cnl-landing p:not(.cnl-price):not(.cnl-note) {
		font-size: 17px !important;
		line-height: 1.62 !important;
	}

	body.cnl-landing-active .cnl-lead {
		font-size: 24px !important;
		line-height: 1.42 !important;
		max-width: 90ch !important;
	}

	body.cnl-landing-active .cnl-button,
	body.cnl-landing-active .cnl-button:visited {
		min-height: 50px !important;
		padding: 14px 22px !important;
		font-size: 16px !important;
		line-height: 1.15 !important;
	}

	body.cnl-landing-active .cnl-list li {
		font-size: 16px !important;
		line-height: 1.55 !important;
	}

	body.cnl-landing-active .cnl-stat-row strong {
		font-size: 36px !important;
		line-height: 1 !important;
	}

	body.cnl-landing-active .cnl-stat-row span {
		font-size: 14px !important;
		line-height: 1.35 !important;
	}

	body.cnl-landing-active .cnl-kicker {
		padding: 2px 8px !important;
		font-size: 9px !important;
		font-weight: 600 !important;
		line-height: 1.35 !important;
		letter-spacing: 0.4px !important;
	}

	body.cnl-landing-active .cnl-badge {
		padding: 6px 10px !important;
		font-size: 14px !important;
		line-height: 1.2 !important;
	}

	body.cnl-landing-active .cnl-proof {
		padding: 7px 12px !important;
		font-size: 12.5px !important;
		line-height: 1.25 !important;
	}

	body.cnl-landing-active .cnl-card,
	body.cnl-landing-active .cnl-price-card {
		gap: 14px !important;
		padding: 26px !important;
	}

	body.cnl-landing-active .cnl-card h3,
	body.cnl-landing-active .cnl-price-card h3 {
		font-size: 22px !important;
		line-height: 1.2 !important;
	}

	body.cnl-landing-active .cnl-card p:not(.cnl-price):not(.cnl-note),
	body.cnl-landing-active .cnl-price-card p:not(.cnl-price):not(.cnl-note) {
		font-size: 17px !important;
		line-height: 1.58 !important;
	}

	body.cnl-landing-active .cnl-price-card > p:not(.cnl-price) {
		font-size: 15px !important;
		line-height: 1.5 !important;
	}

	body.cnl-landing-active .cnl-price-card .cnl-note {
		font-size: 14px !important;
		line-height: 1.4 !important;
	}

	body.cnl-landing-active .cnl-card .cnl-list li,
	body.cnl-landing-active .cnl-price-card .cnl-list li {
		font-size: 16px !important;
		line-height: 1.52 !important;
	}

	body.cnl-landing-active .cnl-price-card .cnl-list li {
		font-size: 14px !important;
		line-height: 1.5 !important;
		padding-left: 22px !important;
	}

	body.cnl-landing-active .cnl-price-card .cnl-list li::before {
		width: 15px !important;
		height: 15px !important;
		top: 0.2em !important;
	}

	body.cnl-landing-active .cnl-price {
		font-size: 48px !important;
		line-height: 1 !important;
	}

	body.cnl-landing-active .cnl-price small {
		font-size: 17px !important;
		line-height: 1.2 !important;
	}

	body.cnl-landing-active .cnl-cards,
	body.cnl-landing-active .cnl-feature-grid {
		gap: 22px !important;
	}

	body.cnl-landing-active .cnl-pricing-grid {
		grid-template-columns: repeat(auto-fit, minmax(270px, 1fr)) !important;
		gap: 22px !important;
	}
}

/* ============================================================
 * UX Audit fixes - 2026-05-25 (Codex P0+P1+P2)
 * Override final que gana por cascada.
 * ============================================================ */

/* Utility classes para reemplazar inline styles */
body.cnl-landing-active .cnl-stack--center {
	align-items: center !important;
	text-align: center !important;
}

body.cnl-landing-active .cnl-list--narrow {
	max-width: 620px !important;
	align-self: center !important;
	text-align: left !important;
}

/* Pricing grid: 2 columnas en tablet (720-1099px) — antes quedaba 4 cols estrechas */
@media (min-width: 720px) and (max-width: 1099px) {
	body.cnl-landing-active .cnl-pricing-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
		gap: 20px !important;
	}
}

/* Sticky CTA mobile (<720px): CTA permanente abajo */
@media (max-width: 719px) {
	body.cnl-landing-active .cnl-mobile-sticky {
		position: fixed !important;
		left: 14px !important;
		right: 14px !important;
		bottom: 14px !important;
		z-index: 999 !important;
		box-shadow: 0 14px 34px rgba(13, 26, 46, 0.28) !important;
		display: flex !important;
	}
	body.cnl-landing-active main {
		padding-bottom: 84px !important;
	}
	/* CTAs móviles ocupan todo el ancho del container */
	body.cnl-landing-active .cnl-button {
		width: 100% !important;
		max-width: 100% !important;
	}
}

/* content-visibility para perf en secciones bajo el fold */
body.cnl-landing-active .cnl-section:not(.cnl-hero) {
	content-visibility: auto;
	contain-intrinsic-size: 720px;
}

/* CTA dark variant para hero oscuro/cream */
body.cnl-landing-active .cnl-button--dark,
body.cnl-landing-active .cnl-button--dark:visited {
	background: var(--cnl-ink) !important;
	color: var(--cnl-white) !important;
	border-color: var(--cnl-ink) !important;
}

body.cnl-landing-active .cnl-button--dark:hover,
body.cnl-landing-active .cnl-button--dark:focus-visible {
	background: #1a2640 !important;
	color: var(--cnl-yellow) !important;
}

/* Trust badges row */
body.cnl-landing-active .cnl-trust {
	display: flex !important;
	flex-wrap: wrap !important;
	gap: 14px 22px !important;
	justify-content: center !important;
	align-items: center !important;
	margin: 18px 0 0 !important;
	padding: 14px 0 0 !important;
	border-top: 1px solid var(--cnl-line) !important;
	color: var(--cnl-muted) !important;
	font-size: 14px !important;
}

body.cnl-landing-active .cnl-trust span {
	display: inline-flex !important;
	align-items: center !important;
	gap: 6px !important;
	color: var(--cnl-ink-soft) !important;
	font-weight: 600 !important;
}

body.cnl-landing-active .cnl-trust span::before {
	content: "✓" !important;
	color: var(--cnl-success) !important;
	font-weight: 800 !important;
}

/* ====================================================================
   Matriz comparativa Free/Premium/Pro — inspiración Stripe + shadcn
   ==================================================================== */
body.cnl-landing-active .cnl-vh {
	position: absolute !important;
	width: 1px !important;
	height: 1px !important;
	padding: 0 !important;
	margin: -1px !important;
	overflow: hidden !important;
	clip: rect(0, 0, 0, 0) !important;
	white-space: nowrap !important;
	border: 0 !important;
}

body.cnl-landing-active .cnl-compare-wrap {
	overflow-x: auto !important;
	border-radius: 16px !important;
	border: 1px solid rgba(13, 26, 46, 0.10) !important;
	background: #fff !important;
	box-shadow: 0 2px 12px -6px rgba(13, 26, 46, 0.08) !important;
	-webkit-overflow-scrolling: touch !important;
}

body.cnl-landing-active .cnl-compare-table {
	width: 100% !important;
	min-width: 580px !important;
	border-collapse: collapse !important;
	font-size: 15px !important;
	line-height: 1.45 !important;
	color: var(--cnl-ink, #0D1A2E) !important;
}

body.cnl-landing-active .cnl-compare-table thead th {
	padding: 18px 16px !important;
	background: var(--cnl-cream, #F9F5EC) !important;
	border-bottom: 1px solid rgba(13, 26, 46, 0.10) !important;
	font-size: 16px !important;
	font-weight: 800 !important;
	color: var(--cnl-ink, #0D1A2E) !important;
	text-align: center !important;
	letter-spacing: 0 !important;
}

body.cnl-landing-active .cnl-compare-table thead th:first-child {
	text-align: left !important;
	background: var(--cnl-cream, #F9F5EC) !important;
}

body.cnl-landing-active .cnl-compare-table thead th.cnl-compare-featured {
	background: var(--cnl-yellow, #F5C518) !important;
	color: var(--cnl-ink, #0D1A2E) !important;
	box-shadow: 0 0 0 2px var(--cnl-yellow, #F5C518) !important;
	position: relative !important;
}

body.cnl-landing-active .cnl-compare-table tbody th {
	padding: 13px 16px !important;
	background: transparent !important;
	color: var(--cnl-ink, #0D1A2E) !important;
	font-weight: 500 !important;
	text-align: left !important;
	border-bottom: 1px solid rgba(13, 26, 46, 0.06) !important;
	font-size: 15px !important;
}

body.cnl-landing-active .cnl-compare-table tbody td {
	padding: 13px 16px !important;
	text-align: center !important;
	color: var(--cnl-ink, #0D1A2E) !important;
	border-bottom: 1px solid rgba(13, 26, 46, 0.06) !important;
	font-weight: 600 !important;
	font-size: 15px !important;
}

body.cnl-landing-active .cnl-compare-table tbody td.cnl-compare-featured {
	background: rgba(245, 197, 24, 0.10) !important;
}

body.cnl-landing-active .cnl-compare-table tbody tr:hover td,
body.cnl-landing-active .cnl-compare-table tbody tr:hover th {
	background: rgba(13, 26, 46, 0.025) !important;
}

body.cnl-landing-active .cnl-compare-table tbody tr:hover td.cnl-compare-featured {
	background: rgba(245, 197, 24, 0.16) !important;
}

body.cnl-landing-active .cnl-compare-table tbody tr:last-child th,
body.cnl-landing-active .cnl-compare-table tbody tr:last-child td {
	border-bottom: none !important;
}

body.cnl-landing-active .cnl-compare-table tfoot th,
body.cnl-landing-active .cnl-compare-table tfoot td {
	padding: 18px 16px !important;
	background: var(--cnl-cream, #F9F5EC) !important;
	border-top: 2px solid rgba(13, 26, 46, 0.12) !important;
	text-align: center !important;
	font-size: 15px !important;
	color: var(--cnl-ink, #0D1A2E) !important;
}

body.cnl-landing-active .cnl-compare-table tfoot td strong {
	display: inline-block !important;
	font-size: 22px !important;
	font-weight: 850 !important;
	color: var(--cnl-ink, #0D1A2E) !important;
	margin-right: 2px !important;
}

body.cnl-landing-active .cnl-compare-table tfoot td small {
	display: block !important;
	color: var(--cnl-muted, #5B6472) !important;
	font-size: 11px !important;
	font-weight: 700 !important;
	text-transform: uppercase !important;
	letter-spacing: 0.04em !important;
	margin-top: 4px !important;
}

body.cnl-landing-active .cnl-compare-table tfoot td.cnl-compare-featured {
	background: rgba(245, 197, 24, 0.20) !important;
}

body.cnl-landing-active .cnl-compare-note {
	margin: 18px auto 0 !important;
	text-align: center !important;
	color: var(--cnl-muted, #5B6472) !important;
	font-size: 14px !important;
	max-width: none !important;
	white-space: nowrap !important;
}

/* En móvil deja que haga wrap natural — no cabe en 1 línea */
@media (max-width: 720px) {
	body.cnl-landing-active .cnl-compare-note {
		white-space: normal !important;
		max-width: 100% !important;
	}
}

body.cnl-landing-active .cnl-compare-note a {
	color: var(--cnl-ink, #0D1A2E) !important;
	text-decoration: underline !important;
	text-decoration-color: var(--cnl-yellow, #F5C518) !important;
	text-decoration-thickness: 2px !important;
	text-underline-offset: 3px !important;
}

@media (max-width: 720px) {
	body.cnl-landing-active .cnl-compare-table {
		font-size: 14px !important;
		min-width: 560px !important;
	}
	body.cnl-landing-active .cnl-compare-table thead th,
	body.cnl-landing-active .cnl-compare-table tbody th,
	body.cnl-landing-active .cnl-compare-table tbody td,
	body.cnl-landing-active .cnl-compare-table tfoot th,
	body.cnl-landing-active .cnl-compare-table tfoot td {
		padding: 11px 10px !important;
		font-size: 13.5px !important;
	}
	body.cnl-landing-active .cnl-compare-table tfoot td strong {
		font-size: 18px !important;
	}
}
