body {
  font: 0.8em/1.4 Verdana, Arial, Helvetica, sans-serif;
  background-color: #aed81c;
  color: #00315c;
  min-height: 101%;
}

html { 
  height: 100%;
}

/* === Page =================================================== */
#page {
  margin: auto;
  width: 976px;
  position: relative;
}

#header {
  position: relative;
  height: 230px;
  background: url('/img/bg_header_gr.png') left top #00315c;
  color: white;
  padding: 0 18px;
}

#logo {
  position: absolute;
  padding: 18px 70px 114px 18px;
}

#teaser {
  position: absolute;
  left: 489px;
  top: 2px;
}

#header h1 {
  background: url('/img/logo_hei2_gr.png') no-repeat 13px 138px;
  position: absolute;
  right: 54px;
  top: 4px;
  height: 210px;
  width: 199px;
  background-color: #aed81c;
}

#header h1 a {
  display: block;
  height: 198px;
}

#header h1 img {
  padding: 117px 32px 17px 15px;
}

#main {
  clear: both;
  padding: 0 21px;
  background: url('/img/bg_main_gr.png') left top repeat-y white;
}

#colwrapper {
  background: url('/img/bg_content.png') left top repeat-x white;
  min-height: 450px;
}

#content {
  padding: 60px 57px 4em 57px;
}

/* === Nav =================================================== */
#skiplinks p a {
  display: block;
  height: 0;
  left: -999em;
  position: absolute;
  overflow: hidden;
  top: -999em;
  width: 0;
}

#skiplinks p a:focus, 
#skiplinks p a:active {
  display: inline;
  height: auto;
  left: 50%;
  padding: 0.5em 0;
  overflow: visible;
  top: 0;
  width: auto;
  color: #00315c;
  font-weight: bold;
  font-size: 0.85em;
}

#servicenav {
  text-align: left;
  padding: 0.4em 18px;
}

#footer {
  text-align: left;
  background: url('/img/bg_footer_gr.png') left top no-repeat;
  padding: 1.2em 18px 2em 18px;
}

#servicenav a,
#footer a  {
  padding: 0 1em;
  border-right: 1px solid #00315c;
  color: #00315c;
  text-decoration: none;
  font-size: 0.85em;
}

a#lang,
a#lang-home {
  border-right: none;
  float: right;
}

a#lang-home {
  padding-right: 0.5em;
  position: relative;
  z-index: 10;
}


#servicenav a:hover,
#servicenav a:focus,
#servicenav a:active,
#footer a:hover,
#footer a:focus,
#footer a:active  {
  text-decoration: underline;
}

#servicenav a.last-item,
#footer a.last-item {
  border-right: none;
  padding-right: 0;
}

#search {
  float: right;
  background: url('/img/bg_search_gr.png') 0 3px no-repeat;
  width: 170px;
  margin: 5px 8px;
}

#searchterm {
  background: none;
  margin: 0 0 0 5px;
  padding: 0;
  width: 103px;
  border: none;
  font-size: 0.8em;
  line-height: 0.8;
}

#searchterm:focus {
/*  outline: 1px dotted black;*/
}

#search button {
  height: 18px;
  width: 62px;
  background: none;
  border: none;
  margin: 2px 0 0 0;
  padding: 0;
}

#search button img {
  margin: 3px 0 0 0;
}

/* --- main navigation ----------------------------------------------------- */

#mainnav {
  padding-left: 17px;
  background: url('/img/bg_mainnav.png') repeat-x left bottom #BEDF48;
}

#mainnav ul {
  background: url('/img/bg_mainnav_splitter.png') left top repeat-y;
}

#mainnav ul ul {
  background: none;
  left: -999em;
  position: absolute;
  top: -999em;
}

#mainnav ul li {
  float: left;
  background: url('/img/bg_mainnav_splitter.png') right top repeat-y;
  min-width: 115px; /* em ??? */
  position: relative;
  z-index: 99;
  text-align: center;
}

#mainnav ul li span.login {
  background: transparent url('/img/ui/keyblau24.png') 0 -1px no-repeat;
  overflow: visible;
  padding-left: 24px;
  padding-right: 5px;
}

#mainnav ul li a {
  color: #00315c;
  display: block;
  margin-right: 3px;
  padding: 0.5em 10px;
  text-decoration: none;
  height: 1.5em;
}

#mainnav ul li a:hover,
#mainnav ul li a:focus,
#mainnav ul li a:active,
#mainnav ul li.current ul li a:hover,
#mainnav ul li.current ul li a:focus,
#mainnav ul li.current ul li a:active,
#mainnav ul li.current a,
#mainnav ul li.current span {
  background: url('/img/bg_mainnav_current.png') center bottom no-repeat;
}

#mainnav ul li:hover ul, 
#mainnav ul li.opened ul {
  left: auto;
  top: auto;
  background-color: #a6ca24;
}

#mainnav ul li ul li {
  background-color: #a6ca24;
  background-image: none;
  border-top: 1px solid #b4da2d;
  border-bottom: 1px solid #a1c423;
  float: none;
  position: static;
}

#mainnav ul li.current ul li a  {
  background: none;
}

#mainnav ul li ul li a {
  display: block;
  margin-right: 0;
  padding: 0.4em 10px;
  white-space: nowrap;
  min-width: 105px;
}

/* --- sub navigation ----------------------------------------------------- */
#subnav {
  float: right;
  clear: right;
  width: 206px;
  background: url('/img/bg_subnav.png') left top repeat-x #00315c;
  color: white;
  margin: 0 0 2.5em 20px;
  padding: 60px 13px 1em 13px;
  line-height: 1.3;
}

#subnav h2 {
  margin: 0 0 1em 13px;
}

#subnav li {
  padding-left: 13px;
  margin-bottom: 1em;
  background: url('/img/li_green.png') 0 0.4em no-repeat;
}

#subnav li.current {
  background-image: url('/img/li_white.png');
}

#subnav ul ul {
  margin-top: 1em;
}

#subnav ul ul li {
  background: url('/img/li_green_small.png') 0 0.4em no-repeat;
}

#subnav ul ul li.current {
  background-image: url('/img/li_white_small.png');
}

#subnav .more {
  padding-left: 13px;
  margin: 1.5em 0 0.5em 0;
}

#subnav a {
  color: #aed81c;
  text-decoration: none;
}

#subnav ul li.clickableHover a,
#subnav a:hover,
#subnav a:focus,
#subnav a:active {
  text-decoration: underline;
}

#subnav ul li.clickableHover {
  cursor: pointer;
}

/* --- sitemap ------------------------------------------------------------- */

#sitemap li a {
  font-size: 1.2em;
  font-weight: bold;
  text-decoration: none;
}

#sitemap li li a {
  font-size: 1.1em;
  font-weight: normal;
}

#sitemap li li li a {
  font-size: 0.9em;
}

#sitemap li li li li a {
  font-size: 0.85em;
}

#sitemap li {
  border-top: 1px dotted #000;
  margin-top: 1em;
}

#sitemap li li {
  border-top: 0;
  margin-top: 0;
}

#sitemap ul {
  margin-bottom: 0.5em !important;
}


/* === Pagination ========================================================== */

#content div.pagination {
  background-color: #f0f0f0;
  margin: 1em 0;
  padding: 0.2em 0;
}

#content div.pagination p {
  display: block;
  font-size: 0.9em;
  margin: 0 0.3em;
}

#content div.pagination p a,
#content div.pagination p span {
  background-color: #fff;
  display: -moz-inline-box;
  display: inline-block;
  margin-right: 0.1em;
  padding: 0.1em 0.4em;
  text-decoration: none;
  vertical-align: middle;
}

#content div.pagination p a {
  border: 1px solid #ddd;
  color: #000;
}

#content div.pagination p span {
  border: 1px solid #ddd;
  color: #999;
}

#content div.pagination p a:hover,
#content div.pagination p a:focus,
#content div.pagination p a:active {
  background-color: #506ea4;
  border: 1px solid #506ea4;
  color: white;
}


/* === Content ============================================================= */

#content h1,
#content h2,
#content h3,
#content ul,
#content ol,
#content dl,
#content table {
 /* clear: left;*/
}

#content h1 {
  margin: 50px 0 1.5em 0;
  font-size: 1.8em;
  color: #aed81c;
  font-weight: normal;
  line-height:1.1;
}

#content p,
#content h2,
#content h3,
#content ul,
#content ol,
#content dl,
#content address,
#content table {
  margin-bottom: 1em;
}

#content h2 {
  margin-top: 2em;
}

#content h3 {
  margin-top: 2em;
  font-weight: normal;
  font-style: italic;
}

#content strong {
  font-weight: bold;
}

#content em {
  font-style: italic;
}

#content a,
#margincol a {
  color: #00315c;
}

#content a:hover,
#content a:focus,
#content a:active,
#margincol a:hover,
#margincol a:focus,
#margincol a:active {
  background-color: #dbef9a;
}

#content div:target {
  background-color: #dbef9a;
}

#content div.news {
  
}

#content ul li,
#content ul ul li,
#content ol ul li,
#content ul li,
#content ul ul li,
#content ol ul li {
  padding-left: 20px;
  margin-left: 0;
  background: url('/img/li_green.png') 0 0.5em no-repeat;
  list-style-type: none;
}

#content ol li,
#content ol ol li,
#content ul ol li {
  list-style-type: decimal;
  margin-left: 30px;
  background-image: none;
  padding-left: 0;
}

#content li ol,
#content li ul {
  margin-bottom: 0;
}

#content ol li h3,
#content ul li h3 {
  margin-bottom: 0em;
  margin-top: 0;
}

#content dl dt {
  font-weight: bold;
}

#content dl.color dt {
  color: #BC101D;
  font-weight: normal;
}

#content dl.timetable dt {
  color: #BC101D;
  font-weight: normal;
  float: left;
  width: 10em;
  clear: left;
}

#content dd {
  margin-bottom: 0.5em;
  padding-left: 30px;
}

#content dl.timetable dd {
  margin-left: 10.5em;
}

#content ul.downloads li  {
  padding-left: 0;
  background: none;
}

#content ul.downloads li a {
  display: block;
}

#content p.teaser {
  font-weight: bold;
}

#margincol p,
#margincol li,
#margincol h2,
#margincol h3,
#content div.imageblock p {
  margin: 0 10px;
  font-size: 0.8em;
}

#margincol li {
  padding-bottom: 0.4em;
  padding-top: 0.4em;
}

#margincol h2 {
  margin-top: 1em;
}

#margincol .caption {
  margin-bottom: 2em;
}

#content .leadicon {
  text-align: right;
  margin: -40px 0;
}

#contentmenu  {
  width: 500px;
  height: 100px;
  float: left;
}

#leftmenu{
  width: 155px;
  float: left;
}

#middlemenu{
  width: 125px;
  float: left;
}
#rightmenu{
  width: 125px;
  float: left;
}

/* --- Image Gallery ------------------------------------------------------- */

#content .imageSmall {
  float: left;
  padding: 5px;
  width: 120px;
  height: 120px;
}

#content .imageSmall a {
  border: 1px solid #E4DCE8;
  display: block;
  padding: 10px;
}

#content .imageSmall img {
  display: block;
  margin: 0 auto;
}

/* === Specials for HOME =================================================== */

#content.home {
  overflow: hidden;
}

#content h1.home {
  margin: 0 0 1em 0;
}

div.home {
  clear: left;
}

div.imageblock {
  float: left;
  width: 200px;
  margin: 1em 30px 2em 0;
} 

#content div.home h2 {
  margin: 0 0 0.5em 0;
  padding-top: 0.5em;
  font-size: 1.4em;
  color: #aed81c;
  font-weight: normal;
}

#content div.home li,
#content p.more,
#content ul.more li {
  background: url('/img/li_next_blue.png') 0 0.4em no-repeat;
  padding-left: 13px;
}

#content ul.more li {
  margin-bottom: 0.5em;
}

#colwrapper a.pdf  { 
  background-repeat: no-repeat;
  background-position: 2px 0.15em;
  padding: 2px 1px 2px 22px;
  background-image: url('/img/ui/iconFile_pdf.png');
}
#colwrapper a.word { 
  background-repeat: no-repeat;
  background-position: 2px 0.15em;
  padding: 2px 1px 2px 22px;
  background-image: url('/img/ui/iconFile_doc.png');
}
#colwrapper a.xls { 
  background-repeat: no-repeat;
  background-position: 2px 0.15em;
  padding: 2px 1px 2px 22px;
  background-image: url('/img/ui/iconFile_xls.png');
}

#colwrapper a.zip { 
  background-repeat: no-repeat;
  background-position: 2px 0.15em;
  padding: 2px 1px 2px 22px;
  background-image: url('/img/ui/iconFile_zip.png');
}

#content img.bildLinks {
  float: left;
  margin: 0 0.5em 0.5em 0;
}

#content img.bildRechts {
  float: right;
  margin: 0 0 0.5em 0.5em;
}

/* === Special Functions =================================================== */

.hidden {
  display: block;
  height: 0;
  left: -999em;
  position: absolute;
  overflow: hidden;
  top: -999em;
  width: 0;
}

/* clear those floating columns */
 
.clearfix:after {
  content: ".";
  display: block;
  height: 0;
  clear: both;
  visibility: hidden;
}

.clearfix {
  display:inline-block;
}

/* for safari */
/* Hide from IE Mac \*/
.clearfix { display: block }
/* End hide from IE Mac */

a.disabled,
a:hover.disabled,
a:focus.disabled,
a:active.disabled {
  color: gray !important;
  text-decoration: none !important;
}

