@charset "UTF-8";


/* INPUT LABEL */
form{margin:30px 0 0}

label, input, select, button, textarea{font-size:16px;display:block;font-family: 'Open Sans', sans-serif;}
input, select, textarea{border:none;background:#f1f1f1;padding:10px 0;width:100%;}
label{margin:0 0 5px 0 ;font-size:14px;font-weight:800;letter-spacing:1px;color:#0d4dff;text-transform: uppercase}
input, select{margin:0 0 15px 0;border-radius: none; border:none;border-bottom:3px solid #232f61;background: none}

textarea{border:0;border:none;padding:10px;width:100%;margin-bottom:25px;min-height:100px}
button{text-align: center; background:#f9d900;font-size:15px;padding:15px 30px;border:none;border-radius: 10px; display:inline-block;text-decoration:none!important;font-weight: 800;color:#232f61;-moz-transition:all 0.2s ease-in-out;transition: all 0.2s ease-in-out;margin:20px 0 20px 100px;display: block}

select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:#fff url(../img/form/down-form.svg) no-repeat right 10px center / 15px;border-radius: 0!important;border-bottom:3px solid #232f61;}
select option{margin:5px 0;}
select option:disabled {color:#aaa}


.fileBt {position: relative;overflow: hidden;}
.fileBt .bt{border:5px solid #232f61;border-radius: 10px; line-height:1;padding:10px 15px;width:auto;display:inline-block;cursor:pointer;-webkit-transition: all 0.2s ease;transition: all 0.2s ease;text-align:center;margin:0;}
.fileBt:hover .bt{background:#232f61;color:#fff}

.fileBt input{background:none;padding-left:3px;border:none;text-transform: none}
.fileBt input.upload {position: absolute;top: 0;right: 0;margin: 0;padding: 0;cursor: pointer;opacity: 0;filter: alpha(opacity=0);height:100%;}

/*input::placeholder{opacity: 0}*/
.fileBt input::placeholder{opacity: 1}

form .col.col_6:nth-child(2n+0){margin-right: 0}

/* VALIDATION */

input.valid, textarea.valid{background:#f1f1f1  url(../img/form/input-valid.svg) no-repeat center right ;}
input.error, textarea.error{background: #f1f1f1  url(../img/form/input-invalid.svg) no-repeat center right ;}

.input-submit {
  text-align: center;
  background: #f9d900;
  font-size: 15px;
  padding: 15px 30px;
  border: none;
  border-radius: 10px;
  display: inline-block;
  text-decoration: none !important;
  font-weight: 800;
  color: #232f61;
  -moz-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
  margin: 20px 0 20px 100px;
  display: block
}

.file-error{
  color: red;
}

.success-message {
  margin: 10px 0;
  padding: 10px;
  border-radius: 3px 3px 3px 3px;
  color: #270;
  background-color: #DFF2BF;
}

.error-message {
  margin-top: 10px;
}

.error, .input-error {
  color: red;
  margin-bottom: 20px;
}

.loader {
    display:none;
    border: 4px solid #f3f3f3; /* Light grey */
    border-top: 4px solid #3498db; /* Blue */
    border-radius: 50%;
    width: 30px;
    height: 30px;
    animation: spin 2s linear infinite;
}

.contact-form .row {
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    align-items: center;
    margin:0;
}
.contact-form .row .loader {
    margin-left: 20px;
}

button.disabled {
  pointer-events: none;
  opacity: 0.7;
}

@keyframes spin {
    0% {
        transform: rotate(0deg);
    }
    100% {
        transform: rotate(360deg);
    }
}


@media only screen and (max-width: 768px) {

.Fgroup{width:100%;display:block;margin:0 0 35px 0;}

label{font-size:12px;}

}


@media only screen and (max-width: 480px) {

}
