@media (max-width:768px){.hotels-hero{padding:3rem 1rem!important}.hotels-hero h1{font-size:1.75rem!important;line-height:1.2!important}.hotels-hero p{font-size:.875rem!important}}@media (max-width:640px){.carousel-container{padding-left:0!important;padding-right:0!important}.carousel-scroll{padding-left:1rem;padding-right:1rem}}@media (max-width:480px){.recent-search-card{min-width:220px!important;width:220px!important}}@media (max-width:768px){.offer-card{padding:2rem 1.5rem!important;flex-direction:column!important;text-align:center!important}.offer-card h3{font-size:1.75rem!important}.offer-card .promo-detail{min-width:100%!important}}@media (max-width:640px){.hotel-card{width:260px!important;min-width:260px!important}.hotel-card img{height:160px!important}.hotel-card .content{padding:.75rem!important}}@media (max-width:1024px){.listing-header{flex-direction:column!important;align-items:flex-start!important;gap:1rem!important}.listing-header h1{font-size:1.5rem!important}}@media (max-width:768px){.listing-header h1{font-size:1.25rem!important}.hotel-listing-card{flex-direction:column!important}.hotel-listing-card .image-container{width:100%!important;height:200px!important}.hotel-listing-card .content-container{padding:1rem!important}.hotel-listing-card .price-container{flex-direction:row!important;justify-content:space-between!important;align-items:center!important;width:100%!important;min-width:100%!important;margin-top:1rem!important;padding-top:1rem!important;border-top:1px solid #e5e7eb!important}.hotel-listing-card .price-info{align-items:flex-start!important}.hotel-listing-card .select-room-btn{margin-top:0!important}}@media (max-width:480px){.hotel-listing-card .facilities{flex-wrap:wrap!important}.hotel-listing-card .price-container{flex-direction:column!important;align-items:flex-start!important;gap:1rem!important}.hotel-listing-card .select-room-btn{width:100%!important}}@media (max-width:1024px){.hotel-detail-grid{grid-template-columns:1fr!important}}@media (max-width:768px){.hotel-detail h1{font-size:1.5rem!important}.hotel-gallery{grid-template-columns:1fr!important}.hotel-gallery .main-image{height:300px!important}.hotel-gallery .thumbnails{flex-direction:row!important;max-height:none!important;overflow-x:auto!important;overflow-y:hidden!important;padding-bottom:.5rem!important}.hotel-gallery .thumbnail{width:60px!important;height:60px!important;flex-shrink:0!important}.room-card{flex-direction:column!important}.room-card .room-image{width:100%!important;height:200px!important}.room-card .room-content{padding:1rem!important}.room-card .room-price{flex-direction:row!important;justify-content:space-between!important;align-items:center!important;width:100%!important;padding-top:1rem!important;border-top:1px solid #e5e7eb!important}.room-card .book-btn{margin-top:0!important}.amenities-grid{grid-template-columns:1fr!important}.hotel-map{height:250px!important}}@media (max-width:480px){.hotel-detail h1{font-size:1.25rem!important}.hotel-gallery .main-image{height:250px!important}.room-card .room-price{flex-direction:column!important;align-items:flex-start!important;gap:1rem!important}.room-card .book-btn{width:100%!important}}@media (max-width:1024px){.checkout-grid{grid-template-columns:1fr!important}.checkout-sidebar{order:-1!important}}@media (max-width:768px){.checkout-page h1{font-size:1.75rem!important}.checkout-page h2{font-size:1.25rem!important}.guest-form-grid{grid-template-columns:1fr!important}.checkout-hotel-summary,.guest-card{padding:1rem!important}.checkout-dates-grid{grid-template-columns:1fr!important;gap:1rem!important}.price-summary{position:static!important;margin-top:1.5rem!important}}@media (max-width:480px){.checkout-page h1{font-size:1.5rem!important}.guest-input-group{flex-direction:column!important}.guest-input-group input,.guest-input-group select{width:100%!important}.confirm-booking-btn{padding:1rem!important;font-size:1rem!important}}@media (max-width:768px){.payment-page{padding:1rem!important}.payment-page h1{font-size:1.5rem!important}.payment-method-card,.payment-summary,.qr-code-container{padding:1rem!important}.qr-code-container img{height:200px!important;width:200px!important}.pay-button{padding:.875rem!important;font-size:1rem!important}}@media (max-width:480px){.payment-page h1{font-size:1.25rem!important}.payment-summary p{font-size:.875rem!important}.qr-code-container img{height:180px!important;width:180px!important}}@media (max-width:1024px){.booking-detail-grid{grid-template-columns:1fr!important}.booking-sidebar{order:-1!important}}@media (max-width:768px){.booking-detail-page{padding:1rem!important}.booking-detail h1{font-size:1.25rem!important}.booking-detail h2{font-size:1.5rem!important}.booking-hotel-card{padding:1rem!important}.booking-dates-container{flex-direction:column!important;align-items:flex-start!important;gap:1rem!important}.booking-dates-container .nights-badge{align-self:flex-start!important}.guest-details-card{padding:1rem!important}.guest-item{flex-direction:column!important;align-items:flex-start!important;gap:.5rem!important}.cancellation-policy-card,.payment-summary-sidebar{padding:1rem!important}}@media (max-width:480px){.booking-detail h1{font-size:1.125rem!important}.booking-detail h2{font-size:1.25rem!important}.booking-hotel-card h2{font-size:1.125rem!important}.cancel-booking-btn{width:100%!important}}@media (max-width:1024px){.hotel-booking-form{flex-direction:column!important;gap:1rem!important}.hotel-booking-form .form-field,.hotel-booking-form .search-btn{width:100%!important}}@media (max-width:768px){.hotel-booking-form{padding:1rem!important}.hotel-booking-form .form-label{font-size:.75rem!important}.hotel-booking-form input,.hotel-booking-form select{font-size:.875rem!important;padding:.625rem!important}}@media (max-width:640px){.pagination-container{flex-wrap:wrap!important;gap:.5rem!important}.pagination-btn{padding:.5rem .75rem!important;font-size:.875rem!important}.pagination-number{width:2rem!important;height:2rem!important;font-size:.875rem!important}}@media (max-width:768px){.loading-spinner{height:2.5rem!important;width:2.5rem!important}.error-message{padding:.75rem 1rem!important;font-size:.875rem!important}}@media (max-width:640px){.dialog-content{max-width:calc(100vw - 2rem)!important;margin:1rem!important}.dialog-header h2{font-size:1.125rem!important}.dialog-footer{flex-direction:column!important;gap:.5rem!important}.dialog-footer button{width:100%!important}}@media (max-width:768px){.container{padding-left:1rem!important;padding-right:1rem!important}}@media (max-width:480px){.container{padding-left:.75rem!important;padding-right:.75rem!important}}.line-clamp-1{-webkit-line-clamp:1}.line-clamp-1,.line-clamp-2{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical}.line-clamp-2{-webkit-line-clamp:2}.line-clamp-3{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3}.scrollbar-hide{-ms-overflow-style:none;scrollbar-width:none}.scrollbar-hide::-webkit-scrollbar{display:none}@media (hover:none) and (pointer:coarse){a,button,input,select,textarea{min-height:44px!important}.hover\:bg-gray-100:hover,.hover\:bg-primary\/90:hover,.hover\:shadow-lg:hover{background-color:inherit!important;box-shadow:inherit!important}}@media (max-width:896px) and (orientation:landscape){.hotels-hero{padding:2rem 1rem!important}.hotel-gallery .main-image{height:250px!important}.modal-content{max-height:90vh!important;overflow-y:auto!important}}