/* Date picker and contextual portrait, scoped to the public booking journey. */
html.has-date-guide{scroll-padding-bottom:24px}body.booking-wizard.has-date-guide{padding-bottom:0}
.booking-wizard.has-date-guide .booking-details{position:relative;align-items:stretch}
.booking-wizard.has-date-guide .booking-summary{grid-column:1;grid-row:1}
.booking-wizard.has-date-guide .wizard-guide-slot{grid-column:2;grid-row:1;min-width:0;min-height:420px;background:#f2ece4;border:1px solid #ddd1c4;display:flex;align-items:center}
.booking-wizard.has-date-guide .booking-calendar{display:none!important;position:absolute;top:30px;right:36px;width:calc(50% - 56px);z-index:5;padding:18px 22px 22px;margin:0;background:#fff;border:1px solid #d6c4b8;border-top:3px solid #9c3b3b;box-shadow:0 14px 35px #28252520}
.booking-wizard.has-date-guide .booking-calendar.is-date-open{display:block!important;animation:willa-calendar-reveal .18s ease-out}
.booking-wizard.has-date-guide .calendar-visible>.wizard-beata{visibility:hidden}
.booking-wizard.has-date-guide .booking-date-tab{position:relative;padding-right:34px}
.booking-wizard.has-date-guide .booking-date-tab:after{content:'⌄';position:absolute;right:14px;top:22px;font-size:22px;color:#9c3b3b}
.booking-wizard.has-date-guide .booking-date-tab[aria-expanded=true]:after{content:'⌃'}
.booking-wizard.has-date-guide .wizard-date-hint{display:block;margin-top:4px;font-size:10px;line-height:1.4;color:#655e58}
.booking-wizard.has-date-guide .wizard-calendar-close{display:block;margin:0 0 10px auto;min-height:44px;padding:8px 10px;background:#fdfaf7;border:1px solid #ddd1c4;color:#9c3b3b;font-size:12px}
.booking-wizard.has-date-guide .booking-day{min-height:44px}
.booking-wizard .wizard-beata.is-inline-guide{position:relative;inset:auto;z-index:auto;filter:none;width:min(1300px,calc(100% - 48px));max-width:none;margin:24px auto;align-items:center;border:1px solid #ddd1c4;border-top:3px solid #9c3b3b;background:#f2ece4;padding:20px 28px;gap:20px}
.booking-wizard .wizard-beata.is-date-guide{width:100%;min-height:420px;margin:0;padding:24px 20px;border:0;gap:12px}
.booking-wizard .is-inline-guide .beata-portrait{width:130px;height:180px;align-self:flex-end}
.booking-wizard .is-inline-guide .beata-portrait>img{width:135px;left:0;top:0}
.booking-wizard .is-date-guide .beata-portrait{width:42%;height:320px;align-self:center}
.booking-wizard .is-date-guide .beata-portrait>img{width:100%;left:0;top:0}
.booking-wizard .is-inline-guide .wizard-beata-bubble{border:0;background:none;padding:0;box-shadow:none}
.booking-wizard .is-inline-guide .wizard-beata-title{align-items:flex-start}
.booking-wizard .is-inline-guide .wizard-beata-title strong{font:29px/1.2 'Playfair Display',Georgia,serif}
.booking-wizard .is-inline-guide .wizard-beata-title strong span{display:block;font:12px/1.6 Montserrat,Arial,sans-serif;margin-top:9px}
.booking-wizard .is-inline-guide .wizard-beata-text{font-size:13px;line-height:1.8;margin:18px 0}
.booking-wizard .is-inline-guide .wizard-beata-actions{display:grid;gap:4px}
.booking-wizard .is-inline-guide .wizard-beata-actions button,.booking-wizard .is-inline-guide .wizard-beata-help button,.booking-wizard .is-inline-guide .wizard-beata-help a{font-size:12px;min-height:44px}
.booking-wizard .is-inline-guide [data-beata-toggle]{min-width:44px;min-height:44px;flex:none;background:#fff;border:1px solid #ddd1c4}
.booking-wizard .is-inline-guide.is-collapsed{justify-content:center;min-height:100px}
.booking-wizard .is-inline-guide.is-collapsed .beata-portrait{width:60px;height:80px;align-self:center}
.booking-wizard .is-inline-guide.is-collapsed .beata-portrait>img{width:60px}
.booking-wizard .is-inline-guide.is-collapsed .wizard-beata-bubble{flex:0 1 auto}
@keyframes willa-calendar-reveal{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:none}}
@media(max-width:1100px) and (min-width:761px){.booking-wizard.has-date-guide .booking-calendar{top:26px;right:26px;width:calc(50% - 39px);padding:14px}.booking-wizard .wizard-beata.is-date-guide{display:block;text-align:center;padding:20px}.booking-wizard .is-date-guide .beata-portrait{width:140px;height:185px;margin:auto}.booking-wizard .is-date-guide .wizard-beata-text{margin:12px 0}.booking-wizard .is-date-guide .wizard-beata-actions button{text-align:center}}
@media(max-width:760px){
 .booking-wizard.has-date-guide .booking-calendar{position:relative;inset:auto;width:100%;padding:12px;margin:-2px 0 22px;box-shadow:0 8px 20px #2825250d}
 .booking-wizard.has-date-guide .wizard-guide-slot{min-height:0;margin-top:20px}
 .booking-wizard.has-date-guide .calendar-visible>.wizard-beata{visibility:visible}
 .booking-wizard .wizard-beata.is-inline-guide{width:calc(100% - 36px);padding:18px;gap:12px}
 .booking-wizard .wizard-beata.is-date-guide{min-height:0;width:100%;margin:0;padding:18px 12px}
 .booking-wizard .is-inline-guide .beata-portrait,.booking-wizard .is-date-guide .beata-portrait{width:86px;height:120px;align-self:center;flex:none}
 .booking-wizard .is-inline-guide .beata-portrait>img,.booking-wizard .is-date-guide .beata-portrait>img{width:86px}
 .booking-wizard .is-inline-guide .wizard-beata-title strong{font-size:24px}
 .booking-wizard .is-inline-guide .wizard-beata-title strong span{font-size:11px}
 .booking-wizard .is-inline-guide .wizard-beata-text{font-size:12px;line-height:1.65;margin:10px 0;max-height:none;overflow:visible}
 .booking-wizard .is-inline-guide.is-typing:not(.is-collapsed) .wizard-beata-actions{display:grid}
}
@media(prefers-reduced-motion:reduce){.booking-wizard.has-date-guide .booking-calendar.is-date-open{animation:none}}
