/* Performance Optimizations - Оптимизации производительности */

/* Оптимизация рендеринга */
* {
    /* Включаем аппаратное ускорение для анимаций */
    transform: translateZ(0);
    backface-visibility: hidden;
    perspective: 1000px;
}

/* Оптимизация изображений */
img {
    /* Предотвращаем layout shift */
    max-width: 100%;
    height: auto;
    display: block;
}

/* Оптимизация анимаций */
.animate-on-scroll {
    /* Используем will-change для оптимизации анимаций */
    will-change: transform, opacity;
}

/* Оптимизация видео */
video {
    /* Предотвращаем layout shift */
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* Оптимизация шрифтов */
@font-face {
    font-family: 'Montserrat';
    font-display: swap;
    /* Показываем fallback шрифт пока загружается основной */
    src: url('https://fonts.googleapis.com/css2?family=Montserrat:wght@400;500;600;700;800&display=swap');
}

/* Оптимизация для мобильных устройств */
@media (max-width: 768px) {

    /* Уменьшаем сложность анимаций на мобильных */
    .animate-on-scroll {
        will-change: auto;
    }

    /* Отключаем некоторые эффекты на медленных устройствах */
    @media (prefers-reduced-motion: reduce) {
        * {
            animation-duration: 0.01ms !important;
            animation-iteration-count: 1 !important;
            transition-duration: 0.01ms !important;
        }
    }
}

/* Оптимизация для медленных соединений */
@media (prefers-reduced-data: reduce) {

    /* Скрываем неважные элементы */
    .non-critical {
        display: none;
    }

    /* Упрощаем анимации */
    .animate-on-scroll {
        animation: none;
        transform: none;
    }
}

/* Оптимизация для печати */
@media print {

    .loading-overlay,
    .hero-video,
    .particles-bg {
        display: none !important;
    }

    .hero-fallback {
        display: block !important;
        background: none !important;
    }
}