/* General */
* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    font-family: Arial, sans-serif;
  }
  
  body {
    line-height: 1.6;
    color: #333;
    padding-top: 70px; 
  }
  
  /* Navbar */
  .navbar {
    background: #222;
    color: #fff;
    padding: 1rem 0;
  }
  
  .navbar .container {
    display: flex;
    justify-content: space-between;
    align-items: center;
  }
  
  .navbar .nav-links {
    display: flex;
    list-style: none;
  }
  
  .navbar .nav-links li {
    margin: 0 1rem;
  }
  
  .navbar .nav-links a {
    color: #fff;
    text-decoration: none;
  }

  .navbar-brand img {
    border-radius: 50%; /* Para hacer la imagen circular */
    margin-right: 10px; /* Espacio entre la imagen y el texto */
  }
  
  .btn-llamada {
    background: #fcbf49;
    border: none;
    padding: 0.5rem 1rem;
    color: #fff;
    cursor: pointer;
  }

  /* dropdown */

  .dropdown-menu {
    background-color: #222; /* Fondo oscuro */
  }
  
  .dropdown-item {
    color: #fff;
  }
  
  .dropdown-item:hover {
    background-color: #fcbf49; /* Fondo amarillo al pasar el mouse */
    color: #000; /* Texto negro */
  }
  
  
/* Hero Section */
.hero {
  height: 60vh; /* Asegura que el carrusel ocupe toda la pantalla */
  overflow: hidden;
  display: contents;
  align-items: center;
  justify-content: center;
}

.carousel-item {
  height: 60vh;
  display: flex; /* Centra las imágenes dentro del contenedor */
  align-items: center;
  justify-content: center;
}

.carousel-item img {
  object-fit: contain; /* Asegura que las imágenes se ajusten sin recortarse */
  width: 100%; /* Ancho completo */
  height: 100%; /* Ajusta la altura al contenedor */
  max-width: 100%; /* La imagen no supera el ancho del contenedor */
  max-height: 100%; /* La imagen no supera la altura del contenedor */
}

@media (min-width: 992px) {
  .hero {
    height: 80vh; /* Aumenta la altura para pantallas grandes */
  }

  .carousel-item {
    height: 80vh; /* Aplica el mismo ajuste */
  }
}

@media (max-width: 768px) {
  .hero {
    height: 60vh; /* Reduce la altura para móviles */
  }

  .carousel-item {
    height: 60vh; /* Aplica el mismo ajuste */
  }
}

@media (max-width: 576px) {
  .hero {
    height: 50vh; /* Aún más pequeño para dispositivos muy pequeños */
  }

  .carousel-item {
    height: 50vh;
  }
}
  
  /* Servicios */
  .servicios {
    background: #f9f9f9;
    padding: 3rem 1rem;
  }
  
  .servicios h3 {
    text-align: center;
    margin-bottom: 2rem;
  }
  
  .servicios-grid {
    display: flex;
    gap: 2rem;
    justify-content: center;
  }
  
  .servicio {
    text-align: center;
  }
  
  .servicio i {
    font-size: 2rem;
    color: #fcbf49;
  }
  
  /* Solicitar taxi */

  #solicitar-taxi {
    background: linear-gradient(135deg, #ffc107, #ffeb3b);
    padding: 4rem 0;
    background-color: #ffc107; /* Amarillo brillante */
  color: #343a40; /* Texto oscuro para buen contraste */
  }

  #solicitar-taxi h2 {
    text-shadow: 2px 2px 5px rgba(0, 0, 0, 0.2); /* Sombra suave para destacar el título */
  }
  
  #solicitar-taxi a {
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.2);
    transition: transform 0.2s ease, box-shadow 0.2s ease;
  }
  
  #solicitar-taxi a:hover {
    transform: scale(1.05);
    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.3);
  }

  #solicitar-taxi .btn {
    font-size: 1.2rem; /* Tamaño de fuente más grande */
    font-weight: 600; /* Fuente seminegrita */
    padding: 0.75rem 1.5rem; /* Botones más espaciosos */
    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.1); /* Sombra sutil */
  }

  #solicitar-taxi .btn:hover {
    box-shadow: 0 10px 20px rgba(0, 0, 0, 0.2); /* Efecto al pasar el cursor */
  }
  
  /* viaje programado */
  #viajes-programados {
    background-image: linear-gradient(to right, #fcbf49, #f77f00);
    color: #fff;
  }
  
  #viajes-programados h2 {
    font-weight: bold;
    font-size: 2.5rem;
  }

  #viajes-programados img {
    max-width: 100%; /* Imagen responsiva */
    height: auto; /* Mantiene proporciones */
    border: 5px solid #fff; /* Borde blanco */
    border-radius: 15px; /* Bordes redondeados */
    box-shadow: 0 10px 20px rgba(0, 0, 0, 0.2); /* Sombra envolvente */
    transition: transform 0.3s ease, box-shadow 0.3s ease;
  }
  
  #viajes-programados img:hover {
    transform: scale(1.05); /* Efecto de ampliación al pasar el cursor */
    box-shadow: 0 15px 30px rgba(0, 0, 0, 0.3); /* Sombra más pronunciada */
  }
  
  #viajes-programados .btn {
    border-radius: 50px;
    padding: 15px 30px;
    font-size: 1.2rem;
    transition: transform 0.2s ease-in-out;
    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.1); /* Sombra para destacar */
    font-weight: 600; /* Negrita */
  }
  
  #viajes-programados .btn:hover {
    transform: scale(1.1);
    box-shadow: 0 10px 20px rgba(0, 0, 0, 0.2); /* Más sombra al pasar el cursor */
  }

  /* Empresariales   */
  #servicios-empresariales {
    background: #f8f9fa; /* Fondo claro */
    padding: 50px 0;
    color: #343a40; /* Texto oscuro */

  }
  
  #servicios-empresariales .btn {
    font-weight: bold;
    text-transform: uppercase;
    font-size: 1.2rem; /* Tamaño de fuente */
    font-weight: 600; /* Negrita */
    padding: 0.75rem 1.5rem; /* Botones espaciosos */
    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.1); /* Sombra para destacar */
  }
  #servicios-empresariales .btn:hover {
    box-shadow: 0 10px 20px rgba(0, 0, 0, 0.2); /* Más sombra al pasar el cursor */
  }
  
  #servicios-empresariales img {
    /* box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1); */
    max-width: 100%; /* Imagen responsiva */
    height: auto; /* Mantiene proporciones */
    border-radius: 15px; /* Bordes redondeados */
    box-shadow: 0 10px 20px rgba(0, 0, 0, 0.2); /* Sombra envolvente */
    transition: transform 0.3s ease, box-shadow 0.3s ease;
  }
  #servicios-empresariales img:hover {
    transform: scale(1.05); /* Efecto de ampliación al pasar el cursor */
    box-shadow: 0 15px 30px rgba(0, 0, 0, 0.3); /* Sombra más pronunciada */
  }
  /* intermunicipales   */
  #viajes-intermunicipales {
    background: #fa0202;
    background-color: #fa0202;
    padding: 50px 0;
    color: #343a40; /* Texto oscuro */
  }
  
  #viajes-intermunicipales h2 {
    font-weight: bold;
    font-size: 2.5rem;
  }
  
  #viajes-intermunicipales .btn {
    padding: 15px 30px;
    font-size: 1.2rem;
    border-radius: 5px;
  }
  
  #viajes-intermunicipales img {
    max-width: 100%; /* Imagen responsiva */
    height: auto; /* Mantiene proporciones */
    border-radius: 15px; /* Bordes redondeados */
    box-shadow: 0 10px 20px rgba(0, 0, 0, 0.2); /* Sombra envolvente */
    transition: transform 0.3s ease, box-shadow 0.3s ease;
  }

  #viajes-intermunicipales img:hover {
    transform: scale(1.05); /* Efecto de ampliación al pasar el cursor */
    box-shadow: 0 15px 30px rgba(0, 0, 0, 0.3); /* Sombra más pronunciada */
  }

  #viajes-intermunicipales .btn-success {
    background-color: #25d366; /* Verde de WhatsApp */
    border-color: #25d366;
  }
  
  #viajes-intermunicipales .btn-success:hover {
    background-color: #1ebe57;
    box-shadow: 0 10px 20px rgba(0, 0, 0, 0.2); /* Más sombra al pasar el cursor */
  }
  
  #viajes-intermunicipales .btn-warning:hover {
    background-color: #e6a800;
  }
  
  /* Nosotros */
  #nosotros {
    background-color: #f8f9fa; /* Fondo claro */
    color: #343a40; /* Texto oscuro */
  }
  
  #nosotros img {
    max-width: 100%; /* Imagen responsiva */
    height: auto; /* Mantiene proporciones */
    border-radius: 15px; /* Bordes redondeados */
    box-shadow: 0 10px 20px rgba(0, 0, 0, 0.2); /* Sombra envolvente */
    transition: transform 0.3s ease, box-shadow 0.3s ease;
  }
  
  #nosotros img:hover {
    transform: scale(1.05); /* Efecto de ampliación al pasar el cursor */
    box-shadow: 0 15px 30px rgba(0, 0, 0, 0.3); /* Sombra más pronunciada */
  }
  
  #nosotros h2 {
    font-size: 2.5rem; /* Tamaño grande para destacar el título */
  }
  
  #nosotros p {
    font-size: 1.1rem; /* Tamaño legible */
    line-height: 1.8; /* Espaciado para mejor lectura */
  }
  
  #nosotros .btn {
    font-size: 1.2rem; /* Botón llamativo */
    padding: 0.75rem 1.5rem; /* Espacio interno amplio */
    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.1); /* Sombra para resaltar */
  }
  
  #nosotros .btn:hover {
    box-shadow: 0 10px 20px rgba(0, 0, 0, 0.2); /* Sombra más pronunciada */
  }

  /* Misión Visión */
  #mision-vision {
    background-color: #f8f9fa; /* Fondo claro */
    color: #343a40; /* Texto oscuro */
  }
  
  #mision-vision .p-4 {
    transition: transform 0.3s ease, box-shadow 0.3s ease;
  }
  
  #mision-vision .p-4:hover {
    transform: scale(1.05); /* Aumenta ligeramente al pasar el cursor */
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.2); /* Sombra más pronunciada */
  }
  
  #mision-vision h2 {
    font-size: 2rem; /* Título destacado */
  }
  
  #mision-vision p {
    font-size: 1.1rem; /* Texto legible */
    line-height: 1.8; /* Espaciado cómodo */
    color: #555; /* Texto gris */
  }
  
  #mision-vision i {
    transition: color 0.3s ease;
  }
  
  #mision-vision i:hover {
    color: #343a40; /* Cambia de color al pasar el cursor */
  }

  /* Estilo para la línea de tiempo */
  /* Contenedor de la línea de tiempo */
.timeline-container {
  display: flex;
  justify-content: space-between;
  align-items: center;
  overflow-x: auto; /* Habilita desplazamiento horizontal */
  padding: 20px;
  gap: 30px;
  scroll-behavior: smooth;
  position: relative;
}

/* Ítems de la línea de tiempo */
.timeline-item {
  background: #ffffff;
  border: 2px solid #f0f0f0;
  border-radius: 10px;
  padding: 20px;
  min-width: 200px;
  max-width: 250px;
  text-align: center;
  box-shadow: 0 5px 15px rgba(0, 0, 0, 0.1);
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.timeline-item:hover {
  transform: scale(1.1); /* Efecto de zoom */
  box-shadow: 0 10px 20px rgba(0, 0, 0, 0.2);
}

.timeline-item h3 {
  font-size: 1.5rem;
  margin-bottom: 10px;
  color: #007bff;
}

.timeline-item p {
  font-size: 1rem;
  color: #555;
}

/* Marcador de año */
.timeline-item::before {
  content: attr(data-year);
  position: absolute;
  top: -25px;
  left: 50%;
  transform: translateX(-50%);
  background: #007bff;
  color: #fff;
  font-size: 1rem;
  font-weight: bold;
  padding: 5px 10px;
  border-radius: 20px;
  box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
}

/* Conexión de líneas */
.timeline-container::after {
  content: '';
  position: absolute;
  top: 50%;
  left: 0;
  right: 0;
  height: 2px;
  background: #007bff;
  z-index: -1;
}


  /* Contacto */
  .contacto form {
    display: flex;
    flex-direction: column;
    gap: 1rem;
  }
  
  .contacto input,
  .contacto textarea,
  .contacto button {
    width: 100%;
    padding: 0.7rem;
  }
  
  .contacto button {
    background: #fcbf49;
    color: #fff;
    border: none;
    cursor: pointer;
  }
  
  /* Footer */
  .footer {
    background: #222;
    color: #fff;
    text-align: center;
    padding: 1rem;
  }
  .hero {
  background: url('https://via.placeholder.com/1920x800') no-repeat center center/cover;
}

.card {
  box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
}

.card:hover {
  transform: translateY(-5px);
  transition: transform 0.3s;
}
  