.booking-form-module__2XUDKa__shell,.booking-form-module__2XUDKa__confirmation{width:100%;color:var(--ink);margin:0}.booking-form-module__2XUDKa__shell{border-top:1px solid var(--line);border-bottom:1px solid var(--line);grid-template-columns:minmax(15rem,.38fr) minmax(0,1fr);display:grid}.booking-form-module__2XUDKa__rail{border-right:1px solid var(--line);align-self:start;min-height:42rem;padding:clamp(2rem,4vw,3.5rem) clamp(1.5rem,4vw,3.5rem) 2rem 0;position:sticky;top:7rem}.booking-form-module__2XUDKa__eyebrow{color:var(--eyebrow-color);font:var(--eyebrow-weight) var(--eyebrow-size) / 1 var(--eyebrow-family);letter-spacing:var(--eyebrow-tracking);text-transform:uppercase;margin:0}.booking-form-module__2XUDKa__rail h1,.booking-form-module__2XUDKa__confirmation h1{max-width:8ch;font-family:var(--font-display);letter-spacing:-.06em;text-wrap:balance;margin:1.2rem 0 3.5rem;font-size:clamp(2.8rem,5vw,5rem);line-height:.88}.booking-form-module__2XUDKa__steps{counter-reset:stage;gap:0;margin:0;padding:0;list-style:none;display:grid}.booking-form-module__2XUDKa__steps li{counter-increment:stage;border-top:1px solid var(--line);color:var(--ink-soft);grid-template-columns:2rem 1fr;gap:.75rem;padding:.9rem 0;font-size:.82rem;transition:color .22s,padding .22s;display:grid;position:relative}.booking-form-module__2XUDKa__steps li:before{content:"0" counter(stage);color:color-mix(in srgb, var(--ink) 35%, transparent);font:600 .66rem/1.4 ui-monospace,monospace}.booking-form-module__2XUDKa__steps li[aria-current=step]{color:var(--ink);padding-left:.55rem;font-weight:750}.booking-form-module__2XUDKa__steps li[aria-current=step]:after{content:"";background:var(--brand-j);width:2px;position:absolute;top:0;bottom:0;left:0}.booking-form-module__2XUDKa__steps li[data-complete=true]:before{content:"✓";color:var(--brand-j)}.booking-form-module__2XUDKa__railNote{max-width:24ch;color:var(--ink-soft);margin:2.5rem 0 0;font-size:.76rem;line-height:1.55}.booking-form-module__2XUDKa__formPanel{background:color-mix(in srgb, var(--surface-raised) 72%, transparent);min-width:0}.booking-form-module__2XUDKa__formHeader{border-bottom:1px solid var(--line);grid-template-columns:auto 1fr;align-items:end;gap:1.25rem;padding:clamp(1.5rem,4vw,3rem);display:grid}.booking-form-module__2XUDKa__formHeader>span{color:var(--brand-j);letter-spacing:-.1em;font:500 clamp(3rem,7vw,6rem)/.75 ui-monospace,monospace}.booking-form-module__2XUDKa__formHeader p{color:var(--ink-soft);letter-spacing:.12em;text-transform:uppercase;margin:0 0 .35rem;font-size:.68rem}.booking-form-module__2XUDKa__formHeader strong{font-family:var(--font-display);font-size:clamp(1.25rem,2vw,1.8rem)}.booking-form-module__2XUDKa__shell form{min-width:0;padding:clamp(1.5rem,5vw,4.5rem)}.booking-form-module__2XUDKa__shell fieldset{border:0;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.2rem;margin:0;padding:0;display:grid}.booking-form-module__2XUDKa__shell legend{border-bottom:1px solid var(--line);width:100%;font-family:var(--font-display);grid-column:1/-1;margin:0 0 1.5rem;padding-bottom:1rem;font-size:1.45rem;font-weight:750}.booking-form-module__2XUDKa__shell label{color:var(--ink);align-content:start;gap:.55rem;font-size:.82rem;font-weight:650;display:grid}.booking-form-module__2XUDKa__summary,.booking-form-module__2XUDKa__consent,.booking-form-module__2XUDKa__choice{grid-column:1/-1}.booking-form-module__2XUDKa__shell label:has(textarea){grid-column:1/-1}.booking-form-module__2XUDKa__shell input,.booking-form-module__2XUDKa__shell textarea{border:0;border-bottom:1px solid var(--line);width:100%;color:var(--ink);font:inherit;background:0 0;border-radius:0;padding:.9rem .15rem;transition:border-color .18s,background-color .18s}.booking-form-module__2XUDKa__shell input:focus-visible,.booking-form-module__2XUDKa__shell textarea:focus-visible{border-color:var(--brand-j);background:color-mix(in srgb, var(--brand-j) 4%, transparent);outline:0}.booking-form-module__2XUDKa__shell textarea{resize:vertical;min-height:9rem}.booking-form-module__2XUDKa__choice,.booking-form-module__2XUDKa__consent{border:1px solid var(--line);background:color-mix(in srgb, var(--surface) 82%, transparent);grid-template-columns:auto 1fr;align-items:start;padding:1.15rem;transition:transform .18s,border-color .18s,background-color .18s}.booking-form-module__2XUDKa__choice:hover{border-color:color-mix(in srgb, var(--brand-j) 60%, var(--line));transform:translate(.35rem)}.booking-form-module__2XUDKa__choice:has(input:checked){border-color:var(--brand-j);background:color-mix(in srgb, var(--brand-j) 9%, var(--surface))}.booking-form-module__2XUDKa__choice input,.booking-form-module__2XUDKa__consent input{width:1rem;accent-color:var(--brand-j);margin-top:.08rem}.booking-form-module__2XUDKa__choice small{color:var(--ink-soft);grid-column:2;font-weight:450;line-height:1.5}.booking-form-module__2XUDKa__summary{border-top:1px solid var(--line);grid-template-columns:minmax(6rem,.3fr) 1fr;margin:0;display:grid}.booking-form-module__2XUDKa__summary dt,.booking-form-module__2XUDKa__summary dd{border-bottom:1px solid var(--line);margin:0;padding:1rem 0}.booking-form-module__2XUDKa__summary dt{color:var(--ink-soft);letter-spacing:.08em;text-transform:uppercase;font-size:.7rem}.booking-form-module__2XUDKa__summary dd{font-weight:650}.booking-form-module__2XUDKa__actions{border-top:1px solid var(--line);justify-content:flex-end;gap:.75rem;margin-top:2.5rem;padding-top:1.25rem;display:flex}.booking-form-module__2XUDKa__actions button{border:1px solid var(--ink);background:var(--ink);min-width:9rem;min-height:3rem;color:var(--canvas);font:750 .85rem/1 var(--font-display);cursor:pointer;border-radius:0;padding:.8rem 1.3rem;transition:transform .18s,background-color .18s}.booking-form-module__2XUDKa__actions button:hover{background:var(--brand-j);color:#121008;transform:translateY(-2px)}.booking-form-module__2XUDKa__actions button:active{transform:translateY(0)}.booking-form-module__2XUDKa__actions button[type=button]:first-child{border-color:var(--line);color:var(--ink);background:0 0;margin-right:auto}.booking-form-module__2XUDKa__actions button:focus-visible{outline:2px solid var(--focus);outline-offset:3px}.booking-form-module__2XUDKa__error{color:#c43b3b;background:#c43b3b14;border-left:3px solid #c43b3b;margin:1.5rem 0 0;padding:.85rem 1rem}.booking-form-module__2XUDKa__confirmation{border-top:1px solid var(--line);padding:clamp(3rem,8vw,7rem)}.booking-form-module__2XUDKa__confirmation p{color:var(--ink-soft)}@media (max-width:48rem){.booking-form-module__2XUDKa__shell{grid-template-columns:1fr}.booking-form-module__2XUDKa__rail{border-right:0;border-bottom:1px solid var(--line);min-height:auto;padding:2rem 1.25rem;position:relative;top:auto}.booking-form-module__2XUDKa__rail h1{max-width:12ch;margin-bottom:2rem}.booking-form-module__2XUDKa__steps{grid-template-columns:repeat(auto-fit,minmax(7.5rem,1fr));column-gap:.75rem}.booking-form-module__2XUDKa__steps li{overflow-wrap:anywhere;min-width:0}.booking-form-module__2XUDKa__railNote{display:none}.booking-form-module__2XUDKa__shell fieldset{grid-template-columns:1fr}.booking-form-module__2XUDKa__shell legend,.booking-form-module__2XUDKa__summary,.booking-form-module__2XUDKa__consent,.booking-form-module__2XUDKa__choice{grid-column:1}.booking-form-module__2XUDKa__shell label:has(textarea){grid-column:1}.booking-form-module__2XUDKa__formHeader,.booking-form-module__2XUDKa__shell form{padding-inline:1.25rem}}