.booking-wrapper{width:100%;max-width:1200px;margin:auto;font-family:'Arial',Helvetica,sans-serif}.booking-steps{display:flex;justify-content:space-between;margin-bottom:40px;position:relative}.booking-steps::before{content:'';position:absolute;bottom:0;left:0;right:0;height:2px;background:#f0f0f0;z-index:1}.step-indicator{flex:1;text-align:center;padding:14px 10px;font-weight:600;color:#999;position:relative;z-index:2;background:#fff;border-bottom:2px solid #fff0;transition:all 0.3s ease;cursor:pointer}.step-indicator::before{content:attr(data-step);display:block;width:28px;height:28px;background:#fff;border:2px solid #ddd;border-radius:50%;margin:0 auto 8px;line-height:26px;font-size:13px;font-weight:700;color:#999;transition:all 0.3s ease}.step-indicator span{display:block;font-size:12px;font-weight:400;margin-top:4px;color:#aaa}.step-indicator.active{color:#b88a00}.step-indicator.active::before{background:#b88a00;border-color:#b88a00;color:#fff;transform:scale(1.1);box-shadow:0 4px 10px rgb(184 138 0 / .2)}.step-indicator.active span{color:#b88a00}.limo-container{display:grid;grid-template-columns:60% 40%;gap:40px;align-items:start}.limo-left{width:100%}.limo-right{width:100%;position:sticky;top:20px}#map{width:100%;height:420px;border-radius:12px;border:1px solid #eee;margin-bottom:15px;box-shadow:0 4px 12px rgb(0 0 0 / .03)}#distance_info{background:#fff;border:1px solid #f0f0f0;border-radius:12px;padding:16px;font-size:14px}#distance_info p{margin:0 0 12px 0;font-weight:600;color:#333;padding-bottom:8px;border-bottom:1px solid #f0f0f0}#route_summary{font-size:13px;color:#555;line-height:1.6}#route_summary strong{color:#b88a00}#step1 h2{margin-bottom:25px;color:#333;font-size:24px}.two-columns{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin-bottom:5px}input,select{width:100%;padding:12px 14px;margin-bottom:15px;border:1.5px solid #e5e5e5;border-radius:10px;font-size:14px;box-sizing:border-box;transition:all 0.2s ease;background:#fff}input:focus,select:focus{outline:none;border-color:#b88a00;box-shadow:0 0 0 3px rgb(184 138 0 / .1)}#stops{margin:5px 0}.stop-row{display:flex;align-items:center;gap:10px;margin-bottom:10px}.stop-row input{flex:1;margin-bottom:0}.remove-stop{width:36px;height:36px;padding:0;background:#fff;color:#999;border:1.5px solid #e5e5e5;border-radius:8px;cursor:pointer;font-size:18px;transition:all 0.2s}.remove-stop:hover{background:#ffebee;color:#dc3545;border-color:#dc3545}#add_stop{background:#fff0;color:#b88a00;border:1.5px dashed #b88a00;padding:8px 20px;font-size:13px;font-weight:500;border-radius:40px;width:auto;display:inline-flex;align-items:center;gap:6px;margin:5px 0 20px 0;cursor:pointer;transition:all 0.3s ease}#add_stop:hover{background:#b88a00;color:#fff;border-color:#b88a00;transform:translateY(-1px)}.return-trip-toggle{margin:20px 0;padding:15px 20px;background:#fffaf0;border-radius:12px;border:1.5px solid #b88a00}.return-trip-toggle label{display:flex;align-items:center;gap:12px;cursor:pointer;font-weight:500;color:#333}.return-trip-toggle input[type="checkbox"]{width:18px;height:18px;margin:0;accent-color:#b88a00}#return_trip_fields{margin:20px 0;padding:20px;background:#f9f9f9;border-radius:12px;border-left:4px solid #b88a00}#return_trip_fields h4{margin:0 0 15px 0;color:#b88a00;font-size:15px}.return-notice{font-size:12px;color:#666;margin-top:12px;padding:8px 12px;background:#fff;border-radius:8px}#check_price{width:auto;padding:10px 28px;font-size:14px;font-weight:600;border-radius:40px;background:#b88a00;color:#fff;border:none;display:inline-flex;align-items:center;gap:8px;margin-top:15px;cursor:pointer;transition:all 0.3s ease;box-shadow:0 4px 12px rgb(184 138 0 / .2)}#check_price:hover{background:#a67900;transform:translateY(-2px)}#check_price::after{content:'→';font-size:16px}.step-content{display:none;padding:5px 0}.step-content.active{display:block;animation:fadeIn 0.4s ease}@keyframes fadeIn{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.vehicle-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:25px}.vehicle{border:1.5px solid #f0f0f0;border-radius:16px;padding:20px 15px;background:#fff;text-align:center;transition:all 0.3s ease}.vehicle:hover{transform:translateY(-4px);box-shadow:0 12px 28px rgb(0 0 0 / .1);border-color:#b88a00}.vehicle img{width:100%;height:130px;object-fit:contain;margin-bottom:15px}.vehicle h4{margin-bottom:10px;font-size:18px;color:#333}.vehicle .info{font-size:12px;color:#888;margin-bottom:6px}.vehicle .price{font-weight:700;margin:12px 0;font-size:20px;color:#b88a00}.vehicle button{width:100%;margin-top:10px;padding:10px;background:#fff0;color:#b88a00;border:1.5px solid #b88a00;border-radius:40px;font-size:13px;font-weight:600;cursor:pointer;transition:all 0.3s ease}.vehicle button:hover{background:#b88a00;color:#fff}#step3 label{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;padding:12px 15px;background:#fff;border:1.5px solid #f0f0f0;border-radius:12px;font-size:14px}.extra{width:80px;padding:8px;border:1.5px solid #e5e5e5;border-radius:8px;text-align:center}#summary{background:#fff;padding:20px;border-radius:16px;margin-bottom:20px;border:1.5px solid #f0f0f0}#summary hr{margin:15px 0;border-top:1.5px dashed #f0f0f0}#continue_extras,#confirm_booking{width:100%;padding:14px 15px;font-size:16px;font-weight:600;border-radius:40px;margin-top:20px;background:#b88a00;color:#fff;border:none;cursor:pointer;transition:all 0.3s ease}#continue_extras:hover,#confirm_booking:hover{background:#a67900;transform:translateY(-2px)}body.step2 .limo-right{display:none}body.step2 .limo-container{grid-template-columns:1fr}@media(max-width:1024px){.limo-container{grid-template-columns:1fr;gap:30px}#map{height:320px}.vehicle-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:768px){.booking-wrapper{padding:0 15px}.two-columns{grid-template-columns:1fr;gap:0}.vehicle-grid{grid-template-columns:repeat(2,1fr);gap:15px}.vehicle img{height:110px}#add_stop{width:100%;justify-content:center}#check_price{width:100%;justify-content:center}}@media(max-width:600px){.booking-steps{flex-direction:column;gap:8px;margin-bottom:30px}.step-indicator{border:1.5px solid #f0f0f0;border-radius:40px;margin-bottom:5px;padding:12px;display:flex;align-items:center;justify-content:center;gap:12px}.step-indicator::before{margin:0;width:24px;height:24px;line-height:22px;font-size:12px}.step-indicator span{display:inline;margin:0;font-size:12px}.vehicle-grid{grid-template-columns:1fr}#map{height:250px}.two-columns{grid-template-columns:1fr}button{width:100%}.return-trip-toggle{padding:12px 15px}#return_trip_fields{padding:15px}}