.catalog__sections {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 24rem;
    margin-bottom: 40px;
}

.page__title.main-title.catalog__title {
    font-size: 30rem;
}

.catalog__subtitle {
    font-size: 14rem;
    margin-bottom: 40rem;
}

.catalog__sections .catalog__section {
    display: flex;
    flex-direction: column;
    gap: 5rem;
    min-height: 100%;
    padding: 20px;
    background-color: #F4F5F6;
    border-radius: 20px;
    transition: 0.2s;
    cursor: pointer;
    text-decoration: none;
    color: inherit;
}

.catalog__section:hover {
    opacity: 0.8;
}

.catalog__section .catalog__section-text {
    display: flex;
    flex-direction: column;
    gap: 5rem;
}

.catalog__section .catalog__section-name {
    font-size: 20rem;
    line-height: 100%;
}

.catalog__section .catalog__section-count {
    font-size: 12rem;
    color: #93999E;
}

.catalog__section .catalog__section-price {
    font-size: 12rem;
    color: #93999E;
}

.catalog__section .catalog__section-image {
    width: 100%;
    margin-top: auto;
}

.catalog__section .catalog__section-image img {
    width: 100%;
    display: block;
    aspect-ratio: 1 / 0.72;
    object-fit: contain;
}

@media (max-width: 1200px) {
    .catalog__sections {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

@media (max-width: 900px) {
    .catalog__sections {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 18rem;
    }

    .catalog__sections .catalog__section {
        padding: 18px;
        border-radius: 16px;
    }
}

@media (max-width: 640px) {
    .catalog__sections {
        grid-template-columns: 1fr;
        gap: 14rem;
    }

    .catalog__subtitle {
        margin-bottom: 24rem;
    }

    .catalog__sections .catalog__section {
        padding: 16px;
        border-radius: 14px;
    }

    .catalog__section .catalog__section-name {
        font-size: 22rem;
        line-height: 1.1;
    }

    .catalog__section .catalog__section-count,
    .catalog__section .catalog__section-price {
        font-size: 14rem;
    }

    .catalog__section .catalog__section-image img {
        aspect-ratio: 1 / 0.58;
        max-width: 82%;
        margin: 0 auto;
    }
}
