/* POTTRA Theme – Grundstile. Farben und Schriften kommen aus theme.json. */
:root{
  --kz-paper:var(--wp--preset--color--paper,#EFEDE8);
  --kz-paper-2:var(--wp--preset--color--paper-2,#E5E2DB);
  --kz-ink:var(--wp--preset--color--ink,#0E0E0E);
  --kz-muted:var(--wp--preset--color--muted,#55524C);
  --kz-muted-dark:var(--wp--preset--color--muted-dark,#B9B5AC);
  --kz-accent:var(--wp--preset--color--accent,#FF3B1F);
  --kz-ok:var(--wp--preset--color--ok,#0E7A3E);
  --kz-line:3px solid var(--kz-ink);
}
html{overflow-x:clip}
.wp-site-blocks{overflow-x:clip}
.kz-clip,:where(.wp-block-group):has(> .kz-drift),:where(.wp-block-group):has(> .kz-marquee){overflow:hidden}
body{overflow-x:clip;-webkit-font-smoothing:antialiased}
[hidden]{display:none!important}
:where(a,button,input,select,textarea,summary):focus-visible{outline:3px solid var(--kz-accent);outline-offset:3px}
.kz-skip{position:absolute;left:-999px;top:8px;background:var(--kz-ink);color:var(--kz-paper);padding:12px 16px;z-index:1000}
.kz-skip:focus{left:8px}
.screen-reader-text{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}

/* Typografie */
h1,h2,.wp-block-post-title{font-stretch:62%;overflow-wrap:normal;word-break:normal;hyphens:manual}
.kz-rot-wrap{white-space:nowrap}
.kz-ruled{grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr))!important}
.kz-ruled h3{hyphens:auto;overflow-wrap:break-word}
.kz-display,.kz-display h1,.kz-display h2{font-weight:900;font-style:italic;font-stretch:62%;text-transform:uppercase;line-height:.94;letter-spacing:-.005em}
.kz-eyebrow{font-size:14px!important;font-weight:800;letter-spacing:.14em;text-transform:uppercase;margin-bottom:18px!important}
.kz-eyebrow.has-accent-color{color:var(--kz-accent)}
.kz-lead{font-size:var(--wp--preset--font-size--large);font-weight:500;max-width:620px}
.is-layout-constrained>.kz-lead,.is-layout-constrained>.kz-eyebrow{box-sizing:border-box;max-width:var(--wp--style--global--wide-size)!important;margin-left:auto!important;margin-right:auto!important;padding-right:max(0px,calc(min(100%,var(--wp--style--global--wide-size)) - 680px))}
.single main.is-layout-constrained>.kz-eyebrow{max-width:var(--wp--style--global--content-size)!important;padding-right:0}
.kz-foot-tel{font-weight:800;font-size:16px;letter-spacing:.02em}.kz-foot-orte{flex-basis:100%;margin:0 0 6px}.kz-foot-orte a{text-decoration:underline;text-underline-offset:3px}.kz-foot-tel a{text-decoration:none}.kz-foot-tel a:hover{color:var(--kz-accent)!important}
.kz-check-points h3{margin-top:18px!important;hyphens:manual!important;overflow-wrap:normal!important}
.kz-ruled.kz-check-points{grid-template-columns:repeat(3,minmax(0,1fr))!important}
@media (max-width:900px){.kz-ruled.kz-check-points{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media (max-width:600px){.kz-ruled.kz-check-points{grid-template-columns:1fr!important}}
.kz-outline{color:transparent!important;-webkit-text-stroke:2px var(--kz-ink)}
.has-ink-background-color .kz-outline{-webkit-text-stroke-color:var(--kz-paper)}
.kz-num{font-weight:900;font-style:italic;font-stretch:62%;font-size:110px!important;line-height:.8!important;color:var(--kz-accent);margin:0!important}
.kz-nowrap{white-space:nowrap}

/* Buttons */
.wp-block-button__link{transition:transform .15s ease,box-shadow .15s ease;min-height:52px;display:inline-flex;align-items:center;justify-content:center}
.wp-block-button__link:hover{transform:translate(-4px,-4px);box-shadow:6px 6px 0 var(--kz-ink)}
.wp-block-button.is-style-accent .wp-block-button__link{background:var(--kz-accent);color:var(--kz-ink)}
.wp-block-button.is-style-light .wp-block-button__link{background:var(--kz-paper);color:var(--kz-ink)}
.has-ink-background-color .wp-block-button__link{border-color:var(--kz-paper)}
.has-ink-background-color .wp-block-button__link:hover{box-shadow:6px 6px 0 var(--kz-paper)}
.has-ink-background-color .wp-block-button.is-style-light .wp-block-button__link{background:var(--kz-ink);color:var(--kz-paper)}
.kz-btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:52px;padding:16px 24px;border:var(--kz-line);background:var(--kz-paper);color:var(--kz-ink);font:inherit;font-weight:900;font-size:16px;text-transform:uppercase;letter-spacing:.04em;text-decoration:none;cursor:pointer;transition:transform .15s ease,box-shadow .15s ease}
.kz-btn:hover{transform:translate(-4px,-4px);box-shadow:6px 6px 0 var(--kz-ink);color:var(--kz-ink)}
.kz-btn--accent{background:var(--kz-accent)}
.kz-btn--ink,.kz-btn--ink:hover{background:var(--kz-ink);color:var(--kz-paper)}
.kz-btn--sm{min-height:44px;padding:10px 16px;font-size:14px}
.kz-btn[disabled]{opacity:.45;cursor:not-allowed;transform:none;box-shadow:none}
.has-ink-background-color .kz-btn{border-color:var(--kz-paper)}
.has-ink-background-color .kz-btn:hover{box-shadow:6px 6px 0 var(--kz-paper)}

/* Kopfzeile */
.kz-header{border-bottom:var(--kz-line)}
/* Fixierte Navigation: Der Template-Part-Rahmen von WordPress muss kleben, nicht die Gruppe darin */
.wp-site-blocks > header.wp-block-template-part,.wp-site-blocks > .wp-block-template-part:has(> .kz-header){position:sticky;top:0;z-index:100}
.admin-bar .wp-site-blocks > header.wp-block-template-part,.admin-bar .wp-site-blocks > .wp-block-template-part:has(> .kz-header){top:32px}
@media (max-width:782px){.admin-bar .wp-site-blocks > header.wp-block-template-part,.admin-bar .wp-site-blocks > .wp-block-template-part:has(> .kz-header){top:0}}
.kz-logo{margin:0!important;font-weight:900;font-style:italic;font-stretch:70%;font-size:30px!important;text-transform:uppercase;letter-spacing:-.01em;line-height:1}
.kz-logo a{text-decoration:none}
.kz-logo a::after{content:".";color:var(--kz-accent)}
.kz-header .wp-block-navigation{font-size:14px;font-weight:800;text-transform:uppercase;letter-spacing:.06em}
.kz-header .wp-block-navigation a:hover,.kz-header .current-menu-item a{text-decoration:underline;text-decoration-color:var(--kz-accent);text-decoration-thickness:3px;text-underline-offset:6px}
.kz-header .wp-block-button__link{min-height:44px;padding:10px 16px;font-size:14px}

@media (max-width:600px){.kz-header .wp-block-button.is-style-light{display:none}.kz-logo{font-size:24px!important}}
/* Fußzeile */
.kz-stripes{height:28px;position:relative;overflow:hidden;margin:0!important}
.kz-stripes::before{content:"";position:absolute;top:0;bottom:0;left:-56px;right:0;background-image:repeating-linear-gradient(45deg,var(--kz-paper) 0 14px,var(--kz-ink) 14px 28px);background-size:56px 28px;animation:kzStripe 1.2s linear infinite;will-change:transform}
@keyframes kzStripe{from{transform:translateX(0)}to{transform:translateX(56px)}}
.kz-footer a{text-decoration:none}
.kz-footer .kz-foot-head{font-size:13px!important;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--kz-muted-dark)}
.kz-footer ul{list-style:none;padding:0;margin:0;display:grid;gap:8px}

/* Ticker und Laufbänder */
.kz-ticker{height:34px;display:flex;align-items:center;overflow:hidden;margin-top:0!important;margin-bottom:0!important;padding-top:0!important;padding-bottom:0!important}
.kz-ticker p{font-size:13px!important;font-weight:700;letter-spacing:.12em;text-transform:uppercase}
.kz-marquee{overflow:hidden;padding-top:16px!important;padding-bottom:16px!important}
.kz-marquee--tilt{transform:rotate(-1.5deg) scale(1.04)}
.kz-marquee--tilt2{transform:rotate(1deg) scale(1.04);margin-top:-6px!important}
.kz-marquee .kz-big{font-weight:900;font-style:italic;font-stretch:62%;font-size:64px!important;line-height:1;text-transform:uppercase}
.kz-marquee .kz-small,.kz-marquee--small p{font-weight:800;font-size:20px!important;text-transform:uppercase;letter-spacing:.1em}
.kz-track{display:flex;width:max-content;animation:kzL 60s linear infinite;will-change:transform}
.kz-track>*{white-space:nowrap;padding-right:40px;margin:0!important;flex:none}
.kz-marquee .kz-track{animation-duration:22s}
.kz-marquee--rev .kz-track{animation-name:kzR;animation-duration:30s}
@keyframes kzL{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@keyframes kzR{from{transform:translateX(-50%)}to{transform:translateX(0)}}
.kz-ticker mark,.kz-marquee mark{background:none;color:var(--kz-accent)}

/* Hero */
.kz-rot-wrap{display:inline-block;height:.97em;overflow:hidden;vertical-align:bottom;color:var(--kz-accent)}
.kz-rot-stack{display:block}
.kz-rot-wrap{transition:width .7s cubic-bezier(.7,0,.2,1)}
.kz-rot-stack>span{display:block;width:max-content;height:1em;line-height:.97}
@keyframes kzWords{0%,18%{transform:translateY(0)}25%,43%{transform:translateY(-1em)}50%,68%{transform:translateY(-2em)}75%,93%{transform:translateY(-3em)}100%{transform:translateY(-4em)}}
.kz-rotate mark{background:none;color:var(--kz-accent)}
.kz-badge{position:relative;width:240px;height:240px;margin:0 auto}
.kz-badge .ring{position:absolute;inset:0;width:240px;height:240px;animation:kzSpin 16s linear infinite}
.kz-badge .core{position:absolute;inset:52px;border-radius:50%;background:var(--kz-accent);display:flex;align-items:center;justify-content:center}
.kz-badge .needle{transform-origin:60px 64px;animation:kzNeedle 3.2s cubic-bezier(.5,0,.2,1) infinite}
@keyframes kzSpin{to{transform:rotate(360deg)}}
@keyframes kzNeedle{0%{transform:rotate(-120deg)}55%{transform:rotate(95deg)}70%{transform:rotate(80deg)}100%{transform:rotate(-120deg)}}
.kz-slide-in{animation:kzSlide .8s cubic-bezier(.2,.8,.2,1) both}
.kz-slide-in:nth-child(2){animation-delay:.1s}.kz-slide-in:nth-child(3){animation-delay:.2s}.kz-slide-in:nth-child(4){animation-delay:.3s}
@keyframes kzSlide{from{transform:translateX(-80px) skewX(-8deg)}to{transform:none}}
.kz-rule-top{border-top:var(--kz-line)}

/* Boxen und Raster */
.kz-box{border:var(--kz-line);background:var(--kz-paper)}
.has-ink-background-color .kz-box{border-color:var(--kz-paper);background:var(--kz-ink)}
.kz-shadow{box-shadow:12px 12px 0 var(--kz-ink)}
.kz-ruled{gap:0!important;border:var(--kz-line)}
.kz-ruled>*{margin:0!important;border-right:var(--kz-line);padding:28px}
.kz-ruled>*:last-child{border-right:0}
.has-ink-background-color .kz-ruled,.has-ink-background-color .kz-ruled>*{border-color:var(--kz-paper)}
.kz-ruled>.has-accent-background-color .kz-num{color:var(--kz-ink)}
@media (max-width:900px){.kz-ruled>*{border-right:0;border-bottom:var(--kz-line)}.kz-ruled>*:last-child{border-bottom:0}}
.kz-card-link{text-decoration:none;transition:background .2s,color .2s}
.kz-hover-invert:hover{background:var(--kz-ink)!important;color:var(--kz-paper)!important}
.kz-hover-invert:hover a{color:var(--kz-paper)}
.kz-dots{display:flex;gap:6px}
.kz-dots i{width:24px;height:24px;border-radius:50%;display:block;border:2px solid var(--kz-ink)}
.kz-tag{display:inline-block;padding:4px 10px;border:2px solid currentColor;font-size:12px!important;font-weight:800;letter-spacing:.1em;text-transform:uppercase}
.kz-tag--accent{background:var(--kz-accent);border-color:var(--kz-ink);color:var(--kz-ink)}

/* Scroll-Effekte */
.kz-reveal{opacity:0;transform:translateY(28px);transition:opacity 1.2s cubic-bezier(.16,1,.3,1),transform 1.4s cubic-bezier(.16,1,.3,1)}
.kz-reveal.is-in,.block-editor-page .kz-reveal,.editor-styles-wrapper .kz-reveal{opacity:1;transform:none}
.kz-drift{white-space:nowrap;will-change:transform}

/* FAQ */
.wp-block-details{transition:background .2s,color .2s}
.wp-block-details:hover{background:var(--kz-ink);color:var(--kz-paper)}
.wp-block-details summary{cursor:pointer;list-style:none;font-size:22px;font-weight:900;text-transform:uppercase;display:flex;justify-content:space-between;gap:16px}
.wp-block-details summary::-webkit-details-marker{display:none}
.wp-block-details summary::after{content:"+";color:var(--kz-accent)}
.wp-block-details[open] summary::after{content:"–"}
.wp-block-details>p{max-width:760px;font-size:18px}
.kz-faq{border-top:var(--kz-line)}

/* Tabellen, Brotkrumen, Artikel */
.wp-block-table table{border-collapse:collapse}
.wp-block-table th,.wp-block-table td{border:0;border-bottom:2px solid var(--kz-ink);padding:14px 16px;text-align:left;vertical-align:top}
.wp-block-table th{font-size:13px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}
.wp-block-table{border:var(--kz-line);overflow-x:auto;background:var(--kz-paper)}
.kz-breadcrumb{font-size:14px;font-weight:700;text-transform:uppercase;letter-spacing:.06em}
.kz-breadcrumb ol{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.kz-breadcrumb li+li::before{content:"/";margin-right:8px;color:var(--kz-accent)}
.kz-breadcrumb a{text-decoration:none}
.kz-prose{font-size:19px;line-height:1.65}
.kz-prose h2{font-size:clamp(34px,4vw,52px)!important;margin-top:56px!important}
.kz-prose h3{margin-top:32px!important}

@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.kz-reveal{opacity:1;transform:none}}

/* Website-Check Raster: Linien je Zelle */
.kz-ruled.kz-check-points{border-width:3px 0 0 3px}
.kz-ruled.kz-check-points>*,.kz-ruled.kz-check-points>*:last-child{border-right:var(--kz-line);border-bottom:var(--kz-line);border-color:inherit}
.has-ink-background-color .kz-ruled.kz-check-points>*{border-color:var(--kz-paper)}

/* ===== Hero mit Bühne ===== */
.kz-hero{min-height:calc(100svh - 120px);display:flex;flex-direction:column;justify-content:center}
.kz-hero-cols{align-items:center!important}
.kz-hero-h{font-size:clamp(54px,6.6vw,118px)!important;line-height:.97!important;margin:0!important}
.kz-hero .kz-lead{max-width:560px}
.kz-hero-facts{display:flex;flex-wrap:wrap;gap:0;margin:44px 0 0;padding:0;border-top:var(--kz-line);max-width:640px}
.kz-hero-facts>div{flex:1 1 150px;padding:16px 20px 0 0;margin:0}
.kz-hero-facts>div+div{padding-left:20px;border-left:1px solid #CFCBC2}
.kz-hero-facts dt{font-weight:900;font-style:italic;font-stretch:62%;text-transform:uppercase;font-size:34px;line-height:1}
.kz-hero-facts dd{margin:4px 0 0;font-size:14px;color:var(--kz-muted, #55524C)}

.kz-stage{position:relative;padding:36px 28px 56px 36px;animation:kzSlide 1s .25s cubic-bezier(.2,.8,.2,1) both}
.kz-browser{position:relative;background:#fff;border:3px solid #0E0E0E;box-shadow:16px 16px 0 #0E0E0E;transform:rotate(-1.2deg)}
.kz-browser-bar{display:flex;align-items:center;gap:6px;height:38px;padding:0 12px;border-bottom:3px solid #0E0E0E;background:#E5E2DB}
.kz-browser-bar i{width:10px;height:10px;border-radius:50%;border:2px solid #0E0E0E}
.kz-browser-bar i:first-child{background:#FF3B1F}
.kz-url{flex:1;margin-left:10px;height:22px;background:#fff;border:2px solid #0E0E0E;font-size:12px;line-height:18px;padding:0 10px;font-weight:600;overflow:hidden;white-space:nowrap}
.kz-screens{position:relative;aspect-ratio:16/11;overflow:hidden}
.kz-scr{position:absolute;inset:0;display:flex;flex-direction:column;opacity:0;z-index:1;transform:translateY(30px);transition:opacity 0s .8s,transform 0s .8s}
.kz-scr.is-on{opacity:1;z-index:2;transform:none;transition:opacity .45s ease,transform .8s cubic-bezier(.16,1,.3,1)}
.kz-scr-top{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:14px 20px;font-size:11px}
.kz-scr-top b{font-size:15px}
.kz-scr-top span{opacity:.7;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.kz-scr-hero{flex:1;display:flex;flex-direction:column;justify-content:center;gap:10px;padding:10px 24px}
.kz-scr-hero small{font-size:11px;letter-spacing:.14em;text-transform:uppercase;opacity:.8}
.kz-scr-hero strong{font-size:clamp(26px,2.8vw,44px);line-height:1}
.kz-scr-hero em{font-style:normal;align-self:flex-start;font-size:12px;font-weight:700;padding:9px 14px}
.kz-scr-tiles{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;padding:0 20px 18px}
.kz-scr-tiles span{font-size:11px;font-weight:700;padding:16px 10px 10px;min-height:54px;display:flex;align-items:flex-end}
/* Handwerk */
.kz-scr--handwerk{background:#0F2340;color:#fff;font-family:Montserrat,sans-serif}
.kz-scr--handwerk .kz-scr-top b{letter-spacing:.08em}
.kz-scr--handwerk strong{font-weight:900;text-transform:uppercase}
.kz-scr--handwerk em{background:#FFC400;color:#0F2340}
.kz-scr--handwerk .kz-scr-tiles span{background:#1B3A66}
/* Gastro */
.kz-scr--gastro{background:#F3E7D3;color:#3A2418;font-family:'Playfair Display',serif}
.kz-scr--gastro strong{font-weight:800;font-style:italic}
.kz-scr--gastro em{background:#9C2F1C;color:#F3E7D3;font-family:Montserrat,sans-serif}
.kz-scr--gastro .kz-scr-tiles span{background:#E4D2B4;font-family:Montserrat,sans-serif}
/* Beauty */
.kz-scr--beauty{background:linear-gradient(135deg,#F6DCD6,#EBD3E8);color:#3B2A33;font-family:'Cormorant Garamond',serif}
.kz-scr--beauty .kz-scr-top b{font-size:20px;letter-spacing:.06em}
.kz-scr--beauty .kz-scr-top span,.kz-scr--beauty small{font-family:Montserrat,sans-serif}
.kz-scr--beauty strong{font-weight:700}
.kz-scr--beauty em{background:#3B2A33;color:#fff;border-radius:40px;font-family:Montserrat,sans-serif}
.kz-scr--beauty .kz-scr-tiles span{background:rgba(255,255,255,.6);border-radius:10px;font-family:Montserrat,sans-serif}
/* Kanzlei */
.kz-scr--kanzlei{background:#fff;color:#1D2B2A;font-family:'Cormorant Garamond',serif;border-top:6px solid #1F4D45}
.kz-scr--kanzlei .kz-scr-top{border-bottom:1px solid #DDE3E1}
.kz-scr--kanzlei .kz-scr-top span,.kz-scr--kanzlei small{font-family:Montserrat,sans-serif}
.kz-scr--kanzlei strong{font-weight:700;color:#1F4D45}
.kz-scr--kanzlei em{border:2px solid #1F4D45;color:#1F4D45;font-family:Montserrat,sans-serif}
.kz-scr--kanzlei .kz-scr-tiles span{background:#EEF2F1;font-family:Montserrat,sans-serif}

.kz-chip{position:absolute;z-index:3;background:#fff;border:3px solid #0E0E0E;box-shadow:6px 6px 0 #0E0E0E;padding:10px 14px;font-weight:800;font-size:13px;text-transform:uppercase;letter-spacing:.06em;display:flex;align-items:center;gap:10px;animation:kzFloat 6s ease-in-out infinite}
.kz-chip--speed{top:0;right:0;background:#0E0E0E;color:#EFEDE8;box-shadow:6px 6px 0 #FF3B1F}
.kz-chip--speed .kz-chip-v{font-style:italic;font-stretch:62%;font-size:34px;line-height:.8;color:#3DDC84}
.kz-chip--live{left:0;bottom:10px;animation-delay:-2s}
.kz-chip--change{right:0;bottom:-6px;flex-direction:column;align-items:flex-start;gap:2px;animation-delay:-4s;background:#FF3B1F}
.kz-chip-s{font-size:12px;font-weight:600;text-transform:none;letter-spacing:0}
.kz-dot{position:relative;width:10px;height:10px;border-radius:50%;background:#0E7A3E}
.kz-dot::after{content:"";position:absolute;inset:0;border-radius:50%;background:rgba(14,122,62,.55);animation:kzPulse 2s infinite}
@keyframes kzFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}
@keyframes kzPulse{0%{transform:scale(1);opacity:1}70%{transform:scale(3);opacity:0}100%{transform:scale(3);opacity:0}}
/* Kontrast: Signalrot als kleine Schrift auf hellem Grund zu schwach (3:1) – dort dunkler */
.kz-eyebrow.has-accent-color{color:#C42A12!important}
.has-ink-background-color .kz-eyebrow.has-accent-color,.kz-dark .kz-eyebrow.has-accent-color{color:var(--wp--preset--color--accent)!important}
.kz-badge--sm{position:absolute;z-index:4;left:-22px;top:-30px;width:150px;height:150px;margin:0}
.kz-badge--sm .ring{width:150px;height:150px}
.kz-badge--sm .core{inset:32px}
.kz-badge--sm .core svg{width:70px;height:70px}
@media (max-width:781px){
 .kz-hero{min-height:0}
 .kz-hero-cols{gap:24px!important}
 .kz-stage{padding:28px 10px 48px 14px;margin-top:8px}
 .kz-chip{font-size:11px;padding:8px 10px}
 .kz-chip--speed .kz-chip-v{font-size:26px}
 .kz-badge--sm{width:110px;height:110px;left:-6px;top:-24px}
 .kz-badge--sm .ring{width:110px;height:110px}
 .kz-badge--sm .core{inset:24px}.kz-badge--sm .core svg{width:50px;height:50px}
 .kz-scr-top span{display:none}
}
@media (prefers-reduced-motion:reduce){.kz-chip,.kz-dot,.kz-dot::after,.kz-stripes::before{animation:none}}

/* Kopfzeile auf Tablet-Breiten: einzeilig halten */
@media (max-width:1240px){.kz-header .wp-block-navigation{font-size:13px;letter-spacing:.04em}.kz-header .wp-block-navigation .wp-block-navigation__container{gap:18px}.kz-header .wp-block-button.is-style-light{display:none}}
@media (min-width:600px) and (max-width:1180px){
 .kz-header .wp-block-navigation__responsive-container-open:not(.always-shown){display:flex!important}
 .kz-header .wp-block-navigation__responsive-container:not(.hidden-by-default):not(.is-menu-open){display:none!important}
}
@media (max-width:1040px){.kz-hero{min-height:0}.kz-hero-cols{flex-wrap:wrap!important}.kz-hero-cols>.wp-block-column{flex-basis:100%!important}.kz-stage{max-width:640px;margin:24px auto 0}.kz-hero-h{font-size:clamp(50px,11vw,100px)!important}}

/* ---------- Mobile Kopfzeile & Menü ---------- */
@media (max-width:1180px){
 .kz-header>.wp-block-group{flex-wrap:nowrap!important;gap:12px!important;align-items:center}
 .kz-header .kz-logo{flex:1 1 auto;min-width:0}
 .kz-header>.wp-block-group>.wp-block-buttons{order:2;flex-wrap:nowrap;margin:0}
 .kz-header .wp-block-navigation{order:3;flex:0 0 auto}
 .kz-header .wp-block-navigation__responsive-container-open{width:48px;height:48px;justify-content:center;align-items:center;border:3px solid var(--kz-ink);background:var(--kz-paper);color:var(--kz-ink);padding:0}
 .kz-header .wp-block-navigation__responsive-container-open svg{width:26px;height:26px}
}
@media (max-width:600px){
 .kz-header .wp-block-button__link{min-height:48px;padding:10px 12px;font-size:12px;letter-spacing:.04em;white-space:nowrap}
}
@media (max-width:359px){.kz-header>.wp-block-group>.wp-block-buttons{display:none}}

/* Das geöffnete Menü: vollflächig, schwarz, große Schrift wie die Überschriften */
.kz-header .wp-block-navigation__responsive-container.is-menu-open{background:var(--kz-ink)!important;color:var(--kz-paper)!important;padding:0!important;animation:none}
.kz-header .wp-block-navigation__responsive-container.is-menu-open::before{content:"";position:absolute;left:0;right:0;top:0;height:10px;background:repeating-linear-gradient(45deg,var(--kz-accent) 0 12px,var(--kz-ink) 12px 24px)}
.kz-header .is-menu-open .wp-block-navigation__responsive-close{max-width:none;height:100%}
.kz-header .is-menu-open .wp-block-navigation__responsive-dialog{display:flex;flex-direction:column;min-height:100%;padding:22px 20px 28px}
.kz-header .is-menu-open .wp-block-navigation__responsive-container-close{position:absolute;top:22px;right:20px;width:52px;height:52px;display:flex;align-items:center;justify-content:center;border:3px solid var(--kz-paper);color:var(--kz-paper);background:transparent}
.kz-header .is-menu-open .wp-block-navigation__responsive-container-close svg{width:28px;height:28px}
.kz-header .is-menu-open .kz-menu-logo{display:block;font-weight:900;font-style:italic;font-stretch:70%;font-size:26px;text-transform:uppercase;line-height:52px;color:var(--kz-paper);text-decoration:none;margin:0 0 28px}
.kz-header .is-menu-open .kz-menu-logo::after{content:".";color:var(--kz-accent)}
.kz-header .is-menu-open .wp-block-navigation__responsive-container-content{display:flex!important;flex-direction:column!important;padding:0!important;align-items:stretch!important;gap:0!important;flex:1 1 auto;justify-content:flex-start!important}
.kz-header .is-menu-open .wp-block-navigation__container{order:1}
.kz-header .is-menu-open .kz-menu-extra{order:2}
.kz-header .is-menu-open .wp-block-navigation__container{width:100%;gap:0!important;align-items:stretch!important;border-top:2px solid #2E2C29}
.kz-header .is-menu-open .wp-block-navigation-item{width:100%;border-bottom:2px solid #2E2C29}
.kz-header .is-menu-open .wp-block-navigation-item__content{display:flex!important;justify-content:space-between;align-items:center;width:100%;padding:16px 0!important;font-size:clamp(34px,10vw,52px);font-weight:900;font-style:italic;font-stretch:62%;letter-spacing:-.01em;line-height:1;color:var(--kz-paper)!important;text-decoration:none!important}
.kz-header .is-menu-open .wp-block-navigation-item__content::after{content:"";width:14px;height:14px;background:var(--kz-accent);transform:scale(0);transition:transform .2s}
.kz-header .is-menu-open .wp-block-navigation-item__content:hover::after,.kz-header .is-menu-open .wp-block-navigation-item__content:focus-visible::after,.kz-header .is-menu-open .current-menu-item>.wp-block-navigation-item__content::after{transform:scale(1)}
.kz-header .is-menu-open .wp-block-navigation-item__content:focus-visible{outline:3px solid var(--kz-accent);outline-offset:4px}
.kz-menu-extra,.kz-menu-logo{display:none}
.kz-header .is-menu-open .kz-menu-extra{display:grid;gap:10px;margin-top:auto;padding-top:32px}
.kz-menu-extra a.kz-mb{display:flex;align-items:center;justify-content:center;min-height:56px;border:3px solid var(--kz-paper);font-size:15px;font-weight:800;text-transform:uppercase;letter-spacing:.06em;text-decoration:none;color:var(--kz-paper)}
.kz-menu-extra a.kz-mb--accent{background:var(--kz-accent);border-color:var(--kz-accent);color:var(--kz-ink)}
.kz-menu-extra .kz-mt{margin:14px 0 0;font-size:15px;color:#B9B5AC;text-align:center;text-transform:none;letter-spacing:0;font-weight:500}
.kz-menu-extra .kz-mt a{color:var(--kz-paper);font-weight:800;text-decoration:none}
@media (prefers-reduced-motion:no-preference){
 .kz-header .is-menu-open .wp-block-navigation-item{animation:kzMenuIn .45s cubic-bezier(.2,.8,.2,1) both}
 .kz-header .is-menu-open .wp-block-navigation-item:nth-child(2){animation-delay:.04s}.kz-header .is-menu-open .wp-block-navigation-item:nth-child(3){animation-delay:.08s}.kz-header .is-menu-open .wp-block-navigation-item:nth-child(4){animation-delay:.12s}.kz-header .is-menu-open .wp-block-navigation-item:nth-child(5){animation-delay:.16s}.kz-header .is-menu-open .wp-block-navigation-item:nth-child(6){animation-delay:.2s}
}
@keyframes kzMenuIn{from{transform:translateX(-40px);opacity:0}to{transform:none;opacity:1}}
html.has-modal-open{overflow:hidden}
/* Einheitlicher Abstand oben: erste Zeile Inhalt immer 56px unter dem Header */
.page-template-page-no-title:not(.home) .wp-block-post-content>:first-child{padding-top:56px!important;margin-top:0!important}
.page-template-page-no-title:not(.home) .wp-block-post-content>:first-child .kz-portal{padding-top:0}
/* Einheitliche linke Kante: alle Inhalte beginnen bündig mit der Überschrift (Breite wie „alignwide“), Fließtext mit angenehmer Zeilenlänge */
.wp-block-post-content.is-layout-constrained:not(.kz-prose)>:not(.alignwide):not(.alignfull):not(.alignleft):not(.alignright){max-width:var(--wp--style--global--wide-size)!important;margin-left:max(0px,calc((100% - var(--wp--style--global--wide-size)) / 2))!important;margin-right:auto!important}
.wp-block-post-content.is-layout-constrained:not(.kz-prose)>:is(p,h2,h3,h4,h5,h6,ul,ol,blockquote,.wp-block-quote):not(.alignwide):not(.alignfull):not(.alignleft):not(.alignright):not(.kz-x){padding-right:0!important}
.wp-block-post-content.is-layout-constrained:not(.kz-prose)>p.kz-lead:not(.alignwide):not(.alignfull):not(.alignleft):not(.alignright):not(.kz-x){max-width:680px!important}
/* Fließtext direkt im Seiteninhalt (Ortsseiten, Impressum, AGB …): Lesegrößen wie im Ratgeber */
.wp-block-post-content.is-layout-constrained:not(.kz-prose)>:is(p:not(.kz-eyebrow):not(.kz-lead),ul,ol,.wp-block-details){font-size:18px;line-height:1.65}
.wp-block-post-content.is-layout-constrained:not(.kz-prose)>h2.wp-block-heading:not(.alignwide):not(.alignfull){font-size:clamp(30px,3.4vw,44px)!important;margin-top:64px!important;margin-bottom:8px!important}
.wp-block-post-content.is-layout-constrained:not(.kz-prose)>h3.wp-block-heading:not(.alignwide):not(.alignfull){margin-top:36px!important}
/* ===== Mobil-Feinschliff ===== */
/* Warnstreifen immer bis an den Rand */
.has-global-padding>.kz-stripes.alignfull{margin-left:calc(-1 * var(--wp--style--root--padding-left))!important;margin-right:calc(-1 * var(--wp--style--root--padding-right))!important;max-width:none!important;width:auto}
/* Überschriften: Umlaute brauchen Luft */
h1,.has-giant-font-size,.has-huge-font-size{line-height:.95}
h2,.has-xx-large-font-size{line-height:.98}
/* FAQ: Plus/Minus mit Abstand zum Rand, ruhiger Zeilenabstand */
.wp-block-details summary{line-height:1.25;align-items:flex-start}
.wp-block-details summary::after{flex:0 0 auto;width:1em;text-align:center;line-height:1.25}
/* Tabellen scrollen statt die Seite zu sprengen */
figure.wp-block-table{overflow-x:auto;-webkit-overflow-scrolling:touch;max-width:100%}
figure.wp-block-table table:has(th:nth-child(3),td:nth-child(3)){min-width:560px}
@media (max-width:781px){figure.wp-block-table td,figure.wp-block-table th{padding:10px 12px!important}}
@media (max-width:781px){
	:root{--wp--preset--font-size--giant:clamp(40px,12.5vw,68px);--wp--preset--font-size--huge:clamp(34px,10.5vw,52px);--wp--preset--font-size--xx-large:clamp(30px,8.6vw,40px);--wp--preset--font-size--x-large:clamp(24px,6.6vw,30px)}
	h1,h2,h3,.has-giant-font-size,.has-huge-font-size,.has-xx-large-font-size{hyphens:auto;-webkit-hyphens:auto;overflow-wrap:break-word}
	h1,.has-giant-font-size,.has-huge-font-size{line-height:1}
	h2,.has-xx-large-font-size,.has-x-large-font-size{line-height:1.02}
	h3{font-size:20px!important;line-height:1.2}
	.wp-block-post-content.is-layout-constrained:not(.kz-prose)>h2.wp-block-heading:not(.alignwide):not(.alignfull){font-size:clamp(26px,7.4vw,32px)!important;margin-top:44px!important}
	.kz-prose{font-size:17px}
	.kz-prose h2{font-size:clamp(26px,7.4vw,32px)!important;margin-top:40px!important}
	.wp-block-details summary{font-size:16px;letter-spacing:.01em}
	.wp-block-details{padding-left:16px!important;padding-right:16px!important}
	.wp-block-post-content.is-layout-constrained:not(.kz-prose)>:is(p:not(.kz-eyebrow):not(.kz-lead),ul,ol,.wp-block-details){font-size:17px}
	/* Ratgeber-Übersicht: eine Spalte */
	.wp-block-post-template.is-layout-grid{grid-template-columns:minmax(0,1fr)!important}
	.wp-block-post-template .kz-box{padding:22px!important}
	.wp-block-post-template .wp-block-post-title{font-size:clamp(24px,6.6vw,30px)!important;hyphens:auto;-webkit-hyphens:auto;overflow-wrap:anywhere}
}
@media (max-width:781px){.kz-num{font-size:64px!important}}
/* Tabellen: Schatten zeigt, dass man seitlich wischen kann; Quelle mit Innenabstand */
figure.wp-block-table{background:linear-gradient(to right,var(--kz-paper) 30%,rgba(239,237,232,0)) left/40px 100% no-repeat local,linear-gradient(to left,var(--kz-paper) 30%,rgba(239,237,232,0)) right/40px 100% no-repeat local,radial-gradient(farthest-side at 0 50%,rgba(0,0,0,.18),transparent) left/14px 100% no-repeat scroll,radial-gradient(farthest-side at 100% 50%,rgba(0,0,0,.18),transparent) right/14px 100% no-repeat scroll,var(--kz-paper)}
figure.wp-block-table figcaption{padding:10px 16px;margin:0;font-size:14px;position:sticky;left:0}
.wp-block-details summary{padding-right:4px}
@media (max-width:781px){.wp-block-details summary::after{margin-right:2px}}
/* Balken in Studien/Ratgebern */
.kz-bars{display:grid;gap:12px;margin:8px 0 6px;max-width:none!important;width:100%}
.kz-prose .kz-small{font-size:14px;color:#55524C}
.kz-bars>.kz-bar{display:grid;grid-template-columns:minmax(0,1fr) minmax(90px,38%) 56px;align-items:center;gap:14px;font-size:16px}
.kz-bar-t{height:14px;background:#DDD9D0;position:relative}.kz-bar-t>span{position:absolute;inset:0 auto 0 0;background:var(--kz-accent)}
.kz-bars>.kz-bar strong{text-align:right;font-size:18px;font-weight:900;font-variant-numeric:tabular-nums}
@media (max-width:600px){.kz-bars>.kz-bar{grid-template-columns:1fr 56px;gap:4px 10px}.kz-bar-t{grid-column:1/-1;grid-row:2}.kz-bars>.kz-bar strong{grid-row:1;grid-column:2}}
/* Ratgeber-Übersicht: ruhige Kartentitel, gleich hohe Karten (live als Zusatz-CSS gesetzt) */
.wp-block-post-template.is-layout-grid{align-items:stretch}
.wp-block-post-template.is-layout-grid>li{display:flex;min-width:0}
.wp-block-post-template .kz-box{flex:1;display:flex;flex-direction:column;min-width:0}
.wp-block-post-template .wp-block-post-title{font-size:clamp(24px,2.1vw,32px)!important;line-height:1.02!important;hyphens:auto;-webkit-hyphens:auto;overflow-wrap:anywhere}
.wp-block-post-template .wp-block-post-excerpt{display:flex;flex-direction:column;flex:1}
.wp-block-post-template .wp-block-post-excerpt__more-text{margin-top:auto;padding-top:12px}
@media (min-width:782px) and (max-width:1100px){.wp-block-post-template.is-layout-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
