/*!
Theme Name: tcherisau
Author: marke17 Digital Agentur St.Gallen
Author URI: https://www.marke17.com
Version: 1.0.1
*/

/*--------------------------------------------------------------
# RESET CSS
--------------------------------------------------------------*/
.mb-0{margin-bottom:0}.mb-5{margin-bottom:5px}.mb-10{margin-bottom:10px}.mb-15{margin-bottom:15px}.mb-20{margin-bottom:20px}.mb-25{margin-bottom:25px}.mb-30{margin-bottom:30px}.mb-40{margin-bottom:40px}.mb-50{margin-bottom:50px}.mb-60{margin-bottom:60px}.mb-65{margin-bottom:65px}.mb-70{margin-bottom:70px}.mb-80{margin-bottom:80px}.mb-90{margin-bottom:90px}.mb-100{margin-bottom:100px}.mb-120{margin-bottom:120px}.mb-150{margin-bottom:150px}.mb-180{margin-bottom:180px}.mb-200{margin-bottom:200px}.mb-250{margin-bottom:250px}.mr-0{margin-right:0}.mr-5{margin-right:5px}.mr-10{margin-right:10px}.mr-15{margin-right:15px}.mr-20{margin-right:20px}.mr-25{margin-right:25px}.mr-30{margin-right:30px}.mr-40{margin-right:40px}.mr-50{margin-right:50px}.mr-60{margin-right:60px}.mr-70{margin-right:70px}.mr-80{margin-right:80px}.mr-90{margin-right:90px}.mr-100{margin-right:100px}.mr-150{margin-right:150px}.mr-200{margin-right:200px}.mr-250{margin-right:250px}.mt-0{margin-top:0}.mt-5{margin-top:5px}.mt-10{margin-top:10px}.mt-15{margin-top:15px}.mt-20{margin-top:20px}.mt-25{margin-top:25px}.mt-30{margin-top:30px}.mt-40{margin-top:40px}.mt-50{margin-top:50px}.mt-60{margin-top:60px}.mt-70{margin-top:70px}.mt-80{margin-top:80px}.mt-90{margin-top:90px}.mt-100{margin-top:100px}.mt-120{margin-top:120px}.mt-150{margin-top:150px}.mt-180{margin-top:180px}.mt-200{margin-top:200px}.mt-250{margin-top:250px}.mt-280{margin-top:280px}.ml-0{margin-left:0}.ml-5{margin-left:5px}.ml-10{margin-left:10px}.ml-15{margin-left:15px}.ml-20{margin-left:20px}.ml-25{margin-left:25px}.ml-30{margin-left:30px}.ml-40{margin-left:40px}.ml-50{margin-left:50px}.ml-60{margin-left:60px}.ml-70{margin-left:70px}.ml-80{margin-left:80px}.ml-90{margin-left:90px}.ml-100{margin-left:100px}.ml-150{margin-left:150px}.ml-200{margin-left:200px}.ml-250{margin-left:250px}.pb-0{padding-bottom:0}.pb-5{padding-bottom:5px}.pb-10{padding-bottom:10px}.pb-15{padding-bottom:15px}.pb-20{padding-bottom:20px}.pb-25{padding-bottom:25px}.pb-30{padding-bottom:30px}.pb-40{padding-bottom:40px}.pb-50{padding-bottom:50px}.pb-60{padding-bottom:60px}.pb-70{padding-bottom:70px}.pb-80{padding-bottom:80px}.pb-90{padding-bottom:90px}.pb-100{padding-bottom:100px}.pb-120{padding-bottom:120px}.pb-150{padding-bottom:150px}.pb-200{padding-bottom:200px}.pb-250{padding-bottom:250px}.pt-0{padding-top:0}.pt-5{padding-top:5px}.pt-10{padding-top:10px}.pt-15{padding-top:15px}.pt-20{padding-top:20px}.pt-25{padding-top:25px}.pt-30{padding-top:30px}.pt-40{padding-top:40px}.pt-50{padding-top:50px}.pt-60{padding-top:60px}.pt-70{padding-top:70px}.pt-80{padding-top:80px}.pt-90{padding-top:90px}.pt-100{padding-top:100px}.pt-120{padding-top:120px}.pt-150{padding-top:150px}.pt-200{padding-top:200px}.pt-250{padding-top:250px}.pr-0{padding-right:0}.pr-5{padding-right:5px}.pr-10{padding-right:10px}.pr-15{padding-right:15px}.pr-20{padding-right:20px}.pr-25{padding-right:25px}.pr-30{padding-right:30px}.pr-40{padding-right:40px}.pr-50{padding-right:50px}.pr-60{padding-right:60px}.pr-70{padding-right:70px}.pr-80{padding-right:80px}.pr-90{padding-right:90px}.pr-100{padding-right:100px}.pr-150{padding-right:150px}.pr-200{padding-right:200px}.pr-250{padding-right:250px}.pl-0{padding-left:0}.pl-5{padding-left:5px}.pl-10{padding-left:10px}.pl-15{padding-left:15px}.pl-20{padding-left:20px}.pl-25{padding-left:25px}.pl-30{padding-left:30px}.pl-40{padding-left:40px}.pl-50{padding-left:50px}.pl-60{padding-left:60px}.pl-70{padding-left:70px}.pl-80{padding-left:80px}.pl-90{padding-left:90px}.pl-100{padding-left:100px}.pl-150{padding-left:150px}.pl-200{padding-left:200px}.pl-250{padding-left:250px}.h-10vh{height:10vh}.h-20vh{height:20vh}.h-30vh{height:30vh}.h-40vh{height:40vh}.h-50vh{height:50vh}.h-60vh{height:60vh}.h-70vh{height:70vh}.h-80vh{height:80vh}.h-90vh{height:90vh}.h100vh{height:calc(var(--vh, 1vh) * 100)}.h-110vh{height:110vh}.h-120vh{height:120vh}.h-130vh{height:130vh}.h-140vh{height:140vh}.h-150vh{height:150vh}.pt-5vh{padding-top:5vh}.pt-10vh{padding-top:10vh}.pt-15vh{padding-top:15vh}.pt-20vh{padding-top:20vh}.pt-25vh{padding-top:25vh}.pt-30vh{padding-top:30vh}.pt-40vh{padding-top:40vh}.pt-50vh{padding-top:50vh}.pt-60vh{padding-top:60vh}.pt-70vh{padding-top:70vh}.pt-80vh{padding-top:80vh}.pt-90vh{padding-top:90vh}.pt-calc(var(--vh, 1vh) * 100){padding-top:calc(var(--vh, 1vh) * 100)}.pt-110vh{padding-top:110vh}.pt-120vh{padding-top:120vh}.pt-130vh{padding-top:130vh}.pt-140vh{padding-top:140vh}.pt-150vh{padding-top:150vh}
@media screen and (max-width: 767px) {
  .mmb-0{margin-bottom:0}.mmb-5{margin-bottom:5px}.mmb-10{margin-bottom:10px}.mmb-15{margin-bottom:15px}.mmb-20{margin-bottom:20px}.mmb-25{margin-bottom:25px}.mmb-30{margin-bottom:30px}.mmb-40{margin-bottom:40px}.mmb-50{margin-bottom:50px}.mmb-60{margin-bottom:60px}.mmb-70{margin-bottom:70px}.mmb-80{margin-bottom:80px}.mmb-90{margin-bottom:90px}.mmb-100{margin-bottom:100px}.mmb-150{margin-bottom:150px}.mmb-200{margin-bottom:200px}.mmb-250{margin-bottom:250px}.mmr-0{margin-right:0}.mmr-5{margin-right:5px}.mmr-10{margin-right:10px}.mmr-15{margin-right:15px}.mmr-20{margin-right:20px}.mmr-25{margin-right:25px}.mmr-30{margin-right:30px}.mmr-40{margin-right:40px}.mmr-50{margin-right:50px}.mmr-60{margin-right:60px}.mmr-70{margin-right:70px}.mmr-80{margin-right:80px}.mmr-90{margin-right:90px}.mmr-100{margin-right:100px}.mmr-150{margin-right:150px}.mmr-200{margin-right:200px}.mmr-250{margin-right:250px}.mmt-0{margin-top:0}.mmt-5{margin-top:5px}.mmt-10{margin-top:10px}.mmt-15{margin-top:15px}.mmt-20{margin-top:20px}.mmt-25{margin-top:25px}.mmt-30{margin-top:30px}.mmt-40{margin-top:40px}.mmt-50{margin-top:50px}.mmt-60{margin-top:60px}.mmt-65{margin-top:65px}.mmt-70{margin-top:70px}.mmt-80{margin-top:80px}.mmt-90{margin-top:90px}.mmt-100{margin-top:100px}.mmt-150{margin-top:150px}.mmt-160{margin-top:160px}.mmt-200{margin-top:200px}.mmt-250{margin-top:250px}.mml-0{margin-left:0}.mml-5{margin-left:5px}.mml-10{margin-left:10px}.mml-15{margin-left:15px}.mml-20{margin-left:20px}.mml-25{margin-left:25px}.mml-30{margin-left:30px}.mml-40{margin-left:40px}.mml-50{margin-left:50px}.mml-60{margin-left:60px}.mml-70{margin-left:70px}.mml-80{margin-left:80px}.mml-90{margin-left:90px}.mml-100{margin-left:100px}.mml-150{margin-left:150px}.mml-200{margin-left:200px}.mml-250{margin-left:250px}.mpb-0{padding-bottom:0}.mpb-5{padding-bottom:5px}.mpb-10{padding-bottom:10px}.mpb-15{padding-bottom:15px}.mpb-20{padding-bottom:20px}.mpb-25{padding-bottom:25px}.mpb-30{padding-bottom:30px}.mpb-40{padding-bottom:40px}.mpb-50{padding-bottom:50px}.mpb-60{padding-bottom:60px}.mpb-70{padding-bottom:70px}.mpb-80{padding-bottom:80px}.mpb-90{padding-bottom:90px}.mpb-100{padding-bottom:100px}.mpb-150{padding-bottom:150px}.mpb-200{padding-bottom:200px}.mpb-250{padding-bottom:250px}.mpt-0{padding-top:0}.mpt-5{padding-top:5px}.mpt-10{padding-top:10px}.mpt-15{padding-top:15px}.mpt-20{padding-top:20px}.mpt-25{padding-top:25px}.mpt-30{padding-top:30px}.mpt-40{padding-top:40px}.mpt-50{padding-top:50px}.mpt-60{padding-top:60px}.mpt-70{padding-top:70px}.mpt-80{padding-top:80px}.mpt-90{padding-top:90px}.mpt-100{padding-top:100px}.mpt-150{padding-top:150px}.mpt-200{padding-top:200px}.mpt-250{padding-top:250px}.mpr-0{padding-right:0}.mpr-5{padding-right:5px}.mpr-10{padding-right:10px}.mpr-15{padding-right:15px}.mpr-20{padding-right:20px}.mpr-25{padding-right:25px}.mpr-30{padding-right:30px}.mpr-40{padding-right:40px}.mpr-50{padding-right:50px}.mpr-60{padding-right:60px}.mpr-70{padding-right:70px}.mpr-80{padding-right:80px}.mpr-90{padding-right:90px}.mpr-100{padding-right:100px}.mpr-150{padding-right:150px}.mpr-200{padding-right:200px}.mpr-250{padding-right:250px}.mpl-0{padding-left:0}.mpl-5{padding-left:5px}.mpl-10{padding-left:10px}.mpl-15{padding-left:15px}.mpl-20{padding-left:20px}.mpl-25{padding-left:25px}.mpl-30{padding-left:30px}.mpl-40{padding-left:40px}.mpl-50{padding-left:50px}.mpl-60{padding-left:60px}.mpl-70{padding-left:70px}.mpl-80{padding-left:80px}.mpl-90{padding-left:90px}.mpl-100{padding-left:100px}.mpl-150{padding-left:150px}.mpl-200{padding-left:200px}.mpl-250{padding-left:250px}
}
.padding0{padding: 0 !important;}.margin0{margin: 0 !important;}

html, body {
overflow-x: hidden;
width: 100%;
}
body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,
form,fieldset,input,textarea,p,blockquote,th,td {
 padding: 0;
 margin: 0;
}
main {
 flex: 1 0 auto;
 -ms-flex: 1 0 auto;
 -webkit-flex: 1 0 auto;
}
.site-main {
  margin-top: 65px;
}
body {
 display: -webkit-box;
 display: -ms-flexbox;
 display: -webkit-flex;
 display: flex;
 flex-direction: column;
 min-height: calc(var(--vh, 1vh) * 100);
 overflow-x: hidden;
 margin-left:auto;
 margin-right:auto;
}

@media screen and (min-width: 768px) {
  .site-main {
    margin-top: 80px;
  }
  
}

*, ::before, ::after {
 -webkit-font-smoothing: antialiased;
 -moz-osx-font-smoothing: grayscale;
 -webkit-box-sizing: border-box;
 -moz-box-sizing: border-box;
 box-sizing: border-box;
}
.no_scroll {
 overflow: hidden;
}
a {
	text-decoration:none;
}
table {
 border-spacing: 0;
}
fieldset,img {
 border: 0;
}
address,caption,cite,code,dfn,em,strong,th,var {
 font-weight: normal;
 font-style: normal;
}
strong,
.strong{
	font-weight: bold;
}
ol,ul {
 list-style: none;
 margin:0;
 padding:0;
}
caption,th {
 text-align: left;
}
h1,h2,h3,h4,h5,h6 {
}
q:before,q:after {
 content:'';
}
abbr,acronym { border: 0;
}
.img_100 img,
img.img_100 {
  width: 100%;
  max-width: 100%;
	height: auto;
}
.img_max100 img,
img.img_max100 {
  max-width: 100%;
	height: auto;
}
.background_cover {
  background-repeat: no-repeat;
  background-attachment: scroll;
  background-size: cover;
  background-position: center;
}
.background_contain {
  background-repeat: no-repeat;
  background-attachment: scroll;
  background-size: contain;
  background-position: center;
}
.background_cover img,
.background_cover video {
   height: 100%;
   width: 100%;
   object-fit: cover;
}
.background_contain img {
   height: 100%;
   width: 100%;
   object-fit: contain;
}
.object_contain{
  object-fit: contain;
}
.hide {
   display: none !important;
}
.hidden {
	position: absolute;
	overflow: hidden;
	width: 0;
	height: 0;
	pointer-events: none;
}
.offscreen {
 position: absolute;
 width: 1px;
 height: 1px;
 margin: -1px;
 padding: 0;
 overflow: hidden;
 clip: rect(0,0,0,0);
 border: 0;
}
.inline{
 display: inline !important;
}
.inline_block {
 display: inline-block !important;
}
.block {
 display: block !important;
}
.pos_absolute {
 position: absolute !important;
}
.pos_relative {
 position: relative !important;
}
.pos_fixed {
  position: fixed !important;
 }
.w100 {
  width: 100%;
}
.h100 {
  height: 100%;
}
.clearfix::before,
.clearfix::after {
  content: " ";
  display: table;
}
.clearfix::after {
  clear: both;
}
.clearfix {
  *zoom: 1; /* Für den IE6 und IE7 */
}
.nowrap {
  white-space: nowrap;
  hyphens: none;
}
@media screen and (max-width: 767px) {
 .hide_mobile {
   display: none !important;
 }
}
@media screen and (min-width: 768px) {
 .show_mobile {
   display: none !important;
 }
}

/*Flickity*/
.flickity-prev-next-button{
  width: 18px;
  height: 18px;
  filter: drop-shadow(0px 0px 4px rgba(0, 0, 0, 0.25));
  background: none;
}
.flickity-prev-next-button:hover{
  background: none;
}
.flickity-prev-next-button.previous {
  left: 20px;
}
.flickity-prev-next-button.next {
  right: 20px;
}
.flickity-prev-next-button .flickity-button-icon {
  display: none;
}
.flickity-prev-next-button::after {
  content: "";
  position: absolute;
  width: 18px;
  height: 18px;
  background-repeat: no-repeat;
  background-position: center;
  top: 0;
}
.flickity-prev-next-button.next::after {
  background-image: url(img/pfeil_slider_next.svg);
  right: 0;
}
.flickity-prev-next-button.previous::after {
  background-image: url(img/pfeil_slider_prev.svg);
  left: 0;
}


@media screen and (min-width: 768px) {
  .flickity-prev-next-button{
    width: 36px;
    height: 36px;
  }
  .flickity-prev-next-button::after {
    width: 36px;
    height: 36px;
  }
  .flickity-prev-next-button.next {
    right: 30px;
  }
  .flickity-prev-next-button.previous {
    left: 30px;
  }
}

/* Ninja Forms */
.nf-form-content{
  max-width: none !important;
}
/* -------------------------------------------------------> Formularlabel */
.nf-form-content label {
  color: #000;
  font-size: 16px;
  font-family: 'Montserrat', 'Neuzeit S LT W00 Book Heavy', Helvetica, Arial, sans-serif;
  font-weight: normal !important;
}
/* -------------------------------------------------------> Formularfelder */
.nf-form-content .list-select-wrap .nf-field-element > div,
.nf-form-content input:not([type="button"]),
.nf-form-content textarea,
.nf-form-content .listselect-wrap .nf-field-element div,
.nf-form-content .ninja-forms-field {
  padding: 5px 10px !important;
  color: #000 !important;
  font-size: 15px !important;
  background-color: #fff !important;
  border: 2px solid #000 !important;
  border-color: #000 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  transition: all .3s !important;
}
.nf-form-content .list-select-wrap .nf-field-element > div:focus,
.nf-form-content input:not([type="button"]):focus,
.nf-form-content textarea:focus,
.nf-form-content .listselect-wrap .nf-field-element div:focus,
.nf-form-content .ninja-forms-field:focus{
  background-color: #F0EFEF !important;
  color: #000 !important;
}
/* -------------------------------------------------------> Button */
.nf-form-content input[type=button] {
  padding: 5px 10px !important;
  color: #fff !important;
  background-color: #000 !important;
  border: 1px solid #000 !important;
  border-radius: 0 !important;
  outline: none !important;
  font-family: 'Montserrat', 'Neuzeit S LT W00 Book Heavy', Helvetica, Arial, sans-serif;
  font-weight: normal !important;
}
.nf-form-content input[type=button]:hover {
  background-color:#F0EFEF !important;
  border: 1px solid #F0EFEF !important;
  color: #000 !important;

}
/* -------------------------------------------------------> erforderlich */
.nf-form-fields-required {
  display: none !important;
}
/* -------------------------------------------------------> Warnmeldung */
.nf-error .nf-error-msg {
  color: #e80000;
  font-size: 13px;
}
/* -------------------------------------------------------> Formular Titel */
.nf-form-title{
  display: none;
}
/* -------------------------------------------------------> Warnsymbol */
.nf-error.field-wrap .nf-field-element::after {
  background: #e80000;
  color: #fff;
  font-family: 'Montserrat', FontAwesome;
  font-size: 20px;
  content: "\f12a";
  position: absolute;
  top: 1px;
  right: 1px;
  bottom: 1px;
  height: 48px;
  width: 50px;
  line-height: 50px;
  text-align: center;
  transition: all .3s;
}
.ninja-forms-req-symbol {
  color: #000 !important;
}
.nf-response-msg {
  color: #000;
}
@media screen and (min-width: 768px) {
  .nf-form-content .list-select-wrap .nf-field-element > div,
  .nf-form-content input:not([type="button"]),
  .nf-form-content textarea,
  .nf-form-content .listselect-wrap .nf-field-element div,
  .nf-form-content .ninja-forms-field {
    font-size: 20px !important;
  }
  .nf-error .nf-error-msg {
    font-size: 15px !important;
  }
}
@media screen and (min-width: 992px) {
}

/*--------------------------------------------------------------
# Accessibility
--------------------------------------------------------------*/
/* Text meant only for screen readers. */
.screen-reader-text {
 	border: 0;
 	clip: rect(1px, 1px, 1px, 1px);
 	clip-path: inset(50%);
 	height: 1px;
 	margin: -1px;
 	overflow: hidden;
 	padding: 0;
 	position: absolute !important;
 	width: 1px;
 	word-wrap: normal !important; /* Many screen reader and browser combinations announce broken words as they would appear visually. */
}
.screen-reader-text:focus {
 	background-color: #f1f1f1;
 	border-radius: 3px;
 	box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
 	clip: auto !important;
 	clip-path: none;
 	color: #21759b;
 	display: block;
 	font-size: 14px;
 	font-size: 0.875rem;
 	font-weight: bold;
 	height: auto;
 	left: 5px;
 	line-height: normal;
 	padding: 15px 23px 14px;
 	text-decoration: none;
 	top: 5px;
 	width: auto;
 	z-index: 100000;
 	/* Above WP toolbar. */
}
/* Do not show the outline on the skip link target. */
#content[tabindex="-1"]:focus {
	outline: 0;
}

/*--------------------------------------------------------------
# STRUKTUR
--------------------------------------------------------------*/
.text-2-columns {
 -webkit-column-count: 2;
 column-count: 2;
 -webkit-column-gap: 20px;
 column-gap: 20px;
}
.text-3-columns {
 -webkit-column-count: 3;
 column-count: 3;
 -webkit-column-gap: 20px;
 column-gap: 20px;
}
.container,
.container-fluid,
.container-lg,
.container-md,
.container-sm,
.container-xl,
.container-xxl {
 width:100%;
 padding-right:24px;
 padding-left:24px;
 margin-right:auto;
 margin-left:auto
}
@media (min-width:576px) {.container{max-width:540px}}
@media (min-width:768px) {
  .container{
    max-width:720px;
    padding-right:8px;
    padding-left:8px;
  }
  }
@media (min-width:992px) {.container{max-width:960px}}
@media (min-width:1200px) {.container{max-width:1140px}}
@media (min-width:1460px) {.container{max-width:1380px}}
.row {
 display:flex;
 flex-wrap:wrap;
 margin-right:-8px;
 margin-left:-8px;
}
.row>* {
 flex-shrink:0;
 width:100%;
 max-width:100%;
 padding-right:8px;
 padding-left:8px;
}
.col {flex:1 0 0%}
.col-10 {flex:0 0 auto; width:10%}
.col-20 {flex:0 0 auto; width:20%}
.col-30 {flex:0 0 auto; width:30%}
.col-40 {flex:0 0 auto; width:40%}
.col-50 {flex:0 0 auto; width:50%}
.col-60 {flex:0 0 auto; width:60%}
.col-70 {flex:0 0 auto; width:70%}
.col-80 {flex:0 0 auto; width:80%}
.col-90 {flex:0 0 auto; width:90%}
.col-100 {flex:0 0 auto; width:100%}
.offset-10 {margin-left:10%}
.offset-20 {margin-left:20%}
.offset-30 {margin-left:30%}
.offset-40 {margin-left:40%}
.offset-50 {margin-left:50%}
.offset-60 {margin-left:60%}
.offset-70 {margin-left:70%}
.offset-80 {margin-left:80%}
.offset-90 {margin-left:90%}
.offset-100 {margin-left:100%}
@media (min-width:576px) {
  .col-sm {flex:1 0 0%}
  .col-sm-10 {flex:0 0 auto; width:10%}
  .col-sm-20 {flex:0 0 auto; width:20%}
  .col-sm-30 {flex:0 0 auto; width:30%}
  .col-sm-40 {flex:0 0 auto; width:40%}
  .col-sm-50 {flex:0 0 auto; width:50%}
  .col-sm-60 {flex:0 0 auto; width:60%}
  .col-sm-70 {flex:0 0 auto; width:70%}
  .col-sm-80 {flex:0 0 auto; width:80%}
  .col-sm-90 {flex:0 0 auto; width:90%}
  .col-sm-100 {flex:0 0 auto; width:100%}
  .offset-sm-10 {margin-left:10%}
  .offset-sm-20 {margin-left:20%}
  .offset-sm-30 {margin-left:30%}
  .offset-sm-40 {margin-left:40%}
  .offset-sm-50 {margin-left:50%}
  .offset-sm-60 {margin-left:60%}
  .offset-sm-70 {margin-left:70%}
  .offset-sm-80 {margin-left:80%}
  .offset-sm-90 {margin-left:90%}
  .offset-sm-100 {margin-left:100%}
}
@media (min-width:768px) {
  .col-md {flex:1 0 0%}
  .col-md-10 {flex:0 0 auto; width:10%}
  .col-md-20 {flex:0 0 auto; width:20%}
  .col-md-25 {flex:0 0 auto; width:25%}
  .col-md-30 {flex:0 0 auto; width:30%}
  .col-md-40 {flex:0 0 auto; width:40%}
  .col-md-50 {flex:0 0 auto; width:50%}
  .col-md-60 {flex:0 0 auto; width:60%}
  .col-md-70 {flex:0 0 auto; width:70%}
  .col-md-80 {flex:0 0 auto; width:80%}
  .col-md-90 {flex:0 0 auto; width:90%}
  .col-md-100 {flex:0 0 auto; width:100%}
  .offset-md-10 {margin-left:10%}
  .offset-md-20 {margin-left:20%}
  .offset-md-30 {margin-left:30%}
  .offset-md-40 {margin-left:40%}
  .offset-md-50 {margin-left:50%}
  .offset-md-60 {margin-left:60%}
  .offset-md-70 {margin-left:70%}
  .offset-md-80 {margin-left:80%}
  .offset-md-90 {margin-left:90%}
  .offset-md-100 {margin-left:100%}
}
@media (min-width:992px) {
  .col-lg {flex:1 0 0%}
  .col-lg-10 {flex:0 0 auto; width:10%}
  .col-lg-20 {flex:0 0 auto; width:20%}
  .col-lg-30 {flex:0 0 auto; width:30%}
  .col-lg-40 {flex:0 0 auto; width:40%}
  .col-lg-50 {flex:0 0 auto; width:50%}
  .col-lg-60 {flex:0 0 auto; width:60%}
  .col-lg-70 {flex:0 0 auto; width:70%}
  .col-lg-80 {flex:0 0 auto; width:80%}
  .col-lg-90 {flex:0 0 auto; width:90%}
  .col-lg-100 {flex:0 0 auto; width:100%}
  .offset-lg-10 {margin-left:10%}
  .offset-lg-20 {margin-left:20%}
  .offset-lg-30 {margin-left:30%}
  .offset-lg-40 {margin-left:40%}
  .offset-lg-50 {margin-left:50%}
  .offset-lg-60 {margin-left:60%}
  .offset-lg-70 {margin-left:70%}
  .offset-lg-80 {margin-left:80%}
  .offset-lg-90 {margin-left:90%}
  .offset-lg-100 {margin-left:100%}
}
@media (min-width:1200px) {
  .col-xl {flex:1 0 0%}
  .col-xl-10 {flex:0 0 auto; width:10%}
  .col-xl-20 {flex:0 0 auto; width:20%}
  .col-xl-30 {flex:0 0 auto; width:30%}
  .col-xl-40 {flex:0 0 auto; width:40%}
  .col-xl-50 {flex:0 0 auto; width:50%}
  .col-xl-60 {flex:0 0 auto; width:60%}
  .col-xl-70 {flex:0 0 auto; width:70%}
  .col-xl-80 {flex:0 0 auto; width:80%}
  .col-xl-90 {flex:0 0 auto; width:90%}
  .col-xl-100 {flex:0 0 auto; width:100%}
  .offset-xl-10 {margin-left:10%}
  .offset-xl-20 {margin-left:20%}
  .offset-xl-30 {margin-left:30%}
  .offset-xl-40 {margin-left:40%}
  .offset-xl-50 {margin-left:50%}
  .offset-xl-60 {margin-left:60%}
  .offset-xl-70 {margin-left:70%}
  .offset-xl-80 {margin-left:80%}
  .offset-xl-90 {margin-left:90%}
  .offset-xl-100 {margin-left:100%}
}
@media (min-width:1460px) {
  .col-xxl {flex:1 0 0%}
  .col-xxl-10 {flex:0 0 auto; width:10%}
  .col-xxl-20 {flex:0 0 auto; width:20%}
  .col-xxl-30 {flex:0 0 auto; width:30%}
  .col-xxl-40 {flex:0 0 auto; width:40%}
  .col-xxl-50 {flex:0 0 auto; width:50%}
  .col-xxl-60 {flex:0 0 auto; width:60%}
  .col-xxl-70 {flex:0 0 auto; width:70%}
  .col-xxl-80 {flex:0 0 auto; width:80%}
  .col-xxl-90 {flex:0 0 auto; width:90%}
  .col-xxl-100 {flex:0 0 auto; width:100%}
  .offset-xxl-10 {margin-left:10%}
  .offset-xxl-20 {margin-left:20%}
  .offset-xxl-30 {margin-left:30%}
  .offset-xxl-40 {margin-left:40%}
  .offset-xxl-50 {margin-left:50%}
  .offset-xxl-60 {margin-left:60%}
  .offset-xxl-70 {margin-left:70%}
  .offset-xxl-80 {margin-left:80%}
  .offset-xxl-90 {margin-left:90%}
  .offset-xxl-100 {margin-left:100%}
}

/* Sticky Footer */
body {
  display: flex;
  min-height: calc(var(--vh, 1vh) * 100);
  flex-direction: column;
}

main {
  flex: 1 0 auto;
}

/*--------------------------------------------------------------
# FARBEN
--------------------------------------------------------------*/

.bg_schwarz{
  background-color: #000;
}
.bg_lichtgrau{
  background-color: #F0EFEF;
}

/*--------------------------------------------------------------
# TYPOGRAPHIE
--------------------------------------------------------------*/
body {
  color: #000;
  font-family: 'Montserrat', 'Neuzeit S LT W00 Book', Helvetica, Arial, sans-serif;
  font-weight: normal;
  font-size: 15px;
  line-height: 1.5;
}
h1 {
  font-family: 'Montserrat', 'Neuzeit S LT W00 Book Heavy', Helvetica, Arial, sans-serif;
  font-weight: 600;
  font-size: 48px;
  line-height: 1.2;
  text-transform: uppercase;
  word-wrap: break-word;
  -webkit-hyphens: auto;
  -ms-hyphens: auto;
  hyphens: auto;
  overflow-wrap: break-word;
}
h1.large {
  font-size: 80px;
}
.single h1{
}
h2 {
  margin-bottom: 10px;
  font-family: 'Montserrat', 'Neuzeit S LT W00 Book Heavy', Helvetica, Arial, sans-serif;
  font-weight: 600;
  font-size: 36px;
  line-height: 1.2;
  text-transform: uppercase;
  word-wrap: break-word;
  -webkit-hyphens: auto;
  -ms-hyphens: auto;
  hyphens: auto;
  overflow-wrap: break-word;
}
.single.text_wrap > div {
  margin-bottom: 20px;
}
h2.gross{
  font-size: 36px;
}
h2.normal{
  text-transform: unset;
}
footer h2{
  font-size: 14px;
}
h3 {
  font-family: 'Montserrat', 'Neuzeit S LT W00 Book Heavy', Helvetica, Arial, sans-serif;
  font-weight: normal;
  font-size: 24px;
  line-height: 1.2;
}
h4 {
  font-family: 'Montserrat', 'Neuzeit S LT W00 Book Heavy',  Helvetica, Arial, sans-serif;
  font-weight: normal;
  font-size: 18px;
  line-height: 1.2;
}
h5 {
  font-family: 'Montserrat','Neuzeit S LT W00 Book Heavy', Helvetica, Arial, sans-serif;
  font-weight: normal;
  font-size: 18px;
  line-height: 1.2;
}
p {
  font-family: 'Montserrat', 'Neuzeit S LT W00 Book', Helvetica, Arial, sans-serif;
  font-weight: normal;
  font-size: 16px;
  line-height: 1.5;
}
p.gross{
  font-size: 20px;
}

.intro p{
  font-family: 'Montserrat','Neuzeit S LT W00 Book Heavy', Helvetica, Arial, sans-serif;
  hyphens: auto;
}
.intro p.normal{
  font-family: 'Montserrat','Neuzeit S LT W00 Book', Helvetica, Arial, sans-serif;
}

.quote p{
  font-family: 'Montserrat','Neuzeit S LT W00 Book Heavy', Helvetica, Arial, sans-serif;
  font-size: 28px;
  line-height: 1.2;
}
footer p{
  font-size: 14px;
}
footer a{
  font-size: 14px;
}
.std_text_style p {
  margin-bottom: 20px;
}
.std_text_style p:last-child {
  margin-bottom: 0;
}
strong {
  font-family: 'Montserrat','Neuzeit S LT W00 Book Heavy', Helvetica, Arial, sans-serif;
  font-weight: 600;
}
.light {
  font-family: 'Montserrat', Helvetica, Arial, sans-serif;
  font-weight: normal;
}
.bold {
  font-family: 'Montserrat','Neuzeit S LT W00 Book Heavy', Helvetica, Arial, sans-serif;
  font-weight: normal;
}
.std_text_style ul {
	list-style: none;
	padding-left: 20px;
}
.std_text_style ul li {
	position: relative;
  margin-bottom: 5px;
}
.std_text_style li::before {
	content: "–";
	position: absolute;
	left: -20px;
}
.hyphens{
  -webkit-hyphens: auto;
  -ms-hyphens: auto;
  hyphens: auto;
}

/* ENDE TYPOGRAPHIE  ---------------------------------------------------------- */

/*--------------------------------------------------------------
# LINKS
--------------------------------------------------------------*/
a {
  color: #000;
  text-decoration: none;
}
a:hover,
a:focus {
  color: #e21618;
  text-decoration: none;
}
.std_text_style p a,
.std_text_style ul li a {
  position: relative;
  text-decoration: none;
  border-bottom: 1px solid #e21618;
  -moz-transition: all 0.3s ease-in-out;
	-webkit-transition: all 0.3s ease-in-out;
	transition: all 0.3s ease-in-out;
}
.std_text_style p a:hover,
.std_text_style p a:focus,
.std_text_style ul li a:hover,
.std_text_style ul li a:focus {
  text-decoration: none;
  border-bottom: 1px solid;
}
/* ENDE LINKS  ---------------------------------------------------------- */

/*--------------------------------------------------------------
# HEADER
--------------------------------------------------------------*/

.site-header{
  position: fixed;
  z-index: 10;
  width: 100vw;
  height: auto;
  transition: all 0.3s ease-in-out;
}
.nav-background {
  position: fixed;
  width: 100%;
  height: 80px;
  background-color: #F0EFEF;
  z-index: 8;
}
/* Standard-Header mit Logo links Menü rechts, mobile Fullscreen mit Burger, Wasserfall-Effekt */

.main-navigation {
  position: fixed;
  top: 0;
  right: 0;
  flex-direction: column;
  width: 100vw;
  height: calc(var(--vh, 1vh) * 100);
  top: calc(var(--vh, 1vh) * -100);
  display: flex;
  padding: 0;
  transition: all 0.3s ease-in-out;
  z-index: 10;
}
.main-navigation.show {
  top: 0;
}
.main-navigation ul {
  text-align: center;
  list-style: none;
}
.main-navigation ul li {
  text-align: center;
  margin-bottom: 20px;
  font-size: 24px;
  opacity: 1;
  transition: 0.3s all ease-in-out;
}
.main-navigation li.current_page_item a,
.main-navigation li.current_page_parent a{
  font-family: 'Montserrat', 'Neuzeit S LT W00 Book', Helvetica, Arial, sans-serif;
  font-weight: normal;
  text-decoration: underline;
  text-decoration-color: #e21618;
}

.sub-header {
  padding-left: 24px;
  padding-right: 24px;
}

.menu-hauptmenu-container {
  justify-content: center;
  height: calc(var(--vh, 1vh) * 100);
  flex-direction: column;
  background-color: #F0EFEF;
  z-index: 9;
}

.menu {
  margin-top: 65px;
}

.menu_toggle {
  position: relative;
  width: 36px;
  height: 26px;
  cursor: pointer;
  z-index: 11;
  display: none;
}
.menu_toggle.show {
  display: block;
}
.menu_toggle span {
  position: absolute;
  width: 36px;
  height: 2px;
  display: block;
  background-color: #000;
  transition: all 0.3s linear;
}
.menu_toggle:hover span {
  background-color: #e21618;
}
.menu_toggle span:nth-of-type(1) {
  top: 0;
}
.menu_toggle span:nth-of-type(2),
.menu_toggle span:nth-of-type(3) {
  top: 12px;
}
.menu_toggle span:nth-of-type(4) {
  top: 24px;
}
.menu_close {
  position: relative;
  width: 36px;
  height: 26px;
  display: none;
  cursor: pointer;
  z-index: 11;
}
.menu_close.show {
  display: block;
}
.menu_close span {
  position: absolute;
  top: 12px;
  width: 36px;
  height: 2px;
  display: block;
  background-color: #000;
}
.menu_close:hover span {
  background-color: #e21618;
}
.menu_close span {
  transition: all 0.3s linear;
}
.menu_close span:first-of-type {
  transform: rotate(45deg);
}
.menu_close span:last-of-type {
  transform: rotate(-45deg);
}
.site-branding{
  width: 100px;
  z-index: 11;
}
.site-branding img {
    width: auto;
    height: 45px;
}
@media screen and (min-width: 768px) {
  .site-header {
    height: 80px;
  }

  .menu-hauptmenu-container {
    height: auto;
    justify-content: unset;
    background-color: unset;
  }
  .menu {
    margin-top: 0;
  }

  .main-navigation {
    position: relative;
    top: 0;
    right: 0;
    flex-direction: row;
    width: auto;
    height: auto;
    padding-left: 0;
    z-index: 9999;
  }
  .main-navigation ul {
    display: flex;
    flex-wrap: wrap;
    padding-left: 0;
    margin-bottom: 0;
    text-align: left;
  }
  .main-navigation ul li {
    text-align: center;
    margin-bottom: 0;
    font-size: 24px;
    opacity: 1;
    transform: none;
    transition-delay: none;
    transition: 0.3s all ease-in-out;
  }
  .main-navigation li {
    margin-left: 40px;
  }
  .main-navigation li a {
    font-family: 'Montserrat', 'Neuzeit S LT W00 Book', Helvetica, Arial, sans-serif;
    font-weight: normal;
    font-size: 20px;
    line-height: 1;
  }
  .main-navigation li a:hover,
  .main-navigation li a:focus,
  .main-navigation li a:active {
    color: #e21618 !important; 
  }
  .menu_close,
  .menu_toggle {
    display: none !important;
  }
  .site-branding img {
      height: 60px;
  }

  .sub-header {
    padding: 0 40px 0 20px;
  }
}
@media screen and (min-width: 992px) {
  .main-navigation li a {
    font-size: 17px;
  }
}
@media screen and (min-width:1200px) {
  .main-navigation li a {
    font-size: 20px;
  }
}

/* ENDE HEADER  ---------------------------------------------------------- */

/*--------------------------------------------------------------
# BUTTONS
--------------------------------------------------------------*/
.btn {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  display: inline-block;
  text-align: center;
  white-space: nowrap;
  vertical-align: middle;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  border: none;
  padding: 12px 24px;
  font-size: 20px;
  line-height: 1.5;
  font-weight: normal;
  background-color: transparent;
  border-radius: 0;
  transition: all .15s ease-in-out;
}
.btn_std {
  position: relative;
  padding: 12px 24px;
  color: #fff;
  background-color: #e21618;
  border: none;
  font-family: 'Montserrat', Helvetica, Arial, sans-serif;
  font-size: 16px;
  font-weight: 600;
  text-align: center;
  letter-spacing: 0.05em;
  cursor: pointer;
  transition: all 0.3s ease-in-out;
}
.btn_std:hover{
  background-color: #000;
  color: #fff;
}

.btn_std.teaser {
  width: fit-content;
}

@media screen and (min-width: 992px) {

}

.nav-logo {
  height: 60px; /* This will be the final size */
  width: auto;
  transition: transform 0.2s ease-out;
  transform-origin: left top;
}
/* ENDE BUTTONS  ---------------------------------------------------------- */

/*--------------------------------------------------------------
# COOKIES
--------------------------------------------------------------*/


.cookiealert {
    position: fixed;
    bottom: 0;
    left: 0;
    width: 100%;
    margin: 0 !important;
    opacity: 0;
    border-radius: 0;
    background-color: #000;
    transform: translateY(100%);
    transition: all 500ms ease-out;
    color: #fff;
    z-index: 99999;
    text-align: center;
    font-size: 14px;
}
.cookiealert.show {
    opacity: 1;
    transform: translateY(0%);
    transition-delay: 1000ms;
}
.cookiealert a,
.cookiealert a:hover {
    text-decoration: none;
    color: #fff;
}
.cookiealert .acceptcookies {
    margin-left: 10px;
    padding: 4px 8px;
    vertical-align: baseline;
}
.alert-dismissible {
    padding-right: 1.25rem; /* overwrite bootstrap */
}

/* ENDE COOKIES  ---------------------------------------------------------- */

/*--------------------------------------------------------------
# CONTENT
--------------------------------------------------------------*/

/*Startseite----------------*/

/*Video*/
.video_wrap{
  margin-top: 65px;
  width: 100vw
}
.video_wrap video{
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.speaker{
  height: 50px;
   width: 50px;
   z-index: 2000;
   background-color: rgba(0, 0, 0, 0.5);
   border-radius: 50%;
   overflow: hidden;
   position: absolute;
   top: 10px;
   left: 10px;
   cursor: pointer;
   transition: 0.75s;
}
.speaker span {
 display: block;
 position: absolute;
 width: 15px;
 height: 15px;
 top: 17.5px;
 left: 7.5px;
 background: #fff;
}
.speaker span:after{
 content: '';
 position: absolute;
 width: 0;
 height: 0;
 border-style: solid;
 border-color: transparent #fff transparent transparent;
 border-width: 15px 22.5px 15px 22.5px;
 left: -23px;
 top: -8px;
}
.speaker span:before {
 transform: rotate(45deg);
 border-radius: 0 25px 0 0;
 content: '';
 position: absolute;
 width: 15px;
 height: 15px;
 border-width: 10px 10px 0 0;
 left: 26px;
 top: 0px;
 border-style: double;
 border-color: #fff;
 transition: all 0.2s ease-out;
}
.speaker:hover span:before {
 transform: scale(0.8) translate(-3px, 0) rotate(42deg);
}
.speaker.mute span:before {
 transform: scale(0.5) translate(-15px, 0) rotate(36deg);
 opacity: 0;
}
.play_btn{
  height: 100px;
   width: 100px;
   z-index: 2000;
   background-color: rgba(0, 0, 0, 0.5);
   border-radius: 50%;
   overflow: hidden;
   position: absolute;
   top: 50%;
   left: 50%;
   -ms-transform: translate(-50%, -50%);
   transform: translate(-50%, -50%);
   cursor: pointer;
   transition: 0.75s;
   display: none;
}
.play_btn span:after {
 content: '';
 position: absolute;
 width: 0;
 height: 0;
 border-style: solid;
 border-color: transparent transparent transparent #fff;
 border-width: 30px 45px 30px 45px;
left: 30px;
 top: 20px;
}
.play_btn.show{
  display: block;
}
@media screen and (min-width: 768px) {
  .video_wrap{
    margin-top: 80px;
  }
}
@media screen and (min-width: 992px) {
  .video_wrap{
    height: calc(calc(var(--vh, 1vh) * 100) - 80px);
  }
}

/*Bild Text Teaser*/
.bild_text_teaser_wrap{
  display: flex;
  flex-direction: column;
  align-items: center;
  height: 100%;
  padding-bottom: 80px;
  row-gap: 20px;
}
.bild_text_teaser_wrap:last-child {
  padding-bottom: 0;
}

.bild_teaser_wrap{
  margin-bottom: 30px;
  display: flex;
  flex-direction: column;
  height: 55vh;
}
.bild_text_teaser_wrap:nth-child(odd) .bild_teaser_wrap{
  justify-content: flex-start;
}
.bild_text_teaser_wrap:nth-child(even) .bild_teaser_wrap{
  justify-content: flex-end;
}
.bild_teaser_wrap .img_wrap{
  width: 100%;
  height: 100%;
  display: flex;
}
.bild_text_teaser_wrap:nth-child(odd) .img_wrap{
  justify-content: flex-end;
  align-items: flex-start;
}
.bild_text_teaser_wrap:nth-child(even) .img_wrap{
  justify-content: flex-end;
  align-items: flex-start;
}

.text_teaser_wrap{
  display: flex;
  flex-direction: column;
  min-height: 350px;
}
.bild_text_teaser_wrap:nth-child(odd) .text_teaser_wrap{
  text-align: left;
  align-items: flex-start;
}
.bild_text_teaser_wrap:nth-child(even) .text_teaser_wrap{
  text-align: right;
  align-items: flex-end;
}
.text_teaser_wrap p{
  hyphens: auto;
  margin-bottom: 10px;
}
.quote_wrap.text_teaser_wrap{
  justify-content: flex-start !important;
}
.bild_text_teaser_wrap h2{
  position: relative;
  text-transform: unset;
  margin-bottom: 10px;
}


@media screen and (min-width: 768px) {
  .bild_text_teaser_wrap:nth-child(odd){
    flex-direction: row;
  }
  .bild_text_teaser_wrap:nth-child(even){
    flex-direction: row-reverse;
  }
  .bild_teaser_wrap{
    margin-bottom: 0;
  }
  .text_teaser_wrap{
    padding: 0 60px;
  }
  .text_teaser_wrap h2,
  .text_teaser_wrap p {
    margin-bottom: 30px;
  }
}
@media screen and (min-width: 992px) {

}

/*News*/

#news {
  padding-top: 50px;
}

/*Parallax*/

.parallax-img{
  display: block;
}

.img-holder {
  
overflow: hidden; /* Wichtig für den Parallax-Effekt */
display: flex;
align-items: center;
height: 100%;
width: 100%;
position: relative;
}

.img-holder img {
  position: relative;
  height: 250%;
  width: 100%;
  object-fit: cover;
}

.img-holder-normal img {
  object-fit: contain;
  width: 100%;
}

.img-holder-hoch img {
  object-fit: contain;
  width: 100%;
  height: 500px;
  background-color: #F0EFEF;
}

/*Intro Slider*/
.intro_slider_wrap{
  height: 350px;
}
.image-caption {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  background: rgba(0, 0, 0, 0.5);
  color: white;
  padding: 10px;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .intro_slider_wrap{
    height: 450px;
  }
}
@media screen and (min-width: 992px) {

}
@media screen and (min-width:1200px) {
  .intro_slider_wrap{
    height: 700px;
  }
}

#textfeld div{
  margin-top: 120px;
}
#textfeld:only-child div{
  margin-top: 0;
}

/*Single*/
.single_prev_next_wrap{
  display: flex;
  justify-content: space-between;
  margin-top: 60px;
}
.single p{
  hyphens: auto;
}
.single_prev_next_wrap .next,
.single_prev_next_wrap .prev,
.single_prev_next_wrap .uebersicht{
  position: relative;
  width: 25%;
}
.single_prev_next_wrap a{
  font-family: 'Montserrat','Neuzeit S LT W00 Book Heavy', Helvetica, Arial, sans-serif;
}
.single_prev_next_wrap .prev{
  margin-left:20px;
}
.single_prev_next_wrap .prev a::before{
  content: '';
  background-image: url(img/pfeil_post_prev.svg);
  background-repeat: no-repeat;
  position: absolute;
  height: 21px;
  width: 21px;
  top: 12px;
  left: -20px;
}
.single_prev_next_wrap .next{
  margin-right:30px;
}
.single_prev_next_wrap .next a::after{
  content: '';
  background-image: url(img/pfeil_post_next.svg);
  background-repeat: no-repeat;
  position: absolute;
  height: 21px;
  width: 21px;
  top: 12px;
  right: -30px;
}
@media screen and (min-width: 768px) {
  .single_prev_next_wrap .prev a::before,
  .single_prev_next_wrap .next a::after{
    top: 0;
  }
}
@media screen and (min-width: 992px) {

}

/*Mitglieder*/
.mitglieder_logo_wrap{
  background-color: #F0EFEF;
  display: flex;
  justify-content: center;
}
.mitglieder_logo_wrap .img_wrap{
  width: 80%;
  max-height: 200px;
  height: 200px;
  margin: auto;
  justify-content: center !important;
}

/*Naturstein Projekte*/
.info_projekte_wrap{
  position: relative;
}
.info_projekte_wrap::before{
  content: '';
  background-color: #000;
  position: absolute;
  height: 100%;
  width: 3px;
  top: 0;
  left: 15px;
}
.info_projekte_wrap p{
  margin-left: 20px;
}

/*Oekologie*/
.oekologie_text_wrap p{
  hyphens: auto;
}

/*Kontakt*/
.container_80{
  width: 100%;
}
@media screen and (min-width: 768px) {
  .container_80{
    width: 80%;
    margin-left: 20%;
  }
}
@media screen and (min-width: 992px) {
}

/*Modal*/
.modal {
  max-height: calc(var(--vh, 1vh) * 100);
  z-index: 999999;
}
.modal-content {
  position: relative;
  display: flex;
  flex-direction: column;
  width: 100%;
  pointer-events: auto;
  background-clip: padding-box;
  border: none;
  border-radius: .3rem;
  outline: 0;
  background-color: #fff;
}
.newsletter_anmeldung_btn{
  font-size: 16px;
  font-family: 'Montserrat','Neuzeit S LT W00 Book Heavy', Helvetica, Arial, sans-serif;
}
.newsletter_anmeldung_btn_wrap{
  position: fixed;
  right: -107px;
  height: 50px;
  top: 50%;
  transform: translateY(-50%) rotate(-90deg);
}
#newsletter_anmeldung_modal iframe{
  width: 100%;
}
#newsletter_anmeldung_modal .modal-body{
  padding: 20px;
}
#newsletter_anmeldung_modal h3{
  text-transform: uppercase;
}
#newsletter_anmeldung_modal p{
  font-size: 16px;
  margin: 20px 0;
}
#newsletter_anmeldung_modal .wpcf7-list-item-label{
  font-size: 14px;
}
#newsletter_anmeldung_modal .wpcf7-list-item{
  margin: 0;
  line-height: 1;
}
#newsletter_anmeldung_modal input[type="submit"]{
  padding: 5px 10px !important;
  color: #fff !important;
  background-color: #000 !important;
  border: 1px solid #000 !important;
  border-radius: 0 !important;
  outline: none !important;
  font-family: 'Montserrat', 'Neuzeit S LT W00 Book Heavy', Helvetica, Arial, sans-serif;
  font-weight: normal !important;
  text-transform: uppercase;
}
.btn-close_wrap{
  position: absolute;
  width: 30px;
  height: 30px;
  top: 6px;
  right: 6px;
  background-color: #fff;
  border-radius: 50%;
  display: flex;
  justify-content: center;
  align-items: center;
  box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
}
.newsletter_anmeldung_modal_btn_close{
  margin: 0;
  height: 15px;
  width: 15px;
  background-size: 15px;
  padding: 0;
  border-radius: 0;
}
.newsletter_anmeldung_btn_menu{
  opacity: 0;
  transition: 0.3s all ease-in-out;
}
.show .newsletter_anmeldung_btn_menu{
  opacity: 1;
  transition-delay: 0.6s;
}

.w-33 {
  width: 100%;
  
}

@media screen and (min-width: 768px) {
  .w-33 {
    width: 50%;
    
  }
}

@media screen and (min-width: 992px) {
  .w-33 {
    width: 33.33%;
    
  }
}

.referenz_wrap {
  padding: 0 25px;
}

.referenz_container {
  margin: 0 -12.5px;
}
.w-screen {
  width: 100vw;
}

.h-screen {
  height: calc(var(--vh, 1vh) * 100);
}

.referenz_img {
  height: 40vh;
}

@media screen and (min-width: 992px) {
  .referenz_img {
      height: 75vh;
    }
}

.absolute_top_right {
  position: absolute;
  top: 0;
  right: 0;
}
.cursor-pointer {
  cursor: pointer;
}

.w-10 {
  width: 2.5rem;
}

.slider_btn {
  width: 100%;
  height: 60px;
  display: flex;
  align-items: center;

  
}

.slider_btn_prev, .slider_btn_prev_ref {
  margin-left: 11px;
  cursor: pointer;
  position: relative;
  height: 35px;
  width: 35px;
}
.slider_btn_prev, .slider_btn_prev_ref::before {

    content: '';
    background-image: url("img/pfeil_slider_prev.svg");
    position: absolute;
    height: 35px;
    width: 35px;
    background-repeat: no-repeat;
    background-position: center;
    top: 0;
}

.slider_btn_next, .slider_btn_next_ref {
  margin-right: 11px;
  cursor: pointer;
  position: relative;
  height: 35px;
  width: 35px;
}
.slider_btn_next, .slider_btn_next_ref::before {
    content: '';
    background-image: url("img/pfeil_slider_next.svg");
    background-repeat: no-repeat;
    background-position: center;
    position: absolute;
    height: 35px;
    width: 35px;
    top: 0;
}

#pop_up {
  z-index: -1;
  opacity: 0;
  display: flex;
  align-items: center;
}
#pop_up.open {
    z-index: 9999999;
    opacity: 1;
}
.open {
  z-index: 9999999;
  opacity: 1;
}
.popup_wrap {
  cursor: pointer;
}
.text_steine_wrap {
  display: none;
  height: auto;
  cursor: pointer;
}
.m-auto {
  margin: auto;
}
.mt-40 {
  margin-top: 40rem;
}
.mt-32 {
  margin-top: 35rem;
}
.bottom-0 {
  bottom: 0;
}

.justify-end {
  justify-content: end;
}

@media screen and (min-width: 992px) {
  .lg_hidden {
      display: none !important;
    }
}

.text-end {
  text-align: end;
}

.sm_hidden {
  display: none;
}

@media screen and (min-width: 992px) {
  .sm_hidden {
      display: flex !important;
    }
}
.active {
  font-weight: bold;
}
.btn_referenzen {
  background: transparent;
  border: none;
}
.h_lightbox {
  height: 40vh;
}
@media screen and (min-width: 992px) {
  .h_lightbox {
    height: 75vh;
  }
}
.flex-center {
  display: flex;
  justify-content: center;
}

.hero {
  aspect-ratio: auto;
}


/* Marquee */


.section_each {
  list-style: none;
  display: flex;
  width: 400%;
  gap: 10px;
  overflow: hidden;
  justify-content: flex-start;
  height: 80px;
}

.section_each:first-child {
  margin-bottom: 40px;
}

.section_each a {
  flex: 1 1 200px;
  min-width: 0;
  align-items: center;
  justify-content: center;
  display: flex;
}

.section_each img.logo {
  object-fit: contain;
  height: 80px;
  max-height: 100%;
  max-width: 200px;
  padding: 10px;
}

.marquee-track {
  display: flex;
  gap: 20px;
  position: relative;
  will-change: transform;
}
.marquee-track .set {
  display: flex;
  gap: 100px;
  padding-left: 50px;
  padding-right: 50px;
}

.downloads {
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.download_entry {
  display: flex;
  gap: 2rem;
  align-items: center;
  justify-content: space-between;
  min-height: 100px;
  width: 100%;
  padding: 2rem;
  background-color: #f1f1f1;
  flex-direction: column;
}

.download_entry h3 {
  text-align: center;
  word-wrap: break-word;
  -webkit-hyphens: auto;
  -ms-hyphens: auto;
  hyphens: auto;
  overflow-wrap: break-word;
}

@media screen and (min-width: 768px) {
  .marquee-track {
    gap: 100px;
  }

  .download_entry {
    flex-direction: row;
  }
  .download_entry h3 {
    text-align: left;
    word-wrap: unset;
    -webkit-hyphens: unset;
    -ms-hyphens: unset;
    hyphens: unset;
    overflow-wrap: unset;
  }
}

/* Rangliste */

.rangliste {
  gap: 1.5rem;
  display: grid;
  grid-template-columns: repeat(1, minmax(0, 1fr));
}

.rangliste > div {
  display: flex;
  flex-direction: column;
}
.rangliste > div h2 {
  padding-left: 25%;
  font-size: 24px;
}
.rangliste > div ul {
  padding-left: 25%;
}
.rangliste > div ul li {
  margin-left: 30px;
}

@media screen and (min-width: 768px) {
  .rangliste {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  
}

main > div {
  padding: 80px 0;
}

main > div:last-child,
main > div:only-child {
  padding-bottom: 160px;
}

main > div.color:nth-of-type(even) {
  background-color: #fff;
}

main > div.color:nth-of-type(odd) {
  background-color: #F0EFEF;
}
main > div.color:only-child {
  background-color: #fff;
}

#hero {
  padding: 0;
  top: -80px;
  z-index: 9;
  position: relative;
}
.hero {
  height: calc(var(--vh, 1vh) * 100);
  width: 100vw;
}
#hero div img {
  object-fit: cover;
}
#hero .cover {
  position: absolute;
  top: 0;
  left: 0;
  background-color: rgba(0, 0, 0, 0.3);
  height: calc(var(--vh, 1vh) * 100);
  width: 100vw;
  display: flex;
  justify-content: center;
  align-items: center;
}
#hero .cover h1 {
  color: #fff;
  text-align: center;
  hyphens: auto;
  word-wrap: break-word;
  max-width: 100%;
}

.scrolldown {
  position: absolute;
  bottom: 0;
  left: 0;
  height: calc(var(--vh, 1vh) * 100);
  width: 100vw;
  display: flex;
  align-items: flex-end;
}

.scrollto {
  width: 100%;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  align-items: center;
  padding-bottom: 2rem;
  gap: 1.5rem;
}

.scrollto span {
  color: #fff;
  font-family: 'Montserrat', 'Neuzeit S LT W00 Book Heavy', Helvetica, Arial, sans-serif;
  height: 30px;
}

.char-js, .word-js {
  will-change: transform;
}

.title_1 {
  justify-self: flex-end;
  overflow: hidden;
  font-size: 18px;
  font-weight: 600;
}

.scrollto span .word-js {
  overflow: hidden;
  margin-top: -1vh;
}

@keyframes bounce {
  0%,
  20%,
  50%,
  80%,
  100% {
    transform: translateY(0);
  }
  40% {
    transform: translateY(-20px);
  }
  60% {
    transform: translateY(-10px);
  }
}

.scrollto img {
  animation: bounce 2s 5s 3;
}

/* Agenda */

.event {
  display: flex;
  border-bottom: #e21618 5px solid;
  font-size: 18px;
  padding: 20px 0;
  flex-direction: column;
  row-gap: 20px;
}
.event:first-child {
  border-top: #e21618 5px solid;
}



.date {
  display: flex;
}

.date > div:first-child {
  width: 30%;
}

.date > div:last-child {
  width: 70%;
  padding-left: 10px;
}

.date .date-day {
  font-size: 56px;
  font-weight: 600;
  line-height: 100%;
}

.bis {
  width: 30%;
  font-weight: 600;
}

.date .date-my {
  font-size: 20px;
  font-weight: 600;
}

.event-content {
  display: flex;
  justify-content: space-between;
  flex-direction: column;
  gap: 20px;
}


.event-title {
  font-size: 20px;
  font-weight: 600;
}



.event-link a {
  justify-self: right;
  flex: 0 0 auto;
}

.agenda-btn {
  margin-top: 40px;
}

@media screen and (min-width: 768px) {
  .agenda-btn {
    margin-top: 0;
  }
  .event-content {
    width: 70%;
    flex-direction: row;
    align-items: center;
  }
  .event {
    flex-direction: row;
  }
  .event > div:first-child {
    width: 30%;
  }
  .event-text {
    padding: 0 10px;
  }
  .date {
    padding-right: 0;
  }
  .date > div:first-child {
    width: 30%;
  }
  
  .date > div:last-child {
    width: 70%;
    padding-left: 10px;
  }
  .date-day {
    text-align: center;
  }
  .bis {
    text-align: center;
  }
}

/* Agenda Übersicht */

#agenda-uebersicht > div > div.agenda-teaser:last-child {
  margin-bottom: 60px;
}

/* Inhalt mit Bild */

.bild_inhalt_wrap .bild_wrap {
  width: 100%;
}
.bild_inhalt_wrap .bild_wrap img {
  width: 100%;
  height: auto;
  object-fit: contain;
}

.bild_inhalt_wrap{
  display: flex;
  flex-direction: column;
  align-items: center;
  height: 100%;
  padding: 60px 0;
  row-gap: 20px;
}
.bild_inhalt_wrap:last-child {
  padding-bottom: 0;
}

.bild_teaser_wrap{
  display: flex;
  flex-direction: column;
  height: 55vh;
}
.bild_inhalt_wrap:nth-child(odd) .bild_teaser_wrap{
  justify-content: flex-start;
}
.bild_inhalt_wrap:nth-child(even) .bild_teaser_wrap{
  justify-content: flex-end;
}
.bild_inhalt_wrap:nth-child(odd) .img_wrap{
  justify-content: flex-end;
  align-items: flex-start;
}
.bild_inhalt_wrap:nth-child(even) .img_wrap{
  justify-content: flex-end;
  align-items: flex-start;
}

.bild_inhalt_wrap:nth-child(even) .inhalt_wrap ul{
  list-style: inside;
  list-style-type: "-  ";

}

.inhalt_wrap{
  display: flex;
  flex-direction: column;
  width: 100%;
  align-self: flex-start;
  padding: 20px 0;
}

.inhalt_wrap p:first-child {

}

.bild_inhalt_wrap .inhalt_wrap{
  text-align: left;
  align-items: flex-start;
}
.inhalt_wrap p{
  hyphens: auto;
}
.inhalt_wrap a {
  border-bottom: 1px solid #e21618;
}
.quote_wrap.inhalt_wrap{
  justify-content: flex-start !important;
}
.bild_inhalt_wrap h2{
  position: relative;
  text-transform: unset;
}
.inhalt_wrap ul {
  list-style: outside;
  list-style-type: "-   ";
  margin-left: 25px;
}


@media screen and (min-width: 768px) {
  .bild_inhalt_wrap:nth-child(odd){
    flex-direction: row;
  }
  .bild_inhalt_wrap:nth-child(even){
    flex-direction: row-reverse;
  }
  .bild_teaser_wrap{
    margin-bottom: 0;
  }
  .bild_inhalt_wrap {
  }
  .bild_inhalt_wrap:nth-child(odd) .inhalt_wrap{
    padding-left: 60px;
  }
  .bild_inhalt_wrap:nth-child(even) .inhalt_wrap{
    padding-right: 60px;
  }
  .bild_inhalt_wrap .inhalt_wrap.full {
    padding: 0;
  }
  .inhalt_wrap{
    width: 50%;
  }
  .inhalt_wrap.full {
    width: 100%;
  }
  .inhalt_wrap h2,
  .inhalt_wrap p {
  }
  .bild_inhalt_wrap .bild_wrap {
    width: 50%;
  }
  .bild_inhalt_wrap.small .bild_wrap {
    width: 25%;
  }
  .bild_inhalt_wrap.small:nth-child(even) .inhalt_wrap {
    text-align: right;
    align-items: flex-end;
  }
}

/*  Funktionen */

.tabelle {
  margin-top: 40px;
  grid-template-columns: 50% 50%;
  display: grid;
  gap: 5px;
}

@media screen and (min-width: 1008px) {
  .tabelle {
    grid-template-columns: 25% 25%;
  }
}

/* ENDE CONTENT  ---------------------------------------------------------- */

/*--------------------------------------------------------------
# FOOTER
--------------------------------------------------------------*/
footer {
}

footer p,
footer h2  {
  color: #fff;
  font-weight: 500;
}
footer h2{
  text-align: left;
  text-transform: uppercase;
}
footer a {
  color: #fff;
}
footer a:hover {
  color: lightgrey;
}
.footer_icon_wrap{
  display: flex;
  margin-top: 30px;
}
.footer_icon_wrap a{
  width: 30px;
  margin-right: 10px;
}
.footer_icon_wrap img{
  width: 100%;
}
footer li{
  line-height: 1;
  margin-bottom: 10px;
}

@media screen and (min-width: 768px) {
}
@media screen and (min-width: 992px) {
}
/* ENDE FOOTER  ---------------------------------------------------------- */

/*--------------------------------------------------------------
# 404 SEITE
--------------------------------------------------------------*/
/* ENDE 404 SEITE  ---------------------------------------------------------- */

/*--------------------------------------------------------------
# KEYFRAMES
--------------------------------------------------------------*/
/* ENDE KEYFRAMES ---------------------------------------------------------- */

/*--------------------------------------------------------------
# Links
--------------------------------------------------------------*/



/* ENDE Links ---------------------------------------------------------- */

