/*  IMPORTS
========================================================================================================= */
@import url("reset.css");

/* source-sans-pro-200 - latin */
@font-face {
  font-family: 'Source Sans Pro';
  font-style: normal;
  font-weight: 200;
  src: url('../fonts/source-sans-pro-v11-latin-200.eot'); /* IE9 Compat Modes */
  src: local('Source Sans Pro ExtraLight'), local('SourceSansPro-ExtraLight'),
       url('../fonts/source-sans-pro-v11-latin-200.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/source-sans-pro-v11-latin-200.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/source-sans-pro-v11-latin-200.woff') format('woff'), /* Modern Browsers */
       url('../fonts/source-sans-pro-v11-latin-200.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/source-sans-pro-v11-latin-200.svg#SourceSansPro') format('svg'); /* Legacy iOS */
}

/* source-sans-pro-regular - latin */
@font-face {
  font-family: 'Source Sans Pro';
  font-style: normal;
  font-weight: 400;
  src: url('../fonts/source-sans-pro-v11-latin-regular.eot'); /* IE9 Compat Modes */
  src: local('Source Sans Pro Regular'), local('SourceSansPro-Regular'),
       url('../fonts/source-sans-pro-v11-latin-regular.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/source-sans-pro-v11-latin-regular.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/source-sans-pro-v11-latin-regular.woff') format('woff'), /* Modern Browsers */
       url('../fonts/source-sans-pro-v11-latin-regular.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/source-sans-pro-v11-latin-regular.svg#SourceSansPro') format('svg'); /* Legacy iOS */
}

/* source-sans-pro-700 - latin */
@font-face {
  font-family: 'Source Sans Pro';
  font-style: normal;
  font-weight: 700;
  src: url('../fonts/source-sans-pro-v11-latin-700.eot'); /* IE9 Compat Modes */
  src: local('Source Sans Pro Bold'), local('SourceSansPro-Bold'),
       url('../fonts/source-sans-pro-v11-latin-700.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/source-sans-pro-v11-latin-700.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/source-sans-pro-v11-latin-700.woff') format('woff'), /* Modern Browsers */
       url('../fonts/source-sans-pro-v11-latin-700.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/source-sans-pro-v11-latin-700.svg#SourceSansPro') format('svg'); /* Legacy iOS */
}


/*  BASICS
========================================================================================================= */
body { background: #fff; font-family: 'Source Sans Pro', Arial, sans-serife; color: #000; font-size: 16px; }
a { color: #373A3E; }
a:hover { color: #B72121; }
img { max-width: 100%; height: auto; }

.clear { clear: both; }

.col1, .col2, .col3, .col4, .col5, .col6, .col7, .col8, .col9, .col10, .col1, .col12 { position: relative; float: left; margin: 0 2% 0 0; }
.col1  { width: 60px; }
.col2  { width: 140px; }
.col3  { width: 24.5%; }
.col4  { width: 32%; }
.col5  { width: 380px; }
.col6  { width: 49%; }
.col7  { width: 540px; }
.col8  { width: 66%; }
.col9  { width: 700px; }
.col10   { width: 780px; }
.col11  { width: 860px; }
.col12  { width: 940px; }
.lastcol { margin: 0; }

@media (max-width: 650px) {
  .col4, .col8 { width:100%; float: none; margin: 0 0 20px 0; }
}
@media (max-width: 500px) {
  .col1, .col2, .col3, .col4, .col5, .col6, .col7, .col8, .col9, .col10, .col1, .col12 { width: 100%; float: none; margin: 0 0 20px 0; }
}

h1 {
  font-size: 48px;
  font-weight: 700;
  text-transform: uppercase;
  color: #373A3E;
  margin-bottom: 10px;
}
h2 {
  font-size: 30px;
  font-weight: 100;
  text-transform: uppercase;
  color: #373A3E;
}
p {
  margin-bottom: 20px;
  line-height: 24px;
  color: #373A3E;
}
span {
  font-weight: 700;
}

li + li {
  margin-top: 10px;
  line-height: 24px;
}

ul + p {
  margin-top: 40px;
}

/* Back to Top */
a.back-to-top {
  font-size: 0px;
   background: #9e2a1d url('../images/top.png') no-repeat center 50%;
   position: fixed;
   bottom:30px;
   right:30px;
  width: 70px;
  height: 76px;
   transition: all 0.8s ease;
}
a.back-to-top:hover {
  -moz-opacity: .5;
  opacity: .5;
}
@media (max-width: 500px){
  a.back-to-top {
    width: 40px;
    height: 45px;
    bottom: 20px;
    right: 10px;
    background-size: 60%;
  }
}
/*  RTE 
========================================================================================================= */
h2.normal {
  font-size: 30px;
  font-weight: 100;
  text-transform: uppercase;
}
h2.bold {
  font-weight: 700;
  text-align: left;
  margin-bottom: 5px;
}
h3.uppercase {
  text-align: left;
  text-transform: uppercase;
  margin-bottom: 5px;
}
@media (max-width: 800px){
  h1 { font-size: 35px; }
  h2, h2.normal { font-size: 25px; }
}
@media (max-width: 500px){
  h1 { font-size: 25px; }
  h2, h2.normal { font-size: 18px; }
}

/*  HEADER
========================================================================================================= */
#head-wrapper {
  width: 100%;
  padding-top: 90px;
  background: #fff;
}
@media (max-width: 900px){
  #head-wrapper {
    padding-top: 95px;
  }
}
#logo-wrap {
  width: 95%;
  max-width: 940px;
  margin: 0 auto;
}
#IMGheader {
  max-height: 670px;
  overflow: hidden;
  min-width: 100%;
  position: absolute;
}
#IMGheader img {
  width: 100%;
}
#IMGheader-caption {
  position: relative;
  margin: 0 auto;
  width: 940px;
  top: 400px;
}
#IMGheader-caption h1 {
  color: #fff;
  font-size: 40px;
  font-weight: 100;
  background: rgba(55, 58, 63, .9);
  margin-bottom: 5px;
  padding: 10px;
}
#IMGheader-caption h1#first {
  width: 575px;
}
#IMGheader-caption h1#second {
  width: 625px;
}
#IMGheader-caption p {
  color: #fff;
  font-size: 14px;
  font-weight: 100;
  float: right;
  margin: 5px 250px 0 0;
  background: rgba(55, 58, 63, .9);
  padding: 5px;
}
#header-first {
  background: #eee;
  width: 100%;
  position: fixed;
  z-index: 5000;
}
nav {
  margin: 0 auto;
}
#mainnav-wrapper nav {
  float: right;
}
ul#mainnav {
  background: #373A3E none repeat scroll 0% 0%;
  height: 40px;
  padding: 5px 10px;
}
#mainnav li {
  height: 40px;
  float: left;
}
#mainnav li + li {
  margin-top: unset;
  margin-left: 20px;
}
#mainnav li a {
  color: #fff;
  text-transform: uppercase;
  line-height: 40px;
  transition: 0.5 ease;
    border-bottom: 3px solid transparent;
    text-decoration: none !important;
    width: 0px;
    white-space: nowrap;
    height: 25px;
}
#mainnav li a:hover {
  border-bottom: 2px solid #fff;
    width: 100px;
}
@media (max-width: 730px){
  #mainnav-wrapper nav {
    position: fixed;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    float: none;
    background: #373a3e;
    display: none;
  }
  ul#mainnav {
    height: auto;
    padding: 50px;
  }
  #mainnav li {
    float: none;
  }
  #mainnav li + li {
    margin-top: unset;
    margin-left: 0;
  }
  .navButton {
    position: fixed;
    z-index: 200;
    right: 10px;
    display: block;
    width: 50px;
    height: 40px;
    cursor: pointer;
    background: url('../images/navButton.png') no-repeat center;
  }
  .small .navButton {
    margin-top: 5px;
    background: url('../images/navButton_s.png') no-repeat center;
  }
  .navButton.show {
    top: 10px;
    margin: 0;
    background: url('../images/navButton_s.png') no-repeat center;
  }
}

/*  HEADER SCROLL
========================================================================================================= */
.header {
    height: 100px;
}
#header-sroll {
    position: fixed;
    z-index: 5000;
    height: 100px;
    background:#fff;
    left:0;
    top:0;
    float:left;
    width: 100%;
    -ms-transition:     all 0.3s ease-out;
    -moz-transition:    all 0.3s ease-out;
    -webkit-transition: all 0.3s ease-out;
    -o-transition:      all 0.3s ease-out;
    transition:         all 0.3s ease-out;
}
#header-sroll-sub {
    position: relative;
    z-index: 5000;
    height: 100px;
    background:#fff;
    left:0;
    top:0;
    float:left;
    width: 100%;
    -ms-transition:     all 0.3s ease-out;
    -moz-transition:    all 0.3s ease-out;
    -webkit-transition: all 0.3s ease-out;
    -o-transition:      all 0.3s ease-out;
    transition:         all 0.3s ease-out;
  margin-bottom: 40px;
}
#header-sroll #logo,
#header-sroll-sub #logo {
  background: url('../images/logo.png') no-repeat;
  height: 60px;
  float: left;
}
#header-sroll.small #logo,
#header-sroll-sub.small #logo  {
  background: url('../images/logo-small.png') no-repeat;
}
#header-sroll #mainnav-wrapper,
#header-sroll-sub #mainnav-wrapper {
  margin: 0 auto;
  width: 95%;
  max-width: 940px;
  padding: 25px 0 0 0;
}
#header-sroll.small #mainnav-wrapper,
#header-sroll-sub.small #mainnav-wrapper  {
  margin-top: -15px;
}
#header-sroll.small,
#header-sroll-sub.small {
  background: #373A3E none repeat scroll 0% 0%;
    height: 70px;
    line-height: 35px;
}
#header-sroll.small #mainnav li a,
#header-sroll-sub.small #mainnav li a {
  color: #fff;
  text-decoration: none !important;
}
#header-sroll.small #mainnav li a:hover,
#header-sroll-sub.small #mainnav li a:hover {
  /*opacity: .5;
  -moz-opacity: .5;*/
  border-bottom: 2px solid #fff;
}
#header-sroll.small #mainnav li.current a,
#header-sroll-sub.small #mainnav li.current a {
  /*opacity: .5;
  -moz-opacity: .5;*/
  border-bottom: 2px solid #fff;
}
#owl-demo.owl-carousel.owl-theme {
  height: 340px !important;
  margin-top: 145px !important;
}

/*  CONTENT
========================================================================================================= */
.content-wrap {
  width: 95%;
  max-width: 940px;
  margin: 0 auto;
}
.content-wrap .content-wrap {
  width: 100%;
}
.divider {
  background: url('../images/divider.png') no-repeat center;
  padding: 40px;
}
#anfahrt {
  padding-top: 70px;
}
#ueber-uns, #partner, #leistungen, #kontakt, #anfahrt, #impressum {
  width: 100%;
  padding: 100px 0 100px 0;
}

/* Über Uns
==========================================================*/
#ueber-uns {
  background: #ebebeb;
  margin-top: -10px;
}
/* Slideshow with Thumbnails */
.gallery-headline .page-count { float: right; font-size: 12px; }
#gallery-slideshow-wrapper { max-width: 738px; width: 100%; overflow: hidden; position: relative; }
.slideshow-elements { font-size: 0; display: block; width: 100%; }
.slideshow-element { display: block; width: 100%; position: absolute; }
#gallery-slideshow-wrapper .slideshow-image { overflow: hidden; max-width: 830px; width: 100%; }
#gallery-slideshow-wrapper .slideshow-image img { display: block; float: left; width: 100%; }
#gallery-slideshow-wrapper .slideshow-image .caption { box-sizing: border-box; background: #373A3E; bottom: -25px; padding: 10px; color: #fff; font-size: 16px; line-height: 22px; font-weight: 400; position: absolute; width: 100%; }
#gallery-thumbnails { overflow: hidden; position: relative; width: 200px; height: 422px; float: right; margin-top: -393px; } /*height 422*/
#gallery-thumbnails ul { list-style: none; max-width: 100%; margin-top: 0 !important; margin-left: 0; }
#gallery-thumbnails ul:after { content: ''; display: block; clear: both; }
#gallery-thumbnails ul li { display: block; float: left; box-sizing: border-box; width: 50%; padding: 3px; -moz-opacity: .4; opacity: .4; margin-top: unset; }
#gallery-thumbnails ul li:hover, #gallery-thumbnails ul li.current { opacity: 1; -moz-opacity: 1; transition: 0.3s ease; }
#gallery-thumbnails ul li img { display: block; }
#gallery-thumbnails ul li.next { margin-right: 0; }

.caption a { color: #fff; text-decoration: none; }
.caption a:hover { color: #fff; text-decoration: underline; }

@media (max-width: 990px){
  #gallery-slideshow-wrapper { height: auto; max-width: 940px; }
  #gallery-slideshow-wrapper .slideshow-image { max-width: 940px; }
  #gallery-thumbnails { width: 100%; max-width: 940px; margin: 0; float: none; height: auto; margin-top: 10px; }
  #gallery-thumbnails ul { width: 100% !important; margin-top: 0 !important; }
  #gallery-thumbnails ul li { float: left; width: 12.5%; max-height: unset; }
}

/* Partner
==========================================================*/
#partner {
  background: #fff;
}
.partner img {
  margin: 20px 0 0 0;}
@media (max-width: 850px){
  .partner h2 {
    margin-top: 20px !important;
  }
}

/* Unsere Leistungen
==========================================================*/
#leistungen {
  background: #ebebeb;
}
.acContainer {
  margin-top: 40px;
}
.acCC {
  display: none;
}
.accoTitle.acTC h2 {
  text-transform: none;
  font-weight: 700;
  text-align: left !important;
  margin-bottom: 20px;
  cursor: pointer;
  max-width: 780px;
  transition: color 0.5 ease;
}
.accoTitle.acTC h2:hover {
  color: #9E2A1D;
}


#partner .accoTitle.acTC h2 { text-transform: uppercase !important; margin-bottom: 5px; font-weight: normal !important; font-size: 16px !important; text-decoration: underline !important;}


.arrowDown {
  background: url('../images/down.png') no-repeat scroll 100% 70%;
}
.arrowDown:hover {
  background: url('../images/downhover.png') no-repeat scroll 100% 70%;
}
.arrowUp {
  background: url('../images/close.png') no-repeat scroll 100% 70%;
  transition: color 0.5 ease;
}
.arrowUp:hover {
  background: url('../images/closehover.png') no-repeat scroll 100% 70%;
}
.accordion.acCC p {
  background: #fff;
  padding: 20px 20px 20px 20px;
  line-height: 24px;
  max-width: 740px;
}

/* Kontakt
==========================================================*/
#kontakt {
  background: #fff;
}
.zentriert {
  margin: 40px 0 40px 0;
  text-align: center !important;
}
.zentriert h2 {
  text-align: center !important;
}

/* Anfahrt
==========================================================*/
#anfahrt {
  background: #ebebeb;
}
#anfahrt .content-wrap .col4.lastcol img  {
  margin-bottom: 20px;
}
#distribution-map {
  display: block;
  height: 530px;
  width: 100%;
  margin: 0;
}
.pin-container {
  height: 100%;
  padding: 10px;
  font-size: 16px;
  line-height: 24px !important;
  font-weight: 400;
  margin-bottom: 0px !Important;
}
.pin-container b {
  font-size: 16px;
  line-height: 24px;
  font-weight: 700;
}
.pin-container #route {
  margin-top: 10px;
  transition: all 0.3s ease;
}
.pin-container #route a {
  padding: 10px 50px 10px 50px;
  background: #373A3E;
  color: #fff;
  text-decoration: none;
  transition: 0.3s ease;
}
.pin-container #route a:hover {
  color: #fff !important;
  background: #9e2a1d;
  text-decoration: none;
}

/* ===========================
   ====== Contact Form =======
   =========================== */

input, textarea {
  font-size: 13px;
  font-family: "Source Sans Pro" ,Arial, sans-serife;
  padding: 10px;
  border: 1px solid #e1e1e1;
  width: 300px;
  color: #212121;
  box-shadow: rgba(0, 0, 0, 0.1) 0px 0px 1px;
  -moz-box-shadow: rgba(0, 0, 0, 0.1) 0px 0px 1px;
  -webkit-box-shadow: rgba(0, 0, 0, 0.1) 0px 0px 1px;
}
textarea {
  width: 300px;
  height: 150px;
  max-width: 400px;
  line-height: 18px;
}
input:hover, textarea:hover,
input:focus, textarea:focus {
  cursor: pointer;
  border-color: 1px solid #212121;
  box-shadow: rgba(0, 0, 0, 0.2) 0px 0px 2px;
  -moz-box-shadow: rgba(0, 0, 0, 0.2) 0px 0px 2px;
  -webkit-box-shadow: rgba(0, 0, 0, 0.2) 0px 0px 2px;
}
.form label {
  margin-left: 10px;
  color: #999999;
}
.form p {
  margin-bottom: 10px !important;
  line-height: 0px !important;
}
/* ===========================
   ====== Submit Button ======
   =========================== */

.submit input {
  width: 100px;
  height: 40px;
  background-color: #9e2a1d;
  color: #fff;
  font-weight: 700;
  border-radius: 3px;
  -moz-border-radius: 3px;
  -webkit-border-radius: 3px;
  box-shadow: none !important;
  cursor: pointer;
  text-transform: uppercase;
  transition: 0.5s ease;
}
.submit input:hover {
  -moz-opacity: .5;
  opacity: .5;
}

/* Impressum
==========================================================*/
#impressum {
  background: #fff;
}
#impressum .content-wrap .col4.lastcol {
  -moz-opacity: .5;
  opacity: .5;
}

/* Footer
========================================================== */
#footer {
  background: #373A3E none repeat scroll 0% 0%;
}
#footer .content-wrap {
  padding: 25px 0;
}
#footer .content-wrap:after {
  content: '';
  display: block;
  clear: both;
}
#footer .content-wrap p {
  margin-bottom: 0px !important;
  color: #fff !important;
}
#footer .content-wrap .col4 p a {
  color: #fff;
}
#footer .content-wrap .col4 p a:hover {
  color: #B72121;
}
#footer .content-wrap .col6.lastcol img  {
  float: left;
  margin-right: 20px;
}
#footer .content-wrap .col6.lastcol ul {
  margin-top: 57px;
}
#footer .content-wrap .col6.lastcol ul li {
  float: left;
  margin-right: 10px;
}

#mainnav { list-style: none; }

#impressum ol, ul { list-style: disc; margin-left: 15px; }

#impressum li { margin-bottom: 20px; line-height: 24px; color: #373A3E; }


#powermail_fieldwrap_11 legend { display: none; }
#powermail_field_datenschutz_1 {float: left; width: 25px;}


