@media (max-width: 779px) {



  /* ── Re-enable scroll-linked panels (overrides mobile.css) ── */

  .sn-spacer {

    display: block !important;

    height: 580vh !important;

  }



  /* Stage fijo en pantalla, debajo del header fijo */

  #sn-stage,

  .sn-stage {

    position: fixed !important;

    top: var(--hh, 52px) !important;

    left: 0 !important;

    width: 100% !important;

    height: calc(100vh - var(--hh, 52px)) !important;

    height: calc(100dvh - var(--hh, 52px)) !important;

    z-index: 30 !important;

    overflow: hidden !important;

    pointer-events: none !important;

  }



  .sn-stage.sn-hidden {

    display: none !important;

  }



  /* ── Panel: composición vertical (imagen arriba, texto abajo) ── */

  #sn-stage .sn-panel,

  .sn-panel {

    position: absolute !important;

    inset: 0 !important;

    display: grid !important;

    grid-template-columns: 1fr !important;

    grid-template-rows: 50% 50% !important;

    width: 100% !important;

    height: 100% !important;

    min-height: 100% !important;

    overflow: hidden !important;

    pointer-events: auto;

    will-change: transform;

    opacity: 1 !important;

  }



  /* ── Halves base ── */

  #sn-stage .sn-half,

  .sn-half {

    width: 100% !important;

    height: 100% !important;

    min-height: 0 !important;

    overflow: hidden !important;

    will-change: transform;

  }



  /* ── Mitad Imagen: siempre fila 1 (arriba) ── */

  #sn-stage .sn-panel .sn-half--img,

  .sn-panel .sn-half--img {

    grid-column: 1 !important;

    grid-row: 1 !important;

    width: 100% !important;

    height: 100% !important;

    min-height: 0 !important;

    display: flex !important;

    align-items: center !important;

    justify-content: center !important;

    background: #ffffff !important;

    overflow: hidden !important;

    will-change: transform;

  }



  .sn-half--img picture {

    display: flex !important;

    align-items: center !important;

    justify-content: center !important;

    width: 100% !important;

    height: 100% !important;

  }



  .sn-half--img img {

    width: 100% !important;

    height: 100% !important;

    display: block !important;

    object-fit: contain !important;

    padding: 20px 24px !important;

    box-sizing: border-box !important;

    background: transparent !important;

  }



  /* Panel 1 y 3: imágenes con fit contain */

  .sn-panel[data-idx="0"] .sn-half--img,

  .sn-panel[data-idx="2"] .sn-half--img {

    background: #ffffff !important;

  }



  .sn-panel[data-idx="0"] .sn-half--img img,

  .sn-panel[data-idx="2"] .sn-half--img img {

    object-fit: contain !important;

    padding: 20px 28px !important;

    background: #ffffff !important;

    transform: none !important;

  }



  /* Panel 2: Mini Wantan cubre el espacio */

  .sn-panel[data-idx="1"] .sn-half--img {

    background: #ffffff !important;

  }



  .sn-panel[data-idx="1"] .sn-half--img img {

    object-fit: cover !important;

    padding: 0 !important;

    object-position: center center !important;

    transform: scale(1.05) !important;

    transform-origin: center center !important;

  }



  /* ── Mitad Texto: siempre fila 2 (abajo) ── */

  #sn-stage .sn-panel .sn-half--text,

  .sn-panel .sn-half--text {

    grid-column: 1 !important;

    grid-row: 2 !important;

    width: 100% !important;

    height: 100% !important;

    min-height: 0 !important;

    display: flex !important;

    flex-direction: column !important;

    justify-content: center !important;

    align-items: flex-start !important;

    padding: 24px 28px !important;

    box-sizing: border-box !important;

    gap: 0 !important;

    overflow: hidden !important;

    will-change: transform;

    opacity: 1 !important;

    visibility: visible !important;

  }



  .sn-half--text>\* {

    opacity: 1 !important;

    visibility: visible !important;

  }



  /* Accent line */

  .sn-accent {

    display: block !important;

    width: 34px !important;

    height: 2px !important;

    background: #ffffff !important;

    margin-bottom: 16px !important;

    flex-shrink: 0 !important;

  }



  /* Título */

  .sn-title {

    font-family: 'Cocogoose', 'Poppins', sans-serif !important;

    font-size: clamp(22px, 5.8vw, 26px) !important;

    font-weight: 700 !important;

    color: #ffffff !important;

    line-height: 1.15 !important;

    letter-spacing: -0.01em !important;

    text-transform: uppercase !important;

    margin: 0 0 12px 0 !important;

  }



  .sn-orange {

    color: #EC690D !important;

  }



  /* Descripción */

  .sn-desc {

    font-family: 'Helvetica Neue Light', 'Helvetica Neue', Arial, sans-serif !important;

    font-size: clamp(13.5px, 3.6vw, 15px) !important;

    color: rgba(255, 255, 255, 0.92) !important;

    line-height: 1.35 !important;

    letter-spacing: 0.01em !important;

    margin: 0 !important;

  }



  .sn-desc br {

    display: block !important;

  }



  /* ── Header fijo siempre en móvil ── */

  #site-header {

    height: var(--hh, 52px) !important;

  }



  body>header {

    position: fixed !important;

    top: 0 !important;

    left: 0 !important;

    right: 0 !important;

    width: 100% !important;

    z-index: 99999 !important;

    transform: none !important;

    translate: none !important;

    opacity: 1 !important;

    visibility: visible !important;

    transition: none !important;

    animation: none !important;

  }



  body>header.is-hidden,

  body>header.header-hidden,

  body>header.hide-header,

  body>header.header-hide,

  body>header.hidden {

    top: 0 !important;

    transform: none !important;

    translate: none !important;

    opacity: 1 !important;

    visibility: visible !important;

  }



  html,

  body {

    scroll-padding-top: var(--hh, 52px);

  }



  /* ── Transición al contenido inferior ── */

  .sn-below {

    position: relative;

    z-index: 40 !important;

    background: #fff;

  }



  /* ── KPIs móvil ── */

  .sn-stats {

    flex-direction: row !important;

    flex-wrap: nowrap !important;

    gap: 12px !important;

    padding: 36px 16px !important;

    justify-content: center !important;

  }



  .sn-stat {

    flex: 1;

    min-width: 0;

  }



  .sn-stats .sn-stat .sn-stat-number {

    font-size: clamp(24px, 7vw, 36px) !important;

  }



  .sn-stats .sn-stat .sn-stat-label {

    font-size: 10px !important;

    white-space: normal !important;

    line-height: 1.25 !important;

  }



  /* ── Nuestra Historia móvil ── */

  #nh-container {

    height: auto !important;

  }



  .nh-section {

    position: relative !important;

    top: auto !important;

    height: auto !important;

    min-height: auto !important;

    padding: 28px 24px 32px !important;

    overflow: hidden !important;

  }



  #historia .nh-heading {

    font-size: 22px !important;

    margin-top: 4px !important;

    margin-bottom: 14px !important;

    position: static !important;

    text-align: center !important;



  }



  .nh-body {

    grid-template-columns: 1fr !important;

    grid-template-rows: auto auto auto !important;

    gap: 12px !important;

    align-content: start !important;

    height: auto !important;

  }



  .nh-left {

    display: flex !important;

    flex-direction: column !important;

    align-items: center !important;

    text-align: center !important;

    margin-top: 0 !important;

    transform: none !important;

    transform-origin: center !important;

    gap: 4px !important;

  }



  .nh-year {

    font-size: 42px !important;

    line-height: 1 !important;

    margin-bottom: 0 !important;

    order: -1;

  }



  .nh-brand {

    font-size: 15px !important;

    margin-bottom: 0 !important;

  }



  .nh-desc {

    font-size: 11px !important;

    max-width: 70% !important;

    line-height: 1.4 !important;

    margin: 0 auto !important;

    text-align: center !important;

    text-align-last: center !important;

  }



  .nh-underline {

    display: none;

  }



  .nh-divider {

    display: none !important;

  }



  .nh-right {

    justify-content: center !important;

    align-items: center !important;

    padding-top: 0 !important;

    display: flex !important;

  }



  .nh-img {

    max-height: 42vh !important;

    max-width: 75% !important;

    margin: 0 auto !important;

    display: block !important;

  }



  .nh-dots {

    flex-direction: row !important;

    height: auto !important;

    padding: 4px 0 !important;

    justify-content: center !important;

  }



  #historia .nh-left,

  #historia .nh-right {

    transition: opacity 0.55s ease !important;

  }



  #historia .sn-stats {

    padding: 12px 16px !important;

  }



  #historia .mf-fade {

    transition: opacity 800ms ease, transform 800ms ease !important;

  }



  #historia .mf-fade.mf-in {

    opacity: 1 !important;

    transform: none !important;

  }

}

/* ==========================================================================
   NUESTRA HISTORIA — MOBILE FINAL
   Un solo bloque consolidado para evitar reglas duplicadas en móvil.
   ========================================================================== */
@media (max-width: 779px) {
  #nh-container {
    width: 100% !important;
    max-width: 100% !important;
    height: calc(100dvh - var(--hh, 52px)) !important;
    min-height: calc(100dvh - var(--hh, 52px)) !important;
    margin: 0 !important;
    padding: 0 !important;
    position: relative !important;
  }

  #historia.nh-section {
    position: relative !important;
    top: auto !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: flex-start !important;
    width: 100% !important;
    max-width: 100% !important;
    height: calc(100dvh - var(--hh, 52px)) !important;
    min-height: calc(100dvh - var(--hh, 52px)) !important;
    margin: 0 !important;
    padding: 0 !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
  }

  /* Estadísticas: ancho completo, tres columnas equilibradas */
  #historia .sn-stats {
    display: flex !important;
    flex: 0 0 auto !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    justify-content: center !important;
    align-items: flex-start !important;
    width: 100% !important;
    max-width: none !important;
    gap: 4px !important;
    margin: 0 !important;
    padding: 22px 8px !important;
    box-sizing: border-box !important;
  }

  #historia .sn-stat {
    flex: 1 1 0 !important;
    min-width: 0 !important;
    padding: 0 2px !important;
    gap: 6px !important;
  }

  #historia .sn-stat-number {
    font-size: clamp(44px, 12.3vw, 50px) !important;
    line-height: 1 !important;
  }

  #historia .sn-stat-label {
    font-size: clamp(10px, 3vw, 12px) !important;
    line-height: 1.2 !important;
    white-space: normal !important;
  }

  /* Título: 22 px y ligeramente más abajo */
  #historia .nh-heading {
    position: static !important;
    flex: 0 0 auto !important;
    width: 100% !important;
    margin: 0 0 14px !important;
    padding-top: 40px !important;
    font-size: 22px !important;
    line-height: 1.25 !important;
    text-align: center !important;
    transform: none !important;
    box-sizing: border-box !important;
  }

  /* Contenido central aprovecha el ancho y el alto restantes */
  #historia .nh-body {
    display: grid !important;
    flex: 1 1 auto !important;
    min-height: 0 !important;
    width: 100% !important;
    grid-template-columns: minmax(0, 1fr) !important;
    grid-template-rows: auto auto minmax(0, 1fr) auto !important;
    align-content: start !important;
    align-items: center !important;
    justify-items: center !important;
    gap: 8px !important;
    margin: 0 !important;
    padding: 52px 12px 12px !important;
    box-sizing: border-box !important;
    transform: scale(0.95) !important;
    transform-origin: top center !important;
  }

  #historia .nh-left {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: flex-start !important;
    width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    gap: 4px !important;
    text-align: center !important;
    transform: none !important;
    transform-origin: center !important;
    grid-row: 1 !important;
  }


  /* Año: bajar un poco */
  #historia .nh-year {
    order: -1 !important;
    margin: 24px 0 0 !important;
    font-size: 55px !important;
    line-height: 1 !important;
    transform: none !important;
  }

  /* Marca: bajar junto con el año */
  #historia .nh-brand {
    margin: 0 !important;
    font-size: 20px !important;
    line-height: 1.2 !important;
    transform: none !important;
  }


  #historia .nh-desc {
    width: 100% !important;
    max-width: 90% !important;
    margin: 0 auto !important;
    font-size: 11px !important;
    line-height: 1.4 !important;
    text-align: center !important;
    text-align-last: center !important;
  }

  #historia .nh-underline,
  #historia .nh-divider {
    display: none !important;
  }

  #historia .nh-right {
    display: flex !important;
    grid-row: 2 !important;
    justify-content: center !important;
    align-items: center !important;
    width: 100% !important;
    min-width: 0 !important;
    min-height: 0 !important;
    height: 100% !important;
    margin: 12px 0 0 !important;
    padding: 0 !important;
  }

  #historia .nh-img {
    display: block !important;
    width: auto !important;
    height: auto !important;
    max-width: 100% !important;
    max-height: 38dvh !important;
    margin: 0 auto !important;
    object-fit: contain !important;
  }

  #historia .nh-dots {
    display: flex !important;
    grid-row: 3 !important;
    flex-direction: row !important;
    justify-content: center !important;
    align-items: center !important;
    gap: 8px !important;
    width: 100% !important;
    height: auto !important;
    padding: 4px 0 !important;
  }

  #historia .nh-dot {
    flex: 0 0 auto !important;
  }

  #historia .nh-left,
  #historia .nh-right {
    transition:
      opacity 800ms cubic-bezier(.22, 1, .36, 1),
      transform 800ms cubic-bezier(.22, 1, .36, 1) !important;
  }

  #historia .mf-fade {
    transition: opacity 800ms ease, transform 800ms ease !important;
  }

  #historia .mf-fade.mf-in {
    opacity: 1 !important;
    transform: none !important;
  }

  @media (max-width: 779px) {
    #historia .nh-desc {
      font-size: 16px !important;
      position: relative !important;
      top: 8px !important;
    }
  }
}

/* MOBILE: fade sin desplazamiento en Nuestra Historia */
@media (max-width: 779px) {

  #historia .nh-left,
  #historia .nh-right {
    transition: opacity 800ms cubic-bezier(.22, 1, .36, 1) !important;
  }

  #historia .nh-right.nh-out {
    opacity: 0 !important;
    transform: none !important;
  }

  /* Ocultar la imagen desktop única en mobile */
  #historia #nh-img {
    display: none !important;
  }

  /* Las capas de crossfade mobile solo se muestran en mobile */
  #historia .nh-img-layer {
    display: flex !important;
  }
}

/* Desktop: ocultar las capas de crossfade mobile */
@media (min-width: 780px) {
  #historia .nh-img-layer {
    display: none !important;
  }
}

/* Nuestra Historia: marca en Helvetica bold y pegada al año */
#historia .nh-brand {
  font-family: 'Helvetica Neue Bold', 'Helvetica Neue', Helvetica, Arial, sans-serif !important;
  font-weight: 700 !important;
  letter-spacing: 0 !important;
  line-height: 1.1 !important;
  margin-top: -0.1em !important;
}

/* Nuestra Historia (móvil): el tamaño de la imagen cambia sin animarse, solo la opacidad */
@media (max-width: 779px) {
  #historia .nh-img-layer img {
    transition: none !important;
  }
}

/* Nuestra Historia (móvil): las dos capas de imagen miden exactamente igual → mismo tamaño en todas las marcas */
@media (max-width: 779px) {
  #historia .nh-right {
    position: relative !important;
    height: 40dvh !important;
    margin-top: 20px !important;
  }

  #historia .nh-img-layer {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
  }

  #historia .nh-img-layer img {
    width: 100% !important;
    height: 100% !important;
    max-width: none !important;
    max-height: none !important;
    object-fit: contain !important;
  }
}

/* Sobre nosotros, panel 3 (móvil): foto del local a cobertura completa */
@media (max-width: 779px) {
  #sn-stage .sn-panel[data-idx="2"] .sn-half--img img {
    object-fit: cover !important;
    object-position: center center !important;
    padding: 0 !important;
    transform: none !important;
    transform-origin: center center !important;
  }
}

/* Sobre nosotros (móvil): los 3 bloques de texto un poco más a la derecha */
@media (max-width: 779px) {
  body:has(#nh-container) #sn-stage .sn-panel .sn-half--text {
    padding-left: 44px !important;
    padding-right: 28px !important;
  }

  body:has(#mercados) #sn-static-first .sn-half--text,
  body:has(#mercados) #sn-stage .sn-panel .sn-half--text,
  body:has(#mercados) #sn-static-last .sn-half--text,
  body:has(#mercados) .sn-panel .sn-half--text {
    padding-left: 40px !important;
    padding-right: 28px !important;
  }
}

/* Sobre nosotros (móvil): imagen 2 (mini wantan) más a la izquierda */
@media (max-width: 779px) {
  body:has(#nh-container) #sn-stage .sn-panel[data-idx="1"] .sn-half--img img {
    object-position: 100% center !important;
    transform: translateX(-5%) scale(1.1) !important;
    transform-origin: center center !important;
  }
}

/* Sobre nosotros (móvil): imagen 1 más grande */
@media (max-width: 779px) {
  body:has(#nh-container) #sn-stage .sn-panel[data-idx="0"] .sn-half--img img {
    padding: 14px 20px !important;
    transform: translateX(3%) scale(1.03) !important;
    transform-origin: center center !important;
  }
}

/* Sobre nosotros (móvil): título más pegado a la descripción en los 3 bloques */
@media (max-width: 779px) {
  body:has(#nh-container) #sn-stage .sn-panel .sn-title {
    margin-bottom: 0 !important;
  }

  body:has(#nh-container) #sn-stage .sn-panel .sn-desc {
    margin-top: 1px !important;
  }
}

/* Sobre nosotros (móvil): la primera línea del título (con tilde, p. ej. "UNA VISIÓN") no debe abrir más espacio que las demás */
@media (max-width: 779px) {
  body:has(#nh-container) #sn-stage .sn-panel .sn-title {
    line-height: 1.15 !important;
  }

  /* line-height 0 en el span: la tilde de "Ó" (letra de respaldo) ya no agranda la primera línea */
  body:has(#nh-container) #sn-stage .sn-panel .sn-title > span:not(.sn-orange) {
    display: inline !important;
    line-height: 0 !important;
    vertical-align: baseline !important;
  }
}

/* Nuestra historia (móvil): título un poco más abajo */
@media (max-width: 779px) {
  #historia .nh-heading {
    padding-top: 26px !important;
  }
}

/* Nuestra historia (móvil): título más abajo y bloque de año, marca, texto e imagen un 5% más grande */
@media (max-width: 779px) {
  #historia .nh-heading {
    padding-top: 42px !important;
  }

  #historia .nh-year {
    font-size: 57.75px !important;
  }

  #historia .nh-brand {
    font-size: 21px !important;
  }

  #historia .nh-desc {
    font-size: 16.8px !important;
  }

  #historia .nh-img-layer {
    transform: scale(1.05);
  }
}

/* Nuestra historia (móvil): el bloque reparte el espacio de forma pareja (sin huecos grandes), sin cambiar tamaños */
@media (max-width: 779px) {
  #historia .nh-body {
    grid-template-rows: auto auto auto !important;
    align-content: space-evenly !important;
    row-gap: 0 !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }

  #historia .nh-left {
    grid-row: 1 !important;
  }

  #historia .nh-right {
    grid-row: 2 !important;
    margin-top: 0 !important;
  }

  #historia .nh-dots {
    grid-row: 3 !important;
    padding: 0 !important;
  }

  #historia .nh-heading {
    margin-bottom: 0 !important;
  }
}

/* Indicador "Desliza hacia abajo" en los paneles (solo móvil) */
.sn-scroll-hint {
  display: none;
}

@media (max-width: 779px) {
  #sn-stage .sn-scroll-hint {
    position: absolute;
    left: 0;
    right: 0;
    bottom: calc(64px + env(safe-area-inset-bottom, 0px));
    z-index: 30;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 6px;
    color: #fff;
    font-family: 'Helvetica Neue Roman', 'Helvetica Neue', Arial, sans-serif;
    font-size: 13px;
    letter-spacing: 0.04em;
    pointer-events: none;
    transition: opacity 0.4s ease;
  }

  #sn-stage .sn-scroll-hint svg {
    animation: sn-hint-bounce 1.6s ease-in-out infinite;
  }

  /* En el último panel ya no hace falta */
  #sn-stage:has(.sn-panel[data-idx="2"].sn-in) .sn-scroll-hint {
    opacity: 0;
  }
}

@keyframes sn-hint-bounce {
  0%, 100% { transform: translateY(0); }
  50% { transform: translateY(6px); }
}

@media (prefers-reduced-motion: reduce) {
  #sn-stage .sn-scroll-hint svg { animation: none; }
}

/* Indicador de scroll: solo la flecha */
@media (max-width: 779px) {
  #sn-stage .sn-scroll-hint span {
    display: none;
  }

  #sn-stage .sn-scroll-hint svg {
    width: 26px;
    height: 26px;
  }
}

/* Panel 1: foto del local Chinawok a sangre (cubre toda la mitad, sin márgenes), desktop y móvil */
#sn-stage .sn-panel[data-idx="0"] .sn-half--img img[src*="chinawok-local"],
body:has(#nh-container) #sn-stage .sn-panel[data-idx="0"] .sn-half--img img[src*="chinawok-local"] {
  object-fit: cover !important;
  object-position: center !important;
  padding: 0 !important;
  transform: none !important;
}
