/* ############################ */
/* ###   GENERAL SETTINGS   ### */
/* ############################ */

* {
  margin            : 0px;
  padding           : 0px;
  font-family       : verdana;
}


html, body {
  height            : 100%;
}

body {
  padding           : 0px;
  font-family       : Verdana, Arial, Helvetica, sans-serif;
  font-size         : 12px;
  color             : #1f313e;
  background        : url(/layout/bgrnd_body_top.gif) top repeat-x #e5e5e5;
}  



/* footer behind the #main area */
#footer {
  position          : relative;
  bottom            : 0px;
  z-index           : 2;
  height            : 150px;
  width             : 100%;
  background        : #d0d0d0;
}


/* ############################ */
/* ###      MAIN-AREAS      ### */
/* ############################ */


#main {
  position          : relative;
  margin-left       : auto;
  margin-right      : auto;
  margin-top        : 20px;
  margin-bottom     : 20px; /* hight of #footer */
  width             : 960px;
  border            : 2px solid #ffffff;
  z-index           : 50;
  min-height        : 100%;
}

* html #main { height:100%; }

#logo {
  width             : 210px;
  height            : 200px;
  /*  background        : url("/layout/head_logos.png") no-repeat #e4e6ec; */
  background        : #C7CFD5;
  float             : left;
  margin-top        : 0px;
}

#header {
  width             : 748px;
  height            : 200px;
  background        : url("/layout/header_blank.jpg") no-repeat;
  float             : right;
  margin-top        : 0px;
  text-align        : right;
  border-left       : 2px solid #ffffff;
  overflow          : hidden;
}

#cdu_header_content_divide {
  height            : 10px;
  clear             : both;
  background        : #788999;
  border-top        : 2px solid #ffffff;
  border-bottom     : 2px solid #ffffff;
}

#content {
  float             : left;
  background        : url("/layout/bgrnd_content.gif") #ffffff;
}

#bottom {
  clear             : both;
  background        : #C7CFD5;
  height            : 25px;
  border-top        : 2px solid #ffffff;
}

#footer_space {
  clear             : both;
  height            : 1px;
}

/* ############################ */
/* ###      HEADER PIC      ### */
/* ############################ */

#header_pic {
  /*position          : absolute;
  z-index           : 9;*/
}

#portfolio ul{

}

ul {
  list-style-type   : none !important;
}

/* ############################ */
/* ###   3 COLUMN DESIGN    ### */
/* ############################ */

#navi_area {
  float             : left;
  width             : 210px;
  border            : 0px solid #ff0000;
  background        : #E4E7EB;
  padding-top       : 0px;
}

#content_area {
  float             : left;
  width             : 480px; /* 540px - 60px */
  border            : 0px solid #00ff00;
  padding           : 30px 30px 30px 30px;
}

#box_area {
  float             : right;
  width             : 210px;
  border            : 0px solid #0000ff;
  background        : #E4E7EB;
  padding-top       : 30px;
}

/* ############################ */
/* ###        HELPER        ### */
/* ############################ */

hr {
  clear             : both;
  height            : 0px;
  visibility        : hidden;
}


/* ############################ */
/* ###       TOP-NAVI       ### */
/* ############################ */

#top_navi_frame {
  position          : relative;
  right             : 0px;
  z-index           : 10;
  float             : right;
  border            : 0px solid #ff0000;
}

#top_navi {
  float             : right;
  color             : #ffffff;
  width             : 245px;
  height            : 21px;
  padding-top       : 4px;
  background        : url("/layout/bgrnd_top_navi.png") repeat-x;
}

#top_navi_right {
  float             : right;
  background        : url("/layout/bgrnd_top_navi.png") repeat-x;
  height            : 25px;
  width             : 8px;
  margin-right      : 0px;
}

#top_navi_left {
  float             : right;
  background        : url("/layout/bgrnd_top_navi.png") repeat-x;
  height            : 25px;
  width             : 8px;
}

#top_navi a:link, #top_navi a:visited {
  color             : #ffffff;
  text-decoration   : none;
}

#top_navi a:hover {
  color             : #ffffff;
  text-decoration   : underline;
}

/* ############################ */
/* ###      LOGO-AREA       ### */
/* ############################ */

#logo_top {
  height            : 25px;
  border-bottom     : 2px solid #ffffff;
  background        : #788999;
}

#logo_img {
  border-bottom     : 2px solid #ffffff;
}

#logo_suche {
  padding-top       : 100px;
  padding-left      : 25px;
  padding-bottom    : 0px;
  height            : 40px;
}

/* ############################ */
/* ###        SUCHE         ### */
/* ############################ */

.suche_input {
  width             : 100px;
  border            : 1px solid #57646F;
  padding : 0px;
  margin  : 0px;
}

.suche_image {
  padding: 0px;
  margin: 0px;
}



/* ############################ */
/* ###      MAIN-NAVI       ### */
/* ############################ */

#mainnavi {
  
  width             : 210px;
  margin-left       : 0px;
  vertical-align    : middle;
}

#mainnavi ul {
  margin            : 0;
  padding           : 0;
  list-style        : none;
  }

#mainnavi li {
  margin            : 0px;
  padding           : 0px;
  vertical-align    : middle;
  }

a.navi:link, a.navi:visited {
  display           : block;
  text-decoration   : none;
  font-weight       : normal;
  color             : #243543;
  padding           : 8px 20px 8px 25px;
  background        : #acb7c1 !important;
  vertical-align    : middle;
}

a.navi:hover {
  display           : block;
  text-decoration   : none;
  font-weight       : normal;
  color             : #ffffff;
  padding           : 8px 20px 8px 25px;
  background        : #FF9900 !important;
  }

a.navi_aktiv {
  display           : block;
  text-decoration   : none;
  font-weight       : normal;
  color             : #ffffff;
  padding           : 5 10 5 25px;
  background        : #FF9900 !important;
  }
 
 a.navi_aktiv:hover {
   color         : #f7ffe6;
   text-decoration:none;
 }

li.subnav {
  margin-bottom     : 1px !important;
}

.navitheme {
  background        : url("/layout/bgrnd_navi_out.gif") repeat-x;
  color             : #FFFFFF;
  margin-bottom     : 1px;
}

* html .navitheme {
  height        : 27px;
}

.navitheme a:link, .navitheme a:visited {
  color             : #FFFFFF !important;
  font-weight       : bold;
  text-decoration   : none;
  display           : block;
  padding           : 8px 20px 8px 25px;
  
}

.navitheme a:hover {
  color             : #FFFFFF !important;
  text-decoration   : none;
  display           : block;
  background        : url("/layout/bgrnd_navi_over.gif") repeat-x;
}

#subnav_active {
  background        : url("/images/bgrnd_navitheme_hover.gif") no-repeat !important;
}


#visi_1, #visi_2, #visi_3, #visi_4, #visi_5, #visi_6 {
  display           : none;
}


/* ############################ */
/* ###      BOX-DESIGN      ### */
/* ############################ */

.box_frame {
  margin-left       : 0px;
  margin-bottom     : 20px;
}

.box_head {
  width             : 170px;
  font-weight       : bold;
  color             : #ffffff;
  padding           : 8px 20px 8px 20px;
  background        : url("/layout/bgrnd_box_header.gif") repeat-x #ff9900;
  vertical-align    : middle;
  border-top        : 2px solid #ffffff;
  border-bottom     : 2px solid #ffffff;
}

.box_body {
  width             : 170px;
  padding           : 8px 20px 8px 20px;
  color             : #005400;
  background        : #d1d3d9;
  border-bottom     : 2px solid #ffffff;
}

.box_shadow {
  width             : 210px;
  height            : 10px;
  background        : url("/layout/box_shadow.png") repeat-x;
}

/* ############################ */
/* ###     BOX-CONTENT      ### */
/* ############################ */

.box_bgrnd {
  color             : #58595B !important;
  background        : #d1d3d9 !important;
  font-size         : 11px;
}



/* ############################ */
/* ###      HEADLINES       ### */
/* ############################ */

h1 {
  font-size         : 20px;
  font-weight       : normal;
  color             : #ff9900;
  margin-bottom     : 20px;
}

h2 {
  font-size         : 16px;
  font-weight       : bold;
  color             : #506271;
  margin-bottom     : 10px;
}

h3 {
  font-size         : 13px;
  font-weight       : bold;
  color             : #506271;
  margin-bottom     : 3px;
}


/* ############################ */
/* ###     BODY INLINER     ### */
/* ############################ */

.inliner {
  background        : #FFFFFF !important;
}


/* ############################ */
/* ###     CONTENT AREA     ### */
/* ############################ */

.content_box {
  margin-bottom     : 50px;
  color             : #1f313e;
  line-height       : 18px;
  clear             : both;
}


.content_box img {
  margin-right      : 10px;
  margin-bottom     : 5px;
}

.datum, .funktion {
  color             : #ff9900;
}

.right_align {
  float             : right;
}

a:link, a:visited {
  color             : #3B4B5B;
}

a:hover {
  color             : #DD8800;
}



/* ############################ */
/* ###     BOX-BUTTON      ### */
/* ############################ */
a.boxbutton {
background          : url('/layout/box_bt_right.gif') no-repeat top right;
color               : #ffffff;
font-size           : 0.8em;
font-weight         : bold;
display             : block;
float               : left;
height              : 12px;
margin-right        : 10px;
padding-right       : 12px;
text-decoration     : none;
}

a.boxbutton span {
background          : url('/layout/box_bt_left.gif') no-repeat;
display             : block;
line-height         : 10px;
padding             : 1px 5px 1px 5px;
}

a.boxbutton:hover {
background          : url('/layout/box_bt_right_over.gif') no-repeat top right;
color               : #2a3b49;
}

a.boxbutton:hover span {
color               : #2a3b49;
} 




/* ############################ */
/* ###     TEXT-BUTTON      ### */
/* ############################ */
a.textbutton {
background          : url('/layout/txt_bt_right.gif') no-repeat top right;
color               : #ffffff;
font-size           : 0.8em;
font-weight         : bold;
display             : block;
float               : left;
height              : 18px;
margin-right        : 10px;
padding-right       : 18px;
text-decoration     : none;
}

a.textbutton span {
background          : url('/layout/txt_bt_left.gif') no-repeat;
display             : block;
line-height         : 14px;
padding             : 2px 10px 2px 10px;
}

a.textbutton:hover {
background          : url('/layout/txt_bt_right_over.gif') no-repeat top right;
color               : #2a3b49;
}

a.textbutton:hover span {
color               : #2a3b49;
} 




/* ################################## */
/* ###       TWO COLUMNS          ### */
/* ################################## */

.left_column {
  float           : left;
}

.right_column {
  float           : right;
}

.tabline span{
  float           : left;
  display         : block;
}

/* --- Data-Box in Address-Blocks --- */
.data_box {
  float           : left;
}

.data_box p {
  clear           : both;
}


/* ################################ */
/* ###          FORMS           ### */
/* ################################ */

.contactform form {
  width           : 260px;
  text-align      : left;
  border          : 1px solid #b2b6b9;
  background      : #dfe2e5;
  padding-left    : 10px;
  padding-bottom  : 10px;
}

.contactform fieldset {
  margin          : 0;
  border          : 0;
  padding         : 0;
}

.contactform legend {
  display         : none;
}

.contactform h3 {
  clear           : both;
  padding         : 15px 0px 10px 0px;
  font-size       : 14px;
}

.contactform label {
  display         : block;
  width           : 260px;
  font-size       : 12px;
  line-height     : 14px;
  padding         : 0px 0px 12px 0px;
}

.contactform input  {
  display         : block;
  margin-top      : 3px;
  border          : 1px solid #b2b6b9;  
}


.contactform form textarea {
  display         : block;
  margin-top      : 3px;
  border          : 1px solid #b2b6b9;
}


.contactform label.feld_vorname,
.contactform label.feld_firma,
.contactform label.feld_anschrift,
.contactform label.feld_plz,
.contactform label.feld_telefon,
.contactform label.feld_email,
.contactform label.feld_internet,
.contactform label.feld_thema,
.contactform label.feld_text
{
  clear           : left;
}


.contactform label.feld_firma,
.contactform label.feld_anschrift,
.contactform label.feld_email,
.contactform label.feld_internet,
.contactform label.feld_thema,
.contactform label.feld_text
{
  float           : left;
  margin          : 0px 10px 0px 0px;
  width           : 250px;
}

.contactform label.feld_vorname,
.contactform label.feld_nachname,
.contactform label.feld_telefon,
.contactform label.feld_telefax {
  float           : left;
  margin          : 0px 10px 0px 0px;
  width           : 120px;
}

.contactform label.feld_plz {
  float           : left;
  margin          : 0px 10px 0px 0px;
  width           : 50px;
}

.contactform label.feld_ort {
  float           : left;
  margin          : 0px 10px 0px 0px;
  width           : 190px;
}


.contactform label.feld_vorname input,
.contactform label.feld_nachname input,
.contactform label.feld_telefon input,
.contactform label.feld_telefax input {
  float           : left;
  width           : 120px;
  padding         : 0px;
}



.contactform label.feld_firma input,
.contactform label.feld_anschrift input,
.contactform label.field-email input,
.contactform label.feld_ort input,
.contactform label.feld_email input,
.contactform label.feld_internet input,
.contactform label.feld_thema input,
.contactform label.feld_text textarea{
  float           : left;
  width           : 250px;
  padding         : 0px;
}

.contactform label.feld_plz input {
  float           : left;
  width           : 50px;
  padding         : 0px;
}

.contactform label.feld_ort input {
  float           : left;
  width           : 190px;
  padding         : 0px;
}

.noshow {
  visibility         : hidden;
}


/* ############################ */
/* ###        WIDTHS        ### */
/* ############################ */

.w20  {width  : 20px;}
.w30  {width  : 30px;}
.w40  {width  : 40px;}
.w50  {width  : 50px;}
.w60  {width  : 60px;}
.w70  {width  : 70px;}
.w80  {width  : 80px;}
.w90  {width  : 90px;}
.w100 {width  : 100px;}
.w110 {width  : 110px;}
.w120 {width  : 120px;}
.w130 {width  : 130px;}
.w140 {width  : 140px;}
.w150 {width  : 150px;}
.w160 {width  : 160px;}
.w170 {width  : 170px;}
.w180 {width  : 180px;}
.w190 {width  : 190px;}
.w200 {width  : 200px;}
.w210 {width  : 210px;}
.w220 {width  : 220px;}
.w250 {width  : 250px;}
.w280 {width  : 280px;}
.w300 {width  : 300px;}
.w320 {width  : 320px;}
.w350 {width  : 350px;}
.w450 {width  : 450px;}

/* ############################ */
/* ###      DISTANCES       ### */
/* ############################ */

.mtop2    {margin-top:      2px;}
.mtop5    {margin-top:      5px;}
.mtop10   {margin-top:     10px;}
.mtop15   {margin-top:     15px;}
.mtop20   {margin-top:     20px;}
.mtop25   {margin-top:     25px;}

.mbot2    {margin-bottom:   2px;}
.mbot5    {margin-bottom:   5px;}
.mbot10   {margin-bottom:  10px;}
.mbot15   {margin-bottom:  15px;}
.mbot20   {margin-bottom:  20px;}
.mbot25   {margin-bottom:  25px;}
.mbot30   {margin-bottom:  30px;}
.mbot35   {margin-bottom:  35px;}
.mbot40   {margin-bottom:  40px;}
.mbot45   {margin-bottom:  45px;}
.mbot50   {margin-bottom:  50px;}

.mleft2   {margin-left:     2px;}
.mleft5   {margin-left:     5px;}
.mleft10  {margin-left:    10px;}
.mleft15  {margin-left:    15px;}
.mleft20  {margin-left:    20px;}
.mleft25  {margin-left:    25px;}

.mright2  {margin-right:    2px;}
.mright5  {margin-right:    5px;}
.mright10 {margin-right:   10px;}
.mright15 {margin-right:   15px;}
.mright20 {margin-right:   20px;}
.mright25 {margin-right:   25px;}

.ptop2    {padding-top:     2px;}
.ptop5    {padding-top:     5px;}
.ptop10   {padding-top:    10px;}
.ptop15   {padding-top:    15px;}
.ptop20   {padding-top:    20px;}
.ptop25   {padding-top:    25px;}

.pbot2    {padding-bottom:  2px;}
.pbot5    {padding-bottom:  5px;}
.pbot10   {padding-bottom: 10px;}
.pbot15   {padding-bottom: 15px;}
.pbot20   {padding-bottom: 20px;}
.pbot25   {padding-bottom: 25px;}

.pleft2   {padding-left:    2px;}
.pleft5   {padding-left:    5px;}
.pleft10  {padding-left:   10px;}
.pleft15  {padding-left:   15px;}
.pleft20  {padding-left:   20px;}
.pleft25  {padding-left:   25px;}

.pright2  {padding-right:   2px;}
.pright5  {padding-right:   5px;}
.pright10 {padding-right:  10px;}
.pright15 {padding-right:  15px;}
.pright20 {padding-right:  20px;}
.pright25 {padding-right:  25px;}

.pall2    {padding:         2px;}
.pall5    {padding:         5px;}
.pall10   {padding:        10px;}
.pall15   {padding:        15px;}
.pall20   {padding:        20px;}
.pall25   {padding:        25px;}