/* styles Desktop 1096 min
======================== */
body,html {
	width:100%;
	min-width:320px;
	min-height:calc(100vh - 800px);
	background-color:#fff;
	scroll-behavior: smooth;
}

* {
	font-family: 'Open Sans', sans-serif;
	font-size:17px;
	color:#000;
}

/* Header
==============================*/
header {
	display:block;
	position:absolute;
	top:140px;
	left:0;
	width:100%;
	height:484px;
	background:#a4ccea;
}

header #gallery {
	position:absolute;
	background:none;
	border:none;
	top:0;
	left:0;
	width:100%;
	height:414px;
	background-size:100% auto;
	background-position:50% 50%;
	background-repeat:no-repeat;
	margin:0;
	padding:0;
	overflow:hidden;
}
header #gallery figure {
	display:block;
	position:absolute;
	width:100%;
	height:100%;
	background-size:100% auto;
	background-position:50% 50%;
	background-repeat:no-repeat;
	margin:0;
	padding:0;
}

header #slogan {
	display:block;
	position:absolute;
	bottom:0;
	margin:auto;
	width:450px;
	left:calc(50% - 225px);
	height:56px;
	line-height:125%;
	font-weight:bold;
	text-align:center;
}

#logo {
	display:block;
	position:fixed;
	top:20px;
	left:calc(50% - 70px);
	width:140px;
	height:160px;
	background:url('/images/VMU-Logo.png') left top no-repeat;
	background-size:cover;
	z-index:20;
}
#logo a {
	display:block;
	width:100%;
	height:100%;
}

/* Menü
=======*/
#showmenu {
	display:none;
}

nav {
	display:block;
	position:fixed;
	width:100%;
	height:70px;
	top:0;
	border-top:70px solid #fff;
	background-color:#a4ccea;
	z-index:10;
}

/*Ebene 1 Hauptmenü*/
nav ul {
	display: block;
	margin:0;
	padding:0;
	text-align:center;
}

nav li {
	display:inline-block;
	position:absolute;
	line-height:70px;
}
nav li:nth-child(1) {
	right:calc(50% + 420px);
}
nav li:nth-child(2) {
	right:calc(50% + 260px);
}
nav li:nth-child(3) {
	right:calc(50% + 100px);
}
nav li:nth-child(4) {
	left:calc(50% + 100px);
}
nav li:nth-child(5) {
	left:calc(50% + 300px);
}
nav li:nth-child(6) {
	left:calc(50% + 420px);
}

nav a {
	text-decoration: none;
	color: #000;
	-webkit-transition: color .1s ease-in;
	transition: color .1s ease-in;
	line-height:100%;
}

nav li.selected a,
nav li.open a {
	font-weight:800;
}

nav a:focus,
nav a:hover,
nav a:active {
	color:#ffeed4;
	-webkit-transition: color 0.01s;
	transition: color 0.01s;
}

nav span {
	visibility:hidden;
	-webkit-transition: all 0.2s 0.2s;
	transition: all 0.2s 0.2s;
}

/* Allgemein
============*/
#content *.rechts {
  float:right;
  margin-left:10px;
}

#content *.links {
  float:left;
  margin-right:10px;
}

#content *.zentriert {
  display:block;
  width:100%;
  text-align:center;
}

#content *.small {
  font-size:60%;
}

#content .clearfix:after {
    content: ".";
    clear: both;
    display: block;
    visibility: hidden;
    height: 0px;
}

#content p {
  -moz-hyphens: auto;
  -o-hyphens: auto;
  -webkit-hyphens: auto;
  -ms-hyphens: auto;
  hyphens: auto;
}
}

#content input {
  margin-bottom:0.5vw;
  box-sizing: border-box;
}

#content a {
  -moz-hyphens: none;
  -o-hyphens: none;
  -webkit-hyphens: none;
  -ms-hyphens: none;
  hyphens: none;
}

#content *.fehler {
  color:#C20000;
}

#content a.anker {
	display: block;
    position: relative;
	top:-160px;
	visibility:hidden;
}
/* Content-Boxen
================*/
#content {
  display:block;
  position:relative;
  margin-top:648px;
  padding:0 0 24px 0;
  width:100%;
  background-color:#fff;
  scroll-padding-top:140px;
}

#content article {
  display:block;
  position:relative;
  width:720px;
  padding:0 110px 0 110px;
  line-height:150%;
  margin:auto;
}

#content h1 {
  font-size:26px;
  font-weight:700;
  line-height:150%;
  margin:0 0 8px 0;
  color:#003f7d;
}

#content h2 {
  clear:both;
  font-size:19px;
  font-weight:700;
  line-height:150%;
  margin:0 0 5px 0;
  color:#003f7d;
}

#content h3 {
  clear:both;
  font-size:17px;
  font-weight:600;
  line-height:150%;
  margin:0 0 4px 0;
}

#content p {
	display:block;
	padding:0 0 24px 0;
	margin:0;
	text-align:left;
}

#content ul {
  list-style: bullet outside none;
  padding:0 0 20px 20px;
  margin:0;
}

#content p + ul {
  margin-top: -8px;
}

#content img {
	display:block;
	width:100%;
	height:auto;
	margin:1% 0 1% 0;
}





#content p.small {
  font-size:12px;
}
  
#content *.hilite,
#content a {
  color:#003f7d;
  font-weight:400;
  text-decoration:none;
}

#content a:hover {
  border-bottom:1px solid #003f7d;
}

#content a.pdf {
  display:inline-block;
  padding:0 0 0 5.2%;
  height:200%;
  line-height:200%;
  background:url("/images/icons/pdf.png") left center no-repeat;
  background-size:auto 100%;
  border-bottom:0;
}

iframe.google_maps {
  width:50%;
  height:400px;
}

/* Sitebrowser
==============*/
ul.sitebrowser {
  line-height:150%;
}

/* Footer
=========*/
footer {
	clear:both;
	display:block;
	position:relative;
	width:100%;
	height:152px;
	background-color:#a4ccea;
	border-top:64px solid white;
}
footer #footerlogo {
	position:absolute;
	top:-64px;
	width:115px;
	height:130px;
	left:calc(50% - 57.5px);
	background:url('/images/VMU-Logo.png') left top no-repeat;
	background-size:cover;
}
footer .slogan {
	position:relative;
	display:block;
	top:87px;
	color:#000;
	font-size:17px;
	text-align:center;
}

footer .menu {
	position:relative;
	display:block;
	top:98px;
	font-size:17px;
	text-align:center; 
}
footer .menu a {
  color: #000;
  -webkit-transition: color .1s ease-in;
  transition: color .1s ease-in;
  line-height:100%;
  margin-right:40px;
  text-decoration:none;
}
footer .menu a:last-child {
	margin-right:0;
}
footer a:hover {
  color:#fff;
  -webkit-transition: color 0.01s;
  transition: color 0.01s;
}
footer a.selected {
  font-weight:800;
}
footer a.einstellungen {
	background:url('/images/icons/einstellungen.png') top left;
	background-size:cover;
	width:45px;
	height:32px;
	margin-bottom:-12px;
}

#message {
	display:none;
	position:fixed;
	top:0;
	left:0;
	width:100%;
	background-color:#f3f3f3;
	text-align:center;
	color:#000;
	display:inline-block;
	padding:20px;
	line-height:200%;
	border-bottom:1px solid #c2c2c2;
	z-index:10000;
}
#message.ok {
	background-color:#f2fff2;
}
#message.fehler {
	background-color:#fff2f2;
}

/* ==================================
   Tablets & Mobiles
===================================*/
@media only screen and (max-width:1096px) {	
	body, html {
		max-width:100vw;
		-ms-overflow-style:none;
		scrollbar-width:none;
	}
	::-webkit-scrollbar {
		display:none;
	}
	header {
		height:410px;
		position:relative;
	}
	header #gallery {
		height:330px;
	}
	header #slogan {
	margin:auto;
	left:0;
	width:70%;
	padding:5px 15% 5px 15%;
	line-height:125%;
	font-weight:bold;
	text-align:center;
}
	#logo {
		position:absolute;
		top:-50px;
		z-index:51;
	}
	nav {
		position:absolute;
		height:70px;
		width:100vw;
		top:0;
		left:0;
		z-index:50;
	}
	nav #showmenu {
		display:block;
		margin-left:24px;
	}
	nav #showmenu a {
		cursor:pointer;
		line-height:70px;
		font-size:60px;
		color:#fff;
}
	nav #menu {
		display:none;
		position:absolute;
		z-index:52;
		left:24px;
		width:200px;
	}
	nav ul {
		position:relative;
		background-color:#afd2ed;
		padding:8px 4px 8px 4px;
	}
	nav li {
		text-align:left;
		position:relative;
		display:block;
		left:12px !important;
		line-height:250%;
	}
	nav li a {
		color:#fff;
	}
	nav li a:hover {
		color:#003f7d;
	}	
	#content {
		padding:20px 0 0 0;
		width:100vw;
		margin:150px 0 0 0;
	}
	#content article {
		width:90%;
		padding:0;
	}
	#content article.aktuelles {
		width:100vw;
	}

		
	footer {
		width:97%;
		padding:1.85vw 1.5% 3vw 1.5%;
	}
}

/* ==================================
   Mobiles
===================================*/
@media only screen and (max-width:640px) {	
	#logo {
		top:-38px;
		width:115px;
		height:130px;
		left: calc(50% - 57.5px);
	}
		
	header {
		top:100px;
		height:auto;
	}
	header #gallery {
		height:200px;
		position:relative;
	}
	header #slogan {
		position:relative;
		margin:0 auto 0 auto;
		width:90%;
		height:auto;
		padding:10px 5% 10px 5%;
	}
	nav {
		position:absolute;
		height:60px;
		width:100vw;
		top:0;
		left:0;
		border-top:40px solid #fff;
	}
	nav #showmenu {
		display:block;
		margin-left:5%;
	}
	nav #showmenu a {
		line-height:60px;
		font-size:40px;
}
	#content {
		top:100px;
		padding:5% 0 1.5% 0;
		width:100%;
		margin:0 0 0 0;
	}
	footer {
		width:97%;
		padding:1.85vw 1.5% 6vw 1.5%;
		margin-top:160px;
		height:auto;
		border:0;
	}
	footer .slogan {
		margin-top:70px;
		top:0;
	}
	footer .menu {
		top:0;
		margin-top:12px;
	}
}

plugin {
	background:url('/images/binaryback.jpg') left top #000;
	background-size:cover;
	padding:24px;
	color:#fff;
	display:block;
	font-family:'Courier New';
	font-weight:800;
}