.SearchBar-module__IfF_oW__searchSection{margin-bottom:var(--space-6)}.SearchBar-module__IfF_oW__heroBanner{border-radius:var(--radius-xl);width:100%;height:180px;margin-bottom:var(--space-6);position:relative;overflow:hidden}.SearchBar-module__IfF_oW__heroBanner img{object-fit:cover;width:100%;height:100%}.SearchBar-module__IfF_oW__heroBannerOverlay{padding:var(--space-8);background:linear-gradient(90deg,#0b1120b3 0%,#0000 60%);flex-direction:column;justify-content:center;display:flex;position:absolute;inset:0}.SearchBar-module__IfF_oW__heroBannerOverlay h1{font-size:var(--font-size-3xl);color:#fff;margin-bottom:var(--space-1);font-weight:700}.SearchBar-module__IfF_oW__heroBannerOverlay p{color:#fffc;font-size:var(--font-size-lg)}.SearchBar-module__IfF_oW__greeting{display:none}.SearchBar-module__IfF_oW__tripTypeTabs{gap:var(--space-1);margin-bottom:var(--space-5);background:var(--color-bg-secondary);border-radius:var(--radius-lg);border:1px solid var(--color-border);width:fit-content;padding:4px;display:flex}.SearchBar-module__IfF_oW__tripTypeTab{padding:var(--space-2) var(--space-5);border-radius:var(--radius-md);font-size:var(--font-size-sm);color:var(--color-text-secondary);transition:all var(--transition-fast);cursor:pointer;font-weight:500}.SearchBar-module__IfF_oW__tripTypeTab:hover{color:var(--color-text-primary)}.SearchBar-module__IfF_oW__tripTypeTabActive{background:var(--color-accent-primary);color:#fff;box-shadow:var(--shadow-glow)}.SearchBar-module__IfF_oW__searchForm{background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:var(--radius-xl);padding:var(--space-5);gap:var(--space-3);flex-wrap:wrap;align-items:flex-end;display:flex}.SearchBar-module__IfF_oW__destinationChips{gap:var(--space-2);flex-wrap:wrap;flex:1;min-width:300px;display:flex}.SearchBar-module__IfF_oW__chip{align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);background:var(--color-bg-tertiary);border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--font-size-sm);color:var(--color-text-primary);cursor:pointer;transition:all var(--transition-fast);white-space:nowrap;display:flex}.SearchBar-module__IfF_oW__chip:hover{border-color:var(--color-accent-primary);background:#7c3aed14}.SearchBar-module__IfF_oW__chipDot{background:var(--color-accent-primary);border-radius:50%;flex-shrink:0;width:8px;height:8px}.SearchBar-module__IfF_oW__chipOrigin .SearchBar-module__IfF_oW__chipDot{background:var(--color-accent-green)}.SearchBar-module__IfF_oW__chipRemove{opacity:.5;transition:opacity var(--transition-fast);display:flex}.SearchBar-module__IfF_oW__chipRemove:hover{opacity:1}.SearchBar-module__IfF_oW__addDestBtn{align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border:1px dashed var(--color-border-light);border-radius:var(--radius-md);font-size:var(--font-size-sm);color:var(--color-text-tertiary);transition:all var(--transition-fast);display:flex}.SearchBar-module__IfF_oW__addDestBtn:hover{border-color:var(--color-accent-primary);color:var(--color-accent-primary)}.SearchBar-module__IfF_oW__searchFields{gap:var(--space-3);width:100%;margin-top:var(--space-2);flex-wrap:wrap;display:flex}.SearchBar-module__IfF_oW__fieldGroup{gap:var(--space-1);flex-direction:column;flex:1;min-width:160px;display:flex}.SearchBar-module__IfF_oW__fieldLabel{font-size:var(--font-size-xs);color:var(--color-text-tertiary);text-transform:uppercase;letter-spacing:.05em;font-weight:500}.SearchBar-module__IfF_oW__fieldInput{padding:var(--space-3) var(--space-4);background:var(--color-bg-input);border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text-primary);font-size:var(--font-size-sm);align-items:center;gap:var(--space-2);cursor:pointer;transition:all var(--transition-fast);display:flex}.SearchBar-module__IfF_oW__fieldInput:hover{border-color:var(--color-border-light)}.SearchBar-module__IfF_oW__fieldInput input[type=date]{appearance:none}.SearchBar-module__IfF_oW__fieldInput input[type=date]::-webkit-calendar-picker-indicator{filter:invert(.5);cursor:pointer}.SearchBar-module__IfF_oW__searchBtn{align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-8);background:var(--gradient-primary);border-radius:var(--radius-md);color:#fff;font-size:var(--font-size-base);transition:all var(--transition-fast);box-shadow:var(--shadow-glow);white-space:nowrap;height:48px;font-weight:600;display:flex}.SearchBar-module__IfF_oW__searchBtn:hover{transform:translateY(-1px);box-shadow:0 0 30px #7c3aed66}.SearchBar-module__IfF_oW__featureBadges{gap:var(--space-4);margin-bottom:var(--space-8);flex-wrap:wrap;display:flex}.SearchBar-module__IfF_oW__featureBadge{align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-5);background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:var(--radius-full);transition:all var(--transition-fast);display:flex}.SearchBar-module__IfF_oW__featureBadge:hover{border-color:var(--color-accent-primary);transform:translateY(-1px)}.SearchBar-module__IfF_oW__featureBadgeIcon{border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;font-size:16px;display:flex}.SearchBar-module__IfF_oW__featureBadgeIconPurple{color:var(--color-accent-primary);background:#7c3aed26}.SearchBar-module__IfF_oW__featureBadgeIconBlue{color:var(--color-accent-blue);background:#3b82f626}.SearchBar-module__IfF_oW__featureBadgeIconAmber{color:var(--color-accent-amber);background:#f59e0b26}.SearchBar-module__IfF_oW__featureBadgeIconGreen{color:var(--color-accent-green);background:#10b98126}.SearchBar-module__IfF_oW__featureBadgeText{font-size:var(--font-size-sm);color:var(--color-text-secondary);font-weight:500}@media (max-width:768px){.SearchBar-module__IfF_oW__heroBanner{height:120px}.SearchBar-module__IfF_oW__heroBannerOverlay h1{font-size:var(--font-size-xl)}.SearchBar-module__IfF_oW__heroBannerOverlay p{font-size:var(--font-size-sm)}.SearchBar-module__IfF_oW__searchForm{padding:var(--space-4);flex-direction:column}.SearchBar-module__IfF_oW__destinationChips{min-width:unset;flex-direction:column}.SearchBar-module__IfF_oW__chip{width:100%}.SearchBar-module__IfF_oW__searchFields{flex-direction:column}.SearchBar-module__IfF_oW__fieldGroup{min-width:unset;width:100%}.SearchBar-module__IfF_oW__searchBtn{justify-content:center;width:100%}.SearchBar-module__IfF_oW__featureBadges{gap:var(--space-2)}.SearchBar-module__IfF_oW__featureBadge{min-width:calc(50% - var(--space-2));padding:var(--space-2) var(--space-3);flex:1}.SearchBar-module__IfF_oW__featureBadgeText{font-size:var(--font-size-xs)}}
.ItineraryTimeline-module__oDrFsa__itinerarySection{gap:var(--space-6);flex-direction:column;display:flex}.ItineraryTimeline-module__oDrFsa__header{justify-content:space-between;align-items:center;display:flex}.ItineraryTimeline-module__oDrFsa__titleGroup h2{font-size:var(--font-size-xl);align-items:center;gap:var(--space-2);font-weight:700;display:flex}.ItineraryTimeline-module__oDrFsa__subtitle{font-size:var(--font-size-sm);color:var(--color-text-secondary)}.ItineraryTimeline-module__oDrFsa__viewDetailsBtn{font-size:var(--font-size-xs);color:var(--color-accent-blue);padding:var(--space-2) var(--space-4);border-radius:var(--radius-md);transition:all var(--transition-fast);background:#3b82f61a;border:1px solid #3b82f633;font-weight:600}.ItineraryTimeline-module__oDrFsa__viewDetailsBtn:hover{background:#3b82f633}.ItineraryTimeline-module__oDrFsa__contentGrid{gap:var(--space-6);grid-template-columns:1.2fr 1fr;display:grid}.ItineraryTimeline-module__oDrFsa__timelineCard{background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:var(--radius-xl);padding:var(--space-6);gap:var(--space-5);flex-direction:column;display:flex;position:relative}.ItineraryTimeline-module__oDrFsa__timelineItem{gap:var(--space-4);grid-template-columns:60px 1fr;display:grid;position:relative}.ItineraryTimeline-module__oDrFsa__timelineItem:not(:last-child):after{content:"";background:dashed 2px var(--color-border-light);border-left:2px dashed var(--color-text-tertiary);width:2px;position:absolute;top:48px;bottom:-24px;left:30px}.ItineraryTimeline-module__oDrFsa__dateBadge{background:var(--color-bg-tertiary);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-2);flex-direction:column;justify-content:center;align-items:center;width:60px;height:48px;display:flex}.ItineraryTimeline-module__oDrFsa__dateMonth{color:var(--color-text-tertiary);text-transform:uppercase;font-size:10px;font-weight:700}.ItineraryTimeline-module__oDrFsa__dateDay{font-size:var(--font-size-base);color:var(--color-text-primary);font-weight:800;line-height:1}.ItineraryTimeline-module__oDrFsa__flightDetails{gap:var(--space-1);flex-direction:column;display:flex}.ItineraryTimeline-module__oDrFsa__routeHeader{justify-content:space-between;align-items:center;display:flex}.ItineraryTimeline-module__oDrFsa__routeName{font-size:var(--font-size-base);color:var(--color-text-primary);font-weight:700}.ItineraryTimeline-module__oDrFsa__times{font-size:var(--font-size-sm);color:var(--color-text-secondary);font-family:monospace}.ItineraryTimeline-module__oDrFsa__flightMeta{align-items:center;gap:var(--space-3);font-size:var(--font-size-xs);color:var(--color-text-tertiary);display:flex}.ItineraryTimeline-module__oDrFsa__airlineTag{align-items:center;gap:var(--space-1);background:var(--color-bg-tertiary);border-radius:var(--radius-sm);color:var(--color-text-primary);padding:2px 8px;font-weight:600;display:inline-flex}.ItineraryTimeline-module__oDrFsa__summaryCard{background:var(--gradient-card);border:1px solid var(--color-border);border-radius:var(--radius-xl);padding:var(--space-6);flex-direction:column;justify-content:space-between;display:flex;position:relative;overflow:hidden}.ItineraryTimeline-module__oDrFsa__bestValueBadge{top:var(--space-4);right:var(--space-4);color:var(--color-accent-green);font-size:var(--font-size-xs);border-radius:var(--radius-full);background:#10b98126;border:1px solid #10b9814d;padding:4px 12px;font-weight:700;position:absolute}.ItineraryTimeline-module__oDrFsa__priceBlock{margin-top:var(--space-4);margin-bottom:var(--space-6)}.ItineraryTimeline-module__oDrFsa__priceAmount{color:var(--color-text-primary);font-size:3rem;font-weight:800;line-height:1}.ItineraryTimeline-module__oDrFsa__priceLabel{font-size:var(--font-size-xs);color:var(--color-text-tertiary);margin-top:var(--space-1)}.ItineraryTimeline-module__oDrFsa__includesList{gap:var(--space-2);margin-bottom:var(--space-6);flex-direction:column;display:flex}.ItineraryTimeline-module__oDrFsa__includeItem{align-items:center;gap:var(--space-2);font-size:var(--font-size-sm);color:var(--color-text-secondary);display:flex}.ItineraryTimeline-module__oDrFsa__includeIcon{color:var(--color-accent-green)}.ItineraryTimeline-module__oDrFsa__viewTripBtn{width:100%;padding:var(--space-4);background:var(--gradient-primary);border-radius:var(--radius-md);color:#fff;font-weight:700;font-size:var(--font-size-base);text-align:center;box-shadow:var(--shadow-glow);transition:all var(--transition-fast)}.ItineraryTimeline-module__oDrFsa__viewTripBtn:hover{transform:translateY(-2px);box-shadow:0 0 30px #7c3aed80}@media (max-width:900px){.ItineraryTimeline-module__oDrFsa__contentGrid{grid-template-columns:1fr}}
.HotelCarousel-module__jaG1tG__section{gap:var(--space-4);margin-top:var(--space-6);flex-direction:column;display:flex}.HotelCarousel-module__jaG1tG__header{justify-content:space-between;align-items:center;display:flex}.HotelCarousel-module__jaG1tG__title{font-size:var(--font-size-lg);align-items:center;gap:var(--space-2);font-weight:700;display:flex}.HotelCarousel-module__jaG1tG__grid{gap:var(--space-4);grid-template-columns:repeat(auto-fill,minmax(240px,1fr));display:grid}.HotelCarousel-module__jaG1tG__card{background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:var(--radius-lg);transition:transform var(--transition-fast), border-color var(--transition-fast);flex-direction:column;display:flex;overflow:hidden}.HotelCarousel-module__jaG1tG__card:hover{border-color:var(--color-border-light);transform:translateY(-4px)}.HotelCarousel-module__jaG1tG__imageWrapper{background:var(--color-bg-tertiary);height:140px;position:relative}.HotelCarousel-module__jaG1tG__imagePlaceholder{object-fit:cover;width:100%;height:100%;display:block}.HotelCarousel-module__jaG1tG__imageFallback{background:linear-gradient(135deg, var(--color-bg-tertiary) 0%, var(--color-bg-hover) 100%);justify-content:center;align-items:center;width:100%;height:100%;font-size:2rem;display:flex}.HotelCarousel-module__jaG1tG__badge{top:var(--space-2);left:var(--space-2);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);border-radius:var(--radius-sm);font-size:var(--font-size-xs);color:var(--color-accent-amber);background:#0009;align-items:center;gap:4px;padding:2px 8px;font-weight:600;display:flex;position:absolute}.HotelCarousel-module__jaG1tG__content{padding:var(--space-4);gap:var(--space-2);flex-direction:column;display:flex}.HotelCarousel-module__jaG1tG__hotelName{font-size:var(--font-size-base);color:var(--color-text-primary);font-weight:700}.HotelCarousel-module__jaG1tG__location{font-size:var(--font-size-xs);color:var(--color-text-tertiary)}.HotelCarousel-module__jaG1tG__footer{margin-top:var(--space-2);justify-content:space-between;align-items:center;display:flex}.HotelCarousel-module__jaG1tG__price{font-size:var(--font-size-lg);color:var(--color-accent-coral);font-weight:800}.HotelCarousel-module__jaG1tG__priceUnit{font-size:var(--font-size-xs);color:var(--color-text-tertiary);font-weight:400}
.FlightMap-module__8dZnsW__container{background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:var(--radius-xl);margin-bottom:var(--space-6);overflow:hidden}.FlightMap-module__8dZnsW__header{padding:var(--space-5) var(--space-6);justify-content:space-between;align-items:flex-start;gap:var(--space-4);flex-wrap:wrap;display:flex}.FlightMap-module__8dZnsW__headerLeft{gap:var(--space-1);flex-direction:column;display:flex}.FlightMap-module__8dZnsW__title{font-size:var(--font-size-lg);align-items:center;gap:var(--space-2);font-weight:700;display:flex}.FlightMap-module__8dZnsW__subtitle{font-size:var(--font-size-xs);color:var(--color-text-tertiary)}.FlightMap-module__8dZnsW__originSelector{flex-wrap:wrap;gap:4px;display:flex}.FlightMap-module__8dZnsW__originBtn{border-radius:var(--radius-md);font-size:var(--font-size-xs);background:var(--color-bg-tertiary);color:var(--color-text-secondary);border:1px solid var(--color-border);cursor:pointer;transition:all var(--transition-fast);padding:4px 10px;font-weight:500}.FlightMap-module__8dZnsW__originBtn:hover{background:var(--color-bg-hover);color:var(--color-text-primary)}.FlightMap-module__8dZnsW__originBtnActive{color:var(--color-accent-primary);background:#7c3aed26;border-color:#7c3aed66}.FlightMap-module__8dZnsW__mapWrapper{height:420px;position:relative}.FlightMap-module__8dZnsW__loadingOverlay{justify-content:center;align-items:center;gap:var(--space-3);height:100%;color:var(--color-text-tertiary);font-size:var(--font-size-sm);flex-direction:column;display:flex}.FlightMap-module__8dZnsW__spinner{animation:1s linear infinite FlightMap-module__8dZnsW__spin}@keyframes FlightMap-module__8dZnsW__spin{to{transform:rotate(360deg)}}.FlightMap-module__8dZnsW__routeList{gap:var(--space-2);padding:var(--space-4) var(--space-6);border-top:1px solid var(--color-border);display:flex;overflow-x:auto}.FlightMap-module__8dZnsW__routeCard{padding:var(--space-3) var(--space-4);background:var(--color-bg-tertiary);border:1px solid var(--color-border);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);flex-direction:column;flex-shrink:0;align-items:center;gap:2px;min-width:100px;display:flex}.FlightMap-module__8dZnsW__routeCard:hover{border-color:var(--color-accent-primary);background:#7c3aed14;transform:translateY(-2px)}.FlightMap-module__8dZnsW__routeCity{font-size:var(--font-size-sm);color:var(--color-text-primary);font-weight:600}.FlightMap-module__8dZnsW__routePrice{font-size:var(--font-size-xs);color:var(--color-accent-primary);font-weight:700}.FlightMap-module__8dZnsW__routeCount{color:var(--color-text-tertiary);font-size:10px}@media (max-width:768px){.FlightMap-module__8dZnsW__header{padding:var(--space-4);flex-direction:column}.FlightMap-module__8dZnsW__originSelector{width:100%}.FlightMap-module__8dZnsW__originBtn{text-align:center;flex:1;min-width:0}.FlightMap-module__8dZnsW__mapWrapper{height:300px}.FlightMap-module__8dZnsW__routeList{padding:var(--space-3) var(--space-4)}.FlightMap-module__8dZnsW__routeCard{min-width:80px;padding:var(--space-2) var(--space-3)}}
.WeatherOverview-module__uBq8fW__sideCard{background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:var(--radius-xl);padding:var(--space-5);gap:var(--space-4);flex-direction:column;display:flex}.WeatherOverview-module__uBq8fW__cardHeader{justify-content:space-between;align-items:center;display:flex}.WeatherOverview-module__uBq8fW__cardTitle{font-size:var(--font-size-base);align-items:center;gap:var(--space-2);font-weight:700;display:flex}.WeatherOverview-module__uBq8fW__cityRow{padding:var(--space-3);background:var(--color-bg-tertiary);border-radius:var(--radius-md);justify-content:space-between;align-items:center;display:flex}.WeatherOverview-module__uBq8fW__cityName{font-size:var(--font-size-sm);font-weight:600}.WeatherOverview-module__uBq8fW__cityDates{font-size:var(--font-size-xs);color:var(--color-text-tertiary)}.WeatherOverview-module__uBq8fW__temp{font-size:var(--font-size-base);color:var(--color-accent-amber);font-weight:700}.WeatherOverview-module__uBq8fW__packingTabs{gap:var(--space-2);display:flex}.WeatherOverview-module__uBq8fW__tab{border-radius:var(--radius-full);font-size:var(--font-size-xs);background:var(--color-bg-tertiary);color:var(--color-text-secondary);cursor:pointer;padding:4px 12px}.WeatherOverview-module__uBq8fW__activeTab{background:var(--color-accent-primary);color:#fff}.WeatherOverview-module__uBq8fW__itemList{gap:var(--space-2);flex-direction:column;display:flex}.WeatherOverview-module__uBq8fW__item{align-items:center;gap:var(--space-2);font-size:var(--font-size-sm);color:var(--color-text-secondary);display:flex}
