/* 
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
*/

/* Add your custom styles here */
#projects .elementor-grid div.project:nth-of-type(odd) .project-container .project-title, 
#projects .elementor-grid div.project:nth-of-type(odd) .project-container .project-button {
	opacity: 0;
	transition: opacity 0.5s ease;
}

#projects .elementor-grid div.project:nth-of-type(odd) .project-container:hover .project-title, 
#projects .elementor-grid div.project:nth-of-type(odd) .project-container:hover .project-button {
	opacity: 1;
}

#projects .elementor-grid div.project:nth-of-type(even) .project-container {
	--overlay-opacity: 1;
	transition: opacity 0.5s ease;
}

#projects .elementor-grid div.project:nth-of-type(even) .project-container:hover {
	--overlay-opacity: 0.3;
	transition: opacity 0.5s ease;
}

#projects .elementor-grid div.project:nth-of-type(even) .project-container:before {
	background-color: var(--e-global-color-44770ed);
    --background-overlay: '';
	transition: opacity 0.5s ease;
}

#projects .elementor-grid div.project:nth-of-type(even) .project-container:hover:before {
	background-color: var(--e-global-color-primary);;
    --background-overlay: '';
	transition: opacity 0.5s ease;
}

#projects .elementor-grid div.project:nth-of-type(even) .project-container .project-title, 
#projects .elementor-grid div.project:nth-of-type(even) .project-container .project-button {
	opacity: 1;
}

#projects .elementor-grid div.project:nth-of-type(even) .project-container:hover .project-title, 
#projects .elementor-grid div.project:nth-of-type(even) .project-container:hover .project-button {
	opacity: 0;
	transition: opacity 0.5s ease;
}


.team-container .team-text {
	opacity: 0;
	transition: opacity 0.5s ease;
}

.team-container:hover .team-text {
	opacity: 1;
}

.slanted-background-bottom::after {
	content: "";
  	position: absolute;
  	bottom: -200px;
  	left: 0;
  	width: 100%;
  	height: 200px;
  	background-color: var( --e-global-color-secondary );
  	transform: skewY(-4deg);
  	transform-origin: bottom left;
	z-index: -1;
}

.marquee-wrapper {
	overflow: hidden;
	width: 100% !important;
}

.marquee-track {
	display: flex;
	flex-wrap: nowrap;
	width: 200% !important;
	animation: marquee 7s linear infinite;
	will-change: transform;
	transform: translate3d(0,0,0);
}

.marquee-item {
	flex: 0 0 50%;
	width: 100% !important;
	box-sizing: border-box;
}

.marquee-item-inner{
	padding-right: 1%;
	box-sizing: border-box;
}

@keyframes marquee {
	from { transform: translateX(0); }
	to   { transform: translateX(-50%); }
}

@media (max-width: 767px) {
	.marquee-track {
	  	width: 300% !important;
	}
}

.fullheight-carousel,
.fullheight-carousel .swiper,
.fullheight-carousel .swiper-wrapper,
.fullheight-carousel .swiper-slide,
.fullheight-carousel .swiper-slide a {
  height: 90vh;
}

.fullheight-carousel .swiper-slide a {
  display: flex;
}


.fullheight-carousel .swiper-slide img,
.fullheight-carousel .swiper-slide .swiper-slide-inner {
  width: 100% !important;
  height: 100%;
  object-fit: cover;
}

@media (max-width: 767px) {
	.fullheight-carousel,
	.fullheight-carousel .swiper,
	.fullheight-carousel .swiper-wrapper,
	.fullheight-carousel .swiper-slide,
	.fullheight-carousel .swiper-slide a {
	  height: 300px;
	}
}

.fullheight-video {
  height: 90vh;
}

.fullheight-video .elementor-wrapper {
  position: relative;
  height: 100%;
  width: 100%;
  overflow: hidden;
}

.fullheight-video video.elementor-video {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 100%;
  height: 100%;
  transform: translate(-50%, -50%);
  object-fit: cover;
}

@media (max-width: 767px) {
  .fullheight-video {
    height: 300px;
  }
}

.fullheight-video-home,
.fullheight-video-home .elementor-custom-embed-image-overlay, 
.fullheight-video-home .elementor-custom-embed-image-overlay img {
  height: 100vh;
}

.fullheight-video-home .elementor-wrapper {
  position: relative;
  height: 100%;
  width: 100%;
  overflow: hidden;
}

.fullheight-video-home video.elementor-video {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 100%;
  height: 100%;
  transform: translate(-50%, -50%);
  object-fit: cover;
}

strong {
	font-weight: bold;
}

.contact-button {
  position: fixed;
  top: 50%;
  right: 20px;
  transform: translateY(-50%);

  opacity: 0;
  visibility: hidden;
  pointer-events: none;

  transition: opacity 0.4s ease, visibility 0.4s ease !important;
  z-index: 9999;
}

.contact-button.is-visible {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
}

@media (max-width: 767px) {
	.contact-button {
		display: none !important;
	}
}

.contact-form label {
	width: 85%;
}

@media (max-width: 767px) {
	.contact-form label {
		width: 100%;
	}
}

.contact-form input,
.contact-form textarea {
	background: transparent;
    border: 0px;
    border-bottom: 3px solid #ffffff;
	border-radius: 0px;
	color: #ffffff !important;
}

.contact-form input:focus,
.contact-form textarea:focus {
    border-color: var( --e-global-color-accent );
}

.contact-form input:focus-visible,
.contact-form textarea:focus-visible {
    outline: 0px none;
}


.contact-form input[type="submit"] {
	background: var( --e-global-color-accent );
	border: 0px none;
	border-radius: 10px
}

.contact-form input[type="submit"]:hover {
	background: #F7AC3B;
}

.wpcf7 .wpcf7-spinner {
  display: none !important;
}

.wpcf7-response-output {
	color: #ffffff;
	border-top-width: 3px !important;
	border-bottom-width: 3px !important;
    border-left-width: 3px !important;
	border-right-width: 3px !important;
	border-radius: 10px;
	margin-left: 0px !important;
    margin-right: 0px !important;
}

.wpcf7-not-valid-tip {
	font-size: 13px;
    margin-top: 5px;
}

.legal-text h2 {
	margin-top: 25px;
	font-size: 30px;
}

@media (max-width: 767px) {
	.legal-text h2 {
		font-size: 25px;
	}
}

.legal-text h3 {
	font-size: 25px;
}

@media (max-width: 767px) {
	.legal-text h3 {
		font-size: 20px;
	}
}

.legal-list > li {
	margin-top: 25px;
}

.sp-dsgvo-privacy-popup .sp-dsgvo-privacy-bottom .sp-dsgvo-popup-button {
	border-radius: 10px !important;
}

.sp-dsgvo-privacy-popup .sp-dsgvo-privacy-bottom .sp-dsgvo-popup-button:hover {
	color: #ffffff !important;
}

.sp-dsgvo-privacy-popup .sp-dsgvo-privacy-bottom .sp-dsgvo-privacy-btn-accept-all:hover {
	background-color: #F7AC3B !important;
}

.sp-dsgvo-privacy-popup .sp-dsgvo-privacy-bottom .sp-dsgvo-privacy-btn-accept-nothing {
	background-color: var( --e-global-color-secondary ) !important;
}

.sp-dsgvo-privacy-popup .sp-dsgvo-privacy-bottom .sp-dsgvo-privacy-btn-accept-nothing:hover {
	background-color: #6a6a6a !important;
}

.sp-dsgvo-privacy-popup .sp-dsgvo-privacy-bottom .sp-dsgvo-privacy-btn-accept-selection {
	background-color: #C9BDA5 !important;
}

.sp-dsgvo-privacy-popup .sp-dsgvo-privacy-bottom .sp-dsgvo-privacy-btn-accept-selection:hover {
	background-color: #d9cfbd !important;
}

.sp-dsgvo-privacy-bottom {
	display: flex !important;
}

.sp-dsgvo-privacy-popup .sp-dsgvo-privacy-bottom .sp-dsgvo-privacy-btn-accept-all {
	order: 3;
}

.sp-dsgvo-privacy-popup .switch-green>.switch-input:checked~.switch-label {
	background-color: #F7AC3B !important;
}