/* Content Modules, col-12 col-md-6 col-lg-6 */

.headback { position: relative; }
FALSCH.headback-bg { position: absolute; top: 0; left: 0; right: 0; bottom: 0; background: rgba(0,0,0,0.35); }
.headback img { filter: brightness(65%); }

.bilditem { text-align: center; position: relative; margin: 30px 0; }   
.bilditem.fullwidth { margin: 0; } 
.bilditem img.normal { width: 100%; height: auto; }   
.bilditem img.realwidth { width: auto; max-width: 100%; height: auto; margin: 0 auto; }              
.bilditem.fullwidth img { width: 100%; height: auto; }

.fit-image { width: 100%; height: 100%; object-fit: cover; }
.img-icon { width: 70px; height: auto; margin: 0 auto 20px auto; }
.img-icon-empty { width: 70px; height: 70px; border-radius: 50%; background: #D5AE67; margin: 0 auto 20px auto; }
.download .img-icon-empty { background: #CFD0D0; }

.carousel-indicators { right: auto; margin: 10px 0 0 0; top: 100%; }
.carousel-indicators li { opacity: 1; width: 10px; height: 10px; border: 0; border-radius: 50%; background: #D5AE67; }
.carousel-indicators .active { background: #B6100E; }
@media only screen and (max-width:991px){   
.carousel-indicators { right: auto; margin: 0 0 10px 10px; top: auto; bottom: 0; }
}

.bildslider.standalone { padding-bottom: 100px; }
.standalone  .carousel-indicators { right: 0; margin: 20px auto; top: 100%; }    

.bildslider .carousel-control-next, .bildslider .carousel-control-prev { opacity: 1 !important; }   
.bildslider .carousel-control-next { text-align: right; padding-right: 15px; }
.bildslider .carousel-control-next-icon { background: url('../media/pfeil_rechts_weiss.svg') center right no-repeat transparent; width: 100%; height: 48px;}
.bildslider .carousel-control-prev { text-align: left; padding-left: 15px; }    
.bildslider .carousel-control-prev-icon { background: url('../media/pfeil_links_weiss.svg') center left no-repeat transparent; width: 100%; height: 48px; }

@media only screen and (min-width:992px){ 
.bildslider.standalone { max-width: 1430px; padding-left: 8.333%; padding-right: 8.333%; margin-left: auto; margin-right: auto; }
}

/* Allgemein */

h1, h1.h1, h2.h1, h3.h1, h4.h1 { font-family:'playfair_displayregular',sans-serif; color: #1f3a57; font-size: 75px; line-height: 80px; text-transform: none; letter-spacing: 0; margin: 0.5em auto; font-weight: normal; }    
h2, h1.h2, h2.h2, h3.h2, h4.h2 { font-family:'playfair_displayregular',sans-serif; color: #1f3a57; font-size: 55px; line-height: 55px; text-transform: none; letter-spacing: 0; margin: 1em auto; font-weight: normal; }    
h2 span, h1.h2 span, h2.h2 span, h3.h2 span, h4.h2 span {  display: block; font-family:'roboto_condensedregular',sans-serif; color: #b6100e; font-size: 20px; line-height: 24px; text-transform: uppercase; letter-spacing: 1px; font-weight: normal;  }
h3, h1.h3, h2.h3, h3.h3, h4.h3 { font-family:'playfair_displayregular',sans-serif; color: #1f3a57; font-size: 45px; line-height: 55px; text-transform: none; letter-spacing: 0; margin: 0.5em auto; font-weight: normal; }                               
h4, h1.h4, h2.h4, h3.h4, h4.h4 { font-family:'playfair_displayregular',sans-serif; color: #1f3a57; font-size: 30px; line-height: 36px; text-transform: none; letter-spacing: 0; margin: 0 auto; font-weight: normal; } 
h5, h1.h5, h2.h5, h3.h5, h4.h5 { font-family:'roboto_condensedregular',sans-serif; color: #b6100e; font-size: 20px; line-height: 24px; text-transform: uppercase; letter-spacing: 1px;  font-weight: normal; padding-top: 45px; background: url('../media/bachmann-icon-blau.svg') top center no-repeat transparent; background-size: 25px auto;}
h1.gold, h2.gold, h3.gold, h4.gold { font-family:'playfair_displayregular',sans-serif; color: #D5AE67; font-size: 90px; line-height: 90px; text-transform: uppercase; letter-spacing: 3px; margin: 30px auto 0.6em auto;}    

h4 a { color: #1f3a57 !important; }

h5 + .h2 { margin-top: 0.5em; }
.headline h5 + h2 { margin-top: 0.2em; }

.longtext, .longtext p { font-family:'roboto_condensedregular',sans-serif; color: #6f6f6e; font-size: 16px; line-height: 28px; text-transform: none; letter-spacing: 0; }
.longtext strong, .longtext p strong { font-family:'roboto_condensedbold',sans-serif; text-transform: uppercase; font-weight: normal; }                                                                                                 
.btn-default, a.btn-default, span.btn-default, input.btn-default { border: 1px solid #b6100e !important; border-radius: 0; padding: 5px 25px; }
.btn-default, a.btn-default, span.btn-default, input.btn-default { font-family:'roboto_condensedbold',sans-serif; color: #b6100e; font-size: 14px; line-height: 28px; text-transform: uppercase; letter-spacing: 2px; }                                                                                            
.btn-default:hover, a.btn-default:hover, span.btn-default:hover, input.btn-default:hover { background: #b6100e !important; color: #F2F2F2 !important; }

.btn-wichtig { font-family:'roboto_condensedbold',sans-serif; color: #fff !important; background: #b6100e !important; font-size: 30px; line-height: 40px; text-transform: uppercase; letter-spacing: 1px; border-color: #b6100e !important; margin: 0; padding: 10px 30px; }


.dark h5 { color: #fff; background: url('../media/bachmann-icon-gold.svg') top center no-repeat transparent; background-size: 25px auto;}
.dark .h2 { color: #D5AE67 !important; margin: 15px auto 30px; }
.dark .longtext, .dark .longtext p { color: #fff; }      
.dark .btn-default { color: #D5AE67 !important;; border-color: #D5AE67 !important; }                                                                                            
.dark .btn-default:hover { background: transparent !important; color: #D5AE67 !important; }

div.button { margin: 1em auto 2em auto; }   
.dark div.button { margin: 2em auto 2em auto; }

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

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

                                                                                                                    
h1, h1.h1, h2.h1, h3.h1, h4.h1 { font-size: 50px; line-height: 55px; text-transform: none; letter-spacing: 0;}       
h2, h1.h2, h2.h2, h3.h2, h4.h2 { font-size: 35px; line-height: 35px; text-transform: none; letter-spacing: 0;}    
h3, h1.h3, h2.h3, h3.h3, h4.h3 { font-size: 25px; line-height: 30px; text-transform: none; letter-spacing: 0;}                                  
h4, h1.h4, h2.h4, h3.h4, h4.h4 { font-size: 20px; line-height: 25px; }              
h5, h1.h5, h2.h5, h3.h5, h4.h5 { font-size: 17px; line-height: 20px; text-transform: uppercase; letter-spacing: 1px; }   
h1.gold, h2.gold, h3.gold, h4.gold { font-size: 50px; line-height: 55px; text-transform: uppercase; letter-spacing: 2px; }             

.longtext, .longtext p { font-family:'roboto_condensedregular',sans-serif; color: #6f6f6e; font-size: 14px; line-height: 25px; text-transform: none; letter-spacing: 0; }
.longtext strong, .longtext p strong {}                      
.btn-default, a.btn-default, span.btn-default, input.btn-default { }
.btn-wichtig { margin-top: 1em; display: block; width: 100%; }
  
}


/* MODULE: TEXT  */
                                                  
.headline { text-align: center; margin: 50px auto; }
.textmitbild { text-align: center; margin: 50px auto; }   
.textohnebild { text-align: center; margin: 50px auto; }
.textzweispaltig { text-align: center; margin: 50px auto; padding: 50px 0; background: url('../media/bachmann-icon-hintergrund-2.svg?v=4') center center no-repeat transparent; background-size: auto 100%; }    
.textzweispaltig .longtext { text-align: left; }       
.textzweispaltig .textzweispalten { column-count: 2; column-gap: 30px; }  
    
@media only screen and (max-width:575px){   
.textzweispaltig .longtext { text-align: center; }       
.textzweispaltig .textzweispalten { column-count: 1; column-gap: 0; }  
}  
@media only screen and (orientation:portrait) {             
.textzweispaltig { background-size: 90% auto; background-position: top center; }    
}

.statement { text-align: center; margin: 50px auto; }   

.dreizahlen { background: url('../media/bachmann-icon-hintergrund-3.svg?v=5') center center no-repeat #1F3A57; background-size: 440px auto; padding: 0 0 90px 0; text-align: center; }
.zahl { font-family:'playfair_displayregular',sans-serif; color: #d5ae67; font-size: 150px; line-height: 180px; text-transform: none; letter-spacing: 0; margin-top: 50px; }
.zahltext { font-family:'robotobold',sans-serif; color: #fff; font-size: 16px; line-height: 24px; text-transform: uppercase; letter-spacing: 0; }


.angebotsbox { text-align: center; margin: 0 auto; background: #F2F2F2; }      
.no-gutters .longtext { padding: 0 16%;}    
.angebotsbox.bildlinks .textbereich { margin-right: auto; }    
.angebotsbox.bildrechts .textbereich { margin-left: auto;  }
.angebotsbox .h2 { margin-bottom: 0.5em; }            
.angebotsbox .textbereich { width: 100%; }    
@media only screen and (min-width:1430px){   
.angebotsbox .textbereich { width: 715px; max-width: 100%; }    
}    
@media only screen and (max-width:991px){   
.no-gutters .longtext { padding: 0 30px;}    
}    
@media only screen and (max-width:575px){        
.angebotsbox { margin-bottom: 15px; }
} 


.angebotsbox.dark { background: #1F3A57; }    
.angebotsbox.dark .textbereich { padding-top: 30px; }   

.verticol { display: flex; justify-content: center; flex-direction: column;  }

/*
.buttonbox { width: 30%; width: calc(33.333% - 15px); display: inline-block; margin: 15px; text-align: center; }       
@media only screen and (max-width:991px){   
.buttonbox { width: 100%; margin: 15px 0;}    
}  
*/ 
.buttonbox { margin-bottom: 30px; }
.buttonbox .inner { text-align: center;  background: #F2F2F2; padding: 15px 15px 30px 15px; }    
.buttonbox h5 { background: transparent !important; }
.buttonbox hr { width: 30px; margin: 5px auto 10px auto; padding: 0; border-top: 1px solid #B6100E; }  

.justbuttonbox, .justbuttonboxwiemenu { margin-bottom: 30px; }

.justbuttonbox .inner { text-align: center; padding: 15px 15px 30px 15px; }

.justbuttonboxwiemenu .inner {
	text-align: center; padding: 15px 15px 30px 15px;  border: 3px solid #F2F2F2;
}

.justbuttonbox a.btn-default {
	font-size: 28px;
    line-height: 38px;
}

.justbuttonboxwiemenu .inner a:hover img {
    filter: brightness(65%);
}

.justbuttonboxwiemenu .inner h3 {
    font-size: 37px;
    line-height: 45px;
}
.justbuttonboxwiemenu .inner img {
    max-height: 230px;
}

.justbuttonbox:first-child .button {
	text-align: right;
}

.justbuttonbox:last-child .button {
	text-align: left;
}

.justbuttonbox:first-child .buttontext {
	text-align: right;
}

.justbuttonbox:last-child .buttontext {
	text-align: left;
}

@media only screen and (max-width:991px){   
	.justbuttonbox .button {
		text-align: center!important;
	}
	.justbuttonbox .buttontext {
		text-align: center!important;
	}
}

.vorteilsbox .inner { text-align: center; padding: 15px 15px 30px 15px; }     
.vorteilsbox .inner .longtext { padding-top: 10px; }   

.zitat { margin: 80px 0; }
.zitat h5 { background: transparent !important; padding-top: 0; padding-bottom: 30px;  }
.zitat hr { width: 30px; margin: 5px auto 10px 0; padding: 0; border-top: 1px solid #B6100E; }                                
.zitat .longtext, .zitat .longtext p { font-family:'playfair_displayregular',sans-serif; color: #d5ae67; font-size: 35px; line-height: 45px; text-transform: none; letter-spacing: 0; }    
.zitat .autor { font-family:'robotobold',sans-serif; color: #1F3A57; font-size: 16px; line-height: 25px; text-transform: none; letter-spacing: 0; } 
.zitat .autorpos { font-family:'robotoregular',sans-serif; color: #1F3A57; font-size: 16px; line-height: 25px; text-transform: none; letter-spacing: 0; }     
.zitat .img-centered { text-align: center; justify-content: center; flex-direction: column; align-items: center; }    
.zitat .img-centered img{  }    
@media only screen and (max-width:991px){   
.zitat { text-align: center; }    
.zitat hr {margin: 5px auto 10px auto; }     
.zitat h5 { padding-top: 40px; padding-bottom: 15px; }   
}   
@media only screen and (max-width:575px){   
.zitat .longtext, .zitat .longtext p { font-size: 25px; line-height: 30px; }      
} 

.horizontalbox { margin-bottom: 15px; position: relative; }  
.horizontalbox .h4 { padding-top: 0; padding-bottom: 5px;  }
.horizontalbox  h5 { background: transparent !important; padding-top: 0; padding-bottom: 15px; }    
.horizontalbox .button { text-align: right; margin-bottom: 0; }              
.horizontalbox .row > div { display: flex; justify-content: center; flex-direction: column; text-align: left; }      
.horizontalbox .row .greyed { padding: 15px 30px; background: #F2F2F2; }         
.horizontalbox .row .golded { background: #D5AE67; }             
.horizontalbox .row.eingeklappt { display: none !important; }   
.horizontalbox .no-gutters .longtext { padding: 0;}      
.horizontalbox .longtext strong { font-family:'roboto_condensedregular',sans-serif; color: #b6100e; font-size: 20px; line-height: 24px; text-transform: uppercase; letter-spacing: 1px;  font-weight: normal; }

.horizontalbox .closelong { position: absolute; top: 0; right: 0; width: 30px; height: 30px; z-index: 999; }
.horizontalbox .closelong a { cursor: pointer; display: block; position: absolute; right: 0; top: 0; bottom: 0; left: 0; width: 30px; background: url('../media/navi-close.svg') center center no-repeat #B6100E; background-size: contain; }     
.horizontalbox .closelong a span { display: none; }
.horizontalbox .closelong { display: none; }
.horizontalbox.ausgeklappt .closelong { display: block; }     
.horizontalbox.ausgeklappt .button.showlong { display: none; }

@media only screen and (max-width:575px){   
.horizontalbox .row > div { text-align: center; }         
.horizontalbox .button { text-align: center; }  
.horizontalbox  .h4 { padding-top: 30px; }            
} 


.greyed ul, .greyed ul li { margin-left: 0; padding-left: 0; list-style: none; }  
.greyed ul li { background: transparent; padding: 2px 0 2px 12px; border-bottom: 0; position: relative; }    
.greyed ul li:before { content: ""; position: absolute; display: block; top: 0; left: 0; width: 8px; height: 17px; border-bottom: 1px solid #6f6f6e; }  


.bildtrenner { text-align: center; margin: 0; position: relative; }    
.bildtrenner .inner { position: relative; z-index: 3; padding: 90px 0; background: rgba(0,0,0,0.35);}
.bildtrenner .bgbild { position: absolute; z-index: 2; top: 0; left: 0; right: 0; bottom: 0; }           
.bildtrenner .row > div { display: flex; justify-content: center; flex-direction: column; text-align: center; }   
.bildtrenner  h5 { background: transparent !important; padding-top: 0; padding-bottom: 0; color: #fff !important; }      
.bildtrenner .h3 { color: #fff !important; }       
.bildtrenner .button { margin-bottom: 0; }    
.bildtrenner .btn-default { color: #fff !important; border-color: #fff !important; }                                                                                            
.bildtrenner .btn-default:hover { background: transparent !important; color: #fff !important; }     
@media only screen and (max-width:575px){   
.bildtrenner .inner { padding: 45px 0; }      
.bildtrenner .button { margin-top: 0.5em; }       
} 
                                                                 
.bildtrenner.headbereich { margin-bottom: 80px; }    
.bildtrenner.headbereich .inner { padding: 200px 0 120px 0; }       
@media only screen and (max-width:991px){   
.bildtrenner.headbereich .inner { padding: 15% 0; }            
} 
.bildtrenner.headbereich .inner .h1 { color: #fff; }
       
.bildtrenner.ohnebild { margin-bottom: 80px; background: #1F3A57; }    
.bildtrenner.ohnebild .inner { padding: 200px 0 120px 0; background: transparent;}   
@media only screen and (max-width:991px){   
.bildtrenner.ohnebild .inner { padding: 15% 0; }            
} 
.bildtrenner.ohnebild .inner .h1 { color: #fff; }

.panel-group + .panel-group .panel-heading h5 a { border-top: 1px solid transparent; margin-top: 0; }       
.panel-default { border-bottom: 1px solid #1f3a57; }    

.panel-heading h5 { background: transparent !important; padding: 0; margin: 0; }    
.panel-heading h5 a { display: block; background: transparent !important; padding: 15px 35px 15px 0; margin: 15px 0 0 0; border-top: 1px solid #1f3a57; position: relative; }      
.panel-heading h5 a.collapsed { color: #B6100E !important; }        
.panel-heading h5 a { border-bottom: 1px solid transparent; color: #1f3a57 !important; }                                     
.panel-heading h5 a i { position: absolute; top: 15px; right: 0; width: 24px; height: 1em; background: url('../media/akkordeon-minus.svg') center center no-repeat transparent; background-size: contain;  }    
.panel-heading h5 a.collapsed i { background: url('../media/akkordeon-plus.svg') center center no-repeat transparent; background-size: contain;  }  
@media only screen and (max-width:575px){   
.panel-default { text-align: left; }      
.panel-heading h5 a i { width: 20px;  }    
}  


.footernews { background: #1F3A57; padding: 40px; text-align: center; }     
.footernews form  { display: block; margin: 0 auto; max-width: 300px; }
.footernews .nl_toplabel { font-family:'playfair_displaybold',sans-serif; font-size: 28px; line-height: 26px; color: #D5AE67; margin: 20px 0 0 0; padding: 0; padding-top: 55px; background: url('../media/info.svg') top center no-repeat transparent; background-size: 38px auto; }      
.footernews .nl_sublabel { font-family:'roboto_condensedregular',sans-serif; font-size: 13px; line-height: 26px; color: #8f9cab; text-transform: uppercase; margin: 0; padding: 0; padding-bottom: 30px; }               
.footernews .nl_hinweis { font-family:'roboto_condensedregular',sans-serif; font-size: 13px; line-height: 18px; color: #8f9cab; text-transform: none; margin: 0; padding: 0; }                      
.footernews .nl_hinweis a { color: #8f9cab; }    
.footernews .nl_hinweis { max-width: 510px; margin: 0 auto; }                

.footernews form input { border: 0; border-radius: 0; font-family:'roboto_condensedregular',sans-serif; font-size: 13px; line-height: 26px; text-transform: uppercase;}         
.footernews form .input-group-prepend { min-width: 200px; }    
.footernews form .input-group-prepend input { color: #1F3A57; background: #8f9cab; outline: 0 !important; }
.footernews form input.formsubmit, .footernews form .btn-suche { background: #B6100E; color: #D5AE67; border-color: #B6100E; }   
  
@media only screen and (max-width:575px){      

.footernews .nl_toplabel { font-size: 25px; line-height: 26px; }    
.footernews .nl_sublabel { font-size: 18px; line-height: 24px; }    
.footernews .nl_hinweis { font-size: 18px; line-height: 22px; }

}

.zimmerdetails { margin: 30px 0; padding: 10px 0 30px; border-top: 1px solid #D5AE67; }               
.zimmerdetails .h3 { margin-bottom: 0; }
.zimmerdetails h4.h5 { background: transparent !important; padding: 0; margin: 0; font-family:'playfair_displayregular',sans-serif; font-size: 32px; line-height: 45px; color: #B6100E; text-transform: none; letter-spacing: 0; }    
.zimmerdetails .detailcol { background: #1F3A57; position: relative; padding: 25px; }       
.zimmerdetails .groesse { background: transparent !important; padding: 0; margin: 0; font-family:'playfair_displayregular',sans-serif; font-size: 64px; line-height: 64px; color: #d5ae67; text-transform: none; letter-spacing: 0; }
.zimmerdetails .groesse small { font-size: 0.7em; font-weight: normal; }  
.zimmerdetails .button { position: absolute; top: 0; right: 0; white-space: nowrap; margin: 0 !important; padding: 0; line-height: 20px;  }
.zimmerdetails .zimmerbooking { font-family:'robotobold',sans-serif; color: #fff !important; background: #b6100e !important; font-size: 18px; line-height: 28px; text-transform: uppercase; letter-spacing: 0; border-color: #b6100e !important; margin: 0; padding: 0 10px; }
.zimmerdetails .zimmer { margin-top: 70px; padding-top: 10px; border-top: 1px solid #D5AE67; }
.zimmerdetails .zimmer { text-align: right; font-family:'robotobold',sans-serif; color: #d5ae67; font-size: 16px; line-height: 35px; }     
.zimmerdetails .zimmer span { color: #fff; font-size: 22px; line-height: 35px; }

 .zimmerdetails .detailcol .longtext { padding: 0; }
.zimmerdetails ul, .zimmerdetails ul li { margin-left: 0; padding-left: 0; list-style: none; }  
.zimmerdetails ul li { background: transparent; padding: 2px 0 2px 12px; border-bottom: 0; position: relative; }    
.zimmerdetails ul li:before { content: ""; position: absolute; display: block; top: 0; left: 0; width: 8px; height: 17px; border-bottom: 1px solid #D5AE67; }  

.zimmerdetails .bildslider { margin: 20px 0; }
@media only screen and (max-width:991px){   
.zimmerdetails .bildslider { margin: 20px 0 0 0; }    
}
@media only screen and (max-width:575px){   
.zimmerdetails .h3, .zimmerdetails .h5 { text-align: center; }    
.zimmerdetails h4.h5 {font-size: 20px; line-height: 25px;}      
.zimmerdetails .detailcol { padding: 15px 15px 60px 15px; }  
.zimmerdetails .zimmer { margin-top: 10px; }
.zimmerdetails .zimmer span { display: block; }
.zimmerdetails .button { position: absolute; top: auto; bottom: 0; right: 0;  }
} 


.headlinegold { text-align: center; margin: 50px auto 100px auto; }
.headlinegold .longtext, .headlinegold .longtext p { font-family:'roboto_condensedregular',sans-serif; color: #1f3a57; font-size: 25px; line-height: 30px; text-transform: none; letter-spacing: 0; }

.hotelliste { padding: 50px 0; margin: 0 -2px; width: calc(100% + 4px); }
.singlepage { position: relative; border: 2px solid #fff;  vertical-align: middle;  }
.singlepage a { display: flex; position: absolute; top: 0; left: 0; right: 0; bottom: 0; text-align: center; vertical-align: middle;  justify-content: center; flex-direction: column; background: rgba(0,0,0,0.35); }
.singlepage a .titel { font-family:'playfair_displayregular',sans-serif; color: #fff; font-size: 26px; line-height: 26px; text-transform: uppercase; letter-spacing: 1px;  font-weight: normal; padding-top: 45px; background: url('../media/bachmann-icon-weiss.svg') top center no-repeat transparent; background-size: 25px auto; max-width: 10em; margin: 0 auto; }
.singlepage a .ortsname {  display: block; font-family:'roboto_condensedbold',sans-serif; color: #d5ae67; font-size: 15px; line-height: 32px; text-transform: uppercase; letter-spacing: 1px; font-weight: normal;  }

.singlepage a:hover { z-index: 5; background: transparent; outline: 15px solid #D5AE67; outline-offset: -5px;}   
.singlepage a:hover * { display: none; }

       
@media only screen and (max-width:575px){     
.singlepage.special { padding-top: 75%; }  
}                                                                                                             
.singlepage a.special { background: #B6100E; }                                                                           
.singlepage a.special .titel { background: transparent; padding-top: 0; }  
.singlepage a.special:hover { background: #B6100E;}   
.singlepage a.special:hover * { display: block; }

.tabelle { margin: 30px 0; }
.tabelle table { min-width: 100%; font-size: 16px; line-height: 20px; table-layout: fixed; }     
.tabelle table td { padding: 8px 25px 8px 0; width: auto; }
.tabelle table tr td strong { white-space: nowrap; font-family:'roboto_condensedbold',sans-serif; font-weight: normal; }  
.tabelle table td, .tabelle table td p { min-width: 100%; font-size: 16px; line-height: 20px; }
.table td, .table th { border-top: 0; border-bottom: 1px solid #6F6F6E; }

.search_it-result { padding: 30px 0 15px 0; margin: 0; border-top: 1px solid #6F6F6E; }  
.search_it-result h4 { margin-bottom: 15px; }
.suchbegriff { font-family:'playfair_displayregular',sans-serif; color: #6F6F6E; font-size: 25px; line-height: 36px; text-transform: none; letter-spacing: 0; margin: 0 auto 30px auto; font-weight: normal; }


/* Formular */  

::-webkit-input-placeholder{color:#555 !important; }
:-moz-placeholder{color:#555 !important; }
::-moz-placeholder{color:#555 !important;  }
:-ms-input-placeholder{color:#555 !important;  }
input::-webkit-input-placeholder{color:#555 !important;  }
input:-moz-placeholder{color:#555 !important;  }
input::-moz-placeholder{color:#555 !important;  }
input:-ms-input-placeholder{color:#555 !important;  }
textarea::-webkit-input-placeholder{color:#555 !important;  }
textarea:-moz-placeholder{color:#555 !important;  }
textarea::-moz-placeholder{color:#555 !important;  }
textarea:-ms-input-placeholder{color:#555 !important;  }
.formgen{position:relative;   }
label,select,input[type=checkbox],input[type=radio],input[type=button],input[type=submit]{cursor:pointer; }
.formgen form{}
.formgen .formblock{ padding-top: 5px; }
.formgen fieldset{border:0; margin:0; padding:0; clear: both; margin-top: 60px; }
.formgen fieldset:after { content: ""; display: table; clear: both; }
/* .forminfo{margin:0 0 1em 0; background:transparent; color:#b9bec2; padding:30px;}    */
.forminfo{margin:0 0 1em 0; background: #B6100E; color:#fff; padding:30px;}
.formhinweis{text-align:right; text-transform:none; padding:5px 0; }
#form-module-thanks{margin:0 0 1em 0; background:#D5AE67; color: #1F3A57; padding:30px; border-radius:0; }
#form-module-thanks p,#form-module-thanks p strong{color: #1F3A57; padding:0; }
.formgen br{display:none; }
.formgen .formnote{}
.rex_375_text,.formgen .formtextfield,.formgen .formtext,.formgen .formselect,.formgen input[type="file"]{display:block; padding:5px 5px; margin:0 0 5px 0; border:0; float:none; width:100%;  border-radius:0; box-shadow:0; }
.formgen input[type="file"],.formgen input[type="file"]:hover,.formgen input[type="file"]:focus{}
.formgen div.formtext{}
.formgen div.formtext:after{content:""; display:table; clear:both; }
.formgen .formselect{padding:2px 2px 2px 0; width:35%; margin-right:40%; }
.formgen input:focus, .formgen input:hover,.formgen select:focus, .formgen select:hover, .formgen textarea:focus, .formgen textarea:hover{}
.xform label,.formgen label{text-transform:none; width:100%; display:block; position:relative; }
.formgen legend{text-transform:none; width:100%; display:block; border:0; text-transform:none; margin:18px 0; font-weight:normal; }
span.checkspan{margin-left:0; }
span.checkspan:after{content:""; display:table; clear:both; }
.formgen .checkspan input{width:auto;clear:left;float:left; border-color:#fff; }
.formgen input[type="checkbox"],.formgen input[type="checkbox"]:focus{outline:0; outline-offset:0; line-height:1.6em; }
.formgen .checkspan label{width:93%;clear:left;float:right; height:auto; padding:0 0 2px 0; margin:0; font-weight:400; border-bottom:0; text-transform:none; }
.formgen .checkspan input[type="radio"],.formgen .checkspan input[type="checkbox"]{margin-top:6px; }
.formgen input.formradio{margin-left:0; width:20px; margin-top:2px; }
.formgen label.formradio{width:100%;clear:right;float:right; height:auto; padding:0 0 2px 0; margin:0; font-weight:normal; border-bottom:0;}
.rex_375_text,.formgen .formtextfield,.formgen .formtext,.formgen .formselect,.formgen input[type="file"]{float:none; width:100%; border:0; border-left:0;  height:auto;  background:transparent; color:#1F3A57; border-radius:0; text-align:left; padding:5px 0; line-height:1.2em; }
.formgen input[type="file"],.formgen input[type="file"]:hover,.formgen input[type="file"]:focus{float:none; width:100%; }
.xform label,.formgen label{float:none; width:100%; border:0; border-right:0; padding:5px 0; clear:both; background:transparent; border-radius:0; text-align:left; font-weight:normal; }
.formgen .txtar label{float:none; width:100%; }
.formgen textarea.formtextfield{width:100%; float:none; resize:none; height:160px; }
.xform label,.formgen label {display:block; margin-bottom:0; padding-bottom:0; }
.formgen legend{ margin:0 0 30px 0;  }
.formgen .checkspan{}
.formgen .checkspan input{}
.formgen .checkspan label{background:transparent; display:block; width:calc(100% - 30px); padding-bottom:12px; }
.formgen .radiofield label {position:relative; clear:right; float:none; background:transparent; display:inline-block; width:auto; margin-right:30px; padding-right:25px; height:auto; line-height:1em; padding-bottom:15px; padding-left:0px;  }
.formgen .radiofield label input{position:absolute; right:0; top:0; }
label.radiotop{display:none; }
.pflichtfelder{clear:left; text-align:left; padding:20px 0 10px 0; }
.rex_375_text,.formgen .formtextfield,.formgen .formtext,.formgen .formselect,.formgen input[type="file"]{border-top:0; padding: 10px 15px; background: #fff; border: 1px solid #6F6F6E; }
.formhinweis{border-top:0; padding:5px 0; }
.datenschutz-form .checkspan label { font-family: 'roboto_condensedregular',sans-serif; letter-spacing: 0px; color: #6f6f6f; font-size: 16px; line-height: 20px;}


.radiofield { width: auto; float: left; }

.formgen .formsubmit,.btn-default:hover, a.btn-default:hover, span.btn-default:hover, input.btn-default:hover { background: #b6100e !important; color: #F2F2F2 !important; }
.xform label, .formgen label { font-family:'robotoregular',sans-serif; color: #B6100E; font-size: 20px; line-height: 34px; text-transform: none; letter-spacing: 1px; }         
.xform label.formerror, .formgen label.formerror { color: #fff; background: #B6100E;  }
.formgen .radiofield label { font-family:'robotoregular',sans-serif; font-size: 20px; line-height: 34px; color: #1F3A57; }
.rechtstext, .rechtstext p, .pflichtfelder { color: #6f6f6f; max-width: 80%; line-height: 20px; }
.submitblock { float: right; width: auto; padding-top: 20px; }
@media only screen and (min-width:992px){   
.formgen { padding: 0 8.333%; }       
.rechtstext { padding: 0 8.333%; }    
}
.rechtstext { clear: both; padding-bottom: 50px; }

/* Buchungs-Bereich */

.buchungsbox { position: relative; }
.buchungsbox .inner { position: absolute; top: 0; left: 50px; bottom: 0; right: 50px; text-align: center;  display: flex; justify-content: center; flex-direction: column; }       
.buchungsbox .inner h1.h1, .buchungsbox .inner div.h1 { font-family:'roboto_condensedregular',sans-serif; color: #fff; font-size: 26px; line-height: 32px; text-transform: uppercase; letter-spacing: 1px;  font-weight: normal; }    
.buchungsbox .inner h1.h1 span, .buchungsbox .inner div.h1 span { display: block; font-family:'playfair_displayregular',sans-serif; color: #fff; font-size: 95px; line-height: 98px; text-transform: none; letter-spacing: 0;  font-weight: normal; padding-top: 80px; background: url('../media/bachmann-icon-weiss.svg') top center no-repeat transparent; background-size: 45px auto; }

.ls_booking_section { position: absolute; bottom: 30px; left: 0; right: 0;  z-index: 10; text-align: center; }
.ls_booking_section form { margin: 0 auto; padding: 0; width: 600px; text-align: center; }    
.ls_booking_section form > .row { background: #F2F2F2;  }                   
.ls_booking_section form > .hotelwahl { background: #F2F2F2; text-align: left; padding: 4px; margin-bottom: 3px; }    
.ls_booking_section form > .hotelwahl label { display: none; }                                          
.ls_booking_section form > .hotelwahl select { display: block; width: 100%; border:0; outline: 0; }
.ls_booking_section .col-md-20p, .ls_booking_section .col-md-3 {  display: flex; justify-content: center; flex-direction: column; border-right: 1px solid #CFD0D0; vertical-align: center; position: relative; }                                              
.ls_booking_section .col-submit { background: #B6100E; border-right: 0; }                                               
.ls_booking_section .col-submit button { font-family:'roboto_condensedbold',sans-serif; color: #fff; font-size: 15px; line-height: 20px; text-transform: uppercase; letter-spacing: 2px;  font-weight: normal; width: 100%; min-height: 100px; }                                        
.ls_booking_section label { font-family:'roboto_condensedregular',sans-serif; color: #c5c6c6; font-size: 14px; line-height: 14px; text-transform: uppercase; letter-spacing: 1px;  font-weight: normal; white-space: nowrap; padding: 10px 15px 0; }

.ls_booking_section .angaben { display: flex; flex-wrap: wrap; }
.ls_booking_section .angaben .wertbereich { flex: 0 0 60%; min-height: 70px; }      
.ls_booking_section .angaben .changer {  flex: 0 0 40%; text-align: center;  }     
.ls_booking_section .angaben .wert { font-family:'playfair_displayregular',sans-serif; color: #1f3a57; font-size: 50px; line-height: 50px; text-transform: none; letter-spacing: 0; margin: 0; font-weight: normal; text-align: center; padding: 0 5px 5px 15px; }     
.ls_booking_section .angaben .smallwert { font-family:'playfair_displayregular',sans-serif; color: #B6100E; font-size: 13px; line-height: 18px; text-transform: none; letter-spacing: 1px; margin: 0; font-weight: normal; text-align: center; padding: 7px 0 0 0; }
.ls_booking_section .angaben .wertbereich .smallwert { text-align: left; padding-left: 15px; }
.ls_booking_section .angaben .changer > div {  height: 25px;  }                               
.ls_booking_section .angaben .changer > .change_up {   cursor: pointer; }                  
.ls_booking_section .angaben .changer > .change_down {   cursor: pointer; }   


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

.buchungsbox { margin-bottom: 15px; overflow: visible; }  
.ls_booking_section { position: relative; bottom: auto; left: 0; right: 0;  z-index: 10; text-align: center; }
.ls_booking_section form { margin: 15px auto; padding: 0; width: 600px; max-width: 90%; text-align: center; }          
/*
.ls_booking_section { bottom: -50px;} 
.ls_booking_section .col-md-20p {  display: none; }    
.ls_booking_section .col-md-3 {  display: none; }                              
.ls_booking_section form > .hotelwahl { display: none; }                                      
.ls_booking_section .col-submit { display: block; background: #B6100E; border-right: 0; width: 100%; max-width: 100%; flex: 0 0 100%; }    
.ls_booking_section form { width: 260px; }         
*/                                                              
.ls_booking_section .col-6 {  border-bottom: 1px solid #CFD0D0;  }    
.ls_booking_section .col-6:first-child {  border-left: 1px solid #CFD0D0;  }        
.ls_booking_section .col-6:nth-child(1) {  border-top: 1px solid #CFD0D0;  }     
.ls_booking_section .col-6:nth-child(2) {  border-top: 1px solid #CFD0D0;  }     
.ls_booking_section .col-6:nth-child(3) {  border-top: 1px solid #CFD0D0; }     

.ls_booking_section .col-6:nth-child(3) {  border-top: 1px solid #CFD0D0;  }     

                                                                
.buchungsbox .inner h1.h1 span, .buchungsbox .inner div.h1 span { font-size: 20px; line-height: 25px;  }   
.buchungsbox .inner h1.h1 span, .buchungsbox .inner div.h1 span  { font-size: 50px; line-height: 55px; padding-top: 45px; background-size: 25px auto; }     
.buchungsbox .inner { padding-bottom: 60px; }    
}   
@media only screen and (max-width:575px){                       
.ls_booking_section .col-6:nth-child(3) {  border-left: 1px solid #CFD0D0; border-top: 0; }     
}     

input.datumselect { cursor: pointer; opacity: 0; position: absolute; top: 0; left: 0; right: 0; bottom: 0; display: block; min-height: 100px; }

.daterangepicker .drp-selected { display: none; }
.daterangepicker .drp-buttons .cancelBtn { display: none; }   
.daterangepicker .drp-buttons .applyBtn { border-radius: 0 !important; border: 0 !important; color: #ffffff !important; background: #B6100E !important;text-transform: uppercase; font-size: 15px; line-height: 15px; padding: 3px 5ppx; font-weight: 700; margin: 0 0 0 0; }

.daterangepicker td.active, .daterangepicker td.active:hover { background-color: #B6100E; }   

.eventlist .eventitem.offline { outline: #B6100E dashed 4px; }   