:root{--booking-engine-black: #0f172a;--booking-engine-accent: #f59e0b;--booking-engine-accent-soft: #fff4e5;--booking-engine-accent-soft-2: #ffd9ad;--booking-engine-accent-strong: #a75c05;--booking-engine-accent-ink: #1a1a1a;--booking-engine-accent-ring: rgba(245, 158, 11, 0.3);--booking-engine-white: #ffffff;--booking-engine-muted: #667085;--booking-engine-border: #e6e8ec;--booking-engine-border-strong: #d0d6df;--booking-engine-bg: #f5f6f8;--booking-engine-success: #13795b;--booking-engine-warn: #b75a00;--booking-engine-danger: #c53636;--booking-engine-shadow: 0 10px 30px rgba(16, 24, 40, 0.08);--booking-engine-shadow-soft: 0 4px 14px rgba(16, 24, 40, 0.06)}*{box-sizing:border-box}body.booking-engine-be-body{margin:0;background:var(--booking-engine-bg);color:var(--booking-engine-black);min-height:100vh;display:flex;flex-direction:column;font-family:"Inter","Segoe UI",Roboto,Helvetica,Arial,sans-serif}.booking-engine-be-shell{max-width:1260px;margin:0 auto;width:100%;padding:18px 16px 34px;flex:1 0 auto}.booking-engine-topbar{position:sticky;top:0;z-index:60;background:rgba(255,255,255,0.95);backdrop-filter:blur(9px);border-bottom:1px solid var(--booking-engine-border)}.booking-engine-topbar-inner{max-width:1260px;margin:0 auto;min-height:72px;padding:10px 16px;display:flex;align-items:center;justify-content:space-between;gap:16px}.booking-engine-brand{min-width:0}.booking-engine-brand h1{margin:0;font-size:1rem;font-weight:700}.booking-engine-help-cta{border:0;border-radius:0;padding:0;background:transparent;color:#0f6d4e;text-decoration:none;font-size:0.84rem;font-weight:700;transition:color 0.2s ease,text-decoration-color 0.2s ease;max-width:100%}.booking-engine-help-cta:hover{color:#0b5f45;text-decoration:underline}.booking-engine-help-cta--phone{display:inline-flex;align-items:center;gap:6px;white-space:nowrap;line-height:1}.booking-engine-help-cta-icon{width:14px;height:14px;flex:0 0 auto}.booking-engine-help-cta-number{letter-spacing:0.01em}.booking-engine-card{background:#fff;border:1px solid var(--booking-engine-border);border-radius:16px;box-shadow:var(--booking-engine-shadow);min-width:0}.booking-engine-hero{padding:20px;display:grid;gap:18px;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr)}@media(min-width:1024px){.booking-engine-hero{margin-top:60px}}.booking-engine-hero-media{border-radius:14px;position:relative;overflow:hidden;padding:10px}.booking-engine-hero-showcase{display:grid;gap:12px}.booking-engine-hero-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:repeat(3,minmax(0,1fr));grid-auto-rows:minmax(0,1fr);gap:9px;min-height:324px;height:clamp(320px,42vw,448px)}.booking-engine-hero-gallery-item{border:0;padding:0;appearance:none;cursor:pointer;position:relative;margin:0;border-radius:12px;overflow:hidden;background:#d7dee8;box-shadow:var(--booking-engine-shadow-soft);transition:transform 0.22s ease,box-shadow 0.22s ease}.booking-engine-hero-gallery-item.is-main{grid-column:1 / span 2;grid-row:1 / span 3}.booking-engine-hero-gallery-item:not(.is-main){grid-column:span 1}.booking-engine-hero-gallery-count-1{grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(0,1fr)}.booking-engine-hero-gallery-count-1 .booking-engine-hero-gallery-item.is-main{grid-column:auto;grid-row:auto}.booking-engine-hero-gallery-count-2{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:minmax(0,1fr)}.booking-engine-hero-gallery-count-2 .booking-engine-hero-gallery-item.is-main{grid-column:auto;grid-row:auto}.booking-engine-hero-gallery-count-3{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(2,minmax(0,1fr))}.booking-engine-hero-gallery-count-3 .booking-engine-hero-gallery-item.is-main{grid-column:1 / span 2;grid-row:1}.booking-engine-hero-gallery-item:hover{transform:translateY(-1px);box-shadow:0 10px 22px rgba(16,24,40,0.15)}.booking-engine-hero-gallery-item img{width:100%;height:100%;object-fit:cover;display:block;transform:scale(1.001);transition:transform 0.32s ease}.booking-engine-hero-gallery-item:hover img{transform:scale(1.04)}.booking-engine-hero-gallery-skeleton{position:absolute;inset:0;background:linear-gradient(95deg,rgba(255,255,255,0.2) 25%,rgba(255,255,255,0.42) 37%,rgba(255,255,255,0.2) 63%);background-size:180% 100%;animation:bookingEngineShimmer 1.3s linear infinite;pointer-events:none}.booking-engine-hero-gallery-item.is-loaded .booking-engine-hero-gallery-skeleton{opacity:0}.booking-engine-hero-gallery-item img{position:relative;z-index:1}.booking-engine-hero-gallery-overlay{position:absolute;inset:0;z-index:2;display:inline-flex;align-items:center;justify-content:center;gap:7px;font-size:0.84rem;font-weight:700;color:#fff;background:linear-gradient(180deg,rgba(7,11,19,0.18) 0%,rgba(7,11,19,0.72) 100%)}.booking-engine-photo-badge{position:absolute;top:18px;left:18px;z-index:3;border-radius:999px;border:1px solid rgba(255,255,255,0.5);background:rgba(5,10,18,0.66);color:#fff;font-size:0.73rem;font-weight:700;padding:6px 11px;display:inline-flex;align-items:center;gap:6px;backdrop-filter:blur(5px)}.booking-engine-photo-badge i{font-size:0.82rem}@keyframes bookingEngineShimmer{0%{background-position:200% 0}100%{background-position:-200% 0}}.booking-engine-hero-amenities{border:1px solid var(--booking-engine-border);border-radius:12px;background:#fff;padding:12px}.booking-engine-hero-amenities h3{margin:0 0 10px;font-size:0.92rem;font-weight:700;color:#1f2937}.booking-engine-hero-amenity-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 12px}.booking-engine-hero-amenity-item{display:flex;align-items:flex-start;gap:8px;font-size:0.82rem;color:#334155;line-height:1.35}.booking-engine-hero-amenity-item i{color:#159947;font-size:0.95rem;line-height:1.2;margin-top:1px}.booking-engine-search-card{padding:20px}.booking-engine-section-title{margin:0;font-size:1.08rem;font-weight:700}.booking-engine-subline{font-size:0.82rem;color:var(--booking-engine-muted)}.booking-engine-search-grid{display:grid;gap:10px;grid-template-columns:repeat(2,minmax(0,1fr))}.booking-engine-field{display:flex;flex-direction:column;gap:6px}.booking-engine-field-full{grid-column:1 / -1}.booking-engine-field-right{grid-column:2}.booking-engine-input-with-icon{position:relative}.booking-engine-input-with-icon input{padding-right:38px}.booking-engine-input-with-icon i{position:absolute;right:12px;top:50%;transform:translateY(-50%);font-size:0.95rem;color:#16a34a;display:none}.booking-engine-input-with-icon.has-valid i{display:inline-block}.booking-engine-promo-applied-text{font-size:0.8rem;color:#15803d;font-weight:600}.booking-engine-field label{font-size:0.74rem;color:#4a5568;text-transform:uppercase;letter-spacing:0.08em;font-weight:700}.booking-engine-field input,.booking-engine-field select,.booking-engine-field textarea{width:100%;min-height:46px;border:1px solid #d5dae1;border-radius:12px;padding:10px 12px;font-size:0.92rem;background:#fff;transition:border-color 0.2s ease,box-shadow 0.2s ease}.booking-engine-field textarea{min-height:96px;resize:vertical}.booking-engine-field input:focus,.booking-engine-field select:focus,.booking-engine-field textarea:focus{border-color:var(--booking-engine-accent);box-shadow:0 0 0 3px var(--booking-engine-accent-ring);outline:none}.booking-engine-guest-stepper{display:grid;gap:10px;grid-template-columns:repeat(2,minmax(0,1fr))}.booking-engine-counter{border:1px solid #d5dae1;border-radius:12px;padding:11px;display:flex;align-items:center;justify-content:space-between;gap:8px;background:#fff}.booking-engine-counter .meta{font-size:0.8rem;font-weight:700;color:#2d3748}.booking-engine-counter .controls{display:inline-flex;align-items:center;gap:8px}.booking-engine-counter button{width:30px;height:30px;border-radius:999px;border:1px solid #cfd5dd;background:#fff;font-size:1rem;line-height:1}.booking-engine-counter button[disabled],.booking-engine-counter button[aria-disabled=true]{opacity:0.45;cursor:not-allowed}.booking-engine-inline-meta{display:flex;align-items:center;justify-content:space-between;gap:8px;border:1px dashed #d8dde4;border-radius:10px;padding:8px 10px;font-size:0.82rem}.booking-engine-inline-meta strong{color:var(--booking-engine-black)}.booking-engine-cta{border:0;border-radius:12px;padding:12px 16px;min-height:48px;font-size:0.93rem;font-weight:700;background:var(--brand-primary, #f7941d);color:var(--brand-on-primary, #111827);box-shadow:0 6px 16px color-mix(in srgb,var(--brand-primary, #f7941d) 28%,transparent);transition:transform 0.2s ease,box-shadow 0.2s ease;width:100%;max-width:100%}.booking-engine-cta:hover{transform:translateY(-1px);background:color-mix(in srgb,var(--brand-primary, #f7941d) 88%,#000000 12%);box-shadow:0 10px 24px color-mix(in srgb,var(--brand-primary, #f7941d) 34%,transparent)}.booking-engine-cta[disabled]{opacity:0.45;cursor:not-allowed;transform:none;box-shadow:none}.booking-engine-layout{display:grid;grid-template-columns:minmax(0,1fr) 350px;gap:14px}.booking-engine-list{display:grid;gap:12px;min-width:0}.booking-engine-toolbar{padding:12px;display:grid;grid-template-columns:1fr auto auto;gap:10px;align-items:center}.booking-engine-toolbar-title{font-size:0.92rem;font-weight:700}.booking-engine-toolbar .pill{border:1px solid var(--booking-engine-border-strong);border-radius:999px;padding:8px 12px;font-size:0.78rem;background:#fff;color:#1f2937;text-decoration:none;margin-left:auto}.booking-engine-selection-meter{padding:10px 12px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.booking-engine-selection-meter>div{border:1px solid #e7ebf2;border-radius:10px;background:#fbfcfe;padding:8px;display:grid;gap:2px}.booking-engine-selection-meter span{font-size:0.68rem;color:#607086}.booking-engine-selection-meter strong{font-size:0.95rem;color:#0f1623}.booking-engine-empty-state,.booking-engine-shortfall-alert{padding:14px;display:grid;gap:10px}.booking-engine-validation-list{margin:0;padding-left:18px;color:#9b1c1c;font-size:0.8rem}.booking-engine-empty-actions{display:flex;flex-wrap:wrap;gap:8px}.booking-engine-shortfall-alert{border-color:#f7ddb8;background:#fffaf3}.booking-engine-trust-strip{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.booking-engine-trust-strip span{border-radius:999px;border:1px solid var(--booking-engine-accent-soft-2);background:var(--booking-engine-accent-soft);color:var(--booking-engine-accent-strong);padding:6px 10px;font-size:0.72rem;font-weight:700;line-height:1}.booking-engine-room-card{padding:12px;display:grid;gap:10px 14px;grid-template-columns:minmax(0,412px) minmax(412px,412px);grid-template-areas:"media pricing";justify-content:space-between;align-items:start;min-width:0;border-radius:18px;box-shadow:0 14px 34px rgba(15,23,42,0.08);transition:transform 0.22s ease,box-shadow 0.22s ease}.booking-engine-room-card:hover{transform:translateY(-2px);box-shadow:0 20px 40px rgba(15,23,42,0.11)}.booking-engine-room-card.is-selected{border-color:color-mix(in srgb,var(--brand-primary, #f7941d) 70%,#ffffff 30%);box-shadow:0 18px 42px color-mix(in srgb,var(--brand-primary, #f7941d) 22%,transparent)}.booking-engine-room-card.is-sold-out{opacity:0.9;background:#fcfcfd}.booking-engine-room-media{border-radius:16px;overflow:hidden;aspect-ratio:16 / 10;background:#eff1f5;position:relative;isolation:isolate}.booking-engine-room-media-stack{grid-area:media;display:grid;grid-template-columns:1fr;gap:8px;align-items:stretch}.booking-engine-media-info{border:1px solid #e9edf3;border-radius:12px;background:#ffffff;padding:10px;display:grid;gap:8px}.booking-engine-carousel-track{width:100%;height:100%;display:flex;transition:transform 0.35s ease;will-change:transform}.booking-engine-carousel-slide{margin:0;width:100%;flex:0 0 100%;height:100%}.booking-engine-room-media img,.booking-engine-carousel-slide img{width:100%;height:100%;object-fit:cover;display:block}.booking-engine-room-media::after{content:"";position:absolute;inset:auto 0 0;height:58%;background:linear-gradient(180deg,rgba(0,0,0,0) 0%,rgba(7,11,19,0.68) 100%);pointer-events:none}.booking-engine-media-top,.booking-engine-media-bottom{position:absolute;left:12px;right:12px;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:8px}.booking-engine-media-top{top:12px}.booking-engine-media-bottom{bottom:12px}.booking-engine-media-count{border-radius:999px;background:rgba(13,20,34,0.75);color:#fff;font-size:0.72rem;font-weight:700;padding:5px 10px}.booking-engine-view-photos{border:1px solid rgba(255,255,255,0.4);border-radius:999px;padding:7px 12px;font-size:0.77rem;font-weight:700;color:#fff;background:rgba(13,20,34,0.58);backdrop-filter:blur(5px);display:inline-flex;align-items:center;gap:6px}.booking-engine-view-photos:hover{background:rgba(13,20,34,0.8)}.booking-engine-view-photos:focus-visible,.booking-engine-carousel-arrow:focus-visible,.booking-engine-select:focus-visible,.booking-engine-gallery-nav:focus-visible,.booking-engine-gallery-close:focus-visible,.booking-engine-gallery-thumb:focus-visible{outline:2px solid var(--brand-primary, #f7941d);outline-offset:2px}.booking-engine-carousel-arrow{position:absolute;top:50%;transform:translateY(-50%);width:36px;height:36px;border-radius:999px;border:1px solid rgba(255,255,255,0.6);background:rgba(13,20,34,0.56);color:#fff;z-index:2;display:inline-grid;place-items:center}.booking-engine-carousel-arrow.prev{left:10px}.booking-engine-carousel-arrow.next{right:10px}.booking-engine-carousel-arrow:hover{background:rgba(13,20,34,0.85)}.booking-engine-carousel-dots{position:absolute;z-index:2;left:50%;bottom:14px;transform:translateX(-50%);display:inline-flex;gap:6px}.booking-engine-carousel-dot{width:8px;height:8px;border-radius:999px;border:0;background:rgba(255,255,255,0.45);padding:0}.booking-engine-carousel-dot.is-active{background:#fff}.booking-engine-room-content{min-width:0;display:grid;gap:6px}.booking-engine-badges{display:flex;flex-wrap:wrap;gap:6px}.booking-engine-badge{font-size:0.69rem;font-weight:700;border-radius:999px;padding:4px 8px;border:1px solid transparent}.booking-engine-badge.popular{background:#ecfdf3;color:#0f6d4e;border-color:#b8f0d6}.booking-engine-badge.value{background:var(--booking-engine-accent-soft);color:var(--booking-engine-accent-strong);border-color:var(--booking-engine-accent-soft-2)}.booking-engine-badge.flex{background:var(--booking-engine-accent-soft);color:var(--booking-engine-accent-strong);border-color:var(--booking-engine-accent-soft-2)}.booking-engine-badge.neutral{background:#f8f9fb;color:#4b5563;border-color:#dce1e8}.booking-engine-badge.promo{background:#ecfdf3;color:#0f6d4e;border-color:#b8f0d6}.booking-engine-room-head{display:grid;gap:6px}.booking-engine-room-title{margin:0;font-size:1.1rem;font-weight:800;letter-spacing:-0.01em;line-height:1.25}.booking-engine-room-meta{margin:0;color:var(--booking-engine-muted);font-size:0.78rem;font-weight:600}.booking-engine-room-desc{margin:0;color:#3f4f68;font-size:0.8rem;line-height:1.45}.booking-engine-room-specs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.booking-engine-room-specs span{border:1px solid #e8edf5;border-radius:10px;background:#f8fbff;font-size:0.74rem;font-weight:600;color:#2a3e5f;padding:6px 9px;display:inline-flex;align-items:center;gap:6px}.booking-engine-room-specs i{color:color-mix(in srgb,var(--brand-primary, #f7941d) 65%,#1f3f77 35%)}.booking-engine-amenities-wrap{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.booking-engine-amenities-wrap span{font-size:0.72rem;border:1px solid #e4e8ee;border-radius:999px;padding:4px 8px;background:#fafbfc;display:inline-flex;align-items:center;gap:5px}.booking-engine-amenities-wrap i{color:#0f6d4e}.booking-engine-more-amenities{border:1px dashed #d9e1ed;border-radius:999px;padding:4px 8px;font-size:0.72rem;font-weight:700;background:#fff;color:#4b5563}.booking-engine-room-pricing-panel{grid-area:pricing;border-left:1px solid #edf1f7;padding-left:12px;min-width:0;display:grid;gap:10px}.booking-engine-rate-list{display:grid;gap:7px;grid-template-columns:1fr}.booking-engine-rate{border:1px solid #e4e8ee;border-radius:10px;padding:8px 9px;display:grid;grid-template-columns:1fr auto;gap:4px 8px;align-items:center;background:#fff}.booking-engine-rate[data-plan-option]{cursor:pointer;transition:border-color 0.2s ease,background-color 0.2s ease,box-shadow 0.2s ease}.booking-engine-rate.is-plan-active{border-color:var(--brand-primary, #f7941d);background:color-mix(in srgb,var(--brand-primary, #f7941d) 10%,#ffffff 90%);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--brand-primary, #f7941d) 36%,transparent)}.booking-engine-rate-title{font-size:0.76rem;font-weight:700}.booking-engine-rate-sub{font-size:0.7rem;color:var(--booking-engine-muted)}.booking-engine-price{text-align:right;display:inline-flex;flex-direction:column;align-items:flex-end;gap:1px}.booking-engine-price strong,.booking-engine-price-now{font-size:0.96rem}.booking-engine-price-cut{font-size:0.75rem;color:#8b95a7;text-decoration:line-through;text-decoration-thickness:1.5px}.booking-engine-rate-sub-discount{color:#0f6d4e;font-weight:700}.booking-engine-select{border:0;border-radius:12px;background:var(--brand-primary, #f7941d);padding:11px 14px;font-size:0.79rem;font-weight:800;color:var(--brand-on-primary, #111827);box-shadow:0 6px 16px color-mix(in srgb,var(--brand-primary, #f7941d) 25%,transparent);min-height:42px;width:100%;white-space:nowrap;transition:transform 0.2s ease,box-shadow 0.2s ease}.booking-engine-select:hover{transform:translateY(-1px);box-shadow:0 10px 20px color-mix(in srgb,var(--brand-primary, #f7941d) 30%,transparent)}.booking-engine-select.is-selected{background:#15243f;color:#fff;box-shadow:0 6px 16px rgba(8,15,28,0.2)}.booking-engine-select[disabled],.booking-engine-select[aria-disabled=true]{opacity:0.45;cursor:not-allowed;box-shadow:none;transform:none}.booking-engine-plan-pill{margin-top:2px;border-radius:999px;align-self:flex-start;font-size:0.64rem;font-weight:700;color:#3a4f72;background:#f4f7fc;border:1px solid #d9e3f2;padding:3px 7px}.booking-engine-plan-pill.featured{color:var(--booking-engine-accent-strong);border-color:var(--booking-engine-accent-soft-2);background:var(--booking-engine-accent-soft)}.booking-engine-room-footer{border-top:1px solid #edf1f7;padding-top:9px;display:grid;gap:9px}.booking-engine-room-pricing{min-width:0}.booking-engine-room-price-label{color:#6d7f99;font-size:0.73rem;font-weight:700}.booking-engine-room-price{font-size:1.35rem;font-weight:800;letter-spacing:-0.02em;color:#0f1623}.booking-engine-room-price span{font-size:0.8rem;color:#5d6f89;font-weight:600}.booking-engine-room-actions{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:8px}.booking-engine-rate .booking-engine-price{grid-column:2;grid-row:1 / span 2}.booking-engine-rate .booking-engine-plan-pill{grid-column:1}.booking-engine-gallery-modal{position:fixed;inset:0;z-index:120;display:grid;place-items:center;padding:20px}.booking-engine-gallery-backdrop{position:absolute;inset:0;background:rgba(5,10,20,0.86);backdrop-filter:blur(4px)}.booking-engine-gallery-dialog{position:relative;z-index:1;width:min(1100px,100%);border-radius:18px;background:#0d1624;border:1px solid rgba(255,255,255,0.09);box-shadow:0 32px 60px rgba(0,0,0,0.45);color:#fff;padding:12px;animation:bookingEngineFadeIn .25s ease}@keyframes bookingEngineFadeIn{from{opacity:0;transform:translateY(8px) scale(0.98)}to{opacity:1;transform:translateY(0) scale(1)}}.booking-engine-gallery-close{position:absolute;top:10px;right:10px;width:34px;height:34px;border-radius:999px;border:1px solid rgba(255,255,255,0.34);background:rgba(255,255,255,0.12);color:#fff;z-index:2}.booking-engine-gallery-header{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:4px 36px 10px 2px}.booking-engine-gallery-header h3{margin:0;font-size:1.05rem;font-weight:700}.booking-engine-gallery-header span{font-size:0.82rem;color:rgba(255,255,255,0.82)}.booking-engine-gallery-stage{position:relative;width:100%;border-radius:14px;background:#02060e;min-height:min(65vh,620px);display:grid;place-items:center;overflow:hidden}.booking-engine-gallery-stage-skeleton{position:absolute;inset:0;z-index:0;background:linear-gradient(100deg,rgba(255,255,255,0.09) 24%,rgba(255,255,255,0.21) 38%,rgba(255,255,255,0.09) 62%);background-size:180% 100%;animation:bookingEngineShimmer 1.15s linear infinite}.booking-engine-gallery-stage-skeleton.is-hidden{opacity:0;pointer-events:none}.booking-engine-gallery-stage img{position:relative;z-index:1;max-width:100%;max-height:min(65vh,620px);object-fit:contain}.booking-engine-gallery-nav{position:absolute;top:50%;transform:translateY(-50%);width:42px;height:42px;border-radius:999px;border:1px solid rgba(255,255,255,0.45);background:rgba(4,10,20,0.62);color:#fff;z-index:2}.booking-engine-gallery-nav[aria-disabled=true]{opacity:0.3;pointer-events:none}.booking-engine-gallery-nav.prev{left:12px}.booking-engine-gallery-nav.next{right:12px}.booking-engine-gallery-thumbs{margin-top:10px;display:flex;gap:8px;overflow-x:auto;padding-bottom:2px}.booking-engine-gallery-thumb{width:76px;height:56px;border-radius:8px;border:1px solid rgba(255,255,255,0.25);overflow:hidden;padding:0;background:#111c2e;flex:0 0 auto}.booking-engine-gallery-thumb img{width:100%;height:100%;object-fit:cover}.booking-engine-gallery-thumb.is-active{border-color:var(--brand-primary, #f7941d);box-shadow:0 0 0 2px color-mix(in srgb,var(--brand-primary, #f7941d) 30%,transparent)}.booking-engine-addon-wrap{padding:12px}.booking-engine-addon-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.booking-engine-addon{border:1px solid #e4e8ee;border-radius:12px;padding:10px;display:grid;grid-template-columns:1fr auto;gap:8px;align-items:center}.booking-engine-addon button{border:1px solid #d2d8df;border-radius:10px;background:#fff;min-width:90px;padding:7px 10px;font-size:0.78rem;font-weight:700}.booking-engine-addon button.is-on{border-color:var(--booking-engine-accent);background:var(--booking-engine-accent-soft)}.booking-engine-summary{position:sticky;top:92px;padding:14px;align-self:start;overflow:hidden}.booking-engine-summary h3{margin:0;font-size:0.98rem;font-weight:700}.booking-engine-summary-list{margin-top:10px;display:grid;gap:8px}.booking-engine-summary-room-target{margin-top:8px;padding:8px;border:1px solid #e8edf3;border-radius:10px;background:#fbfcfe;font-size:0.78rem;color:#4b5565}.booking-engine-summary-line{display:flex;justify-content:space-between;gap:10px;font-size:0.82rem}.booking-engine-summary-line.total{font-size:0.96rem;font-weight:700;padding-top:8px;border-top:1px solid var(--booking-engine-border)}.booking-engine-summary-trust{margin-top:10px;padding-top:10px;border-top:1px dashed #dae0e8;display:grid;gap:7px;font-size:0.76rem;color:#0f6d4e}.booking-engine-summary-trust-item{display:inline-flex;align-items:center;gap:6px;color:#0f6d4e;font-weight:700}.booking-engine-summary-trust-item svg{width:14px;height:14px;flex:0 0 auto;color:#0f6d4e}.booking-engine-summary .booking-engine-cta,.booking-engine-mobile-drawer .booking-engine-cta{width:100%;max-width:100%;display:block;white-space:normal}.booking-engine-payment-box{padding:14px}.booking-engine-pay-grid{display:grid;gap:10px;grid-template-columns:repeat(2,minmax(0,1fr))}.booking-engine-pay-method{border:1px solid #d8dde4;border-radius:12px;padding:10px;font-size:0.8rem;display:flex;gap:8px;align-items:center}.booking-engine-pay-method input{accent-color:var(--booking-engine-accent)}.booking-engine-trust-strip--checkout{margin-top:10px}.booking-engine-terms-check{display:flex;align-items:flex-start;gap:8px}.booking-engine-inline-total{padding:10px}.booking-engine-action-row{display:flex;flex-wrap:wrap;gap:8px}.booking-engine-alert{border-radius:12px;padding:10px 12px;font-size:0.81rem}.booking-engine-alert.info{background:color-mix(in srgb,var(--booking-engine-accent) 10%,#ffffff 90%);color:var(--booking-engine-accent-strong);border:1px solid var(--booking-engine-accent-soft-2)}.booking-engine-alert.ok{background:color-mix(in srgb,var(--booking-engine-success) 10%,#ffffff 90%);color:var(--booking-engine-success);border:1px solid color-mix(in srgb,var(--booking-engine-success) 30%,#ffffff 70%)}.booking-engine-alert.warn{background:color-mix(in srgb,var(--booking-engine-accent) 14%,#ffffff 86%);color:var(--booking-engine-accent-strong);border:1px solid var(--booking-engine-accent-soft-2)}.booking-engine-occupancy-note{border:1px solid #e3ebf6;background:#fbfdff;padding:12px;border-radius:14px}.booking-engine-occupancy-note.is-valid{border-color:#a7f3d0;background:#f0fdf4}.booking-engine-occupancy-note.is-warning{border-color:#fdba74;background:#fff7ed}.booking-engine-occupancy-status{font-size:0.83rem;font-weight:700;margin-bottom:8px}.booking-engine-occupancy-note.is-valid .booking-engine-occupancy-status{color:#166534}.booking-engine-occupancy-note.is-warning .booking-engine-occupancy-status{color:#9a3412}.booking-engine-occupancy-grid{display:grid;gap:10px;grid-template-columns:repeat(2,minmax(0,1fr));font-size:0.76rem;color:#46556f}.booking-engine-occupancy-grid strong{display:block;font-size:0.75rem;margin-bottom:4px;color:#22324d}.booking-engine-empty{padding:14px}.booking-engine-trust-grid{display:grid;gap:8px;grid-template-columns:repeat(2,minmax(0,1fr))}.booking-engine-trust-mini{border-radius:10px;padding:8px;font-size:0.72rem;font-weight:700;color:#0f6d4e;text-align:left;display:inline-flex;align-items:center;gap:6px;min-width:0}.booking-engine-trust-mini svg{width:14px;height:14px;flex:0 0 auto;color:#0f6d4e}.booking-engine-trust-mini span{min-width:0;word-break:break-word}.booking-engine-confirm{text-align:left;padding:18px}.booking-engine-confirm-icon{width:56px;height:56px;border-radius:999px;margin:0;display:grid;place-items:center;background:var(--booking-engine-accent-soft);color:var(--booking-engine-accent-strong);font-size:1.45rem;font-weight:700}.booking-engine-confirm-icon i{font-size:1.4rem}.booking-engine-confirm-icon.is-progress{background:#fff7ed;color:#9a3412}.booking-engine-confirm-icon.is-confirmed{background:#ecfdf3;color:#166534}.booking-engine-confirm-status{margin-top:10px;display:inline-flex;align-items:center;border-radius:999px;border:1px solid #86efac;color:#166534;background:#ecfdf3;font-size:0.72rem;font-weight:700;padding:5px 10px}.booking-engine-confirm-status.is-progress{background:#fff7ed;border-color:#fdba74;color:#9a3412}.booking-engine-confirm-status.is-confirmed{background:#ecfdf3;border-color:#86efac;color:#166534}.booking-engine-confirm h2{margin:10px 0 0;font-size:1.3rem}.booking-engine-confirm p{margin:6px 0 0;color:var(--booking-engine-muted);font-size:0.86rem}.booking-engine-confirm-note{margin-top:8px;font-size:0.84rem}.booking-engine-confirm-summary{margin-top:12px;padding:12px}.booking-engine-confirm-summary .booking-engine-summary-line{align-items:flex-start}.booking-engine-confirm-ref-wrap{display:inline-flex;align-items:center;gap:6px}.booking-engine-copy-btn{border:1px solid #dbe3ef;border-radius:8px;width:28px;height:28px;display:inline-grid;place-items:center;background:#fff;color:#314766}.booking-engine-copy-btn:hover{background:#f7fafc}.booking-engine-support-box{margin-top:12px;padding:12px;border-radius:14px;border:1px solid #dbe3ef;background:#f8fbff}.booking-engine-support-box h4{margin:0;font-size:0.95rem;font-weight:700}.booking-engine-support-box h4 i{margin-right:4px}.booking-engine-support-box p{margin:8px 0 0;font-size:0.82rem}.booking-engine-support-actions{margin-top:10px;display:flex;flex-wrap:wrap;gap:8px}.booking-engine-support-actions a{display:inline-flex;align-items:center;gap:6px;border-radius:999px;padding:7px 12px;border:1px solid #d7e2f0;text-decoration:none;color:#1f2f4a;background:#fff;font-size:0.78rem;font-weight:700}.booking-engine-support-actions a:hover{background:#f8fafc}.booking-engine-support-actions a .bi-whatsapp{color:#15803d}.booking-engine-cta-lite{border-radius:10px;border:1px solid #dbe3ef;background:#fff;color:#111827;padding:8px 12px;font-size:0.82rem;font-weight:700;text-decoration:none}.booking-engine-cta-lite:hover{background:#f8fafc}.booking-engine-confirm-footer-note{color:#4b5563}.booking-engine-confirm-actions{margin-top:14px;display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-start}.booking-engine-confirm-actions a,.booking-engine-confirm-actions button{border:1px solid var(--booking-engine-border);border-radius:10px;background:#fff;padding:8px 12px;font-size:0.82rem;text-decoration:none;color:var(--booking-engine-black)}.booking-engine-mobile-summary{display:none;position:fixed;left:0;right:0;bottom:0;z-index:48;background:#fff;border-top:1px solid var(--booking-engine-border);box-shadow:0 -8px 24px rgba(16,24,40,0.1);padding:10px 12px}.booking-engine-mobile-summary .inner{display:flex;align-items:center;justify-content:space-between;gap:10px}.booking-engine-mobile-summary .price{font-size:1rem;font-weight:700}.booking-engine-mobile-drawer{position:fixed;inset:auto 0 0 0;z-index:55;background:#fff;border-radius:16px 16px 0 0;border:1px solid var(--booking-engine-border);transform:translateY(100%);transition:transform 0.25s ease;max-height:78vh;overflow:auto;padding:12px}.booking-engine-mobile-drawer-head{display:flex;justify-content:space-between;align-items:center;gap:10px}.booking-engine-mobile-drawer.is-open{transform:translateY(0)}.booking-engine-overlay{display:none;position:fixed;inset:0;z-index:52;background:rgba(11,11,11,0.45)}.booking-engine-overlay.is-open{display:block}.booking-engine-hidden{display:none!important}.booking-engine-footer{margin-top:auto;border-top:1px solid var(--booking-engine-border);background:#fff}.booking-engine-footer-inner{max-width:1260px;margin:0 auto;padding:24px 16px;display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:14px}.booking-engine-footer-block h4,.booking-engine-footer-block h5{margin:0 0 6px;font-size:0.9rem;font-weight:700;color:var(--booking-engine-black)}.booking-engine-footer-block p{margin:0;font-size:0.8rem;line-height:1.5;color:var(--booking-engine-muted)}.booking-engine-footer-block a{color:var(--booking-engine-black);font-weight:600;text-decoration:none}.booking-engine-footer-block a:hover{color:var(--booking-engine-black);text-decoration:underline}@media(max-width:1180px){.booking-engine-layout{grid-template-columns:1fr}.booking-engine-summary{display:none}.booking-engine-mobile-summary{display:block}body.booking-engine-be-body{padding-bottom:78px}}@media(max-width:920px){.booking-engine-hero{grid-template-columns:1fr}.booking-engine-hero-gallery{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(2,minmax(0,1fr));min-height:240px;height:clamp(240px,56vw,360px)}.booking-engine-hero-gallery-item.is-main{grid-column:1 / span 2;grid-row:1}.booking-engine-hero-gallery-count-1,.booking-engine-hero-gallery-count-2{grid-template-rows:minmax(0,1fr)}.booking-engine-hero-gallery-count-1 .booking-engine-hero-gallery-item.is-main,.booking-engine-hero-gallery-count-2 .booking-engine-hero-gallery-item.is-main{grid-column:auto;grid-row:auto}.booking-engine-hero .booking-engine-search-card{order:1}.booking-engine-hero .booking-engine-hero-showcase{order:2}.booking-engine-room-card{grid-template-columns:1fr;grid-template-areas:"media" "pricing";justify-content:stretch}.booking-engine-room-media{aspect-ratio:16 / 10}.booking-engine-room-pricing-panel{border-left:0;border-top:1px solid #edf1f7;padding:10px 0 0}.booking-engine-rate-list{grid-template-columns:1fr}.booking-engine-footer-inner{grid-template-columns:1fr}}@media(max-width:760px){.booking-engine-be-shell{padding:14px 12px 28px}.booking-engine-topbar-inner{min-height:66px;padding:8px 12px}.booking-engine-help-cta{font-size:0.76rem;padding:8px 10px}.booking-engine-hero{padding:14px}.booking-engine-hero-media{padding:8px}.booking-engine-hero-gallery{min-height:218px;height:clamp(218px,62vw,280px);gap:7px}.booking-engine-photo-badge{top:14px;left:14px;font-size:0.7rem;padding:5px 9px}.booking-engine-search-card,.booking-engine-payment-box{padding:14px}.booking-engine-search-grid,.booking-engine-guest-stepper,.booking-engine-hero-amenity-grid,.booking-engine-toolbar,.booking-engine-selection-meter,.booking-engine-addon-grid,.booking-engine-pay-grid,.booking-engine-trust-grid,.booking-engine-occupancy-grid{grid-template-columns:1fr}.booking-engine-toolbar{align-items:stretch}.booking-engine-field-right{grid-column:auto}.booking-engine-toolbar .pill{text-align:right}.booking-engine-hero-copy{min-height:250px;padding:16px}.booking-engine-hero-copy h2{font-size:1.5rem}.booking-engine-rate{grid-template-columns:1fr}.booking-engine-rate .booking-engine-price{grid-column:1;grid-row:auto;text-align:left;align-items:flex-start}.booking-engine-room-specs{grid-template-columns:repeat(2,minmax(0,1fr))}.booking-engine-room-actions{width:100%;grid-template-columns:auto 1fr}.booking-engine-gallery-modal{padding:12px 8px}.booking-engine-gallery-dialog{border-radius:14px;padding:10px}.booking-engine-gallery-stage{min-height:52vh}.booking-engine-gallery-nav{width:36px;height:36px}.booking-engine-mobile-summary .inner>*{min-width:0}.booking-engine-mobile-summary .booking-engine-help-cta{white-space:nowrap}.booking-engine-action-row .booking-engine-help-cta,.booking-engine-action-row .booking-engine-cta{width:100%;text-align:center}.booking-engine-confirm-actions a,.booking-engine-confirm-actions button,.booking-engine-cta-lite,.booking-engine-support-actions a{width:100%;justify-content:center;text-align:center}}.booking-engine-google-rating{display:inline-flex;align-items:center;flex-wrap:wrap;gap:7px;width:fit-content;max-width:100%;padding:8px 11px;border:1px solid var(--brand-primary-light, #fde4c2);border-radius:999px;background:var(--brand-primary-soft, rgba(247, 148, 29, 0.12));color:#344256;font-size:0.84rem;font-weight:700;line-height:1.35}.booking-engine-google-rating__star{color:var(--brand-primary, #f7941d);font-size:1rem;line-height:1}.booking-engine-google-rating strong{color:#141b2d;font-weight:800}.booking-engine-google-rating a,.booking-engine-google-rating__label{color:var(--brand-primary, #f7941d);font-weight:800;text-decoration:none;white-space:nowrap}.booking-engine-google-rating a:hover{text-decoration:underline}@media(max-width:640px){.booking-engine-google-rating{width:100%;border-radius:12px}}
