.categories-block-sec {
    margin: 24px 0 48px;
}

.categories-block-sec-inner-head {
    max-width: 1202px;
    margin: 0 auto 24px;
}

.categories-block-sec-inner-categories-list {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 12px;
}

.categories-block-sec-inner-categories-list-item-cat-link {
    text-decoration: none;
}

.categories-block-sec-inner-categories-list-item-image-wrap {
    position: relative;
    margin-bottom: 10px;
}

.categories-block-sec-inner-categories-list-item-image-wrap:before {
    content: "";
    padding-bottom: 110.83%;
    display: block;
}

.categories-block-sec-inner-categories-list-item-cat-image {
    position: absolute;
    top: 0;
    left: 0;
    margin-bottom: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    transition: all .5s ease;
}

.categories-block-sec-inner-categories-list-item-cat-image.cat-image {
    opacity: 1;
}

.categories-block-sec-inner-categories-list-item-cat-image.cat-hover-image {
    opacity: 0;
}

.categories-block-sec-inner-categories-list-item-cat-link.hover .categories-block-sec-inner-categories-list-item-cat-image.cat-image {
    opacity: 0;
}

.categories-block-sec-inner-categories-list-item-cat-link.hover .categories-block-sec-inner-categories-list-item-cat-image.cat-hover-image {
    opacity: 1;
}

.categories-block-sec-inner-categories-list-item-link-text {
    width: fit-content;
}

@media (max-width: 1199px) {
    .categories-block-sec-inner-categories-list {
        grid-template-columns: repeat(3, 1fr);
    }
}

@media (max-width: 992px) {
    .categories-block-sec-inner-categories-list {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 767px) {
    .categories-block-sec-inner-categories-list-item-image-wrap:before {
        padding-bottom: 120.129%;
    }
}