.booking-page{color:#242424;font-family:var(--font-inter),sans-serif;background:#f7f5f0}.booking-page a{text-decoration:none}.booking-hero{isolation:isolate;color:#fff;background:#191c19;flex-direction:column;min-height:min(850px,100svh);display:flex;position:relative;overflow:hidden}.booking-photo{z-index:-2;object-fit:cover;object-position:65% 44%;animation:1.1s ease-out both booking-photo-in}.booking-hero:after{content:"";z-index:-1;background:linear-gradient(90deg,#0d120fe8,#0d120f96 45%,#0d120f21 78%),linear-gradient(#0000 65%,#0d120f99);position:absolute;inset:0}.booking-header,.booking-hero-foot{justify-content:space-between;align-items:center;margin-inline:clamp(24px,5vw,88px);display:flex}.booking-header{border-bottom:1px solid #ffffff30;padding-block:28px}.booking-page .booking-brand{color:inherit;letter-spacing:-2.5px;font-size:36px;font-weight:800;line-height:1}.booking-brand span{color:#b7adff}.booking-provider{color:#e0e3df;font-size:12px}.booking-provider strong{color:#fff;margin-left:5px;font-size:16px}.booking-intro{margin:auto 0;padding:60px clamp(24px,5vw,88px);animation:.65s ease-out .1s both booking-enter}.booking-eyebrow{letter-spacing:.19em;margin:0 0 22px;font-size:10px;font-weight:800}.booking-intro .booking-eyebrow{color:#d0c9ff}.booking-intro h1{letter-spacing:-.065em;max-width:9ch;margin:0;font-size:clamp(60px,7.7vw,112px);font-weight:650;line-height:.99}.booking-description{color:#e3e5e1;margin:28px 0 30px;font-size:17px;line-height:1.65}.booking-action{max-width:360px;min-height:58px}.booking-page .booking-cta{box-sizing:border-box;cursor:pointer;justify-content:space-between;align-items:center;gap:32px;min-width:255px;min-height:58px;transition:background .2s,transform .2s;color:#18152c!important;font:750 14px/1.5 var(--font-inter),sans-serif!important;box-shadow:none!important;background:#c5baff!important;border:0!important;border-radius:6px!important;padding:17px 22px!important;display:inline-flex!important}.booking-page .booking-cta:hover{transform:translateY(-2px);background:#d6ceff!important}.booking-cta span{font-size:23px;line-height:1}.booking-dialog{color:#242424;background:#f7f5f0;border:0;border-radius:12px;width:min(850px,100% - 32px);max-height:calc(100svh - 32px);margin:auto;padding:24px;overflow:auto}.booking-dialog::backdrop{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#0b100ed9}.booking-dialog[open]{animation:.2s ease-out booking-enter}.booking-dialog-header{justify-content:space-between;align-items:center;gap:20px;margin-bottom:18px;display:flex}.booking-dialog-header p{letter-spacing:.15em;color:#706e68;margin:0 0 6px;font-size:9px}.booking-dialog-header h2{letter-spacing:-.04em;margin:0;font-size:22px}.booking-dialog-header button{color:#242424;width:44px;height:44px;box-shadow:none;cursor:pointer;background:0 0;border:1px solid #dcd9d1;border-radius:50%;flex-shrink:0;padding:0;font-size:28px}.booking-widget iframe{background:#fff;width:100%;max-width:100%;min-height:560px;display:block}.booking-dialog-help{color:#706e68;margin-top:16px;font-size:12px;line-height:1.6}.booking-dialog-help a{color:#5d4cbd;text-decoration:underline}.booking-reassurance{color:#d5d8d2;margin-top:16px;font-size:11px}.booking-status{color:#eeeafc;padding-block:10px;font-size:13px;line-height:1.6}.booking-hero-foot{letter-spacing:.15em;color:#c7ccc5;padding:0 0 25px;font-size:9px}.booking-loyalty{grid-template-columns:1fr 1.1fr;gap:70px;max-width:1260px;margin:auto;padding:70px clamp(24px,5vw,88px);display:grid}.booking-section-heading .booking-eyebrow{color:#6c6388;margin-bottom:16px}.booking-section-heading h2{letter-spacing:-.05em;margin:0;font-size:clamp(28px,3vw,42px);font-weight:650;line-height:1.18}.booking-section-heading h2 span{color:#77746d}.booking-steps{margin:0;padding:0;list-style:none}.booking-steps li{border-bottom:1px solid #dcd9d1;gap:24px;padding:20px 0;display:flex}.booking-steps li:first-child{padding-top:0}.booking-step-number{color:#8a8170;font-variant-numeric:tabular-nums;padding-top:5px;font-size:11px}.booking-steps h3{margin:0 0 7px;font-size:15px;font-weight:750}.booking-steps p{color:#706e68;max-width:40ch;margin:0;font-size:13px;line-height:1.65}.booking-details{max-width:1084px;margin:auto;padding:0 24px 50px}.booking-disclosure{border-top:1px solid #dcd9d1}.booking-disclosure>summary{cursor:pointer;justify-content:space-between;align-items:center;gap:20px;padding:21px 0;font-size:13px;font-weight:650;list-style:none;display:flex}.booking-disclosure>summary::-webkit-details-marker{display:none}.booking-disclosure>summary span{color:#77746d;font-size:22px;transition:transform .2s}.booking-disclosure[open]>summary span{transform:rotate(45deg)}.booking-disclosure p,.booking-conditions{color:#66635d;font-size:13px;line-height:1.8}.booking-disclosure a{color:#5d4cbd;text-underline-offset:3px;text-decoration:underline}.booking-conditions{max-width:76ch;padding-bottom:20px}.booking-conditions p{margin:0 0 12px}.booking-conditions details{margin-top:22px}.booking-conditions details>summary{cursor:pointer;font-weight:700}.booking-conditions li{border-bottom:1px solid #e6e2da;padding-block:10px}.booking-footer{border-top:1px solid #dcd9d1;align-items:center;gap:26px;padding:30px clamp(24px,5vw,88px);display:flex}.booking-footer .booking-brand{font-size:28px}.booking-footer>span,.booking-footer nav{color:#77746d;font-size:11px}.booking-footer nav{gap:24px;margin-left:auto;display:flex}.booking-footer nav a{color:inherit}.booking-page :is(a,button,summary):focus-visible{outline-offset:5px;outline:3px solid #8e7bed}@keyframes booking-enter{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}@keyframes booking-photo-in{0%{opacity:.6;transform:scale(1.025)}to{opacity:1;transform:scale(1)}}@media (max-width:640px){.booking-hero{min-height:min(760px,100svh)}.booking-header{padding-block:23px}.booking-header .booking-brand{font-size:31px}.booking-photo{object-position:60% center}.booking-hero:after{background:linear-gradient(90deg,#0d120fe8,#0d120f65),linear-gradient(#0000,#0d120f99)}.booking-intro{padding-block:40px}.booking-intro h1{font-size:clamp(60px,15vw,84px)}.booking-description{margin-block:23px;font-size:15px}.booking-hero-foot{gap:15px;padding-bottom:24px;font-size:8px}.booking-loyalty{grid-template-columns:1fr;gap:32px;padding-block:42px}.booking-footer{flex-wrap:wrap;gap:16px}.booking-footer nav{width:100%;margin:0}}@media (prefers-reduced-motion:reduce){.booking-page *{transition:none!important;animation:none!important}}
