/* Tablet fix - iPad / 768-991px only - no afecta móvil (<767) ni PC (>991) */
@media screen and (min-width: 768px) and (max-width: 991px) {
  /* Contenedor: apilar vertical, sin hueco lateral */
  .section-wrapper { padding: 20px 32px !important; }
  .container { flex-flow: column !important; }
  .side-section {
    flex-flow: column !important;
    width: 100% !important;
    height: auto !important;
    position: static !important;
    top: auto !important;
    gap: 16px !important;
    align-items: stretch !important;
  }
  .side-section._2 { flex-flow: column !important; }
  .side-navbar,
  .side-navbar-block.navbar {
    width: 100% !important;
    height: auto !important;
    flex: none !important;
  }
  .side-nav-inner-block-3 { width: 100% !important; }
  .side-nav-inner-block-2 {
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: center !important;
    gap: 12px 20px !important;
  }
  .container-7 {
    width: 100% !important;
    height: auto !important;
    padding: 20px !important;
    text-align: center !important;
  }
  /* side-cta ya oculto en 991, asegurar no reserva espacio */
  .side-cta { display: none !important; }

  /* Hero: evitar altura fija que empuja PASO1 */
  .hero-section { height: auto !important; padding: 60px 40px !important; }
  .hero-block { padding: 32px 24px !important; }
  .hero-heading { font-size: clamp(32px, 4.5vw, 42px) !important; width: 100% !important; }
  .hero-text-2 { width: 100% !important; max-width: 520px !important; }
  .hero-image-wrapper { -webkit-transform: none !important; -moz-transform: none !important; -ms-transform: none !important; transform: none !important; }

  /* PASO 1 / PASO 2: eliminar solape */
  .about-inner-block-1 {
    margin-top: 24px !important;
    padding: 24px 20px !important;
    width: 100% !important;
    max-width: none !important;
    align-items: flex-start !important;
    text-align: left !important;
  }
  .about-inner-block-2 { height: auto !important; min-height: 300px !important; }
  #form-section, #step-2 {
    max-width: 100% !important;
    padding-left: 20px !important;
    padding-right: 20px !important;
  }
  .text-block-8 { font-size: clamp(28px, 4vw, 38px) !important; }
  /* Form: evitar 2-col apretada si sigue solapando, opcional mantener 2-col saneada */
  .div-block-3, .div-block-4 { grid-template-columns: 1fr !important; }
  .contenedor-flex { display: flex !important; flex-flow: column !important; }
  .choice-row { height: auto !important; }
}

/* Landscape para móviles en tablet-fix (altura limitada) */
@media screen and (max-height: 500px) and (orientation: landscape) {
  .section-wrapper { padding: 8px 12px !important; }
  .hero-section { height: auto !important; min-height: 0; overflow: hidden !important; }
  .hero-block { height: auto !important; padding: 12px 14px !important; gap: 12px !important; }
  .hero-inner-block { flex-flow: column !important; justify-content: center !important; align-items: center !important; width: 100% !important; max-width: 1200px !important; margin: 0 auto !important; padding: 0 12px !important; }
  .text-heading-anim, .blocking-text-anim { display: none !important; }
  .hero-heading { font-size: 20px !important; margin-top: 8px !important; }
  .text-block-5 { font-size: 28px !important; margin-top: 8px !important; }
  .hero-text-1 { font-size: 11px !important; }
  .hero-text-2 { font-size: 10px !important; line-height: 1.3em !important; }
  .hero-flex-1 { width: 100% !important; }
  .hero-flex-2 { width: 100% !important; padding-left: 0 !important; display: flex !important; justify-content: center !important; align-items: center !important; }
  .hero-image-wrapper { -webkit-transform: none !important; -moz-transform: none !important; -ms-transform: none !important; transform: none !important; height: auto !important; max-height: 140px !important; align-self: center !important; }
  .hero-block-1 { height: auto !important; min-height: 80px !important; padding: 8px !important; }
  .hero-image { max-height: 120px !important; object-fit: contain !important; outline: none !important; }
  .hero-link { position: absolute !important; inset: 50% auto auto 50% !important; transform: translate(-50%, -50%) !important; }
  .about-inner-block-1 { margin-top: 16px !important; padding: 12px !important; }
  .about-inner-block-2 { min-height: 160px !important; height: auto !important; }
  .about-item { padding: 10px !important; }
  .about-item-title { font-size: 13px !important; }
  .about-item-text { font-size: 10px !important; }
  .side-navbar-block { padding: 8px !important; }
  .nav-link { font-size: 12px !important; padding: 2px 0 !important; }
  .container-7 { padding: 8px !important; text-align: center !important; }
  .text-block-12 { font-size: 13px !important; }
  .text-block-13, .text-block-14 { font-size: 16px !important; }
  .div-block-3, .div-block-4 { grid-template-columns: 1fr 1fr !important; gap: 8px !important; }
  .contenedor-flex { grid-template-columns: 1fr 1fr !important; gap: 8px !important; }
}
