/* Presentation only: prices, deposits, carts and gateway messages remain server-side. */
.sg-booking .sg-booking-progress{margin:28px 0 0;padding:0 0 8px;gap:16px 24px}
.sg-booking .sg-booking-search .inner-room-details>form{align-items:end}
.sg-booking .sg-booking-search .rx-side-from-buttons{margin:0;padding:0}
.sg-booking .sg-booking-search .sg-search-submit{grid-column:3;align-self:end}
.sg-booking .sg-booking-search .sg-search-submit button{width:100%;min-height:48px;margin:0}
.sg-booking .sg-booking-search .form-control,.sg-booking .sg-booking-search select{height:48px}
@media(min-width:768px){.sg-booking .sg-booking-search .inner-room-details>form{grid-template-columns:repeat(4,minmax(0,1fr))}.sg-booking .sg-booking-search .sg-room-count-field{grid-column:4;grid-row:1}.sg-booking .sg-booking-search .rx-room-details-from:nth-child(4){grid-column:1/3}.sg-booking .sg-booking-search .rx-room-details-from:nth-child(5){grid-column:3}.sg-booking .sg-booking-search .sg-search-submit{grid-column:4;grid-row:2}}
@media(max-width:767px){.sg-booking .sg-booking-progress{margin-top:22px}.sg-booking .sg-booking-search .sg-room-count-field,.sg-booking .sg-booking-search .sg-search-submit{grid-column:1/-1}.sg-booking .sg-booking-search .sg-room-count-field select{max-width:none}}
.sg-booking .sg-booking-search.d-none{display:none!important}
@media(max-width:767px){.sg-booking .sg-booking-search.sg-search-complete{display:none!important}}
@media(max-width:767px){.sg-booking .sg-booking-search .rx-room-details-sidebar{padding:20px 16px}.sg-booking .sg-booking-search .rx-room-details-sidebar .inner-room-details{padding:0}}
.sg-checkout-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:24px;flex-wrap:wrap}.sg-checkout-heading h2{font-size:30px;margin:0}.sg-checkout-heading>a{font-size:13px;min-height:44px;display:flex;align-items:center;color:#80603a}
.sg-booking #form_date{padding:28px;background:#fffdf8;border:1px solid var(--sg-line);border-radius:4px}
.sg-booking #form_date .form-group.row{margin:0;row-gap:8px}.sg-booking #form_date .form-group.row>[class*="col-sm"]{width:100%;padding:0}
.sg-booking #form_date label{font-size:14px;line-height:1.5}.sg-booking #form_date .col-form-label{padding-top:0;padding-bottom:0}.sg-booking #form_date .form-control{font-size:16px;background:#fff;border-color:var(--sg-line);padding:12px;min-height:48px}
.sg-booking #form_date select.form-control{height:50px;line-height:1.5}
.sg-booking #form_date .form-control[readonly]{background:#eee8dc;font-weight:600;color:var(--sg-ink)}
.sg-booking .needs-validation.was-validated :is(.form-control,.form-select,.form-check-input):invalid{border-color:#b42332!important}
.sg-booking .needs-validation.was-validated :is(.form-control,.form-select,.form-check-input):invalid:focus{border-color:#b42332!important;box-shadow:0 0 0 3px rgba(180,35,50,.16)}
.sg-booking #form_date.was-validated .form-check-input:invalid~.form-check-label{color:#b42332}
.sg-booking .booking-total-line{display:flex;justify-content:space-between;gap:20px;padding:20px 0;border-top:1px solid var(--sg-line);border-bottom:1px solid var(--sg-line);font-size:18px}
.sg-booking .sg-billing-panel{margin-top:24px!important;padding:20px;background:var(--sg-paper);border:1px solid var(--sg-line);border-radius:4px}
.sg-booking .sg-billing-panel>.mt-3:first-child{margin-top:0!important}.sg-booking .sg-billing-panel .alert{background:transparent!important;border:0!important;text-align:left!important;padding:0;margin:0;font-size:18px}
.sg-booking #form_date .form-check{padding-left:0;display:flex;align-items:flex-start;gap:12px;min-height:44px;margin-bottom:8px}.sg-booking #form_date .form-check-inline{display:inline-flex;margin-right:24px}
.sg-booking #form_date .form-check-input{display:block!important;opacity:1!important;position:relative!important;float:none;margin:3px 0 0!important;min-width:22px;width:22px;height:22px;accent-color:var(--sg-gold)}
.sg-booking #form_date input[type=radio]+label{padding:0;line-height:1.6;min-height:32px}.sg-booking #form_date input[type=radio]+label:before,.sg-booking #form_date input[type=radio]+label:after{display:none}
.sg-booking #form_date .form-check-input:checked{background-color:var(--sg-gold);border-color:var(--sg-gold)}
.sg-booking .booking-final-submit{width:100%;white-space:normal;padding:16px 20px;font-size:16px;min-height:52px}
.sg-booking .sg-booking-confirmation{margin:0;padding:20px}
.sg-booking .sg-booking-payment-button{display:inline-flex;align-items:center;justify-content:center;gap:10px;max-width:100%;box-sizing:border-box;white-space:normal;overflow-wrap:anywhere;padding:16px 20px;border-radius:4px;text-align:center}
.sg-booking .sg-booking-payment-button>i{flex-shrink:0}
.sg-booking .sg-cart .btn{min-width:44px;min-height:44px;display:inline-flex;align-items:center;justify-content:center}.sg-booking .sg-cart .chartbox{display:flow-root}.sg-booking .sg-cart .chartbox small{font-size:12px}
.sg-booking .sg-cart .sg-edit-search>i{margin-inline-end:8px;flex-shrink:0;transform:translateY(-2px)}
.sg-booking .sticky-booking{background:#fffdf8;border:1px solid var(--sg-line);padding:12px;margin:20px 0!important;border-radius:4px;z-index:1010}.sg-booking .sticky-booking button{white-space:normal;line-height:1.5;min-height:48px}
.sg-booking .room-fullscreen-modal .room-modal-content{background:var(--sg-paper)}.sg-booking .room-fullscreen-modal .room-modal-topbar{background:#fffdf8;border-bottom:1px solid var(--sg-line)}
.sg-booking .room-modal-gallery-main{max-height:393px;background:#e9e3d8;border-radius:3px}.sg-booking .room-modal-gallery-main img{height:393px;max-height:393px;object-fit:contain;border-radius:3px}
.sg-payment-card{max-width:720px;margin:40px auto;padding:40px;background:#fffdf8;border:1px solid var(--sg-line);border-radius:4px;text-align:center}.sg-payment-card h1{font-size:clamp(28px,4vw,38px);margin:18px 0}.sg-payment-card p{line-height:1.7}.sg-payment-symbol{color:var(--sg-gold);font-size:40px}.sg-payment-amount{font-size:28px;font-weight:600;margin:24px 0;color:#80603a}.sg-payment-card .sg-button{min-height:48px;white-space:normal}.sg-payment-card .sg-payment-reference{overflow-wrap:anywhere;font-size:12px;color:var(--sg-muted)}
@media(min-width:1200px){.sg-booking #form_date .form-group.row:has(>label:nth-of-type(2)){display:grid;grid-template-columns:1fr 1fr;column-gap:20px}.sg-booking #form_date .form-group.row:has(>label:nth-of-type(2))>label:nth-of-type(2){grid-column:2;grid-row:1}}
@media(max-width:767px){.sg-booking #form_date{padding:20px}.sg-booking .sg-billing-panel{padding:16px}.sg-checkout-heading h2{font-size:26px}.sg-booking .sg-cart{padding:18px!important}.sg-booking .sg-booking-columns{gap:22px}.sg-booking .room-modal-gallery-main img{height:280px}.sg-payment-card{margin:24px 12px;padding:28px 20px}.sg-payment-card .sg-button{width:100%}}
