:root{--yellow:#ffd000;--yellow2:#f4c400;--black:#080a0b;--panel:#171a1b;--white:#fff;--muted:#bfc2c4;--line:#34383a;--green:#1fd36a;--red:#ff493d}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#fff;color:#111;font-family:Inter,Arial,Helvetica,sans-serif}a{text-decoration:none;color:inherit}.topbar{height:66px;background:#050607;color:#fff;display:flex;align-items:center;padding:0 3.4%;gap:35px;position:sticky;top:0;z-index:50}.logo-link{width:190px;height:60px;display:flex;align-items:center}.logo-link img{width:165px;max-height:58px;object-fit:contain;object-position:left center}.nav{display:flex;gap:31px;align-items:center;flex:1;justify-content:center;font-size:13px;font-weight:750}.nav a{opacity:.92}.nav a.active,.nav a:hover{color:var(--yellow)}.login{background:var(--yellow);color:#111;padding:12px 22px;border-radius:8px;font-weight:850;font-size:13px}.hero{position:relative;min-height:455px;overflow:hidden;color:#fff;background:#0d1a25}.hero-bg{position:absolute;inset:0;background:linear-gradient(90deg,rgba(4,10,15,.92) 0%,rgba(6,12,18,.73) 40%,rgba(6,12,18,.15) 72%),url("hero-photo.png");background-size:cover;background-position:center}.hero-content{position:relative;z-index:2;max-width:1440px;margin:auto;padding:45px 3.4%;display:grid;grid-template-columns:1fr 390px;gap:70px;align-items:center}.hero-copy h1{font-size:42px;line-height:1.1;letter-spacing:-1.7px;margin:0 0 18px;font-weight:850}.hero-copy h1 span{color:var(--yellow)}.hero-copy p{font-size:15px;line-height:1.65;margin:0 0 25px;color:#f5f5f5}.hero-buttons{display:flex;gap:13px;margin-bottom:30px}.btn{display:inline-flex;align-items:center;justify-content:center;border-radius:8px;padding:13px 24px;font-weight:850;font-size:13px}.btn.yellow{background:var(--yellow);color:#111}.btn.dark{background:#050607;color:#fff;border:1px solid #1e2224}.hero-buttons .btn b{font-size:18px;margin-left:16px}.badges{display:flex;gap:8px;flex-wrap:wrap}.badges span{border:1px solid #a98a00;color:#fff;padding:9px 11px;border-radius:6px;font-size:10px;font-weight:700;background:#0b0d0eaa}.booking-card{background:linear-gradient(145deg,#202425,#101314);border:1px solid #3d4244;border-radius:18px;padding:13px 13px 17px;box-shadow:0 18px 60px #0008}.tabs{display:grid;grid-template-columns:1fr 1fr;margin-bottom:9px}.tab{border:1px solid #3d4244;background:transparent;color:#fff;padding:11px;border-radius:10px 10px 0 0;font-weight:800}.tab.selected{color:var(--yellow);border-bottom-color:var(--yellow)}.field{height:50px;border:1px solid #303537;border-radius:9px;background:#1d2021;margin:6px 0;display:flex;align-items:center;gap:10px;padding:0 13px;font-size:12px}.field i{width:8px;height:8px;border-radius:50%;display:block}.field i.green{background:var(--green)}.field i.red{background:var(--red)}.field input{border:0;outline:0;background:transparent;color:#fff;width:100%;font-size:12px}.field input::placeholder{color:#fff}.field>b{margin-left:auto;font-size:18px}.field strong{margin-left:auto;color:var(--yellow)}.estimate{position:relative;padding:12px 6px 7px;display:flex;flex-direction:column;gap:5px}.estimate span{font-size:12px;color:#ddd}.estimate b{font-size:23px}.estimate small{position:absolute;right:4px;bottom:13px}.reserve{width:100%;height:43px;border:0;border-radius:9px;background:var(--yellow);font-weight:900;cursor:pointer}.reserve-msg{font-size:11px;text-align:center;min-height:13px;margin:7px 0 0;color:#cfd2d3}.how{position:relative;padding:25px 3.4% 0;min-height:245px}.how h2{text-align:center;font-size:20px;margin:0 0 28px}.steps{display:grid;grid-template-columns:repeat(4,1fr);max-width:900px;margin:auto;gap:25px;text-align:center}.steps>div{position:relative}.steps>div:not(:last-child):after{content:"→";position:absolute;right:-22px;top:10px;font-size:24px;color:#222}.steps span{width:52px;height:52px;background:#fff8d4;border-radius:50%;display:grid;place-items:center;margin:auto auto 10px;font-size:24px;font-weight:900}.steps b{font-size:12px}.steps p{font-size:10px;line-height:1.5;color:#444}.app-previews{position:absolute;right:3.5%;bottom:-20px;display:flex;gap:13px;transform:translateY(25%)}.fake-phone{width:155px;height:305px;background:#fff;border:7px solid #111;border-radius:25px;box-shadow:0 12px 40px #0003;overflow:hidden;font-size:8px}.phone-status{padding:7px 10px;font-size:7px}.fake-map{height:145px;background:linear-gradient(140deg,#e7eee9,#f8fbf9);position:relative}.route-line{position:absolute;width:3px;height:90px;background:#2585ef;left:55%;top:30px;transform:rotate(30deg);border-radius:3px}.map-pin{position:absolute;border-radius:50%;font-size:18px}.blue-pin{left:32%;top:65px;color:#287cf1}.yellow-pin{right:20%;top:25px;color:#ffd000}.driver-strip{padding:9px;display:flex;align-items:center;gap:7px}.avatar{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:#111;color:#fff;font-weight:900}.driver-strip small{display:block;color:#666;margin-top:2px}.driver-strip strong{margin-left:auto;color:#159447}.phone-action{margin:5px 8px;padding:8px;border:1px solid #eee;border-radius:8px;text-align:center}.pay-phone h3{margin:4px 13px;font-size:13px}.pay-body{padding:10px 13px}.pay-body b{display:flex;justify-content:space-between}.pay-body em{color:#13a147;font-style:normal}.pay-body p{display:flex;justify-content:space-between;color:#777}.pay-body h4{text-align:center;margin-top:28px}.stars{text-align:center;color:#f0c000;font-size:14px}.pay-body button{width:100%;background:var(--yellow);border:0;border-radius:8px;padding:10px;margin-top:15px;font-weight:900}.why{background:#111;color:#fff;padding:25px 3.4%;display:grid;grid-template-columns:1.15fr repeat(4,1fr);gap:10px;align-items:stretch}.why-intro,.feature{padding:17px 15px}.why h2{font-size:20px;line-height:1.1;margin:0 0 10px}.why h2 span{color:var(--yellow)}.why p{font-size:10px;line-height:1.5;color:#ddd}.outline-btn{display:inline-block;border:1px solid var(--yellow);border-radius:6px;padding:9px 15px;font-size:10px}.feature{background:linear-gradient(145deg,#202425,#17191a);border:1px solid #373a3b;border-radius:9px;text-align:center}.feature span{display:grid;place-items:center;margin:0 auto 12px;width:38px;height:38px;border:2px solid var(--yellow);border-radius:50%;color:var(--yellow);font-size:22px}.feature h3{font-size:12px;margin:0 0 7px}.feature p{font-size:10px}.driver-cta{background:var(--yellow);padding:14px 3.4%;display:grid;grid-template-columns:1fr auto 100px 1fr auto;gap:22px;align-items:center}.driver-cta h2{font-size:15px;margin:0 0 4px}.driver-cta p{font-size:10px;line-height:1.4;margin:0}.driver-cta .btn{padding:10px 16px;font-size:10px}.mini-bike{font-size:40px;text-align:center}.simple-section{padding:65px 8%;text-align:center}.simple-section h2{font-size:34px;margin:0 0 12px}.simple-section>p{max-width:700px;margin:0 auto 25px;color:#666;line-height:1.6}.tariff{max-width:650px;margin:auto;background:#fff;border:1px solid #eee;border-radius:18px;padding:25px;display:flex;flex-direction:column;gap:8px;box-shadow:0 10px 35px #0000000d}.tariff strong{font-size:25px;color:#111}.tariff span{font-size:12px;color:#777}.simple-section.light{background:#f7f7f5}.security-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;max-width:950px;margin:auto}.security-cards article{background:#fff;border-radius:16px;padding:25px;font-size:26px;color:#d7a900}.security-cards b{display:block;color:#111;font-size:15px;margin-top:10px}.security-cards p{color:#777;font-size:12px;line-height:1.5}footer{background:#050607;color:#fff;padding:35px 6%;display:grid;grid-template-columns:1fr 1fr 1fr 1fr;gap:25px;align-items:center}footer img{width:135px}footer div{display:flex;flex-direction:column;gap:7px}footer div span{font-size:11px;color:#bbb}footer small{grid-column:1/-1;border-top:1px solid #292d2e;padding-top:15px;color:#777}@media(max-width:1000px){.nav{gap:14px}.hero-content{grid-template-columns:1fr 360px;gap:25px}.hero-copy h1{font-size:34px}.app-previews{display:none}.why{grid-template-columns:1fr 1fr 1fr}.why-intro{grid-column:1/-1}.driver-cta{grid-template-columns:1fr auto 1fr auto}.mini-bike{display:none}}@media(max-width:760px){.topbar{height:64px;padding:0 15px}.logo-link{width:130px}.logo-link img{width:125px}.nav{display:none}.login{margin-left:auto}.hero-content{grid-template-columns:1fr;padding:35px 18px}.hero-copy h1{font-size:34px}.hero-bg{background-position:center}.booking-card{max-width:430px;width:100%;margin:auto}.how{padding:35px 18px}.steps{grid-template-columns:1fr 1fr;gap:15px}.steps>div:not(:last-child):after{display:none}.why{grid-template-columns:1fr 1fr;padding:25px 18px}.why-intro{grid-column:1/-1}.driver-cta{grid-template-columns:1fr 1fr;padding:20px 18px}.simple-section{padding:50px 20px}.security-cards{grid-template-columns:1fr}footer{grid-template-columns:1fr 1fr;padding:30px 20px}}@media(max-width:480px){.hero-copy h1{font-size:29px}.hero-buttons{flex-direction:column}.badges span{font-size:9px}.steps{grid-template-columns:1fr}.why{grid-template-columns:1fr}.driver-cta{grid-template-columns:1fr}.login{padding:10px 12px;font-size:11px}.simple-section h2{font-size:28px}}
/* ===== VILLES COUVERTES / CARROUSEL ===== */
.cities-section{background:#080a0b;color:#fff;padding:34px 4.1% 38px;overflow:hidden}
.cities-head{max-width:1410px;margin:0 auto 20px;display:flex;align-items:end;justify-content:space-between;gap:20px}
.eyebrow{display:inline-block;color:var(--yellow);font-size:10px;font-weight:900;letter-spacing:1.5px;margin-bottom:7px}
.cities-head h2{margin:0 0 5px;font-size:28px;letter-spacing:-.5px}
.cities-head p{margin:0;color:#aeb2b5;font-size:13px}
.carousel-controls{display:flex;gap:9px}
.carousel-controls button{width:42px;height:42px;border-radius:50%;border:1px solid #414547;background:#1b1e20;color:#fff;font-size:21px;cursor:pointer;transition:.2s}
.carousel-controls button:hover{background:var(--yellow);color:#111;border-color:var(--yellow)}
.cities-track-wrap{max-width:1410px;margin:auto;overflow:hidden}
.cities-track{display:flex;gap:14px;transition:transform .45s ease;will-change:transform}
.city-card{position:relative;flex:0 0 calc((100% - 70px)/6);height:205px;border-radius:12px;overflow:hidden;border:1px solid #2d3032;background:#16191a;box-shadow:0 10px 30px #0005}
.city-card img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .45s ease}
.city-card:hover img{transform:scale(1.06)}
.city-overlay{position:absolute;inset:0;background:linear-gradient(180deg,transparent 38%,rgba(0,0,0,.88) 100%)}
.city-card.featured{border:2px solid var(--yellow)}
.city-info{position:absolute;left:15px;right:12px;bottom:13px;display:flex;gap:8px;align-items:flex-end}
.city-info>span{color:var(--yellow);font-size:18px;line-height:1}
.city-info h3{margin:0 0 2px;font-size:16px}
.city-info p{margin:0;color:#ddd;font-size:11px}
.cities-dots{display:flex;justify-content:center;gap:8px;margin-top:20px}
.cities-dots .dot{width:8px;height:8px;padding:0;border:0;border-radius:50%;background:#8a8d8f;cursor:pointer}
.cities-dots .dot.active{width:20px;border-radius:8px;background:var(--yellow)}
@media(max-width:1100px){
  .city-card{flex-basis:calc((100% - 28px)/3)}
}
@media(max-width:700px){
  .cities-section{padding:28px 18px 30px}
  .cities-head{align-items:center}
  .cities-head h2{font-size:23px}
  .cities-head p{font-size:12px}
  .carousel-controls button{width:38px;height:38px}
  .city-card{flex-basis:calc((100% - 14px)/2);height:185px}
}
@media(max-width:480px){
  .city-card{flex-basis:100%;height:210px}
  .cities-head{align-items:flex-start}
}


/* Taxi Moto Go - image and carousel corrections */
.hero-bg{
  background-image:
    linear-gradient(90deg,rgba(5,8,10,.88) 0%,rgba(5,8,10,.62) 34%,rgba(5,8,10,.12) 70%,rgba(5,8,10,.22) 100%),
    url("hero-photo.png") !important;
  background-size:cover !important;
  background-position:center !important;
  background-repeat:no-repeat !important;
}

/* Villes: final production carousel */
.cities-section{
  display:block !important;
  width:100% !important;
  box-sizing:border-box !important;
  background:#080a0b !important;
  color:#fff !important;
  padding:34px 4.1% 38px !important;
  overflow:hidden !important;
}
.cities-section *{box-sizing:border-box}
.cities-head{
  max-width:1410px !important;
  margin:0 auto 20px !important;
  display:flex !important;
  align-items:flex-end !important;
  justify-content:space-between !important;
  gap:20px !important;
}
.cities-head h2{color:#fff !important;margin:0 0 5px !important;font-size:28px !important}
.cities-head p{color:#aeb2b5 !important;margin:0 !important;font-size:13px !important}
.eyebrow{color:#ffd000 !important;font-size:10px !important;font-weight:900 !important;letter-spacing:1.5px !important}
.carousel-controls{display:flex !important;gap:9px !important}
.carousel-controls button{
  width:42px !important;height:42px !important;border-radius:50% !important;
  border:1px solid #414547 !important;background:#1b1e20 !important;color:#fff !important;
  font-size:21px !important;cursor:pointer !important;
}
.cities-track-wrap{max-width:1410px !important;margin:0 auto !important;overflow:hidden !important}
.cities-track{
  display:flex !important;gap:14px !important;transition:transform .45s ease !important;
  width:max-content !important;
}
.city-card{
  position:relative !important;
  flex:0 0 216px !important;
  width:216px !important;height:205px !important;
  border-radius:12px !important;overflow:hidden !important;
  border:1px solid #2d3032 !important;background:#16191a !important;
}
.city-card img{
  position:absolute !important;inset:0 !important;width:100% !important;height:100% !important;
  object-fit:cover !important;display:block !important;
}
.city-overlay{
  position:absolute !important;inset:0 !important;
  background:linear-gradient(180deg,transparent 30%,rgba(0,0,0,.88) 100%) !important;
}
.city-info{
  position:absolute !important;left:15px !important;right:12px !important;bottom:13px !important;
  display:flex !important;gap:8px !important;align-items:flex-end !important;
  z-index:2 !important;
}
.city-info h3{color:#fff !important;margin:0 0 2px !important;font-size:16px !important}
.city-info p{color:#ddd !important;margin:0 !important;font-size:11px !important}
.city-info>span{color:#ffd000 !important;font-size:18px !important;line-height:1 !important}
.city-card.featured{border:2px solid #ffd000 !important}
.cities-dots{display:flex !important;justify-content:center !important;gap:8px !important;margin-top:20px !important}
.cities-dots .dot{width:8px !important;height:8px !important;padding:0 !important;border:0 !important;border-radius:50% !important;background:#8a8d8f !important;cursor:pointer !important}
.cities-dots .dot.active{width:20px !important;border-radius:8px !important;background:#ffd000 !important}
@media(max-width:1100px){
  .city-card{flex-basis:calc((100vw - 70px)/3) !important;width:calc((100vw - 70px)/3) !important}
}
@media(max-width:700px){
  .cities-section{padding:28px 18px 30px !important}
  .city-card{flex-basis:calc((100vw - 50px)/2) !important;width:calc((100vw - 50px)/2) !important;height:185px !important}
}
@media(max-width:480px){
  .city-card{flex-basis:calc(100vw - 36px) !important;width:calc(100vw - 36px) !important;height:210px !important}
}

/* V3: carousel always scrollable on desktop */
@media(min-width:1101px){
  .city-card{flex:0 0 280px !important;width:280px !important}
}
