@font-face { font-family: 'RobotoSlab-Medium'; src: url('../fonts/RobotoSlab/RobotoSlab-Medium.ttf'); } 
@font-face { font-family: 'Titillium'; src: url('../fonts/Titillium_Web/TitilliumWeb-Regular.ttf'); } 

* {
    font-family: 'Titillium', Arial, sans-serif;
    margin: 0;
    padding: 0;
}

body {
    background: linear-gradient(to bottom, #659cbc 24.4em, #eaeaea 24.4em); /* #659cbc , #eaeaea */
    color: #666; /* #666 */
    display: flex;
}

h1 {
    padding-top: .5em;
    font-size: 3em;
    font-weight: 600;
}

#anmeldung label {
    font-size: 1.1em;
    margin-right: 1em;
}

.allgemein {
    width: 72%;
    margin-left: 14%;
    margin-right: 14%;
}

.anm {
    padding-left: .67em;
}

.allgemein .hero {
    background-color: #fff; /* #fff */
    margin-top: -6px;
    padding-left: 2em;
    padding-right: 2em;
}

.allgemein .hero2{
    padding: 0;
}

img {
    width: 100%;
}

.allgemein .hero .imp {
    font-size: 1.5em;
    margin-top: 1.4em;
}

.allgemein .hero ul {
    list-style-position: outside;
}

.allgemein .hero .ulindex li {
    list-style-position: inside;
    font-size: 1.08em;
    margin-top: 0.5em;
    overflow-wrap: break-word;
    word-wrap: break-word;
    word-break: break-word;
    padding-left: 1em;
    text-indent: -1em; 
}

.allgemein .hero p {
    font-size: 1.08em;
}

.registration {
    margin-top: 5em;
    display: flex;
}

.anmeldung {
    flex: 50%;
    padding-left: 2em;
    padding-right: 2em;
}

.anmeldung-neu {
    border-style: solid;
    border-left: 0px;
    border-top: 0px;
    border-bottom: 0px;
    
}

.sized {
    width: 100%;
    height: 2.4em;
    outline: none;
    border-style: solid;
    border-width: 0.1em;
    border-color: #666;
    border-radius: .1em;
}

.email {
    margin-bottom: 1.8em;
}

.passreset {
    margin-top: 2em;
}

.submit, #anmeldung input[type=submit]  {
    background-color: #e9e9ed;
    border-style: solid;
    border-width: 0.1em;
    border-color: #666;
    border-radius: .1em;
    color: #666;
}

.submit:hover, #anmeldung input[type=submit]:hover, input[type=submit]:hover {
    background-color: #cbcbcf;
    border-style: solid;
    border-width: 0.1em;
    border-color: #000;
    cursor: pointer;
}

.neusubmit {
    margin-top: 2.56em;
}

.altsubmit {
    margin-top: 2em;
}

.sized2 {
    height: 2.4em;
    outline: none;
    width: 35em;
    padding-left: .5em;
    margin-bottom: 1em;
    border-style: solid;
    border-width: 0.1em;
    border-color: #666;
    border-radius: .1em;
}

.confirmBox {
    margin-top: 1em;
    font-size: 1em;
    border-style: solid;
    border-width: 0.15em;
    width: 27.9em;
    text-align: center;
    padding-top: 0.2em;
    padding-bottom: 0.2em;
    padding-left: 0.5em;
    padding-right: 0.5em;
}

.successBox {
    background-color: #b5ffbc;
    border-color: #2cb039;
}

.errorBox {
    background-color: #ffa1a1;
    border-color: #ff5252;
}

.req {
    color: red;
}

#anmeldung input[type=text], #anmeldung input[type=number], #anmeldung input[type=email], #anmeldung input[type=date], #anmeldung input[type=submit]  {
    margin-bottom: 1em;
    height: 2.4em;
    text-align: left;
    width: 100%;
    box-sizing: border-box;
    padding-left: 0.5em;
}

#anmeldung input[type=submit] {
    font-size: 1em;
    width: 25.81em;
}

.splitBox {
    display: flex;
}

.split1, .split2, .sprachWahl {
    flex: 50%;
}

.split1 {
    padding-right: 1em;
}

.split2 {
    padding-left: 1em;
}

#anmeldung {
    box-sizing: border-box;
    padding-left: 2em;
    padding-right: 2em;
}

#anmeldung table tbody input[type=number] {
    width: 3.4em;
    
}

#anmeldung table tbody tr td, #anmeldung table thead tr th {
    padding-right: 5em;
    text-align: center;
    font-size: 1.1em;
}

#wahlkurse table tbody tr td {
    padding-right: 1em;
}

a {
    color: #666;
}

@media (max-width: 1500px) {
    .allgemein {
        width: 84%;
        margin-left: 8%;
        margin-right: 8%;
    }    
}

@media (max-width: 1100px) {

    .splitBox {
        display: block;
    }

    .split1, .split2 {
        flex: 100%;
    }

    .split1 {
        padding-right: 0;
    }
    
    .split2 {
        padding-left: 0;
    }

    .anmeldung {
        padding: 0;
    }

    .anmeldung-neu {
        padding-right: 2em;   
    }

    .anmeldung-alt {
        padding-left: 2em;
    }
}

@media (max-width: 640px) {

    input {
        font-size: .9em;
    }

    #anmeldung table tbody tr td, #anmeldung table thead tr th {
        padding-right: 1em;
    }

    #anmeldung table tbody tr td select {
        width: 9em;
    }


    #anmeldung input[type=submit] {
        width: 10em;
    }

    .allgemein {
        width: 100%;
        margin-left: 0;
        margin-right: 0;
    }

    h1 {
        font-size: 2.1em;
    }

    .allgemein .hero .imp {
        font-size: 1.4em;
    }

    .allgemein .hero {
        padding-left: 1em;
        padding-right: 1em;
    }

    .anmeldung {
        padding: 0;
    }

    .anmeldung-neu {
        flex: 100%;
        border-style: solid;
        border-left: 0px;
        border-top: 0px;
        border-right: 0px;
        border-bottom: 1em;
    }

    .anmeldung-alt {
        flex: 100%;
        margin-top: 4em;
    }

    .registration {
        display: block;
    }

    .reset, .resetSubmit {
        width: 100%;
    }

    .hero .panel {
        width: 100%;
    }
}

@media (max-width: 480px) {
    #anmeldung {
        padding-left: 0;
        padding-right: 0;
    }

    .confirmBox {
        width: 20.65em;
    }
}

@media (prefers-color-scheme: dark) {
    .allgemein .hero {
        background-color: #333333;
    }

    body {
        background: linear-gradient(to bottom, #105772 24.4em, #666666 24.4em);  
        color: #cbcbcf;
    }
    
    .submit, #anmeldung input[type=submit]  {
        background-color: #666666;
        border-style: solid;
        border-width: 0.1em;
        border-color: #666;
        border-radius: .1em;
        color: #fff;
    }

    a {
        color: #cbcbcf;
    }

    .sized, .sized2, #anmeldung input[type=text], #anmeldung input[type=number], #anmeldung input[type=email], #anmeldung input[type=date], #anmeldung select, .hero .panel {
        background-color: #666;
        color: #cbcbcf;
    }
    
    #anmeldung input[type=text], #anmeldung input[type=number], #anmeldung input[type=email], #anmeldung input[type=date] {
        border-color: #000;
    }
    
    .submit:hover, input[type=submit]:hover {
        background-color: #cbcbcf;
        border-style: solid;
        border-width: 0.1em;
        border-color: #cbcbcf;
        cursor: pointer;
        color: #000;
    }
    .confirmBox p {
        color: #333333;
    }
}

