/* Estilo vivo: sans redondeada con personalidad, marca saturada, formas suaves. Nunito + DM Sans. */
.pagina--vivo {
  --fuente-titulo: "Nunito", "Segoe UI", system-ui, sans-serif;
  --fuente-texto: "DM Sans", "Segoe UI", system-ui, sans-serif;
  --radio: 26px;
  --sombra: 5px 5px 0 var(--marca-borde);
}
.pagina--vivo .titulo { font-weight: 900; letter-spacing: -0.02em; }
.pagina--vivo .etiqueta {
  display: inline-block; padding: 5px 12px; border-radius: 999px; background: var(--marca-tinte);
  letter-spacing: 0.08em; font-weight: 800;
}
.pagina--vivo .barra { border-bottom: 0; }
.pagina--vivo .barra__nombre { font-family: var(--fuente-titulo); font-weight: 900; font-size: 1.1875rem; }

.pagina--vivo .inicio::before {
  content: ""; position: absolute; right: -80px; top: -60px; width: 270px; height: 270px; border-radius: 50%;
  background: var(--marca-tinte);
}
.pagina--vivo .inicio::after {
  content: ""; position: absolute; left: -60px; bottom: -70px; width: 190px; height: 190px; border-radius: 42% 58% 55% 45%;
  background: var(--boton-tinte);
}
.pagina--vivo .inicio__titulo { font-weight: 900; letter-spacing: -0.025em; line-height: 1.05; }
.pagina--vivo .inicio__acento {
  background: linear-gradient(transparent 58%, var(--marca-borde) 58%, var(--marca-borde) 92%, transparent 92%);
  color: var(--tinta); padding-inline: 4px; margin-inline: -4px; border-radius: 6px;
}
.pagina--vivo .prueba { border: 2px solid var(--marca-borde); font-weight: 600; }
.pagina--vivo .inicio__foto { border-radius: 32px; box-shadow: var(--sombra); }
.pagina--vivo .inicio__oferta { font-weight: 700; }

.pagina--vivo .trat__item { border: 2px solid var(--marca-borde); border-radius: var(--radio); box-shadow: var(--sombra); }
.pagina--vivo .trat__nombre { font-weight: 800; }
.pagina--vivo .razones__check { background: var(--marca-tinte); border: 2px solid var(--marca-borde); }
.pagina--vivo .razones__titulo { font-family: var(--fuente-titulo); font-weight: 800; font-size: 1.125rem; }
.pagina--vivo .pasos__numero {
  width: 46px; height: 46px; border: 2px solid var(--marca); font-weight: 900; font-size: 1.25rem; background: var(--blanco);
}
.pagina--vivo .pasos__titulo { font-family: var(--fuente-titulo); font-weight: 800; font-size: 1.125rem; }
.pagina--vivo .chips__item { background: var(--marca-tinte); border-color: var(--marca-borde); border-width: 2px; }
.pagina--vivo .precios__monto { color: var(--marca); font-family: var(--fuente-titulo); font-weight: 900; }
.pagina--vivo .resena { border: 2px solid var(--marca-borde); border-radius: var(--radio); box-shadow: var(--sombra); }
.pagina--vivo .faq__item { border: 2px solid var(--marca-borde); border-radius: 22px; }
.pagina--vivo .faq__pregunta { font-family: var(--fuente-titulo); font-weight: 800; }
.pagina--vivo .profesional__tarjeta { padding: 18px; background: var(--blanco); border: 2px solid var(--marca-borde); border-radius: var(--radio); box-shadow: var(--sombra); }
.pagina--vivo .cierre { background: var(--suave); border-radius: 40px 40px 0 0; }
.pagina--vivo .cierre__titulo { font-weight: 900; font-size: 2rem; }
.pagina--vivo .boton { font-family: var(--fuente-titulo); font-weight: 800; }
.pagina--vivo .boton--principal { box-shadow: 0 6px 0 var(--boton-hover); }
.pagina--vivo .boton--principal:active { transform: translateY(4px); box-shadow: 0 2px 0 var(--boton-hover); }
@media (min-width: 760px) {
  .pagina--vivo .inicio::before { right: -60px; top: -140px; width: 540px; height: 540px; }
}
