@font-face {
    font-family: 'Open Sans';
    src: url('../font/opensans-bold-webfont.woff2') format('woff2'),
         url('../font/opensans-bold-webfont.woff') format('woff');
    font-weight: bold;
    font-style: normal;
}

@font-face {
    font-family: 'Open Sans';
    src: url('../font/opensans-bolditalic-webfont.woff2') format('woff2'),
         url('../font/opensans-bolditalic-webfont.woff') format('woff');
    font-weight: bold;
    font-style: italic;
}

@font-face {
    font-family: 'Open Sans';
    src: url('../font/opensans-italic-webfont.woff2') format('woff2'),
         url('../font/opensans-italic-webfont.woff') format('woff');
    font-weight: normal;
    font-style: italic;
}

@font-face {
    font-family: 'Open Sans';
    src: url('../font/opensans-regular-webfont.woff2') format('woff2'),
         url('../font/opensans-regular-webfont.woff') format('woff');
    font-weight: normal;
    font-style: normal;
}


/* ------------------------------------- general / allgemein ----------------------------- */

html {
	overflow-y:scroll;
}

body {
	background: none repeat scroll 0 0 #f1f1f1;
	font-size: 18px;
	font-family: "Open Sans", Arial, sans-serif;
	color: #333;
}


h1, h2, h3, h4, h5, h6 {
	color: #990000;    /* #314B68; */
	font-weight: normal;
	line-height: 1.3;
	margin: 0.5rem 0;
}

h1 { font-size: 1.8rem; font-weight: bold;}
h2 { font-size: 1.6rem; }
h3 { font-size: 1.4rem; }
h4 { font-size: 1.2rem; }
h5 { font-size: 1.0rem;}
h6 { font-size: 0.8rem; }

a, a:link, a:visited, a:hover, a:active {
	text-decoration: underline;
	color: #ad0c1a;  /* #a4a; */
	transition: color 0.20s linear 0s;
	-o-transition: color 0.20s linear 0s;
	-ms-transition: color 0.20s linear 0s;
	-moz-transition: color 0.20s linear 0s;
	-webkit-transition: color 0.20s linear 0s;
}

a:hover {
	color: #323f55;  /* #a26; */
}

/* some space for anchor links to avoid being hidden by the stick nav
Padding für Sprungmarken, damit diese nicht von der sticky-Navigation überlagert werden
http://darktef.github.io/posts/2017-03-offset-html-anchors-for-fixed-header-with-css */

/*
:target {
  display: block;
  position: relative;
  top: -120px; 
  visibility: hidden;
}
*/

p, li, dl, blockquote, table, kbd {
	font-size: 1rem;
	line-height: 1.6;
}

hr {
	border: 0;
	border-top: 4px solid darkred;
	clear: both;
	height: 0;
	margin: 0.5rem auto;
}

/* ------------------------------------------- top nav styles-------------------------------------------*/

nav {	background: #444444;
        /* margin-top: -20px; / * overlap with kopf */
        border-top: 4px solid #bb0000; 
        position: relative; /* to let z-index work */
        z-index: 10;  /* overlap with kopf */
        display: inline-block; 
        }

.top-nav ul ul { background-color: #314B68; }
.top-nav li a { padding:0.5rem 8px; color: #fff; text-decoration: none; }
.top-nav li ul li a { background-color:  #314B68; }
.top-nav li a:hover, .aside-nav li a:hover { background-color: #90AAC0; }
.top-nav .active-item a { background: #546F8D; }
.top-nav li.isopened>ul { display: block; color: red; }

.top-nav li a.menu-current {color: #fff;}

	.aside-left-block { display: block;}
	.aside-left-block-bottom { display: none; padding: 15px;}
@media screen and (max-width:768px) {
	.top-nav li a {	background: none repeat scroll 0 0 #1c3849;	}
	.top-nav li a { color: #fff;}
	.top-nav li a:hover { background: none repeat scroll 0 0 #314B68; color: #fff; 	}
	.top-nav li ul li a { padding-left:20px; background: none repeat scroll 0 0 #2b4c61;	}
	.top-nav li ul li ul li a { padding-left:40px; background: none repeat scroll 0 0 #456274;	}
        .top-nav li ul li ul li ul li a { padding-left:60px; background: none repeat scroll 0 0 #456274;	}
	.nav-text { color: #fff; padding: 0 10px; float:left}

    .aside-left-block { display: none;}
	.aside-left-block-bottom { display: block}	
    
    .nav-search-input {display: none;}
}

/* ------------------------------------------- aside nav styles-------------------------------------------*/

.aside-nav-noresponsee {
   background-color: #fff;
   padding: 10px;
   margin: 0 10px 0 0px;
}

.aside-nav-noresponsee ul {
	margin:0;
	/* padding:0; */	
}

.aside-nav-noresponsee li {
	list-style-type:none;	
}

.aside-nav-noresponsee li a,
.aside-nav-noresponsee li a:link,
.aside-nav-noresponsee li a:visited {
	display:block;
	padding:0.3rem 0.5rem;
        color: #323f55;
	/* background-color:#eee; */
    border-bottom: 1px solid gray;
    text-decoration: none;
}

.aside-nav-noresponsee li ul li a:link {
	/* padding-left:2.5rem; */
}

.aside-nav-noresponsee li.activ_child>a {
    background-color:#f0f0f0;
}

.aside-nav-noresponsee li a:hover,
.aside-nav-noresponsee li>a.menu-current {
	background-color:#ddd;
	/* color: #5588a3; */
}

.aside-nav-noresponsee li li.menu-current a    { /* padding-left: 40px; */ }
.aside-nav-noresponsee li li li.menu-current a { /* padding-left: 60px; */ }
.aside-nav-noresponsee li a.menu-current { font-weight: bold; color: #c00;}

.aside-nav-noresponsee li a.menu-expand::after {content:"v"; float:right; font-size:x-small;}

.aside-left-block {
   margin: 20px 10px 0 0 ;
   padding : 10px;
   background-color: #fff;
}

/* -------------------------------------------- Nav ---------------------------------- */

.kopf {margin-top: 5px;}
.main-nav {}
.crumb-nav {font-size: small; padding: 3px; float: left}
.foot-links {font-size: small; padding: 3px; text-align: center}
.maincontent {
	background-color: #fff; 
	padding: 10px;
	font-size: 14px;
	font-family: Arial, Helvetica;
	line-height: 1.5em;
}
.maincontent .table-alt-grey tr:nth-child(even) {background-color: #f2f2f2;}
.maincontent .table-shade th {background-color: lightgrey; font-weight: bold;}
.maincontent .table-shade td {border-right: 1px solid grey; border-bottom: 1px solid grey;}
.maincontent img {padding: 10px;}


/* -------------------------------------------- parts / Bereiche ---------------------------------- */


.headerpic img {
	display:block;
}


header .line,
section .line,
footer .line {
	/* background-color:#fff; */
	padding:0 !important;
}

.logo {
	padding:2rem;
}



.wbcesuche {
	padding:0.5rem 10px;
    float: right;
}

.wbcesuche input[type=text] {
	background-color: #fff;
	border:0;
	/* border-bottom:1px solid #fff; */
	color:#000;	
    border-radius: 4px;
    line-height: 1.5;
}

.wbcesuche input[type=submit] {
	font-family:sli;
	border:0;
	background-color:transparent;
	color:#fff;
}

::placeholder {color:gray;}
:-ms-input-placeholder {color:#fff;}
::-ms-input-placeholder  {color:#fff;}

h1#contentstart {
	margin-top:-0.5rem;
}

.maincontent p, .maincontent li {
	padding-bottom:0.5em;
}

.maincontent li ul, .maincontent li ol {
	padding-top:0.5em;
}


.back-to-top {
	position:fixed;
	bottom:20px;
	right:20px;	
}

a.back-to-top, footer a:link, footer a:visited {
	border:0;
	padding:0 1em;
}

@media screen and (max-width:768px) {
	.wbcesuche {
		text-align:center;
	}
}


/* --------------------------- pics ------------------------------------ */
img.picfull {width:100%; height:auto;}

@media screen and (min-width:640px) {
img.pic2left, img.pic3left, img.pic4left { margin: 0 1em 1em 0; height:auto; }

img.pic2right, img.pic3right,  img.pic4right { margin: 0 0 1em 1em; height:auto; }

img.pic2left {float:left; max-width:49%;}
img.pic2right {float:right; max-width:49%; }

img.pic3left {float:left; max-width:32%;}
img.pic3right {float:right; max-width:32%;}

img.pic4left {float:left; max-width:24%;}
img.pic4right {float:right; max-width:24%; }
}

@media screen and (max-width:640px) {
	img.pic2left, img.pic3left, img.pic4left,
	img.pic2right, img.pic3right,  img.pic4right { margin: 1em 0; width:100%; float:none; height:auto; }
}