:root{--brand:#6366f1;--brand-dark:#4f46e5;--brand-light:#eef2ff;--brand-soft:#c7d2fe;--success:#10b981;--warning:#f59e0b;--danger:#ef4444;--text:#111827;--text-soft:#6b7280;--border:#e5e7eb;--surface:#f9fafb;--white:#ffffff;--radius:14px;--shadow-sm:0 1px 3px rgba(0,0,0,.06), 0 1px 2px rgba(0,0,0,.04);--shadow-md:0 4px 16px rgba(0,0,0,.08), 0 2px 6px rgba(0,0,0,.05);--shadow-lg:0 12px 40px rgba(0,0,0,.12), 0 4px 12px rgba(0,0,0,.06)}#hotel-booking-wrapper{font-family:-apple-system,BlinkMacSystemFont,inter,segoe ui,sans-serif;max-width:1120px;margin:0 auto;padding:24px 16px;color:var(--text)}.hotel-search-card{background:var(--white);border-radius:var(--radius);box-shadow:var(--shadow-md);padding:32px 28px 24px;margin-bottom:28px;border:1px solid var(--border)}.hotel-search-card h2{margin:0 0 24px;font-size:1.5rem;font-weight:700;color:var(--text);display:flex;align-items:center;gap:10px}.hotel-search-card h2::before{content:'';display:inline-block;width:4px;height:24px;background:linear-gradient(180deg,var(--brand),var(--brand-dark));border-radius:4px}.hotel-form-row{display:flex;gap:14px;flex-wrap:wrap;margin-bottom:14px}.hotel-field{display:flex;flex-direction:column;flex:1;min-width:150px;position:relative}.hotel-field label{font-size:.72rem;font-weight:700;color:var(--text-soft);margin-bottom:6px;text-transform:uppercase;letter-spacing:.07em}.hotel-field input,.hotel-field select{padding:11px 14px;border:1.5px solid var(--border);border-radius:10px;font-size:.93rem;color:var(--text);background:var(--surface);transition:border-color .2s,box-shadow .2s;width:100%;box-sizing:border-box}.hotel-field input:focus,.hotel-field select:focus{outline:none;border-color:var(--brand);background:var(--white);box-shadow:0 0 0 3px rgba(99,102,241,.12)}.hotel-room-guests{display:flex;align-items:center;gap:12px;padding:10px 0;border-bottom:1px solid var(--border)}.hotel-room-guests:last-child{border-bottom:none}.hotel-room-guests strong{min-width:68px;font-size:.9rem;color:var(--text)}.hotel-room-guests label{font-size:.84rem;color:var(--text-soft)}.hotel-room-guests select{padding:7px 10px;border:1.5px solid var(--border);border-radius:8px;font-size:.88rem;background:var(--surface)}#hotel-search-btn{width:100%;margin-top:10px;padding:14px;font-size:1rem;font-weight:700;letter-spacing:.02em;background:linear-gradient(135deg,var(--brand) 0%,var(--brand-dark) 100%);border:none;border-radius:10px;color:#fff;cursor:pointer;transition:opacity .2s,transform .1s;box-shadow:0 4px 14px rgba(99,102,241,.35)}#hotel-search-btn:hover{opacity:.93;transform:translateY(-1px)}#hotel-search-btn:active{transform:translateY(0)}#hotel-search-btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.hotel-btn-primary{background:linear-gradient(135deg,var(--brand) 0%,var(--brand-dark) 100%);color:#fff;border:none;border-radius:9px;padding:10px 22px;font-size:.93rem;font-weight:600;cursor:pointer;transition:opacity .2s,transform .1s;box-shadow:0 3px 10px rgba(99,102,241,.3)}.hotel-btn-primary:hover{opacity:.9;transform:translateY(-1px)}.hotel-btn-primary:disabled{opacity:.5;cursor:not-allowed;transform:none}.hotel-btn-secondary{background:var(--white);color:var(--brand);border:1.5px solid var(--brand-soft);border-radius:9px;padding:9px 18px;font-size:.88rem;font-weight:600;cursor:pointer;transition:background .2s,border-color .2s}.hotel-btn-secondary:hover{background:var(--brand-light);border-color:var(--brand)}.hotel-autocomplete{position:absolute;top:calc(100% + 4px);left:0;right:0;z-index:999;background:var(--white);border:1px solid var(--border);border-radius:12px;max-height:240px;overflow-y:auto;box-shadow:var(--shadow-lg)}.hotel-city-item{padding:10px 16px;cursor:pointer;font-size:.88rem;border-bottom:1px solid var(--surface);display:flex;justify-content:space-between;align-items:center;gap:10px;transition:background .15s}.hotel-city-item:hover{background:var(--brand-light)}.suggest-group-label{padding:7px 16px 4px;font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--text-soft);background:var(--surface);border-bottom:1px solid var(--border)}.suggest-name{color:var(--text);font-weight:500}.suggest-sub{font-size:.77rem;color:#9ca3af;white-space:nowrap}.hotel-suggest-empty{padding:14px 16px;font-size:.84rem;color:var(--text-soft)}.hotel-suggest-empty b{color:var(--text)}.hotel-suggest-empty small{display:block;margin-top:4px;color:#9ca3af;font-size:.77rem}.hotel-loader{text-align:center;padding:48px;color:var(--text-soft)}.hotel-spinner{width:42px;height:42px;border:3px solid var(--border);border-top-color:var(--brand);border-radius:50%;animation:spin .75s linear infinite;margin:0 auto 14px}@keyframes spin{to{transform:rotate(360deg)}}.hotel-results-layout{display:grid;grid-template-columns:260px 1fr;gap:22px;align-items:start}.hotel-filter-sidebar{background:var(--white);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-sm);position:sticky;top:20px;overflow:hidden}.hf-header{display:flex;justify-content:space-between;align-items:center;padding:14px 18px;background:linear-gradient(135deg,var(--brand) 0%,var(--brand-dark) 100%)}.hf-title{font-size:.9rem;font-weight:700;color:#fff;letter-spacing:.03em}.hf-clear-btn{background:rgba(255,255,255,.2);border:1px solid rgba(255,255,255,.3);border-radius:20px;color:#fff;font-size:.75rem;font-weight:600;padding:3px 10px;cursor:pointer;transition:background .2s}.hf-clear-btn:hover{background:rgba(255,255,255,.35)}.hf-section{padding:14px 18px;border-bottom:1px solid var(--surface)}.hf-section:last-child{border-bottom:none}.hf-label{font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:var(--text-soft);margin-bottom:10px}.hf-input{width:100%;padding:9px 12px;border:1.5px solid var(--border);border-radius:8px;font-size:.88rem;color:var(--text);background:var(--surface);box-sizing:border-box;transition:border-color .2s,box-shadow .2s}.hf-input:focus{outline:none;border-color:var(--brand);background:var(--white);box-shadow:0 0 0 3px rgba(99,102,241,.1)}.hf-select{width:100%;padding:9px 12px;border:1.5px solid var(--border);border-radius:8px;font-size:.88rem;color:var(--text);background:var(--surface);box-sizing:border-box;cursor:pointer;transition:border-color .2s}.hf-select:focus{outline:none;border-color:var(--brand)}.hf-stars-group{display:flex;flex-wrap:wrap;gap:6px}.hf-star-pill{display:flex;align-items:center;gap:0;cursor:pointer}.hf-star-pill input{display:none}.hf-star-pill span{display:inline-block;padding:5px 11px;border:1.5px solid var(--border);border-radius:20px;font-size:.78rem;color:var(--warning);background:var(--white);cursor:pointer;transition:background .2s,border-color .2s,transform .1s;letter-spacing:1px;user-select:none}.hf-star-pill input:checked+span{background:#fef3c7;border-color:var(--warning);color:#92400e;font-weight:700;transform:scale(1.05)}.hf-star-pill span:hover{background:#fef9c3;border-color:var(--warning)}.hf-check-group{display:flex;flex-direction:column;gap:8px}.hf-check{display:flex;align-items:center;gap:8px;font-size:.87rem;color:var(--text);cursor:pointer;user-select:none}.hf-check input[type=checkbox]{width:16px;height:16px;accent-color:var(--brand);cursor:pointer;flex-shrink:0;border-radius:4px}.hf-mobile-toggle{display:none;background:var(--brand-light);color:var(--brand-dark);border:1.5px solid var(--brand-soft);border-radius:8px;padding:8px 14px;font-size:.85rem;font-weight:700;cursor:pointer}.hotel-results-header{margin-bottom:18px}.hotel-results-top{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:14px}.hotel-results-header h3{font-size:1.1rem;font-weight:700;color:var(--text);margin:0 0 4px}.hotel-results-meta{font-size:.83rem;color:var(--text-soft);margin:0}.hotel-list{display:flex;flex-direction:column;gap:16px}.hotel-card{background:var(--white);border-radius:var(--radius);box-shadow:var(--shadow-sm);border:1px solid var(--border);overflow:hidden;display:flex;flex-direction:row;transition:box-shadow .25s,transform .2s}.hotel-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-2px)}.hotel-thumb{width:200px;flex-shrink:0;background:var(--surface);display:flex;align-items:center;justify-content:center;min-height:160px;position:relative;overflow:hidden}.hotel-thumb-placeholder{display:flex;align-items:center;justify-content:center;width:100%;height:100%;font-size:2.8rem;color:#d1d5db;background:linear-gradient(135deg,#f3f4f6 0%,#e5e7eb 100%)}.hotel-thumb-img{width:200px;height:100%;min-height:160px;object-fit:cover;display:block;transition:transform .4s ease}.hotel-card:hover .hotel-thumb-img{transform:scale(1.04)}.hotel-card-body{flex:1;padding:20px 24px;display:flex;flex-direction:column;gap:10px}.hotel-card-top{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.hotel-card-top h4{margin:0 0 4px;font-size:1.08rem;font-weight:700;color:var(--text)}.hotel-stars{color:var(--warning);font-size:.9rem;letter-spacing:1px}.hotel-code-badge{font-size:.7rem;color:var(--text-soft);background:var(--surface);border:1px solid var(--border);border-radius:6px;padding:3px 8px;white-space:nowrap;flex-shrink:0}.hotel-address{color:var(--text-soft);font-size:.84rem;margin:0;line-height:1.5}.hotel-tags{display:flex;gap:6px;flex-wrap:wrap;align-items:center}.amenity-tag{font-size:.75rem;color:var(--brand-dark);background:var(--brand-light);border-radius:20px;padding:3px 10px;font-weight:500}.refund-yes{color:var(--success);font-size:.8rem;font-weight:600}.refund-no{color:var(--danger);font-size:.8rem;font-weight:600}.room-count{font-size:.77rem;color:var(--text-soft);background:var(--surface);border-radius:6px;padding:3px 8px}.hotel-card-footer{display:flex;justify-content:flex-end;align-items:center;margin-top:6px}.hotel-card-actions{display:flex;gap:10px}#hotel-modal-overlay{position:fixed;inset:0;background:rgba(17,24,39,.6);backdrop-filter:blur(4px);z-index:10000;display:flex;align-items:center;justify-content:center;padding:20px;animation:fadeIn .2s ease}@keyframes fadeIn{from{opacity:0}to{opacity:1}}#hotel-modal{background:var(--white);border-radius:18px;max-width:760px;width:100%;max-height:88vh;overflow-y:auto;padding:0;position:relative;box-shadow:var(--shadow-lg);animation:slideUp .25s ease}@keyframes slideUp{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}#hotel-modal-close{position:sticky;top:12px;float:right;margin:12px 14px 0 0;background:rgba(255,255,255,.9);border:1px solid var(--border);border-radius:50%;width:34px;height:34px;font-size:1.3rem;cursor:pointer;color:var(--text-soft);display:flex;align-items:center;justify-content:center;z-index:10;transition:background .2s,color .2s}#hotel-modal-close:hover{background:var(--danger);color:#fff;border-color:var(--danger)}.hotel-modal-imgs{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin:12px 0}.hotel-modal-imgs img{width:100%;border-radius:8px;object-fit:cover;height:150px}.hotel-desc{color:var(--text-soft);font-size:.88rem;line-height:1.65;margin-bottom:12px}.hotel-facilities{columns:2;list-style:none;padding:0;margin:0;font-size:.84rem;color:var(--text)}.hotel-facilities li{padding:3px 0}.hotel-facilities li::before{content:"✔ ";color:var(--brand)}.modal-loader{text-align:center;padding:48px}.modal-loader p{color:var(--text-soft);margin-top:14px;font-size:.93rem}.room-gallery{position:relative;border-radius:18px 18px 0 0;overflow:hidden}.room-gallery-main img{width:100%;height:300px;object-fit:cover;display:block;transition:opacity .3s}.room-gallery-thumbs{position:absolute;bottom:10px;left:50%;transform:translateX(-50%);display:flex;gap:6px;background:rgba(0,0,0,.4);border-radius:40px;padding:6px 10px;backdrop-filter:blur(4px)}.gallery-thumb{width:48px;height:34px;object-fit:cover;border-radius:6px;cursor:pointer;border:2px solid transparent;opacity:.65;transition:opacity .2s,border-color .2s,transform .15s}.gallery-thumb:hover{opacity:.9;transform:scale(1.06)}.gallery-thumb.active{opacity:1;border-color:#fff;transform:scale(1.08)}.room-modal-header{display:flex;justify-content:space-between;align-items:flex-start;flex-wrap:wrap;gap:12px;padding:20px 24px 12px;border-bottom:1px solid var(--border)}.room-modal-header h3{margin:0 0 4px;font-size:1.2rem;font-weight:700;color:var(--text)}.hotel-address{color:var(--text-soft);font-size:.83rem;margin:4px 0 0}.room-stay-info{display:flex;flex-direction:column;align-items:flex-end;gap:4px;font-size:.82rem;color:var(--brand-dark);background:var(--brand-light);padding:10px 14px;border-radius:10px;white-space:nowrap;border:1px solid var(--brand-soft)}.room-facilities{display:flex;flex-wrap:wrap;gap:6px;padding:12px 24px;border-bottom:1px solid var(--surface)}.room-desc{font-size:.85rem;color:var(--text-soft);line-height:1.6;margin:0;padding:12px 24px 0}.room-booking-info-bar{display:flex;gap:20px;flex-wrap:wrap;background:linear-gradient(135deg,var(--brand) 0%,var(--brand-dark) 100%);padding:12px 24px;margin:14px 24px;border-radius:12px;font-size:.88rem;color:#fff;box-shadow:0 4px 14px rgba(99,102,241,.3)}.room-booking-info-bar span{display:flex;align-items:center;gap:6px;font-weight:500}.rooms-heading{font-size:.85rem;font-weight:700;color:var(--text-soft);text-transform:uppercase;letter-spacing:.06em;margin:14px 24px 10px}.room-list{display:flex;flex-direction:column;gap:12px;padding:0 24px 24px;margin-top:4px}.room-card{background:var(--white);border:1.5px solid var(--border);border-radius:14px;overflow:hidden;transition:border-color .2s,box-shadow .2s}.room-card:hover{border-color:var(--brand-soft);box-shadow:0 4px 16px rgba(99,102,241,.1)}.room-summary-row{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;gap:14px;flex-wrap:wrap}.room-summary-info{flex:1;min-width:0}.room-summary-info h4{margin:0 0 7px;font-size:.98rem;font-weight:700;color:var(--text)}.room-tags{display:flex;flex-wrap:wrap;gap:6px}.room-summary-price{display:flex;flex-direction:column;align-items:flex-end;gap:5px;flex-shrink:0}.room-detail-panel{border-top:1px solid var(--border);background:var(--surface)}.room-img-gallery{display:grid;grid-template-columns:2fr 1fr 1fr;grid-template-rows:auto auto;gap:3px;max-height:290px;overflow:hidden}.room-img-thumb{width:100%;height:140px;object-fit:cover;cursor:pointer;transition:opacity .2s,transform .2s}.room-img-thumb:hover{opacity:.88;transform:scale(1.02)}.room-img-main{grid-column:1;grid-row:1/3;height:283px}.room-detail-body{padding:14px 20px 0}.cancel-policies{font-size:.8rem;color:var(--text-soft);margin-bottom:10px;line-height:1.8}.cancel-policies strong{color:var(--text)}.day-rates{font-size:.78rem;color:var(--text-soft);display:flex;flex-wrap:wrap;gap:8px;margin-bottom:10px}.day-rates strong{color:var(--text)}.room-book-footer{display:flex;justify-content:space-between;align-items:center;padding:14px 20px;background:linear-gradient(135deg,#f5f3ff 0%,#ede9fe 100%);border-top:1px solid var(--brand-soft);flex-wrap:wrap;gap:12px}.price-amount{font-size:1.25rem;font-weight:800;color:var(--text);letter-spacing:-.02em}.price-label{font-size:.73rem;color:var(--text-soft);font-weight:500}.price-tax{font-size:.73rem;color:var(--text-soft)}.room-detail-toggle{font-size:.8rem;padding:5px 12px;margin-top:4px;background:var(--white);border:1px solid var(--border);border-radius:20px;cursor:pointer;color:var(--brand);font-weight:600;transition:background .2s}.room-detail-toggle:hover{background:var(--brand-light)}#hotel-booking-overlay{position:fixed;inset:0;background:rgba(17,24,39,.6);backdrop-filter:blur(4px);z-index:10001;display:flex;align-items:center;justify-content:center;padding:20px}#hotel-booking-modal{background:var(--white);border-radius:18px;max-width:580px;width:100%;max-height:88vh;overflow-y:auto;padding:28px 28px 24px;position:relative;box-shadow:var(--shadow-lg)}#hotel-booking-close{position:absolute;top:14px;right:16px;background:var(--surface);border:1px solid var(--border);border-radius:50%;width:32px;height:32px;font-size:1.2rem;cursor:pointer;color:var(--text-soft);display:flex;align-items:center;justify-content:center;transition:background .2s,color .2s}#hotel-booking-close:hover{background:var(--danger);color:#fff;border-color:var(--danger)}#hotel-booking-title{margin:0 0 16px;font-size:1.15rem;font-weight:700;color:var(--text)}.prebook-box{margin-bottom:0}.prebook-summary{background:linear-gradient(135deg,#f5f3ff 0%,#ede9fe 100%);border:1px solid var(--brand-soft);border-radius:12px;padding:16px 18px;margin-bottom:18px}.prebook-row{display:flex;justify-content:space-between;align-items:center;padding:6px 0;font-size:.88rem;border-bottom:1px dashed rgba(99,102,241,.2);gap:10px}.prebook-row:last-child{border-bottom:none}.prebook-label{color:var(--text-soft);min-width:60px;font-weight:500}.prebook-total{font-size:.96rem;padding-top:10px;margin-top:4px}.guest-person-summary{background:linear-gradient(135deg,var(--brand) 0%,var(--brand-dark) 100%);border-radius:10px;padding:11px 16px;font-size:.88rem;color:#fff;font-weight:600;margin-bottom:16px;letter-spacing:.01em}.guest-section-title{font-size:.7rem;text-transform:uppercase;letter-spacing:.08em;color:var(--text-soft);margin:18px 0 10px;font-weight:700}.guest-room-card{border:1.5px solid var(--brand-soft);border-radius:12px;padding:14px 16px;margin-bottom:14px;background:var(--brand-light)}.guest-room-label{font-size:.87rem;font-weight:700;color:var(--brand-dark);margin:0 0 12px;display:flex;align-items:center;gap:8px}.room-pax-badge{background:var(--brand-soft);color:var(--brand-dark);font-size:.73rem;font-weight:700;padding:2px 9px;border-radius:20px}.lead-badge{display:inline-block;background:var(--brand);color:#fff;font-size:.7rem;padding:2px 9px;border-radius:4px;margin-bottom:6px;font-weight:600}.guest-label{display:inline-block;font-size:.77rem;color:var(--text-soft);margin-bottom:6px;font-weight:500}.child-label{color:var(--warning)}.guest-row{margin-bottom:14px}.guest-row-fields{display:flex;gap:8px;flex-wrap:wrap}.guest-row-fields select,.guest-row-fields input{padding:9px 11px;border:1.5px solid var(--border);border-radius:8px;font-size:.88rem;background:var(--white);transition:border-color .2s,box-shadow .2s}.guest-row-fields select{flex-shrink:0}.guest-row-fields input{flex:1;min-width:100px}.guest-row-fields input:focus,.guest-row-fields select:focus{outline:none;border-color:var(--brand);box-shadow:0 0 0 3px rgba(99,102,241,.1)}.guest-age{width:72px!important;flex:none!important}#guest-email,#guest-phone{width:100%;padding:10px 13px;border:1.5px solid var(--border);border-radius:9px;font-size:.9rem;background:var(--white);box-sizing:border-box;transition:border-color .2s,box-shadow .2s}#guest-email:focus,#guest-phone:focus{outline:none;border-color:var(--brand);box-shadow:0 0 0 3px rgba(99,102,241,.1)}#hotel-confirm-book-btn{width:100%;margin-top:10px;padding:14px;font-size:1rem;border-radius:10px}.hotel-error{color:#b91c1c;padding:12px 16px;background:#fef2f2;border:1px solid #fecaca;border-radius:10px;font-size:.88rem}.hotel-no-results{color:var(--text-soft);padding:32px;text-align:center}.booking-success{background:#f0fdf4;border:1.5px solid #86efac;border-radius:12px;padding:18px;margin-top:14px}.booking-success h4{margin:0 0 8px;color:var(--success);font-size:1rem}.booking-success p{margin:4px 0;color:var(--text);font-size:.9rem}.booking-thankyou{max-width:740px;margin:0 auto}.thankyou-header{text-align:center;padding:36px 20px 24px}.thankyou-icon{width:68px;height:68px;background:linear-gradient(135deg,var(--success) 0%,#059669 100%);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:2rem;color:#fff;margin:0 auto 18px;box-shadow:0 8px 24px rgba(16,185,129,.3)}.thankyou-header h2{margin:0 0 8px;color:var(--success);font-size:1.7rem;font-weight:800}.thankyou-header p{color:var(--text-soft);margin:0;font-size:.93rem}.thankyou-card{background:var(--white);border-radius:16px;box-shadow:var(--shadow-md);border:1px solid var(--border);overflow:hidden;margin-bottom:18px}.thankyou-section{padding:22px 28px;border-bottom:1px solid var(--surface)}.thankyou-section:last-child{border-bottom:none}.thankyou-section h3{margin:0 0 14px;font-size:.78rem;color:var(--text-soft);font-weight:700;text-transform:uppercase;letter-spacing:.07em}.thankyou-row{display:flex;justify-content:space-between;align-items:center;padding:7px 0;font-size:.9rem;color:var(--text-soft);border-bottom:1px dashed var(--surface)}.thankyou-row:last-child{border-bottom:none}.thankyou-row strong{color:var(--text);font-weight:600}.voucher-loading{color:var(--text-soft);font-size:.88rem;padding:8px 0;display:flex;align-items:center;gap:8px}.thankyou-note{text-align:center;color:#9ca3af;font-size:.83rem;padding:0 20px 20px;line-height:1.65}.thankyou-actions{text-align:center;margin:16px 0 10px}.thankyou-cancel-section{max-width:740px;margin:0 auto 18px}.thankyou-cancel-section details{background:var(--white);border:1px solid var(--border);border-radius:12px;padding:14px 20px}.thankyou-cancel-section summary{cursor:pointer;color:var(--danger);font-size:.88rem;font-weight:600}.cancel-box{margin-top:14px}.cancel-box p{font-size:.9rem;color:var(--text-soft);margin:0 0 10px}@media print{.hotel-search-card,#hotel-loader,.thankyou-actions,.thankyou-cancel-section,.hotel-btn-primary,.hotel-btn-secondary{display:none!important}.booking-thankyou{max-width:100%}.thankyou-card{box-shadow:none;border:1px solid #ddd}}@media(max-width:900px){.hotel-results-layout{grid-template-columns:1fr}.hotel-filter-sidebar{display:none;position:fixed;inset:0;z-index:9999;overflow-y:auto;border-radius:0;border:none}.hotel-filter-sidebar.hf-open{display:block}.hf-mobile-toggle{display:inline-flex;align-items:center;gap:6px}.hf-header{padding:16px 18px;position:sticky;top:0;z-index:1}.hf-clear-btn{padding:5px 14px;font-size:.85rem}}@media(max-width:680px){.hotel-card{flex-direction:column}.hotel-thumb{width:100%;height:200px}.hotel-thumb-img{width:100%;height:200px;min-height:unset}.hotel-form-row{flex-direction:column}.hotel-card-footer{flex-direction:column;align-items:flex-start;gap:10px}#hotel-modal{border-radius:14px}.room-gallery-thumbs{display:none}.room-img-gallery{grid-template-columns:1fr 1fr}.room-img-main{grid-column:1/3;grid-row:1;height:180px}.room-img-thumb{height:100px}.room-booking-info-bar{gap:10px}}