/*
 * Datei-Info
 * Letzte Änderung: 26.05.2026
 * Uhrzeit: 18:36 Uhr
 * Version: v1.1.3.25
 * Basis: v1.1.3 – zentrales System unverändert, gezieltes Feintuning Kacheln 7.1–7.3
 *
 * JuBo Bingo Landingpage
 * Scope: ausschließlich .jubo-bingo-page / .jubo-bingo-*.
 * System: zentrale CSS-Variablen für Farben, Container, Typografie, Spacing,
 * Hero, Grids, Cards, Buttons, Bilder, Linien, Hover und Breakpoints.
 */

.jubo-bingo-page {
	/* CI-Farben */
	--jubo-white-rock: #e7e7d9;
	--jubo-bombay: #b4babc;
	--jubo-dim-gray: #67646c;
	--jubo-chicago: #545c56;
	--jubo-zeus: #272119;
	--jubo-deco: #dad99b;
	--jubo-golden-dream: #f4dd30;
	--jubo-dark-goldenrod: #b7890a;
	--jubo-shadow: #81744e;
	--jubo-raw-umber: #6f5113;

	/* Container-System */
	--jubo-container: 1280px;
	--jubo-container-narrow: 1080px;
	--jubo-container-inline: clamp(34px, 7vw, 120px);
	--jubo-container-inline-mobile: 34px;
	--jubo-shell-width: min(calc(100% - var(--jubo-container-inline)), var(--jubo-container));
	--jubo-shell-width-mobile: min(calc(100% - var(--jubo-container-inline-mobile)), var(--jubo-container));
	--jubo-content-section-head: 850px;
	--jubo-content-lead: 800px;
	--jubo-content-h1: 980px;
	--jubo-content-h2: 910px;
	--jubo-content-form-text: 360px;

	/* Typografie-System */
--jubo-font-base-size: 16px;

--jubo-text-xs: clamp(12.5px, calc(12.06px + 0.11vw), 13.5px);
--jubo-text-sm: clamp(14px, calc(13.34px + 0.17vw), 15.5px);
--jubo-text-base: clamp(16.5px, calc(15.62px + 0.22vw), 18.5px);
--jubo-text-lead: clamp(18px, calc(16.9px + 0.28vw), 20.5px);

--jubo-card-title: clamp(21px, calc(18.81px + 0.56vw), 26px);

--jubo-h1: clamp(42px, calc(28.85px + 3.37vw), 72px);
--jubo-h2: clamp(29px, calc(24.18px + 1.24vw), 40px);
--jubo-h3: clamp(23px, calc(19.93px + 0.79vw), 30px);
--jubo-h4: clamp(18px, calc(17.12px + 0.22vw), 20px);

--jubo-eyebrow-size: clamp(13.5px, calc(12.62px + 0.22vw), 15.5px);
--jubo-button-font-size: clamp(14.5px, calc(13.84px + 0.17vw), 16px);

--jubo-faq-question-size: clamp(17.5px, calc(16.62px + 0.22vw), 19.5px);
--jubo-faq-more-title-size: clamp(17.5px, calc(16.62px + 0.22vw), 19.5px);

--jubo-base-line-height: 1.62;
--jubo-body-line-height: 1.62;
--jubo-lead-line-height: 1.52;
--jubo-headline-line-height: 1.05;
--jubo-eyebrow-text-line-height: 1.3;
--jubo-eyebrow-text-transform: uppercase;
--jubo-faq-question-line-height: 1.28;

--jubo-headline-letter-spacing: -0.035em;
--jubo-h4-letter-spacing: -0.015em;
--jubo-eyebrow-letter-spacing: 0.11em;
--jubo-button-letter-spacing: 0.055em;

--jubo-button-line-height: 1.2;
--jubo-button-text-transform: uppercase;

--jubo-heading-font-weight: 660;
--jubo-eyebrow-font-weight: 780;
--jubo-button-font-weight: 780;
--jubo-event-meta-font-weight: 720;
--jubo-link-font-weight: 760;
--jubo-faq-question-font-weight: 520;

	/* Spacing-System */
	--jubo-section-gap: clamp(42px, 4.4vw, 62px);
	--jubo-section-padding: var(--jubo-section-gap) 0;
	--jubo-section-head-gap: clamp(24px, 3.2vw, 40px);
	--jubo-h1-margin-bottom: clamp(6px, 0.8vw, 10px);
	--jubo-h2-margin-bottom: clamp(6px, 0.75vw, 10px);
	--jubo-h3-margin-bottom: 12px;
	--jubo-h4-margin-bottom: 7px;
	--jubo-eyebrow-margin-bottom: clamp(12px, 1vw, 17px);
	--jubo-card-gap: clamp(18px, 2vw, 28px);
	--jubo-layout-gap: clamp(28px, 5vw, 70px);
	--jubo-feature-list-margin-top: clamp(22px, 2.8vw, 34px);
	--jubo-feature-list-gap: 14px;
	--jubo-feature-card-gap: 18px;
	--jubo-event-footer-margin-top: 20px;
	--jubo-event-footer-gap: 12px;
	--jubo-event-links-gap: 10px;
	--jubo-start-prices-gap: 12px;
	--jubo-start-prices-margin-top: 20px;
	--jubo-boris-tiles-gap: 14px;
	--jubo-boris-tiles-margin-top: clamp(22px, 2.7vw, 34px);
	--jubo-request-steps-margin-top: clamp(24px, 3vw, 38px);
	--jubo-request-step-padding-left-mobile: 18px;
	--jubo-request-images-gap: 14px;
	--jubo-request-images-margin-top: 18px;
	--jubo-faq-list-gap: 12px;
	--jubo-faq-more-gap: 16px;
	--jubo-zero: 0;
	--jubo-margin-none: 0;
	--jubo-section-stack-margin: 0;
	--jubo-last-child-margin-bottom: 0;
	--jubo-paragraph-margin-bottom-none: 0;

	/* Hero-System: 100% separat vom allgemeinen Section-/Typografie-/Button-/Bildsystem */

--jubo-hero-padding: clamp(22px, 3.4vw, 52px) 0 clamp(48px, 5.2vw, 78px) 0;
--jubo-hero-padding-mobile: 18px 0 42px 0;
	--jubo-hero-margin-none: 0;
	--jubo-hero-last-child-margin-bottom: 0;
	--jubo-hero-content-width: 860px;
	--jubo-hero-text-width: 760px;
	--jubo-hero-h1-max-width: 980px;
--jubo-hero-h1-size: clamp(42px, calc(27.96px + 3.60vw), 74px);
--jubo-hero-h1-size-mobile: clamp(38px, 10.8vw, 50px);
--jubo-hero-h1-margin-bottom: clamp(6px, 0.7vw, 10px);
--jubo-hero-h1-line-height: 1.04;
--jubo-hero-h1-letter-spacing: -0.035em;
--jubo-hero-h1-font-weight: 660;
--jubo-hero-headline-gradient: linear-gradient(135deg, #e7e7d9 0%, #f7e7a0 28%, #d6b14a 52%, #b7890a 78%, #fff1b2 100%);
--jubo-hero-headline-text-fill: transparent;
--jubo-hero-headline-filter: drop-shadow(0 2px 10px rgba(39, 33, 25, 0.34));
--jubo-hero-eyebrow-size: clamp(13.5px, calc(12.62px + 0.22vw), 15.5px);
	--jubo-hero-eyebrow-margin-bottom: clamp(12px, 1vw, 17px);
	--jubo-hero-eyebrow-gap: 10px;
	--jubo-hero-eyebrow-color: #b7890a;
--jubo-hero-eyebrow-font-weight: 780;
--jubo-hero-eyebrow-letter-spacing: 0.11em;
	--jubo-hero-eyebrow-line-height: 1.35;
	--jubo-hero-eyebrow-text-transform: uppercase;
	--jubo-hero-eyebrow-line-width: 34px;
	--jubo-hero-eyebrow-deco-height: 1px;
	--jubo-hero-eyebrow-line-bg: linear-gradient(90deg, transparent, currentColor);
--jubo-hero-lead-size: clamp(18px, calc(16.68px + 0.34vw), 21px);
--jubo-hero-lead-size-mobile: clamp(17px, 4.2vw, 19.5px);
--jubo-hero-lead-line-height: 1.56;
--jubo-hero-lead-color: rgba(218, 217, 155, 0.86);
	--jubo-hero-media-width: 100%;
	--jubo-hero-media-height: 100%;
	--jubo-hero-image-fit: cover;
	--jubo-hero-image-position: center;
	--jubo-hero-bg-scale: 1.015;
	--jubo-hero-line-inset: clamp(24px, 5vw, 72px);
	--jubo-hero-line-height: 1px;
	--jubo-hero-bg: radial-gradient(circle at 18% 18%, rgba(244, 221, 48, 0.16), transparent 28%), linear-gradient(135deg, #272119, #383028 58%, #545c56);
	--jubo-hero-overlay: linear-gradient(90deg, rgba(39, 33, 25, 0.88) 0%, rgba(39, 33, 25, 0.64) 44%, rgba(39, 33, 25, 0.24) 100%), linear-gradient(180deg, rgba(39, 33, 25, 0.16), rgba(39, 33, 25, 0.5));
	--jubo-hero-overlay-mobile: linear-gradient(180deg, rgba(39, 33, 25, 0.32) 0%, rgba(39, 33, 25, 0.72) 48%, rgba(39, 33, 25, 0.94) 100%), linear-gradient(90deg, rgba(39, 33, 25, 0.52), rgba(39, 33, 25, 0.36));
	--jubo-hero-color: #e7e7d9;
	--jubo-hero-line-bg: linear-gradient(90deg, transparent, rgba(218, 217, 155, 0.42), transparent);
	--jubo-hero-action-gap: 14px;
--jubo-hero-action-margin-top: clamp(22px, 2.4vw, 32px);
	--jubo-hero-button-min-height: 52px;
	--jubo-hero-button-padding: 14px 24px;
	--jubo-hero-button-radius: 999px;
--jubo-hero-button-font-size: clamp(14.5px, calc(13.84px + 0.17vw), 16px);
--jubo-hero-button-font-weight: 780;
--jubo-hero-button-letter-spacing: 0.055em;
	--jubo-hero-button-line-height: 1.2;
	--jubo-hero-button-text-transform: uppercase;
	--jubo-hero-button-border-width: 1px;
	--jubo-hero-button-border-style: solid;
	--jubo-hero-button-border: var(--jubo-hero-button-border-width) var(--jubo-hero-button-border-style) transparent;
	--jubo-hero-button-primary-border: rgba(245, 223, 104, 0.48);
	--jubo-hero-button-primary-bg: linear-gradient(145deg, #956a08 0%, #c79214 45%, #e4c46a 100%);
	--jubo-hero-button-primary-color: #17110b;
	--jubo-hero-button-ghost-border: rgba(245, 223, 104, 0.46);
	--jubo-hero-button-ghost-bg: linear-gradient(145deg, #8b6508 0%, #bd8a0f 48%, #d9b755 100%);
	--jubo-hero-button-ghost-color: #17110b;
	--jubo-hero-button-ghost-hover-bg: linear-gradient(145deg, #956a08 0%, #c79214 45%, #e4c46a 100%);
	--jubo-hero-button-hover-border: rgba(245, 223, 104, 0.68);
	--jubo-hero-button-hover-color: #17110b;
--jubo-hero-button-shadow: 0 0 0 1px rgba(245, 223, 104, 0.34), 0 0 0 4px rgba(183, 137, 10, 0.14), 0 0 20px rgba(183, 137, 10, 0.48), 0 3px 9px rgba(39, 33, 25, 0.26), inset 0 1px 0 rgba(255, 255, 255, 0.38), inset 0 -10px 16px rgba(111, 81, 19, 0.3);
--jubo-hero-button-hover-shadow: 0 0 0 1px rgba(245, 223, 104, 0.5), 0 0 0 5px rgba(183, 137, 10, 0.2), 0 0 24px rgba(183, 137, 10, 0.58), 0 3px 10px rgba(39, 33, 25, 0.3), inset 0 1px 0 rgba(255, 255, 255, 0.42), inset 0 -10px 16px rgba(111, 81, 19, 0.3);
	--jubo-hero-button-hover-transform: none;
	--jubo-hero-button-shine-top: -45%;
	--jubo-hero-button-shine-bottom: -45%;
	--jubo-hero-button-shine-left: -35%;
	--jubo-hero-button-shine-width: 34%;
	--jubo-hero-button-shine-bg: linear-gradient(90deg, transparent, transparent, transparent);
	--jubo-hero-button-backdrop-blur: 12px;
	--jubo-hero-motion-ease-luxe: cubic-bezier(0.22, 1, 0.36, 1);
	--jubo-hero-motion-ease-standard: ease;
	--jubo-hero-motion-button-duration: 0.28s;
	--jubo-hero-motion-button-shine-duration: 0.62s;
	--jubo-hero-button-shine-start-transform: translateX(-180%) rotate(14deg);
	--jubo-hero-button-shine-hover-transform: translateX(-180%) rotate(14deg);
	--jubo-hero-button-transition: transform var(--jubo-hero-motion-button-duration) var(--jubo-hero-motion-ease-luxe), box-shadow var(--jubo-hero-motion-button-duration) var(--jubo-hero-motion-ease-standard), background-color var(--jubo-hero-motion-button-duration) var(--jubo-hero-motion-ease-standard), border-color var(--jubo-hero-motion-button-duration) var(--jubo-hero-motion-ease-standard), color var(--jubo-hero-motion-button-duration) var(--jubo-hero-motion-ease-standard);
	--jubo-hero-button-shine-transition: transform var(--jubo-hero-motion-button-shine-duration) var(--jubo-hero-motion-ease-standard);
	--jubo-hero-action-align-mobile: stretch;
	--jubo-hero-action-direction-mobile: column;
	--jubo-hero-button-width-mobile: 100%;

	/* Grid-System */
	--jubo-grid-gap: var(--jubo-card-gap);
	--jubo-grid-3: repeat(3, minmax(0, 1fr));
	--jubo-grid-2: repeat(2, minmax(0, 1fr));
	--jubo-grid-1: 1fr;
	--jubo-split-columns: minmax(0, 1.02fr) minmax(320px, 0.78fr);
	--jubo-boris-columns: minmax(320px, 0.78fr) minmax(0, 1.04fr);
	--jubo-request-columns: var(--jubo-grid-1);
	--jubo-faq-columns: minmax(250px, 0.42fr) minmax(0, 1fr);
	--jubo-feature-card-columns: 120px minmax(0, 1fr);
	--jubo-compare-row-columns: minmax(95px, 0.34fr) minmax(0, 1fr);
	--jubo-compare-row-gap: 10px 16px;
	--jubo-compare-row-gap-mobile: 4px;

	/* Card-System */
	--jubo-radius-xl: 38px;
	--jubo-radius-lg: 30px;
	--jubo-radius-md: 22px;
	--jubo-radius-sm: 16px;
	--jubo-radius-feature-image: 18px;
	--jubo-radius-mobile-media: 28px;
	--jubo-card-hover-border: rgba(244, 221, 48, 0.4);
	--jubo-card-hover-transform: none;
	--jubo-card-padding: clamp(20px, 2vw, 30px);
	--jubo-feature-card-padding: 14px;
	--jubo-boris-tile-padding: 20px;
	--jubo-start-price-padding: 16px;
	--jubo-request-cta-box-padding: clamp(22px, 2.6vw, 40px);
	--jubo-faq-question-padding: 20px 22px;
	--jubo-faq-answer-padding: 0 22px 20px;
	--jubo-faq-more-padding: 18px 20px;
	--jubo-card-padding-small: 20px;
	--jubo-shadow-soft: 0 24px 70px rgba(39, 33, 25, 0.16);
	--jubo-shadow-dark: 0 30px 88px rgba(0, 0, 0, 0.32);
	--jubo-shadow-event: 0 20px 70px rgba(0, 0, 0, 0.28);
	--jubo-shadow-button: 0 0 0 1px rgba(245, 223, 104, 0.32), 0 0 0 4px rgba(183, 137, 10, 0.13), 0 0 19px rgba(183, 137, 10, 0.46), 0 3px 9px rgba(39, 33, 25, 0.24), inset 0 1px 0 rgba(255, 255, 255, 0.36), inset 0 -10px 16px rgba(111, 81, 19, 0.28);
	--jubo-shadow-button-hover: 0 0 0 1px rgba(245, 223, 104, 0.48), 0 0 0 5px rgba(183, 137, 10, 0.18), 0 0 23px rgba(183, 137, 10, 0.56), 0 3px 10px rgba(39, 33, 25, 0.28), inset 0 1px 0 rgba(255, 255, 255, 0.4), inset 0 -10px 16px rgba(111, 81, 19, 0.28);

	/* Komponenten-System */
	--jubo-image-max-width: 100%;
	--jubo-media-width: 100%;
	--jubo-media-height: 100%;
	--jubo-button-shine-top: -45%;
	--jubo-button-shine-bottom: -45%;
	--jubo-button-shine-left: -35%;
	--jubo-button-shine-width: 34%;
	--jubo-button-backdrop-blur: 12px;
	--jubo-button-hover-transform: none;
	--jubo-button-shine-hover-transform: translateX(-180%) rotate(14deg);
	--jubo-event-meta-margin-bottom: 10px;
	--jubo-event-price-padding: 8px 11px;
	--jubo-event-price-letter-spacing: 0.06em;
	--jubo-event-price-font-weight: 850;
	--jubo-event-price-text-transform: uppercase;
	--jubo-empty-state-margin-top: 24px;
	--jubo-suitable-padding-top: 14px;
	--jubo-compare-row-list-margin: 16px 0 22px;
	--jubo-compare-label-letter-spacing: 0.08em;
	--jubo-compare-label-font-weight: 850;
	--jubo-compare-label-text-transform: uppercase;
	--jubo-request-step-padding: 15px 0 15px 22px;
	--jubo-request-step-dot-top: 24px;
	--jubo-request-step-dot-size: 8px;
	--jubo-request-step-dot-shadow: 0 0 0 5px rgba(183, 137, 10, 0.12);
	--jubo-request-cta-sticky-top: 28px;
	--jubo-request-cta-title-margin-bottom: 10px;
	--jubo-faq-radius: 20px;
	--jubo-faq-question-gap: 20px;
	--jubo-faq-question-letter-spacing: -0.02em;
	--jubo-faq-question-bg: transparent;
	--jubo-reveal-opacity-hidden: 0;
	--jubo-reveal-opacity-visible: 1;
	--jubo-reveal-distance: 18px;
	--jubo-reveal-duration: 0.58s;
	--jubo-motion-ease-luxe: cubic-bezier(0.22, 1, 0.36, 1);
	--jubo-motion-ease-standard: ease;
	--jubo-motion-button-duration: 0.28s;
	--jubo-motion-button-shine-duration: 0.62s;
	--jubo-motion-card-duration: 0.3s;
	--jubo-motion-faq-duration: 0.22s;
	--jubo-button-shine-start-transform: translateX(-180%) rotate(14deg);
	--jubo-faq-icon-line-top: 50%;
	--jubo-faq-icon-line-left: 50%;
	--jubo-faq-icon-line-bg: currentColor;
	--jubo-faq-icon-transform-center: translate(-50%, -50%);
	--jubo-faq-icon-transform-closed: translate(-50%, -50%) rotate(90deg);
	--jubo-faq-icon-transform-open: translate(-50%, -50%) rotate(0deg);
	--jubo-reveal-end-transform: translateY(0);
	--jubo-transform-none: none;
	--jubo-reduced-motion-duration: 0.001ms;
	--jubo-reduced-motion-iteration-count: 1;
	--jubo-scroll-behavior-auto: auto;

	/* Bild-System */
	--jubo-image-fit: cover;
	--jubo-image-position: center;
	--jubo-quick-image-min-height: 190px;
	--jubo-format-image-height: 220px;
	--jubo-event-image-height: 210px;
	--jubo-event-image-aspect-ratio: 1 / 1;
	--jubo-split-media-min-height: 520px;
	--jubo-boris-media-min-height: auto;
	--jubo-boris-main-image-height: 390px;
	--jubo-boris-media-divider-margin: 0;
	--jubo-boris-media-gallery-gap: var(--jubo-request-images-gap);
	--jubo-boris-media-gallery-padding: var(--jubo-request-images-margin-top) 0 0;
	--jubo-boris-media-gallery-height: var(--jubo-request-image-min-height);
	--jubo-feature-image-min-height: 108px;
	--jubo-price-card-min-height: 320px;
	--jubo-boris-tile-min-height: auto;
	--jubo-boris-tile-image-height: 190px;
	--jubo-request-image-min-height: 190px;
	--jubo-request-cta-box-min-height: auto;
	--jubo-reveal-delay: 0ms;
	--jubo-layout-media-min-height-mobile: 360px;
	--jubo-boris-main-image-height-mobile: 340px;
	--jubo-boris-media-gallery-height-mobile: var(--jubo-request-image-min-height);
	--jubo-feature-image-min-height-mobile: 170px;
	--jubo-card-media-height-mobile: 210px;
	--jubo-format-card-text-min-height-desktop: 128px;

	/* Button-System */
	--jubo-button-group-margin-top: clamp(24px, 2.8vw, 36px);
	--jubo-button-gap: 14px;
	--jubo-button-padding: 14px 24px;
	--jubo-button-min-height: 52px;
	--jubo-button-radius: 999px;
	--jubo-button-primary-border: rgba(245, 223, 104, 0.46);
	--jubo-button-ghost-border: rgba(245, 223, 104, 0.44);
	--jubo-button-hover-border: rgba(245, 223, 104, 0.66);
	--jubo-button-primary-bg: linear-gradient(145deg, #9a6e08 0%, #c79214 46%, #e2c260 100%);
	--jubo-button-ghost-bg: linear-gradient(145deg, #8b6508 0%, #bd8a0f 48%, #d9b755 100%);
	--jubo-button-ghost-hover-bg: linear-gradient(145deg, #9a6e08 0%, #c79214 46%, #e2c260 100%);
	--jubo-button-light-bg: linear-gradient(145deg, rgba(239, 238, 220, 0.98) 0%, rgba(218, 217, 155, 0.93) 100%);
	--jubo-card-link-light-shadow: var(--jubo-shadow-button);
	--jubo-button-shine-bg: linear-gradient(90deg, transparent, transparent, transparent);

	/* Linien / Borders */
	--jubo-line: rgba(183, 137, 10, 0.24);
	--jubo-soft-line: rgba(39, 33, 25, 0.11);
	--jubo-line-gold-strong: rgba(244, 221, 48, 0.4);
	--jubo-line-gold-soft: rgba(218, 217, 155, 0.28);
	--jubo-line-gold-muted: rgba(218, 217, 155, 0.22);
	--jubo-icon-border-color: rgba(183, 137, 10, 0.28);
	--jubo-request-cta-border-color: rgba(183, 137, 10, 0.36);
	--jubo-border-width: 1px;
	--jubo-border-style-solid: solid;
	--jubo-border-style-dashed: dashed;
	--jubo-border-none: 0;
	--jubo-border-transparent: var(--jubo-border-width) var(--jubo-border-style-solid) transparent;
	--jubo-border-line: var(--jubo-border-width) var(--jubo-border-style-solid) var(--jubo-line);
	--jubo-border-soft-line: var(--jubo-border-width) var(--jubo-border-style-solid) var(--jubo-soft-line);
	--jubo-border-gold-soft: var(--jubo-border-width) var(--jubo-border-style-solid) var(--jubo-line-gold-soft);
	--jubo-border-gold-muted: var(--jubo-border-width) var(--jubo-border-style-solid) var(--jubo-line-gold-muted);
	--jubo-border-icon: var(--jubo-border-width) var(--jubo-border-style-solid) var(--jubo-icon-border-color);
	--jubo-border-request-cta: var(--jubo-border-width) var(--jubo-border-style-solid) var(--jubo-request-cta-border-color);
	--jubo-card-border: var(--jubo-border-line);
	--jubo-button-border: var(--jubo-border-transparent);
	--jubo-eyebrow-line-width: 34px;
	--jubo-eyebrow-deco-line-height: 1px;
	--jubo-eyebrow-line-bg: linear-gradient(90deg, transparent, currentColor);
	--jubo-faq-icon-size: 22px;
	--jubo-faq-icon-line-width: 16px;
	--jubo-faq-icon-line-height: 2px;
	/* Flächen / Hintergründe */
	--jubo-light-text: rgba(231, 231, 217, 0.86);
	--jubo-dark-text: rgba(39, 33, 25, 0.75);
	--jubo-card-text-light: rgba(231, 231, 217, 0.82);
	--jubo-muted-light-text: rgba(231, 231, 217, 0.68);
	--jubo-card-bg-light: rgba(231, 231, 217, 0.78);
	--jubo-card-bg-feature: rgba(231, 231, 217, 0.74);
	--jubo-card-bg-dark: rgba(231, 231, 217, 0.08);
	--jubo-request-steps-bg: rgba(231, 231, 217, 0.62);
	--jubo-request-cta-bg: radial-gradient(circle at 14% 18%, rgba(244, 221, 48, 0.16), transparent 32%), linear-gradient(135deg, rgba(231, 231, 217, 0.92), rgba(218, 217, 155, 0.72));
	--jubo-icon-bg: rgba(218, 217, 155, 0.32);
	--jubo-badge-bg: rgba(218, 217, 155, 0.16);
	--jubo-media-bg: linear-gradient(135deg, var(--jubo-chicago), var(--jubo-zeus));
	--jubo-media-bg-gold: radial-gradient(circle at 22% 22%, rgba(244, 221, 48, 0.16), transparent 30%), linear-gradient(135deg, var(--jubo-zeus), var(--jubo-chicago));
	--jubo-quick-media-bg: radial-gradient(circle at 28% 20%, rgba(244, 221, 48, 0.16), transparent 30%), linear-gradient(135deg, var(--jubo-chicago), var(--jubo-zeus));
	--jubo-section-bg-light: radial-gradient(circle at 92% 14%, rgba(183, 137, 10, 0.12), transparent 28%), linear-gradient(180deg, #f1f0df 0%, var(--jubo-white-rock) 100%);
	--jubo-section-bg-warm: radial-gradient(circle at 12% 18%, rgba(244, 221, 48, 0.14), transparent 26%), linear-gradient(135deg, var(--jubo-white-rock), rgba(218, 217, 155, 0.48));
	--jubo-section-bg-dark: radial-gradient(circle at 18% 14%, rgba(244, 221, 48, 0.13), transparent 28%), linear-gradient(135deg, var(--jubo-zeus), #342d25 58%, var(--jubo-chicago));
	--jubo-section-bg-gold: linear-gradient(135deg, rgba(183, 137, 10, 0.2), rgba(218, 217, 155, 0.56)), var(--jubo-white-rock);
	--jubo-overlay-price: linear-gradient(180deg, rgba(39, 33, 25, 0.48), rgba(39, 33, 25, 0.92));
	--jubo-overlay-boris-tile: linear-gradient(180deg, rgba(231, 231, 217, 0.48), rgba(231, 231, 217, 0.86));

	background: var(--jubo-white-rock);
	color: var(--jubo-zeus);
	font-family: inherit;
	font-size: var(--jubo-font-base-size);
	line-height: var(--jubo-base-line-height);
	overflow: hidden;
}

.jubo-bingo-page *,
.jubo-bingo-page *::before,
.jubo-bingo-page *::after {
	box-sizing: border-box;
}

.jubo-bingo-page a {
	color: inherit;
	text-decoration: none;
}

.jubo-bingo-page img {
	display: block;
	max-width: var(--jubo-image-max-width);
}

.jubo-bingo-shell {
	width: var(--jubo-shell-width);
	margin-inline: auto;
}

.jubo-bingo-page h1,
.jubo-bingo-page h2,
.jubo-bingo-page h3,
.jubo-bingo-page h4,
.jubo-bingo-page p {
	margin-top: 0;
}

.jubo-bingo-page h1,
.jubo-bingo-page h2,
.jubo-bingo-page h3,
.jubo-bingo-page h4 {
	color: inherit;
	font-family: inherit;
	font-weight: var(--jubo-heading-font-weight);
	letter-spacing: var(--jubo-headline-letter-spacing);
	line-height: var(--jubo-headline-line-height);
}

.jubo-bingo-page h1 {
	max-width: var(--jubo-content-h1);
	margin-bottom: var(--jubo-h1-margin-bottom);
	font-size: var(--jubo-h1);
}

.jubo-bingo-page h2 {
	max-width: var(--jubo-content-h2);
	margin-bottom: var(--jubo-h2-margin-bottom);
	font-size: var(--jubo-h2);
}

.jubo-bingo-page h3 {
	margin-bottom: var(--jubo-h3-margin-bottom);
	font-size: var(--jubo-card-title);
}

.jubo-bingo-page h4 {
	margin-bottom: var(--jubo-h4-margin-bottom);
	font-size: var(--jubo-h4);
	letter-spacing: var(--jubo-h4-letter-spacing);
}

.jubo-bingo-page p {
	color: var(--jubo-dark-text);
	font-family: inherit;
	font-size: var(--jubo-text-base);
	line-height: var(--jubo-body-line-height);
}

.jubo-bingo-section .jubo-bingo-eyebrow {
	display: inline-flex;
	align-items: center;
	gap: var(--jubo-event-links-gap);
	margin: 0 0 var(--jubo-eyebrow-margin-bottom);
	color: var(--jubo-dark-goldenrod);
	font-family: inherit;
	font-size: var(--jubo-eyebrow-size);
	font-weight: var(--jubo-eyebrow-font-weight);
	letter-spacing: var(--jubo-eyebrow-letter-spacing);
	line-height: var(--jubo-eyebrow-text-line-height);
	text-transform: var(--jubo-eyebrow-text-transform);
}

.jubo-bingo-section .jubo-bingo-eyebrow::before {
	content: "";
	display: inline-block;
	width: var(--jubo-eyebrow-line-width);
	height: var(--jubo-eyebrow-deco-line-height);
	background: var(--jubo-eyebrow-line-bg);
}

.jubo-bingo-section .jubo-bingo-eyebrow--light {
	color: var(--jubo-dark-goldenrod);
}

.jubo-bingo-section {
	position: relative;
	padding: var(--jubo-section-padding);
}

.jubo-bingo-section + .jubo-bingo-section {
	margin-top: 0;
}

.jubo-bingo-section--light {
	background: var(--jubo-section-bg-light);
}

.jubo-bingo-section--warm {
	background: var(--jubo-section-bg-warm);
}

.jubo-bingo-section--dark {
	background: var(--jubo-section-bg-dark);
	color: var(--jubo-white-rock);
}

.jubo-bingo-section--gold {
	background: var(--jubo-section-bg-gold);
}

.jubo-bingo-section-head {
	max-width: var(--jubo-content-section-head);
	margin-bottom: var(--jubo-section-head-gap);
}

.jubo-bingo-section-head > :last-child {
	margin-bottom: var(--jubo-last-child-margin-bottom);
}

.jubo-bingo-section-head--light p,
.jubo-bingo-section--dark p {
	color: var(--jubo-light-text);
}

.jubo-bingo-lead {
	max-width: var(--jubo-content-lead);
	font-size: var(--jubo-text-lead);
	line-height: var(--jubo-lead-line-height);
}

.jubo-bingo-section-head h1 + p,
.jubo-bingo-section-head h2 + p,
.jubo-bingo-section-head h1 + .jubo-bingo-lead,
.jubo-bingo-section-head h2 + .jubo-bingo-lead {
	margin-top: 0;
}

body[class*="template-jubo-bingo-landingpage"] #content-wrap,
body[class*="template-jubo-bingo-landingpage"] #primary,
body[class*="template-jubo-bingo-landingpage"] .content-area {
	margin-top: 0 !important;
	margin-bottom: 0;
	padding-top: 0 !important;
	padding-bottom: 0 !important;
}

/* Buttons */
.jubo-bingo-section .jubo-bingo-actions {
	display: flex;
	flex-wrap: wrap;
	gap: var(--jubo-button-gap);
	margin-top: var(--jubo-button-group-margin-top);
}

.jubo-bingo-section .jubo-bingo-actions--center {
	justify-content: center;
}

.jubo-bingo-section .jubo-bingo-button,
.jubo-bingo-card-link {
	position: relative;
	top: var(--jubo-zero);
	left: var(--jubo-zero);
	isolation: isolate;
	display: inline-flex;
	appearance: none;
	min-height: var(--jubo-button-min-height);
	align-items: center;
	justify-content: center;
	padding: var(--jubo-button-padding);
	border: var(--jubo-button-border);
	border-radius: var(--jubo-button-radius);
	font-family: inherit;
	font-size: var(--jubo-button-font-size);
	font-weight: var(--jubo-button-font-weight);
	letter-spacing: var(--jubo-button-letter-spacing);
	line-height: var(--jubo-button-line-height);
	text-align: center;
	text-decoration: none !important;
	text-transform: var(--jubo-button-text-transform);
	overflow: hidden;
	transition: transform var(--jubo-motion-button-duration) var(--jubo-motion-ease-luxe), box-shadow var(--jubo-motion-button-duration) var(--jubo-motion-ease-standard), background-color var(--jubo-motion-button-duration) var(--jubo-motion-ease-standard), border-color var(--jubo-motion-button-duration) var(--jubo-motion-ease-standard), color var(--jubo-motion-button-duration) var(--jubo-motion-ease-standard);
}

.jubo-bingo-section .jubo-bingo-button::after,
.jubo-bingo-card-link::after {
	content: "";
	position: absolute;
	top: var(--jubo-button-shine-top);
	bottom: var(--jubo-button-shine-bottom);
	left: var(--jubo-button-shine-left);
	z-index: -1;
	width: var(--jubo-button-shine-width);
	background: var(--jubo-button-shine-bg);
	transform: var(--jubo-button-shine-start-transform);
	transition: transform var(--jubo-motion-button-shine-duration) var(--jubo-motion-ease-standard);
}

.jubo-bingo-section .jubo-bingo-button--primary,
.jubo-bingo-card-link {
	border-color: var(--jubo-button-primary-border);
	background: var(--jubo-button-primary-bg);
	color: #17110b;
	box-shadow: var(--jubo-shadow-button);
}

.jubo-bingo-section .jubo-bingo-button--ghost {
	border-color: var(--jubo-button-ghost-border);
	background: var(--jubo-button-ghost-bg);
	color: #17110b;
	box-shadow: var(--jubo-shadow-button);
	backdrop-filter: blur(var(--jubo-button-backdrop-blur));
}

.jubo-bingo-card-link--light {
	background: var(--jubo-button-light-bg);
	color: #17110b;
	box-shadow: var(--jubo-card-link-light-shadow);
}

.jubo-bingo-section .jubo-bingo-button:hover,
.jubo-bingo-section .jubo-bingo-button:focus-visible,
.jubo-bingo-card-link:hover,
.jubo-bingo-card-link:focus-visible {
	top: var(--jubo-zero);
	left: var(--jubo-zero);
	border-color: var(--jubo-button-hover-border);
	box-shadow: var(--jubo-shadow-button-hover);
	color: #17110b;
	transform: var(--jubo-button-hover-transform);
}

.jubo-bingo-section .jubo-bingo-button--ghost:hover,
.jubo-bingo-section .jubo-bingo-button--ghost:focus-visible {
	background: var(--jubo-button-ghost-hover-bg);
	color: #17110b;
}

.jubo-bingo-section .jubo-bingo-button:hover::after,
.jubo-bingo-section .jubo-bingo-button:focus-visible::after,
.jubo-bingo-card-link:hover::after,
.jubo-bingo-card-link:focus-visible::after {
	transform: var(--jubo-button-shine-hover-transform);
}

/* Hero */
.jubo-bingo-hero {
	position: relative;
	isolation: isolate;
	padding: var(--jubo-hero-padding);
	background: var(--jubo-hero-bg);
	color: var(--jubo-hero-color);
	overflow: hidden;
}

.jubo-bingo-hero__background {
	position: absolute;
	inset: 0;
	z-index: -3;
}

.jubo-bingo-hero__background img {
	width: var(--jubo-hero-media-width);
	height: var(--jubo-hero-media-height);
	object-fit: var(--jubo-hero-image-fit);
	object-position: var(--jubo-hero-image-position);
	transform: scale(var(--jubo-hero-bg-scale));
}

.jubo-bingo-hero__overlay {
	position: absolute;
	inset: 0;
	z-index: -2;
	background: var(--jubo-hero-overlay);
}

.jubo-bingo-hero::after {
	content: "";
	position: absolute;
	inset: auto var(--jubo-hero-line-inset) 0;
	height: var(--jubo-hero-line-height);
	background: var(--jubo-hero-line-bg);
}

.jubo-bingo-hero__inner {
	position: relative;
	z-index: 1;
}

.jubo-bingo-hero__content {
	max-width: var(--jubo-hero-content-width);
}

.jubo-bingo-hero h1 {
	max-width: var(--jubo-hero-h1-max-width);
	margin-bottom: var(--jubo-hero-h1-margin-bottom);
	font-size: var(--jubo-hero-h1-size);
	font-weight: var(--jubo-hero-h1-font-weight);
	letter-spacing: var(--jubo-hero-h1-letter-spacing);
	line-height: var(--jubo-hero-h1-line-height);
	color: var(--jubo-hero-color);
	background: var(--jubo-hero-headline-gradient);
	-webkit-background-clip: text;
	background-clip: text;
	-webkit-text-fill-color: var(--jubo-hero-headline-text-fill);
	filter: var(--jubo-hero-headline-filter);
}

.jubo-bingo-hero .jubo-bingo-eyebrow {
	display: inline-flex;
	align-items: center;
	gap: var(--jubo-hero-eyebrow-gap);
	margin: 0 0 var(--jubo-hero-eyebrow-margin-bottom);
	color: var(--jubo-hero-eyebrow-color) !important;
	font-family: inherit;
	font-size: var(--jubo-hero-eyebrow-size);
	font-weight: var(--jubo-hero-eyebrow-font-weight);
	letter-spacing: var(--jubo-hero-eyebrow-letter-spacing);
	line-height: var(--jubo-hero-eyebrow-line-height);
	text-transform: var(--jubo-hero-eyebrow-text-transform);
}

.jubo-bingo-hero .jubo-bingo-eyebrow::before {
	content: "";
	display: inline-block;
	width: var(--jubo-hero-eyebrow-line-width);
	height: var(--jubo-hero-eyebrow-deco-height);
	background: var(--jubo-hero-eyebrow-line-bg);
}

.jubo-bingo-hero__text,
.jubo-bingo-hero .jubo-bingo-lead,
.jubo-bingo-hero__content > p:not(.jubo-bingo-eyebrow) {
	display: block;
	max-width: var(--jubo-hero-text-width);
	margin-top: 0;
	margin-bottom: var(--jubo-hero-margin-none);
	color: var(--jubo-hero-lead-color) !important;
	font-size: var(--jubo-hero-lead-size);
	line-height: var(--jubo-hero-lead-line-height);
	opacity: 1;
	visibility: visible;
}

.jubo-bingo-hero__text p,
.jubo-bingo-hero .jubo-bingo-lead p,
.jubo-bingo-hero__content > p:not(.jubo-bingo-eyebrow) {
	color: var(--jubo-hero-lead-color) !important;
	font-size: var(--jubo-hero-lead-size);
	line-height: var(--jubo-hero-lead-line-height);
	opacity: 1;
	visibility: visible;
}

.jubo-bingo-hero .jubo-bingo-actions {
	display: flex;
	flex-wrap: wrap;
	gap: var(--jubo-hero-action-gap);
	margin-top: var(--jubo-hero-action-margin-top);
}

.jubo-bingo-hero .jubo-bingo-actions--center {
	justify-content: center;
}

.jubo-bingo-hero__content > :last-child {
	margin-bottom: var(--jubo-hero-last-child-margin-bottom);
}

.jubo-bingo-hero .jubo-bingo-button {
	position: relative;
	top: var(--jubo-zero);
	left: var(--jubo-zero);
	isolation: isolate;
	display: inline-flex;
	appearance: none;
	min-height: var(--jubo-hero-button-min-height);
	align-items: center;
	justify-content: center;
	padding: var(--jubo-hero-button-padding);
	border: var(--jubo-hero-button-border);
	border-radius: var(--jubo-hero-button-radius);
	font-family: inherit;
	font-size: var(--jubo-hero-button-font-size);
	font-weight: var(--jubo-hero-button-font-weight);
	letter-spacing: var(--jubo-hero-button-letter-spacing);
	line-height: var(--jubo-hero-button-line-height);
	text-align: center;
	text-decoration: none !important;
	text-transform: var(--jubo-hero-button-text-transform);
	overflow: hidden;
	transition: var(--jubo-hero-button-transition);
}

.jubo-bingo-hero .jubo-bingo-button::after {
	content: "";
	position: absolute;
	top: var(--jubo-hero-button-shine-top);
	bottom: var(--jubo-hero-button-shine-bottom);
	left: var(--jubo-hero-button-shine-left);
	z-index: -1;
	width: var(--jubo-hero-button-shine-width);
	background: var(--jubo-hero-button-shine-bg);
	transform: var(--jubo-hero-button-shine-start-transform);
	transition: var(--jubo-hero-button-shine-transition);
}

.jubo-bingo-hero .jubo-bingo-button--primary {
	border-color: var(--jubo-hero-button-primary-border);
	background: var(--jubo-hero-button-primary-bg);
	color: var(--jubo-hero-button-primary-color);
	box-shadow: var(--jubo-hero-button-shadow);
}

.jubo-bingo-hero .jubo-bingo-button--ghost {
	border-color: var(--jubo-hero-button-ghost-border);
	background: var(--jubo-hero-button-ghost-bg);
	color: var(--jubo-hero-button-ghost-color);
	box-shadow: var(--jubo-hero-button-shadow);
	backdrop-filter: blur(var(--jubo-hero-button-backdrop-blur));
}

.jubo-bingo-hero .jubo-bingo-button:hover,
.jubo-bingo-hero .jubo-bingo-button:focus-visible {
	top: var(--jubo-zero);
	left: var(--jubo-zero);
	border-color: var(--jubo-hero-button-hover-border);
	box-shadow: var(--jubo-hero-button-hover-shadow);
	color: var(--jubo-hero-button-hover-color);
	transform: var(--jubo-hero-button-hover-transform);
}

.jubo-bingo-hero .jubo-bingo-button--ghost:hover,
.jubo-bingo-hero .jubo-bingo-button--ghost:focus-visible {
	background: var(--jubo-hero-button-ghost-hover-bg);
}

.jubo-bingo-hero .jubo-bingo-button:hover::after,
.jubo-bingo-hero .jubo-bingo-button:focus-visible::after {
	transform: var(--jubo-hero-button-shine-hover-transform);
}

/* Quickfinder */
.jubo-bingo-quick-grid,
.jubo-bingo-format-grid,
.jubo-bingo-event-grid {
	display: grid;
	gap: var(--jubo-grid-gap);
}

.jubo-bingo-quick-grid {
	grid-template-columns: var(--jubo-grid-3);
}

.jubo-bingo-quick-card,
.jubo-bingo-format-card,
.jubo-bingo-event-card,
.jubo-bingo-feature-card,
.jubo-bingo-boris-tile {
	position: relative;
	isolation: isolate;
	border: var(--jubo-card-border);
	border-radius: var(--jubo-radius-lg);
	box-shadow: var(--jubo-shadow-soft);
	overflow: hidden;
	transition: transform var(--jubo-motion-card-duration) var(--jubo-motion-ease-luxe), box-shadow var(--jubo-motion-card-duration) var(--jubo-motion-ease-standard), border-color var(--jubo-motion-card-duration) var(--jubo-motion-ease-standard);
}

.jubo-bingo-quick-card:hover,
.jubo-bingo-format-card:hover,
.jubo-bingo-event-card:hover,
.jubo-bingo-feature-card:hover,
.jubo-bingo-boris-tile:hover {
	border-color: var(--jubo-card-hover-border);
	box-shadow: var(--jubo-shadow-dark);
	transform: var(--jubo-card-hover-transform);
}

.jubo-bingo-quick-card {
	background: var(--jubo-card-bg-light);
}

.jubo-bingo-quick-card__image {
	height: var(--jubo-quick-image-min-height);
	min-height: var(--jubo-quick-image-min-height);
	background: var(--jubo-quick-media-bg);
	overflow: hidden;
}

.jubo-bingo-quick-card__image img,
.jubo-bingo-format-card__media img,
.jubo-bingo-event-card__media img,
.jubo-bingo-boris__media img,
.jubo-bingo-boris-tile__bg img,
.jubo-bingo-feature-card__image img,
.jubo-bingo-request-images img,
.jubo-bingo-split__media img {
	width: var(--jubo-media-width);
	height: var(--jubo-media-height);
	object-fit: var(--jubo-image-fit);
	object-position: var(--jubo-image-position);
}

.jubo-bingo-quick-card__body {
	padding: var(--jubo-card-padding);
}

/* Positionierung */
.jubo-bingo-split,
.jubo-bingo-boris-layout,
.jubo-bingo-request-layout {
	display: grid;
	grid-template-columns: var(--jubo-split-columns);
	gap: var(--jubo-layout-gap);
	align-items: center;
}

.jubo-bingo-split__media,
.jubo-bingo-boris__media {
	height: var(--jubo-split-media-min-height);
	min-height: var(--jubo-split-media-min-height);
	border: var(--jubo-card-border);
	border-radius: var(--jubo-radius-xl);
	background: var(--jubo-media-bg-gold);
	box-shadow: var(--jubo-shadow-soft);
	overflow: hidden;
}

.jubo-bingo-boris__media {
	display: flex;
	height: var(--jubo-boris-media-min-height);
	min-height: 0;
	flex-direction: column;
	border: 0;
	border-radius: 0;
	background: transparent;
	box-shadow: none;
	overflow: visible;
}

.jubo-bingo-boris__main-image {
	width: var(--jubo-media-width);
	height: var(--jubo-boris-main-image-height);
	flex: 0 0 var(--jubo-boris-main-image-height);
	border: var(--jubo-card-border);
	border-radius: var(--jubo-radius-xl);
	background: var(--jubo-media-bg-gold);
	box-shadow: var(--jubo-shadow-soft);
	object-fit: var(--jubo-image-fit);
	object-position: var(--jubo-image-position);
	overflow: hidden;
}

.jubo-bingo-boris__media-divider {
	display: none;
	width: 0;
	height: 0;
	flex: 0 0 0;
	margin: var(--jubo-boris-media-divider-margin);
	background: none;
}

.jubo-bingo-boris__gallery {
	display: grid;
	grid-template-columns: var(--jubo-grid-2);
	gap: var(--jubo-boris-media-gallery-gap);
	min-height: 0;
	padding: var(--jubo-boris-media-gallery-padding);
}

.jubo-bingo-boris__gallery-item {
	min-height: var(--jubo-boris-media-gallery-height);
	margin: 0;
	border: var(--jubo-card-border);
	border-radius: var(--jubo-radius-md);
	background: var(--jubo-media-bg);
	box-shadow: var(--jubo-shadow-soft);
	overflow: hidden;
}

.jubo-bingo-boris__gallery-item img {
	width: var(--jubo-media-width);
	height: var(--jubo-media-height);
	object-fit: var(--jubo-image-fit);
	object-position: var(--jubo-image-position);
}

.jubo-bingo-feature-list {
	display: grid;
	gap: var(--jubo-feature-list-gap);
	margin-top: var(--jubo-feature-list-margin-top);
}

.jubo-bingo-feature-card {
	display: grid;
	grid-template-columns: var(--jubo-feature-card-columns);
	gap: var(--jubo-feature-card-gap);
	align-items: stretch;
	padding: var(--jubo-feature-card-padding);
	background: var(--jubo-card-bg-feature);
}

.jubo-bingo-feature-card__image {
	min-height: var(--jubo-feature-image-min-height);
	border-radius: var(--jubo-radius-feature-image);
	background: var(--jubo-media-bg);
	overflow: hidden;
}

.jubo-bingo-feature-card h3,
.jubo-bingo-feature-card p {
	margin-bottom: 0;
}

/* JuBo Unterschied / Kacheln 7.1–7.3: Titelabstand und Textgröße gezielt angepasst */
.jubo-bingo-feature-card h3 {
	margin-bottom: 16px;
}

.jubo-bingo-feature-card p {
	font-size: clamp(16px, calc(15.34px + 0.17vw), 17.5px);
	line-height: var(--jubo-body-line-height);
}

/* Event cards */
.jubo-bingo-event-grid {
	grid-template-columns: var(--jubo-grid-3);
}

.jubo-bingo-event-card {
	background: var(--jubo-card-bg-dark);
	color: var(--jubo-white-rock);
	box-shadow: var(--jubo-shadow-event);
}

.jubo-bingo-event-card p {
	color: var(--jubo-card-text-light);
}

.jubo-bingo-event-card__media {
	aspect-ratio: var(--jubo-event-image-aspect-ratio);
	height: auto;
	background: var(--jubo-media-bg);
}

.jubo-bingo-event-card__body {
	padding: var(--jubo-card-padding);
}

.jubo-bingo-event-card__date,
.jubo-bingo-event-card__location {
	margin-bottom: var(--jubo-event-meta-margin-bottom);
	color: var(--jubo-deco);
	font-weight: var(--jubo-event-meta-font-weight);
}

.jubo-bingo-event-card__footer {
	display: flex;
	flex-wrap: wrap;
	gap: var(--jubo-event-footer-gap);
	align-items: center;
	justify-content: space-between;
	margin-top: var(--jubo-event-footer-margin-top);
}

.jubo-bingo-event-card__price {
	display: inline-flex;
	padding: var(--jubo-event-price-padding);
	border-radius: var(--jubo-button-radius);
	background: var(--jubo-badge-bg);
	color: var(--jubo-deco);
	font-size: var(--jubo-text-xs);
	font-weight: var(--jubo-event-price-font-weight);
	letter-spacing: var(--jubo-event-price-letter-spacing);
	text-transform: var(--jubo-event-price-text-transform);
}

.jubo-bingo-event-card__links {
	display: flex;
	flex-wrap: wrap;
	gap: var(--jubo-event-links-gap);
}

.jubo-bingo-event-card__links a {
	position: relative;
	top: var(--jubo-zero);
	left: var(--jubo-zero);
	color: #f6e7a8;
	font-size: var(--jubo-text-sm);
	font-weight: var(--jubo-link-font-weight);
	transform: var(--jubo-transform-none);
}

.jubo-bingo-event-card__links a:hover,
.jubo-bingo-event-card__links a:focus-visible {
	top: var(--jubo-zero);
	left: var(--jubo-zero);
	color: #f4dd30;
	text-shadow: 0 0 12px rgba(183, 137, 10, 0.42);
	transform: var(--jubo-transform-none);
}

.jubo-bingo-empty-state {
	margin-top: var(--jubo-empty-state-margin-top);
	padding: var(--jubo-card-padding);
	border: var(--jubo-border-gold-soft);
	border-radius: var(--jubo-radius-md);
	background: var(--jubo-card-bg-dark);
}

.jubo-bingo-empty-state p {
	margin-bottom: 0;
	color: var(--jubo-light-text);
}

/* Private formats */
.jubo-bingo-format-grid {
	grid-template-columns: var(--jubo-grid-3);
}

.jubo-bingo-format-card {
	display: flex;
	flex-direction: column;
	background: var(--jubo-card-bg-light);
}

.jubo-bingo-format-card__media {
	height: var(--jubo-format-image-height);
	background: var(--jubo-media-bg);
}

.jubo-bingo-format-card__body {
	display: flex;
	flex: 1;
	flex-direction: column;
	padding: var(--jubo-card-padding);
}

.jubo-bingo-format-card__body > p {
	flex: 1;
}

.jubo-bingo-format-card__body .jubo-bingo-card-link {
	margin-top: var(--jubo-event-footer-margin-top);
}

.jubo-bingo-suitable {
	margin-top: auto;
	padding-top: var(--jubo-suitable-padding-top);
	border-top: var(--jubo-border-soft-line);
	font-size: var(--jubo-text-sm);
}

/* Boris */
.jubo-bingo-boris-layout {
	grid-template-columns: var(--jubo-boris-columns);
}

.jubo-bingo-boris-tiles {
	display: grid;
	grid-template-columns: var(--jubo-grid-3);
	gap: var(--jubo-boris-tiles-gap);
	margin-top: var(--jubo-boris-tiles-margin-top);
}

.jubo-bingo-boris-tile {
	display: flex;
	min-height: var(--jubo-boris-tile-min-height);
	flex-direction: column;
	padding: 0;
	background: var(--jubo-card-bg-light);
}

.jubo-bingo-boris-tile__bg {
	position: relative;
	inset: auto;
	z-index: 0;
	order: 0;
	width: var(--jubo-media-width);
	height: var(--jubo-boris-tile-image-height);
	flex: 0 0 var(--jubo-boris-tile-image-height);
	background: var(--jubo-media-bg);
	overflow: hidden;
}

.jubo-bingo-boris-tile__bg::after {
	content: "";
	position: absolute;
	inset: 0;
	background: none;
}

.jubo-bingo-boris-tile h3 {
	order: 1;
	margin: var(--jubo-boris-tile-padding) var(--jubo-boris-tile-padding) var(--jubo-h3-margin-bottom);
	color: var(--jubo-zeus);
}

.jubo-bingo-boris-tile p {
	order: 2;
	margin: 0 var(--jubo-boris-tile-padding) var(--jubo-boris-tile-padding);
	color: var(--jubo-dark-text);
	text-shadow: none;
}

/* Anfrage */
.jubo-bingo-request-layout {
	grid-template-columns: var(--jubo-grid-1);
	align-items: start;
	max-width: none;
}

.jubo-bingo-request__content {
	width: 100%;
}

.jubo-bingo-request-steps {
	margin-top: var(--jubo-request-steps-margin-top);
	padding: var(--jubo-card-padding);
	border: var(--jubo-card-border);
	border-radius: var(--jubo-radius-lg);
	background: var(--jubo-request-steps-bg);
}

.jubo-bingo-request-steps > h3 {
	font-size: var(--jubo-h3);
}

.jubo-bingo-request-step {
	position: relative;
	padding: var(--jubo-request-step-padding);
	border-top: var(--jubo-border-soft-line);
}

.jubo-bingo-request-step::before {
	content: "";
	position: absolute;
	top: var(--jubo-request-step-dot-top);
	left: 0;
	width: var(--jubo-request-step-dot-size);
	height: var(--jubo-request-step-dot-size);
	border-radius: var(--jubo-button-radius);
	background: var(--jubo-dark-goldenrod);
	box-shadow: var(--jubo-request-step-dot-shadow);
}

.jubo-bingo-request-step p {
	margin-bottom: 0;
	font-size: var(--jubo-text-sm);
}

.jubo-bingo-request-images {
	display: grid;
	grid-template-columns: var(--jubo-grid-2);
	gap: var(--jubo-request-images-gap);
	margin-top: var(--jubo-request-images-margin-top);
}

.jubo-bingo-request-images figure {
	min-height: var(--jubo-request-image-min-height);
	margin: 0;
	border-radius: var(--jubo-radius-md);
	background: var(--jubo-media-bg);
	overflow: hidden;
}

.jubo-bingo-request__cta {
	position: static;
	margin-top: var(--jubo-request-images-margin-top);
	padding: var(--jubo-request-cta-box-padding);
	border: var(--jubo-card-border);
	border-radius: var(--jubo-radius-xl);
	background: var(--jubo-request-cta-bg);
	box-shadow: var(--jubo-shadow-soft);
}

.jubo-bingo-request-cta-box {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	min-height: var(--jubo-request-cta-box-min-height);
	align-items: center;
	gap: clamp(18px, 3vw, 42px);
	padding: var(--jubo-card-padding);
	border: var(--jubo-border-request-cta);
	border-radius: var(--jubo-radius-md);
	text-align: left;
}

.jubo-bingo-request-cta-box h3 {
	margin-bottom: var(--jubo-request-cta-title-margin-bottom);
	font-size: var(--jubo-h3);
}

.jubo-bingo-request-cta-box p {
	max-width: var(--jubo-content-lead);
	margin-bottom: 0;
}

.jubo-bingo-request-cta-box .jubo-bingo-button {
	justify-self: end;
	margin-top: 0;
	white-space: nowrap;
}

/* FAQ */
.jubo-bingo-faq-layout {
	display: grid;
	grid-template-columns: var(--jubo-faq-columns);
	gap: var(--jubo-layout-gap);
	align-items: start;
}

.jubo-bingo-faq-list {
	display: grid;
	gap: var(--jubo-faq-list-gap);
}

.jubo-bingo-faq-item,
.jubo-bingo-faq-more {
	border: var(--jubo-border-gold-muted);
	border-radius: var(--jubo-faq-radius);
	background: var(--jubo-card-bg-dark);
	overflow: hidden;
}

.jubo-bingo-faq-question {
	position: relative;
	top: var(--jubo-zero);
	left: var(--jubo-zero);
	display: flex;
	width: var(--jubo-media-width);
	appearance: none;
	align-items: center;
	justify-content: space-between;
	gap: var(--jubo-faq-question-gap);
	padding: var(--jubo-faq-question-padding);
	border: var(--jubo-border-none);
	background: var(--jubo-faq-question-bg);
	color: var(--jubo-white-rock);
	font-family: inherit;
	font-size: var(--jubo-faq-question-size);
	font-weight: var(--jubo-faq-question-font-weight);
	letter-spacing: var(--jubo-faq-question-letter-spacing);
	line-height: var(--jubo-faq-question-line-height);
	text-align: left;
	cursor: pointer;
}

.jubo-bingo-faq-question:hover,
.jubo-bingo-faq-question:focus-visible {
	top: var(--jubo-zero);
	left: var(--jubo-zero);
	background: rgba(231, 231, 217, 0.05);
	color: #f6e7a8;
	box-shadow: 0 0 0 1px rgba(218, 217, 155, 0.22), 0 0 16px rgba(183, 137, 10, 0.18), inset 0 0 18px rgba(183, 137, 10, 0.1);
	transform: var(--jubo-transform-none);
}

.jubo-bingo-faq-icon {
	position: relative;
	width: var(--jubo-faq-icon-size);
	height: var(--jubo-faq-icon-size);
	flex: 0 0 var(--jubo-faq-icon-size);
}

.jubo-bingo-faq-icon::before,
.jubo-bingo-faq-icon::after {
	content: "";
	position: absolute;
	top: var(--jubo-faq-icon-line-top);
	left: var(--jubo-faq-icon-line-left);
	width: var(--jubo-faq-icon-line-width);
	height: var(--jubo-faq-icon-line-height);
	border-radius: var(--jubo-button-radius);
	background: var(--jubo-faq-icon-line-bg);
	transform: var(--jubo-faq-icon-transform-center);
	transition: transform var(--jubo-motion-faq-duration) var(--jubo-motion-ease-standard);
}

.jubo-bingo-faq-icon::after {
	transform: var(--jubo-faq-icon-transform-closed);
}

.jubo-bingo-faq-question[aria-expanded="true"] .jubo-bingo-faq-icon::after {
	transform: var(--jubo-faq-icon-transform-open);
}

.jubo-bingo-faq-answer {
	padding: var(--jubo-faq-answer-padding);
}

.jubo-bingo-faq-answer p {
	margin-bottom: 0;
	color: var(--jubo-light-text);
}

.jubo-bingo-faq-more {
	display: flex;
	flex-wrap: wrap;
	gap: var(--jubo-faq-more-gap);
	align-items: center;
	justify-content: space-between;
	padding: var(--jubo-faq-more-padding);
	color: var(--jubo-white-rock);
}

.jubo-bingo-faq-more strong {
	font-size: var(--jubo-faq-more-title-size);
	font-weight: var(--jubo-faq-question-font-weight);
}

/* Reveal */
.jubo-bingo-reveal {
	opacity: var(--jubo-reveal-opacity-hidden);
	transform: translateY(var(--jubo-reveal-distance));
	transition: opacity var(--jubo-reveal-duration) var(--jubo-motion-ease-standard), transform var(--jubo-reveal-duration) var(--jubo-motion-ease-luxe);
	transition-delay: var(--jubo-reveal-delay, 0ms);
}

.jubo-bingo-reveal.is-visible {
	opacity: var(--jubo-reveal-opacity-visible);
	transform: var(--jubo-reveal-end-transform);
}

@media (min-width: 1121px) {
	.jubo-bingo-format-card__body > p:first-of-type {
		min-height: var(--jubo-format-card-text-min-height-desktop);
		flex: 0 0 auto;
	}

	.jubo-bingo-format-card__body .jubo-bingo-suitable {
		margin-top: 0;
	}
}

@media (max-width: 1120px) {
	.jubo-bingo-quick-grid,
	.jubo-bingo-format-grid,
	.jubo-bingo-event-grid,
	.jubo-bingo-boris-tiles {
		grid-template-columns: var(--jubo-grid-2);
	}

	.jubo-bingo-split,
	.jubo-bingo-boris-layout,
	.jubo-bingo-request-layout,
	.jubo-bingo-faq-layout {
		grid-template-columns: var(--jubo-grid-1);
	}

	.jubo-bingo-request__cta {
		position: static;
	}
}

@media (max-width: 767px) {
	.jubo-bingo-page {
		--jubo-section-gap: 46px;
		--jubo-h1: clamp(39px, 12vw, 54px);
		--jubo-h2: clamp(31px, 9.8vw, 43px);
		--jubo-text-lead: clamp(17px, 4.7vw, 20px);
		--jubo-h1-margin-bottom: clamp(12px, 1.4vw, 20px);
		--jubo-h2-margin-bottom: clamp(10px, 1.2vw, 16px);
		--jubo-hero-h1-size: var(--jubo-hero-h1-size-mobile);
		--jubo-hero-h1-margin-bottom: clamp(10px, 1.1vw, 16px);
		--jubo-hero-lead-size: var(--jubo-hero-lead-size-mobile);
		--jubo-shell-width: var(--jubo-shell-width-mobile);
		--jubo-hero-padding: var(--jubo-hero-padding-mobile);
	}

	.jubo-bingo-hero__overlay {
		background: var(--jubo-hero-overlay-mobile);
	}

	.jubo-bingo-section .jubo-bingo-actions,
	.jubo-bingo-faq-more {
		align-items: stretch;
		flex-direction: column;
	}

	.jubo-bingo-section .jubo-bingo-button,
	.jubo-bingo-card-link {
		width: var(--jubo-media-width);
	}

	.jubo-bingo-hero .jubo-bingo-actions {
		align-items: var(--jubo-hero-action-align-mobile);
		flex-direction: var(--jubo-hero-action-direction-mobile);
	}

	.jubo-bingo-hero .jubo-bingo-button {
		width: var(--jubo-hero-button-width-mobile);
	}

	.jubo-bingo-boris-layout > :not(.jubo-bingo-boris__media) {
		display: contents;
	}

	.jubo-bingo-boris-layout .jubo-bingo-eyebrow {
		order: 1;
	}

	.jubo-bingo-boris__media {
		order: 2;
	}

	.jubo-bingo-boris-layout h2 {
		order: 3;
	}

	.jubo-bingo-boris-layout > :not(.jubo-bingo-boris__media) > p {
		order: 4;
	}

	.jubo-bingo-boris-layout > :not(.jubo-bingo-boris__media) > .jubo-bingo-eyebrow {
		order: 1;
	}

	.jubo-bingo-boris-tiles {
		order: 5;
	}

	.jubo-bingo-quick-grid,
	.jubo-bingo-format-grid,
	.jubo-bingo-event-grid,
	.jubo-bingo-boris-tiles,
	.jubo-bingo-request-images {
		grid-template-columns: var(--jubo-grid-1);
	}

	.jubo-bingo-feature-card {
		grid-template-columns: var(--jubo-grid-1);
	}

	.jubo-bingo-feature-card__image {
		min-height: var(--jubo-feature-image-min-height-mobile);
	}

	.jubo-bingo-split__media {
		height: var(--jubo-layout-media-min-height-mobile);
		min-height: var(--jubo-layout-media-min-height-mobile);
		border-radius: var(--jubo-radius-mobile-media);
	}

	.jubo-bingo-boris__media {
		height: auto;
		min-height: 0;
		border-radius: 0;
	}

	.jubo-bingo-boris__main-image {
		height: var(--jubo-boris-main-image-height-mobile);
		flex-basis: var(--jubo-boris-main-image-height-mobile);
		border-radius: var(--jubo-radius-mobile-media);
	}

	.jubo-bingo-boris__gallery {
		grid-template-columns: var(--jubo-grid-1);
	}

	.jubo-bingo-boris__gallery-item {
		min-height: var(--jubo-boris-media-gallery-height-mobile);
	}

	.jubo-bingo-quick-card__image,
	.jubo-bingo-format-card__media {
		height: var(--jubo-card-media-height-mobile);
		min-height: 0;
	}

	.jubo-bingo-event-card__media {
		aspect-ratio: var(--jubo-event-image-aspect-ratio);
		height: auto;
		min-height: 0;
	}

	.jubo-bingo-request-step {
		padding-left: var(--jubo-request-step-padding-left-mobile);
	}

	.jubo-bingo-request-cta-box {
		grid-template-columns: var(--jubo-grid-1);
	}

	.jubo-bingo-request-cta-box .jubo-bingo-button {
		justify-self: stretch;
		white-space: normal;
	}
}

@media (max-width: 420px) {
	.jubo-bingo-page {
		--jubo-radius-lg: 24px;
		--jubo-radius-xl: 28px;
		--jubo-card-padding: var(--jubo-card-padding-small);
	}
}

@media (prefers-reduced-motion: reduce) {
	.jubo-bingo-page *,
	.jubo-bingo-page *::before,
	.jubo-bingo-page *::after {
		transition-duration: var(--jubo-reduced-motion-duration) !important;
		animation-duration: var(--jubo-reduced-motion-duration) !important;
		animation-iteration-count: var(--jubo-reduced-motion-iteration-count) !important;
		scroll-behavior: var(--jubo-scroll-behavior-auto) !important;
	}

	.jubo-bingo-reveal {
		opacity: var(--jubo-reveal-opacity-visible);
		transform: var(--jubo-transform-none);
	}
}
