/**
 * Card Small
 *
 * Use this card when layout needs 4+ cards per row:
 * - Desktop text size is one level lower (body-4)
 * - Mobile keeps importance: 4-5 => 2 per row, 6 => 3 per row
 */

.card-smalls {
    --card-smalls-col-gap: var(--grid-gap);
    --card-smalls-row-gap: 24px;
    display: flex;
    flex-wrap: wrap;
    column-gap: var(--card-smalls-col-gap);
    row-gap: var(--card-smalls-row-gap);
    align-items: flex-start;
}

/* Spacing between demo rows */
.card-smalls + .card-smalls {
    margin-top: 24px;
}

.card-small {
    height: 371px;
    display: flex;
    flex-direction: column;
    gap: 12px; /* text to card */
    align-items: flex-start;
    text-decoration: none;
    color: inherit;
}

.card-small__image {
    flex: 1 0 0;
    width: 100%;
    background-color: var(--color-card);
    border: 1px solid var(--color-border-a8);
}

.card-small__text {
    margin: 0;
    width: 100%;
    font-family: var(--font-body);
    font-size: var(--font-size-body-4-desktop); /* 14px */
    font-weight: 400;
    line-height: var(--line-height-body-4-desktop); /* 120% */
    color: var(--color-content);
    text-align: left;
    text-indent: 0;
    transition: color 0.5s ease;
}

/* Optional link hover */
a.card-small:hover .card-small__text {
    color: var(--color-subaccent);
    transition: color 0s ease;
}


/* Width fractions (exact with fixed gap) */
.card-small--w-1-4 { flex: 0 0 calc((100% - (3 * var(--card-smalls-col-gap))) / 4); }
.card-small--w-1-5 { flex: 0 0 calc((100% - (4 * var(--card-smalls-col-gap))) / 5); }
.card-small--w-1-6 { flex: 0 0 calc((100% - (5 * var(--card-smalls-col-gap))) / 6); }

@media (max-width: 768px) {
    .card-smalls {
        --card-smalls-col-gap: var(--grid-gap);
        --card-smalls-row-gap: 24px; /* keep rows spacing */
    }

    .card-small {
        height: auto;
    }

    .card-small__text {
        font-size: var(--font-size-body-4-mobile); /* 12px */
        line-height: var(--line-height-body-4-mobile); /* 120% */
    }

    /* 4..5 in row => 2 per row */
    .card-small--w-1-4,
    .card-small--w-1-5 {
        flex-basis: calc((100% - (1 * var(--card-smalls-col-gap))) / 2);
    }

    /* 6 in row => 3 per row */
    .card-small--w-1-6 {
        flex-basis: calc((100% - (2 * var(--card-smalls-col-gap))) / 3);
    }

    .card-small__image {
        min-height: 220px;
        flex: none;
    }
}

