/*==================================================
  ALHOMIS Homepage Project Carousel
==================================================*/

.home-project-slider{
    position:relative;
    width:100%;
}

.home-project-slider-viewport{
    overflow:hidden;
}

.home-project-slider-track{
    display:flex !important;
    grid-template-columns:none !important;
    grid-template-rows:none !important;
    gap:18px;
    overflow-x:auto;
    padding:2px 2px 18px;
    scroll-behavior:smooth;
    scroll-snap-type:x mandatory;
    scrollbar-width:none;
    overscroll-behavior-x:contain;
    -webkit-overflow-scrolling:touch;
}

.home-project-slider-track::-webkit-scrollbar{
    display:none;
}

.home-project-slide{
    position:relative;
    flex:0 0 calc((100% - 36px) / 3);
    min-width:0;
    height:480px;
    display:block;
    overflow:hidden;
    border-radius:4px;
    background:#041f13;
    color:#ffffff;
    scroll-snap-align:start;
    box-shadow:0 22px 55px rgba(4,31,19,.14);
}

.home-project-slide-image{
    position:absolute;
    inset:0;
}

.home-project-slide-image img{
    width:100%;
    height:100%;
    display:block;
    object-fit:cover;
    transition:transform .7s ease;
}

.home-project-slide:hover
.home-project-slide-image img{
    transform:scale(1.055);
}

.home-project-slide-shade{
    position:absolute;
    inset:0;
    background:
        linear-gradient(
            to top,
            rgba(3,25,14,.97),
            rgba(3,25,14,.06) 70%
        );
}

.home-project-stage{
    position:absolute;
    z-index:2;
    top:20px;
    left:20px;
    max-width:calc(100% - 40px);
    padding:8px 13px;
    border:1px solid rgba(255,255,255,.22);
    border-radius:999px;
    background:rgba(4,31,19,.8);
    color:#efd98c;
    font-size:.61rem;
    font-weight:800;
    letter-spacing:1.1px;
    text-transform:uppercase;
    backdrop-filter:blur(10px);
}

.home-project-slide-content{
    position:absolute;
    z-index:2;
    left:25px;
    right:25px;
    bottom:25px;
}

.home-project-category{
    display:block;
    color:#efd98c;
    font-size:.61rem;
    font-weight:800;
    letter-spacing:1.5px;
    text-transform:uppercase;
}

.home-project-slide-content h3{
    margin:7px 0 0;
    color:#ffffff;
    font-family:
        "Cormorant Garamond",
        Georgia,
        serif;
    font-size:2.25rem;
    font-weight:600;
    line-height:1;
}

.home-project-location{
    margin-top:10px;
    color:rgba(255,255,255,.72);
    font-size:.72rem;
}

.home-project-view-link{
    display:inline-flex;
    align-items:center;
    gap:10px;
    margin-top:18px;
    padding-bottom:4px;
    border-bottom:1px solid rgba(255,255,255,.55);
    color:#ffffff;
    font-size:.69rem;
    font-weight:800;
}

.home-project-view-link span{
    transition:transform .25s ease;
}

.home-project-slide:hover
.home-project-view-link span{
    transform:translateX(5px);
}

.home-project-slider-controls{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:20px;
    margin-top:18px;
}

.home-project-slider-arrows{
    display:flex;
    align-items:center;
    gap:9px;
}

.home-project-slider-button{
    width:46px;
    height:46px;
    display:flex;
    align-items:center;
    justify-content:center;
    border:1px solid rgba(4,31,19,.18);
    border-radius:50%;
    background:#ffffff;
    color:#041f13;
    font-size:1.15rem;
    transition:.25s ease;
}

.home-project-slider-button:hover{
    border-color:#d7b24a;
    background:#d7b24a;
    transform:translateY(-2px);
}

.home-project-slider-dots{
    display:flex;
    align-items:center;
    justify-content:flex-end;
    flex-wrap:wrap;
    gap:8px;
}

.home-project-slider-dot{
    width:9px;
    height:9px;
    padding:0;
    border-radius:50%;
    background:rgba(4,31,19,.2);
    transition:.25s ease;
}

.home-project-slider-dot.active{
    width:27px;
    border-radius:999px;
    background:#d7b24a;
}

@media(max-width:980px){

    .home-project-slide{
        flex-basis:calc((100% - 18px) / 2);
        height:450px;
    }

}

@media(max-width:680px){

    .home-project-slider-viewport{
        overflow:visible;
    }

    .home-project-slider-track{
        margin-right:-5%;
        padding-right:12%;
    }

    .home-project-slide{
        flex-basis:88%;
        height:420px;
    }

    .home-project-slide-content h3{
        font-size:2rem;
    }

    .home-project-slider-controls{
        align-items:flex-start;
        flex-direction:column;
    }

    .home-project-slider-dots{
        justify-content:flex-start;
    }

}

@media(prefers-reduced-motion:reduce){

    .home-project-slider-track{
        scroll-behavior:auto;
    }

    .home-project-slide-image img{
        transition:none;
    }

}
