#slider {
    width:100%;
    height:90vh;
    position:relative;
    overflow:hidden;
}
.slide {
    position:absolute;
    width:100%;
    height:100%;
    inset:0;
    opacity:0;
    visibility:hidden;
    transition:1.2s ease;
}
.slide.active {
    opacity:1;
    visibility:visible;
    z-index:2;
}
.slide-image {
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    overflow:hidden;
}
.slide-image img {
    width:100%;
    height:100%;
    object-fit:cover;
    transform:scale(1.15);
    transition:7s ease;
}
.slide.active .slide-image img {
    transform:scale(1);
}
.overlay {
    position:absolute;
    inset:0;
    background:linear-gradient(
        to top,
        rgba(0,0,0,.7),
        rgba(0,0,0,.25)
    );
}
.slide-content {
    position: absolute;
    z-index: 5;
    
    top: 50%;
    left: 50%;

    transform: translate(-50%, -50%);

    color: white;
    max-width: 800px;
    text-align: center;
}
.slide-subtitle,
.slide-title,
.slide-desc,
.slide-btn {
    opacity:0;
    transform:translateY(80px);
}
.slide.active .slide-subtitle {
    animation:slideUp .8s ease forwards;
}
.slide.active .slide-title {
    animation:slideUp .8s ease forwards;
    animation-delay:.2s;
}
.slide.active .slide-desc {
    animation:slideUp .8s ease forwards;
    animation-delay:.4s;
}
.slide.active .slide-btn {
    animation:slideUp .8s ease forwards;
    animation-delay:.6s;
}
@keyframes slideUp {

    to{
        opacity:1;
        transform:translateY(0);
    }

}
.slide-subtitle {
    font-size:14px;
    letter-spacing:2px;
    text-transform:uppercase;
    margin-bottom:20px;
    line-height: 1;
    color: #fff;
    padding: 10px 20px;
    background-color: transparent;
    border: 1px solid #fff;
    display: inline-block;
}

.slide-title {
    font-size:clamp(30px,4vw,50px);
    line-height:1;
    font-weight: 700;
    margin-bottom: 25px;
    font-family: 'Quicksand';
}
.slide-desc {
    font-size:18px;
    line-height:1.8;
    color:#ddd;
    margin-bottom:0;
    /*max-width:580px;*/
}
.slide-btn {
    display: none;
    margin-top: 35px;
}
.slide-btn a {
    display:inline-flex;
    align-items:center;
    gap:10px;
    padding:12px 25px;
    background:white;
    color:#111;
    text-decoration:none;
    border-radius: 60px;
    font-weight:600;
    transition:.3s;
}
.slide-btn a:hover {
    transform:translateY(-5px);
    color: #000;
}
.slider-dots {
    position:absolute;
    z-index:20;
    bottom:70px;
    left:50%;
    transform:translateX(-50%);
    display:flex;
    gap:12px;
}
.dot {
    width:10px;
    height:10px;
    border-radius:50%;
    background:rgba(255,255,255,.35);
    cursor:pointer;
    transition:.4s;
}
.dot.active {
    width:38px;
    border-radius:20px;
    background:white;
}

/* ARROW */
.slider-arrow{
    position:absolute;
    top:50%;
    transform:translateY(-50%);
    z-index:9;
    color:#fff;
    font-size:60px;
    cursor:pointer;
    padding:20px;
    user-select:none;
    pointer-events:auto;
}

.slider-arrow.prev{
    left:20px;
}

.slider-arrow.next{
    right:20px;
}

/* penting */
.overlay{
    pointer-events:none;
}

@keyframes slideUp{
    from{
        opacity:0;
        transform:translateY(40px);
    }
    to{
        opacity:1;
        transform:translateY(0);
    }
}

@media(max-width:768px) {
    .slide-content {
        width: 100%;
        padding-left: 20px;
        padding-right: 20px;
    }

    .slide-title {
        font-size: 35px;
    }

    .slide-desc {
        font-size:16px;
    }

    .slide-desc {font-size: 14px;}
    .slider-arrow {top: unset; bottom: 50px; padding: 0; font-size: 45px; line-height: 0; display: none;}
    .slider-dots {bottom: 42px;}
}