@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Space+Grotesk:wght@400;500;600;700&display=swap');
:root{--bg:#080b10;--panel:#10151d;--panel2:#141b25;--yellow:#ffd21f;--white:#f7f8fa;--muted:#a2aab7;--line:#29313d;--max:1120px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--white);font-family:'DM Sans',Arial,sans-serif;line-height:1.55}a{color:inherit;text-decoration:none}.site-header{height:78px;display:flex;align-items:center;justify-content:space-between;padding:0 max(22px,calc((100vw - var(--max))/2));border-bottom:1px solid rgba(255,255,255,.08);position:relative;z-index:5;background:rgba(8,11,16,.9)}.brand{display:flex;align-items:center;gap:11px}.brand-mark{display:grid;place-items:center;background:var(--yellow);color:#090b10;font-family:'Space Grotesk',sans-serif;font-weight:700;font-size:18px;width:43px;height:43px;border-radius:12px;box-shadow:0 0 24px #ffd21f22}.brand strong{display:block;font-family:'Space Grotesk',sans-serif;font-size:17px;letter-spacing:-.5px}.brand small{display:block;color:var(--muted);font-size:8px;letter-spacing:1.25px;margin-top:2px}.header-cta{border:1px solid #424955;border-radius:999px;padding:10px 15px;font-size:13px;font-weight:700}.header-cta span{color:var(--yellow);padding-left:6px}.hero{position:relative;overflow:hidden;min-height:570px;padding:92px max(22px,calc((100vw - var(--max))/2)) 75px;background:radial-gradient(ellipse at 80% 35%,#192638 0,transparent 42%),linear-gradient(120deg,#080b10 35%,#0b1119 100%)}.hero-glow{position:absolute;width:330px;height:330px;border-radius:50%;right:8%;top:70px;background:#ffd21f0a;filter:blur(8px)}.eyebrow{font-size:11px;letter-spacing:2px;font-weight:700;color:var(--yellow);display:flex;align-items:center;gap:9px}.live-dot{height:7px;width:7px;background:var(--yellow);border-radius:50%;box-shadow:0 0 12px var(--yellow)}h1,h2,h3,p{margin-top:0}.hero h1,.detail-hero h1{font-family:'Space Grotesk',sans-serif;font-size:clamp(43px,7vw,78px);line-height:1.02;letter-spacing:-3.5px;margin:24px 0 20px;max-width:720px;position:relative}.hero h1 span,.detail-hero h1 span,.bottom-banner h2 span{color:var(--yellow)}.hero-copy{color:#b6beca;max-width:470px;font-size:16px;margin-bottom:28px}.button{display:inline-flex;align-items:center;justify-content:center;gap:22px;padding:15px 20px;border-radius:10px;font-size:14px;font-weight:700;transition:transform .2s,background .2s}.button:hover{transform:translateY(-2px)}.button-yellow{background:var(--yellow);color:#0a0c10}.button-yellow span{font-size:18px}.hero-note{color:#aab2bd;font-size:12px;margin-top:25px}.hero-note span{margin-right:6px}.orbit{position:absolute;border:1px solid #ffd21f22;border-radius:50%;pointer-events:none}.orbit-one{width:400px;height:400px;right:4%;top:70px}.orbit-two{width:300px;height:300px;right:8%;top:120px;border-color:#ffffff0d}.hero-badge{position:absolute;right:17%;top:190px;width:138px;height:138px;border:1px solid #ffd21f55;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;transform:rotate(10deg);background:#0b1018cc;box-shadow:0 0 55px #0008}.hero-badge span{font-family:'Space Grotesk';font-size:38px;font-weight:700;color:var(--yellow)}.hero-badge small{text-align:center;font-size:8px;letter-spacing:1.5px;color:#b8c0ca}.section-wrap{max-width:var(--max);margin:auto;padding-left:22px;padding-right:22px}.services{padding-top:75px;padding-bottom:80px}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:28px}.section-heading h2,.steps h2{font-family:'Space Grotesk';font-size:clamp(30px,4vw,43px);letter-spacing:-1.5px;margin:9px 0 0}.section-heading>p{color:var(--muted);font-size:13px;margin-bottom:5px}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.service-card{display:flex;flex-direction:column;min-height:265px;background:linear-gradient(145deg,#141b25,#0f131a);border:1px solid #252d38;border-radius:17px;padding:24px;transition:transform .2s,border-color .2s}.service-card:hover{transform:translateY(-5px);border-color:#ffd21f88}.card-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:28px}.service-icon{display:grid;place-items:center;width:52px;height:52px;background:#ffd21f12;border:1px solid #ffd21f26;border-radius:14px;font-size:25px}.arrow{color:var(--yellow);font-size:23px}.card-number{font-size:9px;letter-spacing:1.7px;color:#929cab;font-weight:700}.service-card h3{font-family:'Space Grotesk';font-size:24px;letter-spacing:-.6px;margin:8px 0}.service-card p{font-size:13px;color:#aab2bd;margin-bottom:23px}.card-link{margin-top:auto;font-size:12px;font-weight:700}.card-link b{color:var(--yellow);margin-left:6px}.bottom-banner{margin-bottom:65px;padding-top:35px;padding-bottom:35px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:25px}.bottom-banner h2{font-family:'Space Grotesk';font-size:clamp(27px,4vw,40px);line-height:1.15;letter-spacing:-1.4px;margin:12px 0 0}footer{border-top:1px solid #202733;text-align:center;padding:34px 20px 28px;color:var(--muted);font-size:12px}footer p{margin:8px 0}footer>a:not(.footer-brand){color:var(--yellow)}footer small{display:block;font-size:10px;margin-top:22px;color:#737d8b}.footer-brand{font-family:'Space Grotesk';font-size:14px;font-weight:700;letter-spacing:2px;color:var(--white)}.footer-brand span{font-size:8px;color:var(--yellow);vertical-align:top}.detail-main{max-width:var(--max);margin:auto;padding:30px 22px 80px}.back-link{display:inline-block;color:#aab2bd;font-size:13px;margin:4px 0 35px}.back-link:hover{color:var(--yellow)}.detail-hero{max-width:760px;padding:25px 0 60px}.detail-icon{width:68px;height:68px;display:grid;place-items:center;border:1px solid #ffd21f40;background:#ffd21f10;border-radius:18px;font-size:32px;margin-bottom:30px}.detail-hero h1{font-size:clamp(46px,7vw,76px);margin-top:15px}.detail-hero p{max-width:590px;color:#b4bdc8;font-size:17px;margin:0 0 28px}.steps{border-top:1px solid var(--line);padding-top:35px}.steps h2{font-size:30px;margin-bottom:25px}.step-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.step-grid article{background:var(--panel);border:1px solid #242d38;border-radius:14px;padding:22px}.step-grid article>span{color:var(--yellow);font-size:11px;letter-spacing:1.5px;font-weight:700}.step-grid h3{font-family:'Space Grotesk';font-size:18px;margin:16px 0 8px}.step-grid p{color:#aab2bd;font-size:13px;margin:0}.fine-print{color:#7f8998;font-size:11px;margin:20px 0 0}
@media(max-width:720px){.site-header{height:70px;padding:0 17px}.brand-mark{width:39px;height:39px}.brand strong{font-size:15px}.brand small{font-size:7px;letter-spacing:.8px}.header-cta{font-size:12px;padding:9px 12px}.hero{padding:76px 22px 60px;min-height:530px}.hero h1{font-size:clamp(46px,12vw,67px);letter-spacing:-2.7px}.hero-copy{font-size:15px;max-width:390px}.orbit-one{width:270px;height:270px;right:-125px;top:220px}.orbit-two{width:205px;height:205px;right:-90px;top:250px}.hero-badge{width:90px;height:90px;right:24px;top:300px;opacity:.78}.hero-badge span{font-size:26px}.hero-badge small{font-size:6px}.services{padding-top:55px;padding-bottom:55px}.section-heading{display:block}.section-heading>p{margin-top:10px}.service-grid{grid-template-columns:1fr;gap:12px}.service-card{min-height:220px;padding:21px}.card-top{margin-bottom:20px}.bottom-banner{align-items:flex-start;flex-direction:column;margin-bottom:40px;padding-top:30px;padding-bottom:30px}.bottom-banner .button{width:100%}.detail-main{padding:24px 20px 60px}.back-link{margin-bottom:25px}.detail-hero{padding:15px 0 45px}.detail-hero h1{letter-spacing:-2.5px}.detail-hero p{font-size:15px}.step-grid{grid-template-columns:1fr;gap:10px}.step-grid article{padding:19px}.steps h2{font-size:27px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}


/* Ride map picker */
.map-booking{border-top:1px solid var(--line);padding:36px 0 44px}
.map-booking h2{font-family:'Space Grotesk';font-size:30px;letter-spacing:-1px;margin-bottom:8px}
.map-booking>p{max-width:680px;color:#aab2bd;font-size:13px}
.map-actions{display:flex;gap:10px;margin:20px 0 12px}
.map-choice{background:#141b25;color:#f7f8fa;border:1px solid #394352;border-radius:9px;padding:11px 15px;font:600 13px 'DM Sans',sans-serif;cursor:pointer}
.map-choice.active{background:var(--yellow);color:#080b10;border-color:var(--yellow)}
#rideMap{height:350px;width:100%;border-radius:14px;overflow:hidden;border:1px solid #303a48;z-index:1}
.location-summary{background:#10151d;border:1px solid #252d38;border-radius:12px;padding:12px 16px;margin:13px 0 18px}
.location-summary p{font-size:13px;color:#b4bdc8;margin:5px 0;overflow-wrap:anywhere}
.location-summary strong{color:var(--yellow)}
.rental-price{display:flex;flex-direction:column;align-items:flex-start;gap:3px;padding:19px 22px;margin:22px 0 25px;max-width:310px;border:1px solid #ffd21f66;border-radius:15px;background:linear-gradient(145deg,#171c21,#11161d)}
.rental-price>span{font-size:10px;letter-spacing:2px;color:var(--yellow);font-weight:700}
.rental-price>strong{font-family:'Space Grotesk';font-size:38px;line-height:1.25;letter-spacing:-1.2px}
.rental-price .price-unit{font-size:19px;margin-left:3px;color:var(--yellow)}
.rental-price small{font-size:12px;color:#aab2bd}
@media(max-width:720px){#rideMap{height:300px}.map-booking h2{font-size:26px}.map-actions .map-choice{flex:1;padding:11px 8px}.rental-price{width:100%;max-width:none}}

/* Easy ride location search */
.ride-search{margin:18px 0 14px;padding:16px;background:#10151d;border:1px solid #252d38;border-radius:12px}
.ride-search label{display:block;font-size:13px;font-weight:700;margin-bottom:9px;color:#f7f8fa}
.ride-search-row{display:flex;gap:8px}
.ride-search input{min-width:0;flex:1;background:#080b10;color:#f7f8fa;border:1px solid #394352;border-radius:9px;padding:12px 13px;font:13px 'DM Sans',sans-serif}
.ride-search input:focus{outline:2px solid var(--yellow);outline-offset:1px}
.ride-search-row button{white-space:nowrap}
.search-status{font-size:12px;color:#aab2bd;margin-top:9px}
.search-results{display:grid;gap:7px;margin-top:9px}
.search-result{width:100%;text-align:left;background:#171e28;border:1px solid #303a48;color:#f7f8fa;border-radius:8px;padding:11px 12px;font:12px 'DM Sans',sans-serif;cursor:pointer}
.search-result:hover,.search-result:focus{border-color:var(--yellow);outline:none}
@media(max-width:480px){.ride-search-row{flex-direction:column}.ride-search-row button{width:100%}}

.current-location-button{margin-top:10px;width:100%;text-align:left}
.map-choice:disabled{opacity:.6;cursor:wait}

/* PWA install panel */
.pwa-install-panel{display:none;margin:1.25rem auto;padding:1rem 1.1rem;max-width:1100px;border:1px solid rgba(255,214,0,.35);border-radius:16px;background:linear-gradient(120deg,rgba(255,214,0,.10),rgba(255,214,0,.025));align-items:center;justify-content:space-between;gap:1rem}
.pwa-install-panel.is-visible{display:flex}
.pwa-install-copy strong{display:block;color:#fff;font-size:1rem;margin-bottom:.25rem}
.pwa-install-copy span{display:block;color:#b9bdc5;font-size:.88rem;line-height:1.45}
.pwa-install-actions{display:flex;gap:.6rem;align-items:center;flex-wrap:wrap}
.pwa-install-button{border:0;border-radius:999px;background:#ffd600;color:#080b10;font-weight:800;padding:.8rem 1.1rem;cursor:pointer;font:inherit;font-weight:800;white-space:nowrap}
.pwa-install-dismiss{border:1px solid #444;background:transparent;color:#ddd;border-radius:999px;padding:.75rem .9rem;cursor:pointer;font:inherit}
@media(max-width:600px){.pwa-install-panel{margin:.8rem;padding:.9rem;align-items:flex-start;flex-direction:column}.pwa-install-actions{width:100%}.pwa-install-button{flex:1}}
