/* Base Eloqua Form Styles */
.eloqua-form {
    font-size: 1em;
}

@media screen and (max-width: 479px) {
    .eloqua-form {
        font-size: .85em;
    }
}

.eloqua-form * {
    box-sizing: border-box;
}

/* Form Layout */
.eloqua-form .form_group.form-row {
    display: flex;
    margin: 0;
    width: 100%;
    align-items: flex-end;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: space-between;
}

@media screen and (max-width: 767px) {
    .eloqua-form .form_group.form-row {
        flex-direction: row;
    }
}

/* Form Fields */
.eloqua-form .form_field {
    align-self: flex-start;
    display: flex;
    flex-flow: column wrap;
    flex: 1 0 240px;
    transition: all .2s ease 210ms;
    padding: 8px;
}

.eloqua-form .form_field label.field_label,
.eloqua-form .form_field span.radio_label {
    border: none;
    color: #33333e;
    display: inline-block;
    font-family: inherit;
    font-size: 12px;
    font-weight: 400;
    line-height: 24px;
    margin: 0;
    margin-bottom: 2px;
    order: 1;
    padding: 4px;
    text-align: left;
    text-decoration: none;
}

.eloqua-form .form_field input,
.eloqua-form .form_field select,
.eloqua-form .form_field textarea {
    background-color: #fff;
    border: 1px solid #e0e0e0;
    border-radius: 8px;
    color: #33333e;
    display: block;
    flex: 1 1 auto;
    font-size: 1em;
    height: 48px;
    margin: 0;
    min-width: 100px;
    padding: 9px 16px;
    order: 2;
    transition: background-position .8s ease, border .5s ease;
}

/* Custom Form Container Style */
.FormContainer {
    background-color: #DBE5FF;
    color: #001344;
    padding: 2.5rem 1.8rem;
    border-radius: 12px;
    /* box-shadow: 0 5px 10px 0 rgba(38, 46, 59, 0.15); */
}

@media(min-width: 481px) {
    .FormContainer {
        padding: 3.5rem;
        position: relative;
        z-index: 2;
    }
}

/* Custom Field Style */
.field_input {
    border-radius: 8px;
    -webkit-border-radius: 8px;
    -moz-border-radius: 8px;
    -ms-border-radius: 8px;
    -o-border-radius: 8px;
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    background-clip: padding-box;
    -webkit-background-clip: padding-box;
}

/* Custom Check V Symbol in Privacy Policy */

input[type="checkbox"]:checked+span:after, input:checked[type="radio"]+span:after {
    background-color: #fff;
    box-shadow: none;
    content: '';
    height: 0px;
    position: absolute;
    left: 5px;
    top: 9px;
    transform: rotate(45deg);
    width: 0px;
}

/* Custom Asterisk Color */
.eloqua-form .form_field.is-required:not(.form_field--checkbox) label:not(.radio_item)::after, 
.eloqua-form .form_field--checkbox.is-required label:not(.radio_item) span.elq-checkbox__reqmark::after {
    color: #0500FF;
}

/* Custom Field Background Color */
.field_input, 
input[type="text"], 
select {
    background-color: #fff !important;
}

.field_input:focus, 
input[type="text"]:focus, 
select:focus { 
    background-color: #fff !important;
}

input:not([type="submit"]):not([type="button"]):-webkit-autofill, 
input:not([type="submit"]):not([type="button"]):-webkit-autofill:hover, 
input:not([type="submit"]):not([type="button"]):-webkit-autofill:focus, 
input:not([type="submit"]):not([type="button"]):-webkit-autofill:active { 
    -webkit-box-shadow: 0 0 0 30px white inset !important; 
    transition: 5000s ease-in-out 0s;
}

/* Error Handling */
.eloqua-form .form_field .field_error {
    background-color: transparent;
    color: #b00;
    flex: 0 0 100%;
    font-size: .8em;
    height: 0;
    line-height: 1.25em;
    margin: 0;
    padding-top: 5px;
    order: 4;
    text-align: right;
    transition: all 320ms ease;
}

.eloqua-form .form_field.has-error input,
.eloqua-form .form_field.has-error input.field_input,
.eloqua-form .form_field.has-error select,
.eloqua-form .form_field.has-error textarea {
    border-color: #b00;
}

/* Submit Button */
.eloqua-form .form_group.form-row--submit .eloqua-form-submit {
    display: flex;
    margin: 0;
    width: 100%;
    align-items: flex-end;
    flex-wrap: wrap;
    justify-content: center;
    padding: 8px;
    padding-bottom: 8px;
    padding-top: 12px;
    flex-direction: row;
}

.eloqua-form .form_group.form-row--submit .eloqua-form-submit .form_submit.elq-submit {
    background-color: #0058ff;
    border: 0;
    box-shadow: 0 16px 25px 0 rgba(0, 0, 0, .15);
    color: #fff;
    cursor: pointer;
    font-size: 16px;
    line-height: 1.2em;
    margin-top: 1.5em;
    padding: 1em 2em;
    text-align: center;
    text-decoration: none;
    text-transform: uppercase;
}

.eloqua-form .form_group.form-row--submit .eloqua-form-submit .form_submit.elq-submit:hover {
    background-color: #004fe6;
}

/* Checkbox and Radio Styles */
.eloqua-form .form_field--checkbox label.field_label,
.eloqua-form .form_field--radio label.field_label {
    cursor: pointer;
    display: block;
    width: 100%;
}

.eloqua-form .form_field--checkbox label.field_label input + span,
.eloqua-form .form_field--radio label.field_label input + span {
    color: #33333e;
    font-family: inherit;
    font-size: 12px;
    font-weight: 400;
    margin: 0;
    padding: 0;
    position: relative;
}

.eloqua-form .form_field--checkbox label.field_label input[type=checkbox] + span:before,
.eloqua-form .form_field--checkbox label.field_label input[type=radio] + span:before,
.eloqua-form .form_field--radio label.field_label input[type=checkbox] + span:before,
.eloqua-form .form_field--radio label.field_label input[type=radio] + span:before {
    background-color: #fff;
    border-radius: 6px; 
}

.eloqua-form .form_field--checkbox label.field_label input[type=checkbox]:checked + span:before,
.eloqua-form .form_field--checkbox label.field_label input[type=radio]:checked + span:before,
.eloqua-form .form_field--radio label.field_label input[type=checkbox]:checked + span:before,
.eloqua-form .form_field--radio label.field_label input[type=radio]:checked + span:before {
    background-color: #0058ff;
    box-shadow: inset 0 0 0 1px #fff;
    border-radius: 6px;
    border-width: 2px;
}


/* Select Field Styling */
.eloqua-form .form_field.form_field--select select {
    -moz-appearance: none;
    -webkit-appearance: none;
    appearance: none;
    background-image: url('data:image/svg+xml;utf-8,<svg xmlns="http://www.w3.org/2000/svg" height="312.5" width="312.5"><path d="M98.674 158.004c-31.411-41.316-57.91-76.191-58.884-77.5l-1.773-2.379 12.085.026 12.086.026 46.765 59.037c25.722 32.47 47.01 59.036 47.306 59.036.298 0 21.581-26.565 47.297-59.033l46.756-59.032 12.086-.03 12.085-.03-1.773 2.389c-12.416 16.73-116.099 152.611-116.448 152.611-.262 0-26.176-33.804-57.588-75.12z"/></svg>');
    background-position: right 5% bottom 50%;
    background-size: 20px 50%;
    background-repeat: no-repeat;
    background-origin: padding-box;
    padding-right: 20px;
}

/* Validation Styles */
.eloqua-form .form_field.validation-passed.form_field--select input,
.eloqua-form .form_field.validation-passed.form_field--select select,
.eloqua-form .form_field.validation-passed.form_field--text input,
.eloqua-form .form_field.validation-passed.form_field--text select {
    background: no-repeat right 5px bottom 50%/auto 50% url('data:image/svg+xml;utf8,<svg viewBox="0 0 442.79 410.38" xmlns="http://www.w3.org/2000/svg"><path d="M4.775 245.278L142.933 405.61C213.327 262.118 299.5 130.11 438.013 4.78 334.347 63.275 220.078 174.35 122.467 311.797L4.775 245.277z" fill="%23139e1c" stroke="%23007f00" stroke-width="9.552"/></svg>');
}

.eloqua-form .form_field.has-error.form_field--select input,
.eloqua-form .form_field.has-error.form_field--select input.field_input,
.eloqua-form .form_field.has-error.form_field--select select,
.eloqua-form .form_field.has-error.form_field--text input,
.eloqua-form .form_field.has-error.form_field--text input.field_input,
.eloqua-form .form_field.has-error.form_field--text select {
    background: no-repeat right 5px bottom 50%/auto 50% url('data:image/svg+xml;utf-8,<svg viewBox="0 0 320 320" xmlns="http://www.w3.org/2000/svg"><path d="M100 60l-40 40 170 170 40-40L100 60z" fill="%23e00" fill-rule="evenodd"/><path d="M60 230L230 60l40 40-170 170-40-40z" fill="%23e00" fill-rule="evenodd"/></svg>');
}
