/* ##################################################################
 * # html
 * ##################################################################
 */
html {
    height:100%;
}

/* ##################################################################
 * # body
 * ##################################################################
 */
body {
  font-family: Arial,Helvetica,sans-serif;
  font-size:16px;
  height:100%;
  /* The default margin for body in most browsers is 8 px but this
   * triggers scrollbars in body, therefore we reset it to zero. */
  margin:0;
}

/* ##################################################################
 * # a
 * ##################################################################
 */
a {
	text-decoration: underline;
	color:#000000;
}

a:hover {
	text-decoration: underline;
	color:#000000;
}

/* ##################################################################
 * # wrapper (Contains header (top) and container (bottom))
 * ##################################################################
 */
#wrapper {
	display: flex;
	flex-direction: column;
	height:100%;
	width:80%;
	max-width:1200px;
	margin-left:auto;
	margin-right:auto;
}

/* ##################################################################
 * # header (Contains logo)
 * ##################################################################
 */
#header {
	flex: 0 0 auto;
	margin-top:8px;
	margin-bottom:5px;
	width:100%;
	background: linear-gradient(90deg, #7094FF, #ffffff);
}
.navimobilebutton {
    display: none;
}
#navimobile {
	display:none;
}
#navimobilecontainer {
	text-align:center;
}
#navimobilecontainer h2 {
	padding:0px;
	margin:5px;
	font-size:1.8em;
}
@media screen and (max-height: 1000px) and (max-width: 1000px) {
	#logo {
		display:none;
	}

	#navi {
		display:none;
	}

	.navimobilebutton {
		display:block;
	}

	#header {
		background:#7094FF;
		margin:0px;
	}
	#wrapper {
		width:100%;
	}

}
input[type=checkbox]{
    display: none;
}
input[type=checkbox]:checked ~ #navimobile{
    display: block;
}
/* ##################################################################
 * # logo
 * ##################################################################
 */
#logo {
	margin-left:20px;
	margin-top:5px;
	margin-bottom:5px;
	float:left;
	text-align:center;
}
#logo h1 {
	padding:0px;
	margin:0px;
	font-size:2em;
}
#logo ul {
	padding:0px;
	margin:0px;
}
#logo li {
	display:inline;
	padding-left:5px;
	padding-right:0px;
	margin-left:0px;
	margin-right:5px;
	font-size:1.5em;
}

/* ##################################################################
 * # container (Contains navi (left) and contentcontainer (right))
 * ##################################################################
 */
#container {
  flex: 1 1 auto;
  display: flex;
  flex-direction: row;
  min-height:0;
  width:100%;
}

/* ##################################################################
 * # navi
 * ##################################################################
 */
#navi {
	flex: 0 0 auto;
	overflow:auto;
	background: linear-gradient(180deg, #7094FF, #ffffff);
	margin-right:5px;
}
#navimobile {
	background: linear-gradient(180deg, #7094FF, #ffffff);
}
#navi p.hinweis {
	padding:0px;
	margin:20px;
}
#navimobile p.hinweis {
	padding:0px;
	margin:20px;
}
#navi ul {
	padding:0px;
	margin:20px;
	list-style-type:none;
}
#navimobile ul {
	padding:0px;
	margin:0px;
	list-style-type:none;
}
/* level 0 */
#navi li.l0 {
	margin-bottom:20px;
	margin-left:0px;
}
#navimobile li.l0 {
	margin-left:20px;
	margin-right:20px;
	margin-bottom:20px;
	border: 1px solid #000000;
}
#navi li.l0 a {
	text-decoration: none;
	color:#000000;
	font-size:1.0em;
	margin:0px;
	padding:0px;
}
#navimobile li.l0 a {
	text-decoration: none;
	color:#000000;
	font-size:1.2em;
	margin:0px;
	padding:0px;
	display:block;
}
#navi li.l0 a:hover {
	text-decoration: underline;
}
#navimobile li.l0 a:hover {
	background: #ccd9ff;
}

/* level 1 */
#navi li.l1 {
	margin-bottom:20px;
	display: none;
	margin-left:20px;
}
#navimobile li.l1 {
	margin-bottom:20px;
	margin-left:40px;
	margin-right:40px;
	border: 1px solid #000000;
}
#navi li.l1longest {
	margin-bottom:20px;
	visibility:hidden;
	margin-left:20px;
	display:block;
}
#navi li.l1 a {
	text-decoration: none;
	color:#000000;
	font-size:1.0em;
	margin:0px;
	padding:0px;
}
#navimobile li.l1 a {
	text-decoration: none;
	color:#000000;
	font-size:1.2em;
	margin:0px;
	padding:0px;
	display:block;
}
#navi li.l1 a:hover {
	text-decoration: underline;
}
#navimobile li.l1 a:hover {
	background: #ccd9ff;
}
/* display layer 0 menu items bold */
body.id100 #navi li.l0.mid100 {
	font-weight:bold;
}
body.id200 #navi li.l0.mid200 {
	font-weight:bold;
}
body.id300 #navi li.l0.mid300 {
	font-weight:bold;
}
body.id400 #navi li.l0.mid400 {
	font-weight:bold;
}
body.id600 #navi li.l0.mid600 {
	font-weight:bold;
}
body.id800 #navi li.l0.mid800 {
	font-weight:bold;
}
body.id900 #navi li.l0.mid900 {
	font-weight:bold;
}
/* display layer 1 menu items bold */
body.id310 #navi li.l1.mid310 {
	font-weight:bold;
}
body.id320 #navi li.l1.mid320 {
	font-weight:bold;
}
body.id330 #navi li.l1.mid330 {
	font-weight:bold;
}
body.id340 #navi li.l1.mid340 {
	font-weight:bold;
}
body.id380 #navi li.l1.mid380 {
	font-weight:bold;
}
body.id610 #navi li.l1.mid610 {
	font-weight:bold;
}
body.id620 #navi li.l1.mid620 {
	font-weight:bold;
}
body.id910 #navi li.l1.mid910 {
	font-weight:bold;
}
body.id920 #navi li.l1.mid920 {
	font-weight:bold;
}
#navi li.l1longest {
	font-weight:bold;
}
/* display layer 1 menues */
body.id300 #navi li.l1.mid300 {
	display:block;
}
body.id600 #navi li.l1.mid600 {
	display:block;
}

/* ##################################################################
 * # contentcontainer (contains content (upper) and footer (lower))
 * ##################################################################
 */
#contentcontainer {
	flex: 1 1 auto;
	display: flex;
	flex-direction: column;
	padding:0px;
	margin:0px;
	/*width: 754px;*/
	min-height:0px;
}

/* ##################################################################
 * # content
 * ##################################################################
 */
#content {
	flex: 1 1 auto;
	overflow:auto;
	padding:5px;
	margin:0px;
	border:1px solid #bfbfe2;
	background-color:#fafafa;
}
#content body {
	font-size: 1.5em;
}
#content h1 {
	font-size: 2.0em;
	padding:0px;
	margin:0px;
	margin-bottom:20px;
}
#content h2 {
	font-size: 1.5em;
	padding:0px;
	margin:0px;
	margin-bottom:10px;
}
#content h3 {
	font-size: 1.5em;
	padding:0px;
	margin:0px;
	margin-bottom:30px;
	font-style:italic;
	margin-left:30px;
}
#content h4 {
	font-size: 1.8em;
	padding:0px;
	margin:0px;
	margin-bottom:30px;
	font-style:italic;
}
#content p {
	font-size: 1.0em;
	padding:0px;
	margin:0px;
	margin-bottom:20px;
}
/* content properties for id200 */
body.id200 #content ul {
	list-style-type:none;
	margin-left:20px;
	padding:0px;
}
body.id200 #content li {
	margin:0px;
	margin-top:12px;
	padding:0px;
}
/* content properties for id800 */
body.id800 #content h1 {
	font-size: 2.0em;
	margin-bottom:20px;
}
body.id800 #content h2 {
	font-size: 1.0em;
	margin-bottom:10px;
}
body.id800 #content h3 {
	font-size: 1.5em;
	margin-bottom:30px;
	font-style:italic;
	margin-left:30px;
}
body.id800 #content p {
	font-size: 1.0em;
	margin-bottom:20px;
}
/* content properties for id810 */
body.id810 #content h1 {
	font-size: 2.0em;
	margin-bottom:20px;
}
body.id810 #content h2 {
	font-size: 1.0em;
	margin-bottom:10px;
}
body.id810 #content h3 {
	font-size: 1.5em;
	margin-bottom:30px;
	font-style:italic;
	margin-left:30px;
}
body.id810 #content p {
	font-size: 1.0em;
	margin-bottom:20px;
}

/* ##################################################################
 * # footer
 * ##################################################################
 */
#footer {
	flex: 0 0;
	margin-bottom:3px;
	padding-right:30px;
	border:1px solid #bfbfe2;
}
#footer a {
	float:right;
	text-decoration:none;
	margin-left:10px;
}

/* ##################################################################
 * # schriftzugStartseite
 * ##################################################################
 */
#schriftzugStartseite {
	margin-left:auto;
	margin-right:auto;
	text-align:center;
}
#schriftzugStartseite h1 {
	margin-top:50px;
	margin-bottom:50px;
	font-size: 2.0em;
}
#schriftzugStartseite h2 {
	font-size: 2.0em;
}
#schriftzugStartseite li {
	display:inline;
	padding-left:5px;
	padding-right:0px;
	margin-left:0px;
	margin-right:5px;
	font-size:1.7em;
}
#schriftzugStartseite ul {
	margin:0px;
	padding:0px;
	margin-top:20px;
}

/* ##################################################################
 * # adresstabelle
 * ##################################################################
 */
#adresstabelle span {
	display:block;
	float:left;
	font-weight:bold;
}
#adresstabelle span.links {
	width:100px;
}




