/*--- general ---*/

	* { outline-width: 0; }
	html, body { background: #b8b8cf; height: 100%; margin: 0; overflow:hidden; }
	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: #4d4c58; font-family: "Arial", sans-serif; }
	h1 { font-size: 23px; line-height: 28px; color: #cf171f;  font-family:"Garamond", serif; text-transform:uppercase;}
	h2, h3 { font-size: 15px; color: #cf171f; line-height: 22px;  font-family:"Garamond", serif; text-transform:uppercase;}
	h4, h5, h6 { font-size: 13px; color: #4d4c58; line-height: 19px; }
	h1, h2, h3, h4, h5, h6, p, ul, ol, table, address, form, fieldset { margin-top: 0; margin-bottom: 14px; }
	legend { color: #cf171f; font-weight: bold; }
	p, table, address, #content li, .disclaimer, .linksammlung, textarea, fieldset { line-height: 19px; }
	#content ul { /*list-style-image: url(../images/design/aufz.gif);*/ list-style: square ; margin-left: 0; padding-left: 30px; }
	ul ul, ol ol, ul ol, ol ul { margin-bottom: 0; }
	a { color: #cf171f; }
		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 #4d4c58; }

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

	table { border-collapse: collapse; }
	td, th { padding: 2px 4px; border: 1px solid #4d4c58; vertical-align: top; }
	th { text-align: left; background: #ccc; }
	thead td, thead th { border: 1px solid #4d4c58; font-weight: bold; color: #fff; background: #4d4c58; vertical-align: bottom; }
	tbody tr:hover th, table tbody tr:hover td{ background: #cf171f; color: #fff; }
	/*tbody tr:hover a { background: #cf171f; 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: #4d4c58; background: none; }
	.thead { display: none; }

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

	fieldset { border: 1px solid #ccc; padding: 0 10px 10px; }
	legend { padding: 0 5px 10px; }
	form { width: 540px; }
		form input[type=text] { width: 155px; border: 1px solid #4d4c58; padding: 2px 2px; }
		form select { width: 161px; }
		form textarea { width: 496px; height: 150px; border: 1px solid #4d4c58; }
		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: #cf171f; }
	#validationMessage { color: #cf171f; }
	input[type=text]:focus, textarea:focus { background: #ccc; }
	input[type=checkbox], input[type=radio] { float: left; margin-top: 2px; }
	button { margin-bottom: 14px; background:#fff; border:1px solid #cf171f; color:#cf171f; cursor:pointer; }
	button:hover { background:#cf171f; border:1px solid #cf171f; color:#fff; }

/*--- address and impressum ---*/

	.address .float { float: left; margin: 0 30px 0 0; }
	.notable .impressum { border-top: 1px solid #4d4c58; border-bottom: 1px solid #4d4c58; }
		.notable .impressum td, .notable .impressum th { padding: 0 2.0em 0 0; border-top: 1px solid #4d4c58; }
		.notable .impressum th { padding: 3px 14px 3px 0; }
	.impressum .nopadding { margin-bottom: 0; }
	.impressum .nopadding img {margin-bottom:-3px;}
	#atikon img { float: left; margin-right: 1.3em; }
	#atikon .float { float: left; margin-right: 1.3em; }

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

	#google_maps_map { height: 400px; border: 1px solid #4d4c58; }
.google_maps_map_info .float  {float:none;}
	.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 {width:250px;}	
	#google_maps fieldset {border:none; padding:0; width:250px;}

/*--- positionplan ---*/

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

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

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

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

	.news_preview { margin-bottom: 14px; border-bottom: 1px solid #4d4c58; }
		.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; }

	.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 ---*/

	.vitatabelle * {border:none; padding:0; padding-right:5px;}
	.vitatabelle:hover * {background:none; color:#4d4c58;}
	.vitatabelle:hover a {color:#cf171f;}
	

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

	#searchform {position:absolute; bottom:9px; left:9px; height:17px;}
	#searchform * { font-size:11px;}
	#searchform input {position:absolute; border:none; background:#fb444c; width:125px; height:15px; color:#70040a; padding:1px;}
	#searchform button {position:absolute; background:none; border:none; color:#ff7e84; margin-left:125px!important; cursor:pointer;}
	
	.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 #4d4c58; padding: 6px 0; }
	.search_result .result_entity.last { border-bottom: 1px solid #4d4c58; margin-bottom: 13px; }

/*--- slimbox ---*/

	#lbOverlay { position: fixed; z-index: 9999; left: 0; top: 0; width: 100%; height: 100%; background: #4d4c58; 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; top:0; left:0; right:0; background-image:url(../images/design/linemuster.gif); height:9px;}
	#botline {position:absolute; bottom:0; left:0; right:0; background-image:url(../images/design/linemuster.gif); height:9px;}
	#container {position:absolute; top:30px; bottom:30px; left:0; right:0; background:#fff; border-bottom:17px solid #686773;}
	#author a {position:absolute; right:10px; bottom:15px; width:76px; height:9px; background-image:url(../images/design/design.gif);}
	#logo {position:absolute; left:50%; margin-left:-474px; top:18px;}
	#redline_top {position:absolute; left:0; right:0; top:76px; height:1px; background:#b31219;}
	#greybox {position:absolute; top:79px; height:175px; left:0; right:0; background:#686773;}
	#redbox {position:absolute; top:255px; bottom:14px; left:0; right:0; background:#b31219;}
	#redline_bot {position:absolute; left:0; right:0; bottom:11px; height:1px; background:#b31219;}
	#content {position:absolute; top:254px; bottom:14px; left:50%; margin-left:-282px; width:714px; background:#fff; overflow:auto; padding:20px; }
	#title {background-image:url(../images/design/contentpunkte.gif); background-repeat:no-repeat; background-position:right center;}
	#sujet {position:absolute; top:79px; height:175px; left:50%; margin-left:-282px; width:752px; background:#fff; border-left:1px solid #fff; border-right:1px solid #fff;}
	
	#contactinfo {position:absolute; left:50%; margin-left:-282px; bottom:-17px; color:#fff; font-size:11px; background:#43424e; height:17px; width:642px; border-left:1px solid #fff; border-right:1px solid #fff; padding-left:110px;}
	#contactinfo a {color:#fff; text-decoration:none;}
	.adresspunkt {padding-left:16px; padding-right:14px; padding-bottom:1px;}
	address {line-height:16px;}	
	
	
	
/*--- startseite design ---*/
	
	.startpage #container {top:50%; margin-top:-235px; height:450px;}
	.startpage #content {visibility:hidden;}
	.startpage #sujet {height:357px;}

	
/*--- nav ---*/	
	
	#nav {position:absolute; top:79px; height:161px; left:50%; margin-left:-474px; width:191px; background:#43424e; padding:7px 0 7px 0; border-left:1px solid #fff;}
	#subnavbox {position:absolute; left:50%; margin-left:-474px; top:255px; bottom:14px; width:191px; background-color:#fb4048; background-image:url(../images/design/subnav_verlauf.gif); background-repeat:repeat-x; background-position:bottom; border-left:1px solid #fff;}
	
	#nav a {color:#fff; display:block; text-decoration:none; height:17px; border-top:1px solid #686773; padding:2px 5px 0px 18px;}
	#nav a.last {border-bottom:1px solid #686773;}
	#nav a:hover, #nav a.active, #nav a.activenode {background:#d8d7e9; color:#21212b; font-weight:bold;}
	#nav li {list-style:none!important; }	
	
	#nav ul {position:absolute; top:200px; z-index:100000; left:0; padding:0!important; margin:0!important;}
	#nav ul a {border:none; height:auto; padding:0px 15px 0px 18px; height:19px; display:table; }
	#nav ul a.last {border:none;}
	#nav ul a:hover {background:none; color:#fff; font-weight:bold; background-image:url(../images/design/subnav_h.gif); background-repeat:no-repeat; background-position:right center;}
	#nav ul a.active, #nav ul a.activenode {background:none; color:#fff; font-weight:bold; background-image:url(../images/design/subnav_a.gif); background-repeat:no-repeat; background-position:right center;}
	
	
/*--- functions ---*/
	
	#functions_top {position:absolute; right:10px; top:8px; height:12px;}
	#functions_top ul {padding:0;}
	#functions_top li {display:inline; list-style:none; margin-left:20px;}
	#functions_top a {color:#686773; font-size:11px; text-decoration:none; height:12px; background-repeat:no-repeat; background-position:left center;}
	#functions_top a:hover {color:#cf171f;}
	#functions_top span {padding-left:12px;}	 
	
	#functions_top .func_1 {background-image:url(../images/design/newsletter.gif);}	
	#functions_top .func_1:hover {background-image:url(../images/design/newsletter_h.gif);}	
	#functions_top .func_2 {background-image:url(../images/design/seite.gif);}
	#functions_top .func_2:hover {background-image:url(../images/design/seite_h.gif);}	
	
	
		
	#functions {position:absolute; left:50%; margin-left:-474px!important; padding:0!important; bottom:-17px; width:191px; background:#7e7d8c; height:17px; border-left:1px solid #fff;}
	#functions ul {padding-left:8px; list-style:none; margin:0!important;}
	#functions li {float:left;}
	#functions a {display:block; color:#fff; font-size:11px; text-decoration:none; width:20px; height:12px; margin-top:3px;background-repeat:no-repeat;}
	#functions span {display:none;} 
	
	#functions .func_sp {background-image:url(../images/design/home.gif);} 
	#functions .func_sp:hover {background-image:url(../images/design/home_h.gif);}
	#functions .func_1 {background-image:url(../images/design/impressum.gif);}	
	#functions .func_1:hover {background-image:url(../images/design/impressum_h.gif);}	
	#functions .func_2 {background-image:url(../images/design/sitemap.gif);}
	#functions .func_2:hover {background-image:url(../images/design/sitemap_h.gif);}  
	
	
/*--- Rechner ---*/	  

	#calcdiv {position: absolute; left:12px; padding:0!IMPORTANT; padding-right:0px!important; margin:0!IMPORTANT; top:62px; bottom:0; right:0px;}
	#calc {position:absolute; left:0; top:0; width:100%; height:100%; overflow-x:hidden!important;}

#e72096 td {border:none!important;}

.company_schriftzug { display:block; height:55px; width:200px; background-repeat:no-repeat;  margin-top:8px;} 
.company_schriftzug span { display:none; } 
  
  /* eigenwartung */
	body#epozcontent{ overflow: auto!important; }  /* scrollbalken bei textabschnitt einblenden */



