/* Cambiar el color de los enlaces de navegación */
.navbar-collapse {
    text-align: center;
    /* Centrar los elementos */
}

.navbar-toggler {
    border-color: #0056b3;
    border-width: 5px;
    /* Color del borde del botón hamburguesa */
}

nav ul {
    list-style: none;
    /* Elimina los puntos de la lista */
    display: flex;
    /* Utiliza flexbox para alinear los elementos en fila */
    gap: 1rem;
    /* Espacio de 1rem entre los elementos de la lista */
}

nav ul li a {
    color: rgb(206, 13, 13);
    /* Color del texto de los enlaces */
    text-decoration: underline;
    /* Subrayado de los enlaces */
    font-weight: bold;
    /* Cambiado de #fff a bold para un peso adecuado */
}

.navbar-toggler-icon {
    color: #ca1f1f;
    /* Color del ícono del botón hamburguesa */
}

.nav-link {
    color: #fff;
    /* Color de los enlaces */
    background-color: #0056b3;
    /* Fondo de los enlaces */
    padding: 10px;
    /* Espaciado interno */
    border-radius: 5px;
    /* Bordes redondeados */
}

/* Cambiar el color al pasar el cursor */
.nav-link:hover {
    color: #290cbe;
    /* Cambia el color del texto al pasar el cursor */
}

/* Efecto de hover para los enlaces en la barra de navegación */
.navbar-nav .nav-link:hover {
    color: #0056b3;
    /* Cambia a cualquier color que desees cuando se pasa el cursor */
}

.navbar-collapse {
    position: absolute;
    /* Se despliega debajo de la barra */
    top: 100%;
    /* Aparece justo debajo del botón */
    right: 0;
    left: auto;
    width: 100%;
    /* Abarca todo el ancho */
}

@media (max-width: 575.98px) {
    .navbar-collapse {
        background-color: #0056b3;
        /* Mantiene el fondo azul */
        width: 100%;
        /* Ocupa todo el ancho de la pantalla */
        left: 0;
        /* Alinear al lado izquierdo */
        /* Otros estilos que desees modificar para pantallas más pequeñas */
    }

    .navbar-toggler {
        border-color: #0056b3;
        /* Color del borde del botón hamburguesa */
        border-width: 5px;
        /* Grosor del borde */
    }

    .custom-small {
        padding: 3px 3px;
        /* Ajusta el padding según tus necesidades */
        font-size: 10px;
        background-color: #9b9797;
        /* Ajusta el tamaño de la fuente */
        color: #fff;
        /* Color del texto, asegúrate de que sea legible */
        border: none;
        /* Elimina el borde por defecto */
        cursor: pointer;
        /* Cambia el cursor al pasar sobre el botón */
    }

    /* Mantener el color de fondo al hacer clic o al estar enfocado */
    .custom-small:active,
    .custom-small:focus {
        background-color: #9b9797;
        /* Mantiene el fondo gris */
        color: #fff;
        /* Mantiene el color del texto */
        outline: none;
        /* Elimina el contorno del botón al estar enfocado */
    }

    /* Efecto de hover para mejorar la interactividad */
    .custom-small:hover {
        background-color: #8c8c8c;
        /* Cambia a un tono más oscuro al pasar el cursor */
    }

    .navbar-nav {
        text-align: left;
        /* Alinear el texto hacia la izquierda */
        padding-left: 0;
        /* Elimina el padding a la izquierda */
        /* Otros estilos que desees ajustar */
    }

    .navbar-nav .nav-item .nav-link {
        color: #fff;
        /* Color de los enlaces */
        padding: 10px;
        /* Ajusta el padding para que los enlaces sean más grandes */
        background-color: #0056b3;
        /* Fondo de los enlaces */
        border-radius: 5px;
        /* Bordes redondeados */
    }

    .navbar-nav .nav-item .nav-link:hover {
        color: #e00f0f;
        /* Cambia el color del texto al pasar el cursor */
        /* Puedes agregar otros efectos de hover si es necesario */
    }

    nav {
        background-color: #e8e9ed;
        /* Fondo de la barra de navegación */
    }
}


@media (max-width: 991.98px) {
    .navbar-collapse {
        background-color: #0056b3;
        /* Fondo de la navegación en dispositivos pequeños */
        position: absolute;
        /* Aparece justo debajo del botón hamburguesa */
        top: 100%;
        left: 50%;
        /* Aparece desde la mitad de la pantalla */
        width: 50%;
        /* Ocupa la mitad derecha de la pantalla */
        transition: all 0.5s ease;
        /* Efecto de transición */
    }

    .navbar-toggler {
        border-color: #0056b3;
        border-width: 5px;
        /* Color del borde del botón hamburguesa */
    }

    .navbar-nav {
        text-align: left;
        /* Alinear el texto hacia la izquierda */
        padding-left: 1rem;
        /* Espaciado desde la izquierda */

    }

    .navbar-nav .nav-item .nav-link {
        color: #fff;
        /* Color de los enlaces */
        padding: 5px;
        /* Espaciado entre enlaces */
    }

    .custom-small {
        padding: 3px 3px;
        /* Ajusta el padding según tus necesidades */
        font-size: 10px;
        background-color: #9b9797;
        /* Ajusta el tamaño de la fuente */
        color: #fff;
        /* Color del texto, asegúrate de que sea legible */
        border: none;
        /* Elimina el borde por defecto */
        cursor: pointer;
        /* Cambia el cursor al pasar sobre el botón */
    }

    /* Mantener el color de fondo al hacer clic o al estar enfocado */
    .custom-small:active,
    .custom-small:focus {
        background-color: #9b9797;
        /* Mantiene el fondo gris */
        color: #000;
        /* Mantiene el color del texto */
        outline: none;
        /* Elimina el contorno del botón al estar enfocado */
    }

    /* Efecto de hover para mejorar la interactividad */
    .custom-small:hover {
        background-color: #8c8c8c;
        /* Cambia a un tono más oscuro al pasar el cursor */
    }


    nav {
        background-color: #e8e9ed;
        /* Cambia este color por el que desees */
    }
}

/* Código para las imágenes de los patrones de la página index */
.image-container {
    width: 100%;
    height: 200px;
    /* Fija la altura del contenedor */
    overflow: hidden;
    /* Evita que las imágenes desborden */
    display: flex;
    justify-content: center;
    align-items: center;
}

.image-container img {
    width: auto;
    height: 100%;
    /* La imagen se ajusta a la altura del contenedor sin deformarse */
    object-fit: cover;
    /* Asegura que la imagen llene el contenedor sin perder la proporción */
}

/* Asegura que las imágenes del carrusel tengan el mismo tamaño */
.carousel-inner img {
    width: 100%;
    /* Ajusta el ancho de la imagen al 100% del contenedor */
    height: 500px;
    /* Puedes ajustar esta altura según lo necesites */
    object-fit: cover;
    /* Mantiene la proporción de la imagen y la recorta si es necesario */
}

/* Alternativa: puedes ajustar la altura según el contenido */
.carousel-inner img {
    width: 100%;
    /* Ajusta el ancho al 100% */
    max-height: 500px;
    /* Limita la altura máxima */
    object-fit: cover;
    /* Mantiene la proporción de la imagen y la recorta si es necesario */
}

.card-title {
    color: rgb(12, 12, 12);
    font-family: Arial;
    text-align: center;
    border-radius: 20px;
    background-color: #97c1c6;
    font-size: x-large;
    padding: 5px;
    /* Color del título de la tarjeta */
}

.texto {
    color: black;
    /* Color del texto */
}

.button-container {
    display: flex;
    justify-content: flex-end;
    /* Alinea el botón a la derecha */
    margin-top: 10px;
    /* Espaciado superior opcional */
}


.button-container .btn {
    padding: 5px;
    border-radius: 10px;
}

footer {
    background-color: #0056b3;
    /* Color de fondo del pie de página */
    color: white;
    /* Color del texto del pie de página */
    text-align: center;
    /* Centrar el texto */
    padding: 15px;
    /* Espaciado interno */
    position: relative;
    bottom: 0;
    width: 100%;
    /* Ancho completo */
}



/*probando css whatsapp flotante*/
.whatsapp-float {
    position: fixed;
    width: 60px;
    height: 60px;
    bottom: 20px;
    right: 20px;
    background-color: #25d366;
    color: #ffffff;
    border-radius: 50px;
    text-align: center;
    font-size: 30px;
    box-shadow: 2px 2px 3px #999;
    z-index: 100;
}

.whatsapp-float1 {
    position: fixed;
    width: 60px;
    height: 60px;
    bottom: 100px;
    right: 20px;
    background-color: #dd4c0d;
    color: #ffffff;
    border-radius: 50px;
    text-align: center;
    font-size: 30px;
    box-shadow: 2px 2px 3px #999;
    z-index: 100;
}

.whatsapp-float1 img {
    width: 100%;
    height: 100%;
    border-radius: 50%;
    object-fit: cover;
}

.whatsapp-float img {
    width: 100%;
    height: 100%;
    border-radius: 50%;
    object-fit: cover;
}

.whatsapp-float:hover {
    background-color: #128c7e;
    color: #2206f3;
    text-decoration: none;
}

/*clase para modificar el tamaño de los botones leer mas*/
.custom-small {
    padding: 3px 3px;
    /* Ajusta el padding según tus necesidades */
    font-size: 10px;
    background-color: #9b9797;
    /* Ajusta el tamaño de la fuente */
}

/* css para el video */
/* Estilos generales para la sección */
#video-section {
    display: flex;
    flex-direction: column;
    /* Acomoda elementos en columna */
    justify-content: center;
    /* Centra en el eje vertical */
    align-items: center;
    /* Centra en el eje horizontal */
    text-align: center;
    /* Centra el texto */
    padding: 20px;
    background-color: #f9f9f9;
    /* Color de fondo opcional */
}



/* Estilos para el video */
#video-section video {
    max-width: 100%;
    /* Se adapta al ancho del contenedor */
    height: auto;
    /* Mantiene la proporción */
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
    /* Sombra decorativa opcional */
    border-radius: 8px;
    /* Bordes redondeados opcionales */
}

/* Estilos para pantallas grandes */
@media (min-width: 992px) {
    #video-section {
        height: 100vh;
        /* Ocupa toda la altura de la pantalla */
    }

    #video-section h1 {
        font-size: 2.5rem;
        /* Ajusta el tamaño del encabezado */
    }
}

/* Estilos para pantallas pequeñas */
@media (max-width: 768px) {
    #video-section h1 {
        font-size: 1.5rem;
        /* Ajusta el tamaño del encabezado */
    }

    #video-section video {
        width: 90%;
        /* Reduce el ancho del video */
    }
}

/*css segundo carrusel de servicios */


/* Carrusel */
#carouselGrid {
    position: relative;
    width: 100%;
}

/* Contenedor de las imágenes dentro de cada carrusel */
.grid-container {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    /* 4 imágenes por fila en pantallas grandes */
    gap: 10px;
}

/* Estilo de las tarjetas */
.card {
    width: 100%;
    height: 100%;
    display: flex;
    margin: 1px;
    justify-content: center;
    align-items: center;
    overflow: hidden;
    
}
.card1 {
    width: 100%;
    height: 80%;
    display: flex;
    margin: 1px;
    justify-content: center;
    align-items: center;
    overflow: hidden;
}
/* Ajuste de las imágenes dentro de las tarjetas para que tengan el mismo tamaño */
.card-img-top {
    width: 100%;
    height: 100%;

    object-fit: cover;
    /* Mantiene la proporción y cubre el área */
}

/* Ajustes para pantallas pequeñas */
@media (max-width: 768px) {
    .grid-container {
        grid-template-columns: repeat(2, 1fr);
        /* 2 imágenes por fila en pantallas medianas */
    }
}

/* Ajustes para pantallas muy pequeñas */
@media (max-width: 480px) {
    .grid-container {
        grid-template-columns: repeat(2, 1fr);
        /* 2 columnas para móviles */
        overflow-x: auto;
        /* Permite desplazarse horizontalmente */
        padding-bottom: 2px;
        height: 300px;
        /* Espacio al final del contenedor */
    }
}

/* Adicionalmente, si se requiere un carrusel desplazable */
.carousel-wrapper {
    display: flex;
    overflow-x: auto;
    gap: 1px;
}

.carousel-item {
    min-width: 100%;
    margin-bottom: 5px;
    /* Cada tarjeta ocupa la mitad de la pantalla */
}

/* Para evitar que las imágenes se desborden o se deformen */
.carousel-item img {
    transition: opacity 0.5s ease-in-out;
}


/* Estilo para el carrusel de videos */
#video-carousel .carousel-item {
    padding: 15px 0;
}

#video-carousel .row {
    display: flex;
    justify-content: space-between;
}

#video-carousel .col-md-3 {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 10px;
}

/*estos es el carrusel de videos*/
#video-carousel video {
    width: 100%;
    height: 450px; /* Altura uniforme */
    object-fit: cover;
    margin-top: 0px;
    margin-left: 20px;
    border-radius: 8px;
    box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.2);
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

#video-carousel video:hover {
    transform: scale(1.05);
    box-shadow: 0px 6px 12px rgba(0, 0, 0, 0.3);
}

/* Media Queries para dispositivos pequeños */
@media (max-width: 992px) {
    #video-carousel .col-md-3 {
        flex: 0 0 50%; /* 2 videos por fila */
        max-width: 50%;
        padding: 5px; /* Espaciado entre los videos */
    }

    #video-carousel video {
        width: 100%; /* Asegura que el video ocupe todo el ancho disponible */
        height: auto; /* Mantiene la proporción del video */
    }
}

@media (max-width: 576px) {
    #video-carousel .col-md-3 {
        flex: 0 0 50%; /* 2 videos por fila */
        max-width: 50%; /* Garantiza que los videos ocupen el 50% del contenedor */
        padding: 5px; /* Espaciado entre los videos */
    }

    #video-carousel video {
        width: 100%; /* Asegura que el video ocupe todo el ancho disponible */
        height: auto; /* Mantiene la proporción del video */
    }
}

