/* ==========================================================
   HERO
========================================================== */

#hero{
    position: relative;
    width: 100%;
}

.hero-slider{
    position: relative;
    width: 100%;
    height: 92vh;
    min-height: 760px;
    max-height: 920px;
    overflow: hidden;
}

/* ==========================================================
   TRACK
========================================================== */

.hero-track{
    position: relative;
    width: 100%;
    height: 100%;
}

/* ==========================================================
   SLIDES
========================================================== */

.hero-slide{
    position: absolute;
    inset: 0;
    opacity: 0;
    visibility: hidden;
    transition: opacity .8s ease, visibility .8s ease;
}

.hero-slide.active{
    opacity: 1;
    visibility: visible;
    z-index: 2;
}

.hero-slide img{
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    object-position: center center;
    user-select: none;
    pointer-events: none;
}

/* ==========================================================
   OVERLAY
========================================================== */

.hero-slide::before{
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(
        to bottom,
        rgba(0,0,0,.08),
        rgba(0,0,0,.12),
        rgba(0,0,0,.25)
    );
    z-index: 1;
}

/* ==========================================================
   CONTENT
========================================================== */

.hero-content{
    position: absolute;
    left: 8%;
    bottom: 16%;
    z-index: 10;
    max-width: 650px;
    color: #fff;
}

.hero-content h1{
    font-family: var(--font-heading);
    font-size: clamp(3.5rem, 6vw, 5.8rem);
    line-height: .9;
    font-weight: 400;
    color: #fff;
    margin-bottom: .35rem;
}

.hero-content p{
    font-family: var(--font-heading);
    font-size: clamp(1.6rem, 2vw, 2.4rem);
    color: var(--color-primary);
    line-height: 1;
}

/* ==========================================================
   BUTTONS
========================================================== */

.hero-btn{
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 58px;
    height: 58px;
    border: 1px solid rgba(255,255,255,.08);
    border-radius: 50%;
    background: rgba(0,0,0,.22);
    backdrop-filter: blur(4px);
    color: #fff;
    display: flex;
    justify-content: center;
    align-items: center;
    cursor: pointer;
    z-index: 20;
    transition: .25s ease;
}

.hero-btn:hover{
    background: rgba(0,0,0,.45);
    transform: translateY(-50%) scale(1.05);
}

.hero-btn i{
    font-size: 1rem;
}

.prev{
    left: 40px;
}

.next{
    right: 40px;
}

/* ==========================================================
   RESPONSIVE
========================================================== */

@media (max-width: 1200px){

    .hero-content{
        left: 7%;
    }

}

@media (max-width: 992px){

    .hero-slider{
        height: 80vh;
        min-height: 650px;
    }

    .hero-content{
        left: 6%;
        bottom: 13%;
        max-width: 500px;
    }

    .hero-btn{
        width: 52px;
        height: 52px;
    }

    .prev{
        left: 25px;
    }

    .next{
        right: 25px;
    }

}

@media (max-width: 768px){

    .hero-slider{
        height: 75vh;
        min-height: 560px;
    }

    .hero-content{
        left: 6%;
        right: 6%;
        bottom: 12%;
        max-width: 100%;
    }

    .hero-content h1{
        font-size: clamp(2.5rem, 8vw, 4rem);
    }

    .hero-content p{
        font-size: 1.5rem;
    }

    .hero-btn{
        width: 46px;
        height: 46px;
    }

    .hero-btn i{
        font-size: .9rem;
    }

    .prev{
        left: 15px;
    }

    .next{
        right: 15px;
    }

}

@media (max-width: 480px){

    .hero-slider{
        min-height: 500px;
    }

    .hero-content{
        bottom: 10%;
    }

}