.cf-home-discover{--cf-home-blue:#0b9fc0;--cf-home-blue-dark:#087f9a;--cf-home-navy:#0d2747;--cf-home-muted:#5d7084;--cf-home-border:#d9e5ea;--cf-home-soft:#eefaff;--cf-home-soft-2:#f7fcff;max-width:1240px;margin:0 auto;color:var(--cf-home-navy)}
.cf-home-section{padding:34px 0 36px;position:relative}
.cf-home-section-activities,.cf-home-section-restaurants{background:linear-gradient(90deg,var(--cf-home-soft-2),#fff 48%,var(--cf-home-soft));box-shadow:0 0 0 100vmax rgba(240,251,255,.66);clip-path:inset(0 -100vmax)}
.cf-home-section-travel{background:#fff}
.cf-home-section-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:34px;margin:0 0 20px;text-align:left!important}
.cf-home-section-heading-main{display:flex;align-items:flex-start;gap:16px;min-width:0;flex:1 1 auto;text-align:left!important}
.cf-home-section-icon{display:inline-flex;align-items:flex-start;justify-content:center;flex:0 0 42px;width:42px;height:42px;color:var(--cf-home-blue);margin-top:0}
.cf-home-section-icon svg{width:100%;height:100%;display:block;fill:none!important;stroke:currentColor;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}
.cf-home-section-copy{min-width:0;flex:1 1 auto;text-align:left!important}
.cf-home-section-heading h2{margin:0 0 5px!important;font-size:clamp(1.5rem,2.3vw,1.95rem)!important;line-height:1.08!important;color:var(--cf-home-navy)!important;font-weight:800!important;text-align:left!important}
.cf-home-section-heading p{margin:0!important;max-width:820px;font-size:.96rem!important;line-height:1.45!important;color:var(--cf-home-muted)!important;text-align:left!important}
.cf-home-section-button{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;gap:11px;min-height:44px;padding:11px 20px;border:1.5px solid var(--cf-home-blue);border-radius:7px;background:#fff;color:var(--cf-home-blue-dark)!important;text-decoration:none!important;text-transform:uppercase;font-size:.79rem;font-weight:800;letter-spacing:.045em;line-height:1.2;box-shadow:none;white-space:nowrap}
.cf-home-section-button span{font-size:1.02rem;line-height:1}
.cf-home-section-button:hover,.cf-home-section-button:focus{background:var(--cf-home-blue);border-color:var(--cf-home-blue);color:#fff!important}
.cf-home-card-grid{display:grid;gap:13px}
.cf-home-card-grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}
.cf-home-card-grid-6{grid-template-columns:repeat(6,minmax(0,1fr))}
.cf-home-card{min-width:0;border:1px solid var(--cf-home-border);border-radius:6px;background:#fff;overflow:hidden;box-shadow:0 4px 13px rgba(12,47,70,.09)}
.cf-home-card-link{display:flex;flex-direction:column;height:100%;color:inherit!important;text-decoration:none!important;background:#fff}
.cf-home-card-image{aspect-ratio:1.75/1;background:#eaf1f4;overflow:hidden}
.cf-home-card-grid-6 .cf-home-card-image{aspect-ratio:1.48/1}
.cf-home-card-image img{display:block;width:100%;height:100%;object-fit:cover;transition:none!important;transform:none!important}
.cf-home-card-body{position:relative;display:flex;flex-direction:column;min-height:92px;padding:11px 42px 12px 12px;text-align:left!important}
.cf-home-card-grid-4 .cf-home-card-body{min-height:104px;padding:12px 44px 13px 13px}
.cf-home-card-body h3{margin:0 0 4px!important;font-size:.94rem!important;line-height:1.2!important;color:var(--cf-home-blue-dark)!important;font-weight:800!important;text-align:left!important}
.cf-home-card-grid-4 .cf-home-card-body h3{font-size:1.02rem!important}
.cf-home-card-body p{margin:0!important;font-size:.76rem!important;line-height:1.38!important;color:var(--cf-home-muted)!important;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;text-align:left!important}
.cf-home-card-grid-4 .cf-home-card-body p{font-size:.81rem!important;-webkit-line-clamp:2}
.cf-home-card-arrow{position:absolute;right:10px;bottom:12px;width:27px;height:27px;border:1.7px solid var(--cf-home-blue);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.32rem;line-height:1;font-weight:700;color:var(--cf-home-blue);background:#fff}
.cf-home-card-grid-4 .cf-home-card-arrow{width:30px;height:30px;right:11px;bottom:13px}
.cf-home-card-link:hover,.cf-home-card-link:focus{color:inherit!important;text-decoration:none!important}
.cf-home-card-link:hover .cf-home-card-arrow,.cf-home-card-link:focus .cf-home-card-arrow{background:var(--cf-home-blue);color:#fff}
.cf-home-card-link:hover .cf-home-card-body h3,.cf-home-card-link:focus .cf-home-card-body h3{color:var(--cf-home-blue-dark)!important}
.cf-home-gyg-widget{width:100%;min-height:235px;margin:6px 0 0;overflow:hidden}
.cf-home-gyg-auto{width:100%;min-height:235px}
.cf-home-gyg-widget iframe{display:block;width:100%!important;max-width:100%!important;border:0}
.cf-home-gyg-cta{display:flex;flex-direction:column;align-items:center;gap:6px;margin-top:18px;text-align:center}
.cf-home-gyg-button{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:46px;padding:12px 23px;border-radius:5px;background:linear-gradient(90deg,#099ab8,#0bafca);color:#fff!important;text-decoration:none!important;text-transform:uppercase;font-size:.8rem;font-weight:800;letter-spacing:.075em;box-shadow:0 4px 12px rgba(11,159,192,.22)}
.cf-home-gyg-button:hover,.cf-home-gyg-button:focus{background:var(--cf-home-blue-dark);color:#fff!important}
.cf-home-gyg-symbol{font-size:1.08rem;line-height:1}
.cf-home-gyg-cta small{font-size:.66rem;line-height:1.3;color:#80909f}
.cf-home-gyg-cta .cf-home-affiliate-notice{max-width:760px;margin-top:1px;font-size:.65rem;color:#748493}

/* 1.5.16: GetYourGuide-Haupt-CTA sitzt nur noch oben rechts im Aktivitäten-Header. */
.cf-home-section-activities .cf-home-gyg-button-top{flex:0 0 auto;white-space:nowrap;border:0}
.cf-home-section-activities .cf-home-gyg-button-top .cf-home-gyg-symbol{font-size:1.08rem;line-height:1}
.cf-home-gyg-cta-notices-only{margin-top:10px}
@media(max-width:1050px){.cf-home-discover{padding-left:18px;padding-right:18px}.cf-home-section-activities,.cf-home-section-restaurants{box-shadow:none;clip-path:none;margin-left:-18px;margin-right:-18px;padding-left:18px;padding-right:18px}.cf-home-card-grid-6{grid-template-columns:repeat(3,minmax(0,1fr))}.cf-home-card-grid-4{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.cf-home-section{padding-top:28px;padding-bottom:30px}.cf-home-section-heading{align-items:flex-start;flex-direction:column;gap:14px;margin-bottom:17px}.cf-home-section-heading-main{gap:12px;width:100%}.cf-home-section-icon{width:36px;height:36px;flex-basis:36px}.cf-home-section-heading h2{font-size:1.45rem!important}.cf-home-section-heading p{font-size:.9rem!important}.cf-home-section-button{align-self:flex-start;min-height:42px;padding:10px 16px;font-size:.74rem}.cf-home-card-grid-6,.cf-home-card-grid-4{grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.cf-home-card-grid-6 .cf-home-card-image,.cf-home-card-grid-4 .cf-home-card-image{aspect-ratio:1.55/1}.cf-home-card-body,.cf-home-card-grid-4 .cf-home-card-body{min-height:88px;padding:10px 38px 11px 10px}.cf-home-card-body h3,.cf-home-card-grid-4 .cf-home-card-body h3{font-size:.9rem!important}.cf-home-card-body p,.cf-home-card-grid-4 .cf-home-card-body p{font-size:.74rem!important}.cf-home-card-arrow,.cf-home-card-grid-4 .cf-home-card-arrow{width:26px;height:26px;right:9px;bottom:11px}.cf-home-gyg-button{font-size:.74rem;padding:11px 17px;min-height:44px}}
@media(max-width:430px){.cf-home-card-grid-6,.cf-home-card-grid-4{grid-template-columns:1fr 1fr}.cf-home-section-heading h2{font-size:1.32rem!important}.cf-home-section-heading p{font-size:.84rem!important}.cf-home-section-button{font-size:.69rem;padding:10px 14px}.cf-home-card-image,.cf-home-card-grid-6 .cf-home-card-image,.cf-home-card-grid-4 .cf-home-card-image{aspect-ratio:1.45/1}.cf-home-card-body,.cf-home-card-grid-4 .cf-home-card-body{min-height:84px}.cf-home-card-body p,.cf-home-card-grid-4 .cf-home-card-body p{-webkit-line-clamp:2}.cf-home-section-icon{width:33px;height:33px;flex-basis:33px}}

/* Instagram-Startseitenbereich: nutzt die Ausgabe des vorhandenen Instagram-Feed-Plugins. */
.cf-home-section-instagram{background:#fff}
.cf-home-instagram-feed{width:100%;margin-top:4px}
.cf-home-instagram-feed #sb_instagram{width:100%!important;max-width:none!important;padding:0!important;margin:0!important;background:transparent!important}
.cf-home-instagram-feed .sb_instagram_header,
.cf-home-instagram-feed .sbi_header_text,
.cf-home-instagram-feed .sbi_load_btn,
.cf-home-instagram-feed .sbi_follow_btn,
.cf-home-instagram-feed .sbi_btn_text{display:none!important}
.cf-home-instagram-feed #sbi_images{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:14px!important;width:100%!important;padding:0!important;margin:0!important}
.cf-home-instagram-feed .sbi_item{display:block!important;float:none!important;width:100%!important;max-width:none!important;padding:0!important;margin:0!important}
.cf-home-instagram-feed .sbi_photo{display:block!important;width:100%!important;height:auto!important;aspect-ratio:1/1!important;border-radius:8px!important;overflow:hidden!important;background:#eaf1f4!important;box-shadow:0 4px 13px rgba(12,47,70,.09)!important}
.cf-home-instagram-feed .sbi_photo img{display:block!important;width:100%!important;height:100%!important;object-fit:cover!important;margin:0!important}
.cf-home-instagram-count-1 #sbi_images{grid-template-columns:1fr!important}
.cf-home-instagram-count-2 #sbi_images{grid-template-columns:repeat(2,minmax(0,1fr))!important}
.cf-home-instagram-count-3 #sbi_images{grid-template-columns:repeat(3,minmax(0,1fr))!important}
.cf-home-instagram-count-1 .sbi_item:nth-child(n+2),
.cf-home-instagram-count-2 .sbi_item:nth-child(n+3),
.cf-home-instagram-count-3 .sbi_item:nth-child(n+4),
.cf-home-instagram-count-4 .sbi_item:nth-child(n+5),
.cf-home-instagram-count-5 .sbi_item:nth-child(n+6),
.cf-home-instagram-count-6 .sbi_item:nth-child(n+7),
.cf-home-instagram-count-7 .sbi_item:nth-child(n+8),
.cf-home-instagram-count-8 .sbi_item:nth-child(n+9){display:none!important}
@media(max-width:700px){.cf-home-instagram-feed #sbi_images{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:11px!important}.cf-home-instagram-count-1 #sbi_images{grid-template-columns:1fr!important}}



/* Automatische Orts-Wortwolke. */
.cf-home-section-wordcloud{background:#fff;padding-top:34px;padding-bottom:38px}
.cf-home-wordcloud-heading{margin:0 0 20px;text-align:left!important}
.cf-home-wordcloud-heading h2{margin:0 0 5px!important;font-size:clamp(1.5rem,2.3vw,1.95rem)!important;line-height:1.08!important;color:var(--cf-home-navy)!important;font-weight:800!important;text-align:left!important}
.cf-home-wordcloud-heading p{margin:0!important;max-width:820px;font-size:.96rem!important;line-height:1.45!important;color:var(--cf-home-muted)!important;text-align:left!important}
.cf-home-wordcloud{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:center;gap:9px 18px;padding:22px 24px;border:1px solid var(--cf-home-border);border-radius:10px;background:linear-gradient(135deg,#fff 0%,var(--cf-home-soft-2) 100%);text-align:center}
.cf-home-wordcloud-link{display:inline-block;color:var(--cf-home-blue-dark)!important;text-decoration:none!important;font-weight:700;line-height:1.15;padding:4px 2px;transition:none!important}
.cf-home-wordcloud-link:hover,.cf-home-wordcloud-link:focus{color:var(--cf-home-navy)!important;text-decoration:underline!important;text-underline-offset:4px}
.cf-home-wordcloud-link[data-cf-modal-loading="1"]{opacity:.55;cursor:progress}
.cf-home-wordcloud-size-1{font-size:.95rem}
.cf-home-wordcloud-size-2{font-size:1.08rem}
.cf-home-wordcloud-size-3{font-size:1.22rem}
.cf-home-wordcloud-size-4{font-size:1.4rem}
.cf-home-wordcloud-size-5{font-size:1.62rem}
.cf-home-wordcloud-standalone{margin-top:0;margin-bottom:0}
@media(max-width:700px){.cf-home-wordcloud{gap:8px 13px;padding:18px 15px}.cf-home-wordcloud-heading h2{font-size:1.45rem!important}.cf-home-wordcloud-heading p{font-size:.9rem!important}.cf-home-wordcloud-size-1{font-size:.9rem}.cf-home-wordcloud-size-2{font-size:1rem}.cf-home-wordcloud-size-3{font-size:1.1rem}.cf-home-wordcloud-size-4{font-size:1.22rem}.cf-home-wordcloud-size-5{font-size:1.36rem}}

/* Ferienhäuser / FeWo-direkt – Layout nach der Startseiten-Vorlage. */
.cf-home-section-fewo{background:linear-gradient(90deg,#f4fbfe 0%,#fbfeff 50%,#f1faff 100%);box-shadow:0 0 0 100vmax rgba(244,251,254,.96);clip-path:inset(0 -100vmax);padding-top:26px;padding-bottom:30px}
.cf-home-fewo-heading{display:flex;flex-direction:column;align-items:center;justify-content:center;margin:0 auto 18px;max-width:980px;text-align:center!important}
.cf-home-fewo-title-row{display:flex;align-items:center;justify-content:center;gap:13px;width:100%}
.cf-home-fewo-heading-icon{display:inline-flex;align-items:center;justify-content:center;flex:0 0 34px;width:34px;height:34px;color:var(--cf-home-blue)}
.cf-home-fewo-heading-icon svg{display:block;width:34px;height:34px;fill:none!important;stroke:currentColor;stroke-width:2.6;stroke-linecap:round;stroke-linejoin:round}
.cf-home-fewo-heading h2{margin:0!important;color:var(--cf-home-navy)!important;font-size:clamp(1.42rem,2.15vw,1.88rem)!important;line-height:1.12!important;font-weight:800!important;text-align:center!important}
.cf-home-fewo-heading p{margin:5px auto 0!important;max-width:930px;color:var(--cf-home-muted)!important;font-size:.91rem!important;line-height:1.4!important;text-align:center!important}
.cf-home-card-grid-fewo{width:100%;max-width:1120px;margin:0 auto;gap:14px}
.cf-home-card-grid-fewo.cf-home-card-grid-1{grid-template-columns:minmax(0,1fr)}
.cf-home-card-grid-fewo.cf-home-card-grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.cf-home-card-grid-fewo.cf-home-card-grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.cf-home-card-grid-fewo.cf-home-card-grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}
.cf-home-card-grid-fewo.cf-home-card-grid-5,.cf-home-card-grid-fewo.cf-home-card-grid-6{grid-template-columns:repeat(3,minmax(0,1fr))}
.cf-home-fewo-card{overflow:hidden;border:1px solid #e2edf1!important;border-radius:7px!important;background:#fff!important;box-shadow:0 5px 15px rgba(18,69,95,.08)!important;min-width:0}
.cf-home-fewo-card .cf-home-card-link{display:block;height:100%;color:inherit!important;text-decoration:none!important}
.cf-home-fewo-card .cf-home-card-image{aspect-ratio:1.86/1;background:#e9f2f5}
.cf-home-fewo-card .cf-home-card-image img{display:block;width:100%;height:100%;object-fit:cover}
.cf-home-fewo-card-body{display:grid;grid-template-columns:36px minmax(0,1fr) 31px;align-items:center;gap:10px;min-height:67px;padding:8px 9px 8px 10px;background:#fff}
.cf-home-fewo-category-icon{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;color:var(--cf-home-blue);align-self:center}
.cf-home-fewo-category-icon svg{display:block;width:32px;height:32px;fill:none;stroke:currentColor;stroke-width:2.45;stroke-linecap:round;stroke-linejoin:round}
.cf-home-fewo-category-icon svg ellipse{fill:currentColor;stroke:none}
.cf-home-fewo-card-copy{min-width:0;text-align:left!important}
.cf-home-fewo-card-copy h3{margin:0 0 2px!important;color:var(--cf-home-blue-dark)!important;font-size:.98rem!important;line-height:1.14!important;font-weight:800!important;text-align:left!important}
.cf-home-fewo-card-copy p{display:block;margin:0!important;color:#718294!important;font-size:.70rem!important;line-height:1.25!important;text-align:left!important;white-space:normal}
.cf-home-fewo-arrow{display:inline-flex;align-items:center;justify-content:center;width:27px;height:27px;border:1.7px solid var(--cf-home-blue);border-radius:50%;color:var(--cf-home-blue)!important;font-size:1.35rem;line-height:1;font-weight:500;justify-self:end;transition:none!important}
.cf-home-fewo-card .cf-home-card-link:hover .cf-home-fewo-arrow,.cf-home-fewo-card .cf-home-card-link:focus .cf-home-fewo-arrow{background:var(--cf-home-blue);color:#fff!important}
.cf-home-fewo-card .cf-home-card-link:hover .cf-home-fewo-card-copy h3,.cf-home-fewo-card .cf-home-card-link:focus .cf-home-fewo-card-copy h3{color:var(--cf-home-blue-dark)!important}
.cf-home-fewo-placeholder{display:flex;width:100%;height:100%;align-items:center;justify-content:center;background:linear-gradient(135deg,#dff5fa 0%,#f7fdff 46%,#d6eff5 100%);color:var(--cf-home-blue-dark)}
.cf-home-fewo-placeholder svg{width:62px;height:62px;fill:none;stroke:currentColor;stroke-width:2.25;stroke-linecap:round;stroke-linejoin:round;opacity:.9}
.cf-home-fewo-placeholder-pool{background:linear-gradient(135deg,#d9f5fb,#effcff 55%,#bfe9f5)}
.cf-home-fewo-placeholder-dog{background:linear-gradient(135deg,#f7ead7,#fff9ef 58%,#e8f7f9)}
.cf-home-fewo-placeholder-family{background:linear-gradient(135deg,#e8f7f1,#fbfffd 55%,#dff1f8)}
.cf-home-fewo-placeholder-boat{background:linear-gradient(135deg,#d8f1fb,#f9fdff 55%,#dce8f8)}
.cf-home-fewo-placeholder-sun{background:linear-gradient(135deg,#fff1ce,#fffaf0 55%,#dff5fa)}
.cf-home-fewo-notice{margin:20px auto 0!important;max-width:900px;text-align:center!important;font-size:.65rem!important;line-height:1.35!important;color:#7d8e9e!important;font-weight:400!important}
.cf-home-fewo-notice strong{font-weight:400!important}
@media(max-width:1050px){.cf-home-section-fewo{box-shadow:none;clip-path:none;margin-left:-18px;margin-right:-18px;padding-left:18px;padding-right:18px}.cf-home-card-grid-fewo.cf-home-card-grid-3,.cf-home-card-grid-fewo.cf-home-card-grid-4,.cf-home-card-grid-fewo.cf-home-card-grid-5,.cf-home-card-grid-fewo.cf-home-card-grid-6{grid-template-columns:repeat(2,minmax(0,1fr))}.cf-home-fewo-card-body{grid-template-columns:34px minmax(0,1fr) 29px}}
@media(max-width:700px){.cf-home-section-fewo{padding-top:24px;padding-bottom:27px}.cf-home-fewo-heading{margin-bottom:16px}.cf-home-fewo-title-row{gap:9px}.cf-home-fewo-heading-icon,.cf-home-fewo-heading-icon svg{width:29px;height:29px;flex-basis:29px}.cf-home-fewo-heading h2{font-size:1.3rem!important}.cf-home-fewo-heading p{font-size:.82rem!important;line-height:1.38!important}.cf-home-card-grid-fewo{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px}.cf-home-fewo-card .cf-home-card-image{aspect-ratio:1.62/1}.cf-home-fewo-card-body{grid-template-columns:28px minmax(0,1fr) 25px;gap:7px;min-height:69px;padding:8px 7px}.cf-home-fewo-category-icon{width:28px;height:28px}.cf-home-fewo-category-icon svg{width:27px;height:27px}.cf-home-fewo-card-copy h3{font-size:.84rem!important}.cf-home-fewo-card-copy p{font-size:.64rem!important;line-height:1.22!important}.cf-home-fewo-arrow{width:24px;height:24px;font-size:1.15rem}.cf-home-fewo-placeholder svg{width:50px;height:50px}.cf-home-fewo-notice{margin-top:15px!important;font-size:.61rem!important;padding:0 8px}}
@media(max-width:430px){.cf-home-fewo-heading h2{font-size:1.16rem!important}.cf-home-fewo-heading p{font-size:.78rem!important}.cf-home-fewo-card-grid{gap:9px}.cf-home-fewo-card-copy h3{font-size:.8rem!important}.cf-home-fewo-card-copy p{font-size:.61rem!important}}

/* 1.5.15: optionaler KI-Hinweis auf FeWo-Kachelbildern. */
.cf-home-fewo-image{position:relative}
.cf-home-fewo-ai-note{position:absolute;left:8px;bottom:8px;z-index:2;display:inline-flex;align-items:center;max-width:calc(100% - 16px);padding:3px 7px;border-radius:999px;background:rgba(255,255,255,.92);box-shadow:0 1px 4px rgba(17,48,74,.12);color:#496577!important;font-size:.58rem!important;line-height:1.15!important;font-weight:600!important;letter-spacing:.01em;pointer-events:none}
@media(max-width:700px){.cf-home-fewo-ai-note{left:6px;bottom:6px;padding:3px 6px;font-size:.54rem!important}}

/* 1.5.17: einheitliches AI-Badge + GetYourGuide-Hinweis direkt unter dem oberen CTA. */
.cf-home-card-image,.cf-home-gyg-widget{position:relative}
.cf-ai-image-badge{position:absolute;left:8px;bottom:8px;z-index:8;display:inline-flex;align-items:center;justify-content:center;height:30px;min-width:30px;max-width:calc(100% - 16px);padding:0 8px;border-radius:999px;background:rgba(255,255,255,.94);box-shadow:0 2px 7px rgba(17,48,74,.17);color:#496577!important;font-size:.61rem!important;line-height:1!important;font-weight:800!important;letter-spacing:.02em;white-space:nowrap;overflow:hidden;box-sizing:border-box;transition:max-width .18s ease,padding .18s ease,background .18s ease;cursor:default}
.cf-ai-image-badge-short{display:inline-block;min-width:14px;text-align:center}
.cf-ai-image-badge-long{display:none;margin-left:0;font-weight:700}
.cf-ai-image-badge:hover,.cf-ai-image-badge:focus-within{max-width:180px;padding-left:9px;padding-right:9px;background:#fff}
.cf-ai-image-badge:hover .cf-ai-image-badge-short,.cf-ai-image-badge:focus-within .cf-ai-image-badge-short{display:none}
.cf-ai-image-badge:hover .cf-ai-image-badge-long,.cf-ai-image-badge:focus-within .cf-ai-image-badge-long{display:inline-block}
.cf-home-fewo-ai-note{left:8px;bottom:8px}
.cf-home-gyg-widget>.cf-ai-image-badge{left:8px;bottom:8px}
.cf-home-gyg-head-cta{flex:0 0 auto;display:flex;flex-direction:column;align-items:stretch;max-width:360px}
.cf-home-gyg-head-notices{display:flex;flex-direction:column;gap:2px;margin-top:6px;text-align:left}
.cf-home-gyg-head-notices small{font-size:.62rem;line-height:1.28;color:#7c8d9d}
.cf-home-gyg-head-notices strong{font-weight:700}
.cf-home-section-activities .cf-home-gyg-button-top{width:100%}

/* Instagram-Feed: AI-Badge ist standardmäßig aus und wird nur bei aktivierter Einstellung eingeblendet. */
.cf-home-instagram-feed.is-ai-generated .sbi_item{position:relative!important}
.cf-home-instagram-feed.is-ai-generated .sbi_item::after{content:"AI";position:absolute;left:8px;bottom:8px;z-index:12;display:flex;align-items:center;justify-content:center;height:30px;min-width:30px;padding:0 8px;border-radius:999px;background:rgba(255,255,255,.94);box-shadow:0 2px 7px rgba(17,48,74,.17);color:#496577;font-size:.61rem;font-weight:800;line-height:1;white-space:nowrap;box-sizing:border-box;pointer-events:none}
.cf-home-instagram-feed.is-ai-generated .sbi_item:hover::after{content:"Bild KI-generiert"}

@media(max-width:700px){
  .cf-ai-image-badge{left:6px;bottom:6px;height:28px;min-width:28px;padding:0 7px;font-size:.56rem!important}
  .cf-home-gyg-head-cta{max-width:100%;width:100%;align-items:flex-start}
  .cf-home-gyg-head-notices{max-width:460px}
  .cf-home-instagram-feed.is-ai-generated .sbi_item::after{left:6px;bottom:6px;height:28px;min-width:28px;padding:0 7px;font-size:.56rem}
}
.cf-ai-image-badge{pointer-events:auto!important}

/* 1.5.18: Veranstaltungen aus CF Veranstaltungen + kompakter GetYourGuide-CTA. */
.cf-home-section-events{background:#fff}
.cf-home-event-grid{align-items:stretch}
.cf-home-event-card .cf-home-card-link{height:100%}
.cf-home-event-visual{height:112px;min-height:112px;display:flex;align-items:center;justify-content:center;overflow:hidden;background:linear-gradient(135deg,#80e2e6 0%,#b9eef0 100%);color:#07537d}
.cf-home-event-visual svg{display:block;width:76px;height:76px;fill:none;stroke:currentColor;stroke-width:4;stroke-linecap:round;stroke-linejoin:round}
.cf-home-event-body{min-height:116px}
.cf-home-event-meta{display:grid;gap:4px;margin-top:2px;padding-right:2px;color:var(--cf-home-muted);font-size:.76rem;line-height:1.3}
.cf-home-event-meta>span{display:flex;align-items:flex-start;gap:7px;min-width:0}
.cf-home-event-meta-icon{display:block;flex:0 0 15px;width:15px;height:15px;margin-top:1px;fill:none;stroke:var(--cf-home-blue);stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}

/* Der lange obere GetYourGuide-CTA bleibt vollständig innerhalb seines Kastens. */
.cf-home-section-activities .cf-home-gyg-button-top{box-sizing:border-box;max-width:100%;padding-left:15px;padding-right:15px;letter-spacing:.045em}
.cf-home-section-activities .cf-home-gyg-button-top span:last-child{font-size:.71rem;line-height:1.15;white-space:nowrap}
@media(max-width:700px){
  .cf-home-event-visual{height:98px;min-height:98px}.cf-home-event-visual svg{width:66px;height:66px}.cf-home-event-body{min-height:105px}.cf-home-event-meta{font-size:.72rem}
  .cf-home-section-activities .cf-home-gyg-button-top{padding-left:13px;padding-right:13px;gap:8px}
  .cf-home-section-activities .cf-home-gyg-button-top span:last-child{font-size:.66rem;white-space:normal;text-align:center}
}
@media(max-width:430px){.cf-home-section-activities .cf-home-gyg-button-top span:last-child{font-size:.63rem}}


/* GetYourGuide-Wechsler und wiederverwendbare Instanzen */
.cf-home-gyg-switcher{display:block;width:100%;min-width:0}
.cf-home-gyg-panels{position:relative;min-width:0;width:100%}
.cf-home-gyg-panel{position:relative;min-width:0}
.cf-home-gyg-switch-actions{display:flex;width:100%;align-items:center;justify-content:center;margin:12px 0 0}
.cf-home-gyg-reload-button{box-sizing:border-box;display:flex;align-items:center;justify-content:center;gap:9px;width:100%;min-height:46px;padding:10px 16px;border:1px solid rgba(0,137,169,.32);border-radius:11px;background:rgba(0,137,169,.06);color:#007f9e;font:inherit;font-size:.82rem;font-weight:700;letter-spacing:.02em;cursor:pointer;box-shadow:0 2px 8px rgba(0,137,169,.07);transition:background-color .16s ease,color .16s ease,border-color .16s ease,box-shadow .16s ease,transform .16s ease,opacity .16s ease}
.cf-home-gyg-reload-button:hover,.cf-home-gyg-reload-button:focus-visible{background:#0089a9;color:#fff;border-color:#0089a9;box-shadow:0 5px 14px rgba(0,137,169,.18);outline:none;transform:translateY(-1px)}
.cf-home-gyg-reload-button:disabled{cursor:progress;opacity:.6;transform:none}
.cf-home-gyg-reload-button.is-loading .cf-home-gyg-reload-icon{animation:cf-home-gyg-spin .7s linear infinite}
.cf-home-gyg-reload-icon{display:block;flex:0 0 auto;font-size:1.2rem;line-height:1}
.cf-home-gyg-reload-text{display:block;line-height:1.25}
.cf-home-sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.cf-home-gyg-templates{display:none!important}
/* CF Homes 2.9.9: Eigenständige GetYourGuide-Shortcodes liegen transparent auf dem Seitenhintergrund.
   Nur die eigentlichen GYG-Karten/Bedienelemente behalten ihre eigene Gestaltung. */
.cf-home-gyg-shortcode{margin-top:0;margin-bottom:0;background:transparent!important}
.cf-home-section-gyg-shortcode{margin-top:0;background:transparent!important;box-shadow:none!important;clip-path:none!important}
@media(max-width:1050px){.cf-home-gyg-shortcode .cf-home-section-gyg-shortcode{margin-left:0;margin-right:0;padding-left:0;padding-right:0}}
@keyframes cf-home-gyg-spin{to{transform:rotate(360deg)}}
@media(max-width:700px){.cf-home-gyg-switch-actions{margin-top:10px}.cf-home-gyg-reload-button{min-height:44px;padding:9px 13px;font-size:.78rem}.cf-home-gyg-reload-icon{font-size:1.1rem}}


/* CF-Homes 1.0.9: optionale Ortssuche in zusätzlichen GetYourGuide-Instanzen. */
.cf-home-gyg-location-search{width:100%;margin:0 0 16px}
.cf-home-gyg-location-search-inner{display:flex;align-items:stretch;width:100%;min-height:48px;border:1px solid rgba(0,137,169,.28);border-radius:11px;background:#fff;box-shadow:0 3px 12px rgba(31,57,72,.07);overflow:hidden}
.cf-home-gyg-location-icon{display:flex;align-items:center;justify-content:center;flex:0 0 44px;color:#0089a9;font-size:1.2rem}
.cf-home-gyg-location-search input[type=search]{min-width:0;flex:1;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;padding:10px 8px 10px 0!important;color:#243743;font:inherit;font-size:.9rem;outline:none}
.cf-home-gyg-location-search input[type=search]::placeholder{color:#8797a3}
.cf-home-gyg-location-search button{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;min-width:150px;border:0;border-left:1px solid rgba(0,137,169,.18);padding:10px 18px;background:#0089a9;color:#fff;font:inherit;font-size:.8rem;font-weight:700;cursor:pointer;transition:background-color .16s ease,opacity .16s ease}
.cf-home-gyg-location-search button:hover,.cf-home-gyg-location-search button:focus-visible{background:#006f89;outline:none}
.cf-home-gyg-location-search button:disabled{opacity:.6;cursor:progress}
@media(max-width:620px){.cf-home-gyg-location-search-inner{flex-wrap:wrap}.cf-home-gyg-location-icon{flex-basis:40px}.cf-home-gyg-location-search input[type=search]{min-height:46px}.cf-home-gyg-location-search button{width:100%;min-height:42px;border-left:0;border-top:1px solid rgba(0,137,169,.18)}}

/* 1.5.28 / CF Homes 2.1.1: Veranstaltungs-Highlight mit eigenem Standard-Section-Header. */
.cf-home-section-event-highlight{background:#fff}.cf-home-event-highlight-list{display:grid;grid-template-columns:1fr;gap:18px}.cf-home-section-event-highlight .cf-home-event-highlight{padding:0;position:relative}
.cf-home-event-highlight-link{display:grid;grid-template-columns:minmax(0,46%) minmax(0,54%);min-height:268px;border:1px solid #d9e7ec;border-radius:10px;overflow:hidden;background:#fff;color:inherit!important;text-decoration:none!important;box-shadow:0 7px 22px rgba(12,47,70,.10)}
.cf-home-event-highlight-visual{position:relative;min-height:268px;background:linear-gradient(135deg,#80e2e6 0%,#d8f6f7 100%);overflow:hidden;display:flex;align-items:center;justify-content:center}
.cf-home-event-highlight-visual img{display:block;width:100%;height:100%;min-height:268px;object-fit:cover}
.cf-home-event-highlight-fallback{display:flex;align-items:center;justify-content:center;width:100%;height:100%;color:#07537d;background:linear-gradient(135deg,#80e2e6 0%,#d8f6f7 100%)}
.cf-home-event-highlight-fallback svg{display:block;width:116px;height:116px;fill:none;stroke:currentColor;stroke-width:3.3;stroke-linecap:round;stroke-linejoin:round}
.cf-home-event-highlight-content{position:relative;display:flex;flex-direction:column;justify-content:center;min-width:0;padding:28px 62px 28px 34px;background:#fff;text-align:left!important}
.cf-home-event-highlight-badge{display:inline-flex;align-items:center;align-self:flex-start;gap:8px;margin:0 0 14px;padding:6px 13px 6px 7px;border:1px solid rgba(6,111,137,.28);border-radius:999px;background:linear-gradient(105deg,#0bb4d1 0%,#0b9fc0 46%,#087f9a 100%);color:#fff!important;font-size:.72rem;font-weight:900;line-height:1;text-transform:uppercase;letter-spacing:.045em;box-shadow:0 5px 14px rgba(8,127,154,.22)}
.cf-home-event-highlight-badge>span{display:inline-flex;align-items:center;justify-content:center;flex:0 0 24px;width:24px;height:24px;border-radius:50%;background:linear-gradient(145deg,#63deee 0%,#11b5d1 48%,#067892 100%);border:1px solid rgba(255,255,255,.55);box-shadow:inset 0 1px 0 rgba(255,255,255,.35),0 2px 6px rgba(5,83,110,.22);font-size:.86rem;line-height:1;color:#fff!important;text-shadow:0 1px 2px rgba(0,58,79,.25)}
.cf-home-event-highlight-content h2{margin:0 0 17px!important;color:var(--cf-home-navy)!important;font-size:clamp(1.55rem,2.7vw,2.15rem)!important;line-height:1.08!important;font-weight:850!important;letter-spacing:-.02em;text-align:left!important}
.cf-home-event-highlight-meta{display:grid;gap:8px;margin:0 0 15px;color:#637594;font-size:.92rem;line-height:1.35}
.cf-home-event-highlight-meta>span{display:flex;align-items:flex-start;gap:9px;min-width:0}
.cf-home-event-highlight-meta .cf-home-event-meta-icon{flex:0 0 18px;width:18px;height:18px;margin-top:1px;stroke:var(--cf-home-blue)}
.cf-home-event-highlight-content p{margin:0!important;max-width:720px;color:#64748b!important;font-size:.92rem!important;line-height:1.55!important;text-align:left!important}
.cf-home-event-highlight-arrow{position:absolute;right:18px;bottom:18px;display:flex;align-items:center;justify-content:center;width:40px;height:40px;border:1.8px solid var(--cf-home-blue);border-radius:50%;background:#fff;color:var(--cf-home-blue);font-size:1.8rem;line-height:1;font-weight:500}
.cf-home-event-highlight-link:hover,.cf-home-event-highlight-link:focus{text-decoration:none!important;box-shadow:0 10px 28px rgba(12,47,70,.14)}
.cf-home-event-highlight-link:hover .cf-home-event-highlight-arrow,.cf-home-event-highlight-link:focus .cf-home-event-highlight-arrow{background:var(--cf-home-blue);color:#fff}
@media(max-width:800px){.cf-home-event-highlight-link{grid-template-columns:1fr;min-height:0}.cf-home-event-highlight-visual,.cf-home-event-highlight-visual img{min-height:0;height:auto;aspect-ratio:16/8.5}.cf-home-event-highlight-content{padding:23px 56px 24px 22px}.cf-home-event-highlight-content h2{font-size:1.45rem!important;margin-bottom:13px!important}.cf-home-event-highlight-meta{font-size:.84rem}.cf-home-event-highlight-content p{font-size:.84rem!important;line-height:1.45!important}.cf-home-event-highlight-arrow{right:14px;bottom:14px;width:36px;height:36px}}
@media(max-width:430px){.cf-home-section-event-highlight .cf-home-event-highlight{padding-top:0}.cf-home-event-highlight-badge{margin-bottom:10px;padding:5px 11px 5px 6px;font-size:.64rem}.cf-home-event-highlight-badge>span{width:21px;height:21px;flex-basis:21px;font-size:.75rem}.cf-home-event-highlight-content{padding:18px 48px 20px 16px}.cf-home-event-highlight-content h2{font-size:1.24rem!important}.cf-home-event-highlight-meta{gap:5px;font-size:.78rem}.cf-home-event-highlight-content p{font-size:.78rem!important}.cf-home-event-highlight-fallback svg{width:88px;height:88px}.cf-home-event-highlight-arrow{width:32px;height:32px;font-size:1.5rem;right:11px;bottom:11px}}

/* 2.9.37 – Startseiten-Popups und statische Veranstaltungs-Karten */
.cf-home-event-card-static{cursor:default}
.cf-home-event-card-static .cf-home-card-body{min-height:0}
.cf-home-modal-lock{overflow:hidden!important}
.cf-home-restaurant-modal[hidden]{display:none!important}
.cf-home-restaurant-modal{position:fixed;inset:0;z-index:1000000;display:grid;place-items:center;padding:18px;opacity:0;transition:opacity .18s ease;box-sizing:border-box}
.cf-home-restaurant-modal.is-open{opacity:1}
.cf-home-restaurant-backdrop{position:absolute;inset:0;background:rgba(7,35,48,.52);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}
.cf-home-restaurant-dialog{position:relative;z-index:1;width:min(380px,calc(100vw - 32px));max-height:calc(100dvh - 32px);margin:0;background:transparent;border:0;border-radius:8px;box-shadow:none;overflow:visible}
.cf-home-restaurant-scroll{width:100%;max-height:calc(100dvh - 32px);overflow:auto;-webkit-overflow-scrolling:touch;padding:0;box-sizing:border-box}
.cf-home-restaurant-modal .cfr-card{width:100%!important;margin:0!important;border-radius:8px!important;box-shadow:0 14px 42px rgba(4,45,63,.25)!important;overflow:hidden!important}
.cf-home-restaurant-modal .cfr-map-focus{display:none!important}
.cf-home-restaurant-close,.cf-home-restaurant-close:hover,.cf-home-restaurant-close:focus,.cf-home-restaurant-close:focus-visible,.cf-home-restaurant-close:active{position:absolute;z-index:8;top:8px;right:8px;width:auto!important;height:auto!important;min-width:0!important;min-height:0!important;margin:0!important;padding:2px 4px!important;border:0!important;border-radius:0!important;background:transparent!important;color:#fff!important;font-size:30px!important;line-height:1!important;font-weight:400!important;box-shadow:none!important;transform:none!important;transition:none!important;cursor:pointer!important;text-shadow:none!important;filter:none!important;opacity:1!important;text-decoration:none!important}
@media(max-width:600px){.cf-home-restaurant-modal{padding:max(12px,env(safe-area-inset-top)) max(14px,env(safe-area-inset-right)) max(12px,env(safe-area-inset-bottom)) max(14px,env(safe-area-inset-left))}.cf-home-restaurant-dialog{width:min(360px,calc(100vw - 28px));max-height:calc(100dvh - 24px)}.cf-home-restaurant-scroll{max-height:calc(100dvh - 24px)}}

/* 2.9.80: Restaurant-Rabattkarte auf der Startseitenkachel nur durch %-Kreis markieren. */
.cf-home-restaurant-discount-badge{position:absolute;z-index:7;right:8px;top:8px;display:grid;place-items:center;width:30px;height:30px;border:2px solid rgba(255,255,255,.96);border-radius:50%;background:#1f9d58;color:#fff!important;font-size:19px!important;line-height:1!important;font-weight:900!important;box-shadow:0 4px 12px rgba(0,0,0,.18);pointer-events:none}
@media(max-width:700px){.cf-home-restaurant-discount-badge{right:6px;top:6px;width:28px;height:28px;font-size:17px!important}}
/* Im Startseiten-Restaurantpopup liegt rechts oben bereits das Schließen-X. */
.cf-home-restaurant-modal .cfr-discount-badge{top:52px}


/* 3.0.1 – Verbindlicher CF-Homes-Schließen-Button.
 * Lokal am jeweiligen Frontend-Asset definiert, damit ältere modulbezogene
 * !important-Regeln den globalen Popup-Stil nicht mehr überschreiben. */

.cf-home-restaurant-close,
.cf-home-restaurant-close:hover,
.cf-home-restaurant-close:focus,
.cf-home-restaurant-close:focus-visible,
.cf-home-restaurant-close:active{
  width:42px!important;height:42px!important;min-width:42px!important;min-height:42px!important;
  margin:0!important;padding:0!important;border:0!important;border-radius:50%!important;
  background:#087fa8!important;color:#fff!important;
  display:flex!important;align-items:center!important;justify-content:center!important;
  font-family:Arial,Helvetica,sans-serif!important;font-size:27px!important;font-weight:400!important;line-height:1!important;
  text-align:center!important;box-shadow:0 7px 18px rgba(8,73,98,.22)!important;
  transform:none!important;filter:none!important;opacity:1!important;text-decoration:none!important;cursor:pointer!important;
}
.cf-home-restaurant-close:hover,.cf-home-restaurant-close:focus-visible{background:#066f94!important;box-shadow:0 9px 22px rgba(8,73,98,.28),0 0 0 3px rgba(8,127,168,.14)!important;outline:none!important}


/* 3.0.7 – einheitliche moderne Modulüberschriften */
.cf-home-section-heading-main{gap:0!important}
.cf-home-section-icon{display:none!important}
.cf-home-section-copy,.cf-home-fewo-heading,.cf-home-wordcloud-heading{text-align:left!important}
.cf-home-section-kicker{display:block;margin:0 0 7px!important;color:#0b9fc0!important;font-size:.69rem!important;line-height:1!important;font-weight:800!important;letter-spacing:.13em!important;text-transform:uppercase!important}
.cf-home-section-heading h2,.cf-home-fewo-heading h2,.cf-home-wordcloud-heading h2{margin:0 0 7px!important;color:#0c3570!important;font-size:clamp(1.55rem,2.3vw,2.02rem)!important;line-height:1.08!important;font-weight:760!important;letter-spacing:-.022em!important}
.cf-home-section-heading p,.cf-home-fewo-heading p,.cf-home-wordcloud-heading p{margin:0!important;max-width:820px;color:#45637d!important;font-size:.94rem!important;line-height:1.5!important;font-weight:400!important}
.cf-home-fewo-title-row{gap:0!important}
.cf-home-fewo-heading-icon{display:none!important}
@media(max-width:700px){.cf-home-section-kicker{font-size:.64rem!important;margin-bottom:6px!important}.cf-home-section-heading h2,.cf-home-fewo-heading h2,.cf-home-wordcloud-heading h2{font-size:1.45rem!important}.cf-home-section-heading p,.cf-home-fewo-heading p,.cf-home-wordcloud-heading p{font-size:.88rem!important}}
@media(max-width:430px){.cf-home-section-heading h2,.cf-home-fewo-heading h2,.cf-home-wordcloud-heading h2{font-size:1.34rem!important}.cf-home-section-heading p,.cf-home-fewo-heading p,.cf-home-wordcloud-heading p{font-size:.84rem!important}}

/* 3.0.8 – FeWo-direkt-Überschriften auf Startseite und Ferienhausseite linksbündig wie alle anderen Module. */
.cf-home-fewo-heading{
  align-items:flex-start!important;
  justify-content:flex-start!important;
  width:100%!important;
  max-width:none!important;
  margin-left:0!important;
  margin-right:0!important;
  text-align:left!important;
}
.cf-home-fewo-title-row{
  justify-content:flex-start!important;
  text-align:left!important;
}
.cf-home-fewo-heading h2,
.cf-home-fewo-heading p{
  margin-left:0!important;
  margin-right:0!important;
  text-align:left!important;
}


/* 3.1.5 – Headline Center: definitive bridge for homepage/FeWo/wordcloud. */
.cf-home-discover .cf-home-section-kicker{display:block!important;font-size:var(--cfh-hc-kicker-size,12px)!important;font-family:var(--cfh-hc-kicker-font,inherit)!important;font-weight:var(--cfh-hc-kicker-weight,800)!important;color:var(--cfh-hc-kicker-color,#0b9fc0)!important;margin:0 0 var(--cfh-hc-kicker-gap,8px)!important}
.cf-home-discover .cf-home-section-heading h2,.cf-home-discover .cf-home-fewo-heading h2,.cf-home-discover .cf-home-wordcloud-heading h2{font-size:var(--cfh-hc-headline-size,34px)!important;font-family:var(--cfh-hc-headline-font,inherit)!important;font-weight:var(--cfh-hc-headline-weight,700)!important;color:var(--cfh-hc-headline-color,#0c3570)!important;margin-top:0!important;margin-bottom:var(--cfh-hc-headline-gap,9px)!important;text-align:left!important}
.cf-home-discover .cf-home-section-heading p,.cf-home-discover .cf-home-fewo-heading p,.cf-home-discover .cf-home-wordcloud-heading p{font-size:var(--cfh-hc-description-size,16px)!important;font-family:var(--cfh-hc-description-font,inherit)!important;font-weight:var(--cfh-hc-description-weight,400)!important;color:var(--cfh-hc-description-color,#45637d)!important;margin-top:0!important;margin-bottom:var(--cfh-hc-description-gap,0px)!important;text-align:left!important}
.cf-home-discover .cf-home-fewo-heading{align-items:flex-start!important;justify-content:flex-start!important;margin-left:0!important;margin-right:0!important;text-align:left!important}
.cf-home-discover .cf-home-fewo-title-row{justify-content:flex-start!important}
@media(max-width:600px){.cf-home-discover .cf-home-section-kicker{font-size:var(--cfh-hc-kicker-size-mobile,11px)!important}.cf-home-discover .cf-home-section-heading h2,.cf-home-discover .cf-home-fewo-heading h2,.cf-home-discover .cf-home-wordcloud-heading h2{font-size:var(--cfh-hc-headline-size-mobile,28px)!important}.cf-home-discover .cf-home-section-heading p,.cf-home-discover .cf-home-fewo-heading p,.cf-home-discover .cf-home-wordcloud-heading p{font-size:var(--cfh-hc-description-size-mobile,15px)!important}}


/* 3.1.14 – Hundefreundlich-Badge auch auf den kompakten Restaurant-Kacheln der Startseite. */
.cf-home-restaurant-card .cf-home-card-image{position:relative}
.cf-home-restaurant-pet-badge{position:absolute;z-index:6;left:7px;top:7px;width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.95);color:#087fa8;box-shadow:0 3px 10px rgba(0,0,0,.15);pointer-events:none}
.cf-home-restaurant-pet-badge svg{display:block;width:16px;height:16px;fill:currentColor}
@media(max-width:700px){.cf-home-restaurant-pet-badge{left:6px;top:6px;width:25px;height:25px}.cf-home-restaurant-pet-badge svg{width:14px;height:14px}}


/* 3.1.34 – Veranstaltungs-Popup auch auf der Startseite. */
.cf-home-event-card{position:relative}
.cf-home-event-card-open{appearance:none;display:flex;flex-direction:column;width:100%;height:100%;margin:0;padding:0;border:0;background:transparent;color:inherit;text-align:left;font:inherit;cursor:pointer}
.cf-home-event-card-open:focus-visible{outline:3px solid rgba(8,127,154,.28);outline-offset:2px;border-radius:inherit}
.cf-home-section-events .cfv-modal[hidden]{display:none!important}
.cf-home-section-events .cfv-modal{position:fixed!important;z-index:999999!important;inset:0!important;display:grid!important;place-items:center!important;padding:20px!important}
.cf-home-section-events .cfv-modal-backdrop{position:absolute!important;inset:0!important;background:rgba(4,26,39,.62)!important;backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px)}
.cf-home-section-events .cfv-modal-dialog{position:relative!important;z-index:2!important;width:min(1060px,calc(100vw - 28px))!important;max-height:calc(100vh - 32px)!important;overflow:hidden!important;border-radius:26px!important;background:#fff!important;box-shadow:0 28px 90px rgba(2,28,46,.28)!important}
.cf-home-section-events .cfv-modal-close,.cf-home-section-events .cfv-modal-close:hover,.cf-home-section-events .cfv-modal-close:focus,.cf-home-section-events .cfv-modal-close:focus-visible,.cf-home-section-events .cfv-modal-close:active{position:absolute!important;z-index:7!important;right:15px!important;top:15px!important;width:42px!important;height:42px!important;min-width:42px!important;min-height:42px!important;margin:0!important;padding:0!important;border:0!important;border-radius:50%!important;background:#087fa8!important;color:#fff!important;display:flex!important;align-items:center!important;justify-content:center!important;font-family:Arial,Helvetica,sans-serif!important;font-size:27px!important;font-weight:400!important;line-height:1!important;text-align:center!important;cursor:pointer!important;box-shadow:0 7px 18px rgba(8,73,98,.22)!important;transform:none!important;filter:none!important;opacity:1!important;text-decoration:none!important}
.cf-home-section-events .cfv-modal-close:hover,.cf-home-section-events .cfv-modal-close:focus-visible{background:#066f94!important;box-shadow:0 9px 22px rgba(8,73,98,.28),0 0 0 3px rgba(8,127,168,.14)!important;outline:none!important}
.cf-home-section-events .cfv-modal-scroll{max-height:calc(100vh - 32px)!important;overflow:auto!important}
.cf-home-section-events .cfv-modal-layout{display:grid!important;grid-template-columns:minmax(290px,.82fr) minmax(0,1.35fr)!important;min-height:520px!important}
.cf-home-section-events .cfv-modal-media{position:relative!important;min-height:100%!important;padding:20px!important;background:linear-gradient(150deg,#e9fbfc,#c9f1f4)!important}
.cf-home-section-events .cfv-modal-hero{position:sticky!important;top:20px!important;display:flex!important;align-items:center!important;justify-content:center!important;min-height:340px!important;border-radius:22px!important;overflow:hidden!important;background:linear-gradient(145deg,#e7fafc,#bfecef)!important;box-shadow:0 14px 34px rgba(10,92,118,.12)!important}
.cf-home-section-events .cfv-modal-hero img{display:block!important;width:100%!important;height:100%!important;min-height:340px!important;object-fit:cover!important}
.cf-home-section-events .cfv-modal-hero svg{width:116px!important;height:116px!important;fill:none!important;stroke:#07537d!important;stroke-width:2!important;stroke-linecap:round!important;stroke-linejoin:round!important}
.cf-home-section-events .cfv-modal-date-badge{position:absolute!important;left:16px!important;bottom:16px!important;display:inline-flex!important;align-items:center!important;min-height:36px!important;padding:0 13px!important;border-radius:999px!important;background:rgba(255,255,255,.94)!important;color:#0c3570!important;font-size:13px!important;font-weight:900!important;box-shadow:0 4px 16px rgba(12,61,82,.10)!important}
.cf-home-section-events .cfv-modal-info{min-width:0!important;padding:46px 34px 34px!important;color:#123d55!important}
.cf-home-section-events .cfv-modal-category{display:inline-flex!important;margin:0 0 9px!important;color:#0ba7c7!important;font-size:.72rem!important;font-weight:800!important;letter-spacing:.12em!important;text-transform:uppercase!important}
.cf-home-section-events .cfv-modal-title{margin:0 52px 15px 0!important;color:#0c3570!important;font-size:clamp(2rem,4.5vw,3.25rem)!important;line-height:1.04!important;font-weight:800!important;letter-spacing:-.03em!important}
.cf-home-section-events .cfv-modal-description{color:#47697a!important;font-size:1rem!important;line-height:1.65!important}
.cf-home-section-events .cfv-modal-description p{margin:0 0 12px!important}
.cf-home-section-events .cfv-modal-facts{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important;margin:22px 0!important}
.cf-home-section-events .cfv-modal-fact{display:grid!important;grid-template-columns:42px 1fr!important;gap:11px!important;align-items:center!important;min-width:0!important;padding:12px 13px!important;border-radius:17px!important;background:#f4f9fb!important;border:1px solid rgba(8,127,168,.08)!important}
.cf-home-section-events .cfv-modal-fact-icon,.cf-home-section-events .cfv-modal-action-icon{display:grid!important;place-items:center!important;width:40px!important;height:40px!important;border-radius:14px!important;background:#e7f5fa!important;color:#087fa8!important;font-weight:900!important;font-size:18px!important}
.cf-home-section-events .cfv-modal-fact-label{display:block!important;color:#78909b!important;font-size:11px!important;font-weight:800!important;text-transform:uppercase!important;letter-spacing:.06em!important}
.cf-home-section-events .cfv-modal-fact strong{display:block!important;margin-top:2px!important;color:#0c3570!important;font-size:15px!important;line-height:1.3!important;overflow-wrap:anywhere!important}
.cf-home-section-events .cfv-modal-fact small{color:#718995!important;font-size:12px!important;font-weight:500!important}
.cf-home-section-events .cfv-modal-panel{margin-top:12px!important;padding:15px 16px!important;border:1px solid rgba(8,127,168,.10)!important;border-radius:17px!important;background:#f7fbfc!important}
.cf-home-section-events .cfv-modal-panel h3{margin:0 0 7px!important;color:#0c3570!important;font-size:16px!important}
.cf-home-section-events .cfv-modal-panel p{margin:0!important;color:#5d7480!important;line-height:1.5!important}
.cf-home-section-events .cfv-modal-actions{display:grid!important;gap:10px!important;margin-top:12px!important}
.cf-home-section-events .cfv-modal-nav{display:grid!important;grid-template-columns:1fr 1fr!important;gap:8px!important;margin-top:10px!important}
.cf-home-section-events .cfv-modal-nav a{display:flex!important;align-items:center!important;justify-content:center!important;min-height:42px!important;border:1px solid #087fa8!important;border-radius:12px!important;background:#fff!important;color:#087fa8!important;font-weight:800!important;text-decoration:none!important}
.cf-home-section-events .cfv-modal-action{display:grid!important;grid-template-columns:42px 1fr!important;gap:11px!important;align-items:center!important;padding:12px 13px!important;border:1px solid rgba(8,127,168,.10)!important;border-radius:17px!important;background:#f7fbfc!important;color:inherit!important;text-decoration:none!important}
.cf-home-section-events .cfv-modal-action-copy{display:flex!important;flex-direction:column!important;color:#0c3570!important;font-weight:800!important}
.cf-home-section-events .cfv-modal-action-copy small{margin-top:2px!important;color:#718995!important;font-size:12px!important;font-weight:500!important}
html.cfv-modal-open,body.cfv-modal-open{overflow:hidden!important}
@media(max-width:820px){.cf-home-section-events .cfv-modal-layout{grid-template-columns:1fr!important}.cf-home-section-events .cfv-modal-media{padding:14px 14px 0!important}.cf-home-section-events .cfv-modal-hero{position:relative!important;top:auto!important;min-height:220px!important}.cf-home-section-events .cfv-modal-hero img{min-height:220px!important}.cf-home-section-events .cfv-modal-info{padding:26px 18px 26px!important}}
@media(max-width:600px){.cf-home-section-events .cfv-modal{padding:6px!important}.cf-home-section-events .cfv-modal-dialog{width:calc(100vw - 12px)!important;max-height:calc(100vh - 12px)!important;border-radius:22px!important}.cf-home-section-events .cfv-modal-scroll{max-height:calc(100vh - 12px)!important}.cf-home-section-events .cfv-modal-info{padding:22px 14px 24px!important}.cf-home-section-events .cfv-modal-title{font-size:2rem!important;margin-right:44px!important}.cf-home-section-events .cfv-modal-facts{grid-template-columns:1fr!important}.cf-home-section-events .cfv-modal-nav{grid-template-columns:1fr!important}.cf-home-section-events .cfv-modal-close{right:10px!important;top:10px!important;width:38px!important;height:38px!important;min-width:38px!important;min-height:38px!important;font-size:24px!important}}


/* 3.1.40 – Startseiten-Veranstaltungen verwenden dieselbe ruhige Informationslogik
   wie die Karten auf der Veranstaltungsseite. Der Theme-/Button-Hover wird vollständig neutralisiert. */
.cf-home-section-events .cf-home-event-grid{align-items:stretch!important}
.cf-home-section-events .cf-home-event-card{
  position:relative!important;
  min-width:0!important;
  height:100%!important;
  overflow:hidden!important;
  border:1px solid #d8e7ec!important;
  border-radius:12px!important;
  background:#fff!important;
  box-shadow:0 5px 16px rgba(12,47,70,.075)!important;
  transition:none!important;
  transform:none!important;
}
.cf-home-section-events .cf-home-event-card:hover,
.cf-home-section-events .cf-home-event-card:focus-within{
  background:#fff!important;
  border-color:#d8e7ec!important;
  box-shadow:0 5px 16px rgba(12,47,70,.075)!important;
  transform:none!important;
  filter:none!important;
}
.cf-home-section-events .cf-home-event-card-open,
.cf-home-section-events .cf-home-event-card-open:hover,
.cf-home-section-events .cf-home-event-card-open:focus,
.cf-home-section-events .cf-home-event-card-open:active{
  appearance:none!important;
  display:block!important;
  width:100%!important;
  height:100%!important;
  min-height:0!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:inherit!important;
  background:#fff!important;
  color:inherit!important;
  box-shadow:none!important;
  transform:none!important;
  filter:none!important;
  opacity:1!important;
  text-align:left!important;
  text-decoration:none!important;
  font:inherit!important;
  cursor:pointer!important;
  transition:none!important;
}
.cf-home-section-events .cf-home-event-card-open:focus-visible{
  outline:3px solid rgba(8,127,168,.22)!important;
  outline-offset:2px!important;
}
.cf-home-section-events .cf-home-event-body{
  position:relative!important;
  display:flex!important;
  flex-direction:column!important;
  box-sizing:border-box!important;
  min-height:285px!important;
  height:100%!important;
  padding:14px 14px 15px!important;
  background:#fff!important;
  color:#315f72!important;
}
.cf-home-section-events .cf-home-event-topline{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:8px!important;
  min-height:25px!important;
  margin:0 0 9px!important;
}
.cf-home-section-events .cf-home-event-category,
.cf-home-section-events .cf-home-event-multiday{
  display:inline-flex!important;
  align-items:center!important;
  width:max-content!important;
  max-width:100%!important;
  min-height:24px!important;
  padding:4px 9px!important;
  border-radius:999px!important;
  background:#eaf8fb!important;
  color:#087f9a!important;
  font-size:.68rem!important;
  line-height:1.05!important;
  font-weight:850!important;
  letter-spacing:.055em!important;
  text-transform:uppercase!important;
}
.cf-home-section-events .cf-home-event-multiday{
  flex:0 0 auto!important;
  background:#f1f6f8!important;
  color:#58717e!important;
}
.cf-home-section-events .cf-home-event-title{
  display:-webkit-box!important;
  min-height:46px!important;
  margin:0 0 7px!important;
  overflow:hidden!important;
  -webkit-box-orient:vertical!important;
  -webkit-line-clamp:2!important;
  color:#087f9a!important;
  font-size:1rem!important;
  line-height:1.28!important;
  font-weight:850!important;
  letter-spacing:.005em!important;
  text-transform:none!important;
}
.cf-home-section-events .cf-home-event-description{
  display:-webkit-box!important;
  min-height:36px!important;
  margin:0 0 11px!important;
  overflow:hidden!important;
  -webkit-box-orient:vertical!important;
  -webkit-line-clamp:2!important;
  color:#6c8190!important;
  font-size:.76rem!important;
  line-height:1.45!important;
}
.cf-home-section-events .cf-home-event-primary{
  display:grid!important;
  gap:7px!important;
  min-height:82px!important;
  margin-top:auto!important;
  padding:10px 11px!important;
  border:1px solid #dcebf0!important;
  border-radius:11px!important;
  background:#f7fbfc!important;
}
.cf-home-section-events .cf-home-event-primary-row{
  display:grid!important;
  grid-template-columns:17px minmax(0,1fr)!important;
  align-items:start!important;
  gap:7px!important;
  min-width:0!important;
  color:#49687a!important;
  font-size:.73rem!important;
  line-height:1.35!important;
  font-weight:700!important;
  letter-spacing:.035em!important;
}
.cf-home-section-events .cf-home-event-primary-row .cf-home-event-meta-icon{
  width:15px!important;
  height:15px!important;
  margin-top:1px!important;
  stroke:#0b9fc0!important;
}
.cf-home-section-events .cf-home-event-primary-row>span{
  min-width:0!important;
  overflow-wrap:anywhere!important;
}
.cf-home-section-events .cf-home-event-more{
  position:absolute!important;
  right:11px!important;
  bottom:12px!important;
  display:grid!important;
  place-items:center!important;
  width:29px!important;
  height:29px!important;
  border:1.7px solid #0b9fc0!important;
  border-radius:50%!important;
  background:#fff!important;
  color:#0b9fc0!important;
  font-size:1.22rem!important;
  line-height:1!important;
  font-weight:700!important;
  pointer-events:none!important;
}
.cf-home-section-events .cf-home-event-card:hover .cf-home-event-more,
.cf-home-section-events .cf-home-event-card:focus-within .cf-home-event-more{
  background:#fff!important;
  color:#0b9fc0!important;
  border-color:#0b9fc0!important;
  transform:none!important;
}
@media(max-width:700px){
  .cf-home-section-events .cf-home-event-body{min-height:270px!important;padding:12px!important}
  .cf-home-section-events .cf-home-event-title{font-size:.94rem!important;min-height:43px!important}
  .cf-home-section-events .cf-home-event-description{font-size:.72rem!important}
  .cf-home-section-events .cf-home-event-primary-row{font-size:.69rem!important}
}



/* 3.1.44 – Veranstaltungskarten im gewünschten Stil: runder Icon-Kreis, leichte Wellen im Kopfbereich, Kategorie und Titel rechts daneben, darunter Datum und Ort. */
.cf-home-section-events .cf-home-event-body{position:relative!important;display:flex!important;flex-direction:column!important;min-height:268px!important;padding:16px 16px 18px!important;background:#fff!important}
.cf-home-section-events .cf-home-event-hero{position:relative!important;display:block!important;margin:-16px -16px 12px!important;padding:16px 48px 14px 16px!important;min-height:92px!important;overflow:hidden!important;border-radius:12px 12px 0 0!important;background:linear-gradient(180deg,#ffffff 0%,#fbfeff 100%)!important}
.cf-home-section-events .cf-home-event-hero:before,.cf-home-section-events .cf-home-event-hero:after{content:""!important;position:absolute!important;right:-8px!important;top:-10px!important;border-radius:999px!important;background:rgba(20,183,178,.08)!important;pointer-events:none!important}
.cf-home-section-events .cf-home-event-hero:before{width:150px!important;height:66px!important;transform:rotate(12deg)!important}
.cf-home-section-events .cf-home-event-hero:after{width:210px!important;height:82px!important;right:38px!important;top:6px!important;background:rgba(7,127,168,.07)!important;transform:rotate(-8deg)!important}
.cf-home-section-events .cf-home-event-hero-icon{position:absolute!important;left:16px!important;top:16px!important;z-index:2!important}
.cf-home-section-events .cf-home-event-icon-shell{display:flex!important;align-items:center!important;justify-content:center!important;width:56px!important;height:56px!important;border:0!important;border-radius:50%!important;background:linear-gradient(180deg,#14bab9 0%,#0697c4 100%)!important;box-shadow:0 10px 18px rgba(0,132,181,.20)!important}
.cf-home-section-events .cf-home-event-icon-shell svg{width:28px!important;height:28px!important;fill:none!important;stroke:#fff!important;stroke-width:7!important;stroke-linecap:round!important;stroke-linejoin:round!important}
.cf-home-section-events .cf-home-event-save{position:absolute!important;right:16px!important;top:16px!important;z-index:2!important;display:flex!important;align-items:center!important;justify-content:center!important;width:22px!important;height:22px!important;color:#13a2cd!important}
.cf-home-section-events .cf-home-event-save svg{display:block!important;width:18px!important;height:18px!important;fill:none!important;stroke:currentColor!important;stroke-width:1.8!important;stroke-linecap:round!important;stroke-linejoin:round!important}
.cf-home-section-events .cf-home-event-head-main{position:relative!important;z-index:2!important;display:flex!important;flex-direction:column!important;min-width:0!important;padding-left:68px!important;padding-top:14px!important}
.cf-home-section-events .cf-home-event-topline{justify-content:flex-start!important;flex-wrap:wrap!important;gap:7px!important;min-height:24px!important;margin:0 0 8px!important}
.cf-home-section-events .cf-home-event-category{display:inline-flex!important;align-items:center!important;padding:0!important;background:transparent!important;color:#0f8eb1!important;font-size:.70rem!important;line-height:1.1!important;font-weight:850!important;letter-spacing:.02em!important;text-transform:uppercase!important}
.cf-home-section-events .cf-home-event-multiday{display:inline-flex!important;align-items:center!important;min-height:24px!important;padding:4px 10px!important;border-radius:999px!important;background:#eef3fb!important;color:#315f91!important;font-size:.64rem!important;line-height:1!important;font-weight:850!important;letter-spacing:.03em!important;text-transform:uppercase!important}
.cf-home-section-events .cf-home-event-title{display:-webkit-box!important;min-height:3.54em!important;margin:0!important;overflow:hidden!important;-webkit-box-orient:vertical!important;-webkit-line-clamp:3!important;color:#123d74!important;font-size:.98rem!important;line-height:1.18!important;font-weight:850!important;letter-spacing:.005em!important;text-transform:none!important}
.cf-home-section-events .cf-home-event-description{display:-webkit-box!important;min-height:2.7em!important;max-height:2.7em!important;margin:0 46px 12px 0!important;overflow:hidden!important;-webkit-box-orient:vertical!important;-webkit-line-clamp:2!important;color:#62798a!important;font-size:.76rem!important;line-height:1.42!important}
.cf-home-section-events .cf-home-event-divider{display:block!important;height:1px!important;margin:0 46px 12px 0!important;background:#dcebf0!important}
.cf-home-section-events .cf-home-event-primary{display:grid!important;gap:8px!important;min-height:0!important;margin-top:auto!important;margin-right:46px!important;padding:0!important;border:0!important;border-radius:0!important;background:transparent!important}
.cf-home-section-events .cf-home-event-primary-row{display:flex!important;align-items:flex-start!important;gap:10px!important;min-width:0!important;font-size:.76rem!important;line-height:1.38!important;font-weight:650!important;color:#2f5570!important}
.cf-home-section-events .cf-home-event-primary-row .cf-home-event-meta-icon{width:17px!important;height:17px!important;flex:0 0 17px!important;margin-top:1px!important;stroke:#0b9fc0!important}
.cf-home-section-events .cf-home-event-more{right:16px!important;bottom:30px!important;width:38px!important;height:38px!important;border:0!important;background:#d9f5fb!important;color:#0b93bf!important;font-size:1.28rem!important}
@media(max-width:700px){.cf-home-section-events .cf-home-event-body{min-height:254px!important;padding:12px 12px 16px!important}.cf-home-section-events .cf-home-event-hero{margin:-12px -12px 12px!important;padding:12px 42px 12px 12px!important;min-height:88px!important}.cf-home-section-events .cf-home-event-hero-icon{left:12px!important;top:12px!important}.cf-home-section-events .cf-home-event-icon-shell{width:52px!important;height:52px!important}.cf-home-section-events .cf-home-event-icon-shell svg{width:26px!important;height:26px!important}.cf-home-section-events .cf-home-event-save{right:12px!important;top:12px!important}.cf-home-section-events .cf-home-event-head-main{padding-left:62px!important;padding-top:12px!important}.cf-home-section-events .cf-home-event-title{min-height:3.54em!important;font-size:.94rem!important}.cf-home-section-events .cf-home-event-description{margin-right:42px!important}.cf-home-section-events .cf-home-event-divider{margin-right:42px!important}.cf-home-section-events .cf-home-event-primary{margin-right:42px!important}.cf-home-section-events .cf-home-event-more{right:12px!important;bottom:28px!important;width:36px!important;height:36px!important}}


/* 3.1.46 – Startseiten-Veranstaltungen: Pfeil-Kreis nutzt denselben Hover wie die übrigen Karten. */
.cf-home-section-events .cf-home-event-card:hover .cf-home-event-more,
.cf-home-section-events .cf-home-event-card:focus-within .cf-home-event-more,
.cf-home-section-events .cf-home-event-card-open:hover .cf-home-event-more,
.cf-home-section-events .cf-home-event-card-open:focus .cf-home-event-more{
  background:var(--cf-home-blue)!important;
  color:#fff!important;
  border-color:var(--cf-home-blue)!important;
  transform:none!important;
}


/* 3.1.47 – Veranstaltungskarten: kein Merken-Symbol; Pfeil-Kreis exakt wie die übrigen CF-Homes-Karten. */
.cf-home-section-events .cf-home-event-save{display:none!important}
.cf-home-section-events .cf-home-event-more{
  right:11px!important;
  bottom:13px!important;
  width:30px!important;
  height:30px!important;
  border:1.7px solid var(--cf-home-blue)!important;
  border-radius:50%!important;
  background:#fff!important;
  color:var(--cf-home-blue)!important;
  font-size:1.32rem!important;
  line-height:1!important;
  font-weight:700!important;
  box-shadow:none!important;
  transition:none!important;
}
.cf-home-section-events .cf-home-event-card:hover .cf-home-event-more,
.cf-home-section-events .cf-home-event-card:focus-within .cf-home-event-more,
.cf-home-section-events .cf-home-event-card-open:hover .cf-home-event-more,
.cf-home-section-events .cf-home-event-card-open:focus .cf-home-event-more{
  background:var(--cf-home-blue)!important;
  border-color:var(--cf-home-blue)!important;
  color:#fff!important;
  transform:none!important;
}


/* 3.1.48 – Mehrtages-Badge auf Veranstaltungskarten entfernt. */
.cf-home-section-events .cf-home-event-multiday{display:none!important}


/* 3.1.51 – Startseiten-Veranstaltungen niemals zweizeilig umbrechen:
   alle Termine bleiben in exakt einer horizontalen Reihe. */
.cf-home-section-events .cf-home-event-grid{
  display:grid!important;
  grid-auto-flow:column!important;
  grid-auto-columns:minmax(260px,1fr)!important;
  grid-template-columns:none!important;
  grid-template-rows:1fr!important;
  align-items:stretch!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
  scroll-snap-type:x proximity!important;
  overscroll-behavior-x:contain!important;
  -webkit-overflow-scrolling:touch!important;
}
.cf-home-section-events .cf-home-event-card{
  min-width:260px!important;
  width:auto!important;
  height:100%!important;
  scroll-snap-align:start!important;
}
@media(min-width:900px){
  .cf-home-section-events .cf-home-event-grid{
    grid-auto-columns:minmax(0,1fr)!important;
    overflow-x:visible!important;
  }
  .cf-home-section-events .cf-home-event-card{
    min-width:0!important;
  }
}


/* 3.1.52 – Startseiten-Veranstaltungen: vier Karten untereinander, je eine pro Reihe. */
.cf-home-section-events .cf-home-event-grid{
  display:grid!important;
  grid-template-columns:1fr!important;
  grid-template-rows:none!important;
  grid-auto-flow:row!important;
  grid-auto-columns:auto!important;
  gap:14px!important;
  overflow:visible!important;
  scroll-snap-type:none!important;
}
.cf-home-section-events .cf-home-event-card{
  width:100%!important;
  min-width:0!important;
  max-width:none!important;
  height:100%!important;
}


/* 3.1.53 – Mobile Popup der Startseiten-Veranstaltungen stabilisieren. */
@media(max-width:700px){
  .cf-home-section-events .cf-home-event-modal{
    padding:0!important;
    align-items:flex-end!important;
    justify-content:center!important;
  }
  .cf-home-section-events .cf-home-event-modal .cfv-modal-dialog{
    width:100vw!important;
    max-width:100vw!important;
    max-height:94dvh!important;
    margin:0!important;
    border-radius:20px 20px 0 0!important;
    overflow:hidden!important;
  }
  .cf-home-section-events .cf-home-event-modal .cfv-modal-scroll{
    width:100%!important;
    max-height:94dvh!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    -webkit-overflow-scrolling:touch!important;
  }
  .cf-home-section-events .cf-home-event-modal .cfv-modal-media{
    width:100%!important;
    padding:10px 10px 0!important;
    box-sizing:border-box!important;
  }
  .cf-home-section-events .cf-home-event-modal .cfv-modal-hero{
    width:100%!important;
    min-height:180px!important;
    max-height:230px!important;
    border-radius:16px!important;
    overflow:hidden!important;
  }
  .cf-home-section-events .cf-home-event-modal .cfv-modal-info{
    width:100%!important;
    padding:18px 14px 24px!important;
    box-sizing:border-box!important;
  }
  .cf-home-section-events .cf-home-event-modal .cfv-modal-title{
    margin:0 46px 12px 0!important;
    font-size:1.55rem!important;
    line-height:1.12!important;
    overflow-wrap:anywhere!important;
  }
  .cf-home-section-events .cf-home-event-modal .cfv-modal-facts,
  .cf-home-section-events .cf-home-event-modal .cfv-modal-actions,
  .cf-home-section-events .cf-home-event-modal .cfv-modal-nav{
    grid-template-columns:1fr!important;
    width:100%!important;
  }
  .cf-home-section-events .cf-home-event-modal .cfv-modal-close{
    top:12px!important;
    right:12px!important;
    width:36px!important;
    height:36px!important;
    min-width:36px!important;
    min-height:36px!important;
    border-radius:50%!important;
    z-index:50!important;
  }
}


/* 3.1.54 – Mobile Veranstaltungs-Popup strikt einspaltig:
   Bild oben, bisherige rechte Informationsspalte vollständig darunter. */
@media(max-width:700px){
  .cf-home-section-events .cf-home-event-modal .cfv-modal-layout{
    display:flex!important;
    flex-direction:column!important;
    grid-template-columns:none!important;
    width:100%!important;
    min-height:0!important;
  }
  .cf-home-section-events .cf-home-event-modal .cfv-modal-media{
    order:1!important;
    display:block!important;
    width:100%!important;
    min-height:0!important;
    height:auto!important;
    flex:none!important;
  }
  .cf-home-section-events .cf-home-event-modal .cfv-modal-info{
    order:2!important;
    display:block!important;
    width:100%!important;
    min-width:0!important;
    height:auto!important;
    flex:none!important;
  }
  .cf-home-section-events .cf-home-event-modal .cfv-modal-hero{
    position:relative!important;
    top:auto!important;
    width:100%!important;
    height:210px!important;
    min-height:210px!important;
    max-height:210px!important;
  }
  .cf-home-section-events .cf-home-event-modal .cfv-modal-hero img{
    position:absolute!important;
    inset:0!important;
    width:100%!important;
    height:100%!important;
    min-height:0!important;
    object-fit:cover!important;
  }
}


/* 3.1.55 – Startseiten-Veranstaltungs-Popup über Mobile-Menü / Menü-Button. */
.cf-home-section-events .cf-home-event-modal{
  z-index:1000000!important;
}
.cf-home-section-events .cf-home-event-modal .cfv-modal-backdrop{
  z-index:1000000!important;
}
.cf-home-section-events .cf-home-event-modal .cfv-modal-dialog{
  position:relative!important;
  z-index:1000001!important;
}
.cf-home-section-events .cf-home-event-modal .cfv-modal-close{
  z-index:1000002!important;
}


/* 3.1.58 – Startseiten-Veranstaltungen:
   Desktop exakt vier Karten nebeneinander, Mobile exakt eine Karte pro Reihe.
   Popup-Bilder vollständig sichtbar, nie beschneiden. */
@media(min-width:701px){
  .cf-home-section-events .cf-home-event-grid{
    display:grid!important;
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    grid-template-rows:none!important;
    grid-auto-flow:row!important;
    grid-auto-columns:auto!important;
    gap:14px!important;
    overflow:visible!important;
  }
  .cf-home-section-events .cf-home-event-card{
    width:100%!important;
    min-width:0!important;
    max-width:none!important;
  }
}
@media(max-width:700px){
  .cf-home-section-events .cf-home-event-grid{
    display:grid!important;
    grid-template-columns:1fr!important;
    grid-template-rows:none!important;
    grid-auto-flow:row!important;
    grid-auto-columns:auto!important;
    gap:14px!important;
    overflow:visible!important;
    scroll-snap-type:none!important;
  }
  .cf-home-section-events .cf-home-event-card{
    width:100%!important;
    min-width:0!important;
    max-width:none!important;
  }
}
.cf-home-section-events .cf-home-event-modal .cfv-modal-hero.has-image{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  background:#f5f9fb!important;
}
.cf-home-section-events .cf-home-event-modal .cfv-modal-hero.has-image img{
  position:relative!important;
  inset:auto!important;
  width:100%!important;
  height:100%!important;
  max-width:100%!important;
  max-height:100%!important;
  object-fit:contain!important;
  object-position:center center!important;
  background:#f5f9fb!important;
}
@media(max-width:700px){
  .cf-home-section-events .cf-home-event-modal .cfv-modal-hero.has-image{
    height:210px!important;
    min-height:210px!important;
    max-height:210px!important;
  }
  .cf-home-section-events .cf-home-event-modal .cfv-modal-hero.has-image img{
    position:relative!important;
    inset:auto!important;
    width:100%!important;
    height:100%!important;
    object-fit:contain!important;
  }
}

/* 4.5.77 – Reiseziele auch in Startseiten-Kacheln mit Geografie-Vorschau. */
.cf-home-card-travel .cf-home-card-body h3,
.cf-home-card-travel .cf-home-card-body p.cf-card-geography-excerpt {
    text-transform: none !important;
    font-variant-caps: normal !important;
}
.cf-home-card-travel .cf-home-card-body p.cf-card-geography-excerpt {
    display: block !important;
    -webkit-line-clamp: unset !important;
    max-height: none !important;
    overflow: visible !important;
    overflow-wrap: anywhere;
}
