.transport-section{padding:20px;background:#f9f9f9;border-radius:8px;margin-bottom:20px}.transport-loading{padding:20px;text-align:center}.transport-checkbox-label{display:flex;align-items:center;cursor:pointer;font-size:16px;font-weight:500}.transport-checkbox{margin-right:10px;width:20px;height:20px}.transport-details{margin-top:15px;padding:15px;background:#fff;border-radius:4px;border:1px solid #ddd}.transport-price{font-size:18px;font-weight:bold;margin-bottom:10px}.transport-dates{font-size:14px;color:#666}.accordion-summary{border:1px solid #ddd;border-radius:4px;margin-bottom:20px;overflow:hidden}.accordion-header{background:#f5f5f5;padding:15px;cursor:pointer;display:flex;justify-content:space-between;align-items:center;user-select:none;transition:background-color .2s}.accordion-header:hover{background:#e8e8e8}.accordion-header h4{margin:20px 0;font-size:18px;color:#374151;font-weight:600}.accordion-toggle{font-size:14px;font-weight:600;color:#666;transition:color .2s}.accordion-header:hover .accordion-toggle{color:#333}.accordion-content{max-height:0;overflow:hidden;transition:max-height .3s ease-out;padding:0 15px}.accordion-content.active{max-height:500px;padding:15px;transition:max-height .3s ease-in}.payment-form{padding:10px;background:#fff;border-radius:8px;box-shadow:0 2px 10px rgba(0,0,0,.1)}.payment-summary{background:#f8f9fa;padding:20px;border-radius:6px;margin-bottom:30px;border:1px solid #e9ecef}.payment-summary h4{margin:0 0 15px 0;color:#495057}.card-details{margin-bottom:30px}.card-details .form-row{display:flex;gap:15px}.card-details .form-row .form-group{flex:1}.card-details input,.card-details select{width:100%;padding:12px;border:1px solid #ced4da;border-radius:4px;font-size:16px}.card-details input:focus,.card-details select:focus{border-color:#80bdff;outline:0;box-shadow:0 0 0 .2rem rgba(0,123,255,.25)}#card-number{letter-spacing:2px;font-family:monospace}#cvv{text-align:center;font-family:monospace}.form-actions{display:flex;justify-content:space-between;gap:15px}.form-actions .btn{padding:12px 30px;border-radius:4px;font-size:16px;cursor:pointer;transition:all .3s ease}.btn-secondary{background:#6c757d;color:#fff;border:none}.btn-secondary:hover{background:#545b62}.btn-primary{background:#007bff;color:#fff;border:none}.btn-primary:hover{background:#0056b3}.btn:disabled{opacity:.6;cursor:not-allowed}.spinner{display:inline-block;width:16px;height:16px;border:2px solid #fff;border-radius:50%;border-top-color:transparent;animation:spin 1s ease-in-out infinite}@keyframes spin {
  to {
    transform: rotate(360deg);
  }
}.guest-counters.guest_section_mobile{display:none!important}.form-group.children-section{display:flex;flex-direction:row;justify-content:space-between}.guest-counters{display:flex!important;justify-content:space-evenly;align-items:center}.quantity-control{display:flex;align-items:center;border:1px solid #ddd;border-radius:4px;overflow:hidden;background:#fff;width:fit-content}.quantity-btn{background:#f8f9fa;border:none;width:36px;height:36px;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:18px;font-weight:bold;color:#666;transition:all .2s ease}.quantity-btn:hover:not(:disabled) {background:#e9ecef;color:#333}.quantity-btn:disabled{opacity:.5;cursor:not-allowed}.quantity-input{border:none;width:50px;height:36px;text-align:center;font-size:16px;font-weight:500;background:#fff;outline:none}.quantity-input::-webkit-outer-spin-button,.quantity-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.quantity-input[type="number"]{-moz-appearance:textfield}.booking-calendar-container{max-width:100%;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif}.calendar-header{display:flex;justify-content:space-between;align-items:center;padding:20px;background:#f8fafc;border-radius:8px 8px 0 0;border:1px solid #e2e8f0}.calendar-nav-btn{background:#3b82f6;color:#fff;border:none;width:40px;height:40px;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:18px;transition:background-color .2s}.calendar-nav-btn:hover{background:#2563eb}.calendar-nav-btn:disabled{background:#9ca3af;cursor:not-allowed}.calendar-month-year{font-size:18px;font-weight:600;color:#1f2937}.calendar-grid{border:1px solid #e2e8f0;border-top:none}.calendar-weekdays{display:grid;grid-template-columns:repeat(7,1fr);background:#dce5ef;border-bottom:1px solid #e2e8f0}.calendar-weekday{padding:12px;text-align:center;font-weight:600;font-size:14px;color:#64748b;border-right:1px solid #e2e8f0}.calendar-weekday:last-child{border-right:none}.calendar-days{display:grid;grid-template-columns:repeat(7,1fr)}.calendar-day{min-height:50px;padding:8px;border-right:1px solid #e2e8f0;border-bottom:1px solid #e2e8f0;background:#fff;cursor:pointer;position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;transition:all .2s}.calendar-day:last-child{border-right:none}.calendar-day:hover:not(.disabled):not(.other-month) {background:#f0f9ff}.calendar-day.other-month{color:#cbd5e1;background:#f8fafc;cursor:not-allowed}.calendar-day.disabled{color:#cbd5e1;cursor:not-allowed;background:#f1f5f9}.calendar-day.available{background:#dcfce7;color:#166534}.calendar-day.available:hover{background:#bbf7d0}.calendar-day.selected{background:#3b82f6;color:#fff}.calendar-day.selected:hover{background:#2563eb}.calendar-day.selected.selected-checkout{background:#10b981!important;color:#fff}.calendar-day.selected.selected-checkout:hover{background:#059669!important}.calendar-day.in-range{background:#dbeafe;color:#1e40af}.calendar-day.unavailable{background:#fef2f2;color:#dc2626}.day-number{font-weight:600;margin-bottom:2px}.availability-indicator{width:6px;height:6px;border-radius:50%;margin-top:2px}.available .availability-indicator{background:#10b981}.unavailable .availability-indicator{background:#ef4444}.peach-payment-container{margin:20px 0;position:relative}.peach{min-height:650px!important;min-width:0!important}.peach .scroll-util{height:1100px!important}#peach-checkout-widget{border:1px solid #ddd;border-radius:8px;padding:0!important;background:#f9f9f9}.payment-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:50px;text-align:center}.payment-loading .spinner{width:40px;height:40px;border:4px solid #f3f3f3;border-top:4px solid #3498db;border-radius:50%;animation:spin 2s linear infinite;margin-bottom:15px}@keyframes spin {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}.payment-error{background:#fee;border:1px solid #fcc;border-radius:4px;padding:20px;text-align:center}.error-message{color:#c33;margin-bottom:15px;font-weight:500}.wpwl-container{font-family:inherit!important}.wpwl-form{max-width:none!important}.wpwl-button{background:#3b82f6!important;border:none!important;padding:12px 30px!important;border-radius:4px!important;font-size:16px!important;font-weight:600!important;text-transform:none!important;letter-spacing:normal!important}.wpwl-button:hover{background:#2563eb!important}.wpwl-control{border:1px solid #ddd!important;border-radius:4px!important;padding:10px 12px!important;font-size:14px!important;font-family:inherit!important}.wpwl-control:focus{border-color:#3b82f6!important;box-shadow:0 0 0 2px rgba(59,130,246,.1)!important}.wpwl-label{font-weight:500!important;color:#374151!important;margin-bottom:5px!important;font-family:inherit!important}.wpwl-group{margin-bottom:20px!important}@media (max-width:768px){.card-details .form-row{flex-direction:column;gap:0}.form-actions{flex-direction:column}.form-actions .btn{width:100%}}.booking-engine-form{max-width:100%;margin:0 auto;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif}.booking-form-container{background:#fff;border-radius:8px;box-shadow:0 4px 6px rgba(0,0,0,.1);overflow:hidden}.selected-property-info{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:20px;margin-bottom:20px;text-align:center}.selected-property-info h4{margin:0 0 10px 0;color:#1f2937;font-size:20px;font-weight:600}.selected-property-info p{margin:0;color:#6b7280;font-style:italic}.service-toggle-label{display:flex;align-items:center;gap:15px;cursor:pointer;padding:15px;border:1px solid #ddd;border-radius:8px;transition:all .3s ease}.service-toggle-label:hover{border-color:#007cba;background-color:#f8f9fa}.service-checkbox{display:none}.service-toggle-switch{position:relative;width:50px;height:26px;background-color:#ccc;border-radius:26px;transition:all .3s ease}.service-toggle-switch::after{content:"";position:absolute;width:20px;height:20px;border-radius:50%;background-color:#fff;top:3px;left:3px;transition:all .3s ease;box-shadow:0 2px 4px rgba(0,0,0,.2)}.service-checkbox:checked+.service-toggle-switch{background-color:#007cba}.service-checkbox:checked+.service-toggle-switch::after{transform:translateX(24px)}.service-details{flex:1}.service-name{margin:0 0 5px 0;font-size:16px;font-weight:600}.service-pricing{font-size:18px;font-weight:bold;color:#007cba}.booking-search-form,.booking-search-results,.booking-services-selection,.booking-details-form,.booking-confirmation{padding:30px;border-bottom:1px solid #e5e7eb}.booking-search-form:last-child,.booking-search-results:last-child,.booking-details-form:last-child,.booking-confirmation:last-child{border-bottom:none}.booking-search-form h3,.booking-search-results h3,.booking-details-form h3,.booking-confirmation h3{margin-top:0;margin-bottom:20px;color:#1f2937;font-size:24px;font-weight:600}.booking-details-form h4,.booking-confirmation h4{margin-top:20px;margin-bottom:15px;color:#374151;font-size:18px;font-weight:600}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:20px}.form-group{display:flex;flex-direction:column}.form-group.full-width{grid-column: 1 / -1}.form-group label{margin-bottom:5px;font-weight:500;color:#374151;font-size:14px}.form-control,select{padding:10px 12px;border:none;border-bottom:1px solid #d1d5db;font-size:16px;transition:border-color .15s ease-in-out , box-shadow .15s ease-in-out}select{width:100%}.form-control:focus,select:focus{outline:none;border-color:#3b82f6}textarea.form-control{resize:vertical;min-height:80px}.required{color:#dc2626}.btn{display:inline-flex;align-items:center;justify-content:center;padding:12px 24px;border:none;border-radius:6px;font-size:14px;font-weight:600;text-decoration:none;cursor:pointer;transition:all .15s ease-in-out;min-height:44px}.btn-primary{background-color:#3b82f6;color:#fff}.btn-primary:hover{background-color:#2563eb;color:#fff}.btn-secondary{background-color:#6b7280;color:#fff}.btn-secondary:hover{background-color:#4b5563;color:#fff}.btn:disabled{opacity:.6;cursor:not-allowed}.btn-spinner{display:flex;align-items:center;gap:8px}.spinner{width:16px;height:16px;border:2px solid transparent;border-top:2px solid currentColor;border-radius:50%;animation:spin 1s linear infinite}.spinner-large{width:40px;height:40px;border:4px solid #e5e7eb;border-top:4px solid #3b82f6;border-radius:50%;animation:spin 1s linear infinite}.form-actions{display:flex;justify-content:center;gap:15px;margin-top:30px;flex-wrap:wrap}.booking-details-form .form-actions{justify-content:space-between}.no-results{text-align:center;padding:40px;color:#6b7280}.room-results{display:grid;gap:20px}.room-option,.service-option{border:1px solid #e5e7eb;border-radius:8px;padding:20px;display:flex;justify-content:space-between;align-items:center;transition:border-color .15s ease-in-out , box-shadow .15s ease-in-out}.room-option:hover,.service-option:hover{border-color:#3b82f6;box-shadow:0 4px 6px rgba(0,0,0,.05)}.room-info{flex:1}.room-info h4{margin:0 0 10px 0;color:#1f2937;font-size:18px;font-weight:600}.room-info p{margin:5px 0;color:#6b7280;font-size:14px}.room-pricing{text-align:right;display:flex;flex-direction:column;align-items:flex-start;gap:10px}.price-display{display:flex;align-items:baseline;gap:4px}.price-display .currency{font-size:16px;color:#6b7280}.price-display .amount{font-size:24px;font-weight:600;color:#1f2937}.price-note{margin:0;font-size:12px;color:#9ca3af}.booking-summary{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:20px;margin-bottom:30px}.booking-summary h4{margin-top:0}.summary-item{display:flex;justify-content:space-between;margin-bottom:8px;padding-bottom:8px;border-bottom:1px solid #e2e8f0}.summary-item:last-child{margin-bottom:0;border-bottom:none}.summary-total{display:flex;justify-content:space-between;font-size:18px;font-weight:600;color:#1f2937;margin-top:15px;padding-top:15px;border-top:2px solid #e2e8f0}.guest-information{margin-bottom:30px}.terms-conditions{margin-bottom:30px}.checkbox-label{display:flex;align-items:flex-start;gap:10px;cursor:pointer;font-size:14px;line-height:1.5}.checkbox-label input[type="checkbox"]{margin:0}.checkbox-label a{color:#3b82f6;text-decoration:underline}.checkbox-label a:hover{color:#2563eb}.booking-confirmation{text-align:center}.confirmation-content{max-width:500px;margin:0 auto}.confirmation-icon{font-size:64px;color:#10b981;margin-bottom:20px}.confirmation-icon .dashicons{width:64px;height:64px}.booking-confirmation h3{color:#059669;margin-bottom:30px}.confirmation-item{display:flex;justify-content:space-between;margin-bottom:10px;padding:10px 0;border-bottom:1px solid #e5e7eb}.confirmation-item:last-child{border-bottom:none}.confirmation-actions{margin-top:30px}.booking-loading-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,.5);z-index:9999;display:flex;align-items:center;justify-content:center}.loading-content{background:#fff;padding:40px;border-radius:8px;text-align:center;box-shadow:0 25px 50px -12px rgba(0,0,0,.25)}.loading-content p{margin:20px 0 0 0;color:#6b7280}.booking-modal{position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,.5);z-index:10000;display:flex;align-items:center;justify-content:center}.booking-modal-content{background:#fff;border-radius:8px;box-shadow:0 25px 50px -12px rgba(0,0,0,.25);max-width:600px;width:90%;max-height:90vh;overflow-y:auto}.booking-modal-header{padding:20px 30px;border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;align-items:center}.booking-modal-header h2{margin:0;font-size:20px;color:#1f2937}.booking-modal-close{cursor:pointer;font-size:24px;color:#6b7280;background:none;border:none;padding:0;width:30px;height:30px;display:flex;align-items:center;justify-content:center}.booking-modal-close:hover{color:#1f2937;background:#f3f4f6;border-radius:4px}.booking-modal-body{padding:30px}.booking-modal-footer{padding:20px 30px;border-top:1px solid #e5e7eb;text-align:right}.terms-content{max-height:400px;overflow-y:auto;line-height:1.6}.terms-content h4{color:#1f2937;margin-top:20px;margin-bottom:10px}.terms-content p{margin-bottom:15px;color:#374151}.terms-content ul{margin-bottom:15px;padding-left:20px}.terms-content li{margin-bottom:8px;color:#374151}.terms-content a{color:#3b82f6}@keyframes spin {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}@media (max-width:768px){.booking-engine-form{margin:0}.booking-search-form,.booking-search-results,.booking-details-form,.booking-confirmation{padding:20px}.form-row{grid-template-columns:1fr;gap:15px}.room-option,.service-option{flex-direction:column;gap:15px}.room-pricing{align-items:flex-start;text-align:left}.summary-item{flex-direction:column;gap:5px}.summary-total{flex-direction:column;gap:5px;text-align:left}.confirmation-item{flex-direction:column;gap:5px;text-align:left}.booking-modal-content{width:95%;margin:10px}.booking-modal-header,.booking-modal-body,.booking-modal-footer{padding:20px}.form-actions{flex-direction:column}.booking-details-form .form-actions{flex-direction:column}.selected-property-info{margin:15px;margin-bottom:20px}}@media (max-width:480px){.guest-counters.guest_section_desktop{display:none!important}.guest-counters.guest_section_mobile{display:flex!important}.booking-search-form h3,.booking-search-results h3,.booking-details-form h3{font-size:20px}.booking-details-form h4{font-size:16px}.btn{padding:14px 20px;font-size:16px}.price-display .amount{font-size:20px}.selected-property-info h4{font-size:18px}.calendar-weekday{padding:8px!important;font-size:12px!important}.calendar-day{min-height:40px;padding:8px;border-right:1px solid #e2e8f0;border-bottom:1px solid #e2e8f0}.day-number{font-size:14px;font-weight:600;margin-bottom:2px}.calendar-day.disabled .availability-indicator{display:none!important}.form-group.children-section{display:flex;flex-direction:row;justify-content:space-between}.quantity-btn{width:40px;height:42px;color:#000;background:#e9eaeb}.quantity-input{width:40px;height:40px}.quantity-control{width:100%;justify-content:space-between}.guest-counters{display:flex!important;flex-direction:column;align-items:center}.guest-counters .form-group{width:100%}}