html, body {
    width: 100%;
	height: 100%;
	padding: 0;
	margin: 0;
	background-color: #e2e3e3;
}




.fancy{
	-o-transition: all 0.1s ease-in;
	-webkit-transition: all 0.1s ease-in;
	-moz-transition: all 0.1s ease-in;
	transition: all 0.1s ease-in;		
}



/* xs / - auto Extra Small devices */
@media (max-width: 575px) {}
/* sm Medium devices */
@media (max-width: 767px) {}
/* md Medium devices  */
@media (max-width: 991px) {}
/*  lg Large devices */
@media (max-width: 1139px) {}


/* Content
-------------------------------------------------- */
.txt_color_default{
	color: #717170;
}



/**/
.container {
	max-width: 950px;
}	
@media (max-width: 575px) {
	.d-sm-block{
		display: block !important;
	}
	.col-sm-6{
		width: 50%;
	}
}

section{	
	padding-top: 90px;
	padding-bottom: 90px;
	position: relative;
}
@media (min-width: 992px) {
	section.fullheight{		
		min-height: 100%;	
		align-items: center;	
	}
}

.slider360{
	height: 100%;
    text-align: center;
	padding: 0;
	position: relative;
}
	.owl-carousel.owl_fullscreen {
		position: relative;
		height: 100%;
	}
section.slider360 iframe{
	height: 100%;
	width: 100%;
}
#panorama_link{
	position: absolute;
	top: calc(50% - 70px);
	left: calc(50% - 120px);	
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	z-index: 5;
	padding: 0 5px;
	
	/* letter-spacing: .1em; */
	
	background: rgba(255,255,255,.9);
	width: 240px;
	height: 240px;
	border-radius: 120px; 
	-moz-border-radius: 120px; 
	-webkit-border-radius: 120px;	
}
#panorama_link:hover{
	background: rgba(255,255,255,.95);
}
	#panorama_link p{
		font-size: 17px;
		line-height: 20px;
		font-weight: 700;			
		 margin: 15px 0 0 0;
		padding:0;
	}
	#panorama_link .smaller p{
		margin: 12px 5px 0 5px;
		font-size: 9px;
		line-height: 12px;
		font-weight: 400;	
	}

.philosophie_content{
	margin-bottom: -.6rem;
}
@media (max-width: 767px) {
	.philosophie_content{
		padding-top: 2rem;
		padding-bottom: 1rem;
	}
}

.bg_black{
	background-color: #000;
}
.bg_black h1,
.bg_black h2,
.bg_black p,
.bg_black div{
	color: #fff;
}
.col_gallery{
	margin-bottom: 30px;
}
.kontakt_logo{
	max-width: 200px;
}
.section_kontakt{
	border-top: 1px solid #717170;
}


@media (max-width: 767px) {

	.owl-carousel.owl_fullscreen {
		height: 100%;
	}	
}

.bg_img_cover{		
	background-position: 50% ;
	background-repeat: no-repeat;
	-webkit-background-size: cover !important;
	-moz-background-size: cover !important;
	-o-background-size: cover !important;
	background-size: cover !important;		
}
	
.parallax_bg {
    background-repeat: no-repeat;
    background-position: center center;
    -webkit-background-size: cover !important;
    -moz-background-size: cover !important;
    -o-background-size: cover !important;
    background-size: cover !important;
   /* height: auto; */
    margin: 0 auto;
    margin-top: 40px;
    padding: 0;
    position: relative;
    width: 100%;
    color: #fff;

}

.imggreyscale{
    -webkit-filter: grayscale(100%); 
    filter: grayscale(100%);	
}
.imggreyscale:hover{
    -webkit-filter: none; 
    filter: none;	
}


/* Navigation
-------------------------------------------------- */
.navbar{
	background: #fff;
}
.sticky-top {
   /*  transition: all 0.25s ease-in;	*/	
	z-index: 98;
	width: 100%;
	position: fixed;	
	display: block;
	padding: .5rem 1rem;
}
.navbar-brand{
	padding: 0;
}
.navbar-brand img{
	 transition: all 0.25s ease-in;
	 max-height: 50px;
}
.navbar-nav{
	display: block;	
}
	.navbar-nav li{
		float: left;
		margin-left: 20px;
	}
		.navbar-nav a{
			color: #727271;
			font-weight: 600;
			font-size: 15px;
		}
			.navbar-nav a:hover,
			.navbar-nav a.active{
				color: #c73641;
			}		
		/*
		.sps_blw .navbar-nav a{
			color: #fff;
		}
		.navbar-nav a:hover,
		.sps_blw .navbar-nav a:hover,
		.navbar-nav a.active{
			color: #e9d25e;
		}
		*/


/*
.sps_blw.navbar{
    background-color: rgba(46,62,95,1) !important;
    padding-top: 3px !important;
    padding-bottom: 3px !important;	
}

.sps_blw .navbar-brand img{
	max-height: 40px;

}
.sps_blw .navbar-brand{
	background-position: 50% ;
	background-repeat: no-repeat;
	background-size: cover;		
}
*/

/*
overlay nav
-------------------------------------------------*/
#overlay{
	display: none;
}
@media (max-width: 991px) {
	#main_navigation{
		
		display: none;
		
	}
	#overlay{
		display: block;
	}

	.button_container {
		position: fixed;
		top: 22px;
		right: 22px;
		height: 21px;
		width: 28px;
		cursor: pointer;
		z-index: 100;
		transition: opacity .25s ease;
		z-index: 99;

	}

		.button_container:hover {
		  opacity: .7;
		}
		.button_container.active .top {
		  -webkit-transform: translateY(8px) translateX(0) rotate(45deg);
				  transform: translateY(8px) translateX(0) rotate(45deg);
		 /* background: #FFF; */
		}
		.button_container.active .middle {
		  opacity: 0;
		  /* background: #FFF; */
		}
		.button_container.active .bottom {
		  -webkit-transform: translateY(-8px) translateX(0) rotate(-45deg);
				  transform: translateY(-8px) translateX(0) rotate(-45deg);
		 /* background: #FFF; */
		}
			.button_container span {
			  background: #000000;
			  border: none;
			  height: 3px;
			  width: 100%;
			  position: absolute;
			  top: 0;
			  left: 0;
			  transition: all .35s ease;
			  cursor: pointer;
			}
				.button_container span:nth-of-type(2) {
				  top: 8px;
				}
				.button_container span:nth-of-type(3) {
				  top: 16px;
				}

	.overlay {
		position: fixed;
		background-color: #e2e3e3;
		top: 0;
		left: 0;
		width: 100%; 
		opacity: 0;
		visibility: hidden;
		height: 100%;
		transition: opacity .35s, visibility .35s;  
		overflow: hidden;
		z-index: 9998;
	}
		.overlay.open {
			opacity: 1;
			visibility: visible;
			height: 100%;
		}
		.overlay.open li {
		  -webkit-animation: fadeInUp .5s ease forwards;
				  animation: fadeInUp .5s ease forwards;
		  -webkit-animation-delay: .35s;
				  animation-delay: .35s;
		}
		.overlay.open li:nth-of-type(2) {
		  -webkit-animation-delay: .4s;
				  animation-delay: .4s;
		}
		.overlay.open li:nth-of-type(3) {
		  -webkit-animation-delay: .45s;
				  animation-delay: .45s;
		}
		.overlay.open li:nth-of-type(4) {
		  -webkit-animation-delay: .50s;
				  animation-delay: .50s;
		}
		.overlay.open li:nth-of-type(5) {
		  -webkit-animation-delay: .55s;
				  animation-delay: .55s;
		}		

		.overlay .inner_overlay{
			position: relative;
			text-align: center;
			top: 40%;
			-webkit-transform: translateY(-40%);
				  transform: translateY(-40%);	
			padding: 0 2%;
		}
			.overlay nav {
				margin-top: 30px;
				font-weight: normal;
				font-size: 16px;
				/* text-transform: uppercase; */
				text-align: center;
			}		
				.overlay ul {
					list-style: none;
					padding: 0;
					margin: 0 auto;
					display: inline-block;
					position: relative;
					height: 100%;
				}
					.overlay ul li {
						display: block;
						position: relative;
						opacity: 0;
					}
						.overlay ul li a.nav-link {
							display: block;
							position: relative;
							color: #727271;
							text-decoration: none;
							overflow: hidden;
							padding: .6rem 1rem .1rem 1rem;
						}
							.overlay ul li a.nav-link:hover,
							.overlay ul li a.nav-link.active{
								color: #c73641;
							}
							.overlay ul li a:hover:after, .overlay ul li a:focus:after, .overlay ul li a:active:after {
								width: 100%;
							}
							.overlay ul li a:after {
								content: '';
								position: absolute;
								bottom: 0;
								left: 50%;
								width: 0%;
								-webkit-transform: translateX(-50%);
									  transform: translateX(-50%);
								height: 1px;
								background: #c73641;
								transition: .35s;
							}

}


/* footer
-------------------------------------------------- */

.footer{
	background: #fff;	

	padding: 20px 0;
	text-align: center;
}
#service_nav{
	padding: 0;
	margin: 0;
}
	#service_nav li {
		display: inline;
		margin: 0 10px;
	}

/* owl-carousel
-------------------------------------------------- */
.owl-carousel.owl_fullscreen .item, 
.owl-carousel.owl_fullscreen .owl-stage-outer, 
.owl-carousel.owl_fullscreen .owl-stage, 
.owl-carousel.owl_fullscreen .owl-item {
	height: 100%;
}

#header_slider.owl-theme .item{
	width: 100%;
	height: 100%;
	background-position: center;
	-webkit-background-size: cover;
	-moz-background-size: cover;
	background-size: cover;
	-o-background-size: cover;	
}
#header_slider.owl-theme .owl-dots{
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
}

	.owl-theme .owl-nav.disabled + .owl-dots{
		margin-top: 10px;
	}

		.owl-theme .owl-dots .owl-dot span {
			width: 12px;
			height: 12px;
			margin: 5px 3px;
			background: transparent;
			border: 1px solid #fff;
			display: block;
			-webkit-backface-visibility: visible;
			transition: opacity .2s ease;
			border-radius: 30px;
		}
		.owl-theme .owl-dots .owl-dot:hover span,
		.owl-theme .owl-dots .owl-dot.active span{
			 background: #fff;
		}

.owl-theme .owl-nav {	
    margin-top: 0;
	z-index: 100;
}
.owl-carousel .owl-nav button.owl-next,
.owl-carousel .owl-nav button.owl-prev{
	position: absolute;
	top: 50%;
	margin-top: -10px;
}
	.owl-carousel .owl-nav button.owl-prev{
		left: 0;
	}
	.owl-carousel .owl-nav button.owl-next{
		right: 0px;
	}

.owl-carousel .owl-nav button .glyphicon{
	font-size: 40px;
}	
  .owl-theme .owl-nav [class*='owl-'] {
    color: #fff !important;
    margin: 5px;
    padding: 15px;
    display: inline-block;
    cursor: pointer;
	opacity: 0.7;
	text-shadow: 1px 1px 8px rgba(0, 0, 0, .4); filter: dropshadow(color=rgba(0, 0, 0, .4), offx= 1, offy=1);
}
.owl-theme .owl-nav [class*='owl-']:hover {
	color: #fff;
	text-decoration: none; 
	opacity: 1;
	background: transparent;
}	

.owl_slide_content{
	position: relative;
	width: 100%;
	height: 100%;
}

	.owl_bottom_slide{
		bottom: 15%;
		left: 5%;
		position: absolute;
		width: 95%;
		text-align: left;
		height: 100px;
		display: table;
	}


	.owl-item .owl_slide_content h3,
	.owl-item .owl_slide_content h4,
	.owl-item .owl_slide_content a.btn{
		padding: 0;
		margin: 0;
		position: absolute;				
	}

	
	.owl-item .owl_slide_content h3,
	.owl-item .owl_slide_content h4{
		padding-left: 12px;
		padding-right: 12px;		
	}
	.owl-item .owl_slide_content h3 {
		top: 30px;
		font-size: 30px;
		line-height: 1.1em;
		font-weight: 600;
		padding-top: 8px;
		padding-bottom: 8px;
		width: 100%;
		/* height: 60px; */
		background: rgba(0,0,0,.6);
		color: #fff;
		
		text-shadow: 1px 1px 8px rgba(0, 0, 0, .9); filter: dropshadow(color=rgba(0, 0, 0, .9), offx= 1, offy=1);
	}
	.owl-item .owl_slide_content h4 {
		top: 0;
		height: 30px;
		width: 100%;
		background: rgba(0,0,0,.2);
		font-size: 20px;	
		font-weight: 600;
		color: #fff;
		background: rgba(0,0,0,.3);
		text-shadow: 1px 1px 8px rgba(0, 0, 0, .9); filter: dropshadow(color=rgba(0, 0, 0, .9), offx= 1, offy=1);
	}
	
	
	.owl-item .owl_slide_content a.btn {
		top: 300px;
		margin: 0 auto;
		border-color: transparent;
		background: rgba(255,255,255,.8);
		color: #EF882E;
		font-size: 20px;
		width: 230px;
		text-align: center;
		padding: 5px 10px;
	}
	
		.owl-item .owl_slide_content a.btn:hover,
		.owl-item .owl_slide_content a.btn:focus{
			color: #EF882E;
			border-color: transparent;
			background: rgba(255,255,255,1);
		}

.owl-item .box_inner {
    margin: 0 auto;
    max-width: 800px;
    padding: 2%;
        padding-top: 2%;
    padding-top: 5%;
}
.box_centered {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-flow: column nowrap;
    flex-flow: column nowrap;
    -ms-flex-pack: center;
    justify-content: center;
}

/* photoswipe
-------------------------------------------------- */
.photoswipe-wrapper{	
	padding-right: -3px;
	padding-left: -3px;
	margin-right: auto;
	margin-left: auto;
}
	.photoswipe-wrapper .row{
		margin-right: 0px;
		margin-left: 0px;		
	}
	.photoswipe-wrapper .caption{
		display: none;
	}
		.photoswipe-wrapper .grid_item{
			padding: 3px;
		}
		.pswp__counter,
		.pswp__caption__center {
			font-size: inherit;
		}
		
	
/* Custom CSS
-------------------------------------------------- */	
.nachoben {
	position: fixed;
	bottom: 80px;
	right: 0px;
	font-size: 16px;
	padding: 5px 5px;
	display: none;
	z-index: 999;
	color: #000000 !important;
	opacity: 1;
	background: #fff;
	border-top-left-radius: 3px;
	-moz-border-radius-topleft: 3px;
	-webkit-border-top-left-radius: 3px;
	border-bottom-left-radius: 3px;
	-moz-border-radius-bottomleft: 3px;
	-webkit-border-bottom-left-radius: 3px;		
}

.nachoben:hover {	
	opacity: 1;	
	background: #000000;
	color: #fff !important;
}			
		
img,
embed,
object,
video { 
	max-width: 100%;
	height: auto;
	width: auto;
}



/* modal
-------------------------------------------------- */

#modal_container_1{
	padding-right: 0 !important;
	
}
.modal-backdrop {
    background-color: #000;
	background-position: 50% ;
	background-repeat: no-repeat;
	-webkit-background-size: cover !important;
	-moz-background-size: cover !important;
	-o-background-size: cover !important;
	background-size: cover !important;	
	background-image:url('../../../../uploads/userfiles/images/backgrounds/modal.jpg');
}
	.modal-backdrop.show {
		opacity: 1;
	}
	.modal-backdrop.in {
		opacity: 1;
	}
/*	
.modal-dialog {
    max-width: 768px;
	padding: .5rem;
	margin: 0 auto;
}
*/
.modal-content {
    background-color: #fff;
	border: 0;
	border-radius: 0;
}
	.modal-header{
		background: #fff;
		border-bottom: none;
	}
		.modal-header img{
			height: 40px;
		}
		.modal-header button{
			color: #000;
			opacity: 1;
		}
			.modal-header button:hover,
			.modal-header button:active{
				color: #000;
				opacity: 1;
			}
			
	.modal-header .close {
		float: right;
		font-size: inherit;
		font-weight: 500;
		color: #000;
		text-shadow: none;
	}		
				
	.modal-body {
		padding: 1rem 3rem;
	}

		.modal-body .row{
			padding: 0;
		}
		.modal-body .row img{
			width: 100% !important;
			margin: 0;
		}	
	.modal-footer {
	   border-top: 1px solid transparent;
	}
		
