:root {
  
  --orange: #F39200;
  --blue: #00A3DA;
  --default: #636363;
  --white: #fff;
}

@font-face {
  font-family: "AvenirLTStd";
  src: url("/wp-content/uploads/fonts/AvenirLTStd45Book.otf");
	font-weight:400;
}
@font-face {
  font-family: "AvenirLTStd";
  src: url("/wp-content/uploads/fonts/AvenirLTStd65Medium.otf");
	font-weight:500;
}
@font-face {
  font-family: "AvenirLTStd";
  src: url("/wp-content/uploads/fonts/AvenirLTStd85Heavy.otf");
	font-weight:600;
}
@font-face {
  font-family: "AvenirLTStd";
  src: url("/wp-content/uploads/fonts/AvenirLTStd95Black.otf");
	font-weight:700;
}

.fadeInUp {
	animation-name:fadeUp;
	animation-timing-function:cubic-bezier(0.25, 0.46, 0.45, 0.94);
}
.fadeInDown {
	animation-name:fadeDown;
	animation-timing-function:cubic-bezier(.215,.61,.355,1);
}
.fadeInRight {
	animation-name:fadeRight;
	animation-timing-function:cubic-bezier(.215,.61,.355,1);
}
.fadeInLeft {
	animation-name:fadeLeft;
	animation-timing-function:cubic-bezier(.215,.61,.355,1);
}

.zoomIn {
	animation-name:zoomIN !important;
	//animation-timing-function:cubic-bezier(.215,.61,.355,1);
}

@keyframes fadeUp {
	from{
		opacity: 0;
    	transform: translate3d(0, 25px, 0);
	}
	to{
		opacity: 1;
    	transform: none;
	}
}

@keyframes fadeDown {
	from{
		opacity: 0;
    	transform: translate3d(0, -25px, 0);
	}
	to{
		opacity: 1;
    	transform: none;
	}
}
@keyframes fadeRight {
	from{
		opacity: 0;
    	transform: translate3d(85px,0,0);
	}
	to{
		opacity: 1;
    	transform: none;
	}
}
@keyframes fadeLeft {
	from{
		opacity: 0;
    	transform: translate3d(-85px, 0, 0);
	}
	to{
		opacity: 1;
    	transform: none;
	}
}

@keyframes zoomIN {
	0% {
		opacity: 0;
    	transform: scale3d(.8,.8,.8);
	}
	50%{
		opacity: 1;
	}
}


body {
	overflow-x:hidden; 
}

body {
	font-family:'AvenirLTStd';
}
/*--------------------------------------------------------------
# Header, Logo
--------------------------------------------------------------*/

/* Default header */
header#masthead {
	  background: transparent;
	  position: fixed !important;
	  z-index: 9;
	  width: 100%;
	  box-shadow: none;
	  padding: 0;
	  transform: translateY(0%);
	  transition: all .3s ease-out;
}
header#masthead.scrollUp {
	  transform: translateY(-100%);
	  transition: all .5s;
}

.header-navigation-wrapper{
    background:rgba(255,255,255,.05) !important;
    border-radius: 80px;
    isolation: isolate;
    box-shadow: 0px 0px 21px -8px rgba(255, 255, 255, 0.3) !important;
    cursor: pointer;
}

.header-navigation-wrapper::before{
    content: '';
    position: absolute;
    inset: 0;
    z-index: 0;
	left:50%;
	transform:translatex(-50%);
    border-radius: 80px;
    box-shadow: inset 0 0 12px -4px rgba(255, 255, 255, 0.5);
    background-color: rgba(255, 255, 255, 0);
    pointer-events: none;
	width:100%;
	max-width:1140px;
}

.header-navigation-wrapper::after{
	width:100%;
	max-width:1140px;
    content: '';
    position: absolute;
	left:50% !important;
	transform:translatex(-50%);
    inset: 0;
    z-index: -1;
    border-radius: 80px;
    backdrop-filter: blur(15px);
    -webkit-backdrop-filter: blur(15px);
    filter: url(#glass-distortion);
    -webkit-filter: url(#glass-distortion);
    isolation: isolate;
    pointer-events: none;
}

.header-navigation-wrapper > *{
    position:relative;
    z-index:10;
}




/*--------------------------------------------------------------
# Navigation
--------------------------------------------------------------*/
.elementor-489 .elementor-element.elementor-element-9111edd .hfe-nav-menu-icon {
	font-size:0;
}
.elementor-widget-navigation-menu,
.header-navigation-wrapper,
.header-navigation {
	position:static;
}

.hfe-dropdown-expandible {
	position:absolute;
	top:-30px !important;
    //right: 0;
	left: unset !important;
    width: 0 ;
    height: 100vh !important;
	background-image:url(/wp-content/uploads/2026/05/442bf2af7339512c0101219108850b010e6b3498-1.jpg);
    background-size:cover;
	background-position:center;
    transition: all .3s ease-out;
    overflow: hidden;
    opacity: 0;
    visibility: hidden;
	z-index: -1 !important;
	padding: 150px 60px 0;
	transform:translatex(-10%);
}

.hfe-dropdown-expandible.menu-is-active {
    opacity: 1;
    width: 70% !important;
    visibility: visible;
    transition: all .3s ease-out;
    z-index: -1 !important;
}

.hfe-nav-menu__layout-vertical {
	width:80% !important;
}

.hfe-nav-menu-icon {
	padding:0;
}

/*--------------------------------------------------------------
# Typo
--------------------------------------------------------------*/


ul {
	margin-left:17px;
}

li::marker {
	color:var(--orange);
}

@keyframes fill-it {
	from{width:0}
	to{width:450px;}
}

/*--------------------------------------------------------------
# Startseite
--------------------------------------------------------------*/

.viewport, .footer-viewport {
	position:relative;
}

.position-sticky {
	--position: sticky;
	position:sticky;
	top:0;
}
/*
.position-sticky.one {
	top:50px;
}
.position-sticky.two {
	top:100px;
}
.position-sticky.three {
	top:150px;
}
.position-sticky.four {
	top:200px;
}
.position-sticky.five {
	top:250px;
}
*/

.e-n-tabs-heading button {
	box-shadow:none;
	outline:0;
	padding-left:20px;
}

.elementor-custom-embed-play i, .elementor-custom-embed-play svg {
	opacity:1;
	
	
}
.elementor-custom-embed-play {
	box-shadow: 0 0 0 0 rgba(255,255,255, .5);
	animation: pulse 2.5s infinite;
	border-radius:50%;
}

@keyframes pulse {
  0% {
    @include transform(scale(.9));
  }
  70% {
    @include transform(scale(1));
    box-shadow: 0 0 0 30px rgba(255,255,255, 0);
  }
    100% {
    @include transform(scale(.9));
    box-shadow: 0 0 0 0 rgba(255,255,255, 0);
  }
}

/*--------------------------------------------------------------
# Landingpages
--------------------------------------------------------------*/
.swiper-slide-inner {
	position:relative;
}
.komponenten-slider .elementor-image-carousel-caption{
	position: absolute;
	bottom:0;
	left:0;
	padding:30px 15px 20px 15px;
	background-image:linear-gradient(to top, #2F3132, rgba(0,0,0,0));
	width:100%;
}
.komponenten-slider .elementor-image-carousel-caption b {
	display:block;
	font-size:22px;
}

/*--------------------------------------------------------------
# GASP Animation
--------------------------------------------------------------*/
/* normalize transform background */
.split-wrapper,
.split-wrapper .e-con,
.split-wrapper.e-con,
.split-wrapper .e-con-inner,
.leistungen-container,
.leistungen-container .e-con,
.leistungen-container.e-con,
.leistungen-container .e-con-inner{
  transition: none !important;
}

.circle-item{
  position: relative;
  transform-origin: center center;
  //will-change: transform, opacity;
  opacity:0;
  transform:scale(.7);

}

.leistungen-container {
    position: relative;
    width: 100% !important;
    overflow: hidden;
}

.leistungen-section {
    opacity: 0;
}

.elementor-editor-active .leistungen-section,
.elementor-editor-active .circle-item {
	opacity:1;
	transform:scale(1);
	position:relative;
}

.rotate-clock {
	animation: rotate-it 10s linear infinite;
}

@keyframes rotate-it {
 0%{
    transform: rotateX(0deg);
   }
  50%{
    transform: rotateX(35deg) rotateZ(10deg);
   }
100%{
    transform: rotateX(0deg);
   }
}

@media only screen and (max-width:600px) {
	.hfe-dropdown-expandible {
		padding:150px 30px;
	}
	.hfe-dropdown-expandible.menu-is-active {
		width:100% !important;
	}
}

