section.categories {
    background-color: var(--neutral100);
}

/* Category images */
.category-link {
    min-width: 152px;
    max-width: 180px;
    text-decoration: none;
}

.category-img {
    width: 160px;
    height: 160px;
    border-radius: 16px;
    object-fit: cover;
    object-position: center;
    display: block;
    margin: 0 auto;
    transition: transform 0.2s ease;
}

.category-link:hover .category-img {
    transform: translateY(-4px);
}

.category-text {
    font-size: 14px;
    font-weight: 600;
    color: var(--neutral800);
    margin-top: 8px;
}

.btn-categories {
    background-color: var(--primary200);
    width: 160px;
    height: 160px;
    border-radius: 16px;
    transition: transform 0.2s ease;
}

.btn-categories:hover {
    transform: translateY(-4px);
}

/* Mobile responsive */
@media (max-width: 768px) {
    .category-img {
        width: 140px;
        height: 140px;
        border-radius: 14px;
    }

    .btn-categories {
        width: 140px;
        height: 140px;
        border-radius: 14px;
    }

    .category-link {
        min-width: 150px;
        max-width: 170px;
    }

    .category-text {
        font-size: 13px;
    }
}

@media (max-width: 480px) {
    .category-img {
        width: 110px;
        height: 110px;
        border-radius: 12px;
    }

    .btn-categories {
        width: 110px;
        height: 110px;
        border-radius: 12px;
    }

    .category-link {
        min-width: 120px;
        max-width: 130px;
    }

    .category-text {
        font-size: 12px;
    }
}

/* Categories list */
.all-categories {
    height: auto;
}

.all-categories-body {
    column-count: 4;
    column-gap: 10px;
}

.all-categories-subtitle {
    font-size: 20px;
    font-weight: 700;
    line-height: 24.2px;
    color: var(--neutral800);
    text-transform: uppercase;
}

.all-categories-section-title a {
    font-size: 16px;
    line-height: 19.36px;
    color: var(--neutral800);
    text-transform: uppercase;
    font-weight: 700;
}

.all-categories-section-item a {
    font-weight: 500;
    font-size: 14px;
    color: var(--neutral600);
    text-transform: capitalize;
    text-decoration: none;
}

.all-categories-block {
    break-inside: avoid;
    page-break-inside: avoid;
}

/* Mobile responsive for categories list */
@media (max-width: 991px) {
    .all-categories-body {
        column-count: 2;
        column-gap: 20px;
    }

    .all-categories-subtitle {
        font-size: 18px;
    }
}

@media (max-width: 576px) {
    .all-categories-body {
        column-count: 1;
        column-gap: 0;
    }

    #categories {
        padding: 0 15px;
    }

    .all-categories-subtitle {
        font-size: 16px;
    }

    .all-categories-section-title a {
        font-size: 15px;
    }

    .all-categories-section-item a {
        font-size: 13px;
    }

    .all-categories-section-list {
        padding-left: 20px;
    }
}

#categories-mobile {
    width: 100%;
  overflow: hidden;
}