/* ===========================================================================
   components.css — Benker WP-Theme
   AUTO-EXTRAHIERT aus dem Astro-Build: dist/_astro/*.css UND die von Astro in die
   HTML inlined <style>-Bloecke (inlineStylesheets:"auto"). Nur Regeln mit
   [data-astro-cid-*] (=Komponenten-Styles) uebernommen, alle Hashes gestrippt
   (laut docs/Migration-CSS-Analyse.md kollisionsfrei), global dedupliziert.
   tokens.css + global.css liefern das globale CSS (NICHT hier). NICHT hand-editieren.
   =========================================================================== */

.pcard {display:flex;flex-direction:column;gap:var(--space-5);width:100%;max-width:280px}
.pcard__media {position:relative;width:100%;aspect-ratio:280 / 400}
/* 10.08.2026: absolut im Rahmen statt height:100%.
   Mit height:100% loeste sich die Prozentangabe an einer Box ohne feste Hoehe
   nicht auf, das Bild nahm seine Eigenhoehe an und dehnte die aspect-ratio-Box
   auf. Genau daran ist das flachere Format zuerst gescheitert. Absolut
   positioniert gibt jetzt der Rahmen die Hoehe vor, nicht die Bilddatei.

   01.09.2026 (Rueckmeldung Benker): object-position 50% 0 in ALLEN Breiten.
   Vorher war der Ausschnitt unter 1200px mittig (Browser-Standard) und ab
   1200px auf 35%. Die neuen Portraits (Stoehr, Steiner) kommen ungeschnitten
   vom Fotografen und sind enger gefasst als die alten 400x601-Freisteller,
   dadurch lag der Haaransatz an der Rahmenkante. Oben verankert kann von
   oben grundsaetzlich nichts wegfallen, egal wie ein neues Foto gefasst ist.
   Weggeschnitten wird nur unten, dort steht Schulter und Hintergrund. */
.pcard__media img {position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 0;display:block;clip-path:url(#person-notch-br)}
/* 10.08.2026 (Korrekturen KW 32, Ticket 16): Fehlt ein Foto, springt
   person-card.php auf das Motiv der Karte "Und viele mehr …" — dafuer braucht
   es kein eigenes CSS, es ist ein ganz normales Bild. Die frueher hier
   stehende graue Platzhalterflaeche ist damit entfallen. */
.pcard__info {display:flex;flex-direction:column;gap:var(--space-3)}
.pcard__name-area {display:flex;flex-direction:column}
.pcard__name {font-family:var(--font-heading);font-size:var(--fs-heading-3xs);line-height:var(--lh-heading-3xs);font-weight:var(--fw-semibold);letter-spacing:var(--tracking-tight);color:var(--color-text)}
.pcard__role {font-family:var(--font-body);font-size:var(--fs-body-m);line-height:var(--lh-body-m);letter-spacing:var(--tracking-tight);color:var(--color-text)}
.pcard__note {font-family:var(--font-body);font-size:var(--fs-body-m);line-height:var(--lh-body-m);letter-spacing:var(--tracking-tight);color:var(--color-text-muted)}
.pcard__contact {display:flex;flex-direction:column;gap:var(--space-2)}
.pcard__line {display:inline-flex;align-items:center;gap:var(--space-3);font-family:var(--font-body);font-size:var(--fs-body-m);line-height:var(--lh-body-m);letter-spacing:var(--tracking-tight);color:var(--color-text);transition:color .15s ease}
.pcard__line:hover {color:var(--color-accent)}
.pcard__line:focus-visible {outline:2px solid var(--color-accent);outline-offset:2px}
.pcard__icon {flex-shrink:0;color:var(--color-accent)}
.pcard__line span {min-width:0;overflow-wrap:anywhere}
.team {padding-block:var(--space-8);background-color:var(--color-bg)}
.team__inner {width:100%;max-width:1328px;margin-inline:auto;padding-inline:var(--space-5)}
.team__layout {display:flex;flex-direction:column;align-items:center;gap:var(--space-7)}
.team__grid {display:grid;grid-template-columns:minmax(0,280px);justify-content:center;gap:var(--space-7) var(--space-5);width:100%}
.team__aside {display:flex;justify-content:center;width:100%}
/* 20.08.2026 (Ticket 16): Zwischenueberschrift im Team-Raster. Geht ueber alle
   Spalten, dadurch beginnt danach zwangslaeufig eine neue Reihe. */
.team__reihe {grid-column:1 / -1;margin:0;font-family:var(--font-heading);font-size:var(--fs-heading-3xs);line-height:var(--lh-heading-3xs);font-weight:var(--fw-semibold);letter-spacing:var(--tracking-tight);color:var(--color-text-muted)}
@media(min-width:600px) {
  .team__grid {grid-template-columns:repeat(2,minmax(0,280px))}
}
@media(min-width:900px) {
  .team {padding-block:var(--space-9)}
  .team__grid {grid-template-columns:repeat(3,minmax(0,280px))}
}
/* 10.08.2026 (Korrekturen KW 32, Ticket 16): vierte Spalte, volle Breite.

   Benker hat die Reihen zu vier Personen vorgegeben. Moeglich wurde das, seit
   die Kontaktkarte rechts entfaellt (der Hero hat oben schon einen
   Kontakt-Button, zwei Aufforderungen auf einer Seite verwaessern sich).

   Die Karten sind hier NICHT mehr auf 280px gedeckelt, sondern teilen sich die
   Inhaltsbreite (1fr). Mit dem festen Deckel blieben rechts gut 200px leer —
   das Raster sah aus, als fehle eine Spalte.

   Deshalb auch ein anderes Bildformat: Bei gleicher Hochkant-Proportion waeren
   die breiteren Karten noch HOEHER geworden (280x400 -> 333x476). Quadratisch
   sind sie breiter und zugleich flacher als vorher. object-position haelt dabei
   den Kopf im Bild: Beim Beschnitt von hochkant auf quadratisch faellt sonst
   oben und unten gleich viel weg, und Portraits haben den Kopf nicht in der
   Mitte. Die dafuer noetige object-position steht seit dem 01.09.2026 global
   an .pcard__media img (50% 0), nicht mehr als Sonderwert nur hier.

   Alles unter .team--ohne-aside: Steht die Kontaktkarte daneben (Block
   benker/team an anderer Stelle), bleibt es beim bisherigen Raster. */
@media(min-width:1200px) {
  .team--ohne-aside .team__grid {grid-template-columns:repeat(4,minmax(0,1fr));width:100%}
  .team--ohne-aside .pcard {max-width:none}
  .team--ohne-aside .pcard__media {aspect-ratio:5 / 6}
}
@media(min-width:1340px) {
  .team__layout {flex-direction:row;align-items:flex-start;justify-content:center;gap:20px}
  .team__grid {width:auto;justify-content:start}
  .team__aside {width:auto;flex:0 0 372px}
  /* Ohne Kontaktkarte gibt es nichts mehr zu zentrieren: Das Raster nimmt die
     volle Inhaltsbreite und beginnt an derselben Kante wie der Hero. */
  .team--ohne-aside .team__layout {justify-content:flex-start}
  .team--ohne-aside .team__grid {width:100%}
}
/* Reihenumbruch: Diese Karte beginnt eine neue Rasterreihe, auch wenn die
   vorherige nicht voll ist. So entstehen die vom Kunden vorgegebenen Reihen
   zu 4, 4, 3, 3 und 1 Person. Gepflegt wird das am Datensatz
   ("Neue Reihe beginnen"), siehe inc/ansprechpartner.php.
   Unterhalb von 900px steht ohnehin nur eine bzw. zwei Spalten — dort waere
   ein erzwungener Umbruch sinnlos, deshalb greift die Regel erst ab 900px. */
@media(min-width:900px) {
  .team__grid .pcard--neue-reihe {grid-column-start:1}
}
.scard {position:relative;width:100%;max-width:372px;aspect-ratio:372 / 272;background-image:var(--gradient-blue);clip-path:url(#side-notch-br);display:flex}
.scard__body {display:flex;flex-direction:column;justify-content:space-between;gap:var(--space-6);width:100%;padding:var(--space-6)}
.scard__title {font-family:var(--font-heading);font-size:var(--fs-heading-xs);line-height:var(--lh-heading-xs);font-weight:var(--fw-semibold);letter-spacing:var(--tracking-tight);color:var(--color-neutral-100);max-width:240px}
.scard__cta {align-self:flex-start;display:inline-flex;align-items:center;gap:var(--space-3);background-color:var(--color-neutral-100);color:var(--color-accent);border:1px solid #e6ebf3;border-radius:var(--radius-full);padding:var(--space-3) var(--space-5);font-family:var(--font-body);font-size:var(--fs-body-m);letter-spacing:var(--tracking-tight);transition:opacity .15s ease}
.scard__cta:hover {opacity:.9}
.scard__cta:focus-visible {outline:2px solid var(--color-neutral-100);outline-offset:3px}
.button {display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-3) var(--space-5);border:none;border-radius:var(--radius-full);font-family:var(--font-body);font-size:var(--fs-body-m);font-weight:var(--fw-regular);letter-spacing:var(--tracking-tight);cursor:pointer;transition:background-color .15s ease,opacity .15s ease}
.button__arrow {flex-shrink:0}
.button--primary {background-color:var(--color-accent);color:var(--color-neutral-100)}
.button--primary:hover {opacity:.9}
.button--secondary {background-color:transparent;color:var(--color-accent);box-shadow:inset 0 0 0 1px var(--color-accent)}
.button--secondary:hover {background-color:var(--color-neutral-300)}
.header {background-color:transparent;--header-menu-gap: 50px}
.header__inner {display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-4);padding-block:var(--space-4)}
.header__logo {display:inline-flex;flex-shrink:0}
.header__logo img {width:144px;height:auto}
.header__toggle {display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;background:transparent;border:none;border-radius:var(--radius-sm);cursor:pointer}
.header__burger,.header__burger:before,.header__burger:after {content:"";display:block;width:22px;height:2px;background-color:var(--color-text);transition:transform .2s ease,opacity .2s ease}
.header__burger {position:relative}
.header__burger:before {position:absolute;top:-7px}
.header__burger:after {position:absolute;top:7px}
.header.is-open .header__burger {background-color:transparent}
.header.is-open .header__burger:before {top:0;transform:rotate(45deg)}
.header.is-open .header__burger:after {top:0;transform:rotate(-45deg)}
.header__nav {display:none;flex-basis:100%}
.header.is-open .header__nav {display:block}
.header__menu {list-style:none;display:flex;flex-direction:column;gap:var(--space-1);padding-top:var(--space-3)}
.header__link {display:inline-flex;align-items:center;gap:var(--space-1);padding-block:var(--space-3);font-family:var(--font-heading);color:var(--color-text);transition:color .15s ease}
.header__link:hover {color:var(--color-accent)}
.header__caret {flex-shrink:0}
.header__cta {padding-top:var(--space-4)}
.header__cta .button {font-size:var(--fs-body-s)}
@media(min-width:900px) {
  .header__toggle {display:none}
  .header__inner {flex-wrap:nowrap;gap:0}
  .header__nav {display:flex;flex:1;flex-basis:auto;align-items:center}
  .header__menu {flex-direction:row;align-items:center;gap:var(--header-menu-gap);padding-top:0;margin-inline:auto}
  .header__link {padding-block:0}
  .header__cta {padding-top:0}
}
@media(min-width:1024px) {
  .header__inner {padding-block:0}
}
.footer {background-image:linear-gradient(90deg,var(--color-primary-900),var(--color-primary-800));border-radius:24px 24px 0 0}
.footer__inner {padding-block:var(--space-5);display:flex;flex-direction:column;gap:var(--space-4)}
.footer__card {background-color:var(--color-bg);border-radius:var(--radius-lg);padding:var(--space-5);display:flex;flex-wrap:wrap;align-items:flex-start;gap:var(--space-7) var(--space-8)}
.footer__contact {display:flex;flex-direction:column;gap:var(--space-6);flex:1 1 240px;min-width:min(100%,240px)}
.footer__divider {display:none}
.footer__logo {display:inline-flex}
.footer__logo img {height:48px;width:auto}
.footer__contact-groups {display:flex;flex-wrap:wrap;gap:var(--space-5) var(--space-7)}
.footer__group {flex:0 0 auto}
.footer__heading {font-family:var(--font-heading);font-size:var(--fs-body-s);line-height:var(--lh-heading-5xs);font-weight:var(--fw-medium);letter-spacing:var(--tracking-tight);color:var(--color-text);margin-bottom:var(--space-4)}
.footer__heading--accent {font-weight:var(--fw-semibold);color:var(--color-accent);margin-bottom:var(--space-3)}
.footer__address,.footer__hours {font-family:var(--font-body);font-size:var(--fs-body-m);line-height:var(--lh-body-m);letter-spacing:var(--tracking-tight);color:var(--color-text);font-style:normal}
.footer__row {display:flex;align-items:flex-start;gap:var(--space-3);margin-bottom:var(--space-3)}
.footer__row:last-child {margin-bottom:0}
.footer__icon {flex-shrink:0;display:inline-flex;color:var(--color-accent);margin-top:2px}
.footer__addr {display:flex;flex-direction:column}
.footer__addr-line {white-space:nowrap}
.footer__social {list-style:none;display:flex;gap:var(--space-4)}
.footer__social-link {display:inline-flex;transition:opacity .15s ease}
.footer__social-link:hover {opacity:.7}
.footer__menus {display:flex;flex-wrap:wrap;gap:var(--space-6) var(--space-7);flex:3 1 300px}
.footer__col {flex:0 0 auto;min-width:150px}
.footer__list {list-style:none;display:flex;flex-direction:column;gap:var(--space-2);font-family:var(--font-body);font-size:var(--fs-body-m);line-height:var(--lh-body-m);letter-spacing:var(--tracking-tight)}
.footer__link {color:var(--color-text);white-space:nowrap;transition:color .15s ease}
.footer__link:hover {color:var(--color-accent)}
.footer__bar {display:flex;flex-direction:column;gap:var(--space-4);padding-inline:var(--space-2);color:var(--color-neutral-100)}
.footer__copy {font-family:var(--font-body);font-size:var(--fs-body-xs);line-height:var(--lh-body-xs);letter-spacing:var(--tracking-tight)}
.footer__legal-list {list-style:none;display:flex;flex-wrap:wrap;gap:var(--space-3) var(--space-6)}
.footer__legal-link {font-family:var(--font-body);font-size:var(--fs-body-xs);line-height:var(--lh-body-xs);letter-spacing:var(--tracking-tight);color:var(--color-neutral-100);white-space:nowrap;transition:opacity .15s ease}
.footer__legal-link:hover {opacity:.8}
@media(min-width:900px) {
  .footer__inner {padding-block:var(--space-5);gap:var(--space-3)}
  .footer__card {padding:var(--space-6) var(--space-7)}
  .footer__contact {gap:var(--space-6)}
  .footer__contact-groups {flex-wrap:nowrap;gap:var(--space-7)}
  .footer__bar {flex-direction:row;align-items:center;justify-content:space-between;padding-inline:var(--space-6)}
  .footer__legal-list {gap:var(--space-6)}
}
@media(min-width:1200px) {
  .footer__card {flex-wrap:nowrap;justify-content:flex-start;align-items:stretch;gap:0}
  .footer__contact {flex:0 0 auto}
  .footer__divider {display:flex;flex:1 1 auto;align-self:stretch;justify-content:center;min-width:var(--space-8)}
  .footer__divider:before {content:"";width:1px;background-color:var(--color-bg-muted)}
  .footer__menus {flex:0 0 auto;flex-wrap:nowrap;gap:var(--space-8)}
  .footer__col {min-width:0}
}
.kontakt {padding-block:var(--space-8);background-color:var(--color-bg)}
.kontakt__inner {display:flex;flex-direction:column;gap:var(--space-7)}
.kontakt__eyebrow {font-family:var(--font-heading);font-size:var(--fs-heading-5xs);line-height:var(--lh-heading-5xs);font-weight:var(--fw-semibold);letter-spacing:var(--tracking-tight);color:var(--color-accent);margin-bottom:var(--space-2)}
.kontakt__title {color:var(--color-text);margin-bottom:var(--space-4)}
.kontakt__lead {font-size:var(--fs-body-m);line-height:var(--lh-body-m);letter-spacing:var(--tracking-tight);color:var(--color-text-muted);max-width:429px}
.kontakt__form {margin-top:var(--space-6);display:flex;flex-direction:column;gap:var(--space-5);background-color:var(--color-bg-subtle);border:1px solid var(--finder-border, #e6ebf3);border-radius:var(--radius-image);padding:var(--space-6)}
.kontakt__form-title {color:var(--color-text)}
.kontakt__row {display:flex;flex-direction:column;gap:var(--space-5)}
.kontakt__field {display:flex;flex-direction:column;gap:var(--space-3);min-width:0}
.kontakt__field label {font-family:var(--font-body);font-size:var(--fs-body-m);letter-spacing:var(--tracking-tight);color:#0009}
.kontakt__field input,.kontakt__field select,.kontakt__field textarea {width:100%;background:transparent;border:none;border-bottom:1px solid var(--color-text);padding:var(--space-1) 0;font-family:var(--font-body);font-size:var(--fs-body-m);color:var(--color-text);border-radius:0}
.kontakt__field textarea {resize:vertical;min-height:2.5em}
.kontakt__field select {appearance:none;background-image:url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'><path d='M1 1.5 6 6.5l5-5' fill='none' stroke='%23080808' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/></svg>");background-repeat:no-repeat;background-position:right 2px center;padding-right:20px}
.kontakt__field input:focus-visible,.kontakt__field select:focus-visible,.kontakt__field textarea:focus-visible {outline:2px solid var(--color-accent);outline-offset:2px}
.kontakt__field [aria-invalid=true] {border-bottom-color:#c0392b}
.kontakt__err {font-size:var(--fs-body-xs);line-height:var(--lh-body-xs);color:#c0392b}
.kontakt__err[hidden] {display:none}
.kontakt__consent {display:flex;align-items:flex-start;gap:var(--space-2)}
.kontakt__consent input {flex-shrink:0;margin-top:2px;width:16px;height:16px;accent-color:var(--color-accent)}
.kontakt__consent label {font-size:var(--fs-body-xs);line-height:var(--lh-body-xs);letter-spacing:var(--tracking-tight);color:var(--color-text-muted)}
.kontakt__consent a {color:var(--color-accent);text-decoration:underline}
.kontakt__submit {align-self:flex-start;display:inline-flex;align-items:center;gap:var(--space-2);background-color:var(--color-accent);color:var(--color-neutral-100);border:none;border-radius:var(--radius-full);padding:var(--space-2) var(--space-5);font-family:var(--font-body);font-size:var(--fs-body-m);letter-spacing:var(--tracking-tight);cursor:pointer;transition:opacity .15s ease}
.kontakt__submit:hover {opacity:.9}
.kontakt__status {font-size:var(--fs-body-s);color:var(--color-accent)}
.kontakt__status:empty {display:none}
.kontakt__media {position:relative}
.kontakt__img {width:100%;aspect-ratio:539 / 475;object-fit:cover;clip-path:url(#notch-bl)}
.kontakt__info {background-color:var(--color-neutral-100);border-radius:var(--radius-image);box-shadow:var(--shadow-card);padding:var(--space-5);display:flex;flex-wrap:wrap;gap:var(--space-5) var(--space-8);margin:calc(-1 * var(--space-8)) var(--space-4) 0;position:relative}
.kontakt__info-title {font-family:var(--font-heading);font-size:var(--fs-heading-5xs);line-height:var(--lh-heading-5xs);font-weight:var(--fw-semibold);letter-spacing:var(--tracking-tight);color:var(--color-accent);margin-bottom:var(--space-2)}
.kontakt__info-text,.kontakt__info-row {font-size:var(--fs-body-m);line-height:var(--lh-body-m);letter-spacing:var(--tracking-tight);color:var(--color-text)}
.kontakt__info-row {display:flex;align-items:flex-start;gap:var(--space-2);margin-top:var(--space-2)}
.kontakt__info-row a {color:var(--color-text)}
.kontakt__info-row a:hover {color:var(--color-accent)}
.kontakt__ico {flex-shrink:0;color:var(--color-accent);margin-top:2px}
@media(min-width:560px) {
  .kontakt__row {flex-direction:row}
  .kontakt__row .kontakt__field {flex:1 1 0}
}
@media(min-width:1024px) {
  .kontakt__inner {flex-direction:row;align-items:flex-start;gap:var(--space-9)}
  .kontakt__left {flex:1 1 620px;min-width:0}
  .kontakt__media {flex:1 1 540px;position:sticky;top:var(--space-6)}
  .kontakt__form {padding:var(--space-7)}
}
.bhero__inner {padding:var(--space-6) var(--space-4)}
.bhero__crumb-list {list-style:none;display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2);margin:0 0 var(--space-5);padding:0}
.bhero__crumb {font-family:var(--font-heading);font-size:var(--fs-body-s);line-height:var(--lh-heading-5xs);font-weight:var(--fw-semibold);letter-spacing:var(--tracking-tight);color:var(--color-text-muted);transition:color .15s ease}
a.bhero__crumb:hover {color:var(--color-accent)}
.bhero__crumb--current {color:var(--color-text)}
.bhero__crumb-sep {color:var(--color-text-muted);line-height:1}
.bhero__grid {display:flex;flex-direction:column;gap:var(--space-7)}
.bhero__left {display:flex;flex-direction:column}
.bhero__content {display:flex;flex-direction:column;gap:var(--space-6);max-width:552px}
.bhero__title {color:var(--color-text);max-width:536px}
.bhero__lead {color:var(--color-text);max-width:488px}
.bhero__download {display:inline-flex;align-items:center;gap:var(--space-3);background-color:var(--color-accent);color:var(--color-neutral-100);border-radius:var(--radius-full);padding:var(--space-3) var(--space-5);font-family:var(--font-body);font-size:var(--fs-body-m);letter-spacing:var(--tracking-tight);transition:opacity .15s ease}
.bhero__download:hover {opacity:.9}
.bhero__download:focus-visible {outline:2px solid var(--color-accent);outline-offset:3px}
.bhero__stats {display:flex;flex-wrap:wrap;gap:var(--space-6);max-width:464px}
.bhero__stat-value {font-family:var(--font-heading);font-weight:var(--fw-bold);font-size:26px;letter-spacing:var(--tracking-tight);color:var(--color-text);line-height:1.25}
.bhero__stat-suffix {font-size:18px}
.bhero__stat-label {font-size:var(--fs-body-m);line-height:var(--lh-body-m);letter-spacing:var(--tracking-tight);color:var(--color-text)}
.bhero__right {position:relative}
.bhero__media {clip-path:url(#notch-br);overflow:hidden;aspect-ratio:445 / 390}
.bhero__media img {width:100%;height:100%;object-fit:cover;display:block}
.bhero__media-small {box-sizing:border-box;width:min(322px,100%);height:252px;padding:4px;border-radius:10px;border:2px solid var(--color-neutral-100);background-color:#ffffffe6;backdrop-filter:blur(8.45px);-webkit-backdrop-filter:blur(8.45px);overflow:hidden;position:relative;margin-top:var(--space-5);margin-inline:var(--space-5)}
.bhero__media-small img {width:100%;height:100%;object-fit:cover;border-radius:12px;display:block}
@media(min-width:1024px) {
  .bhero__inner {padding:var(--space-7) var(--space-6)}
  .bhero__grid {flex-direction:row;align-items:flex-start;gap:var(--space-8)}
  .bhero__left {flex:1 1 0;min-width:0}
  .bhero__right {flex:0 0 445px;max-width:100%;overflow:visible}
  .bhero__media-small {position:absolute;left:-107px;top:200px;margin:0;max-width:none}
}
.pselekt {padding-block:var(--space-8);background-color:var(--color-bg-subtle);--pselekt-border: #e6ebf3}
.pselekt__frame {width:100%;max-width:1328px;margin-inline:auto;padding-inline:var(--space-5)}
.pselekt__head {display:flex;flex-direction:column;gap:var(--space-5);margin-bottom:var(--space-6)}
.pselekt__eyebrow {font-family:var(--font-heading);font-size:var(--fs-heading-5xs);line-height:var(--lh-heading-5xs);font-weight:var(--fw-semibold);letter-spacing:var(--tracking-tight);color:var(--color-accent);margin-bottom:var(--space-2)}
.pselekt__title {color:var(--color-text)}
.pselekt__segment {display:inline-flex;flex-wrap:wrap;align-self:start;gap:var(--space-1);padding:var(--space-1);background-color:var(--color-neutral-100);border:1px solid var(--pselekt-border);border-radius:var(--radius-full)}
.pselekt__seg {border:none;background:transparent;cursor:pointer;padding:var(--space-2) var(--space-4);border-radius:var(--radius-full);font-family:var(--font-body);font-size:var(--fs-body-l);color:var(--color-text);letter-spacing:var(--tracking-tight);transition:background-color .15s ease,color .15s ease;white-space:nowrap}
.pselekt__seg[aria-selected=true] {background-color:var(--color-accent);color:var(--color-neutral-100)}
.pselekt__seg:focus-visible {outline:2px solid var(--color-accent);outline-offset:2px}
.pselekt__panel[hidden] {display:none}
.pselekt__empty {background-color:var(--color-neutral-100);border:1px dashed var(--pselekt-border);border-radius:var(--radius-image);padding:var(--space-6);color:var(--color-text-muted);font-style:italic}
.pselekt__card {display:flex;flex-direction:column;gap:var(--space-5)}
.pselekt__cut-def {position:absolute;width:0;height:0}
/* WP: #pselekt-notch -> zentrale Kontur #card-notch-br. Der Astro-Pfad war
   byte-identisch mit BENKER_CARD_NOTCH_BR (beide aus Figma 232:9198) — die
   lokale Zweitkontur entfaellt damit (CLAUDE.md-TODO erledigt). */
.pselekt__media {position:relative;width:100%;aspect-ratio:600 / 475;clip-path:url(#card-notch-br);overflow:hidden}
.pselekt__media img {width:100%;height:100%;object-fit:cover;display:block}
/* WP: .pselekt__media-border* entfernt — der Rahmen entlang der Notch-Kante
   kommt jetzt aus dem zentralen Overlay (.notch-border, benker_notch_border).
   Gleiche Farbe: --notch-border-color faellt auf #e6ebf3 zurueck = --pselekt-border. */
.pselekt__info {background-color:var(--color-neutral-100);border:1px solid var(--pselekt-border);border-radius:var(--radius-image);padding:40px;display:flex;flex-direction:column;gap:var(--space-5)}
.pselekt__info-title {color:var(--color-text)}
.pselekt__info-body {font-size:var(--fs-body-m);line-height:var(--lh-body-m);letter-spacing:var(--tracking-tight);color:var(--color-text)}
.pselekt__stats {display:flex;gap:40px}
.pselekt__stat-value {font-family:var(--font-heading);font-weight:var(--fw-bold);font-size:26px;letter-spacing:var(--tracking-tight);color:var(--color-text)}
.pselekt__stat-label {font-size:var(--fs-body-m);color:var(--color-text)}
.pselekt__cta {align-self:flex-start;display:inline-flex;align-items:center;gap:var(--space-2);background-color:var(--color-accent);color:var(--color-neutral-100);border-radius:var(--radius-full);padding:var(--space-2) var(--space-5);font-family:var(--font-body);font-size:var(--fs-body-m);letter-spacing:var(--tracking-tight);transition:opacity .15s ease}
.pselekt__cta:hover {opacity:.9}
@media(min-width:1024px) {
  .pselekt__head {flex-direction:row;align-items:flex-end;justify-content:space-between}
  .pselekt__card {flex-direction:row;align-items:flex-start;gap:60px}
  .pselekt__media {flex:0 1 600px;max-width:600px;min-width:0}
  .pselekt__info {flex:0 1 620px;max-width:620px;min-width:0}
}
.warum {background-color:var(--color-bg)}
.warum__intro {display:flex;flex-direction:column;gap:var(--space-2);margin-bottom:var(--space-6);max-width:848px}
.warum__eyebrow {font-family:var(--font-heading);font-size:var(--fs-heading-5xs);line-height:var(--lh-heading-5xs);font-weight:var(--fw-semibold);letter-spacing:var(--tracking-tight);color:var(--color-accent)}
.warum__title {color:var(--color-text)}
.warum__lead {font-size:var(--fs-body-m);line-height:var(--lh-body-m);letter-spacing:var(--tracking-tight);color:var(--color-text);margin-top:var(--space-2);max-width:680px}
.warum__list {display:flex;flex-direction:column;max-width:848px}
.warum__item {border-bottom:1px solid var(--color-bg-muted)}
.warum__q-wrap {margin:0}
.warum__q {width:100%;display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);background:transparent;border:none;cursor:pointer;text-align:left;padding:var(--space-5) 0}
.warum__q-text {font-family:var(--font-heading);font-size:var(--fs-heading-2xs);line-height:var(--lh-heading-2xs);font-weight:var(--fw-medium);letter-spacing:var(--tracking-tight);color:var(--color-accent)}
.warum__icon {flex-shrink:0;display:inline-flex;color:var(--color-accent);transition:transform .2s ease}
.warum__q[aria-expanded=true] .warum__icon {transform:rotate(45deg)}
.warum__a {padding:0 0 var(--space-5)}
.warum__a[hidden] {display:none}
.warum__a-text {font-size:var(--fs-body-m);line-height:var(--lh-body-m);letter-spacing:var(--tracking-tight);color:var(--color-text);max-width:511px}
.warum__a-text--todo {color:var(--color-text-muted);font-style:italic}
.bcontent {background-color:var(--color-bg)}
.bcontent__grid {display:flex;flex-direction:column;gap:var(--space-5)}
.bcontent__media {width:100%;aspect-ratio:1 / 1;border-radius:var(--radius-image);overflow:hidden}
.bcontent__media img {width:100%;height:100%;object-fit:cover;display:block}
.bcontent__text {display:flex;flex-direction:column;gap:var(--space-5)}
.bcontent__title {color:var(--color-text);white-space:pre-line}
.bcontent__body {display:flex;flex-direction:column;gap:var(--space-4);font-size:var(--fs-body-m);line-height:var(--lh-body-m);letter-spacing:var(--tracking-tight);color:var(--color-text)}
.bcontent__body a {color:var(--color-accent);text-decoration:underline}
@media(min-width:1024px) {
  .bcontent__grid {flex-direction:row;align-items:center;gap:var(--space-8)}
  .bcontent__grid--right {flex-direction:row-reverse}
  .bcontent__media {flex:0 0 400px;width:400px}
  .bcontent__text {flex:1 1 auto;min-width:0;max-width:520px}
}
.usecases {background-color:var(--color-bg)}
.usecases__head {display:flex;flex-direction:column;gap:var(--space-4);margin-bottom:var(--space-6)}
.usecases__eyebrow {font-family:var(--font-heading);font-size:var(--fs-heading-5xs);line-height:var(--lh-heading-5xs);font-weight:var(--fw-semibold);letter-spacing:var(--tracking-tight);color:var(--color-accent);margin-bottom:var(--space-2)}
.usecases__title {color:var(--color-text)}
.usecases__all {align-self:flex-start;display:inline-flex;align-items:center;gap:var(--space-2);background-color:var(--color-neutral-100);color:var(--color-accent);border:1px solid #e6ebf3;border-radius:var(--radius-full);padding:var(--space-2) var(--space-5);font-family:var(--font-body);font-size:var(--fs-body-m);letter-spacing:var(--tracking-tight);transition:opacity .15s ease}
.usecases__all:hover {opacity:.85}
.usecases__grid {list-style:none;display:grid;grid-template-columns:1fr;gap:var(--space-6);margin:0;padding:0}
.usecases__card {display:flex;flex-direction:column;gap:var(--space-3)}
.usecases__img {width:100%;aspect-ratio:411 / 343;object-fit:cover;border-radius:var(--radius-image)}
.usecases__date {font-family:var(--font-heading);font-size:var(--fs-body-s);line-height:var(--lh-body-s);color:var(--color-text)}
.usecases__card-title {color:var(--color-text)}
.usecases__card-text {font-size:var(--fs-body-m);line-height:var(--lh-body-m);letter-spacing:var(--tracking-tight);color:var(--color-text)}
@media(min-width:768px) {
  .usecases__grid {grid-template-columns:repeat(2,1fr)}
}
@media(min-width:1024px) {
  .usecases__head {flex-direction:row;align-items:flex-end;justify-content:space-between}
}
.bfaq {background-color:var(--color-bg)}
.bfaq__inner {display:flex;flex-direction:column;gap:var(--space-6)}
.bfaq__eyebrow {font-family:var(--font-heading);font-size:var(--fs-heading-5xs);line-height:var(--lh-heading-5xs);font-weight:var(--fw-semibold);letter-spacing:var(--tracking-tight);color:var(--color-accent);margin-bottom:var(--space-2)}
.bfaq__title {color:var(--color-text);margin-bottom:var(--space-4)}
.bfaq__lead {font-size:var(--fs-body-m);line-height:var(--lh-body-m);letter-spacing:var(--tracking-tight);color:var(--color-text-muted)}
.bfaq__list {display:flex;flex-direction:column}
.bfaq__item {border-bottom:1px solid var(--color-bg-muted)}
.bfaq__q-wrap {margin:0}
.bfaq__q {width:100%;display:flex;align-items:flex-start;gap:var(--space-3);background:transparent;border:none;cursor:pointer;text-align:left;padding:var(--space-5) 0}
.bfaq__nr {flex-shrink:0;font-family:var(--font-heading);font-size:var(--fs-heading-5xs);line-height:1.6;font-weight:var(--fw-semibold);letter-spacing:var(--tracking-tight);color:var(--color-accent)}
.bfaq__q-text {flex:1;font-family:var(--font-heading);font-size:var(--fs-heading-2xs);line-height:var(--lh-heading-2xs);font-weight:var(--fw-medium);letter-spacing:var(--tracking-tight);color:var(--color-text)}
.bfaq__chevron {flex-shrink:0;width:36px;height:36px;display:inline-flex;align-items:center;justify-content:center;border-radius:var(--radius-full);border:1px solid var(--color-bg-muted);color:var(--color-text);transition:transform .2s ease,background-color .15s ease,color .15s ease}
.bfaq__q[aria-expanded=true] .bfaq__chevron {transform:rotate(180deg);background-color:var(--color-accent);border-color:var(--color-accent);color:var(--color-neutral-100)}
.bfaq__a {padding:0 0 var(--space-5) calc(26px + var(--space-3))}
.bfaq__a[hidden] {display:none}
.bfaq__a-text {font-size:var(--fs-body-m);line-height:var(--lh-body-m);letter-spacing:var(--tracking-tight);color:var(--color-text);max-width:640px}
.bfaq__infocard {position:relative;overflow:hidden;border-radius:var(--radius-sm);padding:var(--space-6) var(--space-5);background-size:cover;background-position:center;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:var(--space-4);min-height:120px}
.bfaq__infocard-scrim {position:absolute;inset:0;background-image:linear-gradient(to bottom,#00000026,#000c)}
.bfaq__infocard-title {position:relative;z-index:1;font-family:var(--font-heading);font-size:var(--fs-heading-xs);line-height:var(--lh-heading-xs);font-weight:var(--fw-semibold);letter-spacing:var(--tracking-tight);color:var(--color-neutral-100);max-width:267px}
.bfaq__infocard-btn {position:relative;z-index:1;display:inline-flex;align-items:center;gap:var(--space-2);background-color:var(--color-accent);color:var(--color-neutral-100);border-radius:var(--radius-full);padding:var(--space-2) var(--space-5);font-family:var(--font-body);font-size:var(--fs-body-m);letter-spacing:var(--tracking-tight);transition:opacity .15s ease}
.bfaq__infocard-btn:hover {opacity:.9}
.bfaq__infocard-btn:focus-visible {outline:2px solid var(--color-neutral-100);outline-offset:2px}
.nextb {background-color:var(--color-bg)}
.nextb__head {margin-bottom:var(--space-6)}
.nextb__eyebrow {font-family:var(--font-heading);font-size:var(--fs-heading-5xs);line-height:var(--lh-heading-5xs);font-weight:var(--fw-semibold);letter-spacing:var(--tracking-tight);color:var(--color-accent);margin-bottom:var(--space-2)}
.nextb__title {color:var(--color-text);max-width:20ch}
.nextb__card {display:flex;flex-direction:column;gap:var(--space-5)}
.nextb__img {width:100%;aspect-ratio:473 / 343;object-fit:cover;border-radius:var(--radius-sm)}
.nextb__body {display:flex;flex-direction:column;gap:var(--space-5)}
.nextb__text {display:flex;flex-direction:column;gap:var(--space-3)}
.nextb__card-title {color:var(--color-text)}
.nextb__card-text {font-size:var(--fs-body-m);line-height:var(--lh-body-m);letter-spacing:var(--tracking-tight);color:var(--color-text)}
.nextb__cta {align-self:flex-start;display:inline-flex;align-items:center;gap:var(--space-2);background-color:var(--color-accent);color:var(--color-neutral-100);border-radius:var(--radius-full);padding:var(--space-2) var(--space-5);font-family:var(--font-body);font-size:var(--fs-body-m);letter-spacing:var(--tracking-tight);transition:opacity .15s ease}
.nextb__cta:hover {opacity:.9}
@media(min-width:900px) {
  .nextb__card {flex-direction:row;align-items:stretch;gap:var(--space-7)}
  .nextb__img {flex:0 0 300px;max-width:300px}
  .nextb__body {flex:1 1 auto;max-width:460px;justify-content:space-between;padding-block:var(--space-5)}
}
.branche-layout {padding-block:var(--space-8);display:flex;flex-direction:column;gap:var(--space-8)}
.branche-layout__main {display:flex;flex-direction:column;gap:var(--space-8);min-width:0}
@media(min-width:1024px) {
  .branche-layout {display:grid;grid-template-columns:minmax(0,1fr) clamp(320px,27%,372px);gap:var(--space-8);align-items:start}
}
.esdhero.homehero-bottom {border-radius:0}
.esdhero__inner {padding:var(--space-6) var(--space-4)}
.esdhero__crumb-list {list-style:none;display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2);margin:0 0 var(--space-5);padding:0}
.esdhero__crumb {font-family:var(--font-heading);font-size:var(--fs-body-s);line-height:var(--lh-heading-5xs);font-weight:var(--fw-semibold);letter-spacing:var(--tracking-tight);color:var(--color-text-muted);transition:color .15s ease}
a.esdhero__crumb:hover {color:var(--color-accent)}
.esdhero__crumb--current {color:var(--color-text)}
.esdhero__crumb-sep {color:var(--color-text-muted);line-height:1}
.esdhero__grid {display:flex;flex-direction:column;gap:var(--space-7)}
.esdhero__left {display:flex;flex-direction:column;gap:var(--space-6)}
.esdhero__title {color:var(--color-text)}
.esdhero__lead {color:var(--color-text);max-width:48ch}
.esdhero__info {display:flex;align-items:flex-start;gap:var(--space-3);background-color:var(--color-bg-subtle);border:1px solid var(--finder-border, #e6ebf3);border-radius:var(--radius-image);padding:var(--space-5)}
.esdhero__info-icon {flex-shrink:0;width:16px;height:16px;margin-top:3px}
.esdhero__info-text {font-size:var(--fs-body-m);line-height:var(--lh-body-m);letter-spacing:var(--tracking-tight);color:var(--color-text)}
.esdhero__actions {margin-top:var(--space-1)}
.esdhero__download {display:inline-flex;align-items:center;gap:var(--space-3);background-color:var(--color-accent);color:var(--color-neutral-100);border-radius:var(--radius-full);padding:var(--space-3) var(--space-5);font-family:var(--font-body);font-size:var(--fs-body-m);letter-spacing:var(--tracking-tight);transition:opacity .15s ease}
.esdhero__download:hover {opacity:.9}
.esdhero__download:focus-visible {outline:2px solid var(--color-accent);outline-offset:3px}
.esdhero__media {clip-path:url(#notch-bl);aspect-ratio:598 / 524}
.esdhero__media img {width:100%;height:100%;object-fit:cover;display:block}
@media(min-width:1024px) {
  .esdhero__inner {padding:var(--space-7) var(--space-6)}
  .esdhero__grid {flex-direction:row;align-items:center;gap:var(--space-8)}
  .esdhero__left {flex:1 1 0;min-width:0}
  .esdhero__right {flex:0 0 clamp(440px,44%,598px)}
  .esdhero__badge-text {font-size:var(--fs-body-l)}
}
.esdanw {position:relative;overflow:hidden;display:flex;align-items:flex-end;padding-block:var(--space-8);background-color:var(--color-primary-900)}
.esdanw__bg {position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0}
.esdanw__scrim {position:absolute;inset:0;z-index:0;background-image:linear-gradient(to bottom,#00275659,#002756bf)}
.esdanw__inner {position:relative;z-index:1;width:100%;display:flex;flex-direction:column;gap:var(--space-6)}
.esdanw__title {color:var(--color-neutral-100);max-width:520px}
.esdanw__grid {list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr;gap:var(--space-4)}
.esdanw__card {display:flex;flex-direction:column;gap:var(--space-2);background-color:#ffffffe6;-webkit-backdrop-filter:blur(8.45px);backdrop-filter:blur(8.45px);border:2px solid var(--color-neutral-100);border-radius:10px;padding:var(--space-5)}
.esdanw__card-title {color:var(--color-accent)}
.esdanw__card-sub {font-size:var(--fs-body-m);line-height:var(--lh-body-m);letter-spacing:var(--tracking-tight);color:var(--color-text)}
@media(min-width:640px) {
  .esdanw__grid {grid-template-columns:1fr 1fr}
}
@media(min-width:1024px) {
  .esdanw {min-height:656px;padding-block:var(--space-9)}
  .esdanw__grid {grid-template-columns:repeat(3,1fr);gap:var(--space-5)}
}
.esdinfo {background-color:var(--color-bg)}
.esdinfo__data {background-color:var(--color-bg-subtle);border:1px solid var(--finder-border, #e6ebf3);border-radius:var(--radius-image);padding:var(--space-6);display:flex;flex-direction:column;gap:var(--space-6)}
.esdinfo__head {display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:var(--space-4)}
.esdinfo__head-text {flex:1 1 260px;min-width:0}
.esdinfo__eyebrow {font-family:var(--font-heading);font-size:var(--fs-heading-5xs);line-height:var(--lh-heading-5xs);font-weight:var(--fw-semibold);letter-spacing:var(--tracking-tight);color:var(--color-accent);margin-bottom:var(--space-2)}
.esdinfo__title {color:var(--color-text)}
.esdinfo__download {display:inline-flex;align-items:center;gap:var(--space-2);flex-shrink:0;color:var(--color-accent);font-family:var(--font-body);font-size:var(--fs-body-m);letter-spacing:var(--tracking-tight);transition:opacity .15s ease}
.esdinfo__download:hover {opacity:.8}
.esdinfo__download:focus-visible {outline:2px solid var(--color-accent);outline-offset:3px;border-radius:var(--radius-sm)}
.esdinfo__table {margin:0;display:flex;flex-direction:column}
.esdinfo__row {display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-2) var(--space-4);padding-block:var(--space-3)}
.esdinfo__row+.esdinfo__row {border-top:1px solid var(--color-bg-muted)}
.esdinfo__row-label {font-family:var(--font-heading);font-size:var(--fs-heading-3xs);line-height:var(--lh-heading-3xs);font-weight:var(--fw-semibold);letter-spacing:var(--tracking-tight);color:var(--color-text)}
.esdinfo__row-value {margin:0;font-size:var(--fs-body-m);line-height:var(--lh-body-m);letter-spacing:var(--tracking-tight);color:var(--color-text);text-align:right}
@media(min-width:1024px) {
  .esdinfo__data {padding:var(--space-7);gap:var(--space-7)}
}
.esdcontent {background-color:var(--color-bg)}
.esdcontent__grid {display:flex;flex-direction:column;gap:var(--space-5)}
.esdcontent__media {width:100%;aspect-ratio:1 / 1;border-radius:var(--radius-image);overflow:hidden}
.esdcontent__media img {width:100%;height:100%;object-fit:cover;display:block}
.esdcontent__text {display:flex;flex-direction:column;gap:var(--space-5)}
.esdcontent__title {color:var(--color-text)}
.esdcontent__bullets {list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-3)}
.esdcontent__bullets li {position:relative;padding-left:var(--space-5);font-size:var(--fs-body-m);line-height:var(--lh-body-m);letter-spacing:var(--tracking-tight);color:var(--color-text)}
.esdcontent__bullets li:before {content:"";position:absolute;left:0;top:.5em;width:9px;height:9px;border-radius:var(--radius-full);background-color:var(--color-accent)}
@media(min-width:1024px) {
  .esdcontent__grid {flex-direction:row;align-items:center;gap:var(--space-8)}
  .esdcontent__grid--right {flex-direction:row-reverse}
  .esdcontent__media {flex:0 0 400px;width:400px}
  .esdcontent__text {flex:1 1 auto;min-width:0;max-width:520px}
}
.esdfaq {background-color:var(--color-bg)}
.esdfaq__inner {display:flex;flex-direction:column;gap:var(--space-6)}
.esdfaq__eyebrow {font-family:var(--font-heading);font-size:var(--fs-heading-5xs);line-height:var(--lh-heading-5xs);font-weight:var(--fw-semibold);letter-spacing:var(--tracking-tight);color:var(--color-accent);margin-bottom:var(--space-2)}
.esdfaq__title {color:var(--color-text);margin-bottom:var(--space-4)}
.esdfaq__lead {font-size:var(--fs-body-m);line-height:var(--lh-body-m);letter-spacing:var(--tracking-tight);color:var(--color-text-muted)}
.esdfaq__list {display:flex;flex-direction:column}
.esdfaq__item {border-bottom:1px solid var(--color-bg-muted)}
.esdfaq__q-wrap {margin:0}
.esdfaq__q {width:100%;display:flex;align-items:flex-start;gap:var(--space-3);background:transparent;border:none;cursor:pointer;text-align:left;padding:var(--space-5) 0}
.esdfaq__nr {flex-shrink:0;font-family:var(--font-heading);font-size:var(--fs-heading-5xs);line-height:1.6;font-weight:var(--fw-semibold);letter-spacing:var(--tracking-tight);color:var(--color-accent)}
.esdfaq__q-text {flex:1;font-family:var(--font-heading);font-size:var(--fs-heading-2xs);line-height:var(--lh-heading-2xs);font-weight:var(--fw-medium);letter-spacing:var(--tracking-tight);color:var(--color-text)}
.esdfaq__chevron {flex-shrink:0;width:36px;height:36px;display:inline-flex;align-items:center;justify-content:center;border-radius:var(--radius-full);border:1px solid var(--color-bg-muted);color:var(--color-text);transition:transform .2s ease,background-color .15s ease,color .15s ease}
.esdfaq__q[aria-expanded=true] .esdfaq__chevron {transform:rotate(180deg);background-color:var(--color-accent);border-color:var(--color-accent);color:var(--color-neutral-100)}
.esdfaq__a {padding:0 0 var(--space-5) calc(26px + var(--space-3))}
.esdfaq__a[hidden] {display:none}
.esdfaq__a-text {font-size:var(--fs-body-m);line-height:var(--lh-body-m);letter-spacing:var(--tracking-tight);color:var(--color-text);max-width:640px}
.esdfaq__infocard {position:relative;overflow:hidden;border-radius:var(--radius-sm);padding:var(--space-6) var(--space-5);background-size:cover;background-position:center;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:var(--space-4);min-height:120px}
.esdfaq__infocard-scrim {position:absolute;inset:0;background-image:linear-gradient(to bottom,#00000026,#000c)}
.esdfaq__infocard-title {position:relative;z-index:1;font-family:var(--font-heading);font-size:var(--fs-heading-xs);line-height:var(--lh-heading-xs);font-weight:var(--fw-semibold);letter-spacing:var(--tracking-tight);color:var(--color-neutral-100);max-width:267px}
.esdfaq__infocard-btn {position:relative;z-index:1;display:inline-flex;align-items:center;gap:var(--space-2);background-color:var(--color-accent);color:var(--color-neutral-100);border-radius:var(--radius-full);padding:var(--space-2) var(--space-5);font-family:var(--font-body);font-size:var(--fs-body-m);letter-spacing:var(--tracking-tight);transition:opacity .15s ease}
.esdfaq__infocard-btn:hover {opacity:.9}
.esdfaq__infocard-btn:focus-visible {outline:2px solid var(--color-neutral-100);outline-offset:2px}
.esdslider {background-color:var(--color-bg)}
.esdslider__viewport {overflow:hidden;touch-action:pan-y;cursor:grab}
.esdslider__viewport.is-dragging {cursor:grabbing}
.esdslider__track {list-style:none;display:flex;gap:var(--space-5);margin:0;padding:0;transition:transform .4s ease}
.esdslider__viewport.is-dragging .esdslider__track {transition:none}
.esdslider__viewport.is-dragging,.esdslider__viewport.is-dragging  {user-select:none}
.esdslider__card {flex:0 0 auto;width:min(320px,82%);display:flex;flex-direction:column;gap:var(--space-3)}
.esdslider__img {width:100%;aspect-ratio:320 / 280;object-fit:cover;border-radius:var(--radius-image);background-color:var(--color-bg-muted);-webkit-user-drag:none;user-select:none}
.esdslider__caption {font-size:var(--fs-body-xs);line-height:var(--lh-body-xs);letter-spacing:var(--tracking-tight);color:var(--color-text)}
.esdslider__nav {display:flex;gap:var(--space-2);margin-top:var(--space-5)}
.esdslider__arrow {width:40px;height:40px;display:inline-flex;align-items:center;justify-content:center;border-radius:var(--radius-full);border:1px solid var(--color-text);background:transparent;color:var(--color-text);cursor:pointer;transition:background-color .15s ease,color .15s ease,opacity .15s ease}
.esdslider__arrow:hover:not(:disabled) {background-color:var(--color-accent);border-color:var(--color-accent);color:var(--color-neutral-100)}
.esdslider__arrow:disabled {opacity:.35;cursor:default}
.esdslider__arrow:focus-visible {outline:2px solid var(--color-accent);outline-offset:2px}
.esd-layout {padding-block:var(--space-8);display:flex;flex-direction:column;gap:var(--space-8)}
.esd-layout__main {display:flex;flex-direction:column;gap:var(--space-8);min-width:0}
/* Als Block schiebt ACF einen eigenen Wrapper zwischen .esd-layout__main und die
   Inhaltsbloecke. Dessen gap greift dann ins Leere (nur noch EIN Kind), und alles
   klebte aneinander. Der Wrapper erbt deshalb die Spalte. */
.esd-layout__main > .acf-innerblocks-container {display:flex;flex-direction:column;gap:var(--space-8);min-width:0}
/* Die Spalte gibt die Breite bereits vor. Ein content-band darin wuerde noch einmal
   24px Seitenabstand aufschlagen, und der Inhalt fluchtete nicht mehr mit der
   Sidebar. Bloecke, die allein auf der Seite ihr content-band brauchen, geben es
   hier also ab, statt dass jeder Block seine Lage kennen muss. */
.esd-layout__main .content-band {max-width:none;padding-inline:0;margin-inline:0}

/* ---------------------------------------------------------------------------
   .block-band — Abstand nach oben/unten fuer eigenstaendige Bloecke.

   Abschnitte, die fuer die Inhaltsspalte gebaut wurden (.esdfaq, .bcontent,
   .pselekt, .usecases, .nextb, .warum, .esdslider, .esdtech, .esdcontent),
   bringen KEIN padding-block mit: dort liefert .esd-layout__main den Abstand per
   gap. Abschnitte, die immer allein stehen (.uinfo, .kontakt, .feat …), haben
   ihr padding-block dagegen selbst.

   Steht so ein Spalten-Abschnitt als Block allein auf einer Seite, fehlt der
   Abstand — er klebte am Hero darueber. Deshalb tragen genau diese Bloecke
   zusaetzlich .block-band. In der Spalte wird es wieder abgeraeumt, sonst kaeme
   der Abstand doppelt (gap + padding).
   --------------------------------------------------------------------------- */
.block-band {padding-block:var(--space-8)}
.esd-layout__main .block-band {padding-block:0}
@media(min-width:1024px) {
  .esd-layout {display:grid;grid-template-columns:minmax(0,1fr) clamp(320px,27%,372px);gap:var(--space-8);align-items:start}
}
.hero__inner {padding-inline:0}
.hero__media {position:relative;border-radius:0 0 var(--radius-lg) var(--radius-lg);overflow:hidden;min-height:460px;display:flex;align-items:flex-start}
.hero__image {position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}
.hero__scrim {position:absolute;inset:0;background-image:linear-gradient(90deg,#000000b3,#0000)}
.hero__content {position:relative;z-index:1;display:flex;flex-direction:column;gap:var(--space-5);max-width:536px;padding:var(--hero-text-inset, var(--space-5))}
.hero__headline {color:var(--color-neutral-100)}
.hero__subline {color:var(--color-neutral-100);text-shadow:0 1px 3px rgba(0,0,0,.55)}
.hero__actions {margin-top:var(--space-2)}
@media(min-width:1024px) {
  .hero {--hero-text-inset: 60px}
  .hero__media {min-height:0;aspect-ratio:1280 / 690;border-radius:var(--radius-image)}
}
.finder {position:relative;z-index:2;background-color:transparent;margin-top:calc(-1 * var(--finder-overlap));padding-bottom:var(--space-9);--finder-overlap: var(--space-6);--finder-border: #e6ebf3;--finder-muted: #999}
.finder__inner {width:calc(100% - 48px);max-width:1240px;margin-inline:auto}
.finder__card {position:relative;background-color:var(--color-neutral-100);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);padding:var(--space-6)}
/* WP-Migration-Fix: Hier stand ".finder__card>" — ein Kind-Kombinator ohne Ziel
   und damit ungueltiges CSS. Ursache: Astro kompiliert ".finder__card > *" zu
   ".finder__card>[data-astro-cid-xxx]"; das Extraktionsskript hat das Attribut
   entfernt und dabei den Selektor zerstoert. Ohne diese Regel liegen Eyebrow und
   Headline ab 1328px hinter dem :before (weisser Notch-Hintergrund, z-index 0). */
.finder__card > * {position:relative;z-index:1}
.finder__card:before {content:"";position:absolute;inset:0;z-index:0;display:none}
.finder__eyebrow {font-family:var(--font-heading);font-size:var(--fs-heading-5xs);line-height:var(--lh-heading-5xs);font-weight:var(--fw-semibold);letter-spacing:var(--tracking-tight);color:var(--color-accent);margin-bottom:var(--space-2)}
.finder__title {font-family:var(--font-heading);font-size:var(--fs-heading-2xs);line-height:var(--lh-heading-2xs);font-weight:var(--fw-medium);letter-spacing:var(--tracking-tight);color:var(--color-text);max-width:380px;margin-bottom:var(--space-5)}
.finder__bar {position:relative;display:flex;flex-direction:column;gap:var(--space-4);align-items:stretch}
.finder__segment {display:inline-flex;align-self:start;gap:var(--space-1);padding:var(--space-1);background-color:var(--color-neutral-100);border:1px solid var(--finder-border);border-radius:var(--radius-full)}
.finder__seg {border:none;background:transparent;cursor:pointer;padding:var(--space-2) var(--space-4);border-radius:var(--radius-full);font-family:var(--font-body);font-size:var(--fs-body-m);color:var(--color-text);letter-spacing:var(--tracking-tight);transition:background-color .15s ease,color .15s ease;white-space:nowrap}
.finder__seg[aria-checked=true] {background-color:var(--color-accent);color:var(--color-neutral-100)}
/* Weiter-Button stillgelegt, solange nichts gewaehlt ist (finder.js gibt ihn frei).
   Kein pointer-events:none — der Klick soll die Liste oeffnen, nicht ins Leere gehen. */
.button[aria-disabled=true] {opacity:.5}
.finder__select {flex:1 1 auto;min-width:0;position:relative}
.finder__trigger {width:100%;display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-2) var(--space-5);min-height:44px;background-color:var(--color-neutral-100);border:1px solid var(--finder-border);border-radius:var(--radius-full);cursor:pointer;font-family:var(--font-body);font-size:var(--fs-body-m);color:var(--color-text);letter-spacing:var(--tracking-tight);text-align:left}
.finder__value {overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.finder__value.is-placeholder {color:var(--color-text-muted)}
.finder__chevron {flex-shrink:0;color:var(--color-text);transition:transform .15s ease}
.finder__trigger[aria-expanded=true] .finder__chevron {transform:rotate(180deg)}
.finder__popup {position:absolute;top:calc(100% + var(--space-2));left:0;right:0;z-index:20;background-color:var(--color-neutral-100);border:1px solid var(--finder-border);border-radius:var(--radius-image);box-shadow:var(--shadow-card);padding:var(--space-5);max-height:min(70vh,560px);overflow-y:auto}
.finder__popup[hidden] {display:none}
.finder__branchen {list-style:none;display:grid;grid-template-columns:1fr;gap:var(--space-1)}
.finder__option {width:100%;text-align:left;background:transparent;border:none;border-radius:var(--radius-sm);cursor:pointer;padding:var(--space-3);font-family:var(--font-body);font-size:var(--fs-body-m);line-height:var(--lh-body-m);letter-spacing:var(--tracking-tight);color:var(--color-text);transition:background-color .12s ease}
.finder__branchen li+li .finder__option {border-top:1px solid var(--color-bg-muted);border-top-left-radius:0;border-top-right-radius:0}
.finder__option:hover {background-color:var(--color-bg-subtle)}
@media(min-width:900px) {
  .finder__card {padding:var(--space-6)}
  .finder__bar {flex-direction:row;align-items:center;gap:var(--space-6)}
}
@media(min-width:768px) {
  .finder {--finder-overlap: 180px}
  .finder__inner {width:calc(100% - 64px)}
}
@media(min-width:1024px) {
  .finder {--finder-overlap: 299px}
  .finder__inner {width:calc(100% - 128px);max-width:1312px}
}
@media(min-width:1328px) {
  .finder__card {background-color:transparent;box-shadow:none;border-radius:0}
  .finder__card:before {display:block;background-color:var(--color-neutral-100);-webkit-mask-image:url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='30 18 1240 203' preserveAspectRatio='none'><path d='M507.11 18H38C33.5817 18 30 21.5817 30 26V213C30 217.418 33.5817 221 38 221H1262C1266.42 221 1270 217.418 1270 213V85.1871C1270 80.7688 1266.42 77.1871 1262 77.1871H609.343C607.882 77.1871 606.45 76.7871 605.2 76.0307L511.253 19.1564C510.003 18.3999 508.571 18 507.11 18Z' fill='%23000'/></svg>");mask-image:url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='30 18 1240 203' preserveAspectRatio='none'><path d='M507.11 18H38C33.5817 18 30 21.5817 30 26V213C30 217.418 33.5817 221 38 221H1262C1266.42 221 1270 217.418 1270 213V85.1871C1270 80.7688 1266.42 77.1871 1262 77.1871H609.343C607.882 77.1871 606.45 76.7871 605.2 76.0307L511.253 19.1564C510.003 18.3999 508.571 18 507.11 18Z' fill='%23000'/></svg>");-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;filter:drop-shadow(0 12px 30px rgba(0,0,0,.07))}
}
.ueberuns {padding-block:var(--space-7)}
.ueberuns__intro {display:flex;flex-direction:column;gap:var(--space-5);max-width:960px;margin-inline:auto}
.ueberuns__eyebrow {font-family:var(--font-heading);font-size:var(--fs-heading-5xs);line-height:var(--lh-heading-5xs);font-weight:var(--fw-semibold);letter-spacing:var(--tracking-tight);color:var(--color-accent);margin-bottom:var(--space-2)}
.ueberuns__title,.ueberuns__lead {color:var(--color-text)}
@media(min-width:1024px) {
  .ueberuns {padding-block:var(--space-9)}
  .ueberuns__intro {flex-direction:row;align-items:flex-end;justify-content:space-between;gap:var(--space-7)}
  .ueberuns__intro-title {flex:0 1 520px}
  .ueberuns__lead {flex:0 1 360px}
}
.ueberuns__stage-wrap {margin-top:var(--space-7)}
@media(min-width:1024px) {
  .ueberuns__stage-wrap {margin-top:var(--space-9)}
}
.ueberuns__stage {position:relative}
.ueberuns__image {width:100%;height:auto;border-radius:var(--radius-image)}
.ueberuns__cards {list-style:none;display:grid;grid-template-columns:1fr;gap:var(--space-4);margin:0;margin-top:var(--space-4);padding:0}
.ueberuns__card {display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-6);background-color:var(--color-surface-glass);border:2px solid var(--color-neutral-100);border-radius:var(--radius-card);box-shadow:var(--shadow-card);-webkit-backdrop-filter:blur(var(--blur-glass));backdrop-filter:blur(var(--blur-glass))}
.ueberuns__icon {width:48px;height:48px}
.ueberuns__card-title {color:var(--color-accent)}
.ueberuns__card-text {color:var(--color-text)}
.ueberuns__video {margin-top:var(--space-5);display:block}
@media(min-width:640px)and (max-width:1023.98px) {
  .ueberuns__cards {grid-template-columns:1fr 1fr}
}
@media(min-width:1024px) {
  .ueberuns__stage {aspect-ratio:1392 / 640}
  .ueberuns__image {position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
  .ueberuns__cards {position:absolute;inset:0;display:block;margin:0}
  .ueberuns__card {position:absolute;margin:0;height:267px;justify-content:center}
  .ueberuns__card:nth-child(1) {left:4.31%;top:9.38%;width:28.74%}
  .ueberuns__card:nth-child(2) {left:34.48%;top:9.38%;width:25.86%}
  .ueberuns__card:nth-child(3) {left:12.93%;top:54.22%;width:30.82%}
  .ueberuns__video {position:absolute;right:0;top:87.5%;width:24.28%;margin-top:0;display:block}
  .ueberuns__stage-wrap {padding-bottom:120px}
}
.branchen {padding-block:var(--space-8);background-color:var(--color-bg)}
.branchen__eyebrow {font-family:var(--font-heading);font-size:var(--fs-heading-5xs);line-height:var(--lh-heading-5xs);font-weight:var(--fw-semibold);letter-spacing:var(--tracking-tight);color:var(--color-accent);margin-bottom:var(--space-2)}
.branchen__title {color:var(--color-text);margin-bottom:var(--space-6)}
.branchen__grid {list-style:none;display:grid;grid-template-columns:1fr;gap:var(--space-6) var(--space-5);margin:0;padding:0}
.branchen__card {display:flex;flex-direction:column;gap:var(--space-3)}
.branchen__card-link {color:inherit;text-decoration:none;border-radius:var(--radius-image);transition:opacity .15s ease}
.branchen__card-link:hover {opacity:.92}
.branchen__card-link:hover .branchen__card-title {color:var(--color-accent)}
.branchen__card-link:focus-visible {outline:2px solid var(--color-accent);outline-offset:4px}
.branchen__img {width:100%;aspect-ratio:411 / 220;object-fit:cover;clip-path:url(#notch-br)}
.branchen__card-title {color:var(--color-text)}
.branchen__card-text {font-size:var(--fs-body-m);line-height:var(--lh-body-m);letter-spacing:var(--tracking-tight);color:var(--color-text-muted)}
@media(min-width:640px) {
  .branchen__grid {grid-template-columns:1fr 1fr}
}
@media(min-width:1024px) {
  .branchen__grid {grid-template-columns:repeat(3,1fr)}
}
.feat {padding-block:var(--space-8);background-color:var(--color-bg)}
.feat__intro {max-width:740px;margin-bottom:var(--space-7)}
.feat__eyebrow {font-family:var(--font-heading);font-size:var(--fs-heading-5xs);line-height:var(--lh-heading-5xs);font-weight:var(--fw-semibold);letter-spacing:var(--tracking-tight);color:var(--color-accent);margin-bottom:var(--space-2)}
.feat__title {color:var(--color-text);margin-bottom:var(--space-4)}
.feat__lead {font-size:var(--fs-body-m);line-height:var(--lh-body-m);letter-spacing:var(--tracking-tight);color:var(--color-text);max-width:680px}
.feat__cards {display:grid;grid-template-columns:1fr;gap:var(--space-5);margin-bottom:var(--space-6)}
.feat__card {display:flex;flex-direction:column;gap:var(--space-5);background-color:var(--color-bg-subtle);border:1px solid var(--finder-border, #e6ebf3);border-radius:var(--radius-image);padding:var(--space-6)}
.feat__card-title {color:var(--color-text)}
.feat__bullets {list-style:none;display:flex;flex-direction:column;gap:var(--space-3);font-size:var(--fs-body-m);line-height:var(--lh-body-m);letter-spacing:var(--tracking-tight);color:var(--color-text)}
.feat__bullets li {position:relative;padding-left:var(--space-5)}
.feat__bullets li:before {content:"";position:absolute;left:0;top:.45em;width:9px;height:9px;border-radius:var(--radius-full);background-color:var(--color-accent)}
.feat__btn {align-self:flex-start;display:inline-flex;align-items:center;gap:var(--space-2);background-color:var(--color-neutral-100);color:var(--color-accent);border:1px solid var(--finder-border, #e6ebf3);border-radius:var(--radius-full);padding:var(--space-2) var(--space-5);font-family:var(--font-body);font-size:var(--fs-body-m);letter-spacing:var(--tracking-tight);transition:opacity .15s ease}
.feat__btn:hover {opacity:.85}
.feat__trust {position:relative;overflow:hidden;display:flex;align-items:center;gap:var(--space-4);background-image:linear-gradient(90deg,var(--color-primary-800),var(--color-primary-900));border-radius:var(--radius-image);padding:var(--space-5);padding-right:92px;min-height:132px}
.feat__trust-left {display:flex;align-items:center;gap:var(--space-4)}
.feat__trust-icon {flex-shrink:0;width:52px;height:52px;display:inline-flex;align-items:center;justify-content:center;border-radius:var(--radius-full);background-image:linear-gradient(90deg,var(--color-primary-900),var(--color-primary-800));color:var(--color-success)}
.feat__trust-text {font-family:var(--font-heading);font-size:var(--fs-heading-xs);line-height:var(--lh-heading-xs);font-weight:var(--fw-semibold);letter-spacing:var(--tracking-tight);color:var(--color-neutral-100);max-width:490px}
.feat__trust-logo {position:absolute;right:var(--space-5);bottom:0;height:76px;width:auto;pointer-events:none}
@media(min-width:768px) {
  .feat__cards {grid-template-columns:1fr 1fr;gap:var(--space-6)}
}
@media(min-width:1024px) {
  .feat__card {padding:var(--space-7)}
  .feat__trust {padding:var(--space-6) var(--space-7);padding-right:220px;min-height:152px}
  .feat__trust-logo {right:var(--space-7);height:128px}
}
.faq {padding-block:var(--space-8);background-color:var(--color-bg)}
.faq__inner {display:flex;flex-direction:column;gap:var(--space-7)}
.faq__eyebrow {font-family:var(--font-heading);font-size:var(--fs-heading-5xs);line-height:var(--lh-heading-5xs);font-weight:var(--fw-semibold);letter-spacing:var(--tracking-tight);color:var(--color-accent);margin-bottom:var(--space-2)}
.faq__title {color:var(--color-text);margin-bottom:var(--space-4)}
.faq__lead {font-size:var(--fs-body-m);line-height:var(--lh-body-m);letter-spacing:var(--tracking-tight);color:var(--color-text-muted)}
.faq__infocard {position:relative;overflow:hidden;border-radius:var(--radius-sm);margin-top:var(--space-6);padding:var(--space-6) var(--space-5);background-size:cover;background-position:center;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:var(--space-4);min-height:120px}
.faq__infocard-scrim {position:absolute;inset:0;background-image:linear-gradient(to bottom,#00000026,#000c)}
.faq__infocard-title {position:relative;z-index:1;font-family:var(--font-heading);font-size:var(--fs-heading-3xs);line-height:var(--lh-heading-3xs);font-weight:var(--fw-semibold);letter-spacing:var(--tracking-tight);color:var(--color-neutral-100);max-width:200px}
.faq__infocard-btn {position:relative;z-index:1;display:inline-flex;align-items:center;gap:var(--space-2);background-color:var(--color-accent);color:var(--color-neutral-100);border-radius:var(--radius-full);padding:var(--space-2) var(--space-5);font-family:var(--font-body);font-size:var(--fs-body-m);letter-spacing:var(--tracking-tight);transition:opacity .15s ease}
.faq__infocard-btn:hover {opacity:.9}
.faq__list {display:flex;flex-direction:column}
.faq__item {border-bottom:1px solid var(--color-bg-muted)}
.faq__q-wrap {margin:0}
.faq__q {width:100%;display:flex;align-items:flex-start;gap:var(--space-3);background:transparent;border:none;cursor:pointer;text-align:left;padding:var(--space-5) 0}
.faq__nr {flex-shrink:0;font-family:var(--font-heading);font-size:var(--fs-heading-5xs);line-height:1.6;font-weight:var(--fw-semibold);letter-spacing:var(--tracking-tight);color:var(--color-accent)}
.faq__q-text {flex:1;font-family:var(--font-heading);font-size:var(--fs-heading-2xs);line-height:var(--lh-heading-2xs);font-weight:var(--fw-medium);letter-spacing:var(--tracking-tight);color:var(--color-text)}
.faq__chevron {flex-shrink:0;width:36px;height:36px;display:inline-flex;align-items:center;justify-content:center;border-radius:var(--radius-full);border:1px solid var(--color-bg-muted);color:var(--color-text);transition:transform .2s ease,background-color .15s ease,color .15s ease}
.faq__q[aria-expanded=true] .faq__chevron {transform:rotate(180deg);background-color:var(--color-accent);border-color:var(--color-accent);color:var(--color-neutral-100)}
.faq__a {padding:0 0 var(--space-5) calc(26px + var(--space-3))}
.faq__a[hidden] {display:none}

/* ---------------------------------------------------------------------------
   Akkordeon-Animation — gilt fuer ALLE fuenf Akkordeons (Startseiten-FAQ,
   ESD-FAQ, Branchen-FAQ, Kompetenz-Material, "Warum Benker").
   Handgeschrieben, nicht aus dem Astro-Build: dort klappten die Panels hart auf.

   ZWEI Ebenen mit klarer Aufgabenteilung (Begruendung ausfuehrlich im Kopf von
   assets/js/accordion.js):

   1. Der ROOT ist massgeblich fuer alles, was UNTER dem Akkordeon liegt.
      Ein Wert, eine Kurve — deshalb kann dort nichts zucken.
   2. Die PANELS liefern die sichtbare Bewegung IM INNEREN. Ohne sie tauschen
      zwei gleich lange Antworten hart, weil die Root-Hoehe sich nicht aendert.

   Beide MUESSEN dieselbe Dauer und Kurve haben — sonst entsteht mittendrin eine
   Luecke oder es wird abgeschnitten. Wer eine Zeile aendert, aendert beide.

   .is-animating setzt accordion.js nur waehrend der Bewegung. overflow nur
   dann, damit Fokus-Outlines im Ruhezustand nicht abgeschnitten werden.

   padding-bottom muss bei den Panels mit: alle fuenf haben
   "padding: 0 0 var(--space-5) …", und Padding laesst sich nicht
   zusammendruecken — bei Hoehe 0 bliebe sonst ein Streifen stehen.
   --------------------------------------------------------------------------- */
[data-accordion].is-animating {
  overflow: hidden;
  transition: height .28s ease;
}
[data-accordion] .is-animating {
  overflow: hidden;
  transition: height .28s ease, padding-bottom .28s ease;
}
@media (prefers-reduced-motion: reduce) {
  [data-accordion].is-animating,
  [data-accordion] .is-animating {transition: none}
}
.faq__a-text {font-size:var(--fs-body-m);line-height:var(--lh-body-m);letter-spacing:var(--tracking-tight);color:var(--color-text);max-width:600px}
.faq__a-text--todo {color:var(--color-text-muted);font-style:italic}
@media(min-width:900px) {
  .faq__inner {flex-direction:row;align-items:flex-start;gap:var(--space-9)}
  .faq__left {flex:0 0 438px;position:sticky;top:var(--space-6)}
  .faq__list {flex:1 1 auto;min-width:0}
}
/* WP-Anpassung: an "section" gebunden, weil WordPress "blog" auch als body_class
   ausgibt (Startseite mit Beitragsliste). Ohne diese Bindung bekaeme der gesamte
   <body> den Verlauf und das Padding dieser Sektion. */
section.blog {background-image:linear-gradient(to top,var(--color-neutral-100),#f2f4fb);padding-block:var(--space-7)}
.blog__head {display:flex;flex-direction:column;gap:var(--space-4);margin-bottom:var(--space-6)}
.blog__eyebrow {font-family:var(--font-heading);font-size:var(--fs-heading-5xs);line-height:var(--lh-heading-5xs);font-weight:var(--fw-semibold);letter-spacing:var(--tracking-tight);color:var(--color-accent);margin-bottom:var(--space-2)}
.blog__title {color:var(--color-text)}
.blog__all {align-self:flex-start;display:inline-flex;align-items:center;gap:var(--space-2);background-color:var(--color-neutral-100);color:var(--color-accent);border:1px solid var(--finder-border, #e6ebf3);border-radius:var(--radius-full);padding:var(--space-2) var(--space-5);font-family:var(--font-body);font-size:var(--fs-body-m);letter-spacing:var(--tracking-tight);transition:opacity .15s ease}
.blog__all:hover {opacity:.85}
.blog__featured {display:flex;flex-direction:column;gap:var(--space-5)}
.blog__featured-img {width:100%;aspect-ratio:598 / 343;object-fit:cover;border-radius:var(--radius-image)}
.blog__featured-body {display:flex;flex-direction:column;gap:var(--space-3)}
.blog__divider {height:1px;background-color:var(--color-bg-muted);margin-block:var(--space-6)}
.blog__grid {list-style:none;display:grid;grid-template-columns:1fr;gap:var(--space-6) var(--space-5);margin:0;padding:0}
.blog__card {display:flex;flex-direction:column;gap:var(--space-3)}
.blog__card-link {color:inherit;text-decoration:none;border-radius:var(--radius-image);transition:opacity .15s ease}
.blog__card-link:hover {opacity:.92}
.blog__card-link:hover .blog__post-title {color:var(--color-accent)}
.blog__card-link:focus-visible {outline:2px solid var(--color-accent);outline-offset:4px}
.blog__card-img {width:100%;aspect-ratio:411 / 343;object-fit:cover;border-radius:var(--radius-image)}
.blog__date {font-family:var(--font-heading);font-size:var(--fs-body-s);line-height:var(--lh-body-s);color:var(--color-text)}
.blog__post-title {color:var(--color-text)}
.blog__post-text {font-size:var(--fs-body-m);line-height:var(--lh-body-m);letter-spacing:var(--tracking-tight);color:var(--color-text);max-width:44ch}
@media(min-width:768px) {
  .blog__featured {flex-direction:row;align-items:stretch}
  .blog__featured-img {flex:0 0 52%;aspect-ratio:598 / 343}
  .blog__featured-body {justify-content:center}
  .blog__grid {grid-template-columns:repeat(3,1fr)}
}
@media(min-width:1024px) {
  section.blog {padding-block:var(--space-9)}
  .blog__head {flex-direction:row;align-items:flex-end;justify-content:space-between}
}
.vidp {--video-duration: .55s;--video-ease: cubic-bezier(.34, 1.35, .5, 1);--video-expanded-max: 1100px;--video-expanded-vw: 92vw;--video-backdrop: .5;--video-radius-sm: 12px;--video-radius-lg: 16px}
.vidp__box {position:relative;display:block;width:100%;aspect-ratio:var(--vidp-box-aspect, 338 / 200);padding:12px;border:2px solid var(--color-neutral-100);border-radius:10px;background-color:#ffffffe6;-webkit-backdrop-filter:blur(8.45px);backdrop-filter:blur(8.45px);box-shadow:var(--shadow-card);cursor:pointer;overflow:hidden}
.vidp__box:focus-visible {outline:2px solid var(--color-accent);outline-offset:3px}
.vidp--bare .vidp__box {padding:0;border:none;background-color:transparent;-webkit-backdrop-filter:none;backdrop-filter:none;box-shadow:none}
.vidp--bare .vidp__teaser {border-radius:inherit}
.vidp__box--notch {border-radius:0}
.vidp__teaser {display:block;width:100%;height:100%;object-fit:cover;border-radius:var(--video-radius-sm);background-color:var(--color-bg-muted)}
.vidp__play {position:absolute;inset:0;margin:auto;width:64px;height:64px;display:grid;place-items:center;padding-left:3px;border-radius:50%;border:1.5px solid rgba(255,255,255,.85);background:#ffffff38;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);color:var(--color-neutral-100);transition:transform .2s ease,background-color .2s ease}
.vidp__box:hover .vidp__play,.vidp__box:focus-visible .vidp__play {transform:scale(1.06);background:#ffffff52}
.vidp__player[hidden] {display:none}
.vidp__player {position:fixed;inset:0;z-index:1000}
.vidp__player-backdrop {position:absolute;inset:0;background:rgba(0,0,0,var(--video-backdrop));opacity:0;transition:opacity var(--video-duration) ease}
.vidp__player.is-open .vidp__player-backdrop {opacity:1}
.vidp__player-frame {position:fixed;border-radius:var(--video-radius-lg);overflow:hidden;background:#000;box-shadow:0 24px 60px #0006;transform-origin:top left;will-change:transform}
.vidp__player-video {display:block;width:100%;height:100%;object-fit:cover;background:#000}
.vidp__player-sound {position:absolute;top:12px;left:12px;z-index:2;display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);border:none;border-radius:var(--radius-full);background:#00000080;color:#fff;cursor:pointer;font-family:var(--font-body);font-size:var(--fs-body-s);letter-spacing:var(--tracking-tight);line-height:1;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);transition:background-color .15s ease}
.vidp__player-sound:hover {background:#000000b8}
.vidp__player-sound:focus-visible {outline:2px solid #fff;outline-offset:2px}
.vidp__player-sound-icon {display:inline-flex}
.vidp__player-sound-icon svg {display:block;width:18px;height:18px}
.vidp__player-sound .icon-on {display:none}
.vidp__player-sound[aria-pressed=true] .icon-on {display:block}
.vidp__player-sound[aria-pressed=true] .icon-off {display:none}
.vidp__player-close {position:absolute;top:12px;right:12px;width:40px;height:40px;display:grid;place-items:center;border:none;border-radius:50%;background:#00000080;color:#fff;cursor:pointer;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);transition:background-color .15s ease}
.vidp__player-close:hover {background:#000000b8}
.vidp__player-close:focus-visible {outline:2px solid #fff;outline-offset:2px}
@media(prefers-reduced-motion:reduce) {
  .vidp__player-backdrop {transition-duration:.01s}
  .vidp__play {transition:none}
}
.pcar {background-image:linear-gradient(to top,var(--color-neutral-100),#f2f4fb);padding-block:var(--space-7);overflow-x:clip;--pcar-inline: var(--space-3);--pcar-card-radius: 5px}
.pcar__head {display:flex;flex-direction:column;gap:var(--space-4);margin-bottom:var(--space-6)}
.pcar__eyebrow {font-family:var(--font-heading);font-size:var(--fs-heading-5xs);line-height:var(--lh-heading-5xs);font-weight:var(--fw-semibold);letter-spacing:var(--tracking-tight);color:var(--color-accent);margin-bottom:var(--space-2)}
.pcar__title {color:var(--color-text);max-width:560px}
.pcar__stage {overflow:hidden}
.pcar__viewport {padding-left:max(var(--pcar-inline),calc((100vw - var(--content-max)) / 2));touch-action:pan-y;cursor:grab}
.pcar__viewport.is-dragging {cursor:grabbing}
.pcar__track {list-style:none;display:flex;gap:var(--space-6);margin:0;padding:0;transition:transform .4s ease}
.pcar__viewport.is-dragging .pcar__track {transition:none}
.pcar__viewport.is-dragging,.pcar__viewport.is-dragging  {user-select:none}
.pcar__img {-webkit-user-drag:none;user-select:none}
.pcar__card {position:relative;flex:0 0 auto;width:min(900px,82vw);aspect-ratio:900 / 500;min-height:420px;border-radius:var(--pcar-card-radius);overflow:hidden;display:flex;flex-direction:column;justify-content:space-between;padding:var(--space-6);color:var(--color-neutral-100);background-color:var(--color-primary-900)}
.pcar__img {position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.pcar__scrim {position:absolute;inset:0;background-image:linear-gradient(to bottom,#0000 30%,#000000d9)}
.pcar__nr,.pcar__info {position:relative;z-index:1}
.pcar__nr {font-family:var(--font-heading);font-size:40px;line-height:var(--lh-heading-xl);font-weight:var(--fw-bold);letter-spacing:var(--tracking-tight)}
.pcar__info {display:flex;flex-direction:column;gap:var(--space-5)}
.pcar__cat {display:flex;flex-direction:column;gap:var(--space-3);max-width:340px}
.pcar__cat-title {font-family:var(--font-heading);font-size:var(--fs-heading-xs);line-height:var(--lh-heading-xs);font-weight:var(--fw-semibold);letter-spacing:var(--tracking-tight)}
.pcar__cat-text {font-size:var(--fs-body-m);line-height:var(--lh-body-m);letter-spacing:var(--tracking-tight)}
.pcar__more {align-self:flex-start;display:inline-flex;align-items:center;gap:var(--space-2);margin-top:var(--space-2);background-color:var(--color-accent);color:var(--color-neutral-100);border-radius:var(--radius-full);padding:var(--space-2) var(--space-5);font-family:var(--font-body);font-size:var(--fs-body-m);letter-spacing:var(--tracking-tight);transition:opacity .15s ease}
.pcar__more:hover {opacity:.9}
.pcar__sub {list-style:none;display:none;flex-direction:column;gap:var(--space-2);min-width:260px;font-size:var(--fs-body-m);line-height:var(--lh-body-m);letter-spacing:var(--tracking-tight)}
.pcar__sub li {padding-bottom:var(--space-2)}
.pcar__sub li+li {border-top:1px solid rgba(255,255,255,.35);padding-top:var(--space-2)}
.pcar__nav {display:flex;gap:var(--space-2);margin-top:var(--space-6)}
.pcar__arrow {width:40px;height:40px;display:inline-flex;align-items:center;justify-content:center;border-radius:var(--radius-full);border:1px solid var(--color-text);background:transparent;color:var(--color-text);cursor:pointer;transition:background-color .15s ease,color .15s ease,opacity .15s ease}
.pcar__arrow:hover:not(:disabled) {background-color:var(--color-accent);border-color:var(--color-accent);color:var(--color-neutral-100)}
.pcar__arrow:disabled {opacity:.35;cursor:default}
@media(min-width:720px) {
  .pcar__sub {display:flex}
  .pcar__info {flex-direction:row;align-items:flex-end;gap:var(--space-8)}
  .pcar__cat {flex:1 1 auto}
}
@media(min-width:1024px) {
  .pcar {padding-block:var(--space-9);--pcar-inline: var(--space-5)}
  .pcar__card {padding:var(--space-8)}
}
.cinfo {padding-block:var(--space-8);background-color:var(--color-bg)}
.cinfo__inner {width:100%;max-width:1328px;margin-inline:auto;padding-inline:var(--space-5);display:flex;flex-direction:column;gap:var(--space-6)}
.cinfo__title-area {display:flex;flex-direction:column;gap:var(--space-2)}
.cinfo__eyebrow {font-family:var(--font-heading);font-size:var(--fs-heading-5xs);line-height:var(--lh-heading-5xs);font-weight:var(--fw-semibold);letter-spacing:var(--tracking-tight);color:var(--color-accent)}
.cinfo__title {color:var(--color-text);max-width:740px}
.cinfo__body {display:flex;flex-direction:column;gap:var(--space-7)}
.cinfo__body-group {display:flex;flex-direction:column;gap:var(--space-4)}
.cinfo__body-p {font-family:var(--font-body);font-size:var(--fs-body-m);line-height:var(--lh-body-m);letter-spacing:var(--tracking-tight);color:var(--color-text)}
@media(min-width:900px) {
  .cinfo {padding-block:var(--space-9)}
  .cinfo__inner {flex-direction:row;align-items:stretch;gap:var(--space-7)}
  .cinfo__title-area {flex:0 0 auto;width:740px;max-width:58%}
  .cinfo__body {flex:1 1 0;min-width:0;justify-content:flex-end}
}
.testi {padding-block:var(--space-8);background-color:var(--color-bg)}
.testi__inner {width:100%;max-width:1328px;margin-inline:auto;padding-inline:var(--space-5)}
.testi__grid {display:flex;flex-direction:column;gap:var(--space-6)}
.testi__card {display:flex;flex-direction:column;gap:var(--space-6);padding:var(--space-6);background-color:var(--color-bg);border:1px solid #e6ebf3;border-radius:var(--radius-image)}
.testi__title {color:var(--color-text)}
.testi__quote-area {display:flex;flex-direction:column;gap:var(--space-4)}
.testi__mark {width:47px;height:32px}
.testi__quotes {position:relative}
.testi__quote {font-family:var(--font-body);font-style:italic;font-size:var(--fs-heading-2xs);line-height:1.6;letter-spacing:var(--tracking-tight);color:var(--color-text)}
.testi__quote[aria-hidden=true] {position:absolute;inset:0;opacity:0;pointer-events:none}
.testi__quote {transition:opacity .35s ease}
.testi__buttons {display:flex;gap:var(--space-2)}
.testi__arrow {width:40px;height:40px;display:inline-flex;align-items:center;justify-content:center;border-radius:var(--radius-full);border:1px solid var(--color-text);background:transparent;color:var(--color-text);cursor:pointer;transition:background-color .15s ease,color .15s ease,opacity .15s ease}
.testi__arrow:hover:not(:disabled) {background-color:var(--color-accent);border-color:var(--color-accent);color:var(--color-neutral-100)}
.testi__arrow:disabled {opacity:.35;cursor:default}
.testi__arrow:focus-visible {outline:2px solid var(--color-accent);outline-offset:2px}
.testi__media {position:relative;width:100%;aspect-ratio:600 / 475;touch-action:pan-y}
.testi__img {position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block;clip-path:url(#card-notch-bl);transition:opacity .35s ease;-webkit-user-drag:none;user-select:none}
.testi__img[aria-hidden=true] {opacity:0;pointer-events:none}
@media(min-width:900px) {
  .testi {padding-block:var(--space-9)}
  .testi__grid {flex-direction:row;align-items:stretch;gap:var(--space-7)}
  .testi__card {flex:1 1 0;min-width:0;gap:var(--space-7);padding:var(--space-7);justify-content:space-between}
  .testi__media {flex:0 0 600px;max-width:600px;align-self:center}
}
.bcard {display:flex;flex-direction:column;gap:var(--space-5);height:100%;padding:var(--space-7);background-color:var(--color-bg-subtle);border:1px solid #e6ebf3;border-radius:var(--radius-image)}
.bcard__icon {height:60px;width:auto;align-self:flex-start}
.bcard__text {display:flex;flex-direction:column;gap:var(--space-5)}
.bcard__title {font-family:var(--font-heading);font-size:var(--fs-heading-2xs);line-height:var(--lh-heading-2xs);font-weight:var(--fw-medium);letter-spacing:var(--tracking-tight);color:var(--color-accent);overflow-wrap:break-word}
.bcard__body {font-family:var(--font-body);font-size:var(--fs-body-m);line-height:var(--lh-body-m);letter-spacing:var(--tracking-tight);color:var(--color-text)}
.benefits {padding-block:var(--space-8);background-color:var(--color-bg)}
.benefits__inner {width:100%;max-width:1328px;margin-inline:auto;padding-inline:var(--space-5);display:flex;flex-direction:column;gap:var(--space-7)}
.benefits__head {display:flex;flex-direction:column;gap:var(--space-5)}
.benefits__title-area {display:flex;flex-direction:column;gap:var(--space-2);max-width:740px}
.benefits__eyebrow {font-family:var(--font-heading);font-size:var(--fs-heading-5xs);line-height:var(--lh-heading-5xs);font-weight:var(--fw-semibold);letter-spacing:var(--tracking-tight);color:var(--color-accent);text-transform:uppercase}
.benefits__title {color:var(--color-text)}
.benefits__body {font-family:var(--font-body);font-size:var(--fs-body-m);line-height:var(--lh-body-m);letter-spacing:var(--tracking-tight);color:var(--color-text);max-width:680px}
.benefits__cards {display:flex;flex-direction:column;gap:var(--space-6)}
.benefits__grid {display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-6)}
.benefits__trust {position:relative;overflow:hidden;background-image:var(--gradient-blue);border-radius:var(--radius-image);padding:var(--space-7)}
.benefits__watermark {position:absolute;right:0;top:0;height:100%;width:auto;pointer-events:none}
.benefits__trust-row {position:relative;z-index:1;display:flex;flex-direction:column;gap:var(--space-5)}
.benefits__trust-icon {height:66px;width:auto;align-self:flex-start}
.benefits__trust-title {font-family:var(--font-heading);font-size:var(--fs-heading-m);line-height:var(--lh-heading-m);font-weight:var(--fw-medium);letter-spacing:var(--tracking-tight);color:var(--color-neutral-100);max-width:490px}
.benefits__trust-body {font-family:var(--font-body);font-size:var(--fs-body-m);line-height:var(--lh-body-m);letter-spacing:var(--tracking-tight);color:var(--color-neutral-100);max-width:480px}
@media(min-width:600px) {
  .benefits__grid {grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(min-width:900px) {
  .benefits {padding-block:var(--space-9)}
  .benefits__trust-row {flex-direction:row;align-items:center;gap:var(--space-6)}
  .benefits__trust-icon {align-self:center}
}
@media(min-width:1280px) {
  .benefits__grid--4 {grid-template-columns:repeat(4,minmax(0,1fr))}
  .benefits__grid--3 {grid-template-columns:repeat(3,minmax(0,1fr))}
}
.jobs {padding-block:var(--space-8);background-color:var(--color-bg)}
.jobs__inner {width:100%;max-width:1328px;margin-inline:auto;padding-inline:var(--space-5);display:flex;flex-direction:column;gap:var(--space-7)}
.jobs__head {display:flex;flex-direction:column;gap:var(--space-5)}
.jobs__title-area {display:flex;flex-direction:column;gap:var(--space-2)}
.jobs__eyebrow {font-family:var(--font-heading);font-size:var(--fs-heading-5xs);line-height:var(--lh-heading-5xs);font-weight:var(--fw-semibold);letter-spacing:var(--tracking-tight);color:var(--color-accent)}
.jobs__title {color:var(--color-text)}
.jobs__body {font-family:var(--font-body);font-size:var(--fs-body-m);line-height:var(--lh-body-m);letter-spacing:var(--tracking-tight);color:var(--color-text);max-width:680px}
.jobs__list {list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-5)}
.jobs__row {display:flex;flex-direction:column;gap:var(--space-4)}
.jobs__text {display:flex;flex-direction:column;gap:var(--space-2);min-width:0}
.jobs__name {font-family:var(--font-heading);font-size:var(--fs-heading-2xs);line-height:var(--lh-heading-2xs);font-weight:var(--fw-medium);letter-spacing:var(--tracking-tight);color:var(--color-text)}
.jobs__details {font-family:var(--font-heading);font-size:var(--fs-body-s);line-height:var(--lh-body-s);font-weight:var(--fw-medium);letter-spacing:var(--tracking-tight);color:var(--color-text)}
.jobs__cta {align-self:flex-start;display:inline-flex;align-items:center;gap:var(--space-3);background-color:var(--color-accent);color:var(--color-neutral-100);border-radius:var(--radius-full);padding:var(--space-2) var(--space-5);font-family:var(--font-body);font-size:var(--fs-body-m);letter-spacing:var(--tracking-tight);transition:opacity .15s ease}
.jobs__cta:hover {opacity:.9}
.jobs__cta:focus-visible {outline:2px solid var(--color-accent);outline-offset:3px}
.jobs__divider {height:1px;background-color:var(--color-bg-muted)}
@media(min-width:700px) {
  .jobs {padding-block:var(--space-9)}
  .jobs__row {flex-direction:row;align-items:center;justify-content:space-between;gap:var(--space-5)}
  .jobs__cta {flex-shrink:0}
}
.khero__inner {padding:var(--space-6) var(--space-4)}
.khero__grid {display:flex;flex-direction:column;gap:var(--space-7)}
.khero__left {display:flex;flex-direction:column;gap:var(--space-6)}
.khero__title {color:var(--color-text);max-width:536px;overflow-wrap:break-word;word-break:break-word}
.khero__lead {color:var(--color-text);max-width:488px}
.khero__actions {display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-6)}
.khero__cta {display:inline-flex;align-items:center;gap:var(--space-3);background-color:var(--color-accent);color:var(--color-neutral-100);border-radius:var(--radius-full);padding:var(--space-3) var(--space-5);font-family:var(--font-body);font-size:var(--fs-body-l);letter-spacing:var(--tracking-tight);transition:opacity .15s ease}
.khero__cta:hover {opacity:.9}
.khero__cta:focus-visible {outline:2px solid var(--color-accent);outline-offset:3px}
.khero__secondary {display:inline-flex;align-items:center;gap:var(--space-2);color:var(--color-accent);font-family:var(--font-body);font-size:var(--fs-body-m);letter-spacing:var(--tracking-tight);transition:opacity .15s ease}
.khero__secondary:hover {opacity:.8}
.khero__secondary:focus-visible {outline:2px solid var(--color-accent);outline-offset:3px}
.khero__right {position:relative}
.khero__media {clip-path:url(#hero-notch-bl);aspect-ratio:598 / 327;overflow:hidden}
.khero__media img {width:100%;height:100%;object-fit:cover;display:block}
@media(min-width:1024px) {
  .khero__inner {padding:var(--space-7) var(--space-6)}
  .khero__grid {flex-direction:row;align-items:center;gap:var(--space-8)}
  .khero__left {flex:1 1 0;min-width:0}
  .khero__right {flex:0 1 598px;max-width:598px;min-width:0}
}
.prozess {--proz-phase-w: 67px;--proz-arrow-w: 42px;--proz-gap: var(--space-3);--proz-step: calc(var(--proz-phase-w) + 2 * var(--proz-gap) + var(--proz-arrow-w));--proz-row-gap: var(--space-7);display:flex;flex-direction:column;gap:var(--space-3)}
.prozess__row {display:flex;align-items:center;flex-wrap:wrap;gap:var(--proz-gap)}
.prozess__phase {display:flex;flex-direction:column;align-items:center;gap:var(--space-1);width:var(--proz-phase-w);flex-shrink:0}
.prozess__nr {display:grid;place-items:center;width:45px;height:45px;border-radius:var(--radius-full);border:1px solid var(--color-accent);font-family:var(--font-heading);font-size:var(--fs-body-s);font-weight:var(--fw-medium);color:var(--color-text)}
.prozess__nr--active {background-color:var(--color-accent);border-color:var(--color-accent);color:var(--color-neutral-100)}
.prozess__label {font-size:var(--fs-body-m);line-height:var(--lh-body-m);letter-spacing:var(--tracking-tight);color:var(--color-accent);text-align:center;white-space:nowrap}
.prozess__arrow {flex-shrink:0;width:var(--proz-arrow-w);height:auto}
.prozess__bracket {display:none}
@media(min-width:1280px) {
  .prozess {position:relative}
  .prozess__row--up,.prozess__row--down {flex-wrap:nowrap}
  .prozess__row--up {margin-bottom:var(--proz-row-gap)}
  .prozess__bracket {display:block;position:absolute;top:45px;left:0;width:100%;height:var(--proz-row-gap);pointer-events:none}
  .prozess__bracket-h {position:absolute;top:calc(var(--proz-row-gap) / 2 - 1px);left:calc(var(--proz-phase-w) / 2);width:calc(3 * var(--proz-step));height:2px;background-color:var(--color-accent)}
  .prozess__bracket-left {position:absolute;top:calc(var(--proz-row-gap) / 2 - 1px);left:calc(var(--proz-phase-w) / 2 - 1px);width:2px;height:calc(var(--proz-row-gap) / 2 + 1px);background-color:var(--color-accent)}
  .prozess__bracket-arrow {position:absolute;top:calc(var(--proz-row-gap) - 6px);left:calc(var(--proz-phase-w) / 2 - 5px);width:0;height:0;border-left:5px solid transparent;border-right:5px solid transparent;border-top:7px solid var(--color-accent)}
  .prozess__bracket-right {position:absolute;top:calc(var(--proz-row-gap) / 2 - 1px);left:calc(3 * var(--proz-step) + var(--proz-phase-w) / 2 - 1px);width:2px;height:calc(var(--proz-row-gap) / 2 + 1px);background-color:var(--color-accent)}
}
@media(max-width:1279.98px) {
  .prozess__row {flex-direction:column;align-items:flex-start;gap:var(--space-2)}
  .prozess__phase {flex-direction:row;width:100%;justify-content:flex-start;gap:var(--space-3)}
  .prozess__label {text-align:left;white-space:normal}
  .prozess__arrow,.prozess__bracket {display:none}
  .prozess__row--up,.prozess__row--down {position:relative;padding-left:22px;border-left:2px solid var(--color-bg-muted)}
}
.kcard {display:flex;flex-direction:column;gap:var(--space-6)}
.kcard__media {position:relative;width:100%;aspect-ratio:600 / 475}
.kcard__media img {width:100%;height:100%;object-fit:cover;display:block;clip-path:url(#card-notch-br)}
.kcard--right .kcard__media img {clip-path:url(#card-notch-bl)}
.kcard__text {background-color:var(--color-neutral-100);border:1px solid var(--finder-border, #e6ebf3);border-radius:var(--radius-image);padding:var(--space-6);display:flex;flex-direction:column;gap:var(--space-6)}
.kcard__title {color:var(--color-text)}
.kcard__body {font-size:var(--fs-body-m);line-height:var(--lh-body-m);letter-spacing:var(--tracking-tight);color:var(--color-text);white-space:pre-line}
.kcard__cta {align-self:flex-start;display:inline-flex;align-items:center;gap:var(--space-2);background-color:var(--color-accent);color:var(--color-neutral-100);border-radius:var(--radius-full);padding:var(--space-2) var(--space-5);font-family:var(--font-body);font-size:var(--fs-body-m);letter-spacing:var(--tracking-tight);transition:opacity .15s ease}
.kcard__cta:hover {opacity:.9}
.kcard__cta:focus-visible {outline:2px solid var(--color-accent);outline-offset:3px}
@media(min-width:1024px) {
  .kcard {flex-direction:row;align-items:flex-start;gap:60px}
  .kcard--right {flex-direction:row-reverse}
  .kcard__media {flex:0 1 600px;max-width:600px;min-width:0}
  .kcard__text {flex:1 1 380px;min-width:0;max-width:620px}
}
.kinfo {padding-block:var(--space-8);background-color:var(--color-bg)}
.kinfo__title-area {display:flex;flex-direction:column;gap:var(--space-2);margin-bottom:var(--space-7)}
.kinfo__eyebrow {font-family:var(--font-heading);font-size:var(--fs-heading-5xs);line-height:var(--lh-heading-5xs);font-weight:var(--fw-semibold);letter-spacing:var(--tracking-tight);color:var(--color-accent)}
.kinfo__title {color:var(--color-text)}
.kinfo__list {display:flex;flex-direction:column;gap:var(--space-7)}
.kinfo__row {width:100%;max-width:1328px;margin-inline:auto;padding-inline:var(--space-5)}
.kinfo__row-bleed {background-color:var(--color-bg-subtle);border-radius:24px;padding-block:var(--space-6)}
@media(min-width:1024px) {
  .kinfo__row-bleed {border-radius:32px;padding-block:var(--space-7)}
}
@media(min-width:1024px) {
  .kinfo {padding-block:var(--space-9)}
}
.kmat {padding-block:var(--space-8);background-color:var(--color-bg)}
.kmat__intro {display:flex;flex-direction:column;gap:var(--space-2);margin-bottom:var(--space-6)}
.kmat__eyebrow {font-family:var(--font-heading);font-size:var(--fs-heading-5xs);line-height:var(--lh-heading-5xs);font-weight:var(--fw-semibold);letter-spacing:var(--tracking-tight);color:var(--color-accent)}
.kmat__title {color:var(--color-text)}
.kmat__lead {font-size:var(--fs-body-m);line-height:var(--lh-body-m);letter-spacing:var(--tracking-tight);color:var(--color-text);max-width:680px;margin-top:var(--space-2)}
.kmat__content {display:flex;flex-direction:column;gap:var(--space-6)}
.kmat__media {width:100%;aspect-ratio:600 / 520;border-radius:var(--radius-image);overflow:hidden}
.kmat__media img {width:100%;height:100%;object-fit:cover;display:block}
.kmat__list {display:flex;flex-direction:column}
.kmat__item {border-bottom:1px solid var(--color-bg-muted)}
.kmat__q-wrap {margin:0}
.kmat__q {width:100%;display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);background:transparent;border:none;cursor:pointer;text-align:left;padding:var(--space-5) 0}
.kmat__q-text {font-family:var(--font-heading);font-size:var(--fs-heading-xs);line-height:var(--lh-heading-xs);font-weight:var(--fw-semibold);letter-spacing:var(--tracking-tight);color:var(--color-text)}
.kmat__icon {flex-shrink:0;display:inline-flex}
.kmat__icon-close {display:none}
.kmat__q[aria-expanded=true] .kmat__icon-close {display:block}
.kmat__q[aria-expanded=true] .kmat__icon-open {display:none}
.kmat__a {padding:0 0 var(--space-5);display:flex;flex-direction:column;gap:var(--space-4)}
.kmat__a[hidden] {display:none}
.kmat__a-text {font-size:var(--fs-body-m);line-height:var(--lh-body-m);letter-spacing:var(--tracking-tight);color:var(--color-text)}
.kmat__a-text--todo {color:var(--color-text-muted);font-style:italic}
.kmat__bullets {list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-3)}
.kmat__bullets li {position:relative;padding-left:var(--space-5);font-size:var(--fs-body-m);line-height:var(--lh-body-m);letter-spacing:var(--tracking-tight);color:var(--color-text)}
.kmat__bullets li:before {content:"";position:absolute;left:0;top:.5em;width:9px;height:9px;border-radius:var(--radius-full);background-color:var(--color-accent)}
@media(min-width:1024px) {
  .kmat {padding-block:var(--space-9)}
  .kmat__content {flex-direction:row;align-items:flex-start;gap:var(--space-7)}
  .kmat__media {flex:0 0 600px;max-width:600px}
  .kmat__list {flex:1 1 auto;min-width:0}
}
.cdlayout {padding-block:var(--space-8);background-color:var(--color-bg)}
.cdlayout__inner {width:100%;max-width:1328px;margin-inline:auto;padding-inline:var(--space-5);display:flex;flex-direction:column;gap:var(--space-8)}
.cdlayout__main {display:flex;flex-direction:column;gap:var(--space-8);min-width:0}
@media(min-width:1024px) {
  .cdlayout {padding-block:var(--space-9)}
  .cdlayout__inner {display:grid;grid-template-columns:minmax(0,740px) 372px;justify-content:space-between;align-items:start;gap:var(--space-7)}
}
.detail {display:flex;flex-direction:column;gap:var(--space-5)}
.detail__head {display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);flex-wrap:wrap}
.detail__title {color:var(--color-text)}
.detail__link {display:inline-flex;align-items:center;gap:var(--space-2);color:var(--color-accent);font-family:var(--font-body);font-size:var(--fs-body-m);letter-spacing:var(--tracking-tight);transition:opacity .15s ease}
.detail__link:hover {opacity:.8}
.detail__link:focus-visible {outline:2px solid var(--color-accent);outline-offset:2px;border-radius:var(--radius-sm)}
.detail__link-icon {flex-shrink:0}
.detail__list {list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-3)}
.detail__item {display:flex;align-items:flex-start;gap:var(--space-3);font-family:var(--font-body);font-size:var(--fs-body-m);line-height:var(--lh-body-m);letter-spacing:var(--tracking-tight);color:var(--color-text)}
.detail__dot {flex-shrink:0;width:13px;height:13px;margin-top:4px;border-radius:var(--radius-full);background-color:var(--color-accent)}
.upload {display:flex;flex-direction:column;gap:var(--space-3);max-width:740px}
.upload__zone {display:flex;align-items:center;justify-content:center;padding:var(--space-5);background-color:var(--color-bg-subtle);border:1px solid #e6ebf3;border-radius:var(--radius-image);cursor:pointer;transition:border-color .15s ease,background-color .15s ease}
.upload__zone.is-dragover {border-color:var(--color-accent);background-color:var(--color-neutral-300)}
.upload__input {position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.upload__input:focus-visible+.upload__prompt {outline:2px solid var(--color-accent);outline-offset:4px;border-radius:var(--radius-sm)}
.upload__prompt {display:inline-flex;align-items:center;gap:var(--space-3);color:var(--color-text)}
.upload__icon {flex-shrink:0;color:var(--color-text)}
.upload__prompt-text {font-family:var(--font-body);font-size:var(--fs-body-l);line-height:var(--lh-body-l);letter-spacing:var(--tracking-tight)}
.upload__link {color:var(--color-accent);text-decoration:underline}
.upload__hint {font-size:var(--fs-body-xs);line-height:var(--lh-body-xs);letter-spacing:var(--tracking-tight);color:var(--color-text-muted)}
.upload__file[hidden] {display:none}
.upload__file {display:flex;align-items:center;gap:var(--space-4);justify-content:space-between;padding:var(--space-3) var(--space-4);background-color:var(--color-bg-subtle);border:1px solid #e6ebf3;border-radius:var(--radius-sm)}
.upload__file-name {font-size:var(--fs-body-m);letter-spacing:var(--tracking-tight);color:var(--color-text);overflow-wrap:anywhere}
.upload__file-remove {flex-shrink:0;background:none;border:0;color:var(--color-accent);font-family:var(--font-body);font-size:var(--fs-body-s);cursor:pointer;padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm)}
.upload__file-remove:focus-visible {outline:2px solid var(--color-accent);outline-offset:2px}
.upload__error {font-size:var(--fs-body-s);letter-spacing:var(--tracking-tight);color:#c0392b}
.upload__body {display:flex;flex-direction:column;margin-top:var(--space-3)}
.upload__body-p {font-size:var(--fs-body-m);line-height:var(--lh-body-m);letter-spacing:var(--tracking-tight);color:var(--color-text)}
.upload__submit {align-self:flex-start;margin-top:var(--space-3);display:inline-flex;align-items:center;gap:var(--space-3);background-color:var(--color-accent);color:var(--color-neutral-100);border:0;border-radius:var(--radius-full);padding:var(--space-2) var(--space-5);font-family:var(--font-body);font-size:var(--fs-body-m);letter-spacing:var(--tracking-tight);cursor:pointer;transition:opacity .15s ease}
.upload__submit:hover {opacity:.9}
.upload__submit:focus-visible {outline:2px solid var(--color-accent);outline-offset:3px}
.upload__status {font-size:var(--fs-body-s);letter-spacing:var(--tracking-tight);color:var(--color-text-muted)}
.tihero__inner {display:flex;flex-direction:column;gap:var(--space-5);padding:var(--space-6) var(--space-4)}
.tihero__title {color:var(--color-text);max-width:536px;font-size:clamp(2rem,8vw,var(--fs-heading-xl));overflow-wrap:break-word}
.tihero__body {color:var(--color-text);max-width:488px}
.tihero__search {display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-4);margin-top:var(--space-3);max-width:744px}
.tihero__searchbar {flex:1 1 260px;min-width:0;display:flex;align-items:center;gap:var(--space-2);height:40px;padding:var(--space-2) var(--space-5);background-color:var(--color-neutral-100);border:1px solid #e6ebf3;border-radius:var(--radius-full)}
.tihero__search-icon {flex-shrink:0;color:var(--color-text)}
.tihero__search-label {position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.tihero__search-input {flex:1 1 0;min-width:0;border:0;background:transparent;font-family:var(--font-body);font-size:var(--fs-body-m);letter-spacing:var(--tracking-tight);color:var(--color-text)}
.tihero__search-input:focus {outline:none}
.tihero__searchbar:focus-within {outline:2px solid var(--color-accent);outline-offset:2px}
.tihero__cta {flex-shrink:0;display:inline-flex;align-items:center;gap:var(--space-3);background-color:var(--color-accent);color:var(--color-neutral-100);border-radius:var(--radius-full);padding:var(--space-2) var(--space-5);font-family:var(--font-body);font-size:var(--fs-body-m);letter-spacing:var(--tracking-tight);transition:opacity .15s ease}
.tihero__cta:hover {opacity:.9}
.tihero__cta:focus-visible {outline:2px solid var(--color-accent);outline-offset:3px}
@media(min-width:1024px) {
  .tihero__inner {padding:var(--space-7) var(--space-6)}
}
.tifilter {width:100%;max-width:1328px;margin-inline:auto;padding-inline:var(--space-5)}
.tifilter__bar {display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:var(--space-1);background-color:var(--color-bg);border:1px solid #e6ebf3;border-radius:var(--radius-lg);padding:var(--space-1)}
.tifilter__btn {display:inline-flex;align-items:center;justify-content:center;min-width:40px;padding:var(--space-2) var(--space-4);border-radius:var(--radius-sm);font-family:var(--font-body);font-size:var(--fs-body-l);line-height:var(--lh-body-l);letter-spacing:var(--tracking-tight);color:var(--color-text);transition:background-color .15s ease,color .15s ease}
a.tifilter__btn:hover {background-color:var(--color-bg-subtle)}
.tifilter__btn:focus-visible {outline:2px solid var(--color-accent);outline-offset:2px}
.tifilter__btn--all {background-color:var(--color-accent);color:var(--color-neutral-100);border-radius:var(--radius-full)}
a.tifilter__btn--all:hover {background-color:var(--color-accent);opacity:.9}
.tifilter__btn--disabled {color:var(--color-text);opacity:.25;pointer-events:none;cursor:default}
.tifilter__btn.is-search-hidden {opacity:.25;pointer-events:none}
@media(min-width:1024px) {
  .tifilter__bar {flex-wrap:nowrap;justify-content:space-between;border-radius:var(--radius-full);padding-inline:var(--space-2)}
}
.ticard {display:flex;gap:var(--space-4);align-items:flex-start;padding-block:var(--space-6);scroll-margin-top:88px}
.ticard__letter {flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;min-width:45px;padding:var(--space-2) var(--space-4);border:1px solid #e6ebf3;border-radius:var(--radius-image);font-family:var(--font-body);font-size:var(--fs-heading-3xs);line-height:var(--lh-body-m);letter-spacing:var(--tracking-tight);color:var(--color-accent)}
.ticard__body {flex:1 1 0;min-width:0;display:flex;flex-direction:column;gap:var(--space-5)}
.ticard__count {font-family:var(--font-heading);font-size:var(--fs-heading-5xs);line-height:var(--lh-heading-5xs);font-weight:var(--fw-semibold);letter-spacing:var(--tracking-tight);color:var(--color-text);text-transform:uppercase}
.ticard__list {list-style:none;margin:0;padding:0;column-width:360px;column-gap:var(--space-7)}
.ticard__item {break-inside:avoid;margin-bottom:var(--space-3)}
.ticard__link {display:inline-flex;align-items:baseline;gap:var(--space-3);font-family:var(--font-heading);font-size:var(--fs-heading-3xs);line-height:var(--lh-heading-3xs);font-weight:var(--fw-semibold);letter-spacing:var(--tracking-tight);color:var(--color-accent);transition:opacity .15s ease}
.ticard__link:before {content:"•";color:var(--color-accent)}
.ticard__link:hover {opacity:.7;text-decoration:underline}
.ticard__link:focus-visible {outline:2px solid var(--color-accent);outline-offset:2px;border-radius:var(--radius-sm)}
.ticard__empty {font-size:var(--fs-body-m);letter-spacing:var(--tracking-tight);color:var(--color-text-muted)}
.tiindex {padding-block:var(--space-8);background-color:var(--color-bg)}
.tiindex__filter {margin-bottom:var(--space-7);position:sticky;top:0;z-index:5;padding-block:var(--space-3);background-color:var(--color-bg)}
.tiindex__list {width:100%;max-width:1328px;margin-inline:auto;padding-inline:var(--space-5);display:flex;flex-direction:column;gap:0}
.tiindex__list>.ticard+.ticard {border-top:1px solid var(--color-bg-muted)}
.tiindex__noresults {padding-block:var(--space-7);font-size:var(--fs-body-l);line-height:var(--lh-body-l);letter-spacing:var(--tracking-tight);color:var(--color-text-muted);max-width:720px}
@media(min-width:1024px) {
  .tiindex {padding-block:var(--space-9)}
}
.uhero__inner {padding-inline:0;display:flex;flex-direction:column;gap:var(--space-6);padding-top:var(--space-6)}
.uhero__text {display:flex;flex-direction:column;gap:var(--space-6);padding-inline:var(--space-5)}
.uhero__title {color:var(--color-text);max-width:536px;overflow-wrap:break-word}
.uhero__body {display:flex;flex-direction:column;gap:var(--space-6)}
.uhero__lead {color:var(--color-text);max-width:488px}
.uhero__actions {display:flex;align-items:center;gap:var(--space-6);flex-wrap:wrap}
.uhero__cta {display:inline-flex;align-items:center;gap:var(--space-3);background-color:var(--color-accent);color:var(--color-neutral-100);border-radius:var(--radius-full);padding:var(--space-3) var(--space-5);font-family:var(--font-body);font-size:var(--fs-body-m);letter-spacing:var(--tracking-tight);transition:opacity .15s ease}
.uhero__cta:hover {opacity:.9}
.uhero__cta:focus-visible {outline:2px solid var(--color-accent);outline-offset:3px}
.uhero__media {padding-inline:var(--space-5)}
.uhero__media img {display:block;width:100%;aspect-ratio:1280 / 324;object-fit:cover;border-radius:var(--radius-image) var(--radius-image) 0 0}
@media(min-width:1024px) {
  .uhero__inner {padding-top:40px;gap:60px}
  .uhero__text {flex-direction:row;align-items:flex-end;justify-content:space-between;gap:var(--space-8);padding-inline:0}
  .uhero__media {padding-inline:0}
}
.uinfo {padding-block:var(--space-8);background-color:var(--color-bg)}
.uinfo__inner {display:flex;flex-direction:column;gap:var(--space-6)}
.uinfo__title-area {display:flex;flex-direction:column;gap:var(--space-2)}
.uinfo__eyebrow {font-family:var(--font-heading);font-size:var(--fs-body-s);font-weight:var(--fw-semibold);letter-spacing:var(--tracking-tight);color:var(--color-accent)}
.uinfo__title {color:var(--color-text)}
.uinfo__body {display:flex;flex-direction:column;gap:var(--space-6);font-size:var(--fs-body-m);line-height:var(--lh-body-m);letter-spacing:var(--tracking-tight);color:var(--color-text)}
@media(min-width:1024px) {
  .uinfo__inner {flex-direction:row;gap:var(--space-8);align-items:flex-start}
  .uinfo__title-area {flex:0 1 620px}
  .uinfo__body {flex:1 1 0;min-width:0;max-width:480px;justify-content:center}
}
.ufeat {padding-block:var(--space-8);background:linear-gradient(to top,rgba(243,245,251,0),var(--color-bg-subtle))}
.ufeat__intro {display:flex;flex-direction:column;gap:var(--space-4);margin-bottom:var(--space-7)}
.ufeat__title {color:var(--color-text);max-width:536px}
/* 20.08.2026: Lead laeuft breiter, damit der laengere Text nicht als hoher
   schmaler Absatz steht. Titel bleibt schmal, sonst zerfaellt die Zweizeiligkeit. */
.ufeat__lead {color:var(--color-text);max-width:880px}
.ufeat__stage {display:flex;flex-direction:column;gap:var(--space-5);padding-inline:var(--space-5)}
/* 20.08.2026: Die Karten liegen in zwei Stapeln (.ufeat__spalte), Logo und
   Video in .ufeat__medien. Auf dem Handy stapelt sich alles untereinander,
   ab 1024px stehen die drei Bloecke nebeneinander. */
.ufeat__spalte {display:flex;flex-direction:column;gap:var(--space-5)}
/* Der Stapel setzt die Abstaende ueber gap. Das Bild bringt aus seiner
   Grundregel noch einen eigenen Aussenabstand mit — der kaeme oben drauf und
   der Abstand unter dem Bild waere doppelt so gross wie zwischen den Karten. */
.ufeat__spalte .ufeat__bild {margin:0}
.ufeat__medien {display:flex;flex-direction:column;align-items:center;gap:var(--space-5)}
.ufeat__logo {display:none}
.ufeat__card {display:flex;flex-direction:column;gap:var(--space-3);justify-content:center;padding:32px;background-color:#ffffffe6;border:2px solid #e6ebf3;border-radius:var(--radius-card);-webkit-backdrop-filter:blur(8.45px);backdrop-filter:blur(8.45px)}
.ufeat__card-title {font-family:var(--font-heading);font-size:var(--fs-heading-xs);line-height:var(--lh-heading-xs);font-weight:var(--fw-semibold);letter-spacing:var(--tracking-tight);color:var(--color-accent)}
.ufeat__card-text {font-size:var(--fs-body-m);line-height:var(--lh-body-m);letter-spacing:var(--tracking-tight);color:var(--color-text)}
/* 20.08.2026: Auf dem Handy laeuft das Video so breit wie die Karten. Der
   Deckel von 360px galt frueher auch dort und liess es schmaler wirken als
   alles daneben. Ab 1024px greift er weiter (siehe Media Query). */
.ufeat__video {width:100%}
@media(min-width:1024px) {
  /* 20.08.2026: Buehne von absoluten Figma-Prozentwerten auf drei Spalten
     umgestellt. Grund: sechs statt vier Karten, jede mit einem Satz mehr Text —
     auf einer Flaeche mit festen Kartenhoehen waere der Text ausgelaufen.
     Die Komposition bleibt: links Bild und Karten, rechts Logo und Video.
     Der VERSATZ der zweiten Kartenspalte ist Absicht (Wunsch Benker, so auch
     in Figma): die Stapel greifen ineinander statt in strengen Zeilen zu
     stehen. Er haengt an einer Variablen, damit er sich in einem Griff
     aendern laesst. */
  /* Der Abschnitt rueckt naeher an die Einleitung, damit das Logo (siehe unten)
     bis auf deren Hoehe reichen kann. */
  .ufeat__intro {margin-bottom:var(--space-3)}
  .ufeat__stage {--ufeat-versatz:150px;position:relative;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-5);align-items:start;width:100%;max-width:1440px;margin-inline:auto;padding-inline:var(--space-6)}
  .ufeat__spalte--b {margin-top:var(--ufeat-versatz)}
  /* Der linke Stapel ist kuerzer (Bild + zwei Karten) und sitzt deshalb auf der
     Mittelachse des rechten: oben und unten bleibt gleich viel Luft. Das haelt
     sich von selbst, auch wenn spaeter eine Karte dazukommt oder ein Text
     laenger wird.
     Der gleiche margin-top wie beim rechten Stapel ist noetig, damit sich beide
     auf denselben Bereich beziehen — sonst zentriert der linke gegen die volle
     Rasterzeile und sitzt zu hoch. */
  .ufeat__spalte--a {margin-top:var(--ufeat-versatz);align-self:center}
  /* Logo wie in Figma: es liegt HINTER den Karten und reicht nach oben bis auf
     Hoehe der Einleitung. Nur so bleibt der Glaseffekt der Karten sichtbar —
     ein Blur braucht etwas, das dahinter liegt. Deshalb absolut und z-index 0,
     waehrend Karten und Video darueber stehen. */
  .ufeat__logo {display:block;position:absolute;top:-190px;right:0;width:46%;max-width:none;height:auto;z-index:0}
  /* Karten und Video liegen ueber dem Logo. position:relative ist hier noetig:
     z-index allein am Rasterkind reicht in der Praxis nicht gegen ein absolut
     positioniertes Geschwister. Das Logo bleibt trotzdem an der Buehne
     verankert, weil es kein Kind dieser beiden Container ist. */
  .ufeat__spalte {position:relative;z-index:1}
  .ufeat__medien {position:relative;z-index:1;gap:var(--space-7);align-self:end}
  .ufeat__card {width:auto;height:auto}
  .ufeat__video {width:100%;max-width:360px}
}
.utl {padding-block:var(--space-9);background-color:var(--color-bg)}
.utl__inner {display:flex;flex-direction:column;align-items:center;gap:var(--space-7);text-align:center}
.utl__title {color:var(--color-text);max-width:440px}
.utl__widget {width:100%;display:flex;flex-direction:column;align-items:center;gap:var(--space-8)}
.utl__tabs-wrap {position:relative;width:100%;max-width:794px;margin-inline:auto;border:1px solid var(--color-bg-muted);border-radius:var(--radius-full);background-color:var(--color-bg)}
.utl__tabs {position:relative;z-index:2;display:flex;align-items:center;gap:var(--space-2);width:100%;min-width:0;overflow-x:auto;padding:var(--space-2) var(--space-3);background-color:transparent;scrollbar-width:none;-ms-overflow-style:none;--utl-fade-l:0px;--utl-fade-r:0px;-webkit-mask-image:linear-gradient(to right,transparent 0,#000 var(--utl-fade-l),#000 calc(100% - var(--utl-fade-r)),transparent 100%);mask-image:linear-gradient(to right,transparent 0,#000 var(--utl-fade-l),#000 calc(100% - var(--utl-fade-r)),transparent 100%)}
.utl__tabs::-webkit-scrollbar {display:none}
.utl__tabs-wrap.is-fade-start .utl__tabs {--utl-fade-l:120px}
.utl__tabs-wrap.is-fade-end .utl__tabs {--utl-fade-r:120px}
.utl__tab {flex-shrink:0;background:transparent;border:none;border-radius:var(--radius-full);padding:var(--space-2) var(--space-4);font-family:var(--font-body);font-size:var(--fs-body-l);letter-spacing:var(--tracking-tight);color:var(--color-text);cursor:pointer;transition:background-color .15s ease,color .15s ease}
.utl__tab[aria-selected=true] {background-color:var(--color-accent);color:var(--color-neutral-100)}
.utl__tab:focus-visible {outline:2px solid var(--color-accent);outline-offset:2px}
.utl__slider {width:100%;display:flex;align-items:center;gap:var(--space-5)}
.utl__nav {flex-shrink:0;display:none;width:40px;height:40px;align-items:center;justify-content:center;border-radius:50%;border:1px solid var(--color-bg-muted);background-color:var(--color-bg);color:var(--color-text);cursor:pointer;transition:background-color .15s ease,border-color .15s ease}
.utl__nav:hover {border-color:var(--color-accent);color:var(--color-accent)}
.utl__nav:focus-visible {outline:2px solid var(--color-accent);outline-offset:2px}
.utl__panels {flex:1 1 0;min-width:0}
.utl__panel[hidden] {display:none}
/* Jahreswechsel ueberblenden statt hart tauschen (Opt-in [data-tab-animate]).

   Waehrend des Wechsels sind BEIDE Panels sichtbar und liegen in derselben
   Rasterzelle uebereinander: das alte blendet an Ort und Stelle aus, das neue
   faehrt gleichzeitig seitlich herein. Die Richtung steckt in --utl-slide,
   gesetzt von tabs.js (vorwaerts von rechts, rueckwaerts von links).

   Die Hoehe wird mitanimiert, weil die Jahre unterschiedlich viel Text haben —
   ohne das saehe man statt eines Sprungs im Text einen Sprung im Seitenlayout.
   tabs.js schreibt dafuer kurz eine feste Hoehe auf den Container und nimmt sie
   danach wieder weg; overflow:hidden haelt das laengere Panel waehrenddessen
   im Rahmen.

   Warum das ueber Klassen und nicht ueber [hidden] laeuft: die UA-Regel fuer
   [hidden] ist im HTML-Standard als !important festgeschrieben und laesst sich
   per CSS nicht ueberschreiben. Das ausgehende Panel bekommt [hidden] deshalb
   erst NACH der Ueberblendung. */
.utl__panels[data-tab-animate] {display:grid;align-items:center;overflow:hidden;transition:height .42s cubic-bezier(.22,.61,.36,1)}
.utl__panels[data-tab-animate] > .utl__panel {grid-column:1;grid-row:1;transition:opacity .38s ease,transform .46s cubic-bezier(.22,.61,.36,1)}
.utl__panels[data-tab-animate] > .utl__panel--enter {opacity:0;transform:translateX(var(--utl-slide,28px));transition:none}
.utl__panels[data-tab-animate] > .utl__panel--leave {opacity:0;transition:opacity .26s ease}
@media(prefers-reduced-motion:reduce) {
  .utl__panels[data-tab-animate],
  .utl__panels[data-tab-animate] > .utl__panel {transition:none}
}
.utl__panel {display:flex;flex-direction:column;gap:var(--space-5);text-align:left}
.utl__panel-image img {display:block;width:100%;aspect-ratio:350 / 188;object-fit:cover;object-position:top;border-radius:var(--radius-sm)}
.utl__panel-body {display:flex;flex-direction:column;gap:var(--space-4);font-size:var(--fs-body-m);line-height:var(--lh-body-m);letter-spacing:var(--tracking-tight);color:var(--color-text)}
.utl__panel-empty {display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-3);min-height:220px;padding:var(--space-6);border:1px dashed var(--color-bg-muted);border-radius:var(--radius-sm);text-align:center}
.utl__panel-empty-year {font-family:var(--font-heading);font-size:var(--fs-heading-m);font-weight:var(--fw-medium);color:var(--color-accent)}
.utl__panel-empty-text {font-size:var(--fs-body-m);color:var(--color-text-muted)}
@media(min-width:900px) {
  .utl__nav {display:inline-flex}
  /* justify-content:center — der Inhalt steht mittig ZWISCHEN den beiden
     Pfeilen. Bild (497) + Abstand + Text (max 484) sind schmaler als die
     Flaeche, vorher klebte alles links und rechts blieb eine Luecke. */
  .utl__panel {flex-direction:row;align-items:center;justify-content:center;gap:var(--space-8)}
  .utl__panel-image {flex:0 0 497px}
  .utl__panel-body {flex:1 1 0;min-width:0;max-width:484px}
  .utl__panel-empty {width:100%;max-width:1045px;margin-inline:auto}
}
.ucta {padding-block:var(--space-8)}
.ucta__inner {display:flex;flex-direction:column;gap:var(--space-6);padding:var(--space-6);border-radius:var(--radius-image);background:linear-gradient(90deg,#005ba8,#002756)}
.ucta__media img {display:block;width:100%;aspect-ratio:534 / 266;object-fit:cover;clip-path:url(#notch-br)}
.ucta__content {display:flex;flex-direction:column;gap:var(--space-6)}
.ucta__text {display:flex;flex-direction:column;gap:var(--space-4);max-width:536px}
.ucta__title {color:var(--color-neutral-100)}
.ucta__lead {color:var(--color-neutral-100);max-width:488px}
.ucta__btn {align-self:flex-start;display:inline-flex;align-items:center;gap:var(--space-3);background-color:var(--color-accent);color:var(--color-neutral-100);border-radius:var(--radius-full);padding:var(--space-3) var(--space-5);font-family:var(--font-body);font-size:var(--fs-body-m);letter-spacing:var(--tracking-tight);transition:opacity .15s ease}
.ucta__btn:hover {opacity:.9}
.ucta__btn:focus-visible {outline:2px solid var(--color-neutral-100);outline-offset:3px}
@media(min-width:1024px) {
  .ucta__inner {flex-direction:row;align-items:center;gap:var(--space-8);padding:var(--space-6)}
  .ucta__media {flex:0 0 534px}
  .ucta__content {flex:1 1 0;min-width:0;justify-content:center}
}
.notch-border {position:absolute;inset:0;width:100%;height:100%;pointer-events:none;stroke:var(--notch-border-color, #e6ebf3)}
.omail {display:inline-flex;align-items:center;gap:var(--space-3);font-family:var(--font-body);font-size:var(--fs-body-m);line-height:var(--lh-body-m);letter-spacing:var(--tracking-tight);color:var(--omail-color, var(--color-text));transition:color .15s ease,opacity .15s ease}
.omail:hover {color:var(--omail-hover-color, var(--color-accent));opacity:var(--omail-hover-opacity, 1)}
.omail:focus-visible {outline:2px solid var(--omail-outline-color, var(--color-accent));outline-offset:2px}
.omail__text {min-width:0;overflow-wrap:anywhere}
.ksidebar {width:100%;--omail-color: var(--color-neutral-100);--omail-hover-color: var(--color-neutral-100);--omail-hover-opacity: .8;--omail-outline-color: var(--color-neutral-100)}
.ksidebar__card {display:flex;flex-direction:column;gap:var(--space-6);padding:var(--space-6);color:var(--color-neutral-100)}
.ksidebar--grad-horizontal .ksidebar__card {background-image:var(--gradient-blue)}
.ksidebar--grad-diagonal .ksidebar__card {background-image:linear-gradient(135deg,var(--color-primary-900),var(--color-primary-800))}
.ksidebar:not(.ksidebar--notch) .ksidebar__card {border-radius:var(--radius-image)}
.ksidebar--notch .ksidebar__card {clip-path:url(#side-notch-br)}
.ksidebar--notch .ksidebar__lower {padding-bottom:var(--space-4)}
.ksidebar__header {display:flex;flex-direction:column;gap:var(--space-3)}
.ksidebar__title {font-family:var(--font-heading);font-size:var(--fs-heading-xs);line-height:var(--lh-heading-xs);font-weight:var(--fw-semibold);letter-spacing:var(--tracking-tight);color:var(--color-neutral-100)}
.ksidebar__text {font-size:var(--fs-body-m);line-height:var(--lh-body-m);letter-spacing:var(--tracking-tight);color:var(--color-neutral-100)}
.ksidebar__lower {display:flex;flex-direction:column;gap:var(--space-5)}
.ksidebar__person {display:flex;align-items:center;gap:var(--space-3)}
.ksidebar__avatar {flex-shrink:0;width:var(--ksidebar-avatar, 48px);height:var(--ksidebar-avatar, 48px);display:grid;place-items:center;border-radius:var(--radius-full);overflow:hidden;background-color:#ffffff29;border:1px solid rgba(255,255,255,.3)}
/* object-position top (23.07.2026): Die Portraits sind Hochformat-Aufnahmen —
   mittig beschnitten fehlte im runden Avatar der Kopf. Oben ausgerichtet ist
   das Gesicht immer im Ausschnitt.

   01.09.2026: Diese Regel lief lange ins Leere. kontakt-sidebar.php hat das
   Foto in der Groesse 'thumbnail' ausgegeben, und die ist bei WordPress
   150x150 HART UND MITTIG beschnitten. Ein quadratisches Bild in einem
   quadratischen Rahmen hat keinen Ueberstand, also gab es fuer
   object-position nichts zu verschieben — der mittige Beschnitt der Datei
   blieb stehen und schnitt den Kopf ab. Seit dem Umstieg auf 'medium'
   (ungeschnitten, 200x300) greift die Regel hier wieder. */
.ksidebar__avatar-img {width:100%;height:100%;object-fit:cover;object-position:top}
.ksidebar__person-text {display:flex;flex-direction:column;min-width:0}
.ksidebar__person-name {font-family:var(--font-heading);font-size:var(--fs-heading-3xs);line-height:var(--lh-heading-3xs);font-weight:var(--fw-semibold);letter-spacing:var(--tracking-tight)}
.ksidebar__person-role {font-size:var(--fs-body-m);line-height:var(--lh-body-m);letter-spacing:var(--tracking-tight);opacity:.9}
.ksidebar__links {display:flex;flex-direction:column;gap:var(--space-3)}
.ksidebar__link {display:inline-flex;align-items:center;gap:var(--space-3);color:var(--color-neutral-100);font-size:var(--fs-body-m);line-height:var(--lh-body-m);letter-spacing:var(--tracking-tight);transition:opacity .15s ease}
.ksidebar__link img {flex-shrink:0}
.ksidebar__link:hover {opacity:.8}
.ksidebar__link:focus-visible {outline:2px solid var(--color-neutral-100);outline-offset:3px;border-radius:var(--radius-sm)}
.ksidebar__button {align-self:flex-start;display:inline-flex;align-items:center;gap:var(--space-3);background-color:var(--color-neutral-100);color:var(--color-accent);border:1px solid #e6ebf3;border-radius:var(--radius-full);padding:var(--space-3) var(--space-5);font-family:var(--font-body);font-size:var(--fs-body-m);letter-spacing:var(--tracking-tight);transition:opacity .15s ease}
.ksidebar__button:hover {opacity:.9}
.ksidebar__button:focus-visible {outline:2px solid var(--color-neutral-100);outline-offset:3px}
@media(min-width:1024px) {
  .ksidebar {position:sticky;top:var(--space-6);align-self:start}
}
.phero__inner {padding:var(--space-6) var(--space-4)}
.phero__grid {display:flex;flex-direction:column;gap:var(--space-6)}
.phero__title {color:var(--color-text);max-width:536px;font-size:clamp(2rem,8vw,var(--fs-heading-xl));overflow-wrap:break-word}
.phero__right {display:flex;flex-direction:column;gap:40px}
.phero__lead {display:flex;flex-direction:column;gap:var(--space-5);max-width:488px}
.phero__lead-p {color:var(--color-text)}
.phero__actions {display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-6)}
.phero__cta {display:inline-flex;align-items:center;gap:var(--space-3);background-color:var(--color-accent);color:var(--color-neutral-100);border-radius:var(--radius-full);padding:var(--space-3) var(--space-5);font-family:var(--font-body);font-size:var(--fs-body-l);letter-spacing:var(--tracking-tight);transition:opacity .15s ease}
.phero__cta:hover {opacity:.9}
.phero__cta:focus-visible {outline:2px solid var(--color-accent);outline-offset:3px}
.phero__media {margin-top:var(--space-6);width:100%;aspect-ratio:1280 / 324;border-radius:var(--radius-image) var(--radius-image) 0 0;overflow:hidden}
.phero__media img {width:100%;height:100%;object-fit:cover;object-position:center 42%;display:block}
.phero--has-media .phero__inner {padding-bottom:0}
.phero--has-media .phero__shell {padding-bottom:0;overflow:hidden}
@media(min-width:1024px) {
  .phero__inner {padding:40px var(--space-6) 12px}
  .phero__grid {flex-direction:row;align-items:flex-start;gap:var(--space-6)}
  .phero__left {flex:1 1 0;min-width:0}
  .phero__right {flex:0 1 488px;min-width:0}
}
.dhero__inner {padding:var(--space-6) var(--space-4)}
.dhero__grid {display:flex;flex-direction:column;gap:var(--space-6)}
.dhero__left {display:flex;flex-direction:column;gap:var(--space-5)}
.dhero__crumb {display:flex;align-items:center;gap:var(--space-2);font-family:var(--font-heading);font-size:var(--fs-heading-5xs);line-height:var(--lh-heading-5xs);font-weight:var(--fw-semibold);letter-spacing:var(--tracking-tight)}
.dhero__crumb-parent {color:var(--color-text);opacity:.2;transition:opacity .15s ease}
.dhero__crumb-parent:hover {opacity:.5}
.dhero__crumb-parent:focus-visible {outline:2px solid var(--color-accent);outline-offset:2px}
.dhero__crumb-sep {flex-shrink:0;color:var(--color-text);opacity:.4}
.dhero__crumb-current {color:var(--color-text)}
.dhero__title {color:var(--color-text);max-width:536px;font-size:clamp(2rem,8vw,var(--fs-heading-xl));overflow-wrap:break-word}
.dhero__body {display:flex;flex-direction:column;gap:var(--space-4);max-width:488px}
.dhero__body-p {color:var(--color-text)}
.dhero__media {position:relative;width:100%;aspect-ratio:598 / 327;clip-path:url(#hero-notch-bl);overflow:hidden}
.dhero__media img {width:100%;height:100%;object-fit:cover;display:block}
@media(min-width:1024px) {
  .dhero__inner {padding:var(--space-7) var(--space-6)}
  .dhero--has-image .dhero__grid {flex-direction:row;align-items:center;gap:var(--space-8)}
  .dhero--has-image .dhero__left {flex:1 1 0;min-width:0}
  .dhero--has-image .dhero__right {flex:0 1 598px;max-width:598px;min-width:0}
}
.gallery {display:flex;flex-direction:column;gap:var(--space-7)}
.galrow {display:flex;flex-direction:column;gap:var(--space-4)}
.galrow__title {font-family:var(--font-heading);font-size:var(--fs-heading-3xs);line-height:var(--lh-heading-3xs);font-weight:var(--fw-semibold);letter-spacing:var(--tracking-tight);color:var(--color-text)}
.galrow__viewport {overflow:hidden;touch-action:pan-y;cursor:grab}
.galrow__viewport.is-dragging {cursor:grabbing}
.galrow__track {list-style:none;display:flex;gap:var(--space-5);margin:0;padding:0;transition:transform .4s ease}
.galrow__viewport.is-dragging .galrow__track {transition:none}
.galrow__viewport.is-dragging,.galrow__viewport.is-dragging  {user-select:none}
.galrow__card {flex:0 0 auto;width:min(320px,82%)}
.galrow__img {width:100%;aspect-ratio:320 / 280;object-fit:cover;border-radius:var(--radius-image);background-color:var(--color-bg-muted);display:block;-webkit-user-drag:none;user-select:none}
.galrow__nav {display:flex;gap:var(--space-2);margin-top:var(--space-4)}
.galrow__arrow {width:40px;height:40px;display:inline-flex;align-items:center;justify-content:center;border-radius:var(--radius-full);border:1px solid var(--color-text);background:transparent;color:var(--color-text);cursor:pointer;transition:background-color .15s ease,color .15s ease,opacity .15s ease}
.galrow__arrow:hover:not(:disabled) {background-color:var(--color-accent);border-color:var(--color-accent);color:var(--color-neutral-100)}
.galrow__arrow:disabled {opacity:.35;cursor:default}
.galrow__arrow:focus-visible {outline:2px solid var(--color-accent);outline-offset:2px}
.tidetail-layout {padding-block:var(--space-8);display:flex;flex-direction:column;gap:var(--space-8)}
.tidetail-layout__main {display:flex;flex-direction:column;gap:var(--space-6);min-width:0}
.tidetail__lead {font-family:var(--font-body);font-size:var(--fs-body-l);line-height:var(--lh-body-l);letter-spacing:var(--tracking-tight);color:var(--color-text);max-width:720px}
@media(min-width:1024px) {
  .tidetail-layout {padding-block:var(--space-9);display:grid;grid-template-columns:minmax(0,1fr) clamp(320px,27%,372px);gap:var(--space-8);align-items:start}
}
