.catalog-section {
    width: 100%;
    height: auto;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    gap: 24px;
    padding: 128px 8px 200px 8px;
}

.catalog-main-container {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 520px;
}

.catalog-main-container.reverse {
    flex-direction: row-reverse;
}

.catalog-image {
    min-width: 720px;
    width: 50%;
    height: 100%;
    object-fit: cover;
    flex-shrink: 0;
}

.catalog-image-placeholder {
    background-color: var(--grey-15);
}

.catalog-empty-state {
    width: min(1280px, 100%);
    min-height: 420px;
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 48px 24px;
    color: var(--text-50);
    font-size: 18px;
    font-weight: var(--semiBold);
    line-height: 140%;
    text-align: center;
}

.catalog-text-container {
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: flex-start;
    flex-direction: column;
    gap: 48px;
    padding: 72px;
}

.catalog-title {
    font-size: 40px;
    letter-spacing: 1%;
    font-weight: var(--extraBold);
    color: var(--white);
    text-shadow: 0 0 12px rgba(255, 255, 255, 0.6);
    max-width: 568px;

}


.catalog-description {
    font-size: 20px;
    font-weight: var(--bold);
    line-height: 140%;
    color: var(--text-50);
    max-width: 568px;

}


@media(max-width: 1500px) {


    .catalog-image {
        min-width: 500px;

    }

    .catalog-text-container {
        width: 100%;
        height: 100%;
        display: flex;
        justify-content: center;
        align-items: flex-start;
        flex-direction: column;
        gap: 48px;
        padding: 72px;
    }

    .catalog-title {
        font-size: 40px;
        letter-spacing: 1%;
        font-weight: var(--extraBold);
        color: var(--white);
        text-shadow: 0 0 12px rgba(255, 255, 255, 0.6);
        max-width: 568px;

    }


    .catalog-description {
        font-size: 20px;
        font-weight: var(--bold);
        line-height: 140%;
        color: var(--text-50);
        max-width: 568px;

    }
}


@media(max-width: 1320px) {


    .catalog-image {
        min-width: 500px;

    }

    .catalog-text-container {
        width: 100%;
        height: 100%;
        display: flex;
        justify-content: center;
        align-items: flex-start;
        flex-direction: column;
        gap: 48px;
        padding: 48px;
    }

    .catalog-title {
        font-size: 40px;

    }


    .catalog-description {
        font-size: 20px;

    }
}


@media(max-width: 1080px) {


    .catalog-image {
        min-width: 420px;

    }


    .catalog-text-container {
        gap: 32px;
        padding: 48px;
    }

    .catalog-title {
        font-size: 32px;

    }


    .catalog-description {
        font-size: 16px;

    }
}


@media(max-width: 970px) {

    .catalog-section {

        padding: 64px 8px 128px 8px;
    }


    .catalog-image {
        min-width: 360px;

    }

    .catalog-main-container {

        height: 400px;
    }



    .catalog-text-container {
        gap: 32px;
        padding: 48px 24px;
    }

    .catalog-title {
        font-size: 32px;

    }


    .catalog-description {
        font-size: 16px;

    }
}


@media(max-width: 800px) {

    .catalog-section {

        padding: 64px 8px 128px 8px;
    }


    .catalog-image {
        min-width: unset;
        width: 100%;
        height: auto;
    }

    .catalog-main-container {
        width: 100%;
        height: auto;
        flex-direction: column-reverse;
        justify-content: flex-start;
        align-items: flex-start;
    }

    .catalog-main-container.reverse {
        width: 100%;
        height: auto;
        flex-direction: column-reverse;
        justify-content: flex-start;
        align-items: flex-start;
    }



    .catalog-text-container {
        gap: 32px;
        padding: 48px 24px;
        justify-content: center;
        align-items: center;
    }

    .catalog-title {
        font-size: 32px;
        text-align: center;


    }


    .catalog-description {
        font-size: 16px;
        text-align: center;

    }
}



@media(max-width: 500px) {



    .catalog-text-container {
        gap: 32px;
        padding: 48px 16px;
    }

    .catalog-title {
        font-size: 24px;

    }


    .catalog-description {
        font-size: 16px;

    }
}
