/* ASCENKA landing — estilo landing1 */
:root {
	--ak-ink: #201e1d;
	--ak-muted: #605d5d;
	--ak-soft: #7d7979;
	--ak-bg: #f3f2f2;
	--ak-bg-alt: #eae9e9;
	--ak-red: #ec3013;
	--ak-red-deep: #ae1800;
	--ak-white: #ffffff;
	--ak-dark: #201e1d;
	--ak-hero: oklch(12% 0.03 280);
	--ak-pill: linear-gradient(120deg, oklch(72% 0.17 265), oklch(72% 0.16 300));
	--ak-font: "Archivo", system-ui, sans-serif;
	--ak-max: 1240px;
	--ak-pad: 64px;
}

*, *::before, *::after { box-sizing: border-box; }
html { scroll-behavior: smooth; scroll-padding-top: 88px; }
.ak-section[id],
.ak-price-hero,
#planes,
#faq-precios,
#inicio {
	scroll-margin-top: 88px;
}
body.ak-body {
	margin: 0;
	font-family: var(--ak-font);
	color: var(--ak-ink);
	background: var(--ak-bg);
	overflow-x: hidden;
	-webkit-font-smoothing: antialiased;
}
a { color: inherit; text-decoration: none; }
img { max-width: 100%; display: block; }
ul { margin: 0; padding: 0; list-style: none; }

.ak-wrap {
	max-width: var(--ak-max);
	margin: 0 auto;
	padding-left: var(--ak-pad);
	padding-right: var(--ak-pad);
}
.ak-eyebrow {
	font-size: 12px;
	letter-spacing: .1em;
	text-transform: uppercase;
	color: var(--ak-red);
	margin: 0 0 14px;
	font-weight: 700;
}
.ak-h2 {
	font-size: clamp(28px, 4vw, 38px);
	line-height: 1.15;
	letter-spacing: -0.02em;
	font-weight: 800;
	margin: 0 0 56px;
	max-width: 640px;
}
.ak-lead {
	font-size: 16px;
	line-height: 1.6;
	color: var(--ak-muted);
	max-width: 560px;
	margin: -36px 0 48px;
}

.ak-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-weight: 700;
	font-size: 15px;
	padding: 15px 30px;
	border-radius: 999px;
	border: 1px solid transparent;
	transition: transform .2s ease, box-shadow .2s ease, opacity .2s ease;
	white-space: nowrap;
}
.ak-btn:hover { transform: translateY(-1px); }
.ak-btn-primary {
	color: #1c1730;
	background: var(--ak-pill);
	box-shadow: 0 12px 32px oklch(55% 0.19 265 / 0.35);
}
.ak-btn-ghost {
	color: #fff;
	border-color: rgba(255,255,255,.28);
	background: transparent;
}
.ak-btn-dark {
	color: #1c1730;
	background: #fff;
	box-shadow: 0 20px 50px rgba(0,0,0,.35);
}
.ak-btn-outline {
	color: var(--ak-ink);
	border-color: rgba(32,30,29,.18);
	background: transparent;
}
.ak-btn-sm { padding: 10px 22px; font-size: 14px; }

/* Header */
.ak-header {
	position: absolute;
	top: 0; left: 0; right: 0;
	z-index: 40;
}
.ak-header.is-solid {
	position: fixed;
	background: rgba(16, 16, 28, .92);
	backdrop-filter: blur(14px);
	border-bottom: 1px solid rgba(255,255,255,.08);
}
.ak-header-inner {
	display: flex;
	align-items: center;
	gap: 28px;
	padding: 18px var(--ak-pad);
	max-width: 1400px;
	margin: 0 auto;
}
.ak-logo {
	display: flex;
	align-items: center;
	gap: 10px;
	margin-right: auto;
	font-weight: 800;
	font-size: 20px;
	letter-spacing: -0.02em;
	color: #fff;
}
.ak-logo img {
	height: 36px;
	width: auto;
	object-fit: contain;
	filter: brightness(0) invert(1);
}
.ak-nav {
	display: flex;
	align-items: center;
	gap: 28px;
}
.ak-nav a {
	font-size: 14px;
	color: rgba(255,255,255,.82);
}
.ak-nav a:hover { color: #fff; }
.ak-nav-actions {
	display: flex;
	align-items: center;
	gap: 12px;
}
.ak-menu-toggle {
	display: none;
	background: transparent;
	border: 1px solid rgba(255,255,255,.28);
	color: #fff;
	border-radius: 999px;
	padding: 8px 14px;
	font: inherit;
	font-size: 13px;
	font-weight: 600;
	cursor: pointer;
}
.ak-nav-mobile {
	display: none;
	flex-direction: column;
	gap: 12px;
	padding: 8px var(--ak-pad) 20px;
	background: rgba(16,16,28,.96);
}
.ak-nav-mobile.is-open { display: flex; }
.ak-nav-mobile a {
	color: rgba(255,255,255,.9);
	font-size: 15px;
	padding: 8px 0;
}

/* Hero */
.ak-hero {
	position: relative;
	background: linear-gradient(160deg, oklch(15% 0.03 275) 0%, oklch(12% 0.035 295) 55%, oklch(10% 0.02 260) 100%);
	padding: 150px 0 96px;
	overflow: hidden;
}
.ak-hero-glow {
	position: absolute;
	border-radius: 50%;
	filter: blur(90px);
	pointer-events: none;
	animation: akPulse 8s ease-in-out infinite;
}
.ak-hero-glow-1 { top: -120px; left: -120px; width: 520px; height: 520px; background: oklch(55% 0.19 265 / 0.35); }
.ak-hero-glow-2 { top: 180px; right: -160px; width: 560px; height: 560px; background: oklch(62% 0.15 195 / 0.28); animation-duration: 9s; }
.ak-hero-glow-3 { bottom: -100px; left: 30%; width: 420px; height: 420px; background: oklch(56% 0.20 300 / 0.25); animation-duration: 7s; }
.ak-hero-inner {
	position: relative;
	display: flex;
	gap: 64px;
	align-items: center;
	flex-wrap: wrap;
	max-width: 1320px;
	margin: 0 auto;
	padding: 0 var(--ak-pad);
}
.ak-hero-copy { flex: 1 1 460px; min-width: 280px; }
.ak-chip {
	display: inline-block;
	font-size: 12px;
	letter-spacing: .08em;
	text-transform: uppercase;
	color: oklch(85% 0.05 265);
	border: 1px solid rgba(255,255,255,.18);
	padding: 6px 14px;
	border-radius: 999px;
	margin-bottom: 24px;
}
.ak-hero h1 {
	font-size: clamp(34px, 5vw, 56px);
	line-height: 1.06;
	letter-spacing: -0.02em;
	font-weight: 800;
	color: #fff;
	margin: 0 0 24px;
}
.ak-hero-lead {
	font-size: 18px;
	line-height: 1.6;
	color: rgba(255,255,255,.72);
	max-width: 480px;
	margin: 0 0 36px;
}
.ak-hero-ctas {
	display: flex;
	gap: 16px;
	flex-wrap: wrap;
	margin-bottom: 40px;
}
.ak-hero-note {
	font-size: 12px;
	color: rgba(255,255,255,.45);
	letter-spacing: .03em;
	margin-bottom: 14px;
}
.ak-trust {
	display: flex;
	gap: 22px;
	flex-wrap: wrap;
	opacity: .55;
}
.ak-trust span {
	font-size: 13px;
	font-weight: 700;
	color: #fff;
	letter-spacing: -0.01em;
}

.ak-hero-visual {
	flex: 1 1 480px;
	min-width: 280px;
	position: relative;
	min-height: 520px;
}
.ak-float-card {
	position: absolute;
	background: oklch(30% 0.03 270 / 0.5);
	backdrop-filter: blur(18px);
	border: 1px solid rgba(255,255,255,.18);
	border-radius: 16px;
	padding: 12px 16px;
	box-shadow: 0 20px 50px rgba(0,0,0,.4);
	color: #fff;
	font-size: 13px;
	font-weight: 700;
	animation: akFloat 6s ease-in-out infinite;
}
.ak-float-card small {
	display: block;
	font-size: 11px;
	font-weight: 500;
	color: oklch(80% 0.05 195);
	margin-bottom: 2px;
}
.ak-ph {
	border-radius: 18px;
	overflow: hidden;
	background:
		linear-gradient(145deg, oklch(35% 0.04 270), oklch(22% 0.03 280));
	filter: grayscale(.15) contrast(1.05);
}
.ak-ph img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}
.ak-ph-main {
	position: absolute;
	left: 0; top: 20px;
	width: min(320px, 70%);
	height: 400px;
	animation: akFloat 6s ease-in-out infinite;
}
.ak-ph-sm {
	position: absolute;
	right: 0;
	width: 190px;
	height: 150px;
	animation: akFloat 7s ease-in-out infinite;
}
.ak-ph-sm-1 { top: 0; animation-delay: .2s; }
.ak-ph-sm-2 { top: 250px; animation-delay: .4s; }
.ak-ph-sm-3 { bottom: 0; right: 10px; width: 170px; height: 130px; animation-delay: .1s; }
.ak-card-a { left: 24px; top: -6px; }
.ak-card-b { left: -12px; top: 150px; color: oklch(80% 0.13 85); animation-delay: .3s; }
.ak-card-c { left: 60px; bottom: 150px; animation-delay: .5s; }
.ak-card-d { right: 8px; top: 158px; font-size: 12px; }
.ak-card-e { right: 60px; top: 408px; color: oklch(80% 0.13 85); font-size: 12px; }
.ak-card-f { right: 40px; bottom: -14px; font-size: 12px; }
.ak-card-g { left: -20px; bottom: 40px; font-size: 12px; animation-delay: .6s; }

@keyframes akPulse {
	0%, 100% { transform: scale(1); opacity: 1; }
	50% { transform: scale(1.08); opacity: .85; }
}
@keyframes akFloat {
	0%, 100% { transform: translateY(0); }
	50% { transform: translateY(-12px); }
}

/* Sections */
.ak-section { padding: 120px 0; }
.ak-section-alt { background: var(--ak-bg-alt); }

.ak-split {
	display: flex;
	gap: 48px;
	flex-wrap: wrap;
}
.ak-split > div { flex: 1 1 380px; min-width: 280px; }
.ak-col-label {
	font-size: 13px;
	font-weight: 700;
	letter-spacing: .04em;
	text-transform: uppercase;
	margin-bottom: 20px;
}
.ak-col-label.muted { color: var(--ak-soft); }
.ak-col-label.brand { color: oklch(50% 0.17 265); }
.ak-timeline { display: flex; flex-direction: column; }
.ak-tl-item {
	display: flex;
	gap: 16px;
	align-items: flex-start;
}
.ak-tl-rail {
	display: flex;
	flex-direction: column;
	align-items: center;
}
.ak-tl-dot {
	width: 10px;
	height: 10px;
	margin-top: 6px;
	flex: none;
	background: #bab6b6;
}
.ak-tl-dot.round {
	border-radius: 50%;
}
.ak-tl-line {
	width: 1px;
	flex: 1;
	min-height: 34px;
	background: #d7d3d3;
}
.ak-tl-line.grad {
	background: linear-gradient(180deg, oklch(60% 0.18 265), oklch(60% 0.18 300));
}
.ak-tl-text {
	padding-bottom: 26px;
	font-size: 16px;
	color: var(--ak-muted);
}
.ak-tl-text.strong {
	font-weight: 600;
	color: var(--ak-ink);
}

.ak-grid-5 {
	display: grid;
	grid-template-columns: repeat(5, 1fr);
	gap: 2px;
	background: rgba(32,30,29,.35);
}
.ak-cell {
	background: var(--ak-bg-alt);
	padding: 28px 24px;
	display: flex;
	flex-direction: column;
	gap: 12px;
}
.ak-cell.on-bg { background: var(--ak-bg); padding: 26px 22px; }
.ak-cell-ph {
	width: 100%;
	aspect-ratio: 4/3;
	border-radius: 4px;
	overflow: hidden;
	background: #d7d3d3;
}
.ak-cell-ph img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
	filter: grayscale(1) contrast(1.08);
}
.ak-cell-title-row {
	display: flex;
	align-items: center;
	gap: 10px;
}
.ak-badge-letter {
	width: 26px;
	height: 26px;
	flex: none;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 13px;
	font-weight: 800;
	color: #fff;
}
.ak-cell h3 {
	margin: 0;
	font-size: 16px;
	font-weight: 800;
}
.ak-cell p {
	margin: 0;
	font-size: 13px;
	color: var(--ak-muted);
	line-height: 1.5;
}

.ak-quotes {
	display: flex;
	gap: 2px;
	background: rgba(32,30,29,.4);
	margin-bottom: 64px;
}
.ak-quote {
	flex: 1;
	background: var(--ak-bg-alt);
	padding: 32px;
	display: flex;
	flex-direction: column;
	gap: 20px;
	min-width: 0;
}
.ak-quote blockquote {
	margin: 0;
	font-size: 17px;
	line-height: 1.5;
	font-weight: 600;
}
.ak-quote-foot {
	display: flex;
	align-items: center;
	gap: 12px;
	margin-top: auto;
}
.ak-avatar {
	width: 48px;
	height: 48px;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	font-weight: 800;
	color: #fff;
	flex: none;
	overflow: hidden;
}
.ak-avatar img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
	filter: grayscale(1) contrast(1.08);
}
.ak-quote strong { display: block; font-size: 14px; }
.ak-quote span { font-size: 12px; color: var(--ak-soft); }

.ak-metrics {
	display: flex;
	gap: 2px;
	background: rgba(32,30,29,.4);
	margin-bottom: 64px;
}
.ak-metric {
	flex: 1;
	background: var(--ak-bg-alt);
	padding: 32px;
}
.ak-metric strong {
	display: block;
	font-size: 36px;
	font-weight: 800;
	color: var(--ak-red-deep);
}
.ak-metric span {
	display: block;
	font-size: 13px;
	color: var(--ak-muted);
	margin-top: 6px;
}
.ak-logos-label {
	font-size: 12px;
	letter-spacing: .08em;
	text-transform: uppercase;
	color: var(--ak-soft);
	margin-bottom: 20px;
}
.ak-logos {
	display: flex;
	gap: 40px;
	flex-wrap: wrap;
	align-items: center;
	opacity: .7;
}
.ak-logos span {
	font-size: 15px;
	font-weight: 800;
	letter-spacing: -0.01em;
	display: inline-flex;
	align-items: center;
	gap: 8px;
}
.ak-logos span::before {
	content: "";
	width: 18px;
	height: 18px;
	background: var(--ak-muted);
}

/* Producto / dashboard */
.ak-product {
	background: linear-gradient(160deg, oklch(13% 0.02 270) 0%, oklch(10% 0.02 260) 100%);
	padding: 130px 0;
	color: #fff;
}
.ak-product .ak-eyebrow { color: oklch(75% 0.13 85); }
.ak-product .ak-h2 { color: #fff; margin-bottom: 16px; }
.ak-product .ak-lead { color: rgba(255,255,255,.6); margin: 0 0 56px; }
.ak-dash {
	background: oklch(16% 0.015 270);
	border: 1px solid rgba(255,255,255,.08);
	border-radius: 20px;
	padding: 28px;
	display: flex;
	gap: 24px;
	flex-wrap: wrap;
	box-shadow: 0 30px 80px rgba(0,0,0,.5);
}
.ak-dash-main { flex: 1 1 700px; min-width: 280px; display: flex; flex-direction: column; gap: 20px; }
.ak-dash-side { flex: 1 1 300px; min-width: 260px; display: flex; flex-direction: column; gap: 20px; }
.ak-dash-stats {
	display: flex;
	gap: 2px;
	background: rgba(255,255,255,.08);
}
.ak-dash-stat {
	flex: 1;
	background: oklch(16% 0.015 270);
	padding: 18px 20px;
}
.ak-dash-stat strong { display: block; font-size: 22px; font-weight: 800; }
.ak-dash-stat span { display: block; font-size: 11px; color: rgba(255,255,255,.5); margin-top: 4px; }
.ak-panel {
	background: oklch(14% 0.015 270);
	border: 1px solid rgba(255,255,255,.06);
	border-radius: 14px;
	padding: 22px;
}
.ak-panel-label {
	font-size: 12px;
	color: rgba(255,255,255,.55);
	margin-bottom: 16px;
}
.ak-bars {
	display: flex;
	align-items: flex-end;
	gap: 10px;
	height: 120px;
}
.ak-bar {
	flex: 1;
	border-radius: 4px 4px 0 0;
	background: linear-gradient(180deg, oklch(65% 0.15 195), oklch(55% 0.18 265));
	min-height: 8px;
}
.ak-camp-row {
	display: flex;
	justify-content: space-between;
	padding: 12px 4px;
	border-bottom: 1px solid rgba(255,255,255,.06);
	font-size: 13px;
}
.ak-camp-row:last-child { border-bottom: 0; }
.ak-ai {
	background: linear-gradient(135deg, oklch(30% 0.06 265), oklch(24% 0.05 300));
	border-radius: 14px;
	padding: 20px;
	border: 1px solid rgba(255,255,255,.1);
}
.ak-ai-label {
	font-size: 11px;
	letter-spacing: .06em;
	text-transform: uppercase;
	color: oklch(85% 0.06 265);
	margin-bottom: 10px;
}
.ak-ai p {
	margin: 0 0 14px;
	font-size: 15px;
	font-weight: 600;
	line-height: 1.4;
}
.ak-ai-btn {
	display: inline-block;
	font-size: 12px;
	font-weight: 700;
	color: #1c1730;
	background: oklch(78% 0.13 85);
	padding: 8px 16px;
	border-radius: 999px;
}
.ak-vip-row { margin-bottom: 14px; }
.ak-vip-row:last-child { margin-bottom: 0; }
.ak-vip-top {
	display: flex;
	justify-content: space-between;
	font-size: 12px;
	margin-bottom: 6px;
}
.ak-vip-top span:last-child { color: rgba(255,255,255,.5); }
.ak-vip-track {
	height: 5px;
	background: rgba(255,255,255,.08);
	border-radius: 3px;
}
.ak-vip-fill {
	height: 100%;
	border-radius: 3px;
}

/* Precios */
.ak-pricing-note {
	font-size: 14px;
	font-weight: 700;
	color: var(--ak-red);
	margin: -40px 0 40px;
}
.ak-plans {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 2px;
	background: rgba(32,30,29,.35);
	margin-bottom: 48px;
}
.ak-plan {
	background: var(--ak-bg);
	padding: 32px 26px;
	display: flex;
	flex-direction: column;
	gap: 14px;
	position: relative;
}
.ak-plan.is-popular {
	background: #fff;
	box-shadow: 0 0 0 2px oklch(55% 0.18 265);
	z-index: 1;
}
.ak-plan-badge {
	position: absolute;
	top: 14px;
	right: 14px;
	font-size: 11px;
	font-weight: 800;
	letter-spacing: .04em;
	text-transform: uppercase;
	color: #1c1730;
	background: var(--ak-pill);
	padding: 5px 10px;
	border-radius: 999px;
}
.ak-plan h3 {
	margin: 0;
	font-size: 22px;
	font-weight: 800;
}
.ak-plan-price {
	margin: 0;
	font-size: 28px;
	font-weight: 800;
	letter-spacing: -0.02em;
}
.ak-plan-price small {
	font-size: 14px;
	font-weight: 500;
	color: var(--ak-muted);
}
.ak-plan-desc {
	margin: 0;
	font-size: 14px;
	color: var(--ak-muted);
	line-height: 1.45;
	min-height: 3.2em;
}
.ak-plan ul {
	display: flex;
	flex-direction: column;
	gap: 8px;
	margin: 4px 0 12px;
	flex: 1;
}
.ak-plan li {
	font-size: 13px;
	color: var(--ak-ink);
	padding-left: 18px;
	position: relative;
	line-height: 1.4;
}
.ak-plan li::before {
	content: "";
	position: absolute;
	left: 0;
	top: .45em;
	width: 8px;
	height: 8px;
	border-radius: 50%;
	background: oklch(55% 0.18 265);
}
.ak-plan .ak-btn { width: 100%; margin-top: auto; }

.ak-compare-wrap {
	overflow-x: auto;
	margin-bottom: 36px;
	border: 1px solid rgba(32,30,29,.12);
	background: #fff;
}
.ak-compare {
	width: 100%;
	border-collapse: collapse;
	min-width: 720px;
	font-size: 13px;
}
.ak-compare th,
.ak-compare td {
	padding: 12px 14px;
	text-align: left;
	border-bottom: 1px solid rgba(32,30,29,.08);
}
.ak-compare th {
	background: var(--ak-bg-alt);
	font-weight: 800;
}
.ak-compare td:first-child { font-weight: 600; color: var(--ak-muted); }
.ak-pricing-help {
	display: flex;
	flex-wrap: wrap;
	gap: 16px;
	align-items: center;
	justify-content: space-between;
	padding: 24px 28px;
	background: var(--ak-bg-alt);
}
.ak-pricing-help p {
	margin: 0;
	font-size: 14px;
	color: var(--ak-muted);
	max-width: 520px;
	line-height: 1.45;
}
.ak-pricing-help-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	align-items: center;
}

/* Página exclusiva de precios */
.ak-page-precios .ak-header { background: rgba(16,16,28,.92); }
.ak-price-hero {
	padding: 120px 0 72px;
	background:
		radial-gradient(ellipse 70% 60% at 20% 0%, oklch(35% 0.12 265 / .45), transparent 55%),
		linear-gradient(165deg, var(--ak-hero), #151522 70%);
	color: #fff;
}
.ak-price-hero .ak-eyebrow { color: oklch(78% 0.12 265); }
.ak-price-hero-brand {
	margin: 0 0 16px;
	font-size: clamp(40px, 7vw, 72px);
	font-weight: 800;
	letter-spacing: -0.03em;
	line-height: 1.05;
}
.ak-price-hero-lead {
	margin: 0 0 28px;
	max-width: 540px;
	font-size: 17px;
	line-height: 1.55;
	color: rgba(255,255,255,.82);
}
.ak-price-hero-cta {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
}
.ak-price-hero .ak-btn-outline {
	border-color: rgba(255,255,255,.35);
	color: #fff;
}
.ak-price-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 16px;
}
.ak-price-card {
	background: #fff;
	border: 1px solid rgba(32,30,29,.1);
	padding: 22px 20px;
}
.ak-price-card h3 {
	margin: 0 0 8px;
	font-size: 16px;
	font-weight: 800;
}
.ak-price-card p {
	margin: 0;
	font-size: 14px;
	line-height: 1.5;
	color: var(--ak-muted);
}
.ak-price-refund {
	max-width: 720px;
	background: #fff;
	border: 1px solid rgba(32,30,29,.1);
	padding: 28px;
}
.ak-price-refund p {
	margin: 0 0 14px;
	font-size: 15px;
	line-height: 1.55;
	color: var(--ak-ink);
}
.ak-price-refund ul {
	margin: 0 0 20px;
	padding-left: 1.15rem;
	display: flex;
	flex-direction: column;
	gap: 8px;
	list-style: disc;
}
.ak-price-refund li {
	font-size: 14px;
	line-height: 1.45;
	color: var(--ak-muted);
}
.ak-price-refund-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
}

@media (max-width: 900px) {
	.ak-price-grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 640px) {
	.ak-price-grid { grid-template-columns: 1fr; }
	.ak-price-hero { padding: 100px 0 56px; }
}

/* Recursos / FAQ */
.ak-faq {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 2px;
	background: rgba(32,30,29,.25);
	margin-bottom: 32px;
}
.ak-faq-item {
	background: var(--ak-bg);
	padding: 24px 26px;
}
.ak-faq-item h3 {
	margin: 0 0 10px;
	font-size: 16px;
	font-weight: 800;
}
.ak-faq-item p {
	margin: 0;
	font-size: 14px;
	color: var(--ak-muted);
	line-height: 1.5;
}
.ak-legal-links {
	display: flex;
	flex-wrap: wrap;
	gap: 18px;
}
.ak-legal-links a {
	font-size: 13px;
	font-weight: 600;
	color: oklch(45% 0.14 265);
	text-decoration: underline;
	text-underline-offset: 3px;
}

/* CTA final */
.ak-cta {
	position: relative;
	min-height: 560px;
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	overflow: hidden;
	background: linear-gradient(135deg, oklch(45% 0.20 25) 0%, oklch(38% 0.18 320) 45%, oklch(35% 0.19 265) 100%);
}
.ak-cta-glow {
	position: absolute;
	border-radius: 50%;
	filter: blur(110px);
	pointer-events: none;
}
.ak-cta-glow-1 { top: -140px; left: 10%; width: 480px; height: 480px; background: oklch(78% 0.13 85 / 0.35); }
.ak-cta-glow-2 { bottom: -160px; right: 8%; width: 520px; height: 520px; background: oklch(62% 0.15 195 / 0.3); }
.ak-cta-inner {
	position: relative;
	max-width: 760px;
	padding: 80px 40px;
}
.ak-cta-kicker {
	font-size: 14px;
	letter-spacing: .08em;
	text-transform: uppercase;
	color: rgba(255,255,255,.7);
	margin-bottom: 20px;
}
.ak-cta h2 {
	font-size: clamp(34px, 5vw, 52px);
	line-height: 1.08;
	font-weight: 800;
	color: #fff;
	margin: 0 0 40px;
}

/* Footer */
.ak-footer {
	background: var(--ak-dark);
	padding: 56px var(--ak-pad);
	color: #f3f2f2;
}
.ak-footer-inner {
	max-width: var(--ak-max);
	margin: 0 auto;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	gap: 24px;
	align-items: center;
}
.ak-footer-brand {
	display: flex;
	align-items: center;
	gap: 10px;
	font-weight: 800;
	font-size: 18px;
}
.ak-footer-brand img {
	height: 28px;
	filter: brightness(0) invert(1);
}
.ak-footer-nav {
	display: flex;
	gap: 28px;
	flex-wrap: wrap;
}
.ak-footer-nav a {
	font-size: 13px;
	color: rgba(243,242,242,.6);
}
.ak-footer-nav a:hover { color: #fff; }
.ak-footer-copy {
	font-size: 12px;
	color: rgba(243,242,242,.4);
}

/* WhatsApp flotante */
.ak-wa-float {
	position: fixed;
	right: max(20px, env(safe-area-inset-right));
	bottom: max(20px, env(safe-area-inset-bottom));
	z-index: 45;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 58px;
	height: 58px;
	border-radius: 50%;
	background: #25d366;
	color: #fff;
	box-shadow: 0 10px 28px rgba(37, 211, 102, .45);
	transition: transform .2s ease, box-shadow .2s ease;
	animation: akWaPulse 2.2s ease-out infinite;
}
.ak-wa-float svg {
	width: 30px;
	height: 30px;
}
.ak-wa-float:hover {
	transform: scale(1.08);
	box-shadow: 0 14px 32px rgba(37, 211, 102, .55);
	color: #fff;
}
.ak-wa-float:focus-visible {
	outline: 3px solid #fff;
	outline-offset: 3px;
}
@keyframes akWaPulse {
	0% { box-shadow: 0 0 0 0 rgba(37, 211, 102, .55); }
	70% { box-shadow: 0 0 0 14px rgba(37, 211, 102, 0); }
	100% { box-shadow: 0 0 0 0 rgba(37, 211, 102, 0); }
}
body.asc-consent-pending .ak-wa-float,
body.asc-consent-rejected .ak-wa-float {
	bottom: max(96px, calc(20px + env(safe-area-inset-bottom)));
}

@media (max-width: 1100px) {
	.ak-grid-5 { grid-template-columns: repeat(2, 1fr); }
	.ak-plans { grid-template-columns: repeat(2, 1fr); }
	.ak-ph-main { height: 340px; }
	.ak-hero-visual { min-height: 460px; }
}
@media (max-width: 860px) {
	:root { --ak-pad: 24px; }
	.ak-nav, .ak-nav-actions .ak-btn { display: none; }
	.ak-menu-toggle { display: inline-flex; }
	.ak-quotes, .ak-metrics, .ak-dash-stats { flex-direction: column; }
	.ak-faq { grid-template-columns: 1fr; }
	.ak-plans { grid-template-columns: 1fr; }
	.ak-hero { padding-top: 120px; }
	.ak-card-e, .ak-card-f, .ak-ph-sm-3 { display: none; }
}
@media (max-width: 560px) {
	.ak-grid-5 { grid-template-columns: 1fr; }
	.ak-ph-sm { display: none; }
	.ak-hero-visual { min-height: 380px; }
}

/* Reveal al scroll */
@keyframes akRise {
	from {
		opacity: 0;
		transform: translate3d(0, 56px, 0);
	}
	to {
		opacity: 1;
		transform: translate3d(0, 0, 0);
	}
}
.ak-reveal {
	opacity: 0;
	transform: translate3d(0, 56px, 0);
	will-change: transform, opacity;
}
.ak-reveal.is-in {
	opacity: 1;
	transform: none;
	animation: akRise .85s cubic-bezier(.22, 1, .36, 1) both;
	animation-delay: var(--ak-reveal-delay, 0ms);
}

@media (prefers-reduced-motion: reduce) {
	.ak-hero-glow,
	.ak-ph,
	.ak-float-card,
	.ak-cta-glow,
	.ak-wa-float {
		animation: none !important;
	}
	html { scroll-behavior: auto; }
}
