/* ============================================
   MOBILE FIXES - iOS & Android
   Optimizaciones específicas para dispositivos móviles
   ============================================ */

/* Fix para videos en iOS */
video {
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -webkit-perspective: 1000;
  perspective: 1000;
}

/* Evitar zoom al hacer focus en inputs (iOS) */
input,
textarea,
select {
  font-size: 16px !important;
}

/* Fix para smooth scroll en iOS */
body {
  -webkit-overflow-scrolling: touch;
}

/* Prevenir bouncing en iOS */
body,
html {
  overscroll-behavior-y: none;
  position: relative;
}

/* Fix para video fullscreen en iOS */
video::-webkit-media-controls {
  display: none !important;
}

video::-webkit-media-controls-enclosure {
  display: none !important;
}

/* Mejorar performance de animaciones en móvil */
* {
  -webkit-tap-highlight-color: transparent;
  -webkit-touch-callout: none;
}

/* Fix para videos en Android */
@supports (-webkit-appearance: none) {
  video {
    object-fit: cover;
    width: 100%;
    height: 100%;
  }
}

/* Optimización para iOS Safari */
@supports (-webkit-touch-callout: none) {
  .video-section video {
    position: fixed;
    right: 0;
    bottom: 0;
    min-width: 100%;
    min-height: 100%;
  }
}

/* Fix para altura en móviles (100vh bug) */
@media (max-width: 968px) {
  .hero,
  .video-section {
    min-height: 100dvh; /* Dynamic viewport height */
    min-height: -webkit-fill-available;
  }

  body {
    min-height: 100dvh;
    min-height: -webkit-fill-available;
  }
}

/* Fix para hover en touch devices */
@media (hover: none) and (pointer: coarse) {
  *:hover {
    transition-duration: 0s;
  }

  /* Desactivar animaciones hover en móvil */
  .wow-card:hover .wow-card__inner {
    transform: none;
  }

  .gallery__card:hover {
    transform: none;
  }
}

/* Prevenir scroll horizontal en móvil */
@media (max-width: 968px) {
  body {
    overflow-x: hidden;
    position: relative;
  }

  html {
    overflow-x: hidden;
  }
}

/* Fix para safe areas en iPhone X+ */
@supports (padding: max(0px)) {
  body {
    padding-left: max(0px, env(safe-area-inset-left));
    padding-right: max(0px, env(safe-area-inset-right));
  }

  .nav__content {
    padding-left: max(1rem, env(safe-area-inset-left));
    padding-right: max(1rem, env(safe-area-inset-right));
  }
}

/* Mejorar legibilidad en pantallas pequeñas */
@media (max-width: 640px) {
  .hero__title {
    font-size: clamp(3rem, 12vw, 6rem) !important;
  }

  .section-line {
    font-size: clamp(3rem, 10vw, 8rem) !important;
  }
}

/* Fix para orientación landscape en móvil */
@media (max-width: 968px) and (orientation: landscape) {
  .hero {
    min-height: 100vh;
  }

  .nav__menu {
    max-height: 90vh;
    overflow-y: auto;
  }
}

/* Optimización de carga de imágenes en móvil */
@media (max-width: 768px) {
  img[loading="lazy"] {
    content-visibility: auto;
  }
}

/* Fix para videos que no se reproducen en iOS */
.wow-card__media video,
.video-player {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* Prevenir selección de texto en elementos interactivos */
.nav__toggle,
.btn-unmute,
.platform-card,
.gallery__card {
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

/* Fix para z-index en iOS Safari */
.nav {
  -webkit-transform: translateZ(1000px);
  transform: translateZ(1000px);
}

/* Mejorar performance de scroll */
.wow-carousel,
.platforms__track {
  -webkit-overflow-scrolling: touch;
  scroll-behavior: smooth;
}

/* Fix para blur en iOS */
@supports (-webkit-backdrop-filter: none) or (backdrop-filter: none) {
  .nav {
    -webkit-backdrop-filter: blur(20px);
    backdrop-filter: blur(20px);
  }
}

/* Fallback para navegadores sin soporte de backdrop-filter */
@supports not ((-webkit-backdrop-filter: none) or (backdrop-filter: none)) {
  .nav {
    background: rgba(10, 10, 10, 0.98);
  }
}
