/* General settings */
html, body {
  margin: 0;
  padding: 0;
}

body {
  background: #F3F8FC url(../img/body_bg.gif) repeat-y center top;
  font: 10pt verdana,arial,helvetica,sans-serif;
  line-height: 12pt;
}

a,
a:visited, 
a:link {
  color: #000;
  text-decoration: underline;
}

a:hover, 
a:active {
  color: #000;
  text-decoration: none;
}

ul, li {
  margin: 0;
  padding: 0;
  list-style-type: none;
}

p {
  margin: 0;
}

form {
  padding: 0;
  margin: 0;
}

input.text {
  border: 1px solid #999;
}

/* Clearfix  */
.clearfix:after { 
  content: "."; 
  display: block; 
  height: 0; 
  clear: both; 
  visibility: hidden; 
}

.clearfix { 
  display: inline-block; 
}
/* Hide from IE Mac \*/
.clearfix { 
  display: block; 
}
/* End hide from IE Mac */


/* Container */
#container {
  width: 880px;
  margin: 0 auto;
  padding-left: 20px;
  position: relative;
}

#header {
  background: url(../img/header_bg.jpg) no-repeat;
  height: 94px;
}

#logo {
  float: right;
  padding: 13px 44px 0 0;
}

#navi {
  float: left;
  background: url(../img/navi_bg.gif) no-repeat;
  width: 880px;
  height: 36px;
}

#navi_main {
  float: left;
  padding: 1px 0 0 20px;
}

#navi_main ul li {
  float: left;
  display: inline;
  padding-right: 20px;
  background: url(../img/navi_main_delemiter.gif) no-repeat right 4px;
}

#navi_right {
  float: right;
  padding: 12px 33px 0 0;
}

#navi_right ul li {
  float: left;
  display: inline;
  padding-left: 20px;
  background: url(../img/navi_arrow.gif) no-repeat 8px 4px;
}

#navi_right ul li a,
#navi_right ul li a:visited, 
#navi_right ul li a:link {
  color: #fff;
}

#main {
  width: 880px;
  clear: both;
  background: url(../img/content_bg.gif) repeat-y;
}

#main_breadcrumb {
  background: #7492B4;
  color: #fff;
  width: 825px;
  height: 16px;
  padding-left: 35px;
  font-size: 11px;
}

#main_breadcrumb a,
#main_breadcrumb a:visited, 
#main_breadcrumb a:link {
  color: #fff;
  text-decoration: none;
}

#main_content {
  min-height: 490px;
  padding: 20px;
}

#main_content div.content {
  width: 820px;
}

#main_content ul li {
  padding: 5px 0 0 12px;
  background: url(../img/li_bg.gif) no-repeat 0 9px;
}

#main_content p {
  padding-bottom: 0.5em;
}

#footer {
  background: url(../img/footer_bg.gif) no-repeat;
  width: 880px;
  height: 30px;
  padding-top: 25px;
  text-align: center;
}

#footer ul li {
  display: inline;
  padding-left: 20px;
  background: url(../img/arrow_right.gif) no-repeat 12px 5px;
}

#footer ul li.top {
  background: url(../img/arrow_top.gif) no-repeat 10px 5px;
}


/* Notdienste Plugin */
#search {
  float: left;
  display: inline;
  width: 390px;
  padding: 20px;
}

#search div.header {

}

#list {
  float: left;
  width: 390px;
  padding: 5px 20px 20px 20px;
}

#search_box {
  width: 355px;
  height: 63px;
  background: url(../img/search_box_bg.gif);
}

#search_box .text {
  height: 20px;
  color: #fff;
  padding: 3px 0 0 10px;
}

#search_box .input {
  float: left;
  padding: 3px 5px 0 10px;
}

#search_box .noscript {
  display: none;
}

#search_box .submit {
  float: left;
}

#right {
  float: left;
  width: 430px;
}

#map_wrapper {
  position: fixed;
}


#date {
  height: 24px;
  padding-top: 2px;
  background: #49A3DF;
}

#date div {
  float: left;
  display: inline;
  padding: 3px 3px 0 0;
}

#date div.text {
  font-size: 14px;
  color: #fff;
  margin-left: 90px;
}

#date div.input {
  width: 111px;
}

#date div.input input {
  float: right;
  width: 80px;
  height: 13px;
  margin: 0 3px;
  font-size: 12px;
}

#date div.button {
  padding-top: 4px;
}

#map_switch {
  width: 412px;
  margin: 5px 5px 0 5px;
  height: 19px;
  background: url(../img/map_header.gif);
  text-align: right;
  padding-right: 8px;
}

#map_switch a,
#map_switch a:visited,
#map_switch a:link {
  font-size: 11px;
  color: #fff;
  padding: 1px 15px 0 0;
  text-decoration: none;
}

#map_switch #map_on {
  background: url(../img/button_open_small.gif) no-repeat right 5px;
}

#map_switch #map_off {
  background: url(../img/button_close_small.gif) no-repeat right 5px;
}

#map {
  width: 417px;
  height: 440px;
  margin: 0 5px;
  border-left: 1px solid #8d8d8d;
  border-right: 1px solid #8d8d8d;
  border-bottom: 1px solid #8d8d8d;
}

#asearch {
  width: 180px;
  padding: 2px 3px;
  height: 20px;
  font-size: 14px;
}

.ac_results {
  padding: 0px;
  border: 1px solid black;
  background-color: white;
  overflow: hidden;
  z-index: 99999;
}

.ac_results ul {
  width: 100%;
  list-style-position: outside;
  list-style: none;
  padding: 0;
  margin: 0;
}

.ac_results li {
  margin: 0px;
  padding: 2px 5px;
  cursor: default;
  display: block;
  /* 
  if width will be 100% horizontal scrollbar will apear 
  when scroll mode will be used
  */
  /*width: 100%;*/
  font: menu;
  font-size: 12px;
  /* 
  it is very important, if line-height not setted or setted 
  in relative units scroll will be broken in firefox
  */
  line-height: 16px;
  overflow: hidden;
}

.ac_loading {
  background : url(../img/loading.gif) right center no-repeat;
}

.ac_odd {
  background-color: #eee;
}

.ac_over {
  background-color: #0A246A;
  color: white;
}

#list_header {
  width: 390px;
  padding-bottom: 6px;
}

#list_header .text {
  font-size: 14px;
  float: left;
  padding-top: 3px;
  width: 340px;
}

#list_header .icon {
  float: right;
}

#list_header .icon img {
  padding-left: 2px;
}

#list_content .list_item {
  width: 390px;
  float: left;
  background: url(../img/list_item_bg.gif) no-repeat;
}

#list_content .list_item div.list_item_left {
  float: left;
  width: 310px;
  padding: 5px 0 10px 10px;
}

#list_content .list_item div.list_item_right {
  float: left;
  padding-top: 5px;  
}

#list_content .list_item div.list_item_right div.direction {
  position: relative;
  left: 10px; 
}

#list_content .list_item div {
}

#list_content .list_item div.detail {
  font-size: 11px;
  height: 16px;
  padding: 2px 15px 0 0;
  text-align: right;
  font-weight: normal;
}

#list_content .list_item div.detail a,
#list_content .list_item div.detail a:visited, 
#list_content .list_item div.detail a:link {
  color: #fff;
}

#list_content .list_item div.header {
  font-size: 16px;
  font-weight: bold;
}

#list_content .list_item div.header span {
  font-weight: normal;
}

#list_content .list_item div.open {
  padding: 0 10px 10px 10px;
  clear: both;
}

#list_content .list_item div.open span {
  display: block;
  float: left;
}

#list_content .list_item div.open span.label {
  width: 120px;
}

#list_content .list_item div.phone {
  font-weight: normal;
}

#list_content .list_item div.direction a,
#list_content .list_item div.direction a:visited, 
#list_content .list_item div.direction a:link {
  color: #666;
}

#list_content .list_item_footer {
  clear: both;
  width: 390px;
  height: 10px;
  margin-bottom: 10px;
  background: url(../img/list_item_footer_bg.gif) no-repeat;
}

#media {
  padding: 10px 0 0 5px;
  width: 812px;
}

#media_input div.input {
  width: 50%;
  float: left;
  padding-top: 10px;
}

#media_input div.input input {
  margin: 8px 5px 0 3px;
}

#media_input div.checkbox {
  width: 33%;
  float: left;
}

#media_input div.checkbox div.label {
  padding-left: 3px;
}

#media_input div.checkbox div.sub {
  padding-left: 20px;
}

#media_input div.checkbox div {
  clear: both;
}

#media_input div.checkbox span {
  width: 20px;
  float: left;
  display: block;
}

#media_button,
#media_button_date,
#media_button_noscript {
  clear: both;
  padding-top: 20px;
}

#media_button div,
#media_button_date div,
#media_button_noscript div {
  float: left;
  padding-right: 20px;
}

#media_date {
  padding-top: 10px;
}

#media_date div.from,
#media_date div.to,
#media_date_noscript div.from,
#media_date_noscript div.to {
  float: left;
  padding-right: 30px;
}

#media_date_noscript,
#media_button_noscript {
  display: none;
}

#media_input input.text,
#media_date input.text {
  float: left;
}

#media_input div label,
#media_date div label {
  float: left;
  padding: 3px 3px 0 0  ;
}

#media_date input.noscript {
  display: none;
}

#media_data {
  clear: both;
  background: url(../img/table_right_bg.gif) repeat-y right top;
  width: 812px;
}

#media div.icon {
  float: right;
  padding-bottom: 10px;
}

#media div.icon input {
  padding: 0px 3px;
}

table.media {
  border-collapse: separate;
  border-spacing: 0;
  width: 810px;
}

table.media td,
table.media th {
  background: url(../img/table_td_bg.gif) no-repeat;
  vertical-align: top;
  padding: 5px 10px;
}

table.media th {
  text-align: left;
}

table.media th span {
  font-size: 0.9em;
  font-weight: normal;
}

table.media .noscript {
  display: none;
}

.tx-sdnotdienste-pi3 {
  display: none;
}


div.table_footer {
  height: 2px;
  background: url(../img/table_bottom_bg.gif) repeat-x;
  width: 811px;
  overflow: hidden;
}

#modalOverlay {
  cursor:wait;
}

#modalContainer {
  width:440px;
  left:50%;
  top:20%;
  margin-left:-195px; /* half the width, to center */
  padding-bottom: 20px;
  background: url(../img/list_item_detail_footer_bg.png) no-repeat left bottom;
}

#modalContainer a.modalCloseImg {
  background: url(../img/button_close_small.gif) no-repeat;
  width:8px;
  height:8px;
  display:inline;
  z-index:3200;
  position:absolute;
  top: 5px;
  right: 10px;
  cursor:pointer;
}

div.list_item_detail {
  background: url(../img/list_item_detail_bg.png) no-repeat;
}

div.list_item_detail .detail {
  font-size: 11px;
  color: #fff;
  padding: 2px 0 0 8px;
}

div.list_item_detail .header {
  border-bottom: 1px solid #999;
  margin-bottom: 10px;
  padding-bottom: 5px;
}

div.list_item_detail .name {
  font-weight: bold;
  font-size: 16px;
  float: left;
  padding: 10px 0 0 20px;
  width: 290px;
}

div.list_item_detail .icon {
  float: right;
  padding: 10px 15px 0 0;
}

div.list_item_detail table {
  clear: both;
  width: 410px;
}

div.list_item_detail td {
  padding: 0;
  vertical-align: top;
}

div.list_item_detail td.label {
  padding: 0 10px 0 20px;
}

#search_link {
  width: 347px;
  padding: 30px 20px 20px 20px;
  margin-top: 20px;
  background: url(../img/box_bg.gif) no-repeat;
  border-bottom: 1px solid #999;
}

#search_link ul {
  margin-left: 20px;
}

#search_link li.noscript {
  display: none;
}

fieldset.csc-mailform {
  border: 0;
  padding: 0;
  margin: 0 0 20px 0;
}

fieldset.csc-mailform legend {
}

fieldset.csc-mailform label {
  width: 200px;
  margin: 5px 7px 5px 0;
  display: block;
  float: left;
}

fieldset.csc-mailform input, 
fieldset.csc-mailform textarea, 
fieldset.csc-mailform select {
  margin: 3px 10px 3px 0;
  border: 1px solid #999;
  padding: 2px;
  width: 250px;
  float: left;
  font-size: 12px;
}

fieldset.csc-mailform span {
  float: left;
  display: block;
  margin-top: 10px;
}

fieldset.csc-mailform input.button {
  margin: 3px 0 3px 205px;
  width: auto;
  clear: both;
  border: 0;
}

fieldset.csc-mailform div.csc-mailform-field {
  clear: both;
  width: 500px;
}

#selectAllCheckboxesContainer {
	display: none;
	clear: both;
	position: relative;
	top: 20px;
	left: -1px;
	margin-bottom: 6px;
}

#backButtonLink {
	display: none;
}