@font-face {
  font-family: 'icomoon';
  src: url("../fonts/icomoon/icomoon.eot?srf3rx");
  src: url("../fonts/icomoon/icomoon.eot?srf3rx#iefix") format("embedded-opentype"), url("../fonts/icomoon/icomoon.ttf?srf3rx") format("truetype"), url("../fonts/icomoon/icomoon.woff?srf3rx") format("woff"), url("../fonts/icomoon/icomoon.svg?srf3rx#icomoon") format("svg");
  font-weight: normal;
  font-style: normal; }




/* ============================================================== 
    # AUFBAU  
=================================================================== */
body {
	font-family: 'Krub', sans-serif;
	font-weight: normal;
	font-size: 16px;
	line-height: 1.5em;
	color: #444f55;
	width: 100%;
	}

 @media (min-width: 575px) { 
 	body {font-size: 15px; }
}
 @media (min-width: 768px) { 
 	body {font-size: 16px; }
}	
 @media (min-width: 992px) { 
 	body {font-size: 17px; line-height: 1.7em }
}
 @media (min-width: 1200px) { 
 	body {font-size: 18px; }
}
    
@media (max-width: 992px) {
    body {
	hyphens: auto;
	hyphenate-limit-chars: auto 3;
	hyphenate-limit-lines: 4;
	-webkit-hyphens: auto;
	-webkit-hyphenate-limit-chars: auto 3;
	-webkit-hyphenate-limit-lines: 4;
	-ms-hyphens: auto;
	-ms-hyphenate-limit-chars: auto 3;
	-ms-hyphenate-limit-lines: 4;
	}
}
    
    
    
.container {}


@media (max-width: 575px) {
    .container {
      padding-left: 40px;
      padding-right: 40px;
      } 
}    



    
  
      
      
      
section {
	width: 100%;
	padding: 7em 0;
	clear: both; 
	}
  @media (max-width: 768px) {
    section {
      padding: 3em 0; } 
    }

/* --------- end AUFBAU -------- */





/* ============================================================== 
    # FARBEN  
=================================================================== */
/* 	rot				#af6677		rgba(176, 102, 119, 0.5)
	hellrot			#cc99aa		rgba(204, 153, 170, 0.5)
	dunkelrot		#9d5c6b		rgba(158, 93, 108, 0.5)
	dunkelrot2		#8c525f		rgba(140, 83, 95, 0.5)
	dunkelrot3		#7a4753		rgba(123, 71, 83, 0.5)
	dunkelrot4		#693d47		rgba(105, 60, 70, 0.6);
	
	beige			#eecc77		rgba(238, 205, 119, 0.5)
	hellbeige		#faf0dd		rgba(250, 240, 220, 0.5)
	dunkelbeige		#d6b76b		rgba(215, 185, 108, 0.5)
	dunkelbeige2	#bea35f		rgba(191, 164, 96, 0.5)
	dunkelbeige3	#a68e53		rgba(166, 143, 83, 0.5)
	
	grau			#444f55		rgba(67, 78, 84, 0.5) 
*/
.hausfarbe 			{ color: #af6677 !important }
.hausfarbe2 		{ color: #eecc77 !important }

.bg-hausfarbe		{ background: #af6677 !important }
.bg-hausfarbe-hell	{ background: #cc99aa	 !important }

.bg-hausfarbe2		{ background: #eecc77 !important }
.bg-hausfarbe2-hell	{ background: #faf0dd !important }

.bg-light			{ background: rgba(67, 78, 84, 0.1) !important;
					background-color: #f1f3f5 }
					
.bg-dark			{ background: #444f55 !important }

.bg-gold			{ /* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#eecc77+0,faf0dd+40,eecc77+100 */
					background: #eecc77; /* Old browsers */
					background: -moz-linear-gradient(-45deg,  #eecc77 0%, #faf0dd 40%, #eecc77 100%) !important; /* FF3.6-15 */
					background: -webkit-linear-gradient(-45deg,  #eecc77 0%,#faf0dd 40%,#eecc77 100%) !important; /* Chrome10-25,Safari5.1-6 */
					background: linear-gradient(135deg,  #eecc77 0%,#faf0dd 40%,#eecc77 100%) !important; /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
					filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#eecc77', endColorstr='#eecc77',GradientType=1 ) !important; /* IE6-9 fallback on horizontal gradient */
					}
					
.border-gold {
  border: 10px solid;
  border-image-slice: 1;
  border-width: 4px;
  padding: 40px;
  border-image-source: linear-gradient(115deg, #eecc77, #faf0dd, #eecc77);
}

					
.white,
.white h1, 
.white h2, 
.white h3, 
.white h4, 
.white h5		{ color: #fff !important }

.dark			{ color: #444f55 !important }					
/* --------- end FARBEN -------- */





/* --------- QUICKLINKS
================================================== */
.quicklinks {
	position: fixed;
	right: 0;
	top: 52%;
	z-index: 1000000;
	}
.quicklinks a {
	width: 35px;
	height: 35px;
	float: right;
	clear: both;
	margin-bottom: 4px;
	color: #000 !important;
	font-weight: 400;
	line-height: 1em;
	width: 185px;
	margin-right: -150px;
	padding-top: 9px;
	padding-left: 36px;
	opacity: .9;
	font-size: 11pt;
	font-weight: 500;
	text-decoration: none;
	border-radius: 5px 0 0 5px;
	border: 1px solid rgba(0, 0, 0, 0.15);
	
	background: #eecc77; /* Old browsers */
	background: -moz-linear-gradient(-45deg,  #eecc77 0%, #faf0dd 40%, #eecc77 100%) !important; /* FF3.6-15 */
	background: -webkit-linear-gradient(-45deg,  #eecc77 0%,#faf0dd 40%,#eecc77 100%) !important; /* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(135deg,  #eecc77 0%,#faf0dd 40%,#eecc77 100%) !important; /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#eecc77', endColorstr='#eecc77',GradientType=1 ) !important; /* IE6-9 fallback on horizontal gradient */
					
	}
.quicklinks a:hover {
	margin-right: 0;
	transition: all .3s ease-in-out;
	}		
.quicklinks a:before {
	font-family: "Material Icons Outlined", "Material Icons";
	content: '\ebb6';
	font-weight: normal;
	font-size: 16pt;
	width: 35px;
	height: 35px;
	position: absolute;
	text-align: center;
	padding-top: 16px;
	margin-top: -17px;
	margin-left: -36px;
	color: #fff;
	text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.2)
	
    /*font-family: 'icomoon';
    content: "\e095";  */
	}
	.quicklinks a.kontakt:before {
	content: '\e4ad';
	}
	.quicklinks a.mail:before {
	content: '\e200';
	}	
	.quicklinks a.termine:before {
	content: '\e0fa';
	}
    .quicklinks a.onlinebuchen:before {
    content: '\ebb6';
    }
			
@media (min-width: 768px) {
	.quicklinks {
		top: 30%;
		}
	.quicklinks a {
		width: 50px;
		height: 50px;
		width: 240px;
		margin-right: -190px;
		padding-top: 16px;
		padding-left: 50px;
		font-size: 13pt;
		margin-bottom: 5px;
		}
	.quicklinks a:before {
		font-size: 20pt;
		width: 50px;
		height: 50px;
		padding-top: 16px;
		margin-top: -17px;
		margin-left: -50px;
		}
}
/* --------- end QUICKLINKS -------- */	






/* ============================================================== 
    # SONSTIGES / TEXT
=================================================================== */
a {
  color: #af6677;
  -webkit-transition: 0.3s;
  -o-transition: 0.3s;
  transition: 0.3s; 
  font-weight: 600
  }
 a:hover, 
 a:active, 
 a:focus {
    color: #af6677;
	outline: none;
    }

p { margin-bottom: 15px; }
@media (min-width: 992px) { 
p { margin-bottom: 20px; }
}

.lowercase 	{ text-transform: none }
.uppercase 	{ text-transform: uppercase }
.nowrap 	{ white-space: nowrap }

.lighter	{ font-weight: 200 }
.light		{ font-weight: 300 }
.normal		{ font-weight: 400 }
.semibold	{ font-weight: 500 }
.bold		{ font-weight: 600 }
.bolder		{ font-weight: 700 }
.heavy		{ font-weight: 900 }

::-webkit-selection {
  color: #fff;
  background: #eecc77; }

::-moz-selection {
  color: #fff;
  background: #eecc77; }

::selection {
  color: #fff;
  background: #eecc77; }


h1, h2, h3, h4, h5, h6 {
	color: #444f55;
	font-weight: 600;
	margin: 0 0 20px 0; 
	letter-spacing: .02em;
	line-height: 1.3em
	}
	h1 	{ font-size: 260%; font-weight: 700; letter-spacing: .04em; margin-top: 1.5em; text-transform: uppercase }
	h2 	{ font-size: 200%; text-transform: uppercase; }
	h3 	{ font-size: 160%; font-weight: 400; color: #af6677; }
	h4 	{ font-size: 130%; font-weight: 600; }
	h5 	{ font-size: 105%; font-weight: 700; margin-top: 1em }
	h6 	{ font-size: 100%; font-weight: 400; color: rgba(68, 79, 85, 0.6); margin-top: .3em; line-height: 1.4em }

@media (max-width: 992px) {
	h1, h2, h3, h4, h5, h6 {
	line-height: 1.2em
	}
	h1 	{ font-size: 230%; ; margin-top: 1em }
	h2 	{ font-size: 175%; }
	h3 	{ font-size: 145%; }
	h4 	{ font-size: 120%;  }
	h5 	{  }
}
@media (max-width: 480px) {
	h1 	{ font-size: 220%; letter-spacing: .02em }
	h2 	{ font-size: 165%; letter-spacing: .01em }
	h3 	{ font-size: 140%; margin-bottom: 20px !important;letter-spacing: 0 }
	h4 	{  }
	h5 	{  }
}



h1.border, h2.border, h3.border, h4.border, h5.border, h6.border {
	border: none !important;
	border-top: 1px solid rgba(67, 78, 84, 0.3) !important;
	margin-top: 4em;
	padding-top: 4em;
	padding-left: 0 !important;
	padding-right: 0 !important
	}
@media (max-width: 992px) {	
	h1.border, h2.border, h3.border, h4.border, h5.border, h6.border {
	margin-top: 3em;
	padding-top: 3em
	}
}
@media (max-width: 767px) {	
	h1.border, h2.border, h3.border, h4.border, h5.border, h6.border {
	margin-top: 2em;
	padding-top: 2em
	}
}	
	
	

.section-heading {
	margin-top: 0;
	margin-bottom: 5em; 
	text-align: center
	}
	.section-heading h1 {
	text-transform: uppercase;
	margin-bottom: 5px
    } 
  .section-heading h2 {
  	margin:0;
    font-weight: 400;
    text-transform: none;
    color: #af6677
    }  
@media (max-width: 992px) {	
	.section-heading { margin-bottom: 4em }
}
@media (max-width: 767px) {	
	.section-heading { margin-bottom: 3em }
}	    
    
 
.g-5,
.gx-5 {
  --bs-gutter-x: 4rem;
}
  
  

.border {
	border: #444f55 solid 4px
	}
.shadow {
	box-shadow: 0 0 1.3em rgba(0, 0, 0, 0.15);
	}	 
  
  
.loader {
  position: fixed;
  left: 0px;
  top: 0px;
  width: 100%;
  height: 100%;
  z-index: 9999;
  background: url(../images/loader.gif) center no-repeat #fff; }



  
.unterschrift {
	width: 270px;
	margin: 0 0 -20px 0
}  



.bild {
	width: 90%;
	border-radius: 5px;
	margin-bottom: 2em
}
@media (max-width: 767px) {
.person {
	width: 60%;
	}
}

.owl-item img {
  transition: all 0.35s ease-in-out;
}
.owl-item:hover img {
  transform: scale(1.1);
  -webkit-transform: scale(1.1);
  -moz-transform: scale(1.1);
  -ms-transform: scale(1.1);
  -o-transform: scale(1.1);
}
/* --------- end SONSTIGES -------- */







/* ============================================================== 
    # BRAND / LOGO  
=================================================================== */
.navbar-brand {
	opacity: 1;
	display: inline-block;
	float: left;
    white-space: nowrap;
    padding: 0 0 0 8px;
    margin: -23px 0 0 0;
	}
.navbar-brand img {
	height: 74px;
	margin-top: -3px;
	}	
.navbar-brand a {
    font-size: 115%;
    font-weight: 500 !important;
    letter-spacing: .07em
	}		
.navbar-brand a:hover { 
	opacity: .8;
	background-size: 95%;
	text-decoration: none;	
	-webkit-transition: 0.4s;
    -o-transition: 0.4s;
    transition: 0.4s; 
	}	
	
	
@media (min-width: 1200px) {
  .navbar-brand {
	margin-top: -27px;
	}
  .navbar-brand img {
	height: 85px;
	}	
  .navbar-brand a {
    font-size: 150%;
    letter-spacing: .13em
	}
 } 
 
 
 @media (max-width: 991px) {
.navbar-brand {
	z-index: 10000;
	background: #fff;
	position: fixed;
	width: 100%;
	left: 0;
	height: 50px !important;
	margin-top: 0 !important;
	border-bottom: 1px solid #f1f3f5
	}
  .navbar-brand img {
	height: 67px;
	margin-top: 15px
	}	
  .navbar-brand a {
    font-size: 110%;
    margin-left: 30px;
    margin-top: -14px;
    float: left
	}
 } 
 
 @media (max-width: 768px) {
.navbar-brand {
	left: -15px
	}	
 }  		
/* --------- end BRAND / LOGO -------- */	









/* ============================================================== 
    # MENU  
=================================================================== */
.custom-nav .menu-wrap {
	height: 50px
  }
.custom-nav ul {
  padding: 0;
  margin: 0; 
  }
  .custom-nav ul li {
    padding: 0;
    margin: 0;
    list-style: none;
    display: inline;
    text-transform: uppercase; 
    }
    .custom-nav ul li a {
      -webkit-transition: 0.2s;
      -o-transition: 0.2s;
      transition: 0.2s; 
      color: rgba(255, 255, 255, 0);
      }
    .custom-nav ul li a:hover, 
    .custom-nav ul li a:focus, 
    .custom-nav ul li a:active,
    .custom-nav ul li.active a {
      color: rgba(255, 255, 255, 0);
      }   
        
    .custom-nav ul li.has-dropdown {
      position: relative; 
      }
      .custom-nav ul li.has-dropdown .dropdown {
        width: 140px;
        -webkit-box-shadow: 0px 14px 33px -9px rgba(0, 0, 0, 0.75);
        -moz-box-shadow: 0px 14px 33px -9px rgba(0, 0, 0, 0.75);
        box-shadow: 0px 14px 33px -9px rgba(0, 0, 0, 0.75);
        z-index: 1002;
        visibility: hidden;
        opacity: 0;
        position: absolute;
        top: 40px;
        left: 0;
        text-align: left;
        background: #000;
        padding: 20px;
        -webkit-border-radius: 4px;
        -moz-border-radius: 4px;
        -ms-border-radius: 4px;
        border-radius: 4px;
        -webkit-transition: 0s;
        -o-transition: 0s;
        transition: 0s; 
        }
        .custom-nav ul li.has-dropdown .dropdown:before {
          bottom: 100%;
          left: 40px;
          border: solid transparent;
          content: " ";
          height: 0;
          width: 0;
          position: absolute;
          pointer-events: none;
          border-bottom-color: #000;
          border-width: 8px;
          margin-left: -8px; 
          }
        .custom-nav ul li.has-dropdown .dropdown li {
          display: block;
          margin-bottom: 7px; 
          }
          .custom-nav ul li.has-dropdown .dropdown li:last-child {
            margin-bottom: 0;
             }
          .custom-nav ul li.has-dropdown .dropdown li a {
            padding: 2px 0;
            display: block;
            color: #999999;
            line-height: 1.2;
            text-transform: none;
            font-size: 13px;
            letter-spacing: 0;
             }
            .custom-nav ul li.has-dropdown .dropdown li a:hover {
              color: #fff; 
              }
     
      .custom-nav ul li.has-dropdown:hover a, 
      .custom-nav ul li.has-dropdown:focus a {
        color: #000; 
        }
   
@media (min-width: 992px) {
	#sticky {
		border-bottom: 1px solid #f1f3f5;
		box-shadow: 0 0 1.5em rgba(0, 0, 0, 0.1)
		}
	#sticky.affix {
		position: fixed;
		top: 0;
		z-index: 1000;
		background: #fff;
		width: 100%;
		border-bottom: 1px solid #f1f3f5
		}
	.custom-nav .menu-wrap {
	  padding-top: 38px; 
	  height: 100px;
	  }
	.custom-nav ul li a {
	  font-weight: normal;
      font-size: 16px;
      letter-spacing: .02em;
      padding: 30px 7px;
      color: #444f55; 
      } 
    .custom-nav ul li a:hover, 
    .custom-nav ul li a:focus, 
    .custom-nav ul li a:active,
    .custom-nav ul li.active a {
      color: #af6677; 
      font-weight: 500;
      text-decoration: none
      } 
    .custom-nav ul li.active > a {
      color: #af6677; 
      font-weight: 700;
      position: relative;
      }  
 }  
 @media (min-width: 992px) {
  .custom-nav ul li a {
      font-size: 17px;
      padding: 30px 12px;
      } 
 }  
 @media (min-width: 1200px) {
  .custom-nav ul li a {
      font-size: 18px;
      letter-spacing: .03em;
      } 
 }   
 
 
 
 @media (max-width: 991px) {
   #sticky {
	z-index: 1000;
	}
}	


li.socialmedia {
	margin-left: 0 !important
}
li.socialmedia a i {
	position: absolute;
	font-size: 140%;
	top: 1px
}
li.socialmedia a {
	color: #af6677 !important;
}
li.socialmedia a:hover {
	color: #000 !important
}



.stoerer {
	color: #111;
	text-transform: uppercase;
	text-align: center;
	padding: 6px 13px;
	border-radius: 10px;
	box-shadow: .3em .4em .3em rgba(0, 0, 0, 0.15);
	transform: rotate(-3deg);
	position: fixed;
	display: inline-block;
	z-index: 1000000;
	float: left;
	top: 50px;
	margin-left: calc(50% - 305px);
	font-weight: 200;
	letter-spacing: .01em;
	line-height: 1.2em;
	border: 1px solid rgba(0, 0, 0, 0.1);
	font-size: 105%;
	background: #eecc77; /* Old browsers */
	background: -moz-linear-gradient(-45deg,  #eecc77 0%, #faf0dd 40%, #eecc77 100%); /* FF3.6-15 */
	background: -webkit-linear-gradient(-45deg,  #eecc77 0%,#faf0dd 40%,#eecc77 100%); /* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(135deg,  #eecc77 0%,#faf0dd 40%,#eecc77 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#eecc77', endColorstr='#eecc77',GradientType=1 ); /* IE6-9 fallback on horizontal gradient */
	
	background: #af6677;
	color: #fff
	}
.stoerer:hover  {
    color: #fff;
    box-shadow: .3em .4em .7em rgba(0, 0, 0, 0.3);
    background: #7a4753; 
   }
.stoerer b {
	display: block;
	text-transform: none;
	font-weight: bold;
	color: #af6677;
	color: #fff
	}  
	.stoerer:hover b  {
    color: #eecc77;
    color: #fff
    }  
@media (max-width: 1400px) {
   .stoerer  {
    top: 80px;
	margin-left: calc(50% - 540px);
    padding: 5px 10px;
	} 
} 
@media (max-width: 1200px) {
   .stoerer  {
    top: 75px;
	margin-left: calc(50% - 380px);
	font-size: 100%
	} 
} 
@media (max-width: 992px) {
   .stoerer  {
    margin-left: calc(50% - 120px);
    font-size: 95%;
    top: 20px;
	} 
}     
@media (max-width: 768px) {
   .stoerer  {
    top: 20px;
	margin-left: 265px;
    font-size: 80%;
	} 
} 
@media (max-width: 480px) {
   .stoerer  {
    top: 40px;
	margin-left: 20px;
    font-size: 70%;
	} 
}   
/* --------- end MENU -------- */







/* ============================================================== 
    # OFFCANVAS-Menu
=================================================================== */
.content {
  position: relative;
  overflow: hidden;
  width: 100%;
  -webkit-transition: 0.5s;
  -o-transition: 0.5s;
  transition: 0.5s; 
  }  
  
.offcanvas .content {
    overflow: hidden;
    position: absolute; 
    }
.offcanvas .content:after {
    -webkit-transition: 2s;
    -o-transition: 2s;
    transition: 2s;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 101;
    background: rgba(0, 0, 0, 0.6);
    content: ""; 
    } 
    
#offcanvas {
  display: none;
  position: fixed;
  z-index: 200;
  width: 300px;
  background: #fff;
  top: 0;
  right: -30px;
  top: 0;
  bottom: 0;
  padding: 100px 40px 40px 40px;
  overflow-y: auto;
  -moz-transform: translateX(270px);
  -webkit-transform: translateX(270px);
  -ms-transform: translateX(270px);
  -o-transform: translateX(270px);
  transform: translateX(270px);
  -webkit-transition: 0.5s;
  -o-transition: 0.5s;
  transition: 0.5s; 
  }
  @media (max-width: 991px) {
    #offcanvas {
      display: block; } 
      }
      
      
      
  .offcanvas #offcanvas {
    -moz-transform: translateX(0px);
    -webkit-transform: translateX(0px);
    -ms-transform: translateX(0px);
    -o-transform: translateX(0px);
    transform: translateX(0px); 
    }
  #offcanvas a {
    color: #444f55; 
    text-transform: uppercase;
    letter-spacing: .04em;
    font-weight: 300;
    font-size: 110%
    }
    #offcanvas a:hover {
      color: #af6677; 
      text-decoration: none;
      font-weight: 500
      }
    #offcanvas li.active a {
      color: #af6677; 
      text-decoration: none;
      font-weight: 600
      }  
      
  #offcanvas ul {
    padding: 0;
    margin: 0; 
    }
    #offcanvas ul li {
      padding: 0;
      margin: 0 0 1em 0;
      list-style: none; 
      }
      #offcanvas ul li:before {
      display: none
      }
      #offcanvas ul li > ul {
        padding-left: 20px;
        display: none; 
        }
      #offcanvas ul li.offcanvas-has-dropdown > a {
        display: block;
        position: relative; 
        }
        #offcanvas ul li.offcanvas-has-dropdown > a:after {
          position: absolute;
          right: 0px;
          font-family: 'icomoon';
          speak: none;
          font-style: normal;
          font-weight: normal;
          font-variant: normal;
          text-transform: none;
          line-height: 1;
          /* Better Font Rendering =========== */
          -webkit-font-smoothing: antialiased;
          -moz-osx-font-smoothing: grayscale;
          content: "\e921";
          font-size: 20px;
          color: rgba(255, 255, 255, 0.2);
          -webkit-transition: 0.5s;
          -o-transition: 0.5s;
          transition: 0.5s;
           }
      #offcanvas ul li.offcanvas-has-dropdown.active a:after {
        -webkit-transform: rotate(-180deg);
        -moz-transform: rotate(-180deg);
        -ms-transform: rotate(-180deg);
        -o-transform: rotate(-180deg);
        transform: rotate(-180deg); 
        }
        
/* --------- end OFFCANVAS-Menu -------- */	





/* ============================================================== 
    # TOGGLE Nav
=================================================================== */
.nav-toggle {
  display: none;
  position: fixed;
  cursor: pointer;
  text-decoration: none;
  right: 0;
  top: 0;
  z-index: 21;
  padding: 9px 0 0 0;
  margin: 0 auto;
  height: 50px;
  width: 50px;
  z-index: 2001;
  border-bottom: none !important; 
  z-index: 100000;
  }
  @media (max-width: 991px) {
    .nav-toggle {
      display: block; } 
      }
      

  .nav-toggle.active i::before, 
  .nav-toggle.active i::after {
    background: #444f55; 
    }
  .nav-toggle:hover, 
  .nav-toggle:focus, 
  .nav-toggle:active {
    outline: none;
    border-bottom: none !important; 
    }
  .nav-toggle i {
    position: relative;
    display: inline-block;
    width: 25px;
    height: 2px;
    color: #252525;
    font: bold 14px/.4 Helvetica;
    text-transform: uppercase;
    text-indent: -55px;
    background: #252525;
    -webkit-transition: all .2s ease-out;
    -o-transition: all .2s ease-out;
    transition: all .2s ease-out; 
    }
    .nav-toggle i::before, 
    .nav-toggle i::after {
      content: '';
      width: 25px;
      height: 2px;
      background: #252525;
      position: absolute;
      left: 0;
      -webkit-transition: all .2s ease-out;
      -o-transition: all .2s ease-out;
      transition: all .2s ease-out;
       }
  .nav-toggle.nav-white > i {
    color: #fff;
    background: #000; 
    }
    .nav-toggle.nav-white > i::before, 
    .nav-toggle.nav-white > i::after {
      background: #000;
       }

.nav-toggle i::before {
  top: -7px; }

.nav-toggle i::after {
  bottom: -7px; }

.nav-toggle:hover i::before {
  top: -10px; }

.nav-toggle:hover i::after {
  bottom: -10px; }

.nav-toggle.active i {
  background: transparent; }

.nav-toggle.active i::before {
  top: 0;
  -webkit-transform: rotateZ(45deg);
  -moz-transform: rotateZ(45deg);
  -ms-transform: rotateZ(45deg);
  -o-transform: rotateZ(45deg);
  transform: rotateZ(45deg);
  background: #af6677; }

.nav-toggle.active i::after {
  bottom: 0;
  -webkit-transform: rotateZ(-45deg);
  -moz-transform: rotateZ(-45deg);
  -ms-transform: rotateZ(-45deg);
  -o-transform: rotateZ(-45deg);
  transform: rotateZ(-45deg);
  background: #af6677; }
/* --------- end TOGGLE Nav -------- */















/* ============================================================== 
    # HERO
=================================================================== */
#hero {
	min-height: 600px;
	background: #fff url(../images/loader.gif) no-repeat center center; 
	margin-top: -100px
	}
    
#hero .flexslider {
    border: none;
    z-index: 1;
    margin-bottom: 0; 
    }
    #hero .flexslider .slides {
      position: relative;
      overflow: hidden; 
      }
      #hero .flexslider .slides li {
        background-repeat: no-repeat;
        background-size: cover;
        background-position: center center;
        min-height: 600px;
        position: relative; 
        }
        #hero .flexslider .slides li:after {
          position: absolute;
          top: 0;
          bottom: 0;
          left: 0;
          right: 0;
          content: '';
          background: rgba(105, 60, 70, 0.6);
          background: rgba(0, 0, 0, 0.2);
          z-index: 1;
          }
          
     
#hero .slider-text {
    display: table;
    opacity: 0;
    min-height: 600px;
    z-index: 9; 
    width: 90%
    }
    #hero .slider-text-inner {
        display: table-cell;
        vertical-align: middle;
        min-height: 600px; 
        padding-top: 50px;
		text-align: center;
        }
        #hero h1, 
        #hero h2 {
	        margin: 0;
	        padding: 0;
	        color: white; 
	        line-height: 1.2em
	        }
        #hero h1 {
	        font-size: 65px;
	        font-weight: 200;
	        text-transform: none;
	        letter-spacing: 0;
	        margin: .5em 0 0 0
	        }       
        #hero h2 {
	        font-size: 30px;
	        letter-spacing: .07em;
	        margin: 0;
	        font-weight: 500
	        }	
	     #hero b {
		    font-weight: 900;
	        letter-spacing: .03em;
	        text-transform: uppercase;
	        white-space: nowrap
	        }    
		#hero .btn {
			margin-top: 3em;
			background-color: rgba(176, 102, 119, .9)
		    } 
		#hero .btn:hover,
		#hero .btn:focus {
			background-color: #eecc77
		    }  


           
#hero .flex-control-nav {
    bottom: 40px;
    z-index: 1000; 
    display: flex;
    flex-direction: row;
    justify-content: center;
    gap: 10px
    }
    #hero .flex-control-nav li a {
        background: rgba(255, 255, 255, 0.2);
        -webkit-box-shadow: none;
        box-shadow: none;
        width: 16px;
        height: 16px;
        cursor: pointer; 
        }
        #hero .flex-control-nav li a:hover,
        #hero .flex-control-nav li a.flex-active:hover {
          background: rgba(255, 255, 255, 1); 
          }
        #hero .flex-control-nav li a.flex-active {
          cursor: pointer;
          background: rgba(255, 255, 255, 0.7); 
          }
          
#hero .flex-direction-nav {
    display: none; 
    }
      
         

@media (max-width: 1200px) {
    #hero h1 { font-size: 55px; }
 }
@media (max-width: 992px) {
    #hero h1 { font-size: 45px; }
 }
@media (max-width: 767px) {
	#hero { margin-top: -50px }
	#hero h1 { font-size: 35px; }
 } 
@media (max-width: 575px) {
	#hero h1 { font-size: 30px; }
	#hero .slider-text-inner { padding-top: 0 } 
}  
@media (max-width: 380px) {
	#hero h1 { font-size: 25px; }
 }  
                 
/* --------- end HERO -------- */	









/* ============================================================== 
    # PARALLAX
=================================================================== */
.parallax {
  padding: 3em 0 0 0;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  position: relative;
  float: left;
  width: 100%; 
  }
  .parallax .section-heading h1,
  .parallax .section-heading h2 {
    line-height: 80px;
    color: #fff;
    margin: 15px 0 10px 0
    } 
  .parallax .section-heading p {
    color: rgba(255, 255, 255, 0.6); 
    }
  .parallax .section-heading .btn {
	margin-top: 10px;
    }
    
/* --------- end PARALLAX  -------- */










/* ============================================================== 
    # OVERLAY
=================================================================== */
.overlay {
	position: absolute;
    z-index: 0;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0, 0, 0, 0.5);  
	}
	
	
/* --------- end OVERLAY -------- */











/* ============================================================== 
    # GALERIE
=================================================================== */
.gal {
}
.gal-bild {
}
a.gal-bild img {
	width: 100%
}
a.gal-bild:hover img {
	-webkit-transition: 0.35s;
  -o-transition: 0.35s;
  transition: 0.35s; 
  transform: scale(1.1);
  -webkit-transform: scale(1.07);
  -moz-transform: scale(1.07);
  -ms-transform: scale(1.07);
  -o-transform: scale(1.07);
  /*box-shadow: 0 .2em .6em rgba(0, 0, 0, 0.4)*/
}	
/* --------- end GALERIE -------- */







/* ============================================================== 
    # LIGHTBOX
=================================================================== */
.lightboxOverlay{
	/*background-color:#693d47 !important;*/
	}
.lightbox .lb-image{
	border:10px solid #fff !important;
	border-radius: 5px !important;
	}
/* --------- end LIGHTBOX -------- */






/* ============================================================== 
    # COUNTER / ZÄHLER
=================================================================== */
.counter {
  padding: 4em 0 !important;
  }
  
.counter .icon {
    width: 100px;
    height: 100px;
    display: table;
    margin: 0 auto;
    margin-bottom: 30px; 
    }
    .counter .icon i {
    display: table-cell;
    vertical-align: middle;
    width: 100px;
    height: 100px;
    font-size: 50px;
    color: #fff;
    background: #eecc77;
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    -ms-border-radius: 50%;
    border-radius: 50%; 
    }
  .js-counter {
    font-size: 40px;
    display: block;
    color: white;
    width: 100%;
    font-weight: 700;
    margin-bottom: .3em; 
    }
  .counter-label {
    color: rgba(255, 255, 255, 0.7);
    text-transform: uppercase;
    font-size: 14px;
    letter-spacing: 5px;
    margin-bottom: 2em;
    display: block; 
    }

/* --------- end COUNTER / ZÄHLER -------- */	













/* ============================================================== 
    # FLEXBOX 
=================================================================== */
.flexbox {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  width: 100%;
  float: left; 
  clear: both;
  }
  .bg-light .flexbox		{ background-color: #f1f3f5 }
  .bg-hausfarbe .flexbox	{ background: #af6677 !important }
  
.rand {
  display: inline-block; 
  display: table;
  background-size: cover;
  background-position: bottom center;
  background-repeat: no-repeat;
  position: relative;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  }
.rand-content {
	z-index: 10;
	padding: 70px;
	}
	.container .rand-content {
		padding-right: 0;
		padding-left: 0
		}	


.rand-content .border,
.rand-content .border-gold {
	padding: 70px; 
	}


.eingerueckt {
	padding: 70px;
	margin-left: -50%;
	background: #fff;
	width: calc(100% + 50%);
	}
.eingerueckt.left {
	margin-left:  0;
	margin-right: -50%
	}		
	
.eingerueckt h1,
.eingerueckt h2,
.eingerueckt h3 {
	margin-top: 0;
	margin-bottom: 40px
	}
.eingerueckt h3 {
	margin-top: -30px
	}	
	
.eingerueckt h4 {
	margin-top: 1.5em;
	margin-bottom: .2em;
	color: #af6677
	}		
	

.rand-content .btn {
	margin-top: 1.5em;
	clear: both
	}	
	


@media (max-width: 1200px) {
	.rand-content {
		padding: 40px;
		}
	.rand-content .border,
	.rand-content .border-gold {
		padding: 40px; 
		}
	.eingerueckt {
		padding: 40px;
		}	
		
}



 @media (max-width: 992px) {
	.rand-content {
		padding: 30px;
		}
	.rand-content .border,
	.rand-content .border-gold {
		padding: 30px; 
		}
	.eingerueckt {
		padding: 30px;
		}	
}
	
	
 @media (max-width: 768px) {	
	.eingerueckt,
	.eingerueckt.left {
		width: 100%;
		margin-left:  0;
		margin-right: 0
		}	
		
	.rand:not(.rand-content) { /* Bild */
		position: absolute;
		padding: 200px;
		width: 100%;
		background-position: center center;
		}	
	.rand-content { 
		margin-top: 200px;
		margin-bottom: 0
		}	
		
	
		
	.container .rand {
		margin-left: -110px;
		margin-right: -110px;
		padding-left: 110px;
		padding-right: 110px;
		width: calc(100% + 220px)
		}			
}

 @media (max-width: 480px) {	
	.rand-content { 
		margin-top: 70px;
		}			
}




/*
 @media (min-width: 575px) {  /*col-sm-*
.flexbox .eingerueckt {	background: yellow !important }	
}	
 @media (min-width: 768px) { /*col-md-*
.flexbox .eingerueckt {	background: orange !important }	
}	
 @media (min-width: 992px) { /*col-lg-*
.flexbox .eingerueckt {	background: red !important }	
}
 @media (min-width: 1200px) { /*col-xl-*
.flexbox .eingerueckt {	background: fuchsia !important }	
}	
 @media (min-width: 1400px) { /*col-xxl-*
.flexbox .eingerueckt {	background: blue !important }	
}	
*/				
/* --------- end FLEXBOX -------- */








/* ============================================================== 
    # KARTE 
=================================================================== */
.map {
  padding: 0
  }
  @media (max-width: 575px) {
	.map {
		width: 100%;
		position: relative;
		height: 200px;
		}
	.map iframe {
		width: 100% !important;
		margin: 0;
		top: 0;
		left: 0;
		right: 0;
		position: absolute
		}
}

 /* --------- end KARTE -------- */
 
 
 
 



/* ============================================================== 
    # STUDIO 
=================================================================== */
.studio {
	padding: 3.5em 0 5em 0;
	text-align: center
	}	
.studio h2 {
	margin: 0
	}	
.studio h3 {
	margin: 0 0 1.5em 0
	}	
 
 
 /* --------- end STUDIO -------- */















/* ============================================================== 
    # STARTBOXEN 
=================================================================== */
.startbox {
	margin-top: -10em
	}
	
.startbox-item {
  padding: 2em;
  margin-top: -40px;
  z-index: 1;
  width: 50%;
  color: #fff;
  position: relative;
  overflow: hidden; 
  }
  @media (max-width: 768px) {
    .startbox-item {
      width: 100% !important; } 
   }
  
.startbox-item h2 {
    color: #fff;
    font-weight: 700; 
    }
.startbox-item .icon {
    position: absolute;
    top: 0px;
    left: -10%; 
    }
 .startbox-item .icon i {
    font-size: 200px;
    color: rgba(255, 255, 255, 0.1); 
    }
    
    
    
.studio {
	margin-bottom: -100px !important
}   
 @media (max-width: 768px) {
    .studio {
		margin-bottom: -50px !important } 
   } 
/* --------- end STARTBOXEN -------- */






.infobox {
  position: relative;
  padding: 30px;
  margin-bottom: 60px;
  background: #fff;
  border: 1px solid rgba(0, 0, 0, 0.07);
  -webkit-transition: 0.3s;
  -o-transition: 0.3s;
  transition: 0.3s; }
  .infobox h3 {
    font-weight: 400; }
    .infobox h3 a {
      color: #af6677; }
  .infobox .icon {
    text-align: center;
    margin: 0 auto;
    margin-bottom: 20px;
    width: 70px;
    height: 70px;
    display: table;
    -webkit-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s; }
    .infobox .icon i {
      display: table-cell;
      vertical-align: middle;
      height: 70px;
      font-size: 60px;
      line-height: 40px;
      color: #af6677; }
  .infobox:hover, .infobox:focus {
    background: #af6677;
    color: rgba(255, 255, 255, 0.7); }
    .infobox:hover h3 a, .infobox:focus h3 a {
      color: #fff; }
    .infobox:hover .icon i, .infobox:focus .icon i {
      color: #eecc77; }






        

/* ============================================================== 
    # LISTE / AUFZÄHLUNG
=================================================================== */
.content ul {
    padding: 0;
    margin: 1.5em 0 0 0;
    list-style: none;
    position: relative;
    }
.content ul li {
    padding: 0 0 0 33px;
    margin: 0 0 .2em 0;
    list-style: none;
    position: relative; 
    }
    .content ul li:before {
      color: #af6677;
      font-family: 'icomoon';
      width: 33px;
      margin-left: -33px;
      vertical-align: bottom;
      font-size: 24px;
      content: "\e095";  
      text-align: left
      }

.content ul li a { 
	color: #444f55;
	font-weight: 500
	}
.content ul li a:hover { 
	color: #af6677;
	text-decoration: none
	}
	
	
.content ul li small { 
	line-height: 1.5em;
	display: inline-block
	}
	
		
	
@media (max-width: 992px) {	
	.content ul li {
	    padding-left: 25px; 
	    }
	.content ul li:before {
		font-size: 20px;
	      width: 25px;
	      margin-left: -25px;
		}
}  
@media (max-width: 767px) {	
	.content ul li:before {
		font-size: 18px;
		}
} 



.navi-parallel {
	border-bottom: none !important;
	margin-bottom: 0 !important
}     
/* --------- end LISTE / AUFZÄHLUNG -------- */






      
        

/* ============================================================== 
    # ICONS 
=================================================================== */
li.address:before {
      font-size: 30px;
      content: "\e9d1"; }
li.phone:before {
      font-size: 23px;
      content: "\e9f4"; }
li.email:before {
      font-size: 23px;
      content: "\e9da"; }
li.url:before {
      font-size: 23px;
      content: "\e9af"; }
li.user:before {
      font-size: 23px;
      content: "\ea36"; }


.icon {
	margin-bottom: .2em;
	margin: 0 0 .2em 40px !important;
	padding: 0;
	border: none;
	color: #444f55
	}  
.icon i {
	margin-left: -40px;
	width: 40px;
	text-align: center;
	color: #af6677;
	display: inline-block
	}
	

ul.iconlist li a,
.icon a { 
	color: #444f55;
	font-weight: normal
	}
ul.iconlist li a:hover,
.icon a:hover { 
	color: #af6677;
	text-decoration: none
	}
	


ul.iconlist li.txt-xl,
.icon.txt-xl {
   font-weight: 800;
   font-size: 120%;
   letter-spacing: .03em
   }
   ul.iconlist li.txt-xl a,
   .icon.txt-xl a {
   font-weight: 800;
   }
    ul.iconlist li.txt-xl:before {
      top: .14em;
      font-size: 25px;
      }	
    .icon.txt-xl i {
		font-size: 85%;
		}  	 	  
		
@media (max-width: 992px) {	
	.icon i {
	margin-left: -35px;
	width: 35px;
	}
}		  
/* --------- end ICONS -------- */











/* ============================================================== 
    # REZZENSION 
=================================================================== */
.testimonial .testimony-slide {
  text-align: center; }
  .testimonial .testimony-slide span {
    font-size: 18px;
    font-weight: 700;
    display: block;
    color: #000; }
  .testimonial .testimony-slide figure {
    margin-bottom: 10px;
    display: -moz-inline-stack;
    display: inline-block;
    zoom: 1;
    *display: inline; }
    .testimonial .testimony-slide figure img {
      width: 140px;
      -webkit-border-radius: 50%;
      -moz-border-radius: 50%;
      -ms-border-radius: 50%;
      border-radius: 50%; }
  .testimonial .testimony-slide blockquote {
    border: none;
    margin: 30px auto;
    width: 70%;
    position: relative;
    padding: 0; }
    @media (max-width: 992px) {
      .testimonial .testimony-slide blockquote {
        width: 100%; } }

.testimonial .arrow-thumb {
  position: absolute;
  top: 40%;
  display: block;
  width: 100%; }
  .testimonial .arrow-thumb a {
    font-size: 32px;
    color: #dadada; }
    .testimonial .arrow-thumb a:hover, .testimonial .arrow-thumb a:focus, .testimonial .arrow-thumb a:active {
      text-decoration: none; }

.testimonial .owl-theme .owl-dots .owl-dot.active span, .testimonial .owl-theme .owl-dots .owl-dot:hover span {
  background: #eecc77; }

.testimonial .owl-theme .owl-dots .owl-dot span {
  background: #af6677; }

/* --------- end REZZENSION -------- */








/* ============================================================== 
    # TEAM 
=================================================================== */
.team {
  text-align: center;
  margin-bottom: 30px; }
  .team img {
    width: 100%;
    margin-bottom: 20px; }
  .team h3 {
    font-size: 24px;
    margin-bottom: 5px; }
  .team p {
    margin-bottom: 30px; }
  .team .role {
    color: gray;
    margin-bottom: 30px;
    font-weight: normal;
    display: block; }
/* --------- end TEAM -------- */



















/* ============================================================== 
    # BLOG  
=================================================================== */
.blog-featured a img {
  margin-bottom: 30px; }

.blog-featured h2 a {
  color: #af6677; }
  .blog-featured h2 a:hover {
    color: #eecc77; }

.blog-entry {
  width: 100%;
  float: left;
  position: relative;
  margin-bottom: 2em; }
  .blog-entry .thumb {
    position: absolute;
    top: 0;
    left: 0;
    width: 150px;
    float: left; }
  .blog-entry .desc {
    padding-left: 170px; }
    .blog-entry .desc h3 a {
      color: #af6677; }
      .blog-entry .desc h3 a:hover {
        color: #eecc77; }
    .blog-entry .desc .meta {
      color: #999999;
      font-size: 16px;
      margin-bottom: 10px; }



.blog {
  margin-bottom: 40px;
  width: 100%;
  float: left; }
  .blog > a {
    display: block;
    position: relative;
    -webkit-transition: 0.5s;
    -o-transition: 0.5s;
    transition: 0.5s; }
    .blog > a img {
      width: 100%; }
  @media (max-width: 768px) {
    .blog {
      width: 100%; } }
  .blog .blog-text {
    margin-bottom: 30px;
    position: relative;
    width: 100%;
    padding: 30px;
    float: left;
    border: 1px solid rgba(0, 0, 0, 0.07);
    background: #fff;
    -webkit-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s; }
    .blog .blog-text span {
      display: inline-block;
      margin-bottom: 20px; }
      .blog .blog-text span.comment {
        float: right; }
        .blog .blog-text span.comment a {
          color: rgba(0, 0, 0, 0.3); }
          .blog .blog-text span.comment a i {
            color: #eecc77;
            padding-left: 7px; }
    .blog .blog-text .meta {
      color: #b3b3b3;
      font-size: 16px;
      margin-bottom: 10px; }
    .blog .blog-text h3 {
      font-size: 28px;
      margin-bottom: 20px;
      line-height: 1.5; }
      .blog .blog-text h3 a {
        color: black; }
        
/* --------- end BLOG  -------- */














/* ============================================================== 
    # PREISE  
=================================================================== */
.preise {
	
}

.preise .eingerueckt > .row {
	border-bottom: 1px solid rgba(67, 78, 84, 0.2) !important;
	padding-top: .4em;
	padding-bottom: .4em;
	line-height: 1.3em
	}
.preise h4 {
	margin-top: 2em !important;
	margin-bottom: 0 !important;
	color: #af6677 !important;
	}	
.zeit {
	text-align: right !important;
	color: #af6677;
	font-size: 75%;
	white-space: nowrap;
	}
.preis {
	text-align: right
	}
/* --------- end PREISE -------- */










/* ============================================================== 
    # FOOTER  
=================================================================== */
footer {
  clear: both;
  background: #0b162a;
  background: #444f55;
  color: rgba(255, 255, 255, 0.5);
  padding: 5em 0 4em 0; 
  font-size: 90%;
  margin-top: 100px
  }
  
footer h4 {
    color: #fff;
    font-size: 20px;
    border-bottom: 2px solid #eecc77;
    padding-bottom: 15px; 
    text-transform: uppercase;
    letter-spacing: .04em
    }
footer b { 
	font-weight: 600;
    color: #eecc77;
	}  
footer a {
	color: rgba(255, 255, 255, 0.5);
	font-weight: normal
	}	
footer a:hover {
	color: #fff;
	text-decoration: none
	}	

footer [class*="col-"] .row {
	padding-top: .2em;
	margin-bottom: .4em;
	line-height: 1.3em
    }
    

footer ul.social-icons li a:hover {
	color: #fff !important
	}
	
    
footer ul {
    margin: 0 !important
    }
footer ul li {
    padding: 0 !important;
    margin: 0 !important
    }
footer ul li:before {
    display: none !important
    }    
footer ul li a {
    color: #eecc77 !important;
    font-weight: 500
    }
footer ul li a:hover {
	color: #fff !important;
    }
  



footer .copyright {
	display: block;
    font-size: 80%;
    margin-top: 4em
    }
footer .copyright p {
    display: block; 
    margin-bottom: 0
    }


@media (max-width: 768px) {
    footer {
	    padding: 3em 0; 
	    margin-top: 50px
	    } 
	footer .row [class*="col-"] {
		} 
	footer h4 {
		margin-top: 2em !important
		}    
}
/* --------- end FOOTER -------- */







/* ============================================================== 
    # SOCIAL  
=================================================================== */
.social-icons {
  margin: 0 !important;
  padding: 0 !important; 
  }
  .social-icons li {
 	 margin: 0 !important;
 	 padding: 0 !important; 
    list-style: none;
    display: -moz-inline-stack;
    display: inline-block;
    zoom: 1;
    *display: inline; 
    }
.social-icons li:before {
    display: none 
    }
    
    .social-icons li a {
      display: -moz-inline-stack;
      display: inline-block;
      zoom: 1;
      *display: inline;
      color: #eecc77 !important;
      padding-left: 10px;
      padding-right: 10px; }
      .social-icons li a i {
        font-size: 20px; }
        
    .social-icons li a:hover {
	    text-decoration: none;
	    color: #444f55 !important
	    }    
        
  /* --------- end SOCIAL -------- */

      








/* ============================================================== 
    # BUTTONS  
=================================================================== */
.btn {
  margin-right: 4px;
  margin-bottom: 4px;
  font-size: 15px;
  font-weight: 500;
  text-transform: uppercase;
  -webkit-border-radius: 40px;
  -moz-border-radius: 40px;
  -ms-border-radius: 40px;
  border-radius: 40px;
  -webkit-transition: 0.5s;
  -o-transition: 0.5s;
  transition: 0.5s;
  padding: 7px 21px; 
  background: #eecc77;
  border: 2px solid #eecc77;
  color: #fff;
  letter-spacing: .04em
  }
  .btn.btn-md {
    padding: 9px 25px !important; 
    font-size: 17px;
	letter-spacing: .05em
    }
  .btn.btn-lg {
    padding: 18px 36px !important; 
    font-size: 19px;
    letter-spacing: .06em
    }
  .btn:hover, 
  .btn:active, 
  .btn:focus {
    -webkit-box-shadow: none !important;
    box-shadow: none !important;
    outline: none !important; 
    color: #fff;
    background: #d6b76b;
    border-color: #d6b76b;
	box-shadow: 0 .2em .6em rgba(0, 0, 0, .3) !important;
    }


.btn-primary {
  background: #af6677;
  color: #fff;
  border: 2px solid #af6677; }
  .btn-primary:hover, 
  .btn-primary:focus, 
  .btn-primary:active {
    background: #7a4753 !important;
    border-color: #7a4753 !important; 
    }
    
    
.btn-success {
  background: #5cb85c;
  color: #fff;
  border: 2px solid #5cb85c; 
  }
  .btn-success:hover, 
  .btn-success:focus, 
  .btn-success:active {
    background: #4cae4c !important;
    border-color: #4cae4c !important; 
    }
  .btn-success.btn-outline {
    background: transparent;
    color: #5cb85c;
    border: 2px solid #5cb85c; 
    }
    .btn-success.btn-outline:hover, 
    .btn-success.btn-outline:focus, 
    .btn-success.btn-outline:active {
      background: #5cb85c;
      color: #fff; 
      }

.btn-info {
  background: #5bc0de;
  color: #fff;
  border: 2px solid #5bc0de; 
  }
  .btn-info:hover, 
  .btn-info:focus, 
  .btn-info:active {
    background: #46b8da !important;
    border-color: #46b8da !important;
     }
  .btn-info.btn-outline {
    background: transparent;
    color: #5bc0de;
    border: 2px solid #5bc0de; 
    }
    .btn-info.btn-outline:hover, 
    .btn-info.btn-outline:focus, 
    .btn-info.btn-outline:active {
      background: #5bc0de;
      color: #fff; 
      }

.btn-warning {
  background: #f0ad4e;
  color: #fff;
  border: 2px solid #f0ad4e; 
  }
  .btn-warning:hover, 
  .btn-warning:focus,
  .btn-warning:active {
    background: #eea236 !important;
    border-color: #eea236 !important; }
  .btn-warning.btn-outline {
    background: transparent;
    color: #f0ad4e;
    border: 2px solid #f0ad4e; }
    .btn-warning.btn-outline:hover, .btn-warning.btn-outline:focus, .btn-warning.btn-outline:active {
      background: #f0ad4e;
      color: #fff; }

.btn-danger {
  background: #d9534f;
  color: #fff;
  border: 2px solid #d9534f; 
  }
  .btn-danger:hover, .btn-danger:focus, .btn-danger:active {
    background: #d43f3a !important;
    border-color: #d43f3a !important; }
  .btn-danger.btn-outline {
    background: transparent;
    color: #d9534f;
    border: 2px solid #d9534f; }
    .btn-danger.btn-outline:hover, .btn-danger.btn-outline:focus, .btn-danger.btn-outline:active {
      background: #d9534f;
      color: #fff; }




.btn-outline {
  background: none;
  border: 2px solid gray;
  -webkit-transition: 0.3s;
  -o-transition: 0.3s;
  transition: 0.3s; 
  border-color: #af6677;
  font-weight: 400;
  color: #af6677
  }
  .btn-outline:hover, 
  .btn-outline:focus, 
  .btn-outline:active {
    -webkit-box-shadow: none;
    box-shadow: none; 
    background-color: #af6677 !important;
    border-color: #af6677 !important
    }


.btn.btn-outline-white {
	margin-top: 2em;
	color: #fff;
	background-color: transparent;
	border-color: rgba(255, 255, 255, 0.6);
	color: rgba(255, 255, 255, 0.85);
	}
    .btn.btn-outline-white:hover,
	.btn.btn-outline-white:focus {
	background-color: #d6b76b;
	border-color: #d6b76b;
	color: #fff
	}  
	
	
	

.btn.with-arrow {
  position: relative;
  -webkit-transition: 0.3s;
  -o-transition: 0.3s;
  transition: 0.3s; 
  }
  .btn.with-arrow i {
    visibility: hidden;
    opacity: 0;
    position: absolute;
	right: 0px;
    top: 52%;
    margin-top: -8px;
    -webkit-transition: 0.2s;
    -o-transition: 0.2s;
    transition: 0.2s; 
    }
    .btn.with-arrow:hover { padding-right: 50px !important; }
    .btn.with-arrow:hover i {
      color: #fff;
      right: 18px;
      visibility: visible;
      opacity: 1; 
      }
    .btn.btn-md.with-arrow i 		{ top: 48%;}
    .btn.btn-md.with-arrow:hover 	{ padding-right: 55px !important; }
    .btn.btn-md.with-arrow:hover i 	{ right: 20px }
    
    .btn.btn-lg.with-arrow i 		{ top: 45%;}
    .btn.btn-lg.with-arrow:hover 	{ padding-right: 60px !important; }
    .btn.btn-lg.with-arrow:hover i 	{ right: 22px }

 
 
 
@media (max-width: 992px) {
	.btn {
		padding: 6px 18px; 
		font-size: 14px;
		letter-spacing: .03em;
		}
	.btn.btn-md {
	    padding: 7px 20px !important; 
	    font-size: 16px;
		letter-spacing: .04em
	    }
	.btn.btn-lg {
		padding: 16px 33px !important; 
		font-size: 18px;
		letter-spacing: .05em
		}
} 
@media (max-width: 767px) {
	.btn {
		padding: 4px 15px; 
		font-size: 13px;
		letter-spacing: .02em;
		}
	.btn.btn-md {
	    padding: 5px 16px !important; 
	    font-size: 15px;
		letter-spacing: .03em
	    }
	.btn.btn-lg {
		padding: 12px 22px !important; 
		font-size: 17px;
		letter-spacing: .04em
		}
		
	.btn.btn-md.with-arrow i 		{ top: 50%;}
    .btn.btn-lg.with-arrow i 		{ top: 48%;}
    	
}        
/* --------- end BUTTONS -------- */








/* ============================================================== 
    # TABELLE  
=================================================================== */
.content table {
	font-size: 90%;
	margin-bottom: 0
    } 
.content table tr td {
	min-width: 80px
    } 
   .content table tr td:last-child {
	text-align: right;
    } 
.content table tr:last-child td {
	border: none
    }   
/* --------- end TABELLE -------- */






/* ============================================================== 
    # FORMULAR  
=================================================================== */
.form-control {
  -webkit-box-shadow: none;
  box-shadow: none;
  background: transparent;
    border: 1px solid rgba(0, 0, 0, 0.1);
    font-size: 20px;
    font-weight: 400;
    height: 45px;
	font-size: 16px;
	font-weight: 300;
	margin-bottom: 15px
    }
.form-control:active, 
.form-control:focus {
    outline: none;
    -webkit-box-shadow: none;
    box-shadow: none;
    border-color: #af6677; 
    }
    
.form-group {
	margin-bottom: 0
}    
/* --------- end FORMULAR -------- */


    




/* --------- PAGETOP
================================================== */
.pagetop-scroll {
    z-index: 1000;
	display:none;
    cursor: pointer;
    position: fixed;
    right: 25px;
    bottom: 20px;
    width: 50px;
    height: 50px;
    padding: .55em 0 0 0;
    text-align: center;
    color: #fff;
    border-radius: 5px;
	background: rgba(0, 0, 0, 0.5);
	line-height: 1.8em !important
    }
.pagetop-scroll span {
    font-size: 22pt;
	}	
.pagetop-scroll:hover {
	background: rgba(0, 0, 0, 0.7);
    transition: all .3s ease-out;
    padding-top: .2em;
    color: #fff;
    text-decoration: none
    }
@media (max-width: 1200px) {
    .pagetop-scroll { 
	    padding-top: .7em }
}    
/* --------- end PAGETOP -------- */






/* ============================================================== 
    # weg?!?  
=================================================================== */
.js .animate-box {
  opacity: 0; }







/* --------- BILDER --- (Neu) --------- 
================================================== */
figure.float-start 	{ float: left; }
figure.float-end	{ float: right; }

.figure-bild { 
  clear: both;
  display: inline-flex;
  flex-direction: column; 
  margin-bottom: 1.5rem;
  }
  .figure-bild:not(.float-end):not(.float-start) 	{ width: 100%; margin-bottom: 3rem }
  .figure-bild:is(.float-end, .float-start) 		{ margin-top: .25rem; }	
  .figure-bild.float-end 							{ clear: right; margin-left: 2rem }
  .figure-bild.float-start 						{ clear: left; margin-right: 2rem }	
@media (max-width: 992px) {
  .figure-bild:not(.float-end):not(.float-start) 	{ margin-bottom: 2.5rem }
  .figure-bild:is(.float-end, .float-start) 		{ margin-bottom: 1.5rem; }
  .figure-bild.float-end 							{ margin-left: 1.5rem }
  .figure-bild.float-start 						{ margin-right: 1.5rem }	
  }
@media (max-width: 768px) {
  .figure-bild:not(.float-end):not(.float-start) 	{ margin-bottom: 2rem }
  .figure-bild:is(.float-end, .float-start) 		{ margin-bottom: 1rem; }
  .figure-bild.float-end 							{ margin-left: 1rem }
  .figure-bild.float-start 						{ margin-right: 1rem }	
  }	

.figure-bild img 			{ max-width: 100%; border-radius: 5px; height: auto; }		
.figure-bild:not(.nb) img 	{ padding: 2px; border-radius: 7px; border: 1px solid #ddd; background: #fff; }	

.figure-bild:not(.float-end):not(.float-start) 	{ 
  text-align: center
  }


/* --------- BILDER --- (Mix) --------- 
================================================================ */
figure.figure 										{ width: 100% }
figure.figure.bildunterschrift-bildrahmenmitte,
figure.figure.bildunterschrift-bildrahmenmitte-nb 	{ clear: both; margin: 0 0 1.5em 0; width: 100%; display: block; text-align: center }
figure.figure.bildunterschrift-bildrahmenlinks,
figure.figure.bildunterschrift-bildrahmenlinks-nb 	{ width: 40%; clear: left; float: left; margin: .25em 2em 1.5em 0; width: 40% }
figure.figure.bildunterschrift-bildrahmenrechts,
figure.figure.bildunterschrift-bildrahmenrechts-nb 	{ width: 40%; clear: right; float: right; margin: .25em 0 1.5em 2em; width: 40% }

img.figure-img,
img.figure-img.bildrahmenmitte,
img.figure-img.bildrahmenlinks,
img.figure-img.bildrahmenrechts						{ padding: 2px; border: 1px solid #ddd; background: #fff; margin-bottom: 0 !important; border-radius: 7px; }

img.figure-img.bildrahmenmitte-nb,
img.figure-img.bildrahmenlinks-nb,
img.figure-img.bildrahmenrechts-nb 					{ padding: 0; border: none; border-radius: 5px; margin-bottom: 0 !important; }

img.figure-img.bildrahmenmitte,
img.figure-img.bildrahmenmitte-nb					{ min-width: auto; margin-bottom: 0 !important; }

.figure img.figure-img,
.figure img.figure-img.bildrahmenmitte,
.figure img.figure-img.bildrahmenlinks,
.figure img.figure-img.bildrahmenrechts,
.figure img.figure-img.bildrahmenmitte-nb,
.figure img.figure-img.bildrahmenlinks-nb,
.figure img.figure-img.bildrahmenrechts-nb 			{ min-width: 100%; }


/* --------- BILDER --- (Bisher) --------- 
================================================================ */
.bildrahmenmitte-wrapper,
.bildunterschrift-bildrahmenmitte-nb 				{ clear: both; margin: 0 0 1.5em 0; width: 100%; display: block; text-align: center }
.bildrahmenmitte-wrapper.bildunterschrift-bildrahmenmitte 	{ min-width: 100%; }

.bildunterschrift-bildrahmenlinks,
.bildunterschrift-bildrahmenlinks-nb 				{ width: 40%; clear: left; float: left; margin: .25em 2em 1.5em 0; width: 40% }
.bildunterschrift-bildrahmenrechts,
.bildunterschrift-bildrahmenrechts-nb 				{ width: 40%; clear: right; float: right; margin: .25em 0 1.5em 2em; width: 40% }

img.bildrahmenmitte,
img.bildrahmenlinks,
img.bildrahmenrechts								{ padding: 2px; border: 1px solid #ddd; background: #fff; border-radius: 7px; margin-bottom: 0 !important }
img.bildrahmenmitte-nb,
img.bildrahmenlinks-nb,
img.bildrahmenrechts-nb 							{ padding: 0; border: none; border-radius: 5px; margin-bottom: 0 !important }

img.bildrahmenmitte,
img.bildrahmenmitte-nb								{ min-width: auto; margin-bottom: 0 !important }

.bildrahmenmitte-wrapper img.bildrahmenmitte,
[class*="bildunterschrift-"] img.bildrahmenlinks,
[class*="bildunterschrift-"] img.bildrahmenrechts,
[class*="bildunterschrift-"] img.bildrahmenmitte-nb,
[class*="bildunterschrift-"] img.bildrahmenlinks-nb,
[class*="bildunterschrift-"] img.bildrahmenrechts-nb 	{ min-width: 100%; }



/* --------- Bildunterschrift	
================================================================ */
.bildunterschrift,
.figure-bild figcaption,
.figure-caption,	
.news_lang_video span {
  display: inline-block; 
  clear: both;
  font-style: italic;
  text-align: left;
  font-size: 85%;
  line-height: 1.4;
  color: rgba(0,0,0, .5);
  padding-top: .6rem;
  }
[class*="-nb"] .bildunterschrift,
[class*="-nb"] .figure-bild figcaption,
[class*="-nb"] .figure-caption,	
[class*="-nb"] .news_lang_video span {
  padding-top: .7rem;
  }		
:is(aside,.content-rechts) .bildunterschrift,
:is(aside,.content-rechts) .figure-bild figcaption,
:is(aside,.content-rechts) .figure-caption,	
:is(aside,.content-rechts) .news_lang_video span {
  text-align: center;
  width: 100%
  }
/* --------- end Bildunterschrift -------- */	



/* --------- GALERIE als ul --- (Neu) --------- 
================================================================ */
.gallery-list {
  clear: both;
  display: grid !important;
  box-sizing: border-box;
  gap: 15px;
  width: 100%;
  list-style: none !important;
  padding: 0 !important;
  margin: 2.5em 0;
  }
.gallery-list li {
  overflow: hidden;
  box-sizing: border-box;
  min-width: 0;
  width: 100%;
  aspect-ratio: 4 / 3;
  border-radius: 4px;
  overflow: visible; /* wichtig für Fokkussierung */
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
  background: none !important
  }
  .gallery-list li::before {
  display: none !important;
  }
.gallery-list li a {
  position: relative;
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center; 
  justify-content: center;
  }
.gallery-list li a img  {
  max-width: 100%;
  max-height: 100%;
  object-fit: cover; /* für Overlay-Hover-Effekt */
  display: block; /* für Overlay-Hover-Effekt */
  transition: transform .25s ease; /* für Overlay-Hover-Effekt */
  }
.gallery-list img {
  border-radius: 4px !important;
  }

/* --- HOVER --- */	
/* schwarzer Overlay */
.gallery-list li a::before {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, .25);
  opacity: 0;
  transform: scale(0);
  transform-origin: center center;
  transition: transform .4s ease, opacity .25s ease;
  z-index: 1;
  border-radius: inherit;
  pointer-events: none;
  border-radius: 4px !important;
  }
/* Hover-Icon */
.gallery-list li a::after {
  content: "+";
  font-size: 30px !important;
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%) scale(0.85);
  text-align: center;
  font-size: 1.2rem;
  color: #fff;
  border-radius: 50%;
  opacity: 0;
  transition: opacity .25s ease, transform .25s ease;
  z-index: 2;
  pointer-events: none;
  }
aside .gallery-list li a::after {
  font-size: 25px !important;
  }
/* Hover */
.gallery-list li:hover,
.gallery-list li a:focus-visible {
  transform: scale(1.05);
  transition: all .25s ease;
  }
.gallery-list li:hover a::before,
.gallery-list li a:focus-visible::before {
  opacity: 1;
  transform: scale(1);
  }
.gallery-list li:hover a::after,
.gallery-list li a:focus-visible::after {
  opacity: 1;
  transform: translate(-50%, -50%) scale(1);
  }


.gallery-list, main :is(.gallery-wrapper, .galerie_wrap)				{ grid-template-columns: repeat(5, 1fr); }
:is(aside, #subcontent, .content-rechts) .gallery-list, main :is(aside, #subcontent, .content-rechts) :is(.gallery-wrapper, .galerie_wrap) 	{ grid-template-columns: repeat(4, 1fr); gap: 10px }

@media (max-width: 1400px) {
  .gallery-list, main :is(.gallery-wrapper, .galerie_wrap)			{ grid-template-columns: repeat(4, 1fr); }
  :is(aside, #subcontent, .content-rechts) .gallery-list, main :is(aside, #subcontent, .content-rechts) :is(.gallery-wrapper, .galerie_wrap) { grid-template-columns: repeat(3, 1fr) }
  }
@media (max-width: 1200px) {
  .gallery-list, main :is(.gallery-wrapper, .galerie_wrap)			{ grid-template-columns: repeat(4, 1fr); }
  :is(aside, #subcontent, .content-rechts) .gallery-list, main :is(aside, #subcontent, .content-rechts) :is(.gallery-wrapper, .galerie_wrap){ grid-template-columns: repeat(3, 1fr) }
  }
@media (max-width: 992px) {
  .gallery-list, main :is(.gallery-wrapper, .galerie_wrap)			{ grid-template-columns: repeat(4, 1fr); }
  }
@media (max-width: 767px) {
  .gallery-list, main :is(.gallery-wrapper, .galerie_wrap)			{ grid-template-columns: repeat(3, 1fr); gap: 15px !important }
  :is(aside, #subcontent, .content-rechts) .gallery-list, main :is(aside, #subcontent, .content-rechts) :is(.gallery-wrapper, .galerie_wrap){ grid-template-columns: repeat(2, 1fr) }
  }	
@media (max-width: 575px) {
  .gallery-list, main :is(.gallery-wrapper, .galerie_wrap)	 		{ grid-template-columns: repeat(2, 1fr) !important;  }
  }


/* ------ COVER - quadratisch füllend ------ */
.gallery-list.cover li {
  aspect-ratio: 1 / 1; /* quadratische Container */
  }
  .gallery-list.cover li a img {
  width: 100%;
  height: 100%;
  object-fit: cover; 
  }
/* --------- end GALERIE --------- */



/* ------ KONTAKT in FLIEßTEXT ------ */
.contact-link { 
  color:  dodgerblue !important;
  text-decoration: none !important;
  text-decoration-color: inherit !important;
  white-space: nowrap;
  margin-left: .1rem;
  margin-right: .1rem;
  padding-left: 20px;
  }
.contact-link:hover { 
  color: dodgerblue !important;
  text-decoration: underline !important;
  text-decoration-color: inherit !important;
  }	
.contact-link::before { 
  margin-left: -20px;
  width: 20px;
  display: inline-block;
  text-align: left;
  font-weight: normal;
  vertical-align: middle;
  color: dodgerblue;
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  content: "\f054";
  }
  .contact-link:hover::before 	{
  color: dodgerblue !important;
  }
  .contact-link.contact-tel::before 	{ content: "\f095" !important; }
  .contact-link.contact-mail::before 	{ content: "\f1d8" !important; }
  .contact-link.contact-url::before 	{ content: "\f35d" !important; }
/* --------- end KONTAKT in FLIEßTEXT --------- */	