/* schriften */
html {
  overflow-y: scroll;
}
body, div {
   font-size: 70%;
  line-height: 140%;
}
@media screen {
  div {
    font-size: 100%;
  }
}
#mainmenue {
  font-size: 100%;
}
.infobox {
  font-size: 100%;
}
.infobox h3, .infoboxTarif h3 {
  font-size: 100%;
}
.infobox h2, .infoboxTarif h2 {
  font-size: 100%;
}
.teaser h2 {
  font-size: 100%;
}
.quicklinks h2 {
  font-size: 100%;
}
.presse h2 {
  font-size: 100%;
}
.fahrplan h2 {
  font-size: 100%;
}
#teaser h2 {
  font-size: 100%;
}
.global a:link, .global a:visited {
  font-size: 100%;
}
.footer a:link, .footer a:visited {
  font-size: 100%;
}
#footer a:link, #footer a:visited {
  font-size: 100%;
}
#submenu a:link, #submenu a:visited {
  font-size: 100%;
}
@media screen {
  .linkDownload h3 {
    font-size: 100%;
    font-weight: normal;
  }
}
.linkDownload a:link, .linkDownload a:visited {
  font-size: 100%;
  font-weight: bold;
}
/* farben */
body {
  color: #434343;
}
h1 {
  color: #2B4A8E;
}
h2 {
  color: #505050;
}
h3 {
  color: #505050;
}
.linkDownload h3 {
  color: #434343;
}
.spitzmarke {
  color: #505050;
}
.date {
  color: #214083;
}
.intro {
  color: #434343;
}
.infobox h3, .infoboxTarif h3 {
  color: #505050;
}
@media screen {
  .global {
    color: #D5E5BB;
  }
  .global a:link, .global a:visited {
    color: #213F81;
  }
  .global a:hover, .global a:active {
    color: #213F81;
    text-decoration: underline;
  }
  .more a:link, .more a:visited, .more a:hover, .more a:active {
    padding: 0 30px 0 18px;
    font-weight: bold;
    background: url(../img/pfeil_green.gif) no-repeat 0 0.2em;
  }
  #footer {
    color: #505050;
  }
  #footer a:link, #footer a:visited {
    padding: 0 7px 0 7px;
    color: #505050;
  }
  #footer a:hover, #footer a:active {
    color: #505050;
    text-decoration: underline;
  }
  .footer a:link, .footer a:visited {
    color: #162E73;
    font-weight: bold;
  }
  .footer a:hover, .footer a:active {
    color: #162E73;
    text-decoration: underline;
  }
}

/* Formatierung */
a:link, a:visited {
  text-decoration: none;
}
a:active, a:hover {
  text-decoration:underline;
}
@media screen {
  .global {
    position: absolute;
    top: 0;
    left: 190px;
    z-index: 99;
  }
  .global a:link, .global a:visited {
    display: block;
    padding: 12px 10px 0 10px;
    text-align: center;
    float: left;
    border-right: 1px solid #C0CDDC;
  }
}
@media screen {
  /* Hauptmenue live */
  #mainmenue {
    float: left;
    width: 764px;
    font-weight: bold;
    background: url(../img/bg_mainmenue.gif) no-repeat top right #143682;
    padding-left: 190px;
  }
  #mainmenue ul {
    margin: 0;
    padding: 0;
  }
  #mainmenue li {
    position: relative;
    margin: 0;
    padding: 0;
    float: left;
    list-style: none;
  }
  #mainmenue li.first {
    border-left: 1px solid #C4D0DE;
  }
  #mainmenue .menue a:link, #mainmenue .menue a:visited {
    position: relative;
    width: auto;
    padding: 5px 10px 4px 10px;
    margin: 0;
    display: block;
    color: #FFFFFF;
  }
  #mainmenue .menue a:active, #mainmenue .menue a:hover {
    color: #B6DFFF;
    text-decoration: none;
  }
  #mainmenue .menue .active a:visited, #mainmenue .menue .active a:link,
  #mainmenue .menue .path a:visited, #mainmenue .menue .path a:link {
    color: #B6E3EF;
  }

  #mainmenue .menue .pulldownmenu {
    display: none;
    position: absolute !important;
    top: 25px;
    z-index: 1000;
    width: 190px;
    margin: 0;
    padding: 0;
    border-right: 1px solid #6B89AD;
    border-left: 1px solid #6B89AD;
    border-bottom: 1px solid #6B89AD;
    font-weight: normal;
  }
  #mainmenue .menue .pulldownmenu li {
    clear: both;
    display: block;
    width: 190px;
    background-color: #DCEFF5;
  }
  #mainmenue .menue .pulldownmenu li.active {
    background-color: #AED243;
  }
  #mainmenue .menue .pulldownmenu a:link, #mainmenue .menue .pulldownmenu a:visited {
    width: 180px;
    border-top: 1px solid white;
    text-align: left;
    padding: 0.4em 0 0.4em 10px !important;
    color: #08206A;
  }
  #mainmenue .menue .pulldownmenu a:active, #mainmenue .menue .pulldownmenu a:hover {
    background-image: url(/img/bg_submenue.gif) !important;
    background-repeat: repeat-y;
    background-position: top right;
    background-color: #FFFFFF;
  }
  #mainmenue .menue .pulldownmenu .first a:link, #mainmenue .menue .pulldownmenu .first a:visited {
    border-top: 0;
  }
  #mainmenue .menue .pulldownmenu li.first {
    border-left: 0;
  }
  #mainmenue .menue .pulldownmenu .active a:link, #mainmenue .menue .pulldownmenu .active a:visited {
    font-weight: normal;
  }
  #mainmenue .menue .pulldownmenu .active strong {
    font-weight: normal;
  }
}
@media screen {
  #bgbild {
    width: 100%;
    height: 166px;
    background: url(../img/bg_header.gif) repeat-x; 
    margin: 0;
  }
  .home #bgbild {
    height: 222px;
    background: url(../img/bg_header_home.gif) repeat-x; 
  }
  #bgbild .shadow {
    width: 978px;
    height: 166px;
    margin-left: auto;
    margin-right: auto;
    background: url(../img/bg_header_shadow.gif) no-repeat top;
  }
  .home #bgbild .shadow {
    height: 222px;
    background: url(../img/bg_header_shadow_home.gif) no-repeat top;
  }
  #body {
    position: relative;
    width: 954px;
    height: 100%;
    margin-left: auto;
    margin-right: auto;
    padding: 0;
    text-align: left;
  }
  #head {
    position: relative;
    height: 62px;
    padding: 0;
    margin: 0;
    background-color: #FFFFFF;
  }
  #main {
    float: left;
    width: 954px;
    margin: 0;
    padding: 0;
    border-top: 1px solid #C0CDDC;
    background: url(../img/bg_main.gif) repeat-y;
  }
  .home #main {
    background: url(../img/bg_main_home.gif) repeat-y;
  }
  #mainTop {
    float: left;
    width: 954px;
    margin: 0;
    padding: 0;
    border-top: 1px solid #C0CDDC;
    background: url(/img/bg_maintop.gif) repeat-y;
  }
  #leftcolumn {
    position: relative;
    width: 190px;
    float: left;
  }
  #content {
    width: 554px;
    margin: 0;
    padding: 0 10px 10px 10px;
    float: left;
  }
  .rubrikpage #content {
    width: 554px;
    padding: 0 10px 10px 10px;
  }
  .home #content {
    width: 573px;
    padding: 0;
  }
  .home #rightbox {
    width: 190px;
    padding: 0;
    float: left;
  }
  .home #leftbox {
    position: relative;
    width: 190px;
    float: left;
  }
  #illuContent {
    margin: 0;
    float: left;
    width: 954px;
    height: 79px;
  }
  .home #illuContent {
    height: 135px;
  }
  #rightcolumn {
    width: 190px;
    margin: 0;
    padding: 0;
    float: right;
  }
  .homepage #rightcolumn {
    width: 220px;
    margin: -188px 0 0 0;
    padding: 0;
    float: right;
  }
  #footer {
    position: relative;
    width: 944px;
    float: left;
    text-align: right;
    padding: 0.3em 10px 0.4em 0;
    margin: 0;
    height: 15px;
    border-top: 1px solid #C0CDDC;
  }
}
@media screen {
  .homebanner {
    position: relative;
    margin: 0 0 2px 0;
  }
}
@media screen {
  .infobox {
    padding: 0;
    margin: -1px 0 0 0;
    width: 190px;
    background-color: #E6F2F8;
    border-top: 1px solid #C0CDDC;
    border-bottom: 1px solid #C0CDDC;
    overflow: hidden;
  }
  .home .infobox {
    background-color: #FFFFFF;
    border-bottom: none;
  }
  .infobox h2 {
    margin: 0;
    padding: 0.4em 10px 0.35em 10px;
    border-bottom: 1px solid #C0CDDC;
    background: url(../img/bg_infobox.gif) repeat-y right top #FFFFFF;
  }
  .infobox h3 {
    position: relative;
    margin: 0;
    padding: 0.6em 10px 0 10px;
  }
  .infobox p {
    margin: 0 10px 0 10px;
  }
  .infobox img {
    margin: 0 0 0.2em 0;
  }
  .infobox div {
    padding: 0 10px 0.5em 10px;
    border-bottom: 1px solid #FFFFFF; 
  }
  .infobox ul.links {
    list-style-type: none;
    padding: 10px 0 8px 10px;
    margin: 0;
  }
  .infobox .links li {
    background-repeat: no-repeat;
    padding-left: 15px;
    margin-bottom: 0.3em;
    font-weight: bold;
  }
  .infobox .links li.internal {
    background-image: url(/img/pfeil_intern.gif);
    background-position: 0 0.2em;
  }
  .infobox .links li.external {
    background-image: url(/img/pfeil_extern.gif);
    background-position: 0 0.3em;
  }
  .infobox .links li.download {
    background-image: url(/img/pfeil_download.gif);
  }
  .home .infobox div {
    border-bottom: none;
  }
}
@media screen {
  .infoboxTarif {
    padding: 10px !important;
    margin: -1px 0 0 0;
    width: 170px;
    background-color: #E6F2F8;
    border-top: 1px solid #C0CDDC;
    overflow: hidden;;
  }
  .home .infoboxTarif {
    border-left: 1px solid #FFFFFF;
  }
  .infoboxTarif div {
    border: none !important;
    padding: 0;
  }
  .infoboxTarif input {
    border: 1px solid #A5ACB2;
  }
  .infoboxTarif input, .infoboxTarif select {
    width: 135px;
    margin: 0 0 .2em 0;
    font-size: 1em;
  }
  .infoboxTarif .radioBtn {
    width: 15px;
    border: none;
    margin: 0;
  }
  .infoboxTarif .submitBtn {
    font-family: arial;
    font-size: 1em !important;
    display:block;
    float: left;
    margin: 10px 0 0 0 !important;
    padding: 0 0 0 12px !important;
    text-align: left;
    border: none;
    width: 60px;
    line-height: 2em !important;
    cursor: pointer;
    color: #143682;
    font-weight: bold;
    background: url(../img/pfeil_extern.gif) no-repeat center left;
  }
  .infoboxTarif .submitBtn:hover, .infoboxTarif .submitBtn:active {
    text-decoration: underline;
  }
  .infoboxTarif .detail {
    font-family: arial;
    font-size: 1em;
    display:block;
    float: left;
    margin: 10px 0 0 0 !important;
    padding: 0 0 0 12px !important;
    text-align: left;
    border: none;
    width: 99px;
    line-height: 2em !important;
    cursor: pointer;
    color: #143682;
    font-weight: bold;
    background: url(../img/pfeil_extern.gif) no-repeat center left;
  }
  .infoboxTarif .detail:hover, .infoboxTarif .detail:active {
    text-decoration: underline;
  }
  .infoboxTarif table {
    border-collapse:collapse;
    border-spacing: 0;
  }
  .infoboxTarif .label {
    vertical-align: top;
  }
}

@media screen {
  .article {
    width: 554px;
  }
  .article .leftColumn {
    width: 100px;
    float: left;
  }
  .article .rightColumn {
    padding-left: 10px !important;
    float: left;
    width: 430px;
  }
  .article .rightColumn p {
    margin: 0 0 1em 0;
  }
  .article a:link, .article a:visited {
    font-weight: bold;
  }
  .article p.action {
    float: left;
  }
  .article p.quantity {
    position: relative;
    font-weight: bold;
    float: right;
    margin: 0 0 1em 0;
  }
  .article p.quantity input {
    border: 1px solid #C0CDDC;
  }
}

@media screen {
  #search {
    position: absolute;
    right: 192px;
    top: 10px;
  }
  #search input {
    width: 155px;
    margin: 0 2px 0 0;
    padding: 2px 0 2px 2px;
    font-size: 100%;
    color: #213F81;
  }
  #search .btn-search {
    position: relative;
    width: 19px;
    height: 18px;
    margin: 0;
    padding: 0;
    border: 0;
    background: url(../img/btn_search.gif) no-repeat center;
    cursor: pointer;
    top: -1px;
  }
}

@media screen {
  .footer {
    display: block;
    clear: both;
    width: 554px;
    position: relative;
    margin: 10px 0 0 0 !important;
    padding: 0 0 0.5em 0;
    float: left;
  }
  .up {
    float: right;
    margin: 0;
    padding: 0 16px 0 0;
    text-align: right;
    background: url(../img/symbol_up.gif) no-repeat center right;
  }
  .print {
    float: left;
    margin: 0;
    padding: 0 15px 0 20px;
    background: url(../img/symbol_print.gif) no-repeat 0 0.2em;
  }
}

@media screen {
  #submenu ul li a:link, #submenu ul li a:visited, #submenu ul li a:active, #submenu ul li a:hover {
    color: #162E73;
    text-decoration: none;
  }
  #submenu {
    margin: 0;
    width: 190px;
    overflow: hidden;
  }
  #submenu ul {
    width: 190px;
    padding: 0;
    margin: 0;
    list-style: none;
    font-weight: normal;
    border-bottom: 1px solid #C0CDDC;
  }
  #submenu li {
    width: 190px;
  }
  #submenu ul ul {
    background-color: #E6F2F8;
    border-bottom: none;
  }
  #submenu li.first a:link, #submenu li.first a:visited {
    width: 180px;
    display: block;
    padding: 0.4em 0 0.35em 10px;
    color: #505050;
    font-weight: bold;
    border-bottom: 1px solid #C0CDDC;
  }
  #submenu li li a:link, #submenu li li a:visited {
    width: 165px;
    display: block;
    padding: 0.4em 0 0.35em 25px !important;
    border-bottom: 1px solid #FFFFFF !important;
    color: #162E73 !important;
    font-weight: normal !important;
    background: url(/img/pfeil_dotted_right.gif) no-repeat 12px 0.7em;
  }
  #submenu li li.active {
    background-image: url(/img/bg_submenue.gif);
    background-repeat: repeat-y;
    background-position: top right;
    background-color: #FFFFFF;
  }
  #submenu li li.path a:link {
    background-image: url(/img/pfeil_dotted_down.gif);
    background-position: 10px 0.9em;
    background-repeat: no-repeat;
  }
  #submenu li li li a:link, #submenu li li li a:visited {
    width: 150px !important;
    display: block;
    padding: 0.4em 3px 0.35em 37px !important;
    border-bottom: 1px solid #FFFFFF !important;
    color: #162E73 !important;
    background: url(/img/pfeil_dotted_right.gif) no-repeat 25px 0.7em !important;
  }
}

@media screen {
  #content  ul.navigation {
    padding: 0;
    margin: 0;
  }
  #content  ul.navigation ul {
    padding: 0;
    margin: 0;
  }
  #content  ul.navigation li {
    padding: 0;
    margin: 0;
    list-style: none;
    font-weight: normal;
  }
  #content ul.navigation li a:link, #content ul.navigation li a:visited {
    width: 554px;
    display: block;
    padding: 0.2em 0 0.2em 0;
    color: #162E73;
    font-weight: bold;
    border-bottom: 1px solid #D2DDE8;
  }
  #content ul.navigation li li a:link, #content ul.navigation li li a:visited {
    width: 539px;
    display: block;
    padding: 0.2em 0 0.2em 15px !important;
    color: #162E73 !important;
    background: url(/img/pfeil_dotted_right.gif) no-repeat 6px 0.6em #ECF5FA !important;
  }
  #content ul.navigation li li li a:link, #content ul.navigation li li li a:visited {
    width: 529px;
    display: block;
    font-weight: normal !important;
    padding: 0.2em 0 0.2em 25px !important;
    color: #162E73 !important;
    background: url(/img/pfeil_dotted_right.gif) no-repeat 15px 0.6em #FFFFFF !important;
  }
  #content ul.navigation li li.node a {
    background-image: url(/img/pfeil_dotted_down.gif) !important;
    background-position: 4px 0.75em !important;
    background-repeat: no-repeat;
  }
}

/* Styles for tables */

#content caption {
  text-align: left;
  margin: 0;
  padding: 1em 0 0.5em 0;
  font-weight: bold;
}
#content table, #content th, #content tr, #content td {
  border-collapse:collapse;
  border-spacing: 0;
}
#content table {
  clear: both;
  width: 100%;
  margin: 0;
  padding: 0;
  background-color: #E7F2F8;
  border: none;
}
#content table th {
  padding: 3px 5px 3px 5px;
  font-weight: bold;
border-left: 1px solid white;
border-right: 1px solid white;
border-bottom: 2px solid white;
  background-color: #E7F2F8;
  color: #434343;
  text-align: left;
}
#content table tbody th {
  background: #E7F2F8;
  color: #434343;
}
#content table tfoot td {
  background: #FFFFFF;
}
#content table td {
  padding: 3px 5px 3px 5px;
  border: 1px solid white !important;
}

/* Styles for Contact Form */
#content .contact {
  background-color: #E7F2F8;
}
#content .contact table {
  border: none;
  margin: 10px 0 !important;
}
#content .contact table td {
  padding: 3px 5px 6px 5px;
  vertical-align: top;
  border: none !important;
}
#content .contact label {
  font-weight: bold;
}
#content .contact .red {
  color: #CC0000;
}
#content .contact input {
  width: 230px;
  border: 1px solid #A5ACB2;
}
#content .contact textarea, #content .contact select {
  width: 230px;
  border: 1px solid #A5ACB2;
}
#content .contact input.button {
  position: relative;
  float: left;
  width: 80px;
  margin: 10px 10px 0 0;
  padding: 0 0 0 20px;
  border: 0;
  text-align: left;
  cursor: pointer;
  color: #143682;
  font-weight: bold;
  background: url(/img/pfeil_intern.gif) no-repeat 5px 0.3em;
}