/* SIGES Full-Height Ticker — mwg_024 1:1 Adaption
   + Background-Image mit Overlay (Color/Opacity via ACF) */

.siges-fh-ticker {
	width: 100vw; /* Voller Viewport — 100% würde nur Parent-Breite abdecken */
	position: relative;
	overflow: visible; /* KEIN hidden — GSAP-Pin macht container:fixed, overflow:hidden würde clippen */
	left: 50%;
	margin-left: -50vw;
	/* Farb-Kette: Section-Override → fh_bg-Feld → Fallback */
	background: var(--sg-sec-bg, var(--fh-bg, #3a3028));
	color: var(--fh-text, #F1F1F1);
}
/* BG + Overlay bleiben durch __pin overflow:hidden geclippt */
.siges-fh-ticker__pin {
	overflow: hidden;
}
.siges-fh-ticker * { user-select: none; }

/* Background-Image Layer (unterste Ebene) */
.siges-fh-ticker__bg {
	position: absolute;
	inset: 0;
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
	z-index: 0;
}

/* Overlay Layer (darüber, vor Content) */
.siges-fh-ticker__overlay {
	position: absolute;
	inset: 0;
	z-index: 1;
	pointer-events: none;
}

/* Pin-Wrapper (definiert Scroll-Distanz) */
.siges-fh-ticker .siges-fh-ticker__pin {
	height: 200vh !important;
	position: relative;
	z-index: 2;
	width: 100%;
}

/* Container (gepinnt, viewport-hoch).
   Mobile-Fix: 100vh inkludiert auf iOS/Android den Bereich HINTER der
   Address-Bar → Section ragt unten raus. 100dvh (dynamic viewport
   height) matched die ECHTE sichtbare Fläche und schrumpft/wächst mit
   der Address-Bar. Doppelte Deklaration als Fallback für ältere
   Browser (Safari <15.4, Chrome <108) — die erste vh-Regel gilt dort,
   moderne Browser überschreiben mit dvh. */
.siges-fh-ticker .siges-fh-ticker__container {
	position: relative;
	height: 100vh !important;
	height: 100dvh !important;
	width: 100%;
	display: flex !important;
	flex-direction: column !important;
	justify-content: center !important;
	box-sizing: border-box;
}

/* Elementor-Widget-Wrapper um FH-Ticker neutralisieren (kein padding/min-height) */
.elementor-widget-shortcode:has(.siges-fh-ticker),
.elementor-widget-shortcode:has(.siges-fh-ticker) .elementor-widget-container,
.elementor-widget-shortcode:has(.siges-fh-ticker) .elementor-shortcode {
	padding: 0 !important;
	margin: 0 !important;
	min-height: 0 !important;
	line-height: 0 !important;
}
.elementor-element:has(> .elementor-widget-container > .elementor-shortcode > .siges-fh-ticker) {
	padding: 0 !important;
	margin: 0 !important;
	min-height: 0 !important;
}

/* Elementor-Container der den Ticker enthält → full-width, kein Padding.
   Greift bei der neuen Container-Struktur (.e-con > .e-con-inner > widget > ticker) */
.e-con:has(.siges-fh-ticker),
.e-con-inner:has(.siges-fh-ticker) {
	padding: 0 !important;
	margin: 0 !important;
	max-width: none !important;
	width: 100% !important;
	--padding-top: 0 !important;
	--padding-right: 0 !important;
	--padding-bottom: 0 !important;
	--padding-left: 0 !important;
}

/* Sentences-Layer (relative damit sentence2 absolut darin liegt) */
.siges-fh-ticker .siges-fh-ticker__sentences {
	position: relative !important;
	font-family: 'Ageo', 'Inter', sans-serif !important;
	font-size: 10vw !important;
	font-weight: 500 !important;
	line-height: 1.2 !important;
	letter-spacing: -0.06em !important;
	width: 100%;
}

/* Einzelne Sentence */
.siges-fh-ticker .siges-fh-ticker__sentence {
	overflow: hidden !important;
	width: 100%;
}
.siges-fh-ticker .siges-fh-ticker__sentence p {
	display: flex !important;
	align-items: center !important;
	white-space: nowrap !important;
	width: max-content !important;
	will-change: transform;
	margin: 0 !important;
	padding: 0 !important;
	font-size: inherit !important;
	line-height: inherit !important;
	font-family: inherit !important;
}
.siges-fh-ticker .siges-fh-ticker__sentence p span {
	display: inline-block !important;
	font-size: inherit !important;
	font-family: inherit !important;
	line-height: inherit !important;
	color: inherit !important;
}

/* sentence2 absolut über sentence1, initial 100% nach unten verschoben */
.siges-fh-ticker .siges-fh-ticker__sentence--2 {
	position: absolute !important;
	top: 0 !important;
	left: 0 !important;
	color: var(--fh-accent, #BE9B53) !important;
}
.siges-fh-ticker .siges-fh-ticker__sentence--2 p {
	transform: translate(0, 100%);
}

/* Glyph zwischen den Wiederholungen — IMMER 5.5vw, max 8em, auch wenn user 800×800 hochlädt */
.siges-fh-ticker img.siges-fh-ticker__glyph {
	width: 5.5vw !important;
	height: 5.5vw !important;
	max-width: 8em !important;
	max-height: 8em !important;
	min-width: 32px !important;
	min-height: 32px !important;
	object-fit: contain !important;
	display: inline-block !important;
	flex-shrink: 0 !important;
	vertical-align: middle;
	margin: 0 0.3em;
}
.siges-fh-ticker .siges-fh-ticker__glyph--default {
	width: 0.5em !important;
	height: 0.5em !important;
	min-width: 14px !important;
	min-height: 14px !important;
	max-width: none !important;
	max-height: none !important;
	background: var(--fh-accent, #BE9B53);
	border-radius: 50%;
	margin: 0 0.4em;
	align-self: center;
	flex-shrink: 0;
}

/* Footer-Stats — Demo: dashed top border, monospace, uppercase */
.siges-fh-ticker__footer {
	display: flex;
	justify-content: space-between;
	margin: 1vw 0 0;
	padding: 2vw var(--sg-side-pad, 50px) 0;
	border-top: 1px dashed rgba(255, 255, 255, 0.25);
	font-family: 'IBM Plex Mono', 'Courier New', monospace;
	font-size: 0.9vw;
	font-weight: 700;
	text-transform: uppercase;
	color: currentColor;
}
.siges-fh-ticker__footer p { margin: 0; }

/* Wenn kein BG-Image: dashed border dunkler (Demo-Style) */
.siges-fh-ticker:not(.siges-fh-ticker--has-bg) .siges-fh-ticker__footer {
	border-top-color: rgba(72, 72, 72, 0.6);
}

@media (max-width: 768px) {
	.siges-fh-ticker__sentences { font-size: 70px; }
	.siges-fh-ticker__glyph { width: 36px; }
	.siges-fh-ticker__glyph--default { width: 14px; height: 14px; margin: 0 8px; }
	.siges-fh-ticker__footer {
		font-size: 8px;
		padding: 15px;
		margin: 15px 0 0;
	}
}

@media (prefers-reduced-motion: reduce) {
	.siges-fh-ticker__sentence p { animation: none !important; transform: none !important; }
}

/* ===== Body-Text (unten rechts, absolut positioniert) ===== */
.siges-fh-ticker__body {
	position: absolute;
	bottom: 40px;
	right: 40px;
	max-width: 380px;
	text-align: right;
}
.siges-fh-ticker__body-text {
	font-family: 'Ageo', 'Inter', sans-serif;
	font-size: clamp(13px, 1vw, 16px);
	font-weight: 500;
	line-height: 1.6;
	color: currentColor;
	margin: 0;
}
@media (max-width: 768px) {
	.siges-fh-ticker__body {
		position: relative;
		bottom: auto;
		right: auto;
		max-width: 100%;
		text-align: left;
		padding: 0 var(--sg-side-pad, 50px) 32px;
	}
}
