/* 
Theme Name: Hello Elementor Child
Theme URI: https://github.com/elementor/hello-theme/
Description: Hello Elementor Child is a child theme of Hello Elementor, created by Elementor team
Author: Elementor Team
Author URI: https://elementor.com/
Template: hello-elementor
Version: 1.0.1
Text Domain: hello-elementor-child
License: GNU General Public License v3 or later.
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Tags: flexible-header, custom-colors, custom-menu, custom-logo, editor-style, featured-images, rtl-language-support, threaded-comments, translation-ready
*/

/*
    Add your custom styles here
*/


html, body {
    font-size: 18px;
    line-height: 30px;
    color: #606060;
    font-weight: 300;
    font-family: "Lato", sans-serif;
}
.container {
    max-width: 1200px;
}
.row {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    padding-right: .5rem;
    padding-left: .5rem;
}

.aux-content-top-margin .aux-primary {
    padding-top: 1rem;
}

.site-branding {
    display: flex;
    align-items: center;
}
.header-bar {
    padding-top: 8px;
    padding-bottom: 8px;
}

.site-branding .site-title{
    font-family: 'Roboto Slab', serif;
    font-size: 23px;
    line-height: 30px;
    color: #313641;
    font-weight: 400;
    margin-bottom: 0;
}
.site-branding .custom-logo-link {
    margin-right: 15px;
}
.site-branding .site-title a {
    color: #313641;
}
.site-branding .site-description a, .site-branding .site-description {
    font-family: 'Roboto Slab', serif;
    font-size: 16px;
    letter-spacing: 0px;
    line-height: 20px;
    color: #5ab8c0;
    font-weight: 400;
    margin-bottom: 0;
}
.call-action-box {
    text-align: right;
}
.call-action-box .phone-title {
    font-size: 16px;
    line-height: 25px;
    color: #313641;
    font-weight: 300;
}
.call-action-box .phone-value{
    font-size: 20px;
    line-height: 25px;
    color: #5ab8c0;
    font-weight: 700;
    font-family: "Lato", sans-serif;
}
.call-action-box .phone-value a{
    color: #5ab8c0;
}
.menu-main-container .menu-item {
    font-size: 18px;
    line-height: 28px;
    color: #313641;
    font-weight: 400;
    font-family: "Lato", sans-serif;
}
.menu-main-container .menu-item a {
    padding: 10px 15px;
    display: inline-block;
}
.menu-main-container ul {
    display: flex;
    justify-content: space-around;
    width: 100%;
}
.footer-bar {
    padding-top: 30px;
    padding-bottom: 30px;
}
.footer-bar .footer-content {
    text-align: center;
}
.footer-bar .footer-content h4 {
    font-size: 16px;
    line-height: 12px;
    color: #313641;
    font-weight: 400;
    font-family: "Lato", sans-serif;
    text-align: center;
    margin-bottom: 16px;
}
.button, a.button, input[type="submit"]{
    border-radius: 8px;
    background-color: #e14b4f;
    font-size: 22px;
    line-height: 25px;
    color: #ffffff;
    font-weight: 400;
    font-family: "Lato", sans-serif;
    padding: 18px;
    display: inline-block;
	position: relative;
}

.button:hover, a.button:hover, a.button.secondary:hover, .button.secondary:hover, input[type="submit"]:hover{
    background-color: #253D75;
}

.button.secondary, a.button.secondary{
    border-radius: 8px;
    background-color: #5ab8c0;
    font-size: 22px;
    line-height: 25px;
    color: #ffffff;
    font-weight: 400;
    font-family: "Lato", sans-serif;
    padding: 18px;
    display: inline-block;
	position: relative;
}



.button.secondary::after{
    content: " ";
    width: 20px;
    height: 20px;
    display: inline-block;
    vertical-align: middle;
    background-image: url('./images/action-arrow.png');
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    margin-left: 50px;
}

.wpcf7 input[type="submit"] {
    padding: 12px 25px;
    text-transform: none;
    width: 100%;
    background-image: url('./images/action-arrow.png');
    background-position: 95% center;
    background-repeat: no-repeat;
    text-align: left;
    margin-bottom: 0;
}
.form-card .wpcf7 input[type="text"], .form-card .wpcf7 input[type="tel"], .form-card .wpcf7 input[type="email"], .form-card .wpcf7 input[type="tel"] {
    padding: 5px 15px;
    height: 40px;
    font-size: 16px;
    border: 0;
    background-color: #ebeff2;
}

.wpcf7 .wpcf7-not-valid {
    border-color: #e14b4f;
}
a.button.call-to-action::after{
    content: " ";
    width: 20px;
    height: 20px;
    display: inline-block;
    vertical-align: middle;
    background-image: url('./images/action-arrow.png');
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    margin-left: 50px;
}
.footer-bar .footer-content p {
    font-size: 12px;
    line-height: 19px;
    color: #606060;
    text-align: center;
    margin-bottom: 12px;
}
.footer-bar .call-action-box .question-title {
    font-size: 16px;
    line-height: 12px;
    color: #313641;
    font-weight: 400;
    font-family: "Lato", sans-serif;
    text-align: center;
    margin-bottom: 16px;
}
.footer-bar .call-action-box .phone-value {
    text-align: center;
}
.footer-bar .call-action-box .phone-value .btn{
    border-radius: 8px;
    background-color: #253d75;
    width: 100%;
    max-width: 170px;
    font-size: 16px;
    line-height: 12px;
    color: #ffffff;
    font-weight: 700;
    font-family: "Lato", sans-serif;
    padding: 20px 25px;
    display: inline-block;
}
.pre-footer-bar {
    padding-top: 50px;
    padding-bottom: 50px;
    background-color: #5ab8c0;
    color: #ffffff;
    margin-top: 70px;
}
.pre-footer-bar h2.title {
    font-size: 32px;
    line-height: 60px;
    color: #ffffff;
    font-weight: 700;
    font-family: "Lato", sans-serif;
}
.pre-footer-bar .pre-footer-image {
    max-width: 370px;
    width: 100%;
}
.margin-xs-left-right-auto {
    margin-left: auto;
    margin-right: auto;
}

.call-action-box .phone-icon {
    background-image: url('./images/phone-icon.png');  
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    display: inline-block;
    width: 45px;
    height: 45px;
}
.call-action-box a{
    display: inline-block;
    vertical-align: middle;
}
.call-action-box .menu-button.menu-icon-button {
    border: 0;
    width: 45px;
    height: 45px;
    margin: 0;
    padding: 15px;
    background-image: url('./images/menu-icon.png');  
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    background-color: transparent;

}
a {
    color: #253d75;
}
a.arrow::after {
    content: " ";
    display: inline-block;
    width: 20px;
    height: 20px;
    background-image: url('./images/arrow-small.png');  
    vertical-align: middle;
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    margin-left: 5px;

}
.circle-left-bg {
    background-image: url('./images/humberto-chavez.png');
    background-repeat: no-repeat;
    background-position: 110% center;
    background-size: 50%;
}
.form-card .wpcf7 input[type="text"],.form-card .wpcf7 input[type="tel"], .form-card .wpcf7 input[type="email"], .form-card .wpcf7 input[type="tel"] {
    margin-bottom: 10px;
}
.form-card .wpcf7 .slide label {
    margin-bottom: 15px;
}
.d-flex-align-end .elementor-widget-container {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
}
.form-success-box .success-title {
    font-size: 36px;
    line-height: 40px;
    color: #313641;
    font-weight: 700;
    font-family: "Lato", sans-serif;
    text-align: center;
    margin-bottom: 25px;
}
.form-success-box .success-image-box {
    text-align: center;
}
.form-success-box .success-subtitle {
    font-size: 22px;
    line-height: 30px;
    color: #313641;
    font-weight: 400;
    font-style: italic;
    font-family: "Lato", sans-serif;
    text-align: center;
    margin-top: 20px;
}
.form-success-box {
    width: 100%;
}
.header-bar .mobile-part {
    padding-right: 15px;
}
a.button.call-to-action {
    padding-right: 55px;
}
a.button.call-to-action::after {
    position: absolute;
    right: 15px;
    top: 20px;
}

span.wpcf7-list-item {
    width: 46%;
}

.wider-choose-elements span.wpcf7-list-item {
    min-width: 100%;
    margin-left: 0;
}
.elementor-top-section .form-wrap {
    min-height: 280px;
    display: flex;
    align-items: center;
}
.elementor-top-section .form-wrap>.wpcf7 {
    width: 100%;
}
.form-wrap .wpcf7-not-valid-tip {
    font-size: 14px;
    line-height: 16px;
    margin-top: -5px;
}
.wpcf7 form .wpcf7-response-output {
    margin-top: 5px;
    font-size: 14px;
}
.form-card .wpcf7-form-control-wrap .wpcf7-not-valid-tip{
    position: absolute;
    top: 35px;
    background-color: #e14b4f;
    color: #ffffff;
    padding-left: 10px;
    padding-right: 10px;
    left: 20px;
}
div.wpcf7 .ajax-loader {
    display: none;
}
div.wpcf7 .ajax-loader.is-active {
    display: inline-block;
}
.form-card .action-box + p {
    margin-bottom: 0;
}
.form-card .wpcf7-form-control-wrap {
    display: block;
}

h2 {
    font-size: 30px;
}

h3 {
    font-size: 28px;
    font-weight: 400;
}

.form-card .wpcf7 input[type="text"]::-webkit-input-placeholder, 
.form-card .wpcf7 input[type="tel"]::-webkit-input-placeholder, 
.form-card .wpcf7 input[type="email"]::-webkit-input-placeholder, 
.form-card .wpcf7 input[type="tel"]::-webkit-input-placeholder {
    color: #333333;
    font-weight: 500;
}
.form-card .wpcf7 input[type="text"]::-ms-input-placeholder, 
.form-card .wpcf7 input[type="tel"]::-ms-input-placeholder, 
.form-card .wpcf7 input[type="email"]::-ms-input-placeholder, 
.form-card .wpcf7 input[type="tel"]::-ms-input-placeholder {
    color: #333333;
    font-weight: 500;
}

.form-card .wpcf7 input[type="text"]::-moz-placeholder, 
.form-card .wpcf7 input[type="tel"]::-moz-placeholder, 
.form-card .wpcf7 input[type="email"]::-moz-placeholder, 
.form-card .wpcf7 input[type="tel"]::-moz-placeholder {
    color: #333333;
    font-weight: 500;
}
.form-card .wpcf7 input[type="text"]::placeholder, 
.form-card .wpcf7 input[type="tel"]::placeholder, 
.form-card .wpcf7 input[type="email"]::placeholder, 
.form-card .wpcf7 input[type="tel"]::placeholder {
    color: #333333;
    font-weight: 500;
}
.form-card .wpcf7 input[type="text"], 
.form-card .wpcf7 input[type="tel"], 
.form-card .wpcf7 input[type="email"], 
.form-card .wpcf7 input[type="tel"] {
    font-weight: 500;
}

@media screen and (max-width: 1200px) {
    .container {
        max-width: 100%;
    }
}
@media screen and (max-width: 767px) {
    .circle-left-bg {
        background-position: 110% bottom;
    }
}
@media screen and (min-width: 65rem) {
    .pre-footer-bar .pre-footer-image {
        margin-top: -120px;
    }
    .margin-md-left-auto {
        margin-left: auto;
    }
    .call-action-box .mobile-part{
        display: none;
    }
    .margin-md-right-auto {
        margin-left: auto;
    }
    .margin-md-right-0{
        margin-right: 0;
    }
    .margin-md-left-0{
        margin-left: 0;
    }
    .margin-md-auto {
        margin: auto;
    }
    .margin-md--bottom-large {
        margin-bottom: -120px;
    }
}
@media screen and (max-width: 65rem) { 
    .wider-choose-elements span.wpcf7-list-item {
        width: 100%;
    }

    .odd-choose-elements span.wpcf7-list-item {
        width: 100%;
    }

    .choose-elements span.wpcf7-list-item {
        width: 45%;
    }

    .site-branding a img {
        width: 45px;
    }
    .container {
        max-width: 100%;
    }
    .site-branding {
        padding-left: 15px;
    }
    .site-branding .site-title {
        font-size: 14px;
        line-height: 16px;
    }
    .site-branding .site-description {
        font-size: 11px;
        line-height: 13px;
    }
    .header-bar .call-action-box .phone-title{
        display: none;
    }
    .header-bar .call-action-box .phone-value {
        display: none;
    }
    .header-bar .primary-menu-wrapper {
        position: absolute;
        top: 69px;
        background-color: #ffffff;
        z-index: 100;
        display: none;
    }
    .header-bar .primary-menu-wrapper.active{
        display: block;
        width: 100%;
    }
    .header-bar .menu-main-container .menu-item {
        width: 100%;
    }
    .header-bar .menu-main-container ul {
        flex-wrap: wrap;
    }
    .button, a.button, input[type="submit"] {
        font-size: 16px;
        padding: 16px 18px;
        margin-bottom: 0;
		display: inline-block;
    }
    a.button.call-to-action::after {
        margin-left: 20px;
    }
    .pre-footer-bar .row{
        flex-direction: column-reverse;
    }
    .pre-footer-bar .pre-footer-image {
        margin-top: -140px;
    }
    .pre-footer-bar {
        margin-top: 100px;
        text-align: center;
    }
    .pre-footer-bar h2.title {
        line-height: 1.6em;
        font-size: 24px;
        text-align: center;
    }
    .footer-bar .site-branding{
        justify-content: center;
        margin-bottom: 30px;
    }
    .site-branding .site-title {
        font-size: 18px;
        line-height: 22px;
    }
    .site-branding .site-description {
        font-size: 14px;
        line-height: 18px;
    }
    .footer-bar .site-branding a img{
        width: 60px;
        height: 60px;
    }
    .footer-bar .footer-content {
        margin-bottom: 30px;
    }
}
@media screen and (max-width: 49rem) {
    .wpcf7 form .wpcf7-response-output {
        margin-top: -15px;
    }
}

.form-card {
    max-width: 480px;
    border-radius: 8px;
    filter: drop-shadow(0px 6px 15px rgba(62,91,156,0.2));
    background-color: #ffffff;
    padding: 0;
}
.form-card .form-card--header {
    background-color: #5ab8c0;
    padding: 15px 30px;
    font-size: 22px;
    line-height: 25px;
    color: #ffffff;
    font-weight: 700;
    font-family: "Lato", sans-serif;
    border-top-left-radius: 8px;
    border-top-right-radius: 8px;
    padding-left: 45px;
}

.form-wrap .form-success-box {
    display: none;
}
.form-card .form-card--body {
    padding: 30px;
}
.form-card a {
    color: #3e5b9c;
}
.form-card .message {
    font-size: 18px;
    line-height: 30px;
    color: #313641;
    font-weight: 700;
    font-family: "Lato", sans-serif;
}
.questions-numbered-block {
    min-height: 78px;
    border-radius: 8px;
    background-color: #ebeff2;
    display: flex;
    align-content: center;
    position: relative;
    padding: 8px 15px 8px 70px;
    font-style: italic;
    font-size: 18px;
    line-height: 30px;
    color: #313641;
    font-weight: 400;
    font-family: "Lato", sans-serif;
    margin-bottom: 20px;
    align-items: center;
}
.questions-numbered-block::before{
    content: attr(data-number);
    display: inline-flex;
    position: absolute;
    top: 0;
    left: 0;
    background-color: #afb6c1;
    height: 100%;
    width: 60px;
    padding: 15px 5px;
    justify-content: center;
    align-content: center;
    font-size: 31px;
    line-height: 42px;
    color: #ffffff;
    font-weight: 700;
    font-style: normal;
    border-top-left-radius: 8px;
    border-bottom-left-radius: 8px;
}
.wpcf7-form .wpcf7-checkbox .wpcf7-list-item input[type="checkbox"], .wpcf7-form .wpcf7-radio .wpcf7-list-item input[type="radio"] {
    display: none !important;
}
.wpcf7-form .form-page-slides .wpcf7-checkbox input[type="checkbox"] + .wpcf7-list-item-label,
.wpcf7-form .form-page-slides .wpcf7-radio input[type="radio"] + .wpcf7-list-item-label {
    color: #ffffff;
    text-align: center;
    display: inline-block;
    width: 100%;
    border-radius: 8px;
    background-color: #253d75;
    color: #ffffff;
    font-size: 20px;
    line-height: 25px;
    color: #ffffff;
    padding: 7px;
    font-weight: 400;
    font-family: "Lato", sans-serif;
    cursor: pointer;
}
.desktop-prefooter-widget 
.wpcf7-form .form-page-slides .wpcf7-checkbox input[type="checkbox"] + .wpcf7-list-item-label:hover, .wpcf7-form .form-page-slides .wpcf7-checkbox input[type="checkbox"]:checked + .wpcf7-list-item-label {
    background-color: #e14b4f;
}
.wpcf7-form-control span.wpcf7-list-item {
    width: 48%;
    margin-right: 4%;
    margin-left: 0;
}
.wpcf7-form-control span.wpcf7-list-item:nth-child(even) {
    margin-right: 0;
}
.wpcf7-form .form-page-slides p:not(.message) {
    margin-bottom: 0;
}
.wpcf7-form .form-page-slides .wpcf7-spinner {
    position: absolute;
    transform: translate(-60px, 50px);
}
.wpcf7-form-control.wider-choose-elements span.wpcf7-list-item {
    min-width: 100%;
}

@media screen and (min-width: 1080px) {
    .margin-md-left-auto .form-card{
        margin-left: auto;
    }
}

/* 3 step slides */

.wpcf7-form .form-page-3step-slides .wpcf7-checkbox input[type="checkbox"] + .wpcf7-list-item-label,
.wpcf7-form .form-page-3step-slides .wpcf7-radio input[type="radio"] + .wpcf7-list-item-label {
    color: #ffffff;
    text-align: center;
    display: inline-block;
    width: 100%;
    border-radius: 8px;
    background-color: #253d75;
    color: #ffffff;
    font-size: 20px;
    line-height: 25px;
    color: #ffffff;
    padding: 7px;
    font-weight: 400;
    font-family: "Lato", sans-serif;
    cursor: pointer;
}
.desktop-prefooter-widget 
.wpcf7-form .form-page-3step-slides .wpcf7-checkbox input[type="checkbox"] + .wpcf7-list-item-label:hover, 
.wpcf7-form .form-page-3step-slides .wpcf7-checkbox input[type="checkbox"]:checked + .wpcf7-list-item-label {
    background-color: #e14b4f;
}

.wpcf7-form .form-page-3step-slides p:not(.message) {
    margin-bottom: 0;
}
.wpcf7-form .form-page-3step-slides .wpcf7-spinner {
    position: absolute;
    transform: translate(-60px, 50px);
}

.wpcf7-form .form-page-3step-slides input[type=submit] {
    background-color: #253d75;
    border: 0;
    cursor: pointer;
}


/*@media screen and (min-width: 768px) and (max-width: 1040px) {
    .elementor-top-section .elementor-widget-wrap .form-card {
        margin-bottom: -160px;
    }
}*/
@media screen and (max-width: 1080px){
    
    .form-card .form-card--header {
        font-size: 16px;
        line-height: 20px;
    }
    .form-card .form-card--body {
        padding: 15px;
    }
    .form-card .message {
        font-size: 18px;
        line-height: 24px;
    }
    .questions-numbered-block {
        font-size: 16px;
        line-height: 24px;
    }
    .wpcf7-form .form-page-slides .wpcf7-checkbox input[type="checkbox"] + .wpcf7-list-item-label {
        font-size: 16px;
        line-height: 22px;
    }
}


@media screen and (max-width: 768px){ 
    .form-card {
        margin-left: auto;
        margin-right: auto;
    }
}

.form-page-slides.popup-form {
    /*padding: 0 4%;*/
}

.form-page-slides.popup-form .slider-1 span.wpcf7-list-item-label,
.form-page-slides.popup-form .slider-2 span.wpcf7-list-item-label, 
.form-page-slides.popup-form .slider-3 span.wpcf7-list-item-label {
    margin-bottom: 14px;
    
}

@media (min-width: 768px) {
    .form-page-slides.popup-form .wpcf7-form-control.wpcf7-radio.choose-elements,
    .form-page-slides.popup-form .wpcf7-form-control.wpcf7-radio.wider-choose-elements,
    .form-page-slides.popup-form .wpcf7-form-control.wpcf7-radio.odd-choose-elements{
        display: flex;
        flex-wrap: wrap;
        gap: 1%;
        justify-content: center;
    }
    .form-page-slides.popup-form span.wpcf7-list-item {
        width: 32.333333%;
        margin: 0;
        min-width: 32.333333%;
    }
    .form-page-slides.popup-form div#slider-4 .slider-4-inner {
        display: flex;
        flex-wrap: wrap;
        gap: 2%;
    }
    .form-page-slides.popup-form div#slider-4 .slider-4-inner .message {
        width: 100%;
    }
    .form-page-slides.popup-form div#slider-4 .slider-4-inner .label-row {
        width: 49%;
    }
    
    .form-page-slides.popup-form  div#slider-4 .slider-4-inner .action-box {
        width:100%
    }
    .form-page-slides.popup-form  div#slider-4 .slider-4-inner .action-box .wpcf7-spinner {
        display: none;
    }

}
@media (max-width: 767px) {    
    .form-page-slides.popup-form span.wpcf7-list-item {
        width: 100%;
        margin: 0;
        min-width: 50%;
    }
    .form-page-slides.popup-form span.wpcf7-list-item:nth-child(odd) {
        padding-right: 0;
    }
    .form-page-slides.popup-form span.wpcf7-list-item:nth-child(even) {
        padding-left: 0;
    }
    }


.form-page-slides.popup-form  .message {
    font-size: 18px;
    color: #fff;
    font-weight: bold;
}

.form-page-slides.popup-form .slider-4 label {
    margin-bottom: 12px;
}
.form-page-slides.popup-form .popup-step-message {
    color: #fff;
    font-size: 20px;
    font-weight: 400;
    margin-bottom: 10px;
}
.form-page-slides.popup-form  .label-req {
    color: #fff;
    font-weight: 400;
    margin-bottom: 6px;
    font-size: 16px
}
.form-page-slides.popup-form  .label-req span {
    color: #e14b4f;
    font-size: 22px;
}

.form-page-slides.popup-form .label-row p {
    margin: 0;
}

.form-page-slides.popup-form .slider-4 .label-row input {
    font-size: .8rem;
}
.form-page-slides.popup-form  div#slider-4 .slider-4-inner .action-box {
    margin-bottom: 20px;
}
.form-page-slides.popup-form  div#slider-4 .slider-4-inner .action-box input {
    background-image: none;
    text-align: center;
}

/* Feb 2023 */

section.hero-section.nopad .elementor-widget-wrap.elementor-element-populated {
    padding: 0 !important;
}
.shortcode-hero-form form .slide p {
    margin: 0;
}
.shortcode-hero-form form .slide p .wpcf7-list-item {
    margin: 0 0 14px 0;
    width: 48%;
}

.shortcode-hero-form form > p.message {
    font-weight: 700;
}

.shortcode-hero-form form .slide p span.wpcf7-list-item:nth-child(n+5) {
    margin: 0;
}

.shortcode-hero-form form .slide span.wpcf7-form-control.wpcf7-radio {
    display: flex;
    flex-wrap: wrap;
    /*gap: 4%;*/ /* flex gap not supported in older browsers */
}

/* Older browsers do not support flex gap */
.shortcode-hero-form form .slide p .wpcf7-list-item:nth-child(odd) {
    margin-right: 4% !important;
}


@media (max-width: 767px) {
    .smaller-mobile-hero picture, .smaller-mobile-hero img {
        max-width: 280px;
        display: block;
        margin: 0 auto;
    }
    .mobile-ic-styles .image-card-section picture.logo-image img, .image-card-section .logo-image {
        max-height: 30px;
        margin-bottom: 0;
    }
    .mobile-ic-styles .image-card-section .card-title {
        font-size: 23px;
        font-weight: 600;
        line-height: 1.2;
        margin-top: 0;
    }
    .card-list .card--header {
        padding: 8px 25px 8px 15px;
    }
}
@media (max-width: 450px) {
    .shortcode-hero-form.prefooter-form .wpcf7-radio input[type="radio"] + .wpcf7-list-item-label {
        font-size: 15px;
        padding: 7px 2px;
    }
    .hero-section .wpcf7-form .form-page-slides .wpcf7-radio input[type="radio"] + .wpcf7-list-item-label {
        /*font-size: 15px;*/
        padding: 7px 2px;
    }
    .mobile-ic-styles a.button,
    .mobile-ic-styles .image-card-section a.button {
        width: 100%;
    }
}

.shortcode-hero-form form .slide[data-id="3"] input.wpcf7-form-control.wpcf7-text {
    padding: 6px 10px;
    margin-bottom: 12px;
    border: 1px solid rgba(0,0,0,.3);
    font-size: 16px
}

.shortcode-hero-form form .wpcf7-spinner {
    position: absolute;
    margin: 0;
}

.upward-arrow a.button::after {
    transform: rotate(270deg) translate(50%);
    top: 50%;
}
.elementor-widget-image-card-section-custom.upward-arrow a.button.call-to-action::after {
    transform: rotate(270deg) translate(50%);
    top: 50%;
}

.newstagecard {
    height: 100%;
}

.newstagecard .elementor-widget-container {
    height: 100%;
}

.newstagecard .card-list {
    filter: drop-shadow(0px 6px 12px rgba(62,91,156,0.2));
    display: flex;
    flex-direction: column;
    height: 100%;
}
.newstagecard .card-list .card--body ul li {
    line-height: 28px;
    margin-bottom: 12px;
}

.newstagecard .card-list .card--body {
    padding: 12px 20px 12px 20px;
}

.button.primary {
    padding-right: 50px;
    text-align: left;
}
.button.primary::after {
    content: " ";
    width: 20px;
    height: 20px;
    display: inline-block;
    vertical-align: middle;
    background-image: url(./images/action-arrow.png);
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    margin-left: 50px;
    position: absolute;
    right: 20px;
    top: 50%;
    transform: translateY(-50%);
}
.mobile-ic-styles a.button {
    font-size: 20px;
}
.mobile-ic-styles .image-card-section .logo-image {
    margin-top: 12px;
    margin-bottom: 16px;
}
.mobile-ic-styles .image-card-section .card-title {
    margin-bottom: 30px;
}
.mobile-ic-styles .image-card-section a.button {
    margin-bottom: 6px;
}

@media (max-width: 767px) {
    .herofullwidthform {
        margin-left: -10px;
        margin-right: -10px;
        width: calc(100% + 20px);
    }

    section.mobilefullwidth {

    }
    section.mobilefullwidth .elementor-widget-wrap {
        padding: 0 !important;
    }

    section.mobilefullwidth .image-card-section .container .row > div {
        padding: 0;
    }

    .imagecard-hide-image .image-card-section .container .row > div:first-child {
        display: none;
    }

    section.mobilefullwidth-col1 .elementor-column:nth-child(1) .elementor-widget-wrap {
        padding: 0;
    }
    section.mobilefullwidth-col2 .elementor-column:nth-child(2) .elementor-widget-wrap {
        padding: 0;
    }
    .mobile-ic-styles .image-card-section .logo-image {
        height: 30px;
    }
    .mobile-ic-styles .image-card-section a.button {
        margin-bottom: 0;
    }
    .mobile-ic-styles .card-list .card--header {
        padding: 10px 15px;
    }
    .mobile-ic-styles .image-card-section .content-box {
        padding: 20px 20px 20px 20px;
        border-radius: 0;
    }
    .mobile-ic-styles .image-card-section .image-box {
        padding-top: 64%;
    }
}

ul.pill-ul {
    list-style-type: none;
    padding: 0;
    display: flex;
    gap: 1rem;
    flex-wrap: wrap;
    margin-top: 20px;
}
ul.pill-ul li {
    border: 2px solid #5ab8c0;
    border-radius: 20px;
    padding: 4px 12px;
    font-weight: 300;
    margin-bottom: 0;
}

/* Opt in checkbox */

/* Opt in checkbox - staging */
.opt-in-wrapper .wpcf7-list-item label {
    position: relative;
    display: inline-block;
    cursor: pointer;
    padding-left: 30px; /* Adjust as needed */
    margin-right: 15px; /* Adjust as needed */
    line-height: 20px; /* Adjust as needed */
    width: 100%;
}

/* Hide the default checkbox */
.opt-in-wrapper .wpcf7-list-item input[type="checkbox"] {
    display: none;
}

/* Create the custom checkbox */
.opt-in-wrapper .wpcf7-list-item input[type="checkbox"] + span::before {
    content: '';
    position: absolute;
    top: 0;
    top: 4px; /* Add top margin */
    left: 0;
    width: 20px; /* Width */
    height: 20px; /* Height */
    border: 1px solid #ccc; /* Border color */
    background-color: #fff; /* Background color */
    box-shadow: inset 0 0 5px rgba(0, 0, 0, 0.3); /* Inner shadow */
}

/* Style the checked state */
.opt-in-wrapper .wpcf7-list-item input[type="checkbox"]:checked + span::before {
    background-color: #5ab8c0; /* Change to desired color */
    border-color: #5ab8c0; /* Change to desired color */
}

/* Create the checkmark */
.opt-in-wrapper .wpcf7-list-item input[type="checkbox"] + span::after {
    content: '\2714'; /* Unicode checkmark symbol */
    position: absolute;
    top: 13px;
    left: 10px;
    transform: translate(-50%, -50%);
    font-size: 14px; /* Adjust size */
    color: #fff; /* Checkmark color */
    opacity: 0; /* Initially hidden */
    transition: opacity 0.2s ease-in-out;
}

/* Show the checkmark for checked state */
.opt-in-wrapper .wpcf7-list-item input[type="checkbox"]:checked + span::after {
    opacity: 1;
}


.opt-in-wrapper span.wpcf7-list-item-label {
    background-color: transparent !important;
    color: #333 !important;
    padding: 0 !important;
    text-align: left !important;
	font-size: 16px !important;
    line-height: 1.3 !important;
}

.opt-in-wrapper span {
    width: 100% !important;
}

#header-form-1 .wpcf7-response-output, 
#header-form-1 .wpcf7 form.unaccepted .wpcf7-response-output, 
#header-form-1 .wpcf7 form.payment-required .wpcf7-response-output,
#header-form-3step .wpcf7-response-output, 
#header-form-3step .wpcf7 form.unaccepted .wpcf7-response-output, 
#header-form-3step .wpcf7 form.payment-required .wpcf7-response-output {
    background-color: #e14b4f;
    color: #ffffff;
    border: 0;
    margin: 10px 0 0 0;
    font-weight: 500;
}

/* jQuery form field validation styles */
#landing-page-sidebar-form .wpcf7-not-valid-tip {
    color: #fff;
    background-color: #dc3232;
    font-size: 12px;
    line-height: 2;
    margin-top: 4px;
    padding-left: 4px;
}

.wpcf7-not-valid-tip {
    display: none !important;
}

.wpcf7-form label.error {
    color: #fff;
    background-color: #dc3232;
    font-size: 12px;
    line-height: 2;
    padding-left: 4px;
    font-weight: 500;
}

form#landing-page-sidebar-form.invalid .wpcf7-response-output {
    color: #fff;
    background-color: #dc3232;
    font-size: 14px;
    line-height: 2;
    margin-top: 4px;
    border: 0;
    margin-left: 0;
    margin-right: 0;
    padding-left: 8px;
}

form#landing-page-sidebar-form .wpcf7-form-control-wrap.valid:after,
form#landing-page-inpage-mobile-form .wpcf7-form-control-wrap.valid:after {
	content: "\2713";
    position: absolute;
    right: 6px;
    top: 2px;
    width: 26px;
    height: 26px;
    display: flex;
    background-color: #5ab8c0;
    color: #fff;
    justify-content: center;
    align-items: center;
    border-radius: 100%;
    margin-top: -4px;
}