@charset "utf-8";
/*allgemeine styles*/
/*
farben:
	blau: 003888
	gelb: fabd1a
	weiss: f9f9f9;
  grau: #333;
*/

#debug {
	display:none;
	position:fixed;
	bottom:10px;
	left:10px;
	z-index:1001;
	background:#FF0;
	color:#333;
	padding:10px;
}


body {
	background: #fff8eb;
	background: #fffcf4;
	margin:0;
	padding:0;
	font-family: 'Hind', sans-serif;
	font-weight: 400;
	font-size:14px;
	color:#333333;
	overflow-x:hidden;
}

a {
	color:#003888;
	text-decoration:underline;
}

a:hover {
	color:#fabd1a;
	text-decoration:none;
}
a.scrollLink {
	cursor:pointer;
}

h1 {
	font-size:180%;
	font-family: 'Hind', sans-serif;
	color:#000;
	font-weight: 600;
	padding:0px 0px 0px 0px;
	margin:0px 0px 10px 0px;
	letter-spacing:-1px;
}


h2 {
	font-size:180%;
	font-family: 'Hind', sans-serif;
	font-weight: 300;
	color:#000;
	padding:0px 0px 0px 0px;
	margin:0px 0px 10px 0px;
	letter-spacing:0px;
}


h3 {
	font-weight:600;
	font-size:100%;
	font-family: 'Hind', sans-serif;
	color:#000;
	padding:0px 0px 0px 0px;
	margin:0px 0px 0px 0px;
	line-height:1.15em;
}

p {
	padding:0px;
	margin:0px 0px 19px 0px;
	line-height:1.15em;
	font-size:100%;
	-moz-hyphens: auto;
   -o-hyphens: auto;
   -webkit-hyphens: auto;
   -ms-hyphens: auto;
   hyphens: auto; 
	
	-moz-hyphenate-limit-chars: auto 5;
	-o-hyphenate-limit-chars: auto 5;
	-webkit-hyphenate-limit-chars: auto 5;
	-ms-hyphenate-limit-chars: auto 5;
	hyphenate-limit-chars: auto 5;
	
	-moz-hyphenate-limit-lines: 2;
	-o-hyphenate-limit-lines: 2;
	-webkit-hyphenate-limit-lines: 2;
	-ms-hyphenate-limit-lines: 2;
	hyphenate-limit-lines: 2;
}

/*ende allgemeine stykles */


/*** layout ***/
#pagecontainer {
	position:absolute;
	width: 100%;
	height:100%;
}
#bg {
	position: absolute;
	width:266px;
	left:50%;
	margin-left:-713px;
	top:5px;
	padding:0px 0px 0px 0px;
	height:250px;
	background-position: 0px 0px;
	background-repeat: no-repeat;
	background-size: contain;
	background-image: url(../grafik/b.png); 
	opacity:1;
	
}
#page {
	position: relative;
	width:1200px;
	margin: 0 auto;
	padding:0 0px 0px 0px;
	height:750px;
  height:auto;
}
#header {
	height:150px;
	margin:0px 0px 0px 0px;
	padding:30px 0px 0px 0px;
	width:1200px;
	position: fixed;
	background: url(../grafik/header_fade.png) top right repeat-y;
	z-index:999;
}

div.logo a {
	display:block;
	background-image: url(../grafik/logo_BFB.png);
	background-repeat: no-repeat;
	background-position: 0px 0px;
	background-size:contain;
	text-decoration:none;
	height:106px;
	width:234px;
}


#navcontainer {
	width:280px;
	float:left;
	height:auto;
}

#menu {
	padding-top:320px;
}

#menu a {
	text-decoration:none;
	margin:0px 0px 10px 0px;
	border-left:18px #fabd1a solid;
	padding:1px 0px 1px 16px;
	display:block;
	color:#333;
	font-size:16px;
}


#menu a.act, #menu a:hover {
	border-left:18px #003888 solid;
	padding:1px 0px 1px 16px;
}


#mobilemenu {
	display: none;
	position: fixed;
	top:20px;
	margin-left:0px;
	cursor: pointer;
	height:25px;
	width:25px;
	background-image:url(../grafik/menu_button.png);
	background-repeat: no-repeat;
	background-size: cover;
	background-position: 0px 0px;
}


#content{
	/*position:relative;*/
	width:920px;
	float:left;
	padding:0px 0px 0px 0px;
	margin:170px 0px 0px 0px;

}

#footer {
	position: relative;
	width:1200px;
	margin: 0px auto 20px auto;
	padding:5px 0px 70px 0px;
	border-top:#003888 3px solid;
	font-size:80%;
	background-image:url(../grafik/quadraetli.png);
	background-repeat:no-repeat;
	background-position: right;
	background-size:auto 100%;
	opacity:0.5;
}

#footer a {
  color:#000;
	text-decoration:underline;
}

#footer p:first-of-type {
	float:left;
}

#footer p:last-of-type {
	float:right;
}


div.clear {
	clear:both;
	height:0px;
}
/*** end layout ***/

/*** content stuff ***/

ul {
	margin:0px 0px 10px 0px;
}

li {
	margin:5px 0px 0px 10px;
	padding:0px 0px 0px 10px;
	/*list-style-image:url(../grafik/list_style_img.png);*/
	list-style:'-';
}


/*end forms */

/*shadow*/
#shadow_overlay {
	position:fixed;
	top:0px;
	left:0px;
	background:url(../grafik/fff_75.png) top left repeat;
	height;100%;
	width:100%;
	filter: alpha(opacity=0);
	opacity: 0;
	display:none;
	z-index:1001;
}
/*shadow end*/

/*shadow*/
#loading_indicator {
	position:fixed;
	top:50%;
	left:50%;
	margin-left:-33px;
	margin-top:-33px;
	filter: alpha(opacity=0);
	opacity: 0;
	display:none;
	z-index:1002;
}
/*shadow end*/

/*overlay*/
#page_overlay {
	position:absolute;
	width:300px;
	padding:3px;
	margin:0;
	margin-left:-150px;
	top:0px;
	left:50%;
	border:3px solid #fabd1a;
	border-top:none;
	display:none;
	z-index:1001;
	box-sizing: border-box;
	background: #fff;
}

#close_page_overlay {
	z-index: 1002;
	display: block;
	position: relative;
	float:right;
	width:20px;
	height:20px;
	margin:10px 10px 0px 0px;
	background:url(../grafik/menu_button.png) no-repeat;
	background-size: cover;
	background-position: 0px 0px;
	cursor: pointer;
}
/*end overlay*/



/***admin***/
#loginScreen {
	display:none;
	position: absolute;
	width: 300px;
	top: -250px;
	left: 50%;
	margin-top: -200px;
	margin-left: -150px;
	border:#003888 4px solid;
	padding:15px;
	background:#fff;
	z-index: 1002;
}

#loginScreen input {
	margin:0px 0px 3px 0px;
	padding:2px 0px 5px 0px;
	background:none;
	border:none;
	border-bottom:#ddd dashed 1px;
	color:#333;
}

#loginScreen a {
	color:#333;
	font-weight:bold;
	text-decoration:none;
	text-transform:uppercase;
}

#loginScreen a:hover {
	color:#fff;
	font-weight:bold;
}

div.error {
	color:#FF0000;
	padding:0px 0px 0px 15px;
	margin: 0px 0px 0px 0px;
	background:url(../grafik/error.png) top left no-repeat;
}

#member_header {
	display:none;
	position:absolute;
	top:0px;
	left:0px;
	height:25px;
	width:100%;
	background-color:#003888;
	color:#FFFFFF;
	z-index:1002;
}

#member_header .welcome, #member_header .message {
	margin:6px 8px 0px 8px;
	/*! font-size:10px; */
}

#member_header .welcome {
	float:right;
}

#member_header .message {
	float:left;
}

#member_header .welcome a, #member_header .message a {
	color:#FFFFFF;
	text-transform:uppercase;
	text-decoration:none;
}
/***admin end***/

/*responsiveness*/

span.resp01 {
	display:inline;
}
span.resp02 {
	display:none;
}
/* size XL */
@media screen and (max-width:1260px) { 
 #bg {
	 margin-left:-588px;
  }
  #page, #header, #footer {
		width:950px;
  }

	#navcontainer {
	 width:230px;
  }
	#content {
		width:720px;
		margin:180px 0px 0px 0px;
	}

}


/* size L */
@media screen and (max-width:1000px) { 
 #bg {
	 margin-left:-488px;
	 
  }
  #page, #header, #footer {
		width:750px;
  }

	#navcontainer {
	 width:220px;
  }
	#content {
		width:530px;
		margin:180px 0px 0px 0px;
	}
	#menu a{
		//font-size:18px;
	}
	#contact_adress a {
		font-size:12px;
	}
	
}

/* size M */
@media screen and (max-width:800px) { 
  #bg {
	 margin-left:-405px;
	 top:0;
	 height:175px;
		opacity:0.5;
  }
	#page, #header, #footer, #content {
		width:680px;
  }
  #header {
	 padding:30px 30px 0px 0px;
	}
	#navcontainer {
	 width:250px;
		right:-210px;
		position:fixed;
		background:#fff;
		height:100%;
		z-index:1000;
  }
	#content {
		margin:180px 0px 0px 0px;
	}	
	
	#mobilemenu{
		display:block;
	}
	#menu {
		padding-top:150px;
		height:100%;
		overflow:hidden;
		text-align:right;
	}
	
	#menu a {
  	padding:1px 16px 1px 16px;
  	border:none;
		border-right:18px #fabd1a solid;
  	margin:0px 20px 10px 0px;
  }


  #menu a.act, #menu a:hover {
  	border: none;
  	border-right:18px #003888 solid;
  	padding:1px 16px 1px 16px;
		margin:0px 20px 10px 0px;
  }
	
	#footer {
		z-index:999;
	}
}


/* size S */
@media screen and (max-width:700px) { 
  #bg {
	 margin-left:-325px;
	 top:0;
	 height:150px;
  }
	#page, #header, #footer, #content {
		width:500px;
  }
	#navcontainer {
		background:none;
  }
  #menu {
		padding-top:100px;
	}
	#content {
		margin:150px 0px 0px 0px;
	}	
}

/* size XS */
@media screen and (max-width:540px) { 
	 #bg {
	 /*margin-left:-270px;
	 top:0;
	 height:150px;*/
		display:none;
  }
	#page, #header, #footer, #content {
		width:100%;
  }
	#header {
	 padding:30px 60px 0px 0px;
	}
	#content {
		padding:0px 20px 0px 20px;
	}	
	#footer {
	 padding:5px 20px 50px 20px;
  }
	span.resp01 {
		display:none;
	}
	span.resp02 {
		display:inline;
	}
		#shadow_overlay {
		background:#fff;
	}
	.resp_mg_01 {
		display:none;
	}
}

/* size XXS */
@media screen and (max-width:316px) { 
	#header {
	 padding:30px 24px 0px 0px;
	}
	#footer p img {
		width:40px;
	}
	#shadow_overlay {
		background:#fff;
	}

}

