:root{--hotel-primary:#f59e0b;--hotel-primary-dark:#d97706;--hotel-primary-light:#fbbf24;--hotel-secondary:#fb923c;--hotel-accent:#fdba74;--hotel-background:#fef3c7;--hotel-surface:#ffffff;--hotel-text:#374151;--hotel-text-light:#6b7280;--hotel-border:#e5e7eb;--hotel-success:#10b981;--hotel-warning:#f59e0b;--hotel-error:#ef4444;--hotel-blue:var(--hotel-primary);--hotel-light-blue:var(--hotel-primary-light);--hotel-orange:var(--hotel-primary);--hotel-dark-orange:var(--hotel-primary-dark);--hotel-gray:var(--hotel-text-light);--hotel-light-gray:var(--hotel-background);--hotel-white:var(--hotel-surface)}*{box-sizing:border-box}html{touch-action:manipulation}body,html{max-width:100vw;overflow-x:hidden}body{font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;background-color:var(--hotel-light-gray);margin:0;padding:0;color:var(--hotel-text);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.btn,.mobile-cart-compact-btn,[role=button],a,button{touch-action:manipulation;-webkit-tap-highlight-color:transparent;cursor:pointer}.hotel-header{background-color:var(--hotel-white);border-bottom:1px solid var(--hotel-border);padding:.5rem;display:flex;flex-direction:column;align-items:center;gap:.5rem;box-shadow:0 1px 3px rgba(0,0,0,.1);width:100%}.hotel-logo{height:50px;width:auto;max-width:200px;-o-object-fit:contain;object-fit:contain}.hotel-header-nav{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap;justify-content:center}.hotel-nav-item{display:flex;align-items:center;gap:.25rem;color:var(--hotel-gray);text-decoration:none;font-size:.8rem;cursor:pointer;transition:color .2s ease}.hotel-nav-item:hover{color:var(--hotel-blue)}.hotel-nav-item svg{width:1rem;height:1rem}.hotel-flag{width:18px;height:auto;border-radius:2px}@media (min-width:768px){.hotel-header{flex-direction:row;justify-content:space-between;padding:.75rem 2rem;max-width:1200px;margin:0 auto}.hotel-logo{height:70px;max-width:300px}.hotel-header-nav{gap:2rem}.hotel-nav-item{font-size:.9rem;gap:.5rem}.hotel-nav-item svg{width:1.25rem;height:1.25rem}.hotel-flag{width:20px}}.hotel-search-form{background-color:var(--hotel-white);border-radius:8px;box-shadow:0 4px 6px rgba(0,0,0,.1);padding:1rem;margin:.5rem;display:flex;flex-direction:column}.hotel-search-row{gap:.75rem}.hotel-form-group,.hotel-search-row{display:flex;flex-direction:column;width:100%}.hotel-label{font-size:.7rem;font-weight:600;color:var(--hotel-text);margin-bottom:.25rem;text-transform:uppercase;letter-spacing:.5px}.hotel-input{padding:.75rem;border:1px solid var(--hotel-border);border-radius:6px;font-size:.9rem;background-color:var(--hotel-white);transition:border-color .2s ease,box-shadow .2s ease;height:44px;width:100%}.hotel-input:focus{outline:none;border-color:var(--hotel-blue);box-shadow:0 0 0 3px rgba(30,64,175,.1)}.hotel-input-group{display:flex;border:1px solid var(--hotel-border);border-radius:6px;overflow:hidden;height:44px}.hotel-input-group input{border:none;flex:1;padding:.75rem;font-size:.9rem;min-width:0}.hotel-input-group input:focus{outline:none}.hotel-input-group .divider{width:1px;background-color:var(--hotel-border)}.hotel-search-btn{background-color:var(--hotel-orange);color:var(--hotel-white);border:none;border-radius:6px;padding:.75rem 1.5rem;font-size:1rem;font-weight:600;cursor:pointer;transition:background-color .2s ease;height:48px;width:100%;margin-top:.5rem}.hotel-search-btn:hover{background-color:var(--hotel-dark-orange)}@media (min-width:768px){.hotel-search-form{margin:.5rem auto;max-width:1200px;padding:1rem 1.5rem}.hotel-search-row{flex-direction:row;flex-wrap:wrap;gap:1rem}.hotel-form-group{flex:1;min-width:150px}.hotel-search-btn{width:auto;margin-top:0;align-self:flex-end;min-width:100px}}@media (min-width:1024px){.hotel-search-form{padding:.75rem 1.5rem;max-height:80px;flex-direction:row;align-items:center}.hotel-search-row{flex-wrap:nowrap;align-items:center;grid-template-columns:2fr 2fr 2fr 2fr auto}.hotel-input{height:40px;font-size:.875rem}.hotel-input-group{height:40px}.hotel-search-btn{height:40px;padding:.5rem 1.5rem;font-size:.875rem}}.hotel-calendar-container{background-color:var(--hotel-white);border-radius:8px;box-shadow:0 4px 6px rgba(0,0,0,.1);padding:.75rem;margin:.5rem;display:flex;flex-direction:column}.hotel-calendar-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem;position:relative}.hotel-calendar-nav-arrow{width:36px;height:36px;display:flex;align-items:center;justify-content:center;background-color:transparent;border:1px solid #d1d5db;border-radius:50%;cursor:pointer;transition:all .2s ease;font-size:16px;flex-shrink:0}.hotel-calendar-nav-arrow:disabled{opacity:.5;cursor:not-allowed}.hotel-calendar-grid{display:flex;flex-direction:column;gap:1.5rem}.hotel-month{text-align:center}.hotel-month-header{font-size:1rem;font-weight:700;color:var(--hotel-text);margin-bottom:.75rem;text-transform:capitalize}.hotel-weekdays{display:grid;grid-template-columns:repeat(7,1fr);gap:1px;margin-bottom:.25rem}.hotel-weekday{padding:.25rem;font-size:.65rem;font-weight:600;color:var(--hotel-gray);text-transform:uppercase}.hotel-days{display:grid;grid-template-columns:repeat(7,1fr);gap:0;border:1px solid var(--hotel-border);grid-auto-rows:1fr;position:relative}.hotel-day{position:relative;aspect-ratio:1;border-right:1px solid var(--hotel-border);border-bottom:1px solid var(--hotel-border);background-color:var(--hotel-white);cursor:pointer;transition:all .2s ease;display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:48px;font-size:.65rem;padding:2px}.hotel-day:nth-child(7n){border-right:none}.hotel-day:nth-last-child(-n+7){border-bottom:none}.hotel-days:after{content:"";position:absolute;bottom:-1px;left:-1px;right:-1px;height:1px;background-color:var(--hotel-border)}.hotel-day.selected{background-color:var(--hotel-orange);color:var(--hotel-white);border-color:var(--hotel-orange)}.hotel-day.hover-range{position:relative;border-color:var(--hotel-primary)}.hotel-day.hover-range:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background-color:var(--hotel-primary);opacity:.15;pointer-events:none;z-index:0}.hotel-day.hover-range>*{position:relative;z-index:1}.hotel-day.disabled{background-color:#f9fafb;color:var(--hotel-text-light);cursor:not-allowed}.hotel-days>.hotel-day:empty:last-child{border-bottom:none}.hotel-day.past-date{background-color:#f3f4f6;color:#9ca3af;opacity:.4}.hotel-day.no-availability{position:relative;background-color:#fcecec!important;color:#9ca3af;cursor:not-allowed!important}.hotel-day.no-availability:hover{background-color:#fcdada!important;border-color:#fca5a5}.hotel-day.no-availability .hotel-day-number{color:#9ca3af}.hotel-day.checkout-only{position:relative;background-color:#ffffff!important;color:#374151;cursor:pointer!important;border:1px solid #d1d5db}.hotel-day.checkout-only:hover{background-color:#f9fafb!important;border-color:var(--hotel-orange)}.hotel-day.checkout-only .hotel-day-number{color:#374151}.hotel-day.checkout-only.selected,.hotel-day.selected.checkout-only{background-color:var(--hotel-orange)!important;color:var(--hotel-white)!important;cursor:pointer!important;border-color:var(--hotel-orange)!important;opacity:1!important}.hotel-day.checkout-only.selected .hotel-day-number,.hotel-day.checkout-only.selected .hotel-icon-checkout,.hotel-day.selected.checkout-only .hotel-day-number,.hotel-day.selected.checkout-only .hotel-icon-checkout{color:var(--hotel-white)!important}.hotel-day.checkout-only.disabled.selected,.hotel-day.disabled.checkout-only.selected,.hotel-day.disabled.selected.checkout-only,.hotel-day.selected.checkout-only.disabled{background-color:var(--hotel-orange)!important;color:var(--hotel-white)!important;cursor:pointer!important;opacity:1!important}div.hotel-day.checkout-only.selected,div.hotel-day.selected.checkout-only{background-color:var(--hotel-orange)!important;color:var(--hotel-white)!important}.hotel-day-number{font-size:.8rem;font-weight:600;margin-bottom:1px}.hotel-icon-checkin,.hotel-icon-checkout{position:absolute;bottom:1px;width:12px;height:12px;z-index:1}.hotel-icon-checkin{left:1px;color:var(--hotel-orange)}.hotel-icon-checkout{right:1px;color:var(--hotel-orange)}.hotel-day.selected .hotel-icon-checkin,.hotel-day.selected .hotel-icon-checkout{color:var(--hotel-white)}.hotel-day-price{font-size:.6rem;font-weight:700;color:var(--hotel-blue);line-height:1}.hotel-day.selected .hotel-day-price{color:var(--hotel-white)}.hotel-day-min-stay{position:absolute;top:1px;right:1px;font-size:.5rem;color:var(--hotel-text-light);background-color:rgba(255,255,255,.8);padding:1px 2px;border-radius:2px}@media (min-width:768px){.hotel-calendar-container{padding:1rem;margin:.5rem auto;max-width:1200px}.hotel-calendar-grid{flex-direction:row;gap:2rem}.hotel-month{flex:1}.hotel-day{min-height:60px;font-size:.7rem}.hotel-day-number{font-size:.85rem}.hotel-day-price{font-size:.65rem}.hotel-weekday{font-size:.7rem;padding:.4rem}.hotel-icon-checkin,.hotel-icon-checkout{width:14px;height:14px}}@media (min-width:1024px){.hotel-calendar-container{padding:1.5rem;margin:1rem auto}.hotel-calendar-nav-arrow{width:40px;height:40px;font-size:18px}.hotel-month-header{font-size:1.25rem;margin-bottom:1rem}.hotel-day{min-height:70px;font-size:.75rem;border:1px solid #e5e7eb}.hotel-day-number{font-size:1.125rem;font-weight:700}.hotel-day-price{font-size:.9rem;font-weight:700}.hotel-weekday{font-size:.75rem;padding:.5rem}.hotel-icon-checkin,.hotel-icon-checkout{width:16px;height:16px;bottom:2px}.hotel-icon-checkin{left:2px}.hotel-icon-checkout{right:2px}.hotel-day-min-stay{top:2px;right:2px;font-size:.625rem;padding:1px 3px}}.hotel-calendar-legend{margin-top:.75rem;padding:.5rem;background-color:#f8fafc;border-radius:6px;border:1px solid var(--hotel-border);flex-shrink:0}.hotel-legend-title{font-size:.7rem;font-weight:600;color:var(--hotel-text);margin-bottom:.4rem}.hotel-legend-items{display:flex;flex-wrap:wrap;gap:.5rem}.hotel-legend-item{display:flex;align-items:center;gap:.25rem;font-size:.6rem;color:var(--hotel-text)}.hotel-legend-sample{width:14px;height:14px;border:1px solid var(--hotel-border);border-radius:2px;position:relative;flex-shrink:0}.hotel-legend-sample.available{background-color:var(--hotel-white)}.hotel-legend-sample.selected{background-color:var(--hotel-orange)}.hotel-legend-sample.unavailable{background-color:#fcecec}.hotel-legend-sample.past{background-color:#f3f4f6;opacity:.4}.hotel-legend-sample.min-stay{background-color:#10b981;color:white;font-size:7px;display:flex;align-items:center;justify-content:center;font-weight:700}@media (min-width:768px){.hotel-calendar-legend{padding:.75rem;margin-top:1rem}.hotel-legend-title{font-size:.8rem;margin-bottom:.5rem}.hotel-legend-items{gap:1rem}.hotel-legend-item{font-size:.7rem;gap:.4rem}.hotel-legend-sample{width:16px;height:16px}.hotel-legend-sample.min-stay{font-size:8px}}.hotel-footer{background:#ffffff;color:var(--hotel-primary);padding:.75rem 1rem;margin-top:2rem;min-height:50px;display:flex;align-items:center;box-shadow:0 -2px 4px rgba(0,0,0,.1);border-top:1px solid #e5e7eb}.hotel-footer-content{width:100%;display:flex;flex-direction:column;align-items:center;gap:.5rem;text-align:center}.hotel-footer-info{font-size:.65rem}.hotel-footer-contact{display:flex;gap:.75rem;align-items:center;flex-wrap:wrap;justify-content:center}.hotel-footer-contact a{color:var(--hotel-primary);text-decoration:none;display:flex;align-items:center;gap:.25rem;font-size:.65rem}.hotel-footer-contact a:hover{color:var(--hotel-primary-dark);opacity:.8}.hotel-powered-by{display:flex;align-items:center;gap:.5rem;font-size:.65rem;color:var(--hotel-primary)}@media (min-width:768px){.hotel-footer{padding:.75rem 2rem;margin-top:3rem;height:50px}.hotel-footer-content{max-width:1200px;margin:0 auto;flex-direction:row;justify-content:space-between;flex-wrap:nowrap;gap:1rem;height:100%}.hotel-footer-info{font-size:.75rem;white-space:nowrap}.hotel-footer-contact{gap:1rem}.hotel-footer-contact a,.hotel-powered-by{font-size:.75rem;white-space:nowrap}}.hotel-occupancy-dropdown{position:absolute;top:100%;left:0;right:0;background-color:var(--hotel-white);border:1px solid var(--hotel-border);border-radius:6px;box-shadow:0 10px 25px rgba(0,0,0,.15);z-index:50;padding:1rem;margin-top:.5rem;max-height:70vh;overflow-y:auto}.hotel-occupancy-section{margin-bottom:1rem}.hotel-occupancy-section:last-child{margin-bottom:0}.hotel-occupancy-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}.hotel-occupancy-title{font-weight:600;color:var(--hotel-text);font-size:.9rem}.hotel-counter{display:flex;align-items:center;gap:.75rem}.hotel-counter-btn{width:36px;height:36px;border:1px solid var(--hotel-border);background-color:var(--hotel-white);border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease;color:var(--hotel-text)}.hotel-counter-btn svg{color:var(--hotel-text);fill:currentColor}.hotel-counter-btn:hover:not(:disabled){border-color:var(--hotel-blue);background-color:#f0f9ff}.hotel-counter-btn:disabled{opacity:.5;cursor:not-allowed}.hotel-counter-value{font-weight:600;min-width:2rem;text-align:center;font-size:1rem}.hotel-occupancy-section select{width:100%;max-width:200px;padding:.5rem;border:1px solid var(--hotel-border);border-radius:4px;background-color:var(--hotel-white);font-size:.875rem;color:var(--hotel-text)}.hotel-occupancy-section select:focus{outline:none;border-color:var(--hotel-blue);box-shadow:0 0 0 2px rgba(30,64,175,.1)}@media (min-width:768px){.hotel-occupancy-dropdown{padding:1.5rem;max-height:none;overflow-y:visible}.hotel-occupancy-section{margin-bottom:1.5rem}.hotel-occupancy-header{margin-bottom:1rem}.hotel-counter-btn{width:32px;height:32px}.hotel-counter{gap:1rem}}.rooms-container{width:100%;max-width:100vw;padding-left:.5rem;padding-right:.5rem;box-sizing:border-box}.room-card *,.rooms-container *,.search-summary *{max-width:100%;box-sizing:border-box}.room-card,.rooms-container,.search-summary{word-wrap:break-word;overflow-wrap:break-word}@media (min-width:768px){.rooms-container{padding-left:1rem;padding-right:1rem}}@media (min-width:1024px){.rooms-container{max-width:1260px;margin:0 auto;padding-left:2rem;padding-right:2rem}}.hotel-day-price-skeleton{position:relative;overflow:hidden;background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0 50%,#f0f0f0 75%);background-size:200% 100%;animation:shimmer 2s infinite;border-radius:4px}.hotel-day-price-skeleton:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.4),transparent);transform:translateX(-100%);animation:shimmer-overlay 1.5s infinite}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes shimmer-overlay{0%{transform:translateX(-100%)}to{transform:translateX(100%)}}.calendar-highlight{animation:calendarFlash .5s ease-in-out 3;border:2px solid var(--hotel-orange)!important;border-radius:8px}@keyframes calendarFlash{0%,to{box-shadow:0 0 0 0 rgba(245,158,11,.7)}50%{box-shadow:0 0 0 5px rgba(245,158,11,.3)}}.occupancy-blink{animation:occupancyBlink .4s ease-in-out 3}@keyframes occupancyBlink{0%,to{background-color:var(--hotel-white);border-color:var(--hotel-border)}50%{background-color:rgba(245,158,11,.1);border-color:var(--hotel-orange)}}.blink-animation{animation:blinkEffect .5s ease-in-out 3}@keyframes blinkEffect{0%,to{background-color:var(--hotel-white);border-color:var(--hotel-border)}50%{background-color:rgba(245,158,11,.2);border-color:var(--hotel-orange);box-shadow:0 0 0 3px rgba(245,158,11,.3)}}.hotel-search-btn.blink-animation{animation:blinkButtonEffect .5s ease-in-out 3}@keyframes blinkButtonEffect{0%,to{background-color:var(--hotel-orange);transform:scale(1)}50%{background-color:var(--hotel-dark-orange);transform:scale(1.05);box-shadow:0 0 0 3px rgba(245,158,11,.3)}}@keyframes slideInDown{0%{opacity:0;transform:translateX(-50%) translateY(-20px)}to{opacity:1;transform:translateX(-50%) translateY(0)}}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.hotel-language-option.active{background-color:transparent;color:var(--hotel-blue);border:1px solid var(--hotel-blue);border-radius:4px;padding:.25rem .5rem}.hotel-language-option.active .hotel-flag{filter:none}.hotel-language-option{transition:all .2s ease;cursor:pointer;padding:.25rem .5rem;border-radius:4px}.hotel-language-option:hover{background-color:var(--hotel-border)}.room-image-overlay{opacity:0;transition:opacity .2s ease;pointer-events:none}.room-image-container:hover .room-image-overlay{opacity:1!important}.room-card{transition:box-shadow .3s ease}.room-card:hover{box-shadow:0 4px 12px rgba(0,0,0,.12)!important}.room-accent-bar{opacity:.3;transition:opacity .3s ease}.room-card:hover .room-accent-bar{opacity:1}.search-summary{flex-direction:column;gap:.75rem;padding:.75rem!important}.search-summary h2{font-size:1.1rem!important;text-align:center}.search-summary>div:first-child{text-align:center}.search-summary>div:first-child>div{justify-content:center!important;gap:.5rem 1rem!important}.search-summary button{width:100%;margin-left:0!important}@media (max-width:1023px){.room-top-section{flex-direction:column!important}.room-top-section>div:first-of-type{width:100%!important}.room-top-section .room-image-container,.room-top-section>div:first-of-type>div:first-child{width:100%!important;max-width:none!important}}.rooms-main-content{display:flex;flex-direction:column;gap:1rem}.rooms-list{width:100%}.room-card{-webkit-tap-highlight-color:transparent}@media (hover:none) and (pointer:coarse){.room-card:hover{box-shadow:0 2px 8px rgba(0,0,0,.1)!important}.room-card:hover .room-accent-bar{opacity:.3}.room-image-container:hover .room-image-overlay{opacity:0!important}}.room-card .room-top-section{flex-direction:column!important;padding:1rem!important}.room-card .room-image-section{width:100%;margin-bottom:1rem}.room-card .room-image-container{width:100%;max-width:none}.room-card .room-image-container img{width:100%;height:200px;-o-object-fit:cover;object-fit:cover;border-radius:6px}.room-card .amenities-container,.room-card .amenities-grid{display:flex!important;flex-wrap:wrap;gap:.5rem 1rem;justify-content:flex-start;margin-top:.75rem;width:100%}.room-card .amenities-container>div,.room-card .amenity-item{flex:0 0 auto;min-width:45px;max-width:70px}.room-card .room-details-section{width:100%}.room-card .room-title-row{flex-direction:column!important;align-items:flex-start!important;gap:.5rem!important}.room-card .room-title-row h3{font-size:1.1rem!important}.room-card .capacity-info{font-size:.8rem}.room-card .price-section{text-align:center!important;margin:1rem 0}.room-card .price-main{font-size:1.5rem!important}.room-card .price-actions{flex-direction:column!important;gap:.75rem;align-items:stretch!important}.room-card .advertise{text-align:center}.room-card .quantity-selector{width:100%}.escolher-btn,.room-card .hotel-search-btn.escolher-btn,.room-card button.hotel-search-btn.escolher-btn,button.hotel-search-btn.escolher-btn{background-color:#ffffff!important;background:#ffffff!important;color:var(--hotel-primary,#10b981)!important;border:2px solid var(--hotel-primary,#10b981)!important;box-shadow:none!important;font-size:1rem!important;font-weight:600!important}.escolher-btn:hover,.room-card .hotel-search-btn.escolher-btn:hover,.room-card button.hotel-search-btn.escolher-btn:hover,button.hotel-search-btn.escolher-btn:hover{background-color:#ffffff!important;background:#ffffff!important;color:var(--hotel-primary,#10b981)!important;opacity:.7!important;border:2px solid var(--hotel-primary,#10b981)!important}@media (max-width:1023px){.room-card .hotel-search-btn,.room-card button:not(:disabled){position:relative;z-index:100;-webkit-tap-highlight-color:rgba(0,0,0,.1);touch-action:manipulation;cursor:pointer!important;pointer-events:auto!important}.room-card .hotel-search-btn{min-height:48px;min-width:120px;padding:12px 24px!important;-webkit-appearance:none;-moz-appearance:none;appearance:none}.room-card .hotel-search-btn:active{transform:scale(.98);opacity:.9}}.room-card .meal-plans-section{margin-top:1rem;padding-top:1rem;border-top:1px solid var(--hotel-border)}.room-card .meal-plans-grid{display:flex;flex-direction:column;gap:.75rem}.room-card .meal-plan-card{flex-direction:column;padding:.75rem;text-align:center}.room-card .meal-plan-price{margin:.5rem 0}.room-card .meal-plan-button{width:100%}.cart-sidebar{display:none;position:fixed;bottom:0;left:0;right:0;z-index:1000;background:white;border-radius:16px 16px 0 0;box-shadow:0 -4px 20px rgba(0,0,0,.15);max-height:60vh;overflow-y:auto;transform:translateY(calc(100% - 80px));transition:transform .3s ease}.cart-sidebar.has-items{display:block}.cart-sidebar.show{display:block;transform:translateY(0)}.mobile-cart-compact{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1rem;background:white;border-bottom:1px solid #e5e7eb;cursor:pointer;min-height:64px}.mobile-cart-compact-info{display:flex;align-items:center;gap:.75rem;flex:1}.mobile-cart-compact-icon{width:40px;height:40px;background:var(--hotel-primary);border-radius:50%;position:relative}.mobile-cart-compact-icon,.mobile-cart-compact-icon .badge{display:flex;align-items:center;justify-content:center;color:white}.mobile-cart-compact-icon .badge{position:absolute;top:-4px;right:-4px;background:var(--hotel-error,#ef4444);font-size:.65rem;font-weight:700;min-width:18px;height:18px;border-radius:9px}.mobile-cart-compact-text{display:flex;flex-direction:column}.mobile-cart-compact-text .items-count{font-size:.75rem;color:#6b7280}.mobile-cart-compact-text .total-price{font-size:1rem;font-weight:700;color:#111827}.mobile-cart-compact-btn{background:var(--hotel-primary);color:white;border:none;border-radius:8px;padding:.75rem 1.25rem;font-size:.875rem;font-weight:600;cursor:pointer;white-space:nowrap}.mobile-cart-toggle{display:none!important}.cart-overlay{display:none;position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.5);z-index:999}.cart-overlay.show{display:block}.rooms-list.has-cart-bar{padding-bottom:90px}.cart-sidebar #basket,.cart-sidebar .sticky.scrolled-basket{width:100%!important;max-width:100%!important;height:auto!important;max-height:none!important;box-shadow:none!important;border-radius:0!important}.cart-sidebar .basket-rooms{padding:1rem!important}.cart-sidebar .basket-room,.cart-sidebar .room-basket-holder{width:100%!important}.cart-sidebar .basket-body-scroll{max-height:40vh;overflow-y:auto}.cart-sidebar .gray-basket{border-radius:0!important}.event-banner{flex-direction:column;text-align:center;gap:.5rem;padding:.75rem!important}.event-banner .event-icon{margin:0 auto}.alternative-dates,.alternative-dates button{width:100%}@media (min-width:768px){.search-summary{flex-direction:row;padding:1rem!important}.search-summary h2{font-size:1.25rem!important;text-align:left}.search-summary-info{justify-content:flex-start;font-size:.875rem}.search-summary button{width:auto;margin-left:1rem!important}.room-card .room-top-section{flex-direction:row!important;padding:1.25rem!important}.room-card .room-image-section{width:auto;margin-bottom:0}.room-card .room-image-container{width:200px;max-width:200px}.room-card .room-image-container img{height:150px}.room-card .price-section{text-align:right!important}.room-card .price-actions{flex-direction:row!important;justify-content:flex-end!important;align-items:flex-start!important}.room-card .quantity-selector{width:auto}.room-card .meal-plans-grid{flex-direction:row;flex-wrap:wrap}.room-card .meal-plan-card{flex:1;min-width:200px;flex-direction:column}.event-banner{flex-direction:row;text-align:left}}@media (min-width:1024px){.rooms-main-content{flex-direction:row;align-items:flex-start}.rooms-list{flex:1}.cart-sidebar{display:block!important;position:sticky!important;top:20px;width:320px;max-height:none;transform:none!important;border-radius:8px;box-shadow:0 2px 8px rgba(0,0,0,.1)}.cart-overlay,.mobile-cart-compact,.mobile-cart-toggle{display:none!important}.rooms-list.has-cart-bar{padding-bottom:0}.room-card .room-image-container img{height:180px}.room-card .amenities-grid{justify-content:flex-start}}.checkout-header{flex-direction:column;gap:.75rem;padding:.75rem!important}.checkout-header .logo-section{text-align:center}.checkout-header .logo-section img{height:50px}.checkout-header .search-info{display:none}.checkout-header .language-selector{justify-content:center}.checkout-grid{display:flex!important;flex-direction:column!important;gap:1rem!important;width:100%!important;max-width:100%!important}.checkout-section{padding:1rem!important;width:100%!important;box-sizing:border-box!important}.checkout-section h3{font-size:.9rem!important}.checkout-form-grid{grid-template-columns:1fr!important}.checkout-form-row,.payment-methods-grid{flex-direction:column!important;gap:.75rem}.payment-method-card{padding:.75rem}.card-brands-grid{flex-wrap:wrap;gap:.5rem}.card-brand-item{width:50px;height:35px}.checkout-summary{position:relative!important;margin-top:1rem}.checkout-summary-item{flex-direction:column;gap:.25rem;text-align:center}.checkout-submit-btn{width:100%;padding:1rem!important;font-size:1rem!important}.checkout-input{font-size:16px!important;min-height:48px}@media (min-width:768px){.checkout-header{flex-direction:row;padding:.75rem 1rem!important}.checkout-header .logo-section img{height:60px}.checkout-header .search-info{display:flex}.checkout-grid{display:grid!important;gap:1rem!important}.checkout-form-grid,.checkout-grid{grid-template-columns:1fr 1fr!important}.checkout-form-row,.payment-methods-grid{flex-direction:row!important}}@media (min-width:1024px){.checkout-grid{grid-template-columns:1fr 1fr 320px!important}.checkout-summary{position:sticky!important;top:1rem}}@keyframes swal2-show{0%{transform:scale(.8);opacity:0}to{transform:scale(1);opacity:1}}@media (max-width:767px){.hotel-day{min-height:52px}.hotel-counter-btn{width:40px;height:40px}.hotel-input,.hotel-search-btn{min-height:48px}.hotel-input{font-size:16px}.room-card>div:first-child{flex-direction:column!important;padding:1rem!important}.room-card>div:first-child>div:first-of-type{width:100%!important}.hotel-counter-btn,.hotel-day{-webkit-touch-callout:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.hotel-counter-btn,.hotel-day,.room-card{-webkit-tap-highlight-color:transparent}.hotel-occupancy-dropdown{-webkit-overflow-scrolling:touch}}@supports (padding:max(0px)){.hotel-footer,.hotel-header{padding-left:max(1rem,env(safe-area-inset-left));padding-right:max(1rem,env(safe-area-inset-right))}.hotel-footer{padding-bottom:max(.75rem,env(safe-area-inset-bottom))}}