
.wpcf7 form h4 {
    color:#fff;
    font-family:"Montserrat"
}

.wpcf7 form h4:not(:first-of-type) {
    margin-top:40px;
}

.wpcf7 form .two-cols p, .wpcf7 form .three-cols p {
    display:flex;
    margin:0 -20px;
}

.wpcf7 form .two-cols p label.half-width{
    width:50%;
    margin:0 20px;
    display:inline-block;
}

.wpcf7 form .three-cols p .large-col {
    flex:1 0 40%;
    margin:0 20px;
}
.wpcf7 form .three-cols p .medium-col {
    flex:1 0 20%;
    margin:0 20px;
}
.wpcf7 form .three-cols p .small-col {
    flex: 1 0 120px;
    margin:0 20px;
}



.wpcf7 form input:not(.wpcf7-file), .wpcf7 form select{
    border: 2px solid #fff!important;
}
.wpcf7 form input.wpcf7-not-valid:not(.wpcf7-file), .wpcf7 form select.wpcf7-not-valid {
    border: 2px solid #f00!important;
}
.wpcf7 form .wpcf7-not-valid-tip{
    display:none;
}

.wpcf7 form .wpcf7-file.wpcf7-not-valid::file-selector-button{
    background:#f00;

}

.wpcf7 form .wpcf7-spinner {
    position:absolute;
    transform:translateY(26px) translateX(-133px);
}

@media screen and (max-width:767px) {
    .wpcf7 form .two-cols p, .wpcf7 form .three-cols p {
        flex-wrap:wrap;
    }
    .wpcf7 form .two-cols p label.half-width{
        width:100%;
    }
        
    .wpcf7 form .three-cols p .large-col {
        flex:1 0 calc(100% - 40px);
    }
    .wpcf7 form .three-cols p .medium-col {
        flex:1 0 calc(100% - 40px);
    }
    .wpcf7 form .three-cols p .small-col {
        flex:1 0 calc(100% - 40px);
    }
    .wpcf7 form .wpcf7-form-control.wpcf7-submit {
        width:100%;
    }
        
    .wpcf7 form .wpcf7-spinner {
        margin:0;
        right:50%;
        transform:translateY(26px) translateX(50%);
    }
    
}