
/* GLOBAL */
.error
{
    color: #DC0000;
}

.InvisibleLink
{
    background: transparent !important;
    border-bottom: 0px;
    padding-left: 0px !important;
    padding-right: 0px !important;
}

/* ASIDE */

main aside
{
    display: table-cell;
    width: 232px !important;
    vertical-align: top;
    padding-bottom: 50px;
}

main aside>nav ul
{
    margin-left: 0px;
    padding-top: 0px;
    list-style: none;
}

main aside>nav ul li
{
    background-image: none;
    padding-bottom: 0px;
    padding-left: 0px;
}

main aside>nav a, main aside>nav a:link, main aside>nav a:active, main aside>nav a:visited,
main aside>article>nav a, main aside>article>nav a:link, main aside>article>nav a:active, main aside>article>nav a:visited,
main aside>a, main aside>a:visited, main aside>a:link, main aside>a:active
{   
    display: block;
    background: #bebebe;
    color: #4f4b4b;
    font-family: 'Open Sans', sans-serif, Arial;
    font-size: 13px;
    padding-left: 14px;
    padding-right: 14px;
    line-height: 35px;
    margin-bottom: 3px;
    transition: none;
}

main aside>nav a:hover, main aside>nav a.Aktiv:link, main aside>nav a.Aktiv:active, main aside>nav a.Aktiv:visited, main aside>nav a.Aktiv,
main aside>a.Aktiv, main aside>a.Aktiv:link, main aside>a.Aktiv:active, main aside>a.Aktiv:visited, main aside>a:hover
{   
    display: block;
    background: #e2001a;
    color: #FFF;
    font-family: 'Open Sans', sans-serif, Arial;
    font-size: 13px;
    padding-left: 14px;
    padding-right: 14px;
    line-height: 35px;
    margin-bottom: 3px;
    transition: none;
}

main aside>h2, main aside article>h2
{
    display: block;
    height: 40px;
    color: white;
    font-family: 'Roboto Condensed', sans-serif;
    font-weight: 700;
    text-align: center;
    line-height: 40px;
    font-size: 18px;
    background: #e2001a;
    text-transform: uppercase;
    margin-bottom: 5px;
}

main aside>h2:not(:first-child)
{
    margin-top: 20px;
}

main aside h2 a, main aside h2 a:active, main aside h2 a:link, main aside h2 a:visited
{
    color: white;
}

main aside div
{
    width: 100%;
    margin-bottom: 13px;
    padding-top: 1px;
    padding-bottom: 1px;
    font-size: 14px;
    font-family: 'Roboto', sans-serif;
    font-weight: 100;
    line-height: 20px;
}

main aside div:hover
{
    cursor: pointer;
    background: #DDD;
}

main aside div.nolink:hover
{
    cursor: auto;
    background: #FFF;
}

main aside div.Termin p
{
    font-size: 14px;
    font-weight: 100;
}

main aside div.Termin
{
    text-align: center;
    padding-bottom: 5px;
    margin-bottom: 5px;
}

main aside div.Termin h3
{
    margin: auto;
    text-transform: uppercase;
    font-weight: bold;
    font-family: 'Roboto Condensed', sans-serif;
    font-size: 16px;
    border-bottom: 1px solid black;
    display: inline;
    padding-bottom: 5px;
    line-height: 40px;
}

main aside div.Termin h3 a
{
    color: black;
    border-bottom: 1px solid black;
    padding-bottom: 3px;
    font-weight: 700;    
}


main aside article.BildLeiste
{
    margin-top: 20px;
}

main aside article.BildLeiste p
{
    font-size: 14px;
    line-height: 18px;
    margin-top: 0px;
}

/* ASIDE ENDE */

.BildRechts
{
    float: right;
    padding-left: 5px;
}

main h1
{
    
    font-family: 'Roboto Condensed', sans-serif;
    color: #e2001a;
    font-size: 28px;
    font-weight: 400;
    padding-bottom: 20px;
    padding-top: 0px;
    text-transform: uppercase;
}

body.popup h1
{
    font-family: 'Roboto Condensed', sans-serif;
    color: #e2001a;
    font-size: 28px;
    font-weight: 400;
    padding-bottom: 10px;
    padding-top: 10px;
    text-transform: uppercase;

}

main h2
{
    clear: both;
    color: #e2001a;
    font-weight: 700;
    font-size: 24px;
    margin: 0px 0px;
    padding-top: 20px;
}

body.popup h2
{
    clear: both;
    color: black;
    font-weight: 700;
    font-size: 24px;
    margin: 0px 0px;
    padding-top: 10px;
}

main section h2 a, main section h2 a:link, main section h2 a:active, main section h2 a:visited
{
    color: black;   
}

main h2.underlined
{
    padding-bottom: 5px;
    border-bottom: 4px solid #e2001a;
    clear: both
}

main h3
{
    color: black;
    font-weight: bold;
    font-size: 18px;
    margin: 25px 0px 10px 0px;
    padding-top: 0px;
    padding-bottom: 5px;
    border-bottom: 4px solid #e2001a;
}

main p, body.popup p
{
    margin-top: 10px;
    margin-bottom: 10px;
    font-family: 'Open Sans', sans-serif, Arial;
}


main strong
{
    font-weight: bold;
}

main ul
{
    /*list-style-image: url('/images/viereck.gif');
    padding-left: 15px;*/
    margin-left: -11px;
    padding-top: 10px;
}

main ul li
{
    background: url('/images/viereck.gif') no-repeat 0px 0px;
    padding-bottom: 10px;
    padding-left: 35px;
    list-style: none;

}
main ol
{
    list-style-type: decimal;
    padding-left: 40px;
    padding-bottom: 35px;
}

main ol li
{
    padding-bottom: 10px;
}

main blockquote
{
    margin: 0px;
    padding: 0px;
    display: inline;
    font-style: italic;
}


main div#Anmeldungdiv input[type="checkbox"]{
    margin-right:14px;
}


main a, main a:link, main a:active, main a:visited, a, a:link, a:active, a:visited
{
    color: #e2001a;
    text-decoration: none;
    transition: color .50s ease;
}

main a:hover, a:hover
{
    color: black;
    transition: color .50s ease;
}

/* MISC */
.clear
{
        clear:both;
}
.hidden
{
        position:absolute;
        clip: rect(1px 1px 1px 1px); /* IE6 & 7 */
        clip: rect(1px, 1px, 1px, 1px);
}

.footnote {font-size:90%;}

.Only950, .Only765, .Only500, .Global
{
    display: none;
}

footer
{
    position: relative;
    width: 100%;
    background: #262121;
    color: white;
    text-align: center;
    font-family: 'Roboto Condensed', sans-serif;
    font-weight: 400;
    font-size: 14px;
}

footer p
{
    display: block;
    width: 950px;
    margin: auto;

    padding-top: 10px;
    padding-bottom: 10px;
}

footer a, footer a:link, footer a:active, footer a:visited
{
    color: white;
    text-decoration: none;
    border-bottom: 1px solid white;
    transition: border-color 0.50s linear;
}

footer a:hover
{
    border-bottom-color: #262121;
    transition: border-color 0.50s linear;
}



/* ALT */
#alternative_menu
{
        width: 100%;
        display:none;
        padding: 3%;
}



/* Table misc */
table
{
    margin-top: 20px;
    width: 100%;
}

table td 
{
    padding-right: 5px;
    padding-top: 5px;
    padding-bottom: 5px;
}


table td.tablecelllink
{
    cursor: pointer;
}

table th.tablecellweek
{
    padding:10px !important;
}

table td.tablecellweek
{
    padding:10px !important;
    border-right: solid white 2px;
    border-bottom: solid white 2px;

}


table td.tablecellweekc1
{
    background-color: #ffffb7;
    transition: background-color 0.3s ease-in-out;
}
table td.tablecellweekc1:hover
{
    background-color: #ffffd7;
}

table td.tablecellweekc2
{
    background-color: #ff9f9f;
    transition: background-color 0.3s ease-in-out;
}
table td.tablecellweekc2:hover
{
    background-color: #ffbfbf;
}

table td.tablecellweekc3
{
    background-color: #bfbfbf;
    transition: background-color 0.3s ease-in-out;
}
table td.tablecellweekc3:hover
{
    background-color: #dfdfdf;
}

table td.tablecellweekc4
{
    background-color: #c5d9f1;
    transition: background-color 0.3s ease-in-out;
}
table td.tablecellweekc4:hover
{
    background-color: #e5f9ff;
}

table td.tablecellweekc5
{
    background-color: #92d050;
    transition: background-color 0.3s ease-in-out;
}
table td.tablecellweekc5:hover
{
    background-color: #b2f070;
}


table th
{
    text-align: left;
    font-family: 'Roboto Condensed', sans-serif;
    font-weight: 700;
    text-transform: uppercase;
    padding-right: 5px;
    padding-bottom: 9px;
    margin-bottom: 9px;
    border-bottom: 4px solid #e2001a;
    
}

table td.th1
{
    text-align: left;
    font-family: 'Roboto Condensed', sans-serif;
    font-weight: 700;
    text-transform: uppercase;
    padding-right: 5px;
    padding-bottom: 9px;
    margin-bottom: 9px;
}

table td.th2
{
    text-align: left;
    padding-right: 5px;
    padding-bottom: 9px;
    margin-bottom: 9px;
    border-bottom: 4px solid #e2001a;
}

table td.alignright
{
    text-align: right;
}

/* Termine*/
table.Termine
{
    width: 100%;
}

table.Termine td
{
    padding: 8px;
}

table.Termine th
{
    text-align: left;
    font-weight: 700;
    text-transform: uppercase;
}

/* Login */
form[name=login]
{
    display: block;
    background: #262121;
    padding: 5px;
}

input.login-email
{
    background-image: url('/images/login-user.gif');
    background-repeat: no-repeat;
    height: 39px;
    padding: 0px;
    background-color: #FFF;
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
    margin-bottom: 5px;
    padding-left: 50px !important;
    color: black;
    box-shadow: inset 0 0 12px #AAA;
}


input.login-password
{
    background-image: url('/images/login-password.gif');
    background-repeat: no-repeat;
    height: 39px;
    padding: 0px;
    background-color: #FFF;
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
    margin-bottom: 5px;
    padding-left: 50px;
    color: black;
    box-shadow: inset 0 0 12px #AAA;
}

input.login-password:focus, input.login-email:focus, input:focus, input[type=text]:focus, textarea:focus
{
    background-color: #EEE;
}


table.aufzaehlung
{
    width: 100%;
}

table.aufzaehlung td
{
    padding: 3px;
    margin: 0px;
    vertical-align: middle;
    font-size: 12px;
}

table.aufzaehlung tr
{
    padding: 0px;
    margin: 0px;
}


@media (max-width: 950px)
{
    .mobileonly
    {
        display: initial;
    }

    .desktoponly
    {
        display: none;
    }
}

@media (min-width: 950px)
{
    .mobileonly
    {
        display: none;
    }

    .desktoponly
    {
        display: initial;
    }
}