.grand-booking{letter-spacing:0;--booking-ink:var(--navy)}.grand-booking *{letter-spacing:0}.grand-booking .eyebrow{font-size:11px;font-weight:500}.grand-booking button,.grand-booking a,.grand-booking input,.grand-booking textarea{letter-spacing:0}.grand-booking button:focus-visible,.grand-booking a:focus-visible,.grand-booking input:focus-visible,.grand-booking textarea:focus-visible{outline:2px solid var(--gold);outline-offset:4px}.grand-booking .booking-content{width:100%;max-width:1080px;margin-inline:auto}.grand-booking .booking-calendar{border-block:1px solid var(--border);padding-block:24px}.grand-booking .booking-calendar [data-slot=calendar]{background:0 0}.grand-booking .booking-room{align-items:start}.grand-booking .booking-rate{white-space:normal;border-radius:4px;height:auto;min-height:112px}.grand-booking .booking-rate[aria-pressed=true]{box-shadow:inset 3px 0 var(--brass)}.grand-booking .booking-rate p,.grand-booking .booking-rate span{white-space:normal}.grand-booking .booking-input{background:var(--ivory);min-height:52px;font-family:var(--font-sans);border-radius:2px;padding-inline:12px;font-size:16px}.grand-booking .booking-summary{border-left:1px solid var(--border)}.grand-booking .booking-summary-inner{height:auto;position:sticky;top:112px}.grand-booking .booking-confirmation{max-width:720px}.grand-booking .booking-checkout{background:var(--warm-white);border-radius:4px;padding:24px}.grand-booking #mews-payment-checkout{width:100%;min-height:440px;overflow:visible}.grand-booking #mews-payment-checkout iframe{border:0;width:100%;max-width:100%;min-height:440px;display:block}.grand-booking .booking-reference{overflow-wrap:anywhere;font-variant-numeric:tabular-nums}.grand-booking [data-confirmation]{scroll-margin-top:132px}@media (width<=1279px) and (width>=768px){.grand-booking .booking-calendar .rdp-months{flex-direction:column}}@media (width<=767px){.grand-booking .booking-calendar{padding-block:12px}.grand-booking .booking-calendar [data-slot=calendar]{--cell-size:2.25rem;padding-inline:0}.grand-booking .booking-summary{border-left:0;border-top:1px solid var(--border)}.grand-booking .booking-summary-inner{position:static}.grand-booking .booking-rate{grid-template-columns:1fr;gap:12px}.grand-booking .booking-rate .booking-rate-price{text-align:left;flex-wrap:wrap;align-items:baseline;gap:4px 12px;display:flex}.grand-booking .booking-checkout{padding:16px 12px}.grand-booking .booking-sum{grid-template-columns:1fr;gap:8px}}@media (width<=1023px){.grand-booking{grid-template-columns:minmax(0,1fr)}.grand-booking,.grand-booking .booking-content,.grand-booking .booking-content>div{min-width:0}.grand-booking .booking-content{padding-inline:20px;padding-bottom:32px}.grand-booking .booking-room{grid-template-columns:minmax(0,1fr);min-width:0}.grand-booking .booking-room>div{min-width:0}.grand-booking .booking-room [role=group]{width:100%;max-width:480px}.grand-booking .booking-room [role=group] button{min-width:44px;min-height:44px}.grand-booking .booking-room [role=group]>div:last-child{max-width:100%;padding-bottom:4px}.grand-booking .booking-rate{grid-template-columns:minmax(0,1fr);gap:12px}.grand-booking .booking-rate>span{overflow-wrap:anywhere;min-width:0}.grand-booking .booking-rate .booking-rate-price{text-align:left;flex-wrap:wrap;align-items:baseline;gap:4px 12px;display:flex}.grand-booking .booking-summary{border-left:0;border-top:1px solid var(--border);min-width:0}.grand-booking .booking-summary-inner{padding:24px;position:static}.grand-booking .booking-summary-inner>div{min-width:0}.grand-booking .booking-summary-inner>div:nth-child(2){margin-top:24px}.grand-booking .booking-summary span,.grand-booking .booking-summary p{overflow-wrap:anywhere}.grand-booking .booking-summary-inner>div:last-child>div{grid-template-columns:minmax(0,1fr) auto;align-items:baseline;display:grid}.grand-booking[data-booking-layout=page]>div:first-child{display:contents}.grand-booking[data-booking-layout=page]>div:first-child>div{order:1;min-width:0}.grand-booking[data-booking-layout=page]>.booking-summary{order:2}.grand-booking[data-booking-layout=page]>div:first-child>.booking-footer{order:3}.grand-booking .booking-footer{padding:12px 16px calc(12px + env(safe-area-inset-bottom,0px));grid-template-columns:auto minmax(0,1fr);gap:8px;display:grid}.grand-booking .booking-footer>div{justify-content:flex-end;gap:4px;min-width:0;display:flex}.grand-booking .booking-footer button{white-space:normal;min-height:48px;padding-inline:12px}.grand-booking .booking-footer>div>button:last-child{min-width:120px}.grand-booking label{min-width:0}.grand-booking .grid:has(#mews-card-number){grid-template-columns:minmax(0,1fr);gap:20px}.grand-booking #mews-card-number,.grand-booking #mews-card-cvv{width:100%;min-height:52px}.grand-booking #mews-card-number iframe,.grand-booking #mews-card-cvv iframe{max-width:100%}.grand-booking label:has(input[type=checkbox]){cursor:pointer;min-height:48px}.grand-booking input[type=checkbox]{flex-shrink:0;width:22px;height:22px}.grand-booking label span,.grand-booking [role=alert],.grand-booking .booking-confirmation p{overflow-wrap:anywhere}.grand-booking .booking-confirmation{width:100%;min-width:0}.grand-booking .booking-confirmation button,.grand-booking .booking-confirmation a{white-space:normal;min-height:44px}.grand-booking .booking-confirmation>a{justify-content:center;align-items:center;display:flex}.grand-booking .booking-checkout{min-width:0;padding:16px 8px}.grand-booking #mews-payment-checkout{width:100%;min-width:0;min-height:520px}.grand-booking #mews-payment-checkout iframe{width:100%;max-width:100%;min-height:520px}.grand-booking .booking-sum{grid-template-columns:minmax(0,1fr);gap:8px}}@media (width<=767px){.grand-booking .booking-content{padding-top:28px}.grand-booking>div:first-child>div:first-child>.flex>div{min-width:0}.grand-booking .booking-calendar [data-slot=calendar]{--cell-size:min(44px, calc((100vw - 40px) / 7));width:100%}.grand-booking .booking-calendar .rdp-months,.grand-booking .booking-calendar .rdp-month{width:100%}.grand-booking .booking-calendar .rdp-nav button{min-width:44px;min-height:44px}.grand-booking .booking-calendar [data-day]{min-height:44px}.grand-booking .booking-content h2{font-size:32px;line-height:1.15}.grand-booking .booking-content .grid:has(>label>.booking-input){grid-template-columns:minmax(0,1fr);gap:20px}.grand-booking .booking-content .grid:has(>div>button[aria-label$=\ −]){gap:12px}.grand-booking .booking-content .grid:has(>div>button[aria-label$=\ −]) button{width:40px;min-width:40px}.grand-booking .booking-confirmation h2{font-size:32px}}@media (prefers-reduced-motion:reduce){.grand-booking *,.grand-booking :before,.grand-booking :after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
