/* =========================================
			STYLE MENU MOBILE
===========================================*/
/* Header */
.hamburger, .header-mobile{
    display: none;
}

.main-content-hamburger {
    position: fixed;
    top: 0;
    right: 0;
    width: 100%;
    max-width: 100%;
    height: 100%;
    z-index: 999;
    transform: translateX(100%);
    transition: transform 0.3s ease;
	overflow-y: auto; 
    -webkit-overflow-scrolling: touch; 
}

body.logged-in .main-content-hamburger{
	top: 32px;
}

.main-content-hamburger.active {
    transform: translateX(0);
}

.menu-main-sph{
	opacity: 1;
    transition: transform 0.3s ease;
}

.menu-main-sph.active{
	opacity: 0;
}


.hamburger, .header-mobile{
	display: block;
}

.hamburger-parent{
	position: relative;
	background: #B78E67;
	z-index: 1001;
	padding: 31.41px 28.8px 31.1px 28.3px;
}
.hamburger-parent-yellow{
	position: relative;
	background: #E9b753;
	z-index: 1001;
	padding: 31.41px 28.8px 31.1px 28.3px;
}
.hamburger {
	z-index: 1001;
	background: none;
	border: none;
	cursor: pointer;
	width: 27.9px;
	height: auto;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	align-items: center;
	gap: 7px;
	position: relative;
	right: 0;
	top: unset;
	transform: unset;
}

.main-content-hamburger {
    scrollbar-width: none;
    -ms-overflow-style: none; 
}

.main-content-hamburger::-webkit-scrollbar {
    display: none; 
}

.hamburger span {
	display: block;
	width: 100%;
	height: 1.5px;
	background: #FAF9F5;
	transition: transform 0.3s, opacity 0.7s;
}

body.menu-open {
    overflow: hidden;
    height: 100vh; 
}

.header-mobile {
	transform: translateX(100%);
	transition: transform 0.7s ease-in-out;
	position: fixed;
	top: 0;
	right: 0;
	width: 100%;
	height: 100%;
	background: #102C35;
	z-index: 1000;
	padding: 50px 24px 30px 24px;
}

.header-mobile ul a{
	font-family: "Lexend", Sans-serif;
    font-size: 14px;
    font-weight: 500;
    text-transform: uppercase;
    letter-spacing: 0.05em;
	color: #fff
}


.main-menu-header{
	display: none;
}

.hamburger.active span{
	background: #fff;

}

.header-mobile.active {
	transform: translateX(0);
	height: 100vh;
	background: #102C35;
	z-index: 1000;
}

.header-mobile ul{
	padding-top: 80px;
	display: flex;
	flex-direction: column;
	gap: 30px;
	margin: 0
}

.header-mobile ul.sub-menu{
	padding-top: 30px;
}

.hamburger.active span:nth-child(1) {
	transform: translateY(8px) rotate(45deg);
}

.hamburger.active span:nth-child(2) {
	opacity: 0;
}

.hamburger.active span:nth-child(3) {
	transform: translateY(-9px) rotate(-45deg);
}

/* =========================================
			STYLE SLIDER BANNER
===========================================*/

.item-slider__banner{
	padding-left: calc(calc(100% - 1500px) / 2);
	padding-right: 20px;
	min-height: 795px;
	background-repeat: no-repeat;
    background-size: cover;
	position: relative;
    background-position: center;
	display: flex;
}

.item-slider__banner::before{
	content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 178px;
    background: linear-gradient(to bottom, rgba(0, 0, 0, 0.6) 0%, rgba(0, 0, 0, 0) 100%);
    z-index: -1;
}

.item-slider__banner::after{
	content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 472px;
    background: linear-gradient(to top, rgba(0, 0, 0, 0.8) 0%, rgba(0, 0, 0, 0) 100%);
    z-index: -1;
}

.subtitle-item__banner{
	font-family: "Lexend", Sans-serif;
    font-size: 15px;
    font-weight: 500;
    text-transform: uppercase;
    letter-spacing: 0.05em;
	margin-bottom: 25px;
	color: #B78E67;
	padding-left: 2px;
}

.slider-banner{
	position: relative;
}

.overlay-item__banner{
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 38px;
    background: #102C35;
    z-index: 1;
}

.title-item__banner h1{
	margin: unset !important;
	font-family: "Lexend", Sans-serif;
    font-size: clamp(30px,3.976vw, 66px);
    font-weight: 600;
    text-transform: uppercase;
	color: #FFF;
	max-width: 508px;
	line-height: calc(83 / 66)
}

.button-next-banner, .button-prev-banner{
	cursor: pointer;
}

.content-item__banner{
	margin-top: auto;
	z-index: 2;
	position: relative
}

@media (max-width: 1540px){
    .item-slider__banner{
        padding-left: 20px;
    }
	.progress-nav-container {
		margin-right: 24px !important;
	}
}

/* =========================================
			STYLE CUSTOM
===========================================*/
.thumbnail-services__home{
	position: relative;
}

.thumbnail-services__home{
	aspect-ratio: 357/490;
	line-height: 0;
}

.thumbnail-services__home > img{
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.smo-slider-section .slider-services-sph {
	/* width: 353px;
	aspect-ratio: 353/471; */
}
.progress-nav-container {
	display: flex;
	align-items: center;
	margin-right: calc(calc(100vw - 1500px)/2);
	margin-top: 80px;
}
.process-services__home {
	flex-grow: 1;
	height: 3px;
	background: rgba(16, 44, 53, 0.1);
	position: relative;
	overflow: hidden;
}
.process-services__home {
	height: 100%;
	width: 0%;
	background: rgba(16, 44, 53, 0.1);
	transition: width 0.3s ease;
}
.nav-services__home {
	display: flex;
    gap: 0;
    margin-left: 30px;
}
.nav-services__home svg {
	cursor: pointer;
}

.thumbnail-services__home{
	aspect-ratio: 357/490;
	line-height: 0;
	margin-bottom: 27px
}

.thumbnail-services__home > img{
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.title-services__home{
	font-family: "Lexend", Sans-serif;
    font-size: clamp(16px, 1.446vw, 24px);
    font-weight: 600;
    line-height: calc(30 / 24);
	text-transform: uppercase;
	color: #102C35;
	word-wrap: break-word;
	overflow-wrap: break-word;
}

.tag-services__home{
	position: absolute;
	bottom: 0;
	left: 0;
	width: 61px;
	height: 55px;
	background: #B78E67;
	display: flex;
	justify-content: center;
	align-items: center;
}

.nav-services__home .navigation-prev{
	padding: 11.5px 11px 11.5px 11px;
    border: 1px solid #B78E67;
}

.nav-services__home .navigation-next{
		padding: 11.5px 11px 11.5px 12px;
    border: 1px solid #B78E67;
	border-left: none;
}

/* =========================================
			GET POSTS
===========================================*/
.thumbnail-post__home{
	aspect-ratio: 357 / 237;
	line-height: 0;
	position: relative;
	margin-bottom: 33px;
}

.tag-category__home{
	font-size: 12px;
    font-weight: 500;
    line-height: 15px;
	color: #FAF9F5;
	letter-spacing: 0.05em;
	background: #102C35;
	padding: 8px 13px;
	position: absolute;
	left: 9px;
	bottom: 9px;
	text-transform: uppercase
}

.time-post__home p{
	font-size: 15px;
    font-weight: 400;
    line-height: 19px;
	color: #102C35;
	margin-bottom: 8px
}

.time-post__home{
	margin-bottom: 8px
	
}

.title-post__home a{
	font-size: 26px;
    font-weight: 600;
    line-height: calc(33 / 26);
	color: #102C35;
}

.title-post__home{
	margin-bottom: 18px
}

.list-posts__home{
	display: flex;
    flex-direction: row;
    flex-wrap: wrap;
	gap: 24px;
}

.item-post__home{
	width: calc(26.533% - 40px);
	padding-top: 65px;
}

.item-post__home.first-news__home{
	width: calc(46.934% - 16px);
	padding-right: 77px;
	position: relative;
	margin-right: 48px
}

.item-post__home.first-news__home .thumbnail-post__home{
	aspect-ratio: 611 / 375;
}

.item-post__home.first-news__home::after{
	content: "";
	position: absolute;
	width: 0.5px;
	background: rgba(16, 44, 53, 0.5);
	top: 0;
	height: 100%;
	right: 0;
}

.excerpt-post__home p{
	color: #102C35;
	
}

.excerpt-post__home{
	margin-bottom: 16px
}

.thumbnail-post__home > img{
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.testimonials-privater .quote-icon svg{
        margin-right: 97px;
    padding-right: 0;
    min-width: 27px;
    margin-left: 3px;
}



/* CSS for Hausbau Accordion */
.hausbau-accordion__wrapper {
    display: flex;
    flex-wrap: wrap;
	border-top: 1px solid rgba(16, 44, 53, 0.5);
}

.accordion-list__hausbau {
    list-style: none;
    padding: 0;
    margin: 0;
	width: 50%;
	padding-right: clamp(40px,8.373vw,139px);
	border-right: 1px solid rgba(16, 44, 53, 0.5);
	padding-top: 61px;
	
}

.accordion-content__hausbau{
	width: 50%;
	padding-left: clamp(40px,8.373vw,139px);
	padding-top: 64px;
	padding-bottom: 78px
	
}

.accordion-list__hausbau li {
    cursor: pointer;
	max-width: 611px;
	padding-top: 25px;
	padding-bottom: 25px;
	border-bottom: 1px solid rgba(16, 44, 53, 0.5)
}

.accordion-list__hausbau li.active .title-accordion__hausbau {
    color: #B78E67;
}

.title-accordion__hausbau {
    display: flex;
    align-items: center;
    background: inherit;
    text-decoration: none;
	text-transform: uppercase;
    transition: all 0.3s ease;
    font-size: 17px;
    font-weight: 600;
	line-height: calc(21 / 17);
	color: #102C35;
}

.title-accordion__hausbau:hover {
    color: #B78E67;
}

.title-accordion__hausbau svg {
    transition: transform 0.3s ease;
	margin-left: 10px;
}

.title-accordion__hausbau svg line, .title-accordion__hausbau svg path{
	stroke: #102C35;
    transition: transform 0.3s ease;
	
}

.accordion-list__hausbau li.active .title-accordion__hausbau svg line,.accordion-list__hausbau li.active .title-accordion__hausbau svg path,
.accordion-list__hausbau li:hover .title-accordion__hausbau svg line,.accordion-list__hausbau li:hover .title-accordion__hausbau svg path{
	stroke: #B78E67;
}


.content-accordion__hausbau {
    display: none;
    transition: all 0.3s ease;
    font-size: 19px;
    font-weight: 400;
	line-height: calc(29 / 19);
}

.content-accordion__hausbau.active {
    display: block;
}

.content-accordion__inner{
	max-width: 484px
}

.content-accordion__hausbau h3,
.content-accordion__hausbau h4,
.content-accordion__hausbau p {
    margin-bottom: 29px;
}

.content-accordion__hausbau img {
    max-width: 100%;
    height: auto;
}

.bottom-form p a{
	font-size: inherit;
    font-weight: inherit;
    line-height: inherit;
	letter-spacing: inherit;
}

@media (max-width: 1024px){
	.item-post__home.first-news__home {
		width: 100%;
		padding-right: 0;
		padding-bottom: 40px;
		position: relative;
		margin-right: 0;
	}
	
	.item-post__home.first-news__home::after {
		content: "";
		position: absolute;
		width: 100%;
		background: #102C35;
		top: unset;
		bottom: 0;
		height: 0.5px;
		right: 0;
	}
	
	.item-post__home {
		width: calc(50% - 12px);
		padding-top: 40px;
	}
	
}

@media (max-width: 767px){
	
	.item-post__home{
		padding-top: 0
	}
	.thumbnail-services__home {
		aspect-ratio: 200 / 274;
	}
	
	.hamburger-parent{
		padding: 22.1px 20.8px 23.42px 22.3px;
	}
	
	.hamburger.active span:nth-child(3) {
		transform: translateY(-6px) rotate(-45deg);
	}
	
	.hamburger.active span:nth-child(1) {
		transform: translateY(7px) rotate(45deg);
	}
	.hamburger{
		width: 20.82px;
		gap: 5px;
	}
	
	.item-post__home{
		width: 100%
	}
	
	.item-slider__banner{
		min-height: 440px;
	}
	.item-slider__banner::before{
		display: none;
	}
	
	.title-services__home{
		padding-left:2px;
	}
	
	.progress-nav-container{
		margin-top: 62px;
	}
	
	.item-slider__banner::after{
		height: 65.1%;
	}
	
	.overlay-item__banner{
		height: 16px;
	}
	
	.subtitle-item__banner{
		margin-bottom: 14px;
		font-size: 14px
	}
	
	.item-slider__banner {
        padding-left: 24px;
    }
	
	.tag-services__home img{
		max-width: 22.87px
	}
	
	.tag-services__home {
		width: 45px;
		height: 40.57px;
	}
	
	.thumbnail-services__home{
		margin-bottom: 20px;
	}
	
	.nav-services__home .navigation-prev {
		padding: 8.5px 11px 10.5px 10px;
	}
	
	.nav-services__home .navigation-next {
		padding: 8.5px 9px 10.5px 11px;
	}
	.nav-services__home .navigation-prev svg, .nav-services__home .navigation-next svg{
		width: 21.78px
	}
	
	.item-post__home.first-news__home .thumbnail-post__home {
		aspect-ratio: 312 / 207;
		margin-bottom: 28px
	}
	
	.title-post__home a{
		font-size: 23px;
		line-height: calc(29 / 23);
	}
	
	.item-post__home.first-news__home{
		padding-bottom: 36px;
	}
	
	.list-posts__home{
		gap: 48px;
	}
	
	.thumbnail-post__home{
		margin-bottom: 28px;
	}
	
	.item-post__home{
		position: relative;
		padding-bottom: 36px;
	}
	
	 .item-post__home::after {
        content: "";
        position: absolute;
        width: 100%;
        background: #102C35;
        top: unset;
        bottom: 0;
        height: 0.5px;
        right: 0;
    }


	
}

/* =========================================
			STYLE SLIDER PROJECT
===========================================*/
.list-project-sph {
	overflow: hidden;
	position: relative;
}

.list-project-sph::after{
	position: absolute;
	right: 0;
	content: '';
	width: 130px;
	top: -30px;
	z-index: 2;
	background: linear-gradient(to right, rgba(16, 44, 53, 0) 0%, #102C35 100%);
	height: calc(100% + 80px);
	
}
.item-project-sph {
	display: flex;
	flex-direction: column;
}

.thumbnail-project-sph{
	aspect-ratio: 735 / 351;
	line-height: 0;
	margin-bottom: 32px;
}
.thumbnail-project-sph img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.link-project-sph a {
	text-decoration: none;
	font-family: "Lexend", Sans-serif;
    font-size: clamp(20px, 2.048vw, 34px);
    font-weight: 600;
    text-transform: uppercase;
    line-height: calc(43 / 34);
    color: #FAF9F5;
}

.link-project-sph{
	max-width: 484px;
}
.progress-nav-container {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin-top: 50px;
}
.process-project__home {
	flex-grow: 1;
	margin-right: 30px;
}

.nav-project__home {
	display: flex;
	gap: 0;
}

.link-project-sph a svg{
	margin-bottom: 5px;
    margin-left: 2px;
}

.nav-project__home .navigation-prev svg path, .nav-project__home .navigation-next path, .nav-project__home .navigation-prev svg line, .nav-project__home .navigation-next line{
	stroke: #FAF9F5;
}

.nav-project__home .navigation-prev{
	padding: 11.5px 11px 11.5px 11px;
    border: 1px solid #B78E67;
}

.progress-nav-container.progress-nav-project{
	margin-right: calc(calc(100vw - 1404px) / 2);
}

.nav-project__home .navigation-next{
	padding: 11.5px 11px 11.5px 12px;
    border: 1px solid #B78E67;
	border-left: none;
}

@media (max-width: 1444px){
	.progress-nav-container.progress-nav-project{
		margin-right: 20px;
	}
}

@media (max-width: 767px){
	.list-project-sph::after{
		width: 50px
	}
}

