/* ####################################
   ###       GENERAL SETTINGS       ###
   #################################### */


* {
  margin            : 0px;
  padding           : 0px;
  font-family       : verdana, arial, helvetica;
}


html {
  height            : 100%;
}

body {
  height            : 100%;
  background        : url(/layout/bgrnd_body.png) repeat-x #eae9d6 fixed;
}


#site_bgrnd {
  z-index           : -1; 
  height            : 330px; 
  width             : 100%; 
  background        : url(/layout/bgrnd_floral.png) no-repeat center; 
  position          : absolute;
}

#main {
  position          : relative;
  min-height        : 100%;

}

* html #main {
  height            : 100%;
}


#InnerMainTop {
  height            : 20px;
  width             : 968px;
  position          : relative;
  left              : 50%;
  margin-left       : -484px;
  background        : url(/layout/bgrnd_content_top.png) no-repeat bottom;
}

#InnerMain {
  padding-bottom    : 20px;
  min-height        : 100%;
  width             : 968px; /* 960px + 30px shadow */
  position          : relative;
  left              : 50%;
  margin-left       : -484px;
  background        : url(/layout/bgrnd_content.png) repeat-y;

}


/* ############################ */
/* ###       PATHWAY        ### */
/* ############################ */

#pathway {
  height            : 30px;
  width             : 938px;
  margin-left       : 14px;
  border-top        : 1px solid #ffffff;
  border-left       : 1px solid #ffffff;
  border-right      : 1px solid #ffffff;
}

/* Background in separate file */




#pathway_shadow_16 {
  height            : 16px;   
  width             : 938px;
  margin-left       : 14px;
  background        : url(/layout/shadow_16.png) repeat-x;
  border-left       : 1px solid #ffffff;
  border-right      : 1px solid #ffffff;
}

#path {
  margin-left       : 290px;
  margin-top        : 7px;
  font-size         : 12px;
}

/* ############################ */
/* ###        FOOTER        ### */
/* ############################ */

#footer {
  position          : relative;
  margin-top        : -30px;
  height            : 30px;
  background        : url(/layout/bgrnd_footer.png) no-repeat;
  width             : 968px;
  position          : relative;
  left              : 50%;
  margin-left       : -484px;
} 

#InnerFooter {
  text-align        : right;
  margin-right      : 10px;
}

#InnerFooter a:link, #InnerFooter a:visited {
  color             : #ffffff;
  text-decoration   : none;
  font-size         : 12px;
}

#InnerFooter a:hover {
  text-decoration   : underline;
}



/* ############################ */
/* ###        HEADER        ### */
/* ############################ */


#header {
  width             : 940px;
  height            : 180px;
  margin-left       : 14px;
  background        : url(/layout/) no-repeat 10px 20px;
  overflow          : hidden;
}

.shadow_7 {
  height            : 7px;
  background        : url(/layout/shadow_7.png) repeat-x;
}


#header_logo {
  width             : 230px;
  height            : 200px;
  margin-left       : 10px;
  float             : left;
  background        : url(/layout/logo.png) no-repeat;
}

#header_pic {
  float             : right;
  width             : 690px;
  height            : 200px;
  margin            : 1px 1px 0px 1px;
  overflow          : hidden;
  background        : #aaaaaa;
}


#portfolio ul{

}

ul {
  list-style-type   : none !important;
}

#logo_link {
  width             : 230px;
  height            : 200px;
  display           : block;
}


/* ############################ */
/* ###   2 COLUMN DESIGN    ### */
/* ############################ */

.left_area {
  float             : left;
  width             : 250px;
  border            : 0px solid #ff0000;
  padding-top       : 0px;
  margin            : 0px;
  font-size         : 12px;
  margin            : 0px 0px 0px 14px;
}

.right_area {
  float             : right;
  width             : 690px; 
  border            : 0px solid #00ff00;
  padding           : 0px;
  margin            : 0px;
  font-size         : 12px;
  line-height       : 20px;
  margin            : 0px 14px 0px 0px;
}

.inliner_start {
  font-size         : 12px;
  line-height       : 20px;
  background        : #ffffff;
}


.content_area {
  margin            : 20px 40px 20px 40px;
  min-height        : 600px;
  color             : #4b5b4b;
  line-height       : 20px;
}


/* ############################ */
/* ###        HELPER        ### */
/* ############################ */

hr {
  clear             : both;
  height            : 0px;
  visibility        : hidden;
}

.right_align {
  text-align        : right;
}


/* ############################ */
/* ###      MAIN-NAVI       ### */
/* ############################ */

#mainnavi {
  width             : 245px;
  margin-top        : 20px;
  margin-left       : 5px;
  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             : #ffffff;
  padding           : 8px 20px 8px 25px;
  vertical-align    : middle;
}

a.navi:hover {
  display           : block;
  text-decoration   : none;
  font-weight       : normal;
  color             : #ffffff;
  padding           : 8px 20px 8px 25px;
  }

a.sub_blue:link, a.sub_blue:visited   {background : #86d1f0;}
a.sub_blue:hover {background : #5fc5ea;}

a.sub_green:link, a.sub_green:visited {background : #abc000;}
a.sub_green:hover {background : #85ad00;}


a.navi_aktiv {
  display           : block;
  text-decoration   : none;
  font-weight       : normal;
  color             : #ffffff;
  padding           : 5 10 5 25px;
  background        : #5ab256 !important;
  }
 
 a.navi_aktiv:hover {
   color         : #f7ffe6;
   text-decoration:none;
 }

li.subnav {
  margin-bottom     : 1px !important;
}


/* navitheme */

.navitheme {
  color             : #FFFFFF;
  margin-bottom     : 1px;
}

.green          {background : url("/layout/bgrnd_navi_green_out.png") repeat-x;}
.green a:hover  {background : url("/layout/bgrnd_navi_green_over.png") repeat-x;}

.blue           {background : url("/layout/bgrnd_navi_blue_out.png") repeat-x;}
.blue a:hover   {background : url("/layout/bgrnd_navi_blue_over.png") repeat-x;}

.orange         {background : url("/layout/bgrnd_navi_orange_out.png") repeat-x;}
.orange a:hover {background : url("/layout/bgrnd_navi_orange_over.png") repeat-x;}


* html .navitheme {
  height        : 27px;
}

.navitheme a:link, .navitheme a:visited {
  color             : #FFFFFF !important;
  text-decoration   : none;
  display           : block;
  padding           : 11px 0px 11px 25px;
  font-size         : 12px;
  text-transform    : uppercase;
  font-weight       : normal;
}

.navitheme a:hover {
  color             : #FFFFFF !important;
  text-decoration   : none;
  display           : block;
}




#visi_1, #visi_2, #visi_3, #visi_4, #visi_5, #visi_6 {
  display           : none;
} 




/* ############################ */
/* ###      HEADLINES       ### */
/* ############################ */

/* Colors in separate file */

h1 {
  font-size         : 24px;
  font-weight       : normal;
  margin-bottom     : 15px;
}

h2 {
  font-size         : 14px;
  font-weight       : bold;
  margin-bottom     : 10px;
}

h3 {
  font-size         : 13px;
  font-weight       : bold;
  margin-bottom     : 5px;
}




/* ############################ */
/* ###       CONTENT        ### */
/* ############################ */

.content_box {
  margin-bottom     : 40px;
}

.left_column img, .content_box img {
  margin            : 5px 15px 5px 0px;
  border            : 1px solid #000000;
}

.img_right {
  float             : right;
}

.img_right img {
  margin-right      : 0px;
  margin-left       : 15px;
}


/* ############################ */
/* ###        IFRAME        ### */
/* ############################ */

.inliner {
  background        : #FBE5D5;
  font-size         : 11px;
}

/* ################################## */
/* ###           LINKS            ### */
/* ################################## */

.content_area a:link, .content_area a:visited {
  color             : #326933;
  text-decoration   : underline;
}

.content_area a:hover {
  color             : #000000;
  text-decoration   : underline;
}

.linkimg_down {
  background-image  : url(/layout/linkimg_down.png);
  background-repeat : no-repeat;
  padding           : 0px 0px 20px 20px;
}

.linkimg_up {
  background-image  : url(/layout/linkimg_up.png);
  background-repeat : no-repeat;
  padding           : 0px 0px 20px 20px;
}



/* ################################## */
/* ###       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;
}





/* ################################ */
/* ###         TABELES          ### */
/* ################################ */

.preise table {
  padding         : 0px;
  border-collapse : collapse;
}

.preise th {
  text-align      : left;
  vertical-align  : top;
  border-bottom   : 1px solid #cccccc;
  padding         : 2px 2px 2px 10px;
  background      : #eeeeee;
  border-right    : 2px solid #FFFFFF;
  font-weight     : bold;
}

.preise td {
  padding         : 2px 2px 2px 10px;
}

/* ################################ */
/* ###          FORMS           ### */
/* ################################ */

.contactform form {
  width           : 260px;
  text-align      : left;
  padding-bottom  : 10px;
}

.contactform_left form {
  width           : 260px;
  text-align      : left;
  padding-bottom  : 10px;
}



.contactform fieldset, .contactform_left fieldset {
  margin          : 0;
  border          : 0;
  padding         : 0;

}

.contactform legend {
  display         : none;
}

.contactform h3 {
  clear           : both;
  padding         : 15px 0px 10px 0px;
  font-size       : 12px;

}

.contactform label, .contactform_left label {
  display         : block;
  width           : 230px;
  font-size       : 12px;
  line-height     : 14px;
  padding         : 0px 0px 12px 0px;
}

.contactform input, .contactform_left input, .contactform select  {
  display         : block;
  margin-top      : 3px;
  background      : #f2f2f2;
  border          : 1px solid #dddddd;  
}


.contactform form textarea, .contactform_left form textarea{
  display         : block;
  margin-top      : 3px;
  background      : #f2f2f2;
  border          : 1px solid #dddddd; 
  font-size       : 12px;
}


.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,
.contactform_left label.feld_text textarea{
  float           : left;
  width           : 250px;
  padding         : 0px;
}

.contactform label.feld_plz input {
  float           : left;
  width           : 45px;
  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;}
.w230 {width  : 230px;}
.w250 {width  : 250px;}
.w260 {width  : 260px;}
.w280 {width  : 280px;}
.w300 {width  : 300px;}
.w320 {width  : 320px;}
.w350 {width  : 350px;}
.w430 {width  : 430px;}
.w450 {width  : 450px;}
.w520 {width  : 520px;}


.min50 {min-width: 50%;}

/* ############################ */
/* ###      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;}
