 
.full-width-image-cta {
    position: relative;
}

.full-width-image-cta__img {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
}

.full-width-image-cta__content {
    position: relative;
    z-index: 2;
}

.full-width-image-cta::after {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
}

.full-width-image-cta--light:after {
    background: linear-gradient(90deg, rgba(255, 255, 255, 0.65) 0%, rgba(224, 235, 252, 0.65) 100%);
    opacity: 0.85;
}

.full-width-image-cta--dark:after {
    background: linear-gradient(90deg, rgba(7, 114, 58, 0.85) 0%, rgb(0 45 112 / 85%) 100%);
    opacity: 0.55;
}

.full-width-image-cta--dark {
    background: linear-gradient(90deg, rgba(7, 114, 58, 0.85) 0%, rgba(0, 0, 255, 0.85) 100%);
}

.full-width-image-cta--dark .full-width-image-cta__img {
    opacity: 0.95;
}

.full-width-image-cta--dark h2 {
    color: var(--white);
}

.full-width-image-cta__content .btn {
    margin-top: 30px;
}

.full-width-image-cta--dark .full-width-image-cta__content a:not(.btn) {
    color: var(--white);
    background-image: linear-gradient(to right, var(--white), var(--white));
}

.full-width-image-cta__top-curve {
    position: absolute;
    left: 0;
    top: -1px;
    width: 100%;
    height: auto;
    z-index: 3;
}

.full-width-image-cta__bottom-curve {
    position: absolute;
    left: 0;
    bottom: -1px;
    width: 100%;
    height: auto;
    z-index: 3;
}

.full-width-image-text__buttons a.btn {
    white-space: nowrap;
}

@media(min-width: 768px) {
    .full-width-image-cta--dark h2 {
        font-size: 64px;
        line-height: 1em;
    }
}

@media(min-width: 1200px) {
    .full-width-image-cta--bottom-curve {
        padding-bottom: 141px;
    }

    .full-width-image-cta--top-curve {
        padding-top: 141px;
    }

    .full-width-image-cta__content .btn {
        margin-top: 20px;
    }

    .full-width-image-text__description-heading-container {
        display: flex;
        align-items: end;
        justify-content: space-between;
        gap: 0 24px;
        width: 100%;
    }

    .full-width-image-text__buttons {
        padding-top: 0;
        flex-direction: row;
        padding-bottom: 20px;
    }
}