html, body {
  height: 100%;
}

body {
  background: url(img/body_bg.jpg) no-repeat fixed center top #b2d6ec;

  font-family: Arial, sans-serif;
  font-size: 14px;
  line-height: 1.3em;
}

/*Wrapper*/
#wrapper {
  position: relative;
  min-height: 100%;
  background: url(img/wrapper_bg.png) no-repeat;
  background-position: center bottom;
}

/*Header*/
#header {
  position: relative;
  margin: 0 20px;
}

#header h1 {
  margin: 0;
}

#header h1 a {
  position: absolute;
  top: 26px;
  left: 20px;
  background: url(img/logo.jpg) no-repeat;
  width: 243px;
  height: 122px;
  
  text-indent: -9999px;
}

/*Textsizer*/
#textsizer {
  position: absolute;
  top: 0;
  right: 20px;

  font-size: 14px;
  line-height: 1em;
}

#textsizer #textsizer_msg {
  margin: 4px;
  padding: 4px 15px 4px 5px;
  float: left;
  background: url(img/textsizer_arrow.png) no-repeat center right #d3f4ff;
}

#textsizer a#smaller,
#textsizer a#bigger,
#textsizer a#default {
  display: block;
  width: 16px;
  height: 32px;
  margin-right: 4px;
  background: url(img/ico_minus.png) no-repeat center #888888;
  text-indent: -9999px;
  float: left;
}

#textsizer a#bigger {
  background: url(img/ico_plus.png) no-repeat center #888888;
}

#textsizer a#default {
  width: 29px;
  background: url(img/ico_lupe.png) no-repeat center #17a0d2;
}

/*Menü -Top*/
#header .mod_navigation {
  position: absolute;
  top: 125px;
  right: 20px;

  font-size: 1.3em;
}

#header .mod_navigation li {
  display: inline;
}

#header .mod_navigation li a,
#header .mod_navigation li span.active {
  display: block;
  float: left;
  padding: 0 0.6em 0.2em 0;
  margin-right: 0.6em;
  border-bottom: 1px solid #d7d7d7;
}

#header .mod_navigation li a.last,
#header .mod_navigation li span.last {
  margin-right: 0;
}

#header .mod_navigation li a:hover {
  border-bottom: 1px solid #000000;
}

#header .mod_navigation li span.active,
#header .mod_navigation li.trail a {
  border-bottom: 1px solid #17a0d2;  
}

/*Container*/
#container {
  padding: 0 20px 5em 20px;
  margin: 0 20px;
}

.startseite #container,
.appartementliste #container {
  padding-bottom: 22em;
}

/*Sidebar Article*/
#left .mod_article {
  border-top: 1px solid #d7d7d7;
}

/*Sidebar Navigation*/
#left .mod_navigation,
#left .mod_catalogfilter {
  margin: 1.4em 0;
}

#left .mod_navigation,
#left .mod_cataloglist .first a,
#left .mod_catalogfilter {
  border-top: 1px solid #d7d7d7;
}

#left .mod_navigation a,
#left .mod_navigation span.active,
#footer .mod_article p a,
#left .mod_cataloglist a,
#left .mod_catalogfilter ul a,
#left .mod_catalogfilter p.active {
  display: block;
  width: 100%;
  padding: 0.9em 0;
  border-bottom: 1px solid #d7d7d7;
  background: url(img/ico_arrow_na.png) no-repeat right center;
}

#left .mod_navigation a:hover,
#footer .mod_article p a:hover,
#left .mod_cataloglist a:hover,
#left .mod_catalogfilter ul a:hover {
  background-image: url(img/ico_arrow.png);
}

#left .mod_navigation span.active,
#left .mod_catalogfilter p.active {
  color: #1590bd;
  background-image: url(img/ico_arrow.png);
}

/*Main*/
#main {
 background: #ffffff;
}

#main .inside {
  padding-left: 20px;
}

.appartementliste #main .inside {
  padding-left: 0;
}

/* Footer */
#footer {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 960px;
  margin: 0 40px;
}

.startseite #footer,
.appartementliste #footer {
  border-top: 1px solid #848484;  
}

/*Footer Apartment-Search*/

#footer .mod_catalogfilter .filter_group h3 {
  display: none;
}

#footer .mod_catalogfilter,
#footer .mod_article .ce_text {
  width: 225px;
  float: left;
}

body #footer .mod_catalogfilter form .row {
  width: 60px;
  margin-bottom: 8px;
  float: left;
  clear: none;
}

#footer .mod_catalogfilter label {
  padding: 0 0 0 8px;
}

/*Footer Copyright*/
#footer .mod_article .ce_text {
  margin-left: 20px;
}

#footer .mod_article p a {
  padding: 0.2em 0 0.4em 0;
}

#copyright {
  font-size: 0.85em;
  margin: 1.6em 0;
  padding-left: 420px;
}

#copyright,
#copyright a {
  color: #127ca2;
}

#copyright a:hover {
  text-decoration: underline;
}

#copyright p {
  float: left;
}

#copyright .mod_customnav li {
  float: left;
}

/*Links*/
a {
  color: #000000;
  text-decoration: none;
}

a:hover {
  color: #1590bd;
}

#main a {
  color: #1590bd;  
}

#main a:hover {
  text-decoration: underline;
}

/*Headlines*/
h2 {
  font-size: 1.7em;
  color: #1590bd;
  margin: 0.7em 0 0.7em 0;
  line-height: 1.3em;
}

h3 {
  font-size: 1.3em;
  color: #1590bd;
  margin: 0.7em 0 0.4em 0;
}

.mod_catalogreader h3 {
  margin-top: 1.3em;
  margin-bottom: 1em;
}

/*Images*/
img {
  border: 4px solid #e0e0e0;
}

/* Big Slide */
.bigslide,
.bilder_slide .inside-bilder_slide {
  overflow: hidden;
  position: relative;
}

.bigslide .inside-slide,
.bilder_slide .value {
  width: 5000px;
}

.bigslide .ce_image,
.bilder_slide .ce_image {
  position: relative;
  float: left;
  z-index: 10;
  margin-right: 20px;
  width: 715px;
}

.bilder_slide .ce_image {
  width: 201px;
  margin-right: 13px;
}

.bigslide h3 {
  position: absolute;
  top: 400px;
}

.bigslide .caption {
  margin-top: 2.5em;
}

.bigslide a.forwardlink,
.bigslide a.backlink {
  width: 47px;
  height: 47px;
  position: absolute;
  top: 176px;
  z-index: 20;
}

.bigslide a.backlink {
  left: 4px;
  background: url(img/ico_back.png) no-repeat;
}

.bigslide a.forwardlink {
  right: 4px;
  background: url(img/ico_forward.png) no-repeat;
}

/* Smallslides */
.bilder_slide {
  overflow: hidden;
  width: 715px;
}

.bilder_slide .inside-bilder_slide {
  width: 629px;
  float: left;
}

.bilder_slide .image {
  margin-right: 13px;
  width: 201px;
}

.bilder_slide a.backlink,
.bilder_slide a.forwardlink {
  float: left;
  width: 30px;
  height: 201px;
  margin-right: 13px;
  background: url(img/arrow_back.jpg) no-repeat;
}

.bilder_slide a.forwardlink {
  margin-right: 0;
  margin-left: 13px;
  background: url(img/arrow_forward.jpg) no-repeat;
}

/* Catalog Reader */

.mod_catalogreader ul#col1-select,
.mod_catalogreader ul#col2-select {
  width: 347px;
  overflow: hidden;
  margin-top: 20px;
  background: url(img/ul_bg.png) no-repeat left bottom;

  font-size: 14px; 
}

.mod_catalogreader ul#col1-select a,
.mod_catalogreader ul#col2-select a {
  border-top: 1px solid #fff;
  border-left: 1px solid #fff;
  border-right: 1px solid #fff;
  padding: 4px 5px;
  float: left;

  color: #000;
}

.mod_catalogreader ul#col1-select a:hover,
.mod_catalogreader ul#col2-select a:hover {
  text-decoration: none;
  color: #1590bd;
}

.mod_catalogreader ul#col1-select li,
.mod_catalogreader ul#col2-select li {
  float: left;
  margin: 0;
  padding: 0;
  list-style: none;
} 

.mod_catalogreader ul#col1-select a.choosen,
.mod_catalogreader ul#col2-select a.choosen {
  border-top: 1px solid #d7d7d7;
  border-left: 1px solid #d7d7d7;
  border-right: 1px solid #d7d7d7;
  border-bottom: 1px solid #fff;

  color: #1590bd;
}

.mod_catalogreader #col1,
.mod_catalogreader #col2 {
  width: 347px;
  float: left;
  position: relative;
  overflow: hidden;
}

.mod_catalogreader #col1 {
  margin-right: 20px;
}

.mod_catalogreader .tab {
  overflow: hidden;
}

.mod_catalogreader p.back {
  visibility: hidden;
  display: none;
}

.mod_catalogreader #grundriss img,
.mod_catalogreader #lageplan img {
  border: none;
}

.mod_catalogreader .personen,
.mod_catalogreader .zimmer,
.mod_catalogreader .qm,
.mod_catalogreader .strand,
.mod_catalogreader .balkon,
.mod_catalogreader .allergiker {
  width: 5.90em;
  margin-right: 3px;
  float: left;
}

.mod_catalogreader .personen .label,
.mod_catalogreader .zimmer .label,
.mod_catalogreader .qm .label,
.mod_catalogreader .strand .label,
.mod_catalogreader .balkon .label,
.mod_catalogreader .allergiker .label,
.mod_catalogreader .preishs .label,
.mod_catalogreader .preisns .label {
  height: 2.9em;
  background: #c4e3ee;
  margin-bottom: 3px;
  padding: 3px;
  
  text-align: center;
}

.mod_catalogreader .personen .value,
.mod_catalogreader .zimmer .value,
.mod_catalogreader .qm .value,
.mod_catalogreader .strand .value,
.mod_catalogreader .balkon .value,
.mod_catalogreader .allergiker .value,
.mod_catalogreader .preishs .value,
.mod_catalogreader .preisns .value {
  height: 1em;
  background: #eaeaeb;
  margin-bottom: 3px;
  padding: 0.6em 3px;

  font-weight: bold;
  font-size: 1.6em;
  text-align: center;
}

.mod_catalogreader .preishs {
  clear: left;
}

.mod_catalogreader .preishs,
.mod_catalogreader .preisns {
  float: left;
  width: 11.99em;
  margin-right: 3px;
}

.mod_catalogreader .aussraeume,
.mod_catalogreader .ausskueche,
.mod_catalogreader .aussbad,
.mod_catalogreader .aussfuss {
  width: 338px;
  background: url(img/ausstattung_bg.png) repeat-y;
  margin-bottom: 3px;
  clear: left;
}

.mod_catalogreader .aussraeume .label,
.mod_catalogreader .ausskueche .label,
.mod_catalogreader .aussbad .label,
.mod_catalogreader .aussfuss .label {
  width; 120px;
  float: left;
  padding: 5px;
}

.mod_catalogreader .aussraeume .value,
.mod_catalogreader .ausskueche .value,
.mod_catalogreader .aussbad .value,
.mod_catalogreader .aussfuss .value {
  width: 194px;
  margin-left: 133px;
  padding: 5px;
}

div.mod_catalogreader div.value.Ja, 
div.mod_catalogreader div.value.Nein,
table.layout_simpletable td.field.Ja,
table.layout_simpletable td.field.Nein {
  text-indent: -9999px;
}

div.mod_catalogreader div.value.Ja,
table.layout_simpletable td.field.Ja {
  background: url(img/check_yes.png) center no-repeat #eaeaeb;
}

div.mod_catalogreader div.value.Nein,
table.layout_simpletable td.field.Nein {
  background: url(img/check_no.png) center no-repeat #eaeaeb;
}

/* Appartement-Tabelle */
table.layout_simpletable {
  width: 100%;
}

table.layout_simpletable td {
  padding: 0;
}

table.layout_simpletable th {
  border: 3px solid #fff;
}

table.layout_simpletable th.nr,
table.layout_simpletable th.hausetage,
table.layout_simpletable th.vorschau,
table.layout_simpletable th.link {
  text-indent: -9999px;
  font-size: 1px;
  background: transparent;
  padding: 0;
}

table.layout_simpletable th.personen,
table.layout_simpletable th.qm,
table.layout_simpletable th.zimmer,
table.layout_simpletable th.balkon,
table.layout_simpletable th.allergiker {
  background: #888888;
  padding: 3px;

  text-align: center;
  color: #fff;
}

table.layout_simpletable th.nr,
table.layout_simpletable td.nr {
  width: 70px;
}

table.layout_simpletable td.nr {
  background: #17a0d2;

  color: #fff;
  text-align: center;
}

table.layout_simpletable th.hausetage,
table.layout_simpletable td.hausetage {
  width: 100px;

  color: #fff;
}

table.layout_simpletable td.hausetage {
  background: no-repeat center top #17a0d2;
  padding-top: 55px;

  text-align: center;
}

table.layout_simpletable th.vorschau,
table.layout_simpletable td.vorschau {
  width: 133px
}

table.layout_simpletable td.vorschau {
  line-height: 0px;
}

table.layout_simpletable img {
  border: none;
}

table.layout_simpletable th.link,
table.layout_simpletable td.link {
  width: 14%;
}

table.layout_simpletable td.nr,
table.layout_simpletable td.personen,
table.layout_simpletable td.qm,
table.layout_simpletable td.zimmer {
  vertical-align: middle;
  font-weight: bold;
  font-size: 1.6em;
  text-align: center;
}

table.layout_simpletable .einheit {
  font-size: 0.65em;
  font-weight: normal;
  display: block;
  line-height: 1.5em;
  margin-top: -1.5em;
}

table.layout_simpletable td.link {
  padding: 0 10px;
}

#main table.layout_simpletable td.link a {
  color: #000000;
  display: block;
  width: 100%;
  padding: 2.2em 0;
  background: url(img/ico_arrow_mo.png) no-repeat right center;
}

#main table.layout_simpletable td.link a:hover {
  background-image: url(img/ico_arrow.png);
  text-decoration: none;
}

/* Buchungsanfrage */

form .row,
form .explanation {
  clear: both;
}

fieldset legend {
  text-indent: -9999px;
}

form.niceform img {
  border: none;
  margin: 0;
  padding: 0;
}

form.niceform .NFMultiSelectBottom,
form.niceform .NFMultiSelectTop,
form.niceform .NFTextareaTop,
form.niceform .NFTextareaBottom {
  position: relative;
}

form.niceform .NFMultiSelectBottom img,
form.niceform .NFMultiSelectTop img,
form.niceform .NFTextareaTop img,
form.niceform .NFTextareaBottom img {
  position: absolute;
  top:0;
  left:0;
}

div.anfrage {
  border-top: 1px solid #000;
  margin-top: 30px;
}

form#buchungsanfrage fieldset,
form#kontaktformular fieldset {
  float: left;
}

form#buchungsanfrage div.submit_container,
form#kontaktformular div.submit_container {
  clear: both;
  text-align: right;
}

form#buchungsanfrage fieldset.reisedaten,
form#kontaktformular fieldset.daten {
  width: 327px;
  padding-right: 30px;
  border-right: 1px solid #d6d6d6;  
  border-top: 0px none #fff;
}

form#buchungsanfrage fieldset.persdaten,
form#kontaktformular fieldset.nachricht {
  width: 327px;
  padding-left: 30px;
}

form#kontaktformular fieldset.daten .row {
  padding: 0 0 25px 0;
}

form#buchungsanfrage fieldset.persdaten .row {
  padding: 0 0 14px 0;
}

form#buchungsanfrage fieldset.persdaten label,
form#kontaktformular fieldset.daten label {
  width: 125px;
  float: left;
}

form#buchungsanfrage fieldset.persdaten input,
form#kontaktformular fieldset.daten input {
  width: 188px;
}

form#buchungsanfrage fieldset.reisedaten label {
  float: left;
}

form#buchungsanfrage div.row_2 label {
  margin-bottom: 10px;
}

form#buchungsanfrage div.row_2 select {
  width: 125px;
  margin-bottom: 25px;
}

form#buchungsanfrage div.row_3 p,
form#buchungsanfrage div.row_6 p {
  margin-bottom: 10px;
}

form#buchungsanfrage div.row_4,
form#buchungsanfrage div.row_5 {
  width: 49%;
  float: left;
  clear: none;
}

form#buchungsanfrage div.row_4,
form#buchungsanfrage div.row_5 {
  margin-bottom: 25px;
}

form#buchungsanfrage div.row_4 label,
form#buchungsanfrage div.row_5 label {
  padding-right: 10px;
}

form#buchungsanfrage div.row_4 input,
form#buchungsanfrage div.row_5 input {
  width: 70px;
}

form#buchungsanfrage div.row_7,
form#buchungsanfrage div.row_8 {
  position: relative;
  width: 49%;
  float: left;
  clear: none;
}

form#buchungsanfrage div.row_7 label,
form#buchungsanfrage div.row_8 label {
  position: absolute;
  top: 5px;
  left: 60px;
}

form#buchungsanfrage div.row_16 textarea {
  width: 194px;
}

form#buchungsanfrage p.error,
form#kontaktformular p.error {
  display: none;
}

form#buchungsanfrage p.hinweis,
form#kontaktformular p.hinweis {
  font-weight: bold;
}

form#buchungsanfrage label.error,
form#kontaktformular label.error {
  color: #f00;
}

form#kontaktformular fieldset.nachricht label {
  padding-bottom: 10px;
  display: block;
}

form#kontaktformular fieldset.nachricht textarea {
  width: 318px;
  height: 160px;
}

/*Ferientipps*/
#left .mod_catalogfilter h3,
#left .mod_catalogfilter .clearall {
  display: none;
}

#left .mod_catalogfilter p.active {
  margin-bottom: 0;
}

#ferientipps {
  padding-top: 10px;
}

#ferientipps .item {
  border-bottom: 1px solid #d6d6d6;
  padding-bottom: 2em;
  padding-top: 1em;
}

#ferientipps .item.first {
  padding-top: 0;
}

#ferientipps span.image {
  float: left;
  margin: 0 15px 15px 0;
}

#ferientipps div.kategorien {
  clear: both;
  width: 85%;
}

#ferientipps span.kategorien {
  color: #cccccc;
  background: url(img/ico_tags.png) no-repeat left center;
  padding-left: 20px;
}

#ferientipps div.datum {
  margin-top: -1.2em;
  float: right;
  color: #cccccc;
}

/*Pagination*/
.pagination {
  margin-top: 0.5em;
}

.pagination p {
  float: left;
  margin-top: 0.2em;
}

.pagination ul {
  float: right;
  margin-top: 0.2em;
}

#main .pagination li {
  float: left;
  margin: 0;
  padding: 0;
  list-style: none;
}

.pagination a,
.pagination span.current {
  margin: 0 0.3em;
}

/*404*/

#left #appartements-25 {
  border-top: none;
}

/*Inhaltselemente*/
body.standard #main .inside {
  padding-top: 10px;
}

body.unsere-haeuser #main .inside,
body.kellenhusen #main .inside {
  padding-top: 0;
}

#main h3 {
  margin-bottom: 0.6em;
}

/*Tabelle*/

table {
  width: 100%;
}

td,
thead th {
  border: 3px solid #fff;
  background: #eaeaeb;
  padding: 5px;
}

thead th,
tfoot td {
  background: #17a0d2;

  color: #fff;  
}

#main thead th a {
  color: #fff;
}

#main thead th a:hover {
  text-decoration: none;
}

/*Aufzählung*/
#main li {
  list-style: outside disc;
  margin-left: 25px;
  padding: 3px;
}

/*Anreise Google-Map*/
body.anreise #main .inside {
  padding-top: 0;
}

.mod_dlh_googlemaps {
  margin-bottom: 20px;
}

/*Bilder*/
.float_left {
  margin: 0 10px 10px 0;  
}

.float_right {
  margin: 0 0 10px 10px;  
}

.image_container .caption {
  background: #eaeaeb;
  padding: 3px;
}

body.startseite .image_container .caption {
  background: transparent;
  padding: 0;
}

.col1 {
  float: left;
  width: 327px;
  padding-right: 30px;
  padding-bottom: 20px;
}

.col2 {
  width: 327px;
  padding-left: 30px;
  padding-bottom: 20px;
}

.anfrage {
  clear: both;
}

.strand div.value span.xxs {
  font-size: 0.4em;
}

/* DTV_Sterne */

#dtv {
  width: 91px;
  background: url(img/4stars.png) no-repeat;
  padding: 25px 10px 0 3px;
  line-height: 1.2em;
  position: absolute;
  top: 22px;
  left: 275px;

  color: #585858;
  font-size: 0.85em;
}
