.elq-jp-contact-form {
    margin-bottom: 0;
    box-shadow: 0 1px 38px #e0e5e9;
    background-color: #fff;
    padding: 50px;
}

.elq-jp-contact-form textarea {
    resize: none;
    padding: 19px 20px 5px;
    color: #333;
    height: auto;
    border: 1px solid #bababa;
    border-radius: 0;
    width: 100%;
}

.elq-jp-contact-form .field-wrapper label,
.elq-jp-contact-form input {
    font-size: 18px;
    transition: 0.3s;
}
.elq-jp-contact-form .field-wrapper label,
.elq-jp-contact-form input,
.small-txt {
    font-family: metropolis, sans-serif;
}
.elq-jp-contact-form input#disableCompanyWebsite {
    width: 24px;
    height: 24px;
    top: 5px;
}
.elq-jp-contact-form #formElement5 .checkbox-wrapper {
    margin-top: -15px;
    margin-bottom: 15px;
}
.elq-jp-contact-form .checkbox-wrapper:has(#disableCompanyWebsite) input[type="checkbox"] + label {
    top: 0;
    left: -30px;
}
.elq-jp-contact-form .field-wrapper label {
    top: 50%;
    color: #bababa;
    font-weight: 300;
    line-height: 26px;
    pointer-events: none;
    position: absolute;
    margin-bottom: 0;
    margin-top: -13px;
    left: 20px;
}
.elq-jp-contact-form .field-wrapper:has(textarea) label {
    top: 26px;
}
.LV_valid {
    display: none;
}
button:disabled,
button[disabled] {
    border: 1px solid #999;
    background-color: #ccc !important;
    color: #666 !important;
    cursor: wait;
}
.small-txt {
    font-size: 14px;
    line-height: 20px;
}
.g-recaptcha .LV_invalid {
    position: static;
}
.elq-jp-contact-form input {
    padding: 19px 20px 5px;
    color: #333;
    height: auto;
    border: 1px solid #bababa;
    border-radius: 0;
    width: 100%;
}
.elq-jp-contact-form .field-wrapper {
    position: relative;
    margin-bottom: 15px;
}
.elq-jp-contact-form .filled + label,
.elq-jp-contact-form input:focus + label,
.elq-jp-contact-form textarea:focus + label {
    top: 10px;
    font-size: 12px;
    color: #333;
    font-weight: 500;
}
.elq-jp-contact-form input[type="checkbox"] + label {
    position: relative;
    margin: 0;
    top: -25px;
    color: #222;
    padding: 0 0 0 40px;
    font-size: 18px;
}
.elq-jp-contact-form input[type="checkbox"] {
    position: relative;
    cursor: pointer;
    width: auto;
    padding: 0;
    border: none !important;
    outline: 0 !important;
}
.elq-jp-contact-form input[type="checkbox"]:before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    width: 24px;
    height: 24px;
    transition: transform 0.28s;
    border: 1px solid #707070;
    background: #fff;
}
.elq-jp-contact-form input[type="checkbox"]:checked:before {
    background-color: #006cb5;
    border: #006cb5;
}
.elq-jp-contact-form input[type="checkbox"]:after {
    content: "";
    display: block;
    width: 10px;
    height: 5px;
    border-bottom: 2px solid #fff;
    border-left: 2px solid #fff;
    -webkit-transform: rotate(-45deg) scale(0);
    transform: rotate(-45deg) scale(0);
    transition: transform 0.25s;
    will-change: transform;
    position: absolute;
    top: 7px;
    left: 6px;
}
.elq-jp-contact-form input[type="checkbox"]:checked:after {
    transform: rotate(-45deg) scale(1);
}
.form-control:focus {
    box-shadow: none;
}
.privacy-checkbox .LV_invalid {
    margin-left: 39px;
    top: -35px;
}
.LV_validation_message {
    font-weight: 700;
    margin: 0 0 0 5px;
}
.LV_valid {
    color: #0c0;
}
.LV_invalid {
    color: #c00;
    font-size: 10px;
    position: relative;
    top: -15px;
}
.LV_valid_field,
input.LV_valid_field:active,
input.LV_valid_field:hover,
textarea.LV_valid_field:active,
textarea.LV_valid_field:hover {
    outline: #00cc00 solid 1px;
}
input[type="checkbox"] {
    outline: 0;
}
.LV_invalid_field,
input.LV_invalid_field:active,
input.LV_invalid_field:hover,
textarea.LV_invalid_field:active,
textarea.LV_invalid_field:hover {
    outline: #cc0000 solid 1px;
}

@media only screen and (max-width: 767px) {
    .elq-jp-contact-form {
        padding: 20px 17px;
    }
}