dialog.cy-dialog { border: 0; padding: 0; width: min(560px, calc(100vw - 2rem)); max-height: calc(100vh - 2rem); overflow: auto; background: var(--wp--preset--color--creme, #F7F4EE); color: inherit; }
dialog.cy-dialog::backdrop { background: rgba(46, 53, 55, .55); }
dialog.cy-dialog > .cy-dialog-inner { padding: clamp(1.5rem, 5vw, 2.5rem); position: relative; }
.cy-dialog-close { position: absolute; top: .5rem; right: .75rem; background: none; border: 0; font-size: 1.75rem; line-height: 1; cursor: pointer; color: inherit; padding: .25rem .5rem; }
.cy-offen { background: #fff3c4; outline: 1px dashed #C29427; padding: 0 .2em; }
.cy-form-platzhalter { border: 1px dashed var(--wp--preset--color--salbei, #718489); padding: 1.25rem; font-size: .9rem; }
/* Sticky-CTA (nur Frontend, nur Handy): erscheint, sobald Hero und Abschluss nicht im Bild sind */
.cy-sticky-cta { display: none !important; }
@media (max-width: 781px) {
	.cy-sticky-cta {
		display: flex !important; position: fixed; left: 0; right: 0; bottom: 0; z-index: 60; margin: 0 !important; max-width: none !important;
		box-shadow: 0 -10px 30px -20px rgba(46, 53, 55, .5); transition: transform .25s ease;
		padding-bottom: calc(.75rem + env(safe-area-inset-bottom)) !important;
	}
	.cy-sticky-cta.ist-bereit:not(.ist-sichtbar) { transform: translateY(110%); }
	body:has(.cy-sticky-cta) { padding-bottom: 5.5rem; }
	.cy-sticky-cta .wp-block-button__link { padding: .8em 1.1em !important; white-space: nowrap; }
}
/* Danke-Seite: Kalender und Abschnitte je Interesse (Klasse cy-nur-<interesse> nur zeigen, wenn passend) */
.cy-kalender-frame { width: 100%; min-width: 280px; height: 720px; border: 0; display: block; background: #fff; }
.cy-kalender-start { border: 1px solid var(--wp--preset--color--linie, #dcd5ca); background: var(--wp--preset--color--basis, #fff); padding: 2rem 1.5rem; text-align: center; display: grid; gap: .75rem; justify-items: center; }
.cy-kalender-knopf { font: inherit; font-weight: 600; cursor: pointer; border: 0; padding: .9rem 1.6rem; background: var(--wp--preset--color--terracotta-dunkel, #9a5240); color: #fff; }
.cy-kalender-knopf:hover, .cy-kalender-knopf:focus-visible { filter: brightness(1.08); }
.cy-kalender-hinweis { margin: 0; max-width: 34rem; font-size: .85rem; color: var(--wp--preset--color--text-leise, #646d6f); }
@media (max-width: 781px) { .cy-kalender-frame { height: 1000px; } }
[class*="cy-nur-"] { display: none !important; }
.cy-interesse-infogespraech .cy-nur-infogespraech, .cy-interesse-infoabend .cy-nur-infoabend, .cy-interesse-broschuere .cy-nur-broschuere { display: block !important; }
.cy-interesse-infogespraech .cy-ohne-infogespraech, .cy-interesse-infoabend .cy-ohne-infoabend, .cy-interesse-broschuere .cy-ohne-broschuere { display: none !important; }
