.elementor-404 .elementor-element.elementor-element-633f7ffc{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:space-between;--align-items:center;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:10px;--padding-bottom:10px;--padding-left:10px;--padding-right:10px;--z-index:99;}.elementor-404 .elementor-element.elementor-element-633f7ffc:not(.elementor-motion-effects-element-type-background), .elementor-404 .elementor-element.elementor-element-633f7ffc > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#1A1B17;}.elementor-widget-image .widget-image-caption{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-404 .elementor-element.elementor-element-3b91b416 img{width:159px;}.elementor-widget-nav-menu .elementor-nav-menu .elementor-item{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item{color:var( --e-global-color-text );fill:var( --e-global-color-text );}.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item:hover,
					.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item.elementor-item-active,
					.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item.highlighted,
					.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item:focus{color:var( --e-global-color-accent );fill:var( --e-global-color-accent );}.elementor-widget-nav-menu .elementor-nav-menu--main:not(.e--pointer-framed) .elementor-item:before,
					.elementor-widget-nav-menu .elementor-nav-menu--main:not(.e--pointer-framed) .elementor-item:after{background-color:var( --e-global-color-accent );}.elementor-widget-nav-menu .e--pointer-framed .elementor-item:before,
					.elementor-widget-nav-menu .e--pointer-framed .elementor-item:after{border-color:var( --e-global-color-accent );}.elementor-widget-nav-menu{--e-nav-menu-divider-color:var( --e-global-color-text );}.elementor-widget-nav-menu .elementor-nav-menu--dropdown .elementor-item, .elementor-widget-nav-menu .elementor-nav-menu--dropdown  .elementor-sub-item{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-404 .elementor-element.elementor-element-55c68b6 .elementor-menu-toggle{margin-right:auto;}.elementor-404 .elementor-element.elementor-element-55c68b6 .elementor-nav-menu--main .elementor-item{color:#FFFFFF;fill:#FFFFFF;}.elementor-404 .elementor-element.elementor-element-512b48c9{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:flex-end;--gap:10px 10px;--row-gap:10px;--column-gap:10px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-widget-button .elementor-button{background-color:var( --e-global-color-accent );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-theme-builder-content-area{height:400px;}.elementor-location-header:before, .elementor-location-footer:before{content:"";display:table;clear:both;}@media(max-width:1024px){.elementor-404 .elementor-element.elementor-element-3b91b416.elementor-element{--order:2;}.elementor-404 .elementor-element.elementor-element-55c68b6{width:var( --container-widget-width, 30% );max-width:30%;--container-widget-width:30%;--container-widget-flex-grow:0;}.elementor-404 .elementor-element.elementor-element-512b48c9.e-con{--order:3;}}@media(max-width:767px){.elementor-404 .elementor-element.elementor-element-633f7ffc{--min-height:0px;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--gap:10px 10px;--row-gap:10px;--column-gap:10px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-404 .elementor-element.elementor-element-633f7ffc.e-con{--align-self:center;}.elementor-404 .elementor-element.elementor-element-3b91b416.elementor-element{--order:2;--flex-grow:1;--flex-shrink:0;}.elementor-404 .elementor-element.elementor-element-3b91b416 img{width:81px;}.elementor-404 .elementor-element.elementor-element-55c68b6{width:var( --container-widget-width, 30% );max-width:30%;padding:0px 0px 0px 0px;--container-widget-width:30%;--container-widget-flex-grow:0;}.elementor-404 .elementor-element.elementor-element-512b48c9{--width:30%;}.elementor-404 .elementor-element.elementor-element-512b48c9.e-con{--order:3;--flex-grow:0;--flex-shrink:1;}.elementor-404 .elementor-element.elementor-element-1f42323d .elementor-button{padding:5px 10px 5px 10px;}}@media(min-width:768px){.elementor-404 .elementor-element.elementor-element-512b48c9{--width:25%;}}@media(max-width:1024px) and (min-width:768px){.elementor-404 .elementor-element.elementor-element-512b48c9{--width:33%;}}/* Start custom CSS for container, class: .elementor-element-633f7ffc */.header {
	top: 0;
	left: 0;
	right: 0;
	z-index: 999;
	background-color: transparent;
}

/* Der Header liegt entweder auf dem Hero-Bild oder auf schwarzem Grund.
   Die Navigation muss deshalb in beiden Zustaenden hell sein. */
.header .elementor-item {
	color: #fff;
}

.header .elementor-item:hover,
.header .elementor-item.elementor-item-active {
	color: var(--e-global-color-accent, #61CE70);
}

/* Aufklappmenue am Handy bekommt denselben dunklen Grund,
   sonst stuende weisse Schrift auf weissem Panel. */
.header .elementor-nav-menu--dropdown {
	background-color: #111;
}

@supports (animation-timeline: scroll()) {

	.header {
		animation: gm-header-schwarz linear both;
		animation-timeline: scroll(root block);
		/* Ueber diese 120px blendet Schwarz ein — und beim
		   Hochscrollen im selben Tempo wieder aus. */
		animation-range: 0 120px;
	}

	@keyframes gm-header-schwarz {
		from {
			background-color: rgba(17, 17, 17, 0);
			box-shadow: 0 8px 24px -18px rgba(0, 0, 0, 0);
		}
		to {
			background-color: rgba(17, 17, 17, 1);
			box-shadow: 0 8px 24px -18px rgba(0, 0, 0, .6);
		}
	}
}

/* Browser ohne Scroll-Animationen: dauerhaft schwarz. Transparent waere
   dort ein Risiko — weisse Schrift auf hellem Bild ist unlesbar. */
@supports not (animation-timeline: scroll()) {
	.header {
		background-color: #111;
	}
}

/* --- Logo ---
   width/max-width mit !important, weil Elementor dem Bild sonst
   eine feste Breite gibt und es verzerrt. */
.header .logo img {
	width: auto !important;
	max-width: none !important;
	height: 56px;
	object-fit: contain;
	display: block;
}

/* Adminleiste: nur fuer eingeloggte Nutzer, Besucher sehen das nie */
body.admin-bar .header {
	top: 32px;
}

@media screen and (max-width: 782px) {
	body.admin-bar .header {
		top: 46px;
	}
}

@media screen and (max-width: 600px) {
	body.admin-bar .header {
		top: 0;
	}
}/* End custom CSS */