.bs-booking{--booking-ink:var(--bs-navy,#173746);--booking-accent:var(--bs-gold,#94712e);box-sizing:border-box;max-inline-size:980px;margin:2rem auto 3rem;padding:clamp(1rem,4vw,3rem);border:1px solid #d9d5ca;border-radius:6px;background:#faf9f5;color:var(--booking-ink);font-family:inherit;font-size:1rem;line-height:1.6;overflow-wrap:anywhere;text-align:start}
.bs-booking *{box-sizing:border-box}.bs-booking h2{font-size:clamp(1.7rem,4vw,2.6rem);line-height:1.2;margin:.3rem 0 1rem}.bs-booking h3{font-size:1.5rem;line-height:1.3}.bs-booking__eyebrow{font-size:.8rem;letter-spacing:.12em;text-transform:uppercase;color:#705423;font-weight:700;margin:0}.bs-booking__intro{max-inline-size:65ch}.bs-booking__notice{padding:1rem;border-inline-start:3px solid var(--booking-accent);background:#f0ede4;font-size:.95rem}.bs-booking a{color:#285d74;text-decoration:underline}.bs-booking fieldset{border:0;padding:0;margin:1.5rem 0;min-inline-size:0}.bs-booking legend{font-weight:700;margin-block-end:.8rem}.bs-booking__row{display:grid;grid-template-columns:minmax(0,1fr) 115px auto;gap:1rem;align-items:end;padding-block:1rem;border-block-end:1px solid #d9d5ca}.bs-booking label{display:block;font-weight:600;font-size:.95rem;margin-block-end:.35rem}.bs-booking select,.bs-booking input[type=date],.bs-booking input[type=number]{display:block;inline-size:100%;max-inline-size:100%;min-block-size:48px;border:1px solid #9aabae;border-radius:3px;padding:.65rem;background:#fff;color:#173746;font:inherit}.bs-booking select{white-space:nowrap;text-overflow:ellipsis}.bs-booking input[type=number]{direction:ltr;text-align:start}.bs-booking button{min-block-size:48px;max-inline-size:100%;border:1px solid #58717a;border-radius:3px;padding:.65rem 1rem;background:#fff;color:#173746;font:inherit;font-weight:600;cursor:pointer;line-height:1.3;white-space:normal}.bs-booking button:hover{background:#ede8dc}.bs-booking button:disabled{opacity:.6;cursor:wait}.bs-booking__add{margin-block:1rem}.bs-booking__children{margin-block:1rem;padding-block:1rem}.bs-booking__children input{max-inline-size:150px}.bs-booking__children p,.bs-booking__hint{font-size:.9rem}.bs-booking__estimate{display:flex;flex-wrap:wrap;gap:.5rem 2rem;background:#ecefe9;padding:1rem}.bs-booking__estimate p{margin:0}.bs-booking__estimate strong{display:inline-block;margin-inline-start:.7rem}.bs-booking .bs-booking__submit{background:#173746;color:#fff;margin-block-start:1.2rem}.bs-booking .bs-booking__submit:hover{background:#285767}.bs-booking :focus-visible{outline:3px solid #9d7428;outline-offset:3px}.bs-booking__status:not(:empty){padding:1rem;border:1px solid #805215;margin-block:1rem;background:#fff8e8}.bs-booking [aria-invalid=true]{border:2px solid #a23529}.bs-booking__review:not(:empty){margin-block-start:2rem;border-block-start:2px solid #94712e;padding-block-start:1rem}.bs-booking__breakdown{list-style:none;padding:0;margin:1rem 0}.bs-booking__breakdown li{display:flex;justify-content:space-between;gap:1rem;border-block-end:1px solid #d9d5ca;padding-block:.8rem}.bs-booking__breakdown li span{min-inline-size:0}.bs-booking__breakdown small{display:block;font-size:.85rem;font-weight:400}.bs-booking__breakdown strong{flex-shrink:0}.bs-booking__total{font-size:1.2rem}.bs-booking__review[data-stale=true]{opacity:.75}.bs-booking-fallback{max-inline-size:1100px;margin:auto;padding:1rem}
@media(max-width:600px){.bs-booking__row{grid-template-columns:minmax(0,1fr) 108px;gap:.6rem}.bs-booking__row>div:first-child{grid-column:1/-1}.bs-booking__remove{grid-column:2;grid-row:2;white-space:nowrap;font-size:.9rem;padding-inline:.6rem}.bs-booking__row>div:nth-child(2){grid-column:1;grid-row:2}.bs-booking__breakdown li{flex-wrap:wrap}.bs-booking__estimate{display:block}.bs-booking__estimate p+p{margin-block-start:.6rem}}
@media(prefers-reduced-motion:reduce){.bs-booking *{scroll-behavior:auto}}

.bs-booking [hidden]{display:none!important}.bs-booking__type-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.bs-booking .bs-booking__type-option{display:flex;align-items:start;gap:.8rem;padding:1rem;border:1px solid #9aabae;border-radius:3px;background:#fff;cursor:pointer;margin:0}.bs-booking__type-option input{flex-shrink:0;margin-block-start:.35rem;inline-size:1.1rem;block-size:1.1rem;accent-color:#173746}.bs-booking__type-option span{min-inline-size:0}.bs-booking__type-option small{display:block;font-size:.9rem;font-weight:400;line-height:1.5;margin-block-start:.35rem}.bs-booking__type-option:has(input:checked){border:2px solid #94712e;background:#f0ede4}.bs-booking__choose{margin-block-end:1rem}.bs-booking__individual select{max-inline-size:100%}@media(max-width:600px){.bs-booking__type-options{grid-template-columns:1fr}}

.bs-booking--verification input[type=text],.bs-booking--verification input[type=email]{inline-size:100%;min-inline-size:0;max-inline-size:100%;min-block-size:48px;padding:.65rem;border:1px solid #9aabae;border-radius:3px;background:#fff;color:#173746;font:inherit}
.bs-verification__fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}
.bs-booking--verification input[type=email],.bs-booking--verification .bs-verification__otp{direction:ltr;text-align:start}
.bs-booking--verification .bs-verification__otp{max-inline-size:16rem;font-size:1.5rem;letter-spacing:.2em}
.bs-booking--verification form+form{margin-block-start:1.5rem}.bs-booking__verified{padding:1rem;border-inline-start:3px solid #285767;background:#ecefe9}
@media(max-width:600px){.bs-verification__fields{grid-template-columns:1fr}}

.bs-booking__cash-warning{border:2px solid #94712e;background:#f0ede4;padding:1rem;margin-block:1rem;overflow-wrap:anywhere}.bs-booking__cash-warning h1{font-size:clamp(1.35rem,3vw,2rem);line-height:1.3;margin:0 0 .5rem}.bs-booking__cash-warning strong{font-size:1.15rem}.bs-booking__ack{display:flex!important;align-items:flex-start;gap:.7rem;margin-block:1rem}.bs-booking__ack input{flex:none;inline-size:1.2rem;block-size:1.2rem;margin-block-start:.2rem}.bs-booking__snapshot p{overflow-wrap:anywhere}.bs-booking--confirmation bdi{white-space:normal}.bs-booking input[type=password]{max-inline-size:100%;inline-size:100%;min-block-size:48px;font:inherit;padding:.6rem;box-sizing:border-box;direction:ltr}

.bs-booking-document{margin:0;font-family:Arial,Helvetica,sans-serif;background:#fff;color:#173746}

.bs-booking--confirmation h1{font-size:clamp(1.6rem,4vw,2.3rem);line-height:1.25;margin:0 0 1rem}.bs-booking--confirmation h2{font-size:1.3rem;margin-block:1.7rem .8rem}.bs-booking__cash-warning p{margin:.4rem 0 0;font-weight:700}
.bs-booking__facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem 1.5rem;margin-block:1rem}.bs-booking__facts div{min-inline-size:0}.bs-booking__facts dt,.bs-booking__nationalities dt{font-size:.85rem;color:#47616a}.bs-booking__facts dd,.bs-booking__nationalities dd{margin:0;overflow-wrap:anywhere;font-weight:600}
.bs-booking__nationalities{padding:0;list-style:none}.bs-booking__nationalities li{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:1rem;border-block-end:1px solid #d9d5ca;padding-block:.85rem}.bs-booking__nationalities p{margin:.25rem 0 0}.bs-booking__nationalities dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem;margin:0}.bs-booking__amount{display:flex;justify-content:space-between;flex-wrap:wrap;gap:.5rem;background:#ecefe9;padding:1rem;font-size:1.15rem}.bs-booking__amount strong{font-size:1.35rem}.bs-booking__actions{display:flex;flex-wrap:wrap;gap:1rem;align-items:center}.bs-booking__actions form{margin:0}
.bs-booking .bs-booking__button,.bs-booking--confirmation button,.bs-booking-document .bs-booking__submit{display:inline-flex;align-items:center;justify-content:center;min-block-size:48px;padding:.75rem 1.1rem;border:1px solid #173746;border-radius:4px;font:inherit;font-weight:600;text-decoration:none;line-height:1.4;cursor:pointer;background:#173746;color:#fff;transition:background .15s,border-color .15s}.bs-booking .bs-booking__button--secondary{background:#ecefe9;color:#173746}.bs-booking .bs-booking__button:hover,.bs-booking--confirmation button:hover,.bs-booking-document .bs-booking__submit:hover{background:#285767;color:#fff}.bs-booking .bs-booking__button:active,.bs-booking-document .bs-booking__submit:active{transform:translateY(1px)}.bs-booking .bs-booking__button:focus-visible,.bs-booking-document .bs-booking__submit:focus-visible{outline:3px solid #94712e;outline-offset:3px}.bs-booking .bs-booking__button:disabled,.bs-booking-document .bs-booking__submit:disabled{opacity:.55;cursor:wait;transform:none}
@media(max-width:600px){.bs-booking__facts{grid-template-columns:1fr}.bs-booking__nationalities li{grid-template-columns:1fr}.bs-booking__actions{align-items:stretch}.bs-booking__actions form,.bs-booking__actions .bs-booking__button{inline-size:100%}.bs-booking__actions button{inline-size:100%}}

.bs-booking .bs-booking__new{margin-block-start:1.5rem;padding-block-start:1.25rem;border-block-start:1px solid #d9d5ca}.bs-booking__new .bs-booking__hint{margin-block:.6rem 0}@media(max-width:600px){.bs-booking__new .bs-booking__button{inline-size:100%}}

.bs-booking .bs-booking__actions{display:flex;align-items:center;flex-wrap:wrap;gap:1rem;margin-block-start:1.5rem}.bs-booking .bs-booking__actions form{margin:0;display:flex;flex-direction:column}.bs-booking .bs-booking__actions [data-access-error]:empty{display:none}.bs-booking .bs-booking__actions .bs-booking__submit,.bs-booking .bs-booking__actions .bs-booking__button{margin:0;min-block-size:48px;padding:.75rem 1.1rem;border-radius:4px;font:inherit;font-weight:600;line-height:1.4}.bs-booking .bs-booking__actions .bs-booking__submit:active{transform:translateY(1px)}.bs-booking .bs-booking__actions .bs-booking__submit:disabled{transform:none}.bs-booking .bs-booking__actions .bs-booking__submit:focus-visible{outline:3px solid #94712e;outline-offset:3px}@media(max-width:600px){.bs-booking .bs-booking__actions{align-items:stretch}.bs-booking .bs-booking__actions>form,.bs-booking .bs-booking__actions>.bs-booking__submit,.bs-booking .bs-booking__actions>.bs-booking__button{inline-size:100%}}

.bs-booking__edit{margin-block:1rem 1.5rem}.bs-booking__edit>summary{cursor:pointer;font-weight:600;padding:12px;border:1px solid #cbd8da;border-radius:6px}.bs-booking__edit>summary:focus-visible{outline:3px solid #123f48;outline-offset:3px}.bs-booking__edit[open]>summary{margin-bottom:1rem}.bs-booking__field-error{display:block;color:#8a2525;margin-top:6px}.bs-booking-confirmation-shell{max-width:1100px;margin-inline:auto;padding:clamp(16px,4vw,48px)}
