:root {
    --pad: .4rem;
}

@media screen and (min-width: 1024px) {
    :root {
        --pad: .5rem;
    }
}

.nf-form-cont {
    font-family: "Haas-Regular";
    font-size: calc(var(--lauftext-20-30) * .75);

    width: 100%;
    max-width: 640px;
}

.nf-form-title {
    font-family: "Gadget";
}

.nf-before-form-content {
    margin-bottom: calc(var(--pad) * 2);
}

.nf-field-label {
    font-size: calc(var(--lauftext-20-30) * .8);
    margin: calc(var(--pad) * 3) 0 var(--pad) 0;
}

.ninja-forms-req-symbol {
    color: red;
}

.nf-form-fields-required {
    font-size: calc(var(--lauftext-20-30) * .5);
}

.ninja-forms-field {
    border: none;
    width: 100%;
    height: auto;
    padding: calc(var(--pad) * 1.5);
    font-size: calc(var(--lauftext-20-30) * .6);
    border: 1px solid black;
}

body.page-template-page-celebration .ninja-forms-field {
    border: none;
    background-color: #84F8FF;
}

.nf-field-element {
    margin-bottom: var(--pad);
}

body.page-template-page-info .inhalt .nf-field-element ul li {
    list-style-type: none;
}

body.page-template-page-info .inhalt .nf-field-element ul {
    padding: 0;
}

.nf-error-msg {
    font-size: 16px;
    border: 1px solid red;
    color: red;
    margin-bottom: var(--pad);
    background-color: white;
    padding: .25rem;
    width: max-content;
}

.list-radio-wrap .nf-field-element li {
    margin-bottom: var(--pad);
}

.list-radio-wrap .nf-field-element li input {
    float: left;
    margin-top: .0rem;
    margin-right: .5rem;
    height: 1rem;
    width: 1rem;
}

@media screen and (min-width: 1024px) {
    .list-radio-wrap .nf-field-element li input {
        margin-top: .33rem;
    }
}

.field-wrap button,
.field-wrap input[type=checkbox],
.field-wrap input[type=button],
.field-wrap input[type=submit] {
    width: auto;
    height: auto;
    padding: .75rem 1.5rem .7rem 1.5rem;
    border-radius: 0px;
    text-transform: uppercase;
    font-weight: bold;
    cursor: pointer;

    transition: all .15s linear;
}

@media (hover: hover) {

    .field-wrap button:not(:disabled):hover,
    .field-wrap input[type=button]:not(:disabled):hover,
    .field-wrap input[type=submit]:not(:disabled):hover {
        color: var(--clr-primary, white);
        background-color: black;
    }
}

.nf-form-content input:not([type=button]) {
    color: black;
}

body.page-template-page-celebration .nf-form-content input:not([type=button]) {
    background-color: #84F8FF;
}

.nf-form-content input[type=submit] {
    background: var(--clr-primary, black);
    color: black;
    font-size: 1.5rem;
    border: 1px solid black;
}

body.page-template-page-celebration .nf-form-content input[type=submit] {
    border: none;
    background-color: var(--clr-primary);
}

.nf-form-content textarea {
    background-color: white;
}

.nf-form-content .list-select-wrap>div select {
    background: transparent;
}

.nf-form-content .list-select-wrap .nf-field-element>div {
    border: none;
    background-color: white;
}

.nf-form-content select.ninja-forms-field {
    color: black;
}

.field-wrap button:disabled,
.field-wrap input[type=button]:disabled,
.field-wrap input[type=submit]:disabled {
    background-color: rgb(179, 179, 179);
    color: whitesmoke;
    cursor: not-allowed;
    border: none;
}

.nf-field-element .minute,
.nf-field-element .hour {
    width: 75px;
}

.listradio-wrap .nf-field-element label.nf-checked-label:before {
    top: inherit;
}

.nf-field-element label {
    cursor: pointer;
}

.nf-form-hp {
    position: absolute;
    left: -9999px;
}