/* A warm-paper calendar framed by the Palace's velvet booking section. */
.palace .show-calendar[hidden],.palace #date-list[hidden],.palace .schedule-view[hidden],.palace .calendar-empty[hidden]{display:none}
.palace .date-tools{gap:18px;flex-wrap:wrap;align-items:center}
.schedule-view{display:flex;gap:2px;padding:3px;background:#ffffff12;border-radius:3px}
.schedule-view button{border:0;background:transparent;color:#d9dfd5;font:11px Manrope,Arial,sans-serif;padding:10px 15px;min-height:40px;border-radius:2px}
.schedule-view button[aria-pressed=true]{background:#eee9db;color:#112b22}
.palace .calendar-booking{grid-template-columns:minmax(230px,.72fr) minmax(0,1.28fr);gap:7%;align-items:start}
.calendar-booking .booking-intro{padding-top:65px}
.show-calendar{background:#eee9db;color:#17372b;padding:25px 26px 18px;margin-top:10px;box-shadow:0 14px 40px #00000018;border-radius:3px}
.calendar-month-nav{display:grid;grid-template-columns:44px 1fr 44px;align-items:center;gap:12px;margin-bottom:24px}
.calendar-month-nav h3{font:500 34px/1.1 'Cormorant Garamond',Georgia,serif;letter-spacing:-.4px;text-align:center}
.calendar-month-nav button{display:grid;place-items:center;width:44px;height:44px;min-width:44px;min-height:44px;padding:0;line-height:1;border:0;background:#193c2f0c;color:#193c2f;font-size:22px;border-radius:50%}
.calendar-month-nav button svg{display:block;width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.calendar-month-nav button:hover:enabled{background:#193c2f20}.calendar-month-nav button:disabled{opacity:.25;cursor:default}
.calendar-weekdays,.calendar-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px}
.calendar-weekdays{margin-bottom:10px;text-align:center;font:10px Manrope,Arial,sans-serif;color:#56685b;letter-spacing:.3px}
.calendar-day{border:0;min-height:76px;display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start;gap:5px;border-radius:3px;color:#5e695b;font:15px/1.2 Manrope,Arial,sans-serif;background:transparent;padding:7px 4px;text-align:center}
.calendar-day-number{padding:3px 0 5px}
.calendar-day.has-show{background:#dce2d4;color:#163e2c;font-weight:700}
.palace.vbo-enabled .show-calendar .calendar-showtime{display:flex;align-items:center;justify-content:center;background:#173e2d;color:#fff7df;border:0;border-radius:2px;min-height:34px;width:100%;padding:5px 1px;font:600 11px/1.2 Manrope,Arial,sans-serif;text-decoration:none;white-space:nowrap}
.palace.vbo-enabled .show-calendar .calendar-showtime:hover{background:#2c583d;color:#fff7df}
.palace.vbo-enabled .show-calendar .calendar-showtime:focus-visible{outline:3px solid #a77826;outline-offset:2px}
.calendar-key{display:flex;align-items:center;gap:7px;font-size:10px;line-height:1.5;margin-top:19px;color:#4b604c}
.calendar-key>span{width:8px;height:8px;border-radius:50%;background:#315c3f}.calendar-key small{margin-left:auto;font-size:9px}
.calendar-empty{font-size:12px;line-height:1.7;margin-top:15px}
@media(min-width:1500px){.palace .calendar-booking{padding-left:10%;padding-right:10%}}
@media(max-width:1000px) and (min-width:761px){.palace .calendar-booking{grid-template-columns:1fr;gap:25px}.calendar-booking .booking-intro{padding-top:0}.show-calendar{max-width:none}}
@media(max-width:760px){.calendar-booking .booking-intro{padding-top:0}.palace .date-tools{gap:12px;margin-bottom:15px}.palace .filters{gap:22px}.schedule-view{margin-left:auto}.schedule-view button{font-size:10px;padding:9px 11px;min-height:38px}.show-calendar{padding:18px 12px 15px}.calendar-month-nav{gap:8px;margin-bottom:17px}.calendar-month-nav h3{font-size:29px}.calendar-weekdays,.calendar-days{gap:3px}.calendar-weekdays{font-size:9px;margin-bottom:8px}.calendar-day{min-height:69px;font-size:14px;padding:6px 2px;gap:5px}.palace.vbo-enabled .show-calendar .calendar-showtime{min-height:34px;font-size:9px}.calendar-key{font-size:9px;margin-top:15px}.calendar-key small{font-size:8px}.calendar-booking .booking-options{margin-top:25px}}
@media(max-width:380px){.palace .date-tools{display:block}.schedule-view{width:max-content;margin:12px 0 0}.show-calendar{padding-left:8px;padding-right:8px}.calendar-day{padding-left:1px;padding-right:1px}.palace.vbo-enabled .show-calendar .calendar-showtime{font-size:9px}}

@media(max-width:760px){.calendar-booking .booking-intro h2{font-size:44px;margin-bottom:16px}.calendar-booking .booking-intro h2 br{display:none}.calendar-booking .booking-intro .eyebrow{margin-bottom:15px}.calendar-booking .booking-intro .price-note{margin-top:14px}}

/* Adopted booking-panel direction: curtain photograph, clean white, centered layout. */
body.palace #dates {
 display:flex; flex-direction:column; align-items:center; gap:32px;
 padding:72px 7% 76px;
 background:linear-gradient(#082526bd,#082526e6),url('/assets/velvet-entrance-v1.webp') center/cover;
}
body.palace #dates::before,body.palace #dates::after {content:none}
body.palace #dates .booking-intro {display:block;width:100%;max-width:760px;padding:0;text-align:center}
body.palace #dates .booking-intro .eyebrow {margin-bottom:18px}
body.palace #dates .booking-intro h2 {
 font-size:clamp(44px,5.5vw,72px);line-height:1.04;margin-bottom:20px;
 color:#f5f7ef;text-shadow:0 0 16px #7eeace38,0 0 42px #7eeace38;
}
body.palace #dates .booking-intro h2 br {display:none}
body.palace #dates .booking-intro>p:not(.eyebrow) {max-width:600px;margin-inline:auto;font-size:16px;line-height:1.65}
body.palace #dates .booking-intro .price-note {margin-top:12px;font-size:13px!important}
body.palace #dates .booking-options {width:100%;max-width:840px;min-width:0;margin:0}
body.palace #dates .show-calendar {background:#f5f7f5;color:#082a29;box-shadow:0 14px 38px #0003}
body.palace #dates .calendar-day.has-show {background:#e3ebe5}
body.palace #dates .schedule-view button[aria-pressed=true] {background:#f5f7f5}
body.palace #dates .date-release-note {max-width:660px;margin:24px auto 0;text-align:center}
@media(max-width:760px){
 body.palace #dates {padding:48px 20px 52px;gap:26px}
 body.palace #dates .booking-intro h2 {font-size:clamp(38px,10.8vw,44px);margin-bottom:16px}
 body.palace #dates .booking-intro .eyebrow {margin-bottom:14px}
 body.palace #dates .date-tools {align-items:center}
 body.palace #dates .filters {justify-content:center}
 body.palace #dates .schedule-view {align-self:center;margin-inline:auto}
}
