html {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
*, *:before, *:after {
  -webkit-box-sizing: inherit;
  -moz-box-sizing: inherit;
  box-sizing: inherit;
  }

/* open-sans-300 - latin */
@font-face {
  font-family: 'Open Sans';
  font-style: normal;
  font-weight: 300;
  src: url('../fonts/open-sans-v15-latin-300.eot'); /* IE9 Compat Modes */
  src: local('Open Sans Light'), local('OpenSans-Light'),
       url('../fonts/open-sans-v15-latin-300.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/open-sans-v15-latin-300.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/open-sans-v15-latin-300.woff') format('woff'), /* Modern Browsers */
       url('../fonts/open-sans-v15-latin-300.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/open-sans-v15-latin-300.svg#OpenSans') format('svg'); /* Legacy iOS */
}

/* open-sans-regular - latin */
@font-face {
  font-family: 'Open Sans';
  font-style: normal;
  font-weight: 400;
  src: url('../fonts/open-sans-v15-latin-regular.eot'); /* IE9 Compat Modes */
  src: local('Open Sans Regular'), local('OpenSans-Regular'),
       url('../fonts/open-sans-v15-latin-regular.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/open-sans-v15-latin-regular.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/open-sans-v15-latin-regular.woff') format('woff'), /* Modern Browsers */
       url('../fonts/open-sans-v15-latin-regular.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/open-sans-v15-latin-regular.svg#OpenSans') format('svg'); /* Legacy iOS */
}

/* open-sans-600 - latin */
@font-face {
  font-family: 'Open Sans';
  font-style: normal;
  font-weight: 600;
  src: url('../fonts/open-sans-v15-latin-600.eot'); /* IE9 Compat Modes */
  src: local('Open Sans SemiBold'), local('OpenSans-SemiBold'),
       url('../fonts/open-sans-v15-latin-600.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/open-sans-v15-latin-600.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/open-sans-v15-latin-600.woff') format('woff'), /* Modern Browsers */
       url('../fonts/open-sans-v15-latin-600.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/open-sans-v15-latin-600.svg#OpenSans') format('svg'); /* Legacy iOS */
}

/* open-sans-700 - latin */
@font-face {
  font-family: 'Open Sans';
  font-style: normal;
  font-weight: 700;
  src: url('../fonts/open-sans-v15-latin-700.eot'); /* IE9 Compat Modes */
  src: local('Open Sans Bold'), local('OpenSans-Bold'),
       url('../fonts/open-sans-v15-latin-700.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/open-sans-v15-latin-700.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/open-sans-v15-latin-700.woff') format('woff'), /* Modern Browsers */
       url('../fonts/open-sans-v15-latin-700.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/open-sans-v15-latin-700.svg#OpenSans') format('svg'); /* Legacy iOS */
}


body {
    color: #8f8f8f;
    background: #fff;
    font-family: 'Open Sans', sans-serif;
    font-weight: 300;
    -webkit-font-smoothing: antialiased;
    padding: 0;
    margin: 0;
}

a {
    text-decoration: none;
}

h1,h2 {
    font-size: 30px;
    line-height: 1.8;
    text-transform: uppercase;
    color: #54042d;
}

li {
    margin-left: -25px;
}

h3 {
    color: #fff;
}

p {
    margin-bottom: 20px;
    font-size: 17px;
    line-height: 2;
}

.row {
    width: 100%;
    margin: 0 auto;
    position: relative;
    padding: 0 2%;
}

.content {
    max-width: 980px;
    width: 100%;
    margin: 0 auto;
    padding: 120px 0% 50px;
}

.main_header .row .content {
    padding: 0;
}

.light {
    background: url(../img/dust.png); /* Background pattern from Subtle Patterns */
}

.dark {
    background: url(../img/dust-1.png); /* Background pattern from Subtle Patterns */
}

.dark h2 {
    color: #fff;
}

.background {
    background: rgba(0, 0, 0, 0) url("../img/bild.jpg") no-repeat fixed center center / cover ;
    color: #54042d;
    letter-spacing: 2px;
    min-height: 60vh;
    padding-top: 266px;
    position: relative;
    text-align: center;
}

#hero {
    background: rgba(0, 0, 0, 0) url("../img/header.jpg") no-repeat fixed center center / cover ;
    color: #54042d;
    letter-spacing: 2px;
    min-height: 100vh;
    padding-top: 266px;
    position: relative;
    text-align: center;
}

#hero h2 {
    font-size: 40px;
    line-height: 1.3;
    text-transform: uppercase;
	text-shadow: 0px 0px 60px rgba(255, 255, 255, 0.80);
}

#hero h2 span {
    font-size: 25px;
    color: #54042d;
    border-bottom: 2px solid #ffffff;
    padding-bottom: 12px;
    line-height: 3;
	text-shadow: 0px 0px 60px rgba(255, 255, 255, 0.80);
}

.main_header {
    position: fixed;
    top: 0px;
    max-height: 100px;
    z-index: 999;
    width: 100%;
    padding-top: 5px;
    background: none;
    overflow: hidden;
    transition: all 0.3s;
    opacity: 0;
    top: -100px;
    padding-bottom: 6px;
}

.datenschutz {
    width: 250px;
    height: 30px;
    background: #54042d;
    position: fixed;
    z-index: 1000;
    text-align: center;
    bottom: 0;
    text-decoration: none;
    color: #fff;
    font-size: 12px;
    padding-top: 8px;
}

.datenschutz a {
    color: #fff;
    text-decoration: none;
}

.datenschutz a:hover {
    text-decoration: underline;
}


.fa-arrow-circle-o-up {
    color: #c77d96;
}

footer {
    width: 100%;
/*    min-height: 365px !important;*/
    background-color: rgba(84, 4, 45, 1.0);
    color: #fff;
}

footer a {
    color: #fff;
}

span {
    font-weight: 600;
}

.content_footer {
    max-width: 980px;
    width: 100%;
    margin: 0 auto;
    padding: 50px 0% 50px;
}

.content_footer_inner {
    width: 300px;
    float: left;
}

.content_footer_inner ul {
    width: 250px;
    margin-left: -15px;
}

.content_footer_inner ul li {
    list-style: none;
    font-size: 14px;
    line-height: 180%;
}

.content_footer_inner img {
    float: left;
}

.content_footer_inner_01 {
    width: 300px;
    float: left;
}


.yt {
  position: relative; 
  height: 0; 
  overflow: hidden; 
  width: 100%;
  height: auto;
}
.yt iframe {

  position: absolute; 
  top: 0; 
  left: 0; 
  width: 100%; 
  height: 100%; 
}
/* ratio 4x3 */
.yt.ratio4x3 {
  padding-bottom: 75%;
}

.box {
    width: 320px;
    height: 295px;
    padding: 15px 30px;
    margin-right: 5px;
    float: left;
    border: 1px #ccc solid;
}

.box h3 {
    text-align: center;
    color: #54042d;
}

.box p {
    text-align: center;
    font-size: 14px;
    line-height: 150%;
}

.more a {
    display: block;
    width: 30%;
    padding: 2%;
    background: rgba(84, 4, 45, 0.5);
    border-radius: 40px;
    border: 2px solid #54042d;
    color: #fff;
    text-align: center;
}


@media only screen and (max-width: 1024px) {

footer {
    width: 100%;
    min-height: 700px !important;
    background-color: rgba(84, 4, 45, 1.0);
    color: #fff;
    }
    iframe.ggmaps {
        width: 100%;
        height: 300px;
        margin-bottom: 50px;
    }
.content_footer_inner_01 {
    width: 100%;
    float: left;
}

}

@media only screen and (max-width: 766px) {

.more a {
    width: 100%;
    padding: 2%;
}
    .main_header {
        padding-top: 25px;
    }
}

.open-nav {
    max-height: 400px !important;
}

.open-nav .mobile-toggle {
    transform: rotate(-90deg);
}

.sticky {
    background-color: rgba(84, 4, 45, 1.0);
    opacity: 1;
    top: 0px;
}

.logo {
    width: 250px;
    font-size: 25px;
    color: #8f8f8f;
    float: left;
    display: block;
    margin-top: 0px;
    line-height: 1;
    margin-bottom: 10px;
}
.cleaner {
    clear: both;
}


nav {
    float: right;
    width: 60%;
    margin-top: 30px;
}

@media only screen and (max-width: 766px) {

.logo {
    margin-top: -30px;

}

.logo img {
    width: 100%;
    height: auto;
}
    nav {
        width: 100%;
    }
}

nav ul {
    list-style: none;
    overflow: hidden;
    text-align: right;
    float: right;
}

@media only screen and (max-width: 766px) {
    nav ul {
        padding-top: 10px;
        margin-bottom: 22px;
        float: left;
        text-align: center;
        width: 100%;
    }
}

nav ul li {
    display: inline-block;
    margin-left: 35px;
    line-height: 1.5;
}

@media only screen and (max-width: 766px) {
    nav ul li {
        width: 100%;
        padding: 7px 0;
        margin: 0;
    }
}

nav ul a {
    color: #fff;
    text-transform: uppercase;
    font-size: 12px;
    border-bottom: 1px solid transparent;
    transition: all 500ms linear;
}

nav ul a.active {
    border-bottom: 1px solid #fff;
    transition: all 500ms 100ms linear;
}

.mobile-toggle {
    display: none;
    cursor: pointer;
    font-size: 20px;
    position: absolute;
    right: 22px;
    top: 22px;
    width: 30px;
    transition: all 200ms ease-in;
}

@media only screen and (max-width: 766px) {
    .mobile-toggle {
        display: block;
    }
}

.mobile-toggle span {
    width: 30px;
    height: 4px;
    margin-bottom: 6px;
    border-radius: 1000px;
    background: #fff;
    display: block;
}

.mouse {
    display: block;
    margin: 0 auto;
    width: 26px;
    height: 46px;
    background: rgba(84, 4, 45, 0.5);
    border-radius: 13px;
    border: 2px solid #54042d;
    position: absolute;
    bottom: 95px;
    position: absolute;
    left: 51%;
    margin-left: -24px;
}

.mouse span {
    display: block;
    margin: 6px auto;
    width: 5px;
    height: 5px;
    border-radius: 4px;
    background: #ffffff;
    border: 1px solid transparent;
    animation-duration: 1s;
    animation-fill-mode: both;
    animation-iteration-count: infinite;
    animation-name: scroll;
}

@keyframes scroll {
    0% {
        opacity: 1;
        transform: translateY(0);
    }
    100% {
        opacity: 0;
        transform: translateY(20px);
    }
}

.scrollup {
    color: rgba(0, 0, 0, 0.3);
    font-size: 40px;
    text-align: center;
    line-height: 40px;
    width: 40px;
    height: 40px;
    position: fixed;
    display: none;
    bottom: 50px;
    right: 25px;
}

@media only screen and (max-width: 420px) {
#hero h2 {
    font-size: 30px;
    line-height: 1.3;
    text-transform: uppercase;
}

#hero h2 span {
    font-size: 15px;
    color: #54042d;
    border-bottom: 2px solid #ffffff;
    padding-bottom: 12px;
    line-height: 3;
}

}