:root{font-family:"Trebuchet MS","Segoe UI",sans-serif;color:#171817;background:#0d0e0d;font-synthesis:none;-webkit-font-smoothing:antialiased}*{box-sizing:border-box}body{margin:0;background:#0d0e0d}button,input{font:inherit}.journey{position:relative;width:min(100%,460px);height:100dvh;min-height:620px;margin:auto;overflow:hidden;background:#f7f7f4}.journey>header{height:76px;display:flex;align-items:center;justify-content:space-between;padding:12px 20px;background:#111;color:#fff}.journey>header img{width:auto;height:48px}.journey>header div{width:120px}.journey>header span{display:block;margin-bottom:7px;color:#ccc;font-size:11px;text-align:right}.journey>header i{display:block;height:3px;background:#444}.journey>header b{display:block;width:33%;height:100%;background:#fff;transition:width .25s}.screen{position:absolute;inset:76px 0 0;display:none;padding:22px 20px 92px;overflow:hidden;background:#f7f7f4}.screen.active{display:block}.copy p{margin:0 0 5px;color:#70736e;font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.copy h1{margin:0;font-size:28px;line-height:1.08}.copy span{display:block;margin-top:7px;color:#686a66;font-size:13px}.quick,.pills{display:flex;gap:7px;overflow-x:auto;scrollbar-width:none}.quick{margin-top:18px}.quick button,.pills button{flex:0 0 auto;height:36px;border:1px solid #d5d5d0;background:#fff;padding:0 13px}.quick button.active,.pills button.active{border-color:#126fc5;background:#126fc5;color:#fff}.month{display:flex;align-items:center;justify-content:space-between;margin:17px 0 8px;text-transform:capitalize}.month button,.back{border:0;background:transparent;color:#51534f}.month strong{font-size:13px}.date-row,.room-row{display:flex;gap:9px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none}.date-row button{width:58px;height:66px;flex:0 0 58px;border:1px solid #ddd;background:#fff;scroll-snap-align:start}.date-row span{display:block;color:#777;font-size:10px;text-transform:uppercase}.date-row strong{display:block;margin-top:4px;font-size:19px}.date-row button.active{border-color:#111;background:#111;color:#fff}.choice{margin-top:18px}.choice h2{margin:0 0 8px;font-size:13px}.guest-note{margin:17px 0 0;padding:10px 12px;background:#e8f3ea;color:#465449;font-size:11px}.screen>footer{position:absolute;right:0;bottom:0;left:0;height:78px;display:flex;align-items:center;justify-content:space-between;gap:12px;border-top:1px solid #ddd;background:#fff;padding:12px 20px}.screen>footer div{min-width:0}.screen>footer span{display:block;overflow:hidden;color:#777;font-size:10px;text-overflow:ellipsis;white-space:nowrap}.screen>footer strong{display:block;margin-top:3px;font-size:13px}.screen>footer .primary-stay{color:#171817;font-size:13px;font-weight:700}.screen>footer button,.success>a{height:45px;border:0;background:#126fc5;color:#fff;padding:0 18px;font-weight:700;text-decoration:none}.screen>footer button:disabled{opacity:.4}.back{margin:-4px 0 14px;padding:0}.room-row{margin:20px -20px 0;padding:0 20px 8px}.room-card{width:78%;min-width:78%;height:330px;display:flex;flex-direction:column;justify-content:flex-end;border:1px solid #d5d5d0;background:linear-gradient(180deg,#ededeb 0 54%,#fff 54%);padding:18px;scroll-snap-align:center}.room-card.selected{outline:2px solid #126fc5;outline-offset:-2px}.room-card small{color:#777}.room-card h2{margin:5px 0 0;font-size:23px}.room-card p{margin:4px 0 20px;color:#666;font-size:12px}.room-card strong{font-size:22px}.room-card button{height:42px;margin-top:16px;border:0;background:#126fc5;color:#fff;font-weight:700}.state{width:100%;padding:40px 20px;background:#fff;color:#666;text-align:center}.summary{display:grid;grid-template-columns:1fr 1fr;gap:1px;margin-top:18px;background:#ddd}.summary div{background:#fff;padding:10px}.summary span{display:block;color:#777;font-size:9px}.summary strong{display:block;margin-top:3px;font-size:12px}.fields{display:grid;gap:9px;margin-top:14px}.fields label{display:grid;gap:4px;font-size:10px;font-weight:700}.fields input{width:100%;height:41px;border:1px solid #d6d6d1;background:#fff;padding:0 11px}.message{margin:8px 0 0;color:#a33;font-size:11px}.success{padding-top:90px;text-align:center}.success-mark{display:grid;width:58px;height:58px;margin:0 auto 24px;place-items:center;border-radius:50%;background:#dcefe1;color:#267243;font-size:25px}.success a{display:flex;align-items:center;justify-content:center;margin-top:28px}.success a.secondary{margin-top:9px;border:1px solid #111;background:transparent;color:#111}@media(min-width:700px){.journey{height:min(860px,calc(100dvh - 28px));margin-top:14px;border:1px solid #353535;border-radius:24px;box-shadow:0 24px 70px #0008}.screen{border-radius:0 0 24px 24px}}
.language-toggle{position:absolute;z-index:20;top:15px;right:145px;height:28px;border:1px solid #777;border-radius:14px;background:#111;color:#fff;padding:0 10px;font-size:10px;font-weight:700}.language-toggle:focus-visible{outline:2px solid #fff;outline-offset:2px}
.date-select{display:flex;align-items:center;gap:6px;height:36px;border:1px solid #d5d5d0;background:#fff;padding:0 8px}.date-select.active{border-color:#126fc5;box-shadow:inset 0 0 0 1px #126fc5}.date-select span{color:#126fc5;font-size:13px}.date-select input{width:112px;border:0;background:transparent;color:#171817;font-size:11px;outline:0}
.other-nights{display:flex;height:36px;align-items:center;gap:6px;border:1px solid #d5d5d0;background:#fff;padding:0 9px;font-size:12px}.other-nights input{width:38px;border:0;border-bottom:1px solid #aaa;background:transparent;text-align:center;outline:0}
.room-row{display:grid;gap:6px;margin:15px 0 0;padding:0;overflow:visible}.room-card{width:100%;min-width:0;height:auto;display:grid;grid-template-columns:1fr auto auto auto;align-items:center;gap:10px;border:1px solid #d5d5d0;background:#fff;padding:9px 10px}.room-card span{display:grid;gap:2px}.room-card span:nth-child(2){text-align:right}.room-card h2{margin:0;font-size:16px}.room-card strong{font-size:14px}.room-card p{display:none}.room-card button,.room-details{height:34px;margin:0;padding:0 12px}.room-details{display:flex;align-items:center;justify-content:center;border:1px solid #126fc5;color:#126fc5;font-size:11px;font-weight:700;text-decoration:none}
.confirmation-dates{display:grid;gap:3px;margin-top:15px;border:2px solid #111;background:#fff;padding:11px 12px}.confirmation-dates span,.confirmation-dates small{color:#6c6d69;font-size:10px;text-transform:uppercase}.confirmation-dates strong{font-size:17px}
.payment{overflow-y:auto;padding-bottom:24px}.payment .success-mark{width:34px;height:34px;margin:0 0 9px;font-size:16px}.payment .copy{text-align:left}.payment .copy h1{font-size:23px}.payment-stay{display:grid;gap:3px;margin-top:15px;border-top:1px solid #ddd;border-bottom:1px solid #ddd;padding:12px}.payment-stay span{color:#555;font-size:11px}.payment-stay b{margin-top:4px;font-size:20px}.payment-section,.next-step{padding-top:16px}.payment-section h2,.next-step h2{margin:0 0 6px;font-size:16px}.payment-section>p,.next-step p{margin:0 0 12px;color:#666;font-size:11px;line-height:1.45}.payment-option{display:grid;gap:5px;margin-top:8px;border:1px solid #ddd;background:#fff;padding:11px}.payment-option small{font-size:9px}.payment-option button,.next-step a{display:flex;height:38px;align-items:center;justify-content:center;border:0;background:#008f87;color:#fff;font-size:11px;font-weight:700;text-decoration:none}.payment-option button:disabled{background:#0c376d;color:#fff;opacity:.72}.email-note{text-align:center}.next-step{border-top:1px solid #ddd}.next-step a{border:1px solid #008f87;background:transparent;color:#006f69}

.screen>footer.checkout-footer{height:86px;gap:8px;padding:9px 12px}.checkout-total{flex:0 0 48px}.checkout-options{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px;flex:1}.screen>footer .checkout-options button{display:flex;height:58px;min-width:0;align-items:center;justify-content:center;flex-direction:column;gap:3px;padding:4px;font-size:8px;line-height:1.12;text-align:center}.mp-mark,.button-icon{display:grid!important;place-items:center;width:20px;height:20px;border-radius:50%;background:#fff;color:#126fc5!important;font-size:7px!important;font-weight:900}.button-icon{font-size:11px!important}.checkout-options button:disabled{opacity:.55}

/* Compact reservation flow */
.screen[data-screen="rooms"]{overflow-y:auto;padding:16px 14px 20px}
.screen[data-screen="rooms"]>.back{margin:0 0 10px}
.screen[data-screen="rooms"] .room-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:0;padding:0;overflow:visible}
.room-column{min-width:0}.room-column h2{margin:0 0 6px;font-size:12px;line-height:1.2}.room-column>div{display:grid;gap:5px}
.screen[data-screen="rooms"] .room-card{width:100%;min-width:0;min-height:42px;height:auto;display:flex;align-items:center;justify-content:space-between;gap:5px;border:1px solid #d5d5d0;background:#fff;padding:7px 8px;color:#171817;text-align:left;cursor:pointer}
.screen[data-screen="rooms"] .room-card span{display:block;min-width:0;overflow:hidden;font-size:10px;font-weight:700;text-overflow:ellipsis;white-space:nowrap}.screen[data-screen="rooms"] .room-card strong{flex:0 0 auto;font-size:10px}.screen[data-screen="rooms"] .room-card:active,.screen[data-screen="rooms"] .room-card:focus-visible{border-color:#126fc5;outline:1px solid #126fc5}
.room-empty{margin:0;border:1px dashed #d5d5d0;padding:9px 6px;color:#777;font-size:9px;text-align:center}.screen[data-screen="rooms"] .state{grid-column:1/-1;margin:0;padding:24px 10px;font-size:10px}
.checkout-screen{overflow-y:auto;padding-bottom:82px}.checkout-summary-card{display:grid;gap:4px;border:1px solid #d8dad5;border-radius:6px;background:#fff;padding:12px 14px}.checkout-summary-card strong{font-size:14px}.checkout-summary-card span,.checkout-summary-card small{color:#5f625d;font-size:10px}
.checkout-screen .fields{grid-template-columns:1fr 1fr;gap:8px;margin-top:12px}.checkout-screen .fields label:nth-child(-n+2){grid-column:1/-1}.checkout-screen .fields select{width:100%;height:41px;border:1px solid #d6d6d1;background:#fff;padding:0 10px}
.payment-methods{margin-top:15px;border-top:1px solid #ddd;padding-top:13px}.payment-methods h2{margin:0 0 8px;font-size:13px}.checkout-screen .checkout-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.checkout-screen .checkout-options button{display:flex;min-width:0;height:48px;align-items:center;justify-content:center;gap:5px;border:1px solid #d1d4cf;background:#fff;padding:5px;color:#171817;font-size:9px}.checkout-screen .checkout-options button:disabled{opacity:.55}
.screen>footer.checkout-footer{height:64px;padding:9px 15px}.screen>footer.checkout-footer .checkout-total strong{font-size:17px}
@media(max-width:699px){.journey{min-height:0}.journey>header{height:71px;padding:11px 19px}.journey>header img{height:45px}.journey>header div{width:113px}.journey>header span{margin-bottom:6px;font-size:10px}.journey>header i{height:3px}.screen{inset:71px 0 0;padding:18px 19px 86px}.copy h1{font-size:26px}.quick{margin-top:18px}.quick button,.pills button,.date-select,.other-nights{height:35px;font-size:13px}.choice{margin-top:18px}.choice h2{font-size:13px}.guest-note{margin-top:16px;padding:10px 11px;font-size:10px}.screen>footer{height:74px;padding:11px 19px}.screen>footer button{height:43px;font-size:13px}.checkout-screen{padding:15px 18px 88px}.checkout-summary-card{gap:4px;padding:11px 13px}.checkout-summary-card strong{font-size:14px}.checkout-summary-card span,.checkout-summary-card small{font-size:10px}.checkout-screen .fields{gap:8px;margin-top:11px}.checkout-screen .fields label{font-size:10px}.checkout-screen .fields input,.checkout-screen .fields select{height:39px;padding-inline:10px;font-size:16px}.payment-methods{margin-top:14px;padding-top:13px}.payment-methods h2{margin-bottom:8px;font-size:13px}.checkout-screen .checkout-options button{height:50px;font-size:10px}.screen>footer.checkout-footer{height:69px}.screen>footer.checkout-footer .checkout-total span{font-size:10px}.screen>footer.checkout-footer .checkout-total strong{font-size:18px}}
