html, body {
        margin: 0;
        padding: 0;
        border: 0;
        font-size: 100%;
        font: inherit;
        vertical-align: baseline;
}
body {
	font: 13px/1.231 Arial, sans-serif;
	background: #FFF;
}
html, body {
	height: 100%;
}

.container {
    height:100vh;
    display: grid;
    grid-template-rows: 144px 22px 40px 1fr 44px;
    grid-template-columns: 15% 35% 50%;
    grid-template-areas:
        "header header header"
        "toolbar toolbar toolbar"
        "space space space"
        "sidebar content content"
        "footer footer footer"
    ;
}

#logo {
	position: absolute;
	top: 0;
	left: 44px;
	z-index: 300;
	width: 172px;
	height: 72px;
	background: url("../images/logo_new.gif") no-repeat;
}

/***********
** Header **
***********/
#header {
    background:#AFB4BE;
    grid-area: header;
    overflow: hidden;
}
#header .inner,
#header .visual,
#header .headertext {
	height: 144px;
	overflow: hidden;
}
#header .visual {
	float: left;
	width: 638px;
}
#header .visual img {
	display: block;
}
#header .headertext {
	border-left: 2px solid #FFF;
	padding: 58px 0 0 22px;
	color: #FFF;
}
#header h1 {
	font-size: 123.1%;
	font-weight: bold;
}

/************
** Toolbar **
************/
#toolbar {
    grid-area: toolbar;
    background:#FFCC00;
    border-top: 1px solid #FFF;
    border-bottom: 1px solid #FFF;
    color: #333333;
}
#toolbar .element{
    padding: 0 0 0 30px;
}
#toolbar .element2{
    padding: 0 0 0 655px;
}
#toolbar a.opener {
	display: block;
	float: left;
	border: 0;
	border-right: 1px solid #FFCC00;
	border-left: 1px solid #FFCC00;
	margin-right: 2px;
	padding: 0 8px 0 20px;
	color: #333333;
	font-size: 85%;
	text-decoration: none;
	line-height: 20px;
	background: transparent url("../images/toolbararrows.gif") no-repeat 0 -20px;
}
#toolbar a.opener:hover,
#toolbar a.opener:active {
	color: #fff;
	background-position: 0 -40px;
}
#toolbar .active a.opener {
	border-right-color: #FFF;
	border-bottom: 1px solid #EEE;
	border-left-color: #FFF;
	color: #fff;
	background-color: #FFCC00;
	background-position: 0 -40px;
}

/**********
** Space **
**********/
space {
    background:white;
    grid-area: space;
}

/*********
** Menü **
*********/
sidebar {
    background:white;
    grid-area: sidebar;
}
sidebar ul, li {
	list-style: none;
	margin: 0;
	padding: 0; 
}
sidebar ul li.hover,
sidebar ul li:hover { 
	position: relative;
	z-index: 599;
}
sidebar ul ul {
	visibility: hidden;
	position: absolute;
	top: 100%;
	left: 0;
	z-index: 598;
}
sidebar ul li:hover > ul { 
	visibility: visible;
}
sidebar ul ul {
	top: 0;
	left: 144px;
}
sidebar span,
sidebar a {
	display: inline-block;
}
sidebar .topmenue {
	/* Farbe Hintergrund Hauptmenü */
	background: #FFFFFF;
	/* Farbe Rahmen Hauptmenü */
	border: 1px hidden #007171;
	/* Breite des Hauptmenü */
	width: 144px;
	/* SchriftEinstellungen Hauptmenü */
	font-size: 11px;
	/* Zeilenhöhe Hauptmenü */
	line-height: 15px;
	/* Abstand links */
	padding: 0 0 0 40px;
}
sidebar .topmenue a {
	/* Farbe Text Hauptmenü */
	color: #666666;
	text-decoration: none;
}
sidebar .topmenue:hover,
sidebar .topmenue.active {
        /* Hover Farbe Hintergrund Hauptmenü */
        background: #FFFFFF;
}
sidebar .topmenue a:hover {
        /* Hover Farbe Text Hauptmenü */
        color: #990000;
}
sidebar .firstsubmenue {
	/* Farbe Hintergrund Untermenü1 */
	background: #666666;
	/* Farbe Rahmen Untermenü1 */
	border-top-width: 1px;
	border-right-width: 1px;
	border-left-width: 1px;
	border-bottom-width: 1px;
	border-style: solid;
	border-color: #FFCC00;
	/* Breite des Untermenü1 */
	width: 144px;
	/* SchriftEinstellungen Untermenü1 */
	font-size: 11px;
	/* Zeilenhöhe Untermenü1 */
	line-height: 13px;
}
sidebar .firstsubmenue a {
	/* Farbe Text Untermenü1 */
	color: #FFFFFF;
	text-decoration: none;
	/* Abstand zum Rahmen Untermenü1 */
	/* oben, links, unten, rechts */
	padding: 0px 0px 0px 10px;	
}
sidebar .firstsubmenue:hover {
        /* Hover Farbe Hintergrund Untermenü1 */
        background: #333333;
}
sidebar .firstsubmenue a:hover {
        /* Hover Farbe Text Untermenü1 */
        color: #FFFFFF;
}
sidebar .secondsubmenue {
	/* Farbe Hintergrund Untermenü2 */
	background: #666666;
	/* Farbe Rahmen Untermenü2 */
	border-top-width: 1px;	
	border-right-width: 1px;
	border-left-width: 1px;
	border-bottom-width: 1px;
	border-style: solid;
	border-color: #FFCC00;
	/* Breite des Untermenü2 */
	width: 144px;
	/* SchriftEinstellungen Untermenü2 */
	font-size: 11px;
	/* Zeilenhöhe Untermenü2 */
	line-height: 13px;
}
sidebar .secondsubmenue a {
	/* Farbe Text Untermenü2 */
	color: #FFFFFF;
	text-decoration: none;
	/* Abstand zum Rahmen Untermenü2 */
	/* oben, links, unten, rechts */
	padding: 0px 0px 0px 10px;
}
sidebar .color a {
	color: #FFCC00;
}
sidebar .secondsubmenue:hover {
        /* Hover Farbe Hintergrund Untermenü2 */
        background: #333333;
}
sidebar .secondsubmenue a:hover {
        /* Hover Farbe Text Untermenü2 */
        color: #FFFFFF;
}

/************
** Content **
************/
content {
    background:white;
    grid-area: content;
/*    overflow-y: scroll;*/
}
content #Suche_Content,
content #Link_Content,
content #Impressum_Content {
	display:none;
}
content h1 {
	font-size: 110%;
	font-weight: bold;
	font-family: Arial;
	color: #333;
	margin: 0;
	padding: ;
}
content h2 {
	font-size: 100%;
	font-weight: bold;
	font-family: Arial;
	color: #333;
}
content #Home_Content {
        padding: 200px 0 0 0;
}
content #Hinweis_Content,
content #Impressum_Content {
        font-size: 12px;
	color: #666;
	font-family: Arial;
}
content #Hinweis_Content {
	padding: 300px 0 0 0;
}
content .element {
        padding: 10px 0 30px 0;
}
content .Contentlink {
	color:#666666;
	text-decoration: none;
	font-size: 11px;
	font-weight: bold;
}
content .Contentlink:hover {
	color:#990000;
}
content .Contentlink:before {
        content:url(../images/arrow_A_right.gif)" ";
}
content .second {
        padding: 0 0 0 15px;
}

/***********
** Footer **
***********/
footer {
    background:white;
    grid-area: footer;
    position: absolute;
    bottom: 0;
    width: 100%;
    height: 44px;
}
#nav-footer {
	margin: 30px 0 0 5px;
	color: #999;
	font-size: 77%;
	line-height: 1.3;
}
#nav-footer ul {
	margin: 0;
	list-style: none;
}
#nav-footer li {
	float: left;
	padding: 0 5px 0 6px;
	background: url("../images/dividerfooter.gif") no-repeat left center;
}
#nav-footer li.first {
	padding-left: 0;
	background-image: none;
}
#nav-footer li.relevant {
	color: #999;
}