/* GENERIERT aus tools/elementor/design.py – nicht von Hand ändern (Spec § 4.2.1). */
:root {
  --zs-blau: #215E99;
  --zs-blau-dunkel: #1A4B7A;
  --zs-petrol: #2D7AB8;
  --zs-papier: #F2F4F7;
  --zs-weiss: #FFFFFF;
  --zs-hell: #E9EFF5;
  --zs-text: #2B2B2B;
  --zs-grau: #5E5D5D;
  --zs-linie: #D3DFEB;
  --zs-fehler: #C6193E;
  --zs-blau-hell: #2D7AB8;
  --zs-rot: #ED1443;
  --zs-nachtblau: #1C354C;
  --zs-blau-zart: #96BCDB;
  --zs-karte-blau: #DCE5EF;
  --zs-grau-hell: #918F8F;
  --zs-fehler-hell: #F8A1B4;
  --zs-fehler-flaeche: #FEECF0;
  --zs-titel: var(--zs-text);
  --zs-akzent: var(--zs-blau);
  --zs-akzent-hell: var(--zs-blau-zart);
  --zs-dunkel: var(--zs-blau-dunkel);
  --zs-knopf: var(--zs-blau);
  --zs-knopf-hover: var(--zs-blau-dunkel);
  --zs-karte: var(--zs-hell);
  --zs-karte-hover: var(--zs-karte-blau);
  --zs-trennlinie: var(--zs-linie);
  --zs-linie-stark: var(--zs-blau);
  --zs-text-leise: var(--zs-grau);
  --zs-verlauf: linear-gradient(100deg, var(--zs-blau-hell) 0%, var(--zs-blau) 45%, var(--zs-blau-dunkel) 100%);
  --zs-font-titel: "Libertinus Serif", Georgia, serif;
  --zs-font-text: "Archivo", Arial, sans-serif;
  --zs-inhalt-max: 1320px;
  --zs-rand: 32px;
  --zs-abschnitt: 80px;
  --zs-gap: 32px;
}
/* Farbwelt Wirtschaft in Wien: dieselben Rollen in Rot und Anthrazit/Grau (docs/farbpalette.md) */
body.page-id-4616, body.parent-pageid-4616, body.parent-pageid-4617, body.parent-pageid-4618, body.parent-pageid-4621 {
  --zs-akzent: var(--zs-fehler);
  --zs-akzent-hell: #C8C7C7;
  --zs-dunkel: var(--zs-text);
  --zs-knopf: var(--zs-fehler);
  --zs-knopf-hover: var(--zs-text);
  --zs-karte: #EBEAEA;
  --zs-karte-hover: #DEDDDD;
  --zs-trennlinie: #D9D8D8;
  --zs-linie-stark: var(--zs-text);
}
/* Header und Footer sind der Rahmen der Hausmarke: auf allen Seiten Zeitungsschmiede-Blau */
.elementor-33, .elementor-34 {
  --zs-titel: var(--zs-text);
  --zs-akzent: var(--zs-blau);
  --zs-akzent-hell: var(--zs-blau-zart);
  --zs-dunkel: var(--zs-blau-dunkel);
  --zs-knopf: var(--zs-blau);
  --zs-knopf-hover: var(--zs-blau-dunkel);
  --zs-karte: var(--zs-hell);
  --zs-karte-hover: var(--zs-karte-blau);
  --zs-trennlinie: var(--zs-linie);
  --zs-linie-stark: var(--zs-blau);
  --zs-text-leise: var(--zs-grau);
}
@media (max-width: 1024px) { :root { --zs-rand: 28px; --zs-abschnitt: 64px; --zs-gap: 24px; } }
@media (max-width: 767px) { :root { --zs-rand: 20px; --zs-abschnitt: 48px; --zs-gap: 24px; } }

/* Verläufe: Hero und kompakte Titelzone (Hintergrundfarbe als Rückfall steht im Element) */
#zs-hero, #zs-titelzone { background-image: var(--zs-verlauf); }

/* Startseite ohne Breadcrumb-Titelzone (Lexus-Vorlage #102 schließt die Startseite aus; der leere Wrapper bleibt sonst stehen) */
.home .breadcrumb-wrap { display: none; }

/* Startseite, Hero 1c: drei Versprechen als Leiste (Handoff „Blaue Hero-Varianten“, Variante 1c) */
.zs-versprechen { display: flex; flex-wrap: wrap; border-top: 1px solid rgba(255, 255, 255, .3); border-bottom: 1px solid rgba(255, 255, 255, .3);
  font: 600 13px/1.4 var(--zs-font-text); letter-spacing: .14em; text-transform: uppercase; color: var(--zs-weiss); }
.zs-versprechen span { padding: 12px 22px; border-left: 1px solid rgba(255, 255, 255, .3); }
.zs-versprechen span:first-child { padding-left: 0; border-left: 0; }
.zs-versprechen .zs-hell { color: var(--zs-akzent-hell); }
@media (max-width: 767px) { .zs-versprechen { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); font-size: 11px; letter-spacing: .08em; text-align: center; }
  .zs-versprechen span { display: flex; align-items: center; justify-content: center; padding: 10px 6px; } .zs-versprechen span:first-child { padding-left: 6px; } }

/* Startseite, Variante 2a: Trennlinie mit Kicker zwischen „Zeitungsschmiede“ und Sonderthema */
.zs-trenner { display: flex; align-items: center; gap: 20px; width: calc(100% - 60px); max-width: 1590px; margin: 0 auto; box-sizing: border-box; }
.zs-trenner span { font: 700 12px/1.4 var(--zs-font-text); letter-spacing: .14em; text-transform: uppercase; color: var(--zs-akzent); white-space: nowrap; }
.zs-trenner::after { content: ""; flex: 1; height: 1px; background: var(--zs-trennlinie); }
@media (max-width: 767px) { .zs-trenner { width: calc(100% - 30px); } .zs-trenner span { white-space: normal; } }

/* Startseite, „Ihr Partner für Medien und Außenwirkung“: Einblend-Animationen des Themes (100 px Weg) nur dezent */
@keyframes zsDezentLinks { from { opacity: 0; transform: translateX(16px); } to { opacity: 1; transform: none; } }
@keyframes zsDezentHoch { from { opacity: 0; transform: translateY(12px); } to { opacity: 1; transform: none; } }
.elementor-element-f7c4ad0 .opal-move-left { animation-name: zsDezentLinks; animation-duration: .7s; }
.elementor-element-f7c4ad0 .opal-move-up { animation-name: zsDezentHoch; animation-duration: .7s; }

/* Startseite, „Aus Redaktion und Wirtschaftskammer Wien“ nach Entwurf 4d: zentrierte Bildkarten */
.elementor-widget-quilly-post-grid .zs-karte { height: 100%; }
.zs-karte-link { display: flex; flex-direction: column; align-items: center; gap: 16px; text-align: center; color: var(--zs-text); text-decoration: none; }
.zs-karte-bild { width: 100%; aspect-ratio: 430 / 310; border-radius: 12px; overflow: hidden; background: var(--zs-karte); }
.zs-karte-bild img { width: 100%; height: 100%; object-fit: cover; display: block; }
.zs-karte-bild-leer { display: flex; width: 100%; height: 100%; align-items: center; justify-content: center; }
.zs-karte-bild .zs-karte-zeichen { width: 72px; height: 72px; object-fit: contain; opacity: .35; filter: grayscale(1); }
.zs-karte-meta { margin-top: 8px; font: 400 14px/1.4 var(--zs-font-text); color: var(--zs-text-leise); }
.zs-karte-titel { margin: 0; font: 400 22px/1.35 var(--zs-font-titel); text-transform: uppercase; color: var(--zs-titel); text-wrap: balance; }
.zs-karte-mehr { margin-top: 8px; font: 700 14px/1.4 var(--zs-font-text); text-decoration: underline; text-underline-offset: 4px; color: var(--zs-text); }
.zs-karte-link:hover .zs-karte-titel { color: var(--zs-akzent); }
.elementor-element-f24628f .elementor-post-wrapper .row, .elementor-element-f24628f .elementor-post-wrapper > div:not(.swiper) { row-gap: 44px; }

/* Startseite, Bücherbild links bei „Ihr Partner …“: keine Bewegung (Scroll-Effekt und Einblendung aus) */
.elementor-element-8e1bc6d, .elementor-element-8e1bc6d * { animation: none !important; transition: none !important; }
.elementor-element-8e1bc6d .elementor-motion-effects-element, .elementor-element-8e1bc6d .elementor-motion-effects-layer { transform: none !important; }

/* News-Übersicht (/news/, Kategorien, Themen, Suche): Variante 4a „Blog“ – große Beiträge links, Seitenleiste mit Suche, Ressorts,
   Newsletter, Erstausgabe und Themen rechts. Header und Quilly-Titelzone bleiben, nur die Quilly-Seitenleiste entfällt */
body.blog #primary.zs-news-bereich-voll, body.archive #primary.zs-news-bereich-voll, body.search #primary.zs-news-bereich-voll { width: 100%; max-width: 100%; flex: 0 0 100%; float: none; margin: 0; padding: 0; }
#content.site-content:has(#primary.zs-news-bereich-voll) { margin-top: 0; margin-bottom: 0; } /* Quilly: 170px; Abstand kommt aus .zs-news-inner */
.zs-news { background: var(--zs-papier); color: var(--zs-text); }
.zs-news-inner { box-sizing: border-box; width: 100%; max-width: 1280px; margin: 0 auto; padding: 80px 120px 104px; display: grid; grid-template-columns: minmax(0, 1fr) 320px; gap: 72px; align-items: start; }
.zs-news .screen-reader-text { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
.zs-news-haupt { display: flex; flex-direction: column; gap: 64px; min-width: 0; }
.zs-news-beitrag { display: flex; flex-direction: column; gap: 18px; color: inherit; text-decoration: none; }
.zs-news-bild { margin-bottom: 6px; }
.zs-news-bild img { display: block; width: 100%; height: auto; aspect-ratio: 16 / 9; object-fit: cover; border-radius: 14px; background: var(--zs-karte); }
.zs-news-meta { display: flex; gap: 10px; align-items: center; flex-wrap: wrap; font: 600 13px/1.4 var(--zs-font-text); color: var(--zs-text-leise); }
.zs-news-kat, .zs-news-kicker { font: 700 11px/1.4 var(--zs-font-text); letter-spacing: .14em; text-transform: uppercase; color: var(--zs-akzent); }
.zs-news-titel { margin: 0; font: 400 32px/1.15 var(--zs-font-titel); text-transform: uppercase; color: var(--zs-titel); text-wrap: balance; overflow-wrap: break-word; hyphens: manual; }
.zs-news-teaser { margin: 0; max-width: 680px; font: 400 16px/1.65 var(--zs-font-text); color: var(--zs-text); }
.zs-news-mehr { font: 700 14px/1.4 var(--zs-font-text); text-decoration: underline; text-underline-offset: 4px; color: var(--zs-text); }
.zs-news-beitrag:hover .zs-news-titel, .zs-news-beitrag:hover .zs-news-mehr { color: var(--zs-akzent); }
.zs-news-leer { margin: 0; padding: 56px; border: 1.5px dashed var(--zs-trennlinie); border-radius: 14px; font: italic 400 20px/1.5 var(--zs-font-titel); color: var(--zs-text-leise); }
.zs-news-leer a { font: normal 700 15px/1.4 var(--zs-font-text); color: var(--zs-text); text-decoration: underline; text-underline-offset: 4px; }
.zs-news-seiten { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; border-top: 1px solid var(--zs-trennlinie); padding-top: 28px; }
.zs-news-seiten .page-numbers { display: inline-flex; align-items: center; justify-content: center; box-sizing: border-box; width: 42px; height: 42px; border-radius: 999px;
  border: 1.5px solid var(--zs-trennlinie); font: 700 14px/1 var(--zs-font-text); color: var(--zs-text); text-decoration: none; }
.zs-news-seiten .page-numbers.current { background: var(--zs-knopf); border-color: var(--zs-knopf); color: #FFF; }
.zs-news-seiten .page-numbers.dots { border: 0; width: auto; }
.zs-news-seiten .prev, .zs-news-seiten .next { font-size: 16px; }
.zs-news-seiten a.page-numbers:hover { border-color: var(--zs-knopf); }
.zs-news-seite { display: flex; flex-direction: column; gap: 40px; min-width: 0; }
@media (min-width: 1025px) and (min-height: 1100px) { .zs-news-seite { position: sticky; top: 24px; } }
.zs-news-suche { position: relative; margin: 0; }
.zs-news .zs-news-suche input[type=search] { box-sizing: border-box; width: 100%; height: 54px; margin: 0; padding: 0 52px 0 20px; background: #FFF; border: 1.5px solid transparent; border-radius: 14px;
  box-shadow: none; font: 400 15px/1.4 var(--zs-font-text); color: var(--zs-text); -webkit-appearance: none; appearance: none; }
.zs-news .zs-news-suche input[type=search]::placeholder { color: var(--zs-text-leise); opacity: 1; }
.zs-news .zs-news-suche input[type=search]::-webkit-search-cancel-button { display: none; }
.zs-news .zs-news-suche input[type=search]:focus { border-color: var(--zs-dunkel); outline: none; }
.zs-news .zs-news-suche button { position: absolute; top: 0; right: 0; display: flex; align-items: center; justify-content: center; width: 52px; height: 54px; margin: 0; padding: 0;
  background: none; border: 0; border-radius: 0 14px 14px 0; color: var(--zs-text-leise); cursor: pointer; }
.zs-news .zs-news-suche button:hover { background: none; color: var(--zs-text); }
.zs-news-block-titel { margin: 0; padding-bottom: 12px; border-bottom: 2px solid var(--zs-linie-stark); font: 400 20px/1.3 var(--zs-font-titel); text-transform: uppercase; color: var(--zs-titel); }
.zs-news-ressorts ul, .zs-news-themen ul { margin: 0; padding: 0; list-style: none; }
.zs-news-ressorts a { display: flex; justify-content: space-between; align-items: center; gap: 12px; padding: 12px 0; border-bottom: 1px solid var(--zs-trennlinie);
  font: 500 15px/1.4 var(--zs-font-text); color: var(--zs-text-leise); text-decoration: none; }
.zs-news-ressorts a:hover { color: var(--zs-text); }
.zs-news-ressorts a[aria-current] { font-weight: 700; color: var(--zs-text); }
.zs-news-ressorts a[aria-current] .zs-news-name::before { content: "→ "; }
.zs-news-anzahl { flex: none; padding: 2px 9px; border-radius: 999px; background: var(--zs-karte); font: 600 12px/1.4 var(--zs-font-text); color: var(--zs-text-leise); }
.zs-news-nl { display: flex; flex-direction: column; gap: 16px; padding: 28px; border-radius: 14px; background: var(--zs-dunkel); color: #FFF; }
.zs-news-nl .zs-news-kicker { color: var(--zs-akzent-hell); }
.zs-news-nl-text { margin: 0; font: 400 19px/1.3 var(--zs-font-titel); text-transform: uppercase; color: #FFF; }
.zs-news-nl-button { align-self: flex-start; padding: 11px 20px; border-radius: 999px; background: #FFF; font: 700 13px/1.3 var(--zs-font-text); color: var(--zs-dunkel); text-decoration: none; }
.zs-news-nl-button:hover { background: var(--zs-karte); color: var(--zs-dunkel); }
.zs-news-ausgabe { display: grid; grid-template-columns: 84px 1fr; gap: 18px; align-items: center; padding: 20px; border-radius: 14px; background: #FFF; color: inherit; text-decoration: none; }
.zs-news-ausgabe img { display: block; width: 84px; height: auto; aspect-ratio: 3 / 4; object-fit: cover; border-radius: 4px; background: var(--zs-karte); box-shadow: 0 8px 16px rgba(43, 43, 43, .15); }
.zs-news-ausgabe-text { display: flex; flex-direction: column; gap: 6px; }
.zs-news-ausgabe-titel { font: 400 17px/1.3 var(--zs-font-titel); text-transform: uppercase; color: var(--zs-titel); }
.zs-news-ausgabe-mehr { font: 700 13px/1.4 var(--zs-font-text); color: var(--zs-text); }
.zs-news-ausgabe:hover .zs-news-ausgabe-mehr { color: var(--zs-akzent); }
.zs-news-themen { display: flex; flex-direction: column; gap: 14px; }
.zs-news-themen ul { display: flex; gap: 8px; flex-wrap: wrap; }
.zs-news-themen a { display: inline-block; padding: 7px 14px; border-radius: 999px; background: var(--zs-karte); font: 600 13px/1.4 var(--zs-font-text); color: var(--zs-text); text-decoration: none; }
.zs-news-themen a:hover { background: var(--zs-karte-hover); color: var(--zs-text); }
.zs-news-themen a[aria-current] { background: var(--zs-knopf); color: #FFF; }
@media (max-width: 1200px) { .zs-news-inner { padding: 72px 48px 96px; gap: 56px; } }
@media (max-width: 1024px) { .zs-news-inner { grid-template-columns: minmax(0, 1fr); gap: 64px; } .zs-news-seite { max-width: 680px; } }
@media (max-width: 767px) { .zs-news-inner { padding: 48px 20px 72px; gap: 56px; } .zs-news-haupt { gap: 48px; } .zs-news-titel { font-size: 24px; }
  .zs-news-leer { padding: 32px 24px; font-size: 18px; } }

/* Header #33 fest oben (Entwurf „News Artikel“): oben transparent über der Titelzone, ab 40 px Scrollweite dunkel (js/zs-header.js) */
body .elementor-33 .elementor-element.header-absolute { position: fixed !important; top: 0; /* Quilly: absolute !important */ left: 0; right: 0; z-index: 999; transition: background-color .25s, box-shadow .25s, border-color .25s; }
body.admin-bar .elementor-33 .elementor-element.header-absolute { top: 32px; }
@media (max-width: 782px) { body.admin-bar .elementor-33 .elementor-element.header-absolute { top: 46px; } }
body .elementor-33 .elementor-element.header-absolute.zs-header-fest { background-color: var(--zs-blau) !important; border-bottom-color: transparent; box-shadow: 0 8px 24px rgba(28, 53, 76, .3); }

/* Wirtschaft in Wien, Übersicht (#4616, Entwurf „WiW Übersicht“), Präfix zs-wue (zs-wiw gehört den Unterseiten/Dienstleistungen): links Navigation + Mediadaten-Kachel, rechts Kopf, Ressorts, Nutzung, Ring.
   Struktur aus tools/elementor/wiw_uebersicht.py; alle Werte hier, nicht in Elementor */
body .elementor-element.zs-wue { margin: 0; padding: 96px 24px 120px; background: var(--zs-papier); color: var(--zs-text); }
body .elementor-element.zs-wue > .e-con-inner { display: grid; grid-template-columns: 260px minmax(0, 1fr); gap: 72px; align-items: start; max-width: 1120px; margin: 0 auto; padding: 0; }
body .elementor-element.zs-wue .e-con { --padding-top: 0px; --padding-right: 0px; --padding-bottom: 0px; --padding-left: 0px; --margin-top: 0px; --margin-bottom: 0px; --gap: 0px; --row-gap: 0px; --column-gap: 0px; width: auto; max-width: none; }
.zs-wue .elementor-widget { margin: 0; }
.zs-wue .elementor-widget-text-editor p { margin: 0; }
.zs-wue a.e-con { color: inherit; text-decoration: none; }
.zs-wue .elementor-heading-title { margin: 0; color: var(--zs-titel); text-transform: none; letter-spacing: 0; font-family: var(--zs-font-titel); font-weight: 400; }
.zs-wue .elementor-heading-title a { color: inherit; }
.zs-wue .zs-wue-kicker .elementor-heading-title { font: 700 11px/1.4 var(--zs-font-text); letter-spacing: .14em; text-transform: uppercase; color: var(--zs-akzent); }
.zs-wue .zs-wue-mehr .elementor-heading-title, .zs-wue .zs-wue-alle .elementor-heading-title { font: 700 14px/1.4 var(--zs-font-text); color: var(--zs-titel); }
.zs-wue .zs-wue-alle .elementor-heading-title a { text-decoration: underline; text-underline-offset: 4px; white-space: nowrap; }
/* Seitenleiste */
body .elementor-element.zs-wue-seite { display: flex; flex-direction: column; gap: 32px; }
@media (min-width: 1025px) { body .elementor-element.zs-wue-seite { position: sticky; top: 110px; } }
.zs-wue-nav .widget { margin: 0; padding: 0; border: 0; background: none; }
.zs-wue-nav .widget-title { display: block; margin: 0; padding: 0 0 12px; border-bottom: 2px solid var(--zs-linie-stark); font: 400 20px/1.3 var(--zs-font-titel); text-transform: uppercase; color: var(--zs-titel); }
.zs-wue-nav ul { margin: 0; padding: 0; list-style: none; }
.zs-wue-nav li { margin: 0; padding: 0; border: 0; }
.zs-wue-nav li::before { display: none; }
.zs-wue-nav li a { display: flex; justify-content: space-between; align-items: center; gap: 12px; padding: 13px 0; border-bottom: 1px solid var(--zs-trennlinie); font: 500 15px/1.4 var(--zs-font-text); color: var(--zs-text); text-decoration: none; }
.zs-wue-nav li a:hover { color: var(--zs-akzent); }
.zs-wue-nav li.current-menu-item > a { font-weight: 700; color: var(--zs-text); }
.zs-wue-nav li.current-menu-item > a::before { content: "→ "; white-space: pre; margin-right: auto; order: -1; }
.zs-wue-nav li.current-menu-item > a { justify-content: flex-start; gap: 0; }
.zs-wue-nav li a[href^="http"]:not([href*="zeitungsschmiede.com"])::after { content: "↗"; font: 400 13px/1 var(--zs-font-text); color: var(--zs-text-leise); }
body .elementor-element.zs-wue-media { display: flex; flex-direction: column; gap: 14px; padding: 28px; border-radius: 14px; background: var(--zs-dunkel); color: #FFF; }
.zs-wue-media .zs-wue-kicker .elementor-heading-title { color: var(--zs-akzent-hell); }
.zs-wue .zs-wue-media-titel .elementor-heading-title { font: 400 21px/1.25 var(--zs-font-titel); text-transform: uppercase; color: #FFF; }
.zs-wue .zs-wue-media-text { font: 400 14px/1.55 var(--zs-font-text); color: rgba(255, 255, 255, .8); }
.zs-wue .zs-wue-media-knopf .elementor-heading-title { display: inline-block; margin-top: 4px; padding: 11px 20px; border-radius: 999px; background: #FFF; font: 700 13px/1.3 var(--zs-font-text); color: var(--zs-dunkel); }
.zs-wue a.zs-wue-media:hover .zs-wue-media-knopf .elementor-heading-title { background: var(--zs-karte); }
/* Inhalt */
body .elementor-element.zs-wue-haupt { display: flex; flex-direction: column; gap: 72px; min-width: 0; }
body .elementor-element.zs-wue-kopf { display: flex; flex-direction: column; gap: 22px; }
.zs-wue .zs-wue-kopf .zs-wue-kicker .elementor-heading-title { font-size: 12px; }
.zs-wue .zs-wue-h1 .elementor-heading-title { font: 400 46px/1.1 var(--zs-font-titel); text-transform: uppercase; text-wrap: balance; overflow-wrap: break-word; hyphens: manual; }
.zs-wue .zs-wue-lead { max-width: 680px; font: 400 18px/1.65 var(--zs-font-text); color: var(--zs-text); text-wrap: pretty; }
body .elementor-element.zs-wue-abschnitt { display: flex; flex-direction: column; gap: 24px; }
body .elementor-element.zs-wue-abschnitt-kopf { display: flex; flex-direction: row; justify-content: space-between; align-items: flex-end; gap: 16px; margin-bottom: -24px; padding-bottom: 14px; border-bottom: 2px solid var(--zs-linie-stark); }
.zs-wue .zs-wue-h2 .elementor-heading-title { font: 400 28px/1.1 var(--zs-font-titel); text-transform: uppercase; }
.zs-wue .zs-wue-linie { padding-bottom: 14px; border-bottom: 2px solid var(--zs-linie-stark); }
/* Ressort-Kacheln wie die Karten der Startseite: Text eingerückt, dezenter Grund, Hover leicht dunkler; Trennlinien = 1 px Fugen im Raster */
body .elementor-element.zs-wue-ressorts { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 300px), 1fr)); gap: 1px; background: var(--zs-trennlinie); border-bottom: 1px solid var(--zs-trennlinie); }
body .elementor-element.zs-wue-ressort { display: flex; flex-direction: column; gap: 14px; padding: 30px 28px 32px; background: var(--zs-karte); transition: background-color .18s; }
.zs-wue a.zs-wue-ressort:hover { background: var(--zs-karte-hover); }
.zs-wue .zs-wue-nr .elementor-heading-title { font: 400 15px/1.2 var(--zs-font-titel); color: var(--zs-grau-hell); }
.zs-wue .zs-wue-ressort-titel .elementor-heading-title { font: 400 24px/1.2 var(--zs-font-titel); text-transform: uppercase; overflow-wrap: break-word; }
.zs-wue .zs-wue-ressort-text, .zs-wue .zs-wue-ring-satz { font: 400 15px/1.6 var(--zs-font-text); color: var(--zs-text); }
.zs-wue .zs-wue-ressort .zs-wue-mehr { margin-top: 4px; }
.zs-wue a.zs-wue-ressort:hover .zs-wue-ressort-titel .elementor-heading-title, .zs-wue a.zs-wue-karte:hover .zs-wue-karte-titel .elementor-heading-title { color: var(--zs-akzent); }
body .elementor-element.zs-wue-karten { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 200px), 1fr)); gap: 20px; }
body .elementor-element.zs-wue-karte { display: flex; flex-direction: column; gap: 10px; padding: 26px; border-radius: 14px; background: #FFF; transition: box-shadow .2s; }
.zs-wue a.zs-wue-karte:hover { box-shadow: 0 16px 32px rgba(43, 43, 43, .08); }
.zs-wue .zs-wue-karte-titel .elementor-heading-title { font: 400 20px/1.25 var(--zs-font-titel); text-transform: uppercase; }
.zs-wue .zs-wue-karte-text { font: 400 14px/1.55 var(--zs-font-text); color: var(--zs-text); }
.zs-wue .zs-wue-karte .zs-wue-mehr { margin-top: auto; padding-top: 6px; }
.zs-wue .zs-wue-karte .zs-wue-mehr .elementor-heading-title { font-size: 13px; }
body .elementor-element.zs-wue-ring { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 260px), 1fr)); gap: 24px; align-items: center; padding: 28px 0; border-top: 2px solid var(--zs-linie-stark); border-bottom: 1px solid var(--zs-trennlinie); }
body .elementor-element.zs-wue-ring-kopf { display: flex; flex-direction: column; gap: 6px; }
.zs-wue .zs-wue-ring-titel .elementor-heading-title { font: 400 22px/1.2 var(--zs-font-titel); text-transform: uppercase; }
body .elementor-element.zs-wue-ring-text { display: flex; flex-direction: row; justify-content: space-between; align-items: center; gap: 20px; }
.zs-wue .zs-wue-ring .zs-wue-mehr .elementor-heading-title { white-space: nowrap; }
.zs-wue a.zs-wue-ring:hover .zs-wue-ring-titel .elementor-heading-title { color: var(--zs-akzent); }
/* gegen Quilly/Elementor: Linkfarbe (orange) in verlinkten Containern, Unterstreichung, Breite der Widgets in Zeilen-Containern */
body .zs-wue a.e-con .elementor-heading-title { color: var(--zs-titel) !important; text-decoration: none !important; }
body .zs-wue a.zs-wue-media .elementor-heading-title { color: #FFF !important; }
body .zs-wue a.zs-wue-media .zs-wue-kicker .elementor-heading-title { color: var(--zs-akzent-hell) !important; }
body .zs-wue a.zs-wue-media .zs-wue-media-knopf .elementor-heading-title { color: var(--zs-dunkel) !important; }
body .zs-wue a.e-con .zs-wue-kicker .elementor-heading-title { color: var(--zs-akzent) !important; }
body .zs-wue a.e-con .zs-wue-nr .elementor-heading-title { color: var(--zs-grau-hell) !important; }
body .zs-wue a.zs-wue-ressort:hover .zs-wue-ressort-titel .elementor-heading-title, body .zs-wue a.zs-wue-karte:hover .zs-wue-karte-titel .elementor-heading-title,
  body .zs-wue a.zs-wue-ring:hover .zs-wue-ring-titel .elementor-heading-title { color: var(--zs-akzent) !important; }
body .zs-wue a.e-con .elementor-widget-text-editor, body .zs-wue a.e-con .elementor-widget-text-editor p { color: var(--zs-text) !important; }
body .zs-wue a.zs-wue-media .elementor-widget-text-editor, body .zs-wue a.zs-wue-media .elementor-widget-text-editor p { color: rgba(255, 255, 255, .8) !important; }
body .zs-wue .zs-wue-nav li a { color: var(--zs-text) !important; } body .zs-wue .zs-wue-nav li a:hover { color: var(--zs-akzent) !important; }
body .zs-wue .zs-wue-nav li.current-menu-item > a { color: var(--zs-text) !important; font-weight: 700; }
body .zs-wue .zs-wue-nav li.current-menu-item > a::before { content: "→ " !important; display: inline !important; position: static !important; width: auto !important; height: auto !important;
  margin: 0 !important; background: none !important; border: 0 !important; transform: none !important; opacity: 1 !important; font: inherit !important; color: inherit !important; }
body .zs-wue .zs-wue-abschnitt-kopf > .elementor-widget, body .zs-wue .zs-wue-ring-text > .elementor-widget { --container-widget-width: auto; --container-widget-flex-grow: 0; width: auto; max-width: none; }
body .zs-wue .zs-wue-h1 .elementor-heading-title, body .zs-wue .zs-wue-h2 .elementor-heading-title { color: var(--zs-titel); } /* sonst Kit-Farbe (orange) */
body .zs-wue a.e-con .elementor-widget { text-decoration: none; } /* Quilly unterstreicht Widgets in Links */
body .zs-wue .zs-wue-ring-text > .zs-wue-mehr { --container-widget-flex-grow: 0; flex: 0 0 auto; }
body .zs-wue .zs-wue-abschnitt-kopf > .zs-wue-h2, body .zs-wue .zs-wue-ring-text > .zs-wue-ring-satz { --container-widget-flex-grow: 1; flex: 1 1 auto; }
@media (max-width: 1024px) { body .elementor-element.zs-wue > .e-con-inner { grid-template-columns: minmax(0, 1fr); gap: 64px; } body .elementor-element.zs-wue-seite { order: 2; max-width: 520px; } }
@media (max-width: 767px) { body .elementor-element.zs-wue { padding: 64px 20px 80px; } body .elementor-element.zs-wue-haupt { gap: 56px; }
  .zs-wue .zs-wue-h1 .elementor-heading-title { font-size: 34px; } .zs-wue .zs-wue-h2 .elementor-heading-title { font-size: 24px; }
  body .elementor-element.zs-wue-ressort { padding: 26px 22px 28px; } body .elementor-element.zs-wue-ring-text { flex-wrap: wrap; } }

/* Fokus sichtbar */
:where(a, button, input, select, textarea, summary):focus-visible { outline: 3px solid var(--zs-blau); outline-offset: 3px; }
.zs-auf-dunkel :focus-visible, #zs-hero :focus-visible, #zs-titelzone :focus-visible,
footer :focus-visible { outline-color: var(--zs-weiss); }

/* Breadcrumb */
.zs-breadcrumb { font: 400 14px/1.5 var(--zs-font-text); color: var(--zs-weiss); margin: 0 0 12px; }
.zs-breadcrumb a { color: var(--zs-weiss); text-decoration: underline; }
.zs-breadcrumb [aria-current] { opacity: .9; }

/* Tabellen (Inhaltsverzeichnis, Zielgruppenprofil) */
.zs-tabelle { width: 100%; border-collapse: collapse; font: 400 17px/1.5 var(--zs-font-text); color: var(--zs-text); }
.zs-tabelle th, .zs-tabelle td { border-bottom: 1px solid var(--zs-linie); padding: 12px 10px; text-align: left; vertical-align: top; overflow-wrap: anywhere; }
.zs-tabelle thead th { font-weight: 600; color: var(--zs-blau-dunkel); }
.zs-tabelle tbody th { font-weight: 600; color: var(--zs-blau-dunkel); width: 34%; }

/* Listen im Inhalt (Praxis-Punkte, Vorteile, Werbeformen) */
.zs-liste { margin: 0; padding-left: 1.2em; font: 400 18px/1.6 var(--zs-font-text); color: var(--zs-text); }
.zs-liste li { margin: 6px 0; }
@media (max-width: 767px) { .zs-liste { font-size: 17px; } }

/* Infobox und Zitat in Beiträgen */
.zs-box { border-left: 4px solid var(--zs-blau); background: var(--zs-hell); padding: 24px 28px; border-radius: 0 12px 12px 0; margin: 24px 0; }
.zs-box > :first-child { margin-top: 0; } .zs-box > :last-child { margin-bottom: 0; }
blockquote.zs-zitat, .entry-content blockquote { border-left: 4px solid var(--zs-blau-dunkel); margin: 28px 0; padding: 4px 0 4px 24px; font: italic 600 22px/1.4 var(--zs-font-titel); color: var(--zs-blau-dunkel); }
/* Beiträge: Beitragsbild in der Textspalte statt Quillys fast fensterbreitem Bild (1410 px, translateX(-50%); unsere Bilder sind 980 px breit) */
body.single-post.quilly-full-width-content .post-thumbnail { width: 100%; max-width: 100%; margin: 0 0 48px; transform: none; } /* zs-beitragsbild */
body.single-post.quilly-full-width-content .post-thumbnail img { display: block; width: 100%; height: auto; aspect-ratio: auto; border-radius: 14px; }
@media (max-width: 767px) { body.single-post.quilly-full-width-content .post-thumbnail { margin-bottom: 28px; } }
/* Beiträge: hervorgehobene Blöcke (Kasten .zs-box, Zitat) wie das Zitat im ursprünglichen Quilly-Beitrag – graue Fläche, runde Ecken, kursive Serifenschrift */
.single-post .entry-content .zs-box, .single-post .entry-content blockquote { display: block; box-sizing: border-box; margin: 40px 0; padding: 34px 40px; background: var(--zs-karte); border: 0; border-radius: 14px;
  font: italic 400 24px/1.25 var(--zs-font-titel); color: var(--zs-text-leise); text-transform: none; }
.single-post .entry-content .zs-box > strong:first-child { display: block; margin: 0 0 14px; font: inherit; font-size: 26px; color: var(--zs-text); }
.single-post .entry-content .zs-box ul { margin: 0; padding: 0 0 0 1.1em; list-style: disc; }
.single-post .entry-content .zs-box li { margin: 0 0 8px; padding: 0; font: inherit; font-size: 22px; line-height: 1.3; color: inherit; }
.single-post .entry-content .zs-box li:last-child { margin-bottom: 0; } .single-post .entry-content .zs-box li::marker { color: var(--zs-text-leise); }
.single-post .entry-content blockquote p { margin: 0; font: inherit; color: inherit; }
.single-post .entry-content blockquote p + p { margin-top: 14px; }
.single-post .entry-content blockquote span { font: normal 500 15px/1.6 var(--zs-font-text); color: var(--zs-text); }
@media (max-width: 767px) { .single-post .entry-content .zs-box, .single-post .entry-content blockquote { margin: 32px 0; padding: 24px 22px; font-size: 20px; }
  .single-post .entry-content .zs-box > strong:first-child { font-size: 22px; } .single-post .entry-content .zs-box li { font-size: 19px; } }

/* Ablauf (Dienstleistungen): dezente Ziffern per CSS-Zähler, kein zusätzlicher Text im DOM */
#zs-schritte { counter-reset: zs-s; }
[id^="zs-schritt-"] { counter-increment: zs-s; }
[id^="zs-schritt-"]::before { content: counter(zs-s); position: static; inset: auto; display: block;
  font: 600 48px/1 var(--zs-font-titel); color: rgba(255, 255, 255, .38); margin-bottom: 4px; }
@media (max-width: 767px) { [id^="zs-schritt-"]::before { font-size: 40px; } }

/* Formulare (Contact Form 7): Theme-Design (weiße Felder 58 px/Radius 14 auf dunklem Panel, Pillen-Button), keine sichtbaren Labels – Spec § 8.2 */
.zs-formular { background: var(--zs-blau-dunkel); color: var(--zs-weiss); border-radius: 14px; padding: 32px; }
@media (max-width: 767px) { .zs-formular { padding: 24px; } }
.zs-formular-hinweis { font: 400 14px/1.5 var(--zs-font-text); color: var(--zs-weiss); border: 1px dashed rgba(255, 255, 255, .5); padding: 12px; border-radius: 8px; }
.wpcf7 form { display: grid; gap: 16px; max-width: 100%; container-type: inline-size; font-family: var(--zs-font-text); }
.wpcf7 form p { margin: 0; }
.wpcf7 form br { display: none; }
.wpcf7 .zs-reihe { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 180px), 1fr)); gap: 16px; }
.wpcf7 .zs-reihe:has([data-name=PLZ]) { grid-template-columns: 130px minmax(0, 1fr); }
/* Stabile Breiten: Felder in .zs-reihe/.zs-felder fest platziert. Browser-Erweiterungen fügen beim Tippen eigene Elemente neben die Felder ein,
   LastPass z. B. <div data-lastpass-icon-root style="position:relative!important;width:0;height:0"> (inline !important, nicht überschreibbar).
   Im automatisch befüllten Raster belegt so ein Element eine Zelle und verschiebt alle Felder. Deshalb: Felder (span) per nth-of-type in feste Zellen,
   alles andere auf Zelle 1/1 (überlagert, belegt nichts). Spalten per Container-Abfrage auf die Formularbreite (form hat container-type). */
.wpcf7 form .zs-reihe, .wpcf7 form .zs-felder.zs-felder { position: relative; grid-template-columns: minmax(0, 1fr); }
.wpcf7 form .zs-reihe > :not(.wpcf7-form-control-wrap), .wpcf7 form .zs-felder > :not(.wpcf7-form-control-wrap) { grid-area: 1 / 1; position: absolute !important; }
.wpcf7 form .zs-reihe > .wpcf7-form-control-wrap, .wpcf7 form .zs-felder > .wpcf7-form-control-wrap { min-width: 0; }
.wpcf7 form .zs-reihe > span:nth-of-type(1), .wpcf7 form .zs-felder > span:nth-of-type(1) { grid-area: 1 / 1; }
.wpcf7 form .zs-reihe > span:nth-of-type(2), .wpcf7 form .zs-felder > span:nth-of-type(2) { grid-area: 2 / 1; }
.wpcf7 form .zs-felder > span:nth-of-type(3) { grid-area: 3 / 1; } .wpcf7 form .zs-felder > span:nth-of-type(4) { grid-area: 4 / 1; }
.wpcf7 form .zs-reihe:has([data-name=PLZ]) > span:nth-of-type(2) { grid-area: 1 / 2; }
@container (min-width: 376px) { .wpcf7 form .zs-reihe { grid-template-columns: repeat(2, minmax(0, 1fr)); } .wpcf7 form .zs-reihe > span:nth-of-type(2) { grid-area: 1 / 2; } }
@container (min-width: 456px) { .wpcf7 form .zs-felder.zs-felder { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .wpcf7 form .zs-felder > span:nth-of-type(2) { grid-area: 1 / 2; } .wpcf7 form .zs-felder > span:nth-of-type(3) { grid-area: 2 / 1; } .wpcf7 form .zs-felder > span:nth-of-type(4) { grid-area: 2 / 2; } }
/* Formular füllt immer die Breite seines Elementor-Containers, auch wenn Meldungen erscheinen */
.e-con > .elementor-widget-shortcode:has(.wpcf7), .e-con-inner > .elementor-widget-shortcode:has(.wpcf7) { width: 100%; max-width: 100%; align-self: stretch; }
.wpcf7, .wpcf7 form { width: 100%; box-sizing: border-box; }
.wpcf7 form .wpcf7-form-control-wrap input, .wpcf7 form .wpcf7-form-control-wrap select, .wpcf7 form .wpcf7-form-control-wrap textarea { max-width: 100%; }
.wpcf7 .wpcf7-form-control-wrap { display: block; }
.wpcf7 form .wpcf7-form-control-wrap input[type=text], .wpcf7 form .wpcf7-form-control-wrap input[type=email], .wpcf7 form .wpcf7-form-control-wrap input[type=tel],
.wpcf7 form .wpcf7-form-control-wrap select, .wpcf7 form .wpcf7-form-control-wrap textarea {
  width: 100%; box-sizing: border-box; min-height: 58px; padding: 10px 20px; color: var(--zs-text); background-color: var(--zs-weiss);
  border: 1px solid var(--zs-weiss); border-radius: 14px; font: 400 16px/1.4 var(--zs-font-text); box-shadow: none; }
.wpcf7 form .wpcf7-form-control-wrap input[type]::placeholder, .wpcf7 form .wpcf7-form-control-wrap textarea::placeholder { color: var(--zs-grau); opacity: 1; }
.wpcf7 form .wpcf7-form-control-wrap select:invalid, .wpcf7 form .wpcf7-form-control-wrap select:has(option[value=""]:checked) { color: var(--zs-grau); }
.wpcf7 form .wpcf7-form-control-wrap textarea { min-height: 160px; padding-top: 18px; resize: vertical; }
.wpcf7 form .wpcf7-form-control-wrap select { appearance: none; padding-right: 48px; background-repeat: no-repeat; background-position: right 20px center; background-size: 14px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%231D2430' stroke-width='1.8'/%3E%3C/svg%3E"); }
.wpcf7 form .wpcf7-form-control-wrap select option { color: var(--zs-text); background: var(--zs-weiss); }
.wpcf7 form .wpcf7-form-control-wrap input:focus, .wpcf7 form .wpcf7-form-control-wrap select:focus, .wpcf7 form .wpcf7-form-control-wrap textarea:focus {
  outline: 3px solid var(--zs-weiss); outline-offset: 3px; border-color: var(--zs-weiss); }
.wpcf7 form .wpcf7-form-control-wrap [aria-invalid=true] { border-color: var(--zs-fehler-hell); box-shadow: 0 0 0 3px var(--zs-fehler-hell); }
.wpcf7 form .wpcf7-not-valid-tip { position: static; display: block; margin-top: 8px; color: var(--zs-fehler-hell); font-size: 14px; font-weight: 500; }
.wpcf7 .wpcf7-acceptance .wpcf7-list-item { margin: 0; }
.wpcf7 form .wpcf7-acceptance label { display: flex; gap: .7rem; align-items: flex-start; font: 400 15px/1.5 var(--zs-font-text); color: var(--zs-weiss); }
.wpcf7 form .wpcf7-acceptance input[type=checkbox] { appearance: none; flex: 0 0 20px; width: 20px; height: 20px; margin: 2px 0 0; border: 1px solid rgba(255, 255, 255, .7);
  border-radius: 5px; background-color: rgba(255, 255, 255, .11); cursor: pointer; }
.wpcf7 form .wpcf7-acceptance input[type=checkbox]:checked { background-color: var(--zs-weiss); background-repeat: no-repeat; background-position: center; background-size: 14px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 10'%3E%3Cpath d='M1 5l3.5 3.5L11 1.5' fill='none' stroke='%230F2A44' stroke-width='2'/%3E%3C/svg%3E"); }
.wpcf7 .wpcf7-acceptance a { color: var(--zs-weiss); text-decoration: underline; }
.wpcf7 form input[type=submit], .wpcf7 form .wpcf7-submit { justify-self: start; cursor: pointer; font: 600 16px/1.3 var(--zs-font-text);
  min-height: 48px; padding: 14px 24px; border-radius: 30px; border: 2px solid var(--zs-weiss);
  background: var(--zs-weiss); color: var(--zs-blau-dunkel); transition: background-color .18s, border-color .18s; }
.wpcf7 form input[type=submit]:hover { background: var(--zs-hell); border-color: var(--zs-hell); }
.wpcf7 .wpcf7-spinner { margin: 0 12px; }
.wpcf7 form.wpcf7-form .wpcf7-response-output { margin: 0; padding: 14px 16px; border: 0; border-radius: 10px; background: rgba(255, 255, 255, .12); color: var(--zs-weiss); font-size: 16px; font-weight: 500; }
.wpcf7 form.wpcf7-form.invalid .wpcf7-response-output, .wpcf7 form.wpcf7-form.failed .wpcf7-response-output, .wpcf7 form.wpcf7-form.unaccepted .wpcf7-response-output { background: rgba(248, 161, 180, .16); color: var(--zs-fehler-hell); }
.wpcf7 form.wpcf7-form.sent .wpcf7-response-output { background: rgba(255, 255, 255, .12); color: var(--zs-weiss); }
.wpcf7 .hcaptcha-wrap, .wpcf7 .h-captcha { min-height: 1px; }

@media (prefers-reduced-motion: reduce) { * { transition: none !important; animation: none !important; scroll-behavior: auto !important; } }

/* Unterseiten Wirtschaft in Wien: nur Seiteninhalt, Header und Titelzone bleiben */
.zs-wiw.e-con { background: var(--zs-papier); color: var(--zs-text); }
.zs-wiw .e-con.zs-wiw-sektion { width: calc(100% - 48px); max-width: 1120px; margin: 0 auto; padding: 0 0 96px; box-sizing: border-box; gap: 24px; }
.zs-wiw > .e-con.zs-wiw-sektion:first-child { padding-top: 80px; }
.zs-wiw > .e-con.zs-wiw-sektion:last-child { padding-bottom: 120px; }
.zs-wiw .e-con.zs-wiw-split { --display: grid; display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 340px), 1fr)); gap: 72px; align-items: center; }
.zs-wiw .e-con.zs-wiw-split-unten { gap: 56px; align-items: end; }
.zs-wiw .e-con.zs-wiw-stapel { display: flex; flex-direction: column; gap: 22px; }
.zs-wiw .e-con.zs-wiw-zentriert { display: flex; flex-direction: column; align-items: center; text-align: center; gap: 20px; }
.zs-wiw .e-con.zs-wiw-zwei { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 340px), 1fr)); gap: 40px; align-items: start; }
.zs-wiw .e-con.zs-wiw-zwei-breit { grid-template-columns: repeat(auto-fit, minmax(min(100%, 400px), 1fr)); gap: 64px; }
.zs-wiw .e-con.zs-wiw-zwei-form { grid-template-columns: repeat(auto-fit, minmax(min(100%, 380px), 1fr)); gap: 80px; }
.zs-wiw .e-con.zs-wiw-buttons { display: flex; flex-direction: row; flex-wrap: wrap; gap: 12px; margin-top: 6px; }
.zs-wiw .zs-wiw-sr { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
.zs-wiw .elementor-widget { width: 100%; max-width: 100%; }
.zs-wiw .elementor-widget-button { width: auto; }
.zs-wiw .elementor-widget-text-editor { font: 400 16px/1.6 var(--zs-font-text); color: var(--zs-text); }
.zs-wiw .elementor-widget-text-editor p { margin: 0; }
.zs-wiw .elementor-widget-text-editor a { color: inherit; }
.zs-wiw .zs-wiw-kicker { margin: 0; font: 700 12px/1.4 var(--zs-font-text); letter-spacing: .14em; text-transform: uppercase; color: var(--zs-akzent); }
.zs-wiw .zs-wiw-kicker-hell { color: var(--zs-akzent-hell); }
.zs-wiw .zs-wiw-kicker-sand { color: var(--zs-akzent-hell); }
.zs-wiw .zs-wiw-kicker-blau { color: var(--zs-akzent); }
.zs-wiw .zs-wiw-h1 .elementor-heading-title { margin: 0; font: 400 56px/1.05 var(--zs-font-titel); text-transform: uppercase; color: var(--zs-titel); text-wrap: balance; }
.zs-wiw .zs-wiw-h1-klein .elementor-heading-title { font-size: 48px; line-height: 1.08; }
.zs-wiw .zs-wiw-h1-focus .elementor-heading-title { font-size: 38px; line-height: 1.12; hyphens: manual; }
.zs-wiw .elementor-heading-title { hyphens: auto; overflow-wrap: break-word; }
.zs-wiw .zs-wiw-h2 .elementor-heading-title { margin: 0; font: 400 34px/1.1 var(--zs-font-titel); text-transform: uppercase; color: var(--zs-titel); }
.zs-wiw .zs-wiw-h3 .elementor-heading-title { margin: 0; font: 400 26px/1.2 var(--zs-font-titel); text-transform: uppercase; color: inherit; }
.zs-wiw .elementor-heading-title a { color: inherit; }
.zs-wiw .zs-wiw-lead, .zs-wiw .zs-wiw-lead p { font-size: 17px; line-height: 1.6; color: var(--zs-text); }
.zs-wiw .zs-wiw-lead-dunkel, .zs-wiw .zs-wiw-lead-dunkel p { font-size: 19px; color: var(--zs-text); }
.zs-wiw .zs-wiw-hinweis p { font-size: 15px; color: var(--zs-text-leise); border-left: 2px solid var(--zs-trennlinie); padding-left: 16px; }
.zs-wiw .zs-wiw-mehr { font: 700 14px/1.4 var(--zs-font-text); text-decoration: underline; text-underline-offset: 4px; color: inherit; }
.zs-wiw .zs-wiw-btn .elementor-button { border-radius: 999px; padding: 14px 26px; font: 700 14px/1.3 var(--zs-font-text); text-transform: none; letter-spacing: 0;
  border: 1.5px solid var(--zs-knopf); background: var(--zs-knopf); color: #FFF; transition: background-color .18s, color .18s; }
.zs-wiw .zs-wiw-btn-dunkel .elementor-button:hover { background: var(--zs-knopf-hover); border-color: var(--zs-knopf-hover); color: #FFF; }
.zs-wiw .zs-wiw-btn-rahmen .elementor-button { background: transparent; color: var(--zs-dunkel); }
.zs-wiw .zs-wiw-btn-rahmen .elementor-button:hover { background: var(--zs-knopf); color: #FFF; }
.zs-wiw .zs-wiw-btn-hell .elementor-button { background: #FFF; border-color: #FFF; color: var(--zs-dunkel); }
.zs-wiw .zs-wiw-btn-hell .elementor-button:hover { background: var(--zs-karte); border-color: var(--zs-karte); color: var(--zs-dunkel); }
.zs-wiw .zs-wiw-btn-hell-rahmen .elementor-button { background: transparent; border-color: #FFF; color: #FFF; }
.zs-wiw .zs-wiw-btn-hell-rahmen .elementor-button:hover { background: rgba(255, 255, 255, .12); color: #FFF; }

/* WiW Ausgaben */
.zs-wiw .zs-wiw-cover { max-width: 560px; width: 100%; justify-self: center; }
.zs-wiw .elementor-element.elementor-widget.zs-wiw-cover { max-width: 400px; }  /* echtes Cover hochkant (Marko 04.11.2026); Elementor setzte sonst 100 % */
@media (max-width: 767px) { .zs-wiw .elementor-element.elementor-widget.zs-wiw-cover { max-width: 280px; } }
.zs-wiw .zs-wiw-cover img { width: 100%; height: auto; display: block; }
.zs-wiw .zs-wiw-cover-leer { aspect-ratio: 3 / 4; background: var(--zs-karte); border-radius: 6px; }
.zs-wiw .e-con.zs-wiw-zeilenkopf { display: flex; flex-direction: row; justify-content: space-between; align-items: flex-end; flex-wrap: wrap; gap: 24px;
  border-bottom: 2px solid var(--zs-linie-stark); padding-bottom: 18px; margin-bottom: 8px; }
.zs-wiw .zs-wiw-zeilenkopf > .elementor-widget { width: auto; }
.zs-wiw .zs-wiw-zeilenkopf-info { font: 600 13px/1.4 var(--zs-font-text); color: var(--zs-text-leise); }
.zs-wiw .zs-wiw-toc { list-style: none; margin: 0; padding: 0; }
.zs-wiw .zs-wiw-toc li { display: grid; grid-template-columns: 56px minmax(140px, 240px) 1fr; gap: 24px; padding: 22px 0; border-bottom: 1px solid var(--zs-trennlinie); align-items: baseline; }
.zs-wiw .zs-wiw-toc .zs-wiw-nr { font: 400 22px/1 var(--zs-font-titel); color: var(--zs-grau-hell); }
.zs-wiw .zs-wiw-toc-ressort { font: 700 12px/1.4 var(--zs-font-text); letter-spacing: .12em; text-transform: uppercase; color: var(--zs-akzent); }
.zs-wiw .zs-wiw-toc-thema { font: 400 21px/1.35 var(--zs-font-titel); color: var(--zs-titel); }
.zs-wiw .e-con.zs-wiw-karte-blau { background: var(--zs-dunkel); color: #FFF; border-radius: 16px; padding: 56px; gap: 40px; }
.zs-wiw .zs-wiw-karte-blau .elementor-widget-text-editor, .zs-wiw .zs-wiw-karte-blau .elementor-heading-title { color: #FFF; }
.zs-wiw .zs-wiw-karte-blau .elementor-widget-text-editor p { color: rgba(255, 255, 255, .88); }
.zs-wiw .zs-wiw-karte-blau .e-con.zs-wiw-stapel { gap: 14px; }

/* WiW Focus */
.zs-wiw .e-con.zs-wiw-themen { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 420px), 1fr)); border-top: 2px solid var(--zs-linie-stark); gap: 0 48px; }
.zs-wiw .e-con.zs-wiw-thema { display: flex; flex-direction: column; gap: 18px; padding: 40px 0 44px; border-bottom: 1px solid var(--zs-trennlinie); min-height: 260px; box-sizing: border-box; }
.zs-wiw .zs-wiw-thema .zs-wiw-nr { font: 400 15px/1 var(--zs-font-titel); color: var(--zs-grau-hell); }
.zs-wiw .zs-wiw-thema .zs-wiw-h2 .elementor-heading-title { font-size: 26px; line-height: 1.15; }
.zs-wiw .zs-wiw-thema .elementor-heading-title a:hover { color: var(--zs-akzent); }
.zs-wiw .zs-wiw-thema > .elementor-widget:last-child:not(:nth-child(3)) { margin-top: auto; }
.zs-wiw .e-con.zs-wiw-band { display: flex; flex-direction: row; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: 32px; background: var(--zs-dunkel); border-radius: 16px; padding: 44px 52px; }
.zs-wiw .zs-wiw-band > .elementor-widget { width: auto; }
.zs-wiw .zs-wiw-band-text .elementor-heading-title { margin: 0; max-width: 620px; font: 400 26px/1.25 var(--zs-font-titel); text-transform: uppercase; color: #FFF; }

/* WiW Mediadaten */
.zs-wiw .zs-wiw-fakten { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); border-top: 2px solid var(--zs-linie-stark); border-bottom: 1px solid var(--zs-trennlinie); }
.zs-wiw .zs-wiw-fakt { display: flex; flex-direction: column; gap: 10px; padding: 28px 24px; border-left: 1px solid var(--zs-trennlinie); }
.zs-wiw .zs-wiw-fakt:first-child { padding-left: 0; border-left: 0; }
.zs-wiw .zs-wiw-fakt-label { font: 700 11px/1.4 var(--zs-font-text); letter-spacing: .14em; text-transform: uppercase; color: var(--zs-akzent); }
.zs-wiw .zs-wiw-fakt-wert { font: 400 17px/1.4 var(--zs-font-titel); color: var(--zs-titel); }
.zs-wiw .zs-wiw-fakt-gross .zs-wiw-fakt-wert { font-size: 30px; line-height: 1.1; }
.zs-wiw .zs-wiw-fakt-offen .zs-wiw-fakt-wert { font-size: 20px; font-style: italic; color: var(--zs-text-leise); }
.zs-wiw .zs-wiw-nummern { list-style: none; margin: 0; padding: 0; }
.zs-wiw .zs-wiw-nummern li { display: grid; grid-template-columns: 44px 1fr; gap: 16px; padding: 20px 0; border-top: 1px solid var(--zs-trennlinie); align-items: baseline; }
.zs-wiw .zs-wiw-nummern .zs-wiw-nr { font: 400 16px/1 var(--zs-font-titel); color: var(--zs-grau-hell); }
.zs-wiw .zs-wiw-nr-text { display: flex; flex-direction: column; gap: 4px; }
.zs-wiw .zs-wiw-nr-titel { font: 400 20px/1.3 var(--zs-font-titel); text-transform: uppercase; color: var(--zs-titel); }
.zs-wiw .zs-wiw-nr-desc { font: 400 15px/1.5 var(--zs-font-text); color: var(--zs-text); }
.zs-wiw .e-con.zs-wiw-karte-dunkel { background: var(--zs-dunkel); color: #FFF; border-radius: 16px; padding: 44px; gap: 20px; position: sticky; top: 24px; }
.zs-wiw .zs-wiw-karte-dunkel .elementor-widget-text-editor, .zs-wiw .zs-wiw-karte-dunkel .elementor-heading-title { color: #FFF; }
.zs-wiw .zs-wiw-karte-dunkel .elementor-widget-text-editor p { color: rgba(255, 255, 255, .85); font-size: 15px; }
.zs-wiw .zs-wiw-karte-dunkel .elementor-widget-button { width: 100%; }
.zs-wiw .zs-wiw-karte-dunkel .zs-wiw-btn .elementor-button { width: 100%; justify-content: center; }

/* WiW Newsletter und Abo */
.zs-wiw .zs-wiw-liste-titel { margin-top: 10px !important; padding: 16px 0 6px; border-top: 2px solid var(--zs-linie-stark); font: 700 11px/1.4 var(--zs-font-text); letter-spacing: .14em; text-transform: uppercase; color: var(--zs-akzent); }
.zs-wiw .zs-wiw-zwei-form .zs-wiw-nummern li { grid-template-columns: 40px 1fr; gap: 12px; padding: 16px 0; border-top: 0; border-bottom: 1px solid var(--zs-trennlinie); }
.zs-wiw .zs-wiw-zwei-form .zs-wiw-nr-titel { text-transform: none; font-size: 19px; line-height: 1.35; }
.zs-wiw .zs-wiw-haken { list-style: none; margin: 10px 0 0; padding: 0; border-top: 2px solid var(--zs-linie-stark); }
.zs-wiw .zs-wiw-haken li { display: grid; grid-template-columns: 32px 1fr; gap: 12px; padding: 16px 0; border-bottom: 1px solid var(--zs-trennlinie); font: 400 18px/1.4 var(--zs-font-titel); color: var(--zs-text); }
.zs-wiw .zs-wiw-haken li::before { content: "\2713"; font: 700 15px/1.6 var(--zs-font-text); color: var(--zs-akzent); }
.zs-wiw .e-con.zs-wiw-karte-hellblau { background: var(--zs-karte); border-radius: 14px; padding: 24px 26px; gap: 8px; margin-top: 8px; }
.zs-wiw .zs-wiw-karte-hellblau .elementor-widget-text-editor p { font-size: 15px; color: var(--zs-text); }
.zs-wiw .zs-wiw-karte-hellblau a { color: var(--zs-akzent); }
.zs-wiw .e-con.zs-wiw-formular { background: var(--zs-karte); border-radius: 20px; padding: 40px; gap: 16px; color: var(--zs-text); }
.zs-wiw .zs-wiw-formular .zs-wiw-h3 .elementor-heading-title { font-size: 24px; margin-bottom: 8px; color: var(--zs-titel); }
.zs-wiw .zs-wiw-formular .wpcf7 form .wpcf7-form-control-wrap input[type=text], .zs-wiw .zs-wiw-formular .wpcf7 form .wpcf7-form-control-wrap input[type=email],
.zs-wiw .zs-wiw-formular .wpcf7 form .wpcf7-form-control-wrap input[type=tel], .zs-wiw .zs-wiw-formular .wpcf7 form .wpcf7-form-control-wrap select,
.zs-wiw .zs-wiw-formular .wpcf7 form .wpcf7-form-control-wrap textarea { border-color: #FFF; color: var(--zs-text); }
.zs-wiw .zs-wiw-formular .wpcf7 form .wpcf7-form-control-wrap input:focus, .zs-wiw .zs-wiw-formular .wpcf7 form .wpcf7-form-control-wrap select:focus,
.zs-wiw .zs-wiw-formular .wpcf7 form .wpcf7-form-control-wrap textarea:focus { outline: 2px solid var(--zs-akzent); outline-offset: 2px; border-color: var(--zs-dunkel); }
.zs-wiw .zs-wiw-formular .wpcf7 form .wpcf7-form-control-wrap [aria-invalid=true] { border-color: var(--zs-fehler); box-shadow: none; }
.zs-wiw .zs-wiw-formular .wpcf7 form .wpcf7-not-valid-tip { color: var(--zs-fehler); }
.zs-wiw .zs-wiw-formular .wpcf7 form .wpcf7-acceptance label, .zs-wiw .zs-wiw-formular .wpcf7 .wpcf7-acceptance a { color: var(--zs-text); }
.zs-wiw .zs-wiw-formular .wpcf7 form .wpcf7-acceptance input[type=checkbox] { border-color: var(--zs-grau-hell); background-color: #FFF; }
.zs-wiw .zs-wiw-formular .wpcf7 form .wpcf7-acceptance input[type=checkbox]:checked { background-color: var(--zs-knopf); border-color: var(--zs-knopf);
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 10'%3E%3Cpath d='M1 5l3.5 3.5L11 1.5' fill='none' stroke='white' stroke-width='2'/%3E%3C/svg%3E"); }
.zs-wiw .zs-wiw-formular .wpcf7 form input[type=submit], .zs-wiw .zs-wiw-formular .wpcf7 form .wpcf7-submit { background: var(--zs-knopf); border-color: var(--zs-knopf); color: #FFF; }
.zs-wiw .zs-wiw-formular .wpcf7 form input[type=submit]:hover { background: var(--zs-knopf-hover); border-color: var(--zs-knopf-hover); }
.zs-wiw .zs-wiw-formular .wpcf7 form.wpcf7-form .wpcf7-response-output { background: #FFF; color: var(--zs-text); }
.zs-wiw .zs-wiw-formular .wpcf7 form.wpcf7-form.invalid .wpcf7-response-output, .zs-wiw .zs-wiw-formular .wpcf7 form.wpcf7-form.failed .wpcf7-response-output,
.zs-wiw .zs-wiw-formular .wpcf7 form.wpcf7-form.unaccepted .wpcf7-response-output { background: var(--zs-fehler-flaeche); color: var(--zs-fehler); }
.zs-wiw .zs-wiw-formular .wpcf7 form.wpcf7-form.sent .wpcf7-response-output { background: var(--zs-karte); color: var(--zs-titel); }
.zs-wiw .zs-wiw-formular :focus-visible { outline-color: var(--zs-akzent); }

/* WiW Abo-Preise */
.zs-wiw .e-con.zs-wiw-pakete { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 300px), 1fr)); gap: 32px; align-items: stretch; }
.zs-wiw .e-con.zs-wiw-paket { display: flex; flex-direction: column; gap: 28px; background: var(--zs-karte); border-radius: 14px; overflow: hidden; text-align: center; padding-bottom: 40px; }
.zs-wiw .zs-wiw-paket > .elementor-element:not(:first-child) { padding-left: 36px; padding-right: 36px; box-sizing: border-box; }
.zs-wiw .e-con.zs-wiw-paket-top { background: #FFF; box-shadow: 0 24px 50px rgba(43, 43, 43, .08); }
.zs-wiw .zs-wiw-paket-kopf .elementor-heading-title { margin: 0; padding: 20px; background: var(--zs-dunkel); color: #FFF; font: 400 22px/1.2 var(--zs-font-titel); text-transform: uppercase; }
.zs-wiw .zs-wiw-paket-top .zs-wiw-paket-kopf .elementor-heading-title { background: var(--zs-knopf); }
.zs-wiw .zs-wiw-preis { font: italic 400 40px/1.1 var(--zs-font-titel); color: var(--zs-text-leise); }
.zs-wiw .zs-wiw-preis-info { margin-top: 6px !important; font: 400 14px/1.4 var(--zs-font-text); color: var(--zs-text-leise); }
.zs-wiw .zs-wiw-paket-liste { list-style: none; margin: 0; padding: 0; font: 400 16px/1.4 var(--zs-font-text); color: var(--zs-text); }
.zs-wiw .zs-wiw-paket-liste li { padding: 13px 0; border-bottom: 1px solid var(--zs-trennlinie); }
.zs-wiw .zs-wiw-paket > .elementor-widget-button { margin-top: auto; width: 100%; text-align: center; }
.zs-wiw .zs-wiw-zentriert .zs-wiw-h1 .elementor-heading-title { max-width: 820px; margin: 0 auto; }
.zs-wiw .zs-wiw-zentriert .zs-wiw-lead p { max-width: 560px; margin: 0 auto; }

/* Dienstleistungen (Handoff 7, Kopf Basic) */
.zs-wiw .zs-wiw-h1-dl .elementor-heading-title { font-size: 52px; line-height: 1.1; max-width: 900px; }
.zs-wiw .zs-wiw-lead-breit p { font-size: 18px; line-height: 1.65; max-width: 780px; }
.zs-wiw .zs-wiw-kicker-dunkel { color: var(--zs-text); }
.zs-wiw .e-con.zs-wiw-zentriert-eng { gap: 12px; }
.zs-wiw .zs-wiw-h2-gross .elementor-heading-title { font-size: 40px; }
.zs-wiw .e-con.zs-wiw-pakete-eng { grid-template-columns: repeat(auto-fit, minmax(min(100%, 250px), 1fr)); gap: 24px; margin-top: 12px; }
.zs-wiw .zs-wiw-pakete-eng .e-con.zs-wiw-paket { gap: 24px; padding-bottom: 36px; }
.zs-wiw .zs-wiw-pakete-eng .zs-wiw-paket > .elementor-element:not(:first-child) { padding-left: 32px; padding-right: 32px; }
.zs-wiw .zs-wiw-pakete-eng .zs-wiw-paket-kopf .elementor-heading-title { padding: 20px 32px; font-size: 21px; line-height: 1.25; }
.zs-wiw .zs-wiw-pakete-eng .zs-wiw-paket-top .zs-wiw-paket-kopf .elementor-heading-title { background: var(--zs-blau); }  /* Dienstleistungen: CI-Blau statt Orange (Marko, 29.10.2026) */
.zs-wiw .zs-wiw-paket-nr { display: block; margin-bottom: 4px; font: 700 11px/1.4 var(--zs-font-text); letter-spacing: .14em; opacity: .85; }
.zs-wiw .zs-wiw-paket-text p { min-height: 72px; font-size: 15px; text-align: center; }
.zs-wiw .zs-wiw-leistungen { list-style: none; margin: 0; padding: 0; font: 400 15px/1.4 var(--zs-font-text); text-align: left; }
.zs-wiw .zs-wiw-leistungen li { display: flex; justify-content: space-between; padding: 13px 0; border-bottom: 1px solid var(--zs-trennlinie); color: var(--zs-text); }
.zs-wiw .zs-wiw-leistungen li.nein { color: var(--zs-grau-hell); }
.zs-wiw .zs-wiw-leistungen b { font-weight: 700; }
.zs-wiw .zs-wiw-optional { text-align: center; font-size: 15px; color: var(--zs-text); }
.zs-wiw .zs-wiw-optional-marke { display: inline-block; margin-right: 10px; padding: 5px 12px; border: 1px solid var(--zs-trennlinie); border-radius: 999px;
  font: 700 11px/1.4 var(--zs-font-text); letter-spacing: .14em; text-transform: uppercase; color: var(--zs-akzent); }
.zs-wiw .zs-wiw-optional strong { color: var(--zs-text); font-weight: 600; }
.zs-wiw .zs-wiw-ablauf { list-style: none; margin: 4px 0 0; padding: 0; display: grid; grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); border-top: 2px solid var(--zs-linie-stark); }
.zs-wiw .zs-wiw-ablauf li { display: flex; flex-direction: column; gap: 12px; padding: 28px 28px 28px 0; border-bottom: 1px solid var(--zs-trennlinie); }
.zs-wiw .zs-wiw-ablauf-nr { font: 400 44px/1 var(--zs-font-titel); color: var(--zs-grau-hell); }
.zs-wiw .zs-wiw-ablauf-titel { font: 400 17px/1.3 var(--zs-font-titel); text-transform: uppercase; color: var(--zs-titel); overflow-wrap: break-word; }
.zs-wiw .zs-wiw-ablauf-text { font: 400 15px/1.55 var(--zs-font-text); color: var(--zs-text); }
.zs-wiw .e-con.zs-wiw-band-gross { padding: 48px 56px; }
.zs-wiw .zs-wiw-band .e-con.zs-wiw-stapel { gap: 10px; flex: 1 1 360px; max-width: 620px; }
.zs-wiw .zs-wiw-band-gross .zs-wiw-band-text .elementor-heading-title { font-size: 30px; line-height: 1.2; }
.zs-wiw .zs-wiw-band .elementor-widget-text-editor p { font-size: 15px; color: rgba(255, 255, 255, .8); }

@media (max-width: 1024px) {
  .zs-wiw .zs-wiw-h1 .elementor-heading-title { font-size: 44px; }
  .zs-wiw .e-con.zs-wiw-split, .zs-wiw .e-con.zs-wiw-zwei-form { gap: 48px; }
}
@media (max-width: 767px) {
  .zs-wiw .e-con.zs-wiw-sektion { width: calc(100% - 30px); padding-bottom: 64px; }
  .zs-wiw > .e-con.zs-wiw-sektion:first-child { padding-top: 56px; }
  .zs-wiw > .e-con.zs-wiw-sektion:last-child { padding-bottom: 80px; }
  .zs-wiw .zs-wiw-h1 .elementor-heading-title, .zs-wiw .zs-wiw-h1-klein .elementor-heading-title { font-size: 34px; }
  .zs-wiw .zs-wiw-h2 .elementor-heading-title { font-size: 27px; }
  .zs-wiw .zs-wiw-h2-gross .elementor-heading-title { font-size: 28px; }
  .zs-wiw .e-con.zs-wiw-band-gross { padding: 32px 24px; }
  .zs-wiw .zs-wiw-band-gross .zs-wiw-band-text .elementor-heading-title { font-size: 23px; }
  .zs-wiw .zs-wiw-ablauf li { padding-right: 0; }
  .zs-wiw .zs-wiw-h1-focus .elementor-heading-title { font-size: 30px; }
  .zs-wiw .zs-wiw-thema .zs-wiw-h2 .elementor-heading-title { font-size: 24px; }
  .zs-wiw .zs-wiw-btn .elementor-button-icon { display: none; }
  .zs-wiw .e-con.zs-wiw-split, .zs-wiw .e-con.zs-wiw-zwei-form, .zs-wiw .e-con.zs-wiw-zwei-breit { gap: 40px; }
  .zs-wiw .zs-wiw-toc li { grid-template-columns: 40px 1fr; gap: 6px 14px; }
  .zs-wiw .zs-wiw-toc-thema { grid-column: 2; font-size: 18px; }
  .zs-wiw .e-con.zs-wiw-karte-blau, .zs-wiw .e-con.zs-wiw-karte-dunkel, .zs-wiw .e-con.zs-wiw-band { padding: 32px 24px; }
  .zs-wiw .e-con.zs-wiw-karte-dunkel { position: static; }
  .zs-wiw .e-con.zs-wiw-thema { min-height: 0; padding: 28px 0 32px; }
  .zs-wiw .zs-wiw-fakt { padding: 20px 0; border-left: 0; border-top: 1px solid var(--zs-trennlinie); }
  .zs-wiw .zs-wiw-fakt:first-child { border-top: 0; }
  .zs-wiw .e-con.zs-wiw-formular { padding: 28px 20px; }
  .zs-wiw .zs-wiw-paket > .elementor-element:not(:first-child) { padding-left: 24px; padding-right: 24px; }
}

/* Startseite: Abo, Werbetreibende, Newsletter */
.e-con.zs-st { padding: 0; gap: 0; color: var(--zs-text); }
.zs-st .e-con.zs-st-innen { width: calc(100% - 48px); max-width: 1120px; margin: 0 auto; padding: 0; box-sizing: border-box; }
.zs-st .elementor-widget { width: 100%; max-width: 100%; }
.zs-st .elementor-widget-button { width: auto; }
.zs-st .elementor-widget-text-editor { font: 400 16px/1.6 var(--zs-font-text); }
.zs-st .elementor-widget-text-editor p { margin: 0; }
.zs-st .elementor-heading-title { margin: 0; font-family: var(--zs-font-titel); font-weight: 400; text-transform: uppercase; letter-spacing: 0;
  text-wrap: balance; overflow-wrap: break-word; hyphens: manual; }
.zs-st .zs-st-kicker { margin: 0; font: 700 12px/1.4 var(--zs-font-text); letter-spacing: .14em; text-transform: uppercase; }
.zs-st .zs-st-btn .elementor-button { border: 0; border-radius: 999px; padding: 16px 30px; font: 700 15px/1.3 var(--zs-font-text); text-transform: none; letter-spacing: 0;
  transition: background-color .18s, color .18s; }
.zs-st .zs-st-btn .elementor-button-icon { display: none; }
.zs-st .zs-st-btn-hell .elementor-button { background: #FFF; color: var(--zs-dunkel); }
.zs-st .zs-st-btn-hell .elementor-button:hover { background: var(--zs-karte); color: var(--zs-dunkel); }
.zs-st .zs-st-btn-link .elementor-button { padding: 0; background: none; color: #FFF; font-size: 14px; text-decoration: underline; text-underline-offset: 4px; }
.zs-st .zs-st-btn-link .elementor-button:hover { background: none; color: var(--zs-akzent-hell); }
.zs-st .zs-st-btn-dunkel .elementor-button { padding: 16px 32px; background: var(--zs-knopf); color: #FFF; }
.zs-st .zs-st-btn-dunkel .elementor-button:hover { background: var(--zs-knopf-hover); color: #FFF; }

.e-con.zs-st-abo { padding: 104px 0; overflow: hidden; color: #FFF;
  background: radial-gradient(ellipse 70% 100% at 75% 40%, var(--zs-blau) 0%, var(--zs-blau-dunkel) 55%, var(--zs-nachtblau) 100%); }
.zs-st-abo .e-con.zs-st-innen { --display: grid; display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 420px), 1fr)); gap: 56px; align-items: center; }
.zs-st-abo .e-con.zs-st-stapel { display: flex; flex-direction: column; gap: 24px; }
.zs-st-abo .zs-st-marken { margin: 0; display: flex; gap: 10px; align-items: center; flex-wrap: wrap; }
.zs-st-abo .zs-st-pille { padding: 6px 12px; border-radius: 999px; background: var(--zs-blau-hell); font: 700 11px/1.4 var(--zs-font-text); letter-spacing: .14em; text-transform: uppercase; color: #FFF; }
.zs-st-abo .zs-st-kicker { color: var(--zs-akzent-hell); }
.zs-st-abo .zs-st-h2 .elementor-heading-title { font-size: 50px; line-height: 1.08; color: #FFF; }
.zs-st-abo .zs-st-lead p { max-width: 520px; font-size: 18px; color: rgba(255, 255, 255, .88); text-wrap: pretty; }
.zs-st-abo .zs-st-formate { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); max-width: 520px; margin: 0; padding: 0; list-style: none;
  border-top: 1px solid rgba(255, 255, 255, .3); border-bottom: 1px solid rgba(255, 255, 255, .3); }
.zs-st-abo .zs-st-formate li { display: flex; flex-direction: column; gap: 4px; padding: 16px; border-left: 1px solid rgba(255, 255, 255, .3); }
.zs-st-abo .zs-st-formate li:first-child { padding-left: 0; border-left: 0; }
.zs-st-abo .zs-st-formate b { font: 400 18px/1.2 var(--zs-font-titel); text-transform: uppercase; color: #FFF; }
.zs-st-abo .zs-st-formate li:last-child b { color: var(--zs-akzent-hell); }
.zs-st-abo .zs-st-formate span { font: 400 13px/1.4 var(--zs-font-text); color: rgba(255, 255, 255, .75); }
.zs-st-abo .e-con.zs-st-buttons { display: flex; flex-direction: row; flex-wrap: wrap; gap: 20px; align-items: center; margin-top: 6px; }
.zs-st-abo .elementor-element.elementor-widget.zs-st-cover { max-width: 400px; justify-self: center; }  /* echtes Cover hochkant: 400 statt 540 px (Marko 04.11.2026) */
.zs-st-abo .zs-st-cover img { width: 100%; height: auto; display: block; }
@media (max-width: 767px) { .zs-st-abo .elementor-element.elementor-widget.zs-st-cover { max-width: 280px; } }

.e-con.zs-st-werben { padding: 96px 0; background: var(--zs-papier); }
.zs-st-werben .e-con.zs-st-innen { --display: grid; display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 360px), 1fr));
  border-top: 2px solid var(--zs-linie-stark); border-bottom: 1px solid var(--zs-trennlinie); }
.zs-st-werben .e-con.zs-st-karte { display: flex; flex-direction: column; gap: 16px; padding: 40px 36px 44px; border-left: 1px solid var(--zs-trennlinie);
  background: var(--zs-karte); color: inherit; text-decoration: none; transition: background-color .18s; }
.zs-st-werben .e-con.zs-st-karte:first-child { border-left: 0; }
.zs-st-werben .e-con.zs-st-karte:hover { background: var(--zs-karte-hover); }
.zs-st-werben .e-con.zs-st-karte:focus-visible { outline: 3px solid var(--zs-akzent); outline-offset: 2px; }
.zs-st-werben .zs-st-kicker { color: var(--zs-akzent); }
.zs-st-werben .zs-st-h3 .elementor-heading-title { font-size: 32px; line-height: 1.1; color: var(--zs-titel); }
.zs-st-werben .zs-st-text p { max-width: 420px; color: var(--zs-text); }
.zs-st-werben .zs-st-mehr { margin: 8px 0 0; font: 700 14px/1.4 var(--zs-font-text); color: var(--zs-text); }

.e-con.zs-st-nl { padding: 120px 0 128px; }
.zs-st-nl .e-con.zs-st-innen { max-width: 820px; display: flex; flex-direction: column; align-items: center; gap: 22px; text-align: center; }
.zs-st-nl .zs-st-kicker { color: var(--zs-text); }
.zs-st-nl .zs-st-h2 .elementor-heading-title { font-size: 48px; line-height: 1.1; color: var(--zs-titel); }
.zs-st-nl .zs-st-lead p { max-width: 540px; margin: 0 auto; font-size: 17px; color: var(--zs-text); }
.zs-st-nl .e-con.zs-st-aktion { display: flex; flex-direction: column; align-items: center; gap: 12px; margin-top: 10px; }
.zs-st-nl .zs-st-klein { font-size: 13px; color: var(--zs-text-leise); }

@media (max-width: 1024px) {
  .zs-st-abo .zs-st-h2 .elementor-heading-title { font-size: 42px; }
  .zs-st-nl .zs-st-h2 .elementor-heading-title { font-size: 40px; }
}
@media (max-width: 767px) {
  .zs-st .e-con.zs-st-innen { width: calc(100% - 30px); }
  .e-con.zs-st-abo { padding: 72px 0; }
  .zs-st-abo .e-con.zs-st-innen { gap: 40px; }
  .zs-st-abo .zs-st-h2 .elementor-heading-title { font-size: 34px; }
  .zs-st-abo .zs-st-lead p { font-size: 17px; }
  .zs-st-abo .zs-st-formate li { padding: 14px 10px; }
  .zs-st-abo .zs-st-formate li:first-child { padding-left: 0; }
  .zs-st-abo .zs-st-formate b { font-size: 16px; }
  .e-con.zs-st-werben { padding: 64px 0; }
  .zs-st-werben .e-con.zs-st-karte { padding: 32px 24px 36px; border-left: 0; border-top: 1px solid var(--zs-trennlinie); }
  .zs-st-werben .e-con.zs-st-karte:first-child { border-top: 0; }
  .zs-st-werben .zs-st-h3 .elementor-heading-title { font-size: 26px; }
  .e-con.zs-st-nl { padding: 80px 0 88px; }
  .zs-st-nl .zs-st-h2 .elementor-heading-title { font-size: 30px; }
}

/* ===== Farbumstellung 03.11.2026: Elementor-Einstellungen mit Altfarben per CSS überschreiben ===== */

/* Startseite #18 und Footer #34: Bilder, Overlays, Abschnittsfarben, Knopffarben und Footer-Hover stehen seit 04.11.2026 in den
   Elementor-Daten (Editor zeigt die echten Werte, Änderungen dort wirken). Hier bleibt nur, wofür Elementor kein Feld hat: */
/* Footer 92e11e4: Linkfarbe beim Hover im Textwidget (Text-Editor-Widget hat keine Link-Hover-Farbe) */
body .elementor-34 .elementor-element-92e11e4 .elementor-widget-text-editor a:hover { color: var(--zs-blau-zart) !important; }

/* Header 2 (#33): Icons und Menü-Hover auf Blau hell statt Orange */
body .elementor-33 .elementor-element a:hover i, body .elementor-33 .elementor-element a:hover svg { color: var(--zs-blau-zart); fill: var(--zs-blau-zart); }

/* Mobile Navigation (Quilly-Panel): Markenblau, Schrift weiß (To-do „Mobile Navigation: ebenfalls blau“) */
.quilly-mobile-nav { background-color: var(--zs-blau); color: var(--zs-weiss); }
.quilly-mobile-nav .mobile-nav-tabs, .quilly-mobile-nav .mobile-nav-tabs ul li:before { background-color: var(--zs-blau-dunkel); }
.quilly-mobile-nav .mobile-nav-tabs ul li, .quilly-mobile-nav .mobile-nav-tabs ul li i { color: var(--zs-weiss); }
.quilly-mobile-nav .mobile-navigation ul > li.menu-item > a,
.quilly-mobile-nav .mobile-navigation ul > li.menu-item > a span.text-link,
.quilly-mobile-nav .mobile-navigation ul > li.menu-item span.more-link,
.quilly-mobile-nav .mobile-navigation .dropdown-toggle,
.quilly-mobile-nav .mobile-navigation ul > li.menu-item button::after,
.quilly-mobile-nav .mobile-nav-close, .quilly-mobile-nav .mobile-nav-close i { color: var(--zs-weiss); }
.quilly-mobile-nav .mobile-navigation ul ul.sub-menu > li.menu-item > a { color: rgba(255, 255, 255, .82); }
.quilly-mobile-nav .mobile-navigation ul > li.menu-item > a:hover,
.quilly-mobile-nav .mobile-navigation ul > li.menu-item > a:hover i,
.quilly-mobile-nav .mobile-navigation ul > li.menu-item span.more-link i,
.quilly-mobile-nav .mobile-navigation .dropdown-toggle:hover,
.quilly-mobile-nav .mobile-navigation ul ul.sub-menu > li.menu-item.current-menu-item a,
.quilly-mobile-nav .mobile-navigation ul > li.menu-item.current-menu-item > a { color: var(--zs-blau-zart); }
.quilly-mobile-nav .mobile-navigation ul > li.menu-item > a .menu-title:before { background-color: var(--zs-blau-zart); }
.quilly-mobile-nav .mobile-navigation ul li { border-color: rgba(255, 255, 255, .18); }

/* Titelzone #102: Linie unten Anthrazit steht in der Vorlage selbst (Rahmen, seit 04.11.2026); die WiW-Regel unten setzt sie dort auf Rot */

/* Ab hier: WiW-Varianten gemeinsamer Vorlagen (Titelzone #102, Header #33, Footer #34). Bleiben bewusst CSS, weil eine Elementor-Vorlage
   auf allen Seiten gleich ist und Elementor sie nicht je nach Seite anders einstellen kann (Ausnahme nur über eigene WiW-Vorlagen). */
/* Titelzone #102 auf den WiW-Seiten: Zeitungsbild in der WiW-Farbwelt (Variante B) + WiW-Logo negativ über dem Titel, rote Linie.
   Logo als ::before des Titel-Widgets im Textfluss: Logo, Titel und Breadcrumb bilden eine Gruppe, die Elementor (justify-content: center)
   senkrecht mittig setzt – auch bei langen Titeln und jeder Breite (Marko 03.11.2026: „nicht so schön zentriert“). Vorlage #102 bleibt unverändert. */
body.page-id-4616 .elementor-102 .elementor-element.elementor-element-6da91b3, body.parent-pageid-4616 .elementor-102 .elementor-element.elementor-element-6da91b3, body.parent-pageid-4617 .elementor-102 .elementor-element.elementor-element-6da91b3, body.parent-pageid-4618 .elementor-102 .elementor-element.elementor-element-6da91b3, body.parent-pageid-4621 .elementor-102 .elementor-element.elementor-element-6da91b3 { background-image: url(/wp-content/uploads/2026/11/titelzone-zeitungen-wiw-1920.webp) !important; background-size: cover !important; background-position: center center !important;
  background-repeat: no-repeat !important; background-color: var(--zs-text) !important;
  padding-top: 0 !important; padding-bottom: 0 !important; min-height: 440px !important; border-bottom: 4px solid var(--zs-rot); }  /* Desktop wie ZS-Titelzone: 440 px, Innenabstand 120/30 kommt von #102 auf .e-con-inner (Marko 04.11.2026) */
body.page-id-4616 .elementor-102 .elementor-element.elementor-element-6da91b3::before, body.parent-pageid-4616 .elementor-102 .elementor-element.elementor-element-6da91b3::before, body.parent-pageid-4617 .elementor-102 .elementor-element.elementor-element-6da91b3::before, body.parent-pageid-4618 .elementor-102 .elementor-element.elementor-element-6da91b3::before, body.parent-pageid-4621 .elementor-102 .elementor-element.elementor-element-6da91b3::before { background-color: transparent !important; border-color: transparent !important; }  /* Elementor legt den Rahmen der Vorlage auch auf die Overlay-Ebene */
body.page-id-4616 .elementor-102 .elementor-element.elementor-element-cd0654c::before, body.parent-pageid-4616 .elementor-102 .elementor-element.elementor-element-cd0654c::before, body.parent-pageid-4617 .elementor-102 .elementor-element.elementor-element-cd0654c::before, body.parent-pageid-4618 .elementor-102 .elementor-element.elementor-element-cd0654c::before, body.parent-pageid-4621 .elementor-102 .elementor-element.elementor-element-cd0654c::before { content: ""; display: block; width: 300px; max-width: 80%; aspect-ratio: 1022 / 211; margin: 0 auto 24px;
  background: url(/wp-content/uploads/2026/11/wirtschaft-in-wien-logo-negativ.png) center / contain no-repeat; }
body.page-id-4616 .elementor-102 .elementor-element.elementor-element-cd0654c .quilly-woocommerce-title, body.parent-pageid-4616 .elementor-102 .elementor-element.elementor-element-cd0654c .quilly-woocommerce-title, body.parent-pageid-4617 .elementor-102 .elementor-element.elementor-element-cd0654c .quilly-woocommerce-title, body.parent-pageid-4618 .elementor-102 .elementor-element.elementor-element-cd0654c .quilly-woocommerce-title, body.parent-pageid-4621 .elementor-102 .elementor-element.elementor-element-cd0654c .quilly-woocommerce-title { font-size: 72px !important; line-height: 1.05 !important; text-wrap: balance; }
@media (max-width: 1024px) { body.page-id-4616 .elementor-102 .elementor-element.elementor-element-6da91b3, body.parent-pageid-4616 .elementor-102 .elementor-element.elementor-element-6da91b3, body.parent-pageid-4617 .elementor-102 .elementor-element.elementor-element-6da91b3, body.parent-pageid-4618 .elementor-102 .elementor-element.elementor-element-6da91b3, body.parent-pageid-4621 .elementor-102 .elementor-element.elementor-element-6da91b3 { padding-top: 70px !important; padding-bottom: 56px !important; min-height: 460px !important; }
  body.page-id-4616 .elementor-102 .elementor-element.elementor-element-cd0654c::before, body.parent-pageid-4616 .elementor-102 .elementor-element.elementor-element-cd0654c::before, body.parent-pageid-4617 .elementor-102 .elementor-element.elementor-element-cd0654c::before, body.parent-pageid-4618 .elementor-102 .elementor-element.elementor-element-cd0654c::before, body.parent-pageid-4621 .elementor-102 .elementor-element.elementor-element-cd0654c::before { width: 340px; margin-bottom: 32px; } body.page-id-4616 .elementor-102 .elementor-element.elementor-element-cd0654c .quilly-woocommerce-title, body.parent-pageid-4616 .elementor-102 .elementor-element.elementor-element-cd0654c .quilly-woocommerce-title, body.parent-pageid-4617 .elementor-102 .elementor-element.elementor-element-cd0654c .quilly-woocommerce-title, body.parent-pageid-4618 .elementor-102 .elementor-element.elementor-element-cd0654c .quilly-woocommerce-title, body.parent-pageid-4621 .elementor-102 .elementor-element.elementor-element-cd0654c .quilly-woocommerce-title { font-size: 50px !important; } }
@media (max-width: 767px) { body.page-id-4616 .elementor-102 .elementor-element.elementor-element-6da91b3, body.parent-pageid-4616 .elementor-102 .elementor-element.elementor-element-6da91b3, body.parent-pageid-4617 .elementor-102 .elementor-element.elementor-element-6da91b3, body.parent-pageid-4618 .elementor-102 .elementor-element.elementor-element-6da91b3, body.parent-pageid-4621 .elementor-102 .elementor-element.elementor-element-6da91b3 { padding-top: 70px !important; padding-bottom: 44px !important; min-height: 360px !important; }
  body.page-id-4616 .elementor-102 .elementor-element.elementor-element-cd0654c::before, body.parent-pageid-4616 .elementor-102 .elementor-element.elementor-element-cd0654c::before, body.parent-pageid-4617 .elementor-102 .elementor-element.elementor-element-cd0654c::before, body.parent-pageid-4618 .elementor-102 .elementor-element.elementor-element-cd0654c::before, body.parent-pageid-4621 .elementor-102 .elementor-element.elementor-element-cd0654c::before { width: 240px; margin-bottom: 24px; } body.page-id-4616 .elementor-102 .elementor-element.elementor-element-cd0654c .quilly-woocommerce-title, body.parent-pageid-4616 .elementor-102 .elementor-element.elementor-element-cd0654c .quilly-woocommerce-title, body.parent-pageid-4617 .elementor-102 .elementor-element.elementor-element-cd0654c .quilly-woocommerce-title, body.parent-pageid-4618 .elementor-102 .elementor-element.elementor-element-cd0654c .quilly-woocommerce-title, body.parent-pageid-4621 .elementor-102 .elementor-element.elementor-element-cd0654c .quilly-woocommerce-title { font-size: 36px !important; } }

/* Sticky-Header nur auf den WiW-Seiten rot (Marko 03.11.2026); Rot mit 20 % Anthrazit, weiße Schrift 5,6 : 1 */
body.page-id-4616 .elementor-33 .elementor-element.header-absolute.zs-header-fest, body.parent-pageid-4616 .elementor-33 .elementor-element.header-absolute.zs-header-fest, body.parent-pageid-4617 .elementor-33 .elementor-element.header-absolute.zs-header-fest, body.parent-pageid-4618 .elementor-33 .elementor-element.header-absolute.zs-header-fest, body.parent-pageid-4621 .elementor-33 .elementor-element.header-absolute.zs-header-fest { background-color: var(--zs-fehler) !important; box-shadow: 0 8px 24px rgba(43, 43, 43, .3); }
/* WiW-Seiten: Menü-Hover/aktiver Eintrag (Quilly nutzt dafür Kit „Primary“) und Newsletter-Knopf im Footer rot (Marko 03.11.2026) */
body.page-id-4616 .elementor-33 .main-navigation, body.parent-pageid-4616 .elementor-33 .main-navigation, body.parent-pageid-4617 .elementor-33 .main-navigation, body.parent-pageid-4618 .elementor-33 .main-navigation, body.parent-pageid-4621 .elementor-33 .main-navigation { --e-global-color-primary: var(--zs-fehler); }
/* WiW-Seiten: Footer-Hintergrund Dunkelrot (Markos Bild ohne Zeitungen, 03.11.2026) */
body.page-id-4616 .elementor-34 .elementor-element.elementor-element-92e11e4, body.parent-pageid-4616 .elementor-34 .elementor-element.elementor-element-92e11e4, body.parent-pageid-4617 .elementor-34 .elementor-element.elementor-element-92e11e4, body.parent-pageid-4618 .elementor-34 .elementor-element.elementor-element-92e11e4, body.parent-pageid-4621 .elementor-34 .elementor-element.elementor-element-92e11e4 { background-color: #271D1E !important; background-image: url(/wp-content/uploads/2026/11/footer-hintergrund-wiw-ohne-zeitungen-1920.webp) !important; background-position: center bottom !important; }
body.page-id-4616 .elementor-34 .elementor-element-92e11e4 .elementor-icon-list-item:hover .elementor-icon-list-text, body.page-id-4616 .elementor-34 .elementor-element-92e11e4 .elementor-icon-list-item a:hover .elementor-icon-list-text, body.page-id-4616 .elementor-34 .elementor-element-92e11e4 .elementor-widget-text-editor a:hover, body.parent-pageid-4616 .elementor-34 .elementor-element-92e11e4 .elementor-icon-list-item:hover .elementor-icon-list-text, body.parent-pageid-4616 .elementor-34 .elementor-element-92e11e4 .elementor-icon-list-item a:hover .elementor-icon-list-text, body.parent-pageid-4616 .elementor-34 .elementor-element-92e11e4 .elementor-widget-text-editor a:hover, body.parent-pageid-4617 .elementor-34 .elementor-element-92e11e4 .elementor-icon-list-item:hover .elementor-icon-list-text, body.parent-pageid-4617 .elementor-34 .elementor-element-92e11e4 .elementor-icon-list-item a:hover .elementor-icon-list-text, body.parent-pageid-4617 .elementor-34 .elementor-element-92e11e4 .elementor-widget-text-editor a:hover, body.parent-pageid-4618 .elementor-34 .elementor-element-92e11e4 .elementor-icon-list-item:hover .elementor-icon-list-text, body.parent-pageid-4618 .elementor-34 .elementor-element-92e11e4 .elementor-icon-list-item a:hover .elementor-icon-list-text, body.parent-pageid-4618 .elementor-34 .elementor-element-92e11e4 .elementor-widget-text-editor a:hover, body.parent-pageid-4621 .elementor-34 .elementor-element-92e11e4 .elementor-icon-list-item:hover .elementor-icon-list-text, body.parent-pageid-4621 .elementor-34 .elementor-element-92e11e4 .elementor-icon-list-item a:hover .elementor-icon-list-text, body.parent-pageid-4621 .elementor-34 .elementor-element-92e11e4 .elementor-widget-text-editor a:hover { color: var(--zs-fehler-hell) !important; }
body.page-id-4616 .elementor-34 .elementor-element.elementor-element-71f8418 .elementor-button, body.parent-pageid-4616 .elementor-34 .elementor-element.elementor-element-71f8418 .elementor-button, body.parent-pageid-4617 .elementor-34 .elementor-element.elementor-element-71f8418 .elementor-button, body.parent-pageid-4618 .elementor-34 .elementor-element.elementor-element-71f8418 .elementor-button, body.parent-pageid-4621 .elementor-34 .elementor-element.elementor-element-71f8418 .elementor-button { background-color: var(--zs-fehler) !important; border-color: var(--zs-fehler) !important; }
body.page-id-4616 .elementor-34 .elementor-element.elementor-element-71f8418 .elementor-button:is(:hover, :focus), body.parent-pageid-4616 .elementor-34 .elementor-element.elementor-element-71f8418 .elementor-button:is(:hover, :focus), body.parent-pageid-4617 .elementor-34 .elementor-element.elementor-element-71f8418 .elementor-button:is(:hover, :focus), body.parent-pageid-4618 .elementor-34 .elementor-element.elementor-element-71f8418 .elementor-button:is(:hover, :focus), body.parent-pageid-4621 .elementor-34 .elementor-element.elementor-element-71f8418 .elementor-button:is(:hover, :focus) { background-color: var(--zs-text) !important; border-color: var(--zs-text) !important; }

/* Quilly-Theme: fest eingetragene Demo-Farben (Orange, Braun, Beige) */
.categories-link a:hover, .widget.widget_tag_cloud .tagcloud a:hover, .widget.widget_tag_cloud .wp-block-tag-cloud a:hover { color: var(--zs-weiss); background-color: var(--zs-blau); border-color: var(--zs-blau); }
.gradient-text1, .gradient-text2 { background: linear-gradient(180deg, var(--zs-blau-dunkel) 0%, var(--zs-blau-hell) 100%); -webkit-background-clip: text; background-clip: text; }
.vertical-navigation .vertical-menu .menu { background-color: var(--zs-papier); }
.quilly-event.quilly-list-wrapper .object-loop-title a:hover { color: var(--zs-blau); }
.elementor-widget-quilly-services-grid .service-icon i, .elementor-widget-quilly-service-panel .service-icon i { color: var(--zs-blau); }
.elementor-widget-quilly-services-grid .service-icon svg path, .elementor-widget-quilly-service-panel .service-icon svg path { fill: var(--zs-blau); }
.elementor-widget-quilly-services-grid .object-loop-exerpt, .elementor-widget-quilly-service-panel .object-loop-exerpt { color: var(--zs-text); }
.elementor-widget-quilly-services-grid .quilly-item.service:hover .service-icon { background-color: var(--zs-blau); border-color: var(--zs-blau); }
.elementor-widget-quilly-services-grid .quilly-item.service:hover .object-loop-title a { color: var(--zs-blau-hell); }
.elementor-widget-quilly-pricing .elementor-price-table__subtitle { color: var(--zs-titel); }
.text-shadow { -webkit-text-fill-color: var(--zs-blau); }

/* Von Hand gepflegte Nachträge (Handoffs 12/13, 03.11.2026). design.py hängt diese Datei unverändert an zs-design.css an.
   Neue Regeln hier eintragen, nicht direkt in zs-design.css – die wird bei jedem Lauf neu erzeugt. */
/* Dienstleistungen v2 (Handoff 12 „Dienstleistungen v2“, Corporate Publishing, 03.11.2026) */
.zs-wiw .e-con.zs-dl-buttons { gap: 20px; align-items: center; margin-top: 4px; }
.zs-wiw .zs-dl-buttons > .elementor-widget { width: auto; }
.zs-wiw .zs-dl-text p { font-size: 16px; line-height: 1.7; color: var(--zs-text); }
.zs-wiw .e-con.zs-dl-zwei { --display: grid; display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 420px), 1fr)); gap: 24px; align-items: stretch; }
.zs-wiw .e-con.zs-dl-linie { gap: 18px; padding-top: 24px; border-top: 2px solid var(--zs-linie-stark); }
.zs-wiw .e-con.zs-dl-karte { gap: 18px; padding: 36px 36px 40px; background: var(--zs-weiss); border-radius: 14px; }
.zs-wiw .zs-dl-karte .zs-wiw-h3 .elementor-heading-title { font-size: 24px; hyphens: auto; overflow-wrap: break-word; }
.zs-wiw .e-con.zs-dl-sektion-weit { gap: 36px; }
.zs-wiw .e-con.zs-dl-intro { --display: grid; display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 420px), 1fr)); gap: 24px 64px; align-items: start;
  padding-top: 24px; border-top: 2px solid var(--zs-linie-stark); }
.zs-wiw .zs-dl-intro .zs-wiw-h2 .elementor-heading-title { font-size: 36px; overflow-wrap: break-word; }
.zs-wiw .zs-dl-bausteine-kopf .elementor-heading-title { font-size: 24px; padding-bottom: 14px; border-bottom: 1px solid var(--zs-trennlinie); }
.zs-wiw .zs-dl-bausteine { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(auto-fill, minmax(min(100%, 240px), 1fr)); }
.zs-wiw .zs-dl-bausteine li { display: flex; align-items: baseline; gap: 14px; margin: 0; padding: 24px 24px 24px 0; border-bottom: 1px solid var(--zs-trennlinie); }
.zs-wiw .zs-dl-bausteine-nr { font: 700 13px/1 var(--zs-font-text); letter-spacing: .08em; color: var(--zs-akzent); }
.zs-wiw .zs-dl-bausteine-titel { font: 400 20px/1.3 var(--zs-font-titel); text-transform: uppercase; color: var(--zs-titel); hyphens: auto; overflow-wrap: break-word; }
.zs-wiw .e-con.zs-dl-spalten { --display: grid; display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 360px), 1fr)); gap: 0;
  border-top: 2px solid var(--zs-linie-stark); border-bottom: 1px solid var(--zs-trennlinie); }
.zs-wiw .zs-dl-spalten > .e-con.zs-wiw-stapel { gap: 16px; padding: 40px 40px 44px 0; }
.zs-wiw .zs-dl-spalten > .e-con.zs-wiw-stapel + .e-con.zs-wiw-stapel { padding-left: 40px; border-left: 1px solid var(--zs-trennlinie); }
.zs-wiw .zs-dl-spalten .zs-wiw-h3 .elementor-heading-title { font-size: 24px; text-wrap: balance; }
.zs-wiw .zs-dl-spalten .zs-dl-text p { max-width: 460px; }
@media (max-width: 767px) {
  .zs-wiw .e-con.zs-dl-karte { padding: 28px 24px 32px; }
  .zs-wiw .zs-dl-intro .zs-wiw-h2 .elementor-heading-title { font-size: 28px; }
  .zs-wiw .zs-dl-spalten > .e-con.zs-wiw-stapel { padding: 32px 0; }
  .zs-wiw .zs-dl-spalten > .e-con.zs-wiw-stapel + .e-con.zs-wiw-stapel { padding-left: 0; border-left: 0; border-top: 1px solid var(--zs-trennlinie); }
}

/* WiW Focus: Erscheinungstermine 2027 als Liste (Handoff 13 „WiW Focus v2“, 03.11.2026) */
.zs-wiw > .e-con.zs-et-kopf { padding-bottom: 48px; gap: 20px; }
.zs-wiw .zs-et-kopf .e-con.zs-wiw-stapel { gap: 20px; }
.zs-wiw .zs-et-kopf .zs-wiw-lead p { max-width: 680px; color: var(--zs-text-leise); }
.zs-et-liste { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; border-top: 2px solid var(--zs-linie-stark); }
.zs-et-zeile { display: flex; flex-wrap: wrap; align-items: baseline; gap: 8px 32px; margin: 0; padding: 22px 0; border-bottom: 1px solid var(--zs-trennlinie); }
.zs-et-monat-box { flex: 0 0 200px; display: flex; flex-direction: column; gap: 6px; }
.zs-et-monat { font: 400 24px/1.1 var(--zs-font-titel); text-transform: uppercase; color: var(--zs-titel); }
.zs-et-naechste { align-self: flex-start; padding: 4px 10px; border-radius: 999px; background: var(--zs-dunkel); color: var(--zs-weiss);
  font: 700 10px/1.4 var(--zs-font-text); letter-spacing: .14em; text-transform: uppercase; }
.zs-et-naechste[hidden] { display: none; }
.zs-et-datum-box { flex: 0 0 150px; display: flex; flex-direction: column; gap: 4px; }
.zs-et-datum { font: 700 16px/1.3 var(--zs-font-text); font-variant-numeric: tabular-nums; color: var(--zs-text); }
.zs-et-nr { font: 400 13px/1.4 var(--zs-font-text); color: var(--zs-text-leise); }
.zs-et-themen { flex: 1 1 320px; display: flex; flex-direction: column; gap: 4px; font: 400 16px/1.5 var(--zs-font-text); color: var(--zs-text); }
.zs-wiw .zs-wiw-band .zs-wiw-mehr { color: var(--zs-weiss); }
.zs-wiw .zs-wiw-band > .e-con.zs-dl-buttons { --width: auto; width: auto; flex: 0 0 auto; margin-top: 0; }
@media (max-width: 767px) {
  .zs-wiw > .e-con.zs-et-kopf { padding-bottom: 32px; }
  .zs-et-monat-box { flex-basis: 100%; flex-direction: row; align-items: center; gap: 12px; }
  .zs-et-naechste { align-self: center; }
  .zs-et-datum-box { flex: 1 1 100%; flex-direction: row; align-items: baseline; gap: 12px; }
}
