@media (max-width: 820px) {
  .desktop-only { display: none !important; }
  .mobile-only { display: block !important; }

  body, html { min-width: 100vw !important; overflow-x: hidden; }

  /* Banner mobile: siempre 100% visible */
  .banner-mobile {
    width: 100vw; display: flex; align-items: center; justify-content: center;
    background: #000; overflow: hidden; margin: 0;
    min-height: 0 !important; height: auto !important;
  }
  .banner-mobile .banner-img {
    width: 100vw; height: auto; min-height: 0; max-height: none;
    object-fit: contain !important; object-position: center;
    display: block;
    animation: bannerShow 1.2s cubic-bezier(.24,1.18,.44,1) both;
  }

  /* Bloque destacado: abajo del banner, todo centrado */
  .landing-mobile {
    width: 100vw;
    display: flex; flex-direction: column;
    align-items: center; justify-content: flex-start;
    padding: 0 4vw;
    margin-top: 4vw;
    margin-bottom: 14vw; /* <- MAS GRANDE PARA QUE EL BOTÓN NUNCA QUEDE PEGADO AL FOOTER */
  }
  .landing-mobile .landing-titulo {
    font-size: 1.14rem;
    font-weight: 800;
    text-align: center;
    margin-bottom: 13px;
    margin-top: 0;
    color: #fff;
    line-height: 1.18;
    letter-spacing: 0.1px;
  }
  .landing-mobile .landing-sub {
    font-size: 1.02rem;
    text-align: center;
    color: #ededed;
    margin-bottom: 0;
    line-height: 1.28;
    max-width: 97vw;
    font-weight: 400;
  }
  .landing-mobile .btn-ver-catalogos {
    margin: 23px auto 0 auto; /* <- Espacio mayor abajo */
    width: 94vw;
    max-width: 340px;
    font-size: 1.13rem;
    display: block;
    text-align: center;
    padding: 16px 0;
    border-radius: 32px;
    background: linear-gradient(90deg, #ff1616 50%, #b10000 100%);
    color: #fff;
    font-weight: 800;
    box-shadow: 0 2px 14px #b1000040;
    transition: background .16s, transform .17s, box-shadow .2s;
    border: none;
    outline: none;
    text-transform: uppercase;
    letter-spacing: 0.7px;
  }
  .landing-mobile .btn-ver-catalogos:hover {
    background: linear-gradient(90deg, #d10000 60%, #ff1616 100%);
    transform: scale(1.04) translateY(-2px);
    box-shadow: 0 6px 18px #ff161680;
    color: #fff;
  }
}
