.text-image {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    margin: 0 -1.5rem;
}

.text-image .text-image--text {
    box-sizing: border-box;
    hyphens: auto;
    -webkit-hyphens: auto;
}

.text-image .text-image--text .btn {
    margin-bottom: 0;
}

.text-image .text-image--text,
.text-image .text-image--image {
    flex-basis: calc(50% - 3rem);
    margin: 0 1.5rem;
    max-width: calc(50% - 3rem);
    width: calc(50% - 3rem);
}

.text-image .text-image--image img {
    border-radius: .1rem;
    display: block;
    width: 100%;
}

.text-image .text-image--text.text-image--text--on-transparent-background {
    background-color: rgba(255, 255, 255, .6);
    border-radius: .1rem;
    padding: 1rem;
}

@media (max-width: 1199px) {
    .text-image .text-image--text {
        flex-basis: calc(60% - 3rem);
        max-width: calc(60% - 3rem);
        width: calc(60% - 3rem);
    }

    .text-image .text-image--image {
        flex-basis: calc(40% - 3rem);
        max-width: calc(40% - 3rem);
        width: calc(40% - 3rem);
    }
}

@media (max-width: 991px) {
    .text-image {
        flex-direction: row;
    }

    .text-image .text-image--text {
        flex-basis: 100%;
        margin-top: 2rem;
        max-width: 100%;
        order: 2;
        width: 100%;
    }

    .text-image .text-image--image {
        flex-basis: 100%;
        max-width: 100%;
        order: 1;
        width: 100%;
    }

    .text-image .text-image--image img {
        width: 60%;
    }
}

@media (max-width: 767px) {
    .text-image .text-image--image img {
        width: 100%;
    }
}
