@import url('https://fonts.googleapis.com/css2?family=Nunito:wght@200;300;400;600;700;800&amp;display=swap');

@-webkit-keyframes fadeOut {
  0% { opacity: 1;}
  100% { opacity: 0; display: none; z-index: -1;}
}  

.elementor-swiper-button,
.elementor-swiper-button i{
	outline: none !important;
}

.elementor-slideshow__title{
	display: none;
}

.page-id-470 .swiper-container img{
	max-height: 60px;
	max-width: 200px;
}

.page-id-470 .swiper-container .swiper-pagination{
	bottom: -15px;
}

.page-id-20 small {
	font-size: 80%;
}

.openNav .page-area:after{
	z-index: 10;
}

.main-menu .navbar-default .navbar-nav > li > a:after{
	content: "";
  display: block;
  width: 35px;
  height: 2px;
  position: absolute;
  left: 16px;
	opacity: 0;
	transition: 0.3s;
}

body.home .main-menu .navbar-default .navbar-nav > li > a:after{
	background-color: #fff;
}

body:not(.home) .main-menu .navbar-default .navbar-nav > li > a:after{
	background-color: #404040;
}

.main-menu .navbar-default .navbar-nav > li:hover > a:after,
.main-menu .navbar-default .navbar-nav > li.active > a:after{
	opacity: 1;
}

.bolder{
	font-weight: bolder;
}

.elementor-column-gap-default>.elementor-column>.elementor-element-populated {
  padding: 0 5px;
}

.openNav .navbar-default .navbar-nav > li > a{
	color: #303030;
}

.custom-gallery .elementor-widget:not(:last-child){
	margin-bottom: 0;
}

.custom-gallery .gallery{
	display: inline-block;
}

.custom-gallery .gallery br{
	display: none;
}

.custom-gallery .elementor-widget-wrap .title{
	top: 0;
  bottom: 0;
  display: flex;
  align-items: center;
  justify-content: center;
}

.custom-gallery .elementor-widget-wrap:hover{
	cursor: pointer;
}

.custom-gallery .elementor-widget-wrap:hover img{
	transform: scale(1.05);
}

.custom-gallery .elementor-widget-wrap:hover .title,
.custom-gallery .elementor-widget-wrap:hover .gallery-icon.landscape:after {
	-webkit-animation: fadeOut 0.6s;
  animation: fadeOut 0.6s;
  animation-fill-mode: forwards;
}

.custom-gallery .elementor-widget-wrap .gallery-icon.landscape{
	position: relative;
}

.custom-gallery .elementor-widget-wrap .gallery-icon.landscape:after{
	content: "";
  display: block;
  height: 100%;
  width: 100%;
  background: #000000b3;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
	transition: 0.3s;
}

#scroll-top {
  display: none; 
  position: fixed; 
  bottom: 70px; 
  right: 30px; 
  z-index: 99; 
  border: none;
  outline: none; 
  background-color: #ffffff7a;
  color: #404040; 
  cursor: pointer; 
  padding: 9px 14px;
  border-radius: 10px;
  font-size: 24px;
  line-height: 1;
	-webkit-backface-visibility: hidden;
}

#scroll-top:hover {
  background-color: #dad8d8d9;
}
/*
.elementor-widget.elementor-widget-image-gallery{
	height: 205px;
}
*/

.custom-gallery .elementor-column{
	width: 33.33%;
	flex: 0 0 33.33%;
	/* height: 360px; */
}

.gallery .gallery-item:first-child {
	margin-top: 0 !important;
}

.custom-gallery .elementor-container{
	flex-wrap: wrap;
	overflow: hidden;
}

.gallery .gallery-item{
	visibility: hidden;
	position: absolute;
	top: 0;
	z-index: -1;
}

.gallery .gallery-item .gallery-icon{
	overflow: hidden;
	border-radius: 4px;
}

.gallery .gallery-item .gallery-icon img{
	border: none !important;
	transition: 0.3s;
}

.gallery .gallery-item:first-child{
	visibility: visible;
	position: static;
}

.ml2 {
  font-weight: 900;
  font-size: 3.5em;
}

.ml2 .letter {
  display: inline-block;
  line-height: 1em;
}

body.home .page-area{
	padding: 0;
}

.main-menu .navbar-default .navbar-nav > li > a {
    letter-spacing: 1px;
    transition: 0.3s;
    font-size: 13px;
}

.home .main-menu .navbar-default .navbar-nav > li > a{
	color: #fff;
}

.main-menu .navbar-default .navbar-nav > li > a{
	color: #404040;
}

/*
.home .navbar-default .navbar-nav > li > a {
    color: #fff !important;
}
*/

.home #site-navigation{
  background-color: rgba(0, 0, 0, 0.3) !important;
}

#site-navigation{
	position: fixed;
	top: 0;
  background-color: rgba(255, 255, 255, 0.6);
	box-shadow: none;
	display: flex;
  align-items: center;
	min-height: 80px;
}

.section .elementor-background-overlay,
.section h2.elementor-heading-title{
	transition: 0.8s !important;
}

.section:hover h2.elementor-heading-title{
	color: #fff !important;
	letter-spacing: 4px;
}

.section:not(.animated) h2.elementor-heading-title{
	display: none;
}

.site-branding-logo img {
  max-height: 38px;
  width: auto;
  padding-right: 10px;
	margin-top: 15px;
}

footer {
    padding: 20px 0;
}

footer .author {
    margin: 0;
    text-align: center;
}

footer .author,
footer .author a {
    color: #404040;
	  font-size: 13px;
}

footer .author a {
    font-weight: bold;
}


/**KONTAKT**/
/* Kontakt Section */
input,
textarea {
	padding: 12px 20px;
	margin-bottom: 18px;
	border: 1px solid #e2e2e2;
	font-weight: 300;
	font-size: 13px;
	color: #131313;
	background-color: #fff;
}

input:focus,
textarea:focus {
	outline: none;
}

textarea {
	resize: none;
}

input[type=submit] {
	font-size: 15px;
  line-height: 1.4;
  padding: 7px 35px;
	width: auto;
	font-weight: 300;
	color: #404040;
	border-radius: 3px;
	background-color: transparent;
	border: 1px solid #404040;
	transition: 0.4s;
}

input[type="submit"]:hover {
	box-shadow: none;
	background-color: #404040;
	border: 1px solid #404040;
	color: #fff;
}

.submit-container {
	display: flex;
	justify-content: start;
}

.submit-container .ajax-loader {
	visibility: hidden !important;
	position: absolute;
}

.wpcf7-not-valid-tip {
	font-size: 12px !important;
	margin-top: -12px;
}

.wpcf7 form .wpcf7-response-output {
	background-color: #EF4650;
	color: #fff;
	border: none;
	border-radius: 4px;
	padding: 10px 14px;
	font-size: 14px;
	margin: 0;
}

#kontakt input[type="checkbox"]{
	  width: 20px !important;
	  padding: 0 !important;
    margin-bottom: 0 !important;
}

#kontakt span.wpcf7-form-control.wpcf7-acceptance.optional{
	line-height: 15px !important;
}

#kontakt span.wpcf7-list-item-label{
	font-size:12px;
	color:#131313 !important;
	font-weight:normal;
	line-height: 15px !important;
}

#kontakt span.wpcf7-list-item-label a{
	color:#131313 !important;
	font-weight:bold;
}

/**KONTAKT-END**/
/* Enter Your Custom CSS Here */
::selection {
  /* background: #006171d1; */
	background-color: #404040;
  color: #fff; /* WebKit/Blink Browsers */
}

::-moz-selection {
  /* background: #006171d1; */
	background-color: #404040;
  color: #fff;
}

::-webkit-scrollbar {
  display: none;
}

/*HIDE reCaptcha*/
.grecaptcha-badge {
  visibility: hidden !important;
}

*:not(i) {
	font-family: "Nunito", sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

/*
    RESPONSIVE
 */
@media (max-width: 1280px) {

}

/*
##Device = Tablets, Ipads (landscape)
##Screen = B/w 768px to 1024px
*/

@media (max-width: 1024px) {
	
	.main-menu .navbar-default .navbar-nav > li > a:after{
		display: none;
	}

	#main-menu-panel.open-panel span{
		background-color: #404040;
	}
	
	.home #main-menu-panel.open-panel span{
		background-color: #fff;
	}
	
	.custom-gallery .elementor-column{
		width: 50%;
		flex: 0 0 50%;
	}
	
	.site-branding-logo img{
		margin-top: 0;
	}
	
	.section:not(.animated) h2.elementor-heading-title{
		display: block;
	}
	
	.section > .elementor-background-overlay{
		filter: brightness( 50% ) contrast( 100% ) saturate( 100% ) blur( 0px ) hue-rotate(0deg) !important;
	}
	
	.section:hover h2.elementor-heading-title{
		letter-spacing: 0;
	}
	
	#site-navigation #menu-header .menu-item {
		padding: 5px 16px !important;
	}

	#site-navigation #menu-header .menu-item a {
		font-size: 18px;
		color: #303030;
	}
	
	#site-navigation #menu-header li.active {
		background-color: #4040401c;
	}

	#site-navigation .site-branding-logo a {
		z-index: 15;
	}

	.openNav .menu-container {
		z-index: 10;
		max-height: auto !important;
	}
	
	.button-container .elementor-widget-container{
			width: 130%;
			text-align: center;
		}

		section:nth-child(2) .button-container .elementor-widget-container,
		section:nth-child(4) .button-container .elementor-widget-container{
			margin-left: -30%;
		}
}

/*
##Device = Low Resolution Tablets, Mobiles (Landscape)
##Screen = B/w 481px to 767px
*/
@media (max-width: 767px) {
	
	.button-container .elementor-widget-container{
			width: 100%;
			text-align: center;
		}

		section:nth-child(2) .button-container .elementor-widget-container,
		section:nth-child(4) .button-container .elementor-widget-container{
			margin-left: 0%;
		}
	
	#site-navigation #menu-header li{
		display: inline-block;
	}
	
	.site-branding-logo img{
		max-height: 36px;
    margin-left: -30px;
	}
	
	#site-navigation #menu-header li.active a{
		background-color: transparent;
	}
	
	.menu-container{
		width: 70%;
		max-height: 100vh !important;
	}
	
	.openNav .page-area {
		transform: translate3d(30%, 0, 0);
	}
	
	.custom-gallery .elementor-column{
		width: 100%;
    flex: 0 0 100%;
	}
	
	.submit-container {
    display: flex;
    justify-content: center;
	}
	
	.wpcf7-list-item {
		margin: 0;
    padding: 0 15px;
	}
	
	.wpcf7-list-item label{
		display: flex;
		margin-bottom: 10px;
	}
	
	#kontakt input[type="checkbox"]{
		width: 45px !important;
	}
	
	#kontakt span.wpcf7-list-item-label{
		text-align: center;
		padding-top: 4px;
	}
	
	#social-icons .elementor-container{
		justify-content: center;
	}
	
	.elementor-lightbox .elementor-lightbox-item{
		padding: 0;
	}

	.elementor-lightbox .elementor-lightbox-image{
		max-height: initial;
		height: 100%;
	}
}