/* ========================================
   PERFORMANCE OPTIMIZATIONS FOR MOBILE
   Smooth scrolling on Android & iOS
   ======================================== */

/* Reduce motion for users who prefer it */
@media (prefers-reduced-motion: reduce) {

    *,
    *::before,
    *::after {
        animation-duration: 0.01ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: 0.01ms !important;
        scroll-behavior: auto !important;
    }

    .product-card {
        opacity: 1 !important;
        animation: none !important;
    }

    .logo-image {
        animation: none !important;
    }
}

/* Mobile-specific optimizations */
@media (max-width: 768px) {

    /* Disable complex animations on mobile */
    .product-card::before {
        animation: none;
    }

    .logo-image {
        animation: none;
    }

    /* Simplify product card entrance */
    .product-card {
        animation: fadeIn 0.3s ease-out forwards !important;
    }

    /* Reduce hover effects */
    .product-card:hover {
        transform: none;
    }

    .product-card:hover .product-image {
        transform: none;
    }

    /* Disable button ripple on mobile */
    .btn::before {
        display: none;
    }

    /* Optimize hero animations */
    .hero::before {
        animation: none;
    }

    /* Simpler transitions */
    * {
        transition-duration: 0.15s !important;
    }
}

/* Smooth scrolling optimization */
html {
    -webkit-overflow-scrolling: touch;
    scroll-behavior: smooth;
}

body {
    /* Prevents rubber-band scrolling on iOS */
    overscroll-behavior-y: none;
    /* Hardware acceleration */
    transform: translateZ(0);
    -webkit-transform: translateZ(0);
}

/* GPU acceleration for animated elements */
.hero,
.product-card,
.btn,
.nav-link {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
}

/* Optimize images for mobile */
img {
    /* Prevent image dragging on mobile */
    -webkit-user-drag: none;
    -khtml-user-drag: none;
    -moz-user-drag: none;
    -o-user-drag: none;
    user-drag: none;
    /* Optimize rendering */
    image-rendering: -webkit-optimize-contrast;
    image-rendering: crisp-edges;
}

/* Prevent layout shifts */
.product-image {
    contain: layout style paint;
}

/* Optimize filter performance */
@supports (backdrop-filter: blur(10px)) {

    .product-card,
    .product-info {
        /* Backdrop filter already applied in desktop media query */
    }
}

/* iOS Safari specific fixes */
@supports (-webkit-touch-callout: none) {
    body {
        /* Prevent bounce scrolling */
        position: fixed;
        overflow: hidden;
        width: 100%;
        height: 100%;
    }

    .container {
        overflow-y: auto;
        -webkit-overflow-scrolling: touch;
        height: 100vh;
    }
}

/* Touch optimization */
@media (hover: none) and (pointer: coarse) {

    /* Touch device optimizations */
    .product-card:hover {
        transform: none;
        box-shadow: 0 8px 32px 0 rgba(31, 38, 135, 0.15);
    }

    .product-card:active {
        transform: scale(0.98) translateZ(0);
    }

    .btn:hover {
        transform: none;
    }

    .btn:active {
        transform: scale(0.95);
    }
}

/* Optimize scroll performance */
.products-grid,
.footer,
.hero {
    will-change: auto;
}

/* Prevent paint on scroll */
.header {
    will-change: transform;
    backface-visibility: hidden;
    -webkit-backface-visibility: hidden;
}