/* 
Theme Name: Hello Elementor Child
Theme URI: https://github.com/elementor/hello-theme-child/
Description: Hello Elementor Child is a child theme of Hello Elementor, created by Elementor team
Author: Elementor Team
Author URI: https://elementor.com/
Template: hello-elementor
Version: 2.0.0
Text Domain: hello-elementor-child
License: GNU General Public License v3 or later.
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Tags: flexible-header, custom-colors, custom-menu, custom-logo, editor-style, featured-images, rtl-language-support, threaded-comments, translation-ready
*/
#slide-menu {
  position: fixed;
  top: 0;
  right: -100%;
  width: 100%;
  height: 100%;
transition: all 500ms cubic-bezier(0.770, 0.000, 0.175, 1.000); /* easeInOutQuart */

transition-timing-function: cubic-bezier(0.770, 0.000, 0.175, 1.000); /* easeInOutQuart */
  z-index: 500;
}

#slide-menu.show {
    right: 0;
}

/* Block Scroll when menu is opened */
body.show{
    overflow: hidden;
}

/* Button Arrow */
.icon-arrow-wrapper{
    height: 40px;
    max-height: 40px;
    min-height: 40px;
    border-radius: 100px;
    transform: translateZ(0);
}

.icon-btn{
    height: 16px;
    width: 16px;
    transition: all 500ms cubic-bezier(0.860, 0.000, 0.070, 1.000); /* easeInOutQuint */
transition-timing-function: cubic-bezier(0.860, 0.000, 0.070, 1.000); /* easeInOutQuint */
}
.button-wrapper:hover .icon-btn{
    transform: translate(45px, -45px);
}
.icon-btn-sec{
    height: 16px;
    width: 16px;
    position: absolute;
    transform: translate(-25px, 25px);
transition: all 500ms cubic-bezier(0.860, 0.000, 0.070, 1.000); /* easeInOutQuint */
transition-timing-function: cubic-bezier(0.860, 0.000, 0.070, 1.000); /* easeInOutQuint */
}

.button-wrapper:hover .icon-btn-sec{
    transform: translate(0px, 0px);
}
.icon-btn-sec{
}




/* Add your custom styles here */
.padding-section {
	padding-top: 100px;
	padding-bottom: 100px;
}
@media screen and (max-width: 1250px){
	.padding-section{
		padding-top: 60px;
		padding-bottom: 60px;
		padding-left: 40px;
		padding-right: 40px;		
	}	
}

@media screen and (max-width: 767px){
	.padding-section {
		padding-top: 60px;
		padding-bottom: 60px;
		padding-left: 20px;
		padding-right: 20px;		
	}
	.full-width-button-mobile a{
		width: 100%;
	}
}

@keyframes float {
	0% {
		transform: translatey(0px);
	}
	50% {
		transform: translatey(-20px);
	}
	100% {
		transform: translatey(0px);
	}
}

.floating-up {
	animation: float 6s ease-in-out infinite;
}

.flex-row{
	display: flex;
	flex-direction: row;
}
.logo-gallery .gallery{
	display: flex;
    align-items: center;
    flex-wrap: wrap;
}

.faq-border .elementor-toggle .elementor-tab-title{
	border: 1px solid;	
}

.icon-button svg{
	height: 14px;
}

.icon-start .elementor-icon-list-icon{
	align-self: start;
}

p.elementor-heading-title{
	margin-bottom: 0;
}

.scroll-logo{
  transition-timing-function: linear !important; 
}

.elementor-widget-text-editor p:last-child{
	margin-bottom: 0px!important;
}
.full-height-image{
	height: 100%!important;
}
.card-overflow-image{
	height:100%;
	margin-top:-5%;
	margin-bottom: -5%;
	margin-left: -20%;
}
.card-overflow-image img{
	height: 100%;
	object-fit: cover;
}
.gold-list ul {
  list-style: none; /* Remove default bullets */
	padding-inline-start: 0;
}
.gold-list li{
	display: flex;
}

.gold-list ul li::before {
  content: "\2022";  /* Add content: \2022 is the CSS Code/unicode for a bullet */
  color: var( --e-global-color-accent ); /* Change the color */
  font-weight: bold; /* If you want it to be bold */
  display: inline-block; /* Needed to add space between the bullet and the text */
  width: 1em; /* Also needed for space (tweak if needed) */
  margin-left: 0; /* Also needed for space (tweak if needed) */
	flex-shrink: 0;
}

.elementor-icon-wrapper{
	display: flex;
}

.full-width-button a{
	width: 100%;
}

.logo-carousel .swiper-wrapper{
  -webkit-transition-timing-function: linear !important;
  transition-timing-function: linear !important; 
}
.logo-carousel img{
    height: 50px; 
    object-fit: contain;
    border-radius: 0;
}

.elementor-button-icon {
	display: flex;
}

/* Titles & Text */

h1 span,
h2 span {
	color: var(--e-global-color-accent);
}

.h2-color h2 span {
	color: var(--e-global-color-5527993);
}

.elementor-testimonial__text h4{
	font-size: 1.25rem;
	font-style: normal;
}

/* Quote Text */
.quote-text {
    position: relative;
    padding-left: 78px;
}
.quote-text::before{
	content: '';
    position: absolute;
    left: 0;
    top: 0;
    width: 48px;
    height: 36px;
    background-image: url('/wp-content/uploads/2024/07/quote-icon.svg');
    background-size: contain;
    background-repeat: no-repeat;
    margin-right: 30px;
}

/* Readability: The Optimal */
.opti-text p {
	font-size-adjust: 0.5;
	line-height: calc(1ex / 0.32);
	max-width: 550px;
}

/* Header BG on scroll */
.header-bg {
    background-color: rgba(18,44,36, 0); /* Initial opacity 0 */
    transition: background-color 0.5s ease;
}

.header-bg.scrolled  {
    background-color: rgba(18,44,36, 1); /* Opacity 1 when scrolled */
}




/* Slider Buttons Styles */
.slider-arrows .elementor-swiper-button-next{
    border-radius: 0px 60px 60px 0px;
	padding: 0.75rem 0.75rem 0,75rem 2rem;
}

.slider-arrows .elementor-swiper-button-prev{
    border-radius: 60px 0px 0px 60px;
}


/*  Backgrounds Styles */
.quote-bg{
	background: linear-gradient(0deg, rgba(255, 255, 255, 0.10) 0%, rgba(255, 255, 255, 0.10) 100%), linear-gradient(103deg, #B36F27 3.64%, #FAE779 53.6%, #806424 89.71%, #9C7E38 97.9%);
}

.elementor-cta:hover .elementor-icon svg {
    fill: #FFFFFF!important; /* Change fill color to white */
}

/* BG blur circles */

.blur-circle {
    position: absolute;
    background: rgba(196, 159, 82, 0.70);
    border-radius: 50%;
    z-index: -1;
}

.blur-circle.small {
    width: 3px;
    height: 3px;
    background: rgba(196, 159, 82, 0.70);
    filter: blur(1.5px);
}

.blur-circle.large {
    width: 6px;
    height: 6px;
    background: rgba(196, 159, 82, 0.70);
    filter: blur(2.5px);
}


/* Beauty Divider */

.top-mask {
	background-color:white;
}

.top-mask::before {
  content: '';
  width: 100px;
  height: 23px;
  position: absolute;
  top: -1px;
  left: 50%;
  transform: translateX(-50%);
  -webkit-mask-image: url('/wp-content/uploads/2024/07/top-mask.svg');
  -webkit-mask-size: contain;
  -webkit-mask-position: center center;
  -webkit-mask-repeat: no-repeat;
  mask-image: url('/wp-content/uploads/2024/07/top-mask.svg');
  mask-size: contain;
  mask-position: center center;
  mask-repeat: no-repeat;
}

.top-mask.dark::before{
	 background-color: var(--e-global-color-7daefa1);
}

.top-mask.white::before{
	 background-color: var(--e-global-color-primary);
}

.circle-divider::after {
	content: '';
  width: 36px;
  height: 36px;
  position: absolute;
	top: -25px;
  left: 50%;
  transform: translateX(-50%);
  background-image: 
    radial-gradient(75% 75% at 76% 29%, #FFFFFFFA 0%, #FFFFFF00 38%),
    linear-gradient(90deg, #C488310F 1%, #FFE464FF 75%, #EEC45778 100%),
    radial-gradient(75% 75% at 50% 50%, #EEC45742 0%, #6D2602AD 62%, #EEC457FF 99%),
    radial-gradient(75% 75% at 50% 50%, #C48831FF 0%, #EEC457FF 100%);
  -webkit-mask-image: url('/wp-content/plugins/elementor/assets/mask-shapes/circle.svg');
  -webkit-mask-size: contain;
  -webkit-mask-position: center center;
  -webkit-mask-repeat: no-repeat;
}
@media (max-width: 768px) {
  .circle-divider::after {
    content: '';
    width: 36px;
    height: 36px;
    position: absolute;
    top: -25px;
    left: 50%;
    transform: translateX(-50%);
    border-radius: 50%; /* Macht den Kreis rund */
    background-image: 
      radial-gradient(circle at 76% 29%, #FFFFFFFA 0%, rgba(255, 255, 255, 0) 38%),
      linear-gradient(90deg, rgba(196, 136, 49, 0.06) 1%, #FFE464FF 75%, rgba(238, 196, 87, 0.47) 100%),
      radial-gradient(circle at 50% 50%, rgba(238, 196, 87, 0.26) 0%, rgba(109, 38, 2, 0.68) 62%, #EEC457FF 99%),
      radial-gradient(circle at 50% 50%, #C48831FF 0%, #EEC457FF 100%);
    background-size: cover; /* Stellt sicher, dass die Verläufe den Kreis korrekt füllen */
  }
}



/* Timeline Styles */

.timeline .left {
  left: 0;
}

.timeline .right {
  left: 50%;
}

/* Testmonials */
.inv-quote .swiper-slide::before {
    content: '';
    position: absolute;
    left: 10px;
    top: 40px;
    transform: translateY(-50%);
    width: 55px;
    height: 46px;
    background-image: url('/wp-content/uploads/2024/07/right-quote-w0.svg');
    background-size: cover;
    background-repeat: no-repeat;
}

/* Styles for small screens */


/* Quote Text */
@media (max-width: 600px) {
    .quote-text {
        padding-left: 0;
        padding-top: 48px; /* Adjust this value based on icon size and desired spacing */
        text-align: center; /* Center align text */
    }

    .quote-text::before {
        position: static;
        display: block;
        margin: 0 auto 10px auto; /* Center icon and add space below */
    }
}

/* Dots */

.dot-container {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    overflow: hidden; /* Prevent overflow issues */
    pointer-events: none; /* Optional: To prevent the dots from interfering with UI interactions */
  }

body {
	position: relative;
}