/* Motion enhancements — отключить флаги в __SITE_ENHANCEMENTS__ */

/* Hero: только лёгкий zoom на десктопе — на мобиле чистый dissolve */
@media (min-width: 769px) {
    html.hero-motion-enhanced .hero-slider > .slider-container > .slide:not(.active):not(.is-leaving) {
        transform: scale(1.018);
        transition:
            opacity var(--hero-slide-fade, 2.2s) var(--hero-slide-ease, cubic-bezier(0.16, 1, 0.32, 1)),
            transform var(--hero-slide-fade, 2.2s) var(--hero-slide-ease, cubic-bezier(0.16, 1, 0.32, 1)),
            visibility 0s linear var(--hero-slide-fade, 2.2s);
    }

    html.hero-motion-enhanced .hero-slider > .slider-container > .slide.active {
        transform: scale(1);
        transition:
            opacity var(--hero-slide-fade, 2.2s) var(--hero-slide-ease, cubic-bezier(0.16, 1, 0.32, 1)),
            transform var(--hero-slide-fade, 2.2s) var(--hero-slide-ease, cubic-bezier(0.16, 1, 0.32, 1)),
            visibility 0s linear 0s;
    }

    html.hero-motion-enhanced .hero-slider > .slider-container > .slide.is-leaving {
        transform: scale(1.008);
        transition: none;
    }

    html.hero-motion-enhanced .hero-slider > .slider-container > .slide.is-leaving.is-leaving-out {
        transform: scale(1.012);
        transition:
            opacity var(--hero-slide-fade, 2.2s) var(--hero-slide-ease, cubic-bezier(0.16, 1, 0.32, 1)),
            transform var(--hero-slide-fade, 2.2s) var(--hero-slide-ease, cubic-bezier(0.16, 1, 0.32, 1)),
            visibility 0s linear var(--hero-slide-fade, 2.2s);
    }
}

/* ===== Hero: винный wipe — только десктоп; на мобиле без вспышки ===== */
.hero-wine-wipe,
.hero-golden-wipe {
    position: absolute;
    inset: 0;
    z-index: 8;
    pointer-events: none;
    overflow: hidden;
}

@media (max-width: 768px) {
    .hero-wine-wipe,
    .hero-golden-wipe {
        display: none !important;
    }
}

.hero-wine-wipe::before,
.hero-golden-wipe::before {
    content: '';
    position: absolute;
    top: -8%;
    bottom: -8%;
    left: 50%;
    width: min(52vw, 560px);
    margin-left: calc(min(52vw, 560px) / -2);
    /* Тон hero-полей #140a0d — мягкий «дых», без яркого вина */
    background: linear-gradient(
        90deg,
        transparent 0%,
        rgba(20, 10, 13, 0) 8%,
        rgba(20, 10, 13, 0.22) 22%,
        rgba(26, 13, 16, 0.38) 38%,
        rgba(32, 16, 20, 0.44) 50%,
        rgba(26, 13, 16, 0.38) 62%,
        rgba(20, 10, 13, 0.22) 78%,
        rgba(20, 10, 13, 0) 92%,
        transparent 100%
    );
    box-shadow:
        0 0 48px rgba(20, 10, 13, 0.28),
        0 0 96px rgba(20, 10, 13, 0.12);
    transform: scaleX(0);
    transform-origin: center center;
    opacity: 0;
    will-change: transform, opacity;
}

.hero-wine-wipe.is-playing::before,
.hero-golden-wipe.is-playing::before {
    animation: hero-wine-wipe-sweep 0.72s cubic-bezier(0.22, 1, 0.36, 1) forwards;
}

@keyframes hero-wine-wipe-sweep {
    0% {
        transform: scaleX(0.04);
        opacity: 0;
    }
    42% {
        opacity: 0.32;
    }
    100% {
        transform: scaleX(1.1);
        opacity: 0;
    }
}

/* ===== Stagger карточек ===== */
.reveal-on-scroll.reveal-stagger-0 { transition-delay: 0ms; }
.reveal-on-scroll.reveal-stagger-1 { transition-delay: 65ms; }
.reveal-on-scroll.reveal-stagger-2 { transition-delay: 130ms; }
.reveal-on-scroll.reveal-stagger-3 { transition-delay: 195ms; }
.reveal-on-scroll.reveal-stagger-4 { transition-delay: 260ms; }
.reveal-on-scroll.reveal-stagger-5 { transition-delay: 325ms; }
.reveal-on-scroll.reveal-stagger-6 { transition-delay: 390ms; }
.reveal-on-scroll.reveal-stagger-7 { transition-delay: 455ms; }
.reveal-on-scroll.reveal-stagger-8 { transition-delay: 520ms; }

@media (max-width: 768px) {
    .reveal-on-scroll {
        filter: none;
        transform: translateY(18px);
    }

    .reveal-on-scroll.reveal-stagger-1 { transition-delay: 50ms; }
    .reveal-on-scroll.reveal-stagger-2 { transition-delay: 100ms; }
    .reveal-on-scroll.reveal-stagger-3 { transition-delay: 150ms; }
    .reveal-on-scroll.reveal-stagger-4 { transition-delay: 200ms; }
    .reveal-on-scroll.reveal-stagger-5 { transition-delay: 250ms; }
    .reveal-on-scroll.reveal-stagger-6 { transition-delay: 300ms; }
    .reveal-on-scroll.reveal-stagger-7 { transition-delay: 350ms; }
    .reveal-on-scroll.reveal-stagger-8 { transition-delay: 400ms; }
}

@media (prefers-reduced-motion: reduce) {
    html.hero-motion-enhanced .hero-slider > .slider-container > .slide,
    html.hero-motion-enhanced .hero-slider > .slider-container > .slide.active,
    html.hero-motion-enhanced .hero-slider > .slider-container > .slide.is-leaving {
        transform: none !important;
        transition: none !important;
    }

    .hero-wine-wipe,
    .hero-golden-wipe,
    .hero-wine-wipe.is-playing::before,
    .hero-golden-wipe.is-playing::before {
        animation: none !important;
        opacity: 0 !important;
    }

    .reveal-on-scroll.reveal-stagger-0,
    .reveal-on-scroll.reveal-stagger-1,
    .reveal-on-scroll.reveal-stagger-2,
    .reveal-on-scroll.reveal-stagger-3,
    .reveal-on-scroll.reveal-stagger-4,
    .reveal-on-scroll.reveal-stagger-5,
    .reveal-on-scroll.reveal-stagger-6,
    .reveal-on-scroll.reveal-stagger-7,
    .reveal-on-scroll.reveal-stagger-8 {
        transition-delay: 0ms !important;
    }
}
