/* Estilos generales */
body {
    font-family: 'Roboto', sans-serif;
    line-height: 1.6;
    color: #333;
    background-color: #343a40;
    color: white;
    padding: 0;
    margin: 0;
}

header {
    background-color: #000;
    color: white;
    padding: 1rem 0;
}

/* Estilos para secciones específicas */
#inicio {
    text-align: center;
    position: relative;
    width: 100%;
    padding: 0;
    margin: 0;
    height: 500px;
    overflow: hidden;
    display: flex;
    align-items: center;
}

#inicio img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    filter: brightness(70%); /* Desvanecer la imagen */
}

#inicio h2 {
    position: absolute;
    top: 40%; /* Ajuste para subir el texto */
    left: 2%; /* Texto del lado izquierdo */
    transform: translateY(-50%);
    font-size: 2.5rem;
    color: white;
    text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.5);
    font-weight: 700;
    text-align: left; /* Alineación del texto a la izquierda */
    width: 45%; /* Ancho del texto */
}

#estadisticas {
    position: absolute;
    bottom: 0;
    right: 2%; /* Contadores del lado derecho */
    width: 96%; /* Ancho de los contadores */
    padding: 2rem;
    display: flex;
    justify-content: space-around; /* Separar los contadores */
    background: rgba(0, 0, 0, 0.3);
}

#estadisticas .contador-container {
    text-align: center;
    margin-bottom: 1rem; /* Espacio entre los contadores */
}

#estadisticas .contador {
    font-size: 2.5rem;
    font-weight: 700;
    color: #007bff;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column; /* Icono arriba del número */
}

#estadisticas .contador i {
    margin-bottom: 0.5rem; /* Espacio entre el icono y el número */
}

#servicios, #nosotros, #contacto, #clientes, #valores {
    background-color: white; /* Fondo blanco */
    padding: 3rem 2rem;
    border-radius: 8px;
    margin-bottom: 2rem;
    color: black; /* Texto negro */
}

.servicio-cuadro {
    border: 1px solid #ddd; /* Borde del cuadro */
    border-radius: 8px; /* Bordes redondeados */
    padding: 1rem; /* Espaciado interno */
    margin-top: 1rem; /* Espaciado superior */
}

.servicio-cuadro ul {
    list-style: none; /* Elimina los puntos de la lista */
    padding: 0;
}

.servicio-cuadro li {
    margin-bottom: 0.5rem; /* Espaciado entre los elementos de la lista */
}

/* Estilos para el formulario de contacto */
#contacto form {
    max-width: 500px;
    margin: 0 auto;
}

#contacto form label {
    display: block;
    margin-top: 1rem;
}

#contacto form input, #contacto form textarea {
    width: 100%;
    padding: 0.75rem;
    margin-top: 0.5rem;
    border: 1px solid #ccc;
    border-radius: 4px;
    background-color: #fff;
    color: #333;
}

#contacto form button {
    background-color: #007bff;
    color: white;
    padding: 0.75rem 1.5rem;
    border: none;
    border-radius: 4px;
    cursor: pointer;
    margin-top: 1rem;
    font-weight: 700;
}

/* Estilos para el pie de página */
footer {
    text-align: center;
    padding: 1rem 0;
    background-color: #212529;
}

footer a {
    color: #007bff;
}

/* Estilos para la cabecera responsiva */
.navbar {
    padding: 0;
    background-color: #000;
}

.navbar-brand img {
    max-height: 80px;
}

.navbar-nav .nav-link {
    color: white;
    font-weight: 700;
}

.navbar-nav {
    align-items: center;
}

.navbar-nav .nav-link {
    padding-top: 0;
    padding-bottom: 0;
}

/* Ajuste del ancho del contenedor principal */
.container {
    width: 95%;
    max-width: 100%;
    padding-right: 15px;
    padding-left: 15px;
    margin: 0 auto;
}

/* Estilos para la sección de clientes */
#clientes img {
    width: 200px;
    height: 100px;
    object-fit: contain;
    margin: 1rem;
}

/* Estilos para el iframe responsivo */
.map-responsive {
    overflow: hidden;
    padding-bottom: 75%;
    position: relative;
    height: 0;
}

.map-responsive iframe {
    left: 0;
    top: 0;
    height: 100%;
    width: 100%;
    position: absolute;
}

/* Estilos para el encabezado fijo solo en dispositivos móviles y tabletas */
@media (max-width: 991.98px) {
    header {
        position: sticky;
        top: 0;
        z-index: 100;
    }

    #inicio h2 {
        width: 95%; /* Ajuste para dispositivos móviles */
        font-size: 2rem; /* Ajuste para dispositivos móviles */
    }

    #estadisticas {
        width: 96%; /* Ajuste para dispositivos móviles */
        right: 2%;
        flex-direction: row; /* Alineación horizontal en dispositivos móviles */
        justify-content: space-around; /* Espacio entre los contadores */
    }

    #estadisticas .contador-container {
        margin-bottom: 1rem; /* Espacio entre los contadores */
        width: 30%; /* Ajuste para dispositivos móviles */
    }

    #estadisticas .contador {
        font-size: 2rem; /* Ajuste para dispositivos móviles */
    }

    #estadisticas .contador i {
        font-size: 1.5rem; /* Ajuste para dispositivos móviles */
        margin-bottom: 0.5rem; /* Espacio entre el icono y el número */
    }

    #estadisticas p {
        font-size: 0.8rem; /* Ajuste para dispositivos móviles */
    }
}

/* Estilos para la sección de valores */
#valores .valores-recuadro {
    display: flex;
    justify-content: space-around;
    flex-wrap: wrap;
}

#valores .valores-recuadro .valor {
    display: flex;
    flex-direction: column;
    align-items: center;
    margin: 1rem;
}

#valores .valores-recuadro .valor .icono-circulo {
    width: 80px;
    height: 80px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 0.5rem;
}

#valores .valores-recuadro .valor .icono-circulo i {
    font-size: 2rem;
}

/* Estilos para las imágenes de Agencia Aduanal y Logística */
#servicios img {
    width: 100%; /* Las imágenes ocupan todo el ancho del contenedor */
    height: 250px; /* Altura fija para ambas imágenes */
    object-fit: cover; /* Las imágenes cubren el área asignada */
}

/* Estilos para Misión y Visión */
#nosotros .mision-vision-container {
    background-color: #f0f0f0; /* Fondo gris claro */
    padding: 1rem;
    border-radius: 8px;
    margin-bottom: 1rem;
}

#nosotros .mision-vision-container h3 {
    color: #007bff; /* Color azul para los títulos */
}

/* Estilo para justificar texto */
#nosotros p {
    text-align: justify;
}

/* Estilos para los iconos de redes sociales en el pie de página */
footer .redes-sociales {
    margin-top: 1rem;
}

footer .redes-sociales a {
    margin: 0 0.5rem;
    color: #007bff;
    font-size: 1.5rem;
}

h2, h3 {
    color: #007bff; /* Color azul para los títulos */
    font-weight: 700; /* Texto en negrita */
    text-transform: uppercase; /* Texto en mayúsculas */
    letter-spacing: 1px; /* Espaciado entre letras */
    margin-bottom: 1.5rem; /* Espacio debajo del título */
}

.float-wa {
    position: fixed;
    width: 60px;
    height: 60px;
    bottom: 40px;
    right: 40px;
    background-color: #25d366;
    color: #FFF;
    border-radius: 50px;
    text-align: center;
    font-size: 30px;
    z-index: 100;
}