#loader {display: none; position: absolute; left: 50%; top: 50%; z-index: 1; width: 30px; height: 30px; transform: translate(-50%, -50%); border: 5px solid #f3f3f3; border-radius: 50%; border-top: 5px solid #3498db; -webkit-animation: spin 2s linear infinite; animation: spin 2s linear infinite; transition: 0.3s; opacity: 1;}
@-webkit-keyframes spin { 0% { -webkit-transform: rotate(0deg); } 100% { -webkit-transform: rotate(360deg); }}
@keyframes spin { 0% { transform: rotate(0deg); } 100% { transform: rotate(360deg); }}

.form-wrapper {position: relative;}

#contactform {display: flex; flex-wrap: wrap; justify-content: space-between;}
#contactform input,#contactform textarea {background: none;outline: 0;border: 0;width: 100%;box-sizing: border-box;padding: 18px 0 13px;display: inline-block;font-size: 14px;color: #000;font-family: inherit;transition: 0.3s;}
.form-field {position: relative; margin-bottom: 15px; width: 48%; padding-top: 0px; border-bottom: 1px solid #025D8830; transition: 0.3s;}
.form-field label {position: absolute;top: 50%;transform: translateY(-50%);left: 0px;user-select: none;pointer-events: none;opacity: 0.3;font-size: 20px;transition: 0.3s; color: #025D88;}
.form-field.active-focus {border-bottom: 1px solid #025D88; }
.form-field.active-focus label {opacity: 1;top: 0px; font-size: 12px; opacity: 1;}
.form-field textarea {resize: none; border: none; height: 51px; overflow: auto;}
.form-field.full {width: 100%;}

label {color: #025D88;}

.form-field input:-webkit-autofill,
.form-field input:-webkit-autofill:hover,
.form-field input:-webkit-autofill:focus {background: #fff!important;}
.form-field input:-webkit-autofill,
.form-field input:-webkit-autofill:focus {
    transition: background-color 600000s 0s, color 600000s 0s;
}
.form-field input[data-autocompleted] {
    background-color: transparent !important;
}

#contactform .grid {margin-top: 40px;}
#contactform .grid h6 {margin-bottom: 10px; display: block; font-size: 12px; grid-column: span 2;}

#contactform .flex-row {width: 100%;}
#contactform .check-label {display: flex;align-items: center;padding: 10px 15px 10px 50px;line-height: 1;justify-content: flex-start;user-select: none;position: relative; font-size: 14px;}
#contactform .check-label input {width: 21px;position: absolute;top: 50%;left: 0px;transform: translateY(-50%);cursor: pointer;border: 1px solid #025D88;overflow: hidden;border-radius: 4px;overflow: hidden;-webkit-appearance: none;height: 21px;padding: 0;transition: 0.3s;background: #fff;}
#contactform .check-label input:checked {background: #0395da;border: 1px solid #fff0;}

#contactform .check-label input::before {content: '';display: block;position: relative;width: 5px;height: 3px;transform: rotate(45deg);background: #000;right: -3px;top: -15px;transition: 0.3s;}
#contactform .check-label input::after {content: '';display: block;position: relative;width: 15px;height: 3px;transform: rotate(-45deg);background: #000;right: -4px;top: -15px;transition: 0.3s;}
#contactform .check-label input:checked::before {top: 12px;background: #fff;}
#contactform .check-label input:checked::after {top: 6px;background: #fff;}

.highlight_message p {color: #61161f!important;text-align: center!important;padding: 15px;background-color: #fdd!important;border-radius: 10px;border: 1px solid #f1b7bf;width: 300px!important; margin: 0 auto 25px!important;font-size: 19px;}
.success-message p {width: auto; text-align: center; padding: 15px; margin: 0 auto 50px; background: #2dd284 !important; border-radius: 15px; color: #fff !important; border: 1px solid #2dd284 !important; display: block; font-size: 15px;}
.form-field-missing {border-bottom: 1px solid #f1b7bf!important; }
