.booking-section{padding-top:50px}.booking-intro{display:grid;grid-template-columns:repeat(3,1fr);gap:25px;border-bottom:1px solid var(--line);padding-bottom:32px;color:var(--muted);font-size:.875rem}.booking-intro b{color:var(--ink);font-weight:600}.booking-notice{display:flex;align-items:flex-start;gap:14px;margin-top:30px;padding:22px 26px;background:#1a0b24;border:1px solid #ad33f544}.booking-dot{width:8px;height:8px;border-radius:50%;background:var(--purple);margin-top:9px;flex-shrink:0}.booking-notice strong{font-weight:600}.booking-notice p{font-size:.875rem;color:#c9bfd4;margin:6px 0 0}.booking-notice a{text-decoration:underline;text-underline-offset:3px}.booking-steps{display:flex;gap:45px;list-style:none;margin:40px 0;padding:0;color:var(--muted);font-size:.875rem}.booking-steps li{display:flex;align-items:center;gap:12px}.booking-steps span{display:grid;place-items:center;width:32px;height:32px;border:1px solid var(--line);border-radius:50%;font-size:.75rem}.booking-steps [aria-current]{color:var(--ink)}.booking-steps [aria-current] span{background:var(--purple);color:#1a0c20;border-color:var(--purple)}.booking-layout{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:65px;align-items:start}.booking-selection h2{font-size:clamp(2.8rem,4vw,4rem);margin-bottom:30px}.booking-selection fieldset{border:0;margin:0;padding:0}.booking-selection legend{font-size:.875rem;margin-bottom:14px;font-weight:600}.booking-categories{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.booking-categories label,.booking-option{position:relative;cursor:pointer}.booking-categories input,.booking-option input{position:absolute;opacity:0;width:1px;height:1px;min-height:0}.booking-categories label>span{display:block;border:1px solid #5c5068;padding:16px 14px;height:100%;font-size:.875rem;line-height:1.5}.booking-categories small{display:block;color:var(--muted);font-size:.75rem;margin-top:5px}.booking-categories input:checked+span{border-color:var(--purple);background:#ad33f520}.booking-categories input:focus-visible+span,.booking-option input:focus-visible+span{outline:2px solid var(--purple);outline-offset:4px}.booking-selection .booking-options{margin-top:32px;display:grid;gap:14px}.booking-option{margin:0;font-weight:400}.booking-option-inner{display:block;border:1px solid #514758;padding:25px;transition:background .2s,border-color .2s}.booking-option input:checked+span{border-color:var(--purple);background:#1c131f;box-shadow:inset 3px 0 var(--purple)}.booking-option-heading{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-bottom:14px}.booking-option-heading>strong{font-family:var(--display);font-size:2rem;text-transform:uppercase;font-weight:500}.booking-option-heading>span{font-size:.75rem;color:#d3c5df;text-align:right}.booking-option-heading b{font-size:1.2rem;font-weight:600;color:#e29aff}.booking-purpose{display:block;font-size:.875rem;color:#c4bdcd}.booking-inclusions{display:block;margin-top:18px}.booking-inclusions>span{display:block;color:#bcb4c7;font-size:.8rem;margin-top:5px}.booking-option-inner>small{display:block;font-size:.75rem;color:#bfb2cc;margin-top:18px}.booking-tariff-note{font-size:.8rem;color:var(--muted);margin-top:24px}.booking-summary{position:sticky;top:calc(var(--header-height) + 24px);border:1px solid #ad33f566;border-top:2px solid var(--purple);background:#1b111f;padding:30px}.booking-summary h2{font-size:2.6rem;margin-bottom:16px}.booking-summary>p{font-size:.875rem;color:#c7b9d4}.booking-summary .booking-price{padding-bottom:22px;border-bottom:1px solid var(--line)}.booking-price strong{display:block;font-family:var(--display);color:#e29aff;font-size:3.8rem;line-height:1.2;font-weight:500}.booking-summary-line{display:flex;flex-direction:column;font-size:.8rem;margin-bottom:18px;color:var(--muted)}.booking-summary-line b{color:#e1dbe8;font-weight:500}.booking-summary .button{width:100%;font-size:.8rem;padding:12px;gap:12px;margin-top:12px}.booking-summary .text-link{font-size:.8rem;margin-top:18px}.booking-summary .form-help{margin-top:20px;font-size:.75rem}.booking-live-status:empty{display:none}.booking-live-status{margin:14px 0 0;font-size:.75rem!important;color:#ebbaff!important}.booking-custom{padding:28px 0;border-top:1px solid var(--line);margin-top:36px}.booking-custom h3{font-size:1.3rem;margin-bottom:14px}.booking-custom p{color:var(--muted);font-size:.875rem}.booking-calendar{scroll-margin-top:calc(var(--header-height) + 20px);margin-top:55px;border:1px solid var(--line);padding:40px;background:#151017}.booking-calendar h2{font-size:clamp(2.5rem,4vw,3.5rem);margin-bottom:24px}.booking-calendar>p{color:#c7b9d4;max-width:760px}.booking-provider-frame{width:100%;min-height:850px;background:#fff;border:0;margin:15px 0 30px}.booking-page .page-hero{padding-bottom:55px}
@media(max-width:1100px){.booking-layout{gap:28px;grid-template-columns:minmax(0,1fr) 300px}.booking-categories{grid-template-columns:1fr}.booking-summary{padding:25px}}
@media(max-width:800px){.booking-layout{grid-template-columns:1fr}.booking-summary{position:static}.booking-intro{grid-template-columns:1fr;gap:18px}.booking-intro>span:last-child{display:none}.booking-steps{gap:10px;justify-content:space-between;font-size:.7rem}.booking-steps li{flex-direction:column;gap:8px;text-align:center}.booking-notice{padding:18px}.booking-categories label>span{padding:14px}.booking-categories small{margin-top:2px}.booking-option-inner{padding:20px}.booking-option-heading{align-items:flex-start}.booking-calendar{padding:25px 20px}.booking-calendar .button{width:100%}.booking-option-heading>strong{font-size:1.8rem}.booking-option-heading>span{max-width:110px}.booking-provider-frame{min-height:1050px}.booking-page .mobile-bar{display:none}}

.booking-categories{grid-template-columns:repeat(2,minmax(0,1fr))}
.booking-sizes{border:0;padding:0;margin:26px 0 0}
.booking-sizes legend{margin-bottom:12px}
.booking-sizes .size-option>span{border-color:#5c5068}
.booking-option .checklist{margin:12px 0}
@media(max-width:560px){.booking-categories{grid-template-columns:1fr}}
