/* Farben: Hellgold: #C0AD61, Dunkelgold = #76571F, Rot = #990000 */

* {
  margin: 0;
  padding: 0;
}

body, html {
  height: 100%;
}

body {
  background-image: url(../images/bg_top.jpg);
  background-repeat: repeat-x;
  background-position: 0 0;
  background-color: #FFFFFF;
  color: #76571F;
  font-family: "Lucida Grande", "Lucida Sans Unicode", Arial, Verdana, sans-serif;
  font-size: 13px;
  text-align: center;
  line-height: 1.5;
}

#container {
  text-align: left;
  width: 900px;
  margin: 0 auto;
  min-height: 100%;
}

#content_container {
  min-height: 100%;
  position: relative;
}

#print_logo {
  display: none;
}

#print_logo img {
  width: 250px;
  height: 65px;
}

/******************/
/* CONTENT        */
/******************/

#content {
  float: right;
  width: 475px;
  margin-right: 75px;
  text-align: justify;
}

.newsletter-content { width: 478px !important; margin-right: 72px !important; }

h1, h2, h3, h4 {
  font-family: "Lucida Grande", "Lucida Sans Unicode", Arial, Verdana, sans-serif;
  font-size: 13px;
  font-weight: normal;
  font-style: normal;
  line-height: 1.5;
}

h1 {
  display: none;
}

h2 {
  background-image: url(../images/aufz.gif);
  background-repeat: no-repeat;
  background-position: 0 5px;
  padding-left: 20px;
  margin-top: 25px;
}
.ds h2 { font-size: 16px; background-position: 0 9px; margin-top: 40px; }

div.portfolio h2 {
  margin-top: 50px;
  font-size: 17px;
  background-position: 0 11px;
}

h3 {
  margin: 25px 0 0 20px;
}
.ds h3 { font-size: 15px; }

p {
  margin: 15px 0 0 20px;
}

p.firstp {
  margin-top: 25px;
}

.mt50 {
  margin-top: 50px;
}

.mt30 {
  margin-top: 30px;
}

ul {
  margin: 10px 35px 0 50px;
  text-align: left;
}

li {
  list-style-type: none;
  background-image: url(../images/aufz.gif);
  background-repeat: no-repeat;
  background-position: 0 5px;
  padding-left: 16px;
  margin-top: 5px;
}
li.lirot { background-image: url(../images/aufz_rot.gif); }

ul.ohneabst { padding-left: 1.2rem; margin: 10px 0 0 20px; }
ul.ohneabst li { background: transparent; padding: 0; }
ul.ohneabst li::before { content: "–"; float: left; margin-top: -2px; margin-left: -1.2rem; color: #76571F; font-weight: bold; }

dl { padding: 20px 0 20px 20px; text-align: left; }
dl dt { clear: left; float: left; padding: 5px 0 0 0; width: 90px; }
dl dd { padding: 5px 0 0 95px; }

a:link, a:visited, .spanlink {
  color: #76571F;
  text-decoration: underline;
}
.spanlink { cursor: pointer; }

a:focus, a:hover, a:active, .spanlink:focus, .spanlink:hover, .spanlink:active {
  color: #990000;
  text-decoration: underline;
}

a, a:hover, a:active {
  outline: none;
}

a.img:link img, a.img:visited img{
  border: 1px solid #C0AD61;
}

a.img:focus img, a.img:hover img, a.img:active img {
  border: 1px solid #990000;
}

img.topimg {
  border: 0 none;
  width: 20px;
  height: 10px;
}

a.top:link, a.top:visited {
  background-image: url(../images/top.gif);
  background-repeat: no-repeat;
}

a.top:focus, a.top:hover, a.top:active {
	background-position: 0 -20px;
}

img.portrait {
  border: 1px solid #C0AD61;
  float: right;
  margin: 64px 0 10px 25px;
  width: 210px;
  height: 321px;
}

img.portfolio {
  margin: 20px 0 0 21px;
}

table {
  margin: 5px 0 0 20px;
}

.newsletter-content  table { margin-top: 0; }

td {
  vertical-align: top;
  padding-top: 10px;
  text-align: left;
}

td.spalte_abst {
  padding-right: 20px;
  white-space: nowrap;
}

.newsletter-content  td { padding-top: 0; vertical-align: bottom; }

#zunzun-box {
  background-color: #F6F4EA;
  border: 1px solid #C0AD61;
  padding: 0 20px 20px 0;
  margin: 50px 0 20px 20px;
}

#zunzun-box img {
  float: left;
  margin: 20px 20px 10px 20px;
  background-color: #BBB;
  width: 160px;
  height: 105px;
}

img.img_equipment {
  float: left;
  margin-right: 30px;
}

hr { /* wird benötigt, damit der container-Hintergrund bis nach unten angezeigt wird */
  clear: both;
  visibility: hidden;
}

.nomargin { margin: 0; }
.text-justify p, .text-justify li { text-align: justify !important; }


/******************/
/* HEADER         */
/******************/

#header {
  position: relative;
  background-image: url(../images/bg_top_header.png);
  background-repeat: no-repeat;
  background-position: 0 0;
  background-color: #FFFFFF;
  height: 190px;
  padding-left: 29px;
}

#header img {
  width: 88px;
  height: 88px;
  margin-top: 29px;
  margin-left: 12px;
  border: 0 none;
}

#header .header_homelink {
  display: block;
  float: right;
  width: 240px;
  height: 70px;
  margin-top: 22px;
  text-decoration: none;
}

#header .header_navigation {
  width: 90px;
  margin-left: 10px;
  margin-top: 18px;
  float: left;
}

#header .header_navigation_first {
  margin-left: 20px;
}

#header a:link, #header a:visited {
  color: #990000;
  text-decoration: none;
}

#header a:focus, #header a:hover, #header a:active {
  color: #76571F;
  text-decoration: underline;
}


/******************/
/* NAVIGATION     */
/******************/

#navigation {
  background-image: url(../images/bg_left.jpg);
  background-repeat: no-repeat;
  background-position: 0 0;
  background-color: #FFFFFF;
  float: left;
  width: 350px;
  min-height: 470px;
}

#navigation h4 {
  font-size: 13px;
  font-weight: bold;
  margin: 25px 40px 15px 50px;
}

#navigation a:link, #navigation a:visited {
  text-decoration: none;
}


/******************/
/* FOOTER         */
/******************/

#footer {
  background-image: url(../images/bg_bottom.jpg);
  background-repeat: repeat-x;
  background-position: left bottom;
  background-color: #FFFFFF;
  clear: both;
  width: 100%;
  height: 70px;
  margin-top: -70px;
  color: #FFFFFF;
  line-height: 1.2;
  position: relative;
}


div.footer_text {
  padding-top: 18px;
}

#footer a:link, #footer a:visited {
  color: #FFFFFF;
  text-decoration: none;
}

#footer a:focus, #footer a:hover, #footer a:active {
  color: #76571F;
  text-decoration: underline;
}


/***********************/
/* Newsletter-Formular */
/***********************/

form { margin: 20px 0 0 20px; }
form p { margin: 6px 0 0 0; }
form label { display: block; }
input { background-color: #FFFFFF; margin: 0; padding: 2px; border: 1px solid #76571F; font-size: 16px; width: 100%; color: #990000; font-family: "Lucida Grande", "Lucida Sans Unicode", Arial, Verdana, sans-serif; }
input.cr_ipe_radio { width: auto; }
button { background-color: #B9A54F; margin: 30px 0 0 0; padding: 4px 10px; font-weight: normal; color: #FFF; }
.cr_ipe_item.inactive {display:none;}
.mb-20 { margin-bottom: 20px; }
.mb-40 { margin-bottom: 40px; }
.mt-20 { margin-top: 20px; }
.mt-40 { margin-top: 40px; }
.formular_fehlerfeld { background-color: #E1CDC7; }
.formular-fehlermeldung { color: #990000; font-weight: bold; display: none; }
.eingeblendet { display: block; }
.formular_successtext { color: #72801E; font-weight: bold; }

/******************/
/* FOTO-GALERIE   */
/******************/

.img-responsive { width: auto; max-width: 100%; height: auto; }

div.galerien_header {
  margin-top: 30px;
  float: left;
  clear: both;
  width: 100%;
}

div.galerien_header h2 {
  margin-top: 0;
  float: left;
}

div.galerien_header a {
  float: right;
}

div.galerie {
  margin: 10px -5px 0 18px;
  float: left;
  text-align: left;
  line-height: 1;
}

div.galerie a:link img, div.galerie a:visited img {
  border: 1px solid #C0AD61;
  margin: 0 0 2px 2px;
}

div.galerie a:focus img, div.galerie a:hover img, div.galerie a:active img {
  border: 1px solid #990000;
  margin: 0 0 2px 2px;
}

div.galerie span.imagetitle {
  display: none;
}

.neu {
  color: #990000;
  font-weight: bold;
}

/* Newsletter-Galerie */
.newsletter-content p { margin: 0; }
.newsletter-content p.newsletter-intro { margin: 20px 0; }
.newsletter-content h1 { line-height: 100% !important; display: block; font-size: 16px; font-weight: normal; margin: 0; padding: 0; text-align: left; }
.newsletter-content .bodyContentTitle { line-height: 100%; text-align: left; padding: 30px 0 20px 0; width: 458px; }
.newsletter-content .bodyContentTitle img { display: block; line-height: 200px; outline: none; text-decoration: none; border: 0 none; }
.newsletter-content .bodyContentText { line-height: 140%; text-align: left; width: 458px; }
.newsletter-content .galerieContent { border: 0 none; width: 458px; }
.newsletter-content .galerieContent-1 { line-height: 30px; height: 56px; vertical-align: bottom; width: 308px; }
.newsletter-content .galerieContent-2 { line-height: 30px; text-align: right; height: 56px; vertical-align: bottom; width: 150px; }
.newsletter-content .galerieContent-3 { background-color: #E7DFC2; }
.newsletter-content img { display: block; line-height: 100%; outline: none; text-decoration: none; border: 0 none; }
.newsletterNew p { margin: 0; padding: 0; }
.newsletterNew img { padding-top: 25px; padding-bottom: 25px; }

/* Newsletter-Sidebar */
.sidebar_newsletter { margin-left: 30px; margin-top: 40px; line-height: 1; }
.sidebar_newsletter a.imglink { display: block; width: 220px; height: 110px; padding: 0; margin: 0; }
.sidebar_newsletter img { width: 220px; height: 110px; }
.sidebar_newsletter .nlbutton { display: block; background-color: #990000; padding: 8px 0; width: 220px; color: white; text-align: center; }

/* Facebook Like Button */
.socialmedia { margin: 30px 0 0 50px; }
.socialmedia a { display: block; width: 32px; height: 32px; float: left; margin-right: 15px; background-image: url(../images/socialmedia2.png); background-repeat: no-repeat; }
.socialmedia span { display: none; }
.socialmedia_facebook { background-position: 0 0; }
.socialmedia_google { background-position: 0 -50px; }

/* Magnific Popup */
.mfp-bg { top: 0; left: 0; width: 100%; height: 100%; z-index: 1042; overflow: hidden; position: fixed; background: #0b0b0b; opacity: 0.95; }
.mfp-wrap { top: 0; left: 0; width: 100%; height: 100%; z-index: 1043; position: fixed; outline: none !important; -webkit-backface-visibility: hidden; }
.mfp-container { text-align: center; position: absolute; width: 100%; height: 100%; left: 0; top: 0; padding: 0 8px; box-sizing: border-box; }
.mfp-container::before { content: ''; display: inline-block; height: 100%; vertical-align: middle; }
.mfp-align-top .mfp-container::before { display: none; }
.mfp-content { position: relative; display: inline-block; vertical-align: middle; margin: 0 auto; text-align: left; z-index: 1045; }
.mfp-inline-holder .mfp-content, .mfp-ajax-holder .mfp-content { width: 100%; cursor: auto; }
.mfp-ajax-cur { cursor: progress; }
.mfp-zoom-out-cur, .mfp-zoom-out-cur .mfp-image-holder .mfp-close { cursor: -moz-zoom-out; cursor: -webkit-zoom-out; cursor: zoom-out; }
.mfp-zoom { cursor: pointer; cursor: -webkit-zoom-in; cursor: -moz-zoom-in; cursor: zoom-in; }
.mfp-auto-cursor .mfp-content { cursor: auto; }
.mfp-close, .mfp-arrow, .mfp-preloader, .mfp-counter { -webkit-user-select: none; -moz-user-select: none; user-select: none; }
.mfp-loading.mfp-figure { display: none; }
.mfp-hide { display: none !important; }
.mfp-preloader { color: #CCC; position: absolute; top: 50%; width: auto; text-align: center; margin-top: -0.8em; left: 8px; right: 8px; z-index: 1044; }
.mfp-preloader a { color: #CCC; }
.mfp-preloader a:hover { color: #FFF; }
.mfp-s-ready .mfp-preloader { display: none; }
.mfp-s-error .mfp-content { display: none; }
button.mfp-close, button.mfp-arrow { overflow: visible; cursor: pointer; background: transparent; border: 0; -webkit-appearance: none; display: block; outline: none; padding: 0; z-index: 1046; box-shadow: none; touch-action: manipulation; }
button::-moz-focus-inner { padding: 0; border: 0; }
.mfp-close { width: 44px; height: 44px; line-height: 44px; position: absolute; right: 0; top: 0; text-decoration: none; text-align: center; opacity: 0.65; padding: 0 0 18px 10px; color: #FFF; font-style: normal; font-size: 28px; font-family: Arial, Baskerville, monospace; }
.mfp-close:hover, .mfp-close:focus { opacity: 1; }
.mfp-close:active { top: 1px; }
.mfp-close-btn-in .mfp-close { color: #333; }
.mfp-image-holder .mfp-close, .mfp-iframe-holder .mfp-close { color: #FFF; right: -6px; text-align: right; padding-right: 6px; width: 100%; }
.mfp-counter { position: absolute; top: 0; right: 0; color: #CCC; font-size: 12px; line-height: 18px; white-space: nowrap; }
.mfp-arrow { position: absolute; opacity: 0.65; margin: 0; top: 50%; margin-top: -55px; padding: 0; width: 90px; height: 110px; -webkit-tap-highlight-color: transparent; }
.mfp-arrow:active { margin-top: -54px; }
.mfp-arrow:hover, .mfp-arrow:focus { opacity: 1; }
.mfp-arrow::before, .mfp-arrow::after { content: ''; display: block; width: 0; height: 0; position: absolute; left: 0; top: 0; margin-top: 35px; margin-left: 35px; border: medium inset transparent; }
.mfp-arrow::after { border-top-width: 13px; border-bottom-width: 13px; top: 8px; }
.mfp-arrow::before { border-top-width: 21px; border-bottom-width: 21px; opacity: 0.7; }
.mfp-arrow-left { left: 0; }
.mfp-arrow-left::after { border-right: 17px solid #FFF; margin-left: 31px; }
.mfp-arrow-left::before { margin-left: 25px; border-right: 27px solid #3F3F3F; }
.mfp-arrow-right { right: 0; }
.mfp-arrow-right::after { border-left: 17px solid #FFF; margin-left: 39px; }
.mfp-arrow-right::before { border-left: 27px solid #3F3F3F; }
.mfp-iframe-holder { padding-top: 40px; padding-bottom: 40px; }
.mfp-iframe-holder .mfp-content { line-height: 0; width: 100%; max-width: 1500px; }
.mfp-iframe-holder .mfp-close { top: -40px; }
.mfp-iframe-scaler { width: 100%; height: 0; overflow: hidden; padding-top: 56.25%; }
.mfp-iframe-scaler iframe { position: absolute; display: block; top: 0; left: 0; width: 100%; height: 100%; box-shadow: 0 0 8px rgba(0, 0, 0, 0.6); background: #000; }
img.mfp-img { width: auto; max-width: 100%; height: auto; display: block; line-height: 0; box-sizing: border-box; padding: 40px 0 40px; margin: 0 auto; }
.mfp-figure { line-height: 0; }
.mfp-figure::after { content: ''; position: absolute; left: 0; top: 40px; bottom: 40px; display: block; right: 0; width: auto; height: auto; z-index: -1; box-shadow: 0 0 8px rgba(0, 0, 0, 0.6); background: #444; }
.mfp-figure small { color: #BDBDBD; display: block; font-size: 12px; line-height: 14px; margin-top: 2px; }
.mfp-figure figure { margin: 0; }
.mfp-bottom-bar { margin-top: -36px; position: absolute; top: 100%; left: 0; width: 100%; cursor: auto; }
.mfp-title { text-align: left; line-height: 18px; color: #F3F3F3; word-wrap: break-word; padding-right: 100px; }
.mfp-image-holder .mfp-content { max-width: 100%; }
.mfp-gallery .mfp-image-holder .mfp-figure { cursor: pointer; }

@media screen and (max-width: 800px) and (orientation: landscape), screen and (max-height: 300px) {
  .mfp-img-mobile .mfp-image-holder { padding-left: 0; padding-right: 0; }
  .mfp-img-mobile img.mfp-img { padding: 0; }
  .mfp-img-mobile .mfp-figure::after { top: 0; bottom: 0; }
  .mfp-img-mobile .mfp-figure small { display: inline; margin-left: 5px; }
  .mfp-img-mobile .mfp-bottom-bar { background: rgba(0, 0, 0, 0.6); bottom: 0; margin: 0; top: auto; padding: 3px 5px; position: fixed; box-sizing: border-box; }
  .mfp-img-mobile .mfp-bottom-bar:empty { padding: 0; }
  .mfp-img-mobile .mfp-counter { right: 5px; top: 3px; }
  .mfp-img-mobile .mfp-close { top: 0; right: 0; width: 35px; height: 35px; line-height: 35px; background: rgba(0, 0, 0, 0.6); position: fixed; text-align: center; padding: 0; }
}

@media all and (max-width: 900px) {
  .mfp-arrow { -webkit-transform: scale(0.75); transform: scale(0.75); }
  .mfp-arrow-left { -webkit-transform-origin: 0; transform-origin: 0; }
  .mfp-arrow-right { -webkit-transform-origin: 100%; transform-origin: 100%; }
  .mfp-container { padding-left: 6px; padding-right: 6px; }
}

/* Print styling */
@media print {
  /* Hintergrundfarbe und Schrift anpassen */
  * {
    background-color: #FFFFFF !important;
  }

  body {
    font-size: 10pt;
  }
  /* Volle Seitenbreite */
  body, #container, #content_container, #content, #footer {
    width: auto !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  /* Seitenelemente ausblenden */
  #header, #navigation, .portrait, #zunzun-box {
    display: none;
  }

  /* Logo einblenden */
  #print_logo {
    display: block;
    text-align: right;
    margin-bottom: 1em;
  }
  #print_logo img {
    width: 250px;
    height: 65px;
  }

  /* Spezielle Optimierungen */
  h1 {
    padding-top: 0;
    font-size: 15pt;
    display: block;
  }
  h2, h3, h4 {
    padding-top: 1em;
  }
  h2 {
    font-size: 11pt;
  }
  h3, h4 {
    font-size: 10pt;
  }
  a.imagelink {
    border: none;
  }
  img {
    border: none;
  }
  .ul_titel {
    font-size: 12pt;
    background: none !important;
    padding: 30px 0 0 0;
  }
  .footer_text {
    margin-top: 20px;
    padding-top: 0;
    border-top: 1px solid black;
  }
  #content img {
    width: auto !important;
  }
  div.galerie span, div.galerien_header a, h2#alle_fotogalerien_anzeigen {
    display: none;
  }

  div.galerie img {
    margin-right: 1em;
  }
  img.img_equipment {

  }
}
