/* Allgemeine Stildefinitionen */
* {
  font-size: 100.1%;
  font-family: arial, helvetica, sans-serif;
  margin: 0; padding: 0;
}
body {
  font-size: 0.75em;
  text-align: center;
  color: #444444;
  background: #eeeeee;
}
a img {
  border: 0;
}
.clear {
  font-size: 1px; height: 1px;
  overflow: hidden;
  clear: both;
}
label, .toggler {
  cursor: pointer;
}
td, th {
  vertical-align: top;
}
.onlyprint  {
  display: none;
}
img.mime_icon {
  vertical-align:middle;
}
.invisible {
  display: none;
}

/*
  Definition der Inhaltsboxen, vor allem
  - Größe und Position
  - Hintergrundbilder/-farbe
  - Abstände zum Text
  - Abstände zu anderen Boxen
*/
#wrapper {
  text-align: left;
  margin: 0 auto 0 auto;
  width: 857px; w\idth: 835px;
  padding: 0 17px 0 5px;
  background: url(layout/wrapperbg.gif) repeat-y top left;
}
#header {
  width: 835px;
  position: relative;
  padding-top: 35px;
  background: url(layout/unternehmen_1.jpg) no-repeat bottom left;
}
#container {
  width: 835px;
}
#main {
  position: relative; top: 6px;
  width: 604px; float: left;
  margin-right: 6px;
  margin-bottom: 6px;
  border: 2px solid #ddd;
  border-left: 0;
  height: auto!important; height: 460px; he\ight: 390px; min-height: 390px;
  padding-top: 1.9em;
  padding-bottom: 43px;
  background: url(content/container.gif) no-repeat bottom center;
  z-index: 0;
}
#left {
  display: none;
}
#right {
  position: relative; top: 6px;
  width: 223px; float: left;
  color: #777777;
}
#footer {
  position: relative; left: -5px;
  width: 857px; w\idth: 835px;
  padding: 0 17px 18px 5px;
  margin-top: 6px;
  color: #777777;
  background: url(layout/footbg.gif) no-repeat bottom left;
}

/* Logo im Header */
#header #headlogo {
  position: absolute; top: 75px; left: 620px;
} 
#header .mod_navigation {
  height: 172px;
}
#header .mod_navigation ul {
  list-style: none;
  padding-left: 10px;
}
#header .mod_navigation li {
  position: relative;
  float: left;
  background: url(layout/li1bg.gif) no-repeat 0px 3px;
  font-weight: bold;
  margin-right: 2px;
}
#header .mod_navigation li a {
  display: block; 
  padding: 1px 2px 2px 7px;
  text-decoration: none;
  color: #777;
  font-size: 1.1em;
}
#header .mod_navigation li a:hover,
#header .mod_navigation li a.active,
#header .mod_navigation li a.trail {
  color: #00a29a;
}
#header .mod_navigation ul ul {
  display: none;
  position: absolute; top: 15px; left: -4px;
  padding-top: 7px;
  padding-bottom: 3px;
  list-style: none;
  width: 230px;
  padding-left: 4px;
  background: url(layout/ul2bg85.png) repeat top left!important;
  background: url(layout/ul2bg.gif) repeat top left;
}
#header .mod_navigation li.gewerbekunden ul {
  width: 330px;
}
#header .mod_navigation li li {
  float: none;
  background: url(layout/li2bg.gif) no-repeat 0px 3px;
}
#header .mod_navigation li li a {
  padding: 1px 2px 2px 6px;
  color: #666;
  font-size: 1.0em;
}
#header .mod_navigation li:hover ul {
  display: block;
}


/* Standard-Stilangaben */
#main .mod_breadcrumb {
  position: absolute; top: -1px; left: 0px;
  background: #00a29a;
  color: #fff;
  width: 605px; w\idth: 593px;
  padding: 2px 2px 2px 10px;
  height: auto!important; height: 1.25em; min-height: 1.25em;
  z-index: 100;
}
#main .mod_breadcrumb a {
  color: #fff;
  font-style: normal !important;
}
#main .mod_breadcrumb a:hover {
  text-decoration: underline;
}
#main h1 {
  font-size: 1.2em;
  margin-top: 1.5em;
  margin-bottom: 0.8em;
  color: #00a29a;
}
#main h2 {
  font-size: 1.1em;
  margin-bottom: 0.8em;
}
#main h3 {
  float: left;
  font-size: 1em;
  padding-right: 5px;
}
#main p, #main table, #main ul, #main ol {
  margin-bottom: 1em;
}
#main ul, #main ol {
  margin-left: 1.5em;
}
#main ul {
  list-style: none;
  color: #00a29a;
  margin-left: 2px;
}
#main li {
  color: #444;
  background: url(layout/lidot.gif) no-repeat center left;
  padding-left: 12px;
}
#main a {
  font-style: italic;
  color: #00a29a;
  text-decoration: none;
}
#main .ce_headline,
#main .ce_form,
#main .ce_download,
#main .ce_text,
#main .mod_dlh_googlemaps,
#main .layout_full,
#main .mod_newslist,
#main .ce_table {
  padding-left: 10px;
  padding-right: 20px;
}
#main .layout_full .ce_text {
  padding-left: 0;
}
#main .ce_gallery .row_first td {
  padding-bottom: 3px;
}
#main .ce_gallery table {
  margin-bottom: 0;
}
#main .mod_dlh_googlemaps {
  margin-bottom: 12px;
}

/* Nachrichten-Ansichten */
#main .layout_full .image_container {
  width: 212px; margin: 0 6px 10px 10px;
  float: right; 
  position: relative; top: -2px;
  height: 300px;
}
#main .mod_newslist {
  margin-bottom: 10px;
}
#main .mod_newslist .layout_latest {
  clear: right;
  border-bottom: 2px dotted #ddd;
  margin-bottom: 1.6em;
}
#main .mod_newslist .layout_latest .image_container {
  display: none;
  width: 212px; margin: 0 6px 10px 10px;
  float: right; 
  position: relative; top: -2px;
}
#main .mod_newslist .layout_latest h2 {
  color: #00a29a;
}
#main .mod_newslist .layout_latest h2 a {
  font-style: normal;
}
#main .layout_full p.info {
  position: absolute; top: -1px;
  z-index: 105;
  color: #fff;
  padding: 2px 2px 2px 0px;
}
#main .layout_full p.info a {
  color: #fff;
  font-style: normal !important;
}
#main .layout_full p.info a:hover {
  text-decoration: underline;
}

/* Tabelle Wertstoffhof, erste Spalte nicht umbrechen */
#main td.col_first {
  width: 150px;
  color: #00a29a;
}
#main tfoot td,
#main tfoot td.col_first {
  color: #444;
  padding-top: 15px;
  font-weight: bold;
}

/* Seitenwahl */
#main .pagination {
  margin: 0;
  padding: 0;
  position: absolute; right: 20px;
}
#main .pagination p {
  margin: 0;
  padding: 0;
}
#main .pagination ul {
  margin: 0; padding: 0;
  list-style: none;
}
#main .pagination ul li {
  float: left;
  margin: 0 0.4em 0 0;
  padding: 0;
  background: none;
}
#main .pagination ul li a {
  font-style: normal;
}
#main .pagination ul li.previous a,
#main .pagination ul li.next a {
  font-style: italic;
}
#main .pagination ul li .pagination_current {
  color: #666;
  font-weight: bold;
}

/* Kontaktformular 2-spaltig */
#main .ce_form {
  margin-bottom: 10px;
}
#main .ce_form .formbox {
  width: 280px; float: left;
  margin-right: 10px;
  margin-bottom: 6px;
}
#main .ce_form .right {
  margin-right: 0px;
}

/* Formulare */
#main .formbody label {
  clear: left;
  display: block; float: left;
  width: 105px;
  margin: 0px 0px 2px 0px; padding: 1px;
}
#main p.error {
  color: #ff0000;
  font-weight: bold;
}
#main .formbody div.error,
#main .formbody label.error {
  color: #ff0000;
}
#main .formbody input.captcha,
#main .formbody input.text {
  width: 160px;
  margin: 0px 0px 2px 0px;
  padding: 1px;
  border: 1px solid #999;
}
#main .formbody input.captcha {
  width: 60px;
}
#main .formbody textarea {
  width: 200px; height: 98px;
  margin: 0px 0px 2px 0px;
  padding: 1px;
  border: 1px solid #999;
}
#main .formbody label.error {
  font-weight: bold;
  color: #ff0000;
}
#main .formbody .checkbox_container {
  padding-left: 0px;
}
#main .formbody .checkbox_container span {
  clear: left;
  display: block;
  margin-bottom: 1px;
}
#main .formbody .checkbox_container input.checkbox {
}
#main .formbody .checkbox_container label {
  display: inline; float: none;
  width: 300px;
}
#main .formbody .submit_container {
  margin: 5px 0px 0px 105px;
  padding: 1px;
}
#main .formbody br {
  clear: left;
  font-size: 1px; height: 1px;
}


/* rechte Spalte: Neuigkeiten */
/*
Version für eigene Bilder zu jeder Nachricht
#right .layout_latest {
  position: relative;
  border: 2px solid #eee;
  border-right: 0;
  width: 221px; w\idth: 211px;
  padding: 23px 5px 6px 5px;
  margin-bottom: 6px;
  height: auto!important; height: 216px; he\ight: 201px; min-height: 194px;
}*/
#right .layout_latest {
  position: relative;
  border: 2px solid #ddd;
  border-right: 0;
  width: 221px; w\idth: 211px;
  padding: 122px 5px 6px 5px;
  margin-bottom: 6px;
  height: auto!important; height: 221px; he\ight: 95px; min-height: 95px;
}
#right .mod_newslist .first {
  background: url(content/aktuell/aktuelles_3.jpg) no-repeat 5px 23px;
}
#right .mod_newslist .last {
  background: url(content/aktuell/aktuelles_1.jpg) no-repeat 5px 23px;
}
#right .layout_latest .image_container {
  display: none;
}
/* bis hier alternative Version mit fixen Hintergrundbildern */
#right .layout_latest p.info {
  position: absolute; top: -1px; left: -1px;
  background: #00a29a;
  color: #fff; font-weight: bold;
  width: 222px; w\idth: 214px;
  padding: 2px 2px 2px 6px;
  height: auto!important; height: 1.2em; min-height: 1.2em;
}
#right .layout_latest p.info a {
  color: #fff; 
  text-decoration: none;
}
#right .layout_latest h2 a {
  display: block;
  color: #00a29a;
  text-decoration: none;
  font-size: 1em;
  margin: 0.2em 0 0.8em 0;
}
#right .layout_latest p.teaser {
  font-size: 0.9em;
  position: absolute; bottom: 7px;
}
#right .layout_latest a {
  font-weight: bold;
  color: #00a29a;
  text-decoration: none;
}

/* Footer: Infoboxen */
#footer a {
  font-style: italic;
  color: #00a29a;
  text-decoration: none;
}
#footer .mod_box_items {
  position: relative;
  float: left;
  width: 272px; w\idth: 192px; 
  height: 67px; he\ight: 52px;
  padding: 15px 10px 0 70px;
  border: 2px solid #ddd;
  font-size: 0.9em;
  color: #666;
  margin-right: 6px;
  overflow: hidden;
}
#footer .lageplan {
  border-left: 0;
  he\ight: 38px;
  padding-top: 29px;
  margin-right: 5px;
}
#footer .anschrift  {
  border-right: 0;
  margin-right: 0;
}
#footer .mod_box_items .image_container {
  position: absolute; top: -5px; left: -2px;
}

/* seitenspezifische Angaben */
.privatkunden #header {
  background: url(layout/privatkunden.jpg) no-repeat bottom left;
}
.gewerbekunden #header {
  background: url(layout/gewerbekunden.jpg) no-repeat bottom left;
}
.kontakt #header {
  background: url(layout/kontakt.jpg) no-repeat bottom left;
}
.download #header {
  background: url(layout/download_1.jpg) no-repeat bottom left;
}
.impressum #header {
  background: url(layout/impressum.jpg) no-repeat bottom left;
}
.anfahrt #header {
  background: url(layout/anfahrt.jpg) no-repeat bottom left;
}
