.form__row {
    position: relative;
    margin-bottom: 1rem;
    display: flex;
    flex-wrap: wrap;
    grid-gap: 0;
}

.form__row .wpcf7-form-control-wrap {
    width: 100%;
}

.form__row .form__input {
    display: block;
    width: 100%;
    box-shadow: unset;
    border: 1px solid transparent;;
    color: gray;
    padding: 0.5rem 1rem;
}

.form__row textarea{
    resize: none;
    max-height: 100px;
    height: 100px;
    min-height: auto;
}

.form__row select {
    line-height: 1rem;
    width: 100%;
    background-color: #fff;
    border: 0;
    box-shadow: none;
    padding: 0.5rem 1rem;
    border-radius: 0.5rem;
    height: 50px;
    background: white;
    background-color: white;
    background-position-x: 0%;
    background-position-y: 0%;
    background-repeat: repeat;
    background-image: none;
    background-image: url("data:image/svg+xml;utf8,<svg fill='grey' height='24' viewBox='0 0 24 24' width='24' xmlns='http://www.w3.org/2000/svg'><path d='M7 10l5 5 5-5z'/><path d='M0 0h24v24H0z' fill='none'/></svg>");
    background-repeat: no-repeat;
    background-position-x: 97%;
    background-position-y: 50%;
    -webkit-appearance: none;
    -moz-appearance: none;
}

.form__row .form__text{
    font-size: 0.8rem; 
    padding: 0; 
    margin: 0 0 1rem 0; 
    font-weight: 600; 
    text-transform: uppercase; 
    color: #62b445; 
    line-height: 1rem;
    width: 100%;
}

.form__row input[type="date"]{
    line-height: 1rem;
    width: 100%;
    box-shadow: none;
    border-radius: 0.5rem;
    padding: 0.5rem 1rem;
    height: 50px;
}

.form__row .wpcf7-acceptance .wpcf7-list-item-label {
    font-size: 0.8rem;
}

.form__row .form__button {
    padding: 0.5rem;
    background: #0055a4;
    color: #fff;
    border: none;
    cursor: pointer;
    min-width: 150px;
    text-align: center;
    border-radius: 0.5rem;
    position: relative;
    overflow: hidden;
    transition: transform 0.3s ease-in-out;
    width: 100%;
}


/* TWO COLUMNS*/
.form__row--split .wpcf7-form-control-wrap:first-of-type{
    width: 50%;
    padding: 0 0.5rem 0 0;
}
.form__row--split .wpcf7-form-control-wrap:last-of-type{
    width: 50%;
    padding: 0 0 0 0.5rem;
}

/* HOVERS FOCUS & OTHERS */
.form__row input:focus, 
.form__row select:focus,
.form__row textarea:focus{
    outline: none;
}

/* VALIDATIONS */
.form__row input:invalid, 
.form__row select:invalid,      
form.wpcf7-form input.input_valid_error {
    border: solid #ff6e6e 1px;
    background-color: #fdd;
}

/* INPUT TEL */
section .row .iti__flag-container ul li{
    background: none;
    padding: 0.5rem;
    font-size: 0.8rem;
    line-height: 1rem;
}

section .row ul.iti__country-list{
    list-style: none;
    padding: 0;
}

section .row .iti__flag-container ul li:hover   {
    background-color: rgba(0,0,0,.05);
}


.wpcf7-list-item {
    display: inline-block;
    margin: 0;
}

.form__row .wpcf7-not-valid-tip {
    position: absolute;
    bottom: 0px;
    left: 1rem;
    border-bottom: 1px solid #ff6e6e;
    border-radius: 0;
    width: calc(100% - 2rem);
    font-size: 0.6rem;
    line-height: 0.7rem;
    text-align: left;
    padding: 0 5px;
}

.form__row .wpcf7-not-valid-tip {
    color: #ff6e6e;
}

.wpcf7-spinner  {
    position: relative;
    margin: 0 auto;
    background-color: #0055a4;
}

.wpcf7 form .wpcf7-response-output{
    margin: 0 0 2rem 0;
    padding: 1rem;
    text-align: center;
}

.wpcf7 form.invalid .wpcf7-response-output{
    border: solid #ff6e6e 1px;
    background-color: #fdd;
}

.wpcf7 form.sent .wpcf7-response-output{
    border: 1px solid #62b445;
    background-color: #eff7ec;
}

.submitting .wpcf7-spinner{
    display: block;
}

.submitting .form__button{
    display: none;
}

@media (max-width: 768px){
    .form__row--split .wpcf7-form-control-wrap,
    .form__row--split .wpcf7-form-control-wrap:first-of-type,
    .form__row--split .wpcf7-form-control-wrap:last-of-type{
        margin: 0 0 1rem 0;
        display: block;
        width: 100%;
        padding: 0;
    }
    .form__row--split .wpcf7-form-control-wrap:last-of-type{
        margin: 0;
    }

    .form__button   {
        width: 100%;
        padding: 0.5rem;
    }
}

/* GRAVITY FORM */
.gform_wrapper {
    margin: 3rem 0 !important;
}

.gform_wrapper .gf_progressbar_wrapper  {
    margin: 0!important;
    padding: 0!important;
}

.gform_wrapper .gf_progressbar_wrapper h3.gf_progressbar_title  {
    font-size: 0.7rem !important;
    margin: 0 auto !important;
}

.gform_wrapper .gf_progressbar  {
    margin: 0 0 2rem 0 !important;
}

.gform_wrapper .gf_progressbar_percentage {
    text-align: center !important;
}

.gform_wrapper .gf_progressbar_percentage span {
    float: unset !important;
    margin: 0 !important;
    line-height: 24px !important;
}

.gform_wrapper .gfield{
    padding-bottom: 1rem !important;
}

.gform_wrapper .gfield_description {
    padding: 0.5rem !important;
}

.gform_wrapper .assessment .gfield_label {
    padding: 0.5rem !important;
}

.gform_wrapper .assessment .gfield_radio li {
    grid-gap: 1rem;
    border: solid #3a81c81f 1px;
    padding: 1.5rem 1rem !important;
}

.gform_wrapper .assessment .gfield_checkbox li {
    padding: 1rem !important;
    grid-gap: 1rem !important;
}

.gform_wrapper .assessment .gfield_radio label,
.gform_wrapper .assessment .gfield_checkbox label {
    font-size: 0.9rem !important;
    font-family: "Rubik", sans-serif !important;
    font-weight: 300 !important;
}

.gform_wrapper .assessment .gfield_radio label:hover {
    text-decoration: none;
}

.gform_wrapper .gform_next_button, 
.gform_wrapper .gform_previous_button {
    padding: 0.5rem 2.5rem !important;
    border-radius: 0.5rem !important;
}

.gform_wrapper .gform_body .ginput_container input[type="text"]{
    border: solid #3a81c81f 1px;
    padding: 0.5rem 1rem !important;
    background-color: #f8f8f8;
    outline: none;
    color: #000; 
}

.gform_wrapper .gform_body .ginput_container input[type="text"].input_valid_error {
    border: solid #ff6e6e 1px;
    background-color: #fdd;
}

.gform_wrapper .gform_body .ginput_container_phone input[type="text"] {
    padding-left: 70px !important;
}

.gform_wrapper .field_sublabel_hidden_label .ginput_complex.ginput_container input[type="text"], 
.gform_wrapper .field_sublabel_hidden_label .ginput_complex.ginput_container select {
    margin: 0!important;
}

.gform_wrapper .field_description_below .gfield_consent_description, .gform_wrapper .gfield_consent_description {
    font-size: .7rem !important;
    line-height: 1rem !important;
}

.gform_wrapper .h2-surv {
    line-height: 1.5rem !important;
    font-size: 1.5rem;
    margin: 0;
    padding: 0;
}

.gform_wrapper ul.gform_fields {
    padding: 0 0.5rem !important;
}

.gform_wrapper ul.gform_fields li.gfield .small-info p {
    font-size: 0.7rem;
    color: #727272 !important;
    line-height: 1rem;
    margin: 0 0 0.5rem 0;
}

.gform_wrapper ul.gform_fields li.gfield .small-info ul  {
    padding: 0;
}

.gform_wrapper ul.gform_fields li.gfield .small-info ul li {
    font-size: 0.7rem;
    color: #727272 !important;
    line-height: 1rem;
    margin: 0 !important;
}

.gform_wrapper div.validation_error {
    color: #fff !important;
    font-weight: 400 !important;
    border-top: 0 !important;
    border-bottom: 0 !important;
    background-color: #ff5676;
    font-size: 0.8rem !important;
    border-radius: 5px;
    margin: 0 0 2rem 0 !important;
    padding: 1rem !important;
}

.gform_wrapper li.gfield.gfield_error, 
.gform_wrapper li.gfield.gfield_error.gfield_contains_required.gfield_creditcard_warning {
    background-color: transparent !important;
    margin-bottom: 0 !important;
    border-top: 0 !important;
    border-bottom: 0 !important;
    padding-bottom: 0 !important;
    padding-top: 0 !important;
}

.gform_wrapper li.gfield_error input:not([type="radio"]):not([type="checkbox"]):not([type="submit"]):not([type="button"]):not([type="image"]):not([type="file"]), 
.gform_wrapper li.gfield_error textarea {
    border: solid #ff6e6e 1px !important;
    background-color: #fdd !important;
}

.gform_wrapper .validation_message {
    color: #ff5676 !important;
    font-weight: 600 !important;
    padding: 0 !important;
}

body .gform_wrapper ul li.field_description_below div.ginput_container_checkbox, 
body .gform_wrapper ul li.field_description_below div.ginput_container_radio {
    margin: 0.5rem;
}

.gform_wrapper .gform_footer input[type="submit"],  
.gform_wrapper .gform_page_footer input[type="submit"] {
    padding: 1rem 2.5rem;
}

.gform_wrapper .gform_page_footer {
    position: relative;
}

.gform_wrapper .gform_ajax_spinner {
    padding: 0 !important;
    display: block;
    position: absolute;
    top: -16px;
    left: 50%;
    margin: 0 0 0 -8px;
}



@media (max-width: 768px){

    .gform_wrapper {
        margin: 1rem 0 !important;
    }

    .gform_wrapper ul.gform_fields {
        padding: 0 !important;
    }

    body .gform_wrapper ul li.field_description_below div.ginput_container_checkbox, 
    body .gform_wrapper ul li.field_description_below div.ginput_container_radio {
        margin: 0;
    }

    .gform_wrapper .assessment .gfield_radio {
        grid-gap: 0;
        margin: 1rem 0;
    }

    .gform_wrapper .assessment .gfield_label {
        padding: 0.5rem 0 !important;
    }

    .gform_wrapper .gform_next_button, 
    .gform_wrapper .gform_previous_button {
        min-width: 135px !important;
        padding: 0.5rem 0.5rem !important;
    }

    .gform_wrapper .gf_progressbar_percentage span {
        font-size: 12px !important;
    }

    .gform_wrapper .gf_progressbar_wrapper h3.gf_progressbar_title {
        margin: 0 !important;
    }

    .gform_wrapper .gf_progressbar {
        padding: 10px 0 !important;
    }    

}

