/* OFFSTAGE v141: Mobile-Menü global auf allen Seiten lesbar und einheitlich */
			@media only screen and (max-width: 991px) {
				html body #page #header.header.tra-menu .wsmobileheader {
					background-color: #050505 !important;
				}

				html body #page #header.header.tra-menu .wsmainfull.menu .wsmenu > .wsmenu-list,
				html body #page #header.header.tra-menu .wsmainfull.menu .wsmenu > .wsmenu-list > li,
				html body #page #header.header.tra-menu .wsmainfull.menu .wsmenu > .wsmenu-list > li > ul.sub-menu,
				html body #page #header.header.tra-menu .wsmainfull.menu .wsmenu > .wsmenu-list > li > .wsmegamenu,
				html body #page #header.header.tra-menu .wsmainfull.menu .wsmenu > .wsmenu-list > li > .wsmegamenu.w-75,
				html body #page #header.header.tra-menu .wsmainfull.menu .wsmenu > .wsmenu-list > li > .wsmegamenu.halfmenu {
					background-color: #ffffff !important;
				}

				html body #page #header.header.tra-menu .wsmainfull.menu .wsmenu > .wsmenu-list > li > a,
				html body #page #header.header.tra-menu .wsmainfull.menu:not(.scroll) .wsmenu > .wsmenu-list > li > a,
				html body #page #header.header.tra-menu .wsmainfull.menu.scroll .wsmenu > .wsmenu-list > li > a {
					color: #615b57 !important;
					background-color: #ffffff !important;
				}

				html body #page #header.header.tra-menu .wsmainfull.menu .wsmenu > .wsmenu-list > li:hover > a,
				html body #page #header.header.tra-menu .wsmainfull.menu .wsmenu > .wsmenu-list > li > a:hover,
				html body #page #header.header.tra-menu .wsmainfull.menu .wsmenu > .wsmenu-list > li > a:focus,
				html body #page #header.header.tra-menu .wsmainfull.menu .wsmenu > .wsmenu-list > li > a:active,
				html body #page #header.header.tra-menu .wsmainfull.menu .wsmenu > .wsmenu-list > li:has(> .wsmenu-click.ws-activearrow) > a {
					color: #f5f0eb !important;
					background-color: #232228 !important;
				}

				html body #page #header.header.tra-menu .wsmainfull.menu .wsmenu > .wsmenu-list > li > ul.sub-menu > li > a,
				html body #page #header.header.tra-menu .wsmainfull.menu .wsmenu > .wsmenu-list > li > .wsmegamenu .link-list li a,
				html body #page #header.header.tra-menu .wsmainfull.menu .wsmenu > .wsmenu-list > li > .wsmegamenu.w-75 ul.link-list > li > a,
				html body #page #header.header.tra-menu .wsmainfull.menu .wsmenu > .wsmenu-list > li > .wsmegamenu.halfmenu ul.link-list > li > a {
					color: #6d6661 !important;
					background-color: transparent !important;
				}

				html body #page #header.header.tra-menu .wsmainfull.menu .wsmenu > .wsmenu-list > li > ul.sub-menu > li > a:hover,
				html body #page #header.header.tra-menu .wsmainfull.menu .wsmenu > .wsmenu-list > li > ul.sub-menu > li > a:focus,
				html body #page #header.header.tra-menu .wsmainfull.menu .wsmenu > .wsmenu-list > li > .wsmegamenu .link-list li a:hover,
				html body #page #header.header.tra-menu .wsmainfull.menu .wsmenu > .wsmenu-list > li > .wsmegamenu .link-list li a:focus,
				html body #page #header.header.tra-menu .wsmainfull.menu .wsmenu > .wsmenu-list > li > .wsmegamenu.w-75 ul.link-list > li > a:hover,
				html body #page #header.header.tra-menu .wsmainfull.menu .wsmenu > .wsmenu-list > li > .wsmegamenu.halfmenu ul.link-list > li > a:hover {
					color: #f5f0eb !important;
					background-color: #232228 !important;
				}

				html body #page #header.header.tra-menu .wsmainfull.menu .wsmenu > .wsmenu-list > li a.btn.btn-tra-white,
				html body #page #header.header.tra-menu .wsmainfull.menu .wsmenu > .wsmenu-list > li a.btn.violet-red--btn,
				html body #page #header.header.tra-menu .wsmainfull.menu .wsmenu > .wsmenu-list > li a.btn.last-link {
					background-color: #232228 !important;
					border-color: #232228 !important;
					color: #f5f0eb !important;
				}

				html body #page #header.header.tra-menu .wsmainfull.menu .wsmenu > .wsmenu-list > li a.btn.btn-tra-white:hover,
				html body #page #header.header.tra-menu .wsmainfull.menu .wsmenu > .wsmenu-list > li a.btn.violet-red--btn:hover,
				html body #page #header.header.tra-menu .wsmainfull.menu .wsmenu > .wsmenu-list > li a.btn.last-link:hover,
				html body #page #header.header.tra-menu .wsmainfull.menu .wsmenu > .wsmenu-list > li a.btn.btn-tra-white:focus,
				html body #page #header.header.tra-menu .wsmainfull.menu .wsmenu > .wsmenu-list > li a.btn.violet-red--btn:focus,
				html body #page #header.header.tra-menu .wsmainfull.menu .wsmenu > .wsmenu-list > li a.btn.last-link:focus {
					background-color: #ffffff !important;
					border-color: #232228 !important;
					color: #232228 !important;
				}
			}


/* Paket F: Honeypot ohne Inline-Style, kompatibel mit strikter CSP. */
.offstage-public-honeypot { position: absolute !important; left: -9999px !important; opacity: 0 !important; height: 0 !important; width: 0 !important; pointer-events: none !important; }


/* Paket L: Bei frei konfiguriertem Salonbranding wird das feste OFFSTAGE-Bildlogo
   nur dann durch Text ersetzt, wenn der gespeicherte Salonname vom Original abweicht. */
.offstage-public-brand-name {
	display: inline-flex;
	align-items: center;
	max-width: 260px;
	min-height: 40px;
	font-size: clamp(18px, 1.75vw, 27px);
	font-weight: 900;
	line-height: 1.05;
	letter-spacing: .025em;
	overflow-wrap: anywhere;
}
.logo-black .offstage-public-brand-name { color: #222; }
.logo-white .offstage-public-brand-name,
.smllogo .offstage-public-brand-name { color: #fff; }
@media only screen and (max-width: 991px) {
	.smllogo .offstage-public-brand-name {
		max-width: 220px;
		min-height: 40px;
		font-size: clamp(17px, 5vw, 23px);
	}
}

/* Abschluss-Paket D: First-party Frontend-Laufzeit ohne jQuery-/Carousel-Plugins. */
.offstage-scroll-up--visible { display: block !important; }
.booking-form .loading,
.contact-form .loading {
	opacity: 0;
	transition: opacity .2s ease;
}
.booking-form .loading.offstage-form-status--visible,
.contact-form .loading.offstage-form-status--visible { opacity: 1; }
.booking-form .loading.offstage-form-status--success,
.contact-form .loading.offstage-form-status--success { color: #48af4b; }
.booking-form .loading.offstage-form-status--error,
.contact-form .loading.offstage-form-status--error { color: #ff5607; }
.offstage-brand-carousel {
	overflow: hidden;
	width: 100%;
}
.offstage-brand-carousel-track {
	display: flex;
	align-items: center;
	width: 100%;
	will-change: transform;
}
.offstage-brand-carousel .brand-logo {
	flex: 0 0 calc(100% / var(--offstage-brand-items, 5));
	box-sizing: border-box;
}
@media (prefers-reduced-motion: reduce) {
	.offstage-brand-carousel-track { transition: none !important; }
}


/* v958: Originales WOW-/Animate-Reveal-Verhalten wiederhergestellt; dynamische Inhalte werden gezielt nachregistriert. */
@media (prefers-reduced-motion: reduce) {
  .wow { visibility: visible !important; animation: none !important; opacity: 1 !important; transform: none !important; }
}
