/*Allgemeines*/

html {
    height: 100%;
}

main {
    flex: 1;
}

body {
    margin: 0;
    font-family: 'Muli', sans-serif;
    background: #ffffff;
    color: black;
    font-size: 0.9em;
    line-height: 1.5;
    display:flex;
    min-height:100%;
    flex-direction:column
}

h1, h2, h3, table {

    padding-left: 30px;
    padding-right: 30px;
    line-height: 1.2;
}

h2 {
    margin-bottom: 0
}

p {
    padding-left: 30px;
    padding-right: 30px;
    padding-bottom: 0;
    margin: 10px 0;

}

p.above-list {
    margin-bottom: 0;
    padding-bottom: 0;
}

a {
    color: #000000;
    text-decoration: none;
}

a.underlined {
    text-decoration: underline;
}
a:visited {
    color: #000000;
}

a.current{
    color: #0057a2;
}

img.emo-image {
    width: 100%;
    padding: 0 0 1em 0 ;
}

#kontaktinfos p{
    font-weight: 900;
}

/* Sidebox*/

.sidebox {
    padding-left: 30px;
    padding-right: 30px;
    padding-bottom: 0;
    margin: 10px 0;
}

/*Listen*/

ul.vertical-list {
    list-style-type: circle;
    margin-top: 0;
    padding-top: 0;
    padding-left: 3.3em;
    list-style-position: outside;
}

ol {
    margin-top: 0;
    padding-top: 0;
    padding-left: 3.3em;
    list-style-position: outside;  
}

/* Navigation */

nav {
    background: #e3e9ec;
}
ul#navigation {
    text-align: center;
}

ul.horizontal-list {
    list-style: none;
    padding: 5px 0;
}

/*Listenelement Navigation*/
ul.horizontal-list li {
    display: inline;
    padding: 0 0.25em;
}

.headlogo {
    text-align: center;
    padding: 0.5em 0  0;
}

header a{
    columns: #000000;
    text-decoration:none;
}
  
header a:hover{
    font-weight:bold;
}

/*Fußzeile */
footer {
    padding: 0.5px 0 0.5px 0;
    margin: 0 0 0 0;
    background: #e3e9ec;
    color: #000000;
    text-align: center;
    font-size: 0.75em;
}

/*Tabelle*/

table {
    font-size: 1em;
    line-height: 1.5;
    border-spacing: 10px 0;
    padding-left: 0;
}

td {
    vertical-align: top;
}

/* Begrenzung der Elemente, zum Ausprobieren */
p, ul, ol, h1, h2, h3, img, table{
    /*border: solid;*/
    border-color: green;
}


/* Media Queries für responsive design*/

@media(min-width: 700px) {
    .grid {
        display:grid;
        grid-template-columns: 30% 25% 25% 20%;
        padding: 1em;
        grid-gap: 0.3em;
    }

    h2 {
        padding-top: 0;
        margin-top: 0;
    }

    .text {
        grid-column: 2/4;
    }

    /*img{
        padding-left: 1em;
    }*/

    .sidebox {
        background: #0057a2;
        color: white;
        grid-column: 4 / 5;
        padding: .5em;
        margin-right: 1em;
        height: 10em;
        text-align: left;
        max-width: 15em;
        
    }

    .sidebox a{
        color: white;
    }
} 