* {
    margin: 0;
    padding: 0;
}

body {
    display: flex;
    flex-wrap: wrap;
    flex-direction: row;
}

nav {
    height: 50px; /*Kein Flex-Item mehr, sondern liegt vor der Webseite*/
}

header {
    height: 15vh;
    flex: 1 1 100%;
    margin-top: 50px; /*Die Navigation liegt vor der Webseite und überdeckt andere Inhalte --> Seite nach unten schieben*/
    background-color: lightgreen;
}

main {
    min-height: 65vh; /*Alle Teile des mittleren Bereichs haben nun eine min-height, statt fixe height*/
    flex: 1 1 85%;
    text-align: center;
    background-color: rosybrown;
}

#MainTeile {
    min-height: 55vh; /*Alle Teile des mittleren Bereichs haben nun eine min-height, statt fixe height*/
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: space-around;
    align-items: stretch;
}

section {
    width: 30%;
    min-width: 300px;
    margin: 5px;
    padding: 5px;
    border: black 2px solid;
    border-radius: 20px;
    background-color: white;
}

aside {
    min-height: 65vh; /*Alle Teile des mittleren Bereichs haben nun eine min-height, statt fixe height*/
    flex: 1 1 15%;
    background-color: lemonchiffon;
}

footer {
    height: 10vh;
    flex: 1 1 100%;
    background-color: red;
}