.booking-page{color:#eee5d5;isolation:isolate;background:#050b08;min-height:100vh}.booking-backdrop{z-index:-2;pointer-events:none;background:#050b08;position:fixed;inset:0;overflow:hidden}.booking-backdrop:after{content:"";background:linear-gradient(90deg,#0309067a,#0309065c),linear-gradient(#03090633,#0309067a 58%,#030906c7);position:absolute;inset:0}.booking-backdrop img{object-fit:cover;opacity:.78;filter:brightness(.76)saturate(.94)contrast(1.08);width:100%;height:100%;transition:opacity .4s ease, transform .8s var(--ease-luxury);transform:scale(1.025)}.booking-backdrop img.is-crossfading{opacity:.2;transform:scale(1.055)}.booking-page:before{content:"";z-index:-1;pointer-events:none;background:radial-gradient(circle at 12% 15%,#1a684421,#0000 34%),radial-gradient(circle at 85% 70%,#be8b3514,#0000 32%);position:fixed;inset:0}.booking-header{position:fixed}.booking-back{color:#d8b66b;font:700 .72rem/1 var(--sans);letter-spacing:.16em;text-transform:uppercase}.booking-shell{width:min(1240px,100% - 40px);margin:0 auto;padding:150px 0 80px;position:relative}.booking-intro{max-width:820px;margin-bottom:44px}.booking-intro h1{color:#f4ead8;max-width:780px;font:400 clamp(2.5rem,5.3vw,4.9rem)/1.03 var(--display);letter-spacing:var(--heading-tracking);text-transform:uppercase;margin:15px 0 18px}.booking-intro>p:last-child{color:#aaa398;max-width:620px;font-size:1.05rem;line-height:1.8}.booking-layout{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#030906c7;border:1px solid #cb9e494d;grid-template-columns:minmax(0,1.08fr) minmax(360px,.92fr);display:grid;box-shadow:0 35px 100px #0000007a}.room-picker{border-right:1px solid #cb9e4938;padding:30px}.service-tabs{gap:8px;margin-bottom:22px;display:flex}.service-tabs button{color:#968e80;text-transform:uppercase;letter-spacing:.14em;font-family:var(--display);cursor:pointer;background:0 0;border:1px solid #cb9e4940;flex:1;padding:15px;font-weight:700}.service-tabs button.is-active{color:#11160e;background:linear-gradient(135deg,#d8b66b,#a8782e);border-color:#d5ae5e}.room-preview{background:#020403;min-height:430px;position:relative;overflow:hidden}.room-preview:after{content:"";background:linear-gradient(#0000 52%,#000000e0);position:absolute;inset:0}.room-preview img{object-fit:cover;width:100%;height:430px;transition:opacity .35s,transform .7s}.room-preview img.is-crossfading{opacity:.25;transform:scale(1.025)}.room-preview div{z-index:1;gap:7px;display:grid;position:absolute;bottom:22px;left:24px;right:24px}.room-preview small{color:#d5ae5e;text-transform:uppercase;letter-spacing:.16em;font-size:.66rem}.room-preview strong{font:500 1.55rem/1.12 var(--display);letter-spacing:.045em;text-transform:uppercase}.room-options{grid-template-columns:repeat(3,1fr);gap:8px;margin-top:12px;display:grid}.room-option{color:#c6bdad;text-align:left;cursor:pointer;background:#08100b;border:1px solid #cb9e4933;min-height:78px;padding:12px}.room-option[hidden]{display:none}.room-option span{color:#b98b3b;margin-bottom:6px;font-size:.65rem;display:block}.room-option strong{letter-spacing:.05em;font-size:.72rem;line-height:1.35}.room-option.is-active{border-color:#d5ae5e;box-shadow:inset 0 0 0 1px #d5ae5e33}.booking-form{align-self:center;padding:34px}.honeypot-field{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;overflow:hidden;position:absolute!important}.field-grid{grid-template-columns:1fr 1fr;gap:18px 14px;display:grid}.booking-form label,.booking-field{gap:8px;display:grid}.booking-form label>span,.booking-field>span{color:#c9a357;letter-spacing:.13em;text-transform:uppercase;font-size:.67rem;font-weight:700}.booking-form input,.booking-form select,.booking-form textarea,.picker-trigger{color:#eee5d5;width:100%;min-height:52px;font:inherit;background:#00000059;border:1px solid #cb9e4940;border-radius:0;outline:none;padding:14px}.booking-form input:focus,.booking-form select:focus,.booking-form textarea:focus,.picker-trigger:focus-visible{border-color:#d5ae5e;box-shadow:0 0 0 2px #d5ae5e1a}.picker-field{position:relative}.picker-trigger{color:#8f897e;text-align:left;cursor:pointer;justify-content:space-between;align-items:center;display:flex}.picker-trigger.has-value{color:#eee5d5}.picker-trigger[aria-invalid=true]{border-color:#cb715d}.picker-trigger i{color:#c9a357;font-size:1.1rem;font-style:normal}.picker-panel{z-index:20;background:#07100b;border:1px solid #d5ae5e80;width:min(360px,100vw - 56px);padding:16px;position:absolute;top:calc(100% + 8px);box-shadow:0 24px 70px #000000ad}.picker-panel[hidden]{display:none}.calendar-toolbar{grid-template-columns:38px 1fr 38px;align-items:center;margin-bottom:14px;display:grid}.calendar-toolbar strong{color:#f0e6d4;text-align:center;font:600 .88rem/1.2 var(--display);text-transform:capitalize}.calendar-toolbar button,.calendar-grid button,.time-grid button,.duration-grid button{color:#d7cfc0;cursor:pointer;background:0 0;border:1px solid #0000}.calendar-toolbar button{color:#d8b66b;width:38px;height:38px;font-size:1rem}.calendar-toolbar button:hover:not(:disabled),.calendar-toolbar button:focus-visible{border-color:#d5ae5e73}.calendar-toolbar button:disabled{opacity:.25;cursor:default}.calendar-weekdays,.calendar-grid{grid-template-columns:repeat(7,1fr);gap:4px;display:grid}.calendar-weekdays{color:#8d806a;text-align:center;margin-bottom:5px;font-size:.62rem;font-weight:700}.calendar-grid button,.calendar-spacer{aspect-ratio:1;min-width:0}.calendar-grid button{font-size:.75rem}.calendar-grid button:hover:not(:disabled),.calendar-grid button:focus-visible,.time-grid button:hover,.time-grid button:focus-visible,.duration-grid button:hover,.duration-grid button:focus-visible{background:#c99a451f;border-color:#c99a45;outline:none}.calendar-grid button:disabled{color:#4f504b;cursor:default}.calendar-grid button.is-today{color:#e2bf75;box-shadow:inset 0 0 0 1px #e2bf7559}.time-grid button.is-recommended:not(.is-selected){color:#e2bf75;box-shadow:inset 0 0 0 1px #e2bf7538}.calendar-grid button.is-selected,.time-grid button.is-selected,.duration-grid button.is-selected{color:#09100d;background:linear-gradient(135deg,#d8b66b,#a8782e);border-color:#d8b66b;font-weight:800}.time-panel{right:0}.time-panel>p,.duration-panel>p{color:#928a7c;margin:0 0 12px;font-size:.72rem}.time-grid{scrollbar-color:#9e7430 #0a140e;grid-template-columns:repeat(4,1fr);gap:6px;max-height:288px;display:grid;overflow-y:auto}.time-grid button{min-height:42px;font-size:.76rem}.duration-grid{grid-template-columns:repeat(2,1fr);gap:6px;display:grid}.duration-grid button{min-height:44px;font-size:.8rem}.field-full{margin-top:18px}.turnstile-slot{color:#817a6e;border:1px dashed #cb9e4947;margin:18px 0;padding:14px;font-size:.75rem;line-height:1.5}.form-status{color:#d7b768;min-height:24px;font-size:.83rem;line-height:1.5}.submit-booking{cursor:pointer;border:0;width:100%}.booking-note{color:#7f786e;margin-top:14px;font-size:.72rem;line-height:1.55}@media (width<=900px){.booking-layout{grid-template-columns:1fr}.room-picker{border-bottom:1px solid #cb9e4938;border-right:0}}@media (width<=600px){.booking-shell{width:min(100% - 28px,1240px);padding-top:120px}.booking-header{padding-inline:18px}.booking-header .brand__text{display:none}.booking-intro{margin-bottom:28px}.booking-intro h1{font-size:clamp(2.15rem,12vw,3.25rem)}.booking-layout{margin-inline:-2px}.room-picker,.booking-form{padding:18px}.room-preview,.room-preview img{height:320px;min-height:320px}.room-options,.field-grid{grid-template-columns:1fr}.room-option{min-height:58px}.picker-panel{left:0;right:auto}.time-grid{grid-template-columns:repeat(4,1fr)}}
