:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;display:flex;place-items:center;min-width:320px;min-height:100vh}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media (prefers-color-scheme: light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}*{margin:0;padding:0;box-sizing:border-box;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;-webkit-tap-highlight-color:transparent;max-width:100%}body{background-color:#f5f5f5;background-image:linear-gradient(to bottom right,#f8f9fa,#e9ecef);color:#333;line-height:1.6;min-height:100vh;overflow-x:hidden;padding:0;margin:0;overscroll-behavior-y:contain;display:flex;justify-content:center;align-items:center}.container{width:100%!important;max-width:1200px!important;margin:40px auto!important;padding:0 20px!important;background:white;min-height:calc(100vh - 80px);display:flex;flex-direction:column;align-items:center}.header{background:linear-gradient(135deg,#057BC2,#045a8f);color:#fff;padding:25px 0;text-align:center;position:relative;overflow:hidden;width:100%}.header:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(45deg,rgba(255,255,255,.1) 0%,rgba(255,255,255,0) 100%);pointer-events:none}.header h1{font-size:26px;font-weight:600;letter-spacing:.5px;text-shadow:0 2px 4px rgba(0,0,0,.1);position:relative}.progress-container{width:100%;max-width:1100px!important;margin:20px auto;padding:0 15px;position:relative}.progress-bar{display:flex;justify-content:space-between;position:relative;margin-bottom:45px;padding:0 30px}.progress-bar:before{content:"";position:absolute;top:50%;transform:translateY(-50%);height:3px;width:calc(100% - 60px);background-color:#e0e0e0;z-index:1;border-radius:4px}.progress{position:absolute;top:50%;transform:translateY(-50%);height:3px;background:linear-gradient(90deg,#057BC2,#045a8f);z-index:1;transition:width .5s ease;border-radius:4px;box-shadow:0 0 10px #057bc24d}.step{width:50px;height:50px;background:linear-gradient(135deg,#fff,#f8f9fa);border:2px solid #ddd;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#666;font-weight:600;font-size:14px;z-index:2;position:relative;transition:all .4s cubic-bezier(.4,0,.2,1);box-shadow:0 2px 10px #0000000d}.step.active{background:linear-gradient(135deg,#057BC2,#045a8f);border-color:#045a8f;color:#fff;transform:scale(1.15);box-shadow:0 4px 15px #057bc24d}.step-label{position:absolute;top:65px;left:50%;transform:translate(-50%);font-size:13px;color:#555;white-space:nowrap;font-weight:500;transition:all .3s ease}.form-container{width:100%!important;max-width:800px!important;padding:20px!important;margin:0 auto!important;display:flex;flex-direction:column;align-items:center}.form-content{width:100%;max-width:800px;display:flex;flex-direction:column;align-items:center}.form-page{width:100%!important;max-width:800px!important;margin:0 auto!important;padding:30px!important;background:white;border-radius:12px;box-shadow:0 4px 20px #0000000f}.form-page.active{display:block!important;opacity:1;transform:translate(0)}.form-page h2{font-size:23px;margin-bottom:15px;color:#333;font-weight:600}.form-page p{font-size:16px;color:#666;margin-bottom:25px;line-height:1.6}.form-group{margin-bottom:40px;width:100%}.form-group label{display:block;margin-bottom:15px;font-weight:500;color:#333;font-size:15px}.form-control{width:100%;padding:8px 15px;border:2px solid #e0e0e0;border-radius:12px;font-size:13px;transition:all .3s ease;background-color:#fff;color:#333;box-shadow:0 2px 8px #0000000a;height:50px}.form-control:focus{border-color:#057bc2;outline:none;box-shadow:0 0 0 4px #057bc21a;transform:translateY(-1px)}.form-control:hover{border-color:#057bc2}.pac-container{border-radius:8px;box-shadow:0 4px 15px #0000001a;border:1px solid #e0e0e0;margin-top:5px;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;z-index:1000!important}.pac-item{padding:12px 15px;cursor:pointer;font-size:13px;transition:background-color .2s ease}.pac-item:hover{background-color:#f8f9fa}.pac-item-selected{background-color:#e9ecef}.pac-icon{margin-right:10px}.pac-item-query{font-size:14px;color:#333;font-weight:500}.pac-matched{font-weight:600;color:#057bc2}.buttons{display:flex;justify-content:flex-end;gap:20px;margin-top:30px;padding:0;width:100%}.btn{padding:8px 12px!important;min-width:160px;height:45px;font-size:15px}.btn:not(:disabled){background:linear-gradient(135deg,#057BC2,#045a8f);color:#fff}.btn:hover:not(:disabled){background:linear-gradient(135deg,#045a8f,#034872);transform:translateY(-2px);box-shadow:0 8px 20px #057bc233}.btn:active:not(:disabled){transform:translateY(0);box-shadow:0 4px 10px #057bc233}.btn:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(120deg,transparent,rgba(255,255,255,.2),transparent);transition:.5s}.btn:hover:before{left:100%}.btn:disabled{background:#e0e0e0;color:#999;cursor:not-allowed;transform:none;box-shadow:none}.btn-secondary{background:linear-gradient(135deg,#6c757d,#5a6268)!important;color:#fff!important}.btn-secondary:hover{background:linear-gradient(135deg,#5a6268,#495057)!important}.error-message{display:none;color:#dc3545;font-size:14px;margin-top:10px;padding:10px 15px;border-radius:8px;background-color:#dc35451a}.success-container{width:100%;max-width:none;padding:0}.success-header{text-align:center;margin-bottom:50px}.success-icon{width:90px;height:90px;background:linear-gradient(135deg,#28a745,#218838);border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 25px;color:#fff;font-size:40px;box-shadow:0 8px 25px #28a74540;animation:successPop .5s cubic-bezier(.4,0,.2,1);position:relative}.success-icon:after{content:"";position:absolute;width:100%;height:100%;border-radius:50%;border:2px solid #28a745;animation:ripple 1.5s infinite}@keyframes ripple{0%{transform:scale(1);opacity:1}to{transform:scale(1.5);opacity:0}}.success-header h2{color:#28a745;font-size:28px;margin-bottom:10px}.success-header p{color:#666;font-size:16px}.booking-details{width:100%;margin:40px 0;background:white;border-radius:16px;box-shadow:0 4px 20px #0000000f;overflow:hidden}.booking-actions{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px;margin-bottom:30px}.action-btn{display:flex;align-items:center;justify-content:center;gap:10px;padding:15px 25px;border-radius:8px;font-weight:500;transition:all .3s ease}.email-btn{background:linear-gradient(135deg,#057BC2,#045a8f)!important}.print-btn{background:linear-gradient(135deg,#6c757d,#5a6268)!important}.btn-icon{font-size:20px}.new-booking-btn{width:100%;background:linear-gradient(135deg,#28a745,#218838)!important}.booking-summary{background:linear-gradient(135deg,#f8f9fa,#fff);border:2px solid #e0e0e0;border-radius:12px;padding:30px;margin-bottom:30px}.summary-title{font-size:20px;font-weight:600;margin-bottom:25px;color:#333;border-bottom:2px solid #e0e0e0;padding-bottom:15px}.summary-item{display:flex;justify-content:space-between;margin-bottom:15px;padding:10px 0;border-bottom:1px solid #f0f0f0}.summary-label{font-weight:500;color:#666;font-size:15px}.summary-value{font-weight:500;color:#333;text-align:right;font-size:15px}.vehicle-selection{width:100%!important;padding:0!important;margin:0!important;position:relative}.vehicle-cards-container{width:100%!important;overflow-x:auto;padding:0!important;margin:0!important;-webkit-overflow-scrolling:touch;scroll-snap-type:x mandatory;display:flex}.vehicle-cards{display:flex;gap:10px;padding:10px;width:100%;flex-wrap:nowrap}.vehicle-card{flex:0 0 auto;width:140px;min-width:140px;background:white;border-radius:8px;box-shadow:0 2px 8px #0000001a;overflow:hidden}.vehicle-card:hover{transform:translateY(-4px);box-shadow:0 8px 20px #00000014}.vehicle-card.selected{border-color:#057bc2;box-shadow:0 8px 20px #057bc226}.vehicle-image{height:120px;overflow:hidden;position:relative;background:#f8f9fa}.vehicle-image img{width:100%;height:100%;object-fit:contain;transition:transform .5s ease}.vehicle-card:hover .vehicle-image img{transform:scale(1.05)}.vehicle-details{padding:12px}.vehicle-details h3{font-size:15px;margin-bottom:4px;color:#2d3748;font-weight:600}.vehicle-details p{font-size:13px;color:#64748b;margin:0}.rate-info{padding:12px;background:#f8f9fa;border-top:1px solid #eef2f6}.rate-item{display:flex;justify-content:space-between;align-items:center}.rate-label{font-size:13px;color:#64748b}.rate-value{font-size:14px;font-weight:600;color:#057bc2}.scroll-button{position:absolute;top:50%;transform:translateY(-50%);width:40px;height:40px;border-radius:12px;background:rgba(255,255,255,.95);border:1.5px solid #eef2f6;box-shadow:0 4px 16px #1331dd14;cursor:pointer;display:flex;align-items:center;justify-content:center;color:#057bc2;transition:all .2s cubic-bezier(.4,0,.2,1);z-index:10;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.scroll-button:hover{background:#057BC2;color:#fff;border-color:#057bc2;box-shadow:0 6px 20px #069bf733;transform:translateY(-50%) scale(1.05)}.scroll-button:active{transform:translateY(-50%) scale(.95)}.scroll-button:before{content:"";position:absolute;width:10px;height:10px;border-right:2.5px solid currentColor;border-bottom:2.5px solid currentColor}.scroll-button.scroll-left{left:-5px;outline:none;border:none}.scroll-button.scroll-right{right:-5px;outline:none;border:none}.scroll-button.scroll-left:before{transform:rotate(135deg);margin-left:4px}.scroll-button.scroll-right:before{transform:rotate(-45deg);margin-right:4px}.scroll-button span{display:none}.vehicle-cards{scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch}.vehicle-card{scroll-snap-align:start}.rate-display{margin-top:24px;background:linear-gradient(to right,#f8f9fa,#ffffff);border:1.5px solid #eef2f6;border-radius:12px;padding:20px}.rate-title{font-size:14px;color:#64748b;margin-bottom:8px}.rate-amount{font-size:24px;font-weight:600;color:#057bc2}.rate-details{font-size:13px;color:#64748b;margin-top:8px}@media screen and (max-width: 768px){body{padding:0!important;margin:0!important;background:white!important}.container{border-radius:0!important;box-shadow:none!important}.form-page{padding:10px!important}.vehicle-selection{overflow:hidden}.vehicle-cards-container{margin:0 -10px!important;padding:0 10px!important}.vehicle-cards{padding:10px;gap:8px}.vehicle-card{width:130px;min-width:130px}.vehicle-image{height:80px}.vehicle-details{padding:8px}.vehicle-details h3{font-size:13px;margin-bottom:4px}.vehicle-details p{font-size:12px}.scroll-button{width:32px;height:32px;opacity:.9}.step{width:40px;height:40px;font-size:13px}.step-label{font-size:12px;top:50px}.progress-container{padding:0 10px;margin:15px auto}.progress-bar{padding:0 20px;margin-bottom:35px}}@media screen and (max-width: 480px){.form-page{padding:10px!important}.vehicle-selection{margin:5px 0!important}.vehicle-cards-container{padding:0 8px!important}.vehicle-card{width:140px}.header{padding:20px 0}.header h1,.form-page h2{font-size:20px}.vehicle-image{height:90px}.vehicle-details{padding:8px}.vehicle-details h3{font-size:13px;margin-bottom:2px}.vehicle-details p{font-size:12px}.rate-info{padding:8px}.rate-label{font-size:12px}.rate-value{font-size:13px}.scroll-button{width:32px;height:32px;border-radius:8px}.scroll-button:before{width:8px;height:8px;border-width:2px}.vehicle-cards-container{-webkit-overflow-scrolling:touch;scroll-snap-type:x mandatory;scrollbar-width:none}.vehicle-card{scroll-snap-align:center;scroll-snap-stop:always}.buttons{gap:12px;margin-top:20px}.btn{min-width:140px;height:45px;font-size:14px}.step{width:32px;height:32px;font-size:12px;border-width:1.5px}.step-label{font-size:11px;top:45px;font-weight:400}.progress-container{padding:0 8px;margin:12px auto}.progress-bar{padding:0 15px;margin-bottom:30px}.progress-bar:before{height:2px}.progress{height:2px}}@media screen and (max-width: 375px){.vehicle-card{width:120px;min-width:120px}.vehicle-image{height:75px}.step{width:28px;height:28px;font-size:11px}.step-label{font-size:10px;top:40px}.progress-bar{margin-bottom:25px}}.vehicle-cards-container{scrollbar-width:none;-ms-overflow-style:none}.vehicle-cards-container::-webkit-scrollbar{display:none}.vehicle-cards-container{-webkit-transform:translateZ(0);-moz-transform:translateZ(0);transform:translateZ(0);-webkit-backface-visibility:hidden;backface-visibility:hidden}*{max-width:100%;box-sizing:border-box}@media (hover: none) and (pointer: coarse){.vehicle-cards-container{scroll-snap-type:x mandatory;scroll-padding:0 15px}.vehicle-card{scroll-snap-align:center;scroll-snap-stop:always}}.route-details-grid{display:grid;grid-template-columns:1fr;gap:40px;width:100%;max-width:100%}@media screen and (max-width: 1280px){.container{margin:0 120px!important}}@media screen and (max-width: 1024px){.container{margin:0 40px!important}.vehicle-selection{padding:0 30px}.vehicle-card{width:200px}}@media screen and (max-width: 768px){body{padding:0!important}.container{max-width:100%!important;width:100%!important;margin:0!important;padding:0!important;border-radius:0;box-shadow:none}.form-container{padding:10px!important;width:100%!important}.form-page{max-width:100%!important;width:100%!important;margin:0!important;padding:15px!important;border-radius:0!important;box-shadow:none!important}.vehicle-selection{padding:0!important;margin:10px 0!important;width:100%!important}.vehicle-cards-container{margin:0!important;padding:0 10px!important;width:100%!important;overflow-x:auto}.vehicle-cards{gap:10px;padding:4px 0;width:max-content}.vehicle-card{width:160px}.header h1{font-size:20px}.vehicle-image{height:100px}.vehicle-details{padding:10px}.vehicle-details h3{font-size:14px}.rate-info{padding:10px}.scroll-button{width:36px;height:36px}}@media screen and (max-width: 480px){.form-page{padding:10px!important}.vehicle-selection{margin:5px 0!important}.vehicle-cards-container{padding:0 8px!important}.vehicle-card{width:140px}.header{padding:20px 0}.header h1,.form-page h2{font-size:20px}.vehicle-image{height:90px}.vehicle-details{padding:8px}.vehicle-details h3{font-size:13px;margin-bottom:2px}.vehicle-details p{font-size:12px}.rate-info{padding:8px}.rate-label{font-size:12px}.rate-value{font-size:13px}.scroll-button{width:32px;height:32px;border-radius:8px}.scroll-button:before{width:8px;height:8px;border-width:2px}.vehicle-cards-container{-webkit-overflow-scrolling:touch;scroll-snap-type:x mandatory;scrollbar-width:none}.vehicle-card{scroll-snap-align:center;scroll-snap-stop:always}.buttons{gap:12px;margin-top:20px}.btn{min-width:140px;height:45px;font-size:14px}}@media screen and (min-width: 390px) and (max-width: 428px){.vehicle-card{width:170px}.vehicle-image{height:95px}}@supports (-webkit-touch-callout: none){.vehicle-cards-container{-webkit-overflow-scrolling:touch}}body{overscroll-behavior-y:contain}@media screen and (max-height: 480px) and (orientation: landscape){.vehicle-selection{padding:0 40px}.vehicle-cards{gap:15px}.vehicle-card{width:220px}.vehicle-image{height:80px}.scroll-button{top:40%}}@media screen and (prefers-reduced-motion: no-preference){.vehicle-card{transition:transform .2s cubic-bezier(.4,0,.2,1),box-shadow .2s cubic-bezier(.4,0,.2,1)}.scroll-button{transition:all .2s cubic-bezier(.4,0,.2,1)}}@media (prefers-color-scheme: dark){.scroll-button{background:rgba(255,255,255,.1);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}}@media print{.vehicle-selection{page-break-inside:avoid}}@media (spanning: single-fold-vertical){.vehicle-cards{gap:20px}}.vehicle-card,.scroll-button,.vehicle-cards-container{-webkit-transform:translateZ(0);-moz-transform:translateZ(0);-ms-transform:translateZ(0);-o-transform:translateZ(0);transform:translateZ(0);backface-visibility:hidden;-webkit-backface-visibility:hidden}
