/* Forms */

.form-group{margin-bottom:20px;}
label, .gfield_label_before_complex{font-weight: 700; text-transform: uppercase; font-family: $title; display: block; font-size: 13px; color: $black; text-align:left; margin-bottom:5px;}
.gfield_label_before_complex{border:none;}

/* GFORMS */
.gform_fields, .ginput_container_address{padding:0; list-style:none; margin:0 -15px !important; clear:both;}
.ginput_container_address{padding-top: 10px;}
.gform_heading{margin-bottom: 30px;}
.gform_title{margin-bottom: 10px;}
.gsection:not(:first-child){padding-top: 50px !important;}
h2.gsection_title{font-size: 32px; margin: 0;}
.gform_description{margin:0 0 20px; display:block;}

.gfield, .ginput_container_address > span{ margin:0 0 20px !important; float:left; width:100%; background:none !important; padding:0 15px !important; text-align:left;
    &.half{width: 50%;}
    &.wide{width:100%;}
}

.gfield:before, .gfield li:before{display:none;}
.gfield ul li { background: none; padding: 0; margin:0; list-style:none; }
.gfield_label{
    .section-dark &{color: $red;}
}
.ginput_container label{}
.gfield_description{font-size:12px; margin:-5px 0 10px;}
.hide-label, .hidden_label{
    .gfield_label{display:none;}
}
.screen-reader-text{display: none;}

.form-control, .gfield .small, .gfield .medium, .gfield .large, .gfield select, .ginput_container_address input{width:100%; height:50px; color:$black; background-color:$white; padding:10px 20px; font-weight: 400; font-size: 16px; border:1px solid $border; border-radius:10px; box-shadow:none;  @include transition();
    &:focus{border-color: darken($border,20%); box-shadow:none;}
}
.gfield select, select.form-control{appearance:none; padding-right:40px; background-image:url(images/select-arrow.png); background-repeat:no-repeat; background-position:100% 50%; background-size:auto 7px;}

.gfield{

    select.medium{width:100%;}
    .textarea{height:180px; padding:20px; resize:none;}
    .medium[type=file]{font-size:12px;}

    .gfield_checkbox, .gfield_radio{margin:0;
        li, div{padding-left: 25px; position: relative; margin-bottom: 8px;
            input{margin: 0; position: absolute; top: 3px; left: 0;}
            label{font-weight: 400; font-family: $sans; color: $grey; text-transform: none; font-size: 14px;}
        }
    }

    input.datepicker{background-image:url(images/datepicker-icon.png); background-repeat:no-repeat; background-position:100% 50%; background-size:auto 48px;}

}




.gform_drop_area { margin-bottom: 10px; position:relative; padding: 40px; text-align: center; border: 1px dashed darken($border,10%); border-radius: 10px;
    .button{background: none; color: $grey; border-color: $grey; padding:10px 15px; margin-left: 10px;
        &:hover, &:active, &:focus{background: $grey; color: $white; border-color: $grey;}
    }
}
.ginput_preview{padding-left:18px; padding-bottom:3px; font-size:12px; float:left; width:100%; position:relative;
    &:before{content:"\f00c"; font-family:'Font Awesome 5 Pro'; position:absolute; left:0; top:0; font-size:12px; color:#79c143;}
    strong{float:left; font-weight:400; color:$black; margin-right:5px;}
    img{cursor:pointer; height:10px;}
}
.gform_fileupload_rules{font-size: 12px; margin-top: -5px; display: block;}


.gfield_required{color:$red; padding:0 0 0 3px;}
.gfield_error{
    input, textarea, select, .selector span, .ginput_container_consent label:before{border-color:$red !important; background-color: lighten($red,30%) !important;}
}

.validation_message, .validation_error, .gform_validation_errors{display:none;}
.gform_ajax_spinner{display:none;}
.gform_validation_container{display:none;}
.gform_hidden{display:none;}
.gfield_hidden,.gfield_visibility_hidden{visibility: hidden; height: 0; padding: 0 !important; margin: 0 !important;}
.gform_footer, .gform_page_footer{clear:both; padding:10px 0 0; @extend .clearfix;
    br{display:none;}
}
.gform_page_footer{text-align:right;
    .gform_previous_button{float: left;}
}
.ginput_recaptcha > div{display:inline-block;}
.form-validating{position:relative;
    &:after{content:""; position:absolute; top:0; left:0; right:0; bottom:0; width:100%; height:100%; background:url(images/loading.svg) no-repeat 100% 100%; background-size:50px 50px;}
    form{opacity:0.2;}
}

.ginput_container_consent{
    input{display:none;}
    label{position:relative; font-size:13px; padding-left:30px; display:block; cursor:pointer; color: $black;
        &:before{content:"\f00c"; font-family:'Font Awesome 5 Pro'; font-weight:400; font-size: 12px; position:absolute; left:0; top:-2px; height:20px; width:20px; line-height:60px; text-align:center; background:$white; border: 1px solid $border; color:$black; @include transition(); overflow:hidden; border-radius: 5px;}
        a{text-decoration: underline;}
    }
    input:checked + label:before{line-height:18px;}
    .gfield_required{display: none;}
}

.newsletter{ display: flex; align-items: center; justify-content: space-between;
    &-left{ padding-right: 30px; margin-top: -15px;
        h5{margin: 0;}
    }
    &-right{ max-width: 700px;
        form{display: flex; align-items: center;}
        .gform_fields{display: flex; margin: 0 !important; position: relative; padding-bottom: 20px;
            .gfield{padding: 0 10px 0 0 !important; margin: 0 !important;}
            .ginput_container_email{width: 240px;}
            .gfield_consent{position: absolute; top: 100%; left: 0; width: 100%; margin-top: -10px !important;}
        }
        .gform_footer{flex-shrink: 0; margin-left: 10px; padding: 0; margin-top: -15px;}
    }

    .sidebar &{ flex-direction: column;
        .newsletter-left{text-align: center; margin: 0 0 20px; padding: 0;}
        .newsletter-right{ width: 100%; max-width: none;
            form{flex-direction: column;}
            .gform_fields{flex-direction: column; padding: 0;
                .gfield{padding: 0 0 10px !important;}
                .ginput_container_email{width: 100%;}
                .gfield_consent{position: static; margin: 0 !important;}
            }
            .gform_body{width: 100%;}
            .gform_footer{margin: 10px 0 0;}
        }
    }
}


.form-icon-box{height: 100%; position: relative;
    input{display: none;}
    label{cursor: pointer; border: 1px solid $border; text-align: center; box-shadow: none !important; padding: 30px; border-radius: 10px; text-transform: none;
        .icon-image{height: 65px; line-height: 65px; margin-bottom: 25px;
            img{max-height: 100%; width: auto;}
        }
        h5{font-size: 16px;
            span{display: block; font-size: 125%;}
        }
        &:hover{border-color: $black;}
    }
    input:checked + label{ background: $paleblue; border-color: $black;}
}
