/*--- general ---*/

	* { outline-width: 0; margin: 0; padding: 0;  }
	html, body {  background: #fff; height: 100%; }
	body#epozcontent { background: #fff; padding: 10px; } /* ZMS-Editor */
	.hideme, .standard { display: none; }
	.nowrap { white-space: nowrap; }
	.clear { float: none; clear: both; } /* Old solution for floating */
	.floatbox { overflow: auto; width: 97%; } /* New solution for floating */

	/*
		1. Header font size ÷ Body copy font size = 1.96.
		2. Line height (pixels) ÷ body copy font size (pixels) = 1.48.
		3. Line length (pixels) ÷ line height (pixels) = 27.8.
		4. Space between paragraphs (pixels) ÷ line height (pixels) = 0.754.

		Source: http://www.smashingmagazine.com/2009/08/20/typographic-design-survey-best-practices-from-the-best-blogs/
	*/

	body, textarea, input, select, button { font-size: 12px; color: #000; font-family: "Arial", sans-serif; }
	h1 { font-size: 23px; line-height: 28px; color: #e62932; }
	h2, h3 { font-size: 15px; color: #e62932; line-height: 22px; }
	h4, h5, h6 { font-size: 13px; color: #000; line-height: 19px; }
	h1, h2, h3, h4, h5, h6, p, ul, ol, table, address, form, fieldset { margin-top: 0; margin-bottom: 14px; }
	legend { color: #000; font-weight: bold; }
	p, table, address, #content li, .disclaimer, .linksammlung, textarea, fieldset { line-height: 19px; }
	ul { list-style: none; }
	#content ul li {background-image: url(../images/design/list_style.gif); background-position: left 6px; background-repeat: no-repeat; padding-left: 15px; }
	#content ol li {padding-left: 5px; margin-left: 15px; line-height: 19px; }
	#content ul, #content ol { margin-left: 0px; }
	ul ul, ol ol, ul ol, ol ul { margin-bottom: 0; }
	a { color: #e62932; text-decoration: none;  }
		a img { border: 0; }
	a:hover { text-decoration: none; color: #000;  }
	textarea { line-height: 19px; }
	address { font-style: normal; }

	div.floatleft { float: left; margin-right: 13px; }
	div.floatright { float: right; margin-left: 13px; }
	div.left .graphic { margin-right: auto; }
	div.left .text { margin-right: auto; }
	div.right .graphic { margin-left: auto; }
	div.right .text { margin-left: auto; }
	div.center .graphic { margin: 0 auto; }
	div.center .text { margin: 0 auto; }
	.graphic {}
	#print_logo {visibility:hidden; }

/*--- general table ---*/

	table { border-collapse: collapse; }
	td, th { padding: 2px 4px; border: 1px solid #000; vertical-align: top; }
	th { text-align: left; background: #ccc;  }
	thead td, thead th{ border: 1px solid #000; font-weight: bold; color: #000; background: #ccc; vertical-align: bottom; }


	.notable td, .notable th { padding: 0 30px 0 0; border: 0; background: none; vertical-align: top; }
	.notable tbody tr:hover th, .notable tbody tr:hover td { color: #000; background: none; }
	.thead { display: none; }
	

.verzeichnis {font-size: 14px; padding-left: 5px; border-bottom: 1px dotted #ccc; margin-bottom: 10px;  }
.verzeichnis a {padding: 0 4px; }
p.head_stichwort {padding: 2px 5px; line-height: 19px; font-size: 13px;  }
#up { margin-bottom:0; }

/*--- general form ---*/

	fieldset {border: none; padding: 5px 0px 5px 0; }
	legend { padding: 10px 0px 10px 0; }
	form { width: 540px; }
		form input[type=text] { width: 155px; border: 1px solid #000; padding: 4px 2px; }
		form select { width: 161px; }
		form textarea { width: 494px; height: 150px; border: 1px solid #000; padding-left: 2px; }
		form label { float: left; display: block; padding-bottom: 7px; width: 170px; }
			form label span { display: block; padding-bottom: 2px; }
		form label.nofloat { float: none; width: auto;  }
		  form label.nofloat input {}
		form label.postcode, form label.short { width: 110px; }
			form label.postcode input, form label.short input { width: 95px; }
		form label.location { width: 200px; }
			form label.location input { width: 185px; }
		form label.email { width: 310px;  }
			form label.email input { width: 295px; }
		form label.job { width: auto; }
			form label.job input { width: 495px; }
		form label.sibling {width: auto; }
		  form label.sibling input {width: 385px; }
		form label.subject { width: auto; }
			form label.subject input { width: 494px; }
		form label.radio { padding-bottom: 2px; }
			form label.radio span { margin-left: 20px; }
		form label.google_start { width: 242px; }
			form label.google_start input { width: 225px; }
		form label.error span { color: #a5010d; }
		form label.files {width: 265px; }
	#validationMessage { color: #a5010d; }
	input[type=text]:focus, textarea:focus { background: #ccc; }
	input[type=checkbox], input[type=radio] { float: left; margin-top: 2px; }
	button { margin-bottom: 14px; border: none; color: #e62932; cursor: pointer; padding: 2px;}	
	button:hover {color: black; }

/*--- address, impressum ---*/

	.address .float { float: left; margin: 0 30px 0 0; }
	.notable .impressum { border-top: 1px solid #000; border-bottom: 1px solid #000; }
		.notable .impressum td, .notable .impressum th { padding: 3px 0; border-top: 1px solid #000; }
		.notable .impressum th { padding: 3px 14px 3px 0; }
	.impressum .nopadding { margin-bottom: 0; }

/*--- google maps ---*/

	#google_maps_map { height: 400px; border: 1px solid #000; }
	.google_maps_map_info img { padding-bottom: 13px; }
	.google_maps_map_info h2 { padding-right: 20px; }
	.google_maps_map_info form { width: auto; padding: 0 20px 5px 0; }
	.google_maps_map_info label { width: auto; float: none; }
		.google_maps_map_info label input { width: 250px; }

/*--- positionplan ---*/

	.positionplan .picture { float: left; margin-right: 10px; display: block; }
		.positionplan .picture img { display: block; border: 1px solid #000; margin-bottom: 4px; }
	.positionplan .download { margin-top: 13px; }
		.positionplan .download a { padding: 1px 0 0 22px; line-height: 21px; }

/*--- infolisten, onlinetools ---*/

#backlink { text-align: right; padding: 5px 0; border-bottom: 1px solid #000;  margin: 5px 0; }
	.infolist_toplink { text-align: right; padding: 2px 0; border-bottom: 1px solid #000; }
	.disclaimer { border-top: 1px solid #000; padding: 5px; }

	.download_section td { padding: 0 0 4px; border: 0; }
		.download_section tr:hover td { background: none; color: #000; }
	.download_section .download { padding-right: 50px; }
	.download_section img { margin: 2px 8px 0 0; display: block; float: left; }

	.news_preview { margin-bottom: 14px; border-bottom: 1px solid #000; }
		.news_preview h3 { margin-bottom: 0; }
	.news_page .graphic { margin: 0 0 13px 14px; float: right; padding: 2px; border: 1px solid #000; }
	.news_overview ul h2, .news_overview ul h3 { margin-bottom: 0; }

	.rss { padding: 0 0 0 21px; background: url(../images/design/rss.gif) no-repeat 0 center; }
	.rss_feeds { margin-left: 0; padding-left: 0; }
	.rss_feeds li { list-style: none; background-image: none!important;  }



/*--- zope search ---*/

	.search_result .result_entity h2 { margin-bottom: 0; }
	.search_result .result_entity p { margin-bottom: 0; }
	.search_result .result_entity { display: block; border-top: 1px solid #000; padding: 6px 0; }
	.search_result .result_entity.last { border-bottom: 1px solid #000; margin-bottom: 13px; }

/*--- slimbox ---*/

	#lbOverlay { position: fixed; z-index: 9998; left: 0; top: 0; width: 100%; height: 100%; background: #000; cursor: pointer; }
	#lbCenter, #lbBottomContainer { position: absolute; z-index: 9999; left: 50%; overflow: hidden; background: #fff; }
	.lbLoading { background: #fff url(../images/slimbox/loading.gif) no-repeat center; }
	#lbImage { position: absolute; left: 0; top: 0; border: 10px solid #fff; background-repeat: no-repeat; }
	#lbPrevLink, #lbNextLink { display: block; position: absolute; top: 0; width: 50%; }
	#lbPrevLink { left: 0; }
	#lbPrevLink:hover { background: transparent url(../images/slimbox/prevlabel.gif) no-repeat 0% 15%; }
	#lbNextLink { right: 0; }
	#lbNextLink:hover { background: transparent url(../images/slimbox/nextlabel.gif) no-repeat 100% 15%; }
	#lbBottom { font-size: 12px; line-height: 19px; text-align: left; border: 10px solid #fff; border-top-style: none; }
	#lbCloseLink { display: block; float: right; width: 98px; height: 22px; background: transparent url(../images/slimbox/closelabel.gif) no-repeat center; margin: 5px 0; }
	#lbCaption, #lbNumber { margin-right: 71px; }
	#lbCaption { font-weight: bold; }

/*--- ie6nomore ---*/

	#ie6nomore { position: fixed; left: 0; top: 0; z-index: 9999; width: 100%; height: 100%; background: #fff; display: none; }
		#ie6nomore .box { position: relative; left: 50%; top: 50%; margin: -125px 0 0 -275px; width: 550px; height: 250px; }
		#ie6nomore .browser { width: 75px; float: left; }

/*--- jobs ---*/

/*--- events ---*/

/*--- media ---*/

/*--- design ---*/

#left_container {position: absolute; top: 0; left: 0; bottom: 1px; width: 210px; background-color: #d1d3d4; text-align: center;  }	  
#logo {position: absolute; top: 30px; left: 52px; }
														   
#footer {position: absolute; bottom: 0; left: 0; right: 0; height: 25px; background-color: #b8b8b8; }	 

#functions {position: absolute; left: 5px; top: 5px; height: 15px;  }
#functions li {float: left; list-style: none; }	
#functions li a.last {border-right: none!important;}
#functions li a {padding-left: 5px; padding-right: 5px; color: #000; border-right: 1px solid black; display: block; height: 15px; }	
#functions li a:hover {color: #e62932; }

#searchform {position: absolute; bottom: 1px; left: 700px; width: 280px; height: 22px; background-color: #eeeff1;}  
#search {height: 15px; width: 280px; font-size: 11px; padding: 0; margin: 0;  }
#search #fld_search {height: 14px; border: none; background: none; position: absolute; left: 9px; top: 1px; padding-top: 0; padding: 2px 0 1px 0; }	 
#search button {border: none; background: none;  position: absolute; right: 3px; top: 0px; width: 20px; height: 17px;  padding: 0; margin: 0; }
																																							  
#oberlaa {position: absolute; left: 240px; bottom: 2px; height: 20px; padding: 0!important; margin: 0!important; }	   
#oberlaa a { color: #e62932; display: block; width: auto;  height: 15px; padding-bottom: 2px;  } 
#oberlaa a:hover, #oberlaa a.active  {color: #000; }


#content {position: absolute; left: 240px; top: 30px; bottom: 27px; width: 720px; padding-left: 10px; padding-right: 10px; overflow: auto;   }

/*--- navigation ---*/

#nav {position: absolute; top: 205px; left: 0; width: 209px; bottom: 25px; text-align: left; list-style: none; margin-left: 0; }

#nav li {border-top: 1px solid white; position: relative; background-image: none; padding-left: 0;  }
#nav li.last {border-bottom: 1px solid white; }	

#nav li a {display: block; height: 10px; margin-left: 10px; padding-left: 15px; padding-top: 8px; padding-bottom: 8px; color: black;  }
#nav li a:hover, #nav li a.active, #nav li a.activenode {color: #e62932; background-image: url(../images/design/list_style.gif); background-repeat: no-repeat; background-position: left 12px; }	
 
#nav li ul {display: none;  }
#nav li:hover ul {display:block!important; visibility: visible!important; position:absolute; left: 210px; top:0px; margin: 0; padding: 0 0 0 0px; z-index:10000; width: 250px; height: auto; background: #d1d3d4; } 
#nav li ul li {padding-bottom: 5px!important; padding-right: 10px; border: none!important; list-style: none; z-index: 6001;    }
#nav li ul li a {display: block; height: auto!important;  padding-top: 3px; padding-bottom: 3px;}
#nav li ul li a:hover, #nav li ul li a.active, #nav li ul li a.activenode {background-image: url(../images/design/list_style.gif); background-repeat: no-repeat; background-position: left 6px; }	
#nav ul ul  {display: none; }
/*#nav li ul ul {display: none; }  */   
#nav li li li {display: none; } 
#nav li ul li:hover ul {left: 250px; width: 250px; }
#nav li ul li:hover ul li {display: block!important; visibility: visible!important;  }   
.navbottom {bottom: 0!important; top: auto!important; }


/*--- startseite ---*/
.startpage h1 {display: none; }
.startpage #content {text-align: center; }
#welcome {position: absolute; top: 118px; left: 60px; font-size: 24px; color: #373737;  text-align: center;font-weight: bold; }	
#welcome span {font-size: 30px; color: #e62932;}
#startbild {position: absolute; top: 175px; left: 50px; }
#slogan {position: absolute; top: 409px; left: 50px; font-size: 14px; color: #373737; font-weight: bold;}	 
#slogan span {font-weight: bold; color: #e62932; }	 
.startpage #oberlaa {left: 280px; }

#content .spezial {border-left: 1px solid black; border-top: 1px solid black; border-right: 2px solid black; border-bottom: 2px solid black; padding: 3px; margin: 0 0 5px 0; }
#content .backcolor {background-color: #ccc; padding-top: 3px; padding-bottom: 3px; }
#content .backcolor li {background-image: none; list-style: none; padding-left: 3px;  }
#content .red {color: #e62932; font-weight: bold; }


/*--- Team ---*/
.team_member {width:250px; display:block; float:left;}
.team .abstand {margin:5px 0 0 0px; padding:0 0 0 5px;}
.team .abstand h4 {margin:0;}
.angestellte {background: #ccc; font-weight: bold; padding: 4px 5px; margin: 0;  }
 
/*--- ACCORDION ---*/
/* accordion */
.element {border-bottom: 1px solid black; }
.toggler {margin:3px 0 0 0; padding:4px 5px; cursor:pointer; background:#eceff0; font-size: 12px; }
.head_name {padding:0px 5px; cursor:pointer; font-size: 12px; color: #e62932;  font-weight: bold; margin-right: 50px; display: block; width: 300px; float: left;   }
.head_posit {text-align: left;display: block; height: 15px; }
.abstand { } 
.pic_left {float: left; margin: 0 10px 0 0; height: 150px; }
.maname {font-weight: bold; }
.matext {margin-left: 110px; }
.maposition {padding-bottom: 5px; margin-bottom: 5px; }
.jobtext {padding: 10px;}

.date {font-weight: bold; padding-right: 10px;   }
.vita td {border: none; }
.extra {color:#373737; font-weight: bold;  }
.oberlaa_team td {border: none; vertical-align: bottom!important; }
.download_section h2 {display: none; }
.get_right {margin-left: 280px; }
.get_right ul {padding-left: 15px; }
.thumb_gall {height:200px; margin:0px 5px 5px 0; display:block; float:left;  border:1px solid #6b6b6b;}
.thumb_gall_h {border: 1px solid red; }
h2.down_head { font-size: 23px; line-height: 28px; color: #e62932; }
.pic_block {display: block; background-image: url(../images/design/list_style.gif); background-position: left 6px; background-repeat: no-repeat; padding-left: 15px; line-height: 19px;}

/* BESTELLFORMULAR */

#form_order {width: 97%; }
#form_order .container_1, #form_order .container_2 { margin-bottom:20px; padding-bottom:0; height: auto; }
#form_order .ordertable th { text-align:left; border: none; background: none; }
#form_order .ordertable td {border: none; }
#form_order .ordertable input {width:auto;}
#form_order .ordertable .year input {margin-right:5px; }
#form_order .ordertable .year {width:132px;}
#form_order .ordertable .price1 {width:148px;}
#form_order .ordertable .price2 {width:162px; }
                                                         
#form_order .container_1 { float: left; margin-right: 1em; margin-bottom: 10px; width: 310px; height: auto; }
#form_order .container_2 { float: left; margin-bottom: 10px; width: 310px; height: auto; }
#form_order label { display: block; margin-bottom: 0.1em; height: 3em;  width: 291px; }
#form_order label span { display: block; width: 291px; }
#form_order input, #form_order textarea { width: 285px; margin-top: 1px; }
#form_order #label_plz { float: left; width: 80px; margin-right: 3px; }
#form_order #fld_plz {width: 60px;}
#form_order #label_ort { float: left;  width: 200px; }
#form_order #fld_ort {width: 200px;}
#form_order #label_telefon {clear: both; }
#form_order #label_text {height: 25em;}
#form_order #fld_text {height: 24em;}


/*SUCHE*/ 
#content dd em { display: none; }
#content dl { border-bottom: 1px dashed #e62932; margin-bottom: 3px; padding-bottom: 3px; padding-top: 3px; }


/*DIVERSES*/
.noborder td {border: none!important;}

#stichwort {border: none; width: 680px; }
#stichwort thead td {background: none; font-weight: normal; font-size: 13px; padding: 2px 4px;  }
#stichwort td, #stichwort th {border: none; padding: 2px 4px; font-size: 13px; }

#stichwort tr {border-bottom: 1px solid black; }
#stichwort tr td.last {border-right: none; }
#stichwort td:nth-child(even) {background: #CCC; text-align: center;}
#stichwort td:nth-child(odd) {background: #fff}

#stichwortdiv { overflow-x: hidden; }