/*--- general ---*/

	* { padding: 0; margin: 0; border: 0; outline-width: 0; font-family: Arial, sans-serif; }
	html, body { background: #fff; height:100%; }
	body { height:100%; }
	.hideme { display: none; }
	.nowrap { white-space: nowrap; }
	.clear { float: none; clear: both; } /* old solution for floating */
	.floatbox { overflow: auto; width: 97%; } /* new solution for floating */

	body, textarea, input, select, button { font-size: 13px; color: #333; } /* DON'T MAKE A LINE-HEIGHT ON BODY -> Very strange bugs in IE6 */
	input, select, button { line-height: 16px; }
	#content, textarea { line-height: 21px; }
	h1, h2, h3, h4, h5, h6, legend { margin: 0 0 13px 0; color: #0c246b; }
	h1 { font-size: 20px; }
	h2, legend { font-size: 15px; line-height: 23px; font-weight: bold; }
	h3 { font-size: 14px; line-height: 22px; font-weight:normal; }
	h4, h5, h6 { font-size: 13px; line-height: 21px; color: #333; }
	a { color: #0c246b; }
	a:hover { text-decoration: none; }
	ul, ol { list-style: none; }
	address, p { margin: 0 0 13px 0; font-style: normal; }

	div.ZMSGraphic { padding: 0 0 13px 0; }
		div.ZMSGraphic.floatleft { float: left; margin: 0 20px 0 0; }
		div.ZMSGraphic.floatright { float: right; margin: 0 0 0 20px; }
		div.ZMSGraphic.left .graphic { margin: 0 auto 0 0; }
		div.ZMSGraphic.left .text { margin: 0 auto 0 0; }
		div.ZMSGraphic.right .graphic { margin: 0 0 0 auto; }
		div.ZMSGraphic.right .text { margin: 0 0 0 auto; }
		div.ZMSGraphic.center .graphic { margin: auto; }
		div.ZMSGraphic.center .text { margin: auto; }

/*--- editor ---*/

	body#epozcontent { padding: 10px; background: #fff; color: #333; line-height: 21px; }
	body#epozcontent a { color: #2b8bd3!important; }
	body#epozcontent a:hover { text-decoration: none!important; }
	body#epozcontent h2, body#epozcontent h3, body#epozcontent h4, 
	body#epozcontent h5, body#epozcontent h6 { margin: 0 0 13px 0; color: #2b8bd3; }
	body#epozcontent h2 { font-size: 15px; line-height: 23px; }
	body#epozcontent h3 { font-size: 14px; line-height: 22px; }
	body#epozcontent h4, body#epozcontent h5, body#epozcontent h6 { font-size: 13px; line-height: 21px; color: #333; }
	body#epozcontent ul, body#epozcontent ol { padding: 0 0 13px 15px; }
		body#epozcontent ul ul, body#epozcontent ol ul, body#epozcontent ol ol, body#epozcontent ul ol { padding: 0; }
	body#epozcontent li { padding: 0 20px 0 17px; background: url(../images/design/arrow.gif) no-repeat 0 5px; }
	body#epozcontent table { margin: 0 0 13px 0; }

/*--- list ---*/

	#content ul, #content ol { padding: 0 0 13px 15px; }
		#content ul ul, #content ol ul, #content ol ol, #content ul ol { padding: 0; }
	#content li { padding: 0 20px 0 17px; background: url(../images/design/arrow.gif) no-repeat 0 5px; }

/*--- slimbox ---*/

	#lbOverlay { position: fixed; z-index: 9999; left: 0; top: 0; width: 100%; height: 100%; background-color: #000; cursor: pointer; }
	#lbCenter, #lbBottomContainer { position: absolute; z-index: 9999; left: 50%; overflow: hidden; background-color: #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%; outline: none; }
	#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-family: Arial, sans-serif; font-size: 11px; color: #000; line-height: 17px; 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; outline: none; }
	#lbCaption, #lbNumber { margin-right: 71px; }
	#lbCaption { font-weight: bold; }

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

	.section { padding-bottom: 8px; }
		#content .section h3 { margin: 0; float: none; clear: both; }
	form { width: 530px; }
		form br { clear: both; display: none; }
		form label { display: block; padding: 0 0 6px 0; float: left; width: 170px; }
		form input { width: 155px; }
		form select { width: 161px; }
		form textarea { width: 494px; height: 150px; }
		form span { display: block; padding-bottom: 2px; }
		form label.error span { color: #a5010d; }
		form label.error input, form label.error textarea { border: 1px solid #a5010d; color: #a5010d; }
		form label.error input.focus, form label.error input:focus, form label.error textarea.focus, form label.error textarea:focus { border: 1px solid #a5010d; }
		form label.nofloat { float: none; width: auto; }
		form .text label { width: auto; }
		form .text input { width: 494px; }
		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.antispam { width: auto; }
			form label.antispam input { width: 325px; }
		form label.radio { padding: 0 0 2px 0; }
			form label.radio span { display: inline; }
			form label.radio input { width: auto; background: none; border: 0; }
		form label.google_start { width: 242px; }
			form label.google_start input { width: 225px; }
		form .search { width: auto; }
			form .search input { margin-top: 13px; width: 200px; }
	input.focus, textarea.focus, input:focus, textarea:focus { color: #333; border: 1px solid #3d7ca8; }
	input, select { padding: 2px; background: #fff; color: #333; border: 1px solid #333; }
	select { padding: 1px; }
	textarea { padding: 2px; background: #fff; color: #333; border: 1px solid #333; }
	button { padding: 3px 3px 0 3px; margin: 0 0 13px 0; cursor: pointer; border: 1px solid #333; background: #ddd; }
	#form_selections { margin: 0 0 13px 0; }

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

	table { margin: 1px 0 13px 1px; border-collapse: collapse; background: #fff; }
		table tr { background: none; }
		table td, table th { padding: 2px 4px; vertical-align: top; border: 1px solid #333; }
		table thead td, table thead th { font-weight: bold; color: #fff; background: #333; border: 1px solid #333; vertical-align: bottom; }
		table thead tr:hover { background: none; }
		table th { text-align: left; background: #0c246b; color: #fff; }
		table .even { background: none; }
		table .odd { background: none; }
		table tbody tr:hover th, table tbody tr.hover th, table tbody tr:hover td, table tbody tr.hover td { background: #0c246b; color: #fff; }
	.notable table { background: none; }
		.notable table td, .notable table th { padding: 0 30px 0 0; vertical-align: top; border: 0; color: #333; }
		.notable table thead td, .notable table thead th { font-weight: bold; color: #000; background: none; }
		.notable table th { background: none; }
		.notable table tbody tr:hover th, .notable table tbody tr.hover th, .notable table tbody tr:hover td, .notable table tbody tr.hover td { background: none; color: #333; }
	.thead { display: none; }

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

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

/*--- infolisten ---*/

	.download_section table { background: none; margin: 0 0 13px 14px; border: 0; }
		.download_section table td { padding: 2px 0 4px 0; border: 0; }
		.download_section table tr:hover td, .download_section table tr.hover td { background: none; color: #333; }
	.download_section .download { padding-right: 50px; }
	.download_section img { vertical-align: top; margin-right: 2px; }

	.linksammlung { padding: 0 0 0 32px; background: url(../images/design/arrow.gif) no-repeat 15px 5px; }

	.infolist_toplink { text-align: right; padding: 2px 13px 2px 0; margin-bottom: 15px; border-bottom: 1px solid #333; }
		.infolist_toplink a { padding-left: 17px; background: url(../images/design/arrow.gif) no-repeat 0 center; font-weight: bold; }
	.overview .entity h3 { margin: 0; padding: 0 20px 0 17px; font-size: 15px; line-height: 23px; background: url(../images/design/arrow.gif) no-repeat 0 center; }
	.overview .entity p { padding: 0 0 0 17px; }
	.disclaimer { font-weight: bold; color: #333; border: 1px solid #333; padding: 5px 10px; margin-bottom: 13px; }

	#content .rss { padding: 0 0 0 21px; background: url(../images/design/rss.gif) no-repeat 0 center; }
	#content.rss_feeds { padding: 0 0 13px 11px; }
		#content .rss_feeds li { padding: 0; background: none; }
	.news_overview li h2, .news_overview li h3 { font-size: 13px; line-height: 21px; margin: 0; }
	.news_overview .footer { text-align: right; }
	#news_selection { position:absolute; top:227px; left:23px; }
	#news_selection span { font-weight: bold; }
	.news_preview { border-top: 1px solid #333; padding: 0 0 0 0; margin: 0 0 13px 0; }
		.news_preview .entity:hover { background: #ddd; }
		.news_preview h3 { margin: 0; padding: 6px 20px 0 22px; font-size: 13px; line-height: 21px; background: url(../images/design/arrow.gif) no-repeat 5px 11px; }
		.news_preview p { margin: 0; padding: 0 10px 6px 22px; border-bottom: 1px solid #333; }
	.news_page .graphic { float: right; margin: 0 0 13px 300px; display:inline-block }
		.news_page .graphic img { border: 1px solid #333; padding: 1px;  }

/*--- onlinetool ---*/

	.popuponlinetool a { padding: 0 0 0 32px; background: url(../images/design/arrow.gif) no-repeat 15px center; }
	.onlinetool_overview { padding: 0; margin: 0 0 13px 0; }
		.onlinetool_overview h3 { margin: 0; padding: 0 20px 0 17px; font-size: 15px; line-height: 23px; background: url(../images/design/calculator.gif) no-repeat 3px center; }
		.onlinetool_overview p { padding: 0 0 0 17px; }
	#calc { position:absolute; top:0; left:0; right:0; bottom:0; width:100%; height:100%; }

/*--- positionplan ---*/

	.positionplan .picture { float: left; margin: 0 10px 0 0; display: block; }
		.positionplan .picture img { display: block; border: 1px solid #333; margin: 0 0 4px 0; }
		.positionplan .picture span { display: block; background: url(../images/design/zoom.gif) no-repeat 0 2px; padding: 0 0 0 17px; }
	.positionplan .download { margin-top: 13px; }
		.positionplan .download a { padding: 1px 0 0 22px; line-height: 22px; }

/*--- sitemap ---*/

	#content #sitemap { padding: 0; }
	#content #sitemap li { padding: 0 0 13px 0; background: none; }
	#content #sitemap li a { font-size: 15px; font-weight: bold; text-decoration: none; }
	#content #sitemap li li { margin: 0 0 0 17px; padding: 0 0 0 17px; background: url(../images/design/arrow.gif) no-repeat 1px 5px; }
	#content #sitemap li li a { font-size: 13px; font-weight: normal; text-decoration: underline; text-decoration: underline; }
	#content #sitemap li li a:hover { text-decoration: none; }
	#content #sitemap li li li { margin: 0; }
	#content #sitemap ul { padding: 13px 0 13px 0; border-bottom: 1px solid #333; }
	#content #sitemap ul ul { padding: 0; border: 0; }

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

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

/*--- staff ---*/

	.staff_overview .head h2 { margin: 0;  }
	.staff_overview .staff_member {  float: left; width: 49%; }
	.staff_overview .line { border-top: 1px solid #333; margin: 13px 0 0 0; padding: 0 0 13px 0; }
	.staff_overview img { float: left; margin: 0 13px 0 0; }
	.staff_overview .vita { margin: 0; }
	.staff_overview .info { margin: 0 10px 0 100px; }
	.staff_overview .arrow { padding-left: 17px; background: url(../images/design/arrow.gif) no-repeat 0 center; font-weight: bold; }
  
  .staff_vita img { float: right; margin: 0 0 0 20px; }
  .gesellschafter { width:280px; float:left; }	

/*--- jobs ---*/

	.jobs_overview { padding: 6px 0 13px 0; }
		.jobs_overview .entity { padding: 6px 0; border-bottom: 1px solid #333; }
		.jobs_overview .entity.first { border-top: 1px solid #333; }
		.jobs_overview h2 { margin: 0; }
		.jobs_overview .detail { float: left; }
		.jobs_overview .date { float: right; text-align: right; }
		.jobs_overview .arrow { padding-left: 17px; background: url(../images/design/arrow.gif) no-repeat 0 center; font-weight: bold; }
		.jobs_overview .pages .left { float: left; }
		.jobs_overview .pages .right { float: right; }

	.job_detail h2 { margin: 0; }
	.job_detail .detail { padding-bottom: 6px; margin-bottom: 13px; border-bottom: 1px solid #333; }
	.job_detail .back { padding: 2px 0 2px 0; text-align: right; border-top: 1px solid #333; }
	.job_detail .arrow { padding-left: 17px; background: url(../images/design/arrow.gif) no-repeat 0 center; font-weight: bold; }

/*--- events ---*/

	.events_overview { padding: 5px 0 13px 0; border-top: 1px solid #333; }
		.events_overview h2 { font-size: 15px; padding: 0; }
			.events_overview h2 a { text-decoration: none; }
		.events_overview .info { padding: 0 0 6px 0; margin-bottom: 5px; border-bottom: 1px solid #333; }
		.events_overview .detail { float: left; padding-bottom: 13px; }
			.events_overview .detail strong { width: 77px; display:block; float:left; }
		.events_overview .date  { float: right; text-align: right; }
		.events_overview .more { text-align: right; padding: 0; }
		.events_overview .arrow { padding: 0 0 0 17px; background: url(../images/design/arrow.gif) no-repeat 0 center; }
		.events_overview .pages .left { float: left; }
		.events_overview .pages .right { float: right; }
	.event_detail .detail { padding-bottom: 6px; margin-bottom: 12px; border-bottom: 1px solid #333; }
		.event_detail .detail strong { width: 70px; display:block; float:left; }
	.event_detail .address { margin-bottom: 6px; border-bottom: 1px solid #333; }
		.event_detail .address .title { color: #2b8bd3; }
	.event_detail .back { text-align: right; }
	.event_detail .arrow { padding: 0 0 0 17px; background: url(../images/design/arrow.gif) no-repeat 0 center; }

/*--- media ---*/

	.media_overview { padding: 5px 0 13px 0; border-top: 1px solid #333; }
		.media_overview h2 { font-size: 15px; padding: 0; }
		.media_overview .text { padding: 0; }
		#content .media_overview .file ul { margin: 2px 0 0 0; padding: 2px; border: 1px solid #333; }
		#content .media_overview .file li { padding: 0; background: none; display: inline; }
		.media_overview .file { display: block; float: right; }
		.media_overview .file img { padding: 1px 0 1px 0; display: block; }
		.media_overview .file span { display: none; }
		.media_overview .detail { float: left; }
		.media_overview .info { padding: 0 0 6px 0; margin-bottom: 6px; border-bottom: 1px solid #333; }
		.media_overview .pages .left { float: left; }
		.media_overview .pages .right { float: right; }

/*--- navigation ---*/
  #navbg { background:#0c246b url("../images/sujet.jpg") no-repeat center; position:absolute; top:84px; height:135px; left:0; right:0;  }
  #nav { position:absolute; top:84px; height:135px; left:0; right:0;  }
    #nav li {float:left;}
    #nav li a { width:132px; display:block; color:white; padding:7px 11px 3px; text-decoration:none; font-size:14px; display:block; border-bottom:1px solid white; position:absolute; }
    #nav li.activenode a, #nav li.active a, #nav li.hover a { color:#fee09d; font-weight:bold; }
    #nav_e31715 a, #nav_e31719 a { top:0px; }
    #nav_e31716 a, #nav_e31720 a { top:27px; }
    #nav_e31717 a, #nav_e31721 a { top:54px; }
    #nav_e31718 a, #nav_e31722 a { top:81px; }
    #nav #nav_e35318 a, #nav #nav_e35319 a { top:108px; border-bottom:0px solid red; }
    
    #nav_e31715 a, #nav_e31716 a, #nav_e31717 a, #nav_e31718 a, #nav_e31718 a, #nav_e35318 a { left:10px; text-align:right; }
    #nav_e31719 a, #nav_e31720 a, #nav_e31721 a, #nav_e31722 a, #nav_e35319 a, #nav_e35319 a { right:10px; text-align:left; }  

  /*SUBNAVBG*/
    #nav li .subnavbg { z-index:1;  opacity:0.7; background-image:url(../images/navbgtrans.gif); }
    #nav li ul, #nav li .subnavbg { display:none; position:absolute; top:0; width:601px; height:135px; }
    /*left*/
    #nav_e31715 ul, #nav_e31716 ul, #nav_e31717 ul, #nav_e31718 ul, #nav_e35318 ul,  
    #nav_e31715 .subnavbg, #nav_e31716 .subnavbg, #nav_e31717 .subnavbg, #nav_e31718 .subnavbg, #nav_e35318 .subnavbg { left:164px; background-position:-300px; }
    /*right*/
    #nav_e31719 ul, #nav_e31720 ul, #nav_e31721 ul, #nav_e31722 ul, #nav_e35319 ul,
    #nav_e31719 .subnavbg, #nav_e31720 .subnavbg, #nav_e31721 .subnavbg, #nav_e31722 .subnavbg, #nav_e35319 .subnavbg { right:164px; background-position:0; }
    #nav li ul { z-index:2; padding:10px 0 0 15px; width:300px; height:97px; }

    #nav li.hover ul, #nav li.activenode ul, #nav li.active ul, 
    #nav li.hover .subnavbg, #nav li.activenode .subnavbg, #nav li.active .subnavbg  { display:block; }
    #nav_e31715 li, #nav_e31716 li, #nav_e31717 li, #nav_e31718 li, #nav_e35318 li  { float:left; }
    #nav_e31719 li, #nav_e31720 li, #nav_e31721 li, #nav_e31722 li, #nav_e35319 li  { float:right; } 
    #nav ul li a { font-weight:normal!important; text-align:left; width:130px; float:left;  position: static;  padding:0; border:none; font-size:12px; color:#11002c!important; padding:2px 2px; z-index:31; margin:5px 5px 5px 0; }
      #nav ul li.active a, #nav ul li.activenode a { font-weight:bold!important; }
      #nav ul li a:hover { background:#fee09d; }

  /* blendet das active bei hover von andern aus */
  #nav.hover li.active ul, #nav.hover li.active div.subnavbg, #nav.hover li.activenode ul, #nav.hover li.activenode div.subnavbg { display:none; }
  #nav.hover li.hover ul,  #nav.hover li.hover div.subnavbg  { display:block; }
  .startpage #nav li ul, .startpage #nav li .subnavbg { display:none!important; }
  #nav ul ul { display:none!important; }
  
/*--- design ---*/

  #searchform, #fontbox { display:none; }
  
  #author a { background:url(../images/design/autor.jpg) no-repeat; position:absolute; bottom:0; right:-13px; display:block; height:80px; width:11px; }
  #author a span { display:none; }
  #functions .func_1, #functions .func_3, #functions .func_sp { display:none; }
  #functions {position:absolute; bottom:5px; z-index:30; right:13px; }
  #functions a {  color:white; text-decoration:none;}

  #page { background:#fee09d; position:absolute; top:0; bottom:20px; left:50%; margin-left:-465px; width:930px; }
    #logo { left:0; right:0; top:0; height:84px; }
    #logo img { position:absolute; left:50%; margin-left:-152px; top:15px; }
    #logo_print { display:none; }
    #title { height:50px;  position:absolute; height:45px; top:219px; left:165px; right:165px; background:white; }
    #title span { font-weight:normal; display:block; margin:18px 0 0 10px; }
    #content { background:white; position:absolute; left:165px; right:165px; top:264px; bottom:26px; overflow:auto; padding:10px; }
      #content .bottompadding { height:20px; }

  #contactinfo { color:white; height:26px; bottom:0; left:0; right:0; position: absolute; background:#04143f;  z-index:20; }
    #contactinfo address {display:none;}
    .contactlink { background:url(../images/contact.jpg) no-repeat; position:absolute; top:7px; bottom:0px; left:165px; right:165px; }
      .contactlink span { display:none; }
        
  #fontsize { display: none; border: 1px solid #333; width: 300px; padding: 10px; background: #fff; text-align: left; }
  
/*--- startseite ---*/  
  .startpage #page { bottom:auto; height:535px; top:50%; margin-top:-268px; }
  .startpage #content, .startpage #title { display:none; }
  .startpage #nav, .startpage #navbg  {  top:109px; }
    .startpage #navbg { background:#0c246b; } 
  .startpage #logo { height:104px; }
  .startpage #logo img { margin-left:-217px; }
  #startpagesujet { position:absolute; top:109px; left:165px; z-index:0;  }
  #startpagewelcome { position:absolute; top:255px; right:15px;  }
  