/*
 * Additions to the design system for CMS-only needs (states the static design does not show).
 * Only tokens from tokens.css, no new values.
 */

/* Video: poster image and loaded iframe inside .ss-embed */
.ss-embed__poster { position: absolute; inset: 0; z-index: -1; width: 100%; height: 100%; object-fit: cover; opacity: 0.55; }
.ss-embed picture { position: absolute; inset: 0; z-index: -1; }
.ss-embed iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; }
.ss-embed.is-playing .ss-embed__body, .ss-embed.is-playing .ss-embed__deco, .ss-embed.is-playing .ss-embed__poster, .ss-embed.is-playing picture { display: none; }

/* Rich text from TinyMCE inside split bodies follows the design's body copy */
.ss-split__body .ss-richtext { max-width: none; }

/* Contao article wrapper must not add spacing between full-width sections */
.mod_article { margin: 0; padding: 0; }

/* Contact form card: the design sets these inline on form.ss-form.ss-card (Angebot.dc.html #kontakt) */
.ss-form--contact { padding: clamp(var(--space-5), 4vw, var(--space-7)); box-shadow: var(--shadow-md); border-color: transparent; }

/* Contao form wrapper must not break the grid of the contact section */
.ce_form, .content-form { margin: 0; min-width: 0; }
.ss-form .ss-field > .ss-help, .ss-form .ss-field > .ss-error { margin: 0; }
.ss-check input[type="checkbox"] { margin: 0; }

/* News text is made of content elements: their wrappers sit inside .ss-richtext */
.ss-richtext > div > * { margin: 0; }
.ss-richtext > div > * + * { margin-top: var(--space-4); }
.ss-richtext > .ss-lead > p { margin: 0; font: inherit; color: inherit; }

/* Contao renders width/height attributes on images; the height attribute would override the design's aspect-ratio */
.ss-blob__img, .ss-person__img, .ss-gallery img, .ss-richtext img, .ss-embed__poster { height: auto; }
.ss-embed__poster { height: 100%; }
