/*
Text grün: #699333
dunkelgründ: #284528
graublau: #8ab5c5
Text orange: #cf7027
gelb:#e7c01f
rot: #be0027
*/

body{
  font-family: AutoPro-Regular;
  font-weight: normal;
  font-size: 16px;
  color: #222a22;
  letter-spacing: -0.32px;
  }
h1{
  font-family: AutoPro-BlackItalic2;
  font-size: 28px;
  color: #284528;
  letter-spacing: -0.56px;
  margin-bottom: 16px;
  }
h2{
  font-family: AutoPro-BlackItalic2;
  font-size: 22px;
  color: #699333;
  letter-spacing: -0.48px;
  margin: 30px 0 20px 0;
  }
h3{
  
  }
  
p {
	text-align: left;
}
  
header{
  margin-bottom: 80px;
  background-color: #ffffff;
  }
a {
  text-decoration:none;
  color: #699333;
  transition: all 0.2s;
}

a:hover {
	color: #284528;
}

iframe {
	border-radius: 16px 16px 0 16px;
}

.wechdormid{
  display:none;
  }

.artikel {
  margin-bottom: 40px;
}

.einzeltour .btn-info {
	padding: 5px 10px 0 8px;
}

form {
	margin-bottom: 50px;
}

.form-control {
	border-radius: 8px 8px 0 8px;
}

.has-error label {
	color: #BE0027;
}

.has-error input,
.has-error select {
	border-color: #BE0027;
}

#cartContent .totalToPay {
	border-radius: 8px 8px 0 8px;
  padding: 10px !important;
}

#cartContent .total small {
	padding: 0 10px;
}

@media (min-width: 992px) and (max-width: 1199px){
  .container-xl {
    padding:0;
    }
  .container {
    max-width:100%;
    padding-right:20px;
    padding-left:20px;
    }
  }
.btn{
  border-radius: 8px 8px 0 8px;
  background-blend-mode: normal;
  box-shadow: 0px 1px 2px 0px rgba(0, 0, 0, 0.25);
  border: none;
  font-family: AutoPro-BoldSmallCaps;
  font-size: 16px;
  color: #ffffff;
  letter-spacing: -0.32px;
  text-align: center;
  padding: 5px 20px;
}
.btn-link{
  text-decoration:none;
  box-shadow:none!important;
  border:none!important;
  }
.btn-primary {
  background-color: #699333; /*hellgrün*/
}

.btn-primary:hover {
	background-color: #557729
}

.btn-secondary{
  background-color:#C3C7C8; /*grau*/
  }
.btn-dark{
  background-color:#284528; /*dunkelgrün*/
  }
.btn-danger{
  background-color:#be0027; /*rot*/
  }
.btn-warning{
  background-color:#E7C01F; /*gelb*/
  }
.btn-info {
  background-color: #8AB5C5; /*hell*/
}

.btn-info:hover {
	background-color: #779aa7;
}

.btn-info i {
	font-size: 1.6rem;
}

.btn-primary.disabled, .btn-primary:disabled {
	background-color: #C3C7C8;
}

.border-info{
  border-color:#8AB5C5!important;
  }
.border-2px{
  border-width:2px!important;
  }

  
footer{
  border-top:2px solid #8ab5c5;
  padding:30px 0;
  }
footer p{
  margin-bottom:0.2rem;
  font-size:0.8rem;
  }
footer a {
  color: initial;
  }

footer a:hover {
  color: #699333;
}

/*############ Headerangaben #############*/  
 
.kopficons{
  height:65px;
  }
.kopficons a{
  color:initial;
  }
.kopficons-links{
  position:absolute;
  left:10px;
  top:10px;
  }
@media (min-width: 1200px){
  .kopficons-links{
    left:0;
    }
}
.kopficons-links icon{
  text-align:center;
  display:inline-block;
  font-family:AutoPro-Bold;
  /*font-weight:bold;*/
  font-size:11px;
  letter-spacing:-0.22px;
  margin-right:40px;
  }
.kopficons-links icon i{
  font-size:2rem;
  display:block;
  }
.kopficons-rechts{
  position: absolute;
  right: 0;
  top: 17px;
  color: #699333;
  }
.kopficons-rechts i {
	position: relative;
  font-size: 1.4rem;
  color: #222a22;
  margin-top: 4px;
  margin-right: 5px;
}

.kopficons-rechts .social i{
  font-size: 1.6rem;
  color: #222a22;
  margin-left: 5px;
  }
.kopficons-rechts span,
.kopficons-rechts a {
  font-family: AutoPro-BlackSmallCaps;
  color: #222a22;
  line-height: 2.25;
  transition: all 0.2s;
  }

.kopficons-rechts span:hover,
.kopficons-rechts a:hover,
.kopficons-rechts a:hover i.rfr{
	color: #699333;
}

.logo{
  width: 80px;
  margin: 0 auto;
  position: relative;
  top: -65px;
  z-index: 9999;
  }
.kopfbildhalter{
  height: 230px;
  overflow: hidden;
  display: flex;
  align-items: flex-end;
  }
  
.mobile-shop-menu {
	display: none;
}

@media (max-width: 575px){
    .logo{
      width:100px;
      }
    .logo a{
      position:absolute;
      }
    .weissflagge{
      height:100px;
      position:absolute;
      top:0;
      border-left: 100px solid #ffffff;
      border-bottom: 15px solid transparent;
      }
  }
@media (min-width: 576px){
    .logo{
      width:100px;
      }
    .logo a{
      position:absolute;
      }
    .weissflagge{
      height:100px;
      position:absolute;
      top:0;
      border-left: 100px solid #ffffff;
      border-bottom: 15px solid transparent;
      }
    .kopfbildhalter{
      height:290px;
      }
  }
@media (min-width: 768px){
    .logo{
      width:120px;
      }
    .logo a{
      position:absolute;
      }
    .weissflagge{
      height:130px;
      position:absolute;
      top:0;
      border-left: 120px solid #ffffff;
      border-bottom: 20px solid transparent;
      }
    .kopfbildhalter{
      height:300px;
      }
  }
@media (min-width: 992px){
    .logo{
      width:140px;
      }
    .logo a{
      position:absolute;
      }
    .weissflagge{
      height:145px;
      position:absolute;
      top:0;
      border-left: 140px solid #ffffff;
      border-bottom: 25px solid transparent;
      }
  }
@media (min-width: 1200px){
    .logo{
      width:160px;
      }
    .logo a{
      position:absolute;
      }
    .weissflagge{
      height: 150px;
      position: absolute;
      top: 0;
      border-left: 200px solid #ffffff;
      border-bottom: 25px solid transparent;
      margin: 0 0 0 -20px;
      }
  }
.kopficons-links .iconholder{
  position: relative;
  display: inline-block;
  margin-right: 40px;
}

.kopficons-links .iconholder:hover {
	cursor: pointer;
}

.kopficons-links .iconholder.gruen {
  color: #699333;
}

.kopficons-links .iconholder.blau {
  color: #8ab5c5;
}

.kopficons-links .iconholder.blau:hover {
	cursor: auto;
}

.kopficons-links .iconholder.orange{
  color: #cf7027;
}

.kopficons-links .iconholder icon{
  position:relative;
  margin:0;
  z-index:999;
}

.kopficons-links .iconholder .spot{
  z-index: 1;
  left: calc(50% - 23px);
  position: absolute;
  height: 50px;
  width: 50px;
  border-radius: 50%;
  display: block;
  opacity: 0;
  transition: all 0.2s;
}

.kopficons-links .iconholder.gruen .spot{
  background-color:#699333;
  }
/*.kopficons-links .iconholder.blau .spot{
  background-color:#8ab5c5;
  }
  */
.kopficons-links .iconholder.orange .spot{
  background-color:#cf7027;
  }
.iconholder:hover .spot{
  opacity:.15;
  }
.shoplink{
  width:190px;
  height:124px;
  position:absolute;
  right:20px;
  }
.shoplink .gelbflagge {
  right: 0;
  width: 190px;
  height: 124px;
  position: absolute;
  color: #ffffff;
  border-left: 190px solid #e7c01f;
  border-bottom: 30px solid transparent;
  transition: all 0.2s;
}

.shoplink:hover > .gelbflagge {
	border-left: 190px solid #d4b124;
}

.shoplink .labeltext{
  position:relative;
  z-index:999;
  color:#ffffff;
  padding:20px;
  }
.shoplink .labeltext a{
  color:#ffffff;
  }
.shoplink .labeltext .fs-2{
  font-family:AutoPro-BoldSmallCaps;
  /*font-weight:bold;*/
  font-size:28px!important;
  letter-spacing:-0.56px;
  }
.shoplink .labeltext .fs-6 {
  font-family: AutoPro-Bold;
  font-size: 12px !important;
  letter-spacing: -0.22px;
}


@media (max-width: 575px){
  .shoplink{
    width:120px;
    }
  .shoplink .labeltext{
    padding-top:3px;
    }
  .shoplink .labeltext .fs-6{ 
    display:none;
    }
  .shoplink .labeltext .fs-2{ 
    font-size:34px!important;
    }
  .shoplink .gelbflagge{
    border-left:120px solid #e7c01f;
    width:120px;
    height:75px;
    }
  .shoplink:hover > .gelbflagge {
	  border-left: 120px solid #d4b124;
    }
	
  .mobile-shop-menu {
  	display: block;
    margin-bottom: 20px;
  }
  
  .mobile-shop-menu a {
  	display: block;
    font-family: "AutoPro-BoldSmallCaps", sans-serif;
    font-size: 1.1rem;
    color: #FFF;
    background: #E7C01F;
    border-radius: 8px 8px 0 8px;
    padding: 6px 20px;
    margin-bottom: 5px;
  }
  
  }
  
  








/*############ Ende Headerangaben #############*/  


/*############ Menü #############*/  
nav{
  margin-top:30px;
  }

.aufzu_menu{
  border: none;
  background-color: transparent;
  font-size: 1.75rem;
  padding: 10px 20px;
}

.navicon {
  border-radius: 10px 10px 0 10px;
  color: #ffffff;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 3rem;
  padding: 8px 8px 6px 8px;
  margin-right: 2%;
}

.navicon.hellgruen{
  background-color:#B3D234;
  }
.navicon.gruen{
  background-color:#699333;
  }
.navbutton{
  font-family:AutoPro-BlackItalic2;
  /*font-style:italic;*/
  font-size:22px;
  color:#284528;
  letter-spacing:-0.44px;
  text-align:right;
  z-index:999;
  position:relative;
  }
.navbutton:hover{
  color:initial;
  }
.navbutton:focus{
  box-shadow:none;
  }
.navbuttonholder{
  display:inline-block;
  margin-right:40px;
  position:relative;
  }

  
  
.navbuttonholder .spot {
  z-index: 1;
  left: calc(50% - 30px);
  position: absolute;
  background-color: #699333;
  height: 60px;
  width: 60px;
  border-radius: 50%;
  display: block;
  opacity: 0;
  background-color: #F4F9E1;
  bottom: 5px;
  text-align: center;
  padding-top: 4px;
  transition: all 0.2s;
}

.navbuttonholder .spot i{
  font-size:1.2rem;
  }
.navbuttonholder:hover .spot, .menu .item2:hover .spot, .menu .head:hover .spot, .navbuttonholder .spot.aktiv{
  opacity:1;
  }
.item2.aktiv .spot {
	opacity:1!important;
  }
.navbuttonholder .pfeil{
  height:35px;
  border-top: 35px solid #ffffff;
  border-right: 20px solid transparent;
  width:20px;
  position:absolute;
  top:-50px;
  left:50%;
  z-index:9999;
  }
.menu{
  height:auto;
  position: absolute;
  background-color: #ffffff;
  bottom: 95px;
  width: 95%;
  z-index:9999;
  left: 40px;
  border-radius:16px 16px 0 16px;
  background-blend-mode:normal;
  box-shadow:0px 1px 2px 0px rgba(0, 0, 0, 0.25), 0px 1px 8px 0px rgba(0, 0, 0, 0.15);
  padding:30px;
  overflow:hidden;
  /* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#9b451d+0,9b451d+28,2989d8+28,ffffff+28,ffffff+28,ffffff+100 */
  background: #9b451d; /* Old browsers */
  background: -moz-linear-gradient(201deg,  #e8eff2 0%, #e8eff2 10%, #ffffff 10%, #ffffff 100%); /* FF3.6-15 */
  background: -webkit-linear-gradient(201deg,  #e8eff2 0%,#e8eff2 10%,#ffffff 10%,#ffffff 100%); /* Chrome10-25,Safari5.1-6 */
  background: linear-gradient(201deg,  #e8eff2 0%,#e8eff2 10%,#ffffff 10%,#ffffff 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#9b451d', endColorstr='#ffffff',GradientType=1 ); /* IE6-9 fallback on horizontal gradient */
  }
@media(max-width:991px){
  .menu{
    position: static;
    width: 100%;
    padding: 25px;
    --bs-gutter-x: 0rem;
    --bs-gutter-y: 0;
    display: flex;
    flex-wrap: wrap;
    margin-top: 10px;
    margin-right: calc(var(--bs-gutter-x)/ -2);
    margin-left: calc(var(--bs-gutter-x)/ -2);
  }
}
@media(min-width:1399px){
  .menu{
    width: auto;
  }
}
  
  
.menu .sonne {
  position: absolute;
	margin-top: -30px;
}


.menu .sonne i{  
  position: absolute;
  right: 70px;
  top: 10px;
  color: #e7c01f;
  font-size: 3rem;
  }
.menu .close{
  position:absolute;
  right:-5px;
  top:0;
  width:auto;
  border:none;
  background-color:transparent;
  font-size:1.8rem;
  }
.versteckt{
  height:0;
  display:none;
  }

.nav-row {
	min-width: 245px;
}

.menu .head{
  font-family:AutoPro-BlackItalic2;
  /*font-style:italic;*/
  font-size:18px;
  color:#699333;
  letter-spacing:-0.36px;
  margin-bottom:10px;
  position:relative;
  }
.menu .head a{
  color:#699333;
  z-index:999;
  position:relative;
  }
.menu .item2{
  margin-bottom:5px;
  position:relative;
  }
.menu .item2 .spot{
  background-color: #F4F9E1;
  width:40px;
  height:40px;
  position:absolute;
  left:-30px; 
  top:-9px;
  border-radius:20px;
  z-index:0;
  display:block;
  opacity:0;
  padding-top:7px;
  text-align:left;
  }
.menu .head .spot{
  background-color: #F4F9E1;
  width:40px;
  height:40px;
  position:absolute;
  left:-25px; 
  top:-9px;
  border-radius:20px;
  z-index:0;
  display:block;
  opacity:0;
  padding-top:7px;
  text-align:left;
  }
.menu .item2 a{
  font-family: AutoPro-Bold;
  font-size: 16px;
  color: #284528;
  letter-spacing: -0.32px;
  text-decoration: none;
  margin-bottom: 8px;
  display: inline-block;
  position: relative;
  line-height: 1.2;
  z-index: 999;
  }

@media (max-width: 991px){  
  header {
  	padding: 0 !important;
  }
  
  .logo {
  	top: -8px;
  }
  
  .navbuttonholder{
    display:block;
    margin-right:0;
    position:relative;
    }
  .navbuttonholder:after{
    content: "\e900";
    font-family: 'Railway-Regular' !important;
    font-style: normal;
    font-weight: normal;
    font-variant: normal;
    text-transform: none;
    line-height: 1;
    -webkit-font-smoothing: antialiased;
    font-size:1.5rem;
    right:0;
    top:10px;
    position:absolute;
    }
    
  .kopficons{
    position: absolute;
  }
  
  .kopficons-rechts,
  .kopficons-links .gruen,
  .kopficons-links .blau {
  	display: none !important;
  }
  
  #webcambild1,
  #webcambild2 {
  	width: 100%;
  }
  
  .navbuttonholder .spot{
    height:auto;
    width:auto;
    left:0;
    top:12px;
    padding-top:0;
    bottom:inherit;
    }
  .navbuttonholder .pfeil{
    display:none;
    }
  .navbuttonholder .navbutton {
    width: 100%;
    text-align: left;
    border-bottom: 2px solid #284528!important;
    border-radius: 0;
    padding: 10px 0 10px 25px;
    }
  .navbuttonholder .menu{
    position:relative;
    top:5px;
    }
  .navbuttonholder .menu .close{
    display:none;
    }
  .navbuttonholder .menu .col{
    flex:none;
    }
    
 nav {
    padding-left: 10px;
    padding-right: 10px;
  }
  
  #overlay {
  	display: none;
  }
  
  .menu .close {
  	display: none;
  }
  
  .menu .head {
  	font-size: 1.4rem;
    margin-top: 20px;
  }
}
/*############ Ende Menü #############*/  



.box{
  border-radius: 16px 16px 0 16px;
  background-blend-mode: normal, normal;
  box-shadow: 0px 1px 2px 0px rgba(0, 0, 0, 0.25), 0px 1px 15px 0px rgba(0, 0, 0, 0.15);
  margin-bottom: 20px;
}
.box.gruen{
  background-color: rgba(232,242,194,0.6);
  transition: all 0.2s;
  }

.box.gruen:hover {
  background-color: #e8f2c2;
  }

.box.gruppenauswahl{
  padding: 0 20px;
  }
.box.gruppenauswahl span{
  font-family: AutoPro-BlackItalic2;
  font-size: 24px;
  color: #699333;
  letter-spacing: -0.48px;
  margin: 0 0 0 8px;
  }
.box.gruppenauswahl i{
  font-size: 4rem;
  color: #284528;
  }
.teaserbereich .box{
  padding: 20px 13px 0 20px;
  font-family: AutoPro-Regular;
  font-weight: normal;
  font-size: 14px;
  color: #222a22;
  letter-spacing: -0.26px;
  text-align: right;
  margin-bottom: 15px;
  }
.teaserbereich .box .btn {
  width: auto !important;
  position: relative;
  margin-right: -13px;
}

.teaserbereich .box .btn:hover {
	color: #ffffff;
}
  
.teaserbereich.oben div.box:not(.danger){
  display:none;
  }
.teaserbereich.oben div.box.danger{
  margin-top:20px;
  }
.teaserbereich.unten div.box.danger{
  display:none;
  }
@media (min-width: 992px){
  .teaserbereich.unten div.box.danger{
    display:block;
    }
  }
  
  
.box h4{
  font-family: AutoPro-BlackItalic2;
  font-size: 20px;
  letter-spacing: -0.36px;
  }
.box.danger h4{
  color: #be0027;
  text-align: left;
  margin: 0 0 10px 0;
  }
.box.success h4{
  color:#284528;
  text-align: left;
  }
.box.success a{
  color: #ffffff;
  }
.box.primary h4{
  color: #699333;
  text-align: left;
}
.box.danger .btn{
  background-color:#be0027;
  }

.box.danger .btn:hover {
	background: #96001f;
}

.box.success .btn {
  background-color: #284528;
}

.box.success .btn:hover {
	background-color: #1d321d;
}

.box.primary .btn {
  background-color: #699333;
}

.box.primary .btn:hover {
	background-color: #557729;
}

/*  
.slick-slide img{
  width:100%;
  margin: 0 auto;
}
@media (min-width:601px) {
  .slick-slide img{
    opacity:0;
    transition: opacity ease 2.0s;
    width:100%;
    margin: 0 auto;
    }
  .slick-active img{
    transition: opacity ease 2.0s;
    opacity:0.4;
    margin: 0 auto;
    }
  .slick-active.slick-current img{
    opacity:1.0;
    transition: opacity ease 2.0s;
    }
}
*/



.slick-list{
    padding-left:40px!important;
    padding-right:40px!important;
  }
.slick-slide{
  position:relative;
  top:-15px;
  height:auto!important;
  margin-left:15px;
  margin-right:15px;
  }
.slick-slide.slick-active{
  right:0;
  top:0;
  z-index:500;
	opacity: 1;
  }
@media(min-width:481px)and (max-width:767px){
  
  .slick-slide{
    right:-8.3%;
  }
  .slick-slide.slick-current + .slick-active + .slick-slide{
    right:8.3%;
  }
}

@media(min-width:768px)and (max-width:991px){
  .slick-slide{
    right:-170px;
  }
  .slick-slide.slick-current + .slick-active + .slick-slide{
    right:170px;
  }
}
@media(min-width:992px)and (max-width:1199px){
  .slick-slide{
    right:-7%;
  }
  .slick-slide.slick-current + .slick-active + .slick-slide{
    right:7%;
  }
}

@media(min-width:1200px)and (max-width:1399px){
  .slick-slide{
    right:-210px;
  }
  .slick-slide.slick-current + .slick-active + .slick-slide{
    right:210px;
  }
}
@media(min-width:1400px){
  .slick-slide{
    right:-255px;
    opacity: 0.4;
  }
  .slick-slide.slick-current + .slick-active + .slick-slide{
    right:255px;
  }
}
  
/*  
@media (min-width: 992px) and (max-width: 1199px){
  .slick-list{
    padding-left:50px!important;
    padding-right:50px!important;
    }
  }
@media (min-width: 1200px) and (max-width: 1399px){
  .slick-list{
    padding-left:50px!important;
    padding-right:50px!important;
    }
  }
*/  
  
.slick-track {
  padding-top: 30px;
  padding-bottom: 30px;
  display: flex!important;
  align-items: stretch!important;
}

.slick-track .box,.tourenliste .box {
  background-color: #ffffff;
  font-family: AutoPro-Regular;
  font-weight: normal;
  font-size: 14px;
  color: #222a22;
  letter-spacing: -0.26px;
  height: 100%;
  width: 100%;
  padding: 20px;
}

.slick-track .box h4 {
	height: 42px;
}
.tourenliste .box h4{
  height:auto;
  }
.slick-prev, .slick-next{
  border:none;
  position:absolute;
  width:50px;
  height:100%;
  z-index:99999;
  background-color:transparent;
  top:20px;
  }
.slick-prev{
  left:0;
  }
.slick-next{
  right:0;
  }
.slick-prev i{
  font-size:2.4rem;
  color:#8ab5c5;
  background-color: white;
  border-radius: 120px;
  }
.slick-next i{
  font-size:2.4rem;
  color:#8ab5c5;
  background-color: white;
  border-radius: 120px;
  }
.slick-prev:focus,.slick-next:focus{
  outline:none;
  }




 
  
  
/*
.slick-slide.slick-current + .slick-active ~ .slick-slide{
  margin-left:5px;
  margin-right:5px;
  }
*/  
.tourinfos{
  font-family:AutoPro-BoldSmallCaps;
  /*font-weight:bold;*/
  font-size:11px;
  color:#222a22;
  letter-spacing:-0.22px;
  }
.slick-track .box .infolink,.tourenliste .box .infolink {
	position: absolute;
  bottom: 20px;
  right: 20px;
  font-family: AutoPro-BoldSmallCaps;
  font-size: 14px;
  color: #699333;
  letter-spacing: -0.26px;
  text-decoration: none;
  }
  
.einzeltour h1{
  display:inline-block;
  margin-right:20px;
  }
.einzeltour .infos{
  display:inline-block;
  margin-right:15px;
  text-transform:uppercase;
  }
.einzeltour .infos i{
  font-size:1.5rem;
  }

.touricons i{
  font-size:1.5rem;
  color:#699333;
  opacity:0.5;
  }
.touricons i.aktiv{
  color:#699333;
  opacity:1;
  }
.stationsinfo{
  border-bottom:1px solid #c3c7c8;
  border-top:none;
  border-left:none;
  border-right:none;
  margin-left:40px;
  position:relative;
  padding:15px 0;
  margin-right:15px;
  border-radius:0!important;
  }

.stationsinfo:before{
  content: "";
  position:absolute;
  left:-20px;
  top:0;
  height:100%;
  border-left:2px dotted black;
  }
.stationstitel{
  font-weight:bold;
  }
.stationstitel:before{
  content: "";
  left:-24px;
  width:10px;
  height:10px;
  border-radius:5px;
  border:2px solid #699333;
  background-color:#ffffff;
  position:absolute;
  top:5px;
  }
.stationen .stationsinfo:first-child:before{
  top:20px;
  height:calc(100% - 20px);
  }  
.stationen .stationsinfo:last-child:before{
  height:20px;
  }  
.stationen .accordion-button{
  background:none;
  color:inherit;
  padding:0;
  box-shadow:none;
  }
.stationen .accordion-button:after{
  content:"\e900";
  font-family: 'Railway-Regular' !important;
  speak: never;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  color: #699333;
  font-size: 1.3rem;
  }
/*  
  
.stationen .accordion-button:not(.collapsed):after{ 
  content:"\e903";
  }
  
  */
  
  
.stationsinfo .btn-link{  
  position: absolute;
  right: 0;
  top: 10px;
  color:#699333;
  font-size:1.3rem;
  }
.stationsinfo .btn-link.collapsed i:before{ 
  content:"\e900";
  }
.stationsinfo .card-body{    
  background-color: transparent;
  border: none;
  }
  
  
  
.carousel .bilderrahmen{
  height: 600px;
  overflow: hidden;
  display: flex;
  align-items: center;
  border-radius: 16px 16px 0 16px;
}
.carousel .carousel-caption{
  position:unset;
  color:initial;
  }
.carousel .carousel-indicators{
  bottom:70px;
  }
.carousel .carousel-indicators button{  
  box-sizing:border-box!important;
  height:14px!important;
  width:14px!important;
  border-radius:7px;
  border:2px solid #ffffff!important;
  }
.cursor{
  cursor:pointer;
  }

.artikelcontainer {
  border: 2px solid #89a550;
  padding: 15px;
  margin-bottom: 20px;
  cursor: pointer;
  position: relative;
  border-radius: 16px 16px 0 16px;
}

.artikelcontainer .artikel {
	margin-bottom: 0;
}

.artikelcontainer .titel {
    height: 24px;
    font-family: 'Miso', sans-serif;
    color: #89a550;
    text-transform: uppercase;
    overflow: hidden;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    text-overflow: ellipsis;
    -webkit-box-orient: vertical;
    margin: 0 0 10px 0;
}
.artikelcontainer h2{
  margin-top:0;
  line-height:1em;
  color:#89a550;
  font-size:1.3rem;
  }
.artikelcontainer .ratiobox:before{
  padding-top:70%;
  }
.artikelcontainer .preis{
  text-align: right;
  position: absolute;
  right: 15px;
  font-weight: 700;
  padding: 0;
  bottom: 15px;
  color: #666;
  font-size: 16px;
  }  
.artikelcontainer .ecke{
  width: 90px;
  border-left: 90px solid transparent;
  border-bottom: 40px solid #fff;
  display: block;
  position: absolute;
  right: 15px;
  font-weight: 700;
  bottom: 15px;
}  
.modal-content .artikelcontainer .titel{
  padding-bottom: 12px;
  height: 28px;
  margin: 0;
  font-size: 18px;
  -webkit-line-clamp: 1;
  }

.souvenirs .artikelcontainer{
  border: 2px solid #89a550!important;
  /*-webkit-box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.1), 0px 1px 2px rgba(0,0,0,0.2);*/
  /*-moz-box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.1), 0px 1px 2px rgba(0,0,0,0.2);*/
  /*box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.1), 0px 1px 2px rgba(0,0,0,0.2);*/
  margin-bottom: 20px;
  }
  
  
.artikel.mitStrich {
    border-bottom: 1px solid #ECECEC;
    padding-bottom: 20px;
}
.ratiobox {
    position: relative;
    width: 100%;
    background-color: #efefef;
    padding-left: 0!important;
    overflow: hidden;
}
.ratiobox:before{
  content:"";
  display:block;
  padding-top:100%; 	/* initial ratio of 1:1*/
  }
.ratiobox .content {
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    padding-left: 0!important;
    background-size: cover;
    background-position: center;
}
.modal{
  z-index:10000;
  }
.modal-content .artikelcontainer .titel {
    padding-bottom: 12px;
    height: 36px;
    margin: 0;
    font-size: 12px;
    -webkit-line-clamp: 1;
    }
.modal-header .close{
  position:absolute;
  right:10px;
  top:10px;
  font-size:1.5rem;
  background-color:transparent;
  border:none;
  }
.shop_kats {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    cursor: pointer;
    flex-grow: 0;
    margin: 0 10px 10px 0;
    padding: 5px 15px;
    background-color: #699333;
    color: #ffffff;
    border-radius: 7px;
}
.container.souvenirs form {
    display: flex;
    flex-wrap: wrap;
}
.shop_kats input[type="checkbox"] + .checkbox-ui {
    -webkit-appearance: none;
    -moz-appearance: none;
    width: 16px;
    height: 16px;
    color: #89a550;
    border-radius: 2px;
    font-size: 13px;
    display: flex;
    justify-content: center;
    align-items: center;
    cursor: pointer;
    font-family: "OBS_Regular";
    background: #fff;
}
.shop_kats input[type="checkbox"] {
    display: none;
}
.shop_kats .label {
    -webkit-user-select: none;
    padding-left: 10px;
}
.shop_kats input[type="checkbox"]:checked + .checkbox-ui:before {
    visibility: visible;
    content: "\e924";
}
.shop_kats input[type="checkbox"] + .checkbox-ui:before {
    display: flex;
    visibility: hidden;
}
.carousel-item .img-wrapper{
  height:245px;
  display:flex;
  align-items:center;
  }
@media(min-width:481px)and (max-width:767px){
  .carousel-item .img-wrapper{
    height:300px;
  }
}
@media(min-width:768px){
  .carousel-item .img-wrapper{
    height:370px;
  }
}
@media(max-width:991px){
  header{
    margin-bottom:0px;
  }
}
#overlay{
  width: 100%;
  height: 100%;
  background-color: transparent;
  align-items: stretch;
  position: absolute;
  z-index: 9999;
  }
img.rund {
  border-radius: 16px 16px 0 16px;
}
table.tarifuebersicht{
  border:none;
  }
table.tarifuebersicht p{
  margin:0;
}
table.tarifuebersicht tr{
  border-bottom:1px solid black;
  }
table.tarifuebersicht tr td:first-child{
  width: 30px;
  }
table.tarifuebersicht tr td{
  padding-top:5px;
  padding-bottom:10px;
  }
table.tarifuebersicht tr td:first-child p{
  border:2px solid #699333;
  width:10px;
  height:10px;
  border-radius:5px;
  margin-top:7px;
  margin-left:10px;
  }
.small{
  font-size:0.8rem;
  }
table.styled{
  border:none;
  }
table.styled p{
  margin:0;
}
table.styled tr{
  border-bottom:1px solid black;
  }
table.styled tr td:first-child{
  width:20px;
  }
table.styled tr td{
  padding-top:5px;
  padding-bottom:10px;
  }
table.styled tr td:first-child p{
  border:2px solid #699333;
  width:10px;
  height:10px;
  border-radius:5px;
  margin-top:7px;
  margin-left:10px;
  }
table.mitZellrahmen td{
  border:1px solid black;
  padding:5px;
  }
  
  
.wk_anzahl {
  display: inline-block;
  background: #000;
  color: #fff!important;
  line-height: 1!important;
  border-radius: 50%;
  width: 17px;
  height: 17px;
  text-align: center;
}

main {
	display:block; /*IE11 fix*/
}

.wimpel {
	position:absolute;
  right:0;
  bottom:0;
  padding:10px 20px;
  border-radius:15px 15px 0 15px;
  background:#e8c01f;;
  color:#fff;
  font-family: AutoPro-BlackItalic2;
  font-size:1.15rem;
}

.wimpel.green {
	background:#284528;
  color:#fff;
}

.wimpel.blue {
	background:#8ab5c5;
  color:#fff;
}

table.formatted {
	border:none;
}

table.formatted th {
	font-weight:bold;
 	background:#c2e892;
  text-transform:uppercase;
  padding-left:5px;
  padding-right:5px;
}

table.formatted tr:nth-Child(odd) td {
	background:#F7F7F7;
  padding-left:5px;
  padding-right:5px;
}

table.formatted tr:nth-Child(even) td {
	background:#FEFEFE;
  padding-left:5px;
  padding-right:5px;
}

table.formatted td b, table.formatted td strong {
	text-decoration:underline;
}




