  body{
      font-family: 'Segoe UI', sans-serif;
      background: linear-gradient(180deg,#fff,#fff7f2);
    }
    .navbar-brand span{
      color:#2e7d32;
      font-weight:700;
    }
    .hero{
      padding: 80px 0 120px;
      text-align:center;
    }
    .hero h1{
      font-size: 3rem;
      font-weight:800;
    }
    .hero h1 span{ color:#2e7d32; }
    .hero p{ color:#6c757d; }

    .search-box{
      background:#fff;
      border-radius:20px;
      padding:20px;
      box-shadow:0 10px 30px rgba(0,0,0,.08);
    }

    .btn-orange{
      background: linear-gradient(90deg,#2e7d32,#67f09b);
      color:#fff;
      border:none;
    }
    .btn-orange:hover{ opacity:.9; }

    @media(max-width:768px){
      .hero h1{ font-size:2rem; }
    }

    .footer-section{
  background: linear-gradient(180deg,#1f140d,#2b1c12);
}

.text-orange{
  color:#2e7d32;
}

.footer-links li{
  margin-bottom:8px;
}

.footer-links a{
  color:#d1d1d1;
  text-decoration:none;
  font-size:14px;
}

.footer-links a:hover{
  color:#2e7d32;
}

.social{
  width:38px;
  height:38px;
  border-radius:50%;
  background:#2e2e2e;
  display:flex;
  align-items:center;
  justify-content:center;
  color:#fff;
  text-decoration:none;
  transition:.3s;
}

.social:hover{
  background:#2e7d32;
  color:#fff;
}



.logo {
  object-fit: contain;
}
.navbar-brand span {
  color: #2e7d32; /* orange de la marque */
}

.hero{
  position: relative;
  height: 100vh;
  overflow: hidden;
}

.hero-slide{
  height: 100vh;
  background-size: cover;
  background-position: center;
}

.hero::before{
  content:"";
  position:absolute;
  inset:0;
  background:rgba(0,0,0,0.5);
  z-index:1;
}

.hero-content{
  position:absolute;
  inset:0;
  z-index:2;
  display:flex;
  align-items:center;
}

.hero h1,
.hero p{
  color:#fff;
}

.hero h1 span{
  color:#2e7d32;
}

.navbar .nav-link {
  display: inline-block; /* permet de limiter la largeur au texte */
  position: relative;
  padding: 8px 0;
}

.navbar .nav-link::after{
  content:"";
  position:absolute;
  left:0;
  bottom:-5px;
  width:0;
  height:2px;
  background:#2e7d32;
  transition: width .3s;
}

.navbar .nav-link:hover::after,
.navbar .nav-link.active::after{
  width:100%;
}

.navbar .nav-link.active{
  font-weight:600;
}


.navbar .nav-link {
  position: relative;
  font-weight: 500;
  color: #333;
}

.navbar-nav .nav-item {
  margin: 0 0.7rem; /* espace entre les liens */
}

.navbar .nav-link {
  font-weight: 500;
  color: #333;
  padding: 0.5rem 0;
  position: relative;
  transition: color 0.3s;
}

.navbar .nav-link:hover,
.navbar .nav-link.active {
  color: #2e7d32;
}


.text-orange{
  color:#2e7d32;
}

.btn-orange{
  background: linear-gradient(90deg,#2e7d32,#67f09b);
  border:none;
}

.btn-orange:hover{
  opacity:.9;
}

.contact-card{
  background:#fff;
  padding:20px;
  border-radius:12px;
  box-shadow:0 5px 20px rgba(0,0,0,.05);
}

.contact-card .icon{
  color:#2e7d32;
  font-size:22px;
  margin-bottom:10px;
}

.form-card{
  background:#fff;
  padding:30px;
  border-radius:16px;
  box-shadow:0 10px 30px rgba(0,0,0,.08);
}

.focus-orange{
  border:2px solid #2e7d32;
}

@media(max-width:768px){
  .form-card{
    padding:20px;
  }
}


.service-card{
  background:#fff;
  border-radius:14px;
  overflow:hidden;
  box-shadow:0 10px 25px rgba(0,0,0,.08);
  transition:.3s;
}

.service-card:hover{
  transform:translateY(-6px);
}

.service-img{
  width:100%;
  height:220px;
  object-fit:cover;
}

.service-body{
  padding:20px;
}

.service-body h5{
  font-weight:600;
  margin-bottom:10px;
}

.service-body p{
  color:#6c757d;
  font-size:15px;
  line-height:1.6;
}

.btn-service{
  background: linear-gradient(90deg,#2e7d32,#67f09b);
  color:#fff;
  border:none;
  border-radius:8px;
}

.btn-service:hover{
  opacity:.9;
}


.stats-section{
  background:#f3efe9;
  padding:80px 0;
}

.stats-title{
  font-weight:700;
  margin-bottom:10px;
}

.stats-subtitle{
  max-width:700px;
  margin:0 auto;
  color:#6c757d;
  font-size:15px;
}

.stat-card{
  background:#fff;
  border-radius:14px;
  padding:35px 20px;
  box-shadow:0 8px 25px rgba(0,0,0,.08);
  transition:.3s;
  height:100%;
}

.stat-card:hover{
  transform:translateY(-5px);
}

.stat-icon{
  font-size:38px;
  color:#2e7d32;
  margin-bottom:15px;
}

.stat-card h3{
  color:#2e7d32;
  font-weight:700;
  font-size:28px;
  margin-bottom:5px;
}

.stat-card p{
  margin:0;
  color:#6c757d;
  font-size:14px;
}


.card {
  font-family: 'Arial', sans-serif;
  border: 1px solid #eee;
  border-radius: 15px;
  padding: 20px;
  width: 350px;
  box-shadow: 0 4px 8px rgba(0,0,0,0.05);
  position: relative;
  background: #fff;
}

.badge {
  background: #fdf2d2;
  color: #856404;
  font-size: 12px;
  padding: 4px 10px;
  border-radius: 20px;
  display: inline-block;
  margin-bottom: 15px;
  font-weight: bold;
}

.route-container {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 20px;
}

.label {
  display: block;
  font-size: 12px;
  color: #888;
}

.city {
  font-size: 1.2rem;
  font-weight: bold;
}

.arrow {
  background: #f0f0f0;
  width: 30px;
  height: 30px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
}

.details {
  font-size: 13px;
  color: #666;
  border-bottom: 1px solid #eee;
  padding-bottom: 15px;
  margin-bottom: 15px;
}

.footer {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.price-label {
  display: block;
  font-size: 12px;
  color: #888;
}

.price {
  color: #2e7d32;
  font-size: 1.5rem;
  font-weight: bold;
}

.btn-reserve {
  border: 2px solid #2e7d32;
  background: transparent;
  color: #2e7d32;
  padding: 8px 20px;
  border-radius: 8px;
  cursor: pointer;
  font-weight: bold;
  transition: 0.3s;
}

.btn-reserve:hover {
  background: #2e7d32;
  color: white;
}



.hero-companies {
  height: 300px;
  background: linear-gradient(
      rgba(0, 0, 0, 0.55),
      rgba(0, 0, 0, 0.55)
    ),
    url("/bootstrap/img/slide2.jpeg") center / cover no-repeat;
}

    .btn-reserve { background-color: #2e7d32; color: #fff; border: none; padding: 0.5rem 1rem; }
    .btn-reserve:hover { background-color: #2e7d32; }


    .company-card {
  background: #fff;
  border-radius: 16px;
  overflow: hidden;
  transition: all 0.35s ease;
  box-shadow: 0 10px 25px rgba(0,0,0,0.05);
}

.company-card:hover {
  transform: translateY(-8px);
  box-shadow: 0 20px 40px rgba(0,0,0,0.12);
}

.company-logo-box {
  background: #f8f9fa;
  padding: 25px;
}

.company-logo-box img {
  height: 80px;
  object-fit: contain;
}

.company-body {
  padding: 25px;
}

.company-rating i {
  color: #2e7d32;
}

.company-info {
  list-style: none;
  padding: 0;
  margin: 15px 0 0;
  font-size: 0.9rem;
}

.company-info li {
  margin-bottom: 6px;
  color: #555;
}

.company-info i {
  color: #2e7d32;
  margin-right: 6px;
}

.mission-card {
  transition: all 0.3s ease;
}
.mission-card:hover {
  transform: translateY(-6px);
  box-shadow: 0 15px 35px rgba(0,0,0,0.1);
}
 .btn-reserve { background-color: #2e7d32; color: #fff; border: none; padding: 0.5rem 1rem; }
    .btn-reserve:hover { background-color: #2e7d32; }


    .logo {
  width: 80px;
  height: 50px;
  object-fit: contain;
}