* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

 :root {
    --rot: #e3201a;
    --orange: #D37F19;
    --kupfer: #FFAC6B;
    --zerogold: #daa520;
    --petrol1: #006675;
    --petrol2: #0C7074;
    --dunkelpetrol: #014051;
    --petrol_nav: #04515D;
    --dunkelblau: #023a4b;
    --schwarzblau: #020d1b;
    --headerblau: #000E17;
    --tuerkis1: #16ada6;
    --tuerkis2: #62cdb5;
    --offwhite: #faf9f6;
    --beige: #f8efe6;
    --dunkelbeige: #f8ede2;
    --dunkelbraun: #1d0200;
    --braunschwarz: #1a1a1a;
    --haende_bg: #e9c7a5;
}

body {
    min-height: 100vh;
    font-family: 'Questrial', sans-serif;
    font-weight: normal;
    font-size: 16px;
    line-height: 20px;
    background-color: var(--offwhite);
    color: var(--dunkelbraun);
}


/* ------------  header ---------------  */

header {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 80px;
    background-color: var(--schwarzblau);
    background-image: url(imagesneu/bg_dunkelblau_header.jpg);
    background-repeat: no-repeat;
    background-size: cover;
    border-bottom: solid 1px var(--offwhite);
}

header .logo img {
    height: 48px;
    padding-top: 4px;
}

header a:hover {
    color: var(--haende_bg);
}


/* ---------------------- Allgemein  ----------------------- */

h4 {
    font-family: 'Questrial', sans-serif;
    font-size: 19px;
    line-height: 26px;
    font-weight: 600;
    letter-spacing: 1px;
    color: var(--petrol1);
    text-align: left;
    padding: 20px 0;
}

h5 {
    font-family: 'Questrial', sans-serif;
    font-size: 15px;
    line-height: 26px;
    font-weight: 600;
    letter-spacing: 1px;
    color: var(--dunkelbraun);
    text-align: left;
    padding-top: 20px;
    padding-bottom: 10px;
}

p {
    padding-bottom: 20px;
}

.logoimtext {
    position: relative;
    top: 4px;
    height: 36px;
    padding-right: 6px;
}


/* ---------------------- Media  ----------------------- */


/* ---------------------- Handy  ----------------------- */

.container {
    padding: 30px;
}

@media only screen and (min-width: 767px) {
    .container {
        padding: 60px;
    }
    .disclaimer,
    .credits {
        width: 70%;
    }
}

@media only screen and (min-width: 1024px) {
    .container {
        width: 70%;
        margin-left: auto;
        margin-right: auto;
        padding: 50px 0;
    }
    .disclaimer,
    .credits {
        width: 60%;
    }
}


/* ------------ Spenden cs ---------------------------------  */

.ss {
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--offwhite);
}

.ss h4 {
    text-align: center;
    font-family: 'Caviar Dreams';
    font-size: 28px;
    font-weight: 600;
    color: var(--petrol1);
    padding-top: 30px;
    padding-bottom: 50px;
}

.ss h5 {
    font-family: 'Questrial', sans-serif;
    font-size: 18px;
    line-height: 28px;
    font-weight: 600;
    letter-spacing: 1px;
    color: var(--petrol1);
    text-align: center;
    padding-top: 20px;
    padding-bottom: 10px;
}

.csp {
    padding-bottom: 120px;
}

.spenden_container {
    font-size: 18px;
    line-height: 28px;
    border: solid 2px var(--dunkelblau);
    padding: 20px;
}

.spendendank {
    width: 100%;
    text-align: center;
    padding: 20px;
    margin-bottom: 60px;
    background-color: #daa520;
}

.spendencancel {
    width: 100%;
    text-align: center;
    padding: 20px;
    margin-bottom: 60px;
    background-color: #aeaeae;
}

.npo {
    padding-top: 20px;
    padding-bottom: 20px;
}

.npo .logoimtext {
    position: relative;
    top: 4px;
    height: 28px;
    padding-right: 4px;
    padding-left: 4px;
}

.npo .one {
    font-family: 'Montaga';
    font-style: normal;
    font-weight: 400;
    font-size: 20px;
}

.spende_dank {
    font-family: 'Caviar Dreams';
    font-size: 19px;
    line-height: 30px;
    font-weight: 600;
    color: var(--rot);
    text-align: center;
    margin: 30px 0;
}

.cs {
    display: flex;
    justify-content: center;
    flex-direction: column;
    padding-bottom: 40px;
    color: #000;
    font-size: 18px;
    line-height: 28px;
}

.modul_qr {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    margin-bottom: 10px;
}

.modul_pp {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    margin-bottom: 40px;
}

.cs .qrpay {
    margin-top: 40px;
    margin-bottom: 60px;
}

.cs .qr {
    margin-top: 30px;
    margin-bottom: 40px;
}

.cs .qr img {
    width: 140px;
}

.pp_text {
    text-align: center;
}

.pp_spenden_button {
    text-align: left;
    margin-top: 30px;
    margin-bottom: 40px;
}

.bank {
    margin-top: 30px;
    margin-bottom: 40px;
}

.cs .one {
    font-size: 17px;
    font-weight: 600;
}

.cs .onev {
    margin-top: 30px;
}

.cs .onev2 {
    margin-top: 10px;
}

.cs .onesmall {
    font-family: 'Montaga';
    font-style: normal;
    font-weight: 400;
    font-size: 18px;
}

.cs .onebig {
    font-family: 'Montaga';
    font-style: normal;
    font-weight: 400;
    font-size: 20px;
}

.cs .bold {
    font-weight: 600;
}


/* ------------ Ende Spenden ---------------  */


/* ------------ Section Login ---------------  */

.sl {
    background-color: var(--beige);
}

.sl h4 {
    font-family: 'Caviar Dreams';
    text-align: center;
    color: var(--offwhite);
}

.cl {
    background-color: var(--dunkelblau);
    border: solid 2px var(--kupfer);
    font-family: 'Questrial', sans-serif;
    font-size: 18px;
    line-height: 24px;
    color: var(--dunkelbraun);
    padding: 20px 40px;
    margin: 80px 0;
}

.cl .loginForm {
    z-index: -1;
    margin: auto;
    width: 90%;
    padding-bottom: 60px;
}

.cl .loginForm form {
    width: 100%;
    padding: 20px;
    background-color: var(--offwhite);
    border-radius: 4px;
    box-shadow: 0 8px 16px rgba(0, 0, 0, .3);
}

.cl .loginForm form input {
    width: 100%;
    height: 40px;
    background-color: #fff;
    border-radius: 4px;
    border: 1px solid silver;
    margin: 10px 0 18px 0;
    padding: 0 10px;
    outline: none;
    resize: none;
}

.cl .loginForm .error {
    color: #d30000;
    font-size: 15px;
}

.cl .loginForm form button {
    margin-left: 50%;
    transform: translateX(-50%);
    margin-top: 20px;
    margin-bottom: 20px;
    width: 180px;
    padding: 8px;
    border: none;
    outline: none;
    background: var(--petrol1);
    cursor: pointer;
    color: var(--offwhite);
    font-size: 16px;
    font-weight: 600;
    border-radius: 30px;
    transition: .3s;
}

.cl .loginForm form button:hover {
    background-color: var(--kupfer);
    color: var(--offwhite);
}


/* ------------ Ende Login ---------------  */


/* ------------ Postkasten ----------------------------------  */

.spo {
    background-color: var(--beige);
}

.icon_container {
    background-color: var(--dunkelblau);
    border: solid 2px var(--kupfer);
    padding: 20px;
    margin-top: 40px;
    margin-bottom: 60px;
}

.icon_postkasten {
    text-align: center;
    padding: 20px;
    background-color: var(--kupfer);
    background-image: url(imagesneu/bg_kupfer_frp.svg);
    background-repeat: no-repeat;
    background-size: cover;
    width: 100%;
}

.icon_postkasten img {
    height: 100px;
}

.spo .success {
    background-color: var(--kupfer);
    color: var(--offwhite);
    font-size: 18px;
    line-height: 36px;
    text-align: center;
    margin: 30px 20px;
}

.spo .cferror {
    background-color: #eaeaea;
    color: var(--rot);
    font-size: 18px;
    line-height: 36px;
    text-align: center;
    margin: 30px 20px;
}

.cpo {
    background-color: var(--dunkelblau);
    border: solid 2px var(--kupfer);
    font-family: 'Questrial', sans-serif;
    font-size: 18px;
    line-height: 24px;
    color: var(--dunkelbraun);
    padding: 20px 40px;
    margin-bottom: 80px;
}

.cpo .contactForm {
    z-index: -1;
    padding-bottom: 20px;
}

.cpo .contactForm .an_von {
    padding-bottom: 20px;
}

.cpo .contactForm .inputBox1 {
    position: relative;
    width: 100%;
    margin: 20px 0;
}

.cpo .inputfield,
.cpo .inputfield1 {
    display: flex;
    justify-content: left;
    align-items: center;
    background-image: url(images/briefpapier_bg.jpg);
    background-repeat: no-repeat;
    background-size: cover;
    padding: 10px 20px;
    border: 2px solid var(--kupfer);
}

.cpo .contactForm .inputBox1 input {
    font-family: 'Questrial', sans-serif;
    font-size: 18px;
    line-height: 24px;
    color: var(--dunkelbraun);
    background-image: url(images/briefpapier_bg.jpg);
    background-repeat: no-repeat;
    background-size: cover;
    margin-top: 0px;
    outline: none;
    resize: none;
    width: 100%;
    height: 40px;
    border-radius: 4px;
    border: 2px solid var(--kupfer);
    padding: 0 10px;
}

.cpo .bildpost {
    width: 80px;
    height: auto;
    background-color: transparent;
}

.cpo .text1 {
    padding-right: 20px;
}

.cpo .abs_input {
    width: 50%;
}

.cpo .vn_name {
    font-size: 15px;
    line-height: 20px;
    padding-right: 30px;
}

.cpo .inputfield1 img {
    height: 50px;
}

.cpo .inputfield img {
    height: 50px;
    padding-right: 20px;
}

.cpo .contactForm .inputBox {
    position: relative;
    width: 100%;
    margin: 40px 0;
}

.cpo .contactForm .inputBox textarea {
    width: 100%;
    font-family: 'Questrial', sans-serif;
    font-size: 18px;
    line-height: 24px;
    color: var(--dunkelbraun);
    background-image: url(images/briefpapier_bg.jpg);
    background-repeat: no-repeat;
    background-size: cover;
    margin-top: 0px;
    outline: none;
    resize: none;
    border: 2px solid var(--kupfer);
    border-top: none;
    padding: 20px;
    text-align: left;
    overflow: auto;
}

.cpo .contactForm .error {
    color: var(--rot);
    font-size: 15px;
}

.cpo .contactForm .abschicken button {
    display: flex;
    justify-content: center;
    align-items: center;
    margin-left: 50%;
    transform: translateX(-50%);
    margin-top: 60px;
    margin-bottom: 20px;
    background-color: var(--petrol1);
    color: var(--offwhite);
    border: none;
    font-family: 'Questrial', sans-serif;
    font-size: 19px;
    font-weight: 500;
    letter-spacing: 1px;
    border-radius: 10px;
    cursor: pointer;
    padding: 10px 30px;
}

.cpo .contactForm .abschicken button img {
    height: 60px;
    padding-right: 20px;
}

.cpo .contactForm .abschicken button:hover {
    background-color: var(--kupfer);
    color: var(--offwhite);
}

.cpo .antwort {
    display: flex;
    justify-content: center;
    align-items: center;
    margin-top: 50px;
}

.cpo .antwort img {
    height: 40px;
    padding-left: 30px;
}

@media only screen and (max-width: 630px) {
    .cpo {
        padding: 20px 20px;
    }
    .cpo .inputfield,
    .cpo .inputfield1 {
        display: flex;
        justify-content: left;
        align-items: left;
        flex-direction: column;
        padding: 20px;
    }
    .abs_text {
        display: flex;
        justify-content: center;
        align-items: center;
        flex-direction: column;
        padding: 20px 0;
    }
    .cpo .abs_input {
        width: 100%;
    }
    .cpo .vn_name {
        font-size: 15px;
        line-height: 20px;
        padding-right: 0;
    }
    .cpo .bildpost {
        height: 50px;
        width: auto;
    }
    .cpo .text1 {
        padding-top: 10px;
        padding-right: 0px;
    }
    .cpo .text2 {
        padding-top: 20px;
    }
    .cpo .inputfield img {
        height: 50px;
        padding-right: 0px;
    }
    .cpo .contactForm .inputBox1 input {
        font-family: 'Questrial', sans-serif;
        margin-top: 10px;
        width: 100%;
        padding: 0 10px;
    }
    .cpo .antwort img {
        height: 40px;
        padding-left: 10px;
    }
}


/* ------------ Ende Postkasten ---------------  */


/* ------------ Section Impressum ---------------  */

.si {
    background-color: var(--beige);
}

.impr a {
    font-size: 16px;
    line-height: 18px;
    color: var(--dunkelbraun);
    text-decoration: none;
    border-bottom: 2px solid var(--petrol1);
}

.impr a:hover {
    color: var(--petrol1);
}

.impr h4 {
    padding: 40px 0;
}

.disclaimer,
.credits {
    margin-top: 50px;
}

.credits {
    margin-bottom: 80px;
}

.credits ul {
    padding-left: 14px;
}

.credits ul li {
    font-size: 16px;
    line-height: 20px;
}

.credits ul li a {
    font-size: 15px;
    line-height: 20px;
    color: var(--dunkelbraun);
    text-decoration: none;
}


/* ------------ Section Datenschutz ---------------  */

.sds {
    background-color: var(--beige);
}

.ds {
    margin-bottom: 60px;
}

.ds h3 {
    font-family: 'Questrial', sans-serif;
    font-size: 16px;
    line-height: 24px;
    font-weight: 600;
    letter-spacing: 1px;
    color: var(--dunkelbraun);
    text-align: left;
    padding: 20px 0;
}

.ds h4 {
    padding-top: 40px;
}

.ds p {
    padding-bottom: 20px;
}


/* ------------ Zero cz ----------------------------------  */

.sz1,
.sz2,
.sz3,
.sz4,
.sz5,
.sz6 {
    display: flex;
    align-items: center;
    justify-content: center;
}

.sz1,
.sz3,
.sz5 {
    background-color: #fff;
}

.sz2 {
    background-color: var(--schwarzblau);
    background-image: url(imagesneu/bg_dunkelblau.jpg);
    background-repeat: no-repeat;
    background-size: cover;
}

.sz4 {
    background-color: var(--offwhite);
}

.sz6 {
    background-color: var(--petrol1);
}

.cz1,
.cz2,
.cz3,
.cz4,
.cz5,
.cz6 {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    font-size: 18px;
    line-height: 30px;
}

.introzero {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    padding-top: 40px;
    padding-bottom: 80px;
}

.introzero .logoz {
    text-align: center;
}

.introzero .logoname {
    text-align: center;
    font-family: 'Libre Bodoni';
    font-weight: 700;
    font-style: italic;
    font-size: 20px;
    line-height: 30px;
    padding-top: 20px;
}

.schnee {
    padding-bottom: 40px;
}

.schnee img {
    padding-top: 0;
    margin-top: 0;
}

.foto_container {
    padding-top: 30px;
    padding-bottom: 42px;
}

.foto_container img {
    padding: 0;
    margin: 0;
}

.foto {
    width: 100%;
    object-fit: cover;
}

.platinum {
    font-family: 'Libre Bodoni';
    font-style: italic;
    font-size: 18px;
}

.zlogoimtext {
    position: relative;
    top: 8px;
    padding-left: 2px;
    width: 27px;
    height: 33px;
}

.zlogoimNamen {
    position: relative;
    top: 8px;
    padding-left: 2px;
    width: 47px;
    height: 41px;
}

.cz2,
.cz3,
.cz4,
.cz5 {
    border: solid 2px var(--dunkelblau);
    padding: 20px 20px;
    margin-top: 50px;
    margin-bottom: 50px;
}

.cz2 {
    border: solid 2px var(--kupfer);
}

.cz2 h3 {
    font-family: 'Caviar Dreams';
    font-size: 24px;
    line-height: 36px;
    font-weight: 600;
    text-transform: initial;
    word-spacing: 6px;
    color: var(--kupfer);
    margin-top: 20px;
    margin-bottom: 10px;
}

.film {
    margin: 40px 0;
}

video {
    height: 480px;
    width: auto;
}

.textcz2 {
    color: #fff;
    padding-bottom: 30px;
}

.waage {
    max-width: 90%;
    padding-top: 40px;
    padding-bottom: 40px;
}

.coud {
    font-family: 'Caviar Dreams';
    width: 100%;
    background-color: var(--schwarzblau);
    background-image: url(imagesneu/bg_dunkelblau_header.jpg);
    background-repeat: no-repeat;
    background-size: cover;
    color: var(--offwhite);
    font-size: 24px;
    line-height: 38px;
    font-weight: 600;
    letter-spacing: 2px;
    text-align: center;
    padding: 20px;
    margin-top: 30px;
    margin-bottom: 40px;
}

.oud {
    font-family: 'Caviar Dreams';
    color: var(--petrol1);
    font-size: 22px;
    font-weight: 600;
}

.ctext {
    margin-bottom: 20px;
}

.text_petrol {
    font-family: 'Caviar Dreams';
    font-size: 18px;
    color: var(--petrol1);
    font-weight: 600;
}

.unisex {
    padding: 20px 0;
}

.box_erfahrung {
    background-color: var(--schwarzblau);
    background-image: url(imagesneu/bg_dunkelblau.jpg);
    background-repeat: no-repeat;
    background-size: cover;
    border: solid 4px var(--kupfer);
    color: var(--offwhite);
    margin: 100px 0;
}

.erfahrung {
    padding: 20px 40px;
}

.viclink {
    font-family: 'Caviar Dreams';
    color: var(--kupfer);
    font-size: 22px;
    font-weight: 600;
    margin-left: 2px;
}


/* ------------ Ende Zero cz ----------------------------------  */


/* ------------ Footer -----------------------  */

footer {
    background-color: var(--braunschwarz);
    background-color: #1a1a1a;
    background-image: linear-gradient(315deg, #1a1a1a 0%, #1d0200 74%);
    background-image: linear-gradient(315deg, #1d0200 0%, #572a2a 74%);
    background-image: linear-gradient(315deg, #000 0%, #1a1a1a 74%);
}

.footer_container {
    font-size: 16px;
    line-height: 24px;
    color: var(--offwhite);
    padding: 30px 40px;
}

footer h4 {
    font-family: 'Caviar Dreams', sans-serif;
    color: var(--rot);
    font-size: 30px;
    font-weight: 700;
    text-align: left;
    padding-top: 50px;
    padding-bottom: 40px;
}

.one_name {
    font-family: 'Caviar Dreams', sans-serif;
    font-size: 20px;
    line-height: 30px;
    letter-spacing: 1px;
    font-weight: normal;
    margin: 10px 0;
}

.one {
    font-family: 'Montaga', serif;
    font-size: 20px;
    letter-spacing: 1px;
}

.mail a {
    font-size: 16px;
    line-height: 24px;
    color: var(--offwhite);
    text-decoration: none;
}

.mail a:hover {
    color: var(--petrol1);
}

.mail img {
    padding-right: 4px;
}

.adresse {
    font-size: 16px;
    line-height: 24px;
    padding-top: 50px;
    padding-bottom: 20px;
}

.spenden_button {
    padding-top: 40px;
    padding-bottom: 20px;
}

.spenden_button button {
    font-family: 'Caviar Dreams';
    font-size: 18px;
    background-color: transparent;
    color: #fff;
    border: 2px solid var(--rot);
    border-radius: 30px;
    padding: 6px 24px;
    cursor: pointer;
}

.spenden_button button:hover {
    background-image: none;
    background-color: var(--petrol1);
    color: var(--offwhite);
    border: 2px solid var(--petrol1);
}

.donation_button {
    padding-top: 0px;
    padding-bottom: 30px;
}

.donation_button button {
    font-family: 'Caviar Dreams';
    font-size: 18px;
    background-color: transparent;
    color: #fff;
    border: 2px solid var(--rot);
    border-radius: 30px;
    padding: 6px 24px;
    cursor: pointer;
}

.donation_button button:hover {
    background-image: none;
    background-color: var(--petrol1);
    color: var(--offwhite);
    border: 2px solid var(--petrol1);
}

.footer_menu {
    padding: 20px 0;
}

.footer_menu ul {
    padding: 0;
    margin: 0;
    list-style: none;
}

.footer_menu ul li {
    padding-left: 4px;
    padding-bottom: 2px;
}

.footer_menu a {
    font-family: 'Caviar Dreams', serif;
    color: var(--offwhite);
    font-size: 18px;
    line-height: 30px;
    text-decoration: underline;
    text-decoration-color: var(--rot);
    text-underline-offset: 4px;
}

.footer_menu a:hover {
    color: var(--petrol1);
}

.footer_nav nav {
    padding: 10px 0;
}

.footer_nav ul {
    padding: 0;
    margin: 0;
    list-style: none;
    font-size: 14px;
    line-height: 24px;
}

.footer_nav ul li {
    display: inline-block;
    padding-right: 10px;
}

.footer_nav a {
    font-size: 14px;
    line-height: 24px;
    color: var(--offwhite);
    text-decoration: none;
}

.footer_nav a:hover {
    color: var(--petrol1);
}

.copy {
    font-size: 14px;
    line-height: 24px;
    padding-top: 10px;
}

.copy img {
    height: 28px;
}

.onekl {
    font-family: 'Montaga', serif;
    font-size: 16px;
    letter-spacing: 1px;
}

.copyverein {
    font-family: 'Caviar Dreams', sans-serif;
    font-size: 16px;
    line-height: 26px;
}


/* ------------ Media -----------------------  */

@media only screen and (min-width: 1024px) {
    .container {
        width: 70%;
        margin-left: auto;
        margin-right: auto;
        padding: 0px;
    }
    .footer_container {
        width: 60%;
        padding-bottom: 20px;
    }
}