/*
Theme Name: Avada Child
Description: Child theme for Avada theme
Author: ThemeFusion
Author URI: https://theme-fusion.com
Template: Avada
Version: 1.0.0
Text Domain:  Avada
*/

/* ====================================================================
   Gekuerzt am 16. September 2026 nach dem Zwischenschritt S2a.
   Grundlage sind die Entscheidungen E65 bis E69 und das Urteil je Klasse
   in klassenbestand.md des Vorhabensordners.

   E65: Wo Avada eine Gestaltung fuehrt, gewinnt Avadas Option. Dieses
   Stylesheet laedt VOR Avadas dynamischem CSS und verliert deshalb jeden
   Gleichstand. Eine neue Klasse wird vor dem Anlegen gegen die Globalen
   Optionen und die Elementoptionen geprueft.

   Besonders zu beachten: Avadas Regel .fusion-text setzt text-align,
   font-size, line-height, letter-spacing, text-transform, color,
   font-family, font-weight, font-style, margin, width, min-width und
   max-width. Eine eigene Klasse mit nur einem Klassennamen, die an ein
   Avada-Textelement geschrieben wird, verliert diese Eigenschaften alle.
   Sie braucht einen zweiten Selektor davor oder muss auf ein Element
   darin zielen. Gemessen am 16. September 2026 an w-luecke.

   E69: Die Schrift steht nicht mehr als Kurzform font: var(--type-*),
   sondern in vier Einzelwerten. Eine Kurzform geht als ganzer Block
   verloren, sobald Avada auch nur einen der vier Werte setzt.
   ==================================================================== */

/* E100, Runde 34, 30.09.2026: Rechenwert fuer Avadas responsive Typografie.
   Avada uebernimmt body_typography woertlich als --base-font-size und rechnet
   damit unter 1000 Pixel --minFontSize der Ueberschriften. Seit der Fliesstext
   nach E73 ein clamp() traegt, waere diese Rechnung ungueltig. 15.5 ist der
   Wert vor E73, gemessen, ohne Einheit wie bei Avada. Keine Schriftgroesse.
   html:root, damit die Regel unabhaengig von der Ladefolge gewinnt. */
html:root {
	--base-font-size: 15.5;
}

/* ====================================================================
   Worstbrock CI — Ergaenzungen zum Header
   Grundlage: design_handoff_website/README.md (Variante B, 06.08.2026)

   WICHTIG: Menuetypografie, Menuefarben, Aktivlinie und der Kontakt-Button
   werden NICHT hier gesetzt, sondern ueber die Parameter der Elemente in
   der Layout Section "Header Worstbrock". Avada setzt bei .awb-menu__main-a
   die Farbe mit !important; eigenes CSS verliert diesen Wettlauf. Die
   Element-Parameter erzeugen dieselben CSS-Variablen, die Avada selbst nutzt,
   und ueberleben Theme-Updates.

   Hier steht nur, was es als Element-Parameter nicht gibt.
   ==================================================================== */

:root {
	/* ================================================================
	   Design-Tokens aus dem Worstbrock Designsystem (claude.ai/design,
	   Projekt "Worstbrock CI", tokens/*.css), importiert am 10.08.2026.
	   Diese Werte sind die Quelle — sie ersetzen die Zahlen aus
	   design_handoff_website/README.md, wo beide sich widersprechen.
	   ================================================================ */

	/* ---- Farbe: acht Slots ---- */
	--w-navy: #22285e;
	--w-petrol: #24608c;
	--w-blau: #4d5a7c;
	--w-blau-hell: #97a3c6;
	--w-akzent: #2b4e9c;
	--w-papier: #eef1f7;
	--w-text: #191d2b;
	--w-messing: #a8813c;

	/* ---- Farbe: Ableitungen ohne Slot ---- */
	--w-linie: #c9d0e4;
	--w-rahmen: var(--w-linie);   /* Altname, vom Header-CSS weiter genutzt */
	--w-trenner: #dbe0ee;
	--w-papierweiss: #fbfcfe;
	--w-linie-auf-navy: rgba(151, 163, 198, 0.32);
	--w-fehler: #a8324a;
	--w-bestaetigung: #1d6b4d;

	/* ---- Farbe: Semantik ---- */
	--text-body: var(--w-text);
	--text-muted: var(--w-blau);
	--text-heading: var(--w-navy);
	--text-on-dark: var(--w-papier);
	--text-muted-on-dark: var(--w-blau-hell);
	--text-link: var(--w-akzent);
	--text-link-hover: var(--w-navy);
	--surface-page: var(--w-papier);
	--surface-card: var(--w-papierweiss);
	--surface-dark: var(--w-navy);
	--surface-data: var(--w-petrol);
	--border-hairline: var(--w-trenner);
	--border-rule: var(--w-linie);
	--border-strong: var(--w-blau);
	--border-brass: var(--w-messing);
	--focus-line: var(--w-messing);

	/* ---- Schrift ---- */
	--font-display: "EB Garamond", Garamond, Cambria, "Times New Roman", serif;
	--font-body: "Manrope", Aptos, "Segoe UI", Calibri, sans-serif;
	--weight-regular: 400;
	--weight-medium: 500;
	--weight-semibold: 600;

	--type-hero: var(--weight-medium) 56px/62px var(--font-display);
	--type-h1: var(--weight-medium) 40px/46px var(--font-display);
	--type-h2: var(--weight-medium) 28px/34px var(--font-display);
	--type-h3: var(--weight-medium) 21px/27px var(--font-display);
	--type-h4: var(--weight-semibold) 17px/26px var(--font-body);
	--type-body: var(--weight-regular) 17px/29px var(--font-body);
	--type-small: var(--weight-regular) 15px/24px var(--font-body);
	--type-micro: var(--weight-regular) 13px/20px var(--font-body);
	--type-label: var(--weight-semibold) 12px/16px var(--font-body);
	--type-menu: var(--weight-semibold) 12px/16px var(--font-body);

	--type-hero-mobile: var(--weight-medium) 34px/40px var(--font-display);
	--type-h1-mobile: var(--weight-medium) 30px/36px var(--font-display);
	--type-h2-mobile: var(--weight-medium) 24px/30px var(--font-display);
	--type-h3-mobile: var(--weight-medium) 19px/25px var(--font-display);
	--type-body-mobile: var(--weight-regular) 16px/27px var(--font-body);

	--tracking-h1: 0.005em;
	--tracking-h2: 0.01em;
	--tracking-label: 0.1em;
	--tracking-eyebrow: 0.14em;
	--tracking-wordmark: 0.16em;

	/* ---- Abstand und Mass ---- */
	--space-4: 4px;
	--space-8: 8px;
	--space-12: 12px;
	--space-16: 16px;
	--space-20: 20px;
	--space-24: 24px;
	--space-32: 32px;
	--space-48: 48px;
	--space-80: 80px;
	--space-96: 96px;

	--site-width: 1180px;
	--site-gutter: 40px;
	--site-gutter-tablet: 24px;
	--section-padding-y: 96px;
	--section-padding-y-tablet: 56px;

	--header-height: 104px;
	--header-height-sticky: 56px;
	--control-height: 48px;
	--control-padding-x: 28px;
	--breakpoint-mobile: 1000px;

	/* ---- Rahmen und Bewegung ---- */
	--radius: 0;
	--border-width: 1px;
	--brass-width: 2px;
	--shadow-none: none;
	--motion-duration: 120ms;
	--motion-easing: linear;
	--motion-transition: color var(--motion-duration) var(--motion-easing),
	                     background-color var(--motion-duration) var(--motion-easing),
	                     border-color var(--motion-duration) var(--motion-easing);
}


/* ---- Marke ---------------------------------------------------------
   Die Marke kommt aus Avadas Logo-System: Bild in den Global Options,
   im Kopf ueber das Bild-Element mit dynamischen Daten ("Logo", Typ "All").
   Groesse steuern die Element-Parameter max_width (250px = 56px hoch) und
   sticky_max_width (160px = 36px hoch) — hier ist nichts zu setzen.
   Sticky- und Mobil-Logo lassen sich in den Global Options ergaenzen.

   Voraussetzung: Das Lockup liegt als reine Pfad-Datei vor
   (worstbrock-lockup-horizontal-navy-pfade.svg). Die Fassung mit einem
   <text>-Element darf hier NICHT verwendet werden — Avada gibt das Logo in
   einem <img> aus, und ein SVG im img-Tag kann keine Seitenschrift laden. */

/* ---- Sprachwahl: DE aktiv, 1-px-Trenner, EN in Blau mittel --------- */
/* Der Textbaustein bringt eigene Abstaende mit; die muessen weg, sonst
   sitzt die Sprachwahl hoeher als die Schaltflaeche daneben. */
.w-sprachwahl-wrap {
	display: flex;
	align-items: center;
	margin: 0;
	line-height: 1;
}

.w-sprachwahl-wrap > p:last-child {
	margin-bottom: 0;
}

.w-sprachwahl {
	display: flex;
	align-items: center;
	gap: 10px;
	font-family: Manrope, Aptos, 'Segoe UI', Calibri, sans-serif;
	font-weight: 600;
	font-size: 13.5px;
	letter-spacing: .08em;
	line-height: 1;
}

.w-sprachwahl .w-sprache-aktiv {
	color: var(--w-navy);
}

.w-sprachwahl .w-sprache-trenner {
	display: block;
	width: 1px;
	height: 14px;
	background: var(--w-rahmen);
	flex: none;
}

.w-sprachwahl .w-sprache-en {
	color: var(--w-blau);
	text-decoration: none;
}

.w-sprachwahl .w-sprache-en:hover {
	color: var(--w-navy);
}

/* ---- Mega-Menue ---------------------------------------------------
   Inhalt und Gestaltung stecken in der Layout Section "Mega-Menü Leistungen":
   Gruppentitel als Titel-Element, die zwoelf Leistungslinks als vier flache
   WP-Menues (mega-restructuring-1 bis -3, mega-corporate-finance), ausgegeben
   ueber Menue-Elemente in Spaltenrichtung. Typografie und Farben stehen als
   Element-Parameter — hier ist nichts nachzusetzen.

   Bleibt nur die Absicherung gegen Vererbung: Das Panel sitzt im .awb-menu
   und wuerde dessen Versalien und Laufweite erben. */
.w-megamenu {
	text-transform: none;
	letter-spacing: 0;
}

/* ====================================================================
   Worstbrock CI — Leistungsseiten-Muster
   Grundlage: design_handoff_website/README.md, Kapitel "Weitere Bausteine"
   Erstes Muster: Seite "Eigenverwaltung" (ID 124), 10.08.2026

   Gleiche Regel wie oben: Farben, Schriften, Abstaende und Rahmen der
   Karten stehen als Element-Parameter im Shortcode, nicht hier. Hier
   steht nur, wofuer es keinen Element-Parameter gibt — der Bildslot,
   die Listenmarkierung und das Linkverhalten im Fliesstext.
   ==================================================================== */

/* ---- Aufzaehlungen im Fliesstext -----------------------------------
   CI: keine Icon-Fonts, kein Font Awesome. Die Markierung ist das
   Schriftzeichen Pfeil rechts, gesetzt als ::before. */
.w-fliesstext ul.w-liste {
	list-style: none;
	margin: 0;
	padding: 0;
}

.w-fliesstext ul.w-liste li {
	position: relative;
	padding-left: 24px;
	margin-bottom: 12px;
}

.w-fliesstext ul.w-liste li:last-child {
	margin-bottom: 0;
}

.w-fliesstext ul.w-liste li::before {
	content: "\2192";
	position: absolute;
	left: 0;
	top: 0;
	color: var(--w-akzent);
}

/* ---- Fliesstext ----------------------------------------------------
   CI: "text-wrap: pretty auf Fliesstextabsaetzen". */
.w-fliesstext p {
	text-wrap: pretty;
}

.w-fliesstext a {
	text-decoration: underline;
}

.w-fliesstext a:hover {
	color: var(--w-navy);
}

.w-kartenlink a {
	text-decoration: none;
}

.w-kartenlink a:hover {
	color: var(--w-navy);
}

/* ---- Abschlussblock, E22 und E75 ------------------------------------
   Eine Spalte der Hauptspalte nach den Fragen, Klasse an der Spalte. Die
   Linie sitzt am inneren Behaelter, damit sie mit dem Text endet und nicht
   mit dem Spaltenabstand. Die Schaltflaeche ist ein Avada-Element und steht
   ausserhalb von .w-fliesstext, damit greift die Falle aus P10 nicht.
   Der Selektor traegt .fusion-layout-column mit, Spezifitaet 0,3,0. Avadas
   `.fusion-layout-column .fusion-column-wrapper` hat 0,2,0, laedt nach dem
   Child-Theme und setzte Linie und Abstand am 28.09.2026 auf 0. */
.fusion-layout-column.w-abschluss > .fusion-column-wrapper {
	border-top: 1px solid var(--border-rule);
	padding-top: var(--space-48);
}

.w-abschluss p {
	max-width: 68ch;
	text-wrap: pretty;
}

/* ---- Fokus sichtbar ------------------------------------------------
   Gleiche Regel wie im Kopf: 2 px Messing, nie outline:none ohne Ersatz. */
.w-abschnitt a:focus-visible,
.w-abschnitt button:focus-visible {
	outline: 2px solid var(--w-messing);
	outline-offset: 2px;
}

/* ====================================================================
   Worstbrock Designsystem — Bausteine des UI-Kits Website
   Quelle: claude.ai/design, Projekt "Worstbrock CI",
   ui_kits/website/index.html und die Komponenten darunter.
   Importiert am 10.08.2026.

   Auch hier gilt: Was es als Avada-Element-Parameter gibt, steht im
   Shortcode. Hier steht nur eigenes Markup innerhalb von Textblöcken —
   Brotkrume, Tabelle, Fragenliste, Listen, Randspalte, Fuss.
   ==================================================================== */

/* ---- Brotkrume (Breadcrumb.jsx) ------------------------------------
   Steht auf Papierweiss, nie auf Navy. Die virtuellen Menuebenen
   "Leistungen" und "Restructuring" haben keine Seite und sind deshalb
   bewusst kein Link, sondern Text. */
.w-brotkrume ol {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 10px;
	font-family: var(--font-body);
	font-size: 13px;
	font-weight: var(--weight-regular);
	line-height: 20px;
	color: var(--w-blau);
}

.w-brotkrume li {
	display: flex;
	align-items: center;
	gap: 10px;
}

.w-brotkrume .w-sep {
	color: var(--w-blau-hell);
}

.w-brotkrume a {
	color: var(--w-blau);
	text-decoration: none;
	border-bottom: 1px solid var(--w-linie);
}

.w-brotkrume a:hover {
	color: var(--w-navy);
}

.w-brotkrume [aria-current="page"] {
	color: var(--w-navy);
}

.w-randgruppe {
	display: flex;
	flex-direction: column;
	gap: var(--space-8);
}

.w-randgruppe .w-label {
	font-family: var(--font-body);
	font-size: 12px;
	font-weight: var(--weight-semibold);
	line-height: 16px;
	letter-spacing: var(--tracking-label);
	text-transform: uppercase;
	color: var(--w-navy);
}

.w-randgruppe span,
.w-randgruppe a {
	font-family: var(--font-body);
	font-size: 15px;
	font-weight: var(--weight-regular);
	line-height: 24px;
	color: var(--w-text);
}

.w-randgruppe a {
	color: var(--w-blau);
	text-decoration: none;
	transition: var(--motion-transition);
}

/* Durchwahl und Zentraladresse unter der Schaltflaeche, E27 Fassung 2
   Darstellung A. Beide in Linkfarbe wie in ui_kits/website/Leistung.jsx. */
.w-randgruppe a.w-tel,
.w-randgruppe a.w-mail {
	color: var(--w-akzent);
}

.w-randgruppe a:hover {
	color: var(--w-navy);
}

.w-lead p {
	max-width: 62ch;
	text-wrap: pretty;
}

/* ---- Nutzenliste ---------------------------------------------------
   Nummerierung als Kapitelmarke, nicht als Aufzaehlungszeichen. */
.w-nutzen ol {
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	gap: var(--space-24);
	counter-reset: w-nutzen;
}

.w-nutzen ol li {
	counter-increment: w-nutzen;
	position: relative;
	padding-left: 44px;
	max-width: 68ch;
	text-wrap: pretty;
}

.w-nutzen ol li::before {
	content: counter(w-nutzen, decimal-leading-zero);
	position: absolute;
	left: 0;
	top: 3px;
	font: 500 13px/1.2 var(--font-display);
	letter-spacing: var(--tracking-eyebrow);
	color: var(--w-akzent);
}

/* E91: auch der Leitsatz der Aufzählung mit Pfeil, damit beide Listenarten einer Seite gleich stehen */
.w-nutzen strong,
ul.fusion-checklist.type-numbered.w-schritte strong,
ul.fusion-checklist.w-liste strong {
	color: var(--w-navy);
	font-weight: 600;
}

/* ---- Vergleichstabelle im Avada-Tabellenelement ---------------------
   Avada bringt mit .table-1 aus table.min.css eine eigene Kopfzeile
   (Grund #f6f6f6), Zebrastreifen und Zellrahmen mit. Gemessen am
   17.09.2026: die Kopfzeile stand hell auf hell, weil der Grund von
   Avada kam und die Schriftfarbe aus .w-tabelle th. Das Designsystem
   (DataTable.jsx) fordert Navy-Kopfzeile, keine Zebrastreifen, keine
   Zellrahmen. Die Regeln haengen nach E65 nicht an der eigenen Klasse
   allein, ihnen geht Avadas .table-1 voraus, und sie schlagen
   table.min.css ueber die Spezifitaet. */
.table-1.w-tabelle table {
	border: 1px solid var(--w-linie);
	background-color: transparent;
	box-shadow: none;
}

.table-1.w-tabelle table th {
	background: var(--w-navy);
	border: 1px solid var(--w-navy);
	padding: 12px 16px;
}

.table-1.w-tabelle tr:nth-child(2n) {
	background: transparent;
}

.table-1.w-tabelle tr td {
	border: 0;
	border-bottom: 1px solid var(--w-trenner);
	padding: 14px 16px;
}

/* ---- Nutzenliste als Avada-Checkliste -------------------------------
   Avada setzt die Ziffer als eigenes span.icon-wrapper in Fliesstext-
   groesse, einstellig, in der Farbe aus iconcolor und ueber
   ul.fusion-checklist.type-numbered li { display: flex;
   align-items: center } senkrecht mittig. Das Bild der Live-Seite fuehrt
   die Ziffer dagegen als Zaehler mit fuehrender Null, klein, gesperrt,
   im Akzent und auf Hoehe der ersten Zeile, gemessen am 17.09.2026,
   STATUS.md Runde 24. Avadas Ziffer wird ausgeblendet, der Zaehler
   steht am li. Farbe Akzent nach Weisung des Bearbeiters vom
   28.09.2026, das Attribut iconcolor im Builder bleibt unberuehrt und
   wirkt nicht mehr. Die Regeln haengen nach E65 nicht allein an der
   eigenen Klasse, ihnen gehen zwei Avada-Klassen voraus, und sie
   schlagen checklist.min.css ueber die Spezifitaet.
   Seit S6 gilt dasselbe fuer nummerierte Listen in Sachabschnitten,
   Klasse w-schritte nach E76. Das Bild gleicht "Ihr Nutzen", der Zaehler
   beginnt je Liste neu. */
ul.fusion-checklist.type-numbered.w-nutzen,
ul.fusion-checklist.type-numbered.w-schritte {
	counter-reset: w-nutzen;
}

ul.fusion-checklist.type-numbered.w-nutzen li.fusion-li-item,
ul.fusion-checklist.type-numbered.w-schritte li.fusion-li-item {
	display: block;
	counter-increment: w-nutzen;
	position: relative;
	padding: 0 0 0 44px;
	max-width: 68ch;
	text-wrap: pretty;
}

ul.fusion-checklist.type-numbered.w-nutzen li.fusion-li-item + li.fusion-li-item,
ul.fusion-checklist.type-numbered.w-schritte li.fusion-li-item + li.fusion-li-item {
	margin-top: var(--space-24);
}

ul.fusion-checklist.type-numbered.w-nutzen li.fusion-li-item::before,
ul.fusion-checklist.type-numbered.w-schritte li.fusion-li-item::before {
	content: counter(w-nutzen, decimal-leading-zero);
	position: absolute;
	left: 0;
	top: 3px;
	font: 500 13px/1.2 var(--font-display);
	letter-spacing: var(--tracking-eyebrow);
	color: var(--w-akzent);
}

ul.fusion-checklist.type-numbered.w-nutzen li.fusion-li-item .icon-wrapper,
ul.fusion-checklist.type-numbered.w-schritte li.fusion-li-item .icon-wrapper {
	display: none;
}

/* ---- Tabelle (DataTable.jsx) ---------------------------------------
   Kopfzeile als Navy-Flaeche, keine Zebrastreifen, keine Zellrahmen. */
.w-tabelle table {
	width: 100%;
	border-collapse: collapse;
	font-family: var(--font-body);
	font-size: 15px;
	font-weight: var(--weight-regular);
	line-height: 24px;
	color: var(--w-text);
}

.w-tabelle caption {
	font-family: var(--font-body);
	font-size: 13px;
	font-weight: var(--weight-regular);
	line-height: 20px;
	color: var(--w-blau);
	text-align: left;
	padding-bottom: var(--space-8);
}

.w-tabelle th {
	background: var(--w-navy);
	color: var(--w-papier);
	font-family: var(--font-body);
	font-size: 12px;
	font-weight: var(--weight-semibold);
	line-height: 16px;
	letter-spacing: var(--tracking-label);
	text-transform: uppercase;
	text-align: left;
	padding: 12px 16px;
	white-space: nowrap;
}

.w-tabelle td {
	padding: 14px 16px;
	border-bottom: 1px solid var(--w-trenner);
	color: var(--w-blau);
	vertical-align: top;
}

.w-tabelle td:first-child {
	color: var(--w-navy);
	font-weight: 600;
}

/* ---- Fuss (SiteFooter.jsx) -----------------------------------------
   Jede Zeile ist ein eigenes Block-Element. Grund: wpautop fasst
   aufeinanderfolgende inline-Elemente zu EINEM <p> mit <br /> zusammen —
   dann hat der Flex-Container nur ein Kind und das gap greift nicht.
   Block-Elemente laesst wpautop unangetastet. */
.w-fuss-ort {
	display: flex;
	flex-direction: column;
	gap: var(--space-8);
}

.w-fuss-ort > * {
	font-family: var(--font-body);
	font-size: 13px;
	font-weight: var(--weight-regular);
	line-height: 20px;
	color: var(--w-blau-hell);
	margin: 0;
}

.w-fuss-ort .w-ort {
	font: 500 17px/1.3 var(--font-display);
	color: var(--w-papier);
}

.w-fuss-ort a {
	color: inherit;
	text-decoration: none;
	transition: var(--motion-transition);
}

.w-fuss-ort a:hover {
	color: var(--w-papier);
}

.w-fuss-zeile {
	display: flex;
	flex-wrap: wrap;
	gap: var(--space-24);
	justify-content: space-between;
	align-items: flex-start;
}

.w-fuss-zeile p {
	font-family: var(--font-body);
	font-size: 13px;
	font-weight: var(--weight-regular);
	line-height: 20px;
	color: var(--w-blau-hell);
	margin: 0;
	max-width: 78ch;
	text-wrap: pretty;
}

.w-fuss-zeile nav {
	display: flex;
	flex-wrap: wrap;
	gap: var(--space-24);
}

.w-fuss-zeile a {
	font-family: var(--font-body);
	font-size: 13px;
	font-weight: var(--weight-regular);
	line-height: 20px;
	color: var(--w-blau-hell);
	text-decoration: none;
	transition: var(--motion-transition);
}

.w-fuss-zeile a:hover {
	color: var(--w-papier);
}

/* ---- Mobil ---------------------------------------------------------
   Breakpoint 1000 px wie im System festgelegt. Die Randspalte laeuft
   gestapelt nicht mehr mit; die Messinglinie bleibt als Kennzeichen. */
@media (max-width: 1000px) {
	.w-tabelle {
		overflow-x: auto;
	}
}

/* ---- Tabelle gestapelt unter 640 px, E103 ----------------------------
   Avada setzt dort white-space: nowrap an .table-1 td und th, drei
   Spalten passen auch mit Umbruch nicht in den Kasten. Jede Zeile wird
   ein Block, die Spaltenueberschrift kommt aus data-label der Zelle.
   Die Kopfzeile bleibt fuer Screenreader im Dokument. */
@media (max-width: 640px) {
	.table-1.w-tabelle table,
	.table-1.w-tabelle tbody,
	.table-1.w-tabelle tr,
	.table-1.w-tabelle td {
		display: block;
		width: 100%;
	}

	.table-1.w-tabelle table {
		border: 0;
	}

	.table-1.w-tabelle thead {
		position: absolute;
		width: 1px;
		height: 1px;
		overflow: hidden;
		clip: rect(0 0 0 0);
	}

	.table-1.w-tabelle caption {
		display: block;
	}

	.table-1.w-tabelle tbody {
		border-top: 3px solid var(--w-navy);
	}

	.table-1.w-tabelle tr {
		padding: var(--space-16) 0;
		border-bottom: 1px solid var(--w-trenner);
	}

	.table-1.w-tabelle tr td {
		border: 0;
		padding: 0;
		white-space: normal;
	}

	.table-1.w-tabelle tr td:first-child {
		margin-bottom: var(--space-4);
	}

	.table-1.w-tabelle tr td[data-label]::before {
		content: attr(data-label);
		display: block;
		margin-top: var(--space-12);
		margin-bottom: 2px;
		font-size: 12px;
		font-weight: var(--weight-semibold);
		line-height: 16px;
		letter-spacing: var(--tracking-label);
		text-transform: uppercase;
		color: var(--w-navy);
	}
}


/* ====================================================================
   Worstbrock Designsystem — restliche Bausteine des UI-Kits Website
   Quelle: Projekt "Worstbrock Design System", ui_kits/website/
   (Home · Kontakt · Team · Referenzen) und components/.
   Importiert am 10.08.2026.
   ==================================================================== */

/* ---- Videokopf der Startseite (Home.jsx, HeroVideo) -----------------
   Fassung 1a, freigegeben am 10.08.2026 mit vier benannten
   Regelausnahmen. Sie gilt ausschliesslich hier und wandert nicht auf
   Innenseiten. Die sechs Auflagen stehen im Markup und in hero-video.js:
   stumm, ohne Bedienleiste, Standbild als poster, prefers-reduced-motion
   zeigt nur das Standbild, Schleife ab 0,20 s, nur auf dieser Seite. */

@media (max-width: 1000px) {
}


@media (max-width: 1000px) {
}

/* ---- Luecke ---------------------------------------------------------
   Dieselbe Kennzeichnung, die Figure.jsx fuer fehlende Motive verwendet:
   im Zweifel keine Angabe. Eine unbelegte Zahl waere schlechter als die
   sichtbare Luecke. */
.w-luecke {
	font-family: var(--font-body);
	font-size: 13px;
	font-weight: var(--weight-regular);
	line-height: 20px;
	letter-spacing: var(--tracking-label);
	text-transform: uppercase;
	color: var(--w-blau);
}

/* ---- Bildflaeche (Figure.jsx) --------------------------------------
   Ohne Motiv bleibt die Flaeche leer und ist als Luecke gekennzeichnet.
   Radius 0, kein Schatten, kein Verlauf, kein Duotone. */
.w-figur {
	margin: 0;
	display: flex;
	flex-direction: column;
	gap: var(--space-8);
}

.w-figur .w-flaeche {
	position: relative;
	overflow: hidden;
	background: var(--w-blau-hell);
	border-radius: var(--radius);
	aspect-ratio: 3 / 2;
}

.w-figur.w-portraet .w-flaeche {
	aspect-ratio: 4 / 5;
}

.w-figur .w-flaeche img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.w-figur .w-flaeche > span {
	position: absolute;
	inset: 0;
	display: flex;
	align-items: flex-end;
	padding: var(--space-16);
	font-family: var(--font-body);
	font-size: 13px;
	font-weight: var(--weight-regular);
	line-height: 20px;
	letter-spacing: var(--tracking-label);
	text-transform: uppercase;
	color: var(--w-navy);
}

.w-figur figcaption {
	font-family: var(--font-body);
	font-size: 13px;
	font-weight: var(--weight-regular);
	line-height: 20px;
	color: var(--w-blau);
}

/* ---- Marke als Auszeichnung (Badge.jsx) ---------------------------- */
.w-marke {
	display: inline-flex;
	align-items: center;
	height: 26px;
	padding: 0 10px;
	font-family: var(--font-body);
	font-size: 12px;
	font-weight: var(--weight-semibold);
	line-height: 16px;
	letter-spacing: var(--tracking-label);
	text-transform: uppercase;
	color: var(--w-blau);
	background: transparent;
	border: 1px solid var(--w-linie);
	border-radius: var(--radius);
	cursor: pointer;
	transition: var(--motion-transition);
}

.w-marke[aria-pressed="true"] {
	color: var(--w-papier);
	background: var(--w-navy);
	border-color: var(--w-navy);
}

.w-filter {
	display: flex;
	flex-wrap: wrap;
	gap: var(--space-8);
	padding-bottom: var(--space-24);
	border-bottom: 1px solid var(--w-linie);
}

/* ---- Zitatflaeche (PullQuote.jsx) ---------------------------------- */
.fusion-body .w-zitat {
	margin: 0;
	display: flex;
	flex-direction: column;
	gap: var(--space-24);
	max-width: 60ch;
}

.fusion-body .w-zitat blockquote {
	margin: 0;
	font-family: var(--font-display);
	font-size: 28px;
	font-weight: var(--weight-medium);
	line-height: 34px;
	letter-spacing: var(--tracking-h2);
	color: var(--w-navy);
	text-wrap: pretty;
}

.fusion-body .w-zitat figcaption {
	font-family: var(--font-body);
	font-size: 15px;
	font-weight: var(--weight-regular);
	line-height: 24px;
	color: var(--w-blau);
}

.fusion-body .w-zitat.w-auf-navy blockquote {
	color: var(--w-papier);
}

.fusion-body .w-zitat.w-auf-navy figcaption {
	color: var(--w-blau-hell);
}

/* ---- Personenkarte (Team.jsx) -------------------------------------- */
.w-person {
	display: flex;
	flex-direction: column;
	gap: 4px;
}

.w-person .w-name {
	font-family: var(--font-display);
	font-size: 21px;
	font-weight: var(--weight-medium);
	line-height: 27px;
	color: var(--w-navy);
}

.w-person .w-name.w-offen {
	color: var(--w-blau-hell);
}

.w-person .w-rolle {
	font-family: var(--font-body);
	font-size: 15px;
	font-weight: var(--weight-regular);
	line-height: 24px;
	color: var(--w-text);
}

.w-person .w-zeile {
	font-family: var(--font-body);
	font-size: 13px;
	font-weight: var(--weight-regular);
	line-height: 20px;
	color: var(--w-blau);
	text-wrap: pretty;
}

/* ---- Referenzkarte: entfernt am 15. Oktober 2026 (E265), die Referenzen
   kommen aus dem Avada-Typ Portfolio und einer Post Card im Builder. ---- */




.w-formular .fusion-form-label {
	font-family: var(--font-body);
	font-size: 12px;
	font-weight: var(--weight-semibold);
	line-height: 16px;
	letter-spacing: var(--tracking-label);
	text-transform: uppercase;
	color: var(--w-blau);
}


/* ---- Kontaktseite (Kontakt.jsx) ------------------------------------ */
.w-randgruppe a.w-durchwahl {
	font-family: var(--font-display);
	font-size: 21px;
	font-weight: var(--weight-medium);
	line-height: 27px;
	color: var(--w-akzent);
}

.w-standorte {
	display: flex;
	flex-direction: column;
	gap: var(--space-32);
}

.w-standort {
	display: flex;
	flex-direction: column;
	gap: 4px;
	padding-top: var(--space-16);
	border-top: 1px solid var(--w-trenner);
}

.w-standort .w-ort {
	font: 500 17px/1.3 var(--font-display);
	color: var(--w-navy);
}

.w-standort span:not(.w-ort) {
	font-family: var(--font-body);
	font-size: 15px;
	font-weight: var(--weight-regular);
	line-height: 24px;
	color: var(--w-blau);
}



/* ---- Formularfelder (Field.jsx, CI Kapitel "Weitere Bausteine") -----
   ACHTUNG: Farbe, Rahmen, Radius, Schriftgrad und Feldhoehe stehen NICHT
   hier, sondern in den Avada Global Options (form_bg_color,
   form_border_color, form_border_width, form_border_radius,
   form_focus_border_color, form_text_color, form_text_size,
   form_input_height) — dort, wo Avada sie selbst erzeugt, und damit
   updatesicher. Hier steht nur, wofuer es keine Option gibt. */

/* CI: "Beschriftung liegt als Platzhalter im Feld." Die Beschriftung wird
   deshalb nur optisch entfernt, nicht aus dem Dokument — sonst verliert
   der Screenreader die Zuordnung und das Feld waere unbeschriftet.
   Die Klasse heisst .fusion-form-label-wrapper, nicht .fusion-form-label. */
.w-formular .fusion-form-label-wrapper {
	position: absolute;
	width: 1px;
	height: 1px;
	margin: -1px;
	padding: 0;
	overflow: hidden;
	clip: rect(0 0 0 0);
	white-space: nowrap;
	border: 0;
}

/* Ohne Kasten gehoert der Text an die Kante — Avada setzt sonst 1em
   Innenabstand, der nur zu einem Rahmen passt. */
.w-formular .fusion-form-input,
.w-formular textarea.fusion-form-input {
	padding-inline: 0;
}

/* CI: "Fokus: Linie 2 px Messing." Die Farbe kommt aus
   form_focus_border_color, die Staerke gibt es dort nicht. */
.w-formular .fusion-form-input:focus {
	border-bottom-width: 2px;
}

/* Fehler- und Bestaetigungsmeldung 13 px unter dem Feld. */
.w-formular .fusion-form-error-message,
.w-formular .error-message {
	font-family: var(--font-body);
	font-size: 13px;
	font-weight: var(--weight-regular);
	line-height: 20px;
	color: var(--w-fehler);
}

.w-formular .fusion-form-response-success {
	font-family: var(--font-body);
	font-size: 13px;
	font-weight: var(--weight-regular);
	line-height: 20px;
	color: var(--w-bestaetigung);
}

/* Avada faerbt den Platzhalter in der vollen Textfarbe — dann sieht ein leeres
   Feld aus wie ein ausgefuelltes. Field.jsx ueberlaesst ihn dem Browser;
   hier die CI-Entsprechung: Blau mittel, dieselbe Farbe wie die Grundlinie. */
.w-formular .fusion-form-input::placeholder,
.w-formular textarea.fusion-form-input::placeholder {
	color: var(--w-blau);
	opacity: 1;
}

/* E7 und E66, entscheidungen.md Runde 46: Bei eingeschraenkter Bewegung bleibt vom Kopfvideo
   der Startseite nur Avadas Standbild `fullwidth-video-image` stehen. */
@media (prefers-reduced-motion: reduce) {
	.fusion-page-title-bar .fullwidth-video { display: none; }
}

/* E195, entscheidungen.md Runde 64: Sprachwahl nach CI Status.md Zeile 206, aktive Sprache Navy,
   andere Color 3 (Blau mittel). Avadas active_color greift am Polylang-Punkt current-lang nicht,
   gemessen am 7. Oktober 2026, beide Punkte trugen dieselbe Farbe. Avada setzt
   .awb-menu__main-a { color: var(--awb-color) !important }, deshalb wird die Variable am Verweis
   gesetzt und nicht die Farbe. */
.awb-menu.sprachmenu .awb-menu__main-li.lang-item > .awb-menu__main-a {
	--awb-color: var(--w-blau);
}
.awb-menu.sprachmenu .awb-menu__main-li.lang-item.current-lang > .awb-menu__main-a {
	--awb-color: var(--w-navy);
}

/* E203, entscheidungen.md Runde 66: im geöffneten Mobilmenü die aktive Sprache Navy, die andere
   Color 3. Avada färbt das Panel über --awb-mobile-color, gemessen am 7. Oktober 2026 trugen DE
   und EN dort #4a4e57. collapse-enabled steht nur am Menü in der Mobilfassung. */
.awb-menu.collapse-enabled .awb-menu__main-li.lang-item {
	--awb-mobile-color: var(--w-blau);
	--awb-mobile-active-color: var(--w-blau);
}
.awb-menu.collapse-enabled .awb-menu__main-li.lang-item.current-lang {
	--awb-mobile-color: var(--w-navy);
	--awb-mobile-active-color: var(--w-navy);
}

/* E204, entscheidungen.md Runde 66: DE und EN in einer Zeile des Mobilpanels, CI Status.md
   Zeile 208. Die Liste ist ein Block, jeder Punkt war ein Flex-Element mit voller Breite. */
.awb-menu.collapse-enabled .awb-menu__main-ul > .awb-menu__main-li.lang-item {
	display: inline-flex;
	width: auto;
}

/* E210, entscheidungen.md Runde 69: im Mobilpanel sind Restructuring und Corporate Finance
   Überschriften unter „Leistungen“, auf Papier, nicht antippbar, ihre Leistungen stehen offen.
   Die Gruppen tragen die Menüklasse w-gruppe. Avada setzt Hintergrund, Rand, Innenabstand und die
   Anzeige des Aufklapp-Knopfs im Panel mit !important, gemessen am 7. Oktober 2026, deshalb hier auch. */
.awb-menu.collapse-enabled li.w-gruppe > a {
	background-color: var(--w-papier) !important;
	pointer-events: none;
	cursor: default;
}
.awb-menu.collapse-enabled li.w-gruppe > button {
	display: none !important;
}
.awb-menu.collapse-enabled li.w-gruppe > ul.awb-menu__sub-ul {
	display: block;
}

/* E209, entscheidungen.md Runde 69: Kontakt als konturierte Schaltfläche am Panelfuß,
   CI Status.md Zeile 206 und 208. Avada zeigt den Schaltflächen-Punkt im Panel sonst als Zeile. */
.awb-menu.collapse-enabled li.awb-menu__li_button {
	padding: 16px 20px;
}
.awb-menu.collapse-enabled li.awb-menu__li_button > a.awb-menu__main-a_button {
	--awb-mobile-color: var(--w-navy);
	--awb-mobile-active-color: var(--w-navy);
	display: inline-flex;
	align-items: center;
	justify-content: center;
	box-sizing: border-box;
	width: auto;
	height: 48px !important;
	min-height: 0 !important;
	padding: 0 28px !important;
	border: 1px solid var(--w-navy) !important;
	border-radius: 0 !important;
	background-color: transparent !important;
}

/* E216, entscheidungen.md Runde 71: im Mobilpanel Zeilen 58 Pixel, unter Leistungen 44,
   CI Status.md Zeile 208. Die 58 stehen im Menü-Element der Kopf-Layouts 818 und 539. Avada rechnet
   min-height aus --awb-mobile-nav-items-height, die Variable ist ohne Einheit. 1298 ist Leistungen
   in hauptmenue-mobil, die Gruppenüberschriften stehen darunter und bekommen ebenfalls 44. */
.awb-menu.collapse-enabled li.menu-item-1298 > .awb-menu__sub-ul {
	--awb-mobile-nav-items-height: 44;
}

/* E217, entscheidungen.md Runde 71: die Sprachzeile schließt mit einer Linie über die volle
   Breite. DE und EN stehen nach E204 nebeneinander, jede eigene Linie reichte nur über den Punkt. */
.awb-menu.collapse-enabled .awb-menu__main-ul > .awb-menu__main-li.lang-item {
	border-bottom: none;
}
.awb-menu.collapse-enabled .awb-menu__main-ul > li.awb-menu__li_button {
	border-top: 1px solid var(--awb-mobile-sep-color);
}
