*{margin:0;padding:0;box-sizing:border-box}.transfers-booking-container{max-width:700px;margin:40px auto;padding:30px 20px;background:#fff;border-radius:10px;box-shadow:0 2px 20px rgb(0 0 0 / .1);font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Oxygen,Ubuntu,Cantarell,sans-serif}.booking-progress{display:flex;justify-content:space-between;margin-bottom:40px;position:relative;padding-bottom:20px}.booking-progress::before{content:'';position:absolute;top:20px;left:0;right:0;height:2px;background:#e0e0e0;z-index:-1}.progress-step{display:flex;flex-direction:column;align-items:center;gap:8px;flex:1}.step-number{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:50%;background:#e0e0e0;color:#666;font-weight:600;font-size:14px;transition:all 0.3s ease}.progress-step.active .step-number{background:#FFB900;color:#fff;box-shadow:0 2px 8px rgb(255 185 0 / .3)}.progress-step.active .step-title{color:#FFB900;font-weight:600}.step-title{font-size:12px;color:#999;text-align:center;transition:all 0.3s ease}.booking-step{display:none;animation:fadeIn 0.3s ease-in-out}.booking-step.active{display:block}@keyframes fadeIn{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.booking-step h3{color:#1a1a1a;font-size:24px;margin-bottom:8px}.step-description{color:#666;margin-bottom:25px;font-size:14px}.form-group{margin-bottom:20px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:15px}.form-group label{display:block;margin-bottom:8px;font-weight:600;color:#333;font-size:14px}.form-group input[type="text"],.form-group input[type="email"],.form-group input[type="tel"],.form-group input[type="date"],.form-group input[type="time"],.form-group select,.form-group textarea{width:100%;padding:12px;border:1px solid #ddd;border-radius:6px;font-size:14px;font-family:inherit;transition:all 0.3s ease}.form-group input[type="text"]:focus,.form-group input[type="email"]:focus,.form-group input[type="tel"]:focus,.form-group input[type="date"]:focus,.form-group input[type="time"]:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:#FFB900;box-shadow:0 0 0 3px rgb(255 185 0 / .1)}.form-group input:invalid:not(:placeholder-shown),.form-group select:invalid:not([value=""]),.form-group textarea:invalid:not(:placeholder-shown){border-color:#f44}.error-message{display:none;color:#f44;font-size:12px;margin-top:5px}.form-group.error .error-message{display:block}.location-dropdown{display:none;position:absolute;top:100%;left:0;right:0;background:#fff;border:1px solid #ddd;border-top:none;border-radius:0 0 6px 6px;max-height:300px;overflow-y:auto;z-index:1000;box-shadow:0 4px 12px rgb(0 0 0 / .1)}.location-dropdown.active{display:block}.location-dropdown .item{padding:12px;cursor:pointer;border-bottom:1px solid #f0f0f0;transition:background 0.2s ease;font-size:14px}.location-dropdown .item:hover{background:#f9f9f9}.location-dropdown .item.selected{background:#fff9e6;color:#FFB900}.form-group.checkbox{display:flex;gap:10px;align-items:flex-start}.form-group.checkbox input[type="checkbox"]{width:20px;height:20px;margin-top:2px;cursor:pointer;flex-shrink:0}.form-group.checkbox label{margin:0;font-weight:400;cursor:pointer;font-size:13px;line-height:1.5}.form-group.checkbox label a{color:#FFB900;text-decoration:none}.form-group.checkbox label a:hover{text-decoration:underline}.booking-summary{background:#f9f9f9;border-radius:8px;padding:25px;margin-bottom:30px;border:1px solid #e0e0e0}.summary-section{margin-bottom:20px}.summary-section:last-child{margin-bottom:0}.summary-section h4{font-size:13px;font-weight:700;text-transform:uppercase;color:#666;margin-bottom:12px;letter-spacing:.5px}.summary-section p{font-size:14px;color:#333;margin-bottom:8px;display:flex;justify-content:space-between}.summary-section p strong{font-weight:600;color:#1a1a1a}.summary-section p span{text-align:right}.price-section{border-top:2px solid #ddd;padding-top:15px;background:#fff0;margin-top:20px}.price-total{display:flex!important;justify-content:space-between;font-size:20px!important;font-weight:700!important;color:#FFB900!important;margin:0!important}.paypal-container{margin:30px 0;padding:20px;background:#f9f9f9;border-radius:8px;border:1px solid #e0e0e0}#paypal-button-container{min-height:100px}.form-actions{display:flex;gap:12px;margin-top:30px}.btn-back,.btn-next,.btn-home{flex:1;padding:14px 24px;border:none;border-radius:6px;font-size:14px;font-weight:600;cursor:pointer;transition:all 0.3s ease;text-decoration:none;text-align:center;display:flex;align-items:center;justify-content:center}.btn-next,.btn-home{background:#FFB900;color:#fff}.btn-next:hover,.btn-home:hover{background:#E6A500;transform:translateY(-2px);box-shadow:0 4px 12px rgb(255 185 0 / .3)}.btn-back{background:#e0e0e0;color:#333}.btn-back:hover{background:#d0d0d0}.success-message{text-align:center;padding:40px 20px}.success-message h3{color:#27ae60;font-size:24px;margin-bottom:15px}.success-message p{color:#666;margin-bottom:10px;font-size:14px;line-height:1.6}.success-message strong{color:#27ae60;font-weight:600}.btn-next:disabled,.btn-back:disabled{opacity:.6;cursor:not-allowed}.loading{position:relative}.loading::after{content:'';position:absolute;top:50%;right:15px;width:16px;height:16px;margin-top:-8px;border:2px solid rgb(255 255 255 / .3);border-top-color:#fff;border-radius:50%;animation:spin 0.8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@media (max-width:768px){.transfers-booking-container{margin:20px auto;padding:20px 15px}.booking-progress{margin-bottom:30px}.progress-step{gap:4px}.step-number{width:36px;height:36px;font-size:12px}.step-title{font-size:11px}.booking-step h3{font-size:20px}.form-row{grid-template-columns:1fr}.form-actions{flex-direction:column}.booking-summary{padding:15px}.summary-section p{font-size:13px}}@media (max-width:480px){.transfers-booking-container{padding:15px}.booking-progress{gap:5px}.progress-step{flex:1}.step-number{width:32px;height:32px;font-size:11px}.step-title{font-size:10px;max-width:60px}.booking-step h3{font-size:18px}.step-description{font-size:12px}.form-group{margin-bottom:15px}.form-group label{font-size:13px}.form-group input,.form-group select,.form-group textarea{padding:10px;font-size:13px}.btn-next,.btn-back,.btn-home{padding:12px 16px;font-size:13px}}