/* Zwergenstube Blog – Design nach Moodboard */
@font-face{font-family:'Baloo 2';font-weight:600;font-style:normal;font-display:swap;src:url(fonts/baloo-2-latin-600-normal.woff2) format('woff2')}
@font-face{font-family:'Baloo 2';font-weight:800;font-style:normal;font-display:swap;src:url(fonts/baloo-2-latin-800-normal.woff2) format('woff2')}
@font-face{font-family:'Nunito Sans';font-weight:400;font-style:normal;font-display:swap;src:url(fonts/nunito-sans-latin-400-normal.woff2) format('woff2')}
@font-face{font-family:'Nunito Sans';font-weight:700;font-style:normal;font-display:swap;src:url(fonts/nunito-sans-latin-700-normal.woff2) format('woff2')}

:root{
  --zb-aktion:#0D8485; --zb-dunkel:#0F6E6F; --zb-hell:#2FC4C4; --zb-zart:#E8F8F8;
  --zb-pink:#F20E45; --zb-pink-text:#b00a33; --zb-creme:#FFFAF2; --zb-blau:#C9E4FF; --zb-blau-text:#1C3D5C;
  --zb-ink:#2b2a28; --zb-grau:#6b6863;
  --zb-schatten:0 4px 18px rgba(51,49,46,.10); --zb-schatten-hover:0 10px 28px rgba(51,49,46,.16);
}

/* ---------- Gemeinsame Bausteine ---------- */
.zb-blog,.zb-weiter,.zb-meta{font-family:'Nunito Sans',sans-serif;color:var(--zb-ink);box-sizing:border-box}
.zb-blog *,.zb-weiter *,.zb-meta *{box-sizing:border-box}
.zb-label{display:flex;align-items:center;gap:10px;font-weight:700;font-size:13px;letter-spacing:.12em;text-transform:uppercase;color:var(--zb-pink-text);margin:0 0 8px}
.zb-label::before{content:'';width:34px;height:4px;border-radius:4px;background:var(--zb-pink)}
.zb-knopf{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:var(--zb-aktion);color:#fff!important;font-family:'Nunito Sans',sans-serif;font-weight:700;font-size:16px;line-height:1;text-decoration:none!important;border:0;border-radius:999px;padding:16px 30px;min-height:48px;cursor:pointer;transition:background .15s,transform .15s}
.zb-knopf:hover,.zb-knopf:focus-visible{background:var(--zb-dunkel);transform:translateY(-1px)}
.zb-knopf--hell{background:#fff;color:var(--zb-dunkel)!important;box-shadow:var(--zb-schatten)}
.zb-knopf--hell:hover,.zb-knopf--hell:focus-visible{background:var(--zb-zart)}
.zb-blog a:focus-visible,.zb-weiter a:focus-visible,.zb-knopf:focus-visible,.zb-suche input:focus-visible{outline:3px solid var(--zb-hell);outline-offset:3px}

/* ---------- Karten ---------- */
.zb-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;margin:0;padding:0;list-style:none}
.zb-karte{position:relative;display:flex;flex-direction:column;background:#fff;border-radius:24px 40px 24px 40px;box-shadow:var(--zb-schatten);overflow:hidden;transition:box-shadow .2s,transform .2s;margin:0}
.zb-grid>.zb-karte:nth-child(even){border-radius:40px 24px 40px 24px}
.zb-karte:hover{box-shadow:var(--zb-schatten-hover);transform:translateY(-3px)}
.zb-karte__bild{position:relative;aspect-ratio:3/2;background:var(--zb-zart);overflow:hidden}
.zb-karte__bild img{width:100%;height:100%;object-fit:cover;display:block;margin:0!important;border-radius:0!important;box-shadow:none!important;transition:transform .4s}
.zb-karte:hover .zb-karte__bild img{transform:scale(1.04)}
.zb-karte__platzhalter{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-family:'Baloo 2',sans-serif;font-weight:800;font-size:28px;color:var(--zb-aktion);background:linear-gradient(135deg,var(--zb-zart),var(--zb-blau))}
.zb-neu{position:absolute;top:14px;left:14px;background:var(--zb-pink);color:#fff;font-weight:700;font-size:12px;letter-spacing:.06em;text-transform:uppercase;border-radius:999px;padding:5px 12px}
.zb-karte__text{display:flex;flex-direction:column;flex:1;padding:22px 26px 26px}
.zb-karte__meta{display:flex;flex-wrap:wrap;gap:6px 14px;font-size:14px;color:var(--zb-grau);margin:0 0 10px}
.zb-karte__titel{font-family:'Baloo 2',sans-serif!important;font-weight:800!important;font-size:22px!important;line-height:1.2!important;color:var(--zb-ink)!important;margin:0 0 10px!important;padding:0!important}
.zb-karte__titel a{color:inherit!important;text-decoration:none!important}
.zb-karte__titel a::after{content:'';position:absolute;inset:0;z-index:1}
.zb-karte:hover .zb-karte__titel a{color:var(--zb-aktion)!important}
.zb-karte__auszug{font-size:16px;line-height:1.6;color:#4a4843;margin:0 0 18px}
.zb-karte__mehr{margin-top:auto;font-weight:700;color:var(--zb-aktion);font-size:16px}
.zb-karte__mehr span{display:inline-block;transition:transform .2s}
.zb-karte:hover .zb-karte__mehr span{transform:translateX(4px)}

/* ---------- Blog-Übersicht ---------- */
.zb-blog{max-width:1240px;margin:0 auto;padding:8px 24px 72px}
.zb-werkzeuge{display:flex;flex-wrap:wrap;gap:16px 24px;align-items:center;justify-content:space-between;margin:0 0 36px}
.zb-chips{display:flex;flex-wrap:wrap;gap:10px}
.zb-chip{display:inline-flex;align-items:center;gap:8px;background:#fff;color:var(--zb-dunkel)!important;font-weight:700;font-size:15px;text-decoration:none!important;border-radius:999px;padding:10px 20px;min-height:44px;box-shadow:var(--zb-schatten);transition:background .15s}
.zb-chip small{font-size:13px;font-weight:400;color:var(--zb-grau)}
.zb-chip:hover{background:var(--zb-zart)}
.zb-chip.is-aktiv{background:var(--zb-aktion);color:#fff!important}
.zb-chip.is-aktiv small{color:#d6f1f1}
.zb-suche{display:flex;gap:10px;flex:0 1 380px;min-width:240px}
.zb-suche input[type=search]{flex:1;min-width:0;height:48px;border:0;border-radius:999px;background:#fff;box-shadow:var(--zb-schatten);padding:0 22px;font-family:'Nunito Sans',sans-serif;font-size:16px;color:var(--zb-ink)}
.zb-suche .zb-knopf{padding:0 24px;height:48px}
.zb-ergebnis{font-size:16px;color:var(--zb-grau);margin:-12px 0 28px}
.zb-leer{background:#fff;box-shadow:var(--zb-schatten);border-radius:24px 40px 24px 40px;padding:40px;text-align:center}
.zb-leer p{margin:0 0 20px;font-size:18px}

/* ---------- Seitenzahlen ---------- */
.zb-seiten{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;align-items:center;margin:56px 0 0}
.zb-seiten a,.zb-seiten span{display:inline-flex;align-items:center;justify-content:center;min-width:48px;height:48px;padding:0 18px;border-radius:999px;font-weight:700;font-size:16px;text-decoration:none!important;background:#fff;color:var(--zb-dunkel)!important;box-shadow:var(--zb-schatten);transition:background .15s}
.zb-seiten a:hover{background:var(--zb-zart)}
.zb-seiten .is-aktuell{background:var(--zb-aktion);color:#fff!important}
.zb-seiten .is-punkte{background:transparent;box-shadow:none;min-width:24px;padding:0}
.zb-seiten .zb-zurueck,.zb-seiten .zb-vor{background:var(--zb-aktion);color:#fff!important}
.zb-seiten .zb-zurueck:hover,.zb-seiten .zb-vor:hover{background:var(--zb-dunkel)}
.zb-seiten .is-aus{opacity:.35;background:#fff;color:var(--zb-grau)!important;box-shadow:none}
.zb-seitentext{text-align:center;color:var(--zb-grau);font-size:15px;margin:16px 0 0}

/* ---------- Einzelner Beitrag ---------- */
body.single-post #wrapper,body.single-post #main{background:var(--zb-creme)!important}
body.single-post .fusion-pagination-tb{display:none!important}
body.single-post .fusion-page-title-bar .fusion-fullwidth{border-radius:0 0 40px 40px!important;overflow:hidden}
body.single-post .fusion-page-title-bar .fusion-text-1,body.single-post .fusion-page-title-bar .fusion-text-1 *{font-family:'Nunito Sans',sans-serif!important;font-weight:700!important;letter-spacing:.14em!important;text-transform:uppercase;font-size:14px!important}
body.single-post .fusion-page-title-bar h1{font-family:'Baloo 2',sans-serif!important;font-weight:800!important;font-size:clamp(32px,5vw,58px)!important;line-height:1.08!important;max-width:880px;margin-left:auto!important;margin-right:auto!important;text-shadow:0 2px 18px rgba(0,0,0,.35)}
body.single-post .fusion-content-tb{max-width:780px;margin:0 auto!important;padding:48px 24px 8px;font-family:'Nunito Sans',sans-serif}
body.single-post .fusion-content-tb,body.single-post .fusion-content-tb p,body.single-post .fusion-content-tb li{font-family:'Nunito Sans',sans-serif!important;font-size:18px!important;line-height:1.75!important;color:var(--zb-ink)!important}
body.single-post .fusion-content-tb p{margin:0 0 1.3em}
body.single-post .fusion-content-tb h2{font-family:'Baloo 2',sans-serif!important;font-weight:800!important;font-size:clamp(26px,3.4vw,34px)!important;line-height:1.15!important;color:var(--zb-ink)!important;margin:1.8em 0 .5em!important}
body.single-post .fusion-content-tb h3{font-family:'Baloo 2',sans-serif!important;font-weight:600!important;font-size:clamp(21px,2.6vw,25px)!important;line-height:1.2!important;color:var(--zb-dunkel)!important;margin:1.5em 0 .4em!important}
body.single-post .fusion-content-tb a:not([class*=zb-]){color:var(--zb-aktion)!important;font-weight:700;text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:3px}
body.single-post .fusion-content-tb a:not([class*=zb-]):hover{color:var(--zb-dunkel)!important}
body.single-post .fusion-content-tb ul,body.single-post .fusion-content-tb ol{margin:0 0 1.4em 1.2em;padding:0}
body.single-post .fusion-content-tb li{margin-bottom:.5em}
body.single-post .fusion-content-tb img{max-width:100%;height:auto;border-radius:24px 40px 24px 40px;box-shadow:var(--zb-schatten)}
body.single-post .fusion-content-tb blockquote{background:var(--zb-zart);border:0;border-radius:24px 40px 24px 40px;padding:26px 30px;margin:1.8em 0;font-style:normal}
body.single-post .fusion-content-tb blockquote p:last-child{margin-bottom:0}

.zb-meta{max-width:780px;margin:0 auto 28px;display:flex;flex-wrap:wrap;gap:10px}
.zb-meta .zb-chip{box-shadow:var(--zb-schatten);font-size:14px;min-height:0;padding:7px 16px;cursor:default}
.zb-meta .zb-chip:hover{background:#fff}

/* ---------- Unter dem Beitrag ---------- */
.zb-weiter{width:min(1240px,calc(100vw - 32px));position:relative;left:50%;transform:translateX(-50%);margin:56px 0 0;padding:0 0 72px}
.zb-weiter h2.zb-h{font-family:'Baloo 2',sans-serif!important;font-weight:800!important;font-size:clamp(26px,3.4vw,34px)!important;line-height:1.15!important;color:var(--zb-ink)!important;margin:0 0 24px!important}
.zb-pn{display:grid;grid-template-columns:1fr 1fr;gap:32px;max-width:960px;margin:0 auto 72px}
.zb-pn__karte{position:relative;display:flex;align-items:center;gap:18px;background:#fff;border-radius:24px 40px 24px 40px;box-shadow:var(--zb-schatten);padding:16px;text-decoration:none!important;color:var(--zb-ink)!important;transition:box-shadow .2s,transform .2s;min-height:120px}
.zb-pn__karte:nth-child(2){border-radius:40px 24px 40px 24px;flex-direction:row-reverse;text-align:right}
.zb-pn__karte:hover{box-shadow:var(--zb-schatten-hover);transform:translateY(-3px)}
.zb-pn__bild{flex:0 0 96px;width:96px;height:96px;border-radius:18px;overflow:hidden;background:var(--zb-zart)}
.zb-pn__bild img{width:100%;height:100%;object-fit:cover;display:block;margin:0!important;border-radius:0!important;box-shadow:none!important}
.zb-pn__text{display:block;min-width:0}
.zb-pn__richtung{display:block;font-weight:700;font-size:13px;letter-spacing:.1em;text-transform:uppercase;color:var(--zb-pink-text);margin-bottom:4px}
.zb-pn__titel{display:block;font-family:'Baloo 2',sans-serif;font-weight:800;font-size:19px;line-height:1.2}
.zb-pn__leer{visibility:hidden}
.zb-mehr{margin:0 0 72px}
.zb-cta{display:flex;flex-wrap:wrap;gap:24px 40px;align-items:center;justify-content:space-between;background:var(--zb-zart);border-radius:40px 24px 40px 24px;padding:40px 48px}
.zb-cta h2.zb-h{margin-bottom:8px!important}
.zb-cta p{margin:0;font-size:18px;line-height:1.6;color:#3d3b37;max-width:560px}
.zb-cta__knoepfe{display:flex;flex-wrap:wrap;gap:14px}
.zb-alle{text-align:center;margin-top:40px}

/* ---------- Blog-Seite (Titel) ---------- */
body.page-id-18 .fusion-title h1,body.page-id-18 h1.fusion-title-heading{font-family:'Baloo 2',sans-serif!important;font-weight:800!important;color:var(--zb-ink)!important;font-size:clamp(34px,5vw,56px)!important}

/* ---------- Tablet / Handy ---------- */
@media (max-width:1024px){
  .zb-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
}
@media (max-width:700px){
  .zb-grid{grid-template-columns:1fr;gap:22px}
  .zb-blog{padding:8px 16px 56px}
  .zb-weiter{padding:0 0 56px}
  .zb-werkzeuge{flex-direction:column;align-items:stretch}
  .zb-suche{flex:1 1 auto}
  .zb-werkzeuge>*{min-width:0;max-width:100%}
  .zb-suche{min-width:0}
  .zb-chips{overflow-x:auto;flex-wrap:nowrap;padding:4px 4px 12px;margin:0 -4px;scrollbar-width:none}
  .zb-chip{white-space:nowrap}
  .zb-pn{grid-template-columns:1fr;gap:18px;margin-bottom:56px}
  .zb-pn__karte:nth-child(2){flex-direction:row;text-align:left}
  .zb-cta{padding:30px 24px}
  .zb-cta__knoepfe{width:100%}
  .zb-cta__knoepfe .zb-knopf{flex:1 1 100%}
  body.single-post .fusion-content-tb{padding:32px 18px 0}
  body.single-post .fusion-content-tb,body.single-post .fusion-content-tb p,body.single-post .fusion-content-tb li{font-size:17px!important}
  .zb-meta{padding:0 18px}
  .zb-seiten a,.zb-seiten span{min-width:44px;height:44px;padding:0 14px}
}
@media (prefers-reduced-motion:reduce){.zb-karte,.zb-karte__bild img,.zb-pn__karte,.zb-knopf{transition:none}.zb-karte:hover{transform:none}}

/* Bausteine unter dem Beitrag gegen die Textstile des Beitrags absichern */
body.single-post .fusion-content-tb .zb-weiter{font-family:'Nunito Sans',sans-serif}
body.single-post .fusion-content-tb .zb-weiter .zb-knopf{color:#fff!important;text-decoration:none!important;font-weight:700;font-size:16px!important}
body.single-post .fusion-content-tb .zb-weiter .zb-knopf--hell{color:var(--zb-dunkel)!important}
body.single-post .fusion-content-tb .zb-weiter .zb-grid{margin:0;padding:0}
body.single-post .fusion-content-tb .zb-weiter .zb-karte{margin:0;font-size:16px!important;line-height:1.5!important}
body.single-post .fusion-content-tb .zb-weiter h2.zb-h{font-size:clamp(26px,3.4vw,34px)!important;margin:0 0 20px!important;color:var(--zb-ink)!important}
body.single-post .fusion-content-tb .zb-weiter h3.zb-karte__titel{font-size:22px!important;line-height:1.2!important;margin:0 0 10px!important;color:var(--zb-ink)!important}
body.single-post .fusion-content-tb .zb-weiter .zb-karte:hover h3.zb-karte__titel a{color:var(--zb-aktion)!important}
body.single-post .fusion-content-tb .zb-weiter .zb-karte__titel a,body.single-post .fusion-content-tb .zb-weiter .zb-pn__karte{text-decoration:none!important;color:inherit!important}
body.single-post .fusion-content-tb .zb-weiter .zb-karte__auszug{font-size:16px!important;line-height:1.6!important;margin:0 0 18px;color:#4a4843!important}
body.single-post .fusion-content-tb .zb-weiter .zb-karte__meta,body.single-post .fusion-content-tb .zb-weiter .zb-karte__meta span{font-size:14px!important;color:var(--zb-grau)!important}
body.single-post .fusion-content-tb .zb-weiter .zb-karte__mehr{font-size:16px!important;color:var(--zb-aktion)!important}
body.single-post .fusion-content-tb .zb-weiter .zb-cta p{font-size:18px!important;line-height:1.6!important;margin:0;color:#3d3b37!important}
body.single-post .fusion-content-tb .zb-weiter .zb-pn__karte{color:var(--zb-ink)!important}
body.single-post .fusion-content-tb .zb-weiter .zb-pn__richtung{color:var(--zb-pink-text)!important;font-size:13px!important}
body.single-post .fusion-content-tb .zb-weiter .zb-pn__titel{font-size:19px!important;line-height:1.2!important;color:var(--zb-ink)!important}
body.single-post .fusion-content-tb .zb-weiter .zb-label{font-size:13px!important;color:var(--zb-pink-text)!important}
body.single-post .fusion-content-tb .zb-weiter .zb-karte__bild img,body.single-post .fusion-content-tb .zb-weiter .zb-pn__bild img{border-radius:0;box-shadow:none}
body.single-post .fusion-content-tb .zb-meta .zb-chip{color:var(--zb-dunkel)!important;font-size:14px!important;line-height:1.2!important}
body.single-post .fusion-content-tb .zb-weiter p.zb-alle{margin:40px 0 0}
