html { font-size: 100%; }
html, body { height: 100%; margin: 0; }
a { color: #333; }
	a:hover, a:active { color: #6da419; }
	header a { text-decoration: none; }
aside { background: #e6e6e6; }
body { background: #fefefe; color: #333; font-family: 'Georgia', serif; font-size: 20px; line-height: 1.7em; }
h1, h2, h3, h4, h5, h6 { font-family: 'Jost', sans-serif; font-weight: 500; }
	header h1 { color: #6da419; font-size: 2em; margin: 0.5em 0 0 0; font-weight: 400; }
	header h1 span { font-weight: 600; }
	aside h1 { font-size: 1.8em; margin: 0 auto; letter-spacing: 1px; line-height: 1.2; padding: 0.7em 0; }
	h2 { color: #6da419; font-size: 2em; margin-top: 1.3em; }
	header h2 { color: #333; font-size: 1em; margin: 0 0 0.5em 0; }
	h3 { font-size: 1.7em; }
	header h1, header h2 { line-height: 1.2; }
aside h1, header div, section, .flex { width: 80%; }
	header div { margin: 0 auto; }
img { max-width: 100%; }
section { margin: 2.5em auto 4em auto; }
.grid { display: grid; grid-template-columns: 1fr 1fr 1fr; grid-column-gap: 1em; margin: 0 auto; }

/*============================ Menu ============================*/

nav { font-family: 'Jost', sans-serif; font-weight: 500; line-height: 1.3; padding-bottom: 0.1em; }
nav a { text-decoration: none; }
nav li { margin: 0; list-style: none; }
nav ul { margin-top: 1em; margin-bottom: 1em; padding: 0; }
.home a.menu-home, .company a.menu-company, .about a.menu-about, .contact a.menu-contact, .impressum a.menu-impressum { color: #6da419; }

/*============================ Media Queries ============================*/

@media (min-width: 1400px) {
	aside h1 { font-size: 2em; }
	aside h1, header div, section, .flex { width: 55%; }
	nav { font-size: 1.2em; }
	nav li { display: inline; margin-right: 2.5em; }
	nav ul { line-height: 80px; margin-top: 0; margin-bottom: 0; }
}