.banner--image .banner__content {
    display: grid;
    grid-template-columns: 480px 1fr;
    gap: 20px;
    padding: 80px 88px 88px;
    border-radius: 50px;
    position: relative;
    background-color: #EFF7FB;
    z-index: 2;
}
.banner--image .banner__image {
    display: flex;
    align-items: flex-end;
    position: relative;
    border-radius: 0 50px 50px 0;
    margin: -80px -88px -88px 0;
    background-color: #02499D0A;
    z-index: 1;
}
.banner--image .banner__image img {
    width: 100%;
}

/* Стили для текста */
.banner--image .banner__content .banner__title {
    padding: 0 0 12px;
    color: var(--text_pr);
}
.banner--image .banner__content .banner__description {
    padding: 0 0 48px;
    color: var(--text_sec);
}
.banner--image .banner__content a {
    min-width: 240px;
    text-align: center;
}

/* Особенности для баннера с изображением слева */
.banner--image.banner--image-left .banner__image {
    right: auto;
    left: 0;
    margin: -80px 0 -88px -88px;
    border-radius: 50px 0 0 50px;
}
.banner--image.banner--image-left .banner__content {
    grid-template-columns: 1fr 500px;
    gap: 10px;
}
.banner--image.banner--image-left .banner__content .banner__text {
    grid-column: 2;
}

/* Адаптивные стили */
@media screen and (max-width: 1024px) {
    .banner--image .banner__content {
        display: flex;
        flex-direction: column-reverse;
        gap: 32px;
        padding: 24px;
        border-radius: 24px;
    }
    .banner--image .banner__image {
        margin: 0 !important;
        background-color: transparent;
    }
    .banner--image .banner__image img {
        aspect-ratio: 327 / 194;
        object-fit: contain;
        width: 100%;
        height: 100%;
    }    
    .banner--image-right .banner__content {
        padding: 0;
    }
    .banner--image .banner__content .banner__description {
        padding: 0 0 40px;
    }
}