/*--- general ---*/

    * { padding: 0; margin: 0; border: 0; outline-width: 0; font-family: Verdana, sans-serif; }
    html, body { height: 100%; }
    body { background:#ccdaea url(../images/design/bg_shadow.jpg) repeat-y center; }
    .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: 12px; color:#747577; } /* DON'T MAKE A LINE-HEIGHT ON BODY -> Very strange bugs in IE6 */
    strong { color: #00598d; }
    input, select, button { line-height: 16px; }
    #content, textarea { line-height: 18px; font-size: 11px; }
    h1, h2, h3, h4, h5, h6, legend { margin: 0 0 13px; color: #00538a; }
    h1 { font-size: 20px; }
    h2, legend { font-size: 17px; line-height: 23px; font-weight: bold; }
    h3 { font-size: 14px; line-height: 22px; }
    h4, h5, h6 { font-size: 13px; line-height: 21px; color: #333; }
    a { color: #00598d; }
    a:hover { text-decoration: none; }
    ul, ol { list-style: none; }
    address, p { margin: 0 0 13px; font-style: normal; }

    div.zms_graphic { padding: 0 0 13px; }
        div.zms_graphic.floatleft { float: left; margin: 0 20px 0 0; }
        div.zms_graphic.floatright { float: right; margin: 0 0 0 20px; }
        div.zms_graphic.left .graphic { margin: 0 auto 0 0; }
        div.zms_graphic.left .text { margin: 0 auto 0 0; }
        div.zms_graphic.right .graphic { margin: 0 0 0 auto; }
        div.zms_graphic.right .text { margin: 0 0 0 auto; }
        div.zms_graphic.center .graphic { margin: auto; }
        div.zms_graphic.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; color: #00538a; }
    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; }

/*--- 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; float: left; width: 170px; font-size:11px; }
        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; margin: 0 0 13px; cursor: pointer; border: 1px solid #333; background: #ddd; }
    #form_selections { margin: 0 0 13px; }

/*--- 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 #999999; }
        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: #00538a; 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: #00538a; 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; }
    .nobordertable td { border:0px solid gray; }

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

    .address .float { float: left; margin: 0 20px 0 0; }
    .impressumadress .float { width:180px; }
    .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; }

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

    #google_maps_map { height: 700px; }
    .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; }

/*--- infolisten ---*/

    .download_section table { background: none; margin: 0 0 13px 14px; border: 0; }
        .download_section table td { padding: 2px 0 4px; 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 {border-bottom:1px solid #98b7d5; margin-bottom:10px;}
    
    .overview .entity p { padding: 0 0 0 17px; }
    .disclaimer { font-weight: bold; color: #333; border: 1px solid #333; padding: 5px 10px; margin-bottom: 13px; }
        .disclaimer p { margin: 0; }

    #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; right:20px; top:143px; }
    #news_selection span { font-weight: bold; color:white; }
    .news_preview { border-top: 1px solid #333; padding: 0; margin: 0 0 13px; }
        .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 { margin: 15px 15px 15px 20px!important; float: right; }
        .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, h3.onlinetoolheading { 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 .popuponlinetool{border-bottom:1px solid #98b7d5; margin-bottom:10px;}
       
        .onlinetool_overview p { padding: 0 0 0 17px; }
        
    .onlinetool_overview_l h3, .onlinetool_overview_l .entity .popuponlinetool p:first-of-type{display:none;}
    .onlinetool_overview_l h3, .onlinetool_overview_l .entity .popuponlinetool p{margin:0; padding:0;}
        
/*--- positionplan ---*/

    .positionplan .picture { float: left; margin: 0 40px 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; background: none; }
    #content #sitemap li a { font-size: 15px; font-weight: bold; color: #00538a; 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; color: #00538a; 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; 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; }

/*--- staff ---*/

  .staff_overview { margin-bottom:20px; }
    .staff_overview .head h2 { margin: 0; }
    .staff_overview .staff_member {  float: left; width: 350px; }
    .staff_overview .line { border-top: 1px solid #CCC; margin: 13px 0 0; padding: 0 0 13px; }
    .staff_overview img { float: left; margin: 0 13px 0 0; }
    .staff_overview .vita { margin: 0; }
    .staff_overview .info { margin: 0 0 0 112px; }
    .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; }
.line { border-top: 1px solid #CCC; margin: 13px 0 0; padding: 0 0 13px; }
/*--- 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; 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; 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; 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: #00538a; }
    .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; 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; display: block; }
        .media_overview .file span { display: none; }
        .media_overview .detail { float: left; }
        .media_overview .info { padding: 0 0 6px; margin-bottom: 6px; border-bottom: 1px solid #333; }
        .media_overview .pages .left { float: left; }
        .media_overview .pages .right { float: right; }

/*--- navigation ---*/
  #navbar { width:200px; float:left; border-top:85px solid #00538a; padding:20px 0 40px 0; }

  #navbar ul {  }
    #navbar li { padding:0 0 0 10px; margin:0 0 0 17px; }
      #navbar li.active, #nav li.activenode { background:url(../images/design/navactive.gif) no-repeat left 10px;  }
      #navbar a { display:block; text-decoration:none; line-height:2.18; font-weight:bold; }
        #navbar a:hover { color:#00395b; }
    #navbar ul { padding-bottom:10px; }
    #navbar li li { margin:0; }
      #navbar li li a { font-size:10px; color:#98B7D5;  }
        #navbar li li a:hover { color:#6a88a5; }
      #navbar li li.active, #nav li li.activenode { background:none; }
      #navbar li li a.active, #nav li li a.activenode { color:#00538a; }

    #nav ul ul { padding-bottom:0; display:none; }
    #nav #nav_e35205 ul, #nav #nav_e35139 ul, #nav_e35141 ul ul { display:block; }
    
    #nav ul ul ul { display: none; }
    
      #nav2 { padding:10px 0; } 
          #nav2 li a { font-size:10px; color:#98B7D5;  }
    
    #quicklinks { background:#98b7d5; padding:10px 0 }
    /* #quicklinks { background:#98b7d5; padding:20px 0 20px 20px;  } */
    #datevdemostart{margin-left:28px; margin-top:28px; width:120px; font-size:10px;}
    #datevdemostart a img{width:120px; height:90px;}

/*--- design ---*/

  #fontbox, #author, #functions, #contactinfo, fontsize { display:none; }
  
  #wrapper { width:960px; position:absolute; left:50%; margin-left:-480px; position: relative; margin:0 -480px auto; min-height: 100%; height: auto!important; height: 100%; }
  
  #logo { height:85px; text-align:right; background:white; }
    #logo img { margin:15px 10px 0 0; }

  h1#title { color:#fff; background:#00538a; border-left:1px solid white; display:block; padding:55px 0 10px 15px; line-height:20px;  float:right;  width:744px; margin:0;  font-weight:normal; } 
  #content {padding:20px; float:right; width:719px; }
  
    #fontsize { display: none; border:1px solid #333; width: 300px; padding: 10px; background: #fff; text-align: left; }
    
    #searchform { position: absolute; bottom: 0; width:180px; padding:0 10px 10px 10px; background:#ffffff; }
      #searchform input, #searchform button { border:1px solid #00598d; }
    #searchform input { font-weight:bold; color: #00598d; width:152px; }
     #searchform button { background:url(../images/design/searchicon.gif) no-repeat center center; height:20px; width:20px; margin:0; position:relative; top:-2px;}
         #searchform button span { display:none; }
    
/*--- startpage ---*/

  .startpage h1#title { background:#00538a url(../images/startseite_h1.gif) no-repeat 15px center; }
   .startpage  h1#title span { display:none; }
  /*.startpage #nav { height:170px; }
  .startpage #nav2 { height:41px; }*/
  .startpage #content { padding:0; width:759px; padding:0 0 35px; } 
  .startbutton { position:relative; top:-30px; right:20px;  }
  
  
  #content .locationquicklinks ul { width:758px; border-bottom:1px solid #00538a; border-top:1px solid #00538a; height:44px; margin-bottom:10px; padding:0; }
    #content .locationquicklinks ul li { float:left; width:19%; background:none; padding:0;  }
    #content .locationquicklinks ul li a { display:block; line-height:44px; text-align: center; font-weight:bold; font-size:14px;  text-decoration:none; }

  
  #content .locationmap ul { background:url(../images/karte_ger.gif); width:368px; height:320px; padding:0; position:relative; margin-left:180px;}
    #content .locationmap ul li { background:none; padding:0; }
      #content .locationmap ul li a { display:block; position:absolute; }
      #content .locationmap ul li a span { display:none; }
      
      #content .locationmap ul li.locality1 a { top:183px; left:105px; width:61px; height:28px; }
      #content .locationmap ul li.locality2 a { top:109px; left:212px; width:40px; height:20px; }
      #content .locationmap ul li.locality3 a { top:213px; left:214px; width:74px; height:21px; }
      #content .locationmap ul li.locality4 a { top:196px; left:177px; width:62px; height:20px; }
      #content .locationmap ul li.locality5 a { top:257px; left:136px; width:81px; height:21px; }
      
    
    #map {position:relative; width:759px; height:334px;}
    
    #map a{position:absolute; top:0; bottom:0; background-image:url(../images/design/trans.gif); z-index:33;}
      #map a span{display:none;}
    
    #map img {position:absolute; top:0; left:0;bottom:0; right:0; z-index:1; }
    #map #teammap {position:absolute; top:0; left:0; bottom:0; right:0; }  
        #teammap_teamfoto_map_entry1{ width:200px; left:0;}
        #teammap_teamfoto_map_entry2{ width:175px; left:385px; }
        #teammap_teamfoto_map_entry3{ bottom:0; width:185px; left:200px; }
        #teammap_teamfoto_map_entry4{ bottom:0; width:195px; left:560px; }
        
  	#teamcontent {position:absolute; display:none; bottom:0; right:0; left:0; height:70px;  background:url(../images/bgp.png); z-index:2; }
  	#teamcontent, #teamcontent strong {color:#fff;}
  	#teamcontent div {padding-top:10px; padding-bottom:10px;}
  	
    #teamcontent_1{padding-left:15px;}
  	#teamcontent_2{padding-left:400px;}
  	#teamcontent_3{padding-left:220px;}
  	#teamcontent_4{padding-left:580px;}


/*--- ie6nomore ---*/

    #ie6nomore { position: fixed; left: 0; top: 0; z-index: 99999; 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; }
         
         
        .quickcontactoverview{overflow:hidden;} 
         .quickcontact{width: 250px;  float:left; margin-right:40px;}

