/* Deine Urlaubswelt: Seitendesign; Header und Menü kommen aus dem zentralen Plugin. */
body:not(.vc_editor):has(#duw-page) :is(.masthead, #phantom, .header-space, .mobile-header-space, .dt-mobile-header, .page-title, .icon-wrapper) { display: none !important; }

body:has(#duw-page) { overflow-x: hidden !important; background: rgb(255, 254, 249) !important; }

body:has(#duw-page) #page,
body:has(#duw-page) #main,
body:has(#duw-page) #main > .wf-wrap,
body:has(#duw-page) #main .wf-container-main,
body:has(#duw-page) #content,
body:has(#duw-page) #content > .wpb-content-wrapper { box-sizing: border-box !important; width: 100% !important; max-width: none !important; margin: 0px !important; padding: 0px !important; }

#duw-page { --duw-paper: #fffef9; --duw-green: #789800; --duw-lime: #adca00; --duw-dark: #344033; --duw-soft: #edf4da; --duw-yellow: #ffdc63; --duw-cream: #f6f1e7; box-sizing: border-box; width: 100%; overflow: hidden; background: var(--duw-paper); color: var(--duw-dark); font: 400 18px / 1.6 BWHKarla, Karla, Arial, sans-serif; }

#duw-page *,
#duw-page ::before,
#duw-page ::after { box-sizing: border-box; }

#duw-page > p,
#duw-page > br { display: none !important; }

#duw-page a { color: inherit; text-decoration: none; }

#duw-page :is(a, button, summary, label):focus-visible { outline: rgb(86, 119, 29) solid 3px; outline-offset: 4px; }

#duw-page :is(h1, h2, h3) { margin: 0px; color: var(--duw-green); line-height: 1.08; text-wrap: balance; font-family: BWHBrush, "Caveat Brush", cursive !important; font-weight: 400 !important; letter-spacing: 0px !important; text-transform: none !important; }

#duw-page h1 { font-size: clamp(46px, 5vw, 68px); }

#duw-page h2 { font-size: clamp(39px, 4vw, 54px); }

#duw-page h3 { font-size: 34px; }

#duw-page p { margin: 0px; color: inherit; font-size: 18px; line-height: 1.6; }

.duw-facts { display: flex; flex-wrap: wrap; gap: 8px; margin: 20px 0px 24px; padding: 0px; list-style: none; }

.duw-facts li { margin: 0px; padding: 8px 13px; border-radius: 999px; background: rgb(239, 245, 223); color: rgb(78, 93, 71); font-size: 14px; font-weight: 700; line-height: 1.35; list-style: none; }

.duw-mobile-bar { display: none; }

@media (max-width: 767px) {
body:has(#duw-page.bwu-editable) { padding-bottom: 96px; }
#duw-page h1 { max-width: 380px; font-size: clamp(43px, 13vw, 58px); }
#duw-page h2 { font-size: 42px; }
.duw-facts { margin: 17px 0px 20px; }
.duw-facts li { font-size: 13px; }
.duw-mobile-bar { position: fixed; z-index: 100001; right: 12px; bottom: calc(12px + env(safe-area-inset-bottom)); left: 12px; display: grid; grid-template-columns: 1fr 1fr; min-height: 82px; padding: 7px 6px calc(7px + env(safe-area-inset-bottom)); border: 1px solid rgba(54, 88, 13, 0.11); border-radius: 27px; background: rgba(255, 255, 255, 0.98); box-shadow: rgba(5, 36, 58, 0.18) 0px 8px 28px; backdrop-filter: blur(12px); -webkit-backdrop-filter: blur(12px); }
.duw-mobile-action { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 5px; padding: 8px 5px; font-size: 13px; font-weight: 700; color: rgb(54, 88, 13) !important; }
.duw-mobile-action:first-child { border-right: 1px solid rgba(54, 88, 13, 0.16); }
.duw-mobile-action svg { width: 27px; height: 27px; fill: rgb(123, 162, 12); }
}

@media (prefers-reduced-motion: reduce) {
#duw-page *,
#duw-page ::before,
#duw-page ::after { scroll-behavior: auto !important; transition: none !important; }
}

#duw-page #duw-title { margin-right: auto !important; margin-left: auto !important; text-align: center !important; }

html body #duw-page.bwu-editable { width: 100%; max-width: none; overflow: visible; background: rgb(255, 254, 249); margin: 0px !important; padding: 0px !important; }

html body #duw-page.bwu-editable > .wpb_column > .vc_column-inner { padding: 0px !important; }

#duw-page .bwu-tech { margin: 0px !important; padding: 0px !important; height: 0px !important; min-height: 0px !important; }

#duw-page .bwu-tech .wpb_raw_code { margin: 0px !important; }

#duw-page .bwu-row { box-sizing: border-box; width: calc(100% - 48px); max-width: 1120px; float: none; margin: 0px auto 38px !important; padding: 0px !important; }

#duw-page .bwu-row > .wpb_column > .vc_column-inner { padding: 0px 18px; }

#duw-page .bwu-intro { text-align: center; padding-top: 41px !important; margin-bottom: 28px !important; }

#duw-page .bwu-intro h1 { font-size: clamp(42px, 4.5vw, 65px); max-width: 950px; margin: 0px auto !important; }

#duw-page .bwu-intro p { max-width: 800px; margin: 18px auto 0px !important; }

#duw-page .bwu-label { display: block; margin: 0px 0px 12px; color: rgb(96, 115, 76); font-size: 12px; font-weight: 700; letter-spacing: 0.11em; line-height: 1.5; }

#duw-page .bwu-intro .bwu-label { display: inline-block; background: rgb(255, 220, 99); border-radius: 30px; padding: 7px 19px; color: rgb(52, 64, 51); font-size: 14px; letter-spacing: 0px; }

#duw-page .bwu-hero { display: flex; align-items: stretch; background: rgb(237, 241, 223); border-radius: 24px; overflow: hidden; }

#duw-page .bwu-hero > .wpb_column > .vc_column-inner { height: 100%; padding: 0px; }

#duw-page .bwu-hero > .bwu-copy > .vc_column-inner { display: flex; align-items: center; padding: 34px; }

#duw-page .bwu-hero h2 { font-size: clamp(34px, 3vw, 44px); }

#duw-page .bwu-hero p { margin: 18px 0px !important; }

#duw-page .bwu-hero .bwu-photo,
#duw-page .bwu-hero .bwu-photo .vc_single_image-wrapper { height: 100%; }

#duw-page .bwu-photo { width: 100%; margin: 0px !important; }

#duw-page .bwu-photo .vc_figure,
#duw-page .bwu-photo .vc_single_image-wrapper { width: 100%; display: block !important; }

#duw-page .bwu-photo img { display: block; width: 100%; max-width: none; height: 100%; object-fit: cover; object-position: center center; }

#duw-page .bwu-hero .bwu-photo .vc_figure { height: 100%; min-height: 420px; }

#duw-page .bwu-benefits { text-align: center; margin-bottom: 48px !important; }

#duw-page .bwu-benefits p { display: flex; gap: 10px; justify-content: center; flex-wrap: wrap; }

#duw-page .bwu-benefits span { padding: 9px 15px; background: rgb(237, 241, 223); border-radius: 22px; font-size: 14px; }

#duw-page .bwu-head { text-align: center; scroll-margin-top: 130px; margin-bottom: 30px !important; }

#duw-page .bwu-head h2 { font-size: clamp(35px, 3.8vw, 50px); }

#duw-page .bwu-head p { max-width: 900px; margin: 18px auto 0px !important; }

#duw-page .bwu-house { display: flex; align-items: stretch; overflow: hidden; border: 1px solid rgb(233, 236, 223); border-radius: 24px; background: rgb(255, 255, 255); }

#duw-page .bwu-house > .wpb_column > .vc_column-inner { height: 100%; padding: 0px; }

#duw-page .bwu-house > .bwu-copy > .vc_column-inner { display: flex; align-items: center; padding: 34px; }

#duw-page .bwu-house .bwu-photo,
#duw-page .bwu-house .bwu-photo .vc_figure,
#duw-page .bwu-house .bwu-photo .vc_single_image-wrapper { height: 100%; min-height: 380px; }

#duw-page .bwu-house p { margin: 16px 0px !important; }

#duw-page .bwu-house h2 { font-size: clamp(38px, 4vw, 52px); }

#duw-page .bwu-house ul { margin: 16px 0px 20px; padding-left: 21px; }

#duw-page .bwu-house li { margin: 5px 0px; }

#duw-page .bwu-reverse > .bwu-image-column { order: 2; }

#duw-page .bwu-reverse > .bwu-copy { order: 1; background: rgb(245, 246, 237); }

#duw-page .bwu-help { background: rgb(237, 241, 223); border-radius: 24px; padding: 28px 16px !important; }

#duw-page .bwu-help h3 { font-size: 32px; }

#duw-page .bwu-help p { margin: 16px 0px !important; }

#duw-page .bwu-cta { background: rgb(237, 241, 223); border-radius: 24px; text-align: center; padding: 36px 20px !important; margin-bottom: 48px !important; }

#duw-page .bwu-cta h2 { font-size: clamp(35px, 3.8vw, 50px); }

#duw-page .bwu-cta p { max-width: 760px; margin: 18px auto !important; }

#duw-page .wpb_text_column { margin-bottom: 0px; }

#duw-page .bwu-button { display: inline-block; vertical-align: middle; margin: 8px 8px 0px 0px !important; }

#duw-page .bwu-button a.vc_btn3 { white-space: normal; padding: 13px 22px !important; border: 0px !important; border-radius: 12px !important; font-family: BWHKarla, Karla, Arial, sans-serif !important; font-size: 19px !important; font-weight: 700 !important; line-height: 1.35 !important; }

#duw-page .bwu-book a.vc_btn3 { background: rgb(120, 152, 0) !important; color: rgb(255, 255, 255) !important; }

#duw-page .bwu-request a.vc_btn3 { background: rgb(255, 220, 99) !important; color: rgb(37, 54, 32) !important; }

#duw-page .bwu-book a.vc_btn3:hover { background: rgb(98, 125, 0) !important; }

#duw-page .bwu-request a.vc_btn3:hover { background: rgb(242, 202, 67) !important; }

#duw-page .bwu-button a:focus-visible { outline: rgb(71, 111, 36) solid 3px; outline-offset: 4px; }

#duw-page .bwu-cta .vc_btn3-container { float: none !important; }

body.vc_editor #duw-page .bwu-tech { height: auto !important; }

@media (max-width: 767px) {
#duw-page .bwu-row { width: calc(100% - 24px); margin-bottom: 26px !important; }
#duw-page .bwu-intro { padding-top: 31px !important; }
#duw-page .bwu-hero,
#duw-page .bwu-house { display: flex; flex-direction: column; }
#duw-page .bwu-hero > .wpb_column,
#duw-page .bwu-house > .wpb_column { width: 100%; }
#duw-page .bwu-hero > .bwu-copy > .vc_column-inner,
#duw-page .bwu-house > .bwu-copy > .vc_column-inner { padding: 24px; }
#duw-page .bwu-hero .bwu-photo .vc_figure,
#duw-page .bwu-house .bwu-photo .vc_figure { height: auto; min-height: 0px; }
#duw-page .bwu-hero .bwu-photo .vc_single_image-wrapper,
#duw-page .bwu-house .bwu-photo .vc_single_image-wrapper { height: auto; min-height: 0px; aspect-ratio: 4 / 3; }
#duw-page .bwu-reverse > .bwu-image-column { order: 0; }
#duw-page .bwu-reverse > .bwu-copy { order: 1; }
#duw-page .bwu-button a.vc_btn3 { font-size: 19px !important; }
#duw-page .bwu-help { padding: 22px 6px !important; }
#duw-page .bwu-cta { padding: 28px 6px !important; }
}

/* Bilder: auf Desktop die gesamte Kartenhöhe füllen, auf Handy im Format 4:3. */
@media (min-width: 768px) {
  #duw-page :is(.bwu-hero, .bwu-house) > .bwu-image-column {
    position: relative;
    align-self: stretch;
  }
  #duw-page .bwu-hero > .bwu-image-column { min-height: 420px; }
  #duw-page .bwu-house > .bwu-image-column { min-height: 380px; }
  #duw-page :is(.bwu-hero, .bwu-house) > .bwu-image-column > .vc_column-inner {
    position: absolute;
    inset: 0;
    width: 100%;
    height: auto;
    padding: 0;
  }
  #duw-page :is(.bwu-hero, .bwu-house) > .bwu-image-column > .vc_column-inner > .wpb_wrapper,
  #duw-page :is(.bwu-hero, .bwu-house) .bwu-photo,
  #duw-page :is(.bwu-hero, .bwu-house) .bwu-photo .vc_figure,
  #duw-page :is(.bwu-hero, .bwu-house) .bwu-photo .vc_single_image-wrapper {
    height: 100%;
    min-height: 0;
  }
}
@media (max-width: 767px) {
  #duw-page :is(.bwu-hero, .bwu-house) .bwu-photo,
  #duw-page :is(.bwu-hero, .bwu-house) .bwu-photo .vc_figure {
    height: auto;
    min-height: 0;
  }
  #duw-page :is(.bwu-hero, .bwu-house) .bwu-photo .vc_single_image-wrapper {
    position: relative;
    width: 100%;
    height: auto;
    min-height: 0;
    aspect-ratio: 4 / 3;
    overflow: hidden;
  }
  #duw-page :is(.bwu-hero, .bwu-house) .bwu-photo img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    min-height: 0;
    object-fit: cover;
  }
}
