/*--- general ---*/

    html, body { background: #fff; height: 100%; margin: 0; }
    body#epozcontent { background: #fff; margin: 10px; } /* ZMS-Editor */
    .hideme, #shortcuts, #shortcuts_title { display: none; }

    .clear { float: none; clear: both; } /* Old solution for floating */
    .floatbox { overflow: auto; width: 100%; } /* New solution for floating */

    #nav, #functions, h1, h2, h3, h4, h5, h6 { font-family: "Arial", sans-serif; }
    body, input, select, textarea { font-size: 13px; color: #333; font-family: "Lucida Grande", "Arial", sans-serif; }
    p, table, li, .disclaimer, .linksammlung, form, textarea { line-height: 20px; }
    h1 { font-size: 22px; font-weight: normal; color: #0071b9; line-height: 30px; margin: 0 0 15px; }
    h2 { font-size: 18px; font-weight: normal; color: #0071b9; line-height: 26px; margin: 15px 0 10px; }
    h3 { font-size: 14px; color: #0071b9; line-height: 21px; margin: 15px 0 10px; }
    h4, h5, h6 { font-size: 14px; color: #999; line-height: 21px; margin: 15px 0 10px; }
    em { font-size: 14px; line-height: 21px; }
    p { margin: 10px 0; }
    ul { list-style: square; }
    ul, ol { margin: 10px 0 10px 40px; padding: 0; }
        ul ul, ul ol, ol ol, ol ul { margin: 0 0 0 20px; }
    a { color: #0071b9; }
        a img { border: 0; display: block; }
    a:hover { text-decoration: none; }

    div.zms_graphic.floatleft { float: left; margin-right: 14px; }
    div.zms_graphic.floatright { float: right; margin-left: 14px; }
    div.zms_graphic.right { text-align: right; }
    div.zms_graphic.center { text-align: center; }
    div.graphic.alignleft { float: left; text-align: right; margin-right: 14px!important; }
    div.graphic.alignright { float: right; text-align:right; margin-left: 14px!important; }
    div.zms_graphic .zoom { width: 23px; height: 21px; margin-left: auto; margin-top: 1px; }
    div.zms_graphic .text { margin-top: 3px; font-size: 12px; color: #999; }

/*--- tables ---*/

    table { border-collapse: collapse; width: 100%; }
        table p { margin: 0; }
        table p + p { margin-top: 10px; }
    td, th { padding: 2px 7px; vertical-align: top; }
    th { text-align: left; }
    thead td, thead th { font-weight: bold; vertical-align: bottom; }
    tbody td, tbody th { border: 1px solid #000; }
    tbody th { background: #e5e5e5; }
    tbody tr:hover th, tbody tr:hover td { background: #c4c5c6; }
    .data tbody td, .data tbody th { border-left: 0; border-right: 0; }
    
    .notable table { width: auto; }
    .notable td, .notable th { padding: 0 30px 0 0; border: 0; background: none!important; vertical-align: top; }
    .notable tbody tr:hover th, .notable tbody tr:hover td { color: #333; background: none; }
    .thead { display: none; }

    .impressum th { background: none!important; }
    .impressum tbody tr:hover th, .impressum tbody tr:hover td { background: none; }

/*--- forms ---*/

    fieldset { border: 1px solid #ccc; padding: 0 10px 10px; margin-bottom: 14px; }
    legend { padding: 0 5px 10px; color: #0071b9; font-weight: bold; }
    form { width: 540px; }
    form.nowith { width: auto; }
        form input[type=text] { width: 155px; border: 1px solid #000; padding: 4px 2px; }
        form select { width: 161px; }
        form textarea { width: 496px; height: 150px; border: 1px solid #000; }
        form label { float: left; display: block; padding-bottom: 7px; width: 170px; }
            form label span { display: block; padding-bottom: 2px; font-size: 12px; }
            form label input + span { font-size: 13px; }
        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: 25px; }
        form label.google_start { width: 242px; }
            form label.google_start input { width: 225px; }
        form label.google_map input { width: 270px; }
        form label.error span { color: #a5010d; }
    #validationMessage { padding-bottom: 5px; }
    input[type=text]:focus, textarea:focus { background: #c4c5c6; }
    input[type=checkbox], input[type=radio] { float: left; margin-top: 2px; }

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

    #atikon img { float: left; margin-right: 14px; }
    #atikon .float { float: left; margin-top: 0; margin-right: 14px; }

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

    .linksammlung { background: url(../images/design/links_arrow.png) no-repeat 0 50%; padding-left: 22px; margin-left: 18px; }

    #backlink a { background: url(../images/design/back_arrow.png) no-repeat 0 50%; padding-left: 13px; }
    .infolist_toplink { text-align: right; }
        .infolist_toplink a { background: url(../images/design/top_arrow.png) no-repeat 0 50%; padding-left: 12px; }
    .disclaimer { font-size: 12px; margin-bottom: 10px; }
    .infolist_overview ul, .onlinetool_overview ul { list-style: none; margin-left: 20px; }
    .infolist_overview.nomargin ul { margin-left: 0; }
    .infolist_overview li, .onlinetool_overview li { background: url(../images/design/overview_arrow.png) no-repeat 0 3px; padding-left: 20px; }
    .infolist_overview a, .onlinetool_overview a { font-size: 14px; font-weight: bold; }
    .infolist_overview p, .onlinetool_overview p { margin-top: 2px; }

    .links_overview ul { list-style: none; margin-left: 0; }
    .links_overview a { font-size: 14px; font-weight: bold; }
    .links_overview p { margin-top: 2px; }

    .download_section table { margin-left: 18px; }
    #left_box .download_section table { margin: 0; }
    .download_section td { padding: 0 0 2px; border: 0; }
        .download_section tr:hover td { background: none; color: #000; }
    .download_section .download { padding-right: 50px; }
    #left_box .download_section .download { padding-right: 0; }
    .download_section span { margin-top: 1px; width: 23px; display: block; float: left; }

    .news_preview { padding-bottom: 10px; border-bottom: 1px solid #333; }
        .news_preview h3 { margin: 10px 0 0; font-weight: bold; }
        .news_preview p { margin-top: 0; }
    .news_page .graphic { margin: 0 0 14px 14px; float: right; }
    #news_selection { width: 237px; background: #c4c5c6; padding: 10px; }
        #news_selection span { font-weight: bold; color: #0071b9 }

    .rss_feeds { list-style: none; margin-left: 19px; padding: 0; }
        .rss_feeds li { padding-left: 21px; background: url(../images/design/rss.gif) no-repeat 0 center; }

/*--- team ---*/

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

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

/*--- jobs ---*/

    .jobs_overview .detail th, .job_detail .detail th { padding-right: 10px; }

/*--- design ---*/

    #google_maps_map { height: 400px; border: 1px solid #000; }

    #nav { position: absolute; right: 0; top: 120px; z-index: 1000; list-style: none; width: 601px; border-top: 1px solid #c1c2c4; padding-left: 0; margin-top: 0; }
        #nav a, #nav span { font-size: 14px; font-weight: bold; text-decoration: none; color: #000; display: block; padding: 13px 12px 13px 9px; background-image: url(../images/design/dropdown_arrow.png); background-repeat: no-repeat; background-position: 100% 0; }
        #nav span {  cursor: default; }
        #nav ul { position: absolute; top: 36px; display: none; list-style: none; padding: 12px 5px 5px; margin-left: 9px; background: #c4c5c6 url(../images/design/subnav_arrow.gif) no-repeat; }
        #nav li { position: relative; float: left; border-right: 1px solid #c1c2c4; padding-right: 7px; }
            #nav li.last { border: 0; padding: 0; }
            #nav li ul a { color: #000!important; font-weight: normal; white-space: nowrap; display: block; padding: 5px 8px; background: none; border-bottom: 1px solid #999; }
            #nav li ul a.last { border: 0; }
            #nav li ul a:hover, #nav li ul a.activenode, #nav li ul a.active { color: #0071b9!important; }
            #nav li li { border: 0px; padding-right: 0; float: none; display: block; }
            #nav li.last ul { right: 0; background: #c4c5c6 url(../images/design/subnav_last_arrow.gif) no-repeat 100% 0; }
            #nav li.active span { color: #0071b9; background-position: 100% -44px; }
        #nav li:hover a, #nav li:hover span, #nav li.hover a, #nav li.hover span { color: #999; background-position: 100% -88px; }
        #nav li:hover ul, #nav li.hover ul { display: block; }

    #page { position: relative; width: 965px; margin: 0 auto; padding: 0 15px; min-height: 100%; height: auto!important; height: 100%; }
    #header { position: relative; z-index: 1000; padding: 15px 0 53px; background: url(../images/design/header_bg.gif) no-repeat 0 100%; }
    #content { float: right; width: 660px; background: url(../images/design/content_bg.gif) repeat-y 100% 0; padding: 0 28px 30px 0; min-height: 335px; }
    #footer { background: url(../images/design/footer_bg.gif) no-repeat 0 0; padding-bottom: 10px; border-bottom: 1px solid #fff; }

    #cse-search-box { position: absolute; top: 15px; right: 0; }
    #cse-search-box input[type=text] { position: absolute; top: 0; right: 30px; border: 1px solid #c3c5c6; width: 200px; padding: 5px; }
    #cse-search-box button { position: absolute; top: 1px; right: 0; background: url(../images/design/search_btn.png); width: 25px; height: 25px; border: 0; cursor: pointer; }
    #cse-search-box span { display: none; }

    #left_box { width: 257px; padding-top: 365px; margin-right: 688px; background-repeat: no-repeat; }
    .container_box { padding: 0 10px 0; border: 1px solid #c1c2c4; }
        .container_box h2 { margin: 10px 0; }
        .container_box .notable table { white-space: nowrap; }
    
    
    #functions { list-style: none; padding: 0; margin: 0; }
        #functions li { float: left; background: url(../images/design/function_arrow.png) no-repeat 0 50%; padding: 0 15px 0 12px; margin: 15px 0 60px; }
        #functions li.first { background: url(../images/design/rss_abo.png) no-repeat 0 50%; padding-left: 28px; margin-right: 80px; width: 155px; }
        #functions li.last { float: right; padding-right: 0; }
        #functions a { font-weight: bold; text-decoration: none; display: block; padding: 3px 0; }
        #functions a:hover { color: #999; }
        #functions a.active { color: #000; }
    
    #author { margin: 0; }
        #author a { background: url(../images/design/author.png); display: block; width: 76px ; height: 14px; margin-left: auto; }
        #author span { display: none; }

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

    #dummy_box { height: 600px; }
    #center_box { position: absolute; top: 50%; margin-top: -300px; width: 965px; height: 600px; }
    
    .startpage #title { width: 350px; }
    .startpage div.graphic.alignright { margin-left: 70px!important; margin-bottom: 40px; }
        .startpage div.graphic img { position: relative; top: -50px; left: -60px; }
    
    .startpage #content {  min-height: 287px; }
    .startpage #left_box { padding-top: 317px; }
    
    .startpage #functions li.last { float: left; }
    .startpage #functions li { margin-bottom: 0; }

