.cat-main-container {
    width: 80%;
    margin: auto;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
    margin-bottom: 2vw;
}

.cat-container {
    display: flex;
    flex-direction: row;
    width: 100%;
    height: clamp(120px, 20vw, 180px);
    margin: auto;
    /* background-color: rgb(51, 51, 51); */
    box-sizing: border-box;
    padding: 2px;
}

.cat-main-container .heading-tag {
    font-family: var(--font-default);
    font-size: 16px;
    font-weight: 900;
    color: white;
    position: relative;
    box-sizing: border-box;
    padding: 4px;
    padding-left: 0.8vw;
}

.cat-main-container .heading-tag::before {
    content: "";
    position: absolute;
    width: 5px;
    height: 100%;
    top: 0;
    left: 0;
    border-radius: 5px;
    background-image: linear-gradient(45deg, #b808ee, #383bf5);
}

.category-card {
    height: 100%;
    position: relative;
    background-position: center;
    background-size: contain;
    background-repeat: no-repeat;
    color: white;
    box-shadow: inset 0 0 40px 40px rgb(0, 0, 0);
    transition: all 0.2s;
}

.category-card:first-child {
    border-radius: 8px 0 0 8px;
}

.category-card:last-child {
    border-radius: 0 8px 8px 0;
}

.category-card:hover {
    box-shadow: inset 0 0 40px 50px rgb(0, 0, 0);
    cursor: pointer;
}

.category-card article {
    display: flex;
    flex-direction: column;
    gap: 0;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    padding: 10px;
}

.category-card article .category-card__title {
    font-family: var(--font-default);
    font-size: clamp(8px, 0.8vw, 16px);
    font-weight: 800;
    margin: 0;
    margin-top: 1vw;
    text-shadow: 0 0 40px rgba(0, 0, 0, 0.8);
}

.category-card article .category-card__description {
    font-family: var(--font-default);
    font-size: clamp(6px, 0.8vw, 12px);
    font-weight: 800;
    display: block;
    flex-wrap: wrap;
    word-break: normal;
    word-wrap: break-word;
    text-align: center;
    height: 3vw;
    width: 60%;
    margin: 0;
}

.category-card:not(:last-child)::after {
    content: "";
    position: absolute;
    width: 2px;
    height: 100%;
    right: 0;
    top: 0;
    background-image: linear-gradient( 35deg, transparent, #9817d486, #3e0cb486, transparent);
}

.category-card .category-card__icon {
    width: clamp(30px, 3vw, 60px);
    height: auto;
}