/* Reglas móviles compartidas por todas las páginas.
   Verticalidad: una columna, tipografía más chica, menos aire lateral. */

@media (max-width: 780px) {

  /* --- aire lateral --- */
  section, [data-screen-label] {
    padding-left: 24px !important;
    padding-right: 24px !important;
  }
  [data-m="hero"] { padding-left: 0 !important; padding-right: 0 !important; }
  [data-m="hero"] > div[style*="min-height"] { padding: 96px 24px 28px !important; }

  /* contenedores internos de los case studies */
  [style*="max-width: 1200px"], [style*="max-width: 1100px"] {
    padding-left: 0 !important;
    padding-right: 0 !important;
    max-width: 100% !important;
  }

  /* --- toda grilla pasa a una columna --- */
  [style*="grid-template-columns"] {
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 24px !important;
  }

  /* --- filas de metadatos (01 / ( Sección ) / © 2026) quedan en una línea --- */
  [data-m="meta"] {
    display: flex !important;
    justify-content: space-between !important;
    align-items: baseline !important;
    gap: 10px !important;
  }
  [data-m="meta"] > * { flex: 0 0 auto !important; }

  /* --- escala tipográfica --- */
  [style*="font-size: 18px"] { font-size: 16px !important; line-height: 1.55 !important; }
  [style*="font-size: 14px"] { font-size: 12px !important; letter-spacing: 0.04em !important; }
  [style*="font-size: 40px"] { font-size: 28px !important; }
  [style*="font-size: 32px"] { font-size: 24px !important; }

  /* --- navegación --- */
  [data-nav] { padding: 14px 20px !important; }
  [data-nav] > div { gap: 16px !important; }
  [data-clock] { display: none !important; }

  /* --- utilidades por página --- */
  [data-m="stack"] {
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 12px !important;
    padding-bottom: 20px !important;
  }
  [data-m="stack"] > * { white-space: normal !important; }

  [data-m="hero-title"] { font-size: 17vw !important; line-height: 0.86 !important; }
  [data-m="hero-copy"] { font-size: 15px !important; line-height: 1.5 !important; max-width: 100% !important; }

  /* Process: en cadena vertical, cards compactas */
  [data-m="hscroll"] {
    display: flex !important;
    flex-direction: column !important;
    gap: 12px !important;
  }
  [data-m="hscroll"] > * {
    padding: 20px !important;
    gap: 8px !important;
  }
  [data-m="hscroll"] > * > [style*="font-size: 32px"] { font-size: 20px !important; }
  [data-m="hscroll"] > * > [style*="font-size: 18px"] { font-size: 15px !important; line-height: 1.45 !important; }

  /* filas de servicios */
  [data-m="svc"] { gap: 8px !important; padding: 24px 0 !important; }

  /* tarjetas de trabajos: una debajo de otra, más grandes */
  [data-card] > div { aspect-ratio: 3 / 4.1 !important; }
}
