.flight-booking-page-container{background-color:#f7f3ee;min-height:100vh;padding-bottom:4rem}.flight-breadcrumb-strip{background-color:#f7f3ee;border-bottom:1px solid #E7E0D8;padding:.75rem 0}.flight-breadcrumb-strip .breadcrumb-list{display:flex;align-items:center;gap:.5rem;list-style:none;font-size:.85rem;color:#334155;margin:0;padding:0}.flight-breadcrumb-strip .breadcrumb-list a{color:#b85237;text-decoration:none;font-weight:600}.flight-breadcrumb-strip .breadcrumb-list a:hover{text-decoration:underline;color:#a0432b}.flight-breadcrumb-strip .breadcrumb-list li:after{content:"/";margin-left:.5rem;color:#475569}.flight-breadcrumb-strip .breadcrumb-list li:last-child:after{content:""}.flight-breadcrumb-strip .breadcrumb-list li.active{color:#0f172a;font-weight:800}.flight-hero-section{padding:3rem 0 3.5rem;background:#f7f3ee;color:#1c1917;position:relative}.flight-hero-header{max-width:800px;margin:0 auto 2rem;text-align:center}.flight-eyebrow{display:inline-block;font-size:.75rem;font-weight:800;color:#94331c;background:#efe8df;border:1px solid #E7E0D8;padding:.35rem .95rem;border-radius:9999px;margin-bottom:.85rem;letter-spacing:.05em}.flight-hero-title{font-size:clamp(2.2rem,4vw,3rem);font-weight:900;color:#1c1917;line-height:1.12;margin-bottom:.75rem;font-family:Outfit,Inter,sans-serif}.flight-hero-subtitle{font-size:1rem;color:#57534e;line-height:1.6;margin-bottom:1.5rem}.smart-search-widget-card{background:#fff;color:#1c1917;border-radius:32px;padding:2rem 2.25rem 2.5rem;box-shadow:0 16px 40px #1c191714;border:1px solid #E7E0D8;position:relative;overflow:visible}.smart-search-widget-card.notched-card{margin-bottom:1rem}.widget-top-control-strip{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;gap:1rem;flex-wrap:wrap;width:100%}.category-pills-group{display:flex;align-items:center;gap:.5rem}.cat-pill-btn{background:#efe8df;color:#57534e;border:1px solid #E7E0D8;padding:.55rem 1.25rem;border-radius:9999px;font-size:.88rem;font-weight:800;cursor:pointer;display:inline-flex;align-items:center;gap:.4rem;transition:all .2s ease}.cat-pill-btn:hover:not(.active){background:#e5ded5;color:#1c1917}.cat-pill-btn.active{background:#b85237;color:#fff;border-color:#b85237;box-shadow:0 4px 14px #b8523740}.widget-right-options{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;max-width:100%}.option-select-wrap{display:flex;align-items:center;gap:.3rem;background:#f8fafc;border:1px solid #E2E8F0;padding:.35rem .65rem;border-radius:9999px;max-width:100%}.opt-label-icon{font-size:.85rem;flex-shrink:0}.clean-pill-select{background:transparent;border:none;color:#334155;font-size:.82rem;font-weight:800;outline:none;cursor:pointer;max-width:110px}.clean-pill-select.highlight-cur{color:#0b47a8;font-weight:900}.smart-form-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;align-items:center;position:relative;padding-bottom:1rem;width:100%}.hotel-form-responsive-grid .hotel-dest-grid-box{grid-column:span 2}.input-card-box{background:#f8fafc;border:1.5px solid #E2E8F0;border-radius:24px;padding:.85rem 1.15rem;display:flex;align-items:center;gap:.85rem;position:relative;transition:all .2s ease;width:100%;box-sizing:border-box}.input-card-box:focus-within,.input-card-box:hover{border-color:#0b47a8;background:#fff;box-shadow:0 6px 20px #0b47a81f}.input-icon-badge{width:40px;height:40px;border-radius:14px;background:#fff;display:flex;align-items:center;justify-content:center;font-size:1.15rem;box-shadow:0 2px 8px #0000000a;flex-shrink:0}.input-text-wrap{display:flex;flex-direction:column;flex:1;min-width:0}.input-mini-label{font-size:.72rem;font-weight:700;color:#334155;text-transform:uppercase;letter-spacing:.03em;margin-bottom:.1rem}.smart-field-input{background:transparent;border:none;font-size:.98rem;font-weight:800;color:#0f172a;outline:none;width:100%;padding:0}.smart-field-input::placeholder{color:#475569;font-weight:600}.swap-locations-btn{background:#fff;border:1px solid #CBD5E1;color:#0b47a8;width:30px;height:30px;border-radius:50%;font-size:1rem;font-weight:900;cursor:pointer;display:flex;align-items:center;justify-content:center;position:absolute;right:-16px;top:50%;transform:translateY(-50%);z-index:10;box-shadow:0 3px 10px #00000026;transition:all .2s ease}.swap-locations-btn:hover{background:#0b47a8;color:#fff;border-color:#0b47a8;transform:translateY(-50%) scale(1.1)}.passenger-popover-trigger{cursor:pointer;user-select:none}.passenger-summary-text{font-size:.95rem;font-weight:800;color:#0f172a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.passenger-popover-card{position:absolute;top:calc(100% + 8px);left:0;width:280px;background:#fff;border-radius:20px;padding:1.25rem;box-shadow:0 15px 40px #0f172a33;border:1.5px solid #E2E8F0;z-index:99;display:none;flex-direction:column;gap:1rem;animation:fadeInDown .2s ease}.passenger-popover-card.active{display:flex}.input-card-box{position:relative}.autocomplete-dropdown-card{position:absolute;top:calc(100% + 6px);left:0;width:100%;min-width:260px;background:#fff;border:1px solid #E2E8F0;border-radius:14px;box-shadow:0 14px 35px #0f172a2e;z-index:999;max-height:280px;overflow-y:auto;padding:.4rem;display:none;animation:fadeInDown .18s ease-out}.autocomplete-dropdown-card.active{display:block}.autocomplete-suggestion-item{display:flex;align-items:center;gap:.65rem;padding:.6rem .75rem;border-radius:8px;cursor:pointer;transition:background .15s ease}.autocomplete-suggestion-item:hover{background:#eff6ff}.autocomplete-suggestion-item .item-icon{font-size:1.15rem;line-height:1}.autocomplete-suggestion-item .item-text-group{display:flex;flex-direction:column;min-width:0}.autocomplete-suggestion-item .item-main-text{font-size:.88rem;font-weight:700;color:#0f172a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.autocomplete-suggestion-item .item-sub-text{font-size:.75rem;color:#334155;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.autocomplete-suggestion-item .item-code-badge{margin-left:auto;background:#0b47a8;color:#fff;font-size:.72rem;font-weight:900;padding:.15rem .45rem;border-radius:6px;flex-shrink:0}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.popover-row{display:flex;justify-content:space-between;align-items:center}.row-info strong{display:block;font-size:.9rem;color:#0f172a}.row-info span{font-size:.72rem;color:#334155}.counter-ctrls{display:flex;align-items:center;gap:.65rem}.btn-counter{width:32px;height:32px;border-radius:50%;border:1.5px solid #CBD5E1;background:#f8fafc;color:#0f172a;font-size:1.1rem;font-weight:800;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .18s ease}.btn-counter:hover{background:#0b47a8;color:#fff;border-color:#0b47a8}.counter-val{font-size:1rem;font-weight:900;color:#0f172a;min-width:18px;text-align:center}.btn-popover-apply{background:#0b47a8;color:#fff;border:none;padding:.65rem 1rem;border-radius:12px;font-size:.88rem;font-weight:800;cursor:pointer;margin-top:.25rem;transition:background .2s ease}.btn-popover-apply:hover{background:#0369a1}.notched-center-btn-wrap{position:absolute;bottom:-46px;left:50%;transform:translate(-50%);z-index:20}.btn-blue-pill-search{background:#1c1917;color:#fff!important;border:none;padding:.85rem 3.5rem;border-radius:9999px;font-size:1.05rem;font-weight:900;cursor:pointer;box-shadow:0 10px 30px #1c191740;transition:all .25s ease;white-space:nowrap}.btn-blue-pill-search:hover{background:#b85237;transform:translateY(-2px) scale(1.03);box-shadow:0 14px 35px #b8523759}.quick-shortcuts-bar{display:flex;align-items:center;gap:.5rem;margin-top:2.25rem;padding-top:1rem;border-top:1px dashed #E2E8F0;flex-wrap:wrap}.shortcuts-label{font-size:.78rem;font-weight:700;color:#334155}.shortcut-tag{font-size:.72rem;font-weight:800;color:#0b47a8;background:#eff6ff;padding:.2rem .6rem;border-radius:6px;cursor:pointer;transition:background .18s ease}.shortcut-tag:hover{background:#dbeafe}.flight-results-section{padding:3.5rem 0 3rem}.results-header-bar{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;border-bottom:2px solid #E2E8F0;padding-bottom:.75rem}.results-header-bar h3{font-size:1.35rem;font-weight:900;color:#0f172a;margin:0}.markup-notice-chip{font-size:.75rem;font-weight:800;color:#047857;background:#d1fae5;border:1px solid #A7F3D0;padding:.35rem .85rem;border-radius:9999px}.flight-loading-box{text-align:center;padding:3rem 0;color:#334155}.pulse-loader-ring{width:48px;height:48px;border:4px solid #E2E8F0;border-top-color:#0b47a8;border-radius:50%;margin:0 auto 1rem;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.flight-results-grid{display:flex;flex-direction:column;gap:1.25rem}.ticket-card-item{background:#fff;border:1.5px solid #E2E8F0;border-radius:24px;padding:1.65rem;box-shadow:0 6px 22px #0f172a0a;position:relative;overflow:hidden;transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease;cursor:pointer}.ticket-card-item:hover{transform:translateY(-3px);box-shadow:0 14px 35px #0f172a14;border-color:#0b47a8}.best-value-ticket{border-color:#0b47a8;background:linear-gradient(180deg,#f0f9ff,#fff)}.best-value-ribbon{position:absolute;top:0;right:0;background:#0b47a8;color:#fff;font-size:.72rem;font-weight:900;padding:.25rem 1rem;border-bottom-left-radius:12px}.ticket-card-grid{display:grid;grid-template-columns:1.3fr 2.2fr 1.3fr;gap:1.75rem;align-items:center}.airline-col{display:flex;flex-direction:column;gap:.5rem}.mobile-airline-top-bar{display:flex;align-items:center;gap:.85rem;width:100%}.airline-logo-img{width:52px;height:52px;object-fit:contain;border-radius:12px;background:#f8fafc;padding:.25rem;border:1px solid #E2E8F0}.airline-text-details{display:flex;flex-direction:column}.airline-name-text{font-size:1.05rem;font-weight:800;color:#0f172a;margin:0 0 .1rem}.airplane-type-sub{font-size:.72rem;color:#334155;display:block}.card-baggage-badges{display:flex;align-items:center;gap:.35rem;flex-wrap:wrap}.bag-badge{font-size:.72rem;font-weight:800;padding:.15rem .5rem;border-radius:6px;display:inline-flex;align-items:center;gap:.2rem}.bag-badge.avail{color:#047857;background:#d1fae5;border:1px solid #A7F3D0}.bag-badge.unavail{color:#991b1b;background:#fee2e2;border:1px solid #FCA5A5}.mobile-inline-baggage-price{display:none}.schedule-col{display:flex;align-items:center;justify-content:space-between;gap:1.25rem}.time-box{display:flex;flex-direction:column}.flight-time-bold{font-size:1.35rem;font-weight:900;color:#0f172a}.next-day-badge{font-size:.72rem;font-weight:900;color:#991b1b;vertical-align:super;margin-left:2px;background:#fee2e2;padding:.05rem .25rem;border-radius:4px}.flight-iata-code{font-size:.85rem;font-weight:800;color:#334155}.duration-line-wrap{display:flex;flex-direction:column;align-items:center;gap:.2rem;flex:1}.duration-text{font-size:.78rem;font-weight:700;color:#334155}.flight-path-line{display:flex;align-items:center;justify-content:space-between;width:100%;position:relative;height:12px;margin:.2rem 0}.flight-path-line:before{content:"";position:absolute;top:50%;left:0;right:0;height:2px;background:#cbd5e1;transform:translateY(-50%);z-index:1}.line-dot{width:7px;height:7px;border-radius:50%;background:#0b47a8;position:relative;z-index:2}.line-plane{font-size:.85rem;color:#0b47a8;position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);z-index:2;background:#fff;padding:0 4px}.stops-tag{font-size:.7rem;font-weight:800;padding:.18rem .6rem;border-radius:9999px}.stops-tag.non-stop{color:#047857;background:#d1fae5}.stops-tag.one-stop{color:#92400e;background:#fef3c7}.stops-tag.multi-stop{color:#991b1b;background:#fee2e2}.mobile-only-price-cta-bar{display:none!important}.desktop-price-col,.price-cta-col.middle-centered-cta,.hotel-price-cta-col.middle-centered-cta{text-align:right;display:flex;flex-direction:column;align-items:flex-end;justify-content:center;gap:.65rem}.price-val{font-size:1.65rem;font-weight:900;color:#0f172a;display:block}.price-pax-sub{font-size:.72rem;color:#334155;display:block}.btn-group-row.centered-middle-buttons{display:flex;flex-direction:row;align-items:center;gap:.5rem;justify-content:flex-end}.btn-details-trigger-cta{background:#0f172a;color:#fff!important;border:none;padding:.65rem 1.15rem;border-radius:12px;font-size:.85rem;font-weight:800;cursor:pointer;transition:all .2s ease;white-space:nowrap}.btn-details-trigger-cta:hover{background:#0b47a8;transform:translateY(-2px);box-shadow:0 6px 18px #0b47a84d}.btn-book-whatsapp-cta{background:#047857;color:#fff!important;border:none;padding:.65rem 1.25rem;border-radius:12px;font-size:.85rem;font-weight:800;text-decoration:none;display:inline-flex;align-items:center;gap:.35rem;white-space:nowrap;box-shadow:0 4px 14px #04785759;transition:all .2s ease}.btn-book-whatsapp-cta:hover{background:#065f46;transform:translateY(-2px);box-shadow:0 8px 20px #04785773}.hotel-card-item{background:#fff;border:1.5px solid #E2E8F0;border-radius:24px;padding:1.5rem;box-shadow:0 6px 20px #0f172a0a;transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease;cursor:pointer}.hotel-card-item:hover{transform:translateY(-3px);box-shadow:0 14px 35px #0f172a14;border-color:#0b47a8}.hotel-card-main-grid{display:grid;grid-template-columns:220px 1fr 1.3fr;gap:1.5rem;align-items:center}.hotel-img-col{position:relative;width:100%;height:150px;border-radius:16px;overflow:hidden;background:#f1f5f9}.hotel-card-img{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.hotel-card-item:hover .hotel-card-img{transform:scale(1.05)}.hotel-rating-badge{position:absolute;bottom:8px;left:8px;background:#0f172ad9;color:#fff;font-size:.72rem;font-weight:800;padding:.2rem .6rem;border-radius:6px;backdrop-filter:blur(4px)}.hotel-info-col{display:flex;flex-direction:column;gap:.35rem}.hotel-title-header{display:flex;align-items:center;gap:.75rem}.star-rating-5-container{display:inline-flex;align-items:center;gap:2px}.star-icon{font-size:1.05rem;line-height:1}.star-icon.filled{color:#f59e0b!important}.star-icon.empty{color:#475569!important}.star-icon.partial{display:inline-block;background-clip:text!important;-webkit-background-clip:text!important;-webkit-text-fill-color:transparent!important;color:transparent!important}.hotel-name-text{font-size:1.15rem;font-weight:900;color:#0f172a;margin:0}.hotel-location-text{font-size:.82rem;color:#334155;margin:0}.hotel-room-type-tag{font-size:.78rem;font-weight:700;color:#0b47a8;background:#eff6ff;padding:.2rem .6rem;border-radius:6px;display:inline-block}.hotel-amenity-pills{display:flex;gap:.35rem;flex-wrap:wrap;margin-top:.25rem}.amenity-pill{font-size:.7rem;font-weight:700;color:#334155;background:#f1f5f9;padding:.15rem .5rem;border-radius:6px}.hotel-cancellation-notice{font-size:.72rem;font-weight:800;color:#059669;margin-top:.2rem}.price-per-night-sub{font-size:.7rem;color:#475569;display:block}.total-stay-sub{font-size:.75rem;color:#475569;display:block;margin-top:.15rem}.hotel-carousel-wrapper{margin-bottom:1.5rem}.hotel-carousel-main-view{position:relative;width:100%;height:280px;border-radius:20px;overflow:hidden;background:#0f172a}.carousel-hero-image{width:100%;height:100%;object-fit:cover;transition:opacity .3s ease}.carousel-arrow{position:absolute;top:50%;transform:translateY(-50%);background:#0f172aa6;color:#fff;border:none;width:40px;height:40px;border-radius:50%;font-size:1.5rem;font-weight:900;cursor:pointer;display:flex;align-items:center;justify-content:center;backdrop-filter:blur(4px);transition:all .2s ease;z-index:10}.carousel-arrow:hover{background:#0b47a8;transform:translateY(-50%) scale(1.1)}.carousel-arrow.prev{left:12px}.carousel-arrow.next{right:12px}.carousel-badge{position:absolute;bottom:12px;right:12px;background:#0f172acc;color:#fff;font-size:.75rem;font-weight:800;padding:.3rem .75rem;border-radius:9999px;backdrop-filter:blur(4px)}.carousel-thumbs-row{display:flex;gap:.65rem;margin-top:.75rem;overflow-x:auto;padding-bottom:.25rem}.carousel-thumb-img{width:72px;height:52px;object-fit:cover;border-radius:10px;cursor:pointer;opacity:.6;border:2px solid transparent;transition:all .2s ease;flex-shrink:0}.carousel-thumb-img:hover,.carousel-thumb-img.active{opacity:1;border-color:#0b47a8;transform:scale(1.05)}.room-selection-section,.meal-plan-section{background:#f8fafc;border:1.5px solid #E2E8F0;border-radius:20px;padding:1.25rem}.room-selection-sub{font-size:.78rem;color:#334155;margin-bottom:1rem}.room-options-list,.meal-options-list{display:flex;flex-direction:column;gap:1.25rem}.room-option-card{background:#fff;border:2px solid #CBD5E1;border-radius:20px;overflow:hidden;display:flex;flex-direction:column;cursor:pointer;transition:all .25s ease;padding:0!important;box-shadow:0 4px 15px #0f172a0a}.room-option-card:hover{border-color:#0b47a8;transform:translateY(-2px);box-shadow:0 8px 24px #0b47a81f}.room-option-card.active{border-color:#0b47a8;background:#fff;box-shadow:0 8px 25px #0b47a826}.meal-plan-card{background:#fff;border:2px solid #CBD5E1;border-radius:16px;padding:1rem 1.2rem;display:flex;align-items:center;gap:1rem;cursor:pointer;transition:all .2s ease}.meal-plan-card.active{border-color:#0b47a8;background:#eff6ff;box-shadow:0 4px 14px #0b47a81a}.room-card-top-image-slider{position:relative;width:100%;height:230px;overflow:hidden;background:#0f172a;touch-action:pan-y;user-select:none}.room-slider-track{display:flex;width:100%;height:100%;transition:transform .35s cubic-bezier(.16,1,.3,1)}.room-card-slide-img{width:100%;height:100%;object-fit:cover;flex-shrink:0}.room-mini-arrow{position:absolute;top:50%;transform:translateY(-50%);background:#0f172ab3;color:#fff;border:none;width:34px;height:34px;border-radius:50%;font-size:1.3rem;font-weight:900;cursor:pointer;display:flex;align-items:center;justify-content:center;backdrop-filter:blur(4px);transition:all .2s ease;z-index:5;opacity:.85}.room-mini-arrow:hover{background:#0b47a8;opacity:1;transform:translateY(-50%) scale(1.1)}.room-mini-arrow.prev{left:10px}.room-mini-arrow.next{right:10px}.room-card-photo-count-badge{position:absolute;top:10px;right:10px;background:#0f172ad9;color:#fff;font-size:.72rem;font-weight:800;padding:.3rem .7rem;border-radius:9999px;backdrop-filter:blur(4px);z-index:5;cursor:pointer;transition:background .2s ease}.room-card-photo-count-badge:hover{background:#0b47a8}.room-mini-dots-row{position:absolute;bottom:10px;left:50%;transform:translate(-50%);display:flex;gap:6px;z-index:5}.mini-dot{width:7px;height:7px;border-radius:50%;background:#ffffff80;transition:all .25s ease}.mini-dot.active{background:#fff;width:18px;border-radius:4px}.room-card-bottom-details{padding:1.15rem 1.25rem;display:flex;flex-direction:column;gap:.65rem}.room-card-radio-bar{display:flex;align-items:center;justify-content:space-between;gap:.75rem;flex-wrap:wrap}.room-radio-title-group{display:flex;align-items:center;gap:.65rem;flex:1}.room-card-radio-bar input[type=radio]{width:18px;height:18px;accent-color:#0B47A8;cursor:pointer}.room-title-text{font-size:1rem;font-weight:900;color:#0f172a}.room-bottom-meta-row{display:flex;align-items:center;gap:1rem;font-size:.76rem;font-weight:800;margin-top:.2rem;flex-wrap:wrap}.room-bfast-chip{color:#059669}.room-cancel-chip{color:#2563eb}@media (max-width: 640px){.room-card-top-image-slider{height:180px}}.room-thumb-wrapper{position:relative;flex-shrink:0;cursor:pointer}.room-thumb-wrapper .room-thumb-img{width:110px;height:85px;object-fit:cover;border-radius:12px;border:1px solid #E2E8F0;transition:transform .2s ease,filter .2s ease}.room-thumb-wrapper:hover .room-thumb-img{transform:scale(1.05);filter:brightness(.9)}.room-thumb-zoom-badge{position:absolute;bottom:6px;right:6px;background:#0f172ad9;color:#fff;font-size:.65rem;font-weight:800;padding:.15rem .4rem;border-radius:6px;pointer-events:none;backdrop-filter:blur(2px)}.room-lightbox-content-box{background:#0f172a;border-radius:24px;width:92%;max-width:760px;border:1px solid rgba(255,255,255,.15);box-shadow:0 25px 60px #0009;overflow:hidden;animation:fadeInDown .22s ease-out}.room-lightbox-header{padding:1.1rem 1.4rem;background:#ffffff0d;border-bottom:1px solid rgba(255,255,255,.1);display:flex;justify-content:space-between;align-items:center}.lightbox-title-group{display:flex;align-items:center;gap:.85rem}.lightbox-title-group .lightbox-icon{font-size:1.5rem}.lightbox-title-group h3{color:#fff;font-size:1.15rem;font-weight:700;margin:0}.lightbox-title-group span{color:#475569;font-size:.8rem}.room-lightbox-body{padding:1.25rem}.lightbox-hero-view{position:relative;width:100%;height:380px;border-radius:16px;overflow:hidden;background:#020617}.lightbox-hero-view img{width:100%;height:100%;object-fit:cover;transition:opacity .25s ease}@media (max-width: 640px){.lightbox-hero-view{height:250px}}.room-spec-specs-strip{display:flex;flex-wrap:wrap;gap:.4rem;margin:.35rem 0}.room-spec-pill{font-size:.73rem;font-weight:700;color:#334155;background:#f1f5f9;padding:.18rem .5rem;border-radius:6px}.room-option-card.active,.meal-plan-card.active{border-color:#0b47a8;background:#eff6ff;box-shadow:0 4px 14px #0b47a81a}.room-card-content,.meal-card-details{flex:1}.room-title-bar{display:flex;justify-content:space-between;align-items:center;margin-bottom:.25rem;flex-wrap:wrap;gap:.5rem}.room-title-bar strong{font-size:.95rem;color:#0f172a}.room-price-badge{font-size:.82rem;font-weight:900;color:#0b47a8;background:#dbeafe;padding:.2rem .6rem;border-radius:6px}.room-desc-text,.meal-card-details span{font-size:.78rem;color:#334155;margin:0 0 .4rem;display:block}.room-bfast-chip{font-size:.72rem;font-weight:800;color:#059669}.meal-price-tag{font-size:.82rem;font-weight:800;color:#0f172a}.meal-price-tag.free{color:#059669}.flight-modal-overlay{position:fixed;inset:0;background:#0f172abf;backdrop-filter:blur(8px);z-index:9999;display:flex;align-items:center;justify-content:center;padding:1.5rem}.flight-modal-content-box{background:#fff;border-radius:24px;width:100%;max-width:680px;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 25px 60px #00000059;border:1px solid #E2E8F0;overflow:hidden;animation:modalSlideUp .25s cubic-bezier(.16,1,.3,1)}@keyframes modalSlideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.flight-modal-header{background:#0f172a;color:#fff;padding:1.25rem 1.75rem;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid rgba(255,255,255,.1)}.modal-title-group{display:flex;align-items:center;gap:.85rem}.modal-icon{font-size:1.6rem}.modal-title-group h3,#modal-flight-title{font-size:1.25rem!important;font-weight:800!important;color:#fff!important;margin:0 0 .2rem!important;line-height:1.3!important}.modal-sub,#modal-airline-sub{font-size:.88rem!important;color:#475569!important;display:block}.btn-close-modal{background:#ffffff26;color:#fff;border:none;width:32px;height:32px;border-radius:50%;font-size:1.1rem;font-weight:800;cursor:pointer;transition:background .2s ease}.btn-close-modal:hover{background:#dc2626}.flight-modal-body{padding:1.75rem;overflow-y:auto;display:flex;flex-direction:column;gap:1.5rem}.modal-section{background:#f8fafc;border:1px solid #E2E8F0;border-radius:20px;padding:1.25rem 1.5rem;box-shadow:0 4px 15px #0f172a08}.modal-section-title{font-size:.92rem;font-weight:900;color:#0f172a;margin-bottom:1rem;text-transform:uppercase;letter-spacing:.04em;display:flex;align-items:center;gap:.5rem}.itinerary-list-container{display:flex;flex-direction:column;gap:1rem}.leg-segment-item{background:#fff;border:1.5px solid #E2E8F0;border-radius:16px;padding:1.2rem 1.35rem;box-shadow:0 4px 12px #0f172a0a;transition:all .2s ease}.leg-segment-item:hover{border-color:#0b47a8;box-shadow:0 8px 24px #0b47a814}.leg-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;padding-bottom:.75rem;border-bottom:1px dashed #E2E8F0}.segment-badge{font-size:.7rem;font-weight:900;color:#0b47a8;background:#eff6ff;border:1px solid #BFDBFE;padding:.25rem .65rem;border-radius:9999px;letter-spacing:.05em;text-transform:uppercase}.leg-airplane-info{font-size:.82rem;font-weight:700;color:#475569}.leg-times-grid{display:grid;grid-template-columns:1.2fr 1fr 1.2fr;align-items:center;gap:1rem}.leg-point{display:flex;flex-direction:column;gap:.2rem}.leg-point.dep{text-align:left}.leg-point.arr{text-align:right}.leg-point .time{font-size:1.3rem;font-weight:900;color:#0f172a;line-height:1.2}.leg-point .code{display:inline-block;font-size:.88rem;font-weight:900;color:#0b47a8;background:#dbeafe;padding:.15rem .5rem;border-radius:6px;width:fit-content}.leg-point.arr .code{margin-left:auto}.leg-point .name{font-size:.76rem;color:#334155;font-weight:600;line-height:1.3}.leg-duration-bar{display:flex;flex-direction:column;align-items:center;gap:.35rem;position:relative}.leg-duration-bar .duration{font-size:.76rem;font-weight:800;color:#475569;background:#f1f5f9;padding:.2rem .65rem;border-radius:9999px;border:1px solid #E2E8F0}.leg-duration-bar .bar-line{width:100%;height:2px;background:linear-gradient(90deg,#93c5fd,#0b47a8,#93c5fd);position:relative;border-radius:2px}.leg-duration-bar .bar-line:after{content:"✈";position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);background:#fff;padding:0 4px;color:#0b47a8;font-size:.85rem}.layover-banner-strip{background:#fffbeb;border:1.5px solid #FDE68A;border-radius:14px;padding:.85rem 1.15rem;display:flex;align-items:center;gap:.85rem;box-shadow:0 4px 12px #d977060f}.layover-icon{font-size:1.4rem;flex-shrink:0}.layover-banner-strip strong{display:block;font-size:.88rem;color:#92400e;font-weight:800}.layover-banner-strip span{display:block;font-size:.78rem;color:#b45309}.baggage-selector-sub{font-size:.8rem;color:#334155;margin-bottom:.85rem}.baggage-options-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.85rem}.baggage-opt-card{background:#fff;border:2px solid #CBD5E1;border-radius:14px;padding:.95rem;display:flex;align-items:center;gap:.75rem;cursor:pointer;transition:all .2s ease;position:relative}.baggage-opt-card input[type=radio]{accent-color:#0B47A8;width:18px;height:18px;flex-shrink:0;cursor:pointer}.baggage-opt-card:hover{border-color:#93c5fd;transform:translateY(-2px);box-shadow:0 6px 16px #0b47a814}.baggage-opt-card.active{border-color:#0b47a8;background:#eff6ff;box-shadow:0 6px 18px #0b47a81f}.baggage-opt-card .opt-icon{font-size:1.5rem;flex-shrink:0}.baggage-opt-card .opt-details{flex:1;display:flex;flex-direction:column;gap:.15rem}.baggage-opt-card .opt-details strong{font-size:.85rem;font-weight:800;color:#0f172a;line-height:1.2}.baggage-opt-card .opt-details span{font-size:.75rem;color:#334155;line-height:1.3}.baggage-opt-card .opt-price-tag{font-size:.78rem;font-weight:900;color:#0b47a8;background:#dbeafe;padding:.25rem .6rem;border-radius:6px;white-space:nowrap}.baggage-opt-card .opt-price-tag.free{color:#059669;background:#d1fae5}.modal-footer-cta-bar{border-top:1.5px solid #E2E8F0;padding:1rem 1.75rem;background:#f8fafc;display:flex;justify-content:space-between;align-items:center}.modal-price-display .lbl{font-size:.75rem;color:#334155}.modal-price-display .val{font-size:1.5rem;font-weight:900;color:#0f172a}@media (max-width: 1024px){.smart-form-grid{grid-template-columns:repeat(2,1fr);gap:1rem}.ticket-card-grid,.hotel-card-main-grid{grid-template-columns:1fr;gap:1rem;text-align:left}.price-cta-col.middle-centered-cta,.hotel-price-cta-col{align-items:flex-start}.btn-group-row.centered-middle-buttons{justify-content:flex-start;width:100%}.swap-locations-btn{display:none}}@media (max-width: 768px){.smart-search-widget-card{padding:1.25rem .85rem 3rem;border-radius:20px}.widget-top-control-strip{flex-direction:column;align-items:flex-start;gap:.75rem;width:100%}.widget-right-options{width:100%;display:flex;justify-content:space-between;gap:.35rem;flex-wrap:wrap}.option-select-wrap{padding:.25rem .5rem;font-size:.75rem;flex:1;min-width:0;justify-content:center}.clean-pill-select{font-size:.75rem;max-width:100%}.smart-form-grid{grid-template-columns:1fr!important}.hotel-form-responsive-grid .hotel-dest-grid-box{grid-column:span 1!important;width:100%!important}.hotel-carousel-main-view{height:200px}.desktop-price-col,.price-cta-col,.hotel-price-cta-col{display:none!important}.baggage-options-grid{grid-template-columns:1fr!important}.flight-modal-body{padding:1rem!important;gap:1rem!important}.modal-section{padding:1rem!important;border-radius:16px!important}.leg-times-grid{grid-template-columns:1fr .4fr 1fr!important;gap:.5rem!important}.leg-point .time{font-size:1.1rem!important}.leg-point .name{font-size:.7rem!important}.mobile-only-price-cta-bar{display:flex!important;flex-direction:column!important;gap:.5rem!important;width:100%!important;margin-top:.75rem!important;padding-top:.75rem!important;border-top:1px dashed #E2E8F0!important}.mobile-price-summary-row{display:flex!important;justify-content:space-between!important;align-items:baseline!important;width:100%!important}.mobile-nightly-price{font-size:1.2rem!important;font-weight:900!important;color:#0f172a!important}.mobile-total-stay{font-size:.8rem!important;font-weight:700!important;color:#475569!important}.mobile-50-50-btn-grid{display:grid!important;grid-template-columns:1fr 1fr!important;gap:.5rem!important;width:100%!important}.mobile-50-50-btn-grid .btn{width:100%!important;text-align:center!important;justify-content:center!important;padding:.65rem .5rem!important;font-size:.88rem!important;border-radius:10px!important}.ticket-card-item{padding:1rem 1.15rem;border-radius:18px}.mobile-airline-top-bar{display:flex;align-items:center;justify-content:space-between;width:100%}.mobile-inline-baggage-price{display:flex;align-items:center;gap:.65rem;margin-left:auto}.mobile-price-num{font-size:1.25rem;font-weight:900;color:#0f172a;white-space:nowrap}.desktop-price-col .price-box{display:none}.btn-details-desktop-only{display:none!important}.btn-group-row.centered-middle-buttons{width:100%;margin-top:.25rem}.btn-book-whatsapp-cta{width:100%;justify-content:center;padding:.65rem 1rem;font-size:.92rem}.schedule-col{gap:.5rem}.flight-time-bold{font-size:1.15rem}}@media (max-width: 768px){.passenger-count-btn,.stepper-btn,[class*=count-btn],[class*=stepper] button{min-width:44px!important;min-height:44px!important;width:44px!important;height:44px!important;border-radius:50%!important;font-size:1.25rem!important;display:flex!important;align-items:center!important;justify-content:center!important}.swap-btn,.origin-dest-swap,[class*=swap-btn]{min-width:44px!important;min-height:44px!important;border-radius:50%!important}.cabin-class-btn,.class-selector button,[class*=cabin-btn],[class*=class-btn]{min-height:44px!important;padding:.5rem .875rem!important;font-size:.9375rem!important}.flight-search-btn,[class*=search-btn],[type=submit]{min-height:52px!important;width:100%!important;font-size:1.0625rem!important;font-weight:600!important}.flight-result-card,[class*=flight-card]{display:flex!important;flex-direction:column!important;gap:.75rem!important;padding:1rem!important;border-radius:12px!important}.flight-card-airline-row{font-size:.9375rem;font-weight:600}.flight-card-timeline{font-size:1rem;font-weight:500}.flight-card-price-row{display:flex;justify-content:space-between;align-items:center}.flight-card-price{font-size:1.375rem;font-weight:700;color:#1c1917}.flight-book-btn{min-height:44px;padding:0 1.25rem;border-radius:9999px;background:#b85237;color:#fff;font-weight:600}a,button,[role=button],[role=tab],label[for],.clickable{min-height:44px}p,li,td,dd,dt{font-size:max(.875rem,14px)}*{max-width:100%;box-sizing:border-box}body{overflow-x:hidden}}
