/* HESAGRO — premium scroll reveal animations */

:root {
    --sr-ease: cubic-bezier(0.16, 1, 0.3, 1);
    --sr-ease-out: cubic-bezier(0.22, 1, 0.36, 1);
    --sr-duration: 0.95s;
}

/* Scroll progress bar */
.sr-progress {
    position: fixed;
    top: 0;
    left: 0;
    height: 3px;
    width: 0%;
    z-index: 9999;
    background: linear-gradient(90deg, #183319, #875216, #aecfaa);
    box-shadow: 0 0 12px rgba(46, 74, 46, 0.35);
    pointer-events: none;
    transition: width 0.08s linear;
}

/* Nav entrance + scroll state */
nav.sr-nav {
    transition: box-shadow 0.4s var(--sr-ease), background-color 0.4s var(--sr-ease), backdrop-filter 0.4s var(--sr-ease);
}

nav.sr-nav.sr-nav-scrolled {
    box-shadow: 0 8px 32px rgba(46, 74, 46, 0.12);
    backdrop-filter: blur(12px);
    background-color: rgba(255, 255, 255, 0.92) !important;
}

@media (prefers-reduced-motion: reduce) {
    .sr-progress,
    [data-sr],
    .sr-hero-img {
        animation: none !important;
        transition: none !important;
        opacity: 1 !important;
        transform: none !important;
        filter: none !important;
    }
}

@media (prefers-reduced-motion: no-preference) {
    [data-sr] {
        opacity: 0;
        will-change: transform, opacity, filter;
        transition:
            opacity var(--sr-duration) var(--sr-ease),
            transform var(--sr-duration) var(--sr-ease),
            filter var(--sr-duration) var(--sr-ease);
        transition-delay: var(--sr-delay, 0ms);
    }

    [data-sr="fade-up"] {
        transform: translateY(48px);
        filter: blur(6px);
    }

    [data-sr="fade-down"] {
        transform: translateY(-32px);
        filter: blur(4px);
    }

    [data-sr="fade-left"] {
        transform: translateX(-40px);
        filter: blur(4px);
    }

    [data-sr="fade-right"] {
        transform: translateX(40px);
        filter: blur(4px);
    }

    [data-sr="scale-up"] {
        transform: translateY(36px) scale(0.94);
        filter: blur(5px);
    }

    [data-sr="fade"] {
        transform: none;
        filter: blur(8px);
    }

    [data-sr].sr-visible {
        opacity: 1;
        transform: translate(0) scale(1);
        filter: blur(0);
    }

    /* Hero image subtle float after reveal */
    .sr-hero-img.sr-visible {
        animation: srHeroFloat 6s ease-in-out 1.2s infinite alternate;
    }

    @keyframes srHeroFloat {
        from { transform: translateY(0) scale(1); }
        to   { transform: translateY(-8px) scale(1.01); }
    }

    /* Card hover lift enhancement when visible */
    [data-sr].sr-visible.group:hover,
    [data-sr].sr-visible.cursor-pointer:hover {
        transform: translateY(-4px) scale(1.01);
        transition: transform 0.35s var(--sr-ease-out), box-shadow 0.35s var(--sr-ease-out);
    }
}
