/**
 * Onepager Ergonomieberatung (Seite 7536, /ergonomie/), 12.11.2026.
 *
 * Nur Komponenten, die Elementor nicht selbst gestaltet. Optik wie /vela-trippelstuhl/:
 * Farben und Schrift aus dem Elementor-Kit (Akzent #697787, Creme #F5F3F1, Salbei #D5D9DE,
 * DM Sans), kleine Schrift auf hellem Grund in Schiefer #4A5663. Alle Regeln hängen an .ps-eb
 * (Klasse der Abschnitte), nichts wirkt außerhalb. Geladen nur auf Seite 7536 (ds/ergonomie-onepager.php).
 */

.ps-eb {
	--ps-akzent: var(--e-global-color-accent, #697787);
	--ps-creme: var(--e-global-color-secondary, #F5F3F1);
	--ps-salbei: #D5D9DE;
	--ps-linie: #C9CED4;
	/* Kleine Schrift auf hellem Grund: Akzent schafft auf Creme 4,1 : 1, auf Salbei 3,2 : 1, Schiefer 5,3 bis 7,5 : 1 */
	--ps-schiefer: #4A5663;
	--ps-fehler: #A12B2B;
}

/* Fokus und Sprungmarken unter dem fixierten Header (87 px Desktop, 75 px mobil), nur auf dieser Seite.
   scroll-padding-top am Dokument wirkt auch beim Tabben (WCAG 2.4.11), scroll-margin-top der Ziele kommt hinzu:
   100 + 10 = 110 px wie bisher. Global setzen ds/footer-sitemap.css (:where, 110 px) und Elementors
   anchor-scroll-margin (Inline-Stil 110 px) scroll-margin-top auf Ziele; beides hier per !important auf 10 px, sonst
   zählte es doppelt. :root und !important, weil WordPress für die Admin-Leiste html { scroll-padding-top } setzt. */
html:root {
	scroll-padding-top: 100px !important;
	/* etwas Luft unten, damit Felder beim Tabben nicht knapp am unteren Rand angeschnitten stehen */
	scroll-padding-bottom: 24px;
}

/* Angemeldet mit Admin-Leiste: Header sitzt 32 px (bis 782 px Breite 46 px) tiefer, Abstand entsprechend größer.
   Besucher haben keine body.admin-bar, für sie bleibt es bei 100 + 10 = 110 px */
html:root:has(> body.admin-bar) {
	scroll-padding-top: 132px !important;
}

@media (max-width: 782px) {
	html:root:has(> body.admin-bar) {
		scroll-padding-top: 146px !important;
	}
}

.ps-eb[id],
.ps-eb [id] {
	scroll-margin-top: 10px !important;
}

/* ---------- Grundlagen ---------- */

.ps-eb .elementor-widget-text-editor p:last-child,
.ps-eb .elementor-widget-text-editor ol:last-child,
.ps-eb .elementor-widget-text-editor ul:last-child,
.ps-eb .elementor-widget-text-editor .ps-tabelle:last-child,
.ps-eb .elementor-widget-text-editor .ps-kurzfragen:last-child {
	margin-bottom: 0;
}

.ps-eb .ps-eyebrow p {
	margin: 0;
}

.ps-eb .ps-klein p {
	margin: 0 0 .6em;
}

.ps-eb .ps-klein p:last-child {
	margin-bottom: 0;
}

.ps-eb .elementor-heading-title {
	-webkit-hyphens: manual;
	hyphens: manual;
	overflow-wrap: break-word;
}

/* Sitz-Steh-Tisch, 20-8-2-Regel usw. brechen nicht am Bindestrich (seite.py, typografie()) */
.ps-eb .ps-nw {
	white-space: nowrap;
}

/* reCAPTCHA-Plakette ausgeblendet, der Pflichthinweis steht unter dem Absende-Knopf (.ps-recaptcha-hinweis) */
.grecaptcha-badge {
	visibility: hidden !important;
}

/* Links im Fließtext: schwarz und unterstrichen (Akzent hätte auf Creme und Salbei zu wenig Kontrast).
   Schriftgröße und -stärke vom Absatz, nicht aus der Link-Typografie des Kits. */
.ps-eb .elementor-widget-text-editor a,
.ps-eb .elementor-widget-shortcode a {
	color: #000;
	font-size: inherit;
	font-weight: inherit;
	text-decoration: underline;
	text-decoration-thickness: 1px;
	text-underline-offset: .2em;
}

.ps-eb .elementor-widget-text-editor a:hover,
.ps-eb .elementor-widget-text-editor a:focus {
	color: var(--ps-schiefer);
}

.ps-eb .ps-klein a {
	color: inherit;
}

.ps-eb a:focus-visible,
.ps-eb summary:focus-visible,
.ps-eb input:focus-visible {
	outline: 2px solid var(--ps-akzent);
	outline-offset: 3px;
}

.ps-eb .ps-textlink {
	display: flex;
	flex-wrap: wrap;
	gap: 4px 22px;
	font-size: 16px;
	font-weight: 600;
	line-height: 1.4;
}

/* Eigenständige Textlinks mindestens 24 px hoch (WCAG 2.5.8). inline-block, nicht inline-flex: sonst verschluckt
   der Flex-Umbruch das Leerzeichen hinter <span class="ps-nw"> */
.ps-eb .ps-textlink a,
.ps-eb .ps-kontaktwege a,
.ps-eb .ps-bewertung a,
.ps-eb .ps-zurueck a {
	display: inline-block;
	min-height: 24px;
	padding: 1px 0;
}

.ps-eb .ps-textlink-block .ps-textlink {
	margin-top: 6px;
	font-size: 15px;
}

.ps-eb .ps-knopf .elementor-button {
	white-space: normal;
}

/* Nur für Screenreader (Legende des Rechners). !important, weil das Theme legend als display: table setzt,
   dann wächst die Breite mit dem Text */
.ps-eb .ps-sr {
	display: block !important;
	position: absolute !important;
	top: 0 !important;
	left: 0 !important;
	width: 1px !important;
	height: 1px !important;
	padding: 0 !important;
	margin: -1px !important;
	overflow: hidden !important;
	clip: rect(0, 0, 0, 0) !important;
	white-space: nowrap !important;
	border: 0 !important;
}

/* Überschriften im Fließtext und im Kasten „Nächster Schritt“ */
/* H4 wie auf VELA: Schrift und Gewicht der Kit-Überschriften (500), keine Laufweite, 18 px */
.ps-eb .ps-ratgeber-text h4,
.ps-eb .ps-faq-antwort h4,
.ps-eb .ps-h4 .elementor-heading-title {
	margin: 1.6em 0 .6em;
	color: #000;
	font-size: 18px;
	font-weight: 500;
	letter-spacing: normal;
	line-height: 1.3;
	text-transform: uppercase;
}

.ps-eb .ps-h4 .elementor-heading-title,
.ps-eb .ps-ratgeber-text h4:first-child {
	margin-top: 0;
}

/* ---------- Listen ---------- */

.ps-eb ul.ps-punkte {
	margin: 0 0 1.2em;
	padding: 0;
	list-style: none;
}

.ps-eb ul.ps-punkte li {
	position: relative;
	padding: 10px 0 10px 28px;
	border-top: 1px solid var(--ps-linie);
}

.ps-eb ul.ps-punkte li:last-child {
	border-bottom: 1px solid var(--ps-linie);
}

.ps-eb ul.ps-punkte li::before {
	content: "+";
	position: absolute;
	top: 9px;
	left: 4px;
	color: var(--ps-akzent);
	font-weight: 700;
}

.ps-eb ol.ps-schrittliste {
	margin: 0 0 1.2em;
	padding: 0;
	list-style: none;
	counter-reset: ps-schritt;
}

.ps-eb ol.ps-schrittliste li {
	position: relative;
	min-height: 30px;
	padding: 12px 0 12px 46px;
	border-top: 1px solid var(--ps-linie);
	counter-increment: ps-schritt;
}

.ps-eb ol.ps-schrittliste li:last-child {
	border-bottom: 1px solid var(--ps-linie);
}

.ps-eb ol.ps-schrittliste li::before {
	content: counter(ps-schritt);
	position: absolute;
	top: 12px;
	left: 0;
	width: 30px;
	height: 30px;
	border-radius: 50%;
	background: #000;
	color: #fff;
	font-size: 14px;
	font-weight: 700;
	line-height: 30px;
	text-align: center;
}

/* Nummernliste mit Linien wie bei VELA (Arbeitsplatz-Check, Leistungen der Büroeinrichtung) */
.ps-eb .ps-nutzen {
	margin: 0;
	padding: 0;
	list-style: none;
	counter-reset: ps-nutzen;
}

.ps-eb .ps-nutzen li {
	position: relative;
	padding: 20px 0 20px 52px;
	border-top: 1px solid var(--ps-linie);
	counter-increment: ps-nutzen;
}

.ps-eb .ps-nutzen li:last-child {
	border-bottom: 1px solid var(--ps-linie);
}

.ps-eb .ps-nutzen li::before {
	content: counter(ps-nutzen, decimal-leading-zero);
	position: absolute;
	top: 23px;
	left: 0;
	color: var(--ps-schiefer);
	font-size: 15px;
	font-weight: 700;
}

.ps-eb .ps-nutzen strong,
.ps-eb .ps-nutzen h3 {
	display: block;
	margin: 0 0 6px;
	color: #000;
	font-family: "DM Sans", sans-serif;
	font-size: 20px;
	font-weight: 500;
	line-height: 1.3;
	text-transform: uppercase;
}

.ps-eb .ps-nutzen p {
	margin: 0;
	font-size: 17px;
	line-height: 1.55;
}

.ps-eb .ps-nutzen--kurz li {
	padding: 15px 0 15px 52px;
}

.ps-eb .ps-nutzen--kurz li::before {
	top: 17px;
}

.ps-eb .ps-nutzen--kurz strong {
	margin: 0;
	font-size: 18px;
}

/* ---------- Bilder ---------- */

.ps-eb .ps-hero-bild img,
.ps-eb .ps-rund img,
.ps-eb .ps-figur img,
.ps-eb .ps-portrait img {
	display: block;
	border-radius: 10px;
}

.ps-eb .ps-format-4-3 img {
	width: 100%;
	height: auto;
	aspect-ratio: 4 / 3;
	object-fit: cover;
}

.ps-eb .ps-format-16-10 img {
	width: 100%;
	height: auto;
	aspect-ratio: 16 / 10;
	object-fit: cover;
}

.ps-eb .ps-format-4-5 img {
	width: 100%;
	height: auto;
	aspect-ratio: 4 / 5;
	object-fit: cover;
	object-position: center 22%;
}

/* BIOSWING-Einstellbild, Monitorarme, Sitz-Steh, Licht: vollständig, ohne Beschnitt */
.ps-eb .ps-format-frei img {
	width: 100%;
	height: auto;
}

.ps-eb .ps-figur-text p {
	margin: 0;
}

.ps-eb .ps-bild-mit-karte {
	position: relative;
}

.ps-eb .ps-bild-mit-karte > .ps-bildkarte-wrap {
	position: absolute;
	bottom: 22px;
	left: 22px;
	width: auto;
	max-width: min(320px, calc(100% - 44px));
	margin: 0;
}

.ps-eb .ps-bildkarte {
	margin: 0;
	padding: 16px 20px;
	border-radius: 5px;
	background: #fff;
	box-shadow: 0 6px 18px rgba(0, 0, 0, .1);
	color: #000;
	font-size: 15px;
	line-height: 1.45;
}

.ps-eb .ps-bildkarte strong {
	display: block;
	margin-bottom: 4px;
	font-size: 17px;
	font-weight: 700;
}

/* „bis zu 25“ unter dem Showroom-Bild, der Stuhl bleibt frei */
.ps-eb .ps-zaehler {
	display: flex;
	flex-wrap: wrap;
	gap: 4px 14px;
	align-items: baseline;
	margin: 0;
	padding: 14px 18px;
	border-radius: 8px;
	background: #fff;
	color: #000;
	font-size: 15px;
	line-height: 1.45;
}

.ps-eb .ps-zaehler strong {
	font-size: 30px;
	font-weight: 500;
	line-height: 1.1;
}

/* HÅG Capisco ganz (contain) auf weißer Bühne wie der Fotogrund, der Kartenrahmen trennt sie vom Creme-Teil und
   vom Abschnitt. Kein mix-blend-mode: das zwingt Chrome zu einer Gesamtebene, ganzseitige Screenshots über
   16.384 px bleiben dann leer */
.ps-eb .ps-hebel-bild--frei {
	background: #fff;
}

/* ---------- Einstieg ---------- */

.ps-eb .ps-hero-notiz p {
	margin: 0;
	font-size: 17px;
	line-height: 1.5;
}

.ps-eb .ps-bewertung {
	display: flex;
	flex-wrap: wrap;
	gap: 4px 10px;
	align-items: center;
	margin: 0;
	font-size: 16px;
	font-weight: 600;
	line-height: 1.4;
}

.ps-eb .ps-bewertung__sterne {
	color: var(--ps-akzent);
	font-size: 18px;
	letter-spacing: 2px;
}

.ps-eb .ps-bewertung a {
	color: #000;
	text-decoration: underline;
	text-decoration-thickness: 1px;
	text-underline-offset: .2em;
}

.ps-eb .ps-bewertung-wrap:not(:has(.ps-bewertung)) {
	display: none;
}

/* ---------- Kennzeichen-Leiste und Schnellnavigation ---------- */

.ps-eb .ps-band {
	border-bottom: 1px solid var(--ps-linie);
}

.ps-eb .ps-band > .elementor-widget {
	padding: 20px 20px 20px 0;
	border-top: 1px solid var(--ps-linie);
}

@media (min-width: 880px) {
	.ps-eb .ps-band > .elementor-widget + .elementor-widget {
		padding-left: 20px;
		border-left: 1px solid var(--ps-linie);
	}
}

.ps-eb .ps-kennzeichen {
	margin: 0;
	font-size: 15px;
	line-height: 1.45;
}

.ps-eb .ps-kennzeichen strong {
	display: block;
	color: #000;
	font-size: 17px;
	font-weight: 700;
}

.ps-eb .ps-kennzeichen > span {
	color: var(--ps-schiefer);
}

.ps-eb .ps-themen {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.ps-eb .ps-themen a {
	display: inline-block;
	padding: 9px 14px;
	border: 1px solid var(--ps-linie);
	border-radius: 5px;
	background: #fff;
	color: #000;
	font-size: 16px;
	font-weight: 500;
	line-height: 1.3;
	text-decoration: none;
}

.ps-eb .ps-themen a:hover,
.ps-eb .ps-themen a:focus {
	border-color: var(--ps-schiefer);
	background: var(--ps-salbei);
	color: #000;
}

/* ---------- Karten ---------- */

.ps-eb .ps-karte {
	overflow: hidden;
}

.ps-eb .ps-wichtig {
	border-left: 4px solid var(--ps-akzent) !important;
}

.ps-eb .ps-logo-karte {
	text-align: center;
}

/* Feste Bühne, Logo je Format so groß, dass alle drei gleich schwer wirken, auf allen Breiten gleich */
.ps-eb .ps-logo-bild {
	display: flex;
	align-items: center;
	justify-content: center;
	height: 120px;
}

/* !important gegen die width: 100 % aus den Elementor-Einstellungen des Bild-Widgets */
.ps-eb .ps-logo-bild img {
	width: auto !important;
	max-width: 100% !important;
	height: auto !important;
	object-fit: contain;
}

.ps-eb .ps-logo--eic img {
	height: 112px !important;
}

.ps-eb .ps-logo--ergonomiewelt img {
	height: 98px !important;
}

.ps-eb .ps-logo--ergonomiepartner img {
	width: 236px !important;
}

.ps-eb .ps-logo-text {
	margin: 0;
	font-size: 15px;
	line-height: 1.5;
}

.ps-eb .ps-logo-text strong {
	display: block;
	margin-bottom: 4px;
	font-size: 17px;
	font-weight: 700;
}

.ps-eb .ps-hebel-bild img {
	display: block;
	border-radius: 0;
}

/* Kennzahlen (Wirtschaftlichkeit, Erkenntnisse) */
.ps-eb .ps-zahl-kachel {
	height: 100%;
	padding: 26px 26px 28px;
	border-radius: 10px;
	background: #fff;
}

.ps-eb .ps-zahl-kachel--creme {
	background: var(--ps-creme);
}

.ps-eb .ps-zahl,
.ps-eb .ps-statistik {
	display: flex;
	flex-direction: column;
	gap: 6px;
	margin: 0;
	font-size: 15px;
	line-height: 1.5;
}

.ps-eb .ps-zahl__wert {
	color: #000;
	font-size: 46px;
	font-weight: 400;
	line-height: 1.05;
}

.ps-eb .ps-zahl strong {
	font-size: 17px;
	font-weight: 700;
	line-height: 1.35;
}

.ps-eb .ps-zahl > span:last-child,
.ps-eb .ps-statistik small {
	color: var(--ps-schiefer);
}

.ps-eb .ps-statistik small {
	margin-top: 4px;
	font-size: 13px;
}

/* Kennwerte der Modellrechnung */
.ps-eb .ps-kennwerte {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	overflow: hidden;
	border: 1px solid var(--ps-linie);
	border-radius: 8px;
	background: var(--ps-creme);
}

.ps-eb .ps-kennwert {
	padding: 14px 16px;
	border-right: 1px solid var(--ps-linie);
	border-bottom: 1px solid var(--ps-linie);
}

.ps-eb .ps-kennwert:nth-child(2n) {
	border-right: 0;
}

.ps-eb .ps-kennwert:nth-last-child(-n + 2) {
	border-bottom: 0;
}

.ps-eb .ps-kennwert strong {
	display: block;
	color: #000;
	font-size: 24px;
	font-weight: 500;
	line-height: 1.2;
}

.ps-eb .ps-kennwert > span {
	display: block;
	margin-top: 4px;
	color: var(--ps-schiefer);
	font-size: 14px;
	line-height: 1.45;
}

/* Ansprechpartner */
.ps-eb .ps-zitat {
	margin: 0;
	padding: 0;
	border: 0;
}

.ps-eb .ps-zitat p {
	margin: 0;
	color: #000;
	font-size: 30px;
	font-weight: 400;
	line-height: 1.3;
}

.ps-eb .ps-signatur p {
	font-size: 16px;
	line-height: 1.6;
}

/* ---------- Fehlzeiten-Kosten-Rechner ---------- */

.ps-eb .ps-rechner fieldset {
	min-width: 0;
	margin: 0;
	padding: 0;
	border: 0;
}

.ps-eb .ps-rechner__felder {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 18px 20px;
}

.ps-eb .ps-rechner__feld label {
	display: block;
	margin-bottom: 6px;
	color: #000;
	font-size: 15px;
	font-weight: 600;
	line-height: 1.35;
}

.ps-eb .ps-rechner__feld input {
	box-sizing: border-box;
	width: 100%;
	padding: 10px 12px;
	border: 1px solid #8A949E;
	border-radius: 5px;
	background: #fff;
	color: #000;
	font-family: inherit;
	font-size: 17px;
	line-height: 1.3;
}

.ps-eb .ps-rechner__feld input[aria-invalid="true"] {
	border-color: var(--ps-fehler);
	box-shadow: inset 0 0 0 1px var(--ps-fehler);
}

.ps-eb .ps-rechner fieldset:disabled input {
	background: #EEF0F2;
	color: var(--ps-schiefer);
}

.ps-eb .ps-rechner__hilfe {
	margin: 6px 0 0;
	color: var(--ps-schiefer);
	font-size: 13px;
	line-height: 1.45;
}

.ps-eb .ps-rechner__ergebnisse {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 14px;
	margin-top: 22px;
}

.ps-eb .ps-rechner__ergebnis {
	display: flex;
	flex-direction: column;
	gap: 6px;
	padding: 16px 18px;
	border: 1px solid var(--ps-linie);
	border-radius: 6px;
	background: #fff;
}

.ps-eb .ps-rechner__label {
	color: var(--ps-schiefer);
	font-size: 12px;
	font-weight: 700;
	letter-spacing: 1px;
	line-height: 1.35;
	text-transform: uppercase;
}

.ps-eb .ps-rechner__wert {
	color: #000;
	font-size: 30px;
	font-weight: 500;
	line-height: 1.15;
	overflow-wrap: anywhere;
}

.ps-eb .ps-rechner__formel {
	color: var(--ps-schiefer);
	font-size: 13px;
	line-height: 1.45;
}

.ps-eb .ps-rechner__fehler {
	margin: 12px 0 0;
	color: var(--ps-fehler);
	font-size: 15px;
	font-weight: 600;
}

.ps-eb .ps-rechner__fehler:empty {
	display: none;
}

.ps-eb .ps-rechner__ohne-js {
	margin-top: 12px;
	font-size: 14px;
}

/* ---------- Ratgeber ---------- */

.ps-eb .ps-ratgeber-nav {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 16px;
}

.ps-eb .ps-ratgeber-nav a {
	display: flex;
	flex-direction: column;
	gap: 6px;
	padding: 18px 20px 22px;
	border-top: 3px solid var(--ps-akzent);
	border-radius: 0 0 8px 8px;
	background: var(--ps-creme);
	color: #000;
	text-decoration: none;
}

.ps-eb .ps-ratgeber-nav a:hover,
.ps-eb .ps-ratgeber-nav a:focus {
	background: var(--ps-salbei);
	color: #000;
}

.ps-eb .ps-ratgeber-nav a > span {
	color: var(--ps-schiefer);
	font-size: 13px;
	font-weight: 700;
	letter-spacing: 1.2px;
	text-transform: uppercase;
}

.ps-eb .ps-ratgeber-nav strong {
	font-size: 18px;
	font-weight: 600;
	line-height: 1.3;
}

.ps-eb .ps-ratgeber-nav small {
	font-size: 15px;
	line-height: 1.45;
}

.ps-eb .ps-ratgeber {
	border-top: 1px solid var(--ps-linie);
}

/* Ratgeber ab 1025 px: Textspalte höchstens 730 px links (etwa 80 Zeichen), Bild rechts daneben, kein Loch.
   Mobil und Tablet in DOM-Reihenfolge Kopf, Bild, Text. */
@media (min-width: 1025px) {
	.elementor .ps-eb .ps-ratgeber.e-con {
		display: grid !important;
		grid-template-columns: minmax(0, 730px) minmax(0, 1fr);
		column-gap: 64px;
		row-gap: 24px;
		align-items: start;
	}

	.elementor .ps-eb .ps-ratgeber.e-con > * {
		grid-column: 1;
		width: auto;
		max-width: 100%;
	}

	.elementor .ps-eb .ps-ratgeber.e-con > .ps-ratgeber-bild {
		grid-column: 2;
		grid-row: 1 / span 6;
	}
}

.ps-eb .ps-ratgeber-text p,
.ps-eb .ps-ratgeber-text ul,
.ps-eb .ps-ratgeber-text ol {
	margin-bottom: 1em;
}

.ps-eb .ps-notiz {
	padding: 14px 18px;
	border-left: 3px solid var(--ps-akzent);
	background: var(--ps-creme);
}

.ps-eb .ps-zurueck p {
	margin: 0;
	font-size: 15px;
}

/* Tabellen */
.ps-eb .ps-tabelle {
	margin: 0 0 1.4em;
	overflow-x: auto;
}

.ps-eb .ps-tabelle table {
	width: 100%;
	margin: 0;
	border-collapse: collapse;
	font-size: 16px;
	line-height: 1.45;
}

.ps-eb .ps-tabelle caption {
	padding: 0 0 8px;
	caption-side: top;
	color: #000;
	font-weight: 600;
	text-align: left;
}

.ps-eb .ps-tabelle th,
.ps-eb .ps-tabelle td {
	padding: 10px 12px;
	border: 1px solid var(--ps-linie);
	background: #fff;
	text-align: left;
	vertical-align: top;
}

.ps-eb .ps-tabelle thead th {
	background: var(--ps-salbei);
	font-weight: 600;
}

.ps-eb .ps-tabelle tbody th {
	background: var(--ps-creme);
	font-weight: 600;
}

/* Kurze Fragen in den Ratgebern */
.ps-eb .ps-kurzfragen {
	margin: 1.6em 0;
	border-top: 1px solid var(--ps-linie);
}

.ps-eb .ps-kurzfragen details {
	border-bottom: 1px solid var(--ps-linie);
}

.ps-eb .ps-kurzfragen summary {
	position: relative;
	padding: 16px 40px 16px 0;
	color: #000;
	font-size: 17px;
	font-weight: 600;
	line-height: 1.4;
	list-style: none;
	cursor: pointer;
}

.ps-eb .ps-kurzfragen summary::-webkit-details-marker {
	display: none;
}

.ps-eb .ps-kurzfragen summary::after {
	content: "+";
	position: absolute;
	top: 12px;
	right: 6px;
	color: var(--ps-akzent);
	font-size: 24px;
	font-weight: 400;
	line-height: 1;
	transition: transform .2s ease;
}

.ps-eb .ps-kurzfragen details[open] summary::after {
	transform: rotate(45deg);
}

.ps-eb .ps-kurzfragen details p {
	margin: 0 0 18px;
}

/* ---------- FAQ (Elementor Nested Accordion) ---------- */

.ps-eb .ps-faq .e-n-accordion-item {
	border-bottom: 1px solid var(--ps-linie);
}

.ps-eb .ps-faq .e-n-accordion-item:first-child {
	border-top: 1px solid var(--ps-linie);
}

.ps-eb .ps-faq .e-n-accordion-item-title {
	padding: 20px 4px 20px 0;
	border: 0;
	background: transparent;
}

.ps-eb .ps-faq .e-n-accordion-item-title-text {
	margin: 0;
	color: #000;
	font-family: "DM Sans", sans-serif;
	font-size: 18px;
	font-weight: 600;
	letter-spacing: 0;
	line-height: 1.4;
	text-transform: none;
}

.ps-eb .ps-faq .e-n-accordion-item-title:hover .e-n-accordion-item-title-text,
.ps-eb .ps-faq .e-n-accordion-item[open] .e-n-accordion-item-title-text {
	color: var(--ps-schiefer);
}

.ps-eb .ps-faq .e-n-accordion-item-title-icon i,
.ps-eb .ps-faq .e-n-accordion-item-title-icon svg {
	color: var(--ps-akzent);
	fill: var(--ps-akzent);
}

.ps-eb .ps-faq .e-n-accordion-item > .e-con {
	padding: 0 0 22px;
	border: 0;
}

.ps-eb .ps-faq-antwort ul,
.ps-eb .ps-faq-antwort ol:not(.ps-schrittliste) {
	margin: 0 0 1em;
	padding-left: 1.3em;
}

.ps-eb .ps-faq-antwort li {
	margin-bottom: 8px;
}

.ps-eb .ps-faq-quelle,
.ps-eb .ps-foerderstand {
	color: var(--ps-schiefer);
	font-size: 14px;
}

/* Linke FAQ-Spalte bleibt auf großen Bildschirmen stehen, unter dem fixierten Header */
@media (min-width: 1025px) {
	.ps-eb .ps-faq-intro.e-con {
		position: sticky;
		top: 110px;
		align-self: flex-start;
	}
}

/* ---------- Kontakt ---------- */

.ps-eb .ps-kontaktdaten {
	display: flex;
	flex-direction: column;
	gap: 6px;
	margin: 0;
	padding: 18px 0 0;
	border-top: 1px solid var(--ps-linie);
	font-size: 17px;
	line-height: 1.5;
	list-style: none;
}

.ps-eb .ps-kontaktwege {
	display: flex;
	flex-direction: column;
	gap: 8px;
	margin: 0;
	font-size: 17px;
	font-weight: 600;
}

.ps-eb .ps-formular .elementor-field-type-acceptance label,
.ps-eb .ps-formular .elementor-field-option label {
	font-size: 15px;
	font-weight: 400;
	line-height: 1.45;
}

.ps-eb .ps-formular .elementor-field-option a {
	color: #000;
	text-decoration: underline;
}

.ps-eb .ps-formular .elementor-field-type-acceptance .elementor-field-option {
	display: flex;
	gap: 10px;
	align-items: flex-start;
}

/* Thema-Auswahl: Text endet vor dem Pfeil */
.ps-eb .ps-formular select {
	padding-right: 40px !important;
	text-overflow: ellipsis;
}

.ps-eb .ps-formular input[type="checkbox"] {
	flex: 0 0 24px;
	width: 24px;
	height: 24px;
	margin: 0;
	accent-color: var(--ps-akzent);
}

/* ---------- Tablet ---------- */

@media (max-width: 1024px) {
	.ps-eb .ps-ratgeber-nav {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	/* Ratgeber einspaltig: Textspalte trotzdem höchstens 730 px (etwa 80 Zeichen) */
	.elementor .ps-eb .ps-ratgeber.e-con > * {
		width: 100%;
		max-width: 730px;
	}

	/* Logos auf Tablet im selben Verhältnis kleiner, damit sie in drei Spalten gleich wirken */
	.ps-eb .ps-logo-raster .ps-karte {
		padding-right: 20px;
		padding-left: 20px;
	}

	.ps-eb .ps-logo-bild {
		height: 100px;
	}

	.ps-eb .ps-logo--eic img {
		height: 88px !important;
	}

	.ps-eb .ps-logo--ergonomiewelt img {
		height: 77px !important;
	}

	.ps-eb .ps-logo--ergonomiepartner img {
		width: 184px !important;
	}

	.ps-eb .ps-zahl-kachel {
		padding: 22px 20px 24px;
	}

	/* Studien zwischen 880 und 1024 px zweispaltig, die dritte Karte über beide Spalten */
	.ps-eb .ps-studien-raster > .e-con:last-child {
		grid-column: span 2;
	}

	/* Showroom-Bild auf Tablet nicht 1:1 über die volle Breite, sondern 480 px hoch auf weißer Bühne */
	.ps-eb .ps-showroom-bild .elementor-widget-image img {
		width: 100%;
		height: 480px;
		object-fit: contain;
		background: #fff;
	}
}

/* Dreierraster erst unter 880 px einspaltig (Elementors Tablet-Umbruch liegt bei 1024 px) */
@media (max-width: 879px) {
	.elementor .ps-eb .ps-raster-880.e-con {
		--e-con-grid-template-columns: repeat(1, minmax(0, 1fr)) !important;
		grid-template-columns: repeat(1, minmax(0, 1fr)) !important;
	}

	.ps-eb .ps-studien-raster > .e-con:last-child {
		grid-column: auto;
	}

	.ps-eb .ps-band > .elementor-widget + .elementor-widget {
		padding-left: 0;
		border-left: 0;
	}
}

/* ---------- Kleine Bildschirme ---------- */

@media (max-width: 767px) {
	.ps-eb .ps-bild-mit-karte > .ps-bildkarte-wrap {
		bottom: 14px;
		left: 14px;
		max-width: calc(100% - 28px);
	}

	.ps-eb .ps-bildkarte {
		padding: 12px 16px;
		font-size: 14px;
	}

	.ps-eb .ps-bildkarte strong {
		font-size: 16px;
	}

	.ps-eb .ps-zaehler strong {
		font-size: 26px;
	}

	.ps-eb .ps-showroom-bild .elementor-widget-image img {
		height: auto;
		object-fit: fill;
	}

	.ps-eb .ps-nutzen li,
	.ps-eb .ps-nutzen--kurz li {
		padding-left: 40px;
	}

	.ps-eb .ps-nutzen strong,
	.ps-eb .ps-nutzen h3 {
		font-size: 18px;
	}

	.ps-eb .ps-nutzen p {
		font-size: 16px;
	}

	.ps-eb .ps-zahl__wert {
		font-size: 38px;
	}

	.ps-eb .ps-zitat p {
		font-size: 23px;
	}

	.ps-eb .ps-rechner__felder,
	.ps-eb .ps-rechner__ergebnisse,
	.ps-eb .ps-ratgeber-nav {
		grid-template-columns: minmax(0, 1fr);
	}

	.ps-eb .ps-rechner__wert {
		font-size: 26px;
	}

	.ps-eb .ps-kennwert strong {
		font-size: 21px;
	}

	.ps-eb .ps-themen a {
		font-size: 15px;
	}
}

/* Tabellen als Karten, damit nichts seitlich herausragt */
@media (max-width: 600px) {
	.ps-eb .ps-tabelle table,
	.ps-eb .ps-tabelle tbody,
	.ps-eb .ps-tabelle tr,
	.ps-eb .ps-tabelle th,
	.ps-eb .ps-tabelle td {
		display: block;
	}

	.ps-eb .ps-tabelle caption {
		display: block;
		width: auto;
	}

	.ps-eb .ps-tabelle thead {
		display: none;
	}

	.ps-eb .ps-tabelle tr {
		margin-bottom: 12px;
		border: 1px solid var(--ps-linie);
		border-radius: 6px;
		overflow: hidden;
	}

	.ps-eb .ps-tabelle th,
	.ps-eb .ps-tabelle td {
		border: 0;
		border-top: 1px solid var(--ps-linie);
	}

	.ps-eb .ps-tabelle tbody th {
		border-top: 0;
	}

	.ps-eb .ps-tabelle td::before {
		content: attr(data-label);
		display: block;
		margin-bottom: 2px;
		color: var(--ps-schiefer);
		font-size: 13px;
		font-weight: 700;
		letter-spacing: .5px;
		text-transform: uppercase;
	}
}
