/*
 * Admission conditions (sections/certification-requirements.php): two cards,
 * one per qualification, each with its own list. Card skin is the one
 * 45-certification-levels.css uses - the two sections answer one question
 * between them, so they must not look like two different components even
 * though the "зачем" block now stands between them. The bullet
 * list is the same accent dot the whole site uses (35-course-program.css).
 *
 * Two cards fit a row, so no slider: the .slider skin exists for lists
 * longer than four cards (docs/2026-08-08-sprint-kartochki-i-grafika.md §6).
 */

.certification-requirements {
    padding: 3vw 0;
    background: var(--color-surface-muted);
}

.certification-requirements__title {
    margin: 0 0 0.83vw;
}

.certification-requirements__lead {
    max-width: 44em;
    margin: 0 auto 1.67vw;
    text-align: center;
    color: var(--color-text-muted);
}

.certification-requirements__grid {
    --bs-gutter-x: 1.25vw;
    --bs-gutter-y: 1.25vw;
}

.certification-requirements__card {
    display: flex;
    flex-direction: column;
    padding: 1.67vw;
    background: var(--color-surface);
    border: 1px solid var(--color-border);
    border-radius: var(--radius);
    box-shadow: var(--shadow-card);
}

.certification-requirements__icon {
    align-self: flex-start;
    margin: 0 0 1.04vw;
    padding: 0.73vw;
    border-radius: 50%;
    background: rgba(47, 111, 237, 0.1);
    color: var(--color-accent);
    box-sizing: content-box;
}

.certification-requirements__card-title {
    font-size: 1.25vw;
    font-weight: 700;
    color: var(--color-primary);
    margin: 0 0 1.04vw;
}

.certification-requirements__list {
    display: flex;
    flex-direction: column;
    gap: 0.63vw;
    margin: 0;
}

.certification-requirements__list li {
    position: relative;
    padding-left: 1.35vw;
    color: var(--color-text);
}

.certification-requirements__list li::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0.63vw;
    width: 0.42vw;
    height: 0.42vw;
    border-radius: 50%;
    background: var(--color-accent);
}

@media only screen and (max-width: 767.98px) {
    .certification-requirements {
        padding: 6vw 0;
    }

    .certification-requirements__title {
        margin: 0 0 3.2vw;
    }

    .certification-requirements__lead {
        max-width: none;
        margin: 0 0 5.33vw;
        text-align: left;
    }

    .certification-requirements__grid {
        --bs-gutter-x: 4vw;
        --bs-gutter-y: 4vw;
    }

    .certification-requirements__card {
        padding: 5.33vw;
    }

    .certification-requirements__icon {
        margin: 0 0 4vw;
        padding: 2.8vw;
    }

    .certification-requirements__card-title {
        font-size: 5.33vw;
        margin: 0 0 4vw;
    }

    .certification-requirements__list {
        gap: 2.67vw;
    }

    .certification-requirements__list li {
        padding-left: 5.33vw;
    }

    .certification-requirements__list li::before {
        top: 2.4vw;
        width: 1.6vw;
        height: 1.6vw;
    }
}
