html {
	min-height: 100vh;
}

body {
	margin: 0em	auto;
	max-width: 70em;
	font-family: sans-serif;	
	display: grid;
	min-height: 100vh;
	grid-template-rows: auto auto auto 1fr 3.5em;
}

nav {
   line-height: 1.4;
   font-family: Arial, Helvetica, sans-serif;
   z-index: 100;
}

@media (min-width: 40em) {
	
	body {	
	    grid-template-rows: auto auto 1fr 3.5em;
	    grid-template-columns: 15em auto;/*1fr 3fr;*/
	}
}

@media (max-width: 40em) {
    header,
    nav,
    main,
    aside,
    footer {
		border: thin solid;
    }
}

header,
nav,
footer {
	grid-column: 1 / -1;
}

header {	
	background: #cc6900;
	border-color: Black;

    margin-top: 1em;
}

nav {
	background: #fffbf0;
	border-color: Black;
}

aside {
	background: #ffce99;
	border-color: Black;
	

}

main {
	background: #ffe6cc;
	border-color: Black;
}

footer {
	background: #cc6900;
	border-color: Black;
	
    height: 2em;
    margin-top: 0; /* Höhe des Footers */
}

header {
	border-radius: 0.5em 0.5em 0 0 ;
	border-left: thin solid;
	border-top: thin solid;
	border-right: thin solid;
	padding: .5em;
}

nav {
	border-left: thin solid;	
	border-right: thin solid;
}

footer {
	border-radius: 0 0 0.5em 0.5em;
	border: thin solid;
	padding: .25em;	
}

main{
	border-right: thin solid;
	padding: 0 1.5em 0 1.5em;
}

aside {
	border-left: thin solid;
	padding: 0 1.5em 0 1.5em;
}


footer table, td, th {
    border: 0px solid;
	padding: 0 0.25em;
}

footer table {
    width: 100%;
    height: 2em;
	
    border-collapse: collapse;
}

footer table tr td a {
    text-decoration: none;
    color: Black;
    font-weight: bold;  
}

header table, td, th {
    border: 0px solid black;
	padding: 0 0.25em;
}

header table {
    width: 100%;
    height: 2em;
	
    border-collapse: collapse;
}

header table tr td a {
    text-decoration: none;
    color: Black;
    font-weight: bold;  
}

