/* stuff to hide */
#searchablecontent, #skipnavigation, #printlogo {display:none; visibility:hidden;}

/* general */
html#web, #web body {overflow:auto; height:100%; margin:0; font-family:Arial; font-size:12px; color:#000000;}
input, textarea, button, select, table, th, td, div, p, label, span {font-family:Arial; font-size:100%; color:#000000;}
body#epozcontent {color:black; background-color:white;}

table {border:0; border-collapse:collapse;}
table td, table th {padding:0; vertical-align:top;}

a {text-decoration:none; color:#d80029;}
a:hover {text-decoration:underline;}

img {border:0;}

p, ol, ul, #content table {margin:0 0 1em 0;}
h1 {margin:0 0 1em 0; font-size:160%;}
h2 {margin:0 0 1em 0; font-size:140%;}
h3 {margin:0 0 1em 0; font-size:120%;}
h4 {margin:0 0 1em 0; font-size:110%;}
h5 {margin:0; font-size:100%;}
h6 {margin:0; font-size:100%;}
hr {margin-bottom:1em; border:0; border-bottom:1px solid #000000;}
a.l { text-decoration: none; }

.clearing {clear:both; float:none;}
#content .clearing {float:none; clear:both;}

/* forms general */
form {margin:0; padding:0;}

input, select, textarea {margin:0; padding:0;}
input, textarea {padding:0 2px; border:1px solid #000000;}
select {border:1px solid #000000;}
textarea {overflow:auto;}

label.error {color:#FF0000;}
label.error input, label.error select, label.error textarea {border:1px solid #FF0000;}

button {padding:0; margin:0; border:0; cursor:pointer; background:none;}


/* forms content */
#content form {margin-bottom:1em;}
#content form .container_1 {float:left; margin-right:1em; margin-bottom:0.3em; width:291px; height:24.8em;}
#content form .container_2 {float:left; margin-bottom:0.3em; width:291px; height:24.8em;}

#content label {display:block; margin-bottom:0.1em; height:3em;}
#content label span {display:block;}

#content input, #content textarea {width:285px; margin-top:1px;}
#content input.radio, #content input.checkbox {padding-left:0; padding-right:0; border:0; width:auto;}

#content button {margin-right:-0.2em;}
#content .button_send {float:right; font-weight:bold; color:#d80029;}
#content .button_send:hover, #content .button_senden.hover {text-decoration:underline;}

#content #label_plz {float:left; margin-right:3px;}
#content #fld_plz {width:60px;}
#content #label_ort {float:left;}
#content #fld_ort {width:216px;}
#content #label_telefon {clear:both;}
#content #label_text {height:21em;}
#content #fld_text {height:19.8em;}

/* newsletter */
#form_newsletter #label_name {float:left;margin-right:3px;}
#form_newsletter #label_email {float:left;}

/* form_recommendation */
#form_recommendation .title {font-weight:bold;}
#form_recommendation .sender, #form_recommendation .receiver {clear:both;height:4em;margin-bottom:1em;}
#form_recommendation #label_name_absender {float:left;margin-right:3px;}
#form_recommendation #label_email_absender {float:left;}
#form_recommendation #label_email_empfaenger {float:left;}
#form_recommendation #label_kommentar {clear:both;font-weight:bold;height:10em;margin-bottom:1em;}
#form_recommendation textarea {width:578px;height:100px;}

/* form_appointmentmaker */
#form_appointmentmaker .container_termine {margin-bottom:1em;}
#form_appointmentmaker .container_termine .container_1, #form_appointmentmaker .container_termine .container_2 {height:4.5em;}
#form_appointmentmaker .container_termine .title  {display:block;font-weight:bold;}
#form_appointmentmaker .container_termine input {width:138px;}
#form_appointmentmaker .container_termine label {float:left;}
#form_appointmentmaker .container_termine label.first {margin-right:3px;}


#container_page {position:absolute; top:27px; bottom:67px; left:0px; right:0px;}

#sidebar {position:absolute; top:0px; bottom:0px; left:0px; width:225px; border-right:1px solid #000000;}
#logo {position:absolute; top:0px; left:37px;455}
#teaser {position:absolute; top:120px; bottom:0px; left:0px; right:1px; background-color:#d80029; overflow:hidden;}
#startpage #teaser {overflow:auto;}

#teaser h1 {margin:40px 10px 1em 10px; color:#FFFFFF;}
#teaser ul {list-style-type:none; margin:0 10px 0 10px; padding:0; border-top:1px solid #FFFFFF;}
#teaser ul li a {display:block; padding:0.5em 0 0.5em 13px; color:#FFFFFF; border-bottom:1px solid #FFFFFF; background-image:url(../images/layout/icons/teaser_listicon.gif); background-repeat:no-repeat; background-position:0 0.8em;}
#titleimage {margin:47px 0 0 0;}

#author {position:absolute; top:120px; bottom:0px; right:0px; width:19px; padding-top:19px; text-align:center; background-color:#d80029;}

#contactinfo {position:absolute; bottom:0px; height:60px; left:235px; right:20px; font-size:11px; line-height:1.5em;}

#page {position:absolute; top:0px; bottom:0px; left:227px; right:20px; overflow:hidden;}

#quicklinks {list-style-type:none; margin:0; padding:0 0 0 5px; position:absolute; top:-3px; left:0px;}
#quicklinks li {float:left;}
#quicklinks li a {padding:0 3px; border-left:1px solid #000000;}
#quicklinks li.first a {border:0;}

#container_nav {position:absolute; top:50px; height:71px; left:0px; right:0px; z-index:1000;}
#nav {list-style-type:none; margin:0; padding:0; position:absolute; bottom:0px; right:0px;}
#nav li {position:relative; float:left;}
#nav li a {display:block; line-height:2em; padding:0 0.5em; color:#000000; border-top:1px solid #FFFFFF; border-bottom:1px solid #000000; border-left:1px solid #000000;}
#nav li.last a {border-right:1px solid #FFFFFF;}
#nav li a:hover, #nav li a.hover, #nav li a.active, #nav li a.activenode {text-decoration:none; color:#d80029; border-top:1px solid #000000; border-bottom:1px solid #FFFFFF;}
#nav li.last a:hover {border-right:1px solid #000000;}
#nav li ul {visibility:hidden; list-style-type:none; margin:0; padding:0; position:absolute; border-left:1px solid #000000; border-right:1px solid #000000; border-bottom:1px solid #000000; background-color:#FFFFFF;}
#nav li ul li {float:none;}
#nav li ul li a {border:0; white-space:nowrap;}
#nav li ul li a:hover, #nav li ul li a.active, #nav li ul li a.activenode {border:0;}
#nav li ul li.last a, #nav li ul li.last a:hover {border:0;}

#container_content {position:absolute; top:120px; bottom:0px; left:0px; right:0px; border-top:1px solid #000000; border-bottom:1px solid #000000; z-index:500;}
#startpage #container_content {background-color:#dde3e9; padding:1px 0;}
#startpage_img {position:relative; height:100%; z-index:50;}
#startpage_pic1 {position:absolute; top:20px; left:20px; border:3px solid #FFFFFF; z-index:100;}
#startpage_pic2 {position:absolute; top:20px; left:170px; border:3px solid #FFFFFF; z-index:100;}
#startpage_pic3 {position:absolute; top:20px; left:320px; border:3px solid #FFFFFF; z-index:100;}

#container_header {position:absolute; top:0px; height:68px; left:50px; right:0px;}
#header {position:absolute; bottom:0px; left:0px; right:0px;}
#header h1 {float:left; margin:0 2em 0 0; color:#d80029;}
#header #news_selection {display:block; padding:0.2em 0 0 0;}
#header #news_selection span {display:block; float:left; margin-right:0.5em; padding:0.3em 0 0 0;}

#content {position:absolute; top:90px; bottom:0px; left:50px; right:0px; padding:0 50px 0 0; overflow:auto;}
#calcdiv {position:absolute; top:90px; bottom:0px; left:50px; right:0px;}
#calc {position:absolute; height:100%; width:100%;}

/* content */
.leftlabeled {clear:both;}
.leftlabeled th {font-weight:bold; text-align:left; padding-right:1em;}

.zms_file {margin:0 0 1em 0;}
.zms_file .text {display:none;}
.zms_file img {vertical-align:middle;}

.contact_address {float:left; margin-right:2em;}
#content table.contact_phone_fax {float:left; margin-right:2em;}
#content table.contact_web {float:left;}
#content table.contact_phone_fax th, #content table.contact_web th {font-weight:bold; text-align:left; padding-right:1em;}

/* team */
.team .picture {padding-bottom:2em;}
.team .entity {padding:0 0 2em 1em;}
.team .name {display:block; font-weight:bold;}
.team .linkcollection {list-style-type:none; margin:0; padding:0;}

/* positionplan */
.positionplan .overview {float:left; margin:0 1em 1em 0;}
.positionplan .detail {float:left; margin:0 0 1em 0;}
.positionplan .overview span, .positionplan .detail span {display:block;}

/* partner */
.partner {margin:0 0 1em 0; border-bottom:1px solid #000000;}
.partner h2 span {display:block; font-size:80%;}

/* news */
.news_preview {border-bottom:1px solid #000000; margin:0 0 1em 0;}
.news_preview .entity {margin-bottom:1em;}
.news_page {margin-bottom: 1em;}

/* infolists */
.overview .entity {margin-bottom:1em;}

.disclaimer {margin: 0 0 1em 0;}

.infolist_toplink {margin-top:1em;}

.titelklein {font-weight:bold;}

table.insetheader caption span {position: relative; top: 1em; left: -0.5em; margin-left: 0.5em;}
table.insetheader {margin-left: 0.5em;}
table.normal caption {border-bottom:solid 1px #CBCBCB;}
table.insetheader .first td, .web table.insetheader .first th {padding-top: 2em;}
table.data caption {color:#CBCBCB; font-size: 17px; font-weight: bold; text-align: left;}

table.data {border-collapse:collapse; margin-bottom: 1.5em;}

table.data tbody td, table.data tbody th {border-bottom: dashed 1px black;}
table.data tr.last td, table.data tr.last th, table.data td.noborder, table.data th.noborder, table.data th.subheadline {border-bottom: none;}
table.data td.noborder, table.data th.noborder {font-size: 70%;}

table.data thead, table.insetheader .first th, table.data th.subheadline, table.data .thead {background-color: white; color: #000000;}
table.data th {font-weight: normal; vertical-align: top;}
table.data td, table.data th, table.data .thead th {font-size: 12px; padding-right: 15px; text-align: right;}
table.data td.last, table.data th.last {padding-right: 1px;}
table.data tbody th, table.data th.desc {text-align:left; padding-right: 30px;}

table.data col.even {background-color: #F0F0F0;}
table.data col.odd {background-color:#CBCBCB;}
table.data col.last {background-image: none;}
table.data col.desc {background-color: #efefef;}

table.list tr.even {background-color:#CBCBCB;}
table.list tr.odd {background-color: #F0F0F0;}
table.list {border-collapse: collapse;}
table.list td {border: 7px solid #FFFFFF; padding: 0 0.8em; }

ol.loweralpha {list-style-type:lower-alpha;}
ol.upperalpha {list-style-type:upper-alpha;}
ol.lowerroman {list-style-type:lower-roman;}
ol.upperroman {list-style-type:upper-roman;}
div.zms_graphic.left {
    text-align: left;
}
div.zms_graphic.right {
    text-align: right;
}
div.zms_graphic.floatleft {
    float: left;
}
div.zms_graphic.floatright {
    float: right;
}
div.zms_graphic.center {
    text-align: center;
}
div.graphic.alignleft {
    float: left;
    text-align: right;
}
div.graphic.alignright {
    float: right;
    text-align: right;
}

