/* AIReceptionistGo — Home (Figma Home v2 40:1548 a 1440 y 43:2320 a 390). Medidas del diseño en comentarios. */

/* Rejillas de una columna: pista minmax(0, 1fr) para que ningún hijo ensanche la columna (móvil sin desborde).
   Va antes que todo: los media queries de escritorio la sobrescriben donde hay más columnas. */
.registro__columnas, .reputacion__rejilla, .metodo__arriba, .escucha__cabeza, .tarjeta-muestra, .tarjeta-muestra__cuerpo,
.banda__rejilla, .precios__planes, .ahorro__tarjetas, .calc, .faq__rejilla, .cierre__rejilla, .franja__rejilla,
.selector__panel, .metodo__rejilla, .pasos__lista, .regla, .pestanas__panel, .resumen, .resumen-dueno, .datos-clave {
	grid-template-columns: minmax(0, 1fr);
}

/* ---------- Hero (40:1574): copia 664 | 64 | panel 520, alto 704 ---------- */
.hero { padding-block: var(--sp-24) var(--sp-48); background: var(--arg-surface); }
.hero__rejilla { display: grid; grid-template-columns: minmax(0, 1fr); }
.hero__eyebrow {
	display: none; align-items: center; gap: var(--sp-8); justify-self: start;
	padding: 5px var(--sp-12); border: 1px solid var(--arg-border); border-radius: var(--radius-pill);
	background: var(--arg-white); color: var(--arg-ink);
}
.hero__punto { width: 8px; height: 8px; border-radius: 50%; background: var(--arg-leaf); flex: none; }
.hero__titulo { display: grid; letter-spacing: var(--ls-display); }
.hero__l1 { font-size: var(--fs-h1); line-height: 1; }
.hero__l2 { font-size: var(--fs-h1-2); line-height: .96; }
.hero__lead { margin-top: var(--sp-24); color: var(--arg-text-weak); font-size: var(--fs-18); line-height: var(--lh-body); max-width: var(--measure); }
.hero__vinetas { margin-top: var(--sp-24); }
.hero__acciones { margin-top: var(--sp-24); }
.hero__aviso { margin-top: var(--sp-16); color: var(--arg-text-weak); font-size: var(--fs-16); }
.video-panel { margin-top: var(--sp-24); }

/* Orden móvil (43:2320): título → vídeo → botones → aviso → entradilla → viñetas */
@media (max-width: 1023px) {
	.hero__titulo { order: 1; }
	.video-panel { order: 2; margin-inline: calc(-1 * var(--gutter)); border-radius: 0 !important; }
	.hero__acciones { order: 3; }
	.hero__aviso { order: 4; }
	.hero__lead { order: 5; }
	.hero__vinetas { order: 6; }
}
@media (min-width: 1024px) {
	.hero { padding-block: var(--sp-64) var(--sp-96); }
	.hero__rejilla {
		grid-template-columns: minmax(0, 664fr) minmax(0, 520fr);
		grid-template-areas: "v1 video" "eyebrow video" "titulo video" "lead video" "vinetas video" "acciones video" "aviso video" "v2 video";
		grid-template-rows: 1fr auto auto auto auto auto auto 1fr;
		column-gap: var(--sp-64);
	}
	.hero__eyebrow { display: inline-flex; grid-area: eyebrow; margin-bottom: var(--sp-32); }
	.hero__titulo { grid-area: titulo; }
	.hero__lead { grid-area: lead; margin-top: var(--sp-32); }
	.hero__vinetas { grid-area: vinetas; margin-top: var(--sp-32); }
	.hero__acciones { grid-area: acciones; margin-top: var(--sp-32); }
	.hero__aviso { grid-area: aviso; margin-top: var(--sp-32); }
	.video-panel { grid-area: video; margin-top: 0; }
}
@media (min-width: 1024px) and (max-width: 1199px) {
	.hero__l1 { font-size: 3.4375rem; }
	.hero__l2 { font-size: 2.5625rem; }
}

/* Panel tinta del vídeo (40:1614) */
.video-panel { background: var(--arg-surface-dark); color: var(--arg-on-dark); padding: var(--sp-24) var(--gutter) var(--sp-32); border-radius: var(--radius-lg); }
@media (min-width: 1024px) { .video-panel { padding: var(--sp-32); } }
.video-panel__titulo { display: flex; align-items: center; gap: var(--sp-12); color: var(--arg-lime); font-family: var(--arg-font-mono); font-size: var(--fs-14); line-height: 1.4; letter-spacing: var(--ls-caps); margin-bottom: var(--sp-16); }
.video-panel__titulo .icono-caja svg { width: 18px; height: 18px; }
.video-panel__puntos { margin-top: var(--sp-16); color: var(--arg-on-dark); font-size: var(--fs-16); gap: var(--sp-8); }
@media (max-width: 1023px) { .video-panel__puntos { display: none; } }

.video { background: var(--arg-white); color: var(--arg-ink); border-radius: var(--radius-md); overflow: hidden; border: 1px solid var(--arg-neutral-700); }
.video__medio { width: 100%; aspect-ratio: 16 / 9; background: var(--arg-ink); }
.video__poster {
	position: relative; display: grid; grid-template-columns: 1fr auto; align-content: center;
	gap: var(--sp-8) var(--sp-16); padding: var(--sp-24); min-height: 240px;
	background: var(--arg-surface-dark); color: var(--arg-white);
}
@media (min-width: 1024px) { .video__poster { min-height: 329px; } }
.video__chip {
	grid-column: 1 / -1; justify-self: start; display: inline-flex; align-items: center; gap: var(--sp-8);
	padding: 4px var(--sp-12); border-radius: var(--radius-pill); background: var(--arg-neutral-800);
	color: var(--arg-white); font-size: var(--fs-12); text-transform: none; letter-spacing: 0;
}
.video__chip .hero__punto { background: var(--arg-lime); }
.video__hora { grid-column: 1; font-family: var(--arg-font-mono); font-size: var(--fs-20); color: var(--arg-lime); line-height: 1.2; margin-top: var(--sp-8); }
.video__frase { grid-column: 1; font-family: var(--arg-font-sans); font-weight: 600; font-size: var(--fs-28); line-height: 1.05; text-transform: uppercase; letter-spacing: -0.01em; }
@media (min-width: 1024px) { .video__hora { font-size: var(--fs-28); } .video__frase { font-size: 2.75rem; } }
.video__play {
	grid-column: 2; grid-row: 2 / span 2; align-self: center;
	display: grid; place-items: center; width: 64px; height: 64px; border-radius: 50%;
	background: var(--arg-lime); color: var(--arg-ink);
}
@media (min-width: 1024px) { .video__play { width: 80px; height: 80px; } }
.video__play svg { width: 26px; height: 26px; margin-left: 3px; }
@media (min-width: 1024px) { .video__play svg { width: 32px; height: 32px; } }
.video__play:hover { background: var(--arg-action-hover); }
.sobre-oscuro a.video__play { color: var(--arg-ink); }
.video__subtitulo { grid-column: 1 / -1; justify-self: center; margin-top: var(--sp-16); padding: 6px var(--sp-12); border-radius: var(--radius-sm); background: rgba(255, 255, 255, .12); font-size: var(--fs-16); }
.video__barra { display: flex; align-items: center; gap: var(--sp-16); padding: var(--sp-12) var(--sp-16); border-bottom: 1px solid var(--arg-border); font-family: var(--arg-font-mono); font-size: var(--fs-14); color: var(--arg-text-weak); }
.video__barra svg { width: 16px; height: 16px; color: var(--arg-ink); }
.video__progreso { flex: 1; height: 4px; border-radius: 2px; background: var(--arg-neutral-200); }
.video__cc { padding: 0 4px; border-radius: 3px; background: var(--arg-ink); color: var(--arg-white); font-size: var(--fs-12); font-weight: 600; }
.video__transcripcion summary {
	display: flex; align-items: center; justify-content: space-between; gap: var(--sp-16);
	min-height: 52px; padding: var(--sp-8) var(--sp-16); cursor: pointer; list-style: none;
	color: var(--arg-link); font-weight: 600; font-size: var(--fs-16);
}
.video__transcripcion summary::-webkit-details-marker { display: none; }
.video__transcripcion summary svg { width: 20px; height: 20px; transition: transform .2s ease; }
.video__transcripcion[open] summary svg { transform: rotate(180deg); }
.video__texto { padding: 0 var(--sp-16) var(--sp-16); display: grid; gap: var(--sp-16); max-height: 360px; overflow-y: auto; }

/* Transcripciones (mono para quién habla) */
.transcripcion { margin: 0; display: grid; gap: var(--sp-8); }
.transcripcion__linea { display: grid; grid-template-columns: 8.5rem minmax(0, 1fr); gap: var(--sp-12); font-size: var(--fs-16); line-height: 1.5; }
.transcripcion dt { font-family: var(--arg-font-mono); font-size: var(--fs-14); line-height: 1.7; color: var(--arg-leaf); }
.transcripcion dd { margin: 0; }
.transcripcion--clara .transcripcion__linea { grid-template-columns: 4.5rem minmax(0, 1fr); }
.transcripcion--clara dt { text-transform: uppercase; }

/* ---------- Franja 24/7 (40:1667) ---------- */
.franja { background: var(--arg-white); border-block: 2px solid var(--arg-ink); padding-block: var(--sp-48); }
.franja__rejilla { display: grid; gap: var(--sp-32); }
.franja__cifra { display: flex; align-items: center; gap: var(--sp-16); }
.franja__numero { font-family: var(--arg-font-display); font-weight: 700; font-size: var(--fs-figure); line-height: .95; letter-spacing: -0.036em; }
.franja__pie { font-weight: 600; font-size: var(--fs-18); line-height: 1.3; max-width: 227px; }
.franja__lista { list-style: none; padding: 0; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--sp-24) var(--sp-16); }
.franja__item { display: grid; align-content: start; gap: var(--sp-16); }
.franja__item .icono-caja svg { width: 32px; height: 32px; }
@media (max-width: 767px) { .franja .icono-caja--64 { --caja: 56px; } .franja__item .icono-caja svg { width: 28px; height: 28px; } }
.franja__texto { font-weight: 600; font-size: var(--fs-18); line-height: 1.3; }
@media (min-width: 1024px) {
	.franja { padding-block: 66px; }
	.franja__rejilla { grid-template-columns: 259px minmax(0, 1fr); gap: 0; }
	.franja__cifra { display: block; padding-right: var(--sp-32); }
	.franja__pie { margin-top: var(--sp-4); }
	.franja__lista { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 0; }
	.franja__item { border-left: 1px solid var(--arg-border-control); padding-inline: var(--sp-32) var(--sp-16); }
}

/* ---------- Registro (40:1706): 584 | 64 | 600 ---------- */
.registro__columnas { display: grid; gap: var(--sp-48); }
.puntos { list-style: none; padding: 0; display: grid; gap: var(--sp-32); }
.punto { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: var(--sp-16); align-items: start; }
.punto .icono-caja svg { width: 32px; height: 32px; }
.punto__titulo { display: block; font-family: var(--arg-font-display); font-weight: 600; font-size: var(--fs-28); line-height: 1.15; letter-spacing: -0.018em; }
.punto__texto { display: block; margin-top: var(--sp-4); color: var(--arg-text-weak); font-size: var(--fs-16); line-height: 1.5; }
.registro__boton { margin-top: var(--sp-48); }
.registro__nota { margin-top: var(--sp-24); max-width: 52ch; }
@media (max-width: 1023px) { .registro__boton { width: 100%; } .registro__puntos { order: 2; } }
@media (min-width: 1024px) {
	.registro__columnas { grid-template-columns: minmax(0, 584fr) minmax(0, 600fr); gap: var(--sp-64); align-items: start; }
	.puntos { gap: var(--sp-48); }
	.punto { gap: var(--sp-24); }
}

/* Pestañas (patrón común) */
.pestanas--js .pestanas__panel[hidden] { display: none; }
.pestanas__panel:focus-visible { outline-offset: -3px; }

.tarjeta-registro { background: var(--arg-white); border: 1px solid var(--arg-border); border-radius: var(--radius-lg); box-shadow: var(--shadow-card); overflow: hidden; }
.tarjeta-registro .pestanas__lista { display: flex; border-bottom: 1px solid var(--arg-border); padding-inline: var(--sp-16); }
.tarjeta-registro [role="tab"] {
	flex: 1 1 0; min-height: 56px; padding: 0 var(--sp-12); border: 0; border-bottom: 2px solid transparent; background: none;
	font-size: var(--fs-16); font-weight: 500; color: var(--arg-text-weak); cursor: pointer;
}
.tarjeta-registro [role="tab"][aria-selected="true"] { color: var(--arg-ink); font-weight: 600; border-bottom-color: var(--arg-ink); }
@media (min-width: 1024px) { .tarjeta-registro [role="tab"] { flex: 0 0 auto; padding: 0 var(--sp-24); } }
.tarjeta-registro .pestanas__panel { padding: var(--sp-24); display: grid; gap: var(--sp-12); align-content: start; }
@media (min-width: 1024px) { .tarjeta-registro.pestanas--js .pestanas__panel { min-height: 390px; } }
.llamada__titulo { font-weight: 600; font-size: var(--fs-16); line-height: 1.4; }
.llamada__meta { font-family: var(--arg-font-mono); font-size: var(--fs-14); color: var(--arg-text-weak); line-height: 1.4; margin-top: calc(-1 * var(--sp-8)); }
.llamada__etiqueta { color: var(--arg-text-weak); }
.registro__transcripcion { max-height: 300px; overflow-y: auto; padding-right: var(--sp-8); }
.llamada__enviado { padding: var(--sp-12) var(--sp-16); border-radius: var(--radius-md); background: var(--arg-lime-tint); font-weight: 600; font-size: var(--fs-16); }
.datos-clave { margin: 0; display: grid; gap: var(--sp-8); }
.datos-clave div { padding: var(--sp-12) var(--sp-16); border-radius: var(--radius-md); background: var(--arg-surface); }
.datos-clave dt { font-family: var(--arg-font-mono); font-size: var(--fs-14); color: var(--arg-text-weak); text-transform: uppercase; }
.datos-clave dd { margin: 0; font-weight: 500; font-size: var(--fs-16); line-height: 1.35; }
@media (min-width: 600px) { .datos-clave { grid-template-columns: repeat(3, minmax(0, 1fr)); } }

/* Reproductor decorativo y onda */
.reproductor { display: flex; align-items: center; gap: var(--sp-16); padding: var(--sp-12) var(--sp-16); border-radius: var(--radius-md); background: var(--arg-neutral-100); }
.reproductor__play { display: grid; place-items: center; width: 48px; height: 48px; flex: none; border-radius: 50%; background: var(--arg-ink); color: var(--arg-white); }
.reproductor__play svg { width: 18px; height: 18px; margin-left: 2px; }
.reproductor__tiempo { margin-left: auto; font-family: var(--arg-font-mono); font-size: var(--fs-14); color: var(--arg-text-weak); white-space: nowrap; }
.onda { display: flex; align-items: center; gap: 3px; height: 32px; flex: 1 1 auto; min-width: 0; overflow: hidden; }
.onda__barra { width: 3px; flex: none; border-radius: 2px; background: var(--arg-neutral-600); }
.onda__barra:nth-child(n+14) { background: var(--arg-neutral-500); }
.onda__barra--30 { height: 30%; } .onda__barra--35 { height: 35%; } .onda__barra--40 { height: 40%; }
.onda__barra--45 { height: 45%; } .onda__barra--50 { height: 50%; } .onda__barra--55 { height: 55%; }
.onda__barra--60 { height: 60%; } .onda__barra--65 { height: 65%; } .onda__barra--70 { height: 70%; }
.onda__barra--75 { height: 75%; } .onda__barra--80 { height: 80%; } .onda__barra--85 { height: 85%; }
.onda__barra--90 { height: 90%; } .onda__barra--95 { height: 95%; } .onda__barra--100 { height: 100%; }
@media (min-width: 1024px) { .reproductor--ancho .onda { flex: 0 1 320px; } }
.reproductor--pendiente { min-height: 72px; }
.reproductor--real { padding: var(--sp-8) var(--sp-12); }
.reproductor--real audio { display: block; width: 100%; height: 48px; }
.reproductor--pendiente .reproductor__tiempo { margin-left: auto; }
@media (max-width: 767px) { .reproductor--pendiente .onda { display: none; } .reproductor--pendiente .reproductor__tiempo { margin-inline: auto; } }

/* Resumen y etiquetas */
.resumen { display: grid; gap: var(--sp-12); padding: var(--sp-16); border-radius: var(--radius-md); background: var(--arg-lime-tint); }
.resumen__campos { margin: 0; display: grid; gap: var(--sp-8); }
.resumen__campos div { display: grid; grid-template-columns: 5.5rem minmax(0, 1fr); gap: var(--sp-8); font-size: var(--fs-16); line-height: 1.45; }
.resumen__campos dt { font-weight: 600; }
.resumen__campos dd { margin: 0; }
.etiqueta-urgente, .etiqueta-neutra {
	justify-self: start; display: inline-flex; align-items: center; gap: 6px; width: fit-content;
	padding: 3px 10px; border-radius: var(--radius-pill); font-weight: 600; font-size: var(--fs-14); line-height: 1.5;
}
.etiqueta-urgente { background: var(--arg-signal); color: var(--arg-ink); }
.etiqueta-urgente svg { width: 14px; height: 14px; }
.etiqueta-neutra { background: var(--arg-white); color: var(--arg-ink); border: 1px solid var(--arg-border-control); }

/* ---------- Reputación (40:1875): foto 608×640 | 64 | 576 ---------- */
.reputacion__rejilla { display: grid; gap: var(--sp-32); }
.reputacion__foto img { width: 100%; height: auto; aspect-ratio: 358 / 320; object-fit: cover; object-position: 50% 35%; border-radius: var(--radius-lg); }
.reputacion__texto .intro { margin-top: var(--sp-16); }
.preguntas { list-style: none; padding: 0; margin-top: var(--sp-24); }
.pregunta { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: var(--sp-16) var(--sp-24); padding-block: var(--sp-24); border-top: 1px solid var(--arg-border); }
.pregunta .icono-caja svg { width: 28px; height: 28px; }
.pregunta h3 { font-size: var(--fs-28); }
.pregunta__texto { margin-top: var(--sp-8); color: var(--arg-text-weak); font-size: var(--fs-16); line-height: 1.5; }
.pregunta__texto > * + * { margin-top: var(--sp-8); }
@media (min-width: 1024px) {
	.reputacion__rejilla { grid-template-columns: minmax(0, 608fr) minmax(0, 576fr); gap: var(--sp-64); align-items: start; }
	.reputacion__texto { padding-top: 20px; }
	.reputacion__foto img { aspect-ratio: 608 / 640; }
	.pregunta h3 { font-size: var(--fs-35); line-height: 1.1; letter-spacing: -0.028em; }
}

/* ---------- Método (40:1912) ---------- */
.metodo__arriba { display: grid; gap: var(--sp-48); }
.metodo__eyebrow { color: var(--arg-lime); margin-bottom: var(--sp-24); }
.metodo h2 { font-size: var(--fs-h2); }
.metodo .intro { margin-top: var(--sp-24); }
.metodo .boton { margin-top: var(--sp-24); }
.metodo__enlace { margin-top: var(--sp-16); font-size: var(--fs-16); color: var(--arg-on-dark-weak); }
.metodo__rejilla { list-style: none; padding: 0; margin: 0; display: grid; gap: var(--sp-32); }
.paso-protocolo { display: flex; flex-direction: column; gap: var(--sp-12); padding-top: var(--sp-24); border-top: 2px solid var(--arg-lime); }
.paso-protocolo__numero { color: var(--arg-lime); }
.paso-protocolo h3 { font-size: var(--fs-28); color: var(--arg-white); }
.paso-protocolo__texto { color: var(--arg-on-dark-weak); font-size: var(--fs-16); line-height: 1.5; }
.paso-protocolo__ejemplo { margin-top: auto; padding: var(--sp-8) var(--sp-12); border-radius: var(--radius-sm); background: var(--arg-neutral-800); font-family: var(--arg-font-mono); font-size: var(--fs-14); line-height: 1.5; color: var(--arg-white); }
.regla { margin-top: var(--sp-48); display: grid; gap: var(--sp-24); padding: var(--sp-32) var(--sp-24); border-radius: var(--radius-lg); background: var(--arg-lime); color: var(--arg-ink); }
.regla .mono-etiqueta { color: var(--arg-ink); }
.regla__titulo { margin-top: var(--sp-8); font-size: var(--fs-h2); line-height: 1.02; letter-spacing: var(--ls-heading); }
.regla__texto { font-size: var(--fs-16); line-height: 1.5; margin-bottom: var(--sp-16); }
.regla .lista-check { font-weight: 600; font-size: var(--fs-16); }
.regla__check { background: var(--arg-ink); color: var(--arg-lime); }
@media (min-width: 768px) { .metodo__rejilla { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--sp-48); } }
@media (min-width: 1024px) {
	.metodo__arriba { grid-template-columns: minmax(0, 500fr) minmax(0, 684fr); gap: var(--sp-64); align-items: start; }
	.metodo h2 { font-size: var(--fs-69); line-height: 1; letter-spacing: var(--ls-display); }
	.regla { margin-top: var(--sp-64); grid-template-columns: minmax(0, 624fr) minmax(0, 480fr); gap: var(--sp-48); padding: var(--sp-48); }
}

/* ---------- Escucha (41:1812) ---------- */
.escucha { padding-block: var(--sp-64); }
@media (min-width: 1200px) { .escucha { padding-block: var(--sp-96); } }
.escucha__cabeza { display: grid; gap: var(--sp-24); margin-bottom: var(--sp-32); }
.escucha__cabeza .encabezado { margin-bottom: 0; }
.pestanas__lista--pildoras { display: flex; flex-wrap: wrap; gap: var(--sp-8); }
.pestanas__lista--pildoras [role="tab"] {
	min-height: 48px; padding: 0 var(--sp-24); border: 1px solid var(--arg-ink); border-radius: var(--radius-pill);
	background: var(--arg-white); color: var(--arg-ink); font-size: var(--fs-16); font-weight: 500; cursor: pointer;
}
.pestanas__lista--pildoras [role="tab"][aria-selected="true"] { background: var(--arg-ink); color: var(--arg-white); font-weight: 600; }
.pestanas__lista--pildoras [role="tab"]:hover { background: var(--arg-neutral-100); }
.pestanas__lista--pildoras [role="tab"][aria-selected="true"]:hover { background: var(--arg-neutral-800); }
@media (max-width: 767px) { .pestanas__lista--pildoras { display: grid; grid-template-columns: 1fr 1fr; } .pestanas__lista--pildoras [role="tab"] { padding: 0 var(--sp-12); } }
@media (min-width: 1024px) { .escucha__cabeza { grid-template-columns: minmax(0, 1fr) auto; align-items: end; } }
.tarjeta-muestra { display: grid; gap: var(--sp-24); padding: var(--sp-24); background: var(--arg-white); border: 1px solid var(--arg-border); border-radius: var(--radius-lg); }
.tarjeta-muestra + .tarjeta-muestra { margin-top: var(--sp-16); }
.pestanas--js .tarjeta-muestra + .tarjeta-muestra { margin-top: 0; }
.tarjeta-muestra__cuerpo { display: grid; gap: var(--sp-24); }
.tarjeta-muestra__etiqueta { color: var(--arg-text-weak); margin-bottom: var(--sp-8); }
.resumen-dueno { display: grid; gap: var(--sp-8); align-content: start; padding: var(--sp-16); border-radius: var(--radius-md); background: var(--arg-lime-tint); }
.resumen-dueno__cabeza { display: flex; align-items: center; gap: var(--sp-8); font-weight: 600; font-size: var(--fs-16); }
.resumen-dueno__cabeza svg { width: 20px; height: 20px; }
.resumen-dueno__texto { font-size: var(--fs-16); line-height: 1.5; }
@media (min-width: 1024px) {
	.tarjeta-muestra { padding: var(--sp-32); }
	.tarjeta-muestra__cuerpo { grid-template-columns: minmax(0, 694fr) minmax(0, 440fr); gap: var(--sp-48); }
}
.escucha__pie { margin-top: var(--sp-48); display: grid; gap: var(--sp-16); justify-items: start; }
@media (max-width: 767px) { .escucha__pie .boton { width: 100%; } }

/* ---------- Profesiones (41:1916, picker 37:2297) ---------- */
.selector__lista { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--sp-16); }
.selector__tarjeta {
	position: relative; display: block; padding: 0; border: 0; border-radius: var(--radius-lg); overflow: hidden;
	background: var(--arg-neutral-100); cursor: pointer; text-align: left; outline-offset: 3px;
	box-shadow: 0 0 0 0 var(--arg-lime); transition: box-shadow .15s ease;
}
.selector__tarjeta img { width: 100%; height: auto; aspect-ratio: 4 / 3; object-fit: cover; transition: transform .3s ease; }
.selector__tarjeta:hover img { transform: scale(1.03); }
.selector__tarjeta .selector__nombre {
	position: absolute; left: var(--sp-12); bottom: var(--sp-12);
	padding: 6px var(--sp-12); border-radius: var(--radius-pill); background: var(--arg-ink); color: var(--arg-white);
	font-weight: 600; font-size: var(--fs-16); line-height: 1.3;
}
.selector__tarjeta[aria-selected="true"] { box-shadow: 0 0 0 4px var(--arg-lime); }
.selector__tarjeta[aria-selected="true"] .selector__nombre { background: var(--arg-lime); color: var(--arg-ink); }
.selector__pildora {
	min-height: 48px; padding: 0 var(--sp-16); border: 1px solid var(--arg-ink); border-radius: var(--radius-pill);
	background: var(--arg-white); color: var(--arg-ink); font-weight: 500; font-size: var(--fs-16); cursor: pointer;
}
.selector__pildora[aria-selected="true"] { background: var(--arg-ink); color: var(--arg-white); font-weight: 600; }
@media (max-width: 767px) { .selector__pildora { padding: 0 var(--sp-8); white-space: nowrap; } }
.selector__pildora:hover { background: var(--arg-neutral-100); }
.selector__pildora[aria-selected="true"]:hover { background: var(--arg-neutral-800); }
.selector__panel { margin-top: var(--sp-16); display: grid; gap: var(--sp-24); padding: var(--sp-32) var(--sp-24); border-radius: var(--radius-lg); background: var(--arg-surface-dark); color: var(--arg-white); }
.selector__etiqueta { color: var(--arg-lime); }
.selector__pregunta { margin-top: var(--sp-8); font-family: var(--arg-font-display); font-weight: 600; font-size: var(--fs-h2-s); line-height: 1.1; letter-spacing: -0.028em; text-wrap: balance; }
.profesiones__pie { margin-top: var(--sp-24); }
@media (min-width: 768px) {
	.selector__lista { grid-template-columns: repeat(4, minmax(0, 1fr)); }
	.selector__pildora { grid-column: span 1; }
}
@media (min-width: 1024px) {
	.selector__lista { gap: var(--sp-24) var(--sp-24); }
	.selector__panel { grid-template-columns: minmax(0, 1fr) 400px; align-items: center; gap: var(--sp-48); padding: var(--sp-48); }
}

/* ---------- Pasos (41:1977) ---------- */
.pasos { padding-block: var(--sp-64); }
@media (min-width: 1200px) { .pasos { padding-block: var(--sp-96); } }
.pasos__lista { list-style: none; padding: 0; margin: 0; display: grid; }
.paso { padding-block: var(--sp-24) var(--sp-32); border-top: 2px solid var(--arg-ink); }
.paso__numero { display: block; font-family: var(--arg-font-display); font-weight: 700; font-size: var(--fs-figure); line-height: .95; letter-spacing: -0.036em; }
.paso h3 { margin-top: var(--sp-16); font-size: var(--fs-28); }
.paso__texto { margin-top: var(--sp-16); color: var(--arg-text-weak); font-size: var(--fs-16); line-height: 1.5; }
.pasos__pie { margin-top: var(--sp-16); }
@media (min-width: 1024px) {
	.pasos__lista { grid-template-columns: repeat(3, minmax(0, 1fr)); column-gap: var(--sp-96); }
	.paso { position: relative; border-top: 0; padding: 0; }
	.paso + .paso::before { content: ""; position: absolute; top: 0; bottom: 0; left: -48px; width: 1px; background: var(--arg-border-control); }
	.paso h3 { font-size: var(--fs-35); line-height: 1.1; letter-spacing: -0.028em; min-height: 2.2em; }
	.pasos__pie { margin-top: var(--sp-48); }
}

/* ---------- Banda lima (41:1994) ---------- */
.banda { padding-block: var(--sp-64); }
.banda__rejilla { display: grid; gap: var(--sp-32); }
.banda h2 { font-size: var(--fs-h2); }
.banda__texto { margin-top: var(--sp-16); font-size: var(--fs-18); line-height: 1.5; max-width: var(--measure); }
.banda__acciones { display: grid; gap: var(--sp-16); }
@media (min-width: 1024px) {
	.banda { padding-block: var(--sp-96); }
	.banda__rejilla { grid-template-columns: minmax(0, 824fr) minmax(0, 360fr); gap: var(--sp-64); align-items: center; }
	.banda h2 { font-size: var(--fs-69); line-height: 1; letter-spacing: var(--ls-display); }
	.banda__texto { font-size: var(--fs-20); }
}

/* ---------- Precios (41:2014) ---------- */
.precios__planes { display: grid; gap: var(--sp-24); }
.tarjeta-precio { display: flex; flex-direction: column; padding: var(--sp-24); border: 1px solid var(--arg-border); border-radius: var(--radius-lg); background: var(--arg-white); }
.tarjeta-precio--destacada { order: -1; background: var(--arg-surface-dark); border-color: var(--arg-surface-dark); color: var(--arg-white); }
.tarjeta-precio__insignia { align-self: flex-end; min-height: 32px; }
.tarjeta-precio--destacada .tarjeta-precio__insignia { padding: 4px var(--sp-12); border-radius: var(--radius-pill); background: var(--arg-lime-tint); color: var(--arg-ink); font-weight: 600; font-size: var(--fs-14); line-height: 1.6; }
.tarjeta-precio h3 { margin-top: var(--sp-16); font-size: var(--fs-35); line-height: 1.1; letter-spacing: -0.028em; }
.tarjeta-precio__incluye { margin-top: var(--sp-16); min-height: 48px; color: var(--arg-text-weak); font-size: var(--fs-16); line-height: 1.5; }
.tarjeta-precio--destacada .tarjeta-precio__incluye, .tarjeta-precio--destacada .tarjeta-precio__exceso { color: var(--arg-on-dark-weak); }
.tarjeta-precio__precio { margin-top: var(--sp-16); }
.tarjeta-precio__cifra { font-family: var(--arg-font-display); font-weight: 700; font-size: var(--fs-55); line-height: 1; letter-spacing: -0.036em; }
.tarjeta-precio__mes { color: var(--arg-text-weak); font-size: var(--fs-18); }
.tarjeta-precio--destacada .tarjeta-precio__mes { color: var(--arg-on-dark-weak); }
.tarjeta-precio__exceso { margin-top: var(--sp-12); padding-bottom: var(--sp-24); border-bottom: 1px solid var(--arg-border); color: var(--arg-text-weak); font-size: var(--fs-16); }
.tarjeta-precio--destacada .tarjeta-precio__exceso { border-bottom-color: var(--arg-neutral-700); }
.tarjeta-precio__lista { margin-top: var(--sp-24); font-size: var(--fs-16); line-height: 1.75; gap: var(--sp-8); }
.tarjeta-precio__boton { margin-top: auto; }
.tarjeta-precio__lista { margin-bottom: var(--sp-32); }
.precios__nota { margin-top: var(--sp-24); }
@media (min-width: 1024px) {
	.precios__planes { grid-template-columns: repeat(3, minmax(0, 1fr)); }
	.tarjeta-precio { padding: var(--sp-32); }
	.tarjeta-precio--destacada { order: 0; }
}
.ahorro { margin-top: var(--sp-48); padding: var(--sp-24); border: 1px solid var(--arg-border); border-radius: var(--radius-lg); background: var(--arg-surface); }
.ahorro__cabeza { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: var(--sp-12); }
.ahorro__cabeza h3 { font-size: var(--fs-35); line-height: 1.1; letter-spacing: -0.028em; }
.ahorro__chip { padding: 4px var(--sp-8); border-radius: var(--radius-sm); background: var(--arg-neutral-200); color: var(--arg-ink); font-size: var(--fs-12); }
.ahorro__tarjetas { list-style: none; padding: 0; margin: var(--sp-24) 0; display: grid; gap: var(--sp-16); }
.ahorro__tarjeta { display: flex; flex-direction: column; gap: var(--sp-8); padding: var(--sp-24); border: 1px solid var(--arg-border); border-radius: var(--radius-md); background: var(--arg-white); }
.ahorro__tarjeta--oscura { background: var(--arg-surface-dark); border-color: var(--arg-surface-dark); color: var(--arg-white); }
.ahorro__etiqueta { font-weight: 500; font-size: var(--fs-16); }
.ahorro__cifra { min-height: 48px; display: flex; align-items: flex-end; font-family: var(--arg-font-display); font-weight: 700; font-size: var(--fs-41); line-height: 1.05; letter-spacing: -0.03em; }
.ahorro__tarjeta--oscura .ahorro__cifra { color: var(--arg-lime); }
.ahorro__pie { font-size: var(--fs-16); line-height: 1.5; color: var(--arg-text-weak); }
.ahorro__tarjeta--oscura .ahorro__pie { color: var(--arg-on-dark-weak); }
@media (min-width: 1024px) {
	.ahorro { padding: var(--sp-48); }
	.ahorro__tarjetas { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--sp-24); }
}

/* ---------- Calculadora (41:2149, Calculator v2) ---------- */
.calc { display: grid; gap: var(--sp-24); }
.calc__entrada { display: grid; gap: var(--sp-32); padding: var(--sp-24); border: 1px solid var(--arg-border); border-radius: var(--radius-lg); background: var(--arg-white); }
.calc__entrada h3 { font-size: var(--fs-28); }
.calc__fila { display: flex; align-items: flex-end; justify-content: space-between; gap: var(--sp-16); }
.calc__fila label { font-weight: 600; font-size: var(--fs-18); line-height: 1.3; }
.calc__valor { font-family: var(--arg-font-display); font-weight: 700; font-size: var(--fs-41); line-height: 1; letter-spacing: -0.03em; font-variant-numeric: tabular-nums; }
.calc__deslizador { display: flex; align-items: center; gap: var(--sp-12); margin-top: var(--sp-12); }
.calc__paso {
	display: grid; place-items: center; flex: none; width: 52px; height: 52px; border-radius: 50%;
	border: 1.5px solid var(--arg-ink); background: var(--arg-white); color: var(--arg-ink); cursor: pointer;
}
.calc__paso svg { width: 20px; height: 20px; }
.calc__paso:hover { background: var(--arg-neutral-100); }
.calc input[type="range"] {
	-webkit-appearance: none; appearance: none; flex: 1; min-width: 0; height: 44px; margin: 0; background: transparent; cursor: pointer;
}
.calc input[type="range"]::-webkit-slider-runnable-track { height: 8px; border-radius: 4px; border: 1px solid var(--arg-border-control); background: linear-gradient(to right, var(--arg-ink) 0 var(--relleno, 0%), var(--arg-neutral-200) var(--relleno, 0%)); }
.calc input[type="range"]::-moz-range-track { height: 8px; border-radius: 4px; background: var(--arg-neutral-200); border: 1px solid var(--arg-border-control); }
.calc input[type="range"]::-moz-range-progress { height: 8px; border-radius: 4px; background: var(--arg-ink); }
.calc input[type="range"]::-webkit-slider-thumb { -webkit-appearance: none; width: 40px; height: 40px; margin-top: -17px; border-radius: 50%; background: var(--arg-lime); border: 2px solid var(--arg-ink); }
.calc input[type="range"]::-moz-range-thumb { width: 36px; height: 36px; border-radius: 50%; background: var(--arg-lime); border: 2px solid var(--arg-ink); }
.calc__porcentaje { margin: 0; padding: 0; border: 0; min-width: 0; }
.calc__porcentaje legend { padding: 0; font-weight: 600; font-size: var(--fs-18); line-height: 1.3; }
.segmentos { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); margin-top: var(--sp-12); border: 1px solid var(--arg-border-control); border-radius: var(--radius-sm); overflow: hidden; }
.segmento { position: relative; }
.segmento input { position: absolute; inset: 0; opacity: 0; margin: 0; cursor: pointer; }
.segmento span { display: grid; place-items: center; min-height: 48px; font-size: var(--fs-16); font-weight: 500; border-left: 1px solid var(--arg-border-control); }
.segmento:first-child span { border-left: 0; }
.segmento input:checked + span { background: var(--arg-ink); color: var(--arg-white); font-weight: 600; }
.segmento input:focus-visible + span { outline: 3px solid var(--arg-focus-ring); outline-offset: -3px; }
.calc__resultado { padding: var(--sp-32) var(--sp-24); border-radius: var(--radius-lg); background: var(--arg-surface-dark); color: var(--arg-white); }
.calc__etiqueta { color: var(--arg-lime); }
.calc__dinero, .calc__perdidas { margin-top: var(--sp-16); font-family: var(--arg-font-display); font-weight: 700; line-height: .95; letter-spacing: -0.036em; color: var(--arg-lime); font-variant-numeric: tabular-nums; }
.calc__dinero { font-size: var(--fs-figure); }
.calc__perdidas { font-size: var(--fs-55); }
.calc__pie { margin-top: var(--sp-8); color: var(--arg-on-dark-weak); font-size: var(--fs-16); }
.calc__plan { margin-top: var(--sp-24); padding: var(--sp-16); border-radius: var(--radius-md); background: var(--arg-neutral-800); font-size: var(--fs-16); line-height: 1.4; }
.calc__nota { margin-top: var(--sp-24); color: var(--arg-on-dark-weak); font-size: var(--fs-14); line-height: 1.5; }
@media (min-width: 1024px) {
	.calc { grid-template-columns: minmax(0, 760fr) minmax(0, 464fr); gap: var(--sp-32); align-items: start; }
	.calc__entrada { padding: var(--sp-48); }
	.calc__resultado { padding: var(--sp-48); }
}

/* ---------- Comparativa (41:2204) ---------- */
.tabla-comparativa { width: 100%; font-size: var(--fs-16); line-height: 1.4; }
.tabla-comparativa th, .tabla-comparativa td { text-align: left; vertical-align: top; }
@media (max-width: 899px) {
	.tabla-comparativa thead { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
	.tabla-comparativa, .tabla-comparativa tbody, .tabla-comparativa tr, .tabla-comparativa th, .tabla-comparativa td { display: block; }
	.tabla-comparativa tr { margin-bottom: var(--sp-16); border: 1px solid var(--arg-border); border-radius: var(--radius-md); background: var(--arg-white); overflow: hidden; }
	.tabla-comparativa th[scope="row"] { padding: var(--sp-12) var(--sp-16); background: var(--arg-surface); font-weight: 600; }
	.tabla-comparativa td { display: grid; grid-template-columns: minmax(0, 11rem) minmax(0, 1fr); gap: var(--sp-12); padding: var(--sp-12) var(--sp-16); border-top: 1px solid var(--arg-border); color: var(--arg-text-weak); }
	.tabla-comparativa td::before { content: attr(data-etiqueta); color: var(--arg-ink); font-weight: 500; }
	.tabla-comparativa td:last-child { background: var(--arg-lime-tint); color: var(--arg-ink); font-weight: 600; }
}
@media (min-width: 900px) {
	.tabla-comparativa { border: 1px solid var(--arg-border); border-radius: var(--radius-lg); border-collapse: separate; border-spacing: 0; overflow: hidden; background: var(--arg-white); }
	.tabla-comparativa th, .tabla-comparativa td { padding: var(--sp-16) var(--sp-24); border-top: 1px solid var(--arg-border); }
	.tabla-comparativa thead th, .tabla-comparativa thead td { border-top: 0; padding-block: var(--sp-24); font-weight: 600; }
	.tabla-comparativa th[scope="row"] { font-weight: 600; width: 21%; }
	.tabla-comparativa td { color: var(--arg-text-weak); }
	.tabla-comparativa tr > :last-child { background: var(--arg-lime-tint); color: var(--arg-ink); font-weight: 600; }
}
.comparativa__pie { margin-top: var(--sp-24); max-width: var(--measure); }

/* ---------- FAQ (41:2272): 400 | 64 | 784 ---------- */
.faq__rejilla { display: grid; gap: var(--sp-32); }
.faq__lista { border-top: 1px solid var(--arg-border); }
.faq__item { border-bottom: 1px solid var(--arg-border); }
.faq__item summary {
	display: flex; align-items: center; justify-content: space-between; gap: var(--sp-16);
	min-height: 64px; padding-block: var(--sp-24); cursor: pointer; list-style: none;
}
.faq__item summary::-webkit-details-marker { display: none; }
.faq__pregunta { font-family: var(--arg-font-sans); font-size: var(--fs-20); font-weight: 500; line-height: 1.35; letter-spacing: 0; }
.faq__icono { display: grid; place-items: center; flex: none; width: 44px; height: 44px; border-radius: 50%; background: var(--arg-neutral-100); }
.faq__icono svg { width: 20px; height: 20px; }
.faq__menos { display: none; }
.faq__item[open] .faq__icono { background: var(--arg-lime); }
.faq__item[open] .faq__mas { display: none; }
.faq__item[open] .faq__menos { display: block; }
.faq__respuesta { padding-bottom: var(--sp-24); color: var(--arg-text-weak); max-width: var(--measure); }
.faq__respuesta > * + * { margin-top: var(--sp-12); }
@media (min-width: 1024px) {
	.faq__rejilla { grid-template-columns: minmax(0, 400fr) minmax(0, 784fr); gap: var(--sp-64); align-items: start; }
	.faq h2 { font-size: var(--fs-55); }
}

/* ---------- Cierre (41:2331) ---------- */
.cierre__rejilla { display: grid; gap: var(--sp-48); }
.cierre h2 { font-size: var(--fs-h2); }
.cierre .intro { margin-top: var(--sp-24); }
.cierre__botones { margin-top: var(--sp-32); }
@media (min-width: 1024px) {
	.cierre__rejilla { grid-template-columns: minmax(0, 495fr) 1px minmax(0, 560fr); gap: 0 var(--sp-96); align-items: start; }
	.cierre__rejilla::before { content: ""; grid-column: 2; grid-row: 1; align-self: stretch; background: var(--arg-neutral-700); }
	.cierre__copia { grid-column: 1; grid-row: 1; }
	.cierre .tarjeta-formulario { grid-column: 3; grid-row: 1; padding: var(--sp-32); }
}

/* Escala móvil del Figma (43:2868, 43:2657, 43:2880): estos tres H2 van a 41 en móvil; en escritorio mandan sus reglas. */
@media (max-width: 1023px) {
	.metodo h2, .banda h2, .precios h2 { font-size: var(--fs-41); line-height: 1.02; }
}

/* Foco visible en el formulario del cierre: WPForms lo anula en el botón y deja 1 px en los campos */
.tarjeta-formulario .wpforms-submit:focus-visible,
.tarjeta-formulario input:focus-visible,
.tarjeta-formulario textarea:focus-visible {
	outline: 3px solid var(--arg-focus-ring);
	outline-offset: 3px;
	box-shadow: none;
}
