:root{
  --taxi-yellow:#F7B500;
  --taxi-yellow-2:#FFCB2D;
  --ink:#111214;
  --muted:#6b7280;
  --bg-soft:#f7f8fb;
  --card:#ffffff;
  --shadow:0 20px 50px rgba(17,18,20,.08);
  --shadow-sm:0 12px 25px rgba(17,18,20,.08);
  --radius:26px;
}

html{scroll-behavior:smooth;}
body{
  font-family:system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,"Apple Color Emoji","Segoe UI Emoji";
  color:var(--ink);
  line-height:1.6;
}

/* Topbar */
.topbar{
  background:#f8f9fa;
  border-bottom:1px solid rgba(17,18,20,.06);
  font-size:.875rem;
}
.topbar a{text-decoration:none; color:inherit;}
.topbar a:hover{color:var(--taxi-yellow);}

/* Navbar */
.navbar{
  background:#fff; 
  box-shadow:0 12px 30px rgba(17,18,20,.05);
  padding:.75rem 0;
}
.navbar-brand{
  font-size:1.1rem;
  font-weight:800;
  text-decoration:none;
  color:var(--ink);
  display:flex;
  align-items:center;
  gap:.5rem;
}
.navbar-logo{
  height:40px;
  width:auto;
  object-fit:contain;
  flex-shrink:0;
}
.logo-mark{
  flex-shrink:0;
}
.text-yellow{color:var(--taxi-yellow)!important;}
.navbar .nav-link{
  font-weight:600; 
  color:#222; 
  padding:.9rem 1rem;
  transition:color .2s;
}
.navbar .nav-link:hover,
.navbar .nav-link.active{
  color:var(--taxi-yellow);
}
.navbar-toggler{
  border:none;
  padding:.5rem;
  color:var(--ink);
}
.navbar-toggler:focus{
  box-shadow:none;
}
.navbar-toggler-icon{
  background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%2833, 37, 41, 0.75%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
}

/* Buttons */
.btn-taxi{
  background:var(--taxi-yellow);
  border:1px solid rgba(0,0,0,.06);
  color:#121212;
  font-weight:800;
  padding:.85rem 1.25rem;
  border-radius:999px;
  box-shadow:0 18px 30px rgba(247,181,0,.20);
  text-decoration:none;
  display:inline-flex;
  align-items:center;
  gap:.5rem;
  transition:all .2s;
  border:none;
}
.btn-taxi:hover{
  background:var(--taxi-yellow-2); 
  transform:translateY(-1px);
  color:#121212;
}
.btn-taxi.btn-lg{
  padding:1rem 1.5rem;
  font-size:1.05rem;
}
.btn-soft{
  background:var(--bg-soft);
  border:1px solid rgba(17,18,20,.08);
  color:var(--ink);
  font-weight:700;
  padding:.85rem 1.25rem;
  border-radius:999px;
  text-decoration:none;
  display:inline-flex;
  align-items:center;
  gap:.5rem;
  transition:all .2s;
}
.btn-soft:hover{
  background:#e9eaed;
  color:var(--ink);
  transform:translateY(-1px);
}
.btn-soft.btn-lg{
  padding:1rem 1.5rem;
  font-size:1.05rem;
}
.btn-outline-ink{
  border:2px solid rgba(17,18,20,.12);
  color:var(--ink);
  font-weight:700;
  padding:.85rem 1.25rem;
  border-radius:999px;
  text-decoration:none;
  display:inline-flex;
  align-items:center;
  gap:.5rem;
  transition:all .2s;
  background:transparent;
}
.btn-outline-ink:hover{
  border-color:rgba(17,18,20,.22);
  transform:translateY(-1px);
  color:var(--ink);
}

/* Utility */
.section{
  padding:90px 0;
}
.bg-soft{
  background:var(--bg-soft);
}
.fw-extrabold{
  font-weight:900;
}
.section-kicker{
  display:inline-block;
  font-weight:900;
  letter-spacing:.15em;
  text-transform:uppercase;
  color:var(--taxi-yellow);
  font-size:.75rem;
  margin-bottom:.75rem;
}
.section-title{
  font-weight:900;
  line-height:1.2;
  letter-spacing:-.02em;
  font-size:2.5rem;
  margin-bottom:1rem;
}
.kicker{
  display:inline-flex;
  align-items:center;
  gap:.55rem;
  font-weight:900;
  letter-spacing:.18em;
  text-transform:uppercase;
  color:var(--taxi-yellow);
  font-size:.86rem;
  margin-bottom:1rem;
}
.kicker-pill{
  display:inline-flex;
  align-items:center;
  background:rgba(247,181,0,.15);
  border:1px solid rgba(247,181,0,.3);
  padding:.35rem .7rem;
  border-radius:999px;
  font-size:.75rem;
  margin-right:.5rem;
}

/* Hero */
.hero{
  position:relative;
  overflow:hidden;
  background:linear-gradient(180deg, #ffffff 0%, var(--bg-soft) 100%);
  padding:120px 0 80px;
}
.hero:before{
  content:"";
  position:absolute;
  top:-200px;
  right:-200px;
  width:520px;
  height:520px;
  background:radial-gradient(circle at 30% 30%, rgba(247,181,0,.30), rgba(247,181,0,0));
  filter:blur(0px);
  transform:rotate(18deg);
  pointer-events:none;
}
.hero:after{
  content:"";
  position:absolute;
  bottom:-260px;
  left:-220px;
  width:520px;
  height:520px;
  background:radial-gradient(circle at 30% 30%, rgba(17,18,20,.10), rgba(17,18,20,0));
  transform:rotate(-10deg);
  pointer-events:none;
}
.hero h1{
  font-size:3rem;
  line-height:1.1;
  margin-bottom:1.5rem;
}
.hero .lead{
  font-size:1.25rem;
  line-height:1.6;
}
.hero-art{
  position:relative;
  padding:2rem 0;
}
.hero-badge{
  position:absolute;
  top:20px;
  left:20px;
  background:#fff;
  border-radius:16px;
  padding:1rem 1.25rem;
  box-shadow:0 12px 30px rgba(17,18,20,.12);
  z-index:2;
}
.badge-title{
  font-weight:800;
  font-size:.95rem;
  color:var(--ink);
}
.badge-sub{
  font-size:.8rem;
  color:var(--muted);
  margin-top:.25rem;
}
.hero-taxi{
  width:100%;
  height:auto;
  max-width:100%;
  display:block;
}
.hero-ring{
  position:absolute;
  top:50%;
  left:50%;
  transform:translate(-50%, -50%);
  width:120%;
  height:120%;
  border:2px solid rgba(247,181,0,.15);
  border-radius:50%;
  pointer-events:none;
}
.trust-row{
  display:flex;
  flex-wrap:wrap;
  gap:1.5rem;
  margin-top:2rem;
}
.trust-item{
  display:flex;
  align-items:center;
  gap:.5rem;
  font-weight:600;
  font-size:.95rem;
  color:var(--ink);
}
.trust-item i{
  color:var(--taxi-yellow);
  font-size:1.1rem;
}

/* Stats */
.stat{
  background:#fff;
  border-radius:22px;
  box-shadow:var(--shadow-sm);
  padding:1.5rem;
  text-align:center;
  height:100%;
}
.stat-num{
  font-size:2.5rem;
  font-weight:900;
  line-height:1;
  color:var(--ink);
  margin-bottom:.5rem;
}
.stat-label{
  font-size:.9rem;
  color:var(--muted);
  font-weight:600;
}

/* About */
.about-media{
  position:relative;
  min-height:400px;
}
.about-stamp{
  position:absolute;
  top:20px;
  right:20px;
  background:var(--taxi-yellow);
  color:#fff;
  border-radius:20px;
  padding:1.5rem;
  box-shadow:0 20px 50px rgba(247,181,0,.3);
  z-index:2;
  text-align:center;
}
.stamp-num{
  font-size:2rem;
  font-weight:900;
  line-height:1;
}
.stamp-txt{
  font-size:.85rem;
  margin-top:.5rem;
  opacity:.95;
}
.about-logo{
  width:100%;
  height:400px;
  object-fit:contain;
  border-radius:var(--radius);
  box-shadow:var(--shadow);
  background:#fff;
  padding:1rem;
}
.checklist{
  list-style:none;
  padding:0;
  margin:0;
}
.checklist li{
  display:flex;
  gap:12px;
  align-items:flex-start;
  margin:1rem 0;
  font-size:1.05rem;
}
.checklist i{
  color:var(--taxi-yellow);
  font-size:1.3rem;
  flex-shrink:0;
  margin-top:.1rem;
}

/* Service cards */
.service-card{
  background:#fff;
  border-radius:var(--radius);
  overflow:hidden;
  box-shadow:var(--shadow-sm);
  transition:transform .3s ease, box-shadow .3s ease;
  height:100%;
  display:flex;
  flex-direction:column;
}
.service-card:hover{
  transform:translateY(-8px);
  box-shadow:0 26px 60px rgba(17,18,20,.15);
}
.service-img{
  height:200px;
  background-size:cover;
  background-position:center;
  position:relative;
}
.service-img.img-1{
  background-image:url('../img/course93.png');
  background-color:rgba(247,181,0,.1);
}
.service-img.img-2{
  background-image:url('../img/Gares.png');
  background-color:rgba(247,181,0,.1);
}
.service-img.img-3{
  background-image:url('../img/Entreprises.png');
  background-color:rgba(247,181,0,.1);
}
.service-img.img-4{
  background-image:url('../img/hosto.png');
  background-color:rgba(247,181,0,.1);
}
.service-img.img-5{
  background-image:url('../img/hotel.png');
  background-color:rgba(247,181,0,.1);
}
.service-img.img-6{
  background-image:url('../img/longue.png');
  background-color:rgba(247,181,0,.1);
}
.service-icon{
  position:absolute;
  right:20px;
  top:160px;
  width:70px;
  height:70px;
  border-radius:50%;
  background:var(--taxi-yellow);
  display:grid;
  place-items:center;
  border:6px solid #fff;
  box-shadow:0 18px 34px rgba(247,181,0,.28);
  z-index:2;
}
.service-icon i{
  font-size:1.8rem;
  color:#111214;
}
.service-body{
  padding:1.75rem;
  flex:1;
  display:flex;
  flex-direction:column;
}
.service-body h3{
  margin-bottom:.75rem;
  font-size:1.35rem;
}
.service-body p{
  color:var(--muted);
  margin-bottom:1rem;
  flex:1;
}
.link-more{
  color:var(--ink);
  font-weight:700;
  text-decoration:none;
  display:inline-flex;
  align-items:center;
  gap:.5rem;
  margin-top:auto;
  transition:gap .2s;
}
.link-more:hover{
  color:var(--taxi-yellow);
  gap:.75rem;
}

/* Feature section */
.feature{
  position:relative;
  background:linear-gradient(90deg, rgba(17,18,20,.85), rgba(17,18,20,.75)),
             url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="1400" height="900"><rect width="1400" height="900" fill="%23111214"/><g opacity=".22"><rect x="0" y="640" width="1400" height="260" fill="%23f7b500"/><circle cx="220" cy="260" r="180" fill="%23f7b500"/><circle cx="1180" cy="300" r="220" fill="%23f7b500"/></g></svg>');
  background-size:cover;
  background-position:center;
  color:#fff;
  padding:90px 0;
}
.feature-overlay{
  position:absolute;
  inset:0;
  background:rgba(17,18,20,.4);
}
.feature .section-kicker{
  color:var(--taxi-yellow);
}
.feature-card{
  background:#fff;
  color:var(--ink);
  border-radius:26px;
  box-shadow:0 30px 80px rgba(0,0,0,.22);
  padding:2rem;
  height:100%;
  text-align:center;
  transition:transform .3s ease;
}
.feature-card:hover{
  transform:translateY(-6px);
}
.feature-ico{
  width:80px;
  height:80px;
  border-radius:50%;
  background:var(--taxi-yellow);
  display:grid;
  place-items:center;
  margin:0 auto 1.25rem;
  box-shadow:0 18px 34px rgba(247,181,0,.28);
}
.feature-ico i{
  font-size:2rem;
  color:#111214;
}
.feature-card h3{
  font-weight:800;
  margin-bottom:.75rem;
  font-size:1.15rem;
}
.feature-card p{
  color:var(--muted);
  margin:0;
  font-size:.95rem;
}

/* CPAM section */
.cpam-card{
  background:#fff;
  border-radius:var(--radius);
  box-shadow:var(--shadow);
  padding:2rem;
}
.info-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit, minmax(200px, 1fr));
  gap:1rem;
  margin-top:1.5rem;
}
.info-item{
  display:flex;
  align-items:center;
  gap:.75rem;
  font-weight:600;
  color:var(--ink);
}
.info-item i{
  color:var(--taxi-yellow);
  font-size:1.2rem;
  flex-shrink:0;
}
.cpam-steps{
  margin-top:1.5rem;
}
.step{
  display:flex;
  gap:1rem;
  margin-bottom:1.25rem;
  align-items:flex-start;
}
.step-n{
  width:40px;
  height:40px;
  border-radius:50%;
  background:var(--taxi-yellow);
  color:#111214;
  display:grid;
  place-items:center;
  font-weight:900;
  flex-shrink:0;
  font-size:1.1rem;
}
.step strong{
  display:block;
  margin-bottom:.25rem;
}

/* Partners */
.partner-card{
  background:#fff;
  border-radius:var(--radius);
  box-shadow:var(--shadow-sm);
  padding:2rem;
  height:100%;
  transition:transform .3s ease, box-shadow .3s ease;
}
.partner-card:hover{
  transform:translateY(-6px);
  box-shadow:var(--shadow);
}
.partner-ico{
  width:70px;
  height:70px;
  border-radius:16px;
  background:rgba(247,181,0,.15);
  display:grid;
  place-items:center;
  margin-bottom:1.25rem;
}
.partner-ico i{
  font-size:2rem;
  color:var(--taxi-yellow);
}
.partner-card h3{
  font-size:1.35rem;
  margin-bottom:.75rem;
}
.partner-card p{
  color:var(--muted);
  margin-bottom:1rem;
}
.mini-list{
  list-style:none;
  padding:0;
  margin:0;
}
.mini-list li{
  padding:.5rem 0;
  border-bottom:1px solid rgba(17,18,20,.06);
  font-size:.95rem;
  color:var(--muted);
}
.mini-list li:last-child{
  border-bottom:none;
}
.cta-strip{
  background:#fff;
  border-radius:var(--radius);
  box-shadow:var(--shadow);
  padding:2rem;
  display:flex;
  align-items:center;
  justify-content:space-between;
  flex-wrap:wrap;
  gap:1.5rem;
}

/* Zones */
.zones-pill{
  display:flex;
  flex-wrap:wrap;
  gap:.75rem;
  margin-top:1.5rem;
}
.zones-pill span{
  background:var(--bg-soft);
  border:1px solid rgba(17,18,20,.08);
  padding:.5rem 1rem;
  border-radius:999px;
  font-size:.9rem;
  font-weight:600;
  color:var(--ink);
}
.map-card{
  background:#fff;
  border-radius:var(--radius);
  box-shadow:var(--shadow);
  padding:1.75rem;
}
.map-card iframe{
  border:none;
  width:100%;
  height:100%;
}

/* FAQ */
.accordion-item{
  border:1px solid rgba(17,18,20,.08);
  border-radius:12px!important;
  margin-bottom:.75rem;
  overflow:hidden;
}
.accordion-button{
  font-weight:700;
  padding:1.25rem;
  background:#fff;
  border:none;
  box-shadow:none;
}
.accordion-button:not(.collapsed){
  background:var(--bg-soft);
  color:var(--ink);
}
.accordion-body{
  padding:1.25rem;
  color:var(--muted);
}

/* Contact */
.contact-box{
  background:var(--bg-soft);
  border-radius:16px;
  padding:1.5rem;
}
.contact-line{
  display:flex;
  align-items:center;
  gap:1rem;
  padding:.75rem 0;
  text-decoration:none;
  color:var(--ink);
  border-bottom:1px solid rgba(17,18,20,.06);
}
.contact-line:last-child{
  border-bottom:none;
}
.contact-line i{
  color:var(--taxi-yellow);
  font-size:1.2rem;
  width:24px;
  text-align:center;
}
.form-card{
  background:#fff;
  border-radius:var(--radius);
  box-shadow:var(--shadow);
  padding:2rem;
}
.form-control,
.form-select{
  border-radius:16px;
  padding:.9rem 1rem;
  border:1px solid rgba(17,18,20,.12);
  font-size:1rem;
}
.form-control:focus,
.form-select:focus{
  border-color:var(--taxi-yellow);
  box-shadow:0 0 0 3px rgba(247,181,0,.1);
}
.form-label{
  font-weight:600;
  margin-bottom:.5rem;
  color:var(--ink);
}
.note{
  background:var(--bg-soft);
  border-left:3px solid var(--taxi-yellow);
  padding:.75rem 1rem;
  border-radius:8px;
  font-size:.9rem;
  color:var(--muted);
}

/* Footer */
.footer{
  background:#0f1114;
  color:#e5e7eb;
  padding:4rem 0 2rem;
}
.footer a{
  color:#e5e7eb;
  text-decoration:none;
  transition:color .2s;
}
.footer a:hover{
  color:var(--taxi-yellow);
}
.footer-line{
  display:flex;
  align-items:center;
  gap:.75rem;
  margin-bottom:.75rem;
  font-size:.95rem;
}
.footer-line i{
  color:var(--taxi-yellow);
  width:20px;
  text-align:center;
}
.footer-links{
  display:flex;
  flex-direction:column;
  gap:.5rem;
}
.footer-links a{
  font-size:.95rem;
}

/* Floating CTA */
.floating-cta{
  position:fixed;
  bottom:0;
  left:0;
  right:0;
  background:rgba(255,255,255,.98);
  backdrop-filter:blur(10px);
  border-top:1px solid rgba(17,18,20,.08);
  padding:1rem;
  z-index:1000;
  box-shadow:0 -4px 20px rgba(17,18,20,.1);
}
.floating-cta .btn{
  width:100%;
  justify-content:center;
}

/* Reveal animations */
[data-reveal]{
  opacity:0;
  transform:translateY(20px);
  transition:opacity .6s ease, transform .6s ease;
}
[data-reveal].is-in{
  opacity:1;
  transform:translateY(0);
}

/* Badge */
.badge-soft{
  background:rgba(247,181,0,.12);
  color:var(--ink);
  padding:.35rem .7rem;
  border-radius:999px;
  font-size:.8rem;
  font-weight:700;
}

/* ============================================
   RESPONSIVE - MOBILE & TABLETTE
   ============================================ */

/* Mobile (max-width: 767.98px) */
@media (max-width: 767.98px){
  /* Sections */
  .section{
    padding:50px 0;
  }
  .hero{
    padding:80px 0 50px;
  }
  
  /* Typography */
  .hero h1{
    font-size:2rem;
    line-height:1.2;
  }
  .hero .lead{
    font-size:1.1rem;
  }
  .section-title{
    font-size:1.75rem;
  }
  .section-kicker{
    font-size:.7rem;
  }
  
  /* Navbar */
  .navbar{
    padding:.5rem 0;
  }
  .navbar-brand{
    font-size:.9rem;
  }
  .navbar-brand span{
    font-size:.85rem;
  }
  .navbar .nav-link{
    padding:.75rem 1rem;
    font-size:.95rem;
  }
  .navbar-collapse{
    margin-top:1rem;
    padding-top:1rem;
    border-top:1px solid rgba(17,18,20,.08);
  }
  
  /* Buttons */
  .btn-taxi,
  .btn-soft,
  .btn-outline-ink{
    padding:.75rem 1.25rem;
    font-size:.95rem;
  }
  .btn-taxi.btn-lg,
  .btn-soft.btn-lg{
    padding:.9rem 1.4rem;
    font-size:1rem;
  }
  
  /* Hero */
  .hero-art{
    padding:1.5rem 0;
    margin-top:2rem;
  }
  .hero-badge{
    top:10px;
    left:10px;
    padding:.75rem 1rem;
  }
  .badge-title{
    font-size:.85rem;
  }
  .badge-sub{
    font-size:.75rem;
  }
  .hero-ring{
    display:none;
  }
  .trust-row{
    gap:1rem;
    margin-top:1.5rem;
  }
  .trust-item{
    font-size:.85rem;
  }
  
  /* Stats */
  .stat{
    padding:1.25rem;
    margin-bottom:1rem;
  }
  .stat-num{
    font-size:2rem;
  }
  .stat-label{
    font-size:.85rem;
  }
  
  /* About */
  .about-media{
    min-height:300px;
    margin-bottom:2rem;
  }
  .about-stamp{
    top:10px;
    right:10px;
    padding:1rem;
  }
  .stamp-num{
    font-size:1.5rem;
  }
  .stamp-txt{
    font-size:.75rem;
  }
  .about-logo{
    height:300px;
    padding:.75rem;
  }
  .checklist li{
    font-size:.95rem;
    margin:.75rem 0;
  }
  
  /* Service cards */
  .service-card{
    margin-bottom:1.5rem;
  }
  .service-img{
    height:180px;
  }
  .service-icon{
    width:60px;
    height:60px;
    top:140px;
    right:15px;
    border-width:4px;
  }
  .service-icon i{
    font-size:1.5rem;
  }
  .service-body{
    padding:1.5rem;
  }
  .service-body h3{
    font-size:1.2rem;
  }
  
  /* Feature */
  .feature{
    padding:50px 0;
  }
  .feature-card{
    padding:1.5rem;
    margin-bottom:1.5rem;
  }
  .feature-ico{
    width:70px;
    height:70px;
  }
  .feature-ico i{
    font-size:1.7rem;
  }
  .feature-card h3{
    font-size:1.05rem;
  }
  
  /* CPAM */
  .cpam-card{
    padding:1.5rem;
    margin-top:2rem;
  }
  .info-grid{
    grid-template-columns:1fr;
    gap:.75rem;
  }
  .info-item{
    font-size:.95rem;
  }
  .step{
    margin-bottom:1rem;
  }
  .step-n{
    width:35px;
    height:35px;
    font-size:1rem;
  }
  
  /* Partners */
  .partner-card{
    padding:1.5rem;
    margin-bottom:1.5rem;
  }
  .partner-ico{
    width:60px;
    height:60px;
  }
  .partner-ico i{
    font-size:1.7rem;
  }
  .partner-card h3{
    font-size:1.2rem;
  }
  
  /* CTA Strip */
  .cta-strip{
    padding:1.5rem;
    flex-direction:column;
    align-items:stretch;
  }
  .cta-strip > div{
    width:100%;
  }
  .cta-strip .btn{
    width:100%;
    justify-content:center;
  }
  
  /* Zones */
  .zones-pill{
    gap:.5rem;
  }
  .zones-pill span{
    padding:.4rem .8rem;
    font-size:.85rem;
  }
  
  /* Map */
  .map-card{
    padding:1.25rem;
    margin-top:2rem;
  }
  
  /* Contact */
  .contact-box{
    padding:1.25rem;
    margin-bottom:2rem;
  }
  .contact-line{
    padding:.6rem 0;
    font-size:.95rem;
  }
  .form-card{
    padding:1.5rem;
  }
  .form-control,
  .form-select{
    padding:.8rem .9rem;
    font-size:.95rem;
  }
  
  /* Footer */
  .footer{
    padding:3rem 0 1.5rem;
    text-align:center;
  }
  .footer > .container > .row > div{
    margin-bottom:2rem;
  }
  .footer-links{
    align-items:center;
  }
  
  /* Topbar */
  .topbar{
    font-size:.8rem;
  }
  .topbar .container > div{
    flex-direction:column;
    gap:.5rem;
    text-align:center;
  }
  .topbar .d-flex.gap-4{
    flex-direction:column;
    gap:.5rem!important;
  }
  
  /* Kicker */
  .kicker{
    font-size:.75rem;
    flex-wrap:wrap;
  }
  .kicker-pill{
    font-size:.7rem;
    padding:.3rem .6rem;
  }
}

/* Tablet (768px - 991.98px) */
@media (min-width: 768px) and (max-width: 991.98px){
  .section{
    padding:70px 0;
  }
  .hero{
    padding:100px 0 70px;
  }
  .hero h1{
    font-size:2.5rem;
  }
  .section-title{
    font-size:2rem;
  }
  .service-card{
    margin-bottom:2rem;
  }
  .feature-card{
    margin-bottom:2rem;
  }
  .partner-card{
    margin-bottom:2rem;
  }
}

/* Small mobile (max-width: 575.98px) */
@media (max-width: 575.98px){
  .container{
    padding-left:1rem;
    padding-right:1rem;
  }
  .hero h1{
    font-size:1.75rem;
  }
  .section-title{
    font-size:1.5rem;
  }
  .stat-num{
    font-size:1.75rem;
  }
  .btn-taxi.btn-lg,
  .btn-soft.btn-lg{
    width:100%;
    justify-content:center;
  }
  .btn-taxi,
  .btn-soft,
  .btn-outline-ink{
    width:100%;
    justify-content:center;
  }
  .trust-row{
    flex-direction:column;
    gap:.75rem;
  }
  .zones-pill span{
    font-size:.8rem;
    padding:.35rem .7rem;
  }
  .navbar-brand span.fw-bold{
    font-size:.8rem;
  }
  .hero .lead{
    font-size:1rem;
  }
  .kicker{
    font-size:.7rem;
  }
}

/* Large screens adjustments */
@media (min-width: 1200px){
  .section-title{
    font-size:3rem;
  }
  .hero h1{
    font-size:3.5rem;
  }
}
