/* =========================================================
   SENDESIGNAL Redesign – Gestaltung J (Rahmen um den Hero)
   Farben + Schriften: Avada Optionen > Farben / Typografie
   (custom_color_3–15, custom_typography_4–9)
   ========================================================= */

:root {
	--ss-ink: var(--awb-custom_color_3, #1d2330);
	--ss-ink-deep: var(--awb-custom_color_4, #161b26);
	--ss-night: var(--awb-custom_color_5, #111720);
	--ss-slate: var(--awb-custom_color_6, #2a3346);
	--ss-steel: var(--awb-custom_color_7, #44526c);
	--ss-mist: var(--awb-custom_color_8, #93a3bd);
	--ss-fog: var(--awb-custom_color_9, #cdd5e1);
	--ss-haze: var(--awb-custom_color_10, #e4e9f1);
	--ss-cloud: var(--awb-custom_color_11, #eef2f6);
	--ss-paper: var(--awb-custom_color_12, #f4f4f2);
	--ss-signal: var(--awb-custom_color_13, #ebef57);
	--ss-grey: var(--awb-custom_color_14, #8d98ab);
	--ss-grey-dark: var(--awb-custom_color_15, #7d889b);

	--ss-font-label: var(--awb-custom_typography_4-font-family, 'Rajdhani-SemiBold', sans-serif);
	--ss-font-head: var(--awb-custom_typography_5-font-family, 'Rajdhani-Medium', sans-serif);
	--ss-font-card: var(--awb-custom_typography_6-font-family, 'Rajdhani-SemiBold', sans-serif);
	--ss-font-body: var(--awb-custom_typography_7-font-family, 'Titillium Web', sans-serif);

	--ss-frame: 16px;
	--ss-radius: 22px;
	--ss-max: 1360px;
	--ss-gutter: clamp(16px, 4vw, 56px);
	--ss-ease: cubic-bezier(.6, 0, .25, 1);
}

/* ---------- 1. Navigation ---------- */

.fusion-tb-header .ss-header {
	transition: background-color .35s ease, box-shadow .35s ease, top .35s ease, left .35s ease, right .35s ease;
}

.fusion-tb-header .ss-header > .fusion-builder-row {
	max-width: var(--ss-max) !important;
	margin: 0 auto !important;
	padding: 0 var(--ss-gutter);
	box-sizing: border-box;
	width: 100%;
}

/* Seiten mit Rahmen-Hero: Kopf liegt im Rahmen, transparent */
body:has(.ss-hero) .fusion-tb-header .ss-header.fusion-absolute-container:not(.fusion-container-stuck),
body:has(.ss-hero-frame) .fusion-tb-header .ss-header.fusion-absolute-container:not(.fusion-container-stuck) {
	top: var(--ss-frame) !important;
	left: var(--ss-frame) !important;
	right: var(--ss-frame) !important;
	width: auto !important;
	background: transparent !important;
}

/* Seiten ohne neuen Hero (noch nicht umgebaut): dunkles Glas */
body:not(:has(.ss-hero)):not(:has(.ss-hero-frame)) .fusion-tb-header .ss-header,
.fusion-tb-header .ss-header:not(.fusion-absolute-container) {
	background-color: rgba(29, 35, 48, .82) !important;
	-webkit-backdrop-filter: blur(18px) saturate(150%);
	backdrop-filter: blur(18px) saturate(150%);
}

/* Beim Scrollen: dunkles Glas, volle Breite */
.fusion-tb-header .ss-header.fusion-container-stuck {
	left: 0 !important;
	right: 0 !important;
	width: 100% !important;
	-webkit-backdrop-filter: blur(18px) saturate(150%);
	backdrop-filter: blur(18px) saturate(150%);
	box-shadow: inset 0 -1px 0 rgba(205, 213, 225, .1);
}

/* Startseite: Logo steht groß im Hero, im Kopf erst beim Scrollen */
.home .ss-header .ss-logo {
	transition: opacity .35s ease, transform .35s ease;
}
.home .ss-header.fusion-absolute-container:not(.fusion-container-stuck) .ss-logo {
	opacity: 0;
	pointer-events: none;
	transform: translateY(-6px);
}

.ss-header .ss-logo img {
	width: 150px;
	height: auto;
	display: block;
}

/* Menüpunkte */
.ss-header .ss-nav .awb-menu__main-a {
	font-family: var(--ss-font-label) !important;
	letter-spacing: .16em;
	text-decoration: none;
}
.ss-header .ss-nav .awb-menu__main-li:not(.ss-menu-cta) .awb-menu__main-a:hover,
.ss-header .ss-nav .awb-menu__main-li:not(.ss-menu-cta) .awb-menu__main-a:focus-visible {
	color: var(--ss-signal) !important;
}

/* Kontakt-Button */
.ss-header .ss-nav .awb-menu__main-li.ss-menu-cta > .awb-menu__main-a {
	display: inline-flex;
	align-items: center;
	min-height: 38px;
	padding: 0 18px !important;
	background: var(--ss-signal);
	color: var(--ss-ink) !important;
	border-radius: 4px;
	transition: box-shadow .35s ease, transform .35s ease;
}
.ss-header .ss-nav .awb-menu__main-li.ss-menu-cta > .awb-menu__main-a:hover {
	box-shadow: 0 10px 24px rgba(29, 35, 48, .14), 0 0 18px rgba(235, 239, 87, .35);
}
.ss-header .ss-nav .awb-menu__main-li.ss-menu-cta > .awb-menu__main-a:focus-visible {
	outline: 2px solid var(--ss-signal);
	outline-offset: 3px;
}

/* Mobiles Menü */
.ss-header .ss-nav.collapse-enabled .awb-menu__main-ul {
	border-radius: 0 0 8px 8px;
	box-shadow: 0 24px 50px rgba(17, 23, 32, .35);
}
.ss-header .ss-nav.collapse-enabled .awb-menu__main-li.ss-menu-cta {
	padding: 14px 20px 18px !important;
	background: var(--ss-ink) !important;
}
.ss-header .ss-nav.collapse-enabled .awb-menu__main-li.ss-menu-cta > .awb-menu__main-a {
	margin: 0 !important;
	justify-content: center !important;
	min-height: 46px !important;
	width: 100% !important;
	box-sizing: border-box;
	padding: 0 18px !important;
	background: var(--ss-signal) !important;
	border-radius: 4px;
}
.ss-header .ss-nav.collapse-enabled .awb-menu__main-li.ss-menu-cta > .awb-menu__main-a,
.ss-header .ss-nav.collapse-enabled .awb-menu__main-li.ss-menu-cta > .awb-menu__main-a .menu-text {
	color: var(--ss-ink) !important;
}
.ss-header .ss-nav.collapse-enabled .awb-menu__main-li .awb-menu__main-a {
	padding-left: 20px !important;
}
@media (max-width: 1000px) {
	body:has(.ss-hero) .fusion-tb-header .ss-header.expanded,
	body:has(.ss-hero-frame) .fusion-tb-header .ss-header:has(.expanded),
	body:has(.ss-hero) .fusion-tb-header .ss-header:has(.expanded) {
		background: var(--ss-ink) !important;
	}
}

@media (prefers-reduced-motion: reduce) {
	.fusion-tb-header .ss-header,
	.home .ss-header .ss-logo { transition: none; }
}

/* ---------- Bausteine (global) ---------- */

/* Label mit gelbem Sechseck */
.ss-sec .ss-label,
.ss-label {
	display: flex;
	align-items: center;
	gap: 10px;
	margin: 0 0 16px !important;
	font-family: var(--ss-font-label) !important;
	font-size: 13px !important;
	line-height: 1.3 !important;
	letter-spacing: .16em !important;
	text-transform: uppercase !important;
	font-weight: 400 !important;
	color: var(--ss-mist);
}
.ss-label::before {
	content: "";
	flex: 0 0 auto;
	width: 8px;
	height: 9px;
	background: var(--ss-signal);
	clip-path: polygon(50% 5%, 94.4% 27.5%, 94.4% 72.5%, 50% 95%, 5.6% 72.5%, 5.6% 27.5%);
}
.ss-label.is-dark { color: var(--ss-steel) !important; }
.ss-label.is-center { justify-content: center; }

.ss-c-mist { color: var(--ss-mist) !important; }
.ss-c-fog { color: var(--ss-fog) !important; }
.ss-c-signal { color: var(--ss-signal) !important; }

/* Überschriften */
.ss-h-xl .fusion-title-heading,
.ss-h-xl h2, .ss-h-xl h1 {
	font-family: var(--ss-font-head) !important;
	font-size: clamp(44px, 5.4vw, 80px) !important;
	line-height: .95 !important;
	letter-spacing: 0 !important;
	margin: 0 !important;
	color: #fff !important;
	text-transform: none !important;
	font-weight: 400 !important;
}
.ss-h-l .fusion-title-heading,
.ss-h-l h2 {
	font-family: var(--ss-font-head) !important;
	font-size: clamp(32px, 3.2vw, 46px) !important;
	line-height: 1.02 !important;
	letter-spacing: 0 !important;
	margin: 0 !important;
	color: var(--ss-ink) !important;
	text-transform: none !important;
	font-weight: 400 !important;
}
.ss-dark .ss-h-l .fusion-title-heading { color: #fff !important; }

.ss-lead {
	margin: 22px 0 0 !important;
	max-width: 460px;
	font-family: var(--ss-font-body);
	font-size: 18px !important;
	font-weight: 300;
	line-height: 1.6 !important;
	color: var(--ss-fog);
}

/* Signal-Button: dunkler Block, schräge Kante, gelbe Pfeil-Kachel */
.ss-btn-wrap { margin: 34px 0 0 !important; }
.ss-btn {
	position: relative;
	display: inline-flex;
	align-items: center;
	height: 40px;
	margin-right: 60px;
	padding: 0 4px 0 18px;
	background: var(--ss-ink);
	color: #fff !important;
	border-radius: 6px 0 0 6px;
	font-family: var(--ss-font-label) !important;
	font-size: 13px !important;
	letter-spacing: .16em;
	text-transform: uppercase;
	text-decoration: none !important;
	transition: background-color .3s ease;
}
.ss-btn::before {
	content: "";
	position: absolute;
	top: 0;
	left: calc(100% - 1px);
	width: 26px;
	height: 40px;
	background: inherit;
	clip-path: path('M0 0 L21.5 0 Q26 0 23.75 3.9 L5.15 36.1 Q2.9 40 0 40 Z');
}
.ss-btn::after {
	content: "";
	position: absolute;
	top: 0;
	left: calc(100% + 11.9px);
	width: 48px;
	height: 40px;
	background: var(--ss-signal) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 18 18' fill='none' stroke='%231d2330' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 9h11M10 5l4 4-4 4'/%3E%3C/svg%3E") no-repeat right 11px center / 16px 16px;
	clip-path: path('M27 0 L42 0 Q48 0 48 6 L48 34 Q48 40 42 40 L4 40 Q0 40 2 36.5 L21.1 3.5 Q23.1 0 27 0 Z');
	transition: background-position .35s cubic-bezier(.2, .7, .2, 1);
}
.ss-btn:hover { background: var(--ss-slate); }
.ss-btn:hover::after { background-position: right 8px center; }
.ss-btn:focus-visible { outline: 2px solid var(--ss-signal); outline-offset: 3px; }
.ss-btn--light { background: #fff; color: var(--ss-ink) !important; }
.ss-btn--light:hover { background: var(--ss-haze); }

/* Glas-Karte */
.fusion-body .fusion-layout-column.ss-glass > .fusion-column-wrapper {
	padding: 12px 32px 16px !important;
	border-radius: 8px !important;
	background: rgba(29, 35, 48, .42) !important;
	-webkit-backdrop-filter: blur(22px) saturate(140%) !important;
	backdrop-filter: blur(22px) saturate(140%) !important;
	box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .14) !important;
}

/* ---------- 2. Footer ---------- */

.fusion-tb-footer {
	position: relative;
	background: var(--ss-night) url('/wp-content/uploads/2026/11/sendesignal-hero-welle.webp') center / cover no-repeat fixed;
	color: var(--ss-paper);
}
.fusion-tb-footer::before {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(180deg, rgba(17, 23, 32, .15) 0%, rgba(17, 23, 32, .35) 100%);
	pointer-events: none;
}
@supports (-webkit-touch-callout: none) {
	.fusion-tb-footer { background-attachment: scroll; }
}
.fusion-tb-footer .fusion-fullwidth { position: relative; z-index: 1; }
.fusion-tb-footer .fusion-fullwidth > .fusion-builder-row {
	max-width: var(--ss-max) !important;
	margin: 0 auto !important;
	padding: 0 var(--ss-gutter);
	box-sizing: border-box;
	width: 100%;
}

.ss-footer-cta > .fusion-builder-row {
	padding-top: clamp(120px, 11vw, 180px) !important;
	padding-bottom: clamp(90px, 8vw, 130px) !important;
	column-gap: 80px;
	row-gap: 56px;
	flex-wrap: wrap;
	align-items: flex-end;
}
.ss-footer-cta .ss-footer-cta-text { flex: 1 1 480px !important; width: auto !important; min-width: 0; }
.ss-footer-cta .ss-footer-card { flex: 0 1 420px !important; width: auto !important; min-width: 0; }
.ss-footer-cta p { color: inherit; }

/* Kontaktseite: kein doppelter Kontaktblock */
body.page-id-1543 .ss-footer-cta { display: none !important; }

.ss-glass-row { padding: 20px 0; }
.ss-glass-row + .ss-glass-row { border-top: 1px solid rgba(255, 255, 255, .12); }
.ss-glass-row p {
	margin: 0 !important;
	font-family: var(--ss-font-body);
	font-size: 17px;
	font-weight: 300;
	line-height: 1.5;
	color: #fff;
}
.ss-glass-row .ss-meta {
	margin: 0 0 6px !important;
	font-family: var(--ss-font-label) !important;
	font-size: 12px;
	letter-spacing: .16em;
	text-transform: uppercase;
	color: var(--ss-grey);
}
.ss-glass-row .ss-phone {
	font-family: var(--ss-font-head) !important;
	font-size: 30px;
	line-height: 1.1;
}
.ss-glass-row .ss-phone a { color: var(--ss-signal) !important; text-decoration: none; }
.ss-glass-row .ss-small { margin-top: 4px !important; font-size: 15px; color: var(--ss-fog); }

.ss-footer-bar {
	background: rgba(17, 23, 32, .78) !important;
	box-shadow: inset 0 1px 0 rgba(205, 213, 225, .1);
}
.ss-footer-bar-inner {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	gap: 16px;
	padding: 26px 0;
	font-family: var(--ss-font-label);
	font-size: 11px;
	letter-spacing: .16em;
	text-transform: uppercase;
	color: var(--ss-grey);
}
.ss-footer-bar-inner nav { display: flex; flex-wrap: wrap; gap: 20px; }
.ss-footer-bar-inner a { color: var(--ss-fog) !important; text-decoration: none; }
.ss-footer-bar-inner a:hover { color: var(--ss-signal) !important; }
.ss-footer-bar .fusion-text { margin: 0 !important; }

/* ---------- 3. Startseite ---------- */

/* Grundgerüst der Sektionen */
.fusion-fullwidth.ss-sec,
.ss-sec {
	margin-left: 0 !important;
	margin-right: 0 !important;
	width: 100% !important;
	max-width: none !important;
	position: relative !important;
	z-index: 1 !important;
	font-family: var(--ss-font-body);
	font-weight: 300;
	color: var(--ss-ink);
}
.fusion-fullwidth.ss-sec > .fusion-builder-row.fusion-row,
.ss-sec > .fusion-builder-row {
	max-width: var(--ss-max) !important;
	margin: 0 auto !important;
	padding-left: max(var(--ss-gutter), calc((100% - var(--ss-max)) / 2 + var(--ss-gutter))) !important;
	padding-right: max(var(--ss-gutter), calc((100% - var(--ss-max)) / 2 + var(--ss-gutter))) !important;
	box-sizing: border-box;
	width: 100% !important;
}
.ss-sec .fusion-text { margin: 0 !important; }
.ss-sec .fusion-text p:last-child { margin-bottom: 0; }
.ss-sec .fusion-layout-column { margin-bottom: 0 !important; }
.ss-transparent { background: transparent !important; }
.ss-white { background: #fff !important; }
.ss-cloud { background: var(--ss-cloud) !important; }
.ss-label.is-light { color: #fff !important; }
.ss-label.is-small { font-size: 12px !important; margin-bottom: 12px !important; }
.ss-c-steel { color: var(--ss-steel) !important; }
.ss-shadow { text-shadow: 0 1px 12px rgba(17, 23, 32, .5); }
.ss-h-l.is-light .fusion-title-heading { color: #fff !important; }
.ss-intro {
	margin: 20px 0 0 !important;
	max-width: 620px;
	font-size: 17px;
	line-height: 1.6;
	color: var(--ss-fog);
}
.ss-side-text {
	margin: 0 !important;
	font-size: 17px;
	line-height: 1.6;
	color: #3a4356;
}
.ss-side-text.is-light { color: #fff; }

/* Startseite: Avada-Abstände neutralisieren */
.home #main,
body:has(.ss-sec) #main { padding-left: 0 !important; padding-right: 0 !important; padding-top: 0 !important; padding-bottom: 0 !important; background: transparent; }
body:has(.ss-sec) #main > .fusion-row { max-width: none !important; padding: 0 !important; }
.home .fusion-page-title-bar { display: none; }

/* Rahmen-Hintergrund (fest, schrumpft beim Scrollen) */
.ss-frame-bg {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	height: 100vh;
	max-height: 1400px;
	z-index: 0;
	box-sizing: border-box;
	padding: var(--ss-fr-p, var(--ss-frame));
	background: #fff;
	pointer-events: none;
}
.ss-frame-inner {
	position: relative;
	width: 100%;
	height: 100%;
	overflow: hidden;
	border-radius: var(--ss-fr-r, var(--ss-radius));
	background: var(--ss-ink);
}
.ss-frame-inner img {
	position: absolute;
	inset: 0;
	width: 100% !important;
	height: 100% !important;
	max-width: none !important;
	object-fit: cover;
}
body:has(.ss-frame-bg) #wrapper,
body:has(.ss-frame-bg) #main,
body:has(.ss-frame-bg) .fusion-row,
body:has(.ss-frame-bg) .post-content { background: transparent !important; }
body:has(.ss-frame-bg) #main { position: relative; }

/* Hero */
.ss-hero > .fusion-builder-row { padding-top: 140px !important; padding-bottom: 60px !important; }
.ss-hero .ss-hero-col > .fusion-column-wrapper {
	min-height: 700px;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	text-align: center;
}
.ss-hero-text { width: 100%; display: flex; flex-direction: column; align-items: center; }
.ss-hero-logo {
	line-height: 0;
	opacity: var(--ss-lo, 1);
	transform: translateY(var(--ss-ly, 0px));
}
.ss-hero-logo svg { overflow: visible; width: 440px; max-width: 80vw; height: auto; }
.ss-drift { animation: ss-drift 14s ease-in-out infinite alternate; }
@keyframes ss-drift { 0% { transform: translateX(-5px); } 100% { transform: translateX(5px); } }
.ss-hero-logo .dz { fill: #fff; animation: ss-hb 2.8s linear infinite; }
@keyframes ss-hb {
	0% { fill: #fff; filter: drop-shadow(0 0 0 rgba(235, 239, 87, 0)); }
	3.5% { fill: #ebef57; filter: drop-shadow(0 0 4px rgba(235, 239, 87, .75)); }
	17% { fill: #f4f4f2; filter: drop-shadow(0 0 0 rgba(235, 239, 87, 0)); }
	21% { fill: #f4f4f2; }
	24.5% { fill: #ebef57; filter: drop-shadow(0 0 4px rgba(235, 239, 87, .75)); }
	42%, 100% { fill: #fff; filter: drop-shadow(0 0 0 rgba(235, 239, 87, 0)); }
}
.ss-hero-claim {
	margin-top: 72px;
	display: flex;
	flex-direction: column;
	align-items: center;
	opacity: var(--ss-q, 1);
	transform: translateY(var(--ss-qy, 0px));
}
.ss-hero-claim h1.ss-label { margin: 0 0 18px !important; }
.ss-claim {
	margin: 0 0 44px !important;
	font-family: var(--ss-font-head) !important;
	font-size: clamp(34px, 3.4vw, 50px) !important;
	line-height: 1.02 !important;
	color: #fff;
	text-shadow: 0 2px 30px rgba(17, 23, 32, .55);
}
.ss-apps { display: flex; flex-wrap: wrap; justify-content: center; gap: 36px; }
.ss-app {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 12px;
	text-decoration: none !important;
	opacity: var(--ss-ao, 1);
	transform: translateY(var(--ss-ay, 0px));
}
.ss-app-ico {
	width: 88px;
	height: 88px;
	display: flex;
	align-items: center;
	justify-content: center;
	background: #fff;
	border-radius: 10px;
	box-shadow: 0 12px 30px rgba(0, 0, 0, .28);
	color: var(--ss-ink);
	transition: box-shadow .4s ease, transform .4s ease;
}
.ss-app:hover .ss-app-ico { box-shadow: 0 0 22px rgba(147, 163, 189, .5), 0 12px 30px rgba(0, 0, 0, .28); }
.ss-app-label {
	font-family: var(--ss-font-label);
	font-size: 12px;
	letter-spacing: .16em;
	text-transform: uppercase;
	color: var(--ss-haze);
}

/* Strich-Icons zeichnen sich */
.ss-ico * { stroke-dasharray: 1; stroke-dashoffset: 1; transition: stroke-dashoffset 1.6s var(--ss-ease); }
.ss-ico.on *, .no-js .ss-ico * { stroke-dashoffset: 0; }

/* Sektionskopf */
.ss-sec-head { margin-bottom: 48px !important; }

/* Leistungen */
.ss-leistungen > .fusion-builder-row {
	padding-top: 40px !important;
	padding-bottom: clamp(110px, 10vw, 160px) !important;
	column-gap: 16px;
	justify-content: center;
}
.ss-leistungen .ss-sec-head { max-width: 1248px; }
.ss-leistungen .ss-ncard { width: 300px !important; flex: 0 0 300px !important; }
@media (max-width: 1380px) { .ss-leistungen .ss-ncard { margin-bottom: 16px !important; } }
@media (max-width: 680px) { .ss-leistungen .ss-ncard { width: 100% !important; flex: 1 1 100% !important; max-width: 300px; } }

.ss-ncard { position: relative; }
.ss-ncard > .fusion-column-wrapper,
.ss-nk {
	-webkit-mask: linear-gradient(#000 0 0), url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='84' height='72' viewBox='0 0 84 72'%3E%3Cpath d='M0 72 Q12.5 72 16.5 65.1 L43.1 18.9 Q47.1 12 55 12 L76 12 Q84 12 84 0 L84 72 Z' fill='black'/%3E%3C/svg%3E") right bottom / 84px 72px no-repeat;
	-webkit-mask-composite: xor;
	mask: linear-gradient(#000 0 0) exclude, url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='84' height='72' viewBox='0 0 84 72'%3E%3Cpath d='M0 72 Q12.5 72 16.5 65.1 L43.1 18.9 Q47.1 12 55 12 L76 12 Q84 12 84 0 L84 72 Z' fill='black'/%3E%3C/svg%3E") right bottom / 84px 72px no-repeat;
}
.ss-nk--s {
	-webkit-mask: linear-gradient(#000 0 0), url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='72' height='66' viewBox='0 0 72 66'%3E%3Cpath d='M0 66 Q6.4 66 8.4 62.5 L37 12.9 Q41 6 49 6 L66 6 Q72 6 72 0 L72 66 Z' fill='black'/%3E%3C/svg%3E") right bottom / 72px 66px no-repeat;
	-webkit-mask-composite: xor;
	mask: linear-gradient(#000 0 0) exclude, url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='72' height='66' viewBox='0 0 72 66'%3E%3Cpath d='M0 66 Q6.4 66 8.4 62.5 L37 12.9 Q41 6 49 6 L66 6 Q72 6 72 0 L72 66 Z' fill='black'/%3E%3C/svg%3E") right bottom / 72px 66px no-repeat;
}
.ss-ncard > .fusion-column-wrapper {
	min-height: 440px !important;
	box-sizing: border-box;
	padding: 32px 30px !important;
	background: rgba(29, 35, 48, .62) !important;
	-webkit-backdrop-filter: blur(22px) saturate(150%) !important;
	backdrop-filter: blur(22px) saturate(150%) !important;
	color: var(--ss-paper);
	border-radius: 6px !important;
	transition: box-shadow .35s ease;
}
.ss-ncard .fusion-text { height: 100%; display: flex; flex-direction: column; justify-content: space-between; flex: 1 1 auto; }
.ss-ncard .ss-ico { color: var(--ss-signal); width: 52px; height: 52px; }
.ss-ncard-text { padding: 0 8px 58px 0; }
.ss-ncard-title {
	margin: 0 !important;
	font-family: var(--ss-font-card) !important;
	font-size: 25px !important;
	line-height: 1.08 !important;
	letter-spacing: 0 !important;
	text-transform: none !important;
	color: var(--ss-paper) !important;
}
.ss-ncard p { margin: 12px 0 0 !important; font-size: 16px; line-height: 1.5; color: var(--ss-fog); }

/* Gelbe Pfeil-Kachel in der Kerbe */
.ss-ncard::after,
.ss-nk-tile {
	content: "";
	position: absolute;
	right: 0;
	bottom: 0;
	width: 60px;
	height: 50px;
	background: var(--ss-signal) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 18 18' fill='none' stroke='%231d2330' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 9h11M10 5l4 4-4 4'/%3E%3C/svg%3E") no-repeat right 14px center / 16px 16px;
	clip-path: path('M33 0 L54 0 Q60 0 60 6 L60 44 Q60 50 54 50 L5 50 Q0 50 2.5 45.7 L26.5 4.3 Q29 0 33 0 Z');
	transition: background-position .35s cubic-bezier(.2, .7, .2, 1);
	pointer-events: none;
	z-index: 2;
}
.ss-ncard:hover::after, .ss-nk-wrap:hover .ss-nk-tile { background-position: right 10px center; }
.ss-nk-wrap { position: relative; display: flex; }
.ss-nk-wrap > .ss-nk { flex: 1 1 auto; min-width: 0; }

/* Einblenden beim Scrollen */
.js-ss .ss-reveal { opacity: 0; transform: translateY(28px); transition: opacity .9s ease, transform .9s cubic-bezier(.2, .7, .2, 1); }
.js-ss .ss-reveal.is-in { opacity: 1; transform: none; }

/* Für wen */
.ss-fuerwen { background: var(--ss-cloud) !important; overflow: hidden; }
.ss-fuerwen::before,
.ss-fuerwen::after {
	content: "";
	position: absolute;
	border-radius: 50%;
	filter: blur(30px);
	pointer-events: none;
	z-index: 0;
	transform: translate3d(0, var(--ss-par, 0px), 0);
}
.ss-fuerwen::before {
	left: 80%; top: 20%;
	width: 950px; height: 950px; margin: -475px 0 0 -475px;
	background: radial-gradient(circle, rgba(221, 228, 238, .95) 0%, rgba(255, 255, 255, 0) 68%);
}
.ss-fuerwen::after {
	left: 15%; top: 70%;
	width: 950px; height: 950px; margin: -475px 0 0 -475px;
	background: radial-gradient(circle, rgba(201, 211, 224, .95) 0%, rgba(255, 255, 255, 0) 68%);
}
.ss-fuerwen > .fusion-builder-row {
	position: relative;
	z-index: 1;
	padding-top: clamp(96px, 9vw, 140px) !important;
	padding-bottom: clamp(96px, 9vw, 140px) !important;
	column-gap: 20px;
	row-gap: 20px;
}
.ss-fuerwen .ss-fwcard { flex: 1 1 320px !important; width: auto !important; min-width: 0; }
.ss-fwcard > .fusion-column-wrapper {
	height: 100%;
	box-sizing: border-box;
	padding: 32px 30px !important;
	border-radius: 8px !important;
	background: linear-gradient(160deg, #5a6a88 0%, var(--ss-steel) 50%, #2f3a50 100%) !important;
	box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .14), 0 24px 60px rgba(29, 35, 48, .22);
	transition: box-shadow .5s ease;
}
.ss-fwcard:hover > .fusion-column-wrapper { box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .22), 0 30px 70px rgba(29, 35, 48, .3); }
.ss-fwcard .fusion-text { display: flex; flex-direction: column; height: 100%; }
.ss-wipe {
	margin: 0 !important;
	font-family: var(--ss-font-card) !important;
	font-size: 26px !important;
	line-height: 1.08 !important;
	letter-spacing: 0 !important;
	text-transform: none !important;
	background-image: linear-gradient(90deg, #ebef57 0%, #ebef57 45%, #fff 55%, #fff 100%);
	background-size: 220% 100%;
	background-position: 100% 0;
	-webkit-background-clip: text;
	background-clip: text;
	color: transparent !important;
	-webkit-text-fill-color: transparent;
	transition: background-position .8s var(--ss-ease);
}
.ss-fwcard:hover .ss-wipe { background-position: 0 0; }
.ss-fw-text { margin: 12px 0 0 !important; font-size: 16px; line-height: 1.55; color: var(--ss-haze); }
.ss-dash { margin: 20px 0 0 !important; padding: 0 !important; list-style: none !important; }
.ss-dash li {
	display: flex;
	align-items: center;
	gap: 12px;
	padding: 5px 0;
	font-size: 15px;
	font-weight: 400;
	color: #fff;
}
.ss-dash li::before { content: ""; flex: 0 0 auto; width: 12px; height: 2px; background: var(--ss-signal); }
.ss-fw-btn { margin: auto 0 0 !important; padding-top: 28px; }

/* Wirkung – Scrollytelling */
.ss-wirkung { background: var(--ss-night) !important; color: var(--ss-paper); }
.fusion-fullwidth.ss-wirkung > .fusion-builder-row.fusion-row { max-width: none !important; padding: 0 !important; }
.ss-tl { position: relative; height: var(--ss-tl-h, 820px); }
.ss-tl-sticky {
	position: sticky;
	top: 0;
	height: 820px;
	box-sizing: border-box;
	padding: var(--ss-tl-p, 16px);
	background: var(--ss-cloud);
}
.ss-tl-frame { position: relative; height: 100%; overflow: hidden; border-radius: var(--ss-tl-r, 22px); }
.ss-tl-bg {
	position: absolute;
	inset: 0;
	width: 100% !important;
	height: 100% !important;
	max-width: none !important;
	object-fit: cover;
	transform: scaleX(-1);
}
.ss-tl-dim { position: absolute; inset: 0; background: var(--ss-night); opacity: var(--ss-tl-dim, 0); }
.ss-tl-grid {
	position: relative;
	max-width: var(--ss-max);
	height: 100%;
	margin: 0 auto;
	padding: 0 var(--ss-gutter);
	box-sizing: border-box;
	display: flex;
	flex-wrap: wrap;
	gap: 40px 64px;
	text-shadow: 0 1px 14px rgba(17, 23, 32, .35);
}
.ss-tl-head { flex: 1 1 360px; min-width: 0; padding-top: 140px; }
.ss-tl-h {
	margin: 0 !important;
	max-width: 440px;
	font-family: var(--ss-font-head) !important;
	font-size: clamp(32px, 3.2vw, 46px) !important;
	line-height: 1.02 !important;
	letter-spacing: 0 !important;
	text-transform: none !important;
	color: #fff !important;
}
.ss-tl-track { flex: 1 1 520px; min-width: 0; position: relative; height: 760px; }
.ss-tl-line { position: absolute; left: 0; top: 150px; width: 1px; height: 450px; background: rgba(255, 255, 255, .16); }
.ss-tl-fill {
	position: absolute;
	left: 0;
	top: var(--ss-tl-ft, 150px);
	width: 1px;
	height: var(--ss-tl-fh, 450px);
	background: linear-gradient(0deg, rgba(147, 163, 189, .35), var(--ss-mist));
}
.ss-tl-list { list-style: none !important; margin: 0 !important; padding: 0 !important; }
.ss-tl-item {
	position: absolute;
	left: 44px;
	right: 0;
	top: calc(586px - var(--i) * 150px);
	max-width: 520px;
	opacity: .32;
	transition: opacity .5s ease;
}
.ss-tl-item.is-on, .no-tl .ss-tl-item { opacity: 1; }
.ss-tl-dot {
	position: absolute;
	left: -47px;
	top: 11px;
	width: 7px;
	height: 7px;
	border-radius: 50%;
	background: rgba(255, 255, 255, .25);
	transition: background .5s ease;
}
.ss-tl-item.is-on .ss-tl-dot { background: var(--ss-mist); }
.ss-tl-row { margin: 0 !important; display: flex; align-items: baseline; gap: 14px; }
.ss-tl-num {
	font-family: var(--ss-font-label);
	font-size: 12px;
	letter-spacing: .16em;
	color: #7d889b;
	transition: color .5s ease;
}
.ss-tl-item.is-on .ss-tl-num { color: var(--ss-signal); }
.ss-tl-title { font-family: var(--ss-font-head); font-size: 26px; line-height: 1.05; color: #fff; }
.ss-tl-text { margin: 8px 0 0 34px !important; font-size: 16px; line-height: 1.5; color: var(--ss-fog); }
.ss-tl-hex {
	position: absolute;
	left: -9px;
	top: var(--ss-tl-hy, 140px);
	width: 18px;
	height: 20px;
	background: var(--ss-signal);
	clip-path: polygon(50% 5%, 94.4% 27.5%, 94.4% 72.5%, 50% 95%, 5.6% 72.5%, 5.6% 27.5%);
	filter: drop-shadow(0 0 6px rgba(235, 239, 87, .55));
	transform: scale(var(--ss-tl-hs, 2.1));
	transform-origin: 9px 10px;
}

@media (max-width: 900px) {
	.ss-tl { height: auto !important; }
	.ss-tl-sticky { position: relative; height: auto; padding: 0; }
	.ss-tl-frame { border-radius: 0; }
	.ss-tl-dim { opacity: .45; }
	.ss-tl-grid { padding-top: 96px; padding-bottom: 96px; }
	.ss-tl-head { padding-top: 0; flex-basis: 100%; }
	.ss-tl-track { height: auto; flex-basis: 100%; padding-left: 0; }
	.ss-tl-line, .ss-tl-fill, .ss-tl-hex { display: none; }
	.ss-tl-list { display: flex; flex-direction: column-reverse; gap: 28px; border-left: 1px solid rgba(255, 255, 255, .16); }
	.ss-tl-item { position: relative; top: auto; left: auto; padding-left: 28px; opacity: 1; }
	.ss-tl-dot { left: -4px; background: var(--ss-mist); }
	.ss-tl-num { color: var(--ss-signal); }
}

/* Projekt-Slider */
.ss-projekt > .fusion-builder-row {
	padding-top: clamp(96px, 9vw, 140px) !important;
	padding-bottom: clamp(96px, 9vw, 140px) !important;
	column-gap: 64px;
	align-items: flex-end;
}
.ss-split-main { flex: 1 1 520px !important; width: auto !important; max-width: 760px; min-width: 0; margin-bottom: 48px !important; }
.ss-split-side { flex: 0 1 440px !important; width: auto !important; min-width: 0; margin-bottom: 48px !important; }
.ss-split-side > .fusion-column-wrapper { justify-content: flex-end !important; }
.ss-pj-col, .ss-stats-col, .ss-kt-col { width: 100% !important; flex: 1 1 100% !important; }
.ss-pj-stage {
	position: relative;
	height: clamp(440px, 46vw, 660px);
	border-radius: 6px;
	overflow: hidden;
	background: var(--ss-ink);
}
.ss-pj-slide {
	position: absolute;
	inset: 0;
	margin: 0 !important;
	opacity: 0;
	transition: opacity 1.1s ease;
}
.ss-pj-slide.is-active { opacity: 1; z-index: 1; }
.ss-pj-img {
	position: absolute;
	inset: 0;
	width: 100% !important;
	height: 100% !important;
	max-width: none !important;
	object-fit: cover;
	transform: scale(1);
	transition: transform 7s linear;
}
.ss-pj-slide.is-active.is-run .ss-pj-img { transform: scale(1.06); }
.ss-pj-ph {
	position: absolute;
	inset: 0;
	display: flex;
	align-items: flex-start;
	justify-content: flex-end;
	padding: 28px;
	box-sizing: border-box;
	background: linear-gradient(160deg, var(--ss-slate) 0%, var(--ss-ink) 55%, var(--ss-steel) 100%);
	font-family: var(--ss-font-label);
	font-size: 11px;
	letter-spacing: .16em;
	text-transform: uppercase;
	color: var(--ss-mist);
}
.ss-pj-cap {
	position: absolute;
	left: clamp(16px, 3vw, 40px);
	bottom: clamp(16px, 3vw, 40px);
	width: min(460px, calc(100% - 32px));
}
.ss-pj-card {
	box-sizing: border-box;
	padding: 28px 30px 30px;
	background: rgba(29, 35, 48, .58);
	-webkit-backdrop-filter: blur(22px) saturate(150%);
	backdrop-filter: blur(22px) saturate(150%);
	border-radius: 8px;
	color: #fff;
}
.ss-pj-title { margin: 0 !important; font-family: var(--ss-font-head); font-size: clamp(28px, 2.6vw, 38px); line-height: 1.02; color: #fff; }
.ss-pj-text { margin: 12px 0 0 !important; padding-right: 40px; font-size: 16px; line-height: 1.5; color: var(--ss-fog); }
.ss-pj-foot { display: flex; flex-wrap: wrap; gap: 24px 56px; align-items: flex-end; margin-top: 8px; }
.ss-pj-tabs { flex: 1 1 520px; min-width: 0; display: flex; gap: 16px; }
.ss-pj-tab {
	flex: 1 1 0;
	min-width: 0;
	padding: 14px 0 0;
	border: 0;
	background: none;
	cursor: pointer;
	text-align: left;
	font-family: var(--ss-font-label);
	font-size: 12px;
	letter-spacing: .16em;
	text-transform: uppercase;
	color: var(--ss-grey-dark);
}
.ss-pj-tab.is-active { color: var(--ss-ink); }
.ss-pj-tab:focus-visible { outline: 2px solid var(--ss-ink); outline-offset: 4px; }
.ss-pj-bar { display: block; height: 2px; margin-bottom: 12px; background: rgba(29, 35, 48, .12); overflow: hidden; }
.ss-pj-bar span { display: block; height: 100%; width: 0; background: var(--ss-ink); }
.ss-pj-tab.is-active .ss-pj-bar span { width: 100%; }
.ss-pj-tab.is-active.is-run .ss-pj-bar span { animation: ss-bar 6s linear; }
@keyframes ss-bar { from { width: 0; } to { width: 100%; } }
@media (max-width: 640px) { .ss-pj-tabs { gap: 8px; } .ss-pj-tab { font-size: 10px; letter-spacing: .08em; } }

/* Über / 20 Jahre */
.ss-ueber > .fusion-builder-row {
	padding-top: clamp(110px, 10vw, 160px) !important;
	padding-bottom: clamp(110px, 10vw, 160px) !important;
	column-gap: 72px;
	align-items: flex-end;
	color: #fff;
}
.ss-ueber .ss-split-main, .ss-ueber .ss-split-side { margin-bottom: 0 !important; }
body:not(:has(.ss-frame-bg)) .ss-dark-fallback { background: linear-gradient(160deg, #1d2330 0%, #161b26 55%, #2a3346 100%) !important; }
.ss-stats {
	display: flex;
	flex-wrap: wrap;
	gap: 32px 0;
	margin-top: clamp(64px, 6vw, 96px);
	padding-top: 40px;
	border-top: 1px solid rgba(255, 255, 255, .14);
}
.ss-stat { flex: 1 1 200px; min-width: 0; padding: 0 28px; border-left: 1px solid rgba(255, 255, 255, .14); }
.ss-stat:first-child { padding-left: 0; border-left: 0; }
.ss-stat:last-child { padding-right: 0; }
.ss-stat-l, .ss-logos-l {
	margin: 0 !important;
	font-family: var(--ss-font-label);
	font-size: 12px;
	letter-spacing: .16em;
	text-transform: uppercase;
	color: var(--ss-fog);
}
.ss-stat-n { margin: 8px 0 0 !important; font-family: var(--ss-font-head); font-size: clamp(44px, 4vw, 56px); line-height: 1; color: #fff; }
.ss-logos-l { margin: 64px 0 8px !important; }
.ss-logos { display: flex; flex-wrap: wrap; gap: 10px; }
.ss-logos span {
	flex: 1 1 140px;
	display: flex;
	align-items: center;
	justify-content: center;
	height: 56px;
	font-family: var(--ss-font-label);
	font-size: 11px;
	letter-spacing: .16em;
	text-transform: uppercase;
	color: #fff;
}
.ss-logos img { max-height: 40px; max-width: 150px; width: auto; filter: brightness(0) invert(1); opacity: .85; }
@media (max-width: 700px) {
	.ss-stat { flex-basis: 50%; padding: 0 16px; }
	.ss-stat:nth-child(odd) { padding-left: 0; border-left: 0; }
}

/* Klartext */
.ss-klartext > .fusion-builder-row {
	padding-top: clamp(96px, 9vw, 140px) !important;
	padding-bottom: clamp(96px, 9vw, 140px) !important;
	align-items: flex-end;
}
.ss-klartext .ss-split-main, .ss-klartext .ss-split-side { margin-bottom: 40px !important; }
.ss-align-end > .fusion-column-wrapper { align-items: flex-end !important; }
.ss-more-link { margin: 0 !important; text-align: right; }
.ss-more-link a {
	font-family: var(--ss-font-label);
	font-size: 12px;
	letter-spacing: .16em;
	text-transform: uppercase;
	color: var(--ss-steel) !important;
	text-decoration: underline;
}
.ss-kgrid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; }
@media (max-width: 1000px) { .ss-kgrid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 640px) { .ss-kgrid { grid-template-columns: minmax(0, 1fr); } }
.ss-kcard { text-decoration: none !important; color: var(--ss-ink) !important; }
.ss-kcard-inner {
	position: relative;
	display: flex;
	flex-direction: column;
	min-height: 470px;
	padding: 14px 14px 0;
	box-sizing: border-box;
	background: #fff;
	border-radius: 6px;
}
.ss-kcard-media { height: 230px; border-radius: 6px; overflow: hidden; background: var(--ss-fog); }
.ss-kcard-media img {
	width: 100% !important;
	height: 100% !important;
	object-fit: cover;
	display: block;
	filter: saturate(.7);
	transition: transform .9s cubic-bezier(.2, .7, .2, 1);
}
.ss-kcard:hover .ss-kcard-media img { transform: scale(1.04); }
.ss-kcard-body { padding: 24px 14px 0; }
.ss-kcard-title { margin: 0 !important; font-family: var(--ss-font-card); font-size: 25px; line-height: 1.12; color: var(--ss-ink); transition: color .3s ease; }
.ss-kcard:hover .ss-kcard-title { color: var(--ss-steel); }
.ss-kcard-meta {
	margin: 12px 0 0 !important;
	font-family: var(--ss-font-label);
	font-size: 12px;
	letter-spacing: .16em;
	text-transform: uppercase;
	color: var(--ss-grey-dark);
}
.ss-kcard-more {
	margin-top: auto;
	padding: 22px 14px 18px;
	font-family: var(--ss-font-label);
	font-size: 13px;
	letter-spacing: .16em;
	text-transform: uppercase;
	color: var(--ss-ink);
}

/* Mobile allgemein */
@media (max-width: 800px) {
	.ss-hero > .fusion-builder-row { padding-top: 110px !important; }
	.ss-hero .ss-hero-col > .fusion-column-wrapper { min-height: 560px; }
	.ss-hero-claim { margin-top: 48px; }
	.ss-apps { gap: 20px; }
	.ss-app-ico { width: 72px; height: 72px; }
	.ss-split-main, .ss-split-side { flex-basis: 100% !important; }
}

@media (prefers-reduced-motion: reduce) {
	.ss-drift, .ss-hero-logo .dz { animation: none; }
	.ss-ico * { transition: none; stroke-dashoffset: 0; }
	.js-ss .ss-reveal { opacity: 1; transform: none; transition: none; }
	.ss-pj-img, .ss-wipe { transition: none; }
}

/* =========================================================
   4. Startseite – Version mit Avada-Elementen
   Klassen: ss-hero-frame, ss-scrolly, ss-showcase, ss-about, ss-journal
   ========================================================= */

/* Titel-Elemente, die als Label/Fließtext dienen: Stil kommt von der Klasse */
.ss-sec .fusion-title { margin: 0 !important; }
.ss-sec .fusion-title.ss-label .fusion-title-heading,
.ss-sec .fusion-title.ss-claim .fusion-title-heading,
.ss-sec .fusion-title.ss-app-label .fusion-title-heading,
.ss-sec .fusion-title.ss-side-text .fusion-title-heading,
.ss-sec .fusion-title.ss-slide-kicker .fusion-title-heading,
.ss-sec .fusion-title.ss-slide-title .fusion-title-heading,
.ss-sec .fusion-title.ss-slide-text .fusion-title-heading,
.ss-sec .fusion-title.ss-logos-l .fusion-title-heading {
	font-family: inherit !important;
	font-size: inherit !important;
	font-weight: inherit !important;
	line-height: inherit !important;
	letter-spacing: inherit !important;
	text-transform: inherit !important;
	color: inherit !important;
	margin: 0 !important;
}
.ss-sec .fusion-title.ss-label .fusion-title-heading a,
.ss-sec .fusion-title.ss-app-label .fusion-title-heading a { color: inherit !important; text-decoration: none; }
.ss-sec .fusion-title.ss-label.is-center { justify-content: center; }

/* Hervorgehobener Titelteil: Farbe/Umbruch statt Unterstreichung */
.ss-sec .fusion-highlighted-text-wrapper svg { display: none !important; }
.ss-sec .fusion-title-highlight .fusion-highlighted-text { color: inherit; }
.ss-hl-signal .fusion-highlighted-text { color: var(--ss-signal) !important; }
.ss-hl-steel .fusion-highlighted-text { color: var(--ss-steel) !important; }
.ss-hl-mist .fusion-highlighted-text { color: var(--ss-mist) !important; }
.ss-hl-break .fusion-highlighted-text-wrapper { display: block; }
.ss-sec .fusion-title-highlight .fusion-title-heading { text-transform: none !important; }

/* Abschnitte auf dem festen Wellenbild */
.ss-on-image { background-color: var(--ss-ink) !important; }

/* ---------- Hero – Rahmen ---------- */
/* Rahmen als Überlagerung statt Außenabstand: der Hero behält beim Scrollen seine Breite,
   dadurch verschiebt sich nichts im Layout (vorher sprang/blinkte z. B. das Kachelraster). */
.fusion-fullwidth.ss-sec.ss-hero-frame {
	position: relative;
	margin: 0 !important;
	width: 100% !important;
	border-radius: 0;
	overflow: hidden;
}
/* Inhalt im Hero wie früher 16px vom Rahmen eingerückt (der Rahmen ist jetzt eine Überlagerung) */
.fusion-fullwidth.ss-sec.ss-hero-frame > .fusion-builder-row.fusion-row {
	padding-left: max(calc(var(--ss-gutter) + 16px), calc((100% - var(--ss-max)) / 2 + var(--ss-gutter))) !important;
	padding-right: max(calc(var(--ss-gutter) + 16px), calc((100% - var(--ss-max)) / 2 + var(--ss-gutter))) !important;
}
.fusion-fullwidth.ss-sec.ss-hero-frame::after {
	content: "";
	position: absolute;
	inset: 0;
	z-index: 60;
	pointer-events: none;
	/* weiße Ränder oben/links/rechts + gerundete Innenecken oben, Breite/Radius aus dem Scroll-Skript */
	background:
		linear-gradient(#fff, #fff) left top / 100% var(--ss-frame, 16px) no-repeat,
		linear-gradient(#fff, #fff) left top / var(--ss-frame, 16px) 100% no-repeat,
		linear-gradient(#fff, #fff) right top / var(--ss-frame, 16px) 100% no-repeat,
		radial-gradient(circle at 100% 100%, transparent calc(var(--ss-fr-r, 22px) - .5px), #fff var(--ss-fr-r, 22px))
			var(--ss-frame, 16px) var(--ss-frame, 16px) / var(--ss-fr-r, 22px) var(--ss-fr-r, 22px) no-repeat,
		radial-gradient(circle at 0 100%, transparent calc(var(--ss-fr-r, 22px) - .5px), #fff var(--ss-fr-r, 22px))
			calc(100% - var(--ss-frame, 16px)) var(--ss-frame, 16px) / var(--ss-fr-r, 22px) var(--ss-fr-r, 22px) no-repeat;
}
.fusion-fullwidth.ss-hero-frame > .fusion-builder-row.fusion-row {
	min-height: 884px;
	padding-top: 140px !important;
	padding-bottom: 60px !important;
	align-content: center;
	justify-content: center;
	column-gap: 36px;
	box-sizing: border-box;
}
.ss-hero-main > .fusion-column-wrapper { align-items: center; text-align: center; }
.ss-hero-logo {
	display: block !important;
	line-height: 0;
	margin: 0 auto 72px !important;
	opacity: var(--ss-lo, 1);
	transform: translateY(var(--ss-ly, 0px));
}
.ss-hero-logo img, .ss-hero-logo svg { width: 440px !important; max-width: 80vw; height: auto !important; overflow: visible; }
.ss-hero-logo svg { animation: ss-drift 14s ease-in-out infinite alternate; }
.ss-hero-kicker,
.ss-hero-frame .ss-claim,
.ss-hero-frame .ss-app {
	opacity: var(--ss-q, 1);
	transform: translateY(var(--ss-qy, 0px));
}
.ss-hero-frame .ss-hero-kicker { margin-bottom: 18px !important; }
.ss-hero-frame .ss-claim {
	margin-bottom: 44px !important;
	font-family: var(--ss-font-head);
	font-size: clamp(34px, 3.4vw, 50px);
	line-height: 1.02;
	color: #fff;
	text-shadow: 0 2px 30px rgba(17, 23, 32, .55);
}
.fusion-layout-column.ss-app {
	width: auto !important;
	flex: 0 0 auto !important;
	opacity: var(--ss-ao, 1);
	transform: translateY(var(--ss-ay, 0px));
}
.ss-app > .fusion-column-wrapper { align-items: center; gap: 12px; }
.ss-app .fusion-image-element { margin: 0 !important; }
.ss-app-ico {
	width: 88px;
	height: 88px;
	display: flex !important;
	align-items: center;
	justify-content: center;
	background: #fff;
	border-radius: 10px;
	box-shadow: 0 12px 30px rgba(0, 0, 0, .28);
	transition: box-shadow .4s ease;
	max-width: none !important;
}
.ss-app-ico a { display: flex; align-items: center; justify-content: center; width: 100%; height: 100%; }
.ss-app-ico img, .ss-app-ico svg { width: 42px !important; height: 42px !important; color: var(--ss-ink); }
.ss-app:hover .ss-app-ico { box-shadow: 0 0 22px rgba(147, 163, 189, .5), 0 12px 30px rgba(0, 0, 0, .28); }
.ss-app-label {
	font-family: var(--ss-font-label);
	font-size: 12px;
	letter-spacing: .16em;
	text-transform: uppercase;
	color: var(--ss-haze);
}

/* ---------- Wirkung – Scrollytelling ---------- */
.ss-scrolly { background: var(--ss-night) !important; color: var(--ss-paper); }
.fusion-fullwidth.ss-scrolly > .fusion-builder-row.fusion-row {
	max-width: none !important;
	padding: 0 !important;
	height: var(--ss-tl-h, auto);
	align-items: flex-start;
}
.fusion-layout-column.ss-scrolly-frame {
	position: sticky !important;
	top: 0;
	height: 820px;
	box-sizing: border-box;
	padding: var(--ss-tl-p, 16px) !important;
	background: var(--ss-cloud);
}
.ss-scrolly-frame > .fusion-column-wrapper {
	position: relative;
	height: 100%;
	overflow: hidden;
	border-radius: var(--ss-tl-r, 22px) !important;
	background-size: cover !important;
	background-position: center !important;
}
.ss-scrolly-frame > .fusion-column-wrapper::before {
	content: "";
	position: absolute;
	inset: 0;
	background: var(--ss-night);
	opacity: var(--ss-tl-dim, 0);
	pointer-events: none;
}
.ss-scrolly-grid {
	position: relative;
	z-index: 1;
	max-width: var(--ss-max) !important;
	width: 100% !important;
	height: 100%;
	margin: 0 auto !important;
	padding: 0 var(--ss-gutter) !important;
	box-sizing: border-box;
	flex-wrap: wrap;
	gap: 40px 64px;
	text-shadow: 0 1px 14px rgba(17, 23, 32, .35);
}
.fusion-layout-column.ss-scrolly-head { flex: 1 1 360px !important; width: auto !important; min-width: 0; padding-top: 140px; }
.ss-scrolly-h .fusion-title-heading { max-width: 440px; }
.fusion-layout-column.ss-scrolly-track { flex: 1 1 520px !important; width: auto !important; min-width: 0; position: relative; height: 760px; }

/* Linie, Füllung, Sechseck */
.ss-scrolly-track > .fusion-column-wrapper::before,
.ss-scrolly-track > .fusion-column-wrapper::after {
	content: "";
	position: absolute;
	left: 0;
	width: 1px;
}
.ss-scrolly-track > .fusion-column-wrapper::before { top: 150px; height: 450px; background: rgba(255, 255, 255, .16); }
.ss-scrolly-track > .fusion-column-wrapper::after {
	top: var(--ss-tl-ft, 150px);
	height: var(--ss-tl-fh, 450px);
	background: linear-gradient(0deg, rgba(147, 163, 189, .35), var(--ss-mist));
}
.ss-scrolly-track::after {
	content: "";
	position: absolute;
	left: -9px;
	top: var(--ss-tl-hy, 140px);
	width: 18px;
	height: 20px;
	background: var(--ss-signal);
	clip-path: polygon(50% 5%, 94.4% 27.5%, 94.4% 72.5%, 50% 95%, 5.6% 72.5%, 5.6% 27.5%);
	filter: drop-shadow(0 0 6px rgba(235, 239, 87, .55));
	transform: scale(var(--ss-tl-hs, 2.1));
	transform-origin: 9px 10px;
	z-index: 2;
}

/* Schritte (Content-Boxen) */
.ss-steps.content-boxes {
	display: flex !important;
	flex-direction: column-reverse;
	margin: 0 !important;
	padding: 136px 0 0 !important;
	counter-reset: ss-step;
}
.ss-steps .content-box-column {
	position: relative;
	width: 100% !important;
	max-width: 564px;
	height: 150px;
	margin: 0 !important;
	padding: 0 0 0 44px !important;
	float: none !important;
	counter-increment: ss-step;
	opacity: .32;
	transition: opacity .5s ease;
	background: none !important;
	border: 0 !important;
}
.ss-steps .content-box-column.is-on { opacity: 1; }
.ss-steps .content-box-column::before {
	content: "";
	position: absolute;
	left: -3px;
	top: 11px;
	width: 7px;
	height: 7px;
	border-radius: 50%;
	background: rgba(255, 255, 255, .25);
	transition: background .5s ease;
}
.ss-steps .content-box-column.is-on::before { background: var(--ss-mist); }
.ss-steps .content-box-wrapper { padding: 0 !important; text-align: left !important; background: none !important; }
.ss-steps .heading { margin: 0 !important; padding: 0 !important; }
.ss-steps .content-box-heading {
	display: flex;
	align-items: baseline;
	gap: 14px;
	margin: 0 !important;
	padding: 0 !important;
	font-family: var(--ss-font-head) !important;
	font-size: 26px !important;
	line-height: 1.05 !important;
	letter-spacing: 0 !important;
	text-transform: none !important;
	color: #fff !important;
}
.ss-steps .content-box-heading::before {
	content: counter(ss-step, decimal-leading-zero);
	font-family: var(--ss-font-label);
	font-size: 12px;
	letter-spacing: .16em;
	color: var(--ss-grey-dark);
	transition: color .5s ease;
}
.ss-steps .content-box-column.is-on .content-box-heading::before { color: var(--ss-signal); }
.ss-steps .content-container {
	margin: 8px 0 0 34px !important;
	font-family: var(--ss-font-body);
	font-size: 16px;
	font-weight: 300;
	line-height: 1.5;
	color: var(--ss-fog) !important;
}
.ss-steps .fusion-clearfix { display: none; }

@media (max-width: 900px) {
	.fusion-fullwidth.ss-scrolly > .fusion-builder-row.fusion-row { height: auto !important; }
	.fusion-layout-column.ss-scrolly-frame { position: relative !important; height: auto; padding: 0 !important; }
	.ss-scrolly-frame > .fusion-column-wrapper { border-radius: 0 !important; }
	.ss-scrolly-frame > .fusion-column-wrapper::before { opacity: .45; }
	.ss-scrolly-grid { padding-top: 96px !important; padding-bottom: 96px !important; }
	.fusion-layout-column.ss-scrolly-head { padding-top: 0; flex-basis: 100% !important; }
	.fusion-layout-column.ss-scrolly-track { height: auto; flex-basis: 100% !important; }
	.ss-scrolly-track::after,
	.ss-scrolly-track > .fusion-column-wrapper::after { display: none; }
	.ss-scrolly-track > .fusion-column-wrapper::before { top: 0; height: 100%; }
	.ss-steps.content-boxes { padding: 0 !important; gap: 28px; }
	.ss-steps .content-box-column { height: auto; opacity: 1; padding-left: 28px !important; }
	.ss-steps .content-box-column::before { background: var(--ss-mist); }
	.ss-steps .content-box-heading::before { color: var(--ss-signal); }
}

/* ---------- Projekt – VÄN Graphics (Slider aus Spalten) ---------- */
.fusion-fullwidth.ss-showcase > .fusion-builder-row.fusion-row {
	padding-top: clamp(96px, 9vw, 140px) !important;
	padding-bottom: clamp(96px, 9vw, 140px) !important;
	column-gap: 64px;
	align-items: flex-end;
}
.ss-showcase .ss-split-side .ss-side-text,
.ss-about .ss-split-side .ss-side-text {
	font-family: var(--ss-font-body);
	font-size: 17px;
	font-weight: 300;
	line-height: 1.6;
	color: #3a4356;
}
.ss-side-text.is-light { color: #fff !important; }
.fusion-layout-column.ss-showcase-stage { width: 100% !important; flex: 1 1 100% !important; }
.ss-slides.fusion-builder-row {
	position: relative;
	display: block !important;
	width: 100% !important;
	max-width: none !important;
	margin: 0 !important;
	height: clamp(440px, 46vw, 660px);
	border-radius: 6px;
	overflow: hidden;
	background: var(--ss-ink);
}
.fusion-layout-column.ss-slide {
	--pad: clamp(16px, 3vw, 40px);
	position: absolute !important;
	inset: 0;
	width: 100% !important;
	margin: 0 !important;
	opacity: 0;
	transition: opacity 1.1s ease;
}
.fusion-layout-column.ss-slide:first-child,
.fusion-layout-column.ss-slide.is-active { opacity: 1; z-index: 1; }
.js-ss .fusion-layout-column.ss-slide:first-child:not(.is-active) { opacity: 0; z-index: 0; }
.ss-slide > .fusion-column-wrapper {
	position: relative;
	height: 100%;
	justify-content: flex-end !important;
	padding: var(--pad) !important;
	box-sizing: border-box;
	background: none !important;
}
.ss-slide > .fusion-column-wrapper::before {
	content: "";
	position: absolute;
	inset: 0;
	z-index: 0;
	background-image: var(--ss-slide-bg, var(--awb-bg-image));
	background-color: var(--awb-bg-color, var(--ss-ink));
	background-size: cover;
	background-position: center;
	transform: scale(1);
	transition: transform 7s linear;
}
.ss-slide.is-active.is-run > .fusion-column-wrapper::before { transform: scale(1.06); }
.ss-slide > .fusion-column-wrapper::after {
	content: "";
	position: absolute;
	z-index: 3;
	left: calc(var(--pad) + min(460px, 100% - 2 * var(--pad)) - 60px);
	bottom: var(--pad);
	width: 60px;
	height: 50px;
	background: var(--ss-signal) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 18 18' fill='none' stroke='%231d2330' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 9h11M10 5l4 4-4 4'/%3E%3C/svg%3E") no-repeat right 14px center / 16px 16px;
	clip-path: path('M33 0 L54 0 Q60 0 60 6 L60 44 Q60 50 54 50 L5 50 Q0 50 2.5 45.7 L26.5 4.3 Q29 0 33 0 Z');
}
.ss-slide-kicker, .ss-slide-title, .ss-slide-text {
	position: relative;
	z-index: 1;
	width: min(460px, 100%);
	box-sizing: border-box;
	background: rgba(29, 35, 48, .58);
	-webkit-backdrop-filter: blur(22px) saturate(150%);
	backdrop-filter: blur(22px) saturate(150%);
	color: #fff;
}
.ss-sec .ss-slide-kicker.ss-label { margin: 0 !important; padding: 28px 30px 12px; border-radius: 8px 8px 0 0; color: var(--ss-mist) !important; }
.ss-slide-title {
	padding: 0 30px;
	font-family: var(--ss-font-head);
	font-size: clamp(28px, 2.6vw, 38px);
	line-height: 1.02;
}
.ss-slide-text {
	padding: 12px 70px 30px 30px;
	border-radius: 0 0 8px 8px;
	font-family: var(--ss-font-body);
	font-size: 16px;
	font-weight: 300;
	line-height: 1.5;
	color: var(--ss-fog) !important;
	-webkit-mask: linear-gradient(#000 0 0), url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='72' height='66' viewBox='0 0 72 66'%3E%3Cpath d='M0 66 Q6.4 66 8.4 62.5 L37 12.9 Q41 6 49 6 L66 6 Q72 6 72 0 L72 66 Z' fill='black'/%3E%3C/svg%3E") right bottom / 72px 66px no-repeat;
	-webkit-mask-composite: xor;
	mask: linear-gradient(#000 0 0) exclude, url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='72' height='66' viewBox='0 0 72 66'%3E%3Cpath d='M0 66 Q6.4 66 8.4 62.5 L37 12.9 Q41 6 49 6 L66 6 Q72 6 72 0 L72 66 Z' fill='black'/%3E%3C/svg%3E") right bottom / 72px 66px no-repeat;
}

.fusion-layout-column.ss-showcase-foot { width: 100% !important; flex: 1 1 100% !important; }
.ss-showcase-foot > .fusion-column-wrapper {
	flex-direction: row !important;
	flex-wrap: wrap;
	align-items: flex-end;
	gap: 24px 56px;
	margin-top: 8px;
}
.ss-showcase-foot .ss-pj-tabs { flex: 1 1 520px; }

/* Avada-Button im Signal-Stil */
a.fusion-button.ss-btn {
	position: relative;
	display: inline-flex !important;
	align-items: center;
	height: 40px;
	margin-right: 60px;
	padding: 0 4px 0 18px !important;
	border: 0 !important;
	border-radius: 6px 0 0 6px !important;
	background: var(--ss-ink) !important;
	color: #fff !important;
	box-shadow: none !important;
	overflow: visible !important;
	font-family: var(--ss-font-label) !important;
	font-size: 13px !important;
	line-height: 1 !important;
	letter-spacing: .16em !important;
	text-transform: uppercase !important;
	transition: background-color .3s ease;
}
a.fusion-button.ss-btn .fusion-button-text {
	font: inherit !important;
	color: inherit !important;
	letter-spacing: inherit !important;
	text-transform: inherit !important;
	line-height: inherit !important;
}
a.fusion-button.ss-btn:hover { background: var(--ss-slate) !important; }
a.fusion-button.ss-btn.ss-btn--light { background: #fff !important; color: var(--ss-ink) !important; }

/* Textlink-Button */
a.fusion-button.ss-textlink {
	padding: 0 !important;
	border: 0 !important;
	background: none !important;
	box-shadow: none !important;
	color: var(--ss-steel) !important;
	font-family: var(--ss-font-label) !important;
	font-size: 12px !important;
	letter-spacing: .16em !important;
	text-transform: uppercase !important;
	text-decoration: underline !important;
}
a.fusion-button.ss-textlink .fusion-button-text { color: inherit !important; font: inherit !important; letter-spacing: inherit !important; text-transform: inherit !important; }
a.fusion-button.ss-textlink:hover { color: var(--ss-ink) !important; }

/* ---------- Über – 20 Jahre ---------- */
.fusion-fullwidth.ss-about > .fusion-builder-row.fusion-row {
	padding-top: clamp(110px, 10vw, 160px) !important;
	padding-bottom: clamp(110px, 10vw, 160px) !important;
	column-gap: 72px;
	align-items: flex-end;
	color: #fff;
}
.ss-about .ss-split-main, .ss-about .ss-split-side { margin-bottom: 0 !important; }
.fusion-layout-column.ss-stats-col, .fusion-layout-column.ss-logos-col { width: 100% !important; flex: 1 1 100% !important; }
.ss-stats.counters-box {
	display: flex !important;
	flex-wrap: wrap;
	gap: 32px 0;
	margin: clamp(64px, 6vw, 96px) 0 0 !important;
	padding-top: 40px;
	border-top: 1px solid rgba(255, 255, 255, .14);
}
.ss-stats .fusion-counter-box {
	flex: 1 1 200px;
	width: auto !important;
	min-width: 0;
	float: none !important;
	margin: 0 !important;
	padding: 0 28px !important;
	border-left: 1px solid rgba(255, 255, 255, .14);
}
.ss-stats .fusion-counter-box:first-child { padding-left: 0 !important; border-left: 0; }
.ss-stats .fusion-counter-box:last-child { padding-right: 0 !important; }
.ss-stats .counter-box-container {
	display: flex;
	flex-direction: column-reverse;
	align-items: flex-start;
	text-align: left !important;
	border: 0 !important;
	padding: 0 !important;
}
.ss-stats .content-box-counter {
	margin: 8px 0 0 !important;
	font-family: var(--ss-font-head) !important;
	font-size: clamp(44px, 4vw, 56px) !important;
	line-height: 1 !important;
	color: #fff !important;
}
.ss-stats .content-box-counter .unit { font-size: inherit !important; color: inherit !important; }
.ss-stats .counter-box-content {
	margin: 0 !important;
	padding: 0 !important;
	font-family: var(--ss-font-label) !important;
	font-size: 12px !important;
	line-height: 1.3 !important;
	letter-spacing: .16em;
	text-transform: uppercase;
	color: var(--ss-fog) !important;
}
.ss-sec .ss-logos-l {
	margin: 64px 0 8px !important;
	font-family: var(--ss-font-label);
	font-size: 12px;
	letter-spacing: .16em;
	text-transform: uppercase;
	color: var(--ss-fog);
}
.ss-logos .swiper-slide, .ss-logos .awb-swiper-slide { display: flex; align-items: center; justify-content: center; height: 56px; }
.ss-logos img { max-height: 40px !important; width: auto !important; max-width: 150px !important; filter: brightness(0) invert(1); opacity: .85; }
@media (max-width: 700px) {
	.ss-stats .fusion-counter-box { flex-basis: 50%; padding: 0 16px !important; }
	.ss-stats .fusion-counter-box:nth-child(odd) { padding-left: 0 !important; border-left: 0; }
}

/* ---------- Klartext (Blog-Element) ---------- */
.fusion-fullwidth.ss-journal > .fusion-builder-row.fusion-row {
	padding-top: clamp(96px, 9vw, 140px) !important;
	padding-bottom: clamp(96px, 9vw, 140px) !important;
	align-items: flex-end;
}
.ss-journal .ss-split-main, .ss-journal .ss-split-side { margin-bottom: 40px !important; }
.fusion-layout-column.ss-journal-col { width: 100% !important; flex: 1 1 100% !important; }
.ss-journal-grid .fusion-post-grid { position: relative; }
.ss-journal-grid .fusion-post-wrapper {
	display: flex;
	flex-direction: column;
	min-height: 470px;
	height: 100%;
	padding: 14px 14px 0 !important;
	box-sizing: border-box;
	border: 0 !important;
	border-radius: 6px;
	background: #fff !important;
	-webkit-mask: linear-gradient(#000 0 0), url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='84' height='72' viewBox='0 0 84 72'%3E%3Cpath d='M0 72 Q12.5 72 16.5 65.1 L43.1 18.9 Q47.1 12 55 12 L76 12 Q84 12 84 0 L84 72 Z' fill='black'/%3E%3C/svg%3E") right bottom / 84px 72px no-repeat;
	-webkit-mask-composite: xor;
	mask: linear-gradient(#000 0 0) exclude, url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='84' height='72' viewBox='0 0 84 72'%3E%3Cpath d='M0 72 Q12.5 72 16.5 65.1 L43.1 18.9 Q47.1 12 55 12 L76 12 Q84 12 84 0 L84 72 Z' fill='black'/%3E%3C/svg%3E") right bottom / 84px 72px no-repeat;
}
.ss-journal-grid .fusion-post-grid::after {
	content: "";
	position: absolute;
	right: var(--ss-gap-half, 10px);
	bottom: var(--ss-gap-bottom, 20px);
	width: 60px;
	height: 50px;
	background: var(--ss-signal) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 18 18' fill='none' stroke='%231d2330' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 9h11M10 5l4 4-4 4'/%3E%3C/svg%3E") no-repeat right 14px center / 16px 16px;
	clip-path: path('M33 0 L54 0 Q60 0 60 6 L60 44 Q60 50 54 50 L5 50 Q0 50 2.5 45.7 L26.5 4.3 Q29 0 33 0 Z');
	transition: background-position .35s cubic-bezier(.2, .7, .2, 1);
	pointer-events: none;
	z-index: 2;
}
.ss-journal-grid .fusion-post-grid:hover::after { background-position: right 10px center; }
.ss-journal-grid .fusion-flexslider,
.ss-journal-grid .fusion-image-wrapper {
	height: 230px;
	margin: 0 !important;
	border: 0 !important;
	border-radius: 6px;
	overflow: hidden;
	background: var(--ss-fog);
}
.ss-journal-grid .fusion-flexslider .slides, .ss-journal-grid .fusion-flexslider li { height: 100%; }
.ss-journal-grid .fusion-image-wrapper img {
	width: 100% !important;
	height: 100% !important;
	object-fit: cover;
	filter: saturate(.7);
	transition: transform .9s cubic-bezier(.2, .7, .2, 1);
}
.ss-journal-grid .fusion-post-grid:hover .fusion-image-wrapper img { transform: scale(1.04); }
.ss-journal-grid .fusion-rollover { display: none !important; }
.ss-journal-grid .fusion-post-content-wrapper {
	display: flex;
	flex-direction: column;
	flex: 1 1 auto;
	padding: 24px 14px 0 !important;
}
.ss-journal-grid .fusion-post-content { flex: 1 1 auto; }
.ss-journal-grid .blog-shortcode-post-title {
	margin: 0 !important;
	font-family: var(--ss-font-card) !important;
	font-size: 25px !important;
	line-height: 1.12 !important;
	letter-spacing: 0 !important;
	text-transform: none !important;
}
.ss-journal-grid .blog-shortcode-post-title a { color: var(--ss-ink) !important; transition: color .3s ease; }
.ss-journal-grid .fusion-post-grid:hover .blog-shortcode-post-title a { color: var(--ss-steel) !important; }
.ss-journal-grid .fusion-single-line-meta {
	margin: 12px 0 0 !important;
	font-family: var(--ss-font-label) !important;
	font-size: 12px !important;
	letter-spacing: .16em;
	text-transform: uppercase;
	color: var(--ss-grey-dark) !important;
}
.ss-journal-grid .fusion-single-line-meta a { color: inherit !important; }
.ss-journal-grid .fusion-inline-sep { margin: 0 6px; }
.ss-journal-grid .fusion-single-line-meta .fusion-inline-sep:last-child { display: none; }
.ss-journal-grid .fusion-content-sep, .ss-journal-grid .fusion-post-content-container { display: none !important; }
.ss-journal-grid .fusion-meta-info {
	margin-top: auto;
	padding: 22px 0 18px !important;
	border: 0 !important;
}
.ss-journal-grid .fusion-meta-info .fusion-alignleft { display: none; }
.ss-journal-grid .fusion-meta-info .fusion-alignright { float: none !important; }
.ss-journal-grid .fusion-read-more {
	font-family: var(--ss-font-label) !important;
	font-size: 13px !important;
	letter-spacing: .16em;
	text-transform: uppercase;
	color: var(--ss-ink) !important;
}
.ss-journal-grid .fusion-read-more::after { display: none !important; }

/* Label-Sechseck bei Titel-Elementen am Überschriften-Tag */
.fusion-title.ss-label::before { display: none !important; }
.fusion-title.ss-label .fusion-title-heading { display: flex !important; align-items: center; gap: 10px; }
.fusion-title.ss-label.is-center .fusion-title-heading { justify-content: center; }
.fusion-title.ss-label .fusion-title-heading::before {
	content: "";
	flex: 0 0 auto;
	width: 8px;
	height: 9px;
	background: var(--ss-signal);
	clip-path: polygon(50% 5%, 94.4% 27.5%, 94.4% 72.5%, 50% 95%, 5.6% 72.5%, 5.6% 27.5%);
}
.fusion-title.ss-label { display: block !important; }

.ss-steps .content-box-wrapper, .ss-steps .content-container, .ss-steps .heading { text-align: left !important; }
.ss-scrolly-head > .fusion-column-wrapper { justify-content: flex-start !important; }

/* Alte Child-Theme-Regeln (margin-top:auto) in den neuen Sektionen neutralisieren */
.ss-sec .fusion-content-layout-column { margin-top: 0 !important; }
.ss-sec .fusion-image-element { margin-top: 0 !important; }
.ss-sec .ss-ncard .fusion-content-layout-column,
.ss-sec .ss-fwcard .fusion-content-layout-column { margin-top: 0 !important; }

.ss-sec .fusion-title-highlight .fusion-highlighted-text-wrapper { display: inline; }
.ss-sec .ss-hl-break .fusion-highlighted-text-wrapper { display: block; }
.ss-slides.fusion-builder-row, .fusion-layout-column.ss-slide, .ss-slide > .fusion-column-wrapper { overflow: hidden !important; }
.ss-logos img { width: 150px !important; height: 40px !important; max-width: 100% !important; object-fit: contain; }

/* Kopf nicht absolut (bewusst so eingestellt): Hero-Rahmen oben bündig, weniger Luft über dem Logo */
body:not(:has(.ss-header.fusion-absolute-container)) .fusion-fullwidth.ss-sec.ss-hero-frame {
	margin-top: 0 !important;
	border-top-left-radius: 0;
	border-top-right-radius: 0;
}
body:not(:has(.ss-header.fusion-absolute-container)) .fusion-fullwidth.ss-sec.ss-hero-frame::after {
	background:
		linear-gradient(#fff, #fff) left top / var(--ss-frame, 16px) 100% no-repeat,
		linear-gradient(#fff, #fff) right top / var(--ss-frame, 16px) 100% no-repeat;
}
body:not(:has(.ss-header.fusion-absolute-container)) .fusion-fullwidth.ss-hero-frame > .fusion-builder-row.fusion-row {
	padding-top: 60px !important;
	min-height: 820px;
}
@media (max-width: 800px) {
	body:not(:has(.ss-header.fusion-absolute-container)) .fusion-fullwidth.ss-hero-frame > .fusion-builder-row.fusion-row {
		padding-top: 48px !important;
		min-height: 560px;
	}
}

/* =========================================================
   5. Leistungsseiten (Vorlage: Markenentwicklung + Corporate Design)
   ========================================================= */

/* Titel-Elemente mit ss-Klasse erben Schrift/Farbe vom Element (außer Überschriften-Stilen) */
.ss-sec .fusion-title[class*="ss-"]:not(.ss-h-l):not(.ss-h-xl):not(.ss-scrolly-h) .fusion-title-heading {
	font-family: inherit !important;
	font-size: inherit !important;
	font-weight: inherit !important;
	line-height: inherit !important;
	letter-spacing: inherit !important;
	text-transform: inherit !important;
	color: inherit !important;
	margin: 0 !important;
}
.ss-intro.is-dark { color: #3a4356 !important; }
.ss-sec .fusion-title.ss-intro {
	margin: 20px 0 0 !important;
	max-width: 620px;
	font-family: var(--ss-font-body);
	font-size: 17px;
	font-weight: 300;
	line-height: 1.6;
	color: var(--ss-fog);
}
.ss-sec .fusion-title.ss-intro.is-dark { color: #3a4356; }

/* Karten-Texte */
.ss-card-title {
	font-family: var(--ss-font-card);
	font-size: 25px;
	line-height: 1.08;
	color: var(--ss-ink);
}
.ss-card-title.is-light { color: #fff; }
.ss-sec .fusion-title.ss-card-text {
	margin-top: 12px !important;
	font-family: var(--ss-font-body);
	font-size: 16px;
	font-weight: 300;
	line-height: 1.5;
	color: #3a4356;
}
.ss-card-text.is-light { color: var(--ss-fog) !important; }

/* Kerbe links unten (helle Karten) */
.ss-nkl {
	-webkit-mask: linear-gradient(#000 0 0), url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='84' height='72' viewBox='0 0 84 72'%3E%3Cpath d='M84 72 Q71.5 72 67.5 65.1 L40.9 18.9 Q36.9 12 29 12 L8 12 Q0 12 0 0 L0 72 Z' fill='black'/%3E%3C/svg%3E") left bottom / 84px 72px no-repeat;
	-webkit-mask-composite: xor;
	mask: linear-gradient(#000 0 0) exclude, url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='84' height='72' viewBox='0 0 84 72'%3E%3Cpath d='M84 72 Q71.5 72 67.5 65.1 L40.9 18.9 Q36.9 12 29 12 L8 12 Q0 12 0 0 L0 72 Z' fill='black'/%3E%3C/svg%3E") left bottom / 84px 72px no-repeat;
}

/* ---------- Unternavigation ---------- */
.fusion-fullwidth.ss-subnav {
	left: 0 !important;
	right: 0 !important;
	width: 100% !important;
	pointer-events: none;
}
.fusion-fullwidth.ss-subnav.fusion-absolute-container:not(.fusion-container-stuck) {
	top: calc(var(--ss-frame, 16px) + 88px) !important;
}
.ss-subnav .fusion-builder-row { justify-content: center; }
.ss-subnav .ss-subnav-col { width: auto !important; flex: 0 1 auto !important; pointer-events: auto; }
.ss-subnav-menu .awb-menu__main-ul {
	gap: 4px;
	padding: 5px !important;
	border-radius: 8px;
	background: rgba(29, 35, 48, .74);
	-webkit-backdrop-filter: blur(18px) saturate(150%);
	backdrop-filter: blur(18px) saturate(150%);
	box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .1);
}
.ss-subnav-menu .awb-menu__main-li { margin: 0 !important; }
.ss-subnav-menu .awb-menu__main-a {
	display: inline-flex !important;
	align-items: center;
	min-height: 38px;
	padding: 0 16px !important;
	border-radius: 4px;
	font-family: var(--ss-font-label) !important;
	font-size: 12px !important;
	letter-spacing: .16em !important;
	text-transform: uppercase;
	color: var(--ss-fog) !important;
	transition: background-color .3s ease, color .3s ease;
}
.ss-subnav-menu .awb-menu__main-a:hover { color: #fff !important; background: rgba(255, 255, 255, .08); }
.ss-subnav-menu .current-menu-item > .awb-menu__main-a,
.ss-subnav-menu .awb-menu__main-li.current_page_item > .awb-menu__main-a {
	background: #fff;
	color: var(--ss-ink) !important;
}
.ss-subnav-menu .awb-menu__main-background-default,
.ss-subnav-menu .awb-menu__main-background-active { display: none !important; }
@media (max-width: 800px) {
	.fusion-fullwidth.ss-subnav.fusion-absolute-container:not(.fusion-container-stuck) { top: calc(var(--ss-frame, 16px) + 70px) !important; }
	.ss-subnav .ss-subnav-col { max-width: 100%; }
	.ss-subnav-menu .awb-menu__main-ul { flex-wrap: nowrap !important; overflow-x: auto; scrollbar-width: none; }
	.ss-subnav-menu .awb-menu__main-a { white-space: nowrap; padding: 0 12px !important; }
}

/* ---------- Hero mit Wendekarte ---------- */
.fusion-fullwidth.ss-hero-frame.ss-lhero > .fusion-builder-row.fusion-row {
	min-height: 0;
	padding-top: 200px !important;
	padding-bottom: 0 !important;
	align-content: flex-start;
	flex-direction: column;
	align-items: center;
	flex-wrap: nowrap;
}
.ss-lhero .ss-lhero-head > .fusion-column-wrapper { align-items: center; text-align: center; }
.ss-lhero .ss-label { margin-bottom: 18px !important; }
.ss-lhero .ss-claim { opacity: 1 !important; transform: none !important; }
.fusion-layout-column.ss-flip {
	width: min(300px, 100%) !important;
	flex: 0 0 auto !important;
	height: 960px;
	margin: 0 auto !important;
}
.ss-flip > .fusion-column-wrapper { height: 100%; }
.ss-flip-card.fusion-builder-row {
	position: sticky !important;
	top: 296px;
	display: grid !important;
	width: 100% !important;
	margin: 0 !important;
	transform-style: preserve-3d;
	transform: perspective(1600px) rotateY(0deg);
	transition: transform 1s cubic-bezier(.45, .05, .2, 1);
}
.ss-flip:hover .ss-flip-card, .ss-flip-card.is-flipped { transform: perspective(1600px) rotateY(180deg); }
.fusion-layout-column.ss-flip-face {
	grid-area: 1 / 1;
	width: 100% !important;
	margin: 0 !important;
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
}
.ss-flip-face > .fusion-column-wrapper {
	min-height: 440px;
	box-sizing: border-box;
	justify-content: space-between !important;
	border-radius: 6px !important;
}
.ss-flip-front > .fusion-column-wrapper {
	padding: 32px 30px 90px !important;
	background: rgba(29, 35, 48, .84) !important;
	box-shadow: 0 30px 80px rgba(8, 12, 20, .35);
	-webkit-mask: linear-gradient(#000 0 0), url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='84' height='72' viewBox='0 0 84 72'%3E%3Cpath d='M0 72 Q12.5 72 16.5 65.1 L43.1 18.9 Q47.1 12 55 12 L76 12 Q84 12 84 0 L84 72 Z' fill='black'/%3E%3C/svg%3E") right bottom / 84px 72px no-repeat;
	-webkit-mask-composite: xor;
	mask: linear-gradient(#000 0 0) exclude, url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='84' height='72' viewBox='0 0 84 72'%3E%3Cpath d='M0 72 Q12.5 72 16.5 65.1 L43.1 18.9 Q47.1 12 55 12 L76 12 Q84 12 84 0 L84 72 Z' fill='black'/%3E%3C/svg%3E") right bottom / 84px 72px no-repeat;
}
.ss-flip-front .fusion-image-element { margin-bottom: auto !important; }
.ss-flip-front svg *, .ss-flip-front .ss-flip-ico svg * { stroke: var(--ss-signal) !important; }
.ss-flip-ico img, .ss-flip-ico svg, .ss-lcard-ico img, .ss-lcard-ico svg { width: 52px !important; height: 52px !important; }
.fusion-layout-column.ss-flip-back { transform: rotateY(180deg); }
.ss-flip-back > .fusion-column-wrapper {
	padding: 30px 30px 32px !important;
	background: #fff !important;
	color: var(--ss-ink);
	-webkit-mask: linear-gradient(#000 0 0), url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='84' height='72' viewBox='0 0 84 72'%3E%3Cpath d='M84 72 Q71.5 72 67.5 65.1 L40.9 18.9 Q36.9 12 29 12 L8 12 Q0 12 0 0 L0 72 Z' fill='black'/%3E%3C/svg%3E") left bottom / 84px 72px no-repeat;
	-webkit-mask-composite: xor;
	mask: linear-gradient(#000 0 0) exclude, url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='84' height='72' viewBox='0 0 84 72'%3E%3Cpath d='M84 72 Q71.5 72 67.5 65.1 L40.9 18.9 Q36.9 12 29 12 L8 12 Q0 12 0 0 L0 72 Z' fill='black'/%3E%3C/svg%3E") left bottom / 84px 72px no-repeat;
}
.ss-flip-back .ss-label { justify-content: flex-start; }

/* Nummerierte Liste (Avada Checkliste) */
.ss-scope.fusion-checklist { margin: 0 0 62px !important; padding: 0 !important; counter-reset: ss-scope; }
.ss-scope .fusion-li-item {
	display: flex !important;
	align-items: baseline;
	gap: 14px;
	margin: 0 !important;
	padding: 8px 0 !important;
	border-top: 1px solid rgba(29, 35, 48, .1) !important;
	border-bottom: 0 !important;
	counter-increment: ss-scope;
}
.ss-scope .icon-wrapper {
	position: static !important;
	width: auto !important;
	height: auto !important;
	margin: 0 !important;
	background: none !important;
	font-size: 0 !important;
	line-height: 1 !important;
}
.ss-scope .icon-wrapper::before {
	content: counter(ss-scope, decimal-leading-zero);
	font-family: var(--ss-font-label);
	font-size: 11px;
	letter-spacing: .16em;
	color: var(--ss-grey-dark);
}
.ss-scope .fusion-li-item-content {
	margin: 0 !important;
	font-family: var(--ss-font-head);
	font-size: 18px;
	line-height: 1.3;
	color: var(--ss-ink);
}

/* ---------- Leistungsumfang: 6 Karten ---------- */
.fusion-fullwidth.ss-lscope > .fusion-builder-row.fusion-row {
	padding-top: 20px !important;
	padding-bottom: clamp(110px, 10vw, 160px) !important;
	column-gap: 24px;
	row-gap: 24px;
	justify-content: center;
}
.fusion-layout-column.ss-head-center { max-width: 948px; margin: 0 auto 24px !important; }
.fusion-layout-column.ss-lcard { width: 300px !important; flex: 0 0 300px !important; }
.ss-lcard > .fusion-column-wrapper {
	min-height: 440px;
	box-sizing: border-box;
	padding: 32px 30px 90px !important;
	justify-content: space-between !important;
	background: #fff !important;
	border-radius: 6px !important;
	-webkit-mask: linear-gradient(#000 0 0), url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='84' height='72' viewBox='0 0 84 72'%3E%3Cpath d='M84 72 Q71.5 72 67.5 65.1 L40.9 18.9 Q36.9 12 29 12 L8 12 Q0 12 0 0 L0 72 Z' fill='black'/%3E%3C/svg%3E") left bottom / 84px 72px no-repeat;
	-webkit-mask-composite: xor;
	mask: linear-gradient(#000 0 0) exclude, url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='84' height='72' viewBox='0 0 84 72'%3E%3Cpath d='M84 72 Q71.5 72 67.5 65.1 L40.9 18.9 Q36.9 12 29 12 L8 12 Q0 12 0 0 L0 72 Z' fill='black'/%3E%3C/svg%3E") left bottom / 84px 72px no-repeat;
}
.ss-lcard .fusion-image-element { margin-bottom: auto !important; }
.ss-lcard svg * { stroke: var(--ss-steel) !important; }
@media (max-width: 660px) { .fusion-layout-column.ss-lcard { width: 100% !important; flex: 1 1 100% !important; max-width: 300px; } }

/* ---------- Ehrlicher Rat ---------- */
.fusion-fullwidth.ss-rat > .fusion-builder-row.fusion-row {
	padding-top: clamp(96px, 9vw, 140px) !important;
	padding-bottom: clamp(96px, 9vw, 140px) !important;
}
.ss-rat .ss-sec-head { max-width: 760px; }
.fusion-layout-column.ss-rat-row { width: 100% !important; flex: 1 1 100% !important; margin-bottom: 16px !important; }
.ss-rat-grid.fusion-builder-row {
	display: grid !important;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) 320px;
	gap: 14px;
	width: 100% !important;
	margin: 0 !important;
	padding: 14px;
	box-sizing: border-box;
	background: #fff;
	border-radius: 8px;
}
.ss-rat-grid > .fusion-layout-column { width: auto !important; margin: 0 !important; min-width: 0; }
.ss-rat-problem > .fusion-column-wrapper { padding: 28px 20px 20px !important; }
.ss-sec .fusion-title.ss-meta-label {
	margin: 0 0 22px !important;
	font-family: var(--ss-font-label);
	font-size: 12px;
	line-height: 1.2;
	letter-spacing: .16em;
	text-transform: uppercase;
	color: var(--ss-grey-dark);
}
.ss-meta-label.is-light { color: #fff; }
.ss-arrow .fusion-title-heading { display: flex !important; align-items: center; gap: 10px; }
.ss-arrow .fusion-title-heading::before {
	content: "";
	flex: 0 0 auto;
	width: 16px;
	height: 12px;
	background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='12' viewBox='0 0 18 14' fill='none' stroke='%23ebef57' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M1 7h14M11 2l5 5-5 5'/%3E%3C/svg%3E") no-repeat center / contain;
}
.ss-quote-mark img, .ss-quote-mark svg { width: 46px !important; height: 34px !important; }
.ss-sec .fusion-title.ss-rat-quote {
	margin-top: 24px !important;
	font-family: var(--ss-font-card);
	font-size: clamp(25px, 2.2vw, 30px);
	line-height: 1.1;
	color: var(--ss-ink);
}
.ss-rat-quote .fusion-title-heading::after { content: "\201C"; color: var(--ss-steel); }
.ss-sec .fusion-title.ss-rat-desc {
	margin-top: 16px !important;
	max-width: 440px;
	font-family: var(--ss-font-body);
	font-size: 16px;
	font-weight: 300;
	line-height: 1.6;
	color: #3a4356;
}
.ss-rat-solution > .fusion-column-wrapper {
	height: 100%;
	box-sizing: border-box;
	padding: 28px 28px 30px !important;
	border-radius: 6px !important;
	background: var(--ss-ink) !important;
}
.ss-sec .fusion-title.ss-rat-sol-text {
	font-family: var(--ss-font-body);
	font-size: 17px;
	font-weight: 400;
	line-height: 1.6;
	color: var(--ss-haze);
}
.fusion-layout-column.ss-rat-result { position: relative; max-width: 360px; }
.ss-rat-result > .fusion-column-wrapper {
	position: relative;
	aspect-ratio: 4 / 5;
	height: auto !important;
	box-sizing: border-box;
	border-radius: 6px !important;
	overflow: hidden;
	background-size: cover !important;
	background-position: center !important;
	-webkit-mask: linear-gradient(#000 0 0), url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='84' height='72' viewBox='0 0 84 72'%3E%3Cpath d='M0 72 Q12.5 72 16.5 65.1 L43.1 18.9 Q47.1 12 55 12 L76 12 Q84 12 84 0 L84 72 Z' fill='black'/%3E%3C/svg%3E") right bottom / 84px 72px no-repeat;
	-webkit-mask-composite: xor;
	mask: linear-gradient(#000 0 0) exclude, url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='84' height='72' viewBox='0 0 84 72'%3E%3Cpath d='M0 72 Q12.5 72 16.5 65.1 L43.1 18.9 Q47.1 12 55 12 L76 12 Q84 12 84 0 L84 72 Z' fill='black'/%3E%3C/svg%3E") right bottom / 84px 72px no-repeat;
}
.fusion-layout-column.ss-rat-result::after {
	content: "";
	position: absolute;
	right: 0;
	bottom: 0;
	width: 60px;
	height: 50px;
	z-index: 3;
	background: var(--ss-signal) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 18 18' fill='none' stroke='%231d2330' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 9h11M10 5l4 4-4 4'/%3E%3C/svg%3E") no-repeat right 14px center / 16px 16px;
	clip-path: path('M33 0 L54 0 Q60 0 60 6 L60 44 Q60 50 54 50 L5 50 Q0 50 2.5 45.7 L26.5 4.3 Q29 0 33 0 Z');
	transition: background-position .35s cubic-bezier(.2, .7, .2, 1);
	pointer-events: none;
}
.ss-rat-result:hover::after { background-position: right 10px center; }
.ss-sec .fusion-title.ss-tag {
	position: absolute !important;
	top: 18px;
	left: 14px;
	z-index: 2;
	padding: 8px 12px;
	border-radius: 4px;
	background: rgba(29, 35, 48, .62);
	-webkit-backdrop-filter: blur(14px);
	backdrop-filter: blur(14px);
	font-family: var(--ss-font-label);
	font-size: 12px;
	line-height: 1.2;
	letter-spacing: .16em;
	text-transform: uppercase;
	color: #fff;
}
.ss-is-placeholder > .fusion-column-wrapper::before {
	content: "Platzhalter";
	position: absolute;
	top: 14px;
	right: 14px;
	z-index: 2;
	padding: 6px 10px;
	border-radius: 4px !important;
	background: rgba(255, 255, 255, .85);
	font-family: var(--ss-font-label);
	font-size: 11px;
	letter-spacing: .16em;
	text-transform: uppercase;
	color: var(--ss-steel);
}
.ss-sec .fusion-title.ss-rat-caption {
	position: absolute !important;
	left: 14px;
	right: 14px;
	bottom: 14px;
	z-index: 2;
	min-height: 25%;
	display: flex !important;
	flex-direction: column;
	justify-content: center;
	box-sizing: border-box;
	padding: 20px 84px 20px 22px;
	border-radius: 6px;
	background: rgba(29, 35, 48, .62);
	-webkit-backdrop-filter: blur(18px) saturate(150%);
	backdrop-filter: blur(18px) saturate(150%);
	font-family: var(--ss-font-card);
	font-size: 22px;
	line-height: 1.12;
	color: #fff;
	-webkit-mask: linear-gradient(#000 0 0), url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='72' height='66' viewBox='0 0 72 66'%3E%3Cpath d='M0 66 Q6.4 66 8.4 62.5 L37 12.9 Q41 6 49 6 L66 6 Q72 6 72 0 L72 66 Z' fill='black'/%3E%3C/svg%3E") right bottom / 72px 66px no-repeat;
	-webkit-mask-composite: xor;
	mask: linear-gradient(#000 0 0) exclude, url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='72' height='66' viewBox='0 0 72 66'%3E%3Cpath d='M0 66 Q6.4 66 8.4 62.5 L37 12.9 Q41 6 49 6 L66 6 Q72 6 72 0 L72 66 Z' fill='black'/%3E%3C/svg%3E") right bottom / 72px 66px no-repeat;
}
.ss-rat-result .fusion-column-anchor { z-index: 4; }
@media (max-width: 1000px) {
	.ss-rat-grid.fusion-builder-row { grid-template-columns: minmax(0, 1fr); }
}

.fusion-layout-column.ss-rat-cta { width: 100% !important; flex: 1 1 100% !important; }
.ss-rat-cta > .fusion-column-wrapper {
	flex-direction: row !important;
	flex-wrap: wrap;
	align-items: center !important;
	gap: 16px 28px;
	margin-top: 24px;
}
.ss-sec .fusion-title.ss-rat-cta-text { font-family: var(--ss-font-body); font-size: 17px; font-weight: 300; color: #3a4356; }
.ss-rat-cta .fusion-column-wrapper > div:has(.ss-push-right) { margin-left: auto; }

/* ---------- Print + Digital ---------- */
.fusion-fullwidth.ss-print > .fusion-builder-row.fusion-row {
	padding-top: clamp(96px, 9vw, 140px) !important;
	padding-bottom: clamp(96px, 9vw, 140px) !important;
	column-gap: 20px;
	row-gap: 20px;
	color: #fff;
}
.ss-print .ss-sec-head { max-width: 760px; margin-bottom: 28px !important; }
.fusion-layout-column.ss-pbild { flex: 1 1 calc(50% - 10px) !important; width: auto !important; min-width: 0; }
.ss-pbild > .fusion-column-wrapper {
	position: relative;
	height: 560px;
	box-sizing: border-box;
	padding: clamp(16px, 3vw, 44px) !important;
	justify-content: flex-end !important;
	align-items: center;
	border-radius: 6px !important;
	overflow: hidden;
	background-size: auto 112% !important;
	background-position: center var(--ss-py, 50%) !important;
}
.ss-panel-kicker, .ss-panel-title, .ss-panel-text {
	width: min(520px, 100%);
	box-sizing: border-box;
	background: rgba(255, 255, 255, .62);
	-webkit-backdrop-filter: blur(22px) saturate(150%);
	backdrop-filter: blur(22px) saturate(150%);
	color: #0f1e22;
}
.ss-sec .fusion-title.ss-panel-kicker {
	margin: 0 !important;
	padding: 30px 32px 14px;
	border-radius: 6px 6px 0 0;
	font-size: 14px !important;
	color: var(--ss-steel) !important;
}
.ss-sec .fusion-title.ss-panel-title {
	padding: 0 32px;
	font-family: var(--ss-font-head);
	font-size: clamp(28px, 2.8vw, 40px);
	line-height: 1.02;
}
.ss-sec .fusion-title.ss-panel-text {
	padding: 14px 32px 30px;
	border-radius: 0 0 6px 6px;
	font-family: var(--ss-font-body);
	font-size: 17px;
	font-weight: 300;
	line-height: 1.55;
	color: #33403f;
}
@media (max-width: 900px) { .fusion-layout-column.ss-pbild { flex-basis: 100% !important; } }

.fusion-layout-column.ss-band { width: 100% !important; flex: 1 1 100% !important; }
.ss-band > .fusion-column-wrapper {
	padding: 36px 40px !important;
	border-radius: 8px !important;
	background: rgba(29, 35, 48, .62) !important;
	-webkit-backdrop-filter: blur(22px) saturate(150%) !important;
	backdrop-filter: blur(22px) saturate(150%) !important;
	box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .1);
}
.ss-band-grid.fusion-builder-row {
	display: flex !important;
	flex-wrap: wrap;
	align-items: center;
	gap: 24px 48px;
	width: 100% !important;
	margin: 0 !important;
}
.ss-band-grid > .ss-band-num { width: auto !important; flex: 0 0 auto !important; }
.ss-band-grid > .ss-band-text { width: auto !important; flex: 1 1 420px !important; min-width: 0; }
.ss-band-counter.counters-box { margin: 0 !important; }
.ss-band-counter .fusion-counter-box { width: auto !important; float: none !important; padding: 0 !important; margin: 0 !important; }
.ss-band-counter .counter-box-container { border: 0 !important; padding: 0 !important; }
.ss-band-counter .content-box-counter {
	margin: 0 !important;
	font-family: var(--ss-font-head) !important;
	font-size: clamp(56px, 6vw, 88px) !important;
	line-height: .9 !important;
	color: #fff !important;
}
.ss-band-counter .unit { font-size: inherit !important; color: inherit !important; }
.ss-band-counter .counter-box-content { display: none; }
.ss-sec .fusion-title.ss-band-label {
	margin: 0 0 8px !important;
	font-family: var(--ss-font-label);
	font-size: 13px;
	letter-spacing: .16em;
	text-transform: uppercase;
	color: var(--ss-mist);
}
.ss-band-text .ss-intro { margin-top: 0 !important; max-width: 680px; }

/* ---------- Fragen und Antworten ---------- */
.fusion-fullwidth.ss-faqsec > .fusion-builder-row.fusion-row {
	padding-top: clamp(96px, 9vw, 140px) !important;
	padding-bottom: clamp(96px, 9vw, 140px) !important;
	column-gap: 72px;
	row-gap: 32px;
}
.fusion-layout-column.ss-faq-head { flex: 1 1 320px !important; width: auto !important; max-width: 420px; min-width: 0; }
.fusion-layout-column.ss-faq-list { flex: 2 1 560px !important; width: auto !important; min-width: 0; }
.ss-faq .fusion-panel {
	margin: 0 0 10px !important;
	border: 0 !important;
	border-radius: 6px;
	background: #fff !important;
	overflow: hidden;
	transition: background-color .3s ease;
}
.ss-faq .fusion-panel:hover,
.ss-faq .fusion-panel:has(.panel-collapse.in) { background: var(--ss-steel) !important; }
.ss-faq .panel-heading { padding: 0 !important; background: none !important; }
.ss-faq .panel-title a {
	display: flex !important;
	flex-direction: row-reverse;
	align-items: center;
	justify-content: space-between;
	gap: 24px;
	padding: 20px 16px 20px 28px !important;
}
.ss-faq .fusion-toggle-heading {
	font-family: var(--ss-font-card) !important;
	font-size: clamp(20px, 1.6vw, 22px) !important;
	line-height: 1.2 !important;
	letter-spacing: 0 !important;
	text-transform: none !important;
	color: var(--ss-ink) !important;
	transition: color .3s ease;
	margin: 0 !important;
}
.ss-faq .fusion-panel:hover .fusion-toggle-heading,
.ss-faq .fusion-panel:has(.panel-collapse.in) .fusion-toggle-heading { color: #fff !important; }
.ss-faq .fusion-toggle-icon-wrapper {
	flex: 0 0 auto;
	width: 40px !important;
	height: 40px !important;
	display: flex !important;
	align-items: center;
	justify-content: center;
	margin: 0 !important;
	background: none !important;
	border: 0 !important;
}
.ss-faq .fusion-toggle-icon-wrapper i { display: none !important; }
.ss-faq .fusion-toggle-icon-wrapper::before {
	content: "";
	width: 22px;
	height: 22px;
	background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='22' height='22' viewBox='0 0 22 22' fill='none' stroke='%23ebef57' stroke-width='6.8' stroke-linecap='round'%3E%3Cpath d='M11 3.5v15M3.5 11h15'/%3E%3C/svg%3E") no-repeat center / contain;
	transition: transform .4s cubic-bezier(.2, .7, .2, 1);
}
.ss-faq .panel-title a[aria-expanded="true"] .fusion-toggle-icon-wrapper::before { transform: rotate(135deg); }
.ss-faq .panel-body {
	margin: -4px 0 0 !important;
	padding: 0 80px 26px 28px !important;
	border: 0 !important;
	font-family: var(--ss-font-body) !important;
	font-size: 17px !important;
	font-weight: 300;
	line-height: 1.6 !important;
	color: #e4e9f1 !important;
}
@media (max-width: 640px) { .ss-faq .panel-body { padding: 0 24px 22px 20px !important; } .ss-faq .panel-title a { padding: 16px 10px 16px 20px !important; } }
.ss-sec .fusion-title.ss-card-title { font-family: var(--ss-font-card); font-size: 25px; line-height: 1.08; color: var(--ss-ink); }
.ss-sec .fusion-title.ss-card-title.is-light { color: #fff; }
.fusion-fullwidth.ss-sec.ss-hero-frame.ss-lhero { overflow: visible; }
.ss-flip-card.fusion-builder-row { grid-template-columns: minmax(0, 1fr); }
.fusion-layout-column.ss-flip-face { min-width: 0; }
.ss-lcard > .fusion-column-wrapper, .ss-flip-front > .fusion-column-wrapper { justify-content: flex-start !important; }
@media (max-width: 800px) {
	.ss-subnav .ss-subnav-col { width: 100% !important; flex: 1 1 100% !important; }
	.ss-subnav-menu, .ss-subnav-menu .awb-menu__main-ul { justify-content: flex-start !important; max-width: 100%; }
}
.fusion-fullwidth.ss-subnav > .fusion-builder-row.fusion-row { padding: 0 16px !important; box-sizing: border-box; }

/* ---------- Leistungen als Reiter ---------- */
.fusion-fullwidth.ss-pane.ss-pane-hidden { display: none !important; }
.ss-pane.ss-pane-in { animation: ss-pane-in .6s ease both; }
@keyframes ss-pane-in { from { opacity: 0; } to { opacity: 1; } }
.ss-subnav-menu .awb-menu__main-li.ss-active > .awb-menu__main-a {
	background: #fff !important;
	color: var(--ss-ink) !important;
}
.ss-subnav-menu .awb-menu__main-li:not(.ss-active) > .awb-menu__main-a { background: transparent; }
.ss-flip.ss-noflip:hover .ss-flip-card { transform: perspective(1600px) rotateY(0deg); }
.ss-flip.ss-noflip, .ss-flip.ss-noflip > .fusion-column-wrapper { height: auto; }
.ss-flip.ss-noflip .ss-flip-card.fusion-builder-row { position: relative !important; top: auto; }
.fusion-fullwidth.ss-hero-frame.ss-lhero:has(.ss-noflip) > .fusion-builder-row.fusion-row { padding-bottom: clamp(110px, 10vw, 160px) !important; }
@media (prefers-reduced-motion: reduce) { .ss-pane.ss-pane-in { animation: none; } }
/* Vor dem Skript nur den Standard-Bereich zeigen (Klasse ss-pane-default) */
.fusion-fullwidth.ss-pane:not(.ss-pane-default):not(.ss-pane-in) { display: none !important; }
.ss-subnav-menu .awb-menu__main-li.current-menu-item > .awb-menu__main-a,
.ss-subnav-menu .awb-menu__main-li.current_page_item > .awb-menu__main-a,
.ss-subnav-menu .awb-menu__main-li.ss-active > .awb-menu__main-a {
	background: #fff !important;
	color: var(--ss-ink) !important;
}
.ss-subnav-menu .awb-menu__main-li.current-menu-item > .awb-menu__main-a .menu-text { color: var(--ss-ink) !important; }

/* =========================================================
   6. Zielgruppenseiten (Vorlage: Für wen – Mittelstand)
   ========================================================= */

/* Hero: Text unten links, großes Linien-Icon in der Mitte */
.fusion-fullwidth.ss-hero-frame.ss-fwhero > .fusion-builder-row.fusion-row {
	min-height: 900px;
	padding-top: 200px !important;
	padding-bottom: 110px !important;
	align-content: flex-end;
	justify-content: flex-start;
}
.ss-fwhero .ss-fwhero-main > .fusion-column-wrapper { align-items: flex-start; justify-content: flex-end !important; position: static; }
.ss-fwhero .ss-fwhero-main { position: static !important; }
.ss-fwhero .fusion-image-element:has(.ss-hero-deco) {
	position: absolute !important;
	left: 50%;
	top: 44%;
	transform: translate(-50%, -50%);
	width: 150px;
	margin: 0 !important;
	pointer-events: none;
	z-index: 0;
}
.ss-hero-deco img, .ss-hero-deco svg { width: 150px !important; height: 150px !important; }
.ss-fwhero .fusion-title, .ss-fwhero .fusion-button { position: relative; z-index: 1; }
.ss-fwhero .ss-label { margin-bottom: 18px !important; }
.ss-hero-frame .ss-claim.ss-claim-left {
	margin-bottom: 0 !important;
	text-align: left;
	text-shadow: 0 2px 30px rgba(17, 23, 32, .45);
	opacity: 1 !important;
	transform: none !important;
}
.ss-sec .fusion-title.ss-hero-intro {
	margin-top: 22px !important;
	max-width: 520px;
	font-size: clamp(17px, 1.3vw, 18px);
	color: var(--ss-haze);
	text-shadow: 0 1px 14px rgba(17, 23, 32, .45);
}
.ss-fwhero .fusion-column-wrapper > div:has(> .ss-hero-btn) { margin-top: 32px; }
@media (max-width: 800px) {
	.fusion-fullwidth.ss-hero-frame.ss-fwhero > .fusion-builder-row.fusion-row { min-height: 720px; padding-top: 180px !important; padding-bottom: 72px !important; }
	.ss-fwhero .fusion-image-element:has(.ss-hero-deco) { top: 34%; }
}

/* Glasfenster in weißer Fläche: weißer Schatten deckt das feste Bild ab */
.fusion-fullwidth.ss-sec.ss-window { overflow: hidden; }
.fusion-fullwidth.ss-window > .fusion-builder-row.fusion-row {
	padding-top: clamp(96px, 9vw, 140px) !important;
	padding-bottom: clamp(96px, 9vw, 140px) !important;
}
.fusion-layout-column.ss-window-head { position: relative; z-index: 2; max-width: 760px; margin-bottom: 56px !important; }
.fusion-layout-column.ss-window-glass { position: relative; z-index: 1; width: 100% !important; flex: 1 1 100% !important; }
.ss-window-glass > .fusion-column-wrapper {
	padding: clamp(28px, 4vw, 56px) !important;
	border-radius: 8px !important;
	background: rgba(29, 35, 48, .62) !important;
	-webkit-backdrop-filter: blur(22px) saturate(150%) !important;
	backdrop-filter: blur(22px) saturate(150%) !important;
	box-shadow: 0 0 0 200vmax #fff, inset 0 0 0 1px rgba(255, 255, 255, .1);
}

/* Sechs Leistungen im Glas */
.ss-p6.fusion-builder-row {
	display: grid !important;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 56px 48px;
	width: 100% !important;
	margin: 0 !important;
	counter-reset: ss-p6;
}
.ss-p6 > .fusion-layout-column { width: auto !important; margin: 0 !important; min-width: 0; position: relative; counter-increment: ss-p6; }
.ss-p6-item > .fusion-column-wrapper { padding-top: 24px !important; border-top: 1px solid rgba(255, 255, 255, .22); }
.ss-p6-item::after {
	content: counter(ss-p6, decimal-leading-zero);
	position: absolute;
	top: 24px;
	right: 0;
	font-family: var(--ss-font-label);
	font-size: 12px;
	letter-spacing: .16em;
	color: var(--ss-fog);
}
.ss-p6-item .fusion-image-element { margin: 0 0 26px !important; }
.ss-p6-ico img, .ss-p6-ico svg { width: 52px !important; height: 52px !important; }
.ss-p6-ico svg * { stroke: var(--ss-signal) !important; }
.ss-p6-item .ss-card-text { line-height: 1.55 !important; }
@media (max-width: 1000px) { .ss-p6.fusion-builder-row { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 640px) { .ss-p6.fusion-builder-row { grid-template-columns: minmax(0, 1fr); } }

/* Ein Ansprechpartner: Text + Vergleich + Zahlen */
.fusion-fullwidth.ss-fw-overview > .fusion-builder-row.fusion-row {
	padding-top: clamp(110px, 10vw, 160px) !important;
	padding-bottom: clamp(110px, 10vw, 160px) !important;
	column-gap: 72px;
	row-gap: 32px;
	align-items: center;
	color: #fff;
}
.fusion-layout-column.ss-fw-overview-text,
.fusion-layout-column.ss-fw-compare { flex: 1 1 calc(50% - 36px) !important; width: auto !important; min-width: 0; }
.ss-fw-overview-text .ss-intro { max-width: 520px; }
.ss-fw-compare > .fusion-column-wrapper {
	padding: 36px 36px 40px !important;
	border-radius: 8px !important;
	background: rgba(29, 35, 48, .62) !important;
	-webkit-backdrop-filter: blur(22px) saturate(150%) !important;
	backdrop-filter: blur(22px) saturate(150%) !important;
	box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .1);
}
.ss-sec .fusion-title.ss-meta-label.is-mist { margin-bottom: 16px !important; color: var(--ss-mist); }
.ss-chips.fusion-checklist { display: flex !important; flex-wrap: wrap; gap: 8px; margin: 0 !important; padding: 0 !important; }
.ss-chips .fusion-li-item {
	display: inline-flex !important;
	align-items: center;
	min-height: 36px;
	margin: 0 !important;
	padding: 0 14px !important;
	border: 0 !important;
	border-radius: 4px;
	box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .22);
}
.ss-chips .icon-wrapper { display: none !important; }
.ss-chips .fusion-li-item-content {
	margin: 0 !important;
	font-family: var(--ss-font-label);
	font-size: 12px;
	letter-spacing: .16em;
	text-transform: uppercase;
	color: #fff;
}
.ss-sec .fusion-title.ss-with-arrow { position: relative; padding-top: 96px; }
.ss-with-arrow::before {
	content: "";
	position: absolute;
	top: 26px;
	left: 50%;
	width: 20px;
	height: 44px;
	margin-left: -10px;
	background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='44' viewBox='0 0 20 44' fill='none' stroke='%23ebef57' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M10 2 V40 M3 33 L10 40 L17 33'/%3E%3C/svg%3E") no-repeat center / contain;
}
.ss-one-contact.content-boxes { margin: 0 !important; }
.ss-one-contact .content-box-column { width: 100% !important; margin: 0 !important; padding: 0 !important; float: none !important; }
.ss-one-contact .content-box-wrapper {
	display: grid !important;
	grid-template-columns: 34px minmax(0, 1fr);
	column-gap: 16px;
	align-items: center;
	padding: 18px 20px !important;
	border-radius: 6px;
	background: #fff !important;
	text-align: left !important;
}
.ss-one-contact .heading { display: contents !important; }
.ss-one-contact .heading .image { grid-row: 1 / span 2; margin: 0 !important; float: none !important; }
.ss-one-contact .heading .image img { width: 34px !important; height: 34px !important; }
.ss-one-contact .fusion-clearfix { display: none; }
.ss-one-contact .content-box-heading {
	grid-column: 2;
	margin: 0 !important;
	padding: 0 !important;
	font-family: var(--ss-font-card) !important;
	font-size: 22px !important;
	line-height: 1.1 !important;
	letter-spacing: 0 !important;
	text-transform: none !important;
	color: var(--ss-ink) !important;
}
.ss-one-contact .content-container {
	grid-column: 2;
	margin: 4px 0 0 !important;
	padding: 0 !important;
	font-family: var(--ss-font-body);
	font-size: 15px;
	font-weight: 300;
	line-height: 1.4;
	color: #3a4356 !important;
}
.ss-fw-stats .ss-stats.counters-box { margin-top: clamp(24px, 3vw, 40px) !important; }
.ss-fw-stats .counter-box-content { color: var(--ss-mist) !important; }
@media (max-width: 900px) {
	.fusion-layout-column.ss-fw-overview-text, .fusion-layout-column.ss-fw-compare { flex-basis: 100% !important; }
}

/* Aus der Praxis */
.ss-praxis-grid.fusion-builder-row {
	display: grid !important;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 40px 72px;
	align-items: center;
	width: 100% !important;
	margin: 0 !important;
}
.ss-praxis-grid > .fusion-layout-column { width: auto !important; margin: 0 !important; min-width: 0; }
.ss-praxis-text .ss-intro { max-width: 520px; }
.ss-praxis-bild > .fusion-column-wrapper {
	height: 560px;
	border-radius: 6px !important;
	overflow: hidden;
	background-size: auto 112% !important;
	background-position: center var(--ss-py, 50%) !important;
}
.ss-dash-list.fusion-checklist { margin: 26px 0 0 !important; padding: 0 !important; }
.ss-dash-list .fusion-li-item {
	display: flex !important;
	align-items: center;
	gap: 12px;
	margin: 0 !important;
	padding: 6px 0 !important;
	border: 0 !important;
}
.ss-dash-list .icon-wrapper { display: none !important; }
.ss-dash-list .fusion-li-item::before { content: ""; flex: 0 0 auto; width: 12px; height: 2px; background: var(--ss-signal); }
.ss-dash-list .fusion-li-item-content {
	margin: 0 !important;
	font-family: var(--ss-font-body);
	font-size: 16px;
	font-weight: 400;
	color: #fff;
}
.ss-praxis-text .fusion-column-wrapper > div:has(> .fusion-button) { margin-top: 32px; }
@media (max-width: 900px) {
	.ss-praxis-grid.fusion-builder-row { grid-template-columns: minmax(0, 1fr); }
	.ss-praxis-bild > .fusion-column-wrapper { height: 380px; }
}
.fusion-body .fusion-layout-column.ss-window-glass > .fusion-column-wrapper {
	box-shadow: 0 0 0 200vmax #fff, inset 0 0 0 1px rgba(255, 255, 255, .1) !important;
}
@media (max-width: 800px) {
	.ss-fwhero .fusion-image-element:has(.ss-hero-deco) { top: 150px; transform: translate(-50%, 0); width: 96px; }
	.ss-fwhero .ss-hero-deco img, .ss-fwhero .ss-hero-deco svg { width: 96px !important; height: 96px !important; }
	.fusion-fullwidth.ss-hero-frame.ss-fwhero > .fusion-builder-row.fusion-row { padding-top: 270px !important; }
}

/* ===== Für wen: Startups – Wachstumspfad, Finanzdienstleister – Prüfliste ===== */
.ss-growth.content-boxes { margin: 0 !important; display: block !important; }
.ss-growth .content-box-column {
	position: relative;
	width: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
	float: none !important;
}
.ss-growth .content-box-column + .content-box-column { margin-top: 38px !important; }
.ss-growth .content-box-column + .content-box-column::before {
	content: "";
	position: absolute;
	top: -32px;
	left: 13px;
	width: 16px;
	height: 26px;
	background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='26' viewBox='0 0 16 26' fill='none' stroke='%23ebef57' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M8 2 V22 M3 17 L8 22 L13 17'/%3E%3C/svg%3E") no-repeat center / contain;
}
.ss-growth .content-box-wrapper {
	padding: 16px 20px !important;
	border-radius: 6px;
	background: rgba(255, 255, 255, .08) !important;
	box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .12);
	text-align: left !important;
}
.ss-growth .heading, .ss-growth .content-box-heading, .ss-growth .content-container { text-align: left !important; }
.ss-growth .heading { margin: 0 !important; }
.ss-growth .fusion-clearfix { display: none; }
.ss-growth .content-box-heading {
	margin: 0 !important;
	padding: 0 !important;
	font-family: var(--ss-font-card) !important;
	font-size: 22px !important;
	line-height: 1.1 !important;
	letter-spacing: 0 !important;
	text-transform: none !important;
	color: #fff !important;
}
.ss-growth .content-container {
	margin: 4px 0 0 !important;
	padding: 0 !important;
	font-family: var(--ss-font-body);
	font-size: 15px;
	font-weight: 300;
	line-height: 1.45;
	color: var(--ss-fog) !important;
}
.ss-growth .content-box-column-last .content-box-wrapper { background: #fff !important; }
.ss-growth .content-box-column-last .content-box-heading { color: var(--ss-ink) !important; }
.ss-growth .content-box-column-last .content-container { color: #3a4356 !important; }

.ss-check-list.fusion-checklist { margin: 0 !important; padding: 0 !important; }
.ss-check-list .fusion-li-item {
	display: flex !important;
	align-items: center;
	gap: 14px;
	margin: 0 !important;
	padding: 14px 0 !important;
	border: 0 !important;
	border-top: 1px solid rgba(255, 255, 255, .14) !important;
}
.ss-check-list .icon-wrapper { display: none !important; }
.ss-check-list .fusion-li-item::before {
	content: "";
	flex: 0 0 18px;
	height: 18px;
	background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 18 18' fill='none' stroke='%23ebef57' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 9.5 L7.5 14 L15 5'/%3E%3C/svg%3E") no-repeat center / contain;
}
.ss-check-list .fusion-li-item-content {
	margin: 0 !important;
	font-family: var(--ss-font-body);
	font-size: 17px;
	font-weight: 400;
	line-height: 1.4;
	color: #fff !important;
}
.ss-fw-overview .ss-logos-col .ss-logos-l { margin-top: 56px !important; }
.ss-is-placeholder-text .fusion-title-heading { font-style: italic; opacity: .8; }

/* =========================================================
   Projekte – Übersicht
   Klassen: ss-pjhero, ss-pj-grid, ss-pj-cards, ss-pjcard, ss-pj-archiv,
            ss-window--dark, ss-pj-chips, ss-pj-numbers, ss-stats--light
   ========================================================= */
.fusion-fullwidth.ss-hero-frame.ss-pjhero > .fusion-builder-row.fusion-row {
	min-height: 0;
	padding-top: 190px !important;
	padding-bottom: clamp(110px, 10vw, 160px) !important;
	align-content: flex-start;
	justify-content: flex-start;
}
.ss-pjhero .ss-pjhero-main > .fusion-column-wrapper { align-items: flex-start; }
.ss-pjhero .ss-label { margin-bottom: 18px !important; }
.fusion-layout-column.ss-pj-grid { width: 100% !important; flex: 1 1 100% !important; margin-top: 56px !important; }
.fusion-layout-column.ss-pj-archiv { width: 100% !important; flex: 1 1 100% !important; margin-top: 40px !important; }
.ss-pj-archiv > .fusion-column-wrapper {
	flex-direction: row !important;
	flex-wrap: wrap;
	align-items: center !important;
	justify-content: space-between !important;
	gap: 16px 28px;
}
.ss-pj-archiv > .fusion-column-wrapper > * { margin: 0 !important; }
.ss-sec .fusion-title.ss-pj-archiv-text,
.ss-sec .fusion-title.ss-pj-archiv-text .fusion-title-heading {
	margin: 0 !important;
	font-family: var(--ss-font-body) !important;
	font-size: 17px !important;
	font-weight: 300 !important;
	line-height: 1.5 !important;
	letter-spacing: 0 !important;
	text-transform: none !important;
	color: var(--ss-haze) !important;
}

/* Eigene Filterleiste steuert die (versteckten) Avada-Filter */
.fusion-body .ss-pj-cards .fusion-filters { display: none !important; }
.ss-filter-menu .awb-menu__main-a { cursor: pointer; }

/* Projektkachel (Post Card „Projekt-Kachel J“) */
.ss-pjcard { position: relative; --ss-pj-gap-r: 8px; --ss-pj-gap-b: 8px; }
/* Aussparung für die Pfeil-Ecke: drei addierte Maskenebenen (ohne mask-composite, läuft auch in Safari) */
.ss-pjcard, .ss-ktcard {
	--ss-pj-notch: linear-gradient(#000 0 0) left top / 100% calc(100% - 71px) no-repeat,
		linear-gradient(#000 0 0) left top / calc(100% - 83px) 100% no-repeat,
		url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='84' height='72' viewBox='0 0 84 72'%3E%3Cpath d='M0 0 L84 0 Q84 12 76 12 L55 12 Q47.1 12 43.1 18.9 L16.5 65.1 Q12.5 72 0 72 Z' fill='black'/%3E%3C/svg%3E") right bottom / 84px 72px no-repeat;
}
/* Maske nur auf der Bildebene: eine Maske auf dem Inhalts-Wrapper würde den backdrop-filter
   des Glasfelds abschneiden (Wrapper würde zur „Backdrop Root“ ohne Bild dahinter). */
.ss-pjcard > .fusion-column-wrapper,
.ss-pjcard > .fusion-column-inner-bg {
	border-radius: 6px !important;
	overflow: hidden;
}
.ss-pjcard > .fusion-column-inner-bg {
	-webkit-mask: var(--ss-pj-notch);
	mask: var(--ss-pj-notch);
}
.ss-pjcard > .fusion-column-wrapper {
	position: relative;
	aspect-ratio: 4 / 5;
	height: auto !important;
	min-height: 0 !important;
	justify-content: flex-end !important;
	padding: 14px !important;
	container-type: inline-size;
}
.ss-pjcard > .fusion-column-inner-bg { background-color: #2a3346; }
.ss-pjcard .fusion-column-inner-bg-image { transition: transform .8s cubic-bezier(.2, .7, .2, 1), opacity .45s ease !important; }
/* nachgeladene Bilder weich einblenden statt aufploppen */
.ss-pjcard .fusion-column-inner-bg-image.lazyload,
.ss-pjcard .fusion-column-inner-bg-image.lazyloading { opacity: 0 !important; }
.ss-pjcard-row.fusion-builder-row {
	flex: 0 0 auto !important;
	width: 100% !important;
	max-width: none !important;
	height: auto !important;
	min-height: 0 !important;
	margin: auto 0 0 !important;
	align-items: flex-end !important;
}
.fusion-layout-column.ss-pjcard-panel { width: 100% !important; margin: 0 !important; position: relative; z-index: 1; pointer-events: none; }
.ss-pjcard .ss-pjcard-panel > .fusion-column-wrapper {
	min-height: calc((100cqw + 28px) * .3125);
	position: relative;
	justify-content: center !important;
	padding: 20px 84px 20px 22px !important;
	border-radius: 6px !important;
	overflow: hidden;
	background: transparent !important;
	-webkit-backdrop-filter: none !important;
	backdrop-filter: none !important;
}
/* Glasfeld mit Aussparung unten rechts (72 × 66 px wie im Layout).
   Wie im Prototyp: Abtönung, Weichzeichner und Maske auf demselben Element – die Maske schneidet
   auch den backdrop-filter sauber aus (clip-path tut das in Chrome/Safari nicht zuverlässig).
   Drei addierte Maskenebenen statt mask-composite, damit es auch in Safari funktioniert. */
.ss-pjcard .ss-pjcard-panel > .fusion-column-wrapper {
	background: rgba(29, 35, 48, .62) !important;
	-webkit-backdrop-filter: blur(18px) saturate(150%) !important;
	backdrop-filter: blur(18px) saturate(150%) !important;
	--ss-pj-panel-notch: linear-gradient(#000 0 0) left top / 100% calc(100% - 65px) no-repeat,
		linear-gradient(#000 0 0) left top / calc(100% - 71px) 100% no-repeat,
		url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='72' height='66' viewBox='0 0 72 66'%3E%3Cpath d='M0 0 L72 0 Q72 6 66 6 L49 6 Q41 6 37 12.9 L8.4 62.5 Q6.4 66 0 66 Z' fill='black'/%3E%3C/svg%3E") right bottom / 72px 66px no-repeat;
	-webkit-mask: var(--ss-pj-panel-notch);
	mask: var(--ss-pj-panel-notch);
}
.ss-pjcard .ss-pjcard-panel .fusion-title { position: relative; z-index: 1; }
.ss-sec .fusion-title.ss-pjcard-kicker { margin: 0 0 8px !important; }
.ss-sec .fusion-title.ss-pjcard-kicker,
.ss-sec .fusion-title.ss-pjcard-kicker .fusion-title-heading {
	margin: 0 !important;
	font-family: var(--ss-font-label) !important;
	font-size: 11px !important;
	line-height: 1.3 !important;
	letter-spacing: .16em !important;
	text-transform: uppercase !important;
	color: var(--ss-mist) !important;
}
.ss-sec .fusion-title.ss-pjcard-title,
.ss-sec .fusion-title.ss-pjcard-title .fusion-title-heading {
	margin: 0 !important;
	font-family: var(--ss-font-card) !important;
	font-size: 22px !important;
	font-weight: 600 !important;
	line-height: 1.12 !important;
	letter-spacing: 0 !important;
	text-transform: none !important;
	color: #fff !important;
}
/* gelbe Pfeil-Ecke unten rechts */
.ss-pjcard::after, .ss-ktcard::after {
	content: "";
	position: absolute;
	right: var(--ss-pj-gap-r, 0px);
	bottom: var(--ss-pj-gap-b, 0px);
	width: 60px;
	height: 50px;
	background: #ebef57 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 18 18' fill='none' stroke='%231d2330' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 9h11M10 5l4 4-4 4'/%3E%3C/svg%3E") no-repeat right 14px center / 16px 16px;
	clip-path: path('M33 0 L54 0 Q60 0 60 6 L60 44 Q60 50 54 50 L5 50 Q0 50 2.5 45.7 L26.5 4.3 Q29 0 33 0 Z');
	pointer-events: none;
	z-index: 3;
	transition: background-position .35s cubic-bezier(.2, .7, .2, 1);
}
.ss-pjcard:hover::after, .ss-ktcard:hover::after { background-position: right 10px center; }
.ss-pjcard > .fusion-column-wrapper { transition: box-shadow .35s ease; }

/* Vorzeigeprojekt: Glasfenster in dunkler Fläche */
.fusion-body .ss-window--dark .fusion-layout-column.ss-window-glass > .fusion-column-wrapper {
	box-shadow: 0 0 0 200vmax var(--ss-ink), inset 0 0 0 1px rgba(255, 255, 255, .1) !important;
}
.ss-pj-chips.fusion-checklist { margin-top: 26px !important; }
.ss-pj-chips .fusion-li-item { min-height: 34px; padding: 0 12px !important; box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .24); }
.ss-pj-chips .fusion-li-item-content { font-size: 11px; color: var(--ss-haze); }

/* In Zahlen – helle Variante */
.fusion-fullwidth.ss-pj-numbers > .fusion-builder-row.fusion-row {
	padding-top: clamp(110px, 10vw, 160px) !important;
	padding-bottom: clamp(110px, 10vw, 160px) !important;
}
.ss-pj-zahlen .ss-label { margin-bottom: 16px !important; }
.ss-stats--light.counters-box { margin-top: 12px !important; padding-top: 36px; border-top-color: rgba(29, 35, 48, .14); }
.ss-stats--light .fusion-counter-box { border-left-color: rgba(29, 35, 48, .14); }
.ss-stats--light .content-box-counter { color: var(--ss-ink) !important; }
.ss-stats--light .counter-box-content { color: var(--ss-steel) !important; }

/* =========================================================
   Projekt-Fallstudie (Prototyp „Projekt-VAEN“)
   Klassen: ss-casehero, ss-case-glass, ss-case-facts, ss-case-aus, ss-case-task,
            ss-case-loes, ss-case-step, ss-case-erg, ss-case-stats, ss-case-more
   ========================================================= */
/* Hero: Glasbox unten links */
.fusion-fullwidth.ss-hero-frame.ss-casehero > .fusion-builder-row.fusion-row {
	min-height: 900px;
	padding-top: 200px !important;
	padding-bottom: 64px !important;
	align-content: flex-end;
	justify-content: flex-start;
}
.fusion-layout-column.ss-case-glass { width: 100% !important; max-width: 860px; flex: 0 1 860px !important; }
.ss-case-glass > .fusion-column-wrapper {
	padding: clamp(28px, 3.5vw, 44px) !important;
	border-radius: 8px !important;
	background: rgba(29, 35, 48, .62) !important;
	-webkit-backdrop-filter: blur(22px) saturate(150%) !important;
	backdrop-filter: blur(22px) saturate(150%) !important;
	box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .1);
}
.ss-casehero .ss-label { margin-bottom: 16px !important; }
.ss-casehero .ss-claim.ss-claim-left { text-shadow: none; }
.ss-case-facts.fusion-builder-row {
	display: grid !important;
	grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
	gap: 20px 28px;
	width: 100% !important;
	margin: 30px 0 0 !important;
	padding-top: 24px;
	border-top: 1px solid rgba(255, 255, 255, .16);
}
.ss-case-facts > .fusion-layout-column { width: auto !important; margin: 0 !important; min-width: 0; }
.ss-sec .fusion-title.ss-case-fact-l {
	margin: 0 0 6px !important;
	font-family: var(--ss-font-label);
	font-size: 11px;
	line-height: 1.3;
	letter-spacing: .16em;
	text-transform: uppercase;
	color: var(--ss-mist);
}
.ss-sec .fusion-title.ss-case-fact-v {
	margin: 0 !important;
	font-family: var(--ss-font-body);
	font-size: 16px;
	font-weight: 400;
	line-height: 1.45;
	color: #fff;
}

/* Ausgangslage: Text + weiße Aufgabenkarte */
.fusion-fullwidth.ss-case-aus > .fusion-builder-row.fusion-row {
	padding-top: clamp(96px, 9vw, 140px) !important;
	padding-bottom: clamp(96px, 9vw, 140px) !important;
	column-gap: 72px;
	row-gap: 40px;
	align-items: flex-start;
}
.fusion-layout-column.ss-case-aus-text,
.fusion-layout-column.ss-case-task { flex: 1 1 calc(50% - 36px) !important; width: auto !important; min-width: 0; }
.ss-case-aus-text .ss-intro { max-width: 560px; color: #3a4356; }
.ss-case-task > .fusion-column-wrapper { padding: 34px 32px !important; border-radius: 8px; background: #fff; }
.ss-case-task .ss-meta-label { margin-bottom: 14px !important; color: var(--ss-steel); }
.ss-dash-list--dark.fusion-checklist { margin: 0 !important; }
.ss-dash-list--dark .fusion-li-item {
	gap: 14px;
	padding: 14px 0 !important;
	border-top: 1px solid rgba(29, 35, 48, .1) !important;
}
.ss-dash-list--dark .fusion-li-item::before { background: var(--ss-steel); }
.ss-dash-list--dark .fusion-li-item-content { font-size: 17px; color: var(--ss-ink) !important; }
@media (max-width: 900px) {
	.fusion-layout-column.ss-case-aus-text, .fusion-layout-column.ss-case-task { flex-basis: 100% !important; }
}

/* Lösung: vier Bausteine im Glas, Bild abwechselnd links/rechts */
.fusion-fullwidth.ss-case-loes > .fusion-builder-row.fusion-row {
	padding-top: clamp(110px, 10vw, 160px) !important;
	padding-bottom: clamp(110px, 10vw, 160px) !important;
	row-gap: 20px;
}
.ss-case-loes .ss-case-loes-head { max-width: 760px; margin-bottom: 28px !important; }
.fusion-layout-column.ss-case-step { width: 100% !important; flex: 1 1 100% !important; margin: 0 !important; }
.ss-case-step > .fusion-column-wrapper {
	padding: clamp(20px, 3vw, 36px) !important;
	border-radius: 8px !important;
	background: rgba(29, 35, 48, .62) !important;
	-webkit-backdrop-filter: blur(22px) saturate(150%) !important;
	backdrop-filter: blur(22px) saturate(150%) !important;
	box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .1);
}
.ss-case-step-grid.fusion-builder-row {
	display: grid !important;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 32px 64px;
	align-items: center;
	width: 100% !important;
	margin: 0 !important;
}
.ss-case-step-grid > .fusion-layout-column { width: auto !important; margin: 0 !important; min-width: 0; }
.ss-case-step.is-rev .ss-case-step-img { order: 2; }
.ss-case-step-img > .fusion-column-wrapper {
	aspect-ratio: 16 / 11;
	height: auto !important;
	border-radius: 6px !important;
	overflow: hidden;
	background-color: #2a3346;
	background-size: cover !important;
	background-position: center center !important;
}
.ss-case-step-img > .fusion-column-inner-bg { border-radius: 6px; overflow: hidden; }
.ss-case-ph > .fusion-column-wrapper {
	align-items: center !important;
	justify-content: center !important;
	background: linear-gradient(160deg, #2a3346 0%, #1d2330 55%, #44526c 100%) !important;
}
.ss-sec .fusion-title.ss-case-ph-label {
	margin: 0 !important;
	font-family: var(--ss-font-label);
	font-size: 12px;
	letter-spacing: .16em;
	text-transform: uppercase;
	text-align: center;
	color: var(--ss-mist);
}
.ss-case-step-text .ss-meta-label.is-mist { margin-bottom: 14px !important; }
.ss-sec .fusion-title.ss-case-step-title {
	margin: 0 !important;
	font-family: var(--ss-font-head);
	font-size: clamp(28px, 2.6vw, 38px);
	line-height: 1.05;
	color: #fff;
}
.ss-sec .fusion-title.ss-case-step-desc {
	margin: 16px 0 0 !important;
	max-width: 480px;
	font-family: var(--ss-font-body);
	font-size: 17px;
	font-weight: 300;
	line-height: 1.6;
	color: var(--ss-fog);
}
@media (max-width: 800px) {
	.ss-case-step-grid.fusion-builder-row { grid-template-columns: minmax(0, 1fr); }
	.ss-case-step.is-rev .ss-case-step-img { order: 0; }
}

/* Ergebnis: Kopf + Kennzahlen */
.fusion-fullwidth.ss-case-erg > .fusion-builder-row.fusion-row {
	padding-top: clamp(96px, 9vw, 140px) !important;
	padding-bottom: clamp(96px, 9vw, 140px) !important;
	column-gap: 64px;
	row-gap: 20px;
	align-items: flex-end;
	justify-content: space-between;
}
.fusion-layout-column.ss-case-erg-head { flex: 1 1 520px !important; width: auto !important; max-width: 760px; min-width: 0; }
.fusion-layout-column.ss-case-erg-text { flex: 0 1 440px !important; width: auto !important; min-width: 0; }
.ss-case-erg-text .ss-intro { margin: 0 !important; color: #3a4356; }
.fusion-layout-column.ss-case-stats { width: 100% !important; flex: 1 1 100% !important; margin-top: clamp(28px, 3vw, 52px) !important; }
.ss-case-stats-row.fusion-builder-row {
	display: flex !important;
	flex-wrap: wrap;
	gap: 28px 0;
	width: 100% !important;
	margin: 0 !important;
	padding-top: 36px;
	border-top: 1px solid rgba(29, 35, 48, .14);
}
.ss-case-stats-row > .fusion-layout-column {
	flex: 1 1 180px !important;
	width: auto !important;
	min-width: 0;
	margin: 0 !important;
	padding: 0 28px !important;
	border-left: 1px solid rgba(29, 35, 48, .14);
}
.ss-case-stats-row > .fusion-layout-column:first-child { padding-left: 0 !important; border-left: 0; }
.ss-sec .fusion-title.ss-case-stat-l {
	margin: 0 !important;
	font-family: var(--ss-font-label);
	font-size: 12px;
	letter-spacing: .16em;
	text-transform: uppercase;
	color: var(--ss-steel);
}
.ss-sec .fusion-title.ss-case-stat-v {
	margin: 8px 0 0 !important;
	font-family: var(--ss-font-head);
	font-size: clamp(44px, 4vw, 56px);
	line-height: 1;
	color: var(--ss-ink);
}

/* Weitere Projekte */
.ss-case-more-head.fusion-builder-row {
	display: flex !important;
	flex-wrap: wrap;
	align-items: flex-end;
	justify-content: space-between;
	gap: 16px;
	width: 100% !important;
	margin: 0 0 40px !important;
}
.ss-case-more-head > .fusion-layout-column { width: auto !important; flex: 0 1 auto !important; margin: 0 !important; }
.ss-case-more .ss-label { margin-bottom: 16px !important; }

/* Beiträge mit Fallstudien-Layout: kein Innenabstand im Hauptbereich */
body:has(.ss-casehero) #main { padding: 0 !important; }
/* Fallstudie: heller Fotohintergrund – Kopfbereich mit dunklem Verlauf wie im Prototyp */
body:has(.ss-casehero) .fusion-tb-header .ss-header.fusion-absolute-container:not(.fusion-container-stuck) {
	background: linear-gradient(180deg, rgba(17, 23, 32, .55), rgba(17, 23, 32, 0)) !important;
	border-radius: var(--ss-fr-r, 22px) var(--ss-fr-r, 22px) 0 0;
}
@media (max-width: 800px) {
	/* helles Foto hinter „Lösung“: leicht abdunkeln, damit die Überschrift lesbar bleibt */
	.fusion-fullwidth.ss-case-loes { box-shadow: inset 0 0 0 100vmax rgba(17, 23, 32, .38); }
}

/* =========================================================
   Projekt-Fallstudie, Bildvariante (Prototyp „Projekt: fairvendo“)
   Klassen: ss-casefv (Hero), ss-tone-dark|light, ss-veil, ss-casefv-media, ss-fig, ss-bento,
            ss-casefv-blick, ss-casefv-facts, ss-casefv-col, ss-casefv-more
   ========================================================= */

.fusion-fullwidth.ss-hero-frame.ss-casefv > .fusion-builder-row.fusion-row {
	min-height: 100vh;
	padding-top: 190px !important;
	padding-bottom: 56px !important;
	align-content: flex-start;
	justify-content: flex-start;
}
.fusion-layout-column.ss-casefv-head { position: relative; z-index: 1; max-width: 640px; }
.ss-casefv .ss-label { margin-bottom: 18px !important; }
.ss-label.is-ink { color: var(--ss-ink) !important; }
.ss-sec .fusion-title.ss-casefv-claim,
.ss-sec .fusion-title.ss-casefv-claim .fusion-title-heading {
	font-family: var(--ss-font-head) !important;
	font-size: clamp(44px, 5.2vw, 76px) !important;
	line-height: .95 !important;
	letter-spacing: 0 !important;
	text-transform: none !important;
	color: var(--ss-ink) !important;
}
.ss-sec.ss-tone-light .fusion-title.ss-casefv-claim, .ss-sec.ss-tone-light .fusion-title.ss-casefv-claim .fusion-title-heading { color: #fff !important; text-shadow: 0 2px 30px rgba(17, 23, 32, .45); }
/* Schleier für Lesbarkeit (nicht bei fairvendo – dort ist das Bild hell genug) */
.fusion-fullwidth.ss-casefv.ss-veil::before {
	content: "";
	position: absolute;
	inset: 0;
	z-index: 0;
	pointer-events: none;
}
.fusion-fullwidth.ss-casefv.ss-veil.ss-tone-dark::before { background: linear-gradient(100deg, rgba(255, 255, 255, .72) 0%, rgba(255, 255, 255, .45) 40%, rgba(255, 255, 255, 0) 68%); }
.fusion-fullwidth.ss-casefv.ss-veil.ss-tone-light::before { background: linear-gradient(100deg, rgba(17, 23, 32, .82) 0%, rgba(17, 23, 32, .58) 42%, rgba(17, 23, 32, 0) 72%); }

/* Leistungen + Bilderstrecke auf Dunkel */
.fusion-fullwidth.ss-casefv-media > .fusion-builder-row.fusion-row {
	padding-top: 32px !important;
	padding-bottom: clamp(80px, 8vw, 120px) !important;
}
.fusion-layout-column.ss-casefv-chips { width: 100% !important; flex: 1 1 100% !important; margin-bottom: clamp(64px, 6vw, 96px) !important; }
.ss-casefv-chiplist .fusion-li-item { min-height: 38px; box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .28); }
.fusion-layout-column.ss-fig, .fusion-layout-column.ss-fig-pair { width: 100% !important; flex: 1 1 100% !important; margin: 0 0 clamp(40px, 4vw, 64px) !important; }
.ss-casefv-media .fusion-layout-column.ss-fig:last-child, .ss-casefv-media .fusion-layout-column.ss-fig-pair:last-child { margin-bottom: 0 !important; }
.ss-fig .fusion-image-element, .ss-fig .fusion-imageframe { display: block !important; width: 100% !important; max-width: none !important; margin: 0 !important; }
.ss-fig .fusion-imageframe img { display: block; width: 100% !important; height: auto !important; border-radius: 6px; }
.ss-fig .fusion-image-before-after-element, .ss-fig .fusion-image-before-after-wrapper, .ss-fig-ba { border-radius: 6px; overflow: hidden; }
.ss-fig .fusion-video, .ss-fig video { display: block; width: 100%; border-radius: 6px; overflow: hidden; }
.ss-sec .fusion-title.ss-fig-cap { margin: 22px 0 0 !important; font-size: 12px !important; color: var(--ss-fog) !important; }
.ss-bento.fusion-builder-row {
	display: grid !important;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 20px;
	width: 100% !important;
	margin: 0 !important;
}
.ss-bento > .fusion-layout-column { width: auto !important; margin: 0 !important; min-width: 0; }
@media (max-width: 800px) { .ss-bento.fusion-builder-row { grid-template-columns: minmax(0, 1fr); } }

/* Das Projekt auf einen Blick: helles Glas über dem festen Bild */
.fusion-fullwidth.ss-sec.ss-casefv-blick { position: relative; }
.fusion-fullwidth.ss-casefv-blick::before {
	content: "";
	position: absolute;
	inset: 0;
	z-index: 0;
	pointer-events: none;
	background: rgba(29, 35, 48, .42);
	-webkit-backdrop-filter: blur(22px) saturate(150%);
	backdrop-filter: blur(22px) saturate(150%);
}
.fusion-fullwidth.ss-casefv-blick > .fusion-builder-row.fusion-row {
	position: relative;
	z-index: 1;
	padding-top: clamp(110px, 10vw, 160px) !important;
	padding-bottom: clamp(110px, 10vw, 160px) !important;
	column-gap: 72px;
	row-gap: 32px;
	align-items: flex-end;
}
.fusion-layout-column.ss-casefv-blick-head, .fusion-layout-column.ss-casefv-blick-intro { flex: 1 1 calc(50% - 36px) !important; width: auto !important; min-width: 0; }
.ss-sec .fusion-title.ss-casefv-lead {
	margin: 0 !important;
	font-family: var(--ss-font-body);
	font-size: 19px;
	font-weight: 300;
	line-height: 1.6;
	color: #3a4356;
}
.fusion-layout-column.ss-casefv-facts { width: 100% !important; flex: 1 1 100% !important; margin-top: 24px !important; }
.ss-casefv-facts-row.fusion-builder-row {
	display: grid !important;
	grid-template-columns: repeat(4, minmax(0, 1fr)) minmax(0, 2fr);
	gap: 24px 32px;
	width: 100% !important;
	margin: 0 !important;
	padding: 28px 0;
	border-top: 1px solid rgba(29, 35, 48, .16);
	border-bottom: 1px solid rgba(29, 35, 48, .16);
}
.ss-casefv-facts-row > .fusion-layout-column { width: auto !important; margin: 0 !important; min-width: 0; }
.ss-sec .fusion-title.ss-casefv-fact-l {
	margin: 0 0 8px !important;
	font-family: var(--ss-font-label);
	font-size: 11px;
	letter-spacing: .16em;
	text-transform: uppercase;
	color: var(--ss-steel);
}
.ss-sec .fusion-title.ss-casefv-fact-v { margin: 0 !important; font-family: var(--ss-font-body); font-size: 16px; font-weight: 400; line-height: 1.45; color: var(--ss-ink); }
.fusion-layout-column.ss-casefv-col {
	flex: 0 0 calc((100% - 144px) / 3) !important;
	width: auto !important;
	min-width: 0;
	align-self: stretch;
	margin-top: 40px !important;
}
.ss-casefv-col > .fusion-column-wrapper { padding-top: 28px !important; border-top: 1px solid rgba(29, 35, 48, .16); justify-content: flex-start !important; }
.ss-sec .fusion-title.ss-casefv-h3,
.ss-sec .fusion-title.ss-casefv-h3 .fusion-title-heading {
	font-family: var(--ss-font-head) !important;
	font-size: clamp(26px, 2.2vw, 32px) !important;
	line-height: 1.05 !important;
	letter-spacing: 0 !important;
	text-transform: none !important;
	color: var(--ss-ink) !important;
}
.ss-sec .fusion-title.ss-casefv-text {
	margin: 18px 0 0 !important;
	font-family: var(--ss-font-body);
	font-size: 17px;
	font-weight: 300;
	line-height: 1.6;
	color: #3a4356;
}
.ss-sec .fusion-title.ss-casefv-meta { margin: 22px 0 0 !important; color: var(--ss-steel); }
.ss-dash-inline.fusion-checklist { display: flex !important; flex-wrap: wrap; gap: 6px 20px; margin: 18px 0 0 !important; }
.ss-dash-inline .fusion-li-item { padding: 0 !important; border: 0 !important; gap: 10px; }
.ss-dash-inline .fusion-li-item-content { font-size: 16px; }
.ss-casefv-col .fusion-column-wrapper > div:has(> .fusion-button) { margin-top: 24px; }
@media (max-width: 1000px) { .ss-casefv-facts-row.fusion-builder-row { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 900px) {
	.fusion-layout-column.ss-casefv-blick-head, .fusion-layout-column.ss-casefv-blick-intro,
	.fusion-layout-column.ss-casefv-col { flex-basis: 100% !important; }
}

/* Weitere Projekte auf Dunkel */
.fusion-fullwidth.ss-casefv-more > .fusion-builder-row.fusion-row {
	padding-top: clamp(96px, 9vw, 140px) !important;
	padding-bottom: clamp(96px, 9vw, 140px) !important;
	align-items: flex-end;
	justify-content: space-between;
	row-gap: 16px;
}
.fusion-layout-column.ss-casefv-more-title, .fusion-layout-column.ss-casefv-more-btn { width: auto !important; flex: 0 1 auto !important; }
.fusion-layout-column.ss-casefv-more-cards { width: 100% !important; flex: 1 1 100% !important; margin-top: 24px !important; }
.ss-casefv-more .ss-label { margin-bottom: 16px !important; }
@media (max-width: 800px) {
	.fusion-fullwidth.ss-hero-frame.ss-casefv > .fusion-builder-row.fusion-row { min-height: 640px; padding-top: 150px !important; }
	.ss-sec .fusion-title.ss-casefv-claim, .ss-sec .fusion-title.ss-casefv-claim .fusion-title-heading { font-size: 40px !important; }
}
/* Platzhalter-Bild in der Bilderstrecke (z. B. fehlende Screenshots) */
.ss-fig-ph-row.fusion-builder-row { width: 100% !important; margin: 0 !important; }
.fusion-layout-column.ss-fig-ph { width: 100% !important; margin: 0 !important; }
.ss-fig-ph > .fusion-column-wrapper {
	aspect-ratio: 16 / 9;
	align-items: center !important;
	justify-content: center !important;
	border-radius: 6px !important;
	background: linear-gradient(160deg, #2a3346 0%, #1d2330 55%, #44526c 100%) !important;
	box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .1);
}

/* =========================================================
   Klartext – Übersicht
   Klassen: ss-kthero, ss-kt-neu, ss-kt-alle, ss-ktcard (ss-ktfeat | ss-ktsmall), ss-kt-serie, ss-kt-li
   ========================================================= */
.fusion-fullwidth.ss-kt-neu > .fusion-builder-row.fusion-row,
.fusion-fullwidth.ss-kt-alle > .fusion-builder-row.fusion-row,
.fusion-fullwidth.ss-kt-li > .fusion-builder-row.fusion-row {
	padding-top: clamp(96px, 9vw, 140px) !important;
	padding-bottom: clamp(96px, 9vw, 140px) !important;
}
.fusion-layout-column.ss-kt-neu-col, .fusion-layout-column.ss-kt-grid { width: 100% !important; flex: 1 1 100% !important; }
.ss-kt-neu .ss-label { margin-bottom: 24px !important; }
.fusion-fullwidth.ss-kt-alle > .fusion-builder-row.fusion-row { align-items: flex-end; justify-content: space-between; column-gap: 64px; row-gap: 20px; }
.fusion-layout-column.ss-kt-alle-head { flex: 1 1 520px !important; width: auto !important; max-width: 760px; }
.fusion-layout-column.ss-kt-alle-intro { flex: 0 1 420px !important; width: auto !important; }
.ss-kt-alle-intro .ss-intro { margin: 0 !important; }
.fusion-layout-column.ss-kt-grid { margin-top: 28px !important; }

/* Kacheln: Grundform mit Aussparung + Pfeil-Ecke */
.ss-ktcard { position: relative; --ss-pj-gap-r: 10px; --ss-pj-gap-b: 10px; }
.ss-ktcard > .fusion-column-wrapper {
	border-radius: 6px !important;
	overflow: hidden;
	-webkit-mask: var(--ss-pj-notch);
	mask: var(--ss-pj-notch);
	display: grid !important;
	align-content: start;
}
.ss-ktcard > .fusion-column-wrapper > .fusion-column-anchor { position: absolute; inset: 0; z-index: 5; }
.ss-ktcard .fusion-builder-row-inner { width: 100% !important; max-width: none !important; margin: 0 !important; }
.ss-kt-meta.fusion-title { margin: 0 !important; }
.ss-sec .fusion-title.ss-kt-meta {
	font-family: var(--ss-font-label);
	font-size: 12px;
	line-height: 1.3;
	letter-spacing: .16em;
	text-transform: uppercase;
	color: #7d889b;
	white-space: nowrap;
}
.ss-sec .fusion-title.ss-kt-meta + .fusion-title.ss-kt-meta .fusion-title-heading::before { content: "·"; margin: 0 .55em; }
.ss-sec .fusion-title.ss-kt-more {
	margin: 0 !important;
	font-family: var(--ss-font-label);
	font-size: 13px;
	letter-spacing: .16em;
	text-transform: uppercase;
	color: var(--ss-ink);
}
.ss-ktcard .fusion-column-inner-bg, .ss-ktfeat-img > .fusion-column-wrapper, .ss-ktsmall-img > .fusion-column-wrapper { border-radius: 6px !important; overflow: hidden; }
.ss-ktfeat-img > .fusion-column-wrapper, .ss-ktsmall-img > .fusion-column-wrapper,
.ss-ktfeat-img > .fusion-column-inner-bg, .ss-ktsmall-img > .fusion-column-inner-bg { filter: saturate(.7); }

/* Neuester Beitrag: Bild links, Text rechts */
.ss-ktfeat > .fusion-column-wrapper { padding: 14px !important; background: var(--ss-cloud) !important; }
.ss-ktfeat-row.fusion-builder-row {
	display: grid !important;
	grid-template-columns: minmax(0, 1.25fr) minmax(0, 1fr);
	gap: 0 8px;
}
.ss-ktfeat-row > .fusion-layout-column { width: auto !important; margin: 0 !important; min-width: 0; }
.ss-ktfeat-img > .fusion-column-wrapper { min-height: 420px; height: 100%; }
.ss-ktfeat-text > .fusion-column-wrapper {
	display: grid !important;
	grid-template-columns: auto auto auto 1fr;
	grid-template-rows: auto auto auto 1fr auto;
	align-content: stretch;
	height: 100%;
	padding: clamp(16px, 2.4vw, 36px) clamp(16px, 2.4vw, 36px) 18px !important;
}
.ss-ktfeat-text .ss-kt-meta { grid-row: 1; margin-bottom: 16px !important; }
.ss-ktfeat-text .ss-ktfeat-title, .ss-ktfeat-text .ss-ktfeat-excerpt { grid-column: 1 / -1; }
.ss-ktfeat-text .ss-kt-more { grid-column: 1 / -1; grid-row: 5; padding-top: 32px; }
.ss-sec .fusion-title.ss-ktfeat-title {
	margin: 0 !important;
	font-family: var(--ss-font-head);
	font-size: clamp(32px, 3.2vw, 46px);
	line-height: 1.02;
	color: var(--ss-ink);
}
.ss-sec .fusion-title.ss-ktfeat-excerpt {
	margin: 20px 0 0 !important;
	max-width: 520px;
	font-family: var(--ss-font-body);
	font-size: 17px;
	font-weight: 300;
	line-height: 1.6;
	color: #3a4356;
	display: -webkit-box;
	-webkit-line-clamp: 4;
	-webkit-box-orient: vertical;
	overflow: hidden;
}
@media (max-width: 900px) {
	.ss-ktfeat-row.fusion-builder-row { grid-template-columns: minmax(0, 1fr); }
	.ss-ktfeat-img > .fusion-column-wrapper { min-height: 260px; }
}

/* Raster: Bild oben, Titel, Kategorie · Datum, „Beitrag lesen“ */
.ss-ktsmall > .fusion-column-wrapper {
	min-height: 470px;
	height: 100%;
	padding: 14px 14px 0 !important;
	background: #fff !important;
	grid-template-columns: auto auto 1fr;
	grid-template-rows: auto auto auto 1fr auto;
}
.ss-ktsmall > .fusion-column-wrapper > .fusion-builder-row-inner { grid-column: 1 / -1; grid-row: 1; }
.ss-ktsmall-img > .fusion-column-wrapper { height: 230px; }
.ss-ktsmall .ss-ktsmall-title { grid-column: 1 / -1; grid-row: 2; }
.ss-ktsmall .ss-kt-meta { grid-row: 3; margin-top: 12px !important; }
.ss-ktsmall .ss-kt-cat { padding-left: 14px; }
.ss-ktsmall .ss-kt-more { grid-column: 1 / -1; grid-row: 5; padding: 22px 14px 18px; }
.ss-sec .fusion-title.ss-ktsmall-title {
	margin: 0 !important;
	padding: 24px 14px 0;
	font-family: var(--ss-font-card);
	font-size: 25px;
	font-weight: 600;
	line-height: 1.12;
	color: var(--ss-ink);
	transition: color .3s ease;
}
.ss-ktsmall:hover .ss-ktsmall-title { color: var(--ss-steel); }
.ss-kt-small .fusion-grid-column { display: flex; }
.ss-kt-small .ss-ktsmall { flex: 1 1 auto; }

/* Serie (dunkel) */
.fusion-fullwidth.ss-kt-serie > .fusion-builder-row.fusion-row {
	padding-top: clamp(110px, 10vw, 160px) !important;
	padding-bottom: clamp(110px, 10vw, 160px) !important;
	column-gap: 72px;
	row-gap: 40px;
	align-items: flex-start;
}
.fusion-layout-column.ss-kt-serie-head, .fusion-layout-column.ss-kt-serie-list { flex: 1 1 calc(50% - 36px) !important; width: auto !important; min-width: 0; }
.ss-kt-serie .ss-kt-serie-intro { max-width: 460px; margin-top: 24px !important; color: var(--ss-fog); }
.ss-kt-serie-list > .fusion-column-wrapper { border-bottom: 1px solid rgba(255, 255, 255, .16) !important; }
.ss-kt-serie-rows.fusion-builder-row { display: block !important; width: 100% !important; margin: 0 !important; }
.fusion-layout-column.ss-kt-serie-item { width: 100% !important; margin: 0 !important; }
.ss-kt-serie-item > .fusion-column-wrapper {
	display: grid !important;
	grid-template-columns: 56px minmax(0, 1fr) auto 44px;
	gap: 16px 24px !important;
	align-items: center;
	position: relative;
	padding: 22px 0 !important;
	border-top: 1px solid rgba(255, 255, 255, .16) !important;
}
.ss-kt-serie-item > .fusion-column-wrapper > .fusion-column-anchor { position: absolute; inset: 0; z-index: 2; }
.ss-kt-serie-item > .fusion-column-wrapper::after {
	content: "";
	width: 44px;
	height: 44px;
	border-radius: 4px;
	box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .22);
	background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 18 18' fill='none' stroke='%23ffffff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 9h11M10 5l4 4-4 4'/%3E%3C/svg%3E") no-repeat center / 16px 16px;
	transition: background-color .3s ease;
}
.ss-kt-serie-item:hover > .fusion-column-wrapper::after {
	background: var(--ss-signal) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 18 18' fill='none' stroke='%231d2330' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 9h11M10 5l4 4-4 4'/%3E%3C/svg%3E") no-repeat center / 16px 16px;
	box-shadow: none;
}
.ss-sec .ss-kt-serie-item .fusion-title.ss-kt-serie-t { transition: color .3s ease; }
.ss-sec .ss-kt-serie-item:hover .fusion-title.ss-kt-serie-t { color: #fff; }
.ss-kt-serie-item .fusion-title { margin: 0 !important; }
.ss-sec .fusion-title.ss-kt-serie-nr { font-family: var(--ss-font-label); font-size: 12px; letter-spacing: .16em; color: var(--ss-mist); }
.ss-sec .fusion-title.ss-kt-serie-t { font-family: var(--ss-font-card); font-size: clamp(20px, 1.7vw, 24px); font-weight: 600; line-height: 1.15; color: var(--ss-fog); }
.ss-sec .fusion-title.ss-kt-serie-d { font-family: var(--ss-font-label); font-size: 11px; letter-spacing: .16em; text-transform: uppercase; color: #7d889b; }
@media (max-width: 900px) {
	.fusion-layout-column.ss-kt-serie-head, .fusion-layout-column.ss-kt-serie-list { flex-basis: 100% !important; }
	.ss-kt-serie-item > .fusion-column-wrapper { grid-template-columns: 36px minmax(0, 1fr) 44px; }
	.ss-sec .fusion-title.ss-kt-serie-d { display: none !important; }
}

/* LinkedIn */
.fusion-fullwidth.ss-kt-li > .fusion-builder-row.fusion-row { column-gap: 72px; row-gap: 32px; align-items: flex-end; }
.fusion-layout-column.ss-kt-li-head, .fusion-layout-column.ss-kt-li-text { flex: 1 1 calc(50% - 36px) !important; width: auto !important; min-width: 0; }
.ss-kt-li-text .ss-intro { margin: 0 !important; }
.ss-kt-li-text .fusion-column-wrapper > div:has(> .fusion-button) { margin-top: 28px; }
@media (max-width: 900px) { .fusion-layout-column.ss-kt-li-head, .fusion-layout-column.ss-kt-li-text { flex-basis: 100% !important; } }

/* =========================================================
   Über uns
   Klassen: ss-uuhero, ss-uu-tom, ss-uu-halt, ss-uu-sechs, ss-uu-zeit, ss-uu-studio
   ========================================================= */
.ss-uuhero .ss-uu-claim1 { margin-bottom: 0 !important; }
.ss-uuhero .ss-claim + .ss-claim { margin-top: 0 !important; }

/* Ansprechpartner */
.fusion-fullwidth.ss-uu-tom > .fusion-builder-row.fusion-row,
.fusion-fullwidth.ss-uu-zeit > .fusion-builder-row.fusion-row,
.fusion-fullwidth.ss-uu-studio > .fusion-builder-row.fusion-row {
	padding-top: clamp(96px, 9vw, 140px) !important;
	padding-bottom: clamp(96px, 9vw, 140px) !important;
}
.fusion-fullwidth.ss-uu-tom > .fusion-builder-row.fusion-row { display: grid !important; grid-template-columns: minmax(0, 440px) minmax(0, 1fr); gap: 48px 88px; align-items: center; }
.ss-uu-tom > .fusion-builder-row > .fusion-layout-column { width: auto !important; margin: 0 !important; min-width: 0; }
.ss-uu-tom-foto > .fusion-column-wrapper { aspect-ratio: 4 / 5; border-radius: 6px !important; background: var(--ss-fog) !important; }
.ss-uu-tom-foto .ss-case-ph-label, .ss-uu-gal .ss-case-ph-label { color: var(--ss-steel) !important; }
.ss-uu-tom-text .ss-label { margin-bottom: 16px !important; }
.ss-uu-tom-text .ss-intro { margin-top: 22px !important; max-width: 560px; font-size: 18px !important; line-height: 1.65 !important; }
.ss-uu-facts.fusion-builder-row {
	display: flex !important; flex-wrap: wrap; gap: 28px 56px;
	width: 100% !important; margin: 36px 0 0 !important; padding-top: 28px;
	border-top: 1px solid rgba(29, 35, 48, .14);
}
.fusion-layout-column.ss-uu-fact { width: auto !important; flex: 0 0 auto !important; margin: 0 !important; }
.ss-sec .fusion-title.ss-uu-fact-l { margin: 0 0 6px !important; font-family: var(--ss-font-label); font-size: 11px; letter-spacing: .16em; text-transform: uppercase; color: var(--ss-grey-dark); }
.ss-sec .fusion-title.ss-uu-fact-v { font-family: var(--ss-font-card); font-size: 24px; line-height: 1.2; color: var(--ss-ink); }
.ss-sec .fusion-title.ss-uu-fact-v a { color: inherit !important; text-decoration: none; }
.ss-sec .fusion-title.ss-uu-fact-v a:hover { color: var(--ss-steel) !important; }

/* Haltung */
.fusion-fullwidth.ss-uu-halt > .fusion-builder-row.fusion-row {
	padding-top: clamp(110px, 10vw, 160px) !important;
	padding-bottom: clamp(110px, 10vw, 160px) !important;
	display: grid !important; grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 72px; row-gap: 32px; align-items: end;
}
.ss-uu-halt > .fusion-builder-row > .fusion-layout-column { width: auto !important; margin: 0 !important; min-width: 0; }
.ss-uu-halt-head .ss-label { margin-bottom: 16px !important; }
.ss-uu-halt-intro .ss-intro { margin: 0 !important; max-width: none; font-size: 18px !important; line-height: 1.65 !important; color: var(--ss-fog) !important; }
.fusion-layout-column.ss-uu-wsn { margin-top: 32px !important; align-self: start; }
.ss-sec .fusion-title.ss-uu-wsn-l { margin: 0 0 18px !important; font-family: var(--ss-font-label); font-size: 12px; letter-spacing: .16em; text-transform: uppercase; color: var(--ss-mist); }
.ss-uu-list.fusion-checklist { margin: 0 !important; padding: 0 !important; border-bottom: 1px solid rgba(255, 255, 255, .16); }
.ss-uu-list .fusion-li-item {
	display: flex !important; align-items: center; gap: 16px;
	margin: 0 !important; padding: 18px 0 !important;
	border: 0 !important; border-top: 1px solid rgba(255, 255, 255, .16) !important;
}
.ss-uu-list .icon-wrapper { display: none !important; }
.ss-uu-list .fusion-li-item::before { content: ""; flex: 0 0 18px; height: 14px; background: no-repeat center / contain; }
.ss-uu-list--ja .fusion-li-item::before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='14' viewBox='0 0 18 14' fill='none' stroke='%23ebef57' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M1.5 7.5l5 5 10-11'/%3E%3C/svg%3E"); }
.ss-uu-list--nein .fusion-li-item::before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 14 14' fill='none' stroke='%237d889b' stroke-width='2.2' stroke-linecap='round'%3E%3Cpath d='M2 2l10 10M12 2 2 12'/%3E%3C/svg%3E"); }
.ss-uu-list .fusion-li-item-content {
	margin: 0 !important;
	font-family: var(--ss-font-card); font-size: clamp(20px, 1.7vw, 24px); line-height: 1.2; color: #fff;
}
.ss-uu-list.fusion-checklist .fusion-li-item .fusion-li-item-content { color: #fff !important; font-weight: 400; }
.ss-uu-list--nein.fusion-checklist .fusion-li-item .fusion-li-item-content { color: var(--ss-grey-dark) !important; }

/* Wie wir arbeiten: zwei Spalten im Glas */
.ss-uu-sechs-grid.fusion-builder-row {
	display: grid !important; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 40px 72px; align-items: start;
	width: 100% !important; margin: 0 !important;
}
.ss-uu-sechs-grid > .fusion-layout-column { width: auto !important; margin: 0 !important; min-width: 0; }
.ss-uu-sechs-head .ss-label { margin-bottom: 16px !important; }
.ss-uu-sechs-text .ss-intro { margin: 0 !important; max-width: none; font-size: 18px !important; line-height: 1.65 !important; }
.ss-uu-sechs-text .ss-uu-sechs-p1 { color: var(--ss-haze) !important; }
.ss-uu-sechs-text .ss-uu-sechs-p2 { margin-top: 18px !important; color: var(--ss-fog) !important; }
.ss-uu-sechs-text .fusion-column-wrapper > div:has(> .fusion-button) { margin-top: 30px; }

/* 20 Jahre: Zeitleiste */
.fusion-layout-column.ss-uu-zeit-head { max-width: 760px; margin-bottom: 56px !important; }
.ss-uu-zeit-head .ss-label { margin-bottom: 16px !important; }
.fusion-layout-column.ss-uu-tl { width: 100% !important; flex: 1 1 100% !important; }
.ss-uu-tl-row.fusion-builder-row {
	display: grid !important; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 40px 32px;
	width: 100% !important; margin: 0 !important;
}
.ss-uu-tl-row > .fusion-layout-column { width: auto !important; margin: 0 !important; min-width: 0; }
.ss-uu-tl-item > .fusion-column-wrapper { padding-top: 22px !important; border-top: 2px solid rgba(29, 35, 48, .18) !important; }
.ss-uu-tl-item.is-now > .fusion-column-wrapper { border-top-color: var(--ss-signal) !important; }
.ss-sec .fusion-title.ss-uu-tl-y { font-family: var(--ss-font-head); font-size: clamp(40px, 3.6vw, 52px); line-height: 1; color: var(--ss-ink); }
.ss-sec .fusion-title.ss-uu-tl-l { margin-top: 14px !important; font-family: var(--ss-font-label); font-size: 12px; letter-spacing: .16em; text-transform: uppercase; color: var(--ss-steel); }
.ss-sec .fusion-title.ss-uu-tl-d { margin-top: 10px !important; font-family: var(--ss-font-body); font-size: 16px; font-weight: 300; line-height: 1.55; color: #3a4356; }

/* Das Studio: Bildraster */
.fusion-fullwidth.ss-uu-studio > .fusion-builder-row.fusion-row { align-items: flex-end; justify-content: space-between; column-gap: 64px; row-gap: 20px; }
.fusion-layout-column.ss-uu-studio-head { flex: 1 1 520px !important; width: auto !important; max-width: 760px; }
.ss-uu-studio-head .ss-label { margin-bottom: 16px !important; }
.fusion-layout-column.ss-uu-studio-intro { flex: 0 1 420px !important; width: auto !important; }
.ss-uu-studio-intro .ss-intro { margin: 0 !important; font-size: 17px !important; }
.fusion-layout-column.ss-uu-gal { width: 100% !important; flex: 1 1 100% !important; margin-top: 28px !important; }
.ss-uu-gal-grid.fusion-builder-row {
	display: grid !important; grid-template-columns: 2fr 1fr 1fr; grid-template-rows: 240px 240px; gap: 16px;
	width: 100% !important; margin: 0 !important;
}
.ss-uu-gal-grid > .fusion-layout-column { width: auto !important; margin: 0 !important; min-width: 0; }
.fusion-layout-column.ss-uu-gal-main { grid-row: span 2; }
.ss-uu-gal-item > .fusion-column-wrapper { height: 100%; border-radius: 6px !important; overflow: hidden; }
.ss-uu-gal-item.ss-case-ph > .fusion-column-wrapper { background: var(--ss-fog) !important; }
.ss-uu-gal-main > .fusion-column-inner-bg { border-radius: 6px; overflow: hidden; }
.ss-uu-gal-main .fusion-column-inner-bg-image { transition: transform .9s cubic-bezier(.2, .7, .2, 1); }
.ss-uu-gal-main:hover .fusion-column-inner-bg-image { transform: scale(1.03); }

@media (max-width: 1000px) {
	.fusion-fullwidth.ss-uu-halt > .fusion-builder-row.fusion-row { grid-template-columns: minmax(0, 1fr); }
	.fusion-layout-column.ss-uu-wsn { margin-top: 16px !important; }
	.ss-uu-tl-row.fusion-builder-row { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 900px) {
	.fusion-fullwidth.ss-uu-tom > .fusion-builder-row.fusion-row { grid-template-columns: minmax(0, 1fr); }
	.ss-uu-tom-foto { max-width: 440px; }
	.ss-uu-sechs-grid.fusion-builder-row { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 800px) {
	.ss-uu-gal-grid.fusion-builder-row { grid-template-columns: 1fr 1fr; grid-template-rows: auto; }
	.ss-uu-gal-grid > .fusion-layout-column { aspect-ratio: 4 / 3; }
	.fusion-layout-column.ss-uu-gal-main { grid-column: span 2; grid-row: auto; }
}
@media (max-width: 560px) {
	.ss-uu-tl-row.fusion-builder-row { grid-template-columns: minmax(0, 1fr); }
}

/* =========================================================
   Kontakt
   Klassen: ss-kohero, ss-ko-main (ss-ko-daten | ss-ko-form, Formular ss-kform), ss-ko-ablauf, ss-ko-weg
   ========================================================= */
.fusion-fullwidth.ss-hero-frame.ss-kohero > .fusion-builder-row.fusion-row { min-height: 760px; }

.fusion-fullwidth.ss-ko-main > .fusion-builder-row.fusion-row,
.fusion-fullwidth.ss-ko-weg > .fusion-builder-row.fusion-row {
	padding-top: clamp(96px, 9vw, 140px) !important;
	padding-bottom: clamp(96px, 9vw, 140px) !important;
}
.fusion-fullwidth.ss-ko-main > .fusion-builder-row.fusion-row {
	display: grid !important; grid-template-columns: minmax(0, 1fr) minmax(0, 1.15fr); gap: 48px 88px; align-items: start;
}
.ss-ko-main > .fusion-builder-row > .fusion-layout-column { width: auto !important; margin: 0 !important; min-width: 0; }

/* Ansprechpartner */
.ss-ko-person.fusion-builder-row { display: flex !important; align-items: center; gap: 24px; width: 100% !important; margin: 0 0 32px !important; }
.fusion-layout-column.ss-ko-foto { flex: 0 0 120px !important; width: 120px !important; margin: 0 !important; }
.ss-ko-foto > .fusion-column-wrapper { aspect-ratio: 4 / 5; border-radius: 6px !important; background: var(--ss-fog) !important; }
.ss-ko-foto .ss-case-ph-label { font-size: 11px !important; color: var(--ss-steel) !important; }
.fusion-layout-column.ss-ko-person-text { flex: 1 1 auto !important; width: auto !important; margin: 0 !important; }
.ss-sec .fusion-title.ss-ko-name { font-family: var(--ss-font-card); font-size: 30px; line-height: 1.05; color: var(--ss-ink); }
.ss-sec .fusion-title.ss-ko-role { margin-top: 6px !important; font-family: var(--ss-font-body); font-size: 16px; font-weight: 300; color: #3a4356; }
.ss-ko-rows.fusion-builder-row { display: block !important; width: 100% !important; margin: 0 !important; border-bottom: 1px solid rgba(29, 35, 48, .14); }
.fusion-layout-column.ss-ko-row { width: 100% !important; margin: 0 !important; }
.ss-ko-row > .fusion-column-wrapper { padding: 20px 0 !important; border-top: 1px solid rgba(29, 35, 48, .14) !important; }
.ss-sec .fusion-title.ss-ko-row-l { margin: 0 0 6px !important; font-family: var(--ss-font-label); font-size: 11px; letter-spacing: .16em; text-transform: uppercase; color: var(--ss-grey-dark); }
.ss-sec .fusion-title.ss-ko-tel { font-family: var(--ss-font-head); font-size: clamp(30px, 2.8vw, 40px); line-height: 1.05; color: var(--ss-ink); }
.ss-sec .fusion-title.ss-ko-v { font-family: var(--ss-font-body); font-size: 17px; font-weight: 300; line-height: 1.55; color: var(--ss-ink); }
.ss-sec .fusion-title.ss-ko-v.is-soft { color: #3a4356; }
.ss-sec .fusion-title.ss-ko-tel a, .ss-sec .fusion-title.ss-ko-mail a { color: inherit !important; text-decoration: none; transition: color .3s ease; }
.ss-sec .fusion-title.ss-ko-tel a:hover, .ss-sec .fusion-title.ss-ko-mail a:hover { color: var(--ss-steel) !important; }

/* Formular-Box */
.ss-ko-form > .fusion-column-wrapper { padding: clamp(24px, 3vw, 40px) !important; border-radius: 6px !important; background: var(--ss-cloud) !important; }
.ss-sec .fusion-title.ss-ko-form-h { margin: 0 0 24px !important; font-family: var(--ss-font-card); font-size: 28px; line-height: 1.1; color: var(--ss-ink); }
.ss-kform .ss-kf > .fusion-builder-row { display: grid !important; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; width: 100% !important; margin: 0 !important; }
.ss-kform .ss-kf .fusion-layout-column { width: auto !important; margin: 0 !important; min-width: 0; }
.ss-kform .ss-kf .fusion-layout-column.fusion_builder_column_1_1 { grid-column: 1 / -1; }
.ss-kform .ss-kf .fusion-column-wrapper { padding: 0 !important; }
.ss-kform .fusion-form-field { margin: 0 !important; }
.ss-kform .fusion-form-label-wrapper { margin: 0 0 8px !important; }
.ss-kform .fusion-form-label-wrapper label, .ss-kform legend.fusion-form-label-wrapper .label, .ss-kform .fusion-form-textarea-field > label {
	display: block;
	margin: 0 !important; padding: 0 !important;
	font-family: var(--ss-font-label) !important; font-size: 11px !important; font-weight: 400 !important;
	letter-spacing: .16em !important; text-transform: uppercase !important; color: var(--ss-steel) !important;
}
.ss-kform abbr.fusion-form-element-required { color: inherit !important; text-decoration: none !important; border: 0 !important; }
.ss-kform legend.fusion-form-label-wrapper { float: none; width: 100%; padding: 0 !important; }
.ss-kform .fusion-form-textarea-field > label { margin: 0 0 8px !important; }
.ss-kform fieldset { margin: 0; padding: 0; border: 0; min-width: 0; }
.ss-kform input[type="text"], .ss-kform input[type="email"], .ss-kform input[type="tel"], .ss-kform textarea {
	box-sizing: border-box; width: 100% !important; height: 50px !important; padding: 0 14px !important;
	border: 0 !important; border-radius: 4px !important; background: #fff !important;
	box-shadow: inset 0 0 0 1px rgba(29, 35, 48, .16) !important;
	font-family: var(--ss-font-body) !important; font-size: 16px !important; font-weight: 300; color: var(--ss-ink) !important;
	transition: box-shadow .2s ease;
}
.ss-kform textarea { height: auto !important; min-height: 150px; padding: 14px !important; resize: vertical; }
.ss-kform input:focus, .ss-kform textarea:focus { outline: none !important; box-shadow: inset 0 0 0 2px var(--ss-steel) !important; }

/* „Worum geht es?“ als Auswahl-Chips */
.ss-kform .ss-kf-chips fieldset { display: flex; flex-wrap: wrap; gap: 8px; }
.ss-kform .ss-kf-chips legend { flex: 0 0 100%; }
.ss-kform .ss-kf-chips .fusion-form-checkbox.option-inline { position: relative; display: inline-flex !important; margin: 0 !important; padding: 0 !important; }
.ss-kform .ss-kf-chips .fusion-form-checkbox.option-inline input { position: absolute !important; opacity: 0; width: 1px !important; height: 1px !important; margin: 0 !important; }
.ss-kform .ss-kf-chips .fusion-form-checkbox.option-inline label {
	display: inline-flex !important; align-items: center; min-height: 38px; margin: 0 !important; padding: 0 14px !important;
	border-radius: 4px; background: #fff; box-shadow: inset 0 0 0 1px rgba(29, 35, 48, .16); cursor: pointer;
	font-family: var(--ss-font-label); font-size: 12px; letter-spacing: .16em; text-transform: uppercase; color: var(--ss-ink);
	transition: background-color .2s ease, color .2s ease;
}
.ss-kform .ss-kf-chips .fusion-form-checkbox.option-inline label::before, .ss-kform .ss-kf-chips .fusion-form-checkbox.option-inline label::after { display: none !important; }
.ss-kform .ss-kf-chips .fusion-form-checkbox.option-inline input:checked + label { background: var(--ss-steel); color: #fff; box-shadow: none; }
.ss-kform .ss-kf-chips .fusion-form-checkbox.option-inline input:focus-visible + label { outline: 2px solid var(--ss-signal); outline-offset: 2px; }

/* Einwilligung */
.ss-kform .ss-kf-consent > .fusion-form-label-wrapper { display: none !important; }
.ss-kform .fusion-form-recaptcha-field { margin-top: 16px !important; }
.ss-kform .ss-kf-consent .fusion-form-checkbox { display: flex !important; gap: 12px; align-items: flex-start; margin: 0 !important; padding: 0 !important; }
.ss-kform .ss-kf-consent input[type="checkbox"] { position: static !important; opacity: 1 !important; flex: 0 0 auto; width: 20px !important; height: 20px !important; margin: 2px 0 0 !important; accent-color: var(--ss-steel); }
.ss-kform .ss-kf-consent label { margin: 0 !important; padding: 0 !important; font-family: var(--ss-font-body); font-size: 15px !important; font-weight: 300; line-height: 1.5; color: #3a4356 !important; text-transform: none !important; letter-spacing: 0 !important; }
.ss-kform .ss-kf-consent label::before, .ss-kform .ss-kf-consent label::after { display: none !important; }
.ss-kform .ss-kf-consent a { color: var(--ss-ink) !important; text-decoration: underline; }

/* Absenden im Signal-Stil */
.ss-kform .fusion-form-submit-field.ss-btn {
	display: block; height: auto; margin: 4px 0 0 !important; padding: 0 !important;
	background: none !important; border-radius: 0; transition: none;
}
.ss-kform .fusion-form-submit-field.ss-btn::before, .ss-kform .fusion-form-submit-field.ss-btn::after { display: none !important; }
.ss-kform button.fusion-button.ss-btn {
	position: relative; display: inline-flex !important; align-items: center; height: 40px; margin-right: 60px;
	padding: 0 4px 0 18px !important; border: 0 !important; border-radius: 6px 0 0 6px !important;
	background: var(--ss-ink) !important; color: #fff !important; box-shadow: none !important; overflow: visible !important;
	font-family: var(--ss-font-label) !important; font-size: 13px !important; line-height: 1 !important;
	letter-spacing: .16em !important; text-transform: uppercase !important; cursor: pointer;
}
.ss-kform button.fusion-button.ss-btn .fusion-button-text { font: inherit !important; color: inherit !important; letter-spacing: inherit !important; text-transform: inherit !important; }
.ss-kform button.fusion-button.ss-btn:hover { background: var(--ss-slate) !important; }
.ss-kform button.fusion-button.ss-btn i { display: none !important; }
.ss-kform .fusion-form-notice, .ss-kform .fusion-alert { margin: 0 0 16px !important; border-radius: 4px !important; }

/* So geht es los */
.fusion-fullwidth.ss-ko-ablauf > .fusion-builder-row.fusion-row {
	padding-top: clamp(110px, 10vw, 160px) !important;
	padding-bottom: clamp(110px, 10vw, 160px) !important;
}
.fusion-layout-column.ss-ko-ablauf-head { max-width: 760px; margin-bottom: 56px !important; }
.ss-ko-ablauf-head .ss-label { margin-bottom: 16px !important; }
.fusion-layout-column.ss-ko-steps { width: 100% !important; flex: 1 1 100% !important; }
.ss-ko-steps-row.fusion-builder-row { display: grid !important; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 40px 48px; width: 100% !important; margin: 0 !important; }
.ss-ko-steps-row > .fusion-layout-column { width: auto !important; margin: 0 !important; min-width: 0; }
.ss-ko-step > .fusion-column-wrapper { padding-top: 24px !important; border-top: 1px solid rgba(255, 255, 255, .18) !important; }
.ss-ko-step .ss-label { color: var(--ss-mist) !important; }
.ss-sec .fusion-title.ss-ko-step-t { font-family: var(--ss-font-head); font-size: clamp(26px, 2.2vw, 32px); line-height: 1.05; color: #fff; }
.ss-sec .fusion-title.ss-ko-step-d { margin-top: 14px !important; font-family: var(--ss-font-body); font-size: 17px; font-weight: 300; line-height: 1.6; color: var(--ss-fog); }

/* Anfahrt */
.fusion-fullwidth.ss-ko-weg > .fusion-builder-row.fusion-row { display: grid !important; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 32px 72px; align-items: end; }
.ss-ko-weg > .fusion-builder-row > .fusion-layout-column { width: auto !important; margin: 0 !important; min-width: 0; }
.ss-ko-weg-head .ss-label { margin-bottom: 16px !important; }
.ss-ko-weg-intro .ss-intro { margin: 0 !important; max-width: none; }
.fusion-layout-column.ss-ko-map { grid-column: 1 / -1; margin-top: 16px !important; }
.ss-ko-map > .fusion-column-wrapper { height: 420px; gap: 18px; padding: 24px !important; border-radius: 6px !important; background: var(--ss-fog) !important; text-align: center; }
.ss-ko-map .ss-case-ph-label { color: var(--ss-steel) !important; }
.ss-ko-map .fusion-button.ss-btn { margin-left: 0; }

@media (max-width: 900px) {
	.fusion-fullwidth.ss-ko-main > .fusion-builder-row.fusion-row,
	.fusion-fullwidth.ss-ko-weg > .fusion-builder-row.fusion-row { grid-template-columns: minmax(0, 1fr); }
	.ss-ko-steps-row.fusion-builder-row { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 600px) {
	.ss-kform .ss-kf > .fusion-builder-row { grid-template-columns: minmax(0, 1fr); }
	.fusion-fullwidth.ss-hero-frame.ss-kohero > .fusion-builder-row.fusion-row { min-height: 640px; }
}
.ss-ko-daten .ss-label { margin-bottom: 16px !important; }
.ss-ko-person.fusion-builder-row { flex-wrap: nowrap !important; }
.fusion-layout-column.ss-ko-person-text { min-width: 0; }
/* Kontakt: Karte nach Einwilligung */
.ss-ko-map > .fusion-column-wrapper { position: relative; overflow: hidden; }
.ss-sec .fusion-title.ss-ko-map-hint { max-width: 460px; font-family: var(--ss-font-body); font-size: 14px; font-weight: 300; line-height: 1.5; text-transform: none; letter-spacing: 0; color: #3a4356; }
.ss-sec .fusion-title.ss-ko-map-hint a { color: inherit !important; text-decoration: underline; }
.ss-ko-map-frame { position: absolute; inset: 0; z-index: 2; width: 100%; height: 100%; border: 0; display: block; }
.ss-ko-map-big {
	position: absolute; right: 12px; top: 12px; z-index: 3;
	display: inline-flex; align-items: center; min-height: 34px; padding: 0 12px; border-radius: 4px;
	background: var(--ss-ink); color: #fff !important; text-decoration: none !important;
	font-family: var(--ss-font-label); font-size: 11px; letter-spacing: .16em; text-transform: uppercase;
	box-shadow: 0 6px 18px rgba(29, 35, 48, .25); transition: background-color .3s ease;
}
.ss-ko-map-big:hover { background: var(--ss-slate); }
.ss-ko-map.is-loaded .fusion-title, .ss-ko-map.is-loaded .fusion-button { visibility: hidden; }
.ss-ko-map .fusion-title.ss-case-ph-label { margin-bottom: 18px !important; }
.ss-sec .ss-ko-map .fusion-title.ss-ko-map-hint { margin-top: 20px !important; text-align: center; }
.ss-sec .ss-ko-map .fusion-title.ss-ko-map-hint .fusion-title-heading { text-align: center !important; }
.ss-sec .fusion-title.ss-ko-map-hint a { text-decoration: none; }
.ss-sec .fusion-title.ss-ko-map-hint a:hover { color: var(--ss-ink) !important; text-decoration: underline; }
.ss-ko-map .fusion-button-wrapper, .ss-ko-map div:has(> .fusion-button) { margin: 0 !important; }
/* Kontakt: Leaflet-Karte + Markierung in Signalgelb */
.ss-ko-map-frame.leaflet-container { position: absolute !important; inset: 0; z-index: 2; font-family: var(--ss-font-body); background: var(--ss-fog); }
.ss-ko-pin { background: none !important; border: 0 !important; }
.ss-ko-pin svg { display: block; filter: drop-shadow(0 4px 8px rgba(29, 35, 48, .35)); }
.ss-ko-map .leaflet-popup-content-wrapper { border-radius: 6px; }
.ss-ko-map .leaflet-popup-content { margin: 12px 16px; font-size: 14px; line-height: 1.5; color: var(--ss-ink); }
.ss-ko-map .leaflet-bar a { color: var(--ss-ink) !important; }
.ss-ko-map .leaflet-control-attribution a { color: var(--ss-steel) !important; }

/* =========================================================
   Rechtliches: Impressum, Datenschutz, AGB
   Klassen: ss-legalhero, ss-legal (ss-legal-side | ss-legal-body)
   ========================================================= */
.fusion-fullwidth.ss-hero-frame.ss-legalhero > .fusion-builder-row.fusion-row { min-height: 620px; }
.fusion-fullwidth.ss-legal > .fusion-builder-row.fusion-row {
	padding-top: clamp(96px, 9vw, 140px) !important;
	padding-bottom: clamp(96px, 9vw, 140px) !important;
	display: grid !important; grid-template-columns: minmax(0, 300px) minmax(0, 1fr); gap: 48px 88px; align-items: start;
}
.ss-legal > .fusion-builder-row > .fusion-layout-column { width: auto !important; margin: 0 !important; min-width: 0; }

/* Inhaltsverzeichnis (klebt beim Scrollen) */
.fusion-layout-column.ss-legal-side { position: sticky !important; top: 120px; align-self: start; }
.ss-legal-side .ss-label { margin-bottom: 14px !important; }
.ss-legal-side > .fusion-column-wrapper { max-height: calc(100vh - 160px); overflow-y: auto; border-bottom: 1px solid rgba(29, 35, 48, .14); scrollbar-width: thin; }
.ss-sec .fusion-title.ss-legal-toc-a { border-top: 1px solid rgba(29, 35, 48, .14); }
.ss-sec .fusion-title.ss-legal-toc-a a {
	display: block; padding: 11px 24px 11px 0; position: relative;
	font-family: var(--ss-font-card); font-size: 16px; line-height: 1.3; color: var(--ss-ink) !important; text-decoration: none;
	transition: color .25s ease, padding-left .25s ease;
}
.ss-sec .fusion-title.ss-legal-toc-a a::after {
	content: ""; position: absolute; right: 2px; top: 50%; width: 8px; height: 9px; margin-top: -4.5px;
	background: var(--ss-signal); clip-path: polygon(50% 5%, 94.4% 27.5%, 94.4% 72.5%, 50% 95%, 5.6% 72.5%, 5.6% 27.5%);
	opacity: 0; transition: opacity .25s ease;
}
.ss-sec .fusion-title.ss-legal-toc-a a:hover { color: var(--ss-steel) !important; padding-left: 4px; }
.ss-sec .fusion-title.ss-legal-toc-a a:hover::after, .ss-sec .fusion-title.ss-legal-toc-a.is-active a::after { opacity: 1; }
.ss-sec .fusion-title.ss-legal-toc-a.is-sub { border-top: 0; }
.ss-sec .fusion-title.ss-legal-toc-a.is-sub a { padding: 5px 24px 5px 16px; font-family: var(--ss-font-body); font-size: 14px; font-weight: 300; color: #3a4356 !important; }
.ss-sec .fusion-title.ss-legal-toc-a.is-sub:last-of-type a, .ss-sec .fusion-title.ss-legal-toc-a.is-sub + .ss-legal-toc-a:not(.is-sub) { }

/* Text */
.ss-legal-body > .fusion-column-wrapper { max-width: 760px; }
.ss-sec .fusion-title.ss-legal-h2 {
	margin: 64px 0 20px !important; padding-top: 28px; border-top: 1px solid rgba(29, 35, 48, .14);
	font-family: var(--ss-font-head); font-size: clamp(26px, 2.4vw, 34px); line-height: 1.1; color: var(--ss-ink);
	scroll-margin-top: 110px;
}
.ss-legal-body .fusion-column-wrapper > .fusion-title.ss-legal-h2:first-child { margin-top: 0 !important; padding-top: 0; border-top: 0; }
.ss-sec .fusion-title.ss-legal-h3 { margin: 36px 0 12px !important; font-family: var(--ss-font-card); font-size: 21px; line-height: 1.2; color: var(--ss-ink); scroll-margin-top: 110px; }
.ss-sec .fusion-title.ss-legal-h4 { margin: 24px 0 8px !important; font-family: var(--ss-font-label); font-size: 13px; letter-spacing: .12em; text-transform: uppercase; color: var(--ss-steel); }
.ss-sec .fusion-title.ss-legal-p { margin: 0 0 16px !important; font-family: var(--ss-font-body); font-size: 17px; font-weight: 300; line-height: 1.7; color: #3a4356; overflow-wrap: anywhere; }
.ss-sec .fusion-title.ss-legal-p strong { font-weight: 600; color: var(--ss-ink); }
.ss-sec .fusion-title.ss-legal-p a { color: var(--ss-ink) !important; text-decoration: underline; text-decoration-color: rgba(29, 35, 48, .3); text-underline-offset: 3px; }
.ss-sec .fusion-title.ss-legal-p a:hover { text-decoration-color: var(--ss-ink); }
.ss-legal-list.fusion-checklist { margin: 0 0 20px !important; }
.ss-legal-list .fusion-li-item { align-items: flex-start !important; padding: 8px 0 !important; }
.ss-legal-list .fusion-li-item::before { margin-top: 13px; }
.ss-legal-list .fusion-li-item-content { font-size: 17px !important; font-weight: 300 !important; line-height: 1.65; color: #3a4356 !important; }

@media (max-width: 1000px) {
	.fusion-fullwidth.ss-legal > .fusion-builder-row.fusion-row { grid-template-columns: minmax(0, 1fr); gap: 40px; }
	.fusion-layout-column.ss-legal-side { position: static !important; }
	.ss-legal-side > .fusion-column-wrapper { max-height: none; overflow: visible; }
}
@media (max-width: 800px) {
	.fusion-fullwidth.ss-hero-frame.ss-legalhero > .fusion-builder-row.fusion-row { min-height: 520px; }
}

/* =========================================================
   Cookie-Leiste (Avada-Datenschutzleiste) im Stil von Redesign J
   ========================================================= */
.fusion-privacy-bar.fusion-privacy-bar-bottom {
	left: 16px !important; right: 16px !important; bottom: 16px !important; width: auto !important;
	max-width: 1328px; margin: 0 auto; padding: 0 !important;
	border-radius: 8px; overflow: hidden;
	background: rgba(29, 35, 48, .94) !important; color: var(--ss-fog) !important;
	-webkit-backdrop-filter: blur(18px) saturate(150%); backdrop-filter: blur(18px) saturate(150%);
	box-shadow: 0 24px 60px rgba(17, 23, 32, .35), inset 0 0 0 1px rgba(255, 255, 255, .1);
	font-family: var(--ss-font-body); font-size: 15px !important; font-weight: 300; line-height: 1.55;
	z-index: 99999;
}
.fusion-privacy-bar .fusion-privacy-bar-main {
	display: flex !important; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 16px 32px;
	padding: 20px 24px !important; text-align: left !important;
}
.fusion-privacy-bar .fusion-privacy-bar-main > span { flex: 1 1 420px; min-width: 0; color: var(--ss-fog); }
.fusion-privacy-bar a { color: #fff !important; text-decoration: underline; text-decoration-color: rgba(255, 255, 255, .35); text-underline-offset: 3px; }
.fusion-privacy-bar a:hover { color: var(--ss-signal) !important; }
.fusion-privacy-bar .fusion-privacy-bar-learn-more {
	display: inline-flex; align-items: center; gap: 6px; margin-left: 6px;
	font-family: var(--ss-font-label); font-size: 12px; letter-spacing: .14em; text-transform: uppercase; text-decoration: none !important;
	color: var(--ss-signal) !important;
}
.fusion-privacy-bar .fusion-privacy-bar-learn-more i { transition: transform .3s ease; }
.fusion-privacy-bar .fusion-privacy-bar-buttons { display: flex; flex-wrap: wrap; gap: 8px; margin: 0 !important; }
.fusion-privacy-bar .fusion-privacy-bar-buttons .fusion-button {
	display: inline-flex; align-items: center; min-height: 40px; margin: 0 !important; padding: 0 18px !important;
	border: 0 !important; border-radius: 4px !important; box-shadow: none !important;
	font-family: var(--ss-font-label) !important; font-size: 12px !important; line-height: 1 !important; font-weight: 400 !important;
	letter-spacing: .16em !important; text-transform: uppercase !important; text-decoration: none !important;
	transition: background-color .25s ease, color .25s ease, box-shadow .25s ease;
}
.fusion-privacy-bar .fusion-privacy-bar-accept-all { background: var(--ss-signal) !important; color: var(--ss-ink) !important; }
.fusion-privacy-bar .fusion-privacy-bar-accept-all:hover { background: #f4f78a !important; color: var(--ss-ink) !important; }
.fusion-privacy-bar .fusion-privacy-bar-reject { background: transparent !important; color: #fff !important; box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .4) !important; }
.fusion-privacy-bar .fusion-privacy-bar-reject:hover { box-shadow: inset 0 0 0 1px #fff !important; color: #fff !important; }
.fusion-privacy-bar .fusion-privacy-bar-acceptance { background: #fff !important; color: var(--ss-ink) !important; }
.fusion-privacy-bar .fusion-privacy-bar-acceptance:hover { background: var(--ss-haze) !important; color: var(--ss-ink) !important; }

/* Einstellungen (aufgeklappt) */
.fusion-privacy-bar .fusion-privacy-bar-full {
	padding: 4px 24px 24px !important; border-top: 1px solid rgba(255, 255, 255, .1);
	max-height: min(60vh, 520px); overflow-y: auto;
}
.fusion-privacy-bar .fusion-privacy-bar-full .fusion-row { max-width: none !important; margin: 0 !important; padding: 0 !important; }
.fusion-privacy-bar .fusion-privacy-bar-full .fusion-columns {
	display: grid !important; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; margin: 20px 0 0 !important;
}
.fusion-privacy-bar .fusion-privacy-bar-full .fusion-column {
	width: auto !important; float: none !important; margin: 0 !important; padding: 18px 20px !important;
	border-radius: 6px; background: rgba(255, 255, 255, .05); box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .08);
	font-size: 14px; line-height: 1.55; color: var(--ss-fog);
}
.fusion-privacy-bar .fusion-privacy-group-heading { margin: 0 0 8px; }
.fusion-privacy-bar .fusion-privacy-group-heading .column-title {
	display: flex; align-items: center; gap: 10px; margin: 0 !important;
	font-family: var(--ss-font-label) !important; font-size: 13px !important; font-weight: 400 !important;
	letter-spacing: .16em !important; text-transform: uppercase !important; color: #fff !important;
}
.fusion-privacy-bar .fusion-privacy-group-heading .column-title::before {
	content: ""; flex: 0 0 auto; width: 8px; height: 9px; background: var(--ss-signal);
	clip-path: polygon(50% 5%, 94.4% 27.5%, 94.4% 72.5%, 50% 95%, 5.6% 72.5%, 5.6% 27.5%);
}
.fusion-privacy-bar .fusion-privacy-choices { margin: 14px 0 0 !important; padding: 12px 0 0 !important; list-style: none; border-top: 1px solid rgba(255, 255, 255, .1); }
.fusion-privacy-bar .fusion-privacy-choices li { margin: 0 0 6px !important; padding: 0 !important; }
.fusion-privacy-bar .fusion-privacy-choices label { display: flex !important; align-items: center; gap: 10px; margin: 0 !important; cursor: pointer; font-size: 14px; color: #fff; }
.fusion-privacy-bar .fusion-privacy-choices li.is-necessary label { opacity: .6; }
.fusion-privacy-bar .fusion-privacy-choices input[type="checkbox"] { width: 18px; height: 18px; margin: 0 !important; accent-color: var(--ss-signal); }

@media (max-width: 900px) {
	.fusion-privacy-bar .fusion-privacy-bar-full .fusion-columns { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 600px) {
	.fusion-privacy-bar.fusion-privacy-bar-bottom { left: 8px !important; right: 8px !important; bottom: 8px !important; }
	.fusion-privacy-bar .fusion-privacy-bar-main { padding: 16px !important; }
	.fusion-privacy-bar .fusion-privacy-bar-buttons { width: 100%; }
	.fusion-privacy-bar .fusion-privacy-bar-buttons .fusion-button { flex: 1 1 auto; justify-content: center; }
	.fusion-privacy-bar .fusion-privacy-bar-full { padding: 0 16px 16px !important; max-height: 55vh; }
}
.fusion-privacy-bar .fusion-privacy-bar-main { flex-direction: row !important; text-align: left !important; }
.fusion-privacy-bar .fusion-privacy-bar-main > span { text-align: left !important; }
.fusion-privacy-bar .fusion-privacy-bar-buttons { flex-direction: row !important; align-items: center !important; justify-content: flex-end; width: auto !important; }
.fusion-privacy-bar .fusion-privacy-bar-buttons .fusion-button { width: auto !important; }
.fusion-privacy-bar .fusion-privacy-bar-full .fusion-columns::before, .fusion-privacy-bar .fusion-privacy-bar-full .fusion-columns::after { display: none !important; content: none !important; }
@media (max-width: 600px) {
	.fusion-privacy-bar .fusion-privacy-bar-buttons { justify-content: stretch; }
	.fusion-privacy-bar .fusion-privacy-bar-buttons .fusion-button { flex: 1 1 100%; }
}
.fusion-privacy-bar .fusion-privacy-bar-main > span { flex: 1 1 520px; max-width: 720px; }
.fusion-privacy-bar .fusion-privacy-bar-buttons { margin-left: auto !important; }
.fusion-privacy-bar .fusion-privacy-bar-buttons .fusion-privacy-bar-reject { box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .4) !important; }
.fusion-privacy-bar .fusion-privacy-bar-buttons .fusion-privacy-bar-reject:hover { box-shadow: inset 0 0 0 1px #fff !important; }
@media (max-width: 600px) { .fusion-privacy-bar .fusion-privacy-bar-buttons { margin-left: 0 !important; } }

/* =========================================================
   Hero-Rahmen rundum (auch unten) + Startseite: anfangs nur das Logo
   ========================================================= */
.fusion-fullwidth.ss-sec.ss-hero-frame::after,
body:not(:has(.ss-header.fusion-absolute-container)) .fusion-fullwidth.ss-sec.ss-hero-frame::after {
	background:
		linear-gradient(#fff, #fff) left top / 100% var(--ss-frame, 16px) no-repeat,
		linear-gradient(#fff, #fff) left bottom / 100% var(--ss-frame, 16px) no-repeat,
		linear-gradient(#fff, #fff) left top / var(--ss-frame, 16px) 100% no-repeat,
		linear-gradient(#fff, #fff) right top / var(--ss-frame, 16px) 100% no-repeat,
		radial-gradient(circle at 100% 100%, transparent calc(var(--ss-fr-r, 22px) - .5px), #fff var(--ss-fr-r, 22px))
			left var(--ss-frame, 16px) top var(--ss-frame, 16px) / var(--ss-fr-r, 22px) var(--ss-fr-r, 22px) no-repeat,
		radial-gradient(circle at 0 100%, transparent calc(var(--ss-fr-r, 22px) - .5px), #fff var(--ss-fr-r, 22px))
			right var(--ss-frame, 16px) top var(--ss-frame, 16px) / var(--ss-fr-r, 22px) var(--ss-fr-r, 22px) no-repeat,
		radial-gradient(circle at 100% 0, transparent calc(var(--ss-fr-r, 22px) - .5px), #fff var(--ss-fr-r, 22px))
			left var(--ss-frame, 16px) bottom var(--ss-frame, 16px) / var(--ss-fr-r, 22px) var(--ss-fr-r, 22px) no-repeat,
		radial-gradient(circle at 0 0, transparent calc(var(--ss-fr-r, 22px) - .5px), #fff var(--ss-fr-r, 22px))
			right var(--ss-frame, 16px) bottom var(--ss-frame, 16px) / var(--ss-fr-r, 22px) var(--ss-fr-r, 22px) no-repeat;
}
/* Startseite: Kicker, Claim und Kacheln sind von Anfang an ausgeblendet (auch bevor das Skript läuft),
   das Skript blendet sie beim Scrollen nacheinander ein. */
.ss-hero-frame:has(.ss-hero-logo) { --ss-q: 0; --ss-qy: 30px; }
.ss-hero-frame:has(.ss-hero-logo) .ss-app { --ss-ao: 0; --ss-ay: 24px; }
@media (prefers-reduced-motion: reduce) {
	.ss-hero-frame:has(.ss-hero-logo) { --ss-q: 1; --ss-qy: 0px; }
	.ss-hero-frame:has(.ss-hero-logo) .ss-app { --ss-ao: 1; --ss-ay: 0px; }
}
/* Startseite: Hero bildschirmfüllend */
.fusion-fullwidth.ss-hero-frame:has(.ss-hero-logo) > .fusion-builder-row.fusion-row,
body:not(:has(.ss-header.fusion-absolute-container)) .fusion-fullwidth.ss-hero-frame:has(.ss-hero-logo) > .fusion-builder-row.fusion-row {
	min-height: 100vh;
	min-height: 100svh;
}
/* Startseite: Logo genau in der Bildschirmmitte, Kicker/Claim/Kacheln unten im Hero (blenden beim Scrollen ein) */
.fusion-fullwidth.ss-hero-frame:has(.ss-hero-logo) > .fusion-builder-row.fusion-row {
	align-content: flex-end !important;
	padding-bottom: clamp(48px, 8vh, 96px) !important;
}
.ss-hero-frame:has(.ss-hero-logo) .fusion-layout-column.ss-hero-main { position: static !important; }
.ss-hero-frame .fusion-image-element:has(.ss-hero-logo) {
	position: absolute !important;
	left: 0; right: 0; top: 50%;
	transform: translateY(-50%);
	margin: 0 !important;
	text-align: center;
	pointer-events: none;
	z-index: 1;
}
.ss-hero-frame .fusion-image-element:has(.ss-hero-logo) .ss-hero-logo { margin: 0 auto !important; }
@media (max-width: 800px) {
	/* Handy: Claim + Kacheln brauchen mehr Höhe, Logo etwas über der Mitte, damit sich beim Einblenden nichts überlagert */
	.ss-hero-frame .fusion-image-element:has(.ss-hero-logo) { top: 38%; }
}
/* Eingeloggt: WordPress-Adminleiste von der Hero-Höhe abziehen, damit die untere Rahmenkante sichtbar bleibt */
body.admin-bar .fusion-fullwidth.ss-hero-frame:has(.ss-hero-logo) > .fusion-builder-row.fusion-row {
	min-height: calc(100vh - var(--wp-admin--admin-bar--height, 32px));
	min-height: calc(100svh - var(--wp-admin--admin-bar--height, 32px));
}
/* Startseite wie im Layout: der ganze Rahmen sitzt fest am Fenster (oben, unten, links, rechts) und wird beim
   Scrollen dünner, statt mit dem Hero mitzuwandern. Sichtbar nur, solange er breiter als 0 ist. */
.fusion-fullwidth.ss-sec.ss-hero-frame:has(.ss-hero-logo)::after { content: none; }
.fusion-fullwidth.ss-sec.ss-hero-frame:has(.ss-hero-logo)::before {
	content: "";
	position: fixed;
	inset: 0;
	z-index: 60;
	pointer-events: none;
	background:
		linear-gradient(#fff, #fff) left top / 100% var(--ss-frame, 16px) no-repeat,
		linear-gradient(#fff, #fff) left bottom / 100% var(--ss-frame, 16px) no-repeat,
		linear-gradient(#fff, #fff) left top / var(--ss-frame, 16px) 100% no-repeat,
		linear-gradient(#fff, #fff) right top / var(--ss-frame, 16px) 100% no-repeat,
		radial-gradient(circle at 100% 100%, transparent calc(var(--ss-fr-r, 22px) - .5px), #fff var(--ss-fr-r, 22px))
			left var(--ss-frame, 16px) top var(--ss-frame, 16px) / var(--ss-fr-r, 22px) var(--ss-fr-r, 22px) no-repeat,
		radial-gradient(circle at 0 100%, transparent calc(var(--ss-fr-r, 22px) - .5px), #fff var(--ss-fr-r, 22px))
			right var(--ss-frame, 16px) top var(--ss-frame, 16px) / var(--ss-fr-r, 22px) var(--ss-fr-r, 22px) no-repeat,
		radial-gradient(circle at 100% 0, transparent calc(var(--ss-fr-r, 22px) - .5px), #fff var(--ss-fr-r, 22px))
			left var(--ss-frame, 16px) bottom var(--ss-frame, 16px) / var(--ss-fr-r, 22px) var(--ss-fr-r, 22px) no-repeat,
		radial-gradient(circle at 0 0, transparent calc(var(--ss-fr-r, 22px) - .5px), #fff var(--ss-fr-r, 22px))
			right var(--ss-frame, 16px) bottom var(--ss-frame, 16px) / var(--ss-fr-r, 22px) var(--ss-fr-r, 22px) no-repeat;
}
body.admin-bar .fusion-fullwidth.ss-sec.ss-hero-frame:has(.ss-hero-logo)::before { top: var(--wp-admin--admin-bar--height, 32px); }
.fusion-fullwidth.ss-sec.ss-hero-frame:has(.ss-hero-logo) { z-index: 3 !important; }


/* =========================================================
   Optimierungen 10.11.2026
   ========================================================= */

/* Hero: drei Kacheln mit gleichem Abstand, Unterzeile 12px wie im Klickdummy */
.ss-hero-frame .fusion-layout-column.ss-app { width: 176px !important; flex: 0 0 176px !important; }
.ss-hero-frame .ss-app-label .fusion-title-heading,
.ss-hero-frame .ss-app-label .fusion-title-heading a {
	font-family: var(--ss-font-label) !important;
	font-size: 12px !important;
	line-height: 1.3 !important;
	letter-spacing: .16em !important;
	text-transform: uppercase !important;
	white-space: nowrap;
}
@media (max-width: 680px) {
	.ss-hero-frame .fusion-layout-column.ss-app { width: 150px !important; flex: 0 0 150px !important; }
	.ss-hero-frame .ss-app-label .fusion-title-heading,
	.ss-hero-frame .ss-app-label .fusion-title-heading a { font-size: 10px !important; letter-spacing: .1em !important; }
}

/* Leistungen: Raster 4 / 2 / 1, Kopf buendig mit der ersten Karte */
.ss-leistungen > .fusion-builder-row {
	display: grid !important;
	grid-template-columns: repeat(4, 300px);
	justify-content: center;
	gap: 16px !important;
}
.ss-leistungen > .fusion-builder-row > .fusion-layout-column { width: auto !important; max-width: none !important; flex: none !important; margin: 0 !important; }
.ss-leistungen > .fusion-builder-row > .ss-sec-head { grid-column: 1 / -1; max-width: none; margin-bottom: 56px !important; }
@media (max-width: 1380px) { .ss-leistungen > .fusion-builder-row { grid-template-columns: repeat(2, 300px); } }
@media (max-width: 680px) { .ss-leistungen > .fusion-builder-row { grid-template-columns: minmax(0, 300px); } }

/* Projekt-Slider: Abstand zwischen Laufbalken und Button */
.ss-showcase-foot > .fusion-column-wrapper { column-gap: 0 !important; }
.ss-showcase-foot .ss-pj-tabs { margin-right: 56px; }
@media (max-width: 800px) { .ss-showcase-foot .ss-pj-tabs { margin-right: 0; flex-basis: 100%; } }

/* ---------- Optimierungen 10.11.2026, Leistungsseiten ---------- */

/* Abstand Kicker zu Headline wie im Klickdummy (Avada-Titel hatten 0) */
.ss-sec .fusion-title.ss-label:not(.ss-panel-kicker):not(.ss-slide-kicker):not(.ss-hero-kicker):not(.ss-fig-cap) { margin: 0 0 var(--ss-kg, 16px) !important; }
.ss-lhero, .ss-fwhero, .ss-pjhero, .ss-casefv, .ss-hero-claim { --ss-kg: 18px; }
.ss-kt-neu { --ss-kg: 24px; }
.ss-sec .fusion-title.ss-label.is-small { --ss-kg: 12px; }
.ss-flip-back { --ss-kg: 16px; }

/* Kartenrueckseite Leistungsumfang wie im Klickdummy */
.ss-flip-back > .fusion-column-wrapper { justify-content: space-between !important; }
.ss-scope .fusion-li-item-content {
	font-family: var(--ss-font-head) !important;
	font-size: 18px !important;
	font-weight: 600 !important;
	line-height: 1.15 !important;
	color: var(--ss-ink) !important;
}
.ss-scope .fusion-li-item-content * { color: inherit !important; font-weight: inherit !important; }

/* Ehrlicher Rat: weisser Rand rundum, auch rechts und mobil */
.ss-rat-grid.fusion-builder-row { padding: 14px !important; }
@media (max-width: 1000px) {
	.fusion-layout-column.ss-rat-result { max-width: none !important; width: 100% !important; }
}

/* Glasflaeche als ein Stueck statt drei Streifen */
.ss-pbild .ss-panel-row.fusion-builder-row { width: min(520px, 100%) !important; max-width: 100% !important; margin: 0 !important; }
.ss-pbild .fusion-layout-column.ss-panel { width: 100% !important; margin: 0 !important; }
.ss-panel > .fusion-column-wrapper {
	padding: 0 !important;
	border-radius: 6px !important;
	background: rgba(255, 255, 255, .62) !important;
	-webkit-backdrop-filter: blur(22px) saturate(150%);
	backdrop-filter: blur(22px) saturate(150%);
}
.ss-panel .ss-panel-kicker, .ss-panel .ss-panel-title, .ss-panel .ss-panel-text {
	width: 100%;
	background: none !important;
	-webkit-backdrop-filter: none !important;
	backdrop-filter: none !important;
}
.ss-flip-back .ss-scope.fusion-checklist { margin-top: auto !important; }
.ss-flip-face > .fusion-column-wrapper { min-height: 440px !important; box-sizing: border-box; }
.ss-scope .icon-wrapper { min-width: 22px; }

/* ---------- Projekte: Rahmen endet kurz ueber den Kacheln, Kacheln auf Weiss (10.11.2026) ---------- */
.fusion-fullwidth.ss-hero-frame.ss-pjhero > .fusion-builder-row.fusion-row { padding-bottom: 88px !important; }
.fusion-fullwidth.ss-pj-gridsec { background: #fff !important; }
.fusion-fullwidth.ss-pj-gridsec > .fusion-builder-row.fusion-row {
	padding-top: 40px !important;
	padding-bottom: clamp(96px, 9vw, 140px) !important;
	padding-left: max(calc(var(--ss-gutter) + 16px), calc((100% - var(--ss-max)) / 2 + var(--ss-gutter))) !important;
	padding-right: max(calc(var(--ss-gutter) + 16px), calc((100% - var(--ss-max)) / 2 + var(--ss-gutter))) !important;
}
.ss-pj-gridsec .fusion-layout-column.ss-pj-grid { margin-top: 0 !important; }
.ss-pj-gridsec .fusion-title.ss-pj-archiv-text, .ss-pj-gridsec .fusion-title.ss-pj-archiv-text .fusion-title-heading { color: #3a4356 !important; }
/* Startseite: Icons oben links in den Leistungskarten */
.ss-ncard .ss-ico { display: block; flex: 0 0 auto; color: var(--ss-signal); }
.ss-ncard .ss-ico svg { display: block; width: 52px; height: 52px; }

/* ---------- Unternavigation: Streifen aus dem Hintergrundbild, Inhalt verschwindet knapp darunter (10.11.2026) ---------- */
.ss-subnav.fusion-container-stuck::before {
	content: "";
	position: fixed;
	top: var(--ss-frame, 0px);
	left: var(--ss-frame, 0px);
	right: var(--ss-frame, 0px);
	height: calc(var(--ss-sub-h, 48px) + 28px);
	z-index: -1;
	pointer-events: none;
	background: #1d2330 var(--ss-band-bg, none) center center / cover no-repeat fixed;
}
body.admin-bar .ss-subnav.fusion-container-stuck::before { top: calc(var(--wp-admin--admin-bar--height, 32px) + var(--ss-frame, 0px)); }

/* ---------- Leistungsseiten: umlaufender Rahmen wie auf der Startseite, fest am Fenster, verschwindet beim Scrollen (10.11.2026) ---------- */
.fusion-fullwidth.ss-sec.ss-hero-frame.ss-lhero::after { content: none; }
.fusion-fullwidth.ss-sec.ss-hero-frame.ss-lhero::before {
	content: "";
	position: fixed;
	inset: 0;
	z-index: 60;
	pointer-events: none;
	background:
		linear-gradient(#fff, #fff) left top / 100% var(--ss-frame, 16px) no-repeat,
		linear-gradient(#fff, #fff) left bottom / 100% var(--ss-frame, 16px) no-repeat,
		linear-gradient(#fff, #fff) left top / var(--ss-frame, 16px) 100% no-repeat,
		linear-gradient(#fff, #fff) right top / var(--ss-frame, 16px) 100% no-repeat,
		radial-gradient(circle at 100% 100%, transparent calc(var(--ss-fr-r, 22px) - .5px), #fff var(--ss-fr-r, 22px))
			left var(--ss-frame, 16px) top var(--ss-frame, 16px) / var(--ss-fr-r, 22px) var(--ss-fr-r, 22px) no-repeat,
		radial-gradient(circle at 0 100%, transparent calc(var(--ss-fr-r, 22px) - .5px), #fff var(--ss-fr-r, 22px))
			right var(--ss-frame, 16px) top var(--ss-frame, 16px) / var(--ss-fr-r, 22px) var(--ss-fr-r, 22px) no-repeat,
		radial-gradient(circle at 100% 0, transparent calc(var(--ss-fr-r, 22px) - .5px), #fff var(--ss-fr-r, 22px))
			left var(--ss-frame, 16px) bottom var(--ss-frame, 16px) / var(--ss-fr-r, 22px) var(--ss-fr-r, 22px) no-repeat,
		radial-gradient(circle at 0 0, transparent calc(var(--ss-fr-r, 22px) - .5px), #fff var(--ss-fr-r, 22px))
			right var(--ss-frame, 16px) bottom var(--ss-frame, 16px) / var(--ss-fr-r, 22px) var(--ss-fr-r, 22px) no-repeat;
}
body.admin-bar .fusion-fullwidth.ss-sec.ss-hero-frame.ss-lhero::before { top: var(--wp-admin--admin-bar--height, 32px); }
.fusion-fullwidth.ss-sec.ss-hero-frame.ss-lhero { z-index: 3 !important; }


/* ---------- Fuer wen: Hero bildschirmfuellend, Rahmen wie Startseite, Zielgruppen-Kachel mit Flip (10.11.2026) ---------- */
.fusion-fullwidth.ss-sec.ss-hero-frame.ss-zghero::after { content: none; }
.fusion-fullwidth.ss-sec.ss-hero-frame.ss-zghero::before {
	content: "";
	position: fixed;
	inset: 0;
	z-index: 60;
	pointer-events: none;
	background:
		linear-gradient(#fff, #fff) left top / 100% var(--ss-frame, 16px) no-repeat,
		linear-gradient(#fff, #fff) left bottom / 100% var(--ss-frame, 16px) no-repeat,
		linear-gradient(#fff, #fff) left top / var(--ss-frame, 16px) 100% no-repeat,
		linear-gradient(#fff, #fff) right top / var(--ss-frame, 16px) 100% no-repeat,
		radial-gradient(circle at 100% 100%, transparent calc(var(--ss-fr-r, 22px) - .5px), #fff var(--ss-fr-r, 22px))
			left var(--ss-frame, 16px) top var(--ss-frame, 16px) / var(--ss-fr-r, 22px) var(--ss-fr-r, 22px) no-repeat,
		radial-gradient(circle at 0 100%, transparent calc(var(--ss-fr-r, 22px) - .5px), #fff var(--ss-fr-r, 22px))
			right var(--ss-frame, 16px) top var(--ss-frame, 16px) / var(--ss-fr-r, 22px) var(--ss-fr-r, 22px) no-repeat,
		radial-gradient(circle at 100% 0, transparent calc(var(--ss-fr-r, 22px) - .5px), #fff var(--ss-fr-r, 22px))
			left var(--ss-frame, 16px) bottom var(--ss-frame, 16px) / var(--ss-fr-r, 22px) var(--ss-fr-r, 22px) no-repeat,
		radial-gradient(circle at 0 0, transparent calc(var(--ss-fr-r, 22px) - .5px), #fff var(--ss-fr-r, 22px))
			right var(--ss-frame, 16px) bottom var(--ss-frame, 16px) / var(--ss-fr-r, 22px) var(--ss-fr-r, 22px) no-repeat;
}
body.admin-bar .fusion-fullwidth.ss-sec.ss-hero-frame.ss-zghero::before { top: var(--wp-admin--admin-bar--height, 32px); }
.fusion-fullwidth.ss-sec.ss-hero-frame.ss-zghero { z-index: 3 !important; }
.fusion-fullwidth.ss-hero-frame.ss-zghero > .fusion-builder-row.fusion-row { min-height: 100vh; min-height: 100svh; }
body.admin-bar .fusion-fullwidth.ss-hero-frame.ss-zghero > .fusion-builder-row.fusion-row { min-height: calc(100vh - var(--wp-admin--admin-bar--height, 32px)); min-height: calc(100svh - var(--wp-admin--admin-bar--height, 32px)); }
.ss-zghero .fusion-text.ss-zg { position: absolute !important; left: 50%; top: 42%; transform: translate(-50%, -50%); margin: 0 !important; perspective: 800px; z-index: 0; pointer-events: none; }
.ss-zg p { margin: 0 !important; }
.ss-zg-flip { position: relative; width: 88px; height: 88px; transform-style: preserve-3d; transition: transform 1s cubic-bezier(.2, .7, .2, 1); }
.ss-zg-flip.is-flipped { transform: rotateY(180deg); }
/* Vorder- und Rueckseite kommen aus dem CSS, damit der Avada-Texteditor sie nicht entfernen kann. Icon je Seite ueber --ss-zg-icon-front/-back tauschbar */
.ss-zg-flip { --ss-zg-icon-front: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 64' fill='none' stroke='%231d2330' stroke-width='2.2' stroke-linejoin='round'%3E%3Cpolygon points='32,6 54,18.5 54,45.5 32,58 10,45.5 10,18.5'/%3E%3Cpolygon points='32,22 41,27 41,37 32,42 23,37 23,27'/%3E%3C/svg%3E"); --ss-zg-icon-back: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 64' fill='none' stroke='%23ebef57' stroke-width='2.2' stroke-linejoin='round'%3E%3Cpolygon points='32,6 54,18.5 54,45.5 32,58 10,45.5 10,18.5'/%3E%3Cpolygon points='32,22 41,27 41,37 32,42 23,37 23,27'/%3E%3C/svg%3E"); --ss-zg-icon-size: 42px; }
.ss-zg-flip::before, .ss-zg-flip::after { content: ""; position: absolute; inset: 0; border-radius: 10px; -webkit-backface-visibility: hidden; backface-visibility: hidden; box-shadow: 0 12px 30px rgba(0, 0, 0, .28); }
.ss-zg-flip::before { background: var(--ss-zg-icon-front) center / var(--ss-zg-icon-size) no-repeat, var(--ss-signal); }
.ss-zg-flip::after { background: var(--ss-zg-icon-back) center / var(--ss-zg-icon-size) no-repeat, var(--ss-ink); transform: rotateY(180deg); box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .14), 0 12px 30px rgba(0, 0, 0, .28); }
@media (max-width: 800px) {
	.ss-zghero .fusion-text.ss-zg { top: 30%; }
	.ss-zg-flip { width: 72px; height: 72px; }
	.ss-zg-flip { --ss-zg-icon-size: 36px; }
}

/* Fuer wen: Bezeichnung unter der Kachel wie bei den Apps der Startseite */
.ss-zghero .fusion-text.ss-zg { display: flex; flex-direction: column; align-items: center; gap: 12px; }
.ss-zg .ss-zg-label { margin: 0 !important; font-family: var(--ss-font-label); font-size: 12px; line-height: 1.3; letter-spacing: .16em; text-transform: uppercase; white-space: nowrap; color: var(--ss-haze); text-shadow: 0 1px 12px rgba(17, 23, 32, .5); }
@media (max-width: 800px) { .ss-zg .ss-zg-label { font-size: 10px; letter-spacing: .1em; } }
/* Startseite: Platzhalter-Kachel ueber den Zielgruppen-Ueberschriften */
.ss-fwcard .ss-zg-mini { display: flex; align-items: center; justify-content: center; width: 64px; height: 64px; margin: 0 0 24px; border-radius: 8px; background: var(--ss-signal); color: var(--ss-ink); }
.ss-fwcard .ss-zg-mini svg { display: block; width: 32px; height: 32px; }

/* Unternavigation: Mouseover gelb statt Avada-Gruen */
.ss-subnav-menu { --awb-hover-color: var(--ss-signal) !important; --awb-active-color-hover: var(--ss-signal) !important; }
.ss-subnav-menu .menu-item:not(.current-menu-item):not(.current_page_item) > a:hover,
.ss-subnav-menu .menu-item:not(.current-menu-item):not(.current_page_item) > a:focus-visible,
.ss-subnav-menu .menu-item:not(.current-menu-item):not(.current_page_item):hover > a,
.ss-subnav-menu .menu-item:not(.current-menu-item):not(.current_page_item):hover > a .menu-text { color: var(--ss-signal) !important; }

/* ---------- Hero-Hoehe wie Datenschutz: Kontakt, Ueber uns, Klartext, Projekte (10.11.2026) ---------- */
.fusion-fullwidth.ss-hero-frame.ss-kohero > .fusion-builder-row.fusion-row,
.fusion-fullwidth.ss-hero-frame.ss-uuhero > .fusion-builder-row.fusion-row,
.fusion-fullwidth.ss-hero-frame.ss-kthero > .fusion-builder-row.fusion-row { min-height: 620px; }
.fusion-fullwidth.ss-hero-frame.ss-pjhero > .fusion-builder-row.fusion-row { min-height: 620px; padding-top: 200px !important; padding-bottom: 110px !important; align-content: flex-end; }
@media (max-width: 800px) {
	.fusion-fullwidth.ss-hero-frame.ss-kohero > .fusion-builder-row.fusion-row,
	.fusion-fullwidth.ss-hero-frame.ss-uuhero > .fusion-builder-row.fusion-row,
	.fusion-fullwidth.ss-hero-frame.ss-kthero > .fusion-builder-row.fusion-row,
	.fusion-fullwidth.ss-hero-frame.ss-pjhero > .fusion-builder-row.fusion-row { min-height: 520px; }
	.fusion-fullwidth.ss-hero-frame.ss-pjhero > .fusion-builder-row.fusion-row { padding-top: 270px !important; padding-bottom: 72px !important; }
}

/* ---------- Projektkacheln: Kundentyp mit kleiner Zielgruppen-Kachel (10.11.2026) ---------- */
.ss-pjcard-kicker .fusion-title-heading { display: flex !important; align-items: center; gap: 10px; }
.ss-pjcard-kicker .fusion-title-heading::before { content: ""; flex: 0 0 auto; width: 22px; height: 22px; border-radius: 4px; background: var(--ss-signal) url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2064%2064%22%20fill%3D%22none%22%20stroke%3D%22%231d2330%22%20stroke-width%3D%224%22%20stroke-linejoin%3D%22round%22%3E%3Cpolygon%20points%3D%2232%2C6%2054%2C18.5%2054%2C45.5%2032%2C58%2010%2C45.5%2010%2C18.5%22%2F%3E%3Cpolygon%20points%3D%2232%2C22%2041%2C27%2041%2C37%2032%2C42%2023%2C37%2023%2C27%22%2F%3E%3C%2Fsvg%3E") center / 14px 14px no-repeat; }
.ss-pjcard-kicker .fusion-title-heading:empty { display: none !important; }

.ss-pjcard-kicker .fusion-title-heading { gap: 14px; }

/* ---------- Projekte: Hero bildschirmfuellend, Rahmen wie Leistungen (10.11.2026) ---------- */
.fusion-fullwidth.ss-sec.ss-hero-frame.ss-pjhero::after { content: none; }
.fusion-fullwidth.ss-sec.ss-hero-frame.ss-pjhero::before {
	content: "";
	position: fixed;
	inset: 0;
	z-index: 60;
	pointer-events: none;
	background:
		linear-gradient(#fff, #fff) left top / 100% var(--ss-frame, 16px) no-repeat,
		linear-gradient(#fff, #fff) left bottom / 100% var(--ss-frame, 16px) no-repeat,
		linear-gradient(#fff, #fff) left top / var(--ss-frame, 16px) 100% no-repeat,
		linear-gradient(#fff, #fff) right top / var(--ss-frame, 16px) 100% no-repeat,
		radial-gradient(circle at 100% 100%, transparent calc(var(--ss-fr-r, 22px) - .5px), #fff var(--ss-fr-r, 22px))
			left var(--ss-frame, 16px) top var(--ss-frame, 16px) / var(--ss-fr-r, 22px) var(--ss-fr-r, 22px) no-repeat,
		radial-gradient(circle at 0 100%, transparent calc(var(--ss-fr-r, 22px) - .5px), #fff var(--ss-fr-r, 22px))
			right var(--ss-frame, 16px) top var(--ss-frame, 16px) / var(--ss-fr-r, 22px) var(--ss-fr-r, 22px) no-repeat,
		radial-gradient(circle at 100% 0, transparent calc(var(--ss-fr-r, 22px) - .5px), #fff var(--ss-fr-r, 22px))
			left var(--ss-frame, 16px) bottom var(--ss-frame, 16px) / var(--ss-fr-r, 22px) var(--ss-fr-r, 22px) no-repeat,
		radial-gradient(circle at 0 0, transparent calc(var(--ss-fr-r, 22px) - .5px), #fff var(--ss-fr-r, 22px))
			right var(--ss-frame, 16px) bottom var(--ss-frame, 16px) / var(--ss-fr-r, 22px) var(--ss-fr-r, 22px) no-repeat;
}
body.admin-bar .fusion-fullwidth.ss-sec.ss-hero-frame.ss-pjhero::before { top: var(--wp-admin--admin-bar--height, 32px); }
.fusion-fullwidth.ss-sec.ss-hero-frame.ss-pjhero { z-index: 3 !important; }
.fusion-fullwidth.ss-hero-frame.ss-pjhero > .fusion-builder-row.fusion-row { min-height: 100vh; min-height: 100svh; }
body.admin-bar .fusion-fullwidth.ss-hero-frame.ss-pjhero > .fusion-builder-row.fusion-row { min-height: calc(100vh - var(--wp-admin--admin-bar--height, 32px)); min-height: calc(100svh - var(--wp-admin--admin-bar--height, 32px)); }
@media (max-width: 800px) { .fusion-fullwidth.ss-hero-frame.ss-pjhero > .fusion-builder-row.fusion-row { min-height: 100svh; } }

/* ---------- Projekte: Text oben mittig wie Leistungen, Kacheln auf dem Hintergrund, Kacheln liegen ueber dem Rahmen (10.11.2026) ---------- */
.fusion-fullwidth.ss-hero-frame.ss-pjhero > .fusion-builder-row.fusion-row { align-content: flex-start !important; padding-top: 200px !important; padding-bottom: clamp(96px, 9vw, 140px) !important; }
.ss-pjhero .ss-pjhero-main > .fusion-column-wrapper { align-items: center !important; text-align: center; }
.ss-pjhero .fusion-title.ss-label .fusion-title-heading { justify-content: center; }
.ss-pjhero .ss-claim.ss-claim-left, .ss-pjhero .ss-claim.ss-claim-left .fusion-title-heading { text-align: center !important; }
.ss-pjhero .fusion-title.ss-hero-intro { max-width: 620px; margin-left: auto !important; margin-right: auto !important; }
.ss-pjhero .fusion-title.ss-hero-intro .fusion-title-heading { text-align: center !important; }
.ss-pjhero .fusion-layout-column.ss-pj-grid { margin-top: 64px !important; }
.ss-pjhero .fusion-layout-column.ss-pj-grid, .ss-pjhero .fusion-layout-column.ss-pj-archiv { position: relative; z-index: 61; }
@media (max-width: 800px) { .fusion-fullwidth.ss-hero-frame.ss-pjhero > .fusion-builder-row.fusion-row { padding-top: 150px !important; } }.fusion-fullwidth.ss-hero-frame.ss-pjhero > .fusion-builder-row.fusion-row { position: relative; z-index: 61; }

/* =========================================================
   Projektkacheln, neue Fassung (11.11.2026): gross, max. 3 nebeneinander,
   oben Kicker + Titel auf verwaschenem Bild, darunter das scharfe Bild
   ========================================================= */
/* Raster fast formatfuellend */
.fusion-fullwidth.ss-hero-frame.ss-pjhero > .fusion-builder-row.fusion-row { padding-left: 32px !important; padding-right: 32px !important; }
@media (max-width: 800px) { .fusion-fullwidth.ss-hero-frame.ss-pjhero > .fusion-builder-row.fusion-row { padding-left: 16px !important; padding-right: 16px !important; } }

/* Hintergrund: dasselbe Bild, stark weichgezeichnet */
.ss-pjcard .fusion-column-inner-bg-image { filter: blur(34px) saturate(1.35) brightness(.82); transform: scale(1.35) !important; }
.ss-pjcard:hover .fusion-column-inner-bg-image { transform: scale(1.4) !important; }
.ss-pjcard > .fusion-column-inner-bg::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(17, 23, 32, .28) 0%, rgba(17, 23, 32, .08) 55%, rgba(17, 23, 32, .2) 100%); pointer-events: none; }

/* Aufbau: Text oben, Bild darunter mittig */
.ss-pjcard > .fusion-column-wrapper { justify-content: flex-start !important; padding: 0 !important; }
.ss-pjcard-row.fusion-builder-row { flex: 1 1 auto !important; height: 100% !important; margin: 0 !important; flex-direction: column !important; flex-wrap: nowrap !important; align-items: stretch !important; }
.ss-pjcard .ss-pjcard-panel > .fusion-column-wrapper {
	min-height: 0 !important;
	padding: clamp(22px, 7cqw, 40px) clamp(22px, 7cqw, 40px) 0 !important;
	justify-content: flex-start !important;
	background: none !important;
	-webkit-backdrop-filter: none !important;
	backdrop-filter: none !important;
	-webkit-mask: none !important;
	mask: none !important;
	overflow: visible;
}
.ss-sec .fusion-title.ss-pjcard-kicker { margin: 0 0 14px !important; }
.ss-sec .fusion-title.ss-pjcard-kicker, .ss-sec .fusion-title.ss-pjcard-kicker .fusion-title-heading { font-size: 12px !important; color: #fff !important; }
.ss-sec .fusion-title.ss-pjcard-title, .ss-sec .fusion-title.ss-pjcard-title .fusion-title-heading { font-family: var(--ss-font-head) !important; font-size: clamp(28px, 9cqw, 52px) !important; font-weight: 500 !important; line-height: 1 !important; text-shadow: 0 2px 24px rgba(17, 23, 32, .25); }
.fusion-layout-column.ss-pjcard-media { flex: 1 1 auto !important; width: 100% !important; margin: 0 !important; display: flex; pointer-events: none; }
.ss-pjcard-media > .fusion-column-wrapper { flex: 1 1 auto; display: flex !important; align-items: center !important; justify-content: center !important; padding: clamp(18px, 6cqw, 32px) clamp(22px, 7cqw, 40px) 86px !important; }
.ss-pjcard-media .fusion-image-element { width: 100%; margin: 0 !important; }
.ss-pjcard-img { display: block !important; width: 100%; max-width: none !important; aspect-ratio: 4 / 3; border-radius: 6px; overflow: hidden; box-shadow: 0 24px 50px rgba(17, 23, 32, .35); }
.ss-pjcard-img img { width: 100% !important; height: 100% !important; object-fit: cover; display: block; transition: transform .8s cubic-bezier(.2, .7, .2, 1); }
.ss-pjcard:hover .ss-pjcard-img img { transform: scale(1.03); }.ss-sec .fusion-title.ss-pjcard-title .fusion-title-heading { overflow-wrap: break-word; -webkit-hyphens: auto; hyphens: auto; }

/* Projektkacheln: ohne Schlagschatten, Hintergrund nicht abgedunkelt; Kachelbereich weiss (11.11.2026) */
.ss-pjcard-img { box-shadow: none !important; }
.ss-pjcard .fusion-column-inner-bg-image { filter: blur(34px) saturate(1.35) !important; }
.ss-pjcard > .fusion-column-inner-bg::after { content: none !important; }
.ss-pjhero .fusion-layout-column.ss-pj-grid::before { content: ""; position: absolute; z-index: -1; top: -32px; left: -100vw; right: -100vw; height: calc(100% + 2000px); background: #fff; pointer-events: none; }
.ss-pjhero .fusion-title.ss-pj-archiv-text, .ss-pjhero .fusion-title.ss-pj-archiv-text .fusion-title-heading { color: #3a4356 !important; }
.ss-pjhero a.fusion-button.ss-btn.ss-btn--light { background: var(--ss-ink) !important; color: #fff !important; }
/* Projektkacheln: Titel gross oben, scharfes Bild unten rechts, Kicker unten links (11.11.2026) */
.ss-pjcard { --ss-pj-pad: clamp(22px, 7cqw, 40px); }
.ss-pjcard > .fusion-column-wrapper { position: relative !important; }
.ss-pjcard .ss-pjcard-row.fusion-builder-row, .ss-pjcard .fusion-layout-column.ss-pjcard-panel, .ss-pjcard .ss-pjcard-panel > .fusion-column-wrapper, .ss-pjcard .fusion-layout-column.ss-pjcard-media, .ss-pjcard .ss-pjcard-media > .fusion-column-wrapper { position: static !important; }
.ss-pjcard .ss-pjcard-panel > .fusion-column-wrapper { padding: var(--ss-pj-pad) var(--ss-pj-pad) 0 !important; }
.ss-sec .fusion-title.ss-pjcard-title, .ss-sec .fusion-title.ss-pjcard-title .fusion-title-heading { font-size: clamp(34px, 11.5cqw, 68px) !important; line-height: .98 !important; }
.ss-sec .fusion-title.ss-pjcard-kicker { position: absolute !important; left: var(--ss-pj-pad); bottom: var(--ss-pj-pad); max-width: 34%; margin: 0 !important; z-index: 2; }
.ss-sec .fusion-title.ss-pjcard-kicker .fusion-title-heading { align-items: flex-start !important; flex-direction: column; gap: 12px !important; line-height: 1.4 !important; }
.ss-pjcard .ss-pjcard-media > .fusion-column-wrapper { padding: 0 !important; }
.ss-pjcard .ss-pjcard-media .fusion-image-element { position: absolute !important; right: var(--ss-pj-pad); bottom: 86px; width: 56% !important; margin: 0 !important; z-index: 1; }
/* ---------- Projekte: Hero wie Ueber uns (620px, Rahmen unten gerundet), Kacheln auf Weiss mit Randbreite wie der Rahmen (11.11.2026) ---------- */
.fusion-fullwidth.ss-sec.ss-hero-frame.ss-pjhero::before { content: none !important; }
.fusion-fullwidth.ss-sec.ss-hero-frame.ss-pjhero::after { content: "" !important; }
.fusion-fullwidth.ss-hero-frame.ss-pjhero > .fusion-builder-row.fusion-row,
body.admin-bar .fusion-fullwidth.ss-hero-frame.ss-pjhero > .fusion-builder-row.fusion-row { min-height: 620px !important; padding-top: 200px !important; padding-bottom: 110px !important; align-content: flex-end !important; padding-left: max(calc(var(--ss-gutter) + 16px), calc((100% - var(--ss-max)) / 2 + var(--ss-gutter))) !important; padding-right: max(calc(var(--ss-gutter) + 16px), calc((100% - var(--ss-max)) / 2 + var(--ss-gutter))) !important; }
@media (max-width: 800px) { .fusion-fullwidth.ss-hero-frame.ss-pjhero > .fusion-builder-row.fusion-row, body.admin-bar .fusion-fullwidth.ss-hero-frame.ss-pjhero > .fusion-builder-row.fusion-row { min-height: 520px !important; padding-top: 150px !important; padding-bottom: 72px !important; } }
.fusion-fullwidth.ss-pj-gridsec { background: #fff !important; }
.fusion-fullwidth.ss-pj-gridsec > .fusion-builder-row.fusion-row { padding: 0 var(--ss-frame-w, 16px) clamp(96px, 9vw, 140px) !important; max-width: none !important; }
.ss-pj-gridsec .fusion-layout-column.ss-pj-grid { margin-top: 0 !important; }
.ss-pj-gridsec .fusion-layout-column.ss-pj-grid::before { content: none !important; }
.ss-pj-gridsec .fusion-layout-column.ss-pj-archiv { padding: 0 max(calc(var(--ss-gutter) + 0px), calc((100% - var(--ss-max)) / 2 + var(--ss-gutter))) !important; }
.ss-pj-gridsec .fusion-title.ss-pj-archiv-text, .ss-pj-gridsec .fusion-title.ss-pj-archiv-text .fusion-title-heading { color: #3a4356 !important; }
.ss-pj-gridsec a.fusion-button.ss-btn.ss-btn--light { background: var(--ss-ink) !important; color: #fff !important; }
/* ---------- Projekte (11.11.2026, 2): Text links, Rahmen fest, Kacheln mit Rahmenradius, Bild unten links ---------- */
/* Rahmen steht still (kein Scrolleffekt), damit alle weissen Raender gleich bleiben */
.ss-pjhero { --ss-frame: 16px !important; --ss-fr-r: 22px !important; }
/* Text linksbuendig wie Ueber uns */
.ss-pjhero .ss-pjhero-main > .fusion-column-wrapper { align-items: flex-start !important; text-align: left !important; }
.ss-pjhero .fusion-title.ss-label .fusion-title-heading { justify-content: flex-start !important; }
.ss-pjhero .ss-claim.ss-claim-left, .ss-pjhero .ss-claim.ss-claim-left .fusion-title-heading, .ss-pjhero .fusion-title.ss-hero-intro .fusion-title-heading { text-align: left !important; }
.ss-pjhero .fusion-title.ss-hero-intro { max-width: 560px; margin-left: 0 !important; margin-right: 0 !important; }
/* Kacheln: gleicher Radius wie der Rahmen */
.ss-pjcard > .fusion-column-wrapper, .ss-pjcard > .fusion-column-inner-bg { border-radius: 22px !important; }
/* Kicker wieder ueber der Headline */
.ss-sec .fusion-title.ss-pjcard-kicker { position: static !important; max-width: none; margin: 0 0 14px !important; }
.ss-sec .fusion-title.ss-pjcard-kicker .fusion-title-heading { flex-direction: row !important; align-items: center !important; gap: 14px !important; }
/* Scharfes Bild unten links */
.ss-pjcard .ss-pjcard-media .fusion-image-element { left: var(--ss-pj-pad); right: auto; bottom: var(--ss-pj-pad); width: 60% !important; }
.ss-pjcard-img { border-radius: 10px; }

/* ---------- Projekte + Archiv: dunkler Rahmen, Klasse ss-pj-dark per Skript (11.11.2026) ---------- */
html.ss-pj-dark .fusion-fullwidth.ss-sec.ss-hero-frame.ss-pjhero::after {
	background:
		linear-gradient(#1d2330, #1d2330) left top / 100% var(--ss-frame, 16px) no-repeat,
		linear-gradient(#1d2330, #1d2330) left bottom / 100% var(--ss-frame, 16px) no-repeat,
		linear-gradient(#1d2330, #1d2330) left top / var(--ss-frame, 16px) 100% no-repeat,
		linear-gradient(#1d2330, #1d2330) right top / var(--ss-frame, 16px) 100% no-repeat,
		radial-gradient(circle at 100% 100%, transparent calc(var(--ss-fr-r, 22px) - .5px), #1d2330 var(--ss-fr-r, 22px))
			left var(--ss-frame, 16px) top var(--ss-frame, 16px) / var(--ss-fr-r, 22px) var(--ss-fr-r, 22px) no-repeat,
		radial-gradient(circle at 0 100%, transparent calc(var(--ss-fr-r, 22px) - .5px), #1d2330 var(--ss-fr-r, 22px))
			right var(--ss-frame, 16px) top var(--ss-frame, 16px) / var(--ss-fr-r, 22px) var(--ss-fr-r, 22px) no-repeat,
		radial-gradient(circle at 100% 0, transparent calc(var(--ss-fr-r, 22px) - .5px), #1d2330 var(--ss-fr-r, 22px))
			left var(--ss-frame, 16px) bottom var(--ss-frame, 16px) / var(--ss-fr-r, 22px) var(--ss-fr-r, 22px) no-repeat,
		radial-gradient(circle at 0 0, transparent calc(var(--ss-fr-r, 22px) - .5px), #1d2330 var(--ss-fr-r, 22px))
			right var(--ss-frame, 16px) bottom var(--ss-frame, 16px) / var(--ss-fr-r, 22px) var(--ss-fr-r, 22px) no-repeat;
}
html.ss-pj-dark .fusion-fullwidth.ss-pj-gridsec, html.ss-pj-dark body, html.ss-pj-dark #main, html.ss-pj-dark #wrapper { background: #1d2330 !important; }
html.ss-pj-dark .ss-pj-gridsec .fusion-title.ss-pj-archiv-text, html.ss-pj-dark .ss-pj-gridsec .fusion-title.ss-pj-archiv-text .fusion-title-heading { color: var(--ss-haze) !important; }
html.ss-pj-dark .ss-pj-gridsec a.fusion-button.ss-btn.ss-btn--light { background: #fff !important; color: var(--ss-ink) !important; }
html:has(.ss-pjhero) body, html:has(.ss-pjhero) #main, html:has(.ss-pjhero) #wrapper, html:has(.ss-pjhero) .fusion-fullwidth.ss-pj-gridsec { background: #1d2330 !important; }


/* ---------- Uebernommen aus der zwischenzeitlich eingespielten Fassung (11.11.2026): Unternavigation Handy ---------- */
/* =========================================================
   Unternavigation (Leistungen, Für wen) auf dem Handy: Menüpunkte untereinander
   ========================================================= */
@media (max-width: 800px) {
	.ss-subnav .ss-subnav-col { width: 100% !important; flex: 1 1 100% !important; }
	.ss-subnav-menu, .ss-subnav-menu .awb-menu__main-nav { width: 100%; }
	.ss-subnav-menu .awb-menu__main-ul {
		display: flex !important;
		flex-direction: column !important;
		flex-wrap: nowrap !important;
		align-items: stretch !important;
		width: 100%;
		overflow: visible;
		gap: 2px;
	}
	.ss-subnav-menu .awb-menu__main-li { width: 100%; }
	.ss-subnav-menu .awb-menu__main-a {
		display: flex !important;
		width: 100%;
		min-height: 42px;
		padding: 0 14px !important;
		white-space: normal;
		justify-content: space-between !important;
		box-sizing: border-box;
	}
	/* kleiner Pfeil rechts, aktiver Punkt mit gelbem Sechseck */
	.ss-subnav-menu .awb-menu__main-a::after {
		content: ""; flex: 0 0 auto; width: 14px; height: 14px; margin-left: 12px;
		background: currentColor;
		-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 8h10M9 4l4 4-4 4'/%3E%3C/svg%3E") no-repeat center / contain;
		mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 8h10M9 4l4 4-4 4'/%3E%3C/svg%3E") no-repeat center / contain;
		opacity: .55;
	}
	.ss-subnav-menu .awb-menu__main-li.current-menu-item > .awb-menu__main-a::after,
	.ss-subnav-menu .awb-menu__main-li.current_page_item > .awb-menu__main-a::after,
	.ss-subnav-menu .awb-menu__main-li.ss-active > .awb-menu__main-a::after {
		width: 9px; height: 10px; opacity: 1;
		background: var(--ss-signal);
		-webkit-mask: none; mask: none;
		clip-path: polygon(50% 5%, 94.4% 27.5%, 94.4% 72.5%, 50% 95%, 5.6% 72.5%, 5.6% 27.5%);
	}
	.ss-subnav-menu .awb-menu__main-li.current-menu-item > .awb-menu__main-a::after,
	.ss-subnav-menu .awb-menu__main-li.current_page_item > .awb-menu__main-a::after,
	.ss-subnav-menu .awb-menu__main-li.ss-active > .awb-menu__main-a::after { background: var(--ss-ink); }

	/* Beim Scrollen nicht als großer Block über dem Inhalt kleben: ausblenden, oben wieder da */
	.fusion-fullwidth.ss-subnav.fusion-container-stuck {
		opacity: 0 !important; visibility: hidden !important; pointer-events: none !important;
		transition: opacity .25s ease, visibility 0s linear .25s;
	}
	.fusion-fullwidth.ss-subnav { transition: opacity .25s ease; }
}
@media (max-width: 800px) {
	/* Leistungen: Platz für die untereinander stehende Unternavigation */
	.fusion-fullwidth.ss-hero-frame.ss-lhero > .fusion-builder-row.fusion-row { padding-top: calc(var(--ss-frame, 16px) + 290px) !important; }
}
@media (max-width: 800px) {
	.fusion-fullwidth.ss-subnav > .fusion-builder-row.fusion-row { padding: 0 calc(var(--ss-frame, 16px) + 12px) !important; width: 100% !important; max-width: none !important; }
	.ss-subnav .ss-subnav-col > .fusion-column-wrapper { width: 100% !important; padding: 0 !important; margin: 0 !important; }
	.ss-subnav-menu.awb-menu, .ss-subnav-menu .awb-menu__main-nav, .ss-subnav-menu .awb-menu__main-ul { width: 100% !important; max-width: none !important; margin: 0 !important; }
}
@media (max-width: 800px) {
	.fusion-fullwidth.ss-subnav { margin-left: 0 !important; margin-right: 0 !important; padding-left: 0 !important; padding-right: 0 !important; }
}
@media (max-width: 800px) {
	/* Pfeile in der Unternavigation (Handy) in Signalgelb */
	.ss-subnav-menu .awb-menu__main-li:not(.current-menu-item):not(.current_page_item):not(.ss-active) > .awb-menu__main-a::after {
		background: #ebef57; opacity: 1;
	}
}
/* Projektkacheln: kurze Projektzeile unter dem Kundennamen (11.11.2026) */
.ss-sec .fusion-title.ss-pjcard-zeile, .ss-sec .fusion-title.ss-pjcard-zeile .fusion-title-heading { margin: 0 !important; font-family: var(--ss-font-label) !important; font-size: 13px !important; line-height: 1.35 !important; letter-spacing: .16em !important; text-transform: uppercase !important; font-weight: 400 !important; color: #fff !important; }
.ss-sec .fusion-title.ss-pjcard-zeile { margin-top: 14px !important; }
.ss-pjcard-zeile .fusion-title-heading:empty { display: none; }

/* Projektkacheln: Kundennamen immer in Versalien */
.ss-sec .fusion-title.ss-pjcard-title .fusion-title-heading { text-transform: uppercase !important; letter-spacing: .01em !important; }

/* Projektkacheln: Kundenname in Versalien so gross wie die Hero-Headline */
.ss-sec .fusion-title.ss-pjcard-title, .ss-sec .fusion-title.ss-pjcard-title .fusion-title-heading { font-size: clamp(34px, 3.4vw, 50px) !important; line-height: 1.02 !important; }

/* =========================================================
   Projekt-Fallstudie: Hero wie Projekte + Einstiegsbild, das sich
   beim Scrollen auf Fenstergroesse aufzieht (11.11.2026)
   Bausteine: .ss-cv-box (dunkles Hero-Bild im Rahmen), .ss-cv-stage (scharfes Projektbild), Skript in redesign-j.js
   ========================================================= */
.fusion-fullwidth.ss-sec.ss-hero-frame.ss-casefv { overflow: clip !important; min-height: 220vh; background: #1d2330 !important; background-image: none !important; --ss-frame: 16px !important; }
.fusion-fullwidth.ss-sec.ss-hero-frame.ss-casefv::before, .fusion-fullwidth.ss-sec.ss-hero-frame.ss-casefv::after { content: none !important; }
.fusion-fullwidth.ss-hero-frame.ss-casefv > .fusion-builder-row.fusion-row { position: sticky !important; top: 0; height: 100vh; height: 100svh; min-height: 0 !important; padding: 0 !important; max-width: none !important; width: 100% !important; margin: 0 !important; }
body.admin-bar .fusion-fullwidth.ss-hero-frame.ss-casefv > .fusion-builder-row.fusion-row { top: var(--wp-admin--admin-bar--height, 32px); height: calc(100vh - var(--wp-admin--admin-bar--height, 32px)); }
.ss-cv-box { position: absolute; inset: var(--cv-f, 16px); z-index: 0; border-radius: var(--cv-fr, 22px); background: #1d2330 url("https://redesign.sendesignal.de/wp-content/uploads/2026/11/sendesignal-leistung-hintergrund.webp") center / cover no-repeat; pointer-events: none; }
.ss-cv-stage { position: absolute; z-index: 1; top: var(--cv-t, 300px); left: var(--cv-l, 96px); right: var(--cv-r, 96px); bottom: var(--cv-b, 16px); border-radius: var(--cv-rad, 22px); background: #1d2330 center / cover no-repeat; pointer-events: none; }
/* Kicker + Headline ueber dem Einstiegsbild; das Bild schiebt sich beim Aufziehen darueber */
.ss-casefv .fusion-layout-column.ss-casefv-head { position: absolute !important; z-index: 1; left: var(--cv-tl, 96px); bottom: var(--cv-tb, 600px); width: min(760px, calc(100% - 2 * var(--cv-tl, 96px))) !important; margin: 0 !important; }
.ss-casefv .ss-casefv-head .fusion-title, .ss-casefv .ss-casefv-head .fusion-title .fusion-title-heading, .ss-casefv .ss-casefv-head .fusion-title .fusion-title-heading * { color: #fff !important; text-shadow: none !important; }
.ss-casefv .ss-casefv-head .fusion-title.ss-casefv-claim .fusion-title-heading span[style*=color], .ss-casefv .ss-casefv-head .ss-hl-signal .highlighted-text, .ss-casefv .ss-casefv-head .fusion-highlighted-text { color: var(--ss-signal) !important; }
.ss-sec.ss-casefv .fusion-title.ss-casefv-claim, .ss-sec.ss-casefv .fusion-title.ss-casefv-claim .fusion-title-heading { font-size: clamp(34px, 3.4vw, 50px) !important; line-height: 1.02 !important; }
.ss-cv-stage { z-index: 2; }
.ss-casefv.ss-veil::before { content: none !important; }
/* Fallstudie: Laufstrecke = Aufziehen des Bildes (420px) + kurzes Halten */
.fusion-fullwidth.ss-sec.ss-hero-frame.ss-casefv { min-height: calc(100vh + 520px); }

/* Mobiles Menü (Off-Canvas „mobile-off-canvas“): Hintergrund mit Weichzeichner */
body .awb-off-canvas-wrap.mobile-off-canvas {
	-webkit-backdrop-filter: blur(18px) saturate(150%) !important;
	backdrop-filter: blur(18px) saturate(150%) !important;
}

/* Fallstudie, Projekt auf einen Blick: auf dem dunklen Hintergrundbild, Schrift hell */
.ss-casefv-blick .ss-label.is-dark, .ss-sec.ss-casefv-blick .fusion-title.ss-casefv-fact-l, .ss-sec.ss-casefv-blick .fusion-title.ss-casefv-meta { color: rgba(255, 255, 255, .62) !important; }
.ss-casefv-blick .ss-h-l .fusion-title-heading, .ss-sec.ss-casefv-blick .fusion-title.ss-casefv-h3, .ss-sec.ss-casefv-blick .fusion-title.ss-casefv-h3 .fusion-title-heading, .ss-sec.ss-casefv-blick .fusion-title.ss-casefv-fact-v { color: #fff !important; }
.ss-casefv-blick .ss-hl-steel .fusion-highlighted-text, .ss-casefv-blick .fusion-title-heading span[style*=color] { color: rgba(255, 255, 255, .55) !important; }
.ss-sec.ss-casefv-blick .fusion-title.ss-casefv-lead, .ss-sec.ss-casefv-blick .fusion-title.ss-casefv-text, .ss-casefv-blick .ss-dash-inline .fusion-li-item-content { color: rgba(255, 255, 255, .8) !important; }
.ss-casefv-blick .ss-casefv-facts-row.fusion-builder-row, .ss-casefv-blick .ss-casefv-col > .fusion-column-wrapper { border-color: rgba(255, 255, 255, .2) !important; }

/* TEST Startups: Zielgruppen-Icon als Avada-Flip-Box (ss-zg-fb), Unterzeile bleibt im Textelement ss-zg */
.ss-zghero .fusion-flip-boxes.ss-zg-fb { position: absolute; left: 50%; top: 42%; width: 60px; margin: 0 !important; transform: translate(-50%, calc(-50% - 16px)); z-index: 0; pointer-events: none; }
.ss-zg-fb .fusion-flip-box-wrapper { width: 100% !important; padding: 0 !important; }
.ss-zg-fb .flip-box-inner-wrapper { margin: 0 !important; }
.ss-zg-fb .flip-box-front, .ss-zg-fb .flip-box-back { min-height: 104px; padding: 0 !important; bottom: 0; background-size: contain !important; }
.ss-zg-fb .flip-box-grafix { display: block; margin: 0 !important; }
.ss-zg-fb .flip-box-front-inner, .ss-zg-fb .flip-box-back-inner { -webkit-backface-visibility: hidden; backface-visibility: hidden; transform: translateZ(12px) scale(.98) !important; }
.ss-zg-fb .flip-box-front-inner img, .ss-zg-fb .flip-box-back-inner img { display: block; width: 100%; height: auto; }
.ss-zghero:has(.ss-zg-fb) .fusion-text.ss-zg { transform: translate(-50%, 52px); }
@media (max-width: 800px) {
	.ss-zghero .fusion-flip-boxes.ss-zg-fb { top: 36%; width: 50px; }
	.ss-zghero:has(.ss-zg-fb) .fusion-text.ss-zg { top: 36%; }
	.ss-zg-fb .flip-box-front, .ss-zg-fb .flip-box-back { min-height: 87px; }
	.ss-zghero:has(.ss-zg-fb) .fusion-text.ss-zg { transform: translate(-50%, 42px); }
}

/* Startseite, Lieblingskunden: Zielgruppen-Icon als Bild (Sechseck mit Icon) statt gelber Flaeche */
.ss-fwcard img.ss-zg-mini-img { display: block; width: auto; height: 64px; border-radius: 0; background: none; }

/* TEST Markenentwicklung: Leistungskarte als Avada-Flip-Box (ss-lflip) */
.ss-flip .fusion-flip-boxes.ss-lflip { position: sticky; top: 296px; margin: 0 !important; }
.ss-lflip .fusion-flip-box-wrapper { width: 100% !important; padding: 0 !important; }
.ss-lflip .flip-box-inner-wrapper { margin: 0 !important; }
.ss-lflip .flip-box-front, .ss-lflip .flip-box-back { min-height: 440px; align-items: stretch !important; text-align: left !important; box-sizing: border-box; }
.ss-lflip .flip-box-front { padding: 32px 30px 90px !important; }
.ss-lflip .flip-box-back { padding: 32px 30px !important; }
/* Flaeche mit Kerbe als eigene Ebene, damit Avadas 3D-Effekt (Inhalt hebt sich ab) erhalten bleibt; Farbe kommt aus der Flip Box */
.ss-lflip .flip-box-front, .ss-lflip .flip-box-back { background: none !important; }
.ss-lflip .flip-box-front::before, .ss-lflip .flip-box-back::before { content: ""; position: absolute; inset: 0; border-radius: 6px; -webkit-backface-visibility: hidden; backface-visibility: hidden; pointer-events: none; }
.ss-lflip .flip-box-front::before { background: var(--awb-background-color-front); -webkit-backdrop-filter: blur(22px) saturate(150%); backdrop-filter: blur(22px) saturate(150%);
	-webkit-mask: linear-gradient(#000 0 0), url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='84' height='72' viewBox='0 0 84 72'%3E%3Cpath d='M0 72 Q12.5 72 16.5 65.1 L43.1 18.9 Q47.1 12 55 12 L76 12 Q84 12 84 0 L84 72 Z' fill='black'/%3E%3C/svg%3E") right bottom / 84px 72px no-repeat;
	-webkit-mask-composite: xor;
	mask: linear-gradient(#000 0 0) exclude, url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='84' height='72' viewBox='0 0 84 72'%3E%3Cpath d='M0 72 Q12.5 72 16.5 65.1 L43.1 18.9 Q47.1 12 55 12 L76 12 Q84 12 84 0 L84 72 Z' fill='black'/%3E%3C/svg%3E") right bottom / 84px 72px no-repeat;
}
.ss-lflip .flip-box-back::before { background: var(--awb-background-color-back);
	-webkit-mask: linear-gradient(#000 0 0), url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='84' height='72' viewBox='0 0 84 72'%3E%3Cpath d='M84 72 Q71.5 72 67.5 65.1 L40.9 18.9 Q36.9 12 29 12 L8 12 Q0 12 0 0 L0 72 Z' fill='black'/%3E%3C/svg%3E") left bottom / 84px 72px no-repeat;
	-webkit-mask-composite: xor;
	mask: linear-gradient(#000 0 0) exclude, url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='84' height='72' viewBox='0 0 84 72'%3E%3Cpath d='M84 72 Q71.5 72 67.5 65.1 L40.9 18.9 Q36.9 12 29 12 L8 12 Q0 12 0 0 L0 72 Z' fill='black'/%3E%3C/svg%3E") left bottom / 84px 72px no-repeat;
}
.ss-lflip .flip-box-front-inner, .ss-lflip .flip-box-back-inner { transform: translateZ(40px) scale(.96) !important; -webkit-backface-visibility: hidden; backface-visibility: hidden; }
.ss-lflip .flip-box-front-inner, .ss-lflip .flip-box-back-inner { display: flex; flex-direction: column; font-family: var(--ss-font-body); font-size: 16px; font-weight: 300; line-height: 1.5; color: var(--ss-fog); }
/* Icon vorne und hinten mittig, gleiche Hoehe */
.ss-lflip .flip-box-grafix { width: auto !important; margin: 12px auto auto !important; }
.ss-lflip .flip-box-grafix img, .ss-lflip .ss-lflip-icon { display: block; width: auto; height: 52px; }
.ss-lflip .ss-lflip-icon { margin: 12px auto auto; }
.ss-lflip .flip-box-heading { margin: 0 0 12px !important; font-family: var(--ss-font-card) !important; font-size: 25px !important; line-height: 1.08 !important; color: #fff !important; }
.ss-scope-list { margin: 24px 0 40px !important; padding: 0 !important; list-style: none !important; counter-reset: ss-scope; }
.ss-scope-list li { display: flex; align-items: baseline; gap: 14px; margin: 0 !important; padding: 8px 0; border-top: 1px solid rgba(29, 35, 48, .1); counter-increment: ss-scope; font-family: var(--ss-font-head); font-size: 18px; font-weight: 600; line-height: 1.15; color: var(--ss-ink); }
.ss-scope-list li::before { content: counter(ss-scope, decimal-leading-zero); min-width: 22px; font-family: var(--ss-font-label); font-size: 11px; font-weight: 400; letter-spacing: .16em; color: var(--ss-grey-dark); }

/* Startseite, Leistungskarte Markenentwicklung: neues Icon mittig (folgt fuer die anderen Karten) */
.ss-ncard .ss-ico-c { display: flex !important; justify-content: center; width: 100% !important; }
.ss-ncard .ss-ico-c img { display: block; width: auto; height: 52px; }
