/*--- general ---*/

    * { outline-width: 0; margin:0; padding:0; }
    html, body { background: #f1f3f7; height: 100%; margin: 0px; }
    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: #494440; font-family: "Arial", sans-serif; }
    h1 { font-size: 23px; line-height: 28px; color: #3d4d78; }
    h2 { font-size: 17px; color: #3d4d78; line-height: 26px; }
    h3 { font-size: 14px; color: #3d4d78; line-height: 21px; }
    h4, h5, h6 { font-size: 13px; color: #494440; line-height: 19px; }
    h1, h2, h3, h4, h5, h6, p, ul, ol, table, .address, form, fieldset { margin-top: 0; margin-bottom: 14px; }
    legend { color: #3d4d78; font-weight: bold; }
    p, table, .address, #content li, .disclaimer, .linksammlung, textarea, fieldset { line-height: 19px; }
    ul { }
    ul ul, ol ol, ul ol, ol ul { margin-bottom: 0; } 
    li {margin-left:25px!important;}
    a { color: #3d4d78; text-decoration:none; }
    a:hover {color:#ff3d3d; text-decoration: none; }
    a img { border: 0; }
    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 #494440; }
        
    
    
/*--- general table ---*/

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

    fieldset { border:none; padding:0; }
    legend { display:none; padding: 0 5px 10px; }
    form { width: 540px; }
        form input[type=text] { width: 155px; border:1px solid #bdb6af; background-color:#f0edea; padding: 2px 2px; }
        form select { width: 161px; border:1px solid #bdb6af; background-color:#f0edea; }
        form textarea { width: 494px; height: 150px; border:1px solid #bdb6af; background-color:#f0edea; padding-left: 2px; }
        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: #ff3d3d; }
    #validationMessage { color: #ff3d3d; }
    input[type=text]:focus, textarea:focus { background: #eee8e0; }
    input[type=checkbox], input[type=radio] { float: left; margin-top: 2px; }
    button { margin-bottom: 14px; border:1px solid #fff; background-color:#4e66a5; font-size:11px; color:#fff; }
    button:hover {background-color:#8f9dc2;}
         
    
    
/*--- address, impressum ---*/

    .address {margin-top:15px;}
  .address .float { float: left; margin: 0 30px 0 0; }
    .notable .impressum { border-top: 1px solid #494440; border-bottom: 1px solid #494440; }
        .notable .impressum td, .notable .impressum th { padding: 3px 0; border-top: 1px solid #494440; }
        .notable .impressum .noborder td, .notable .impressum .noborder th {border-top:none;}
        .notable .impressum th { padding: 3px 14px 3px 0; }
    .impressum .nopadding { margin-bottom: 0; }
       
    
    
/*--- google maps ---*/

    #google_maps_map { height: 400px; border: 1px solid #494440; }
    .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;}    
        
    

/*--- positionplan ---*/

    .positionplan .picture { float: left; margin-right: 10px; display: block; }
        .positionplan .picture img { display: block; border: 1px solid #494440; margin-bottom: 4px; }
    .positionplan .download { margin-top: 13px; }
        .positionplan .download a { padding: 1px 0 0 22px; line-height: 21px; }
          
        
        
/*--- infolisten, onlinetools ---*/

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

    .download_section td { padding: 0 0 4px; border: 0; }
        .download_section tr:hover td { background: none; color: #494440; }
    .download_section .download { padding-right: 50px; }
    .download_section img { margin: 2px 8px 0 0; display: block; float: left; }

    .news_preview { margin-bottom: 14px; border-bottom: 1px solid #fff; }
        .news_preview h3 { margin-bottom: 0; }
        .news_preview .entity {border:1px solid #bdb6af; background-color:#f0edea; margin-bottom:5px; padding:4px;}
    .news_page .graphic { margin: 0 0 13px 14px; float: right; }
    .news_overview ul h2, .news_overview ul h3 { margin-bottom: 0; }
    #news_selection select {border:1px solid #bdb6af; background-color:#f0edea; width:120px;}

    .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 {width:560px;}
    #staff_overview .head h2 { margin-bottom: 0; }
    #staff_overview .head .noposition { margin-bottom: 10px; }
    #staff_overview .staff_member { float:left; width:200px; margin-right:77px; }
    #staff_overview .line { border-top: 1px solid #fff; margin-top: 14px; padding-bottom:12px; }
    #staff_overview img { float: left; margin-right: 14px; border: 1px solid #494440; }
    #staff_overview .vita { margin: 0; }
    #staff_overview .info { margin-left: 112px; } 
    #staff_overview .staff_text {width:270px;}
    #staff_vita img { float: right; margin-left: 20px; margin-bottom:8px; border: 1px solid #494440; }
    
             
    
    
/*--- zope search ---*/

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

    #lbOverlay { position: fixed; z-index: 9999; left: 0; top: 0; width: 100%; height: 100%; background: #494440; 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; }
         
    
    
/*--- 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; } 
          
        
        
/*--- Nav ---*/

    #navigation {position:absolute; top:0; left:771px; width:169px; background:#99918c; height:200px; padding:0!important; border-left:1px solid #fff;}
    #nav a { font-size:13px; display:block; height:15px; padding:12px 35px; color:#fff; background-image:url(../images/design/arrow_men.gif); background-repeat:no-repeat; background-position:18px 15px; font-weight:bold;}
    #nav a:hover, #nav a.active, #nav a.activenode {background-color:#4e66a5;}
    #nav li { height:39px; border-bottom:1px solid #fff; list-style:none; margin-left:0!important;}
    
    #nav ul {display:none;}
    #nav li.hover ul, #nav li.active ul, #nav li.activenode ul {position:absolute; display:block; top:0; left:-228px; background:#99918c; width:226px; opacity: .84; border-left:1px solid #fff; height:199px;}
    #nav ul a {background:none; font-weight:normal; padding:12px 8px;}
    #nav ul a:hover, #nav ul a.active, #nav ul a.activenode {background:none; color:#3d5492; font-weight:bold;}
    #nav ul li {border:none; height:18px;} 
    
    #nav ul ul {display:none!important;}
    #nav li.hover ul ul {display:none;}
    
         
    
/*--- design ---*/
    
    #fontsize { display: none; }
    #container {position:absolute; background-color:#fff; top:0; bottom:0; left:50%; margin-left:-470px; margin-right:0!important; padding:0!important; width:940px; border:1px solid #d1c8c0; border-top:21px solid #d1c8c0; border-bottom:21px solid #d1c8c0;}
    #logo {position:absolute; top:0; left:0; width:299px; height:169px; padding-top:30px; padding-left:12px;}
    #content {position:absolute; left:312px; top:200px; bottom:0; width:568px; background-color:#e7e3de; background-image:url(../images/design/verlauf.gif); background-repeat:repeat-x; background-position:bottom; padding:30px; overflow:auto;}
    #sujet {position:absolute; top:0; left:312px; height:199px; width:459px; border-bottom:1px solid #fff;}
    
    #funcbox {position:absolute; bottom:0; left:0; height:40px; background-color:#4e66a5; width:940px;}
    #searchform {position:absolute; left:150px; top:11px; width:150px;}
    #searchform input {position:absolute; left:0; top:1px; background-color:#fff; border:none; height:14px; width:95px; font-size:11px; padding:1px; color:#4e66a5;}
    #searchform button {position:absolute; left:100px; top:1px;color:#fff; background:none; border:none; height:16px;}
    #searchform button:hover {color:#8f9dc2;}
    
  #searchform_function {position:absolute; left:150px; top:11px; width:150px;}
    #searchform_function input {position:absolute; left:0; top:1px; background-color:#fff; border:none; height:14px; width:95px; font-size:11px; padding:1px; color:#4e66a5;}
    #searchform_function button {position:absolute; left:100px; top:1px;color:#fff; background:none; border:none; height:16px;}
    #searchform_function button:hover {color:#8f9dc2;}
    
    #contactinfo {width:281px; position:absolute; top:142px; left:18px; font-size:11px; line-height:18px; color:#99918c;}
    .box1 {float:left; margin-right:34px;}
    
    #mandantenbereich {position:absolute; left:0; top:200px; height:74px; width:312px; background-color:#8f9dc2; background-image:url(../images/design/mandantenbereich.gif); background-repeat:no-repeat; background-position: 18px 22px;}
    #quicklinks {position:absolute; left:0; top:274px; height:122px; width:312px; background-color:#4e66a5;}
    #quicklinks a {font-size:13px; display:block; color:#fff; height:29px; padding:11px 0 0 18px; background-image:url(../images/design/arrow_quick.gif); background-repeat:no-repeat; background-position:288px 15px;}
    #quicklinks a:hover, #quicklinks a.active, #quicklinks a.activenode {background-color:#8f9dc2;}
    #quicklinks li {list-style:none!important; height:40px; border-top:1px solid #fff; margin-left:0!important;}
    
    #siegel {position:absolute; bottom:5px; left:30px; } 
    #slogan {position: absolute; bottom: 15px; left: 125px;}
    #erstgespraech {position:absolute; bottom:43px; right:2px; z-index:2000;}
    #slogan_siegel {position: absolute; bottom: 40px; left 0px; width: 312px; background-color: #8F9DC2; z-index: 1900; height: 100px; border-bottom: 1px solid white;}
    #author {position:absolute; bottom:-17px; right:20px;} 

    #startseite_slogan_siegel {position: absolute; bottom: 40px; left 0px; width: 312px; background-color: #8F9DC2; z-index: 1900; height: 116px; border-bottom: 1px solid white; border-top: 1px solid white;}
    #startseite_siegel {position:absolute; bottom:15px; left:30px; } 
    #startseite_slogan {position: absolute; bottom: 25px; left: 125px;}
  
           
    
    
/*--- Startpage ---*/
    
    .startpage #container {height:554px; top:50%; margin-top:-297px;}
    .startpage #content {height:254px; background-image:url(../images/design/startcontentbild.jpg); background-position:top;}
    .startpage #title {display:none;}
    .startpage #searchform {left:780px;}
                                                   
    
    
/*--- functions ---*/    
        
    #functions {position:absolute; bottom:14px; left:18px;}
    #functions ul {padding:0;}
    #functions li {float:left; width:20px; height:14px; list-style:none; margin-left:0!important;}
    #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;}    
    .func_2 {background-image:url(../images/design/impressum.gif); background-repeat:no-repeat;}
    .func_3 {background-image:url(../images/design/contact.gif); background-repeat:no-repeat;}
  
    
    
/*--- Leistungen ---*/     

    #content .leistungen_toplink {border-top: 1px solid #fff; text-align: right; margin-top: 5px; padding-top: 3px;}
    #content p.leistungen_toplink a {border: 0; padding-left: 6px; padding-right: 6px; border-right: 1px solid #fff;}
    #content .leistungen_toplink a:hover {}
    #content .leistungen_toplink .last {border: 0;}
    #content #infolist_top, #content .leistungen a {padding: 0;}
    .leistungen h1 {font-size:120%;}
    
    .anchornav {margin: 0 0 25px 0px!IMPORTANT; padding:2px!IMPORTANT; border:1px solid #bdb6af; background-color:#f0edea;}
    .anchornav ul {margin:0; padding-left:20px!IMPORTANT;}
    
    #content .anchornav li {padding:0; margin-top:5px;}
    #content .anchornav a {margin-right:0; border: 0; padding:2px 5px 2px 5px;}
    #content .anchornav .last {border: 0;}
    
    .service_offerings {overflow:hidden; width: 182px; height: 160px; float: left; border:1px solid #bdb6af; background-color:#f0edea; margin-left: -1px; margin-right:6px; margin-bottom:6px; margin-top: -1px; padding:0;}
    .service_offerings:hover {background:#8f9dc2!IMPORTANT;}
    #content .service_offerings a.border_bottom {overflow:auto; display:block; margin:0 0 7px 0; border-bottom:1px solid #b9bebf;}
    
    
    #content .service_offerings a { font-size:11px; border: 0;}    
    #content .service_offerings a:hover {color:#fff;}
    #content .service_offerings ul {padding-left:0; margin-left:0; margin-bottom: 0;}
    #content .service_offerings.active ul {background:none;}
    #content .service_offerings li {padding-bottom: 0; padding-left:0; list-style-image:none; background-image:none;}
     
    #content .service_offerings ul li {margin-left:0; padding-left:10px; background-image:url(../images/design/aufz.gif); background-position:left 7px; background-repeat:no-repeat;}
     
    #content .service_offerings h2 {} 
    #content .service_offerings .headline_hover {display:none;}
    #content .service_offerings:hover .headline_normal {display: none;}
    #content .service_offerings:hover .headline_hover {display: block;}

  #content .popuponlinetool {margin:0 0 0 15px;}
    #content .popuponlinetool p {margin:0; padding:0;}
  
  #content .small_line_height {line-height:1px;}

  #content ul {list-style:none;}
  #content ul li {margin-left:10px!important; padding-left:15px; background-image:url(../images/design/aufz.gif); background-position:left 7px; background-repeat:no-repeat;}

  #content .anchornav li {margin-left:5px!important; padding-left:10px;}

  dd {margin-bottom:5px;}


#form_appointmentmaker legend {display: block!important; padding:0px 0px 10px; font-size: 14px; color: #3d4d78; line-height: 21px;}

