/* Calendar and contact live in the homepage footer. */
body.home .footer.footer-with-booking{aspect-ratio:auto;padding:0;background:#000!important}
body.home .footer-with-booking::before{content:none}
.booking-section{position:relative;background:#000;padding:var(--section-gap) 0 clamp(90px,9vw,140px);scroll-margin-top:90px}
.booking-wrap{max-width:1280px}
.booking-heading{text-align:center;margin:0 auto 42px}
.booking-label{display:block;font:400 12px/1.5 var(--font-tech);letter-spacing:.14em;color:var(--text-dim);margin-bottom:20px}
.booking-heading h2{font:600 clamp(24px,2.8vw,38px)/1.15 var(--font-sans);letter-spacing:-.03em;color:var(--text)}
.booking-heading p{font:400 clamp(15px,1.3vw,18px)/1.5 var(--font-sans);color:var(--text-dim);margin-top:18px}
.booking-calendar{position:relative;min-height:620px;width:100%;color-scheme:dark}
#my-cal-inline{width:100%;min-height:620px}
#my-cal-inline iframe{display:block;border:0;width:100%;min-height:620px}
.booking-status,.booking-error{margin:0;padding:28px;text-align:center;font:400 14px/1.5 var(--font-sans);color:var(--text-dim)}
.booking-status{position:absolute;top:0;left:0;right:0;pointer-events:none}
.booking-calendar.is-ready .booking-status{display:none}
.booking-calendar.is-error{min-height:0;border:1px solid var(--divider)}
.booking-calendar.is-error #my-cal-inline,.booking-calendar.is-error .booking-status{display:none}
.booking-alternatives{display:flex;flex-wrap:wrap;justify-content:center;gap:16px 30px;margin-top:24px;font:400 13px/1.5 var(--font-sans);color:var(--text)}
.booking-alternatives a,.booking-privacy a{text-underline-offset:4px;text-decoration-color:rgba(255,255,255,.35)}
.booking-alternatives a:focus-visible,.booking-privacy a:focus-visible{outline:2px solid #fff;outline-offset:5px}
.booking-privacy{text-align:center;margin-top:18px;font-size:11px;line-height:1.5;color:var(--text-dim)}
@media(max-width:820px){
  .booking-section{padding:var(--section-gap) 0 100px;scroll-margin-top:76px}
  .booking-wrap{padding-left:16px;padding-right:16px}
  .booking-heading{margin-bottom:28px}
  .booking-heading h2{font-size:clamp(24px,5.8vw,30px)}
  .booking-heading p{max-width:30ch;margin:16px auto 0;font-size:14.4px;line-height:1.3}
  .booking-calendar,#my-cal-inline,#my-cal-inline iframe{min-height:760px}
  .booking-alternatives{flex-direction:column;align-items:center;gap:12px}
}
