/* Legibilidad en móvil — home, sedes y formularios.
 *
 * Auditoría previa (375px): 19 de 21 campos de formulario estaban por debajo
 * de 16px y 11 grupos de texto por debajo de 14px.
 *
 * Referencias aplicadas:
 *  · Apple HIG: cuerpo 17pt, mínimo absoluto 11pt; nada de texto por debajo
 *    de ~12px en pantalla pequeña.
 *  · Material 3: body-medium 14sp como mínimo para texto corrido.
 *  · Safari iOS: un <input> por debajo de 16px dispara ZOOM AUTOMÁTICO al
 *    enfocarlo y deja la página descuadrada. No es cosmético: es el defecto
 *    que más daño hace en un embudo de conversión.
 *
 * Solo ≤991px. En escritorio la jerarquía ya estaba resuelta y no se toca.
 */

@media (max-width: 991px) {

  /* ── 1. Campos de formulario: 16px o iOS hace zoom ──────────────────────
     El wizard dimensiona sus campos con --vc-text-sm (13px). Se remapea la
     variable en vez de perseguir cada selector: así entran de una vez el
     wizard, la calculadora y el modal, sin tocar sus hojas. */
  #vwOvl,
  #celCalcForm,
  #vadCalcCaja,
  .vc-calc-modal {
    --vc-text-sm: 15px;
  }

  /* El tamaño del propio campo va explícito: 16px es el umbral exacto de
     Safari y no admite aproximaciones. */
  .vw-campo input,
  .vw-campo select,
  .vw-campo textarea,
  #vwOvl input,
  #vwOvl select,
  #vwOvl textarea,
  .vc-calc__input,
  .vc-calc__form input,
  .vc-calc__form select,
  .form-control,
  .form-select,
  .vc-wa-input,
  /* Vive oculto hasta que la calculadora muestra sedes; se incluye igual
     para que no reaparezca el zoom cuando se despliega. */
  #celCalcSedesSelect {
    font-size: 16px;
  }

  /* Las etiquetas de campo estaban a 13px: se leen antes de decidir qué
     escribir, así que suben a 14. */
  .vw-campo label,
  .vc-calc__field label,
  #celCalcFechaLabel {
    font-size: 15px !important;
    line-height: 1.35;
  }

  /* Ayuda bajo el campo, aviso de error y texto del consentimiento. Iban con
     el tamaño «micro» del wizard, pensado para escritorio: en el teléfono son
     lo que le dice al usuario qué escribir y por qué no avanza, así que no
     pueden ser lo más pequeño de la pantalla. */
  #vwOvl .vw-pista,
  #vwOvl .vw-err,
  #vwOvl .vw-check,
  #vwOvl .vw-check label,
  #vwOvl .vw-doc {
    font-size: 13.5px !important;
    line-height: 1.45 !important;
  }

  /* ── 2. Texto secundario: nada por debajo de 13px ───────────────────────
     «Hace 4 semanas», «68 opiniones», «30 segundos». Es texto de apoyo, no
     debe competir con el cuerpo, pero a 12px se vuelve decorativo. */
  /* !important a propósito y acotado a este grupo: esta hoja va en el
     <head> y las páginas llevan sus bloques <style> más abajo, que la pisan
     por orden. Es un SUELO de legibilidad —no una preferencia estética—, así
     que debe ganar sin depender de dónde se cargue. */
  .vad-gcard__meta,
  .vad-gsello__meta,
  .how-work-step-meta,
  .vc-hero-nota,
  .vc-carrusel-pista {
    font-size: 13px !important;
  }

  /* Indicador de pasos del wizard: a 11px se leía como decoración cuando en
     realidad dice al usuario dónde está y cuánto falta. 12.5 lo devuelve a
     ser información, sin que el rótulo de tres pasos parta en dos líneas.
     El punto de referencia de la sede («Centro Comercial Plaza Chía…») sube
     al mismo suelo. */
  #vwOvl .vw-pasos li { font-size: 12.5px !important; }
  .vw-mapa-landmark { font-size: 13px !important; }

  /* ── 3. Testimonios sobre la carretera ──────────────────────────────────
     La cita es contenido real que la gente LEE: 12px la dejaba en el límite
     de lo incómodo. Sube a 14 con interlineado holgado. El bloque tiene
     altura fija sobre el carril, así que se compensa recortando el aire
     interno en vez de crecer y desbordar. */
  #sedes .vc-ruta__texto {
    font-size: 14px !important;
    line-height: 1.45 !important;
  }
  #sedes .vc-ruta__autor { font-size: 13px !important; }
  #sedes .vc-ruta__nota  { font-size: 13px !important; }
  /* Las estrellas son un glifo, no texto que se lea: basta con que se
     distingan junto a la nota. */
  #sedes .vc-ruta__estrellas { font-size: 11.5px !important; }
  #sedes .vc-ruta__card { padding-top: 10px; padding-bottom: 10px; }

  /* ── 4. Cuerpo de las tarjetas de reseña ────────────────────────────────
     14px es el mínimo de Material para texto corrido; con 1.55 de
     interlineado la cita se sigue sin esfuerzo. */
  .vad-gcard__texto {
    font-size: 15px !important;
    line-height: 1.55 !important;
  }
  .vad-gcard__nombre { font-size: 15px; }

  /* ── 5. Interlineado del cuerpo ─────────────────────────────────────────
     El cuerpo ya venía a 16px, que es correcto; lo que faltaba era garantizar
     que ningún párrafo bajara de 1.5 de interlineado, el umbral que WCAG
     recomienda para lectura sostenida. */
  .section-title p,
  .accordion-body p,
  .how-work-step-content p {
    line-height: 1.55;
  }
}
