
body {
	font-family: 'Montserrat', sans-serif;
	font-weight: 300;
	color: #666
}



header {
  padding: 154px 0 100px;
}

@media (min-width: 992px) {
  header {
    padding: 156px 0 100px;
  }
}

section {
  padding: 100px 0;
}
@media (max-width: 600px) {
 	section {
 		padding: 60px 0;
	}
}





section .container {
	margin: 0 auto;
	max-width: 1100px;
	padding: 0 10%
}





/* --------- Master-Head
================================================== */

header.masthead {
    background: url('../images-ws/49446043_s.jpg') no-repeat top center scroll;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    background-size: cover;
    -o-background-size: cover;
    padding: 0;
}
header.masthead > .overlay {
    padding: 13rem 0 9rem 0;
    text-align: center;
    background: rgba(0, 0, 0, 0.6);
}
header.masthead > .overlay.hausfarbe {
    background: rgba(197, 0, 90, 0.7);
}

@media (max-width: 992px) {
	header.masthead {
    	padding: 0 0 0 0;
	}
	header.masthead > .overlay {
	    padding: 9rem 0 4rem 0;
	}
}
@media (max-width: 600px) {
	header.masthead > .overlay {
	    padding: 7rem 0 1.5rem 0;
	}
	header.masthead h1 {
	    font-size: 150%
	}
	header.masthead p {
	    font-size: 100%
	}
}	
@media (max-width: 480px) {
	header.masthead > .overlay {
	    padding: 5.5rem 0 1rem 0;
	}	
}




   



/* --------- MENU
================================================== */

#mainNav .navbar-toggler {
    font-size: 15px;
    padding: .8em;
    text-transform: uppercase;
    font-weight: 600;
    color: #666;
    }
#mainNav .navbar-toggler:hover {
    background: #ddd
    }    
#mainNav .navbar-toggler i {
    margin-left: .4em 
    }  
    
    
    
#navbarResponsive  {
	margin-top: 3em;
	margin-bottom: 1.5em
	}
#mainNav .nav-link:hover,
#mainNav .nav-link.active:hover,
#mainNav .nav-link.active {
	-webkit-transition: background 0.4s ease-in-out;
    -moz-transition: background 0.4s ease-in-out;
    transition: background 0.4s ease-in-out; 
    outline: none;
    background-color: transparent; 
	background: rgba(197, 0, 90, 0.7);
	border-radius: 3px;
	color: #fff;
    }
#mainNav .nav-item {
	border-bottom: 1px solid #ddd;
	margin-top: .3em;
	padding-bottom: .3em
	}    
#mainNav .nav-link,
#mainNav .nav-link.active:hover,
#mainNav .nav-link.active {
	font-size: 14px;
	font-weight: 500;
	padding: .4em .5em;
	}
#mainNav .navbar-nav a {
    color: #999; 
    }  
#mainNav .navbar-nav a:hover,
#mainNav.affix .navbar-nav a:hover {
    color: #fff; 
    }	
#mainNav .nav-link.active:hover,
#mainNav .nav-link.active,
#mainNav.affix .nav-link.active:hover,
#mainNav.affix .nav-link.active {
	font-weight: 600;
	background: rgba(197, 0, 90, 1);
	color: #fff
	}	
	
#mainNav .collapse {
	float: left;
	width: calc(100% - 100px)
	}
#mainNav .social {
	float: right;
	width: 100px;
	display: inline;
	text-align: right;
	}
	#mainNav .social a {
	margin-left: 10px
    }
    #mainNav .social a i {
	font-size: 135%;
	margin-top: 3px;
	color: #fff
    }
   #mainNav .social a:hover i {
	background: none !important;
	color: #111 !important;
	transition: .2s
	}
	#mainNav.affix .social a i {
	color: #c5015a !important;
	opacity: .45
	}
	#mainNav.affix .social a:hover i {
	color: #c5015a !important;
	opacity: 1
	}	
	@media (max-width: 992px) {	
		#mainNav .social,
		#mainNav.affix .social {
			position: fixed;
			display: inline-block;
			z-index: 10000;
			margin: 0 0 0 150px !important;
			float: left !important;
			top: 15px !important
			}	
		#mainNav .social a i,
		#mainNav.affix .social a i {
			color: #c5015a !important;
			opacity: .45
			}
		#mainNav .social a:hover i,
		#mainNav.affix .social a:hover i {
			color: #c5015a !important;
			opacity: 1
			}	
		}		 

@media (min-width: 992px) {
	#mainNav {
	    padding-top: 1em;
	    padding-bottom: 1em;
	    -webkit-transition: background 0.3s ease-in-out, padding-top 0.3s ease-in-out, padding-bottom 0.3s;
	    -moz-transition: background 0.3s ease-in-out, padding-top 0.3s ease-in-out, padding-bottom 0.3s;
	    transition: background 0.3s ease-in-out, padding-top 0.3s ease-in-out, padding-bottom 0.3s;
	    letter-spacing: 1px;
	    border-bottom: none;
	    background: transparent; 
	    box-shadow: none;
	    }
    #mainNav.affix {
        border-bottom: 1px solid rgba(0, 0, 0, 0.25);
        background-color: #fff !important;
        box-shadow: 0 0 .7em  rgba(0, 0, 0, 0.25);
    	}
    #navbarResponsive  {
	    margin-top: 0;
	    margin-bottom: 0
		} 
	#mainNav .nav-item {
		margin: 0 .2em;
		border: none;
		padding: 0
		} 
	#mainNav .navbar-nav a {
	    color: #fff; 
	    }	
	#mainNav.affix .navbar-nav a {
	    color: #999; 
	    }  	 	
}







#mainNav .navbar-brand {
    background: url(../images-ws/logo/logo_2018_l.png) top left no-repeat;
    width: 420px;
    height: 300px;
    margin-top: -12em;
    margin-bottom: -13em
    }
#mainNav .navbar-brand:hover {
    margin-top: -11em;
    margin-bottom: -14em;
    transition: .2s
    }
@media (max-width: 1200px) {
	#mainNav .navbar-brand {
	    background: url(../images-ws/logo/logo_2018_m.png) top left no-repeat;
	    width: 320px;
	    height: 232px;
	    margin-top: -13em;
	    margin-bottom: -13em
	    }
	#mainNav .navbar-brand:hover {
	    margin-top: -12em;
	    margin-bottom: -14em;
	    }    
}	     
@media (max-width: 1000px) {
	#mainNav .navbar-brand {
    	background: url(../images-ws/logo/logo_2018_s.png) top left no-repeat;
	    width: 250px;
	    height: 232px;
	    margin-top: -3em;
	    margin-bottom: -6em
     	}
    #mainNav .navbar-brand:hover {
	 	margin-top: -3em;
	    margin-bottom: -6em;
    	} 		
}	
@media (max-width: 993px) {
	#mainNav {
        border-bottom: 1px solid rgba(0, 0, 0, 0.25);
        background-color: #fff !important;
        box-shadow: 0 0 .7em  rgba(0, 0, 0, 0.25);
        padding-top: .2em;
        padding-bottom: .2em;
        margin-bottom: 0;
		text-transform: uppercase;
		box-shadow: 0 0 .7em  rgba(0, 0, 0, 0.25)
    	}		
    #mainNav .navbar-brand:hover {
    	background-position-y: 7px
     	}	
}
@media (max-width: 480px) {
	#mainNav .navbar-brand {
    	background: url(../images-ws/logo/logo_2018_xs.png) top left no-repeat;
	    width: 120px;
	    height: 102px;
	    margin-top: -5em;
	    margin-bottom: -6em
     	}
    #mainNav .navbar-brand:hover {
	 	margin-top: -4em;
	    margin-bottom: -6em
    	}			
}	










/* --------- HEDALINES
================================================== */

h1 				{ font-size: 290%; font-weight: 600; margin-bottom: .5em; color: #3f474f }
h2 				{ font-size: 230%; font-weight: 600; margin-bottom: 1em; color: #c5015a; text-transform: uppercase;  }
h3 				{ font-size: 150%; font-weight: 600;margin-top: 2em; margin-bottom: 1em; color: #c5015a }
h4 				{ font-size: 120%; font-weight: 500;margin-top: 2em; margin-bottom: 1em; color: #3f474f }
h5 				{ font-size: 105%; font-weight: 500;margin-top: 3em; margin-bottom: .3em; color: #3f474f }


@media (max-width: 992px) {
	h1 				{ font-size: 260% }
	h2 				{ font-size: 200% }
	h3 				{ font-size: 125% }
	h4 				{ font-size: 110% }
}
@media (max-width: 768px) {
	h2 				{ font-size: 155% }
}



.abstand_gering, 
h1.abstand_gering, 
h2.abstand_gering, 
h3.abstand_gering, 
h4.abstand_gering,
 h5.abstand_gering 		
	{ margin-top: 0; margin-bottom: .2em; padding-top: 0; padding-bottom: .2em;  }
.abstand_gering_oben, 
h1.abstand_gering_oben, 
h2.abstand_gering_oben, 
h3.abstand_gering_oben, 
h4.abstand_gering_oben,  
h5.abstand_gering_oben	
	{ margin-top: 0; padding-top: 0 }
.abstand_gering_unten, 
h1.abstand_gering_unten, 
h2.abstand_gering_unten, 
h3.abstand_gering_unten, 
h4.abstand_gering_unten, 
h5.abstand_gering_unten	
	{ margin-bottom: 0; padding-bottom: 0;  }
.abstand_mittel, 
h1.abstand_mittel, 
h2.abstand_mittel, 
h3.abstand_mittel, 
h4.abstand_mittel, 
h5.abstand_mittel		
	{ margin-top: 1em; margin-bottom: 1em;  padding-top: 1em; padding-bottom: 1em; }
.abstand_mittel_oben,
h1.abstand_mittel_oben, 
h2.abstand_mittel_oben, 
h3.abstand_mittel_oben, 
h4.abstand_mittel_oben, 
h5.abstand_mittel_oben 	
	{ margin-top: 1em; padding-top: 1em}
.abstand_mittel_unten,
h1.abstand_mittel_unten, 
h2.abstand_mittel_unten, 
h3.abstand_mittel_unten, 
h4.abstand_mittel_unten, 
h5.abstand_mittel_unten 	
	{ margin-bottom: .8em; }	
.abstand_viel, 
h1.abstand_viel, 
h2.abstand_viel, 
h3.abstand_viel, 
h4.abstand_viel, 
h5.abstand_viel		
	{ margin-top: 3em; margin-bottom: 3em; padding-top: 3em; padding-bottom: 3em  }
	.abstand_viel_oben, 
h1.abstand_viel_oben, 
h2.abstand_viel_oben, 
h3.abstand_viel_oben, 
h4.abstand_viel_oben, 
h5.abstand_viel_oben		
	{ margin-top: 3em; padding-top: 3em  }
.abstand_viel_unten,
h1.abstand_viel_unten, 
h2.abstand_viel_unten, 
h3.abstand_viel_unten, 
h4.abstand_viel_unten, 
h5.abstand_viel_unten 	
	{ margin-bottom: 3em; padding-bottom: 3em; }	
	
.abstand-oben-xs {
	margin-top: .5em !important }
.abstand-oben-m {
	margin-top: 1.2em !important }
.abstand-oben-l {
	margin-top: 1.5em !important }
.abstand-oben-xl {
	margin-top: 2.5em !important }		
	
.abstand-unten-xs {
	margin-bottom: .5em !important }
.abstand-unten-m {
	margin-bottom: 1.2em !important }
.abstand-unten-l {
	margin-bottom: 1.5em !important }	
.abstand-unten-xl {
	margin-bottom: 2.5em !important }				









/* --------- AUFZÄHLUNG
================================================== */


.list2 {
	list-style: none;
	margin: 0;
	padding: 0;
	margin-bottom: 1.5em
}
.list2 li {
	list-style: none;
	margin: 0 0 1.2em 0;
	padding: 0 0 1.2em 0;
	border-bottom: 1px dotted #bbb;
}
.list2 li:last-child {
	border-bottom: none;
}


.list3 {
	list-style: none;
	border-top: 4px solid #ddd;
	padding: 0;
	padding-top: 1em;
	margin: 1.5em 0 4em 0
}
.list3 li {
	list-style: none;
	margin: 0 0 .7em 0;
	padding: 0 0 .7em 0;
	border-bottom: 1px dotted #c5015a;
	border-bottom: 1px dotted #bbb;
}
.list3 li:last-child {
	border-bottom: 4px solid #ddd;
}






/* --------- BILDER
================================================== */

img {
  vertical-align: middle;
}
.img-responsive,
.thumbnail > img,
.thumbnail a > img,
.carousel-inner > .item > img,
.carousel-inner > .item > a > img {
  display: block;
  max-width: 100%;
  height: auto;
}
.img-rounded {
  border-radius: 6px;
}
.img-thumbnail {
  display: inline-block;
  max-width: 100%;
  height: auto;
  padding: 4px;
  line-height: 1.42857143;
  background-color: #fff;
  border: 1px solid #ddd;
  border-radius: 4px;
  -webkit-transition: all .2s ease-in-out;
       -o-transition: all .2s ease-in-out;
          transition: all .2s ease-in-out;
}
.img-circle {
  border-radius: 50%;
  border: 5px solid #fff;
  box-shadow: 0 0 5px rgba(0, 0, 0, 0.3);
  margin-top: 1em
}



/* --------- Hintergründe
================================================== */


.bg-primary {
	background-color: #c5015a !important;
}
.bg-light {
	border-top: 1px solid #e3e3e3;
	border-bottom: 1px solid #e3e3e3;
	background-color: #eef1f2 !important;
}


.bg-dark {
	color: #bbb;
	background-color: #3f474f !important;
}
.bg-dark h1,
.bg-dark h2,
.bg-dark h3 {
	color: #fff;
}
.bg-dark ul.list2 li {
	border-bottom-color: #666
}
.bg-dark ul.list2 {
	border-top-color: #666
}










.tab:not(:target) {
  display: none;
}

.tab:last-child {
  display: block;
}

.tab:target ~ .tab:last-child {
  display: none;
}

.tabs {
  width: 30em;
  margin: 6.5em auto;
}






/* --------- Text
================================================== */


.txt_xxxs 				{ font-size: 50%; line-height: 1.1em !important }
.txt_xxs 				{ font-size: 60%; line-height: 1.1em !important }
.txt_xs 				{ font-size: 80%; line-height: 1.2em !important }
.txt_s 					{ font-size: 90%; line-height: 1.2em !important }
.txt_m 					{ font-size: 100% }
.txt_l 					{ font-size: 110%; line-height: 1.4em !important }
.txt_xl 				{ font-size: 125%; line-height: 1.5em !important }
.txt_xxl 				{ font-size: 140%; line-height: 1.5em !important }
.txt_xxxl 				{ font-size: 180%; line-height: 1.6em !important }






/* --------- SONSTIGES
================================================== */

section a {
	color: #c5015a
}
section a:hover {
	color: #9b0046;
	text-decoration: none
}


.bg-dark a {
	color: #db0767 !important
}
.bg-dark a:hover {
	color: #fff !important
}



.border-vertical {
	text-align: center;
	display: block;
	width: 50%;
	margin-left: 50%;
	float: left;
	height: 100%;
	border-left: 1px dashed #ccc;
}


hr {
	margin-top: 4em; 
	margin-bottom: 3.5em
}




/* --------- FOOTER
================================================== */
.footer {
	color: #999 !important;
	padding-top: 2em;
	padding-bottom: 2em;
	font-weight: 300
}


.footer a {
	color: #666 !important
}
.footer a:hover {
	color: #c5015a !important;
	text-decoration: none !important
}

.footer.bg-dark a {
	color: #ccc !important
}
.footer.bg-dark a:hover {
	color: #fff !important;
	text-decoration: none !important
}








/* --------- BUTTON
================================================== */
a.btn,
.btn {
	margin-top: 1.5em;
	margin-bottom: 1.5em;
	border: none	
}
a.btn:hover,
.btn:hover {
	border: none	
}

a.btn-default,
.btn-default {
	background: rgba(0, 0, 0, .25);
	color: #fff !important
}
a.btn-default:hover,
.btn-default:hover {
	background: #888;
	color: #fff !important
}


a.btn-primary,
.btn-primary {
	background: rgba(197, 0, 90, .6);
	color: #fff !important
}
a.btn-primary:hover,
.btn-primary:hover {
	background: #c5015a;
	color: #fff !important
}



/* --------- PAGETOP
================================================== */
.pagetop-scroll {
    cursor: pointer;
    position: fixed;
    bottom: 15%;
    right: 20px;
    display:none;
    background: rgba(197, 0, 90, .5);
	padding: .7em 2em;
    color: #fff;
    border-radius: 55px;
    width: 55px;
    height: 55px;
	padding: 0;
    text-align: center
}
.pagetop-scroll .glyphicon {
    color: #fff;
    text-align: center;
    margin-top: 1.2em
}
.pagetop-scroll:hover {
    color: #fff;
    background: #c5015a;
}
@media (max-width: 600px) {
	.pagetop-scroll {
    	right: 10px;
    	border-radius: 45px;
	    width: 45px;
	    height: 45px;
	}
	.pagetop-scroll .glyphicon {
	    margin-top: .85em
	}
}

a.pagetop-scroll {
	color: #fff !important
}
a.pagetop-scroll:hover {
	color: #ddd !important;
	text-decoration: none !important
}
/* --------- end PAGETOP -------- */









/* --------- NEWS / TERMINE
================================================== */

.aktuelles {
	line-height: 1.4em
}

.aktuelles h2 {
}
.aktuelles img {
	background: #fff !important;
	height: 80px !important;
	width: 80px !important;
	float: right !important;
	margin: -.1em 0  .5em 1em !important;
}
.aktuelles a {
	font-size: 115% !important;
	font-weight: 300 !important;
}
.aktuelles p {
	font-size: 85% !important;
	color: #888 !important;
	margin-top: .5em;
	line-height: 1.3em
}
.aktuelles hr {
	clear: both !important;
	margin-top: 1.5em !important;
	margin-bottom: 1em !important;
}


@media (max-width: 992px) {
	.aktuelles a {
		font-size: 100% !important;
	}
	.aktuelles p {
		font-size: 75% !important;
		margin-top: .3em;
	}

}


@media (max-width: 575px) {
	.aktuelles .border-vertical {
		width: 100%;
		margin-left: 0;
		float: left;
		height: auto;
		border-left: none;
		border-bottom: 1px dashed #ccc;
		margin-bottom: 3em;
		margin-top: 3em;
		
		border: none
	}
}
	





/* --------- ICON
================================================== */
.icon	{ 
	padding-left: 40px;
	margin: 0 0 1em 0 !important;
	padding-bottom: .6em;
	text-align: left;
	width: auto !important;
	max-width: 330px !important;
	margin: 0 auto !important;
	}
.icon,
.icon a {
	text-decoration: none;
	font-weight: 300
}
.icon a:hover {
	color: #c5015a;
}
.icon i 	{ 
	margin-left: -40px; 
	width: 25px;
	padding: .35em .1em .4em .1em;
	text-align: center;
	color: #fff;
	/*text-shadow: 0 1px 0 #fff;*/
	border-radius: 20px;
	background: #c5015a;
	font-size: 95%;
	float: left;
	margin-top: -3px;
	text-align: center;
	}






.pdf 	{ 
	background: url(../images-ws/fileicon_s/file_pdf.png) no-repeat;
	padding-left: 30px;
	padding-bottom: .2em;
	}




/* --------- FORMULAR
================================================== */

form {
	text-align: left !important
}



.form_error {
	/*
	background: #ffe9e9;
	padding: .1em .3em .2em .3em;
	*/
	color: #ff0000;
	line-height: 1.2em;
	border-radius: 3px;	
	font-size: 90%;
	letter-spacing: -.01em;
	margin-bottom: .2em;
	margin-left: 15px
	}
	.form_error:before {
		color: #ff0000;
		content: '\f06a';
		font-family: 'FontAwesome';
		display: inline-block;
		margin-left: -15px;
		width: 15px
	}
	
	
.absenden {
	background-image: -webkit-linear-gradient(top, #fff 0%, #e0e0e0 100%);
	background-image:      -o-linear-gradient(top, #fff 0%, #e0e0e0 100%);
	background-image: -webkit-gradient(linear, left top, left bottom, from(#fff), to(#e0e0e0));
	background-image:         linear-gradient(to bottom, #fff 0%, #e0e0e0 100%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffff', endColorstr='#e0e0e0', GradientType=0);
	filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);
	background-repeat: repeat-x;
	-webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, .15), 0 1px 1px rgba(0, 0, 0, .075);
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, .15), 0 1px 1px rgba(0, 0, 0, .075);
	border: 1px solid #bbb;
	color: #555 !important;
	margin: 0 0 0 0;
	padding-left: .6em;
	padding-right: .6em;
	border-radius: 3px;
	text-decoration: none;
	text-align: center
	}
	.absenden:hover {
		background: #e3e3e3;
		color: #000 !important
	}
	.absenden:focus {
		background: #ddd; 
		color: #000 !important
	}

	@media (max-width: 480px) {
	.absenden { 
		clear: both;
		margin-top: 1em;
		display: block;
		width: 100%;
		padding-top: .3em;
		padding-bottom: .3em
		}
	}
	
	






/* --------- COOKIEFOOT
================================================== */
#cookiedingsbums a {
	color:#fff !important; 
	text-decoration:none !important; 
	font-weight: bold !important
	}

#cookiedingsbums a:hover {
	text-decoration:underline !important;
	}

#cookiedingsbums {
    z-index:10000000 !important; 
   background: url(../images-ws/dot60.png);
   position:fixed;
   bottom:0; 
   font-size:12px !important; 
   line-height:1.2em;
   color: #fff;
   width: 100%;
   padding: .7em 0;
   margin-left: auto;
   margin-right: auto;
   left: 0;
   border-top: 1px solid #444
   }

#cookiedingsbums .cookie-info {
	width: 85%;
	float: left
	}	
	
#cookiedingsbumsCloser {
  float: right;
  width: auto;
  text-align: center;
  position: relative;
  text-decoration: none;
  cursor:pointer;
  text-transform: uppercase;
  margin-top: 0;
  color: #fff;
  text-shadow: .1em .1em rgba(0, 0, 0, 0.3);
  padding: .2em 1em;
  border: 1px solid rgba(255, 255, 255, 0.2)
  }
 
@media (max-width: 768px) {
	#cookiedingsbums {
		font-size: 10px !important;	
		line-height: 1.1em !important;
		padding: .6em 0
		}
}
/* --------- end COOKIEFOOT -------- */





	
	
/* --------- DEBUG-INFO
================================================== */	


.highlight {
	clear: both;
	font-size: 80%;
	width: 100%;
	background: rgba(255, 255, 255, 0.2);
	border: rgba(0, 0, 0, 0.5);
	border-radius: 5px;
	margin: 3em auto 3em auto;
	padding: 2em 3em 1em 3em;
	}

.highlight h2 {
	margin: 0
	
	}	
.highlight hr {
	margin-top: 2em; 
	margin-bottom: 2em
	}
	.bg-dark .highlight hr {
		border-color: #444 !important;
	}	

dl {
	clear: both;
	margin: 1em 0;
	text-align: left !important;
	line-height: 1.1em !important;
}
dt {
	clear: both !important;
	color: #fff !important;
	clear: both;
	width: 100%;
	margin-top: 1em
}
dd {
	clear: both !important;
}
	