/* 
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 */
body, html {
	overflow-x: hidden;	
}


footer#site-footer {
    display: none;
}
/* 
html {
  scroll-behavior: smooth;
}
 */
.elementor-kit-5 a {
    font-family: inherit;
}

.comments-area a, .page-content a, .elementor-widget-text-editor a {
	 font: inherit !important;
    text-decoration: none !important;
}

.hero {
    height: 100vh;
    min-height: 600px;
}

/* Gold Underline */
.gold-underline{
	position: relative;
	display: inline-block; 
	text-decoration: none;
}

.gold-underline::after{
	content: "";
	position: absolute;
	left: 0;
	right: 0;
	bottom: -0.15em;          
	height: 2px;           
	background: linear-gradient(90deg, #D7B382 0%, #866A4A 100%);
	transform: scaleX(0);
	transform-origin: left center;
	transition: transform 0.35s ease;
	border-radius: 999px;
}

.gold-underline:hover::after,
.gold-underline:focus-visible::after{
	transform: scaleX(1);
}

.gold-underline a {
	color: inherit;
	text-decoration: none;
}

.gold-hover.gold-underline:hover .elementor-heading-title a {
    background: linear-gradient(90deg, #D7B382 0%, #866B4C 100%);
    background-clip: text;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

/* Menu */
body:not(.elementor-editor-active) .menu-image {
    position: absolute;
    top: 0;
    right: 0;
    opacity: 0;
    transform: translateY(20px);
    transition: opacity .8s ease, transform 1s ease;
    pointer-events: none;
}

body:not(.elementor-editor-active) .menu-image.active {
    opacity: 1;
    transform: translateY(0);
}

.elementor-nav-menu a {
    transition: all .6s ease-out !important;
}

.elementor-nav-menu a.active {
    transform: translateX(40px);
}

@media (max-width: 1200px) {
	.elementor-nav-menu a.active {
		transform: translateX(30px);
	}
}

.elementor-nav-menu a.dim {
    color: #4A522C !important;
}


/* Project slider */
.project-slide-img {
/*   opacity: 0; */
  transition: opacity 0.4s ease, transform 0.5s ease;
}

.project-slide-img.active {
  opacity: 1;
}

body:not(.elementor-editor-active) .project-slide-img {
  position: absolute;
  inset: 0;
  opacity: 0;	
}

.project-slide-link {
	cursor: pointer;
	transition: all 0.25s ease;
}
.project-slide-link:hover {
	background-color: #24242466;
}

/* Tab Slides */

body:not(.elementor-editor-active) .project-slide-img,
body:not(.elementor-editor-active) .tab-slide-img,
body:not(.elementor-editor-active) .tab-slide-img-1 {
	position: absolute;
	inset: 0;
	opacity: 0 !important;
	transition: opacity 0.4s ease, transform 0.5s ease;
}

/* Active image */
body:not(.elementor-editor-active) .project-slide-img.active,
body:not(.elementor-editor-active) .tab-slide-img.active,
body:not(.elementor-editor-active) .tab-slide-img-1.active {
	opacity: 1 !important;
}

.tab-slide-link {
	cursor: pointer;
	color: #4A522C;
	transition: all 0.25s ease;
    border: none;
}

h4.e-n-accordion-item-title-text {
    color: #4A522C;
}

.e-n-accordion-item.active h4.e-n-accordion-item-title-text {
    color: #FDFCF7;
}

.e-n-accordion-item.light h4 {
    color: #FDFCF7;
}


.process-tabs  h4.e-n-accordion-item-title-text {
    color: #B4C39C;
}

.process-tabs .e-n-accordion-item.light h4,
.process-tabs .e-n-accordion-item.active h4.e-n-accordion-item-title-text {
    color: #30351D; 
}

/* Services */
.services-tab {
	position: relative;
	overflow: hidden; 
}

.tab-slide-img,
.tab-slide-img-1 {
	position: absolute;
	inset: 0;
	background-size: cover;
	background-position: center;
	opacity: 0;
    transition: all 0.6s ease-out !important;
	transform: scale(1);
	z-index: 1;
}

.services-tab-title,
.services-tab-text,
.services-more-link {
	position: relative;
	z-index: 2;
}

.services-tab-title h2 {
	color: #FDFCF7;
	transition: color 0.6s ease-out !important;
}

.services-tab-text-wrap {
	overflow: hidden;
	position: relative;
	height: 20px;
}

.services-tab-text {
	display: block;
	transform: translateY(0);
	transition:all .6s ease-out !important;
}

.services-more-link {
	position: absolute;
    left: 0;
    right: 0;
    margin: 0;
	top: 100%;
	opacity: 0;
	transition: all .6s ease-out !important;
}

/*  hover */
.services-tab:hover .services-tab-img {
	opacity: 1;
	transform: scale(1);
}

.services-tab:hover .services-tab-title h2 {
	color: #FDFCF7 !important; 
}

.services-tab:hover .services-tab-text {
	transform: translateY(-120%);
	opacity: 0;
}

.services-tab:hover .services-more-link {
    transform: translateY(-100%);
    opacity: 1;

}




.e-n-accordion-item.active > summary {
  pointer-events: none;
  cursor: default;
}

.services-slide-link {
    max-width: 580px;
}

.e-n-accordion-item-title-text i {
	font-style: normal;
}

@media (min-width: 1024px) {
	.e-n-accordion-item-title-text i {
		min-width: 64px;
		display: inline-block;
	}
}

.e-n-accordion-item ul {
    padding-left: 20px;
}

/* 
.e-n-accordion-item:last-child .e-n-accordion-item-title {
    border-bottom: 1px solid #FDFCF7 !important;
} */
.e-n-accordion-item:first-child .e-n-accordion-item-title {
    border: none !important;
}

 .elementor-button,
button{
	transition: all .6s ease-in-out !important;
}

/* Team */
.team-popup-content {
    opacity: 0;
    visibility: hidden;
}

.team-popup-content.is-ready {
    opacity: 1;
    visibility: visible;
}

.team-popup-loader {
    display: flex;
}

.elementor-grid .team_member:nth-of-type(odd) {
    border-right: 1px solid #30351D;
}

.team_member:nth-of-type(even) {
    padding-left: 38px;
}
.team_member:nth-of-type(odd) {
    padding-right: 38px;
}

.team-member-button .elementor-button,
.read-post-button .elementor-button {
    color: transparent !important;
}
.team-member-button,
.read-post-button,
.read-post-button a {
    position: absolute;
    inset: 0;
    cursor: pointer;
	z-index: 1;
}

.team_member img,
.post img {
    transition: all .6s ease-out;
}
.team_member:hover img,
.posts-grid .post:hover img {
    transform: translateY(-40px);
}

.team_member:hover .elementor-heading-title,
.posts-grid .post:hover .elementor-heading-title,
.posts-grid .post:hover .elementor-icon-list-item {
    background: linear-gradient(90deg, #D7B382 0%, #866A4A 100%);
    background-clip: text;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

@media (max-width: 500px) {
	.elementor-grid .team_member:nth-of-type(odd), .elementor-grid .team_member:nth-of-type(even) {
		border: none;
		padding: 0;
	}
}

.posts-grid .post:hover .elementor-icon-list-item::after {
    border-color: #D7B382 !important;
}


/* Buttons */
.gold-text.gold-bg:hover .elementor-button-text {
    background: none;
    color: #FDFCF7;
    -webkit-text-fill-color: initial;
	
}

.gold-text.gold-bg:hover .elementor-button {
    background: linear-gradient(90deg, #D7B382 0%, #866A4A 100%);
	border: 1px solid #0000;
}

.gold-text .elementor-button-text {
    background: linear-gradient(90deg, #D7B382 0%, #866A4A 100%);
    background-clip: text;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}


.gold-text.gold-bg .elementor-button {
  position: relative;
  overflow: hidden;
}

.gold-text.gold-bg .elementor-button::before {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg,#866A4A,#D7B382);
  opacity: 0;
  transition: opacity .35s ease;
  z-index: 0;
}

.gold-text.gold-bg .elementor-button:hover::before {
  opacity: 1;
}

.gold-text.gold-bg .elementor-button .elementor-button-content-wrapper {
  position: relative;
  z-index: 1;
}

/* Scroll down button */
.scroll-down-icon .scroll-down-icon-path {
  fill: #FDFCF7;
  transition: fill 0.3s ease;
}

.scroll-up-icon .scroll-up-icon-path {
  fill: #B4C39C;
  transition: fill 0.3s ease;
}

.scroll-down-icon:hover .scroll-down-icon-path {
  fill: url(#scrollDownGradientHover);
}
.scroll-up-icon:hover .scroll-up-icon-path {
  fill: url(#scrollUpGradientHover);
}

.scroll-down-icon,
.scroll-up-icon {
    transition: all .3s ease-out;
}
.scroll-down-icon:hover svg {
    transform: translateY(8px);
}

.scroll-up-icon:hover {
    transform: translateY(-8px);
}

/* Projects Archive */
.elementor-widget-loop-carousel {
	counter-reset: project-counter;
}
.projects.e-loop-item {    
	counter-increment: project-counter;
}

.project-grid-title {
	position: relative;
	padding-left: 60px;
}

.project-grid-title::before {
    content: counter(project-counter) '.';
    font-family: 'begum', Arial, Sans-serif;
    font-size: 64px;
    font-weight: 300;
    letter-spacing: -3.84px;
    padding: 0;
    position: absolute;
    left: 0;
    top: 8px;
    color: #4a522c;
}

/* Project Archive Nav */
a.project-nav {
    display: flex;
    align-items: start;
    gap: 64px;
    text-decoration: none !important;
    color: #B4C39C;
    transition: all 0.3s ease;
}

.project-nav.next {
    justify-content: flex-end;
}

.project-nav-text {
    display: flex;
    flex-direction: column;
}

.project-nav-text h4.project-nav-title {
    margin: 0;
    color: #30351D;
    transition: all 0.3s ease;
    text-decoration: none !important;
	line-height: 1.2em;
}

.project-nav-category {
    margin: 0;
    color: #B4C39C;
}

.project-nav-arrow svg {
    display: block;
}

.project-nav:hover {
    color: #D7B382;
}

.project-nav:hover .project-nav-title {
    background: linear-gradient(90deg, #866A4A 0%, #D7B382 100%);
    background-clip: text;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

@media (max-width: 767px) {
	.premium-carousel-template.item-wrapper.slick-slide {
		max-width: 320px;
		width: 100%;
/* 		aspect-ratio: 4 / 3; */
	}
}


/* Project CTA */
.projects-cta {
    overflow: hidden;
}

.projects-cta, .projects-cta-inner {
	transition: padding 2.5s cubic-bezier(0.77, 0, 0.175, 1);
}

.projects-cta.shrink {
    padding-left: 100px;
	padding-right: 100px;
}

@media (max-width: 1720px) {
	.projects-cta.shrink {
		padding-left: 80px;
		padding-right: 80px;
	}
	
}

@media (max-width: 1400px) {
	.projects-cta.shrink {
		padding-left: 40px;
		padding-right: 40px;
	}
	
}

@media (max-width: 1200px) {
	.projects-cta.shrink {
		padding-left: 20px;
		padding-right: 20px;
	}
	
}

/* PRELOADER */
body:not(.elementor-editor-active) .preloader {
	position: fixed;
	inset: 0;
	height: 100vh;
	background: #2f3b1e;
	z-index: 99999;
	display:flex;
	align-items:center;
	justify-content:center;
	overflow:hidden;
	transform: translateY(0);
	transition: transform 1s cubic-bezier(.8,0,.2,1);
}

/* STAGE */
.preloader .preloader-inner {
    position: relative;
/*     width: min(900px, 92vw);
    height: 180px; */
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 12px;
}

.preloader .logo-v {
    z-index: 10;
    background: #30351d;
	padding-left:24px;
    transition: transform 1s cubic-bezier(0, 0, 0.45, 1);
}

.preloader .logo-v svg {
	position:relative;
	z-index:1;
	display:block;
}

.preloader .logo-erde-clip {
    width: 386px;
    height: 150px;
    overflow: hidden;
    flex: 0 0 auto;
    z-index: 2;
}

/* ERDE movement */
.preloader .logo-erde {
	transform: translateY(0);
	transition: transform 1s ease-out;
	transition: transform .9s cubic-bezier(0, 0, 0.65, 1);
}

.preloader .logo-vh {
	position: absolute;
	display: flex;
	opacity: 0;
	transition: opacity 1s ease;
	pointer-events: none;
	z-index: 20;
}
.preloader .logo-vh svg {
	height: 150px;
	width: auto;
	display:block;
	transform: translateX(4px);
}

.preloader.preloader--v-move .logo-v {
	transform: translateX(calc(50% + 98px));
}

.preloader.preloader--erde-hide .logo-erde {
	transform: translateX(-120%);
}

.preloader .logo-v .v-white{ opacity: 1; }
.preloader .logo-v .v-gold { opacity: 0; }

.preloader .logo-v .v-white,
.preloader .logo-v .v-gold{
  transition: opacity .6s ease-out; 
}


.preloader.preloader--v-gold .logo-v .v-white{ opacity: 0; }
.preloader.preloader--v-gold .logo-v .v-gold { opacity: 1; }


/* ---- STEP D: VH fades in on top ---- */
.preloader.preloader--show-vh .logo-vh{ opacity:1; }

body:not(.elementor-editor-active) .preloader.preloader--exit{ transform: translateY(-100%); }

body:not(.elementor-editor-active) .hero-section .slide-up {
	transform: translateY(200px);
	opacity:0;
	transition: transform 1s cubic-bezier(.7,0,.2,1);
}

body:not(.elementor-editor-active) .hero-section.hero-enter .slide-up {
	transform: translateY(0);
	opacity:1;
}

@media (max-width: 768px) {
	.preloader-inner {
		transform: scale(.5);
	}
	
	.logo-layer.logo-v {
		padding: 0;
	}
	
	.preloader .preloader-inner {
		gap: 12px;
		justify-content: center;
		align-items: center;
	}
}

/* Archive */
.post .gold-text .elementor-heading-title {
    background: linear-gradient(90deg, #D7B382 0%, #866B4C 100%);
    background-clip: text;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

.posts-grid .e-loop-item {
    position: relative;
}
.posts-grid .e-loop-item::before {
    content: '';
    width: calc(100% + 76px);
    height: 100%;
    position: absolute;
    z-index: -1;
    border-right: 1px solid #30351D;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.posts-grid .e-loop-item:nth-of-type(3n)::before {
    content: none;
}

@media (max-width: 1024px) {
	.posts-grid .e-loop-item:nth-of-type(3n)::before {
		content: '';
	}

	.posts-grid .e-loop-item:nth-of-type(2n)::before {
		content: none;
	}
}

@media (max-width: 500px) {
	.posts-grid .e-loop-item::before,
	.posts-grid .e-loop-item:nth-of-type(2n)::before {
		content: '';
		width: 100%;
		height: calc(100% + 76px);
		border-right: none;
		border-bottom: 1px solid #30351D !important;
		transform: translate(-50%, -50%);
	}
}


/* Single */
.single-post h4.project-nav-title {
    max-width: 280px;
    line-height: 1.2em;
}

.single-post .project-nav-category {
    display: none;
}

@media (max-width: 1024px) {
	a.project-nav {
		gap: 28px;
	}
	
}

@media (max-width: 767px) {
    a.project-nav {
        gap: 16px;
    }
}

/* Changing images on hover */
 .hover-image-container {
	position: relative;
}

 .hover-image-container .hover-img {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
/* 	opacity: 0; */
	transition: opacity 1s ease;
	pointer-events: none;
}

.hover-image-container .hover-img img {
/* 	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover; */
	opacity: 0;
	transition: opacity 1s ease;
	pointer-events: none;
}


.hover-image-container .hover-img.is-active img {
	opacity: 1;
}

body.elementor-editor-active .hover-image-container .hover-img {
	position: static;
	opacity: 1;
	transition: none;
	pointer-events: auto;
}


/* Sticky header */
.home .sticky-header {
	position: absolute;
}

.home .elementor-location-header .elementor-element-f6610c2 {
    background: transparent !important;
    transition: all 0.35s ease;
    backdrop-filter: none;
}
.home .elementor-location-header .elementor-widget-theme-site-logo,
.home .elementor-location-header .elementor-button-link {
    opacity: 0;
    visibility: hidden;
    transition: all 0.35s ease;
}

.home .elementor-location-header.is-sticky .elementor-element-f6610c2 {
	background-color: #30351D1A !important;
	backdrop-filter: blur(20px);
	z-index: 100;
}

.home .sticky-header {
	position: fixed;
}

.home .elementor-location-header.is-sticky .elementor-widget-theme-site-logo,
.home .elementor-location-header.is-sticky .elementor-button-link {
    opacity: 1;
    visibility: visible;
}