.checkout-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:rgba(0,0,0,.9);z-index:2000;display:flex;justify-content:center;align-items:center;padding:20px}.checkout-modal{background-color:#1a1a2e;color:#fff;width:100%;max-width:1200px;height:90vh;border-radius:8px;overflow:hidden;font-family:Raleway,sans-serif;position:relative;display:flex;flex-direction:column;margin-top:10px;padding-top:20px}.checkout-header{border-bottom:1px solid hsla(0,0%,100%,.1);position:relative;padding:30px 120px 20px 40px}.checkout-title{font-size:36px;font-weight:300;margin:0 0 30px;letter-spacing:2px;text-transform:uppercase}.checkout-progress{display:flex;align-items:center;gap:20px;flex-wrap:nowrap;justify-content:space-between;padding:10px 0}.progress-step{gap:15px;font-weight:600}.progress-number,.progress-step{display:flex;align-items:center;font-size:16px;transition:all .3s ease}.progress-number{width:40px;height:40px;border-radius:50%;justify-content:center;font-weight:700;box-shadow:0 2px 8px rgba(0,0,0,.1)}.progress-text{display:flex;flex-direction:column;line-height:1.2;font-family:Raleway,sans-serif}.progress-text div:first-child{font-weight:700;font-size:14px;letter-spacing:.5px}.progress-text div:last-child{font-weight:500;font-size:12px;opacity:.8;margin-top:2px}.progress-step.active .progress-number{background:linear-gradient(135deg,#14b8a6,#0d9488);color:#fff;transform:scale(1.05);box-shadow:0 4px 12px rgba(20,184,166,.3)}.progress-step:not(.active) .progress-number{background-color:hsla(0,0%,100%,.1);border:2px solid hsla(0,0%,100%,.3);color:hsla(0,0%,100%,.6)}.progress-step.active .progress-text,.progress-step.active .progress-text div:first-child{color:#14b8a6}.progress-step.active .progress-text div:last-child{color:#0d9488}.progress-step:not(.active) .progress-text{color:hsla(0,0%,100%,.5)}.progress-step:not(.active) .progress-text div:first-child{color:hsla(0,0%,100%,.6)}.progress-step:not(.active) .progress-text div:last-child{color:hsla(0,0%,100%,.4)}.progress-line{flex:1;height:3px;background:linear-gradient(90deg,hsla(0,0%,100%,.2),hsla(0,0%,100%,.1));margin:0 20px;border-radius:2px}.checkout-content{flex:1;display:flex;overflow:hidden}.checkout-left{flex:1;padding:10px 40px 40px;overflow-y:auto;background-color:#2d3748}.checkout-right{width:400px;padding:40px;background-color:#1a1a2e;border-left:1px solid hsla(0,0%,100%,.1);overflow-y:auto}.required-text{color:#14b8a6;font-size:14px;margin-bottom:30px;text-align:right}.form-section-title{font-size:18px;font-weight:600;margin:0 0 25px;text-transform:uppercase;letter-spacing:1px;color:#fff}.form-row{display:flex;gap:20px;margin-bottom:20px}.form-group{flex:1;position:relative}.form-group.full-width{flex:none;width:100%}.form-input{width:100%;padding:15px 18px;background-color:#1e293b;border:1px solid hsla(0,0%,100%,.2);border-radius:4px;color:#fff;font-size:16px;font-family:Raleway,sans-serif;transition:border-color .3s}.form-input:focus{outline:none;border-color:#14b8a6}.form-input::placeholder{color:hsla(0,0%,100%,.5)}.phone-input-container{display:flex;align-items:center;background-color:#1e293b;border:1px solid hsla(0,0%,100%,.2);border-radius:4px;overflow:hidden}.phone-flag{padding:15px;border-right:1px solid hsla(0,0%,100%,.2);display:flex;align-items:center;gap:8px;background-color:#334155}.phone-input{flex:1;padding:15px 18px;background:transparent;border:none;color:#fff;font-size:16px;font-family:Raleway,sans-serif}.phone-input:focus{outline:none}.trip-details-section{margin-top:40px}.travel-date-title{font-size:18px;margin:30px 0 20px;color:#fff}.date-label,.travel-date-title{font-weight:600;text-transform:uppercase;letter-spacing:1px}.date-label{display:block;font-size:12px;color:hsla(0,0%,100%,.8);margin-bottom:8px}.date-input{width:100%;padding:15px 18px;background-color:#1e293b;border:1px solid hsla(0,0%,100%,.2);border-radius:4px;color:#fff;font-size:16px;font-family:Raleway,sans-serif;transition:border-color .3s}.date-input:focus{outline:none;border-color:#14b8a6}.date-input::-webkit-calendar-picker-indicator{filter:invert(1);cursor:pointer}.hotel-dropdown{position:relative}.hotel-select{width:100%;padding:15px 18px;border:1px solid hsla(0,0%,100%,.2);border-radius:4px;font-size:16px;font-family:Raleway,sans-serif;appearance:none;cursor:pointer}.hotel-select,.hotel-select option{background-color:#1e293b;color:#fff}.dropdown-arrow{right:18px;pointer-events:none}.dropdown-arrow,.info-icon{position:absolute;top:50%;transform:translateY(-50%);color:hsla(0,0%,100%,.5)}.info-icon{right:50px;cursor:help}.newsletter-checkbox{display:flex;align-items:flex-start;gap:12px;margin-top:25px;cursor:pointer}.checkbox-input{width:18px;height:18px;margin-top:2px;accent-color:#14b8a6}.checkbox-label{color:#14b8a6;font-size:15px;line-height:1.4;cursor:pointer}.checkout-actions{display:flex;gap:20px;margin-top:40px;padding-top:30px;border-top:1px solid hsla(0,0%,100%,.1)}.btn-back{background:transparent;color:#fff;border:1px solid hsla(0,0%,100%,.3);padding:15px 30px;border-radius:4px;font-weight:600;font-size:16px;cursor:pointer;text-transform:uppercase;letter-spacing:.5px;transition:background-color .3s}.btn-back:hover{background-color:hsla(0,0%,100%,.1)}.btn-payment{flex:1;background-color:#6b7280;color:#fff;border:none;padding:15px 30px;border-radius:4px;font-weight:600;font-size:16px;cursor:pointer;text-transform:uppercase;letter-spacing:.5px;transition:background-color .3s}.btn-payment:hover{background-color:#4b5563}.resort-presentation{padding:30px 0}.resort-presentation-title{font-size:28px;font-weight:700;margin:0 0 40px;color:#fff;text-transform:uppercase;letter-spacing:1.5px;text-align:center}.presentation-items{display:grid;grid-template-columns:repeat(2,1fr);gap:24px;max-width:800px;margin:0 auto}.presentation-item{display:flex;flex-direction:column;align-items:center;text-align:center;padding:32px 24px;background:linear-gradient(135deg,rgba(20,184,166,.1),rgba(8,145,178,.1));border-radius:16px;border:1px solid rgba(20,184,166,.2);backdrop-filter:blur(10px);transition:all .3s ease;position:relative;overflow:hidden}.presentation-item:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,#14b8a6,#0891b2);opacity:0;transition:opacity .3s ease}.presentation-item:hover{transform:translateY(-4px);border-color:rgba(20,184,166,.4);box-shadow:0 12px 32px rgba(20,184,166,.15)}.presentation-icon{width:64px;height:64px;background:linear-gradient(135deg,#14b8a6,#0891b2);border-radius:20px;display:flex;align-items:center;justify-content:center;color:#fff;margin-bottom:20px;box-shadow:0 8px 24px rgba(20,184,166,.3);transition:transform .3s ease}.presentation-item:hover .presentation-icon{transform:scale(1.1)}.presentation-content{flex:1}.presentation-item-title{font-size:20px;font-weight:700;margin:0 0 12px;color:#fff;line-height:1.3}.presentation-item-description{font-size:16px;color:hsla(0,0%,100%,.85);line-height:1.6;margin:0;font-weight:400}.checkout-tour-item{background-color:#2d3748;border-radius:8px;padding:25px;margin-bottom:20px}.tour-item-header{display:flex;gap:20px;margin-bottom:20px}.tour-item-image{width:80px;height:60px;border-radius:6px;object-fit:cover;flex-shrink:0}.tour-item-info{flex:1}.tour-item-title{font-size:16px;font-weight:600;margin:0 0 8px;text-transform:uppercase;letter-spacing:.5px;line-height:1.3}.tour-item-date{font-size:14px;color:hsla(0,0%,100%,.7);margin-bottom:15px}.tour-item-details{font-size:14px;color:hsla(0,0%,100%,.9);margin-bottom:8px}.tour-item-location{font-size:14px;color:hsla(0,0%,100%,.7);margin-bottom:15px}.tour-item-pricing{display:flex;align-items:center;gap:10px}.tour-current-price{font-size:18px;font-weight:600;color:#fff}.tour-original-price{font-size:14px;color:hsla(0,0%,100%,.5);text-decoration:line-through}.checkout-summary{background-color:#2d3748;border-radius:8px;padding:25px;margin-top:30px}.summary-title{font-size:18px;font-weight:600;margin:0 0 20px;text-transform:uppercase;letter-spacing:.5px}.summary-row{display:flex;justify-content:space-between;margin-bottom:12px;font-size:15px}.summary-savings{color:#cfb230}.summary-total{display:flex;justify-content:space-between;margin-top:20px;padding-top:20px;font-weight:600;font-size:18px;text-transform:uppercase;letter-spacing:.5px}.promo-section,.summary-total{border-top:1px solid hsla(0,0%,100%,.1)}.promo-section{margin-top:25px;padding-top:25px}.promo-text{display:flex;align-items:center;gap:10px;font-size:14px;color:hsla(0,0%,100%,.9);margin-bottom:15px}.promo-icon{width:16px;height:16px;color:#cfb230}.affirm-text{display:flex;align-items:center;gap:8px;font-size:14px;color:hsla(0,0%,100%,.7)}.affirm-logo{font-weight:700;color:#14b8a6}.checkout-close{position:absolute;top:30px;right:30px;background:none;border:none;color:hsla(0,0%,100%,.7);cursor:pointer;padding:8px;border-radius:4px;transition:background-color .3s;z-index:10}.checkout-close:hover{background-color:hsla(0,0%,100%,.1)}.booking-form-section{padding:20px 0}.booking-form-title{font-size:32px;font-weight:400;margin:0 0 15px;color:#fff;text-align:center;letter-spacing:1px}.booking-form-subtitle{font-size:16px;color:hsla(0,0%,100%,.7);text-align:center;margin:0 0 40px;line-height:1.4}.booking-form-content{display:flex;gap:40px;align-items:flex-start}.booking-calendar-section{flex:1;background-color:hsla(0,0%,100%,.05);border-radius:8px;padding:25px}.booking-calendar-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:25px}.booking-calendar-nav{background:none;border:none;color:#fff;font-size:24px;cursor:pointer;padding:8px 12px;border-radius:4px;transition:background-color .3s}.booking-calendar-nav:hover{background-color:hsla(0,0%,100%,.1)}.booking-calendar-month{font-size:18px;font-weight:600;color:#fff;margin:0;text-transform:capitalize}.booking-calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:2px;background-color:hsla(0,0%,100%,.1);border-radius:4px;padding:2px}.booking-calendar-day-header{text-align:center;padding:12px 8px;font-size:12px;color:hsla(0,0%,100%,.6);font-weight:600;text-transform:uppercase;background-color:hsla(0,0%,100%,.05)}.booking-calendar-day{aspect-ratio:1;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:14px;font-weight:500;background-color:#2d3748;color:#fff;transition:all .3s;border-radius:2px}.booking-calendar-day.empty{cursor:default;background-color:transparent}.booking-calendar-day:not(.empty):not(.disabled):hover{background-color:rgba(20,184,166,.3);transform:scale(1.05)}.booking-calendar-day.selected{background-color:#14b8a6;color:#fff;font-weight:600}.booking-calendar-day.disabled{color:hsla(0,0%,100%,.3);cursor:not-allowed;background-color:hsla(0,0%,100%,.05)}.booking-calendar-day.today{border:2px solid hsla(0,0%,100%,.4)}.booking-calendar-message{text-align:center;color:#fbbf24;font-size:14px;margin-top:20px;font-weight:500}.booking-time-section{width:280px;flex-shrink:0}.booking-time-slots{display:flex;flex-direction:column;gap:12px}.booking-time-slot{width:100%;padding:15px 20px;background-color:hsla(0,0%,100%,.05);border:1px solid hsla(0,0%,100%,.2);border-radius:6px;color:#fff;font-size:16px;font-weight:500;cursor:pointer;text-align:center;transition:all .3s}.booking-time-slot:hover{background-color:hsla(0,0%,100%,.1);border-color:hsla(0,0%,100%,.4)}.booking-time-slot.selected{background-color:#14b8a6;border-color:#14b8a6;color:#fff;font-weight:600}.btn-payment.disabled{cursor:not-allowed;opacity:.6}.btn-payment.disabled,.btn-payment.disabled:hover{background-color:#4b5563}.thank-you-section{padding:40px 0;text-align:center}.thank-you-content{max-width:600px;margin:0 auto}.thank-you-icon{color:#14b8a6;margin-bottom:30px;display:flex;justify-content:center}.thank-you-title{font-size:48px;font-weight:300;margin:0 0 20px;color:#fff;letter-spacing:2px;text-transform:uppercase}.thank-you-message{font-size:18px;color:hsla(0,0%,100%,.9);line-height:1.6;margin:0 0 40px}.confirmation-details{display:flex;flex-direction:column;gap:30px;text-align:left}.confirmation-item{background-color:hsla(0,0%,100%,.05);border-radius:8px;padding:25px;border-left:4px solid #14b8a6}.confirmation-item h3{font-size:18px;font-weight:600;margin:0 0 15px;color:#14b8a6;text-transform:uppercase;letter-spacing:1px}.confirmation-item p{font-size:16px;color:hsla(0,0%,100%,.9);margin:0 0 8px;line-height:1.5}.confirmation-item ul{list-style:none;padding:0;margin:0}.confirmation-item li{font-size:16px;color:hsla(0,0%,100%,.9);margin:0 0 8px;padding-left:20px;position:relative;line-height:1.5}.confirmation-item li:before{content:"✓";position:absolute;left:0;color:#14b8a6;font-weight:700}.btn-close-modal{background-color:#14b8a6;color:#fff;border:none;padding:15px 40px;border-radius:4px;font-weight:600;font-size:16px;cursor:pointer;text-transform:uppercase;letter-spacing:.5px;transition:background-color .3s;margin:0 auto;display:block}.btn-close-modal:hover{background-color:#0d9488}.thank-you-right-content{text-align:center;padding:40px 0}.success-icon-large{color:#14b8a6;margin-bottom:25px;display:flex;justify-content:center}.thank-you-right-title{font-size:24px;font-weight:600;margin:0 0 20px;color:#fff;text-transform:uppercase;letter-spacing:1px}.thank-you-right-message{font-size:16px;color:hsla(0,0%,100%,.9);line-height:1.6;margin:0 0 35px}.next-steps{background-color:hsla(0,0%,100%,.05);border-radius:8px;padding:25px;margin-bottom:30px;text-align:left}.next-steps h4{font-size:16px;font-weight:600;margin:0 0 15px;color:#14b8a6;text-transform:uppercase;letter-spacing:.5px}.next-steps ul{list-style:none;padding:0;margin:0}.next-steps li{font-size:14px;color:hsla(0,0%,100%,.9);margin:0 0 10px;padding-left:20px;position:relative;line-height:1.4}.next-steps li:before{content:"→";position:absolute;left:0;color:#14b8a6;font-weight:700}.contact-support{background-color:hsla(0,0%,100%,.05);border-radius:8px;padding:20px;text-align:left}.contact-support p{font-size:14px;color:hsla(0,0%,100%,.9);margin:0 0 8px;line-height:1.4}.contact-support p:first-child{font-weight:600;color:#fff;margin-bottom:12px}.contact-support strong{color:#14b8a6}@media (max-width:768px){.thank-you-title{font-size:32px;margin-bottom:15px}.thank-you-message{font-size:16px;margin-bottom:30px}.confirmation-card:last-child{margin-bottom:25px!important}.confirmation-details{gap:20px}.confirmation-item{padding:20px}.confirmation-item h3{font-size:16px;margin-bottom:12px}.confirmation-item li,.confirmation-item p{font-size:13px}.thank-you-right-title{font-size:20px;margin-bottom:15px}.thank-you-right-message{font-size:14px;margin-bottom:25px}.contact-support,.next-steps{padding:20px}.next-steps h4{font-size:14px}.contact-support p,.next-steps li{font-size:13px}}@media (max-width:430px){.thank-you-title{font-size:24px}.thank-you-message{font-size:14px}.confirmation-item{padding:15px}.confirmation-item h3{font-size:14px}.confirmation-item li,.confirmation-item p{font-size:13px}.thank-you-right-title{font-size:18px}.contact-support,.next-steps{padding:15px}}@media (max-width:1024px){.checkout-modal{width:95%;height:95vh;max-width:none}.checkout-header{padding:20px 80px 15px 30px}.checkout-title{font-size:28px;margin-bottom:20px}.checkout-progress{gap:20px}.progress-step{gap:12px;font-size:15px}.progress-number{width:36px;height:36px;font-size:14px}.progress-text div:first-child{font-size:13px}.progress-text div:last-child{font-size:11px}.checkout-content{flex-direction:column;overflow-y:auto}.checkout-left,.checkout-right{padding:30px;overflow-y:visible}.checkout-right{width:100%;border-left:none;border-top:1px solid hsla(0,0%,100%,.1)}.presentation-item{padding:20px;gap:15px}.presentation-icon{width:40px;height:40px}.presentation-item-title{font-size:16px}.presentation-item-description{font-size:14px}}@media (max-width:768px){.checkout-modal{width:100%;height:100vh;border-radius:0;margin-top:30px}.checkout-header{padding:15px 60px 10px 20px;flex-shrink:0}.checkout-close{top:15px;right:15px;padding:6px}.checkout-title{font-size:24px;margin-bottom:15px;letter-spacing:1px}.checkout-progress{gap:0;flex-wrap:nowrap;justify-content:space-evenly;padding:10px 15px;overflow-x:auto;width:100%;box-sizing:border-box}.progress-step{gap:8px;font-size:14px;flex-shrink:0;justify-content:center;align-items:center;flex:1;max-width:33.333%}.progress-number{width:32px;height:32px;font-size:13px}.progress-text{text-align:left}.progress-text div:first-child{font-size:12px;letter-spacing:.3px}.progress-text div:last-child{font-size:10px;margin-top:1px}.progress-line{display:none}.checkout-content{flex:1;overflow-y:auto;-webkit-overflow-scrolling:touch}.checkout-left,.checkout-right{padding:20px;overflow-y:visible}.required-text{font-size:12px;margin-bottom:20px}.form-section-title{font-size:16px;margin-bottom:20px}.form-row{flex-direction:column;gap:15px}.form-input,.hotel-select,.phone-input{padding:12px 15px;font-size:14px}.phone-flag{padding:12px}.checkout-actions{flex-direction:column;gap:15px;margin-top:30px;padding-top:20px}.btn-back,.btn-payment{padding:12px 20px;font-size:14px}.resort-presentation-title{font-size:20px;margin-bottom:30px}.presentation-items{gap:20px}.presentation-item{padding:15px;gap:12px}.presentation-icon{width:36px;height:36px}.presentation-item-title{font-size:14px}.presentation-item-description{font-size:13px}.tour-count-header{margin-bottom:20px}.tour-count{font-size:16px}.checkout-tour-item{padding:20px;margin-bottom:15px}.tour-item-header{gap:15px;margin-bottom:15px}.tour-item-image{width:70px;height:50px}.tour-item-title{font-size:14px;line-height:1.2}.tour-item-date,.tour-item-details,.tour-item-location{font-size:12px}.tour-current-price{font-size:16px}.tour-original-price{font-size:12px}.checkout-summary{padding:20px;margin-top:20px}.summary-title{font-size:16px;margin-bottom:15px}.summary-row{font-size:14px;margin-bottom:10px}.summary-total{font-size:16px;margin-top:15px;padding-top:15px}.promo-section{margin-top:20px;padding-top:20px}.promo-text{margin-bottom:12px}.affirm-text,.promo-text{font-size:12px}.checkbox-label{font-size:13px}.booking-form-title{font-size:24px;margin-bottom:12px}.booking-form-subtitle{font-size:14px;margin-bottom:30px}.booking-form-content{flex-direction:column;gap:30px}.booking-calendar-section{padding:20px}.booking-calendar-header{margin-bottom:20px}.booking-calendar-month{font-size:16px}.booking-calendar-nav{font-size:20px;padding:6px 10px}.booking-calendar-day-header{padding:10px 6px;font-size:11px}.booking-calendar-day{font-size:13px}.booking-time-section{width:100%}}@media (max-width:430px){.checkout-header{padding:12px 55px 8px 15px}.checkout-close{top:12px;right:12px;padding:4px}.checkout-title{font-size:20px;margin-bottom:12px}.checkout-left,.checkout-right{padding:15px}.form-section-title{font-size:14px;margin-bottom:15px}.form-input,.hotel-select,.phone-input{padding:10px 12px;font-size:13px}.phone-flag{padding:10px}.resort-presentation-title{font-size:18px;margin-bottom:25px}.presentation-item{padding:12px;gap:10px}.presentation-icon{width:32px;height:32px}.presentation-item-title{font-size:13px}.presentation-item-description{font-size:12px}.checkout-tour-item{padding:15px}.tour-item-image{width:60px;height:45px}.tour-item-title{font-size:13px}.checkout-summary{padding:15px}.booking-form-title{font-size:20px}.booking-form-subtitle{font-size:13px}.booking-calendar-section{padding:15px}.booking-calendar-month{font-size:14px}.booking-calendar-nav{font-size:18px;padding:4px 8px}.booking-calendar-day-header{padding:8px 4px;font-size:10px}.booking-calendar-day{font-size:12px}.booking-time-slot{padding:10px 12px;font-size:13px}}@media (max-width:390px){.checkout-title{font-size:18px}.progress-step{font-size:12px}.progress-number{width:20px;height:20px;font-size:10px}.form-input,.hotel-select,.phone-input{padding:8px 10px;font-size:12px}.phone-flag{padding:8px}.resort-presentation-title{font-size:16px}.presentation-item-title{font-size:12px}.presentation-item-description{font-size:11px}.tour-item-title{font-size:12px}.tour-item-date,.tour-item-details,.tour-item-location{font-size:11px}.tour-current-price{font-size:14px}.summary-row{font-size:12px}.summary-total{font-size:14px}}@media (max-width:375px){.checkout-header{padding:10px 50px 6px 12px}.checkout-close{top:10px;right:10px}.checkout-title{font-size:16px;margin-bottom:10px}.checkout-left,.checkout-right{padding:12px}.form-section-title{font-size:13px}.resort-presentation-title{font-size:15px;margin-bottom:20px}.presentation-items{gap:15px}.presentation-item{padding:10px;gap:8px}.presentation-icon{width:28px;height:28px}.checkout-tour-item{padding:12px}.tour-item-image{width:50px;height:40px}.checkout-summary{padding:12px}}@media (max-width:320px){.checkout-header{padding:8px 45px 5px 10px}.checkout-close{top:8px;right:8px}.checkout-title{font-size:14px;margin-bottom:8px}.progress-step{font-size:10px}.progress-number{width:18px;height:18px;font-size:9px}.checkout-left,.checkout-right{padding:10px}.form-section-title{font-size:12px;margin-bottom:12px}.form-input,.hotel-select,.phone-input{padding:6px 8px;font-size:11px}.phone-flag{padding:6px}.resort-presentation-title{font-size:13px;margin-bottom:15px}.presentation-items{gap:12px}.presentation-item{padding:8px;gap:6px}.presentation-icon{width:24px;height:24px}.presentation-item-title{font-size:11px}.presentation-item-description{font-size:10px}.checkout-tour-item{padding:10px}.tour-item-image{width:45px;height:35px}}.checkout-thank-you-combined{flex:1;overflow-y:auto;-webkit-overflow-scrolling:touch;background:linear-gradient(135deg,#1a202c,#2d3748 50%,#1a202c);min-height:100%;background-attachment:fixed;position:relative}.checkout-thank-you-combined:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background-image:#242b3b;pointer-events:none}.checkout-thank-you-combined .thank-you-section{padding:60px 40px;text-align:center;max-width:1200px;margin:0 auto;position:relative;z-index:1}.celebration-icon{position:relative;display:inline-block;margin-bottom:30px}.success-checkmark{animation:checkmarkBounce .6s ease-out}.celebration-particles{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);pointer-events:none}.particle{position:absolute;width:8px;height:8px;background:linear-gradient(45deg,#14b8a6,#3b82f6);border-radius:50%;animation:particleFloat 2s ease-out infinite}.particle:first-child{animation-delay:0s;transform:translate(-30px,-30px)}.particle:nth-child(2){animation-delay:.2s;transform:translate(30px,-30px)}.particle:nth-child(3){animation-delay:.4s;transform:translate(-30px,30px)}.particle:nth-child(4){animation-delay:.6s;transform:translate(30px,30px)}@keyframes checkmarkBounce{0%{transform:scale(0)}50%{transform:scale(1.2)}to{transform:scale(1)}}@keyframes particleFloat{0%{opacity:1;transform:translate(var(--x,0),var(--y,0)) scale(1)}to{opacity:0;transform:translate(calc(var(--x, 0) * 2),calc(var(--y, 0) * 2)) scale(0)}}.confirmation-number{display:flex;flex-direction:column;align-items:center;margin-bottom:20px;padding:15px 25px;background:rgba(20,184,166,.1);border:1px solid rgba(20,184,166,.3);border-radius:8px;display:inline-block}.confirmation-label{font-size:12px;color:hsla(0,0%,100%,.7);text-transform:uppercase;letter-spacing:1px;margin-bottom:5px}.confirmation-id{font-size:18px;font-weight:700;color:#14b8a6;font-family:Courier New,monospace;letter-spacing:2px}.premium-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:25px;margin-bottom:50px}.confirmation-card{background:hsla(0,0%,100%,.08);backdrop-filter:blur(10px);border-radius:16px;padding:30px;border:1px solid hsla(0,0%,100%,.1);text-align:left;transition:all .3s ease;position:relative;overflow:hidden}.confirmation-card:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,#14b8a6,#3b82f6)}.confirmation-card:hover{transform:translateY(-5px);box-shadow:0 20px 40px rgba(0,0,0,.3);border-color:rgba(20,184,166,.3)}.confirmation-card-header{display:flex;align-items:center;gap:15px;margin-bottom:25px}.confirmation-card-icon{color:#14b8a6;padding:10px;background:rgba(20,184,166,.1);border-radius:10px}.confirmation-card h3{font-size:18px;font-weight:600;margin:0;color:#fff;text-transform:uppercase;letter-spacing:.5px}.detail-item{display:flex;justify-content:space-between;align-items:center;padding:12px 0;border-bottom:1px solid hsla(0,0%,100%,.1)}.detail-item:last-child{border-bottom:none}.detail-label{font-size:14px;color:hsla(0,0%,100%,.7);font-weight:500}.detail-value{font-size:16px;color:#fff;font-weight:600;text-align:right}.status-paid,.status-reserved{display:flex;align-items:center;gap:8px}.status-indicator{width:8px;height:8px;border-radius:50%;animation:pulse 2s infinite}.status-indicator.paid{background:#10b981}.status-indicator.reserved{background:#f59e0b}.amount-due{color:#f59e0b!important;font-weight:700}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.contact-notification{display:flex;flex-direction:column;gap:15px}.notification-item{display:flex;align-items:center;gap:12px;padding:12px;background:hsla(0,0%,100%,.05);border-radius:8px}.notification-icon{font-size:20px}.next-steps-timeline{display:flex;flex-direction:column;gap:15px}.timeline-step{display:flex;align-items:center;gap:15px;padding:12px;border-radius:8px;transition:all .3s ease}.timeline-step.completed{background:rgba(16,185,129,.1)}.timeline-step .step-number{width:28px;height:28px;background:linear-gradient(135deg,#14b8a6,#0d9488);color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;flex-shrink:0}.timeline-step.completed .step-number{background:linear-gradient(135deg,#10b981,#059669)}.step-text{font-size:15px;color:hsla(0,0%,100%,.9);line-height:1.4}.premium-support{background:hsla(0,0%,100%,.05);backdrop-filter:blur(10px);border-radius:16px;padding:35px;margin-bottom:40px;border:1px solid hsla(0,0%,100%,.1)}.support-header{margin-bottom:25px}.support-header h3{font-size:20px;font-weight:600;margin:0 0 8px;color:#14b8a6;text-transform:uppercase;letter-spacing:.5px}.support-header p{font-size:16px;color:hsla(0,0%,100%,.8);margin:0}.premium-contact{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px}.premium-contact .contact-item{display:flex;justify-content:center;align-items:center;gap:15px;padding:20px;background:hsla(0,0%,100%,.05);border-radius:12px;transition:all .3s ease}.premium-contact .contact-item:hover{background:hsla(0,0%,100%,.1);transform:translateY(-2px)}.contact-icon{font-size:24px;width:40px;text-align:center}.contact-details{display:flex;flex-direction:column;align-items:center;text-align:center;gap:4px}.contact-label{font-size:24px;width:40px;text-align:center}.contact-value{font-size:16px;color:#fff;font-weight:600}.premium-actions{display:flex;gap:20px;justify-content:center;align-items:center}.btn-secondary{background:hsla(0,0%,100%,.1);color:#fff;border:1px solid hsla(0,0%,100%,.2);padding:15px 30px;border-radius:8px;font-weight:600;font-size:16px;cursor:pointer;transition:all .3s ease;text-transform:uppercase;letter-spacing:.5px}.btn-secondary:hover{background:hsla(0,0%,100%,.2);border-color:hsla(0,0%,100%,.4);transform:translateY(-2px)}.checkout-thank-you-combined .btn-close-modal{background:linear-gradient(135deg,#14b8a6,#0d9488);color:#fff;border:none;padding:18px 40px;border-radius:8px;font-weight:600;font-size:16px;cursor:pointer;text-transform:uppercase;letter-spacing:.5px;transition:all .3s ease;box-shadow:0 4px 15px rgba(20,184,166,.3)}.checkout-thank-you-combined .btn-close-modal:hover{background:linear-gradient(135deg,#0d9488,#0f766e);transform:translateY(-2px);box-shadow:0 8px 25px rgba(20,184,166,.4)}@media (max-width:768px){.checkout-thank-you-combined .thank-you-section{padding:40px 20px}.premium-grid{grid-template-columns:1fr;gap:20px;margin:0 auto;max-width:100%}.confirmation-card{padding:20px;margin:0 10px;border-radius:12px}.confirmation-card-header{gap:12px;margin-bottom:20px}.confirmation-card h3{font-size:16px}.detail-item{padding:10px 0;font-size:14px}}@media (max-width:430px){.checkout-thank-you-combined .thank-you-section{padding:30px 15px}.confirmation-card{padding:18px;margin:0 5px}.confirmation-card h3{font-size:15px}.detail-item{font-size:13px}}@media (max-width:375px){.checkout-thank-you-combined .thank-you-section{padding:25px 12px}.confirmation-card{padding:16px;margin:0 3px}}@media (max-width:768px){.travel-date-section{margin:20px 0;padding:0 5px}.travel-date-grid{gap:15px}.date-input{padding:12px 15px;font-size:14px;min-width:0;box-sizing:border-box}.date-input::-webkit-calendar-picker-indicator{width:20px;height:20px;margin-left:8px}}@media (max-width:430px){.checkout-header{padding:12px 55px 8px 15px}.checkout-close{top:12px;right:12px;padding:4px}.checkout-title{font-size:20px;margin-bottom:12px}.checkout-left,.checkout-right{padding:15px}.form-section-title{font-size:14px;margin-bottom:15px}.form-input,.hotel-select,.phone-input{padding:10px 12px;font-size:13px}.phone-flag{padding:10px}.resort-presentation-title{font-size:18px;margin-bottom:25px}.travel-date-section{margin:15px 0;padding:0 2px}.travel-date-title{font-size:16px;margin:20px 0 15px}.date-label{font-size:11px;margin-bottom:6px}.date-input{padding:10px 12px;font-size:13px;width:100%;box-sizing:border-box}.date-input::-webkit-calendar-picker-indicator{width:18px;height:18px;margin-left:6px;flex-shrink:0}}.cart-timer{background-color:hsla(0,0%,100%,.1);padding:20px;text-align:center;font-size:14px;font-weight:500;display:flex;align-items:center;justify-content:center;margin-bottom:20px;border-bottom:1px solid hsla(0,0%,100%,.1)}.cart-dropdown-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:rgba(0,0,0,.7);z-index:1000;display:flex;justify-content:flex-end;align-items:flex-start;padding:20px;max-width:100vw;overflow-x:hidden;box-sizing:border-box}.cart-dropdown{background-color:#2d3748;color:#fff;width:100%;max-width:400px;border-radius:8px;overflow:hidden;font-family:Raleway,sans-serif;position:relative;max-height:90vh;overflow-y:auto;margin-top:80px;box-sizing:border-box}.cart-dropdown-close{position:absolute;top:15px;right:15px;background:none;border:none;color:#fff;cursor:pointer;padding:0;font-size:20px;line-height:1;z-index:10}.cart-items{padding:0 20px}.cart-item{display:flex;gap:15px;padding:15px 0;border-bottom:1px solid hsla(0,0%,100%,.1);position:relative}.cart-item:last-child{border-bottom:none}.cart-item-image{width:80px;height:60px;border-radius:4px;object-fit:cover;flex-shrink:0}.cart-item-details{flex-grow:1}.cart-item-title{font-size:16px;font-weight:600;margin:0 0 8px;line-height:1.2;text-transform:uppercase;letter-spacing:.5px;padding-right:30px}.cart-item-pricing{font-size:14px;color:hsla(0,0%,100%,.9);margin-bottom:4px}.cart-item-date{font-size:13px;color:hsla(0,0%,100%,.7);margin-bottom:8px}.cart-item-total{display:flex;align-items:center;gap:10px}.cart-item-discount{background-color:#cfb230;color:#1a1a2e;padding:2px 6px;border-radius:3px;font-size:12px;font-weight:600}.cart-item-price{font-size:16px;font-weight:600;color:#fff}.cart-item-remove{position:absolute;top:15px;right:0;background:none;border:none;color:hsla(0,0%,100%,.6);cursor:pointer;padding:4px}.cart-item-remove:hover{color:#fff}.cart-summary{padding:20px;border-top:1px solid hsla(0,0%,100%,.1)}.cart-summary-title{font-size:18px;font-weight:600;margin:0 0 15px;text-transform:uppercase;letter-spacing:.5px}.cart-summary-item{display:flex;justify-content:space-between;margin-bottom:10px;font-size:15px}.cart-summary-savings{color:#cfb230}.cart-summary-total{display:flex;justify-content:space-between;margin-top:15px;padding-top:15px;border-top:1px solid hsla(0,0%,100%,.1);font-size:18px}.cart-go-to-cart,.cart-summary-total{font-weight:600;text-transform:uppercase;letter-spacing:.5px}.cart-go-to-cart{width:100%;padding:15px;background-color:#14b8a6;color:#fff;border:none;border-radius:0;font-size:16px;cursor:pointer;margin-top:20px}.cart-go-to-cart:hover{background-color:#0d9488}.cart-empty{padding:40px 20px;text-align:center;color:hsla(0,0%,100%,.7)}.cart-empty-icon{width:48px;height:48px;margin:0 auto 15px;opacity:.5}.cart-empty-text{font-size:16px;margin-bottom:10px}.cart-empty-subtext{font-size:14px;opacity:.7}@media (max-width:768px){.cart-item-title{font-size:14px;line-height:1.2;padding-right:0}}