.artifact-categories-list-wrapper {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 24px;
    width: 100%;
    margin-bottom: 40px !important;

    .category-item {
        min-width: 0;
        border: 1px solid #bcbcbc;

        .category-url {
            display: block;
            color: #fff;
            text-decoration: none;
        }

        .image-content {
            position: relative;
            width: 100%;
            aspect-ratio: 4 / 3;
            overflow: hidden;
            background-color: #333;
        }

        .category-image {
            display: block;
            width: 100%;
            height: 100%;
            object-fit: cover;
            transition: transform 0.3s ease;
        }

        .category-title {
            position: absolute;
            inset: 0;
            color: #fff;
            font-size: 22px;
            font-weight: 600;
            z-index: 1;
            
            span {
                background-color: rgba(128, 128, 128, 0.7);
                padding: 5px 10px;
                margin-top: 10px;
                display: inline-block;
                font-size: 14px;
                text-transform: uppercase;
            }
        }

        .category-url:hover .category-title {
            background: rgba(0, 0, 0, 0.1);
        }
    }
}

/* Tablets: 2 categories per row */
@media (max-width: 1100px) {
    .artifact-categories-list-wrapper {
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 20px;
    }
}

/* Tablets: 2 categories per row */
@media (max-width: 900px) {
    .artifact-categories-list-wrapper {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 20px;
    }
}

/* Mobile: 1 category per row */
@media (max-width: 480px) {
    .artifact-categories-list-wrapper {
        grid-template-columns: 1fr;
        gap: 16px;
    }

    .category-title {
        font-size: 20px;
    }
}