.page-main {
    margin-top: 7.125rem;
    max-width: 80rem;
}

.catalog-cards-section {
    display: flex;
    flex-wrap: wrap;
    flex-direction: row;
    row-gap: 2.5rem;
    column-gap: 2.5rem;
    margin-top: 2.875rem;
    margin-left: 0rem;
    margin-right: 0rem;
    padding-left: 0rem;
    padding-right: 0rem;
}

.catalog-cards-section > a {
    text-decoration: none;   
}

.catalog-more-article {
    color: rgba(15, 23, 41, 1);
    border: 0.0625rem solid rgba(203, 213, 225, 1);
    max-width: 9.75rem;
    border-radius: 0.75rem;
    font-family: "PTGolos_reg", sans-serif;
    font-style: normal;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.1875rem;
    letter-spacing: 0rem;
    text-align: left;
    padding-bottom: 0.9375rem;
    margin-top: 2.5rem;
    margin-left: auto;
    margin-right: auto;
}

.catalog-tags {
    margin: 5rem 0 5rem 0rem;
    padding: 0rem;
}

.catalog-widget {
    padding-left: 0rem;
    padding-right: 0rem;
    margin-left: 0rem;
    margin-right: 0rem;
    margin-bottom: 4.875rem;
}

@media screen and (max-width: 1200px) {
    .page-main {
        margin-top: 4.6875rem;
    }

    .catalog-heading {
        padding-left: 1.5rem;
        padding-right: 1.5rem;
        font-size: 3rem;
    }

    /* Планшет: сетка каталога в 2 колонки с промежутком ~24px */
    .catalog-cards-section {
        row-gap: 1.5rem;
        column-gap: 1.5rem;
        padding-left: 1.5rem;
        padding-right: 1.5rem;
    }

    /* Малые карточки по 2 в ряд (348px + 24px + 348px) */
    .catalog-cards-section > a {
        flex: 0 0 auto;
        width: calc(50% - 0.75rem);
    }

    .catalog-cards-section > a:has(.large-card) {
        flex: 1 0 auto;
        width: 100%;
    }

    .catalog-cards-section > a:last-child {
        flex: 1 0 auto;
    }

    .catalog-more-article {
        margin-top: 1.4375rem;
    }

    .catalog-tags {
        padding-left: 1.5rem;
        padding-right: 1.5rem;
        margin-top: 2.5rem;
        margin-bottom: 2.5rem;
    }

    .catalog-widget {
        padding-left: 1.5rem;
        padding-right: 1.5rem;
        margin-bottom: 3.9375rem;
    }
}

@media screen and (max-width: 768px) {
    .page-main {
        margin-top: 3.8125rem;
    }

    .catalog-heading {
        font-size: 1.75rem;
        padding-left: 1rem;
        padding-right: 0.625rem;
        letter-spacing: -0.0313rem;
    }

    .catalog-cards-section > a {
        flex: 0 0 auto;
        width: 100%;
    }

    .catalog-cards-section {
        flex-direction: column;
        margin-top: 2.1875rem;
        padding-left: 0px;
        padding-right: 0px;
        row-gap: 0.9375rem;
    }

    .catalog-more-article {
        font-size: 0.875rem;
        padding: 0.8125rem 0rem 0.875rem 0rem;
        width: 100%;
        margin-left: auto;
        margin-right: auto;
        display: inline-block;
        text-align: center;
        max-width: 21.4375rem;
    }

    .catalog-tags {
        padding-left: 1rem;
        padding-right: 1rem;
        margin-top: 2rem;
        margin-bottom: 1.875rem;
    }

    .catalog-widget {
        padding-left: 1.5rem;
        padding-right: 1.5rem;
        margin-bottom: 2rem;
    }
}