/* ===================================
   CATEGORY CAROUSEL
===================================*/

.categories-section{
    width:100%;
    padding:45px 0;
    background:#fff;
}

.categories-slider{
    display:flex;
    gap:20px;
    overflow-x:auto;
    overflow-y:hidden;
    scroll-behavior:smooth;
    scrollbar-width:none;
    -ms-overflow-style:none;
    padding:0 40px;
}

.categories-slider::-webkit-scrollbar{
    display:none;
}

/* Card */

.category-card{
    flex:0 0 240px;
    text-decoration:none;
    color:#111;
    transition:.3s;
}

.category-card:hover{
    transform:translateY(-4px);
}

/* Image */

.image{
    width:240px;
    height:160px;
    border-radius:12px;
    overflow:hidden;
    background:#eee;
}

.image img{
    width:100%;
    height:100%;
    object-fit:cover;
    transition:.4s ease;
}

.category-card:hover img{
    transform:scale(1.05);
}

/* Title */

.category-card h3{

    margin-top:12px;

    font-family:'League Spartan',sans-serif;

    font-size:16px;      /* Smaller */
    font-weight:500;
    line-height:1.25;
    color:#1b1b1b;

    text-align:center;

    display:-webkit-box;
    -webkit-box-orient:vertical;
    -webkit-line-clamp:2;

    overflow:hidden;

    min-height:40px;

    padding:0 8px;

}

/* Desktop */

@media (min-width:992px){

    .category-card{
        flex:0 0 240px;
    }

    .image{
        width:240px;
        height:160px;
    }

}

/* Tablet */

@media (max-width:991px){

    .categories-slider{
        padding:0 24px;
        gap:18px;
    }

    .category-card{
        flex:0 0 210px;
    }

    .image{
        width:210px;
        height:140px;
    }

    .category-card h3{
        font-size:15px;
    }

}

/* Mobile */

@media (max-width:768px){

    .categories-section{
        padding:30px 0;
    }

    .categories-slider{
        padding:0 16px;
        gap:14px;
    }

    .category-card{
        flex:0 0 180px;
    }

    .image{
        width:180px;
        height:120px;
    }

    .category-card h3{
        font-size:14px;
        min-height:36px;
    }

}