/*--- general ---*/

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

	body, textarea, input, select, button { font-size: 13px; color: #000; font-family: "Arial", sans-serif; }
	h1 { font-size: 16px; color: #000; }
	h2, h3, h4, h5, h6, legend { font-size: 14px; color: #005187; line-height: 22px; }
	h1, h2, h3, h4, h5, h6, legend, p, ul, ol, table { margin-bottom: 13px; }
	ul { list-style: square; }
	ul, ol { margin-left: 35px; }
		ul ul, ol ol, ul ol, ol ul { margin-bottom: 0; }
	legend { font-weight: bold; }
	a { color: #005187; }
	a:hover { color: #cf003d; }
	p, li, table, .disclaimer, .linksammlung, address { line-height: 21px; }
	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 #000; }

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

	table { border-collapse: collapse; }
	td, th { padding: 1px 3px; border: 1px solid #005187; vertical-align: top; }
	th { text-align: left; background: #fff; }
	thead td, thead th { border: 1px solid #005187; font-weight: bold; color: #005187; background: #fff; vertical-align: bottom; }
	tbody tr:hover th, table tbody tr:hover td { background: #005187; 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: #000; background: none; }
	.thead { display: none; }

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

	.section { padding-bottom: 8px; }
		.section fieldset legend { margin-bottom: 0; font-size: 13px; }
	form { width: 530px; }
		form input { width: 155px; }
		form select { width: 161px; }
		form textarea { width: 494px; height: 150px; }
		form span { display: block; padding-bottom: 2px; }
		form label { float: left; display: block; padding-bottom: 6px; width: 170px; }
		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: #cf003d; }
		form label.error input, form label.error textarea { border: 1px solid #cf003d; color: #cf003d; }
	#validationMessage { color: #cf003d; }
	input, select { padding: 2px; background: #fff; border: 1px solid #000; }
	input:focus, textarea:focus { color: #005187; border: 1px solid #005187; }
	input[type=checkbox], input[type=radio] { width: auto; background: none; border: 0; float: left; margin-top: 3px; }
	select { padding: 1px; }
	textarea { padding: 2px; background: #fff; border: 1px solid #000; }
	button { padding: 3px 3px 0; margin-bottom: 13px; cursor: pointer; border: 1px solid #000; background: #ccc; }
	.panel select { margin: 0 5px 13px 0; }

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

	.address .float { float: left; margin: 0 20px 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 13px 3px 0; }
	.impressum .nopadding { margin-bottom: 0; }
	.impressum .download img { margin-right: 5px; display: block; float: left; }
	.impressum .download a { margin-left: 20px; display: block; }

/*--- positionplan ---*/

	.positionplan { margin-bottom: 13px; }
		.positionplan .picture { display: block; }
			.positionplan .picture img { display: block; margin-bottom: 4px; }

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

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

	.onlinetool_overview h3 { margin-bottom: 0; }

	.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 5px 0 0; display: block; float: left; }

	.news_preview { margin-bottom: 13px; border-bottom: 1px solid #cf003d; }
		.news_preview h3 { margin-bottom: 0; }
	.news_page .graphic { margin: 0 0 13px 13px; float: right; }
	.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: 0; }
	.rss_feeds li { list-style: none; }

/*--- team ---*/

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

/*--- slimbox ---*/

	#lbOverlay { position: fixed; z-index: 9999; 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; }

/*--- design ---*/

	#page { position: relative; min-height: 100%; height: auto!important; height: 100%; margin: 0 auto; width: 900px; background: #fff; }
	#dummy { background: url(../images/design/bg_bottom.gif) repeat-x left bottom; min-width: 950px; }
	#header { border-top: 35px solid #c2cacf; }
	#logo { height: 236px; }
	#logo img { display: block; }
	#main { width: 900px; margin: 0 auto; padding-bottom: 210px; position: relative; z-index: 20; }
	#footer { position: absolute; right: 0; bottom: 0; left: 0; background: #ccd5da; z-index: 20; }
		#footer .center { background: #ececec url(../images/design/logo_footer.gif) no-repeat top right; width: 900px; height: 130px; margin: 0 auto; }
	#author { width: 900px; height: 15px; padding: 15px 0 8px 0; margin: 0 auto; }
		#author a { display: block; width: 76px; height: 9px; background: url(../images/design/author.gif); margin-left: auto; }
			#author a span { display: none; }

	#functions { width: 286px; padding-top: 50px; float: left; }
	#functions li { background: url(../images/design/arrow.gif) no-repeat 0 center; list-style: none; padding-left: 17px; }
	
	#contactinfo { padding-top: 15px; width: 612px; float: right; }
		#contactinfo h2 { color: #cf003d; font-size: 18px; }
		#contactinfo strong { color: #cf003d; width: 17px; display: block; float: left; }
		#contactinfo a.arrow { background: url(../images/design/arrow.gif) no-repeat 0 center; padding-left: 17px; }
	
	#content { margin: 60px 25px 0 286px; min-height: 340px; height: auto!important; height: 240px; }

	#navbox { margin-left: 286px; border-top: 7px solid #005187; }
	#nav { margin: 0; }
		#nav li { list-style: none; float: left; padding: 7px 25px 0 0; }
			#nav li a { font-size: 13px; font-weight: bold; text-decoration: none; }
			#nav li a.active, #nav li a.activenode { color: #000; }
			#nav li ul { position: absolute; left: 0; top: 375px; width: 253px; margin: 0; }
				#nav li ul ul { display: none; }
				#nav li ul a { display: block; background: #ececec; padding: 3px 10px 3px 35px; }
				#nav li ul a.active, #nav li ul a.activenode { background: #d9dadb; }
				#nav li ul li { float: none; padding: 0; margin-bottom: 6px; }

	.quicklinks ul { margin-left: 13px; }

/*--- design, startpage ---*/

	.startpage #page { position: relative; min-height: 100%; height: auto!important; height: 100%; min-width: 950px; margin: 0; width: auto; }
	.startpage #logo { height: 367px; }
	.startpage #content { display: none; }
	.startpage #header { border: 0; }
	.startpage #dummy_sp { padding-bottom: 600px; }
	.startpage #sp_box { position: absolute; left: 0; right: 0; top: 50%; bottom: 0; margin-top: -280px; height: 580px; background: #c2cacf; z-index: 20; }
	.startpage #main { position: absolute; bottom: 168px; left: 50%; margin-left: -450px; z-index: 20; padding-bottom: 8px; background: #fff; }
	.startpage #dummy_top { position: absolute; top: 0; right: 0; bottom: 50%; left: 0; background: #c2cacf; }
	.startpage #dummy_bottom { position: absolute; top: 50%; right: 0; bottom: 0; left: 0; background: #ccd5da; }

/*--- 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; }

