/*--- general ---*/

	* { outline-width: 0; }
	html, body { background: #9eadba; height: 100%; margin: 0; }
	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: 100%; } /* 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: #2f4052; font-family: "Arial", sans-serif; }
	h1 { font-size: 23px; line-height: 28px; color: #fff; }
	h2, h3 { font-size: 15px; color: #2f4052; line-height: 22px; }
	h4, h5, h6 { font-size: 13px; color: #2f4052; line-height: 19px; }
	h1, h2, h3, h4, h5, h6, p, ul, ol, table, address, form, fieldset { margin-top: 0; margin-bottom: 14px; }
	legend { color: #2f4052; font-weight: bold; }
	p, table, address, #content li, .disclaimer, .linksammlung, textarea, fieldset { line-height: 19px; }
	ul { list-style: square outside; margin-left: 0; padding-left: 30px; }
	ul ul, ol ol, ul ol, ol ul { margin-bottom: 0; }
	a { color: #e45600; }
		a img { border: 0; }
	a:hover { text-decoration: none; }
	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 { border: 1px solid #2f4052; margin-bottom:4px; }
	
	
	
/*--- general table ---*/

	table { border-collapse: collapse; }
	td, th { padding: 2px 4px; border: 1px solid #2f4052; vertical-align: top; }
	th { text-align: left; background: #c2d0dc; }
	thead td, thead th { border: 1px solid #2f4052; font-weight: bold; color: #fff; background: #2f4052; vertical-align: bottom; }
	tbody tr:hover th, table tbody tr:hover td { background: #2f4052; color: #fff; }

	.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: #2f4052; background: none; }
	.thead { display: none; }

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

	fieldset { border: 1px solid #9eadba; padding: 0 10px 10px; }
	legend { padding: 0 5px 10px; }
	form { width: 540px; float:left; }
		form input[type=text] { width: 155px; border:1px solid #9eadba; padding: 2px 2px; background-color:#fff; font-size:11px; }
		form select { width: 161px; border:1px solid #9eadba; padding: 2px 2px; background-color:#fff;}
		form textarea { width: 494px; height: 150px; border:1px solid #9eadba; padding: 2px 2px; background-color:#fff; }
		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.postcode { width: 110px; }
			form label.postcode input { width: 95px; }
		form label.location { width: 230px; }
			form label.location input { width: 215px; }
		form label.email { width: 342px; }
			form label.email input { width: 325px; }
		form label.job { width: auto; }
			form label.job input { width: 495px; }
		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: #e45600; }
	#validationMessage { color: #e45600; }
	input[type=text]:focus, textarea:focus { background: #c2d0dc; }
	input[type=checkbox], input[type=radio] { float: left; margin-top: 2px; }
	button { margin-bottom: 14px; background-color:#9eadba; border:none; color:#fff; border:1px solid #9eadba; cursor:pointer; text-decoration:none; }
	button:hover {color:#9eadba; background:#fff; }

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

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

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

	#google_maps_map { height: 400px; border: 1px solid #2f4052; }
	.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; }	
		
	#google_maps fieldset {border:none; padding:0;}

/*--- positionplan ---*/

	.positionplan .entity { float: left; width: 195px; display: block; padding-bottom: 14px; }
		.positionplan .entity img { display: block; border: 1px solid #2f4052; margin-bottom: 4px; }

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

	.infolist_toplink { text-align: right; padding: 2px 0; border-bottom: 1px solid #2f4052; }
	.disclaimer { font-weight: bold; border: 1px solid #2f4052; padding: 5px; }

	.download_section td { padding: 0 0 4px; border: 0; }
	.download_section tr:hover td { background: none; color: #2f4052; }
	.download_section .download { padding-right: 50px; }
	.download_section span { margin-top: 1px; width: 25px; display: block; float: left; }

	.news_preview { margin-bottom: 25px;  }
	.news_preview .entity {padding:4px; padding-left:8px!important; padding-right:18px; margin-bottom:4px; color:#2f4052; text-decoration:none; background-color:#c2d0dc!important; background-image:url(../images/design/nav_bg.gif); background-repeat:no-repeat; background-position:550px center;}
	.news_preview .entity:hover {background-color:#fff!important;} 
	.news_preview h3 a {display:block; text-decoration:none;}
	.news_preview h3 { margin-bottom: 0; }
	.news_page .graphic { margin: 0 0 13px 14px; float: right; }
	.news_overview ul h2, .news_overview ul h3 { margin-bottom: 0; }  
	#news_selection {position:absolute; left:14px; top:450px;}
	#news_selection select {background-color:#c2d0dc; border:none;}

	.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; }

/*--- team ---*/

	#staff_overview .head h2 { margin-bottom: 0; }
	#staff_overview .head .noposition { margin-bottom: 14px; }
	#staff_overview .staff_member { float: left; width: 280px; }
	#staff_overview .line { border-top: 1px solid #2f4052; margin-top: 14px; padding-bottom: 14px; }
	#staff_overview img { float: left; margin-right: 14px; border: 1px solid #2f4052; }
	#staff_overview .vita { margin: 0; }
	#staff_overview .info { margin-left: 112px; }
	#staff_vita img { float: right; margin-left: 20px; border: 1px solid #2f4052; }

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

	#search {position:absolute; top:-27px; left:125px;}
	#search input {position:absolute; padding:1px; width:100px; color:#7b8895; background-color:#c2d0dc; margin:0!important;}
	#search button {position:absolute; margin-left:107px; background:none; border:none;}
	#search button {color:#fff;} 

	.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 #2f4052; padding: 6px 0; }
	.search_result .result_entity.last { border-bottom: 1px solid #2f4052; margin-bottom: 13px; }

/*--- slimbox ---*/

	#lbOverlay { position: fixed; z-index: 9999; left: 0; top: 0; width: 100%; height: 100%; background: #9eadba; 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/previous.gif) no-repeat 0% 30%; }
	#lbNextLink { right: 0; }
	#lbNextLink:hover { background: transparent url(../images/slimbox/next.gif) no-repeat 100% 30%; }
	#lbBottom { font-size: 12px; line-height: 19px; text-align: left; border: 10px solid #fff; border-top-style: none; }
	#lbCloseLink { display: block; float: right; width: 21px; height: 20px; background: transparent url(../images/slimbox/close.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; }

/*--- design ---*/

	#fontsize { display: none; }
	#topline {position:absolute; height:3px; background:#fff; top:0; left:0; right:0; border-bottom:3px solid #8898a6; }
	#botline {  position:absolute; height:3px; background:#fff; bottom:0; left:0; right:0; border-top:3px solid #8898a6;overflow: hidden; }
	
	#verlauf_re {position:absolute; top:0; right:-15px; bottom:0; width:15px; background-image:url(../images/design/verlauf_re.gif); background-repeat:repeat-y;}
	#verlauf_u {position:absolute; left:281px; bottom:-15px; right:0; height:15px; background-image:url(../images/design/verlauf_u.gif); background-repeat:repeat-x;}
	#verlauf_li {position:absolute; top:0; left:266px; bottom:0; width:15px; background-image:url(../images/design/verlauf_li.gif); background-repeat:repeat-y;}
	#verlauf_o {position:absolute; left:281px; top:-16px; right:0; height:15px; background-image:url(../images/design/verlauf_o.gif); background-repeat:repeat-x;}
	
	
	
	#container {position:absolute; top:38px; bottom:38px; width:929px; left:50%; margin-left:-465px; border-top:1px solid #fff;}
	#paragraphverlauf {position:absolute; right:0; top:0; height:236px; left:281px; background-color:#e0eaf3; background-image:url(../images/design/paragraph_verlauf.gif); background-repeat:repeat-y; background-position:right; border-bottom:1px solid #fff;}
	#logobox {position:absolute; top:13px; left:281px; right:0; height:208px; border-top:1px solid #fff; border-bottom:1px solid #fff; background-color:#c2d0dc; background-image:url(../images/design/paragraph.gif); background-repeat:no-repeat; background-position:right;}
	#logo {position:absolute; left:38px; top:33px;}
	#content {position:absolute; top:237px; bottom:0; right:0; left:281px; background:#e0eaf3; padding-top:27px; padding-left:32px; padding-right:32px; overflow:auto;}
	#title {position:absolute; top:179px; left:313px;}
	#author {position:absolute; bottom:24px; left:50%; margin-left:472px;}
	
	#contactinfo {position:absolute; bottom:0px; left:50%; margin-left:-150px; font-size:11px;}
	#contactinfo a {color:#2f4052; text-decoration:none;}	
	#lang {position:absolute; top:-15px; left:50%; margin-left:300px;}
	#lang li {display:inline; list-style:none;}	
	#sujetbox {position:absolute; top:0; left:0; width:280px; height:236px; border-bottom:1px solid #fff; border-left:1px solid #fff;}
	#sujet {position:absolute; top:13px; left:0; border-top:1px solid #fff; border-bottom:1px solid #fff; border-left:1px solid #fff; }
	#flags {position:absolute; right:0; top:-25px;}
	#flags a {margin-left:3px;} 

	.popup_image {float:right; margin:8px; }
	.popup_image img {border:1px solid #2f4052;}
	.popup_image span {display:none;}
	.addresses {float:left;}
	
	
	
/*--- startpage ---*/ 
	 
	.startpage #container {position:absolute; top:50%; margin-top:-240px; height:434px;}
	.startpage #content {background-image:url(../images/design/content_start.jpg); height:170px;}
	.startpage #author {position:absolute; top:50%; margin-top:119px; left:50%; margin-left:472px;}
	.startpage #contactinfo {position:absolute; top:50%; margin-top:200px; left:50%; margin-left:-150px; font-size:11px;}	
	
	
/*--- functions ---*/ 

	#functions {position:absolute; top:15px; left:50%; margin-left:-465px;}	
	.startpage #functions {top:50%; margin-top:-264px;}
	
	#functions ul {padding:0;}
	#functions li {float:left; list-style:none; width:20px; height:14px; margin-left:0;}
	#functions a {display:block; text-decoration:none; width:16px; height:14px; color:#fff;}
	#functions span {display:none;}
	.func_sp {background-image:url(../images/design/home.gif); background-repeat:no-repeat; width:50px!important;} 
	.func_1 {background-image:url(../images/design/seite.gif); background-repeat:no-repeat; margin-left:3px; margin-top:1px;}	
	.func_2 {background-image:url(../images/design/impressum.gif); background-repeat:no-repeat;}
	
	
/*--- Nav ---*/ 
	
	#nav {position:absolute; left:0; top:265px; padding:0;}

	#nav li {list-style:none;}
	#nav a {padding-top:7px; padding-left:11px; display:block; font-size:15px; color:#2f4052; text-decoration:none; height:23px; border-top:1px dotted #5f7587; width:248px; background-image:url(../images/design/nav_bg.gif); background-repeat:no-repeat; background-position:237px center;}
	#nav a.last {border-bottom:1px dotted #5f7587;}
	#nav a:hover, #nav a.active, #nav a.activenode {color:#fff; background-image:url(../images/design/nav_bg_hover.gif);}
	#nav a.active.last, #nav a.activenode .last {border-bottom:none;}
		
	#nav ul {padding-left:25px; padding-bottom:11px; border-top:1px dotted #fff; width:234px;}
	#nav ul li a {border:none; padding-left:22px; color:#fff; font-size:12px; height:12px; background-image:url(../images/design/navul_bg.gif); background-position:left 10px;}
	#nav ul li a:hover, #nav ul li a.active, #nav ul li a.activenode {text-decoration:underline; background-image:url(../images/design/navul_bg_hover.gif);}
	#nav ul li a.last {border:none;}
	
	#nav ul ul {display:none;} 
	
	
/*--- Quicklinks ---*/ 

	.quicklinks ul li * { padding:4px; margin-top:4px; display:block;}
	.quicklinks ul {padding-left:0px; list-style:none;}
	.quicklinks li {margin-left:4px;}
	.quicklinks a {padding-left:8px!important; color:#2f4052; text-decoration:none; background-color:#c2d0dc!important; background-image:url(../images/design/nav_bg.gif); background-repeat:no-repeat; background-position:550px center;}
	.quicklinks a:hover {background-color:#fff!important;}
