/* O³ — ajustes móviles del home. Los estilos del diseño van inline, por eso !important. */
@media (max-width: 640px) {
  /* Nav: solo logo + CONVERSEMOS, con área táctil cómoda */
  .nav-links { display: none !important; }
  .nav-cta { display: inline-block; padding: 18px 0 10px !important; }

  /* CTAs de texto: más área táctil hacia arriba sin mover el subrayado */
  .tap { display: inline-block; padding-top: 16px !important; }

  /* Brand OS: número + disciplina en una línea, descripción debajo */
  .os-row { grid-template-columns: 48px 1fr !important; column-gap: 14px !important; row-gap: 8px !important; }
  .os-row > :nth-child(3) { grid-column: 2; }

  /* Casos: carrusel horizontal con la siguiente tarjeta asomándose */
  .cards {
    display: flex !important; gap: 14px !important;
    overflow-x: auto; scroll-snap-type: x mandatory; -webkit-overflow-scrolling: touch;
    margin: 0 -20px; padding: 0 20px 6px; scroll-padding-left: 20px; scrollbar-width: none;
  }
  .cards::-webkit-scrollbar { display: none; }
  .cards > a { flex: 0 0 78%; scroll-snap-align: start; }

  /* Textos de 9px suben a 11px en móvil */
  [style*="font-size: 9px"] { font-size: 11px !important; letter-spacing: 0.16em !important; }
}

/* ── Móvil: encuadre y auditoría (patch_movil.py) ── */
@media (max-width: 640px) {
  /* Hero: fondo anclado al centro inferior */
  [data-screen-label="Hero"] > video { object-position: 50% 100% !important; }

  /* La Tensión: el fundido del hero termina al 50% de la pista (scrub.js) y la sección sube 48vh
     sobre el final, así no queda una pantalla en blanco antes del texto */
  .scrub-on #eleva { position: relative; margin-top: -48vh; }
  #eleva { padding-top: 56px !important; padding-bottom: 72px !important; }
  #eleva [data-fx="label"] { margin-bottom: 28px !important; }
  #eleva > div > div:not([data-fx]):not(.split) { height: 44px !important; }

  /* Áreas táctiles de al menos 44px sin mover el subrayado */
  .tap { padding-top: 21px !important; }
  .nav-cta { padding-top: 20px !important; }
  [data-screen-label="Footer"] a { display: inline-block; padding-top: 15px !important; padding-bottom: 15px !important; }
}
