/* Versión 12: experiencia móvil vertical, centrada y animada */
.hero-mobile-photo{display:none}

@media(max-width:640px){
  body{overflow-x:hidden}
  .container{width:min(100% - 32px,1180px)}

  /* Hero: fotografía completa arriba y contenido debajo */
  .hero-integrated{
    display:block;
    min-height:0;
    padding:0 0 44px;
    background:#02080c;
    background-image:none!important;
  }
  .hero-integrated .hero-overlay{display:none}
  .hero-mobile-photo{display:block;width:100%;background:#07131b;overflow:hidden}
  .hero-mobile-photo img{display:block;width:100%;height:auto;aspect-ratio:1.28/1;object-fit:cover;object-position:center}
  .hero-integrated .hero-grid{padding-top:36px;text-align:center}
  .hero-integrated .hero-copy{max-width:none;text-align:center}
  .hero-integrated .eyebrow{justify-content:center;font-size:.7rem;line-height:1.45}
  .hero-integrated h1{font-size:clamp(2.45rem,12vw,3.35rem);line-height:.98;margin:18px auto 22px}
  .hero-integrated .hero-description{max-width:34rem;margin-inline:auto;line-height:1.65}
  .hero-integrated .hero-description span{display:block}
  .hero-integrated .hero-actions{width:100%;gap:12px;margin:26px 0 24px}
  .hero-integrated .hero-actions .button{width:100%}
  .hero-integrated .hero-proof{display:flex;justify-content:center;gap:9px 15px}
  .hero-integrated .hero-data{grid-template-columns:1fr;gap:9px;width:100%;margin-top:23px;text-align:left}
  .hero-data>div{justify-content:flex-start}

  /* Jerarquía y centrado de las secciones */
  .section-heading,.center-heading,.cold-copy,.real-fleet-heading,.facilities-heading,
  .faq-intro,.location-copy,.quote-copy,.coverage-content{text-align:center}
  .section-heading{display:block;margin-bottom:34px}
  .section-heading>p{margin:15px auto 0;max-width:34rem}
  .center-heading{margin-bottom:38px}
  .center-heading .kicker,.section-heading .kicker,.cold-copy .kicker,
  .real-fleet-heading .kicker,.facilities-heading .kicker,.faq-intro .kicker,
  .location-copy .kicker,.quote-copy .kicker,.coverage-content .kicker{justify-content:center}
  .section-heading h2,.center-heading h2,.cold-copy h2,.real-fleet-heading h3,
  .facilities-heading h3,.faq-intro h2,.location-copy h2,.quote-copy h2,.coverage h2{
    text-align:center;
    overflow-wrap:normal;
    word-break:normal;
    hyphens:none;
  }
  .services .center-heading h2 span{display:block}
  .services .center-heading h2 span+span{margin-top:.12em}

  /* Tarjetas táctiles con respuesta al desplazarse y al pulsar */
  .service-card,.industry,.vehicle,.compliance-card{transform-origin:center}
  .service-card.reveal.visible,.industry.reveal.visible,.vehicle.reveal.visible,
  .compliance-card.reveal.visible{
    animation:mobile-card-in .72s cubic-bezier(.2,.8,.2,1) both;
  }
  .service-card:active,.industry:active,.vehicle:active,.compliance-card:active{transform:scale(.975)}
  .service-card{min-height:0;padding:29px 24px}
  .service-icon{margin-bottom:20px}

  /* Cadena de frío */
  .cold-copy>p{margin-inline:auto}
  .cold-copy .button{width:100%;margin-top:13px}
  .cold-points article{grid-template-columns:1fr;gap:8px;padding:24px 8px;text-align:center}
  .cold-points strong{margin:auto;line-height:1}
  .cold-points h3,.cold-points p{text-align:center;margin-inline:auto}

  /* Flota, equipamiento e instalaciones */
  .fleet-types,.real-gallery,.facilities-grid{grid-template-columns:1fr!important}
  .vehicle>div{text-align:center}
  .equipment>div{text-align:center}
  .real-fleet-heading{margin-top:62px}
  .real-gallery{gap:18px}
  .real-photo,.real-photo-wide{grid-column:auto!important;min-height:285px}
  .real-photo figcaption,.real-photo.caption-right figcaption{
    left:16px;right:16px;width:auto;max-width:none;text-align:center
  }

  /* Sectores y proceso */
  .industry-grid{grid-template-columns:1fr}
  .industry{padding:29px 24px}
  .steps{gap:28px}
  .steps li{display:block;padding:0;text-align:center}
  .steps span{margin:0 auto 14px}
  .steps li>div{text-align:center;min-height:0;padding:23px 20px}
  .process-cta{width:100%}

  /* Cobertura: fotografía superior y texto en bloque oscuro */
  .coverage{display:block;min-height:0;background:#071b2b;color:#fff}
  .coverage>img{position:relative;inset:auto;width:100%;height:auto;aspect-ratio:1.5/1;object-fit:cover;object-position:72% center}
  .coverage-shade{display:none}
  .coverage-content{position:relative;max-width:none;margin:0!important;padding:42px 16px 50px}
  .coverage h2{font-size:2.35rem;line-height:1.05;margin-top:13px}
  .coverage p{margin-inline:auto}
  .coverage .cities{justify-content:center}
  .coverage .button{width:100%}

  /* Preguntas, ubicación, cotización y pie */
  .faq-layout{gap:38px}
  .faq-intro .button{width:100%;margin-top:10px}
  .location-copy{padding:25px 20px}
  .location-actions{align-items:stretch!important;justify-content:center;gap:15px}
  .location-actions .button{width:100%}
  .quote-copy>p{margin-inline:auto}
  .contact-list{text-align:center;margin-top:30px}
  .quote-form{text-align:left}
  .footer,.footer-top,.footer-bottom{text-align:center}
  .footer-top{justify-items:center}
  .footer-brand p{margin:18px auto 0}
  .footer .brand{justify-content:center}
  .footer-top>div:not(.footer-brand){align-items:center}
  .footer-bottom{align-items:center}
  .neox-credit{margin-left:0;width:auto}
}

@keyframes mobile-card-in{
  0%{opacity:0;transform:translateY(24px) scale(.94)}
  68%{opacity:1;transform:translateY(-3px) scale(1.018)}
  100%{opacity:1;transform:none}
}

@media(max-width:380px){
  .hero-integrated h1{font-size:2.35rem}
  .section-heading h2,.center-heading h2,.cold-copy h2,.faq-intro h2,
  .location-copy h2,.quote-copy h2,.coverage h2{font-size:2.05rem}
}

@media(prefers-reduced-motion:reduce){
  .service-card.reveal.visible,.industry.reveal.visible,.vehicle.reveal.visible,
  .compliance-card.reveal.visible{animation:none}
}
