/* Keeps the current booking experience stable when the marketing theme changes. */
.cleanest-booking-page{overflow-y:auto!important;touch-action:pan-y;overscroll-behavior-y:auto}
.cleanest-booking-page .entry-header,.cleanest-booking-page .page-header{display:none}
.cleanest-booking-page .chaty-widget{display:none!important}
.cleanest-booking-page main,.cleanest-booking-page .site-main,.cleanest-booking-page [data-content="normal"]{overflow:visible!important}
.cleanest-booking-page .cleanest-booking{width:min(100% - 30px,980px);max-width:980px;margin:clamp(34px,6vw,78px) auto;touch-action:pan-y}
.cleanest-booking-page .cb-shell{border-color:rgba(20,61,65,.12);border-radius:36px;padding:clamp(28px,5vw,60px);box-shadow:0 32px 90px rgba(16,45,48,.11)}
.cleanest-booking-page .cb-heading{margin-bottom:30px}.cleanest-booking-page .cb-heading>span{letter-spacing:.08em;text-transform:none}.cleanest-booking-page .cb-heading h1{font-size:clamp(2.35rem,5vw,4.4rem);line-height:1.18;margin:.24em 0 .18em}.cleanest-booking-page .cb-heading p{max-width:55ch;margin-inline:auto}
.cleanest-booking-page .cb-progress{height:4px;background:#e3ecea}.cleanest-booking-page .cb-step-labels{counter-reset:booking-step;gap:8px;margin:14px 0 48px}.cleanest-booking-page .cb-step-labels li{counter-increment:booking-step;display:flex;flex-direction:column;align-items:center;gap:8px;position:relative;line-height:1.35}.cleanest-booking-page .cb-step-labels li:before{content:counter(booking-step);display:grid;place-items:center;width:34px;height:34px;border:1px solid rgba(20,61,65,.18);border-radius:50%;background:#fff;color:var(--cb-sage);font:700 .78rem Alexandria,sans-serif}.cleanest-booking-page .cb-step-labels li[data-current]:before{border-color:var(--cb-forest);background:var(--cb-forest);color:#fff;box-shadow:0 0 0 5px rgba(166,214,219,.28)}
.cleanest-booking-page .cb-step input,.cleanest-booking-page .cb-step select,.cleanest-booking-page .cb-step textarea{min-height:54px;font-size:16px;background:#fff}.cleanest-booking-page .cb-step textarea{min-height:110px;resize:vertical}.cleanest-booking-page .cb-actions button{min-width:112px;min-height:52px}

@media(max-width:720px){
  body.cleanest-booking-page{position:static!important;height:auto!important;min-height:100%!important;overflow-x:hidden!important;overflow-y:auto!important;-webkit-overflow-scrolling:touch;touch-action:pan-y!important}
  .cleanest-booking-page .cleanest-booking{width:min(100% - 20px,980px);margin:24px auto 48px}
  .cleanest-booking-page .cb-shell{border-radius:24px;padding:28px 18px 20px}
  .cleanest-booking-page .cb-heading{margin-bottom:26px}.cleanest-booking-page .cb-heading h1{font-size:clamp(2rem,10vw,3rem)}
  .cleanest-booking-page .cb-step-labels{gap:2px;margin-bottom:36px}.cleanest-booking-page .cb-step-labels li{font-size:0}.cleanest-booking-page .cb-step-labels li:before{width:32px;height:32px}.cleanest-booking-page .cb-step-labels li:after{content:attr(data-step-label);font-size:.68rem;white-space:nowrap}
  .cleanest-booking-page .cb-actions{position:sticky;z-index:4;inset-block-end:0;margin:30px -18px 0;padding:16px 18px max(16px,env(safe-area-inset-bottom));background:rgba(255,255,255,.96);backdrop-filter:blur(14px);border-radius:0 0 22px 22px}
  .cleanest-booking-page .cb-actions button{min-width:104px;padding-inline:18px}
}
