.text-image__wrapper {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: calc(75px + (100 - 75)*((100vw - 1024px) / (1920 - 1024)));
}

.text-image__wrapper.swap-content-position {
    flex-direction: row-reverse;
}

.text-image__text {
    margin-bottom: 0;
}

.text-image__text strong {
    font-weight: 500;
    font-size: calc(20px + (24 - 20)*((100vw - 1440px) / (1920 - 1440)));;
}

.text-image__text p:not(:last-child) {
    margin-bottom: calc(10px + (15 - 10)*((100vw - 390px) / (1920 - 390)));
}

.text-image__image-wrapper {
    overflow: hidden;
}
.text-image__image-wrapper img {
    border-radius: 40px;
}

.text-image__heading,
.text-image__text-content:has(.text-image__btn) .text-image__text {
    margin-bottom: calc(16px + (36 - 16)*((100vw - 390px) / (1920 - 390)));
}

.text-image__btn {
    min-width: calc(132px + (190 - 132)*((100vw - 390px) / (1920 - 390)));
}

.text-image__text p:last-child {
    margin-bottom: 0;
}

.image-border-radius-off {
    border-radius: 0;
}

@media screen and (min-width: 1920px) {
    .text-image__wrapper {
        gap: 100px;
    }

    .text-image__heading,
    .text-image__text-content:has(.text-image__btn) .text-image__text {
        margin-bottom: 36px;
    }

    .text-image__btn {
        min-width: 190px;
    }

    .text-image__text p:not(:last-child) {
        margin-bottom: 15px;
    }

    .text-image__text strong {
        font-size: 24px;
    }
}

@media screen and (max-width: 1023.98px) {
    .text-image__wrapper,
    .text-image__wrapper.swap-content-position {
        flex-direction: column;
        gap: 24px;
    }

    .text-image__image-wrapper {
        width: 100%;
    }

    .text-image__image-wrapper,
    .text-image__text-content {
        flex-basis: fit-content!important;
    }

    .text-image__image {
        max-height: 500px;
        width: 100%;
    }

    .text-image__text strong {
        font-size: 20px;
    }

    .text-image__image-wrapper {
        margin-right: 0!important;
    }
}

@media screen and (max-width: 599.98px) {
    .text-image__image {
        min-height: 320px;
    }
}

@media screen and (max-width: 389.98px) {

    .text-image__heading,
    .text-image__text-content:has(.text-image__btn) .text-image__text {
        margin-bottom: 16px;
    }

    .text-image__btn {
        min-width: 132px;
    }

    .text-image__text p:not(:last-child) {
        margin-bottom: 10px;
    }
}