.zt-wand-single{max-width:1100px;margin:0 auto}
.zt-wand-text{margin:0 0 .8em}
.zt-wand-bild{margin:0 0 1.5em}
.zt-wand-bild img{display:block;max-width:100%;height:auto}
.zt-wand-galerie{display:grid;gap:12px;margin:0 0 1.5em}
.zt-wand-galerie.zt-cols-1{grid-template-columns:repeat(1,1fr)}
.zt-wand-galerie.zt-cols-2{grid-template-columns:repeat(2,1fr)}
.zt-wand-galerie.zt-cols-3{grid-template-columns:repeat(3,1fr)}
.zt-wand-galerie.zt-cols-4{grid-template-columns:repeat(4,1fr)}
.zt-wand-galerie.zt-cols-5{grid-template-columns:repeat(5,1fr)}
.zt-wand-galerie.zt-cols-6{grid-template-columns:repeat(6,1fr)}
.zt-wand-galerie.zt-cols-7{grid-template-columns:repeat(7,1fr)}
.zt-wand-galerie.zt-cols-8{grid-template-columns:repeat(8,1fr)}
.zt-wand-galerie__item{margin:0}
.zt-wand-galerie__item img{display:block;width:100%;height:auto}
.zt-wand-galerie a:focus-visible,.zt-wand-qr a:focus-visible,.zt-wand-bild a:focus-visible{outline:3px solid currentColor;outline-offset:2px}
.zt-wand-qr{margin:0 0 1.5em;width:100%}
.zt-wand-qr a{display:block;line-height:0}
.zt-wand-qr svg{display:block;width:100%;height:auto}
.zt-wand-qr figcaption{margin-top:.4em;font-size:.9em;line-height:1.3}
@media (max-width:768px){
	.zt-wand-galerie[class*="zt-cols-"]{grid-template-columns:repeat(2,1fr)}
}

/* --- Akzentfarbe (Klasse .zt-wand-{ID} setzt --zt-wand-farbe; siehe Inline-CSS) --- */
.zt-farbe-bg{background-color:var(--zt-wand-farbe);color:var(--zt-wand-kontrast,inherit)}
.zt-farbe-text{color:var(--zt-wand-farbe)}
.zt-farbe-border{border-color:var(--zt-wand-farbe);border-style:solid}
.zt-wand-akzent--bg,.zt-wand-akzent--border{padding:1em 1.25em}
.zt-wand-akzent--border{border-width:3px}
.zt-wand-akzent--bg a{color:inherit;text-decoration:underline}
.zt-wand-single .zt-wand-beschreibung{border-left:4px solid var(--zt-wand-farbe,transparent);padding-left:1em}
.zt-wand-single .zt-wand-bild{border-bottom:6px solid var(--zt-wand-farbe,transparent)}

/* --- Letzter Textblock „Gedanken über …“ --- */
.zt-wand-gedanken{margin:2em 0 1em}
.zt-wand-gedanken__titel{color:var(--zt-wand-farbe,inherit);margin:0 0 .5em}
.zt-wand-gedanken__text > :last-child{margin-bottom:0}

/* --- Farben je Textblock (Variablen werden inline am Block gesetzt) --- */
.zt-wand-block.has-bg{background-color:var(--zt-bg);padding:1.25em 1.5em}
/* Hintergrund über die ganze Seitenbreite (Text bleibt in der Spalte). Abschalten: CSS-Klasse zt-boxed */
.zt-wand-block.has-bg:not(.zt-boxed){box-shadow:0 0 0 100vmax var(--zt-bg);clip-path:inset(0 -100vmax)}
.zt-wand-block.has-text,
.zt-wand-block.has-text :is(p,li,blockquote,dt,dd,td,th){color:var(--zt-text)}
.zt-wand-block.has-text a{color:inherit;text-decoration:underline}
.zt-wand-block.zt-wand-block.has-head :is(h1,h2,h3,h4,h5,h6){color:var(--zt-head)}
.zt-wand-gedanken__titel{color:var(--zt-head,var(--zt-wand-farbe,inherit))}
.zt-wand-gedanken__text{color:var(--zt-text,inherit)}

/* Video-Einbettung mit Klick zum Laden (Datenschutz) */
.zt-video { width: 100%; margin: 1em auto; }
.zt-video__notice { margin: 0 0 .6em; font-size: .9em; }
.zt-video__frame { position: relative; width: 100%; aspect-ratio: 16 / 9; background: #1c1c1c; }
.zt-video__frame iframe, .zt-video__btn { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; }
.zt-video__btn { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: .5em; padding: 1em; background: transparent; color: #fff; cursor: pointer; text-align: center; font: inherit; }
.zt-video__btn:hover .zt-video__play, .zt-video__btn:focus-visible .zt-video__play { transform: scale(1.1); }
.zt-video__btn:focus-visible { outline: 3px solid #fff; outline-offset: -6px; }
.zt-video__play { width: 64px; height: 64px; border-radius: 50%; background: #fff; position: relative; transition: transform .15s; }
.zt-video__play::after { content: ""; position: absolute; left: 25px; top: 18px; border-left: 20px solid #1c1c1c; border-top: 14px solid transparent; border-bottom: 14px solid transparent; }
.zt-video__label { font-weight: 700; }
@media (prefers-reduced-motion: reduce) { .zt-video__play { transition: none; } }
