/* Every season uses the same native Elementor slots. Only catalog artwork
 * changes. Page typography, spacing and backgrounds remain Elementor-owned.
 */
/* Empty main/trim slots collapse in Standard. Small props also render in the
 * neutral design, so keep their native Elementor containers in the layout. */
body:not(.rss-season):not(.elementor-editor-active) .elementor-widget-rheinspiel-season-motif:not(:has(.rss-widget-prop)),
body:not(.rss-season):not(.elementor-editor-active) .rss-native-decoration-section { display:none; }
.rss-widget-art { position:relative; z-index:1; pointer-events:none; user-select:none; }
.rss-widget-art .rss-scene { max-width:100%; }
.rss-widget-prop { display:block; width:100%; height:auto; object-fit:contain; }
.rss-editor-placeholder { padding:16px; border:1px dashed #8c816d; border-radius:8px; color:#383327; background:#f4f0e5; text-align:center; font:var(--rsd-size-text,16px)/var(--rsd-leading,1.5em) var(--rsd-font-text,Poppins,sans-serif); }
.rss-native-heading { position:relative; z-index:1; }

/* Garlands and frame ornaments occupy saved Elementor widgets in normal
 * document flow. Their containers own spacing; no pseudo-elements or hidden
 * compensating padding can overlap a paper edge or the navigation. */
.rss-widget-trim { display:block; pointer-events:none; user-select:none; max-width:100%; }
.rss-widget-trim > img { display:block; width:100%; height:100%; }
.rss-widget-trim--garland { width:100%; height:42px; }
.rss-widget-trim--garland > img { object-fit:fill; }
.rss-widget-trim--corner { width:var(--rss-corner-width,76px); height:var(--rss-corner-height,50px); margin-left:auto; }
.rss-widget-trim--corner > img { object-fit:fill; }
/* Place half of the actual ornament on the following panel edge. Elementor's
 * own row-gap token keeps this correct when the owner changes container gaps.
 * The widget's Style > Abstand control overrides this automatic alignment. */
.rheinspiel-design .elementor-widget-rheinspiel-season-motif.rss-native-trim--corner {
    margin-block-end:var(--rss-trim-margin-bottom,calc(var(--rss-corner-height,50px) / -2 - var(--row-gap,0px)));
    position:relative;
    z-index:2;
}
/* The footer photo is the one interchangeable element: a selected season
 * replaces it with the native accessory widget beside the same editable copy.
 */
body.rss-season .rss-native-footer-call .elementor-cta__bg-wrapper { display:none; }
body.rss-season .rss-native-footer-call .elementor-cta__content { width:100%; }
body.rss-season .rss-native-footer-call .elementor-cta { min-height:0; }
.rss-preview-banner {
    position:relative; display:flex; align-items:center; justify-content:center; flex-wrap:wrap;
    gap:8px 18px; padding:8px 20px; background:#383327; color:#f4f0e5; font:var(--rsd-size-text,16px)/var(--rsd-leading,1.5em) var(--rsd-font-text,Poppins,sans-serif);
}
.rss-preview-banner a { color:#f4f0e5; text-decoration:underline; }
@media print {
    .elementor-widget-rheinspiel-season-motif,.rss-native-decoration-section,.rss-preview-banner { display:none; }
}
