.cta-content {
    text-align: center;
}

.cta-content .sub-heading {
    font-size: 18px;
    letter-spacing: 0.15em;
}

.cta-content h2 {
    font-size: 33px;
}

.cta-content .btn {
    margin: 15px 0 0;
}

.cta--padding {
    padding: 32px 0;
}

.cta-content .btn-icon {
    padding: 15px 29px 15px 29px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
}

.cta-content .btn-icon i {
    font-size: 20px;
}

.cta-content .btn-icon:after {
    display: none;
}

.cta-content p {
    margin: 0;
}

.cta-content h2 + p {
    margin: 10px 0 0;
}


@media(min-width: 768px) {
    .cta-content {
        text-align: left;
        position: relative;
        padding-right: 250px;
    }

    .cta-content .btn {
        margin: 0;
        position: absolute;
        right: 0;
        top: 50%;
        transform: translate(0, -50%);
    }

    .cta-content .btn-group .btn  {
        position: relative;
        top: auto;
        transform: unset;
        right: auto;
    }   

    .cta-content h2 {
        margin: 0;
    }

    .cta--inner .cta-content {
        text-align: center;
        padding-right: 0;
    }

    .cta--inner .cta-content .btn {
        margin: 30px 0 0;
        position: relative;
        right: 0;
        top: 0;
        transform: unset;
        width: max-content;
    }

    .cta--inner .cta-content .btn-icon {
        margin: 30px auto 0;
    }    
}

@media(min-width: 1200px) {
    .cta-content h2 {
        font-size: 45px;
        letter-spacing: 0.047em;
    }

    .cta-content .sub-heading {
        font-size: 20px;
        letter-spacing: 0.2em;
    }

    .cta--padding {
        padding: 68px 0;
    }

    .cta--inner .cta-content {
        text-align: left;
        padding-right: 480px;
    }

    .cta--inner .cta-content .btn {
        margin: 0;
        position: absolute;
        right: 0;
        top: 50%;
        transform: translate(0, -50%);
        max-width: 315px;
    }
}