.booking-page-container{max-width:1400px;margin:0 auto;padding:40px 20px}.booking-page-content{width:100%}.booking-page-header{align-items:flex-start;gap:30px;margin-bottom:40px;padding:20px 0;display:flex}.back-button{color:#fff;background:#6366f1;border-radius:8px;flex-shrink:0;align-items:center;gap:10px;margin-top:10px;padding:12px 24px;font-size:1rem;font-weight:600;text-decoration:none;transition:all .3s;display:flex;box-shadow:0 4px 12px #6366f14d}.back-button:hover{background:#4f46e5;transform:translateY(-2px);box-shadow:0 6px 16px #6366f166}.back-button i{font-size:1rem}.booking-header-content{text-align:center;flex:1}.booking-main-title{color:#1f2937;margin-bottom:15px;font-size:2.5rem;font-weight:700}.booking-breadcrumb{justify-content:center;align-items:center;gap:8px;margin-bottom:12px;font-size:.95rem;display:flex}.booking-breadcrumb a{color:#6366f1;text-decoration:none;transition:color .3s}.booking-breadcrumb a:hover{color:#4f46e5;text-decoration:underline}.booking-breadcrumb span{color:#9ca3af}.booking-breadcrumb .current{color:#1f2937;font-weight:600}.booking-subtitle{color:#6b7280;margin:0;font-size:1.1rem}.progress-step{z-index:1;flex-direction:column;flex:1;align-items:center;display:flex;position:relative}.progress-step-number{color:#9ca3af;background:#e5e7eb;border-radius:50%;justify-content:center;align-items:center;width:50px;height:50px;margin-bottom:12px;font-size:1.2rem;font-weight:700;transition:all .3s;display:flex}.progress-step.active .progress-step-number{color:#fff;background:#10b981;transform:scale(1.15);box-shadow:0 4px 12px #10b9814d}.progress-step.completed .progress-step-number{color:#fff;background:#059669}.progress-step-label{color:#6b7280;text-align:center;font-size:.9rem;font-weight:600}.progress-step.active .progress-step-label{color:#10b981}.progress-step.completed .progress-step-label{color:#059669}.holiday-booking-page .booking-main-layout{grid-template-columns:1fr 400px;align-items:start;gap:40px;display:grid}.booking-form-section{background:#fff;border:2px solid #f3f4f6;border-radius:16px;flex-direction:column;padding:40px;display:flex;box-shadow:0 4px 20px #00000014}.booking-step-content{animation:.5s fadeInUp}@keyframes fadeInUp{0%{opacity:0}to{opacity:1}}.booking-step-title{color:#1f2937;margin-bottom:15px;font-size:1.5rem;font-weight:700}.booking-step-description{color:#6b7280;margin-bottom:35px;font-size:1.1rem}.package-types-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px;margin-bottom:35px;display:grid}.package-type-card{text-align:center;cursor:pointer;background:#fff;border:2px solid #e5e7eb;border-radius:12px;padding:30px 20px;transition:all .3s}.package-type-card:hover{border-color:#10b981;transform:translateY(-5px);box-shadow:0 8px 20px #10b98126}.package-type-card.selected{background:#10b9810d;border-color:#10b981;box-shadow:0 8px 20px #10b98133}.package-type-icon{margin-bottom:15px;font-size:3rem}.package-type-name{color:#1f2937;margin-bottom:10px;font-size:1.3rem;font-weight:700}.package-type-price{color:#10b981;margin-bottom:5px;font-size:2rem;font-weight:700}.package-type-per{color:#6b7280;font-size:.9rem}.package-features-box{background:#f9fafb;border-radius:12px;margin-top:30px;padding:25px}.package-features-box h3{color:#1f2937;margin-bottom:20px;font-size:1.2rem;font-weight:700}.features-list{gap:12px;margin:0;padding:0;list-style:none;display:grid}.features-list li{color:#4b5563;align-items:center;gap:12px;font-size:1rem;display:flex}.features-list li i{color:#10b981;font-size:1.1rem}.form-grid-2{grid-template-columns:1fr 1fr;gap:20px;margin-bottom:25px;display:grid}@media (max-width:640px){.form-grid-2{grid-template-columns:1fr}}.form-group{margin-bottom:25px}.form-group label{color:#374151;margin-bottom:8px;font-size:.95rem;font-weight:600;display:block}.required{color:#ef4444}.form-input,.form-textarea{border:2px solid #e5e7eb;border-radius:8px;width:100%;padding:12px 16px;font-family:inherit;font-size:1rem;transition:all .3s}.form-input:focus,.form-textarea:focus{border-color:#10b981;outline:none;box-shadow:0 0 0 3px #10b9811a}.form-textarea{resize:vertical;min-height:120px}.section-subtitle{color:#1f2937;margin:35px 0 20px;font-size:1.3rem;font-weight:700}.traveler-counter{background:#f9fafb;border:2px solid #e5e7eb;border-radius:12px;justify-content:space-between;align-items:center;margin-bottom:15px;padding:20px 25px;display:flex}.counter-info{flex:1}.counter-label{color:#1f2937;margin-bottom:4px;font-size:1.1rem;font-weight:700}.counter-sublabel{color:#6b7280;font-size:.9rem}.counter-controls{align-items:center;gap:20px;display:flex}.counter-btn{color:#fff;cursor:pointer;background:#10b981;border:none;border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;font-size:1.3rem;font-weight:700;transition:all .3s;display:flex}.counter-btn:hover{background:#059669;transform:scale(1.1)}.counter-value{color:#1f2937;text-align:center;min-width:40px;font-size:1.5rem;font-weight:700}.customization-section{border-bottom:2px solid #f3f4f6;margin-bottom:35px;padding-bottom:35px}.customization-section:last-child{border-bottom:none}.customization-section h3{color:#10b981;margin-bottom:20px;font-size:1.2rem;font-weight:700}.activities-grid{grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:15px;margin-top:20px;display:grid}.activity-card{cursor:pointer;background:#fff;border:2px solid #e5e7eb;border-radius:12px;padding:20px;transition:all .3s}.activity-card:hover{border-color:#10b981;transform:translateY(-3px);box-shadow:0 6px 16px #10b98126}.activity-card.selected{background:#10b9810d;border-color:#10b981}.activity-header{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.activity-header input[type=checkbox]{accent-color:#10b981;width:20px;height:20px}.activity-price{color:#10b981;font-size:1.1rem;font-weight:700}.activity-card h4{color:#1f2937;margin-bottom:8px;font-size:1rem;font-weight:700}.activity-card p{color:#6b7280;font-size:.9rem;line-height:1.5}.travelers-list{flex-direction:column;gap:25px;display:flex}.traveler-form-card{background:#f9fafb;border:2px solid #e5e7eb;border-radius:12px;padding:25px}.traveler-form-title{color:#10b981;margin-bottom:20px;font-size:1.2rem;font-weight:700}.review-section{margin-bottom:30px}.review-section h3{color:#1f2937;margin-bottom:15px;font-size:1.3rem;font-weight:700}.review-card{background:#f9fafb;border:2px solid #e5e7eb;border-radius:12px;padding:25px}.review-card h4{color:#10b981;margin-bottom:10px;font-size:1.2rem;font-weight:700}.review-card>p{color:#6b7280;margin-bottom:15px}.review-tags{flex-wrap:wrap;gap:10px;margin-top:15px;display:flex}.review-tags span{color:#4b5563;background:#fff;border:1px solid #e5e7eb;border-radius:20px;padding:8px 16px;font-size:.9rem;font-weight:600}.review-row{border-bottom:1px solid #e5e7eb;justify-content:space-between;align-items:center;padding:12px 0;display:flex}.review-row:last-child{border-bottom:none;padding-bottom:0}.review-row span{color:#6b7280}.review-row strong{color:#1f2937;font-weight:600}.holiday-booking-page .booking-navigation{background:#f8fafc;border-top:1px solid #e5e7eb;border-radius:0 0 16px 16px;flex-direction:column;gap:15px;margin:32px -40px -40px;padding:24px;display:flex}.holiday-booking-page .nav-buttons-row{gap:15px;width:100%;display:flex}.holiday-booking-page .nav-helper-text{text-align:center;color:#64748b;width:100%;margin-bottom:8px;font-size:.85rem;font-weight:500}@media (max-width:768px){.holiday-booking-page .booking-navigation{gap:10px;margin-bottom:-20px;margin-left:-20px;margin-right:-20px;padding:16px}.holiday-booking-page .nav-helper-text{margin-bottom:6px;font-size:.75rem}.holiday-booking-page .booking-navigation.sticky-mobile{z-index:100;background:#fff;border-top:1px solid #e2e8f0;border-radius:0;position:sticky;bottom:-1px;box-shadow:0 -4px 15px #00000014}}.btn-primary,.btn-secondary{cursor:pointer;border:none;border-radius:10px;flex:1;justify-content:center;align-items:center;gap:10px;padding:14px 30px;font-size:1rem;font-weight:600;transition:all .3s;display:flex}.btn-primary{box-shadow:0 4px 12px #2563eb4d;color:#fff!important;background:#2563eb!important;border:none!important;outline:none!important}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 6px 16px #2563eb66;color:#fff!important;background:#1d4ed8!important}.btn-primary:active{box-shadow:none;outline:none;transform:translateY(0);color:#fff!important;background:#1e40af!important}.btn-primary:focus{outline:none;box-shadow:0 4px 12px #2563eb4d}.btn-secondary{color:#4b5563;background:#f3f4f6}.btn-secondary:hover{color:#374151;background:#e5e7eb;transform:translateY(-2px)}.order-summary-sidebar{position:relative}.order-summary-sticky{z-index:100;background:#fff;border:2px solid #f3f4f6;border-radius:16px;align-self:start;height:fit-content;padding:30px;position:sticky;top:110px;overflow:visible;box-shadow:0 4px 20px #00000014}.summary-title{color:#1f2937;border-bottom:2px solid #f3f4f6;margin-bottom:20px;padding-bottom:15px;font-size:1.5rem;font-weight:700}.summary-package{margin-bottom:20px}.summary-package h4{color:#1f2937;margin-bottom:10px;font-size:1.2rem;font-weight:700}.summary-package-type{color:#6b7280;align-items:center;gap:8px;font-size:.95rem;font-weight:600;display:flex}.summary-package-type span:first-child{font-size:1.3rem}.summary-divider{background:#f3f4f6;height:2px;margin:20px 0}.summary-details{flex-direction:column;gap:15px;display:flex}.summary-row{border-bottom:1px solid #f9fafb;justify-content:space-between;align-items:center;padding-bottom:12px;font-size:.95rem;display:flex}.summary-row:last-child{border-bottom:none;padding-bottom:0}.summary-row span:first-child{color:#6b7280}.summary-row span:last-child{color:#1f2937;font-weight:600}.summary-total{color:#10b981;justify-content:space-between;align-items:center;padding:20px 0;font-size:1.3rem;font-weight:700;display:flex}.summary-info{background:#fef3c7;border:1px solid #fbbf24;border-radius:8px;align-items:flex-start;gap:12px;margin-top:20px;padding:15px;display:flex}.summary-info i{color:#d97706;flex-shrink:0;margin-top:2px;font-size:1.2rem}.summary-info p{color:#92400e;margin:0;font-size:.85rem;line-height:1.5}.summary-dates{background:#f0fdf4;border:1px solid #10b981;border-radius:8px;align-items:center;gap:12px;margin-top:15px;padding:15px;display:flex}.summary-dates i{color:#10b981;flex-shrink:0;font-size:1.5rem}.summary-dates-label{color:#6b7280;margin-bottom:4px;font-size:.85rem}.summary-dates-value{color:#1f2937;font-size:.95rem;font-weight:600}@media (max-width:1024px){.booking-main-layout{grid-template-columns:1fr}.order-summary-sidebar{order:2}.order-summary-sticky{position:sticky;top:110px}}@media (max-width:768px){.booking-page-container{padding:20px 10px}.booking-page-header{text-align:center;flex-direction:column;align-items:center;gap:15px;margin-bottom:30px}.booking-main-title{font-size:1.6rem}.booking-form-section{min-height:auto;padding:20px 15px}.booking-step-title{font-size:1.3rem}.scroll-btn{display:none!important}.booking-navigation{flex-direction:column-reverse;gap:15px}.booking-navigation button{width:100%;margin-left:0!important}.package-types-grid,.form-grid-2,.activities-grid{grid-template-columns:1fr}.booking-progress-steps{justify-content:flex-start;padding-bottom:10px;overflow-x:auto}.progress-step{min-width:100px}.progress-step-number{width:40px;height:40px;font-size:1rem}.progress-step-label{font-size:.8rem}.btn-primary,.btn-secondary{width:100%}}.review-grid-container{flex-direction:column;gap:24px;margin-top:20px;display:flex}.review-card-section{flex-direction:column;gap:12px;display:flex}.review-section-title{color:#1f2937;align-items:center;gap:10px;margin:0;font-size:1.1rem;font-weight:700;display:flex}.review-section-title i{color:#ef4444;font-size:1rem}.detail-box-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;display:grid}.detail-box{background:#fff;border:1px solid #e5e7eb;border-radius:8px;flex-direction:column;gap:5px;padding:16px;display:flex}.detail-label{text-transform:uppercase;color:#6b7280;letter-spacing:.5px;font-size:.75rem;font-weight:600}.detail-value{color:#1f2937;font-size:1rem;font-weight:600}.included-box{background:#f0fdf4;border-radius:12px;margin-top:10px;padding:24px}.included-title{color:#1f2937;align-items:center;gap:8px;margin-bottom:16px;font-size:1.1rem;font-weight:700;display:flex}.included-title i{color:#d97706}.included-list{gap:10px;margin:0;padding:0;list-style:none;display:grid}.included-list li{color:#065f46;align-items:flex-start;gap:10px;font-size:.95rem;line-height:1.5;display:flex}.included-list li:before{content:"•";color:#059669;font-weight:700}.preference-value{text-transform:capitalize}.review-actions{border-top:1px solid #e5e7eb;justify-content:space-between;align-items:center;margin-top:40px;padding-top:20px;display:flex}.btn-edit-details{color:#1f2937;cursor:pointer;background:#f3f4f6;border:none;border-radius:24px;align-items:center;gap:8px;padding:12px 24px;font-weight:600;transition:all .2s;display:flex}.btn-edit-details:hover{background:#e5e7eb}.btn-customize-itinerary{color:#fff;cursor:pointer;background:#2563eb;border:none;border-radius:24px;padding:12px 32px;font-size:1rem;font-weight:600;transition:all .2s;box-shadow:0 4px 6px #2563eb33}.btn-customize-itinerary:hover{background:#1d4ed8;transform:translateY(-1px);box-shadow:0 6px 8px #2563eb4d}.destination-scroll-container{scroll-behavior:smooth!important;scrollbar-width:none!important;-ms-overflow-style:none!important;-webkit-overflow-scrolling:touch!important;scroll-snap-type:x mandatory!important;gap:1.5rem!important;width:100%!important;padding:1rem!important;display:flex!important;overflow-x:auto!important}.destination-scroll-container::-webkit-scrollbar{display:none}.destination-selection-card{cursor:pointer;scroll-snap-align:start;border-radius:20px;flex:0 0 280px;width:280px;height:220px;position:relative;overflow:hidden}@media (max-width:640px){.destination-selection-card{flex:0 0 85%;width:85%}.traveler-counter{flex-direction:column;align-items:flex-start;gap:15px;padding:15px}.counter-controls{justify-content:space-between;width:100%}}@media (max-width:1024px){.booking-main-layout{grid-template-columns:1fr;gap:20px}}
.holiday-booking-page{--holiday-primary:#2563eb;--holiday-primary-hover:#1d4ed8;--holiday-primary-active:#1e40af;--holiday-success:#10b981;--holiday-success-hover:#059669;--holiday-text-primary:#1f2937;--holiday-text-secondary:#6b7280;--holiday-border:#e5e7eb;--holiday-bg-light:#f9fafb}.holiday-booking-page .booking-page-container{max-width:1400px;margin:0 auto;padding:40px 20px}.holiday-booking-page .booking-page-content{width:100%}.holiday-booking-page .btn-primary{cursor:pointer;border-radius:10px;flex:1;justify-content:center;align-items:center;gap:10px;padding:14px 30px;font-size:1rem;font-weight:600;transition:all .3s;display:flex;box-shadow:0 4px 12px #2563eb4d;background:var(--holiday-primary)!important;color:#fff!important;border:none!important;outline:none!important}.holiday-booking-page .btn-primary:hover{transform:translateY(-2px);box-shadow:0 6px 16px #2563eb66;background:var(--holiday-primary-hover)!important;color:#fff!important}.holiday-booking-page .btn-primary:active{box-shadow:none;outline:none;transform:translateY(0);background:var(--holiday-primary-active)!important;color:#fff!important}.holiday-booking-page .btn-primary:focus{outline:none;box-shadow:0 4px 12px #2563eb4d}.holiday-booking-page .btn-secondary{color:#4b5563;cursor:pointer;background:#f3f4f6;border:none;border-radius:10px;flex:1;justify-content:center;align-items:center;gap:10px;padding:14px 30px;font-size:1rem;font-weight:600;transition:all .3s;display:flex}.holiday-booking-page .btn-secondary:hover{color:#374151;background:#e5e7eb;transform:translateY(-2px)}.holiday-booking-page .counter-btn{background:var(--holiday-success);color:#fff;cursor:pointer;border:none;border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;font-size:1.3rem;font-weight:700;transition:all .3s;display:flex}.holiday-booking-page .counter-btn:hover{background:var(--holiday-success-hover);transform:scale(1.1)}.holiday-booking-page .counter-btn:disabled{cursor:not-allowed;background:#d1d5db;transform:scale(1)}.holiday-booking-page .form-input:focus,.holiday-booking-page .form-textarea:focus,.holiday-booking-page select:focus{border-color:var(--holiday-primary);outline:none;box-shadow:0 0 0 3px #2563eb1a}.holiday-booking-page .package-type-card:hover{border-color:var(--holiday-success);transform:translateY(-5px);box-shadow:0 8px 20px #10b98126}.holiday-booking-page .package-type-card.selected{border-color:var(--holiday-success);background:#10b9810d;box-shadow:0 8px 20px #10b98133}.holiday-booking-page .activity-card:hover{border-color:var(--holiday-success);transform:translateY(-3px);box-shadow:0 6px 16px #10b98126}.holiday-booking-page .activity-card.selected{border-color:var(--holiday-success);background:#10b9810d}.holiday-booking-page .progress-step.active .progress-step-number{background:var(--holiday-primary);color:#fff;transform:scale(1.15);box-shadow:0 4px 12px #2563eb4d}.holiday-booking-page .progress-step.completed .progress-step-number{background:var(--holiday-success);color:#fff}.holiday-booking-page .progress-step.active .progress-step-label{color:var(--holiday-primary)}.holiday-booking-page .progress-step.completed .progress-step-label{color:var(--holiday-success)}.holiday-booking-page .breadcrumb-back-button{color:var(--holiday-primary);border:2px solid var(--holiday-primary);cursor:pointer;background:0 0;border-radius:8px;align-items:center;gap:8px;padding:10px 20px;font-size:.95rem;font-weight:600;text-decoration:none;transition:all .3s;display:flex}.holiday-booking-page .breadcrumb-back-button:hover{background:var(--holiday-primary);color:#fff;transform:translate(-3px)}.holiday-booking-page .breadcrumb-back-button i{font-size:.9rem;transition:transform .3s}.holiday-booking-page .breadcrumb-back-button:hover i{transform:translate(-2px)}.holiday-booking-page .destination-card-selected{border:2px solid var(--holiday-success)!important;transform:translateY(-4px)!important;box-shadow:0 10px 25px #10b9814d!important}.holiday-booking-page .duration-card{border:2px solid var(--holiday-border);text-align:center;cursor:pointer;background:#fff;border-radius:12px;padding:24px 20px;transition:all .3s}.holiday-booking-page .duration-card:hover{border-color:var(--holiday-primary);transform:translateY(-3px);box-shadow:0 6px 16px #2563eb26}.holiday-booking-page .duration-card.selected{border-color:var(--holiday-primary);background:#2563eb0d;box-shadow:0 6px 16px #2563eb33}.holiday-booking-page .summary-total{color:var(--holiday-primary);font-size:1.3rem;font-weight:700}.holiday-booking-page .customization-section h3,.holiday-booking-page .traveler-form-title{color:var(--holiday-primary);margin-bottom:20px;font-size:1.2rem;font-weight:700}.holiday-booking-page .review-card h4{color:var(--holiday-primary);margin-bottom:10px;font-size:1.2rem;font-weight:700}.holiday-booking-page input[type=checkbox]{accent-color:var(--holiday-success)}.holiday-booking-page input[type=radio]{accent-color:var(--holiday-primary)}.holiday-booking-page .error-message{color:#ef4444;margin-top:.5rem;font-size:.875rem}.holiday-booking-page .form-input.error,.holiday-booking-page .form-textarea.error,.holiday-booking-page select.error{border-color:#ef4444}.holiday-booking-page .loading-spinner{border:3px solid #f3f4f6;border-top:3px solid var(--holiday-primary);border-radius:50%;width:40px;height:40px;animation:1s linear infinite spin}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (max-width:1024px){.holiday-booking-page .booking-main-layout{grid-template-columns:1fr;gap:20px}.holiday-booking-page .order-summary-sidebar{order:2}.holiday-booking-page .booking-form-section{order:1}.holiday-booking-page .order-summary-sticky{margin-top:30px;position:static}}@media (max-width:768px){.holiday-booking-page .booking-navigation{flex-direction:column}.holiday-booking-page .btn-primary,.holiday-booking-page .btn-secondary{width:100%}.holiday-booking-page .booking-page-container{padding:20px 10px}.holiday-booking-page .booking-form-section{padding:20px}}.mobile-logo img,.about-logo img{-o-object-fit:contain;object-fit:contain;max-width:180px;height:auto}.th-menu-area .mobile-logo{background:#fff;padding:20px}
