/* Allgemeine Stildefinitionen */
* {
  font-family: helvetica, arial, helvetica, sans-serif;
  font-size: 100.1%;
  padding: 0; margin: 0; border: 0;
}
html {
  min-height: 100%;
  height: 100%;
}
body {
  font-size: 0.75em;
  text-align: center;
  color: #000;
  background-color: #fff;
  background: url(layout/wrapperbg.gif) repeat-x;
  min-height: 100%;
  height: 100%;
}
a img {
  border: 0;
}
.clear {
  font-size: 1px; height: 1px;
  overflow: hidden;
  clear: both;
}
label{
  cursor: pointer;
}
.onlyprint  {
  display: none;
}
.invisible {
  visibility: hidden;
}


/*
  Definition der Inhaltsboxen, vor allem
  - Größe und Position
  - Hintergrundbilder/-farbe
  - Abstände zum Text
  - Abstände zu anderen Boxen
*/
/* beinhaltet die komplette Webseite */
#wrapper {
  z-index: 1;
  position: relative;
  margin: 0px auto 0px auto;
  width: 945px; w\idth: 922px;
  padding: 0 12px 0 11px;
  text-align: left;
  min-height: 100%;
  height: auto !important; height: 100%;
  background: url(layout/bodybg.gif) repeat-y;
}
/* beinhaltet das Logo */
#header {
  position: relative; left: -11px;
  width: 945px; w\idth: 922px;
  padding: 0 12px 0 11px;
  height: 170px;
  overflow: hidden;
  background: blue;
  background: url(layout/headerbg.gif) repeat-y;
}
/* beinhaltet main, left und right */
#container {
  z-index: 1;
  clear: left;
  width: 922px;
  padding: 40px 0px 40px 0px;
  color: #000;
  background: #fff url(layout/bodyline.gif) no-repeat;
}
/* Spalte links vom Hauptinhalt für Hauptnavigation */
#left {
  float: left;
  width: 252px; w\idth: 190px;
  margin: 0 50px 0 12px;
}
/* Hauptinhalt */
#main {
  float: left;
  width: 540px;
}
#footer {
  position: fixed; bottom: 0;
  width: 922px;
  padding: 3px 0 3px 0;
  text-align: center;
  background: #d73939;
  font-weight: bold;
}
.mod_colsetPart {
  position: relative;
}

/* Image-Replacement Firmenname / Logo */
#header a {
  display: block;
  width: 922px;
  padding: 170px 0 0 0;
  background: url(layout/header.gif) no-repeat top left;
  height: 0px !important;
	height/**/:170px; he\ight:0px;
	overflow: hidden;
}

/* seitlich klappendes Menü wo Unterpunkte */
#left .mod_navigation ul {
  z-index: 10;
  list-style: none;
  margin: 0; padding: 0;
  background: #fff;
}
#left .mod_navigation li {
  z-index: 20;
  position: relative;
  margin-bottom: 1px;
}
#left .mod_navigation li a {
  display: block;
  width: 187px; w\idth: 168px;
  padding: 3px 5px 3px 7px;
  background: #f1f1f1;
  border-left: 7px solid #d73939;
  color: #000;
  text-decoration: none;
}
#left .mod_navigation a:hover, #left a.active, #left a.trail {
  background: #d7d7d7;
  font-weight: bold;
}
#left .mod_navigation ul ul {
  display: none;
  position: absolute; left: 187px; top: 0px;
  border-left: 1px solid #fff;
  z-index: 1000;
}
#left .mod_navigation li:hover ul, #left li.over ul {
  display: block;
}
#left .mod_navigation .mod_navigation li li a {
  display: block;
  width: 150px; w\idth: 150px;
  padding: 3px 5px 4px 7px;
  border: 0px;
  font-size: 0.9em;
}
#left .mod_navigation li li a:hover, #left li li a.active {
  background: #d7d7d7;
  font-weight: normal;
}
#left .mod_changelanguage ul {
  margin-top: 10px;
  list-style: none;
}
#left .mod_changelanguage li a {
  color: #666;
  text-decoration: none;
}
#left .mod_changelanguage li.active a {
  color: #000;
}
#left .mod_changelanguage li a:hover {
  color: #000;
  text-decoration: underline;
}
#left .mod_changelanguage li.lang-en a {
  padding-left: 18px;
  background: url(/system/modules/changelanguage/media/images/en.gif) no-repeat left 2px;
}
#left .mod_changelanguage li.lang-de a {
  padding-left: 18px;
  background: url(/system/modules/changelanguage/media/images/de.gif) no-repeat left 2px;
}

/* main - Hauptinhalt */
#main {
  line-height: 1.5em;
}
#main .ce_headline {
  width: 540px; w\idth: 530px;
  padding: 0 5px 5px 5px; margin-bottom: 5px;
  border-bottom: 1px solid #d0d0d0;
  font-size: 1.5em;
  font-weight: normal;
}
#main .ce_headline span {
  color: #d73939;
}
#main .mod_article {
  z-index: 0;
  position: relative;
  padding: 0;
  border-bottom: 1px solid #d0d0d0;
}
#main h2 {
  margin: 0 0 10px 30px;
  font-size: 1.2em;
}
#main p, #main ul, #main table, #main pre, #main h3, #main #map , #main iframe {
  margin: 0 0 1em 60px;
}
#main ul {
  list-style-image: url(layout/ulstern.gif);
}
#main li {
  margin-left: 15px;
}
#main a {
  color: #d73939;
  text-decoration: underline;
}
#main a:hover {
  color: #000;
  text-decoration: underline;
}

/* Fotoalben */
#main .mod_photoalbumslist {
  margin: 0 0 20px 60px;
  width: 480px;
}
#main .mod_photoalbumslist .layout_preview {
  margin: 0 50px 10px 0;
  width: 174px;
  float: left;
}
#main .mod_photoalbumslist .layout_preview .image_container img {
  padding: 1px; background: #fff;
  border: 1px solid #000;
  margin: 0;
}
#main .mod_photoalbumslist .layout_preview .title {
  width: 174px;
  text-align: right;
  font-size: 0.9em;
}
#main .mod_photoalbumslist a {
  color: #000;
  text-decoration: none;
  font-weight: bold;
}
#main .mod_photoalbumsviewer .photos {
  margin: 0 0 20px 60px;
  width: 480px;
}
#main .mod_photoalbumsviewer .image_container {
  margin: 0 5px 10px 0;
  width: 115px; height: 86px; overflow: hidden;
  float: left;
}
#main .mod_photoalbumsviewer p.back {
  clear: left;
}

/* seitenspezifische Angaben */
.hotels #main .mod_article .image_container {
  margin-left: 210px;
}
.startseite #main .mod_article {
  height: auto!important; height: 220px; min-height: 220px;
  background: url(layout/homebg.jpg) no-repeat right bottom;
}
.startseite #main h2,
.startseite #main ul {
  margin-bottom: 30px;
}
.startseite #main li {
  margin: 0 0 10px 15px;
}
.leistungen #main .mod_article {
  background: url(layout/leistungenbg.jpg) no-repeat right bottom;
}
.modellbau #main .mod_article {
  background: url(layout/modellbaubg.jpg) no-repeat right bottom;
}
.zukunft #main ul ul {
  margin-left: 15px;
  list-style: circle;
}
.zukunft #main .mod_article {
  background: url(layout/zukunftbg.jpg) no-repeat right bottom;
}
.ureferenzen #main .mod_article {
  height: auto!important; height: 490px; min-height: 490px;
  background: url(layout/referenzenbg.jpg) no-repeat right bottom;
}
.ureferenzen #main .mod_article .image_container img {
  border: 1px solid #000;
}
.ureferenzen #main .mod_article #refanfrage {
  width: 300px;
  text-align: right;
  position: absolute; top: 100px; left: 260px;
}
.ureferenzen #main .mod_article #refplanung {
  width: 300px;
  position: absolute; top: 200px; left: 160px;
  vertical-align: middle;
}
.ureferenzen #main .mod_article #refmodell {
  width: 300px;
  text-align: right;
  position: absolute; top: 290px; left: 60px;
}
.ureferenzen #main .mod_article #refabguss {
  width: 300px;
  text-align: right;
  position: absolute; top: 380px; left: -40px;
}
.ureferenzen #main .mod_article #refanfrage h1,
.ureferenzen #main .mod_article #refplanung h1,
.ureferenzen #main .mod_article #refmodell h1,
.ureferenzen #main .mod_article #refabguss h1 {
  font-size: 2.5em;
  position: absolute; top: 27px; left: 290px;
}
.ureferenzen #main .mod_article #refanfrage .image_container,
.ureferenzen #main .mod_article #refplanung .image_container,
.ureferenzen #main .mod_article #refmodell .image_container,
.ureferenzen #main .mod_article #refabguss .image_container {
  position: absolute; top: 0px; left: 180px;
}
.ureferenzen #main .mod_article #refanfrage p,
.ureferenzen #main .mod_article #refplanung p,
.ureferenzen #main .mod_article #refmodell p,
.ureferenzen #main .mod_article #refabguss p {
  width: 80px;
  position: relative; top: 31px;
  font-weight: bold;
}
.ureferenzen #main .mod_article #refplanung p {
  position: relative; top: 22px;
}