.wpcf7 .screen-reader-response {
    position: absolute;
    overflow: hidden;
    clip: rect(1px, 1px, 1px, 1px);
    clip-path: inset(50%);
    height: 1px;
    width: 1px;
    margin: -1px;
    padding: 0;
    border: 0;
    word-wrap: normal !important;
}
.wpcf7 form .wpcf7-response-output {
    margin: 2em 0.5em 1em;
    padding: 0.2em 1em;
    border: 2px solid #00a0d2;
}
.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;
}
.wpcf7 form.failed .wpcf7-response-output,
.wpcf7 form.aborted .wpcf7-response-output {
    border-color: #dc3232;
}
.wpcf7 form.spam .wpcf7-response-output {
    border-color: #f56e28;
}
.wpcf7 form.invalid .wpcf7-response-output,
.wpcf7 form.unaccepted .wpcf7-response-output,
.wpcf7 form.payment-required .wpcf7-response-output {
    border-color: #ffb900;
}
.wpcf7-form-control-wrap {
    position: relative;
}
.wpcf7-not-valid-tip {
    color: #dc3232;
    font-size: 1em;
    font-weight: 400;
    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: 0.2em 0.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-spinner {
    visibility: hidden;
    display: inline-block;
    background-color: #23282d;
    opacity: 0.75;
    width: 24px;
    height: 24px;
    border: none;
    border-radius: 100%;
    padding: 0;
    margin: 0 24px;
    position: relative;
}
form.submitting .wpcf7-spinner {
    visibility: visible;
}
.wpcf7-spinner::before {
    content: "";
    position: absolute;
    background-color: #fbfbfc;
    top: 4px;
    left: 4px;
    width: 6px;
    height: 6px;
    border: none;
    border-radius: 100%;
    transform-origin: 8px 8px;
    animation-name: spin;
    animation-duration: 1e3ms;
    animation-timing-function: linear;
    animation-iteration-count: infinite;
}
@media (prefers-reduced-motion: reduce) {
    .wpcf7-spinner::before {
        animation-name: blink;
        animation-duration: 2e3ms;
    }
}
@keyframes spin {
    from {
        transform: rotate(0);
    }
    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;
}
.wpcf7-reflection > output {
    display: list-item;
    list-style: none;
}
.wpcf7-reflection > output[hidden] {
    display: none;
}
.screen-reader-text {
    display: block;
    clip: rect(1px, 1px, 1px, 1px);
    -webkit-font-smoothing: subpixel-antialiased;
    font-family: sans-serif;
    font-size: 1em;
    font-weight: 600;
    height: 1px;
    letter-spacing: normal;
    line-height: normal;
    overflow: hidden;
    position: absolute !important;
    text-shadow: none;
    text-transform: none;
    width: 1px;
}
.hero-home {
    padding-bottom: 130px !important;
}
.kvp-section {
    max-width: 900px;
    background-image: linear-gradient(
        180deg,
        #ffffff 56%,
        #e1e1e1 100%
    ) !important;
    border-radius: 10px 10px 10px 10px;
    overflow: hidden;
    margin-left: auto !important;
    margin-right: auto !important;
    z-index: 10;
    box-shadow: 0 -31px 18px -21px rgba(0, 0, 0, 0.3);
    transform: translateY(-100px);
    padding-top: 21px !important;
    padding-right: 0 !important;
    padding-bottom: 24px !important;
    padding-left: 0 !important;
}
.kvp-row {
    padding-top: 0 !important;
    padding-right: 0 !important;
    padding-bottom: 11px !important;
    padding-left: 0 !important;
    margin-top: 0 !important;
    z-index: 5;
    width: 95%;
}
.kvp-row .et_pb_blurb_2 .et-pb-icon {
    font-size: 75px;
}
.kvp-row .et_pb_blurb_1 .et-pb-icon,
.kvp-row .et_pb_blurb_3 .et-pb-icon {
    font-size: 50px;
}
.box-shadow {
    -webkit-box-shadow: 1px 1px 10px 2px rgba(0, 0, 0, 0.8);
    box-shadow: 1px 1px 10px 2px rgba(0, 0, 0, 0.8);
}
.inset-shadow {
    -webkit-box-shadow: inset 0 0 20px 2px rgba(0, 0, 0, 0.5);
    box-shadow: inset 0 0 20px 2px rgba(0, 0, 0, 0.5);
}
.et_pb_promo_description {
    margin-bottom: 0 !important;
}
.gray-radial {
    background: #45484d;
    background: -moz-radial-gradient(
        center,
        ellipse cover,
        #45484d 0%,
        #000000 100%
    );
    background: -webkit-radial-gradient(
        center,
        ellipse cover,
        #45484d 0%,
        #000000 100%
    );
    background: radial-gradient(ellipse at center, #45484d 0%, #000000 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#45484d',endColorstr='#000000',GradientType=1 );
}
.purple-linear {
    background: #5c246e;
    background: -moz-linear-gradient(top, #5c246e 0%, #381147 100%);
    background: -webkit-linear-gradient(top, #5c246e 0%, #381147 100%);
    background: linear-gradient(to bottom, #5c246e 0%, #381147 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#5c246e',endColorstr='#381147',GradientType=0 );
}
#main-footer,
.purple-radial {
    background: #5c1e57;
    background: -moz-linear-gradient(top, #5c1e57 0%, #2d0f37 100%);
    background: -webkit-linear-gradient(top, #5c1e57 0%, #2d0f37 100%);
    background: linear-gradient(to bottom, #5c1e57 0%, #2d0f37 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#5c1e57',endColorstr='#2d0f37',GradientType=0 );
}
.glossy-purple {
    background: #381147;
    background: -moz-linear-gradient(
        top,
        #381147 0%,
        #742482 50%,
        #5c246e 51%,
        #772a8e 100%
    );
    background: -webkit-linear-gradient(
        top,
        #381147 0%,
        #742482 50%,
        #5c246e 51%,
        #772a8e 100%
    );
    background: linear-gradient(
        to bottom,
        #381147 0%,
        #742482 50%,
        #5c246e 51%,
        #772a8e 100%
    );
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#381147',endColorstr='#772a8e',GradientType=0 );
}
.dark-radial {
    background: #45484d;
    background: -moz-radial-gradient(
        center,
        ellipse cover,
        #45484d 0%,
        #000000 100%
    );
    background: -webkit-radial-gradient(
        center,
        ellipse cover,
        #45484d 0%,
        #000000 100%
    );
    background: radial-gradient(ellipse at center, #45484d 0%, #000000 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#45484d',endColorstr='#000000',GradientType=1 );
}
.vertical {
    background: #b4bbbe;
    background: -moz-linear-gradient(top, #b4bbbe 0%, #eaeff2 100%);
    background: -webkit-linear-gradient(top, #b4bbbe 0%, #eaeff2 100%);
    background: linear-gradient(to bottom, #b4bbbe 0%, #eaeff2 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#b4bbbe',endColorstr='#eaeff2',GradientType=0 );
}
.services .et_pb_main_blurb_image {
    max-height: 140px;
    overflow: hidden;
    margin-bottom: 20px;
}
.services .et_pb_main_blurb_image img {
    min-height: 140px;
    width: 100%;
}
.services .et_pb_column_1_3 h4,
.et_pb_column_1_4 h4 {
    font-size: 26px;
}
.services .et_pb_blurb_container {
    padding: 0 10px;
}
.services .et_pb_blurb {
    transform: scale(1);
    box-shadow: 0 12px 20px -6px rgba(0, 0, 0, 0.3);
    border: 2px solid #fff;
    transition: all 300ms ease 0ms;
}
.services .et_pb_blurb:hover {
    transform: scale(1.1);
    box-shadow: 0 12px 40px -6px rgba(0, 0, 0, 0.3);
    border: 2px solid #772771;
}
#snippet-box {
    display: none !important;
}
.et_pb_slide_image img {
    border-radius: 15px;
}
.et_pb_column_1_3 h4,
.et_pb_column_1_4 h4 {
    font-size: 20px;
}
#custom_html-3 {
    background: #3b1447;
    background-image: linear-gradient(180deg, #3b1447 0%, #772771 100%);
    border-radius: 10px 10px 10px 10px;
    padding: 20px;
}
#custom_html-3 h4 {
    color: #fff;
    text-align: center;
}
#custom_html-3 a.et_pb_button {
    background: rgba(0, 0, 0, 0.5);
    background-color: rgba(0, 0, 0, 0.5);
    color: #fff;
}
small {
    font-size: 14px;
    line-height: 1;
}
.et_pb_bg_layout_dark .et_pb_button,
.et_pb_button.et_pb_bg_layout_dark,
.et_pb_bg_layout_dark .et_pb_more_button {
    background: rgba(0, 0, 0, 0.5);
    background-color: rgba(0, 0, 0, 0.5);
}
.et_pb_bg_layout_dark .et_pb_button:hover,
.et_pb_button.et_pb_bg_layout_dark:hover,
.et_pb_bg_layout_dark .et_pb_more_button:hover {
    border-color: #fff !important;
}
.et_pb_bg_layout_dark p a {
    color: #e02b20;
}
#et-info-phone:hover {
    opacity: 0.7;
    -moz-transition: all 0.4s ease-in-out;
    -webkit-transition: all 0.4s ease-in-out;
    transition: all 0.4s ease-in-out;
}
.credentials {
    padding: 0 0 27px !important;
}
.credentials .et_pb_row {
    padding: 0 0 27px !important;
}
.credentials .et_pb_image {
    width: 12%;
    margin-right: 2.5%;
    float: left;
    margin-bottom: 0 !important;
}
.credentials .et_pb_image img {
    max-height: 97px !important;
}
.credentials .et_pb_image:last-of-type {
    margin-right: 0%;
}
.service-menu .et-pb-icon {
    font-size: 65px;
    -webkit-transition: all 0.4s ease-in-out;
    -moz-transition: all 0.4s ease-in-out;
    transition: all 0.4s ease-in-out;
}
.credentials .et_pb_image img {
    -webkit-transition: all 0.4s;
    transition: all 0.4s;
}
.credentials .et_pb_image img:hover {
    transform: scale(1.3);
}
.nav li ul {
    width: 260px;
}
#top-menu li li a {
    width: 222px;
}
.et_pb_widget a.et_pb_button {
    color: #fff !important;
}
.et_pb_testimonial {
    background-color: #ededed;
    border-radius: 10px;
    box-shadow: 0 12px 20px -6px rgba(0, 0, 0, 0.3);
    border: 2px solid #fff;
}
.et_pb_testimonial_author {
    margin-top: 14px;
}
.et_pb_testimonial::before {
    color: #772771;
}
.testimonials-widget-testimonial.list {
    background: #efefef;
    border: 2px solid #e1e1e1;
    border-radius: 18px;
    padding: 20px;
}
.testimonials-widget-testimonial .open-quote::before {
    content: "\201C";
    font-size: 50px;
    color: #772771;
    font-family: serif;
}
.testimonials-widget-testimonial .close-quote::after {
    content: "\201D";
    color: #772771;
    font-size: 24px;
    font-family: serif;
}
.testimonials-widget-testimonial blockquote {
    margin: 0 0;
    padding-left: 0;
    border-left: none;
}
.mfp-title {
    display: none;
}
.menu-icons a {
    padding-left: 20px;
}
.menu-icons a:before {
    font-family: etmodules;
    position: absolute;
}
#main-header .menu-icons a:before {
    top: 0;
    left: 0;
}
.sub-menu .menu-icons a:before {
    margin-top: 6px;
    left: 0;
}
#top-header .menu-icons a:before {
    left: 0;
    top: 0;
}
.menu-icon-1 a:before {
    content: "\7c";
}

.menu-icon-3 a:before {
    content: "\7e";
}
.menu-icon-4 a:before {
    content: "\e001";
}
.menu-icon-5 a:before {
    content: "\e002";
}
.menu-icon-6 a:before {
    content: "\e005";
}
.menu-icon-7 a:before {
    content: "\e007";
}
.menu-icon-8 a:before {
    content: "\e00f";
}
.menu-icon-9 a:before {
    content: "\e010";
}
.menu-icon-10 a:before {
    content: "\e014";
}
.menu-icon-11 a:before {
    content: "\e015";
}
.menu-icon-12 a:before {
    content: "\e01d";
}
.menu-icon-13 a:before {
    content: "\e023";
}
.menu-icon-14 a:before {
    content: "\e026";
}
.menu-icon-15 a:before {
    content: "\e030";
}
.menu-icon-16 a:before {
    content: "\e105";
}
.menu-icon-17 a:before {
    content: "\e100";
}
.menu-icon-18 a:before {
    content: "\e0fe";
}

.menu-icon-20 a:before {
    content: "\e009";
}
.menu-icon-21 a:before {
    content: "\e02c";
}
.menu-icon-22 a:before {
    content: "\e106";
}
.menu-icon-23 a:before {
    content: "\e0e1";
}
.menu-icon-24 a:before {
    content: "\e029";
}
.bottom-nav {
    text-align: center;
}
#footer-info {
    text-align: center;
    float: none;
}
#author-info {
    clear: both;
    text-align: center;
    color: #fff;
}
.affiliates td:nth-child(odd) {
    width: 14%;
}
.calendar-row {
    max-width: 980px;
}
.calendar-flex {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
}
.calendar-flex .et_pb_promo {
    width: 100%;
    max-width: 430px;
    margin: 20px auto;
}
.wpcf7-text,
.wpcf7-textarea,
.wpcf7-captchar,
.wpcf7-date,
.wpcf7-select {
    background-color: #eee !important;
    border: none !important;
    width: 100% !important;
    -moz-border-radius: 0 !important;
    -webkit-border-radius: 0 !important;
    border-radius: 0 !important;
    font-size: 14px;
    color: #4e4e4e !important;
    padding: 16px !important;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}
.wpcf7-submit {
    float: right;
    color: #5c246e !important;
    margin: 8px auto 0;
    cursor: pointer;
    font-size: 20px;
    font-weight: 500;
    -moz-border-radius: 26px;
    -webkit-border-radius: 26px;
    border-radius: 26px;
    padding: 6px 20px;
    line-height: 1.7em;
    background: 0 0;
    border: 2px solid;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    -moz-transition: all 0.2s;
    -webkit-transition: all 0.2s;
    transition: all 0.2s;
}
.wpcf7-submit:hover {
    background-color: #eee;
    border-color: #5c246e;
    padding: 6px 20px !important;
}
.half-col {
    width: 49% !important;
    float: left;
    margin-right: 2%;
}
.half-col:nth-of-type(even) {
    margin-right: 0;
}
@media screen and (max-width: 980px) {
    .kvp-section {
        max-width: 60%;
    }
    #mobile_menu .menu-icons a:before {
        position: relative;
        margin-right: 5px;
    }
    #main-header .et_mobile_menu li ul {
        display: none !important;
    }
    .et_mobile_menu .menu-item-has-children > a {
        background-color: initial;
        font-weight: 600;
    }
    .credentials .et_pb_image {
        width: 14%;
    }
    .et_pb_column_1_3 h4,
    .et_pb_column_1_4 h4 {
        font-size: 20px;
    }
    .calendar-flex {
        display: block;
    }
    .no-bg-image {
        background-image: none !important;
        background: #e02228;
        background: -moz-radial-gradient(
            center,
            ellipse cover,
            #e02228 0%,
            #4f0000 100%
        );
        background: -webkit-radial-gradient(
            center,
            ellipse cover,
            #e02228 0%,
            #4f0000 100%
        );
        background: radial-gradient(
            ellipse at center,
            #e02228 0%,
            #4f0000 100%
        );
        filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#e02228',endColorstr='#4f0000',GradientType=1 );
    }
    .et_pb_fullwidth_header_0 img.header-logo {
        display: none;
    }
}
@media screen and (max-width: 767px) {
    .half-col {
        width: 100% !important;
        display: block;
        margin-right: 0;
    }
    .half-col:nth-of-type(even) {
        width: 100% !important;
    }
    .credentials .et_pb_image {
        width: 45%;
        margin: 2.5% !important;
    }
}
@media screen and (max-width: 460px) {
    .mobile-hide {
        display: none;
    }
}
