@import url('https://fonts.googleapis.com/css2?family=Lato:wght@400;700&display=swap');

body {
    font-family: "Montserrat", sans-serif; /* Fuente más moderna y legible */
    padding: 20px;
    background-color: #f0f8ff; /* Fondo suave */
    line-height: 1.6; /* Mejora la legibilidad */
}
header {
    background-size: cover; /* Ajusta la imagen para cubrir el área del header */
    background-position: center; /* Centra la imagen */
    color: white; /* Color del texto */
    padding: 20px; /* Espacio alrededor del texto */
    text-align: center; /* Alineación del texto */
  }
  header::after {
    content: "";
    position: absolute;
  
    top: 120px;
    left: 50;
    width: 0%;
    height: 50%;
    background: rgba(0, 0, 0, 0.3); /* Superpone un color oscuro semitransparente */
    z-index: 1;
    filter: none; /* No aplicar desenfoque al overlay */
    -webkit-filter: none; /* Soporte para Safari */
  }
  header h2 {
    position: relative;
    z-index: 2; /* Asegura que el texto esté sobre el overlay */
  }

.navbar {
    background-color: #333; /* Fondo del navbar */
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1); /* Sombra sutil */
    border-radius: 10px;
}

.navbar-brand img {
    width: 60px; /* Ajusta el tamaño según tus necesidades */
    height: 60px;
    margin-left: 10px;
}

.nav-link {
    color: #fff !important; /* Color de enlaces */
    font-size: 20px; /* Tamaño de fuente para los enlaces */
    transition: color 0.3s; /* Transición suave para el hover */
}

.nav-link:hover {
    color: #007bff; /* Color al pasar el ratón */
}

.nav-link.active {
    font-weight: bold; /* Negrita para el enlace activo */
}

.dropdown-menu {
    background-color: #ffffff; /* Color de fondo del menú desplegable */
    border-radius: 5px; /* Bordes redondeados para el menú */
}

.dropdown-item {
    transition: background-color 0.3s; /* Transición suave para el hover */
}

.dropdown-item:hover {
    background-color: #e9ecef; /* Color de fondo al pasar el ratón */
}

.form-control {
    width: 100%; /* Ancho del campo de búsqueda al 100% */
    max-width: 300px; /* Ancho máximo del campo de búsqueda */
    margin: 10px 0; /* Margen para separación */
}

/* Estilos para las tarjetas */
.card-title {
    font-size: 20px;
    font-weight: bold;
    color: #30475E; /* Color atractivo para el título */
}

.card-text {
    font-size: 16px;
    text-align: justify; /* Justificación del texto */
    color: #555; /* Color del texto */
}

/* Responsive Design */
@media (max-width: 1200px) {
    .nav-link {
        font-size: 22px; /* Tamaño de fuente más pequeño en pantallas medianas */
    }
}

@media (max-width: 992px) {
    .nav-link {
        font-size: 20px; /* Tamaño de fuente más pequeño en pantallas grandes */
    }
}

@media (max-width: 768px) {
    .navbar {
        border-radius: 0; /* Sin bordes redondeados en móviles */
    }

    .nav-link {
        font-size: 18px; /* Tamaño de fuente más pequeño en móviles */
    }

    .form-control {
        width: 100%; /* Campo de búsqueda al 100% */
        margin: 5px 0; /* Ajustar margen en móviles */
    }
}

@media (max-width: 576px) {
    .nav-link {
        font-size: 16px; /* Tamaño de fuente más pequeño en pantallas muy pequeñas */
    }

    .form-control {
        max-width: 100%; /* Asegura que el campo de búsqueda ocupe todo el ancho */
    }
}

.animated-heading {
    position: relative;
    overflow: hidden;
    white-space: nowrap;
    display: inline-block;
    animation: slide-in 2s ease-out forwards;
  }

  @keyframes slide-in {
    0% {
      transform: translateX(-100%);
    }
    100% {
      transform: translateX(0);
    }
  }