.booking-container-shared{background-color:#f8f9fa;padding:40px 0}.booking-details-component,.booking-details-entry-container{background-color:#fff;border-radius:12px;padding:30px;box-shadow:0 2px 10px #0000000d;margin-bottom:30px}.booking-details-container{background-color:#f8f9fa;padding:40px 0}.booking-progress-container{background-color:#f8f9fa;padding-top:30px}.booking-progress{justify-content:center;margin-bottom:px}.booking-progress,.step{display:flex;align-items:center}.step{flex-direction:column;position:relative}.step-number{width:36px;height:36px;border-radius:50%;background-color:#e0e0e0;color:#757575;display:flex;justify-content:center;align-items:center;font-weight:700;margin-bottom:8px;transition:all .3s ease}.step.active .step-number{background-color:var(--primary-color1);color:#fff}.step.completed .step-number{background-color:#4caf50;color:#fff}.booking-selection-container{border-radius:12px;box-shadow:0 2px 10px #00000014;padding:30px}.booking-selection-header{margin-bottom:30px;border-bottom:1px solid #eee;padding-bottom:20px}.package-info h2{font-size:24px;margin-bottom:10px;color:#333}.package-meta{display:flex;flex-wrap:wrap}.package-meta span{display:flex;align-items:center;color:#555;font-size:14px}.package-meta i{margin-right:5px;color:var(--primary-color1)}.booking-option{border-radius:8px;padding:25px;margin-bottom:25px;box-shadow:0 2px 8px #0000000d}.booking-option h3{margin-bottom:20px;color:#333}.booking-option h3:after{height:3px}.original-price{font-size:13px}.booking-summary{background-color:#fff;border-radius:12px;padding:30px;box-shadow:0 2px 10px #0000000d;height:fit-content}.booking-summary h3{font-size:1.25rem;margin-bottom:20px;padding-bottom:12px;border-bottom:1px solid #eaeaea}.booking-summary h3:after{height:3px}.error-message{color:#d32f2f;font-size:12px;margin-top:5px}.booking-details-container{background-color:#fff;border-radius:12px;box-shadow:0 2px 10px #00000014;padding:30px}.booking-details-form{padding:20px;border-radius:8px;margin-bottom:20px}.booking-details-form h3{font-size:18px;margin-bottom:25px;color:#333;position:relative;padding-bottom:10px}.booking-details-form h3:after{content:"";position:absolute;bottom:0;left:0;width:50px;height:3px;background-color:var(--primary-color1)}.form-group{margin-bottom:20px}.form-group label{display:block;margin-bottom:8px;font-weight:500;color:#333}.form-group label .required{color:#d32f2f}.booking-actions{display:flex;flex-direction:column;justify-content:space-between;margin-top:30px}.booking-payment-container{background-color:#fff;border-radius:12px;box-shadow:0 2px 10px #00000014;padding:30px}.payment-methods{margin-bottom:30px}.option-radio{margin-right:15px;position:relative}.option-icon{margin-right:15px;font-size:24px;color:#555}.option-content h4{font-size:16px;margin-bottom:5px}.option-content p{font-size:14px;color:#666;margin-bottom:5px}.booking-success-container{padding:80px 0;background-color:#f9f9f9}.booking-success-card{max-width:800px;margin:0 auto;background-color:#fff;border-radius:15px;box-shadow:0 4px 20px #00000014;padding:40px;text-align:center}.success-icon{font-size:80px;color:#4caf50;margin-bottom:20px}.booking-success-card h1{font-size:32px;margin-bottom:15px;color:#333}.booking-details{background-color:#f9f9f9;border-radius:10px;padding:10px;margin-bottom:5px;text-align:left}.booking-details h3{font-size:20px;margin-bottom:20px;color:#333;position:relative;padding-bottom:10px;text-align:center}.booking-details h3:after{content:"";position:absolute;bottom:0;left:50%;transform:translateX(-50%);width:60px;height:3px;background-color:var(--primary-color1)}.contact-info{margin-bottom:30px;color:#555;line-height:1.6}.action-buttons{display:flex;justify-content:center;gap:15px;flex-wrap:wrap}@media (max-width:991px){.booking-summary{margin-top:30px;position:static}}@media (max-width:767px){.booking-progress-container{padding:40px 0}.booking-details-container,.booking-payment-container,.booking-selection-container,.booking-success-card{padding:20px}.action-buttons{flex-direction:column;width:100%}.action-buttons a{width:100%;text-align:center}}.checkmark{top:3px;margin-right:15px;transition:all .2s ease}.package-booking-card{background-color:#fff;border-radius:10px;box-shadow:0 5px 20px #0000001a;padding:25px;transition:all .3s ease;margin-bottom:30px}.package-booking-card.sticky{position:sticky;top:50px}.package-booking-card .card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;position:relative}.package-booking-card .card-header h3{margin:0;font-size:22px;font-weight:700;color:#222}.package-booking-card .price-section{display:flex;align-items:center;margin-bottom:25px;border-bottom:1px dashed #ddd;padding-bottom:20px}.package-booking-card .current-price{font-size:28px;font-weight:700;color:var(--primary-color1);margin-right:15px;display:flex;align-items:baseline}.package-booking-card .original-price{font-size:16px;color:#888}.package-booking-card .package-highlights{margin-bottom:25px}.package-booking-card .package-highlights h4{font-size:16px;font-weight:600;margin-bottom:15px}.package-booking-card .package-highlights ul{padding-left:5px;list-style:none}.package-booking-card .package-highlights li{display:flex;align-items:flex-start;margin-bottom:10px;font-size:14px;color:#555}.package-booking-card .package-highlights li i{color:var(--primary-color1);margin-right:10px;font-size:16px;flex-shrink:0}.package-booking-card .availability-warning{padding:10px 15px;background-color:#ffc10726;border-radius:6px;margin-bottom:25px;display:flex;align-items:center;font-size:14px;color:#856404}.package-booking-card .availability-warning i{margin-right:10px;color:#ffc107}.package-booking-card .cta-section{display:flex;flex-direction:column;gap:15px}.cta-section .primary-btn1{height:50px}.package-booking-card .login-message,.package-booking-card .user-logged-message{font-size:13px;text-align:center;color:#666}.package-booking-card .user-logged-message i{color:#28a745;margin-right:5px}.package-booking-card .login-link{color:var(--primary-color1);font-weight:600;text-decoration:none}.package-booking-card .login-link:hover{text-decoration:underline}@media (max-width:767px){.package-booking-card.sticky{position:static}}.main-image{position:relative;border-radius:10px;overflow:hidden;height:450px}.main-image img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease}.main-image:hover img{transform:scale(1.05)}@media (max-width:991px){.main-image{height:350px;margin-bottom:15px}}.modern-accordion{margin-top:20px;border-radius:8px;overflow:hidden}.modern-accordion .accordion-item{margin-bottom:15px;border-radius:8px;overflow:hidden;box-shadow:0 2px 10px #0000000d;transition:all .3s ease}.modern-accordion .accordion-item:hover{box-shadow:0 5px 15px #0000001a}.modern-accordion .accordion-item.active{box-shadow:0 5px 20px #0000001a;border-left:3px solid var(--primary-color1)}.modern-accordion .accordion-header{display:flex;justify-content:space-between;align-items:center;padding:15px 20px;background-color:#fff;cursor:pointer;transition:all .3s ease}.modern-accordion .accordion-header h4{margin:0;font-size:16px;font-weight:600;color:#333;transition:all .3s ease}.modern-accordion .accordion-item.active .accordion-header h4{color:var(--primary-color1)}.modern-accordion .accordion-icon{width:24px;height:24px;border-radius:50%;background:rgba(var(--primary-rgb1),.1);display:flex;align-items:center;justify-content:center;color:var(--primary-color1);transition:all .3s ease}.modern-accordion .accordion-item.active .accordion-icon{background:var(--primary-color1);color:#fff;transform:rotate(180deg)}.modern-accordion .accordion-content{max-height:0;overflow:hidden;transition:max-height .3s ease}.modern-accordion .accordion-content.show{max-height:1000px}.modern-accordion .content-inner{padding:0 20px 20px;color:#555!important;line-height:1.7!important;font-size:15px!important}.modern-accordion .content-inner h1,.modern-accordion .content-inner h2,.modern-accordion .content-inner h3,.modern-accordion .content-inner h4,.modern-accordion .content-inner h5,.modern-accordion .content-inner h6,.modern-accordion .content-inner p,.modern-accordion .content-inner span{font-size:15px!important;line-height:1.7!important;color:#555!important;font-weight:400!important;margin:0 0 14px!important}.modern-accordion .content-inner h3:last-child,.modern-accordion .content-inner p:last-child{margin-bottom:0!important}.modern-accordion .content-inner .bullet-list{margin:12px 0;padding-left:0;list-style:none}.modern-accordion .content-inner .bullet-list li{position:relative;padding-left:24px;margin-bottom:10px;line-height:1.7;font-size:15px!important;color:#555!important}.modern-accordion .content-inner .bullet-list li:before{content:"";position:absolute;left:0;top:9px;width:8px;height:8px;background-color:var(--primary-color1,#63ab45);border-radius:50%}.modern-accordion .content-inner ol,.modern-accordion .content-inner ul{margin:12px 0;padding-left:0;list-style:none}.modern-accordion .content-inner ol li,.modern-accordion .content-inner ul li{position:relative;padding-left:24px;margin-bottom:10px;line-height:1.7;font-size:15px!important;color:#555!important}.modern-accordion .content-inner ul li:before{content:"";position:absolute;left:0;top:8px;width:6px;height:6px;background-color:var(--primary-color1,#63ab45);border-radius:50%}.modern-accordion .content-inner ol{counter-reset:accordion-counter}.modern-accordion .content-inner ol li:before{counter-increment:accordion-counter;content:counter(accordion-counter) ".";position:absolute;left:0;top:0;font-weight:600;color:var(--primary-color1,#63ab45)}.modern-accordion .content-inner b,.modern-accordion .content-inner strong{font-weight:600;color:var(--title-color,#1a1a1a)}.modern-accordion .content-inner a{color:var(--primary-color1,#63ab45);text-decoration:underline}.modern-accordion .content-inner a:hover{color:var(--primary-color2,#3d8b25)}.modern-accordion .content-inner h5,.modern-accordion .content-inner h6{font-weight:600;color:var(--title-color,#1a1a1a);margin-top:16px;margin-bottom:8px}.modern-accordion .content-inner h5{font-size:16px}.modern-accordion .content-inner h6{font-size:14px}.package-content-container{margin-bottom:20px}.package-content{font-size:16px;line-height:1.8;color:var(--text-color,#555)}.package-content p{margin-bottom:16px}.package-content h2,.package-content h3,.package-content h4{color:var(--title-color,#1a1a1a);margin-top:24px;margin-bottom:12px;font-weight:600}.package-content h2{font-size:24px}.package-content h3{font-size:20px}.package-content h4{font-size:18px}.package-content ol,.package-content ul{margin:16px 0;padding-left:0;list-style:none}.package-content ol li,.package-content ul li{position:relative;padding-left:28px;margin-bottom:12px;line-height:1.7}.package-content ul li:before{content:"";position:absolute;left:0;top:10px;width:8px;height:8px;background-color:var(--primary-color1,#63ab45);border-radius:50%}.package-content ol{counter-reset:list-counter}.package-content ol li:before{counter-increment:list-counter;content:counter(list-counter) ".";position:absolute;left:0;top:0;font-weight:600;color:var(--primary-color1,#63ab45)}.package-content b,.package-content strong{font-weight:600;color:var(--title-color,#1a1a1a)}.package-content em,.package-content i:not(.bi){font-style:italic}.package-content a{color:var(--primary-color1,#63ab45);text-decoration:underline;transition:color .3s ease}.package-content a:hover{color:var(--primary-color2,#3d8b25)}.package-content blockquote{margin:20px 0;padding:16px 20px;border-left:4px solid var(--primary-color1,#63ab45);background-color:#f8f9fa;font-style:italic;color:#666}.package-content table{width:100%;margin:20px 0;border-collapse:collapse}.package-content table td,.package-content table th{padding:12px;border:1px solid #e5e5e5;text-align:left}.package-content table th{background-color:#f8f9fa;font-weight:600;color:var(--title-color,#1a1a1a)}.package-content table tr:nth-child(2n){background-color:#fafafa}.package-content hr{margin:24px 0;border:none;border-top:1px solid #e5e5e5}.package-content p:has(strong:first-child){position:relative}.package-content p{margin-bottom:14px}.package-content p strong:first-child{color:var(--title-color,#1a1a1a)}@media (max-width:767px){.package-content{font-size:15px;line-height:1.7}.package-content h2{font-size:20px}.package-content h3{font-size:18px}.package-content h4{font-size:16px}.package-content ol li,.package-content ul li{padding-left:24px}}.exclusions h4,.inclusions h4{font-size:18px;font-weight:600;margin-bottom:15px;color:#333}.service-item{display:flex;align-items:center;padding:10px;border-radius:8px;border:1px solid #eee;transition:all .3s ease;cursor:pointer}.service-item:hover{background-color:rgba(var(--primary-rgb1),.05);border-color:var(--primary-color1)}.service-item.selected{background-color:rgba(var(--primary-rgb1),.1)}.service-item.selected,.service-item.selected .checkmark,.service-item:hover .checkmark{border-color:var(--primary-color1)}.service-item.selected .checkmark{background-color:var(--primary-color1)}.service-item.selected .checkmark:after{display:block}.show-more-btn{padding:5px;transition:all .3s ease;text-align:center}.booking-form-section{margin-top:15px;margin-bottom:20px}.form-label{font-size:14px;font-weight:500;color:#555;margin-bottom:5px;display:block}.service-item{padding:8px 10px;margin-bottom:5px}.service-name,.service-price{font-size:13px}.price-section{margin-bottom:15px;padding-bottom:15px}.current-price{font-size:24px}.show-more-btn{padding:3px}.availability-warning{padding:8px 10px;font-size:13px;margin-bottom:15px}.cta-section{gap:10px}.login-message,.user-logged-message{font-size:12px}.show-more-btn{font-size:13px;transition:all .2s ease;text-decoration:underline}.show-more-btn:hover{opacity:.8}.mobile-booking-cta{width:100%;background-color:#fff;z-index:999;padding:12px 0;display:none}.mobile-booking-cta .price-info{display:flex;flex-direction:column}.mobile-booking-cta .current-price{font-weight:700;color:var(--primary-color1)}.mobile-booking-cta .primary-btn1{padding:8px 20px;font-size:16px}@media (max-width:991px){.mobile-booking-cta{display:block}.package-booking-card{display:none}}.booking-confirmation-page{padding:80px 0;background-color:#f9f9f9}.booking-reference{margin-top:5px;font-weight:400;opacity:.9}.package-name{margin-bottom:20px;padding-bottom:15px}.package-name h4{margin:0;font-size:18px;color:#333}.booking-info{margin-bottom:25px}.paypal-button-container{margin:1rem 0}.btn-paypal{background-color:#0070ba;color:#fff;border:none;padding:10px 20px;font-weight:500;transition:all .3s ease}.btn-paypal:hover{background-color:#003087;color:#fff}.payment-methods-container{margin-top:1rem}.payment-method-option{display:flex;align-items:center;padding:1rem;border:1px solid #e0e0e0;border-radius:8px;margin-bottom:1rem;cursor:pointer;transition:all .3s ease}.payment-method-option:hover{border-color:#ccc;background-color:#f9f9f9}.payment-method-option.active{border-color:var(--primary-color1);background-color:rgba(var(--primary-rgb1),.05)}.option-icon{font-size:1.5rem;width:50px;height:50px;display:flex;align-items:center;justify-content:center;background-color:#f2f2f2;border-radius:50%;margin-right:1rem}.payment-method-option.active .option-icon{background-color:var(--primary-color1);color:#fff}.booking-summary .error-message{font-size:.875rem;margin-top:.5rem;color:#dc3545}.cart-panel-backdrop{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#00000080;z-index:9998;opacity:0;visibility:hidden;transition:opacity .3s ease,visibility .3s ease}.cart-panel-backdrop.active{opacity:1;visibility:visible}.cart-panel{position:fixed;top:0;right:-400px;width:400px;max-width:90%;height:100%;background-color:#fff;z-index:9999;box-shadow:-5px 0 15px #0000001a;transition:right .3s ease;display:flex;flex-direction:column}.cart-panel.open{right:0}.cart-header{display:flex;justify-content:space-between;align-items:center;padding:20px;border-bottom:1px solid #eee}.cart-header .cart-title,.cart-header h3{margin:0;font-size:20px;font-weight:600}.cart-content{flex:1;overflow-y:auto;padding:20px;display:flex;flex-direction:column}.cart-items{margin-bottom:20px;flex:1}.cart-item{display:flex;padding:15px 0;border-bottom:1px solid #eee;position:relative}.cart-item:last-child{border-bottom:none}.cart-summary{background-color:#f9f9f9;border-radius:8px;padding:15px;margin-bottom:20px}.original-price{font-size:12px;color:#999;margin-left:5px}.cart-actions{display:flex;gap:10px}.cart-actions button{flex:1;padding:12px 15px}.cart-items-container{margin-bottom:30px}.cart-item-card{transition:all .3s ease}.cart-item-card:hover{box-shadow:0 5px 15px #0000001a;transform:translateY(-2px)}.cart-item-header h3{margin:0;font-size:18px;font-weight:600}.btn-remove{background:none;border:none;color:#999;cursor:pointer;padding:5px;transition:all .2s ease}.btn-remove:hover{color:#d9534f}.cart-item-details{padding:20px}.cart-item-actions{display:flex;justify-content:flex-end;gap:10px;padding:15px 20px;background-color:#f9f9f9;border-top:1px solid #eee}.cart-summary-card{background-color:#fff;border-radius:10px;box-shadow:0 2px 10px #0000000d;padding:20px;position:sticky;top:100px}.login-link{color:var(--primary-color1);font-weight:600;text-decoration:none}.login-link:hover{text-decoration:underline}@media (max-width:767px){.action-buttons,.cart-item-details .row{flex-direction:column}.cart-item-details .col-md-3{margin-bottom:15px}}.cart-summary-section{background-color:#f9f9f9;border-radius:8px;padding:20px;margin-bottom:30px;border-left:4px solid var(--primary-color1)}.cart-summary-section h3{font-size:18px;margin-bottom:15px;color:#333}.cart-summary-list{list-style:none;padding:0;margin:0}.cart-summary-item{display:flex;flex-wrap:wrap;justify-content:space-between;padding:12px 0;border-bottom:1px dashed #ddd}.cart-summary-item:last-child{border-bottom:none}.package-name{font-weight:600;color:#333;width:100%;margin-bottom:4px}.package-details{display:flex;flex-wrap:wrap;gap:10px;font-size:14px;color:#666;flex:1}.package-price{font-weight:600;color:var(--primary-color1)}.cart-total{display:flex;justify-content:space-between;padding-top:15px;margin-top:10px;border-top:1px solid #ddd;font-weight:600;font-size:16px}.cart-actions{margin-top:15px;text-align:right}@media (max-width:767px){.cart-summary-item{flex-direction:column}.package-details{margin-bottom:8px}}.booking-guarantee{background-color:#f8f9fa;border-radius:8px;padding:15px;margin-top:20px}.alert-warning{border-left:4px solid #ffc107}.alert-warning i{color:#ffc107;font-size:1.2rem}.package-count-badge{display:inline-block;background-color:var(--primary-color1);color:#fff;padding:5px 10px;border-radius:20px;font-size:14px;font-weight:500}.cart-item-card{background-color:#fff;border-radius:10px;box-shadow:0 2px 8px #00000014;margin-bottom:20px;overflow:hidden}.cart-item-header{display:flex;justify-content:space-between;align-items:center;padding:15px 20px;border-bottom:1px solid #eee}.cart-item-content{padding:20px}.cart-item-footer{display:flex;justify-content:flex-end;gap:10px;padding:12px 20px;background-color:#f8f9fa}.service-name{flex-grow:1}.service-price{font-weight:500}.booking-card{background:#fff;border-radius:12px;box-shadow:0 4px 15px #00000014;overflow:hidden;margin-bottom:30px;transition:all .3s ease;display:flex;flex-direction:column;position:relative}.booking-card:hover{transform:translateY(-5px);box-shadow:0 10px 25px #0000001f}.booking-card-header{overflow:hidden}.booking-card .gallery-image{height:100%;overflow:hidden}.booking-card .gallery-image img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease}.booking-card .gallery-image:hover img{transform:scale(1.05)}.booking-card-content{padding:10px;display:flex;flex-direction:column;flex-grow:1}.booking-info-header{margin-bottom:5px;position:relative}.booking-ref-badge{display:inline-flex;align-items:center;background:rgba(var(--primary-rgb),.1);color:var(--primary-color1);padding:5px 12px;font-size:13px;font-weight:600}.booking-ref-badge i{margin-right:5px}.booking-card .booking-title{margin-bottom:10px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.booking-card .booking-title h3{font-size:18px;font-weight:700;margin:0;line-height:1.4}.booking-card .booking-title a{color:#333;text-decoration:none;transition:color .3s}.booking-card .booking-title a:hover{color:var(--primary-color1)}.booking-card-footer{margin-top:auto;padding-top:15px;border-top:1px solid #eee;display:flex;justify-content:space-between;align-items:center}.booking-card .booking-actions{display:flex}.booking-card .admin-button-group{display:flex;gap:8px}.booking-details-container{padding:20px 0}.booking-details-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px;flex-wrap:wrap;gap:15px}.booking-title-section h2{font-size:24px;margin-bottom:5px;font-weight:700}.booking-reference{font-size:14px;color:#666;display:flex;align-items:center;gap:5px}.booking-status-section{display:flex;gap:10px;flex-wrap:wrap}.special-requests{background:#f9f9f9;border-radius:8px;padding:15px}.special-requests h5{font-size:16px;font-weight:600;margin-bottom:10px;display:flex;align-items:center}.special-requests p{font-size:14px;color:#666;margin-bottom:0}.booking-details-card{background:#fff;border-radius:10px;box-shadow:0 0 20px #0000000d;overflow:hidden;margin-bottom:25px}.booking-details-card .card-header{padding:20px;border-bottom:1px solid #eee;background-color:#fff}.booking-details-card .card-header h3{font-size:18px;font-weight:700;margin:0;display:flex;align-items:center}.booking-details-card .card-header h3 i{color:var(--primary-color1);margin-right:10px}.package-image-container{margin-bottom:20px;border-radius:10px;overflow:hidden;height:220px}.package-image{width:100%;height:100%;object-fit:cover}.package-title{font-size:20px;font-weight:700;margin-bottom:20px}.package-meta{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:15px;margin-bottom:20px}.package-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:5px}.package-header h4{font-size:18px;font-weight:600;margin:0}.package-details-grid{display:grid;grid-template-columns:120px 1fr;gap:20px}@media (max-width:576px){.package-details-grid{grid-template-columns:1fr}.package-image-container{height:180px}}.package-info .package-meta{display:flex;flex-direction:column;gap:10px;margin-bottom:15px}.package-price{margin-top:15px;display:flex;justify-content:space-between;align-items:center;padding:10px 15px;background:rgba(var(--primary-rgb),.05);border-radius:10px}.package-price span{font-weight:600;color:var(--primary-color1)}.booking-summary{box-shadow:0 0 20px #0000000d;overflow:hidden;margin-bottom:25px;padding:0}.booking-summary h3{font-weight:700;margin:0;padding:20px;border-bottom:1px solid #eee;display:flex;align-items:center}.booking-summary h3 i{margin-right:10px;color:var(--primary-color1)}.cancel-booking-modal{padding:15px 10px}@media (max-width:767px){.booking-details-header{flex-direction:column;align-items:flex-start}.booking-status-section{margin-top:10px}.package-meta{grid-template-columns:1fr}}.booking-date-banner{background:linear-gradient(to right,rgba(var(--primary-rgb),.07),rgba(var(--primary-rgb),.01));border-radius:10px;padding:15px;margin-bottom:20px;display:flex;align-items:center;border-left:4px solid var(--primary-color1)}.package-summary-banner{display:flex;align-items:center;padding:0 25px;background:linear-gradient(to right,rgba(var(--primary-rgb),.05),rgba(var(--primary-rgb),.01))}.package-summary-banner .package-image{width:90px;height:90px;flex-shrink:0;margin-right:15px;border-radius:8px;overflow:hidden;box-shadow:0 2px 8px #0000001a}.package-summary-banner .package-image img{width:100%;height:100%;object-fit:cover}.package-summary-banner .package-info h4{font-size:20px;font-weight:600;margin:0 0 8px;color:var(--title-color)}.package-summary-banner .package-meta span.duration{color:var(--text-color);display:inline-flex;align-items:center;margin-right:15px}.package-summary-banner .package-meta span.duration i{margin-right:6px;color:var(--primary-color1)}.package-summary-banner .package-meta span.limited{color:#e65100;font-weight:500;display:inline-flex;align-items:center}.package-summary-banner .package-meta span.limited i{margin-right:6px;color:#e65100}.booking-option{margin-bottom:0;background-color:#fff;overflow:hidden}.show-more-btn{background:none;border:none;color:var(--primary-color1);cursor:pointer;font-size:14px;padding:0;display:inline-flex;align-items:center;font-weight:500;margin-top:5px}.show-more-btn:hover{text-decoration:underline}.service-name{color:var(--title-color);margin-bottom:2px}.action-buttons.full-width{display:flex;gap:10px}.action-buttons button{flex:1;padding:12px 20px;font-weight:600;transition:all .3s}.action-buttons .primary-btn1{background-color:var(--primary-color1);color:#fff;border:none;border-radius:4px}.action-buttons .primary-btn1:hover{background-color:var(--primary-hover);transform:translateY(-2px);box-shadow:0 4px 8px rgba(var(--primary-rgb),.15)}.form-control.is-invalid,.form-select.is-invalid{border-color:#dc3545;padding-right:calc(1.5em + .75rem);background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' width='12' height='12' fill='none' stroke='%23dc3545'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right calc(.375em + .1875rem) center;background-size:calc(.75em + .375rem) calc(.75em + .375rem)}.booking-selection-container{background-color:#fff;border-radius:10px;overflow:hidden;margin-bottom:30px}.booking-selection-header{background:linear-gradient(to right,rgba(var(--primary-rgb),.05),rgba(var(--primary-rgb),.01));padding:25px;border-bottom:1px solid rgba(var(--primary-rgb),.1)}.booking-selection-header .package-info h2{font-size:24px;font-weight:700;margin:0 0 10px;color:var(--title-color)}.booking-selection-header .package-meta{display:flex;flex-wrap:wrap;gap:15px}.booking-selection-header .package-meta span{display:flex;align-items:center;color:var(--text-color);font-size:15px}.booking-selection-header .package-meta i{margin-right:6px;color:var(--primary-color1)}.booking-selection-form{padding:25px}.booking-option{background:#fff;border-radius:10px;margin-bottom:10px}.booking-option h3{font-size:18px;font-weight:600;margin:0 0 15px;color:var(--title-color);position:relative;padding-bottom:10px}.booking-option h3:after{content:"";position:absolute;bottom:0;left:0;width:50px;height:2px;background-color:var(--primary-color1)}.checkmark{position:relative;min-width:22px;border:2px solid rgba(var(--primary-rgb),.5);margin-right:12px;margin-top:2px}.booking-summary{background:#fff;border-radius:10px;padding:25px;position:sticky;top:20px;box-shadow:0 2px 15px #0000000d}.booking-summary h3{font-size:18px;font-weight:600;margin:0 0 20px;color:var(--title-color);position:relative;padding-bottom:10px}.booking-summary h3:after{content:"";position:absolute;bottom:0;left:0;width:50px;height:2px;background-color:var(--primary-color1)}@media (max-width:991px){.booking-summary{position:relative;top:0;margin-top:30px}}@media (max-width:767px){.booking-option,.booking-selection-container,.booking-selection-form,.booking-selection-header,.booking-summary,.package-summary-banner{padding:15px}.package-summary-banner .package-image{width:70px;height:70px}}.price{color:var(--primary-color1);font-weight:600;margin-bottom:0}.original-price{color:#6c757d;text-decoration:line-through;font-size:.85rem;margin-bottom:0}.checkmark{position:absolute;top:0;left:0;height:22px;width:22px;background-color:#fff;border:2px solid #ddd;border-radius:4px;transition:all .2s}.checkmark:after{content:"";position:absolute;display:none}.service-name{margin-bottom:.25rem;font-size:.95rem}.service-price{font-size:.9rem}.price-section{margin-bottom:1.25rem}.service-name{color:#333;margin-bottom:3px}.service-name,.service-price{font-weight:600;font-size:14px}.service-price{color:var(--primary-color1)}.booking-card-header{height:220px;position:relative}.gallery-image{width:100%;height:100%;border-radius:0}.booking-ref-badge{width:120px;height:26px;border-radius:20px;margin-bottom:10px}@keyframes shimmer{0%{background-position:-468px 0}to{background-position:468px 0}}.mobile-booking-cta{position:fixed;bottom:0;left:0;right:0;background:#fff;box-shadow:0 -2px 10px #0000001a;z-index:1000;transform:translateY(100%);transition:transform .3s ease;padding:15px 0}.mobile-booking-cta.visible{transform:translateY(0)}.mobile-booking-cta .cta-content{display:flex;justify-content:space-between;align-items:center;gap:15px}.mobile-booking-cta .price-info{flex:1}.mobile-booking-cta .current-price{font-size:18px;font-weight:600;color:#333}.mobile-booking-cta .original-price{font-size:14px;color:#666}.mobile-booking-cta .primary-btn1{min-width:120px;padding:10px 20px;font-size:14px}.mobile-actions{display:flex;gap:10px}.package-option-selector.mobile{margin-bottom:0}.package-option-selector.mobile .option-card{margin-bottom:15px;border:2px solid #eee;border-radius:12px;padding:15px;transition:all .3s ease}.package-option-selector.mobile .option-card.selected{border-color:var(--primary-color1);background-color:var(--primary-color-light)}.package-option-selector.mobile .option-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:10px}.package-option-selector.mobile .option-title{font-size:16px;font-weight:600;color:#333;margin:0}.package-option-selector.mobile .option-price{font-size:16px;font-weight:600;color:var(--primary-color1)}.package-option-selector.mobile .option-description{font-size:14px;color:#666;margin-bottom:10px}.package-option-selector.mobile .option-features{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}@media (max-width:767px){.mobile-booking-cta{padding:10px 0}.mobile-booking-cta .current-price{font-size:16px}.mobile-booking-cta .primary-btn1{min-width:100px;padding:8px 16px}.mobile-actions{gap:8px}}.truncate-2-lines{-webkit-line-clamp:2;margin-bottom:5px;line-height:1.5}.truncate-1-lines,.truncate-2-lines{display:-webkit-box;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis}.truncate-1-lines{-webkit-line-clamp:1}.option-details-modal{position:fixed;top:0;left:0;right:0;bottom:0;display:flex;align-items:center;justify-content:center;z-index:10}.option-modal-backdrop{position:absolute;top:0;left:0;right:0;bottom:0;background-color:#00000080;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.option-modal-content{position:relative;width:90%;max-width:600px;max-height:80vh;background-color:#fff;border-radius:16px;box-shadow:0 10px 40px #0003;display:flex;flex-direction:column;overflow:hidden;z-index:5;animation:modalFadeIn .3s ease}@keyframes modalFadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.option-modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px;border-bottom:1px solid #eee;background-color:#f9f9f9}.option-modal-header h3{margin:0;font-size:20px;font-weight:600;color:#333}.close-modal-btn{background:none;border:none;width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:20px;color:#666;cursor:pointer;transition:all .2s}.close-modal-btn:hover{background-color:#f0f0f0;color:#333}.option-modal-body{flex:1;overflow-y:auto;padding:20px}.modal-section{margin-bottom:25px}.modal-section:last-child{margin-bottom:0}.modal-section h4{font-size:18px;font-weight:600;margin-bottom:12px;color:#444}.modal-section .features-list{list-style:none;padding:0;margin:0}.modal-section .feature-item{display:flex;align-items:center;margin-bottom:8px;font-size:15px}.modal-section .feature-item i{color:var(--primary-color1);margin-right:10px;font-size:16px}.modal-section .price-display{background-color:#f9f9f9;border-radius:10px;padding:15px}.modal-section .current-price{font-size:22px;font-weight:600;color:var(--primary-color1);margin-bottom:10px}.modal-section .original-price{font-size:16px;color:#999;margin-left:10px}.modal-section .per-person-breakdown{margin-top:10px}.modal-section .price-row{display:flex;justify-content:space-between;margin-bottom:8px;font-size:14px}.option-modal-content .option-modal-footer{padding:15px 20px;border-top:1px solid #eee;display:flex;justify-content:flex-end}.modal-section .show-more-btn{background:none;border:none;color:var(--primary-color1);font-size:13px;padding:0;cursor:pointer;margin-bottom:10px;font-weight:500}.modal-section .show-more-btn:hover{text-decoration:underline}@media (max-width:767px){.modal-section .option-modal-content{width:95%;max-height:85vh}.modal-section .option-modal-body,.modal-section .option-modal-header{padding:15px}.option-modal-content .option-modal-footer{padding:12px 15px}}