.slider{
position:absolute;
top:0;
left:0;
width:100%;
height:100%;
overflow:hidden;
}

.slide{
position:absolute;
width:100%;
height:100%;
background-size:cover;
background-position:center;
opacity:0;
transition:opacity 1.5s ease-in-out;
}

.slide.active{
opacity:1;
}

.slide img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    animation: heroZoom 12s ease-in-out infinite alternate;
}

.event-logo{
max-width:45%;
max-height:45vh;
filter:drop-shadow(0 0 40px rgba(0,0,0,0.9));
transition:filter 0.5s ease;
}

.event-block:hover .event-logo{
filter:drop-shadow(0 0 60px rgba(0,255,102,0.2));
}

.flash{
position:fixed;
top:0;
left:0;
width:100%;
height:100%;
background:white;
opacity:0;
pointer-events:none;
z-index:50;
}

.flash.active{
animation:flashAnim 0.25s;
}

@keyframes flashAnim{
0%{opacity:0;}
10%{opacity:1;}
100%{opacity:0;}
}

.film-grain{
position:fixed;
top:0;
left:0;
width:100%;
height:100%;
pointer-events:none;
z-index:100;
opacity:0.15;
background-image:url("https://grainy-gradients.vercel.app/noise.svg");
mix-blend-mode:overlay;
}

@keyframes heroZoom {
    from {
        transform: scale(1);
    }

    to {
        transform: scale(1.08);
    }
}

.hero::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(to bottom,
            rgba(0, 0, 0, 0.85) 0%,
            rgba(0, 0, 0, 0.5) 40%,
            rgba(0, 80, 40, 0.35) 100%);
    pointer-events: none;
}

.hero-content {
    position: relative;
    z-index: 5;
    max-width: 1200px;
    margin: 0 auto;
    padding: 120px 40px 40px;
}



.noise{
position:fixed;
top:0;
left:0;
width:200%;
height:200%;
background:url("../Assets/Images/noise.jpg");
opacity:0.06;
pointer-events:none;
animation:noiseMove 1s steps(2) infinite;
z-index:9000;
}