/*---------------------------------------------------------- L A Y O U T */

body {
    /* ganzes Fenster ausfüllen (Funktioniert nicht für Höhe) */
    position: static; 
    margin: 0px 0px 0px 0px;
    padding: 0;
    width: 100%;

    /* font config */
    font-size: 10pt;
    line-height: 140%;
    font-family: Arial, Helvetica, sans-serif;
    
    /* Background config */
/*     background: url("../img/bg_feld.jpg"); */
/*     background-position: top left; */
/*     background-repeat: repeat; */
/*     background-attachment:fixed; */
       background-color: #bdd4ec;  /*#4457FF; #283296; /*#D6EEFF;*/
}

div#center_container {
 position: static;          /* korrektes Positionieren des root_container mittels margin-left (vgl. root_boxes.html) */

 margin-left: auto;         /* center_container zentrieren */
 margin-right: auto; 
 
 max-width: 840px;          /* = max-width(root_container) - 2 * |margin-left(root-container)| => root_container zentrieren */
 padding-right: 80px;       /* = | margin-left(root_container) | 
                               => stellt sicher, dass Inhalt beim Anpassen der Fenstergrösse sichtbar bleibt */
}
div#bubbles {
 position: fixed;           /* Bild im Browser fixieren */
 margin-top: -10px;         /* Bild so positionieren, dass richtiger Ausschnitt sichtbar */
 margin-left:-250px;
}
div#bubbles-right {
 position: fixed;           /* Bild im Browser fixieren */
 margin-top: -10px;         /* Bild so positionieren, dass richtiger Ausschnitt sichtbar */
 width: 100%;
 max-width: 1080px;
 text-align: right;
 display: none;
}

div#root_container {
 position: absolute;          /* ermöglicht Verschiebung gegenüber normaler position in center_container, 
                                 entfernt div aus Elementfluss -> div erzeugt keine Scrollbars */
 margin-left: -80px;          /* erzeugt verschiebung aus dem Fenster hinaus, falls center_container, am linken Rand*/
 padding: 0;
 max-width: 1000px;           /* 900px */
 min-height: 100%;            /* erzwingt volle Höhe, funktioniert nur mit position: absolute (vgl. height_boxes.html) */
 overflow: hidden;            /* dass das Menu muss immer sichtbar sein; nie horizontalen Scrollbars anzeigen */
 background-color: #ffffff;
 color: #000000;
 
 border: 0px;                 /* Border config */ 
 border-left: 1px solid #888888;
 border-right: 1px solid #888888;
}

div#content_container {
  position: relative;          /* ist in Elementfluss, füllt root_container da einiziges Element
                                  ist Referenzrahmen für enthaltene Elemente (position: absolute)
                                */
  margin: 30px 178px 0 180px;  /* oben: Ausrichten an Logo, rechts: Platz für Menu, links: Platz für Logo */
  padding: 0 0 3.5em 0;        /* Platz für Fusszeile */
  overflow: hidden;            /* Inhalt wird durch Menu abgeschnitten */
}

/** verstecktes div, sorgt für volle Breite des content_container **/
div#spacer p{ 
/*  position: absolute; */ 
/* absolute Positionierung des ersten Elements in content_container führt 
   bei verschiedenen Browsern zu sehr unterschieldichen Positionen für den 
   content_container */
 margin: 0px;
 height: 0px;               /* div beansprucht keine Höhe */
 max-width: 1000px;         /* entfernt Beschränkung */
 visibility: hidden;        /* Element ist nicht sichtbar, braucht aber Platz in Elementfluss */
}

div#img_box {
  position: absolute;       /* damit overflow bei <img  />-Bildern funktioniert (Firefox; vgl. scaling-img-box_*)
                               bei Implementation mit Hintergrundbild ist auch relative/static ok */
  overflow: hidden;

  width: 100%;
  height: 169px;            /* Höhe des Bildes   = höhe("Regionalverband") - höhe(info_top) */
/*   height: 150px; */
  margin-top:0px;           /* an top des content_container ausrichten*/
  
  background-position: center;
  background-repeat: no-repeat;
  color: white;
  text-transform: uppercase;
  font-size: 1.5em;
}

div#info-top {
 position: relative;        /* im Textfluss, Rahmen für enthaltene Elemente */
 margin-top: 169px;         /* Höhe des Bildes   = höhe("Regionalverband") - höhe(info_top) */
/* width: 100%;*/               /* gesamte Breite des content_containers */
 height: 1.2em;             /* ev. besser in px angeben */
 padding-top: 0.5em;        /* Abstand zu Bild */
 
 font-size: 0.8em;
 line-height: 120%;
 border-bottom: 1px solid;
}

div#inhalt {
 position: static;                  /* normales Element im Textfluss */
 clear: both;                       /* Abgrenzung gegen Floats aus dem Header */
 
 margin: auto;                       /* keine Ränder */
 padding: 0px;
 
 padding-top: 1.5em;                /* Abstand zwischen Inhalt und Header */
}

div#footer {
 position: absolute; bottom: 0px;   /* absolut positioniert an root_container */
 left: 180px;  right: 178px;        /* Randabstand analog zu content_container */
 
 max-height: 2.5em;                 /* Sicherung falls etwas wieder komisch dargestellt wird */
 overflow: hidden;
 
 border-top: 1px dotted;
 padding-top: 0.5em;                /* Abstand zu Border */
 padding-bottom: 0.5em;             /* Abstand zu Fensterrand */
 
 text-align: center;
 font-size: 0.8em;
 line-height: 120%;
}


div#logo {
 position: fixed;               /* absolut positionieren in root_container */
 top: 0px;
 margin-left: 20px;
}

div#text {
 position: fixed;             /* absolut positionieren in root_container */
 margin-left: 82px; 
 bottom: 5px;
}

div#img_box > img {
/*  display: inline; */
/*display: block;*/
/*  overflow: hidden; */
/*  margin-left: auto; */
/*  margin-right: auto; */
}


div#hauptnavi{
  position: absolute;       /* absolut positionieren in root_container */
  top: 0px; right: 0px;
  margin: 0px;
  width: 152px;             /* Breite des Hintergrundbildes, erzeugt Platz für die ul.hautpnavi*/
  height: 100%;
}

ul.hauptnavi {
 margin: 0px;
 position: fixed;            /* plaziert gemäss Elementfluss (wie absolut ohne top,left,...),
                               fixiert im Browserfenster */
 padding: 30px 0px 0px 0px;  /* oben: ausrichten an Logo */
 width: 152px;               /* erzwingt volle Breite des Hintergrundbildes */
 height: 100%;               /* erzwingt Höhe: height(root_container) + 30px => Hintergrund braucht unten 30px Rand */

 background-position: right bottom;
 background-repeat: no-repeat;
}


/* Links Pfad*/
div#info-top  a {
 color: #888888;
 text-decoration: none;
}
div#info-top a:hover {
 color: #000000;
}
div#info-top a.aktiv {
 font-weight: bold;
}

div#pfad-top {
 position: absolute;
 left:0em;
 right:11em;
}
div#pfad-top > div {
 display: inline-block;
 white-space: nowrap;
 direction: rtl;
 overflow: hidden;
 max-width: 100%;
}
div#pfad-top > div > div {
 display: inline-block; 
 direction: ltr;
}
div#pfad-top a {
 text-transform: uppercase;
}
div#pfad-top a + a {
 text-transform: none;
}

div#links-top {
 position: absolute;
 right: 0px;
 text-align: right;
 width: 10em;
}

div#pfad-bottom {
 display: none;
/* margin-top: 4em;
 border-top: 1px solid;
 font-size: 0.8em;
 line-height: 120%;*/
}
/*div#pfad-bottom a {
 color: #888888;
 text-decoration: none;
}
div#pfad-bottom a:hover {
 color: #000000;
}
div#pfad-bottom a.aktiv {
 font-weight: bold;
}*/


div#footer p{
/*  font-size: 0.9em; */
/*  max-width:1000px; */
/*  line-height: 1.2em; */
/*  padding: 0.5em; */
/*  position: relative; */
/* margin-top: 4em;*/
/*  margin-bottom: 0px; */
/*  text-align: center; */
/*  background-color: #f6f6f6; */
/*  background-color: #efefef; */
}
div#footer a {
 color: #666666;
 text-decoration: none;
}
div#footer a:hover {
 color: #000000;
}
div#footer a.aktiv {
 font-weight: bold;
}
/*.modified {
}*/

/*ol {
 margin: 0;
 padding: 0;
 list-style: none;
}

ul {
 margin: 0;
 padding: 0;
 list-style: none;
}

li {
 margin: 0;
 padding-left: 0;
 list-style: none;
}

ol li {
 display: inline;
}*/

/* Links Hauptnavigation*/
ul.hauptnavi li {
 list-style: none;
 white-space: nowrap;
/*  border-top: 1px solid #ffffff; */
 border-bottom: 1px solid #ffffff;
/*  border-collapse: collapse; */
}

ul.hauptnavi li.nav-suche {
 padding: 2px;
 border-top: 1px solid #ffffff;
 background-color: #cccccc;
}
ul.hauptnavi li.nav-suche img {
 margin: 0px .3em -0.3em 0.3em;
}
ul.hauptnavi li.nav-suche form{
 display: inline;
}
ul.hauptnavi li.nav-suche input{
 max-width: 110px;
 overflow: hidden;
}
ul.hauptnavi li.nav-suche input.submit{
 margin: 0px .3em -0.3em 0.3em;
}

ul.hauptnavi li.nav-26{
 background-color: #E0352D;
}
ul.hauptnavi li.nav-323{
 background-color: #FF9900;
}
ul.hauptnavi li.nav-32 {
 background-color: #97B143;
}
ul.hauptnavi li.nav-10 {
 background-color: #2A78CA;
}
ul.hauptnavi li.nav-29 {
 background-color: #003366;
}

ul.hauptnavi > li > a {
 font-size: 1em;
 font-weight: bold;
 letter-spacing: 0.1em;
 text-transform: uppercase;
 color: #FFFFFF;
 display: block;
 height: 1.4em;
/*  border-bottom: 0.08em solid #FFFFFF; */
/*  background-color: #6c6c6c; */
 padding: 0.1em 0em 0.1em 0.6em;
 text-decoration: none;
}
ul.hauptnavi > li > a:hover {
/*  background-color: #AF2935; */
 color: #eeeeee;
}

/*ul.hauptnavi li a.aktiv {
 background-color: #AF2935;
 color:white;
}*/

/* Links Bereiche*/
ul.bereich {
 margin: 0px;
 padding: 0px;
}
ul.bereich > li {
 border: 0px;
 font-size: 1em;
 font-weight: normal;
 letter-spacing: 0em;
 padding: 0.05em 0em 0.05em 1.8em;
}

ul.bereich > li > a {
 color: #454545;
 text-decoration: none;
}
ul.bereich > li > a:hover {
 color: #888888;
/*  text-decoration: underline; */
/* background-color: #ffffff; */
}
ul.bereich > li.aktiv {
 background-color: #ffffff;
}




/*--------------------------------------------------------------- Linien */

br.clear {
 clear:both;
 height: 0px;
 font-size: 0px;
 line-height: 0px;
}

.clear, .clearer { 
 clear: both;
}
/*--------------------------------------------------------------- Bilder */

img {
 border: none;
}
 







/* Thema */
h1, .header1 {
 font-size: 1.6em;
 letter-spacing: 0.1em;
 font-weight: bold;
 text-transform: uppercase;
 margin: 0em 0em 0.5em 0em;
 padding: 0px;
}

/* Titel*/
h2, .header2 {
 font-size: 1.2em;
 letter-spacing: 0.05em;
 font-weight: bold;
 text-transform: uppercase;
 margin: 1.5em 0em 0.5em 0em;
 padding: 0px;
 border-bottom: 2px solid;
}

/* Untertitel*/
h3, .header3 {
 font-size: 1em;
 font-weight: bold;
 margin: 1em 0em 0em 0em;
 padding: 0px;
}

h4, .header4 {
 font-size: 1em;
 font-weight: bold;
 margin: 0em 0em 0em 0em;
 padding: 0px;
}
h1, h2, h3, h4, .header1, .header2, .header3, .header4 > a {
 text-decoration: none;
}

h5 {
 font-size: 1em;
 font-weight: normal;
 font-style: italic;
 margin: 0.5em 0px 0px 0px;
 padding: 0px;
}

/* Absätze*/
p {
 text-align: left;
 margin: 0px 0px 0.5em 0px;
 padding: 0px;
 max-width: 30em
}


/* Listen */
ul.csc-bulletlist-0 { /*normal*/
 margin: 0px 0px 0em 0px; 
 max-width: 30em;
}
p + ul.csc-bulletlist-0 {
 margin-top: -0.5em; 
}

ul.csc-bulletlist-1 {
 margin: 0.5em 0px 0.5em 0px; 
 max-width: 30em;
}

ul.csc-bulletlist-2 {
 margin: 0em 0px 0em 0px; 
 max-width: 100%;
}
p + ul.csc-bulletlist-2 {
 margin-top: -0.5em; 
}

ul.csc-bulletlist-3 {
 margin: 0.5em 0px 0.5em 0px; 
 max-width: 100%;
}



table {
 border: 0px;
}

td {
 font-size: 1em;
 padding: 0;
 padding-left: 1em;
 vertical-align: top;
}



div.two-col, div.sym-col {
/*  width: 100%; */
 padding: 0px;
 margin: 0px;
}
div.two-col > div{
 position: relative;
 float: left;
 width: 60%;
 min-width: 20em;
 margin: 0px;
 padding: 0px 5% 0px 0px;
 overflow: hidden;
}
div.two-col > div + div{
 position: relative; 
 float: left;
/*  width: 35%; */
 width: 221px;
 min-width: 200px;

 margin: 0px;
 padding: 0px;
 overflow: hidden;
}

div.sym-col > div{
 position: relative;
 float: left;
 width: 47.5%;
 min-width: 10em; 
 margin: 0px 4% 1em 0px !important;
 padding: 0px;
}

div.sym-col > div + div {
 position: relative;
 float: left;
 width: 47.5%;
 margin: 0px 0px 1em 0px !important;
 padding: 0px;
 min-width: 10em;
}

.fullwidth { 
 width: 100%; 
}

div.pin_right-top {
 text-align: right;
}
.two-col div.pin_right-top img {  
 position: relative;
 top: -18px;
 right: -10px;
 margin-bottom: -18px;
}
.two-col-small div.pin_right-top img {  
 position: relative;
 top: -18px;
 left: -10px;
 margin-bottom: -18px;
}

div.banner {
 overflow: hidden;
}
div.banner img {
 display: block;
 padding: 0px;
 margin: 0.3em auto 0.3em auto;
}


.h2-righttext {
 position:relative;
 float: right;
 top: -2.1em;
 margin-bottom: -2.1em;
}


.news-latest-container{
 margin: 0px 0px 1.5em 0px;
}

.news-latest-item {
 margin: 0.3em 0em 0.0em 0em;
 padding: 0.0em 0em 0.5em 0em;
 border-bottom: 1px dashed;
}
.news-latest-item > div {
/*  display: inline-block; */
}
.news-latest-item p {
 display: inline;
}
.news-latest-morelink {
/*  display: inline-block; */
 float: right;
}
.news-latest-date {
 color: #888888;
}

div.box {
/*  width: 100%; */
 margin: 0px;
 padding: 0px;
/*  background: #cccccc; */
}
div.box > div {
 margin: 0px;
 padding: 0px;
/*  background: #cccccc; */
}
div.box h2 {
 margin: 0px;
 padding: 0.1em 1% 0em 2%;
/*  width: 97%; */
 color: #ffffff;
 font-size: 1.1em;
/*  border-left: 1px solid; */
/*  border-right: 1px solid; */
}
div.box h2 a { 
 color: #ffffff;
}

.box-footer {
 height: auto !important;
 text-align:right; 
}
.box-footer > * {
 margin: 0px;
 padding: 0px 0.3em 0px 0px;
 display: block;
 text-align:right; 
}
div.box.topmargin {
 margin-top: 1em;
}


table.agenda-list-table {
 width:100%;
 border: 0px;
 border-spacing: 0px;
 overflow: hidden;
}
table.agenda-list-table tr {
 display: block;
 text-align:left; 
 vertical-align:top;
 margin: 2px 0px 0px 0px;
 padding: 0.2em 0px;
/*  min-height: 2em; */
/*  max-height: 3.5em; */
 height: 3em;
 overflow: hidden;
 
 background-color:#F4F4F5;
 border-top: 0px solid #cccccc;
 border-right: 1px solid #cccccc;
 border-bottom: 1px solid #cccccc;
 border-left: 1px solid #cccccc;
}
table.agenda-list-table td {
 vertical-align: middle;
}
table.agenda-list-table td.time  {
 width:5em;
 padding:0.1em 0.5em 0em 0.5em;
 
 font-size: 0.8em;
}
.agenda-text-light {
 color: #656565;
}
table.agenda-list-table td.text {
 width: auto;
 padding:0em 0.5em 0em 0.3em;
}

div.box .border {
/*  width: 96%; */
 padding: 0.2em 2% 0.2em 2%;
 margin: 2px  0px 0px 0px;
 border-top: 0px solid #cccccc;
 border-right: 1px solid #cccccc;
 border-bottom: 1px solid #cccccc;
 border-left: 1px solid #cccccc;
}

div.dokumente div.dok{
 position: relative; 
/*  width: 100%; */
}
div.dokumente .icon {
 position: absolute; left: 0px; top: 0px;
 width: 2em;
 padding: 0.2em;
}
div.dokumente .desc {
 position: static;
 margin-left: 2em;
 margin-right: 4.5em;
 padding: 0.2em;
/*  white-space: nowrap; overflow: hidden; */
}
div.dokumente .size {
 position: absolute; right: 0px; top: 0px;
 width: 4em;
 text-align: right;
 white-space: nowrap;
 padding: 0.2em;
}
div.dokumente a {
 text-decoration: none;
}
.bold {
 font-weight: bold;
}
.centered {
 text-align: center;
}
.nowrap {
 white-space: nowrap;
 }
.align-right {
 text-align: right;
}
.align-right p {
 text-align: right;
}
.wichtig {
 font-style: italic;
}

.colored {
 border-width: 1px !important;
 border-style: solid !important;
 /*margin: -1px !important;*/
/*  margin-left: -1px !important; */
/*  margin-right: -1px !important; */
}

.box.padded > * {
 margin: 0.2em;
}
.box.padded > h2 {
 margin: 0.0em !important;
}
.box.padded > a {
 margin: 0.0em !important;
}


div.kurs-fakten {
 position: relative;
 padding: 0px;

 margin: 10px;
/*  width: 100%; */
 overflow: hidden;
 border-top: 2px solid #ffffff;
}
div.kurs-fakten .kurs_gen-img {
 position: absolute;
/*  width: 10%; */
 width: 20px;
 min-width: 20px;
 
 padding-top:  0.2em;
 padding-left: 0.4em;
}
div.kurs-fakten table {
 position: static;
 display: block;
 margin-right: auto;
  
/*  width: 90%; */
/*  margin-left: 10%; */
 margin-left: 20px;
 min-width: 180px;
}
div.kurs-fakten td {
 margin:0px;
 padding: 0px;
 padding-left: 1em;
 vertical-align: top;
}
div.kurs-fakten tr.kurs-fakten_header {
 font-weight: bold;
}
div.kurs-fakten td.kurs-fakten_label  {
 padding-right: 0.5em;
}


.choice-box {
 width: 48%;
 float: left;
 padding: 0px;
 height: 11em; 
 overflow: hidden;
 margin: 0px 3% 1.5em 0px !important;
}
div.choice-box + div.choice-box, a + a > div.choice-box {
 margin-right: 0px !important;
}


.choice-box.large {
 height: 17em;
}

.choice-box.xlarge {
 height: 22em;
}

.choice-box.small {
 height: 6em;
}

.choice-box > h2.small {
 font-size: 1em !important;
 white-space: nowrap;
 overflow: hidden;
}
.choice-box > div.img {
 float: left;
 border: 1px solid #888888;
 background-color: #DDDDDD;
 width: 91px;
 height: 91px;
 overflow: hidden;
 padding: 5px;
 margin: 10px 10px 0 10px;
}
.choice-box > div.img > img {
  border: 1px solid #888888;
  width: 90px;
  height: 90px;
}
.choice-box > div.text {
 float: left;
 font-size: 0.9em;
 max-width: 55%;
 margin: 6px 0px 0 0;
}

.caption, .csc-textpic-caption {
 font-size: 0.9em;
 font-style: italic;
}

#main-bg {
 position: fixed;
 width: 98%;
/*  width: 1400px; */
 min-height: 100%;
 overflow:hidden;
 z-index: -1;
 top: 0px;
 left: 1%;
}

/*div.listing ul {
 border-top: 1px solid;
 border-bottom: 1px solid;
 margin: 0px;
 padding: 1px 0 1px 0;
}
div.listing ul li{
 list-style: none;
 margin: 1px 0 1px 0;
 padding: 0.2em 0.5em 0.2em 0.5em;
}
div.listing ul li a {
 color: #000000;
}*/

.listing ul {
 border-top: 1px solid;
 border-bottom: 1px solid;
 list-style: none;
 padding: 0;
 margin-top: 0;
 margin-bottom: 1em;
}
.listing h2 + ul {
 border-top: 0px solid;
 margin-top: -0.5em;
}
.box.listing h2 + ul {
 border-top: 0px solid;
 margin-top: 0.1em;
}
.listing ul li {
 border-top: 1px solid;
 border-bottom: 0px solid;
 padding: 0.4em 0 0.4em 0em;
 font-size: 0.9em;
}
.listing ul li a {
/*  color: #666666; */
 display: inline-block;
 padding-left: 1.5em;
 text-decoration: none;
}
.listing ul li a {
 font-weight: bold;
}
.listing a + ul {
  border-bottom: 0px;
  margin: 0.6em 0 -0.6em 0;
}
.listing a + ul > li {
 padding-left: 1.5em;
}
.listing a + ul > li > a {
 font-weight: normal;
}



table.preisliste .td-0 {
 width: 25em;
}
table.preisliste .td-1 {
 text-align: right;
 width: 5em;
}

table.fakten th {
 text-align: right;
 vertical-align: top;
}


.tx-irfaq-dynheader {
 padding-top: 0.5em;
 max-width: 30em;
}
/*.tx-irfaq-cleaner {
 height: 5px;
}*/


#typo3-previewInfo {
 position: fixed !important;
 top: auto !important;
 bottom: 20px !important;
}
/* forms with powermail  */

.tx-powermail-pi1 fieldset { padding: 1em; font:80%/1 sans-serif; border: 1px normal #999;
}
.tx-powermail-pi1 label { font-family:verdana,arial; width: 12em; font-size: 12px;
padding: 0px 10px 0px 10px; float: left; text-align: right;
}
.tx-powermail-pi1 input { margin-bottom: 10px;
}
.tx-powermail-pi1 textarea { margin-bottom: 10px;
}
.tx-powermail-pi1 legend { font-family:verdana,arial; font-size: 12px; padding: 0px 10px 0px 10px;
}


