@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.object-fit-cover{object-fit:cover}.cursor-pointer{cursor:pointer}.btn-outline-secondary.btn-sm.rounded-circle:hover:not(:disabled){color:#fff;background-color:#0d6efd;border-color:#0d6efd}.btn-outline-secondary.btn-sm.rounded-circle:disabled{opacity:.3;cursor:not-allowed}.position-relative{position:relative!important}.position-absolute.card{max-height:400px;overflow-y:auto}@media (max-width:767px){body{padding-bottom:100px}}@keyframes slideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}.custom-datepicker-popper{z-index:1060!important}.react-datepicker{border:none;border-radius:12px;padding:10px;font-family:inherit;box-shadow:0 10px 25px #00000026}.react-datepicker__header{background-color:#fff;border-bottom:none;padding-top:5px}.react-datepicker__day-name{color:#aaa;width:2.3rem;margin:2px;font-weight:600}.react-datepicker__day{border-radius:50%;width:2.3rem;margin:2px;font-weight:500;line-height:2.3rem}.react-datepicker__day:hover{background-color:#f0f0f0}.react-datepicker__day--selected{color:#fff;background-color:#007bff}.react-datepicker__day--keyboard-selected{color:#333;background-color:#e9ecef}.react-datepicker__day--today{color:#007bff;background-color:#fff;border:1px solid #007bff;font-weight:700}.react-datepicker__triangle{display:none}.tour-content ul{padding-left:1.2rem}.tour-content li{margin-bottom:.3rem}.tour-content p{margin-bottom:.75rem}.category-scroll::-webkit-scrollbar{display:none}.itinerary-timeline-item{display:flex;position:relative}.itinerary-duration-col{flex-shrink:0;width:125px;min-width:125px;max-width:125px;padding-top:2px}@media (max-width:576px){.itinerary-duration-col{width:105px;min-width:105px;max-width:105px}}.itinerary-marker-col{flex-direction:column;flex-shrink:0;align-items:center;width:14px;min-width:14px;display:flex;position:relative}.itinerary-marker-dot{z-index:2;background-color:#0d6efd;border-radius:50%;flex-shrink:0;width:10px;height:10px;margin-top:7px;box-shadow:0 1px 3px #0000001f}.itinerary-marker-line{background-color:#0d6efd40;flex-grow:1;width:2px;min-height:28px}.itinerary-desc-col{color:#212529;flex-grow:1;font-size:.95rem;line-height:1.6}@keyframes tourShimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.tour-skeleton-pulse{background:linear-gradient(90deg,#f0f3f6 25%,#e2e8f0 50%,#f0f3f6 75%) 0 0/200% 100%;border-radius:6px;animation:1.5s linear infinite tourShimmer;display:inline-block}.tour-fade-in{animation:.35s cubic-bezier(.16,1,.3,1) tourFadeIn}@keyframes tourFadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.tour-option-card{transition:all .2s ease-in-out;border-radius:12px!important}.tour-option-card:hover{transform:translateY(-1px);border-color:#0d6efd!important}.tour-option-card.selected{background-color:#0d6efd0a!important;border-color:#0d6efd!important;box-shadow:0 4px 12px #0d6efd1f!important}@media (max-width:576px){.tour-option-card .card-body{padding:.85rem!important}.tour-option-price-container{border-top:1px dashed #00000014;justify-content:space-between;align-items:baseline;width:100%;margin-top:.5rem;padding-top:.5rem;display:flex}}.gallery-modal-backdrop{-webkit-backdrop-filter:blur(8px);animation:.25s ease-out galleryModalFadeIn;background-color:#0f172af0!important}@keyframes galleryModalFadeIn{0%{opacity:0}to{opacity:1}}.gallery-slide-next{animation:.3s cubic-bezier(.16,1,.3,1) forwards gallerySlideRight}.gallery-slide-prev{animation:.3s cubic-bezier(.16,1,.3,1) forwards gallerySlideLeft}.gallery-fade{animation:.25s ease-in-out forwards galleryPhotoFade}@keyframes gallerySlideRight{0%{opacity:.3;transform:translate(30px)scale(.98)}to{opacity:1;transform:translate(0)scale(1)}}@keyframes gallerySlideLeft{0%{opacity:.3;transform:translate(-30px)scale(.98)}to{opacity:1;transform:translate(0)scale(1)}}@keyframes galleryPhotoFade{0%{opacity:.4;transform:scale(.98)}to{opacity:1;transform:scale(1)}}.gallery-nav-btn{-webkit-backdrop-filter:blur(6px);color:#1e293b;cursor:pointer;background:#ffffffe0;border:1px solid #fff6;border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;transition:all .2s cubic-bezier(.16,1,.3,1);display:flex;box-shadow:0 4px 12px #00000026}.gallery-nav-btn:hover{color:#0d6efd;background:#fff;transform:translateY(-50%)scale(1.1);box-shadow:0 6px 16px #00000040}.gallery-nav-btn:active{transform:translateY(-50%)scale(.95)}.gallery-thumb-item{cursor:pointer;border-radius:8px;transition:all .22s;overflow:hidden}.gallery-thumb-item:hover{transform:translateY(-2px);opacity:1!important}.gallery-thumb-item.active{transform:scale(1.04);box-shadow:0 0 10px #0d6efd66;opacity:1!important;border:2.5px solid #0d6efd!important}.main-gallery-container{cursor:pointer;position:relative;overflow:hidden}.main-gallery-overlay{pointer-events:none;transition:background .3s}.main-gallery-container:hover .main-gallery-overlay{background:#0000001f}.main-gallery-view-all-btn{-webkit-backdrop-filter:blur(6px);background:#ffffffd9;transition:all .2s}.main-gallery-view-all-btn:hover{transform:scale(1.05);color:#0d6efd!important;background:#fff!important}@keyframes tourFilterCardIn{0%{opacity:0;transform:translateY(18px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}.tour-item-animate{will-change:transform,opacity;animation:.38s cubic-bezier(.16,1,.3,1) both tourFilterCardIn}@keyframes tourPillPulse{0%{transform:scale(.93)}50%{transform:scale(1.04)}to{transform:scale(1)}}.tour-filter-pill{-webkit-user-select:none;user-select:none;transition:all .22s cubic-bezier(.4,0,.2,1)}.tour-filter-pill:hover{transform:translateY(-2px);box-shadow:0 4px 10px #0d6efd26}.tour-filter-pill:active{transform:scale(.95)}.tour-filter-pill.active{animation:.3s cubic-bezier(.16,1,.3,1) tourPillPulse;box-shadow:0 4px 12px #0d6efd40}.tour-filter-select{border-radius:8px;transition:all .2s}.tour-filter-select:focus{border-color:#0d6efd;box-shadow:0 0 0 .2rem #0d6efd26}@keyframes tourEmptyFadeIn{0%{opacity:0;transform:scale(.96)translateY(12px)}to{opacity:1;transform:scale(1)translateY(0)}}.tour-empty-state{animation:.35s cubic-bezier(.16,1,.3,1) both tourEmptyFadeIn}.tour-card{border-radius:10px;transition:transform .25s cubic-bezier(.16,1,.3,1),box-shadow .25s cubic-bezier(.16,1,.3,1)!important}.tour-card:hover{transform:translateY(-4px)!important;box-shadow:0 .75rem 1.75rem #0000001f!important}.tour-card-img{transition:transform .4s!important}.tour-card:hover .tour-card-img{transform:scale(1.06)}
