*{
	box-sizing: border-box;
}
html {
	font-size: 1.0625em;
	line-height: 1.58;
	height: 100%;
}
body {
	margin:0;
	font-family: OpenSans,Arial,Helvetica,sans-serif;
	background-color: lightgray; 
	height: 100%; 
}

h1, h2, h3 {
	color: black;
	font-weight: bold;
}
h2 {
	margin: 20px 0 5px;
}
h3 {
	margin: 15px 0 5px;
}
p {
	text-align: justify;
    text-justify: inter-word;
	
	-webkit-hyphens: auto;
	-moz-hyphens: auto;
	hyphens: auto;
}
a {
	color: darkslategray;
	text-decoration: none;
}
a:hover {
	text-decoration: underline;
}
img {
	max-width:100%;
	height:auto;
}
figure{
	margin: 0;
	text-align: center;
}
figure img {
	margin: 0 auto;
}
table {
	border-collapse: collapse; 
}
td {
	padding: 2px; 
}

nav, nav ul, nav li, nav ul ul, nav ul ul li {           /* Normalisierung */
	list-style: none; 
	margin: 0; 
	padding: 0;
	border: 0;
}
nav input[type="radio"] {
	display:none;
}

[class*="col-"] {
	float: left;
	padding: 1px 7px;
	width: 100%;
}

#wrapper {
	min-height: 100%;
	position: relative;
	background-color: white;
	margin: 0 auto;
	max-width: 1200px;
}

@media only screen and (max-width: 1165px) {
	.col-1 {display: none;}
	.hide {display:none;}
	
	nav ul {
		list-style-type: none;
		margin: 0;
		padding: 0;
	}

	nav {
		cursor: pointer;
	}
	
	nav[class*="col"]{
		position: fixed;
    top: 7px;
    right: 0;
    background-image: url('../assets/grafics/icon-menu.png');
    background-size: cover;
    width: 45px;
    height: 45px;
    z-index: 100;
	}
	
	nav li {
		display: none; 
		color:black;
		line-height: 1.5em; 
	}
	nav:hover li, #menu:active li {
		display: block; 
		background-color:lightgrey;
		font-size: 1.1rem;
		padding: 2px 0;
	}
	nav:hover, nav:active {
		width: 100%; 
		max-width: 200px;
		background: none;
		z-index: 100;
		padding: 0;
		overflow-y: scroll;
		height: 100%;
	}
	.navRadio + label + ul {
		display:none;
	}
	.navRadio:checked + label + ul {
		display:block;
	}
	nav label {
		margin-left: 5px;
	}
	nav label:after {
		content:" +"
	}
	.navRadio:checked +label:after {
		content: "";
	}
	nav a {
		padding: 0 0 0 25px;
	}
	
	.header {
		width:100%;
		background-image: url(../assets/grafics/subway.jpg);
		background-size: cover;
		position: fixed;
		z-index:100;
		top: 0px;
		left: 0px;
		height: 56px;
		box-shadow: 0 5px 2px rgba(30,30,30,0.3);
	}
	.header h1 {	
		margin: 15px 45px 0 0;
		font-size: 16px;
		color: white;
	}
	
	.firstRow {
		margin-top:55px;
	}
	
	.buttonHome {
		display: block;
		width: 220px;
		height: 56px;
		float:left;
		padding-left: 80px;
	}
	
	.pull-left {
		clear: both;
		width: 100%;
	}
	
	.overviewList li {
		padding-bottom: 15px;
	}
}

/* Tablet Add info col to right */
@media only screen and (min-width: 500px) {
	.info {
		margin-top: 20px;
	}
	
	td, th {
		padding: 0 4px;
	}
	
	.footer {
		margin: 0 auto;
		position: absolute;
		bottom: 0;
		width: 100%;
	}
	
	.pull-left {
		float: left;
		margin-right: 5px;
		width: 200px;
	}
	
	.overviewList li {
		clear: both;
		padding-top: 15px;
	}
}

/* Browser view */
@media only screen and (min-width: 1165px) {
	body {
		font-size: 1rem;
	}
	
	[class*="col-"] {
		padding: 1px 15px;
	}
	.col-1 {width: 8.33%;}
	.col-2 {width: 16.66%;}
	.col-3 {width: 25%;}
	.col-4 {width: 33.33%;}
	.col-5 {width: 41.66%;}
	.col-6 {width: 50%;}
	.col-7 {width: 58.33%;}
	.col-8 {width: 66.66%;}
	.col-9 {width: 75%;}
	.col-10 {width: 83.33%;}
	.col-11 {width: 91.66%;}
	.col-12 {width: 100%;}
	
	nav {
		margin-top: 40px;
	}
	nav ul {
		position: relative;
		display: inline-flex;
		text-align:left;
	}
	nav li {
		display: block; 
		color:black;
		background-color: darkslategray;
		line-height: 50px; 
		transition-duration: 0.5s;
		padding: 0 15px;
	}
	nav li:first-child {
		border-radius: 15px 0 0 15px;
	}
	nav li:last-child {
		border-radius: 0 15px 15px 0;
	}
	nav li:hover, #menu:active li { 
		background-color:lightgrey;	
		cursor: pointer;
	}
	nav ul li ul {
		background: #2e8f34;
		visibility: hidden;
		opacity: 0;
		position: absolute;
		transition: all 0.5s ease;
		left: 0;
		display: none;
		padding: 5px 0;       
	}
	nav ul li:hover > ul, 
	nav ul li:focus-within > ul,
	nav ul li ul:hover{
		visibility: visible;
		opacity: 1;
		display: block;   
	}
	nav ul ul li {
		margin: 0 5px;
		white-space: nowrap;
	}
	nav ul ul li:hover {
		background: #2e8f34;
	}
	nav a, nav label {
		text-decoration: none;
		color: white;
		border: 0;
		font-size: 18px;
		letter-spacing: .5px;
	}
	nav ul ul li a{
		text-decoration: none;
		font-weight:normal;
		color: white; 
	}
	nav a:focus, nav a:hover, nav a:active {    
	  color: white; 
      text-decoration: none;
	}
	
	nav.col-10 {
		padding: 1px 0;
	}
	
	#wrapper {
		margin-bottom: -50px;
		padding: 0 0 50px;
	}
	
	.header {
		background-image: linear-gradient(to left, transparent 20%, white 100%), url(../assets/grafics/subway.jpg);
		background-size: cover;
		position:relative;
		height: 190px;
		padding: 0;
	}
	.header h1 {
		margin: 3px 0 0 10px;
		padding: 35px 0 20px 0;
		line-height: 50px;
		font-size: 1.7em;
		font-weight:bolder;
		color: #2F4F4F;
	}

	.footer {
		height: 50px;
	}

	.buttonHome {
		display:block;
		width:290px;
		height: 90px;
		margin-left: -5px;
		float:left;
		padding-left: 145px;
		font-size: larger;
		color: black;
		font-weight: bold;
	}
	.buttonHome:hover {
		text-decoration: none;
	}
	
	.formL {
		width: 100%; 
	}
	
	img {
		padding: 2px;
	}
	
	.pull-left {
		float: left;
		margin-right: 5px;
	}
	
	.overviewList li {
		clear: both;
		padding-bottom: 15px;
	}
	
	.latestnews {
		text-indent: -4.5em;
		list-style: none;
	}
}

.row::after {
    content: "";
    clear: both;
    display: table;
}

.footer {
	text-align:center;
	width: 100%;
}
.footer p {
	text-align: inherit;
	font-size: .75rem;
}

.overviewList {
	list-style: none;
	padding: 0;
}

.tabTable td {
	padding: 2px 5px;
}