body.dbm-reservation-page-active{background:var(--dbm-page-bg,#f7f7f5)}
body.dbm-reservation-page-active #content,body.dbm-reservation-page-active .site-content,body.dbm-reservation-page-active main{background:transparent!important}
.dbm-reservation-page{width:100%;max-width:none;margin:0;padding:0;background:var(--dbm-page-bg,#f7f7f5);color:var(--dbm-text,#242424);min-height:60vh}
.dbm-reservation-container{width:min(calc(100% - 40px),var(--dbm-container,1120px));margin-inline:auto}
.dbm-reservation-hero{width:100%;padding:clamp(70px,9vw,135px) 0;background:var(--dbm-hero-bg,#111);color:var(--dbm-hero-color,#fff);text-align:center}
.dbm-reservation-hero span{display:block;font-size:12px;letter-spacing:.18em;text-transform:uppercase;font-weight:700;opacity:.85}.dbm-reservation-hero h1{margin:12px 0 16px!important;color:inherit!important;font-size:clamp(44px,7vw,78px)!important;line-height:1.02!important;letter-spacing:-.035em!important}.dbm-reservation-hero p{max-width:760px;margin:0 auto;font-size:clamp(17px,2vw,22px);line-height:1.6;opacity:.86}.dbm-reservation-content{padding:clamp(44px,7vw,88px) 0}
.dbm-booking-layout{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(280px,.75fr);gap:28px;align-items:start}.dbm-booking-box,.dbm-price-summary{border:1px solid color-mix(in srgb,var(--dbm-text) 14%,transparent);border-radius:var(--dbm-card-radius,22px);background:var(--dbm-card-bg,#fff);box-shadow:0 20px 60px rgba(0,0,0,.08)}
.dbm-booking-form{padding:36px 40px}.dbm-room-choice{margin-bottom:20px}.dbm-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.dbm-booking-form label{display:flex;flex-direction:column;gap:8px;font-weight:600}.dbm-booking-form input,.dbm-booking-form textarea,.dbm-booking-form select{width:100%;border:1px solid color-mix(in srgb,var(--dbm-text) 18%,transparent);border-radius:12px;padding:13px 15px;font:inherit;background:var(--dbm-input-bg,#fafafa);color:var(--dbm-text);box-sizing:border-box}.dbm-booking-form textarea{margin-bottom:18px}.dbm-booking-form .dbm-consent{display:flex;flex-direction:row;align-items:flex-start;font-weight:400;margin:10px 0}.dbm-consent input{width:auto;margin-top:4px}.dbm-payment{padding:14px 16px;border-radius:10px;background:color-mix(in srgb,var(--dbm-input-bg) 90%,var(--dbm-accent) 10%)}.dbm-booking-form button{border:0;border-radius:12px;padding:16px 24px;background:var(--dbm-accent);color:#fff;font-weight:700;font-size:16px;cursor:pointer}.dbm-message{width:100%;margin:0 0 24px;padding:16px 20px;border-radius:12px}.dbm-success{background:#dff5e4}.dbm-error{background:#f8d7da}
.dbm-price-summary{position:sticky;top:110px;padding:28px}.dbm-summary-kicker{display:block;text-transform:uppercase;letter-spacing:.16em;font-size:11px;font-weight:700;color:var(--dbm-accent)}.dbm-price-summary h2{font-size:28px!important;margin:9px 0 24px!important;color:inherit!important}.dbm-price-summary dl{margin:0}.dbm-price-summary dl div{display:flex;justify-content:space-between;gap:18px;padding:12px 0;border-bottom:1px solid color-mix(in srgb,var(--dbm-text) 12%,transparent)}.dbm-price-summary dt{opacity:.7}.dbm-price-summary dd{margin:0;font-weight:700;text-align:right}.dbm-summary-total{margin-top:24px;padding:20px;border-radius:14px;background:color-mix(in srgb,var(--dbm-accent) 12%,var(--dbm-card-bg));display:flex;flex-direction:column;gap:7px}.dbm-summary-total span{font-size:13px}.dbm-summary-total strong{font-size:28px}.dbm-price-summary>p{font-size:13px;line-height:1.55;opacity:.72;margin:18px 0 0}
.dbm-room-calendar{width:100%;box-sizing:border-box;margin:32px 0;border:1px solid rgba(0,0,0,.12);border-radius:var(--dbm-card-radius,22px);background:var(--dhs-card,#fff);padding:28px;box-shadow:0 18px 45px rgba(0,0,0,.06)}.dbm-calendar-fullwidth{grid-column:1/-1;max-width:none!important}.dbm-room-calendar-wide{display:grid;grid-template-columns:minmax(220px,.8fr) minmax(320px,1.2fr) minmax(220px,.7fr);gap:30px;align-items:center}.dbm-calendar-intro>span:first-child{font-size:11px;letter-spacing:.15em;text-transform:uppercase}.dbm-calendar-intro h3{font-size:30px!important;line-height:1.05!important;margin:7px 0 12px!important}.dbm-calendar-intro p{margin:0 0 18px;line-height:1.55;opacity:.72}.dbm-calendar-legend{display:flex;align-items:center;gap:7px;color:#666;font-size:11px;text-transform:uppercase;letter-spacing:.08em}.dbm-calendar-legend i{display:inline-block;width:10px;height:10px;border-radius:50%;background:#fff;border:1px solid #bbb}.dbm-calendar-legend i.is-busy{background:#ddd;border-color:#ddd}.dbm-public-month h4{text-align:center;margin:0 0 14px;font-size:16px}.dbm-weekdays,.dbm-month-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:6px}.dbm-weekdays span{text-align:center;font-size:11px;color:#777}.dbm-date,.dbm-empty{aspect-ratio:1;display:flex;align-items:center;justify-content:center;border-radius:9px}.dbm-date{border:0;background:#f4f4f4;font:inherit;font-size:13px;cursor:pointer}.dbm-date.is-free:hover,.dbm-date.is-selected{background:var(--dbm-accent);color:#fff}.dbm-date.is-range{background:color-mix(in srgb,var(--dbm-accent) 18%,white)}.dbm-date.is-busy{background:#e5e5e5;color:#aaa;text-decoration:line-through;cursor:not-allowed}.dbm-date.is-past{background:transparent;color:#bbb;cursor:not-allowed}.dbm-calendar-selection{display:flex;flex-direction:column;gap:14px}.dbm-calendar-selection div{display:flex;flex-direction:column;padding-bottom:12px;border-bottom:1px solid #eee}.dbm-calendar-selection small{color:#777}.dbm-calendar-selection strong{font-size:15px}.dbm-calendar-cta{display:inline-flex;align-items:center;justify-content:center;padding:14px 18px;border-radius:10px;background:var(--dbm-accent);color:#fff!important;text-decoration:none!important;font-weight:700}.dbm-calendar-cta.is-disabled{opacity:.35;pointer-events:none}
html.dhs-dark-mode body.dbm-reservation-page-active,html.dhs-dark-mode body.dbm-reservation-page-active #content,html.dhs-dark-mode body.dbm-reservation-page-active .site-content,html.dhs-dark-mode body.dbm-reservation-page-active main,html.dhs-dark-mode .dbm-reservation-page{background:var(--dbm-dark-page-bg,#141414)!important;color:var(--dbm-dark-text,#f5f5f5)!important}
html.dhs-dark-mode .dbm-booking-box,html.dhs-dark-mode .dbm-price-summary{background:var(--dbm-dark-card-bg,#242424);color:var(--dbm-dark-text,#f5f5f5);border-color:rgba(255,255,255,.12)}html.dhs-dark-mode .dbm-booking-form input,html.dhs-dark-mode .dbm-booking-form textarea,html.dhs-dark-mode .dbm-booking-form select{background:var(--dbm-dark-input-bg,#1b1b1b);color:var(--dbm-dark-text,#fff);border-color:rgba(255,255,255,.18)}html.dhs-dark-mode .dbm-payment{background:var(--dbm-dark-input-bg,#1b1b1b)}html.dhs-dark-mode .dbm-summary-total{background:color-mix(in srgb,var(--dbm-accent) 18%,var(--dbm-dark-card-bg))}html.dhs-dark-mode .dbm-room-calendar{background:var(--dhs-dark-card,var(--dbm-dark-card-bg,#242424));color:var(--dhs-dark-text,var(--dbm-dark-text,#fff));border-color:rgba(255,255,255,.12)}html.dhs-dark-mode .dbm-date{background:#333;color:#fff}html.dhs-dark-mode .dbm-date.is-past{background:transparent;color:#777}html.dhs-dark-mode .dbm-date.is-busy{background:#444;color:#888}html.dhs-dark-mode .dbm-calendar-selection div{border-color:rgba(255,255,255,.12)}html.dhs-dark-mode .dbm-calendar-legend,html.dhs-dark-mode .dbm-weekdays span,html.dhs-dark-mode .dbm-calendar-selection small{color:#bbb}
@media(max-width:1050px){.dbm-room-calendar-wide{grid-template-columns:1fr 1.25fr}.dbm-calendar-selection{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr auto;align-items:end}.dbm-calendar-selection div{border:0}.dbm-booking-layout{grid-template-columns:1fr}.dbm-price-summary{position:static}}
@media(max-width:700px){.dbm-reservation-container{width:min(calc(100% - 28px),var(--dbm-container,1120px))}.dbm-reservation-hero{padding:64px 0}.dbm-booking-form{padding:26px 22px}.dbm-grid{grid-template-columns:1fr}.dbm-room-calendar{padding:20px}.dbm-room-calendar-wide{grid-template-columns:1fr}.dbm-calendar-selection{grid-column:auto;grid-template-columns:1fr 1fr}.dbm-calendar-cta{grid-column:1/-1}.dbm-date{font-size:12px}.dbm-price-summary{padding:22px}}
.dbm-month-heading{display:grid;grid-template-columns:38px 1fr 38px;align-items:center;gap:8px;margin:0 0 14px}.dbm-public-month h4{margin:0!important}.dbm-month-nav{width:36px;height:36px;border:1px solid color-mix(in srgb,currentColor 16%,transparent);border-radius:50%;background:transparent;color:inherit;font-size:27px;line-height:1;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:.2s ease}.dbm-month-nav:hover:not(:disabled){background:var(--dbm-accent);border-color:var(--dbm-accent);color:#fff;transform:translateY(-1px)}.dbm-month-nav:disabled{opacity:.22;cursor:not-allowed}.dbm-public-months{transition:opacity .18s ease}.dbm-public-months.is-loading{opacity:.45;pointer-events:none}
html.dhs-dark-mode .dbm-month-nav{border-color:rgba(255,255,255,.18)}
.dhs-booking-cta[hidden]{display:none!important}

/* Startseiten-Hero: Verfügbarkeitssuche */
.dbm-hero-search{position:relative;z-index:20;width:min(calc(100% - 40px),var(--dbm-container,1120px));margin:-52px auto 0;color:var(--dbm-text,#242424)}
.dbm-hero-search-form{display:grid;grid-template-columns:minmax(180px,.8fr) repeat(2,minmax(190px,1fr)) minmax(180px,.8fr);align-items:end;gap:18px;padding:22px 24px;background:var(--dbm-card-bg,#fff);border:1px solid color-mix(in srgb,var(--dbm-text) 12%,transparent);border-radius:var(--dbm-card-radius,22px);box-shadow:0 22px 60px rgba(0,0,0,.16)}
.dbm-hero-search-heading{align-self:center}.dbm-hero-search-heading span{display:block;font-size:18px;font-weight:750;line-height:1.25}
.dbm-hero-search-form label{display:flex;flex-direction:column;gap:7px;margin:0;font-weight:650}.dbm-hero-search-form label>span{font-size:12px;letter-spacing:.04em;text-transform:uppercase;opacity:.65}
.dbm-hero-search-form input{width:100%;box-sizing:border-box;min-height:52px;padding:12px 14px;border:1px solid color-mix(in srgb,var(--dbm-text) 16%,transparent);border-radius:12px;background:color-mix(in srgb,var(--dbm-card-bg) 96%,#000 4%);color:inherit;font:inherit}
.dbm-hero-search-form button{min-height:52px;display:flex;align-items:center;justify-content:center;gap:12px;border:0;border-radius:12px;padding:13px 18px;background:var(--dbm-accent);color:#fff;font:inherit;font-weight:750;cursor:pointer;transition:transform .2s ease,filter .2s ease}.dbm-hero-search-form button:hover{transform:translateY(-2px);filter:brightness(.96)}.dbm-hero-search-form button span{font-size:20px}
.dbm-auto-hero-search-source{display:none!important}.dbm-hero-search-mounted{position:relative;z-index:30;margin-bottom:-1px;padding-bottom:1px}
html.dhs-dark-mode .dbm-hero-search{color:var(--dbm-dark-text,#fff)}html.dhs-dark-mode .dbm-hero-search-form{background:var(--dbm-dark-card-bg,#242424);border-color:rgba(255,255,255,.12)}html.dhs-dark-mode .dbm-hero-search-form input{background:color-mix(in srgb,var(--dbm-dark-card-bg) 86%,#000 14%);border-color:rgba(255,255,255,.16);color:inherit;color-scheme:dark}
@media(max-width:900px){.dbm-hero-search-form{grid-template-columns:1fr 1fr}.dbm-hero-search-heading,.dbm-hero-search-form button{grid-column:1/-1}.dbm-hero-search-heading{text-align:center}.dbm-hero-search-form button{width:100%}}
@media(max-width:600px){.dbm-hero-search{width:min(calc(100% - 28px),var(--dbm-container,1120px));margin:-34px auto 0}.dbm-hero-search-form{grid-template-columns:1fr;gap:14px;padding:20px}.dbm-hero-search-heading,.dbm-hero-search-form button{grid-column:auto}.dbm-hero-search-heading span{font-size:17px}}

/* Availability results */
body.dbm-results-page-active{background:var(--dbm-page-bg,#f7f7f5)}
body.dbm-results-page-active #content,body.dbm-results-page-active .site-content,body.dbm-results-page-active main{background:transparent!important}
.dbm-results-page{width:100%;min-height:60vh;background:var(--dbm-page-bg,#f7f7f5);color:var(--dbm-text,#242424)}
.dbm-results-container{width:min(calc(100% - 40px),var(--dbm-container,1120px));margin-inline:auto}
.dbm-results-hero{padding:clamp(68px,8vw,118px) 0 clamp(84px,9vw,130px);background:color-mix(in srgb,var(--dbm-text) 94%,#000 6%);color:#fff;text-align:center}
.dbm-results-hero span,.dbm-results-heading span{display:block;color:var(--dbm-accent);font-size:11px;font-weight:800;letter-spacing:.16em;text-transform:uppercase}
.dbm-results-hero .dbm-results-container>span{color:rgba(255,255,255,.8)!important;text-shadow:0 1px 12px rgba(0,0,0,.18)}
.dbm-results-hero h1{margin:10px 0 15px!important;color:inherit!important;font-size:clamp(42px,6vw,72px)!important;line-height:1.04!important;letter-spacing:-.035em!important}
.dbm-results-hero p{margin:0 auto;max-width:740px;font-size:clamp(16px,2vw,20px);opacity:.78}
.dbm-results-content{padding:0 0 clamp(60px,8vw,110px)}
.dbm-results-search{position:relative;z-index:2;margin:clamp(-56px,-5vw,-42px) 0 54px;background:var(--dbm-card-bg,#fff);border:1px solid color-mix(in srgb,var(--dbm-text) 12%,transparent);box-shadow:0 24px 70px rgba(0,0,0,.12)}
.dbm-results-heading{display:flex;align-items:end;justify-content:space-between;gap:24px;margin:0 0 25px}
.dbm-results-heading h2{margin:7px 0 0!important;color:inherit!important;font-size:clamp(30px,4vw,46px)!important;line-height:1.05!important}
.dbm-results-heading>p{margin:0;padding:10px 15px;border-radius:999px;background:color-mix(in srgb,var(--dbm-accent) 12%,var(--dbm-card-bg));font-weight:750}
.dbm-results-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:26px}
.dbm-result-card{overflow:hidden;border:1px solid color-mix(in srgb,var(--dbm-text) 12%,transparent);border-radius:var(--dbm-card-radius,22px);background:var(--dbm-card-bg,#fff);box-shadow:0 18px 48px rgba(0,0,0,.07);transition:transform .25s ease,box-shadow .25s ease}
.dbm-result-card:hover{transform:translateY(-4px);box-shadow:0 24px 58px rgba(0,0,0,.11)}
.dbm-result-image{display:block;aspect-ratio:16/9;background-position:center;background-size:cover;background-color:color-mix(in srgb,var(--dbm-card-bg) 88%,var(--dbm-accent) 12%)}
.dbm-result-image.is-empty:after{content:'Zimmer';display:grid;place-items:center;width:100%;height:100%;font-size:13px;font-weight:800;letter-spacing:.15em;text-transform:uppercase;opacity:.5}
.dbm-result-body{padding:25px 26px 27px}
.dbm-result-top{display:flex;justify-content:space-between;gap:15px;align-items:center;margin-bottom:11px}
.dbm-result-top>span{display:inline-flex;align-items:center;gap:7px;color:var(--dbm-accent);font-size:11px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}
.dbm-result-top>span:before{content:'';width:7px;height:7px;border-radius:50%;background:currentColor}
.dbm-result-top small{opacity:.62;font-weight:650}
.dbm-result-body h3{margin:0 0 10px!important;font-size:clamp(24px,3vw,32px)!important;line-height:1.1!important}
.dbm-result-body h3 a{color:inherit!important;text-decoration:none!important}
.dbm-result-body>p{margin:0 0 22px;line-height:1.65;opacity:.72}
.dbm-result-price{display:flex;justify-content:space-between;align-items:end;gap:20px;padding:18px 0;border-top:1px solid color-mix(in srgb,var(--dbm-text) 10%,transparent)}
.dbm-result-price>div{display:flex;flex-wrap:wrap;align-items:baseline;gap:5px}
.dbm-result-price small,.dbm-result-price span{font-size:12px;opacity:.65}
.dbm-result-price strong{font-size:24px;line-height:1;color:inherit}
.dbm-result-total{justify-content:flex-end;text-align:right}.dbm-result-total small{width:100%}.dbm-result-total strong{color:var(--dbm-accent)}
.dbm-result-actions{display:grid;grid-template-columns:1fr 1.2fr;gap:11px;margin-top:5px}
.dbm-result-actions a{display:flex;align-items:center;justify-content:center;min-height:48px;padding:10px 15px;border-radius:11px;text-align:center;text-decoration:none!important;font-weight:750}
.dbm-result-details{border:1px solid color-mix(in srgb,var(--dbm-text) 18%,transparent);color:inherit!important}
.dbm-result-book{gap:9px;background:var(--dbm-accent);color:#fff!important}.dbm-result-book span{font-size:18px}
.dbm-results-notice{padding:36px;border:1px solid color-mix(in srgb,var(--dbm-text) 12%,transparent);border-radius:var(--dbm-card-radius,22px);background:var(--dbm-card-bg,#fff);text-align:center;box-shadow:0 18px 48px rgba(0,0,0,.06)}
.dbm-results-notice strong{display:block;margin-bottom:8px;font-size:28px}.dbm-results-notice p{margin:0;opacity:.7}
html.dhs-dark-mode body.dbm-results-page-active,html.dhs-dark-mode body.dbm-results-page-active #content,html.dhs-dark-mode body.dbm-results-page-active .site-content,html.dhs-dark-mode body.dbm-results-page-active main,html.dhs-dark-mode .dbm-results-page{background:var(--dbm-dark-page-bg,#141414)!important;color:var(--dbm-dark-text,#f5f5f5)}
html.dhs-dark-mode .dbm-results-search,html.dhs-dark-mode .dbm-result-card,html.dhs-dark-mode .dbm-results-notice{background:var(--dbm-dark-card-bg,#242424);border-color:rgba(255,255,255,.12)}
html.dhs-dark-mode .dbm-results-search input{background:var(--dbm-dark-input-bg,#1b1b1b);border-color:rgba(255,255,255,.16);color:inherit;color-scheme:dark}
html.dhs-dark-mode .dbm-results-heading>p{background:var(--dbm-dark-card-bg,#242424);color:var(--dbm-dark-text,#f5f5f5);border:1px solid rgba(255,255,255,.12);box-shadow:0 10px 28px rgba(0,0,0,.22)}
html.dhs-dark-mode .dbm-result-top>span{color:var(--dbm-dark-text,#f5f5f5)}
html.dhs-dark-mode .dbm-result-total small{color:var(--dbm-dark-text,#f5f5f5);opacity:.68}
html.dhs-dark-mode .dbm-result-total strong{color:var(--dbm-dark-text,#f5f5f5)!important;opacity:1!important;text-shadow:none}
html.dhs-dark-mode .dbm-result-card:hover{box-shadow:0 26px 64px rgba(0,0,0,.34)}
@media(max-width:850px){.dbm-results-grid{grid-template-columns:1fr}.dbm-result-card{max-width:680px;width:100%;margin-inline:auto}}
@media(max-width:600px){.dbm-results-container{width:min(calc(100% - 28px),var(--dbm-container,1120px))}.dbm-results-search{margin-top:-38px}.dbm-results-heading{align-items:flex-start;flex-direction:column}.dbm-result-body{padding:21px 20px 23px}.dbm-result-price{align-items:flex-start;flex-direction:column}.dbm-result-total{justify-content:flex-start;text-align:left}.dbm-result-actions{grid-template-columns:1fr}.dbm-results-notice{padding:28px 20px}}

/* Zimmerdetails auf der Verfügbarkeits-Ergebnisseite */
.dbm-result-highlights{margin:0 0 18px!important;font-size:12px!important;line-height:1.55!important;font-weight:800;letter-spacing:.075em;text-transform:uppercase;opacity:.82!important}
.dbm-result-facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin:4px 0 4px;border-top:1px solid color-mix(in srgb,var(--dbm-text) 11%,transparent);border-bottom:1px solid color-mix(in srgb,var(--dbm-text) 11%,transparent)}
.dbm-result-fact{min-width:0;padding:16px 7px 14px;text-align:center;border-right:1px solid color-mix(in srgb,var(--dbm-text) 11%,transparent)}
.dbm-result-fact:last-child{border-right:0}
.dbm-result-fact-icon{display:flex;align-items:center;justify-content:center;width:27px;height:27px;margin:0 auto 8px;color:inherit}
.dbm-result-fact-icon svg{display:block;width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.dbm-result-fact strong{display:block;overflow:hidden;font-size:12px;line-height:1.3;text-overflow:ellipsis;white-space:nowrap}
.dbm-result-fact small{display:block;margin-top:6px;font-size:9px;line-height:1.2;letter-spacing:.12em;text-transform:uppercase;opacity:.55}
.dbm-result-facts+.dbm-result-price{border-top:0}
@media(max-width:1100px) and (min-width:851px){.dbm-result-facts{grid-template-columns:repeat(2,1fr)}.dbm-result-fact:nth-child(2){border-right:0}.dbm-result-fact:nth-child(-n+2){border-bottom:1px solid color-mix(in srgb,var(--dbm-text) 11%,transparent)}}
@media(max-width:500px){.dbm-result-facts{grid-template-columns:repeat(2,1fr)}.dbm-result-fact:nth-child(2){border-right:0}.dbm-result-fact:nth-child(-n+2){border-bottom:1px solid color-mix(in srgb,var(--dbm-text) 11%,transparent)}.dbm-result-highlights{font-size:11px!important}}


/* 0.7.7 – Mobile calendar and reservation form refinements */
@media (max-width:700px){
  body.dbm-reservation-page-active,
  body.dbm-results-page-active{overflow-x:hidden}

  .dbm-reservation-container{width:min(calc(100% - 24px),var(--dbm-container,1120px))}
  .dbm-reservation-content{padding:34px 0 108px}
  .dbm-booking-layout,.dbm-booking-box,.dbm-booking-form,.dbm-grid,
  .dbm-room-calendar,.dbm-room-calendar-wide,.dbm-public-months,
  .dbm-public-month,.dbm-calendar-selection{min-width:0;max-width:100%;box-sizing:border-box}

  .dbm-booking-form{padding:22px 18px}
  .dbm-grid{gap:15px}
  .dbm-booking-form label{gap:6px;font-size:15px}
  .dbm-booking-form input,
  .dbm-booking-form select,
  .dbm-booking-form textarea{
    min-height:52px;
    padding:12px 14px;
    border-radius:11px;
    font-size:16px;
    line-height:1.25;
  }
  .dbm-booking-form textarea{min-height:112px;margin-bottom:14px}
  .dbm-booking-form button{width:100%;min-height:54px;padding:14px 18px}
  .dbm-room-choice{margin-bottom:16px}
  .dbm-price-summary{padding:20px}

  .dbm-room-calendar{width:100%;margin:24px 0;padding:18px 14px;overflow:hidden}
  .dbm-room-calendar-wide{display:grid;grid-template-columns:minmax(0,1fr);gap:22px}
  .dbm-calendar-intro h3{font-size:clamp(28px,9vw,38px)!important;overflow-wrap:anywhere}
  .dbm-calendar-intro p{font-size:15px;line-height:1.55}
  .dbm-calendar-legend{flex-wrap:wrap;row-gap:9px}
  .dbm-public-months,.dbm-public-month{width:100%;overflow:hidden}
  .dbm-month-heading{grid-template-columns:34px minmax(0,1fr) 34px;gap:5px}
  .dbm-month-nav{width:34px;height:34px;font-size:24px}
  .dbm-public-month h4{font-size:18px!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .dbm-weekdays,.dbm-month-grid{width:100%;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px}
  .dbm-weekdays span{font-size:10px}
  .dbm-date,.dbm-empty{width:100%;min-width:0;aspect-ratio:1;border-radius:8px}
  .dbm-date{padding:0;font-size:12px;line-height:1}
  .dbm-calendar-selection{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px}
  .dbm-calendar-selection div{min-width:0;padding:0 0 10px;border-bottom:1px solid color-mix(in srgb,currentColor 13%,transparent)}
  .dbm-calendar-selection small{font-size:12px}
  .dbm-calendar-selection strong{font-size:15px;overflow-wrap:anywhere}
  .dbm-calendar-cta{grid-column:1/-1;width:100%;min-height:54px;box-sizing:border-box;text-align:center}
}

@media (max-width:390px){
  .dbm-room-calendar{padding-inline:10px}
  .dbm-weekdays,.dbm-month-grid{gap:3px}
  .dbm-date{font-size:11px}
  .dbm-calendar-selection{grid-template-columns:1fr}
  .dbm-calendar-cta{grid-column:auto}
}

/* 0.7.8 – Compact mobile search and reservation fields */
@media (max-width:700px){
  .dbm-hero-search-form input[type="date"],
  .dbm-results-search input[type="date"],
  .dbm-booking-form input[type="date"]{
    display:block!important;
    width:100%!important;
    height:58px!important;
    min-height:58px!important;
    max-height:58px!important;
    padding:0 16px!important;
    line-height:58px!important;
    border-radius:12px!important;
    font-size:16px!important;
    box-sizing:border-box!important;
  }

  .dbm-booking-form input:not([type="checkbox"]):not([type="radio"]):not([type="date"]),
  .dbm-booking-form select{
    height:56px!important;
    min-height:56px!important;
    max-height:56px!important;
    padding:0 14px!important;
    line-height:56px!important;
    box-sizing:border-box!important;
  }

  .dbm-hero-search-form{gap:12px!important}
  .dbm-hero-search-form label{gap:6px!important}
  .dbm-results-search{gap:12px!important}
  .dbm-booking-form .dbm-grid{gap:13px!important}
}


/* 0.7.9 – iOS-safe compact date controls; loaded with filemtime cache busting */
@media (max-width:700px){
  .dbm-hero-search-form label,
  .dbm-results-search label,
  .dbm-booking-form label{
    min-height:0!important;
  }

  .dbm-hero-search-form input[type="date"],
  .dbm-results-search input[type="date"],
  .dbm-booking-form input[type="date"]{
    -webkit-appearance:none!important;
    appearance:none!important;
    display:block!important;
    inline-size:100%!important;
    block-size:52px!important;
    height:52px!important;
    min-block-size:52px!important;
    min-height:52px!important;
    max-block-size:52px!important;
    max-height:52px!important;
    padding-block:0!important;
    padding-inline:14px 42px!important;
    line-height:normal!important;
    font-size:16px!important;
    border-radius:11px!important;
    box-sizing:border-box!important;
  }

  .dbm-hero-search-form input[type="date"]::-webkit-date-and-time-value,
  .dbm-results-search input[type="date"]::-webkit-date-and-time-value,
  .dbm-booking-form input[type="date"]::-webkit-date-and-time-value{
    min-height:0!important;
    height:auto!important;
    line-height:1.2!important;
    text-align:center;
  }

  .dbm-hero-search-form input[type="date"]::-webkit-calendar-picker-indicator,
  .dbm-results-search input[type="date"]::-webkit-calendar-picker-indicator,
  .dbm-booking-form input[type="date"]::-webkit-calendar-picker-indicator{
    position:absolute;
    right:13px;
    width:18px;
    height:18px;
    margin:0;
    padding:0;
  }

  .dbm-hero-search-form input[type="date"],
  .dbm-results-search input[type="date"],
  .dbm-booking-form input[type="date"]{
    position:relative;
  }

  .dbm-booking-form input:not([type="checkbox"]):not([type="radio"]):not([type="date"]),
  .dbm-booking-form select{
    height:52px!important;
    min-height:52px!important;
    max-height:52px!important;
    line-height:normal!important;
  }
}

/* 0.8.0 – vertically center native iOS date values */
@media (max-width:700px){
  .dbm-hero-search-form input[type="date"]::-webkit-date-and-time-value,
  .dbm-results-search input[type="date"]::-webkit-date-and-time-value,
  .dbm-booking-form input[type="date"]::-webkit-date-and-time-value{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:100%!important;
    height:52px!important;
    min-height:52px!important;
    padding:0!important;
    margin:0!important;
    line-height:1!important;
  }
  .dbm-hero-search-form input[type="date"]::-webkit-datetime-edit,
  .dbm-results-search input[type="date"]::-webkit-datetime-edit,
  .dbm-booking-form input[type="date"]::-webkit-datetime-edit{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    height:52px!important;
    padding:0!important;
    margin:0!important;
    line-height:1!important;
  }
  .dbm-hero-search-form input[type="date"]::-webkit-datetime-edit-fields-wrapper,
  .dbm-results-search input[type="date"]::-webkit-datetime-edit-fields-wrapper,
  .dbm-booking-form input[type="date"]::-webkit-datetime-edit-fields-wrapper{
    display:flex!important;
    align-items:center!important;
    height:52px!important;
    padding:0!important;
  }
}


/* 0.9.0 – Gäste, Frühstück und Zusatzleistungen */
.dbm-result-services{display:flex;flex-wrap:wrap;gap:7px;margin:12px 0}.dbm-result-services span{display:inline-flex;padding:6px 10px;border-radius:999px;background:color-mix(in srgb,var(--dbm-accent) 15%,transparent);font-size:12px;font-weight:700}.dbm-extras{margin:18px 0;padding:18px;border:1px solid color-mix(in srgb,var(--dbm-text) 12%,transparent);border-radius:14px}.dbm-extras h3{margin:0 0 12px}.dbm-extras label{display:flex!important;align-items:center;gap:9px;margin:9px 0}.dbm-extras input{width:auto!important}.dbm-extras p{margin:10px 0 0;font-size:13px;opacity:.75}.dbm-hero-search-form{grid-template-columns:minmax(150px,1.1fr) repeat(5,minmax(105px,1fr)) auto}.dbm-results-search{grid-template-columns:minmax(150px,1.1fr) repeat(5,minmax(105px,1fr)) auto!important}@media(max-width:1050px){.dbm-hero-search-form,.dbm-results-search{grid-template-columns:repeat(2,minmax(0,1fr))!important}.dbm-hero-search-heading,.dbm-hero-search-form button{grid-column:1/-1}}@media(max-width:600px){.dbm-hero-search-form,.dbm-results-search{grid-template-columns:1fr!important}}


/* 0.9.2 – Zusatzleistungen sichtbar, linksbündig und einzeln berechnet */
.dbm-extras{text-align:left!important}
.dbm-extras h3{text-align:left!important}
.dbm-extras label{justify-content:flex-start!important;text-align:left!important;width:100%}
.dbm-extras label input{flex:0 0 auto!important;margin:0!important}
.dbm-extras [hidden],.dbm-extras[hidden],.dbm-summary-extras[hidden]{display:none!important}
.dbm-summary-extras{display:block!important}
.dbm-summary-extras>div{display:flex;justify-content:space-between;gap:18px;padding:12px 0;border-top:1px solid color-mix(in srgb,var(--dbm-text) 12%,transparent)}
.dbm-summary-extras dt,.dbm-summary-extras dd{margin:0}
.dbm-summary-extras dd{font-weight:700;text-align:right}

/* 0.9.3 – Zusatzleistungszeilen zuverlässig linksbündig */
.dbm-booking-form .dbm-extras label{
  display:grid!important;
  grid-template-columns:18px minmax(0,1fr)!important;
  align-items:center!important;
  justify-content:start!important;
  justify-items:start!important;
  column-gap:10px!important;
  width:100%!important;
  margin:10px 0!important;
  text-align:left!important;
  flex-direction:initial!important;
}
.dbm-booking-form .dbm-extras label input[type="checkbox"]{
  grid-column:1!important;
  width:18px!important;
  height:18px!important;
  margin:0!important;
  padding:0!important;
  justify-self:start!important;
}

/* 0.9.4 – deaktivierte Zusatzleistungen trotz Grid-Regel sicher ausblenden */
.dbm-booking-form .dbm-extras label[hidden],
.dbm-booking-form .dbm-extras [data-dbm-pet-note][hidden],
.dbm-booking-form .dbm-extras[hidden]{
  display:none!important;
}

/* 0.9.5 – transparente Kostenaufschlüsselung der Zusatzleistungen */
.dbm-summary-extras>div{align-items:flex-start}
.dbm-summary-extras dt{display:flex;flex-direction:column;min-width:0}
.dbm-summary-extra-title{display:block}
.dbm-summary-extras dt small{display:block;margin-top:4px;font-size:11px;line-height:1.45;font-weight:400;opacity:.68}
.dbm-summary-extras dd{flex:0 0 auto;padding-top:0}


/* 1.0.0 – interaktiver Verfügbarkeitskalender im Reservierungsformular */
.dbm-booking-date-field input[data-dbm-date-display]{cursor:pointer;background-image:none!important}
.dbm-booking-date-field input[type="hidden"]{display:none!important}
.dbm-reservation-picker{margin:18px 0 22px;padding:20px;border:1px solid color-mix(in srgb,var(--dbm-text) 12%,transparent);border-radius:14px;background:color-mix(in srgb,var(--dbm-card-bg) 97%,var(--dbm-text) 3%)}
.dbm-reservation-picker-head{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:16px}
.dbm-reservation-picker-head>div{display:flex;flex-direction:column;gap:3px}
.dbm-reservation-picker-head span{font-size:11px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;opacity:.62}
.dbm-reservation-picker-head strong{font-size:18px}
.dbm-reservation-picker-head button{width:auto!important;min-height:0!important;padding:7px 10px!important;border:0!important;background:transparent!important;color:inherit!important;font-size:12px!important;text-decoration:underline;opacity:.7}
.dbm-reservation-picker .dbm-public-months{max-width:520px;margin:0 auto}
.dbm-reservation-picker .dbm-public-month{width:100%}
.dbm-reservation-picker .dbm-date.is-departure-only{cursor:pointer!important;opacity:1!important;background:color-mix(in srgb,var(--dbm-accent) 18%,var(--dbm-card-bg))!important;border:1px dashed var(--dbm-accent)!important}
.dbm-reservation-picker .dbm-date.is-busy{cursor:not-allowed!important}
.dbm-picker-status{margin-top:15px;padding:11px 13px;border-radius:10px;background:color-mix(in srgb,var(--dbm-accent) 12%,transparent);font-size:13px;font-weight:650;text-align:center}
.dbm-reservation-picker.is-loading{opacity:.72;pointer-events:none}
body.dhs-dark-mode .dbm-reservation-picker{background:color-mix(in srgb,var(--dbm-dark-card-bg) 96%,#fff 4%)}
@media(max-width:700px){
 .dbm-reservation-picker{padding:16px 12px}
 .dbm-reservation-picker-head{align-items:flex-start}
 .dbm-reservation-picker-head strong{font-size:16px}
 .dbm-reservation-picker .dbm-month-heading{grid-template-columns:34px minmax(0,1fr) 34px}
}

/* 1.0.1 – Kalender direkt unter der Zimmerauswahl */
.dbm-room-choice + .dbm-reservation-picker{margin-top:16px}
.dbm-reservation-picker.is-highlighted{box-shadow:0 0 0 3px color-mix(in srgb,var(--dbm-accent) 28%,transparent);transition:box-shadow .2s ease}

/* 1.0.2 – feste, verständliche Statusfarben im Reservierungskalender */
.dbm-reservation-picker .dbm-date{
  background:#f3f4f6!important;
  color:#2f3337!important;
  border:1px solid transparent;
}
.dbm-reservation-picker .dbm-date.is-free:hover{
  background:#e7e9ec!important;
  color:#202326!important;
  border-color:#cfd3d7!important;
}
.dbm-reservation-picker .dbm-date.is-selected{
  background:#2f9e44!important;
  color:#fff!important;
  border-color:#2f9e44!important;
  font-weight:800;
  box-shadow:0 5px 13px rgba(47,158,68,.24);
}
.dbm-reservation-picker .dbm-date.is-range{
  background:#dff3e3!important;
  color:#256b34!important;
  border-color:#c9e9d0!important;
}
.dbm-reservation-picker .dbm-date.is-busy{
  background:#f8d7da!important;
  color:#a61e2d!important;
  border-color:#efb8bd!important;
  text-decoration:line-through;
  cursor:not-allowed!important;
  opacity:1!important;
}
.dbm-reservation-picker .dbm-date.is-past{
  background:transparent!important;
  color:#b5b8bc!important;
  border-color:transparent!important;
}
.dbm-reservation-picker .dbm-date.is-departure-only:not(.is-selected){
  background:#f3f4f6!important;
  color:#2f3337!important;
  border:1px dashed #aeb4ba!important;
}
html.dhs-dark-mode .dbm-reservation-picker .dbm-date{
  background:#34373a!important;
  color:#f3f4f5!important;
}
html.dhs-dark-mode .dbm-reservation-picker .dbm-date.is-free:hover{
  background:#44484c!important;
  color:#fff!important;
  border-color:#5d6267!important;
}
html.dhs-dark-mode .dbm-reservation-picker .dbm-date.is-selected{
  background:#37a94f!important;
  color:#fff!important;
  border-color:#37a94f!important;
}
html.dhs-dark-mode .dbm-reservation-picker .dbm-date.is-range{
  background:#244c2d!important;
  color:#dff7e5!important;
  border-color:#32633d!important;
}
html.dhs-dark-mode .dbm-reservation-picker .dbm-date.is-busy{
  background:#5a282d!important;
  color:#ffb9c0!important;
  border-color:#7b383f!important;
}
html.dhs-dark-mode .dbm-reservation-picker .dbm-date.is-past{
  background:transparent!important;
  color:#696e73!important;
}
html.dhs-dark-mode .dbm-reservation-picker .dbm-date.is-departure-only:not(.is-selected){
  background:#34373a!important;
  color:#f3f4f5!important;
  border-color:#72787e!important;
}


/* 1.0.3 – identische Statusfarben auch im Kalender der Zimmerdetailseite */
.dbm-room-calendar:not(.dbm-reservation-picker) .dbm-date{
  background:#f3f4f6!important;
  color:#2f3337!important;
  border:1px solid transparent;
}
.dbm-room-calendar:not(.dbm-reservation-picker) .dbm-date.is-free:hover{
  background:#e7e9ec!important;
  color:#202326!important;
  border-color:#cfd3d7!important;
}
.dbm-room-calendar:not(.dbm-reservation-picker) .dbm-date.is-selected{
  background:#2f9e44!important;
  color:#fff!important;
  border-color:#2f9e44!important;
  font-weight:800;
  box-shadow:0 5px 13px rgba(47,158,68,.24);
}
.dbm-room-calendar:not(.dbm-reservation-picker) .dbm-date.is-range{
  background:#dff3e3!important;
  color:#256b34!important;
  border-color:#c9e9d0!important;
}
.dbm-room-calendar:not(.dbm-reservation-picker) .dbm-date.is-busy{
  background:#f8d7da!important;
  color:#a61e2d!important;
  border-color:#efb8bd!important;
  text-decoration:line-through;
  opacity:1!important;
}
.dbm-room-calendar:not(.dbm-reservation-picker) .dbm-date.is-past{
  background:transparent!important;
  color:#b5b8bc!important;
  border-color:transparent!important;
}
.dbm-room-calendar .dbm-calendar-legend i.is-busy{
  background:#f8d7da!important;
  border-color:#efb8bd!important;
}
html.dhs-dark-mode .dbm-room-calendar:not(.dbm-reservation-picker) .dbm-date{
  background:#34373a!important;
  color:#f3f4f5!important;
}
html.dhs-dark-mode .dbm-room-calendar:not(.dbm-reservation-picker) .dbm-date.is-free:hover{
  background:#44484c!important;
  color:#fff!important;
  border-color:#5d6267!important;
}
html.dhs-dark-mode .dbm-room-calendar:not(.dbm-reservation-picker) .dbm-date.is-selected{
  background:#37a94f!important;
  color:#fff!important;
  border-color:#37a94f!important;
}
html.dhs-dark-mode .dbm-room-calendar:not(.dbm-reservation-picker) .dbm-date.is-range{
  background:#244c2d!important;
  color:#dff7e5!important;
  border-color:#32633d!important;
}
html.dhs-dark-mode .dbm-room-calendar:not(.dbm-reservation-picker) .dbm-date.is-busy{
  background:#5a282d!important;
  color:#ffb9c0!important;
  border-color:#7b383f!important;
}
html.dhs-dark-mode .dbm-room-calendar:not(.dbm-reservation-picker) .dbm-date.is-past{
  background:transparent!important;
  color:#696e73!important;
}
html.dhs-dark-mode .dbm-room-calendar .dbm-calendar-legend i.is-busy{
  background:#5a282d!important;
  border-color:#7b383f!important;
}

/* 1.2.0 – Gutscheine & Rabattcodes */
.dbm-coupon-box{margin:22px 0;padding:22px;border:1px solid #dedede;border-radius:16px}.dbm-coupon-box h3{margin:0 0 14px;font-size:16px}.dbm-coupon-entry{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px}.dbm-coupon-entry input{text-transform:uppercase}.dbm-coupon-entry button{width:auto!important;margin:0!important;white-space:nowrap}.dbm-coupon-box p{min-height:20px;margin:9px 0 0;font-size:13px}.dbm-coupon-box p.is-success{color:#238636}.dbm-coupon-box p.is-error{color:#b42318}html.dhs-dark-mode .dbm-coupon-box{border-color:#4a4d50;background:#292b2e}@media(max-width:560px){.dbm-coupon-entry{grid-template-columns:1fr}.dbm-coupon-entry button{width:100%!important}}

/* 2.2.0 – Frontend framework hero */
.dbm-reservation-hero{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  background:var(--dbm-hero-bg,#111);
  color:var(--dbm-hero-color,#fff);
}
.dbm-reservation-hero-inner{position:relative;z-index:3}
.dbm-reservation-hero .dbm-reservation-eyebrow{
  color:var(--dbm-hero-eyebrow,var(--dbm-accent));
  opacity:1;
  font-weight:800;
}
.dbm-reservation-hero.dbm-hero-size-small{padding:clamp(48px,6vw,78px) 0}
.dbm-reservation-hero.dbm-hero-size-medium{padding:clamp(70px,9vw,135px) 0}
.dbm-reservation-hero.dbm-hero-size-large{padding:clamp(96px,12vw,180px) 0}
.dbm-reservation-hero.dbm-hero-align-left{text-align:left}
.dbm-reservation-hero.dbm-hero-align-right{text-align:right}
.dbm-reservation-hero.dbm-hero-align-left p{margin-left:0;margin-right:auto}
.dbm-reservation-hero.dbm-hero-align-right p{margin-left:auto;margin-right:0}
.dbm-reservation-hero.dbm-hero-has-accents:before{
  content:"";position:absolute;inset:0;z-index:0;pointer-events:none;
  background:
    radial-gradient(circle at 14% 28%,color-mix(in srgb,var(--dbm-hero-eyebrow) 24%,transparent) 0 1px,transparent 2px) 0 0/18px 18px,
    linear-gradient(115deg,color-mix(in srgb,var(--dbm-hero-eyebrow) 10%,transparent),transparent 44%);
  opacity:.8;
}
.dbm-hero-orb{display:none;position:absolute;border-radius:999px;pointer-events:none;z-index:1;filter:blur(2px)}
.dbm-hero-has-accents .dbm-hero-orb{display:block}
.dbm-hero-orb-one{width:360px;height:360px;left:-110px;top:-190px;border:1px solid color-mix(in srgb,var(--dbm-hero-eyebrow) 45%,transparent);box-shadow:0 0 90px color-mix(in srgb,var(--dbm-hero-eyebrow) 14%,transparent)}
.dbm-hero-orb-two{width:220px;height:220px;right:-70px;bottom:-135px;background:color-mix(in srgb,var(--dbm-hero-eyebrow) 14%,transparent);box-shadow:0 0 100px color-mix(in srgb,var(--dbm-hero-eyebrow) 18%,transparent)}
.dbm-hero-grid{display:none;position:absolute;inset:0;z-index:1;pointer-events:none;background-image:linear-gradient(color-mix(in srgb,var(--dbm-hero-color) 5%,transparent) 1px,transparent 1px),linear-gradient(90deg,color-mix(in srgb,var(--dbm-hero-color) 5%,transparent) 1px,transparent 1px);background-size:48px 48px;mask-image:linear-gradient(to right,transparent,black 25%,black 75%,transparent)}
.dbm-hero-has-accents .dbm-hero-grid{display:block}
html.dhs-dark-mode .dbm-reservation-hero{background:var(--dbm-hero-dark-bg,#151515);color:var(--dbm-hero-dark-color,#fff)}
@media(max-width:700px){
  .dbm-reservation-hero.dbm-hero-size-small,.dbm-reservation-hero.dbm-hero-size-medium,.dbm-reservation-hero.dbm-hero-size-large{padding:58px 0}
  .dbm-reservation-hero h1{font-size:clamp(34px,10vw,50px)!important}
  .dbm-reservation-hero.dbm-hero-align-right{text-align:left}
  .dbm-reservation-hero.dbm-hero-align-right p{margin-left:0;margin-right:auto}
}

/* 2.2.1 – auswählbare Hero-Akzente und Übergänge */
.dbm-reservation-hero::before,.dbm-reservation-hero::after{pointer-events:none}
.dbm-reservation-hero .dbm-hero-orb,.dbm-reservation-hero .dbm-hero-grid{display:none}
.dbm-reservation-hero.dbm-hero-accent-dots::before,
.dbm-reservation-hero.dbm-hero-accent-dots-glow::before,
.dbm-reservation-hero.dbm-hero-accent-complete::before{
  content:"";position:absolute;inset:0;z-index:0;
  background:radial-gradient(circle,color-mix(in srgb,var(--dbm-hero-eyebrow) 34%,transparent) 0 1.2px,transparent 1.7px) 0 0/18px 18px;
  opacity:.62;
}
.dbm-reservation-hero.dbm-hero-accent-lines::before{
  content:"";position:absolute;inset:0;z-index:0;
  background:repeating-linear-gradient(115deg,transparent 0 38px,color-mix(in srgb,var(--dbm-hero-eyebrow) 12%,transparent) 39px 40px,transparent 41px 78px);
  opacity:.72;
}
.dbm-reservation-hero.dbm-hero-accent-circles .dbm-hero-orb,
.dbm-reservation-hero.dbm-hero-accent-circles-glow .dbm-hero-orb,
.dbm-reservation-hero.dbm-hero-accent-complete .dbm-hero-orb{display:block}
.dbm-reservation-hero.dbm-hero-accent-glow .dbm-hero-orb-two,
.dbm-reservation-hero.dbm-hero-accent-dots-glow .dbm-hero-orb-two{display:block;border:none}
.dbm-reservation-hero.dbm-hero-accent-glow .dbm-hero-orb-two,
.dbm-reservation-hero.dbm-hero-accent-dots-glow .dbm-hero-orb-two,
.dbm-reservation-hero.dbm-hero-accent-circles-glow .dbm-hero-orb-two,
.dbm-reservation-hero.dbm-hero-accent-complete .dbm-hero-orb-two{
  background:color-mix(in srgb,var(--dbm-hero-eyebrow) 18%,transparent);
  box-shadow:0 0 120px 50px color-mix(in srgb,var(--dbm-hero-eyebrow) 20%,transparent);
}
.dbm-reservation-hero.dbm-hero-accent-complete .dbm-hero-grid{display:block}

.dbm-reservation-hero.dbm-hero-transition-none{box-shadow:none}
.dbm-reservation-hero.dbm-hero-transition-shadow{box-shadow:0 24px 50px -36px color-mix(in srgb,var(--dbm-hero-eyebrow) 65%,#000)}
.dbm-reservation-hero.dbm-hero-transition-gradient::after{
  content:"";position:absolute;left:0;right:0;bottom:0;height:54px;z-index:2;
  background:linear-gradient(to bottom,transparent,var(--dbm-page-bg));
}
html.dhs-dark-mode .dbm-reservation-hero.dbm-hero-transition-gradient::after{background:linear-gradient(to bottom,transparent,var(--dbm-dark-page-bg))}
.dbm-reservation-hero.dbm-hero-transition-glow{box-shadow:0 22px 70px -28px color-mix(in srgb,var(--dbm-hero-eyebrow) 58%,transparent)}
.dbm-reservation-hero.dbm-hero-transition-edge{border-bottom:1px solid color-mix(in srgb,var(--dbm-hero-eyebrow) 42%,transparent)}
.dbm-reservation-hero.dbm-hero-has-accents:before{content:none!important}
.dbm-hero-has-accents .dbm-hero-orb,.dbm-hero-has-accents .dbm-hero-grid{display:none}


/* 2.2.2 – weitere Framework-Hero-Akzente */
.dbm-reservation-hero.dbm-hero-accent-waves::before{
  content:"";position:absolute;inset:-25% -8%;z-index:0;opacity:.5;
  background:
    radial-gradient(80% 55% at 20% 45%,transparent 61%,color-mix(in srgb,var(--dbm-hero-eyebrow) 20%,transparent) 62% 63%,transparent 64%),
    radial-gradient(90% 60% at 78% 55%,transparent 65%,color-mix(in srgb,var(--dbm-hero-eyebrow) 14%,transparent) 66% 67%,transparent 68%);
  transform:rotate(-4deg);
}
.dbm-reservation-hero.dbm-hero-accent-texture::before{
  content:"";position:absolute;inset:0;z-index:0;opacity:.42;
  background-image:
    radial-gradient(circle at 20% 20%,color-mix(in srgb,var(--dbm-hero-eyebrow) 25%,transparent) 0 1px,transparent 1.4px),
    radial-gradient(circle at 75% 65%,color-mix(in srgb,var(--dbm-hero-color) 13%,transparent) 0 1px,transparent 1.3px);
  background-size:27px 27px,39px 39px;background-position:0 0,9px 13px;
}
.dbm-reservation-hero.dbm-hero-accent-glass::before{
  content:"";position:absolute;inset:0;z-index:0;opacity:.8;
  background:
    linear-gradient(130deg,color-mix(in srgb,var(--dbm-hero-eyebrow) 12%,transparent),transparent 38%),
    radial-gradient(circle at 13% 20%,color-mix(in srgb,var(--dbm-hero-color) 10%,transparent) 0 8%,transparent 8.4%),
    radial-gradient(circle at 88% 25%,color-mix(in srgb,var(--dbm-hero-eyebrow) 14%,transparent) 0 10%,transparent 10.4%);
  backdrop-filter:blur(2px);
}
.dbm-reservation-hero.dbm-hero-accent-glass::after{
  content:"";position:absolute;width:260px;height:110px;right:7%;top:18%;z-index:1;border-radius:36px;
  border:1px solid color-mix(in srgb,var(--dbm-hero-color) 18%,transparent);
  background:color-mix(in srgb,var(--dbm-hero-color) 5%,transparent);transform:rotate(-10deg);
}
.dbm-reservation-hero.dbm-hero-accent-diagonal::before{
  content:"";position:absolute;inset:0;z-index:0;opacity:.65;
  background:
    linear-gradient(118deg,color-mix(in srgb,var(--dbm-hero-eyebrow) 18%,transparent) 0 21%,transparent 21.2% 66%,color-mix(in srgb,var(--dbm-hero-eyebrow) 9%,transparent) 66.2% 100%);
}


/* 2.2.3 – Hero-Akzentdeckkraft und reine Glass Shapes */
.dbm-reservation-hero::before,.dbm-reservation-hero .dbm-hero-orb,.dbm-reservation-hero .dbm-hero-grid{opacity:var(--dbm-hero-accent-opacity,.08)!important}
html.dhs-dark-mode .dbm-reservation-hero::before,html.dhs-dark-mode .dbm-reservation-hero .dbm-hero-orb,html.dhs-dark-mode .dbm-reservation-hero .dbm-hero-grid{opacity:var(--dbm-hero-accent-dark-opacity,.05)!important}
.dbm-reservation-hero.dbm-hero-accent-glass::before{content:"";position:absolute;inset:0;z-index:0;background:linear-gradient(130deg,color-mix(in srgb,var(--dbm-hero-eyebrow) 72%,transparent),transparent 46%);backdrop-filter:none}
.dbm-reservation-hero.dbm-hero-accent-glass .dbm-hero-orb{display:block;filter:none;background:color-mix(in srgb,var(--dbm-hero-color) 28%,transparent);border:1px solid color-mix(in srgb,var(--dbm-hero-color) 55%,transparent);box-shadow:inset 0 1px 0 color-mix(in srgb,#fff 45%,transparent),0 18px 48px color-mix(in srgb,var(--dbm-hero-eyebrow) 30%,transparent);backdrop-filter:blur(12px);border-radius:34px}
.dbm-reservation-hero.dbm-hero-accent-glass .dbm-hero-orb-one{width:250px;height:105px;left:7%;top:16%;transform:rotate(11deg)}
.dbm-reservation-hero.dbm-hero-accent-glass .dbm-hero-orb-two{width:190px;height:82px;right:8%;bottom:15%;transform:rotate(-9deg)}
.dbm-reservation-hero.dbm-hero-accent-glass::after{content:none}
.dbm-reservation-hero.dbm-hero-accent-glass.dbm-hero-transition-gradient::after{content:""}

/* v2.6.15 – Planned arrival label alignment */
.dbm-inline-field-label{display:inline-flex;align-items:baseline;gap:5px;flex-wrap:wrap}
.dbm-inline-field-label small{font-size:.82em;font-weight:inherit;opacity:.82}
