/* Exact Firebase visual layer. FewoVerwalter markup is adapted below without
   changing the public design system. */
.ico{width:1em;height:1em;display:inline-block;vertical-align:-.125em;stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.ico-fill{fill:currentColor;stroke:none}
.clamp1{display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden}
.clamp2{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.clamp3{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
body.fewo-connected{margin:0;background:#fff;color:#181816;font-family:Inter,ui-sans-serif,system-ui,sans-serif}
.fewo-connected a{text-decoration:none}
.fewo-connected img{max-width:100%}
#hdr{transition:background .3s,box-shadow .3s,border-color .3s}
#hdr.solid{background:#fff;border-bottom:1px solid rgba(24,24,22,.05);box-shadow:0 1px 2px rgba(0,0,0,.04)}
#hdr.solid .nl{color:#3a3a37}
#hdr.solid .nl:hover{color:#181816;background:#f7f7f6}
#hdr.solid .nl.active{background:#f7f7f6;color:#3a3a37}
#hdr:not(.solid) .nl.active{background:rgba(255,255,255,.2);color:#fff}
#hdr.solid .gl{border:1px solid #dcdcd9!important;background:rgba(255,255,255,.7)!important;color:#3a3a37!important}
#hdr:not(.solid) .logo-img{background:rgba(255,255,255,.95);border-radius:.75rem;padding:3px;box-shadow:0 1px 2px rgba(0,0,0,.08)}
#hdr.solid #mopen{color:#3a3a37}
#hdr.solid #mopen:hover{background:#f7f7f6}
@keyframes wf-pop{0%{transform:translateY(40px) scale(.4);opacity:0}60%{transform:translateY(-8px) scale(1.06)}100%{transform:translateY(0) scale(1);opacity:1}}
@keyframes wf-bob{0%,100%{transform:translateY(0) rotate(-1.5deg)}50%{transform:translateY(-9px) rotate(1.5deg)}}
#chatLaunch{animation:wf-pop .7s cubic-bezier(.2,.9,.3,1.25) both}
.wf-bob{animation:wf-bob 3.2s ease-in-out infinite;transform-origin:50% 90%;will-change:transform}

/* Live homepage search in the exact floating Firebase search card. */
.hero-search .objektsuche{display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr));gap:.75rem;align-items:end;margin:.65rem 0 0!important;width:100%!important}
.hero-search .exact-query{position:relative}
.hero-search .exact-query .ico{position:absolute;left:.875rem;top:50%;transform:translateY(-50%);color:#92928d}
.hero-search .exact-query input{width:100%;height:46px;border:1px solid #dcdcd9;border-radius:.75rem;background:#f7f7f6;padding:.65rem 1rem .65rem 2.5rem;font:500 .875rem Inter,ui-sans-serif,sans-serif;color:#181816;outline:0}
.hero-search .exact-query input:focus{border-color:#e36464;box-shadow:0 0 0 2px #fadede}
.hero-search .objektsuche:after{display:none!important}
.hero-search .objektsuche>div,.hero-search .form-fromdate,.hero-search .form-todate,.hero-search .form-region,.hero-search .form-personen{float:none!important;margin:0!important;width:auto!important;max-width:none!important;padding:0!important}
.hero-search label{display:block;margin:0 0 .35rem;font-size:.7rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:#6c6c67}
.hero-search .form-control,.hero-search select,.hero-search input{width:100%;height:46px;border:1px solid #dcdcd9;border-radius:.75rem;background:#fff;padding:.65rem .85rem;font:500 .82rem Inter,ui-sans-serif,sans-serif;color:#181816;box-shadow:none}
.hero-search .btn,.hero-search button,.hero-search input[type=submit]{display:inline-flex;width:100%;height:46px;align-items:center;justify-content:center;border:0;border-radius:999px;background:#ca2b2b;padding:.65rem 1rem;font:700 .85rem Inter,ui-sans-serif,sans-serif;color:#fff;text-transform:none;box-shadow:none}
.hero-search .btn:hover,.hero-search button:hover{background:#a82121;color:#fff}

/* Existing filter component, styled as the Firebase sidebar. */
.fewo-filter{font-family:Inter,ui-sans-serif,system-ui,sans-serif}
.fewo-filter h2,.fewo-filter h3,.fewo-filter h4{margin:1.25rem 0 .5rem;font-family:Inter,ui-sans-serif,system-ui,sans-serif;font-size:.72rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:#6c6c67}
.fewo-filter .form-group{margin-bottom:.85rem}
.fewo-filter label{font-size:.82rem;color:#3a3a37}
.fewo-filter .form-control,.fewo-filter select,.fewo-filter input[type=text],.fewo-filter input[type=date],.fewo-filter input[type=number]{width:100%;min-height:44px;border:1px solid #dcdcd9;border-radius:.75rem;background:#fff;padding:.65rem .8rem;font:500 .82rem Inter,ui-sans-serif,sans-serif;color:#181816;box-shadow:none}
.fewo-filter .btn{display:inline-flex;width:100%;min-height:44px;align-items:center;justify-content:center;border:0;border-radius:999px;background:#ca2b2b;color:#fff;font-weight:700;text-transform:none}
.fewo-filter .btn:hover{background:#a82121;color:#fff}
.fewo-filter input[type=checkbox],.fewo-filter input[type=radio]{accent-color:#ca2b2b}

/* Pagination emitted by FewoVerwalter. */
.fewo-connected .pagination{display:flex;flex-wrap:wrap;justify-content:center;gap:.35rem;margin:0;padding:0;list-style:none}
.fewo-connected .pagination a,.fewo-connected .pagination span{display:grid;min-width:2.35rem;height:2.35rem;place-items:center;border:1px solid #dcdcd9;border-radius:999px;background:#fff;padding:0 .65rem;color:#3a3a37;font-size:.82rem;font-weight:600}
.fewo-connected .pagination .active span{border-color:#ca2b2b;background:#ca2b2b;color:#fff}

/* Detail components: preserve behavior, remove the legacy visual skin. */
.exact-gallery{overflow:visible!important;background:transparent!important}
.exact-gallery .slick-slideshow{height:auto!important;overflow:visible!important}
.exact-gallery .slick-slider-1{overflow:hidden;border-radius:1rem;background:#ededeb}
.exact-gallery .slick-slider-1 .slick-list{height:min(58vw,610px)!important;max-height:610px;padding:0!important;border-radius:1rem}
.exact-gallery .slick-slider-1 .slick-track,.exact-gallery .slick-slider-1 .slide,.exact-gallery .slick-slider-1 .slide-images{height:100%!important}
.exact-gallery .slick-slider-1 img{width:100%!important;height:100%!important;margin:0!important;object-fit:cover!important}
.exact-gallery .slick-slider-1 .slick-prev,.exact-gallery .slick-slider-1 .slick-next{z-index:5;width:42px;height:42px;border:0;border-radius:999px;background:rgba(255,255,255,.9);color:transparent;box-shadow:0 4px 15px rgba(0,0,0,.15)}
.exact-gallery .slick-slider-1 .slick-prev:before,.exact-gallery .slick-slider-1 .slick-next:before{color:#3a3a37}
.exact-gallery .slick-slider-nav-1{margin-top:.75rem}
.exact-gallery .slick-slider-nav-1{float:none!important;clear:both!important;width:100%!important;overflow:hidden}
.exact-gallery .slick-slider-nav-1 .slick-list{padding:0!important;width:100%!important}
.exact-gallery .slick-slider-nav-1 .slide-thumb{height:64px!important;margin:0 .25rem;overflow:hidden;border-radius:.5rem}
.exact-gallery .slick-slider-nav-1 img{width:96px!important;height:64px!important;margin:0!important;border-radius:.5rem;object-fit:cover!important}
.exact-gallery+.mt-8{clear:both}
#exactPhotoCount{top:calc(min(58vw,610px) - 3.25rem)}
.connected-detail .detail-component h2,.connected-detail .detail-component h3{color:#181816}
.connected-detail .detail-component table{width:100%;border-collapse:collapse;font-size:.875rem}
.connected-detail .detail-component td,.connected-detail .detail-component th{border-bottom:1px solid rgba(24,24,22,.07);padding:.65rem;text-align:left}
.connected-detail .fewo-plan,.connected-detail .belegungsplan{overflow-x:auto}
.connected-detail .preisrechner input,.connected-detail .preisrechner select,.connected-detail .Preisrechner input,.connected-detail .Preisrechner select{min-height:44px;border:1px solid #dcdcd9;border-radius:.75rem;background:#fff;padding:.65rem .8rem;box-shadow:none}
.connected-detail .preisrechner .btn,.connected-detail .Preisrechner .btn,.connected-detail .objektbuttons .btn{border:0;border-radius:999px;background:#ca2b2b;padding:.7rem 1.1rem;color:#fff;font-weight:700}
.connected-detail aside .fewo-preisrechner .preisrechnertop{display:none!important}
.connected-detail aside .fewo-preisrechner form{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}
.connected-detail aside .fewo-preisrechner form>.col-12{display:contents}
.connected-detail aside .fewo_anreise,.connected-detail aside .fewo_abreise,.connected-detail aside .anz_personen{float:none!important;width:auto!important;margin:0!important;padding:0!important}
.connected-detail aside .anz_personen{grid-column:1/-1}
.connected-detail aside .label_anreise,.connected-detail aside .label_abreise,.connected-detail aside .label_personen{margin:0 0 .4rem;font-size:.7rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:#6c6c67}
.connected-detail aside .fewo-preisrechner input,.connected-detail aside .fewo-preisrechner select{width:100%!important;height:44px!important}
.connected-detail aside #fewo_summe{grid-column:1/-1;padding:.75rem!important;border-radius:.75rem;background:#f7f7f6}
.connected-detail aside .fewo-preisrechner form>.w-100{grid-column:1/-1}
.connected-detail aside .fewo-preisrechner #pbuchung{width:100%;min-height:46px;border:0;border-radius:999px;background:#ca2b2b;color:#fff;font-weight:700}
.connected-detail aside .fewo-preisrechner #pbuchung{display:none!important}
@media(min-width:1024px){
.connected-detail aside{align-self:stretch!important}
.connected-detail aside .detail-booking-stack{position:sticky!important;top:6rem!important}
}

/* Booking component keeps all native names, handlers, validation and AJAX. */
.connected-booking .Buchungsmaske,.connected-booking .buchungsmaske{font-family:Inter,ui-sans-serif,system-ui,sans-serif}
.connected-booking .Buchungsmaske h2,.connected-booking .Buchungsmaske h3,.connected-booking .buchungsmaske h2,.connected-booking .buchungsmaske h3{color:#181816}
.connected-booking .Buchungsmaske input:not([type=checkbox]):not([type=radio]),.connected-booking .Buchungsmaske select,.connected-booking .Buchungsmaske textarea,.connected-booking .buchungsmaske input:not([type=checkbox]):not([type=radio]),.connected-booking .buchungsmaske select,.connected-booking .buchungsmaske textarea{width:100%;min-height:44px;border:1px solid #dcdcd9;border-radius:.75rem;background:#fff;padding:.65rem .8rem;font:500 .875rem Inter,ui-sans-serif,sans-serif;box-shadow:none}
.connected-booking .Buchungsmaske input:focus,.connected-booking .Buchungsmaske select:focus,.connected-booking .Buchungsmaske textarea:focus{border-color:#6c6c67;outline:0;box-shadow:0 0 0 2px #dcdcd9}
.connected-booking .Buchungsmaske .btn,.connected-booking .buchungsmaske .btn{border:0;border-radius:999px;background:#ca2b2b;padding:.7rem 1.2rem;color:#fff;font-weight:700;text-transform:none}
.connected-booking .Buchungsmaske .btn:hover,.connected-booking .buchungsmaske .btn:hover{background:#a82121;color:#fff}
.connected-booking input[type=checkbox],.connected-booking input[type=radio]{accent-color:#ca2b2b}
.connected-booking .booking-main{min-width:0}
.connected-booking .Buchungsmaske .container,.connected-booking .buchungsmaske .container{width:100%!important;max-width:none!important;padding:0!important}
.connected-booking .Buchungsmaske .col-md-8,.connected-booking .buchungsmaske .col-md-8{float:none!important;width:100%!important;max-width:none!important;padding:0!important}
.connected-booking .nav-tabs{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:.35rem;border:0!important;background:transparent!important}
.connected-booking .nav-tabs .nav-item{margin:0!important;border:0!important;background:transparent!important}
.connected-booking .nav-tabs .nav-link{display:flex;min-height:42px;align-items:center;justify-content:center;border:1px solid #ededeb!important;border-radius:.75rem!important;background:#f7f7f6!important;padding:.55rem .7rem!important;color:#6c6c67!important;font-size:.78rem!important}
.connected-booking .nav-tabs .active .nav-link,.connected-booking .nav-tabs .nav-link.active{border-color:#ca2b2b!important;background:#fdf2f2!important;color:#a82121!important;font-weight:700}
@media(min-width:1024px){.connected-booking .booking-main{grid-column:1;grid-row:1}.connected-booking .booking-summary{grid-column:2;grid-row:1}}

@media(max-width:991px){.hero-search .objektsuche{grid-template-columns:repeat(2,minmax(0,1fr))}.hero-search .objektsuche>*:last-child{grid-column:1/-1}}
@media(max-width:640px){.hero-search .objektsuche{grid-template-columns:1fr}.hero-search .objektsuche>*:last-child{grid-column:auto}}
@media(max-width:639px){
main section.container-x{padding:0 1.25rem!important}
#ueber-uns{margin-top:5rem!important}
#ueber-uns>div{gap:2.5rem!important}
#ueber-uns h2{font-size:2rem!important;line-height:1.08!important}
#ueber-uns p{font-size:1rem!important;line-height:1.65!important}
.home-stats{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));width:100%}
.home-stats>div{min-width:0;padding-left:.5rem!important;padding-right:.5rem!important;text-align:center}
.home-stats>div:first-child{padding-left:0!important}
.home-stats>div:last-child{padding-right:0!important}
.home-stats .text-3xl{font-size:1.75rem!important}
.home-stats .text-xs{font-size:.68rem!important;line-height:1.3!important}
#wfBubble{display:none!important}
#chatLaunch{right:.85rem!important;bottom:.85rem!important}
#chatLaunch .wf-bob{display:grid!important;width:3.25rem!important;height:3.25rem!important;place-items:center!important}
#chatLaunch .wf-bob picture{display:none!important}
#chatLaunch .wf-bob>span{position:static!important;width:3.25rem!important;height:3.25rem!important}
#chatLaunch .wf-bob>span .ico{width:1.2rem!important;height:1.2rem!important}
.container-x:has(>.grid.bg-coral-600),#home-cta{scroll-margin-top:5rem}
.container-x:has(>.grid.bg-coral-600){margin-top:5rem!important}
.container-x:has(>.grid.bg-coral-600)>.grid{padding:1.5rem!important}
.container-x:has(>.grid.bg-coral-600) h2,#home-cta h2{color:#fff!important}
.container-x:has(>.grid.bg-coral-600)>.grid>div:last-child{gap:.5rem!important}
.container-x:has(>.grid.bg-coral-600)>.grid>div:last-child>div{padding:.75rem .4rem!important}
#home-cta{margin-top:5rem!important;padding:4rem 0!important}
#home-cta h2{font-size:2.15rem!important;line-height:1.08!important}
#home-cta p{font-size:1rem!important;line-height:1.6!important}
}
@media(prefers-reduced-motion:reduce){.wf-bob,#chatLaunch{animation:none}}
.wf-result-list{width:100%}
.wf-result-card{display:grid!important;grid-template-columns:5.5rem minmax(0,1fr)!important;min-height:6rem!important;width:100%!important;align-items:stretch!important}
.fewo-connected .wf-result-thumb{display:block!important;width:5.5rem!important;min-width:5.5rem!important;max-width:5.5rem!important;height:100%!important;min-height:6rem!important;max-height:none!important;align-self:stretch!important;object-fit:cover!important}
.wf-result-body{display:flex!important;min-width:0!important;flex-direction:column!important;justify-content:center!important;padding:.65rem .75rem!important}
.wf-result-title{display:-webkit-box!important;overflow:hidden!important;-webkit-box-orient:vertical!important;-webkit-line-clamp:2!important;line-height:1.25!important}
.wf-result-location,.wf-result-facts{overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important}
.wf-result-link{line-height:1.2!important}
@media(max-width:420px){.wf-result-card{grid-template-columns:5rem minmax(0,1fr)!important}.fewo-connected .wf-result-thumb{width:5rem!important;min-width:5rem!important;max-width:5rem!important}.wf-result-body{padding:.6rem .65rem!important}}
.fewo-filter-head{font-family:'Fraunces',Georgia,serif;font-weight:700;font-size:1.05rem;color:#181816;margin:0 0 .75rem;letter-spacing:-.01em}
.fewo-filter-head--sub{margin-top:1.25rem}
.listenfilter{border:0}
.listenfilter .kriterien_block{background:#fff;border:1px solid rgba(24,24,22,.06);border-radius:1rem;box-shadow:0 2px 18px -8px rgba(16,47,60,.18);padding:1.1rem 1.15rem;margin-bottom:1rem}
.listenfilter .form-inputs{margin-bottom:.8rem;overflow:hidden}
.listenfilter .form-inputs .label,.listenfilter label.label{display:block;float:none;width:auto;padding:0;margin:0 0 .35rem;font-size:.68rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:#6c6c67}
.listenfilter select.form-control,.listenfilter input.search-anreise,.listenfilter input.search-abreise,.listenfilter #period,.listenfilter #anreise,.listenfilter #abreise{width:100%;height:auto;border:1px solid #dcdcd9;border-radius:.7rem;background:#fff;padding:.55rem .8rem;font-size:.875rem;line-height:1.3;color:#181816;box-shadow:none;-webkit-appearance:none;appearance:none}
.listenfilter select.form-control:focus,.listenfilter input.search-anreise:focus,.listenfilter input.search-abreise:focus{outline:none;border-color:#92928d;box-shadow:0 0 0 2px #ededeb}
.listenfilter .fld_personen,.listenfilter .fld_schlafzimmer{display:flex;align-items:center;justify-content:space-between;gap:.4rem;margin-bottom:.7rem;overflow:visible}
.listenfilter .fld_personen .label,.listenfilter .fld_schlafzimmer .label{margin:0;flex:1 1 auto;width:auto}
.listenfilter .intselector{float:none!important;width:1.9rem;height:1.9rem;display:inline-grid;place-items:center;padding:0;border:1px solid #dcdcd9;border-radius:9999px;cursor:pointer;color:#4c4c48;font-weight:700;user-select:none;transition:border-color .15s,color .15s,background .15s}
.listenfilter .intselector:hover{border-color:#ca2b2b;color:#ca2b2b;background:#fdf2f2}
.listenfilter .listwert{float:none!important;min-width:2.2rem;padding:0;text-align:center;font-weight:700;color:#181816}
.listenfilter .btn-secondary,.listenfilter #filterclear{background:#f7f7f6;color:#3a3a37;border:1px solid #dcdcd9;border-radius:9999px;padding:.45rem 1.1rem;font-weight:600;font-size:.8rem}
.listenfilter .btn-secondary:hover,.listenfilter #filterclear:hover{border-color:#92928d;background:#fff}
.listenfilter .fewo-ausst-title{font-weight:700;color:#181816;font-size:.8rem;margin:.7rem 0 .35rem}
.listenfilter .checkbox label,.listenfilter .ausstattung label{font-size:.85rem;color:#3a3a37}
.exact-gallery{padding-bottom:5.5rem}
.exact-gallery .slick-slider-nav-1,.exact-gallery [class*=slider-nav]{margin-top:.75rem}
.exact-gallery .slick-slider-nav-1 .slick-slide,.exact-gallery [class*=slider-nav] img{border-radius:.5rem;overflow:hidden}
.fewo-belegung table{width:100%;border-collapse:collapse;font-size:.8rem}
.fewo-belegung td,.fewo-belegung th{text-align:center;padding:.5rem .2rem;border:2px solid #fff;color:#3a3a37}
.fewo-belegung tr.tage td{background:#fff!important;color:#92928d!important;font-weight:600;font-size:.68rem;text-transform:uppercase;letter-spacing:.03em;padding-bottom:.4rem}
.fewo-belegung caption,.fewo-belegung td[colspan],.fewo-belegung th[colspan],.fewo-belegung .monatstitel,.fewo-belegung .monatsname{background:#3a3a37!important;color:#fff!important;font-family:'Fraunces',Georgia,serif;font-weight:600;font-size:.95rem;padding:.6rem;border:0}
.fewo-belegung .vergangenheit{background:#f7f7f6!important;color:#cfcfca!important}
.fewo-belegung .nichts{background:#fff!important}
.fewo-belegung .legendeneintrag{display:inline-flex;align-items:center;gap:.4rem;margin-right:1rem;font-size:.72rem;color:#6c6c67}
.fewo-belegung .legendenbild{width:14px;height:14px;border-radius:3px;display:inline-block}
.fewo-ausst{display:grid;gap:1.6rem 2.5rem}
@media(min-width:640px){.fewo-ausst{grid-template-columns:1fr 1fr}}
.fewo-ausst-group .ausst-border{border:0;padding:0;margin:0}
.fewo-ausst-title{display:flex;align-items:center;gap:.55rem;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:#181816;margin:0 0 .7rem}
.fewo-ausst-title .ico{width:1.05rem;height:1.05rem;color:#ca2b2b;flex:none}
.fewo-ausst-group ul{list-style:none;margin:0;padding:0;display:grid;gap:.38rem}
.fewo-ausst-group li{position:relative;padding-left:1.45rem;font-size:.875rem;color:#4c4c48;line-height:1.45}
.fewo-ausst-group li:before{content:"";position:absolute;left:.1rem;top:.5em;width:.72rem;height:.72rem;margin-top:-2px;background:no-repeat center/contain;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ca2b2b' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'><path d='M20 6 9 17l-5-5'/></svg>")}
.fewo-belegung .btn-left,.fewo-belegung .btn-right,.fewo-belegung .ctrlCalPrev,.fewo-belegung .ctrlCalNext{background:transparent!important;color:#fff!important;border:0!important;box-shadow:none!important;opacity:.75;cursor:pointer}
.fewo-belegung .btn-left:hover,.fewo-belegung .btn-right:hover,.fewo-belegung .ctrlCalPrev:hover,.fewo-belegung .ctrlCalNext:hover{opacity:1;color:#fff!important}
.freizeit-content img{border-radius:1rem;height:210px;width:100%;object-fit:cover}
.freizeit-content h1{font-family:'Fraunces',Georgia,serif;font-size:2rem;line-height:1.15;color:#181816}
.freizeit-content h3{font-weight:700;font-size:1.1rem;color:#181816;margin:.6rem 0 .3rem}
.freizeit-content p{font-size:.9rem;color:#4c4c48;line-height:1.6}
.freizeit-content a[style]{background-color:#ca2b2b!important;color:#fff!important;border-radius:9999px!important;padding:.5rem 1.15rem!important;font-size:.8rem;font-weight:600;text-decoration:none;display:inline-block;margin:.15rem .25rem .15rem 0}
.freizeit-content a[style]:hover{background-color:#a82121!important}
.freizeit-content .border-bottom{display:none}
.fewo-angebote .jumbotron,.fewo-angebote .container{background:none;padding:0;margin:0;max-width:none}
.fewo-angebote h2{font-family:'Fraunces',Georgia,serif;font-size:1.5rem;color:#181816;margin-bottom:1rem}
.fewo-angebote .nooffers,.fewo-angebote .keineangebote{display:flex;align-items:center;gap:1rem;border:1px dashed #bcbcb8;border-radius:1rem;background:#fff;padding:1.25rem 1.5rem;color:#4c4c48}
.freizeit-content{display:flex;flex-wrap:wrap;align-items:flex-start;margin:0 -.75rem}
.freizeit-content>div[style*=margin]{flex:0 0 100%;max-width:100%;padding:0 .75rem}
.freizeit-content [class*=col-lg-4]{flex:0 0 33.333%;max-width:33.333%;padding:0 .75rem 1.75rem}
@media(max-width:900px){.freizeit-content [class*=col-lg-4]{flex:0 0 50%;max-width:50%}}
@media(max-width:600px){.freizeit-content [class*=col-lg-4]{flex:0 0 100%;max-width:100%}}
.prose-fewo h1,.prose-fewo h2,.prose-contact h1,.prose-contact h2{font-family:'Fraunces',Georgia,serif;color:#181816;font-size:1.75rem;line-height:1.2;margin:1.4rem 0 .7rem;text-align:left;max-width:none}
.prose-fewo h3,.prose-contact h3{font-weight:700;color:#181816;font-size:1.15rem;margin:1.2rem 0 .5rem}
.prose-fewo p,.prose-contact p{color:#4c4c48;line-height:1.7;margin:.6rem 0;max-width:none}
.prose-fewo ul,.prose-contact ul{margin:.6rem 0;padding-left:1.2rem;color:#4c4c48}
.prose-fewo li,.prose-contact li{margin:.3rem 0;line-height:1.6}
.prose-fewo img,.prose-contact img{border-radius:1rem;margin:1rem 0}
.prose-fewo strong,.prose-contact strong{color:#181816}
.prose-fewo a[style],.prose-contact a[style]{background-color:#ca2b2b!important;color:#fff!important;border-radius:9999px!important;padding:.5rem 1.15rem!important;text-decoration:none;font-weight:600;display:inline-block;margin:.2rem .3rem .2rem 0}
.prose-fewo .row,.prose-contact .row{display:block}
.fewo-contactform label{display:block;margin:0 0 .35rem;font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.03em;color:#6c6c67}
.fewo-contactform input[type=text],.fewo-contactform input[type=email],.fewo-contactform input[type=tel],.fewo-contactform input:not([type]),.fewo-contactform select,.fewo-contactform textarea,.fewo-contactform .form-control{width:100%;border:1px solid #dcdcd9;border-radius:.75rem;background:#fff;padding:.6rem .85rem;font-size:.9rem;line-height:1.4;color:#181816;outline:none;margin-bottom:.9rem;-webkit-appearance:none;appearance:none}
.fewo-contactform input:focus,.fewo-contactform select:focus,.fewo-contactform textarea:focus{border-color:#92928d;box-shadow:0 0 0 2px #ededeb}
.fewo-contactform textarea{min-height:130px;resize:vertical}
.fewo-contactform button,.fewo-contactform input[type=submit],.fewo-contactform .btn{background:#ca2b2b!important;color:#fff!important;border:0!important;border-radius:9999px!important;padding:.7rem 1.9rem!important;font-weight:600;font-size:.875rem;cursor:pointer;display:inline-flex;align-items:center;gap:.5rem}
.fewo-contactform button:hover,.fewo-contactform input[type=submit]:hover{background:#a82121!important}
.fewo-contactform .row{display:block;margin:0}
.fewo-contactform .form-group{margin-bottom:0}
.fewo-filter .bg-secondary,.fewo-filter .bg-primary,.fewo-filter [class*=bg-secondary]{background:transparent!important;color:#181816!important;padding:0!important;font-family:'Fraunces',Georgia,serif;font-weight:700;font-size:1.05rem;margin:0 0 .75rem!important;border:0!important}
.fewo-filter select,.fewo-filter .form-control{width:100%;height:auto;border:1px solid #dcdcd9;border-radius:.7rem;background:#fff;padding:.55rem .8rem;font-size:.875rem;line-height:1.3;color:#181816;margin-bottom:.85rem;box-shadow:none;-webkit-appearance:none;appearance:none}
.fewo-filter select:focus{outline:none;border-color:#92928d;box-shadow:0 0 0 2px #ededeb}
.fewo-filter .label,.fewo-filter label:not(.amount):not(.leist){display:block;float:none;width:auto;margin:0 0 .35rem;font-size:.68rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:#6c6c67}
.fewo-galerie{display:grid;gap:.75rem;grid-template-columns:repeat(2,1fr)}
@media(min-width:640px){.fewo-galerie{grid-template-columns:repeat(3,1fr)}}
@media(min-width:1024px){.fewo-galerie{grid-template-columns:repeat(4,1fr)}}
.fewo-galerie [class*=col-],.fewo-galerie .row{width:auto!important;max-width:none!important;padding:0!important;margin:0!important;float:none!important;display:contents}
.fewo-galerie img{width:100%;height:100%;aspect-ratio:4/3;object-fit:cover;border-radius:.9rem;cursor:pointer;transition:transform .3s}
.fewo-galerie img:hover{transform:scale(1.03)}
.fewo-account label{display:block;margin:0 0 .35rem;font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.03em;color:#6c6c67}
.fewo-account input[type=text],.fewo-account input[type=email],.fewo-account input[type=password],.fewo-account input:not([type]),.fewo-account .form-control{width:100%;border:1px solid #dcdcd9;border-radius:.75rem;background:#fff;padding:.6rem .85rem;font-size:.9rem;color:#181816;outline:none;margin-bottom:.9rem;-webkit-appearance:none;appearance:none}
.fewo-account input:focus{border-color:#92928d;box-shadow:0 0 0 2px #ededeb}
.fewo-account button,.fewo-account input[type=submit],.fewo-account .btn{background:#ca2b2b!important;color:#fff!important;border:0!important;border-radius:9999px!important;padding:.7rem 1.75rem!important;font-weight:600;cursor:pointer;font-size:.875rem}
.fewo-account h1,.fewo-account h2,.fewo-account h3{font-family:'Fraunces',Georgia,serif;color:#181816;font-size:1.25rem;margin-bottom:.5rem}
.fewo-account a{color:#ca2b2b}
.fewo-account .row{display:block}
.fewo-reviews .btn-left,.fewo-reviews .btn-right{background:#f7f7f6!important;color:#4c4c48!important;border:1px solid #dcdcd9!important;border-radius:9999px!important;box-shadow:none!important;width:2.2rem;height:2.2rem;padding:0!important;display:inline-grid;place-items:center}
.fewo-reviews .btn-left:hover,.fewo-reviews .btn-right:hover{border-color:#ca2b2b!important;color:#ca2b2b!important;background:#fdf2f2!important}
.fewo-reviews button.btn-info:not(.btn-left):not(.btn-right),.fewo-reviews .fewo-rating button,.fewo-reviews input[type=submit]{background:#ca2b2b!important;color:#fff!important;border:0!important;border-radius:9999px!important;padding:.6rem 1.5rem!important;font-weight:600;box-shadow:none!important}
.fewo-reviews .sterne .full,.fewo-reviews .getSterne .full,.fewo-reviews .fa-star{color:#e0a500!important}
.fewo-reviews .form-control,.fewo-reviews textarea,.fewo-reviews input[type=text],.fewo-reviews input[type=email]{width:100%;border:1px solid #dcdcd9;border-radius:.7rem;padding:.55rem .8rem;margin-bottom:.7rem;background:#fff}
.fewo-reviews a{color:#ca2b2b}
.date-picker-wrapper{background:#fff!important;border:1px solid rgba(24,24,22,.08)!important;border-radius:1rem!important;box-shadow:0 14px 34px -14px rgba(16,47,60,.4)!important;padding:1rem 1.1rem!important;color:#181816!important;font-family:Inter,ui-sans-serif,system-ui,sans-serif!important}
.date-picker-wrapper .month-name,.date-picker-wrapper .caption{font-family:'Fraunces',Georgia,serif!important;font-weight:700!important;color:#181816!important}
.date-picker-wrapper table.month1 th,.date-picker-wrapper table.month2 th,.date-picker-wrapper .week-name th,.date-picker-wrapper .day-header{color:#92928d!important;font-weight:600!important;font-size:.68rem!important;text-transform:uppercase;letter-spacing:.03em;background:none!important}
.date-picker-wrapper .day{border-radius:.5rem!important;color:#3a3a37!important;border:0!important}
.date-picker-wrapper .day.toMonth.valid:hover{background:#fdf2f2!important;color:#ca2b2b!important;cursor:pointer}
.date-picker-wrapper .day.invalid,.date-picker-wrapper .day.nextMonth,.date-picker-wrapper .day.lastMonth,.date-picker-wrapper .day.noarrival,.date-picker-wrapper .day.nodeparture{color:#cfcfca!important;background:none!important}
.date-picker-wrapper .day.checked,.date-picker-wrapper .day.first-date-selected,.date-picker-wrapper .day.last-date-selected,.date-picker-wrapper .start-day,.date-picker-wrapper .end-day{background:#ca2b2b!important;color:#fff!important}
.date-picker-wrapper .day.checked.hovering,.date-picker-wrapper .selected-days,.date-picker-wrapper .day.real-today{background:#fadede!important;color:#a82121!important}
.date-picker-wrapper .apply-btn,.date-picker-wrapper .drp_top-bar .apply-btn{background:#ca2b2b!important;color:#fff!important;border:0!important;border-radius:9999px!important;padding:.4rem 1.2rem!important;font-weight:600}
.date-picker-wrapper .month-wrapper{border:0!important}
.date-picker-wrapper .prev,.date-picker-wrapper .next{color:#4c4c48!important}
.booking-main .preis_uebersicht{float:none!important;width:100%!important;max-width:100%!important;margin-top:1.75rem;padding:1.25rem 1.5rem;background:#fff;border:1px solid rgba(16,47,60,.08);border-radius:1rem;box-shadow:0 2px 20px -12px rgba(16,47,60,.28)}
.booking-main .preis_uebersicht .zeile{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;margin:0;padding:.55rem 0;border-bottom:1px solid rgba(16,47,60,.06)}
.booking-main .preis_uebersicht .zeile:last-child{border-bottom:0;padding-bottom:0}
.booking-main .preis_uebersicht .zeilensummentitel,.booking-main .preis_uebersicht .header_titel{color:#4a6b76;font-size:.92rem;line-height:1.3;font-weight:500}
.booking-main .preis_uebersicht .header_anzahl{color:#8aa3ac;font-size:.8rem;margin-left:.4rem}
.booking-main .preis_uebersicht .zeilensumme{margin-left:auto;font-weight:600;color:#102f3c;white-space:nowrap;font-size:.95rem}
.booking-main .preis_uebersicht .zeile_objektpreis:first-child{display:none}
.booking-main .preis_uebersicht .summen_beschreibung{flex-basis:100%;color:#8aa3ac;font-size:.75rem;margin-top:.15rem}
.booking-main .preis_uebersicht .zeile.gesamt,.booking-main .preis_uebersicht .zeile:last-child{margin-top:.35rem;padding-top:.85rem;border-top:1.5px solid rgba(16,47,60,.12)}
.booking-main .preis_uebersicht .zeile.gesamt .zeilensummentitel,.booking-main .preis_uebersicht .zeile:last-child .zeilensummentitel{color:#102f3c;font-weight:700;font-size:1.02rem}
.booking-main .preis_uebersicht .zeile.gesamt .zeilensumme,.booking-main .preis_uebersicht .zeile:last-child .zeilensumme{color:#e0524a;font-weight:800;font-size:1.2rem}
.booking-main .preis_uebersicht .zeile{width:100%!important;float:none!important;clear:both!important;box-sizing:border-box}
.booking-main .preis_uebersicht .zeilensumme,.booking-main .preis_uebersicht .header_objsum{float:none!important;position:static!important}
.booking-main .preis_uebersicht .header_titel,.booking-main .preis_uebersicht .header_anzahl{float:none!important}
#fewo-cfilter .cf-group{margin-bottom:1.35rem}
#fewo-cfilter .cf-head{display:block;font-size:.7rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#8aa3ac;margin-bottom:.6rem}
#fewo-cfilter .cf-search-wrap{position:relative;display:flex;align-items:center}
#fewo-cfilter .cf-search-ico{position:absolute;left:.75rem;width:1rem;height:1rem;color:#9db4bc;pointer-events:none}
#fewo-cfilter .cf-search{width:100%;padding:.6rem .8rem .6rem 2.25rem;border:1px solid rgba(16,47,60,.14);border-radius:.75rem;font-size:.9rem;color:#102f3c;outline:none;transition:border-color .15s,box-shadow .15s}
#fewo-cfilter .cf-search:focus{border-color:#e0524a;box-shadow:0 0 0 3px rgba(224,82,74,.12)}
#fewo-cfilter .cf-list{display:flex;flex-direction:column;gap:.15rem}
#fewo-cfilter .cf-check{display:flex;align-items:center;gap:.6rem;padding:.4rem .5rem;border-radius:.6rem;cursor:pointer;transition:background .12s}
#fewo-cfilter .cf-check:hover{background:#f3f7f8}
#fewo-cfilter .cf-check input{position:absolute;opacity:0;width:0;height:0}
#fewo-cfilter .cf-box{flex:0 0 auto;width:1.15rem;height:1.15rem;border:1.5px solid rgba(16,47,60,.22);border-radius:.4rem;position:relative;transition:all .15s}
#fewo-cfilter .cf-check:hover .cf-box{border-color:#e0524a}
#fewo-cfilter .cf-check input:checked+.cf-box{background:#e0524a;border-color:#e0524a}
#fewo-cfilter .cf-check input:checked+.cf-box:after{content:"";position:absolute;left:.34rem;top:.15rem;width:.32rem;height:.6rem;border:solid #fff;border-width:0 2px 2px 0;transform:rotate(45deg)}
#fewo-cfilter .cf-check input:focus-visible+.cf-box{box-shadow:0 0 0 3px rgba(224,82,74,.18)}
#fewo-cfilter .cf-name{flex:1;font-size:.9rem;color:#334e58;line-height:1.2}
#fewo-cfilter .cf-check input:checked~.cf-name{color:#102f3c;font-weight:600}
#fewo-cfilter .cf-count{flex:0 0 auto;min-width:1.6rem;text-align:center;font-size:.72rem;font-weight:700;color:#7d949c;background:#eef3f4;border-radius:1rem;padding:.1rem .45rem}
#fewo-cfilter .cf-check input:checked~.cf-count{color:#e0524a;background:rgba(224,82,74,.1)}
#fewo-cfilter .cf-stepper{display:inline-flex;align-items:center;gap:.25rem;border:1px solid rgba(16,47,60,.14);border-radius:.75rem;padding:.25rem}
#fewo-cfilter .cf-step{width:2rem;height:2rem;border:0;background:#f3f7f8;border-radius:.55rem;font-size:1.1rem;font-weight:600;color:#334e58;cursor:pointer;line-height:1;transition:background .12s}
#fewo-cfilter .cf-step:hover{background:#e0524a;color:#fff}
#fewo-cfilter .cf-step-val{min-width:3rem;text-align:center;font-size:.9rem;font-weight:600;color:#102f3c}
.cf-reset{font-size:.78rem;font-weight:600;color:#e0524a;background:0;border:0;cursor:pointer;padding:.2rem .1rem}
.cf-reset:hover{text-decoration:underline}
.cf-reset.hidden{display:none}
.wf-typing{display:inline-flex;gap:4px;align-items:center}
.wf-typing i{width:7px;height:7px;border-radius:50%;background:#9db4bc;display:inline-block;animation:wfblink 1.2s infinite ease-in-out both}
.wf-typing i:nth-child(2){animation-delay:.18s}
.wf-typing i:nth-child(3){animation-delay:.36s}
@keyframes wfblink{0%,80%,100%{opacity:.25;transform:translateY(0)}40%{opacity:1;transform:translateY(-3px)}}
nav .group:hover .group-hover\:visible{visibility:visible!important}
.clamp5{display:-webkit-box;-webkit-line-clamp:5;-webkit-box-orient:vertical;overflow:hidden}
.btn-success,.btn-success:focus,a.btn-success{background:#e0524a!important;border-color:#e0524a!important;color:#fff!important;border-radius:9999px!important;box-shadow:none!important}
.btn-success:hover,a.btn-success:hover{background:#c8443c!important;border-color:#c8443c!important;color:#fff!important}
.btn-secondary{background:#eef3f4!important;border-color:transparent!important;color:#334e58!important;border-radius:9999px!important}
.btn-secondary:hover{background:#e0524a!important;color:#fff!important}
#fewo-objektliste .fa,#fewo-hausliste .fa,.fewo-results .fa{display:none}
.fewo-belegung td.xs-free{cursor:pointer;transition:outline .1s}
.fewo-belegung td.xs-free:hover{outline:2px solid #e0524a;outline-offset:-2px}
.fewo-belegung td.xs-picksel{outline:2px solid #e0524a!important;outline-offset:-2px;background:rgba(224,82,74,.14)!important}
.fewo-belegung .xs-hint{margin-top:.5rem;font-size:.78rem;color:#7d949c;display:flex;align-items:center;gap:.4rem}
.exact-gallery .slick-slider-1 .slick-prev,.exact-gallery .slick-slider-1 .slick-next{z-index:5;width:46px;height:46px;border:0;border-radius:999px;background:#fff;color:transparent;box-shadow:0 6px 20px -6px rgba(16,47,60,.45);transition:background .15s,transform .15s,box-shadow .15s}
.exact-gallery .slick-slider-1 .slick-prev{left:14px}
.exact-gallery .slick-slider-1 .slick-next{right:14px}
.exact-gallery .slick-slider-1 .slick-prev:hover,.exact-gallery .slick-slider-1 .slick-next:hover{background:#e0524a;transform:scale(1.07);box-shadow:0 8px 24px -6px rgba(224,82,74,.5)}
.exact-gallery .slick-slider-1 .slick-prev:before,.exact-gallery .slick-slider-1 .slick-next:before{font-family:inherit!important;color:#102f3c;font-size:22px;font-weight:700;line-height:1;opacity:1}
.exact-gallery .slick-slider-1 .slick-prev:hover:before,.exact-gallery .slick-slider-1 .slick-next:hover:before{color:#fff}
.exact-gallery .slick-slider-1 .slick-prev:before{content:'\276E'}
.exact-gallery .slick-slider-1 .slick-next:before{content:'\276F'}
#fewo-cfilter .cf-select{width:100%;padding:.6rem .8rem;border:1px solid rgba(16,47,60,.14);border-radius:.75rem;font-size:.9rem;color:#102f3c;background:#fff;outline:none;cursor:pointer;transition:border-color .15s,box-shadow .15s}
#fewo-cfilter .cf-select:focus{border-color:#e0524a;box-shadow:0 0 0 3px rgba(224,82,74,.12)}
#fewo-cfilter input[type=checkbox]{accent-color:#e0524a;flex:0 0 auto}
#fewo-cfilter .cf-list{display:flex;flex-direction:column;gap:.1rem}
#fewo-cfilter .cf-fcheck{display:flex;align-items:center;gap:.6rem;padding:.4rem .5rem;border-radius:.5rem;font-size:.875rem;font-weight:400;letter-spacing:normal;text-transform:none;color:#334e58;cursor:pointer;transition:background .12s}
#fewo-cfilter .cf-fcheck:hover{background:#f3f7f8}
#fewo-cfilter .cf-fcheck input[type=checkbox]{width:1rem;height:1rem;flex:0 0 auto;accent-color:#e0524a;margin:0;border-radius:.25rem}
#fewo-cfilter .cf-fcheck .cf-nm{flex:1 1 auto;text-transform:none}
#fewo-cfilter .cf-fcheck input:checked~.cf-nm{color:#102f3c;font-weight:600}
#fewo-cfilter .cf-fcheck .cf-num{flex:0 0 auto;margin-left:auto;font-size:.72rem;color:#9db4bc;font-weight:600}
.booking-main #exTab2{float:none!important;width:100%!important;max-width:100%!important;padding:0!important}
.booking-main #exTab2 .container{width:100%!important;max-width:100%!important;padding:0!important;margin:0!important}
.booking-main .buchung_anreise,.booking-main .buchung_abreise,.booking-main .anz_erwachsene,.booking-main .anz_kinder,.booking-main .anz_kleinkinder{float:none!important;display:inline-block;vertical-align:bottom;width:auto!important;min-width:132px;margin:0 .75rem 1rem 0!important;padding:0!important}
.booking-main .buchung_anreise .label,.booking-main .buchung_abreise .label,.booking-main .anz_erwachsene .label,.booking-main .anz_kinder .label,.booking-main .anz_kleinkinder .label{font-size:.7rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:#8aa3ac;margin-bottom:.4rem}
.booking-main .buchung_anreise input,.booking-main .buchung_abreise input,.booking-main .anz_erwachsene select,.booking-main .anz_kinder select,.booking-main .anz_kleinkinder select,.booking-main #period{width:100%!important;padding:.62rem .8rem!important;border:1px solid rgba(16,47,60,.16)!important;border-radius:.7rem!important;font-size:.9rem!important;color:#102f3c!important;background:#fff!important;height:auto!important;box-shadow:none!important;cursor:pointer}
.booking-main .buchung_anreise input:focus,.booking-main .buchung_abreise input:focus,.booking-main #period:focus{border-color:#e0524a!important;outline:none}
.booking-main .fewo-btnweiter{float:none!important;clear:both;display:inline-flex!important;align-items:center;gap:.4rem;margin-top:.5rem}
.booking-main .preis_uebersicht{clear:both!important}
.booking-main .nav-tabs{display:none!important}
.booking-main .leistungenheader{display:flex;gap:1rem;align-items:center;padding:.55rem 0;border-bottom:1.5px solid rgba(16,47,60,.12);font-size:.68rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em;color:#8aa3ac}
.booking-main .leistungenheader .leistungheader{float:none!important;width:auto!important;padding:0!important;margin:0!important}
.booking-main .leistungenheader .leistung_titel{flex:1 1 auto;text-align:left}
.booking-main .leistungenheader .leistung_anzahl{flex:0 0 54px;text-align:center}
.booking-main .leistungenheader .leistung_preis,.booking-main .leistungenheader .leistung_summe{flex:0 0 84px;text-align:right}
.booking-main .zeile_leistung{display:flex!important;gap:1rem;align-items:center;padding:.75rem 0;border-bottom:1px solid rgba(16,47,60,.06);font-size:.9rem;color:#334e58}
.booking-main .zeile_leistung>div{float:none!important;width:auto!important;padding:0!important;margin:0!important;display:block}
.booking-main .zeile_leistung .leistung_titel{flex:1 1 auto;font-weight:500;color:#102f3c;line-height:1.35}
.booking-main .zeile_leistung .leistung_anzahl{flex:0 0 54px;display:flex!important;align-items:center;justify-content:center}
.booking-main .zeile_leistung .leistung_preis,.booking-main .zeile_leistung .leistung_summe{flex:0 0 84px;text-align:right;font-weight:600;color:#102f3c;white-space:nowrap}
.booking-main .leistung_header_mobile,.booking-main .leistung_type{display:none!important}
.booking-main .zeile_leistung input[type=checkbox]{accent-color:#e0524a;width:1.15rem;height:1.15rem;cursor:pointer;margin:0}
.booking-main .zeile_leistung select{padding:.35rem .5rem;border:1px solid rgba(16,47,60,.16);border-radius:.5rem;font-size:.85rem;background:#fff;width:auto}
.booking-main .zusammenfassung_zeile{display:flex;justify-content:space-between;gap:1rem;padding:.5rem 0;border-bottom:1px solid rgba(16,47,60,.06)}
.booking-main .zusammenfassung_zeile .label{color:#8aa3ac;font-weight:500;flex:0 0 auto;text-transform:none}
.booking-main .zusammenfassung_zeile>.zusammenfassung{color:#102f3c;text-align:right;font-weight:500}
.booking-main .zusammenfassung h3{font-family:'Fraunces',Georgia,serif;font-size:1.1rem;font-weight:700;color:#102f3c;margin:1.75rem 0 .6rem}
.booking-main .zusammenfassung.preisuebersicht{margin-top:1.25rem;background:#f7f7f6;border-radius:1rem;padding:1.1rem 1.25rem}
.booking-main .zusammenfassung.preisuebersicht h3{margin-top:0}
.booking-main .zusammenfassung.preisuebersicht .zusammenfassung_zeile{border-bottom:0;padding:.35rem 0}
.booking-main .zusammenfassung.preisuebersicht .zusammenfassung_zeile:first-of-type{font-size:1.05rem}
.booking-main .zusammenfassung.preisuebersicht strong{color:#102f3c}
.booking-main .zusammenfassung.preisuebersicht .zusammenfassung_zeile:first-of-type .zusammenfassung strong{color:#e0524a;font-size:1.15rem}
.booking-main .mitreisende_header{display:flex;gap:1rem;font-size:.68rem;text-transform:uppercase;letter-spacing:.05em;color:#8aa3ac;font-weight:800;padding:.5rem 0;border-bottom:1px solid rgba(16,47,60,.1)}
.booking-main .zusammenfassung.mitreisende .mitreisende_header>div,.booking-main .zusammenfassung.mitreisende>.mitreisende>div{float:none!important;width:auto!important;flex:1 1 0;padding:.35rem 0!important}
.booking-main .zusammenfassung.mitreisende>.mitreisende{display:flex;flex-wrap:wrap;gap:0 1rem}
.booking-main .agbdata{margin-top:1.5rem}
.booking-main .agbdata .zusammenfassung_zeile{align-items:flex-start;justify-content:flex-start;gap:.6rem;border:0;padding:.4rem 0}
.booking-main .agbdata input[type=checkbox]{accent-color:#e0524a;margin-top:.2rem;float:none!important;flex:0 0 auto}
.booking-main .agbdata .label{text-align:left;font-weight:400;color:#334e58;font-size:.8rem;line-height:1.4}
.booking-main .zusammenfassung h3{margin-top:0}
.booking-main .zusammenfassung .daten>.zusammenfassung_zeile,.booking-main .reiseinformationen .zusammenfassung_zeile{align-items:baseline}
.booking-main .daten .zusammenfassung_zeile .label{flex:0 0 140px!important;text-align:left!important;font-size:.8rem}
.booking-main .daten .zusammenfassung_zeile>.zusammenfassung{text-align:left!important;flex:1 1 auto!important;line-height:1.4}
.booking-main .zusammenfassung.leistungen,.booking-main .zusammenfassung.mitreisende{margin-top:1.5rem}
.booking-main .zusammenfassung.preisuebersicht .zusammenfassung_zeile{justify-content:space-between!important}
.booking-main .zusammenfassung.preisuebersicht .zusammenfassung_zeile .label{flex:0 0 auto!important;text-align:left!important}
.booking-main .zusammenfassung.preisuebersicht .zusammenfassung_zeile>.zusammenfassung{text-align:right!important;flex:0 0 auto!important}
.booking-main .zusammenfassung:has(>.daten){border:1px solid rgba(16,47,60,.08);border-radius:1rem;padding:1.25rem 1.5rem}
.booking-main .zusammenfassung>.daten{border:0;padding:0}
.booking-main .agbdata{margin-top:1.1rem;border-top:1px solid rgba(16,47,60,.08);padding-top:1rem}
.booking-main .leistungenheader .leistung_titel{padding-left:0}
.booking-main .zeile_leistung .leistung_anzahl{gap:.4rem}
.booking-main .zeile_leistung .countval{font-size:.72rem;color:#8aa3ac;font-weight:600}
.booking-main .zeile_leistung:last-child{border-bottom:0}
.booking-main form:has(.zusammenfassung.preisuebersicht) .preis_uebersicht{display:none!important}
.booking-main .zusammenfassung>.daten::after,.booking-main .zusammenfassung.leistungen::after,.booking-main .zusammenfassung.leistungen .leistungenheader::after,.booking-main .zusammenfassung.leistungen .zeile_leistung::after,.booking-main .zusammenfassung.mitreisende::after,.booking-main .zusammenfassung.mitreisende .mitreisende_header::after{content:"";display:block;clear:both}
.booking-main .zusammenfassung.leistungen,.booking-main .zusammenfassung.preisuebersicht,.booking-main .zusammenfassung.mitreisende{clear:both;position:relative}
.booking-main .zusammenfassung.leistungen{overflow:hidden}
.booking-main .agbdata .zusammenfassung_zeile{flex-wrap:nowrap!important}
.booking-main .agbdata .zusammenfassung_zeile .label{flex:1 1 auto!important;min-width:0!important;text-align:left!important}
.booking-main .zusammenfassung_zeile .label{width:auto!important}
.booking-main .zusammenfassung_zeile>.zusammenfassung{float:none!important;width:auto!important}
.booking-main .zusammenfassung.preisuebersicht .zusammenfassung_zeile .label{flex:0 1 auto!important}
.hero-suggest{position:absolute;left:0;right:0;top:calc(100% + 6px);z-index:60;display:none;overflow:hidden;border-radius:.75rem;background:#fff;border:1px solid rgba(16,47,60,.08);box-shadow:0 18px 40px -12px rgba(16,47,60,.35)}
.hero-suggest.open{display:block}
.hero-sug-item{display:flex;align-items:center;gap:.75rem;padding:.6rem .75rem;border-bottom:1px solid rgba(16,47,60,.05);text-decoration:none}
.hero-sug-item:hover{background:#f7f7f6}
.hero-sug-item img,.hero-sug-thumb{width:56px;height:44px;border-radius:.5rem;object-fit:cover;background:#ededeb;flex:0 0 auto;display:block}
.hero-sug-txt{min-width:0;flex:1 1 auto}
.hero-sug-name{display:block;font-size:.85rem;font-weight:600;color:#102f3c;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.hero-sug-meta{display:block;margin-top:.1rem;font-size:.72rem;color:#8aa3ac}
.hero-sug-all{display:block;width:100%;border:0;background:#f7f7f6;padding:.6rem;text-align:center;font-size:.75rem;font-weight:700;color:#ca2b2b;cursor:pointer}
.hero-sug-all:hover{background:#ededeb}
.hero-sug-empty{padding:1rem;font-size:.85rem;color:#8aa3ac}
.hero-sug-link{border:0;background:none;padding:0;font-size:.85rem;font-weight:600;color:#ca2b2b;text-decoration:underline;cursor:pointer}
.fewo-angebote .ang-header{display:none}
.fewo-angebote .fewo-item{display:grid;grid-template-columns:auto minmax(0,1fr) auto;grid-template-areas:"badge titel btn" "badge art btn" "badge von btn";align-items:center;column-gap:1.5rem;row-gap:.15rem;border:1px solid rgba(16,47,60,.08);border-radius:1rem;background:#fff;padding:1.4rem 1.6rem;box-shadow:0 2px 18px -8px rgba(16,47,60,.18)}
.fewo-angebote .fewo-item+.fewo-item{margin-top:1rem}
.fewo-angebote .fewo-item::before{content:"Angebot";grid-area:badge;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;background:#fdf2f2;color:#ca2b2b;font-size:.68rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;padding:.5rem .85rem}
.fewo-angebote .fewo-item>div:not([class]){grid-area:titel;font-family:'Fraunces',Georgia,serif;font-size:1.15rem;font-weight:700;color:#102f3c}
.fewo-angebote .ang-art{grid-area:art;font-weight:700;color:#102f3c}
.fewo-angebote .ang-von{grid-area:von;font-size:.85rem;color:#8aa3ac}
.fewo-angebote .fewo-btndetail{grid-area:btn;justify-self:end;border-radius:999px;padding:.55rem 1.35rem}
.fewo-angebote .fewo-btndetail a{color:#fff;text-decoration:none;font-weight:700}
@media(max-width:640px){.fewo-angebote .fewo-item{grid-template-columns:minmax(0,1fr);grid-template-areas:"badge" "titel" "art" "von" "btn";justify-items:start;row-gap:.4rem}.fewo-angebote .fewo-item::before{justify-self:start}.fewo-angebote .fewo-btndetail{justify-self:start}}
.fewo-angebote .ang-leer{display:flex;flex-wrap:wrap;align-items:center;gap:1.25rem;border:1px dashed #bcbcb8;border-radius:1rem;background:#fff;padding:1.5rem 2rem}
.fewo-angebote .ang-leer-ico{display:grid;place-items:center;width:3rem;height:3rem;border-radius:.75rem;background:#f7f7f6;color:#92928d;font-size:1.3rem;flex:0 0 auto}
.fewo-angebote .ang-leer-txt{flex:1 1 260px;font-size:.9rem;color:#4c4c48;line-height:1.5}
.fewo-angebote .ang-leer-txt strong{color:#102f3c;font-size:.95rem}
.fewo-angebote .ang-leer-btn{flex:0 0 auto;display:inline-flex;align-items:center;gap:.5rem;border:1px solid #dcdcd9;border-radius:999px;background:rgba(255,255,255,.7);padding:.6rem 1.25rem;font-size:.85rem;font-weight:600;color:#3a3a37;text-decoration:none}
.fewo-angebote .ang-leer-btn:hover{border-color:#92928d;background:#fff}
.rrv-frame{display:block!important;width:100%!important;height:900px!important;min-height:900px!important;border:0!important}
@media(max-width:640px){.rrv-frame{height:1050px!important;min-height:1050px!important}}
.imp-page{overflow:hidden;background:#fff;color:#181816}.imp-page section{padding:0!important}.imp-wrap{width:min(calc(100% - 40px),1280px);margin-inline:auto}.imp-hero{position:relative!important;min-height:690px!important;height:calc(100svh - 64px);display:flex;align-items:flex-end;isolation:isolate}.imp-hero-img,.imp-hero-shade{position:absolute;inset:0;width:100%;height:100%}.imp-hero-img{object-fit:cover;z-index:-2}.imp-hero-shade{z-index:-1;background:linear-gradient(90deg,rgba(10,29,37,.88) 0%,rgba(10,29,37,.58) 48%,rgba(10,29,37,.12) 100%),linear-gradient(0deg,rgba(10,29,37,.42),transparent 55%)}.imp-hero-content{padding:0 0 4.5rem;color:#fff}.imp-kicker{display:inline-flex;align-items:center;gap:.7rem;font-size:.72rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:#fff}.imp-kicker>span{width:2.5rem;height:1px;background:#e89a8e}.imp-kicker-dark{color:#a82121}.imp-kicker-dark>span{background:#ca2b2b}.imp-hero h1{max-width:760px;margin:1.2rem 0 0;color:#fff!important;font:700 clamp(3.5rem,7vw,6.8rem)/.9 'Fraunces',Georgia,serif;letter-spacing:-.045em}.imp-hero p{max-width:590px;margin:1.6rem 0 0;color:rgba(255,255,255,.84);font-size:1.15rem;line-height:1.65}.imp-hero-actions{display:flex;flex-wrap:wrap;gap:.8rem;margin-top:2rem}.imp-btn{display:inline-flex;align-items:center;justify-content:center;gap:.55rem;border:1px solid transparent;border-radius:999px;padding:.85rem 1.35rem;font-size:.88rem;font-weight:750;text-decoration:none;transition:.2s}.imp-btn .ico{width:1rem;height:1rem}.imp-btn-light{background:#fff;color:#3a3a37}.imp-btn-light:hover{background:#f1f1ef;color:#a82121}.imp-btn-glass{border-color:rgba(255,255,255,.38);background:rgba(255,255,255,.08);color:#fff;backdrop-filter:blur(8px)}.imp-btn-glass:hover{background:rgba(255,255,255,.16);color:#fff}.imp-hero-facts{display:flex;flex-wrap:wrap;gap:.55rem 1.5rem;margin-top:2.1rem;color:rgba(255,255,255,.7);font-size:.75rem}.imp-hero-facts span:before{content:'✓';margin-right:.45rem;color:#e89a8e}.imp-intro{display:grid;grid-template-columns:1fr 1fr;gap:6rem;align-items:start;padding:8rem 0!important}.imp-intro h2,.imp-section-head h2{margin:.9rem 0 0;color:#181816!important;font:700 clamp(2.5rem,4vw,4.5rem)/1 'Fraunces',Georgia,serif;letter-spacing:-.035em}.imp-intro-copy{padding-top:1rem}.imp-intro-copy p{margin:0;color:#4c4c48;font-size:1.05rem;line-height:1.8}.imp-intro-copy p+p{margin-top:1rem}.imp-gallery{padding-bottom:8rem!important}.imp-section-head{display:flex;align-items:end;justify-content:space-between;gap:3rem;margin-bottom:2.5rem}.imp-section-head>p{max-width:340px;margin:0;color:#6c6c67;line-height:1.65}.imp-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));grid-auto-rows:90px;gap:1rem}.imp-card{position:relative;overflow:hidden;border:0;border-radius:1.35rem;padding:0;background:#102f3c;cursor:zoom-in;box-shadow:0 12px 35px -22px rgba(16,47,60,.5)}.imp-card:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,rgba(8,24,31,.82),transparent 55%);transition:.35s}.imp-card img{width:100%;height:100%;object-fit:cover;transition:transform .75s cubic-bezier(.2,.7,.2,1)}.imp-card:hover img{transform:scale(1.055)}.imp-card>span{position:absolute;z-index:2;left:1.3rem;right:1.3rem;bottom:1.15rem;color:#fff;text-align:left}.imp-card b{display:block;color:#fff;font:650 1.25rem/1.15 'Fraunces',Georgia,serif}.imp-card small{display:block;margin-top:.25rem;color:rgba(255,255,255,.72);font-size:.72rem}.imp-card-a{grid-column:span 8;grid-row:span 5}.imp-card-b{grid-column:span 4;grid-row:span 5}.imp-card-c,.imp-card-d,.imp-card-e{grid-column:span 4;grid-row:span 4}.imp-card-f{grid-column:span 12;grid-row:span 4}.imp-panorama{position:relative!important;height:380px;display:grid;place-items:center;isolation:isolate}.imp-panorama img,.imp-panorama>div{position:absolute;inset:0;width:100%;height:100%;z-index:-2}.imp-panorama img{object-fit:cover}.imp-panorama>div{z-index:-1;background:rgba(12,34,43,.55)}.imp-panorama p{margin:0;padding:0 1.25rem;color:#fff;text-align:center;font:500 clamp(2rem,5vw,4.5rem)/1.05 'Fraunces',Georgia,serif}.imp-panorama strong{color:#fff}.imp-seasons{padding:8rem 0!important}.imp-season-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem}.imp-season-grid article{position:relative;overflow:hidden;min-height:390px;border-radius:1.35rem;background:#102f3c}.imp-season-grid img{width:100%;height:100%;object-fit:cover;transition:transform .65s}.imp-season-grid article:hover img{transform:scale(1.05)}.imp-season-grid article:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,rgba(9,26,34,.8),transparent 55%)}.imp-season-grid article>div{position:absolute;z-index:1;left:1.2rem;right:1.2rem;bottom:1.2rem;color:#fff}.imp-season-grid b{display:block;color:#fff;font:650 1.3rem 'Fraunces',Georgia,serif}.imp-season-grid span{display:block;margin-top:.25rem;color:rgba(255,255,255,.72);font-size:.75rem}.imp-cta{padding:7rem 0!important;background:linear-gradient(135deg,#102f3c,#173f4e);color:#fff;text-align:center}.imp-cta h2{margin:1rem 0 0;color:#fff!important;font:700 clamp(2.8rem,5vw,5.5rem)/.98 'Fraunces',Georgia,serif;letter-spacing:-.04em}.imp-cta p{max-width:550px;margin:1.3rem auto 0;color:rgba(255,255,255,.75);font-size:1.05rem;line-height:1.65}.imp-cta>div>div{display:flex;flex-wrap:wrap;justify-content:center;gap:.8rem;margin-top:2rem}.imp-lightbox{position:fixed;z-index:100;inset:0;display:none;align-items:center;justify-content:center;padding:2rem;background:rgba(6,18,23,.93);backdrop-filter:blur(12px)}.imp-lightbox.is-open{display:flex}.imp-lightbox figure{max-width:min(1100px,92vw);margin:0}.imp-lightbox img{display:block;max-width:100%;max-height:82vh;border-radius:1rem;object-fit:contain;box-shadow:0 28px 80px rgba(0,0,0,.45)}.imp-lightbox figcaption{margin-top:.8rem;color:rgba(255,255,255,.72);text-align:center;font-size:.85rem}.imp-lightbox-close{position:absolute;right:1.4rem;top:1.4rem;display:grid;width:2.8rem;height:2.8rem;place-items:center;border:1px solid rgba(255,255,255,.25);border-radius:999px;background:rgba(255,255,255,.08);color:#fff}.imp-lightbox-close .ico{width:1.2rem;height:1.2rem}
@media(max-width:800px){.imp-hero{min-height:620px!important;height:calc(100svh - 64px)}.imp-hero-shade{background:linear-gradient(0deg,rgba(10,29,37,.9),rgba(10,29,37,.18) 75%)}.imp-hero-content{padding-bottom:2.5rem}.imp-hero h1{font-size:3.2rem;line-height:.94}.imp-hero p{font-size:1rem;line-height:1.55}.imp-hero-facts{display:none}.imp-intro{grid-template-columns:1fr;gap:2rem;padding:5rem 0!important}.imp-intro h2,.imp-section-head h2{font-size:2.45rem}.imp-section-head{display:block;margin-bottom:1.8rem}.imp-section-head>p{margin-top:1rem}.imp-gallery{padding-bottom:5rem!important}.imp-grid{grid-template-columns:1fr;grid-auto-rows:auto;gap:.85rem}.imp-card,.imp-card-a,.imp-card-b,.imp-card-c,.imp-card-d,.imp-card-e,.imp-card-f{grid-column:auto;grid-row:auto;aspect-ratio:4/3}.imp-card-b{aspect-ratio:4/5}.imp-panorama{height:300px}.imp-seasons{padding:5rem 0!important}.imp-season-grid{grid-template-columns:1fr 1fr}.imp-season-grid article{min-height:280px}.imp-cta{padding:5rem 0!important}.imp-lightbox{padding:1rem}.imp-lightbox-close{right:.8rem;top:.8rem}}
@media(max-width:480px){.imp-wrap{width:min(calc(100% - 32px),1280px)}.imp-hero h1{font-size:2.85rem}.imp-hero-actions{display:grid}.imp-btn{width:100%}.imp-intro{padding:4rem 0!important}.imp-season-grid{grid-template-columns:1fr}.imp-season-grid article{min-height:340px}.imp-cta h2{font-size:2.6rem}}

/* Impressionen spacing: override the legacy section reset with page-level specificity. */
.imp-page .imp-intro{padding:8rem 0!important}
.imp-page .imp-gallery{padding-bottom:8rem!important}
.imp-page .imp-seasons{padding:8rem 0!important}
.imp-page .imp-cta{padding:7rem 0!important}
@media(max-width:800px){
  .imp-page .imp-intro{padding:5rem 0!important}
  .imp-page .imp-gallery{padding-bottom:5rem!important}
  .imp-page .imp-seasons{padding:5rem 0!important}
  .imp-page .imp-cta{padding:5rem 0!important}
}
@media(max-width:480px){
  .imp-page .imp-intro{padding:4rem 0!important}
  .imp-page .imp-seasons{padding:4.5rem 0!important}
  .imp-page .imp-cta{padding:4.5rem 0!important}
}

/* Impressionen: four connected FewoVerwalter destination routes. */
.imp-page .imp-places{padding:8rem 0 0!important}
.imp-place-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}
.imp-place-card{position:relative;isolation:isolate;display:block;overflow:hidden;min-height:250px;border-radius:1.35rem;background:#102f3c;color:#fff;text-decoration:none;box-shadow:0 14px 38px -26px rgba(16,47,60,.55)}
.imp-place-card:after{content:'';position:absolute;z-index:-1;inset:0;background:linear-gradient(0deg,rgba(8,24,31,.88),rgba(8,24,31,.06) 70%)}
.imp-place-card img{position:absolute;z-index:-2;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .7s cubic-bezier(.2,.7,.2,1)}
.imp-place-card:hover img{transform:scale(1.045)}
.imp-place-card>span{position:absolute;left:1.5rem;right:1.5rem;bottom:1.35rem;display:grid;grid-template-columns:1fr auto;align-items:end}
.imp-place-card b{grid-column:1;display:block;color:#fff;font:650 1.65rem/1.1 'Fraunces',Georgia,serif}
.imp-place-card small{grid-column:1;display:block;margin-top:.35rem;color:rgba(255,255,255,.76);font-size:.82rem}
.imp-place-card .ico{grid-column:2;grid-row:1/3;width:1.15rem;height:1.15rem;color:#fff;transition:transform .2s}
.imp-place-card:hover .ico{transform:translateX(.25rem)}
@media(max-width:800px){.imp-page .imp-places{padding:5rem 0 0!important}.imp-place-card{min-height:220px}}
@media(max-width:600px){.imp-place-grid{grid-template-columns:1fr}.imp-place-card{min-height:210px}.imp-place-card>span{left:1.2rem;right:1.2rem;bottom:1.15rem}}

.imp-place-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.imp-place-card>em{position:absolute;right:1rem;top:1rem;display:inline-flex;align-items:baseline;gap:.3rem;border:1px solid rgba(255,255,255,.28);border-radius:999px;background:rgba(8,24,31,.6);padding:.45rem .72rem;color:#fff;font-size:.95rem;font-style:normal;font-weight:800;backdrop-filter:blur(8px)}
.imp-place-card>em span{font-size:.63rem;font-weight:650;letter-spacing:.04em;text-transform:uppercase;color:rgba(255,255,255,.78)}
@media(max-width:900px){.imp-place-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.imp-place-grid{grid-template-columns:1fr}}
