/*
Theme Name:   helloelementorchild
Description:  Test
Author:       GRUPPE DREI
Author URL:   http://127.0.0.1/dev01
Template:     hello-elementor
Version:      1.0
License:      GNU General Public License v2 or later
License URI:  http://www.gnu.org/licenses/gpl-2.0.html
Text Domain:  helloelementorchild
*/

/* Schreibe hier dein eigenes persönliches Stylesheet */
/*
1. Custom Animations 
2. Globals
3. Formulare
4. Header
5. Footer
6. Weitere Elemente
*/


@import "css/reset.css";
@import "css/animations.css";
@import "css/events.css";
@import "css/form.css";



/*** GLOBALS ***/
html{
    scroll-behavior: smooth;
}

.e-container, .e-con{
	--full-width-padding: max(1%, calc((50vw - var(--scrollbar-width) / 2) - var(--container-max-width) / 2));
	
	--spacer-240: clamp(120px, 12.5vw, 240px);
	--spacer-180: clamp(80px, 9.375vw, 180px);
	--spacer-160: clamp(80px, 8.3333vw, 160px);
	--spacer-140: clamp(70px, 7.3vw, 140px);
	--spacer-120: clamp(60px, 6.25vw, 120px);
	--spacer-100: clamp(50px, 5.2vw, 100px);
	--spacer-80: clamp(40px, 4.16vw, 80px);
	--spacer-60: clamp(30px, 3.125vw, 60px);
	--spacer-50: clamp(25px, 2.6vw, 50px);
	--spacer-40: clamp(20px, 2.08vw, 40px);
	--spacer-30: clamp(15px, 1.5626vw, 30px);
	--spacer-20: clamp(10px, 1.04vw, 20px);
	--spacer-10: clamp(5px, 0.5vw, 10px);
	--spacer-rem: 1rem;
}

@media (max-width: 1024px){
    .e-container, .e-con{
        --full-width-padding: 2vw;
	}
	
	.e-con.e-parent:not(.e-child, .no-side-padding){
		padding-left: var(--full-width-padding);
		padding-right: var(--full-width-padding);
	}
}

@media (max-width: 768px){
    .e-container, .e-con{
        --full-width-padding: 4vw;
	}
}

/* Content Breite eine Seite - Full width andere Seite */
.full-width-content-padding-left{
    padding-left: var(--full-width-content-padding-amount)
}
.full-width-content-padding-right{
    padding-right: var(--full-width-content-padding-amount)
}
/* Content Breite Ende */


/* Listen */
.elementor-widget-text-editor ul li::marker{
	color: var(--e-global-color-613d427);
}

.numbered-list ol{
	list-style: none;
	padding-left: 0;
	counter-reset: numbers;
}
.numbered-list ol li{
	counter-increment: numbers;
	display: flex;
    gap: 14px;
	font-weight: 400;
}
.numbered-list ol li::before{
	content: counter(numbers, decimal-leading-zero);
	flex-shrink: 0;
    background: #edf3f5;
    width: 40px;
    aspect-ratio: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 110px;
	font-size: 14px;
	font-weight: 500;
}
.numbered-list ol li + li{
	margin-top: var(--spacer-20);
}
/* Listen Ende */


/* Buttons */
.elementor-button{
	background-image: linear-gradient(87deg, var(--e-global-color-6b0f725) 14%, #CBEAFF 94%);
}
.elementor-button .elementor-button-text{
	display: flex;
	align-items: center;
	gap: var(--spacer-10);
}
.elementor-button .elementor-button-text::after{
	content: "";
	background: url('https://psm.g3kunden.de/wp-content/uploads/2026/03/button-angle-right.svg') no-repeat center/contain;
	width: 6px;
	height: 10px;
}

.elementor-button:hover{
	background-image: none;
}
.elementor-button:hover .elementor-button-text::after{
	filter: brightness(0) invert(1);
}

.btn-white .elementor-button .elementor-button-text::after{
	filter: brightness(0) invert(1);
}

.gradient-btn a{
    background: 
        linear-gradient(#fff, #fff) padding-box,
        linear-gradient(135deg, #61B8ED, #04446D) border-box !important;
    border: 2px solid transparent;
}
.gradient-btn a:hover{
	background: var(--e-global-color-primary) !important;
}
/* Buttons Ende */


/* Bold, Links + Hover Effekt */
b, strong{
	font-weight: 500 !important;
	/*color: var(--e-global-color-c36b123)*/;
}
.bold-black :is(b, strong){
	color: var(--e-global-color-3e523e1);
}
.bold-white :is(b, strong){
	color: var(--e-global-color-6b0f725);
}

a{
	 color: inherit;
	--lineColor: var(--e-global-color-c36b123)
}

p a, p a:hover{
    color: inherit;
	font-weight: 500;
	--lineColor: var(--e-global-color-c36b123)
}
p a, .list-hover-line a span, .news-listing article .elementor-post__read-more{
    background: 
      linear-gradient(var(--lineColor, #ffffff33) 0 0) 
      0 100% /var(--d, 0) var(--thickness, 2px) 
    no-repeat;
    transition:0.3s;
}
p a:hover, .list-hover-line a:hover span, .news-listing article .elementor-post__read-more:hover{
    --d: 100%;
}
/* Bold, Links + Hover Effekt Ende */


/* Tabellen */
.product-table{
	margin-bottom: 0;
}
.product-table table tr{
    border-bottom: 1px solid var( --e-global-color-c36b123 );
}
.product-table table td, .product-table table th{
    background-color: transparent !important;
    border: none !important;
	border-top: none !important;
    padding: 16px 0 16px 0;
    font-size: 22px;;
}
.product-table table th{
    color: var( --e-global-color-c36b123 );
	font-weight: 500;
    padding-right: 3em;
	width: 0;
	white-space: nowrap;
}
@media(max-width: 767px){
	.product-table table td, .product-table table th{
		font-size: 18px;
		/*width: auto;
		white-space: normal;*/
	}
}
/* Tabellen Ende */


/* Cookiebanner Elemente */
.cookieconsent-optout-marketing a {
    text-decoration: underline;
}
.cookieconsent-optout-marketing{
    display: block;
    padding: 40px;
    border: 1px solid var(--e-global-color-c36b123);
}
/* Cookiebanner Elemente Ende */


.preline .elementor-heading-title{
    display: flex;
    align-items: center;
}
.preline .elementor-heading-title::before{
    content: "";
    width: 18px;
    height: 18px;
    border-radius: 50%;
    background: var(--e-global-color-613d427);
    display: block;
    margin-right: 0.5em;
	flex-shrink: 0;
}
@media (max-width: 767px){
	.preline .elementor-heading-title::before{
		width: 12px;
		height: 12px;
	}
}

.mt-auto{
	margin-top: auto;
}

.gradient-border::after{
    content: "";
    width: 100%;
    position: absolute;
    bottom: 0;
    background: linear-gradient(90deg, #61B8ED 0%, #02426B 100%);
    height: 6px;
}

.img-block .elementor-widget-container{
    line-height: 0;
}
.img-block img{
    display: block;
}
.img-reset{
    line-height: 0;
}
.img-ratio img{
	aspect-ratio: 1;
    object-fit: cover;
}

@media (max-width: 768px){
    .position-mobile{
        position: relative !important;
    }
}

@media (max-width: 767px){
	.elementor-widget-hotspot .e-hotspot{
		display: none;
	}
}
/*** GLOBALS ENDE ***/


/*** NAVIGATION/HEADER/POPUP ***/
.main-menu button.e-n-menu-dropdown-icon{
	background: transparent;	
}
.main-menu li.e-n-menu-item .e-n-menu-title-text{
	cursor: pointer;
}

.main-submenu ul li + li{
    border-top: 1px solid #00000033;
    max-width: 50%;
}
.main-submenu ul li a {
	transition: 0.2s !important;
}
.main-submenu ul li:is(.current-menu-item, :hover) a {
    font-weight: 500 !important;
	gap: var(--spacer-20);
}
.main-submenu ul li:is(.current-menu-item, :hover) a::before {
	content: "";
	background: url("/wp-content/uploads/2021/08/submenu-arrow.svg") no-repeat center/contain;
	width: 24px;
	height: 23px;
	position: static !important;
}
.main-submenu-columns ul{
    column-gap: var(--spacer-40);
}
.main-submenu-columns ul li{
	width: calc((100% - var(--spacer-40)) / 2);
}
.main-submenu-columns ul li:nth-of-type(2){
	border-top: none;
}

.page-content > div.elementor > .e-con:first-child{
	padding-top: var(--header-height);
}




.header-search svg{
    display: none;
}
.header-search .elementor-search-form{
    display: flex;
}
.header-search .e-font-icon-svg-container::after{
    content: "";
	background: url("/wp-content/uploads/2021/08/search.svg") no-repeat center/contain;
	position: absolute;
	inset: 0;
}
.jet-mobile-menu .jet-mobile-menu__item.wpml-ls-item {
    display: inline-block;
}
.jet-mobile-menu .jet-mobile-menu__item.wpml-ls-item + .jet-mobile-menu__item.wpml-ls-item{
	margin-left: 0.5em;
	padding-left: 0.5em;
	position: relative;
}
.jet-mobile-menu .jet-mobile-menu__item.wpml-ls-item + .jet-mobile-menu__item.wpml-ls-item::before{
	content: "";
	background: var(--e-global-color-c36b123);
	width: 1px;
	height: 1em;
	position: absolute;
	left: 0;
	top: 50%;
	translate: 0 -50%;
}
.jet-mobile-menu .jet-mobile-menu__item.wpml-ls-item.wpml-ls-current-language .wpml-ls-native{
	font-weight: 500;
}
.jet-mobile-menu .jet-mobile-menu__controls .jet-mobile-menu__back[aria-label="Back to Prev Items"] svg{
	display: none;
}
.jet-mobile-menu .jet-mobile-menu__controls .jet-mobile-menu__back[aria-label="Back to Prev Items"]::after{
	content: "";
	background: url(/wp-content/uploads/2023/05/icon-pfeil-dick.svg) no-repeat center/contain;
	width: 20px;
	height: 20px;
	transform: rotate(180deg);
}


.sidebar{
    width: auto;
	pointer-events: none;
}
.sidebar-icon{
    transform: translateX(calc(100% - 62px));
    transition: all 0.2s;
	cursor: pointer;
	pointer-events: all;
}
.sidebar-icon:hover{
    transform: translateX(0);
    transition: all 0.2s;
}
.sidebar-icon .elementor-icon-box-content{
    padding: 9px 18px 9px 30px;
    background-color: var(--e-global-color-263b445);
}
.sidebar-icon:hover .elementor-icon-box-icon{
    transform: translateX(10px);
}
/*** NAVIGATION/HEADER/POPUP ENDE ***/


/*** FOOTER ***/
.footer-menu-columns ul{
    row-gap: 14px;
    column-gap: var(--spacer-40);
}
.footer-menu-columns ul li{
	width: calc((100% - var(--spacer-40)) / 2);
}
@media(max-width: 767px){
	.footer-menu-columns ul li{
		width: 100%;
	}
}
/*** FOOTER ENDE ***/


/*** WEITERE ELEMENTE ***/

/* Startseite */
.intro-box .elementor-image-box-wrapper{
    display: flex;
    flex-direction: column;
	height: 100%;
}
.intro-box .elementor-image-box-img img{
	width: 100%;
}
.intro-box .elementor-image-box-content{
	flex-grow: 1;
    background-color: white;
    display: flex;
    align-items: flex-start;
    gap: 1rem;
    padding: var(--spacer-60) var(--spacer-40);
}
.intro-box .elementor-image-box-content .elementor-image-box-title{
    flex-shrink: 0;
    background: #edf3f5;
    width: 40px;
    aspect-ratio: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 110px;
}

.product-box .elementor-icon-list-item a{
	gap: 14px;
}
.product-box .elementor-icon-list-item a::after{
	content: "";
	background: url('https://psm.g3kunden.de/wp-content/uploads/2026/03/button-angle-right.svg') no-repeat center/contain;
	width: 6px;
	height: 10px;
	filter: brightness(0) invert(1);
}
.product-box:not(:hover) .product-box-hover-content{
	display: none;
}
.product-box-hover-content{
    backdrop-filter: blur(5px);
    height: 100%;
}

.nav-list li a{
    padding: var(--spacer-30) 0;
}
.nav-list li a svg path{
    stroke: white;
}
.nav-list li:not(:hover) a .elementor-icon-list-icon{
    display: none;
}

/* Startseite Ende */




.mini-nav .elementor-icon-list-items .elementor-icon-list-item:hover a span.elementor-icon-list-text{
	color: var(--e-global-color-6b0f725);
}
.tabs .elementor-tabs{
    counter-reset: tabs;    
}
.tabs .elementor-tabs .elementor-tab-title.elementor-active{
	text-decoration: underline;
}
.tabs .elementor-tabs .elementor-tab-title::before, .tabs .elementor-tabs .elementor-tab-title.elementor-active::before{
    content: counter(tabs) ".";
    counter-increment: tabs;
    position: relative;
    background: var(--e-global-color-613d427);
    border-radius: 50%;
    width: 41px !important;
    height: 41px !important;
    display: inline-block;
	text-align: center;
    transform: none !important;
    margin-right: 1em;
	line-height: 1.5;
}
.tabs .elementor-tabs .elementor-tab-title.elementor-active::before{
	color: var(--e-global-color-c36b123);
}

@media (max-width: 767px){
	.tabs .elementor-tabs .elementor-tab-title.elementor-active{
		text-decoration: none;
	}
	.tabs .elementor-tabs .elementor-tab-title::before, .tabs .elementor-tabs .elementor-tab-title.elementor-active::before{
		margin-right: 0;
		line-height: 2;
	}
	.tabs .elementor-tabs .elementor-tab-mobile-title:not(.elementor-active){
		border-bottom: 1px solid white;
	}
	.tabs .elementor-tabs .elementor-tab-mobile-title{
		display: flex;
		align-items: center;
		gap: 1em;
	}
	.tabs .elementor-tabs .elementor-tab-mobile-title::after{
		content: "+";
		margin-left: auto;
		font-size: 1.5em;
	}
	.tabs .elementor-tabs .elementor-tab-mobile-title.elementor-active::after{
		content: "-";
	}
}
@media (min-width: 768px){
	.tabs .elementor-tabs-content-wrapper{
		display: flex;
		align-items: center;
	}
}

.e-hotspot--active .e-hotspot__icon svg g circle{
	fill: var(--e-global-color-c36b123);
}

.news-listing article .elementor-post__read-more-wrapper{
	display: flex;
	align-items: flex-end;
}
.news-listing article .elementor-post__read-more{
	--lineColor: var( --e-global-color-c36b123 );
	--thickness: 4px;
	padding-bottom: 5px;
}
.news-listing article .elementor-post__read-more-wrapper::after{
	content:'';
	background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke-width='1.5' stroke='%23F7CB11' class='w-6 h-6'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='M4.5 12h15m0 0l-6.75-6.75M19.5 12l-6.75 6.75' /%3E%3C/svg%3E%0A") no-repeat center/cover;
	display: inline-block;
	width: 20px;
	height: 100%;
	padding-bottom: 5px;
	border-bottom: 4px solid var(--e-global-color-613d427);
	margin-left: 5px;
	opacity: 0;
	transition: opacity 0.2s;
}
.news-listing article .elementor-post__read-more-wrapper:hover::after{
	opacity: 1;
	transition: opacity 0.2s 0.2s;
}
@media(min-width: 768px){
.news-listing article:is(.post-3761, .post-3791) .elementor-post__thumbnail img{
	left: 10%;
}
}

.elementor-widget-post-navigation .post-navigation__arrow-wrapper:is(.post-navigation__arrow-prev, .post-navigation__arrow-next) i{
	transform: none;
}
.elementor-widget-post-navigation :is(.post-navigation__arrow-prev, .post-navigation__arrow-next) i::before{
    content: "";
    background: url(/wp-content/uploads/2023/01/arrow-left.svg) no-repeat center/contain;
    height: 75px;
    width: 75px;
    display: block;
}
.elementor-widget-post-navigation .post-navigation__arrow-next i::before{
    background: url(/wp-content/uploads/2023/01/arrow-right.svg) no-repeat center/contain;
}
.elementor-widget-post-navigation .elementor-post-navigation .elementor-post-navigation__link{
	width: auto;
}

@media(max-width: 1024px){
	.elementor-widget-post-navigation :is(.post-navigation__arrow-prev, .post-navigation__arrow-next) i::before{
		width: 60px;
		height: 60px;
	}
}
@media(max-width: 767px){
	.elementor-widget-post-navigation :is(.post-navigation__arrow-prev, .post-navigation__arrow-next) i::before{
		width: 50px;
		height: 50px;
	}
}

.job-listing article:hover .elementor-icon-wrapper svg, .arrow-icon-hover:hover svg{
	border: 1px solid #fff;
	border-radius: 50%;
}
.job-listing article:hover .elementor-icon-wrapper svg circle, .arrow-icon-hover:hover svg circle{
	fill: #00000000;
}
.custom-video .video-wrapper {
    position: relative;
    padding-bottom: 56.25%;
}

.custom-video .video-wrapper iframe{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.fake-icon a.elementor-icon svg{
    display: none;
}
.fake-icon a.elementor-icon{
    width: 50px;
    height: 50px;
    background: url(/wp-content/uploads/2023/01/arrow-right-blue.svg) no-repeat center/30%;
}
.fake-icon a.elementor-icon:hover{
    background: url(/wp-content/uploads/2023/01/arrow-right-white.svg) no-repeat center/30%;
}
@media(max-width: 767px){
    .fake-icon a.elementor-icon{
        width: 40px;
        height: 40px;
        background-size: 35%;
    }
}

.milestones .ue_timeline_item_image{
    margin-bottom: 30px;
}

.key-fact .uc_counter_box{
    border-radius: 50% !important;
    aspect-ratio: 1;
}
/*** WEITERE ELEMENTE ENDE ***/





/* Interactive map */
.map_wrapper .map_box{
	margin: 0;
}
.map_wrapper .igm_content_left_2_3{
	width: 100% !important;
}
.map_wrapper .igm_content_right_1_3{
	width: 20% !important;
	position: absolute;   
    bottom: 300px;
}
.map_wrapper .igm_content_right_1_3 > [class]{
	background: white !important;
    padding: 50px;
    border: 1px solid var(--e-global-color-c36b123);
}
.map_wrapper .igm-map-content img{
	max-height: 100px;
    object-fit: contain;
    object-position: left;
}
.map_wrapper .igm-map-content :is(strong, a){
	color: var(--e-global-color-c36b123)
}

.igm_select_container .choices::after{
	border-color: var(--e-global-color-c36b123) transparent transparent !important;
}
.igm_select_container .choices__inner{
	background: transparent;
	padding: 0 !important;
	border: none;
	min-height: unset;
}
.igm_select_container .choices__inner .choices__list--single{  
    width: 100%;
    font-size: var(--e-global-typography-6a0f70f-font-size);
    font-weight: var(--e-global-typography-6a0f70f-font-weight);
    background-color: transparent;
    background-repeat: no-repeat;
    background-position: right center;
    background-size: 30px;
    border: none;
    border-bottom: 1px solid var(--e-global-color-c36b123);
    padding: 15px 0px;
    color: var(--e-global-color-c36b123);
    outline: none;
}
.igm_select_container .choices__inner .choices__list--single .choices__placeholder{
	opacity: 1;	  
}
.igm_select_container .is-open .choices__list--dropdown{
	border-color: var(--e-global-color-c36b123);
}
.igm_select_container .is-open .choices__list--dropdown .choices__input{
	border-radius: 0;
	border-color: var(--e-global-color-c36b123);
	border-width: 0 0 1px 0;
}
/* Interactive map Ende */