/* Hero Video Mobile Optimizations */
/* Optimizaciones específicas para video en dispositivos móviles */

/* Optimizaciones generales para video */
.hero-background-video video {
    /* Asegurar que el video se ajuste correctamente en todos los dispositivos */
    object-fit: cover;
    object-position: center center;
    
    /* Mejorar rendimiento */
    will-change: transform;
    backface-visibility: hidden;
    transform: translateZ(0);
    
    /* Optimizaciones para dispositivos táctiles */
    touch-action: manipulation;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    user-select: none;
}

/* Optimizaciones para dispositivos con pantallas pequeñas */
@media (max-width: 480px) {
	.hero-background-video video {
		/* Ajustar posición para pantallas pequeñas */
		object-position: center center;
		
		/* Mejorar contraste en móviles */
		filter: brightness(1.05) contrast(1.05);
	}
	
	.hero-background-video::before {
		/* Overlay más oscuro en móviles para mejor legibilidad */
		background: rgba(0, 0, 0, 0.6);
	}
	
	/* Mantener altura original en móviles */
	.hero,
	.hero-content,
	.hero-background-video,
	.hero-background-video::before,
	.hero-background-image {
		height: 100vh !important;
	}
}

/* Optimizaciones para dispositivos con pantallas muy pequeñas */
@media (max-width: 360px) {
	.hero-background-video video {
		object-position: center center;
	}
	
	.hero-background-video::before {
		background: rgba(0, 0, 0, 0.7);
	}
	
	/* Mantener altura original en móviles pequeños */
	.hero,
	.hero-content,
	.hero-background-video,
	.hero-background-video::before,
	.hero-background-image {
		height: 100vh !important;
	}
}

/* Optimizaciones para orientación horizontal en móviles */
@media (max-width: 768px) and (orientation: landscape) {
	.hero-background-video video {
		object-position: center center;
	}
	
	.hero-background-video::before {
		background: rgba(0, 0, 0, 0.5);
	}
	
	/* Mantener altura original en landscape móvil */
	.hero,
	.hero-content,
	.hero-background-video,
	.hero-background-video::before,
	.hero-background-image {
		height: 100vh !important;
	}
}

/* Optimizaciones específicas para iOS */
@supports (-webkit-touch-callout: none) {
    .hero-background-video video {
        /* Mejorar rendimiento en iOS */
        -webkit-transform: translateZ(0);
        transform: translateZ(0);
        
        /* Optimizar para pantallas Retina */
        image-rendering: -webkit-optimize-contrast;
    }
    
    .hero {
        /* Mejorar scrolling en iOS */
        -webkit-overflow-scrolling: touch;
    }
}

/* Optimizaciones específicas para Android */
@media screen and (-webkit-min-device-pixel-ratio: 1) {
    .hero-background-video video {
        /* Mejorar rendimiento en Android */
        transform: translateZ(0);
        
        /* Optimizar para pantallas de alta densidad */
        image-rendering: optimizeQuality;
    }
}

/* Optimizaciones para dispositivos con poca memoria */
@media (max-width: 768px) {
    .hero-background-video {
        /* Reducir uso de memoria */
        backface-visibility: hidden;
        perspective: 1000px;
        transform: translateZ(0);
    }
    
    .hero-background-video video {
        /* Reducir calidad en dispositivos con poca memoria */
        filter: brightness(1.05) contrast(1.05);
        
        /* Optimizar para dispositivos con poca memoria */
        backface-visibility: hidden;
        transform: translateZ(0);
    }
}

/* Optimizaciones para dispositivos con conexión lenta */
@media (max-width: 768px) {
    .hero-background-video video {
        /* Mostrar poster mientras se carga el video */
        background-image: url('assets/nosotros1.png');
        background-size: cover;
        background-position: center center;
    }
}

/* Optimizaciones para dispositivos con pantallas de alta densidad */
@media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
    .hero-background-video video {
        /* Mejorar calidad en pantallas de alta densidad */
        image-rendering: -webkit-optimize-contrast;
        image-rendering: crisp-edges;
    }
}

/* Optimizaciones para dispositivos con pantallas muy grandes */
@media (min-width: 1600px) {
    .hero-background-video video {
        /* Mantener calidad en pantallas grandes */
        object-position: center center;
    }
}

/* Optimizaciones para dispositivos con pantallas ultra-wide */
@media (min-width: 2000px) {
    .hero-background-video video {
        /* Ajustar para pantallas ultra-wide */
        object-position: center center;
    }
}

/* Optimizaciones para dispositivos con pantallas de relación de aspecto inusual */
@media (max-aspect-ratio: 1/1) {
    .hero-background-video video {
        /* Ajustar para pantallas verticales */
        object-position: center 40%;
    }
}

@media (min-aspect-ratio: 21/9) {
    .hero-background-video video {
        /* Ajustar para pantallas ultra-wide */
        object-position: center center;
    }
}

/* Optimizaciones para dispositivos con pantallas táctiles */
@media (hover: none) and (pointer: coarse) {
    .hero-background-video video {
        /* Mejorar experiencia táctil */
        touch-action: manipulation;
    }
}

/* Optimizaciones para dispositivos con pantallas no táctiles */
@media (hover: hover) and (pointer: fine) {
    .hero-background-video video {
        /* Optimizar para dispositivos con mouse */
        cursor: default;
    }
}

/* Optimizaciones para dispositivos con pantallas de baja resolución */
@media (max-resolution: 96dpi) {
    .hero-background-video video {
        /* Mejorar calidad en pantallas de baja resolución */
        image-rendering: pixelated;
    }
}

/* Optimizaciones para dispositivos con pantallas de alta resolución */
@media (min-resolution: 300dpi) {
    .hero-background-video video {
        /* Mantener calidad en pantallas de muy alta resolución */
        image-rendering: -webkit-optimize-contrast;
        image-rendering: crisp-edges;
    }
}

/* Optimizaciones para dispositivos con pantallas de colores limitados */
@media (color-gamut: srgb) {
    .hero-background-video video {
        /* Ajustar para pantallas con gama de colores limitada */
        filter: saturate(1.1);
    }
}

/* Optimizaciones para dispositivos con pantallas de colores amplios */
@media (color-gamut: p3) {
    .hero-background-video video {
        /* Mantener colores vibrantes en pantallas con gama amplia */
        filter: none;
    }
}

/* Optimizaciones para dispositivos con modo oscuro */
@media (prefers-color-scheme: dark) {
    .hero-background-video::before {
        /* Ajustar overlay para modo oscuro */
        background: rgba(0, 0, 0, 0.5);
    }
}

/* Optimizaciones para dispositivos con modo claro */
@media (prefers-color-scheme: light) {
    .hero-background-video::before {
        /* Ajustar overlay para modo claro */
        background: rgba(0, 0, 0, 0.4);
    }
}

/* Optimizaciones para dispositivos con preferencia de movimiento reducido */
@media (prefers-reduced-motion: reduce) {
    .hero-background-video video {
        /* Desactivar animaciones para usuarios que prefieren menos movimiento */
        animation: none;
    }
}

/* Optimizaciones para dispositivos con preferencia de contraste alto */
@media (prefers-contrast: high) {
    .hero-background-video::before {
        /* Aumentar contraste para mejor legibilidad */
        background: rgba(0, 0, 0, 0.7);
    }
}

/* Optimizaciones para dispositivos con preferencia de contraste bajo */
@media (prefers-contrast: low) {
    .hero-background-video::before {
        /* Reducir contraste para usuarios sensibles */
        background: rgba(0, 0, 0, 0.3);
    }
}
