.single-cta-1 .single-cta-widget {
    padding: 3.2rem 0
}

.single-cta-1 .single-cta-widget__content {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
}

@media (max-width: 991px) {
    .single-cta-1 .single-cta-widget__content {
        padding: 0 2.4rem;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column
    }
}

.single-cta-1 .single-cta-widget__button {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    background-color: #fff;
    -webkit-box-shadow: 0 .4rem 1.2rem rgba(0,0,0,.2);
    box-shadow: 0 .4rem 1.2rem rgba(0,0,0,.2);
    -webkit-transition: background-color .2s,-webkit-box-shadow .2s ease-out;
    transition: background-color .2s,-webkit-box-shadow .2s ease-out;
    transition: box-shadow .2s ease-out,background-color .2s;
    transition: box-shadow .2s ease-out,background-color .2s,-webkit-box-shadow .2s ease-out;
    color: #000;
    padding: 1.6rem;
    border-radius: 3px
}

@media (max-width: 991px) {
    .single-cta-1 .single-cta-widget__button {
        width: 100%
    }
}

.single-cta-1 .single-cta-widget__button:not(:last-child) {
    margin-right: 2.4rem
}

@media (max-width: 991px) {
    .single-cta-1 .single-cta-widget__button:not(:last-child) {
        margin-right: 0;
        margin-bottom: 2.4rem
    }
}

.single-cta-1 .single-cta-widget__button:hover {
    -webkit-box-shadow: 0 .3rem .8rem rgba(0,0,0,.1);
    box-shadow: 0 .3rem .8rem rgba(0,0,0,.1)
}

.single-cta-1 .single-cta-widget__icon {
    margin-right: 1.6rem;
    font-size: 2.4rem;
    color: #777
}

.single-cta-1 .single-cta-widget__title {
    font-size: 1.8rem
}

.single-cta-1 .single-cta-widget__title--full {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    margin-right: 1.6rem
}

.single-cta-1 .single-cta-widget.dark {
    background-color: #222
}

    .single-cta-1 .single-cta-widget.dark .widget-heading {
        color: #fff
    }

    .single-cta-1 .single-cta-widget.dark .single-cta-widget__button {
        background-color: #777;
        color: #fff
    }

        .single-cta-1 .single-cta-widget.dark .single-cta-widget__button:hover {
            -webkit-box-shadow: 0 .3rem .8rem rgba(0,0,0,.1);
            box-shadow: 0 .3rem .8rem rgba(0,0,0,.1);
            background-color: #5e5e5e
        }

    .single-cta-1 .single-cta-widget.dark .single-cta-widget__icon {
        color: #bbb
    }

    .single-cta-1 .single-cta-widget.dark .single-cta-widget__title {
        color: #fff
    }
.feature-cards-2 .feature-cards-widget {
    content-visibility: auto;
    contain-intrinsic-size: 50rem;
    background-color: #ececec;
    padding: 9.6rem 0 6.4rem;
    position: relative;
    background-position: 50%;
    background-size: cover
}

    .feature-cards-2 .feature-cards-widget:after {
        content: "";
        display: block;
        position: absolute;
        height: 100%;
        width: 100%;
        background: hsla(0,0%,100%,.75);
        top: 0;
        left: 0;
        z-index: 0
    }

.feature-cards-2 .feature-cards-widget__wrapper {
    position: relative;
    z-index: 1
}

@media (max-width: 1199px) {
    .feature-cards-2 .feature-cards-widget__wrapper {
        padding: 0 3.2rem
    }
}

.feature-cards-2 .feature-cards-widget__content {
    padding-top: 6.4rem
}

.feature-cards-2 .feature-cards-widget__row {
    -ms-flex-pack: distribute;
    justify-content: space-around
}

@media (max-width: 991px) {
    .feature-cards-2 .feature-cards-widget__feature-card-wrapper {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        margin-bottom: 6.4rem
    }
}

.feature-cards-2 .feature-cards-widget__feature-card {
    width: 100%;
    position: relative;
    padding: 4.8rem 2.4rem 1.6rem;
    text-align: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column
}

.feature-cards-2 .feature-cards-widget__feature-card-no-icon {
    padding: 3.25rem 2.4rem 1.6rem
}

.feature-cards-2 .feature-cards-widget__feature-card.widget-background .feature-cards-widget__feature-text {
    color: #333
}

.feature-cards-2 .feature-cards-widget__feature-card.widget-background__hide-overlay {
    background-color: transparent
}

    .feature-cards-2 .feature-cards-widget__feature-card.widget-background__hide-overlay:after {
        display: none
    }

.feature-cards-2 .feature-cards-widget__icon-wrapper {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    width: 7.5rem;
    height: 7.5rem;
    position: relative;
    z-index: 1;
    border-radius: 50%;
    margin: -9rem auto 0;
    background: var(--color-primary);
    -webkit-box-shadow: 0 .4rem 1.2rem rgba(0,0,0,.2);
    box-shadow: 0 .4rem 1.2rem rgba(0,0,0,.2)
}

    .feature-cards-2 .feature-cards-widget__icon-wrapper i {
        color: #fff;
        font-size: 3.6rem
    }

.feature-cards-2 .feature-cards-widget__inner {
    position: relative;
    z-index: 1
}

.feature-cards-2 .feature-cards-widget__feature-title {
    margin-bottom: 1.6rem
}

.feature-cards-2 .feature-cards-widget__feature-image {
    width: 100%;
    margin: 2.4rem auto;
    min-height: 1px
}

.feature-cards-2 .feature-cards-widget__feature-text {
    text-align: center;
    color: #777;
    margin-bottom: 1.6rem
}

.feature-cards-2 .feature-cards-widget__cta {
    margin-top: auto;
    max-width: 100%
}

.feature-cards-2 .feature-cards-widget.dark {
    background-color: #777
}

    .feature-cards-2 .feature-cards-widget.dark:after {
        background: rgba(0,0,0,.85)
    }

    .feature-cards-2 .feature-cards-widget.dark .widget-background:after {
        background-color: #000
    }

    .feature-cards-2 .feature-cards-widget.dark .feature-cards-widget__feature-text, .feature-cards-2 .feature-cards-widget.dark .feature-cards-widget__feature-title, .feature-cards-2 .feature-cards-widget.dark .feature-cards-widget__heading, .feature-cards-2 .feature-cards-widget.dark .widget-heading {
        color: #fff
    }
.wpcf7 .screen-reader-response {
    position: absolute;
    overflow: hidden;
    clip: rect(1px, 1px, 1px, 1px);
    height: 1px;
    width: 1px;
    margin: 0;
    padding: 0;
    border: 0;
}

.wpcf7 form .wpcf7-response-output {
    margin: 2em 0.5em 1em;
    padding: 0.2em 1em;
    border: 2px solid #00a0d2; /* Blue */
}

.wpcf7 form.init .wpcf7-response-output,
.wpcf7 form.resetting .wpcf7-response-output,
.wpcf7 form.submitting .wpcf7-response-output {
    display: none;
}

.wpcf7 form.sent .wpcf7-response-output {
    border-color: #46b450; /* Green */
}

.wpcf7 form.failed .wpcf7-response-output,
.wpcf7 form.aborted .wpcf7-response-output {
    border-color: #dc3232; /* Red */
}

.wpcf7 form.spam .wpcf7-response-output {
    border-color: #f56e28; /* Orange */
}

.wpcf7 form.invalid .wpcf7-response-output,
.wpcf7 form.unaccepted .wpcf7-response-output {
    border-color: #ffb900; /* Yellow */
}

.wpcf7-form-control-wrap {
    position: relative;
}

.wpcf7-not-valid-tip {
    color: #dc3232; /* Red */
    font-size: 1em;
    font-weight: normal;
    display: block;
}

.use-floating-validation-tip .wpcf7-not-valid-tip {
    position: relative;
    top: -2ex;
    left: 1em;
    z-index: 100;
    border: 1px solid #dc3232;
    background: #fff;
    padding: .2em .8em;
    width: 24em;
}

.wpcf7-list-item {
    display: inline-block;
    margin: 0 0 0 1em;
}

.wpcf7-list-item-label::before,
.wpcf7-list-item-label::after {
    content: " ";
}

.wpcf7 .ajax-loader {
    visibility: hidden;
    display: inline-block;
    background-color: #23282d; /* Dark Gray 800 */
    opacity: 0.75;
    width: 24px;
    height: 24px;
    border: none;
    border-radius: 100%;
    padding: 0;
    margin: 0 24px;
    position: relative;
}

.wpcf7 form.submitting .ajax-loader {
    visibility: visible;
}

.wpcf7 .ajax-loader::before {
    content: '';
    position: absolute;
    background-color: #fbfbfc; /* Light Gray 100 */
    top: 4px;
    left: 4px;
    width: 6px;
    height: 6px;
    border: none;
    border-radius: 100%;
    transform-origin: 8px 8px;
    animation-name: spin;
    animation-duration: 1000ms;
    animation-timing-function: linear;
    animation-iteration-count: infinite;
}

@media (prefers-reduced-motion: reduce) {
    .wpcf7 .ajax-loader::before {
        animation-name: blink;
        animation-duration: 2000ms;
    }
}

@keyframes spin {
    from {
        transform: rotate(0deg);
    }

    to {
        transform: rotate(360deg);
    }
}

@keyframes blink {
    from {
        opacity: 0;
    }

    50% {
        opacity: 1;
    }

    to {
        opacity: 0;
    }
}

.wpcf7 input[type="file"] {
    cursor: pointer;
}

    .wpcf7 input[type="file"]:disabled {
        cursor: default;
    }

.wpcf7 .wpcf7-submit:disabled {
    cursor: not-allowed;
}

.wpcf7 input[type="url"],
.wpcf7 input[type="email"],
.wpcf7 input[type="tel"] {
    direction: ltr;
}
