label {
    margin: 0 0 5px;
}

/*
.powermail_form,
.form-bg {
    background-color: #CCC3A7;
    padding: 30px;
    margin-bottom: 30px;
}
*/

.powermail_fieldwrap {
    margin-bottom: 15px;
}

.tx-powermail .container-fluid {
    padding: 0;
}

.powermail_form h3 {
    margin-bottom: 40px;
}

.form-bg input[type="text"],
.form-bg input[type="email"],
.form-bg textarea,
.form-bg select,
.powermail_form input[type="text"],
.powermail_form input[type="email"],
.powermail_form textarea,
.powermail_form select {
    border: 1px solid #F1EFE7;
    padding: 10px 10px;
    width: 100%;
}

.form-bg input[type="text"].invalid,
.form-bg textarea.invalid,
.form-bg select.invalid,
.powermail_form input[type="text"].invalid,
.powermail_form textarea.invalid,
.powermail_form select.invalid {
    border: 1px solid #F24646;
}

.powermail_form input[type="submit"] {
    margin-top: 20px;
}

.powermail_fieldwrap_type_check {
    padding-top: 30px;
}

.checkbox input[type="checkbox"],
.radio input[type="radio"] {
    opacity: 0;
    position: absolute;
    z-index: -1;
}

.checkbox input[type="checkbox"] + label,
.radio input[type="radio"] + label {
    padding-left: 50px;
    padding-top: 4px;
    position: relative;
    cursor: pointer;
}

.radio input[type="radio"] + label {
    padding-top: 1px;
    padding-left: 38px;
}

.checkbox input[type="checkbox"] + label::before,
.radio input[type="radio"] + label::before {
    content: ' ';
    display: block;
    width: 28px;
    height: 28px;
    border: 1px solid #F1EFE7;
    background-color: #FFF;
    position: absolute;
    left: 0;
    top: 0;
}

.radio input[type="radio"] + label::before {
    border-radius: 100%;
}

.checkbox input[type="checkbox"]:checked + label::before,
.radio input[type="radio"]:checked + label::before {
    border: 1px solid #333;
}

.checkbox input[type="checkbox"]:checked + label::after {
    content: ' ';
    display: block;
    width: 15px;
    height: 8px;
    border-bottom: 2px solid #333;
    border-left: 2px solid #333;
    position: absolute;
    left: 6px;
    z-index: 1;
    top: 8px;
    transform: rotate(-45deg);
}

.radio input[type="radio"]:checked + label::after {
    content: ' ';
    display: block;
    width: 12px;
    height: 12px;
    border-radius: 100%;
    background-color: #333;
    position: absolute;
    left: 8px;
    top: 8px;
}

.checkbox + .checkbox,
.radio + .radio {
    margin-top: 10px;
}

.powermail_form.contactForm .powermail_fieldwrap {
    padding-left: 15px;
    padding-right: 15px;
}

.powermail_form.contactForm .powermail_fieldwrap_type_input,
.powermail_form.contactForm .powermail_fieldwrap_type_select {
    width: 50%;
    float: left;
}

.powermail_form.contactForm .powermail_fieldwrap:nth-child(2),
.powermail_fieldwrap_type_textarea {
    clear: both;
}

.powermail_form.contactForm .powermail_fieldset {
    margin-left: -15px;
    margin-right: -15px;
}

.powermail_form.contactForm .powermail_fieldwrap_type_check {
    clear: both;
}

.powermail_form .validation-error,
[data-form-validation="true"] .validation-error {
    background-color: #F24646;
    color: #FFF;
    padding: 3px 10px;
    margin-bottom: 4px;
}

.radio + .radio .validation-error {
    display: none;
}

@media (max-width: 767px) {
    .powermail_form.contactForm .powermail_fieldwrap_type_input, .powermail_form.contactForm .powermail_fieldwrap_type_select {
        width: 100%;
    }
}

.newsletter-form .fieldwrap {
    margin-bottom: 20px;
}

.newsletter-form .fieldwrap-inline .radio {
    display: inline-block;
    margin-right: 18px;
}

.newsletter-form .fieldwrap-inline .radio.has-validation-error {
    padding-top: 38px;
    position: relative;
}

.newsletter-form .fieldwrap-inline .radio.has-validation-error .validation-error {
    position: absolute;
    white-space: nowrap;
    top: 0;
}
