html{
    overflow-x: hidden !important;
}


body {
    background-color: #efefef;
    font-family: "Poppins", sans-serif;
    margin: 0;
    padding: 0;
    overflow-x: hidden !important; /* Evita la barra de desplazamiento horizontal */
}

h1,
h2,
h3,
h4,
h5,
h6 {
    font-family: "Poppins", sans-serif;
    font-weight: 600;
}

p {
    font-family: "Poppins", sans-serif;
    font-weight: 400;
}

/*estilos de la barra de navegacion*/

/* Estilos base para el header (ya existentes) */
header {
    width: 100%;
    z-index: 100;
    position: absolute;
}

.navbar {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding-right: 40px;
    padding-top: 30px;
    padding-left: 50px;
}

.navbar-logo img {
    width: 173.87px;
    height: auto;
}

.navbar-nav {
    display: flex;
    list-style: none;
    flex-direction: row;
}

.nav-item {
    margin-right: 80px;
}

.nav-link {
    text-decoration: none;
    color: #cb9932;
    font-size: 16px;
    transition: color 0.3s ease;
}

.nav-link:hover {
    color: #2b4b79;
}

.fixed-button,
.fixed-button-bottom {
    position: fixed;
    z-index: 1050;
    transition: all 0.3s ease;
}

.fixed-button {
    top: 0px;
    right: 0px;
    padding-top: 30px;
}

.fixed-button:hover {
    transform: scale(1.1);
}

.botonws {
    width: 54px;
    height: 44px;
}

.fixed-button-bottom {
    bottom: 25px;
    right: 15px;
    border-radius: 50%;
    border: none;
    background: none;
}

.boton-arriba {
    width: 40px;
}

.fixed-button-bottom:hover {
    transform: scale(1.1);
}
/* Estilos para el botón móvil (nuevo) */
.btn-mobil {
    display: none; /* Oculta el botón en desktop */
    position: fixed;
    top: 58px; /* 58px desde la parte superior */
    right: -5px; /* A la derecha */
    background: none;
    border: none;
    cursor: pointer;
    z-index: 1000;
}

.boton-mobil-img {
    width: 31px;
    height: 25px;
}

/* Estilos para el menú lateral (nuevo) */
.menu-lateral {
    position: fixed;
    top: 60px; /* Misma posición que el botón móvil */
    right: -100%; /* Oculta el menú fuera de la pantalla (a la derecha) */
    width: auto; /* Ancho automático para que se ajuste al contenido */
    height: 24.5px; /* Altura fija para el menú */
    background-color: #cb9932; /* Fondo naranja */
    transition: right 0.3s ease; /* Animación suave */
    z-index: 999;
    display: flex;
    align-items: center; /* Centra verticalmente los elementos */
    padding: 10px 20px; /* Espacio interno */
    border-radius:30px 0 0 30px; /* Radio en esquinas superior izquierda e inferior izquierda */
}

.menu-lateral ul {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex; /* Muestra los elementos en fila */
    gap: 30px; /* Espacio de 30px entre los elementos */
}

.menu-lateral ul li {
    padding: 0; /* Elimina el padding interno */
}
.menu-lateral ul li a {
    color: #3e3e3e; /* Color del texto */
    text-decoration: none;
    font-size: 12px; /* Tamaño de fuente */
    transition: all 0.3s ease; /* Transición suave para todas las propiedades */
    display: inline-block; /* Necesario para que funcione el zoom */
}

.menu-lateral ul li a:hover {
    color: #2b4b79; /* Cambia de color al pasar el mouse */
    transform: scale(1.1); /* Efecto de zoom (10% más grande) */
}

/* Clase para mostrar el menú (nuevo) */
.menu-lateral.active {
    right: 20px; /* Muestra el menú alineado con el botón móvil */
}

/* Media Queries para móviles */
@media (max-width: 768px) {
    .navbar-nav {
        display: none; /* Oculta el menú principal en móviles */
    }

    header {
        background-color: #fff;
        height: 96px;
        width: 100%;
    }

    .btn-mobil {
        display: block; /* Muestra el botón móvil */
    }

    .fixed-button {
        top: 23px;
        right: 0px;
        margin-top: 0;
        padding: 0;
    }

    .fixed-button:hover {
        transform: scale(1.1);
    }

    .botonws {
        width: 31px;
        height: 25px;
    }

    .navbar {
        display: flex;
        justify-content: space-between;
        align-items: center;
        padding-top: 30px;
        padding-left: 36px;
    }

    .navbar-logo img {
        width: 88px;
        height: 23px;
    }
}

/* Media Queries para iPad (1024px o menos) */
@media (min-width: 769px) and (max-width: 1024px){
    .navbar-nav {
        display: none; /* Oculta solo la navegación */
    }

    .fixed-button {
        top: 83px;
        right: 0px;
        margin-top: 0;
        padding: 0;
    }

    .fixed-button:hover {
        transform: scale(1.1);
    }

    .botonws {
        width: 54px;
        height: 44px;
    }

    .navbar {
        display: flex;
        justify-content: space-between;
        align-items: center;
        padding-top: 48px;
        padding-left: 70px;
    }

    .navbar-logo img {
        width: 174px;
        height: 48px;
    }

    
/* Estilos para el botón móvil (nuevo) */
.btn-mobil {
    display: block;
    position: fixed;
    top: 28px; /* 58px desde la parte superior */
    right: -5px; /* A la derecha */
    background: none;
    border: none;
    cursor: pointer;
    z-index: 1000;
}

.boton-mobil-img {
    width: 54px;
    height: 44px;
}

/* Estilos para el menú lateral (nuevo) */
.menu-lateral {
    position: fixed;
    top: 29px; /* Misma posición que el botón móvil */
    right: -100%; /* Oculta el menú fuera de la pantalla (a la derecha) */
    width: auto; /* Ancho automático para que se ajuste al contenido */
    height: 44px; /* Altura fija para el menú */
    background-color: #cb9932; /* Fondo naranja */
    transition: right 0.3s ease; /* Animación suave */
    z-index: 999;
    display: flex;
    align-items: center; /* Centra verticalmente los elementos */
    padding: 10px 20px; /* Espacio interno */
    border-radius:30px 0 0 30px; /* Radio en esquinas superior izquierda e inferior izquierda */
}

.menu-lateral ul {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex; /* Muestra los elementos en fila */
    gap: 45px; /* Espacio de 30px entre los elementos */
}

.menu-lateral ul li {
    padding: 0; /* Elimina el padding interno */
}
.menu-lateral ul li a {
    color: #3e3e3e; /* Color del texto */
    text-decoration: none;
    font-size: 16px; /* Tamaño de fuente */
    transition: all 0.3s ease; /* Transición suave para todas las propiedades */
    display: inline-block; /* Necesario para que funcione el zoom */
}

.menu-lateral ul li a:hover {
    color: #2b4b79; /* Cambia de color al pasar el mouse */
    transform: scale(1.1); /* Efecto de zoom (10% más grande) */
}

/* Clase para mostrar el menú (nuevo) */
.menu-lateral.active {
    right: 40px; /* Muestra el menú alineado con el botón móvil */
}


 
}

/*estilos del hero y del boton*/
/* Estilos base para el hero */
/* Estilos base para el hero */
.fondo {
    background-image: url("../img/hero.png");
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    height: 853px; /* Altura inicial */
    width: 100%; /* Ocupa el 100% del ancho disponible */
    display: flex;
    align-items: flex-start; /* Alinea los elementos en la parte superior */
    justify-content: center;
    text-align: center;
    padding: 10px; /* Padding reducido */
    box-sizing: border-box; /* Incluye el padding en el ancho total */
    overflow: hidden; /* Evita el desplazamiento horizontal */
}

.titulo-web {
    font-weight: bold;
    margin-top: 385px; /* Margen superior */
    font-size: 30px;
    text-shadow: 2px 2px 5px rgba(0, 6, 8, 0.7);
    margin-bottom: 20px;
    letter-spacing: 2px;
}

.btn-outline-custom {
    background-color: rgba(39, 39, 39, 0.624);
    color: white;
    border: 4px solid white;
    transition: all 0.2s ease;
    height: 52px;
    width: 186px;
    font-size: 18px;
}

.btn-outline-custom:hover {
    border-color: #ecb80b;
    color: white; /* Mantén el texto blanco */
    background-color: rgba(39, 39, 39, 0.624);
}

/* Media Queries para iPhone (menos de 768px) */
@media (max-width: 768px) {
    .fondo {
        object-fit: cover;
       width:100% ;
        height: 795px; /* Altura reducida para iPhone */
        background-image: url("../img/heromobil.png");
    
    }

    .titulo-web {
        font-size: 18px; /* Tamaño de fuente reducido */
        margin-top: 180px; /* Margen superior reducido */
        margin-bottom: 10px; /* Margen inferior reducido */
        letter-spacing: 2px; /* Espaciado entre letras reducido */
    }

    .btn-outline-custom {
        height: 44px; /* Altura reducida del botón */
        width: 150px; /* Ancho reducido del botón */
        font-size: 14px; /* Tamaño de fuente reducido */
    }
}

@media (min-width: 769px) and (max-width: 1024px){


.fondo {
        object-fit: cover;
       width:100% ;
       height: 1191px;
       background-position: 27%;
    }

    .titulo-web {
        font-size: 30px; /* Tamaño de fuente reducido */
        margin-top: 218px; /* Margen superior reducido */
        margin-bottom: 10px; /* Margen inferior reducido */
        letter-spacing: 2px; /* Espaciado entre letras reducido */
    }

    .btn-outline-custom {
        height: 52px; /* Altura reducida del botón */
        width:186px; /* Ancho reducido del botón */
        font-size: 18px; /* Tamaño de fuente reducido */
    }
}












/* fin de los estilos del hero y del boton*/

/* Estilos de la sección nosotros */
.titulo-nosotros {
    font-weight: bold;
    color: #3e3e3e;
    margin-top: 30px;
    text-align: center;
}

.flex-space.texto-nosotros {
    margin-top: 20px;
    display: flex;
    justify-content: center; /* Centrado horizontal */
    align-items: center; /* Centrado vertical */
    text-align: left; /* Alinea el texto al centro */
    height: 100%; /* Para asegurarse de que el contenedor tenga altura suficiente */
    color: #3e3e3e;
    margin-bottom: 138px;
}

.container-cards {
    display: flex;
    justify-content: space-between; /* Separa las cards */
    align-items: center; /* Centra verticalmente las cards */
    padding: 0 80px; /* Añade espacio a los lados para centrar las cards */
    max-width: 1200px; /* Ancho máximo del contenedor */
    margin: 0 auto; /* Centra el contenedor en la página */
    position: relative;
}

.card-nosotros {
    max-width: 410px;
    width: 100%; /* Ancho de la card */
    height: 211px;
    background-color: white; /* Fondo blanco */
    font-size: 16px; /* Tamaño de la fuente */
    display: flex;
    flex-direction: column; /* Apila los elementos verticalmente */
    justify-content: center; /* Centra verticalmente */
    align-items: center; /* Centra horizontalmente */
    border: 2px solid #cb9932; /* Borde */
    border-radius: 10px;
    padding: 10px; /* Espacio interno */
}

.titulo-card-mv {
    margin-top: -226px; /* Elimina el margen negativo y separa del párrafo */
    text-align: center;
    position: absolute;
    font-size: 42px;
    font-weight: bold;
    color: #cb9932;
    letter-spacing: 2px;
}

.p-card {
    margin: 0; /* Elimina márgenes adicionales */
    text-align: center; /* Centra el texto dentro del párrafo */
}

.imagen-m {
    height: auto;
    width: 100%;
    max-width: 63px;
    z-index: 10000;
    position: absolute;
    margin-left: -405px;
}

.imagen-v {
    position: absolute;
    max-width: 72px;
    height: auto;
    width: 100%;
    z-index: 10000;
    margin-left: -405px;
}

/* iPhone (768px) */
@media screen and (max-width: 768px) {
    .container-cards {
        flex-direction: column; /* Apila las cards en una sola columna */
        align-items: center; /* Centra las cards */
        padding: 0 20px;
    }

    .card-nosotros {
        max-width: 276px;
        width: 100%; /* Ancho de la card */
        height:142px;
        margin-bottom: 80px;
    }

    .titulo-card-mv {
        font-size: 28px; /* Ajusta el tamaño del título */
        margin-top: -150px;
    }

    .imagen-m, .imagen-v {
        max-width: 42px; /* Reduce más las imágenes */
        margin-left: -270px;
    }


    .p-card {
        margin: 0; /* Elimina márgenes adicionales */
        text-align: center; /* Centra el texto dentro del párrafo */
    font-size: 12px;
    padding-left: 16px;
    }

    .texto-nosotros {
        font-size: 14px;
        margin-bottom: 60px;
        text-align: center;
    }
}

/* iPad (1024px) */
@media (min-width: 769px) and (max-width: 1024px){

.container-cards {
        display: flex;
        justify-content: space-between; /* Mantiene separación proporcional */
        align-items: center;
        padding: 0 0px; /* Ajuste proporcional al ancho del iPad */
        max-width: 900px; /* Ajuste proporcional */
        margin: 0 auto;
        gap: 100px; /* Mantiene la separación de las cards */
    }

    .card-nosotros {
        width: 300px; /* Ajuste proporcional al diseño de escritorio */
        height: 180px; /* Mantiene la misma altura fija */
        padding: 10px;
    }

    .p-card {
        align-items: center;
        justify-content: center;
        font-size: 14px;
        padding-left: 16px;
    }

    .imagen-m, .imagen-v {
        max-width: 63px;
        margin-left: -269px; /* Ajustado proporcionalmente */
    }

    
.titulo-card-mv {
    margin-top: -195px; /* Elimina el margen negativo y separa del párrafo */
    text-align: center;
    position: absolute;
    font-size: 42px;
    font-weight: bold;
    color: #cb9932;
    letter-spacing: 2px;
}

}





/*servicios*/

.servicios-text {
    font-weight: bold;
    color: #3e3e3e;
    margin-top: 160px;
    margin-bottom: 80px;
    text-align: center;
    font-size: 30px;
}

.service-gallery {
    display: flex;
    flex-wrap: wrap; /* Permite que los elementos pasen a otra línea si no caben */
    justify-content: center; /* Centra las tarjetas */
    gap: 20px; /* Espacio entre tarjetas */
    padding: 0 20px; /* Padding para evitar que las tarjetas toquen los bordes */
}

.service-card-wrapper {
    flex: 1 1 calc(33.33% - 40px); /* 3 columnas por defecto (para iPad) */
    max-width: calc(33.33% - 40px); /* Limita el ancho para 3 columnas */
    display: flex;
    justify-content: center;
}

.service-card {
    width: 100%; /* Ocupa todo el ancho disponible */
    max-width: 300px; /* Evita que las tarjetas sean demasiado grandes */
    text-align: center;
    transition: transform 0.2s ease-in-out;
}

.service-card img {
    width: 100%; /* La imagen ocupa todo el ancho de la tarjeta */
    height: auto;
    object-fit: cover;
}

.service-card:hover {
    transform: scale(1.05);
}

.service-card .service-text {
    font-size: 16px;
    font-weight: normal;
    color: #3e3e3e;
    text-align: center;
    margin: 10px 0;
    transition: color 0.2s ease-in-out;
}

.service-card:hover .service-text {
    color: #ecb80b;
}

/* Media Queries para iPad (3 imágenes por fila) */
@media (min-width: 769px) and (max-width: 1024px){

.service-card-wrapper {
        flex: 1 1 calc(33.33% - 40px); /* 3 columnas en iPad */
        max-width: calc(33.33% - 40px); /* Limita el ancho para 3 columnas */
    }

    .servicios-text{
        font-size: 20px;
        margin-bottom: 60px;
    }

    .service-card .service-text{
        font-size: 14px;
    }
}

/* Media Queries para iPhone (2 imágenes por fila) */
@media only screen and (max-width: 768px) {
    .service-card-wrapper {
        flex: 1 1 calc(50% - 20px); /* 2 columnas en iPhone */
        max-width: calc(50% - 20px); /* Limita el ancho para 2 columnas */
    }

    
    .servicios-text{
        font-size: 16px;
        margin-bottom: 30px;
    }

    .service-card .service-text{
        font-size: 11px;
    }
}


/*fin de servicios*/

/*slider servicios texto-----------------------------------------------------------------------------------------------------*/

/* Estilos generales */
.contenedor-flex-sliderservicios {
    display: flex;
    align-items: center;
    margin-right: 30px;
}

.contenedor-textos-slider {
    margin-left: 30px;
    position: relative;
}

.contenedor-flex-sliderservicios img {
    width: 100%;
    height: auto;
    max-width: 500px;
}

.contenedor-flex-sliderservicios ul {
    list-style-type: none;
    padding: 0;
}

.contenedor-flex-sliderservicios ul li {
    margin-bottom: 20px; /* Separación de 20px entre elementos de la lista */
}

.swiper-container {
    width: 100%;
    height: 100%;
    margin-top: 120px;
    position: relative;
}

.swiper-slide {
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
}

.img-slider {
    margin-left: 30px;
    width: 500px;
    height: auto;
}

.titulo-lista-slider {
    font-size: 22px;
    font-weight: bold;
    padding-bottom: 20px;
    color: #2b4b79;
    text-align: left; /* Alineación a la izquierda por defecto */
}

.contenedor-textos-slider li {
    font-size: 16px;
    text-align: left; /* Alineación a la izquierda por defecto */
}

.button-next-swiper {
    position: absolute; /* Permite moverlo libremente dentro del contenedor */
    top: 185px; /* Ajusta la distancia desde la parte superior */
    right: 100px; /* Ajusta la distancia desde la izquierda */
    z-index: 10000;
}

.button-next-swiper img {
    width: 40px;
    height: 160px;
}

/* 🖥️ Pantallas extra grandes (más de 1440px) */
@media (min-width: 1440px) {
    .button-next-swiper {
        right: 300px; /* Ajusta la distancia desde la izquierda */
    }

    .img-slider {
        margin-left: -95px;
    }
}

/* Media Queries para iPad */
/* Media Queries para iPad */
@media only screen and (min-width: 768px) and (max-width: 1024px) {
    .contenedor-flex-sliderservicios {
        display: flex;
        align-items: center;
        margin-right: 30px;
        margin-left: 0px;
    }
    
    .contenedor-textos-slider {
        margin-left: 30px;
        position: relative;
    }
    
    .contenedor-flex-sliderservicios img {
     
        width: 343px !important;
        height: 504px !important;
     
    }
    
    .contenedor-flex-sliderservicios ul {
        list-style-type: none;
        padding: 0;
    }
    
    .contenedor-flex-sliderservicios ul li {
        margin-bottom: 20px; /* Separación de 20px entre elementos de la lista */
    }
    
    .swiper-container {
        width: 100%;
        height: 100%;
        margin-top: 120px;
        position: relative;
    }
    
    .swiper-slide {
        display: flex;
        align-items: center;
        justify-content: center;
        text-align: center;
    }
    
    .img-slider {
        margin-left: 30px;
        width: 343px !important;
        height: 504px !important;
        object-fit: cover;
        border-radius: 10px 0 0 10px;
    }
    
    .titulo-lista-slider {
        padding-top: 65px;
        font-size: 14px;
        font-weight: bold;
        padding-bottom: 20px;
        color: #2b4b79;
        text-align: left; /* Alineación a la izquierda por defecto */
    }
    
    .contenedor-textos-slider li {
        font-size: 14px;
        text-align: left; /* Alineación a la izquierda por defecto */
    }
    
    .button-next-swiper {
        position: absolute; /* Permite moverlo libremente dentro del contenedor */
        top: 200px; /* Ajusta la distancia desde la parte superior */
        right: 30px; /* Ajusta la distancia desde la izquierda */
        z-index: 10000;
    }
    
    .button-next-swiper img {
        width: 17px;
        height: 100px;
    }   
}

/* Media Queries para iPhone */
@media only screen and (max-width: 767px) {
    .contenedor-flex-sliderservicios {
        flex-direction: column; /* Cambia a disposición en columna */
        align-items: flex-start; /* Alinea todo a la izquierda */
        margin-right: 0;
        padding-left: 36px;
        padding-right: 36px;
    }


    contenedor-flex-sliderservicios img {
     
        width: 300px !important;
        height: 200px !important;
     
    }


    .img-slider {
        border-radius: 10px 10px 0 0;
        width: 300px !important; /* Ancho de la imagen en iPhone */
        height: 200px !important; /* Alto de la imagen en iPhone */
        object-fit: cover; /* Ajusta la imagen para cubrir el espacio */
        margin-left: 0; /* Elimina el margen izquierdo */
        margin-bottom: 20px; /* Espacio entre la imagen y el texto */
    }

    .contenedor-textos-slider {
        margin-left: 0; /* Elimina el margen izquierdo */
        text-align: left; /* Alinea el texto a la izquierda */
    }

    .button-next-swiper {
        top: 350px; /* Ajusta la posición vertical */
        right: 20px; /* Ajusta la posición horizontal */
    }

    
    .button-next-swiper img {
        width: 18px;
        height: 100px;
    }

    .titulo-lista-slider {
        font-size: 18px; /* Ajusta el tamaño del título */
        text-align: left; /* Alinea el título a la izquierda */
    }

    .contenedor-textos-slider li {
        font-size: 14px; /* Ajusta el tamaño del texto */
        text-align: left; /* Alinea el texto a la izquierda */
    }
}



/*fin de slider servicios texto-----------------------------------------------------------------------------------------------------*/

/*certificaciones*/

/* Estilos para el contenedor principal */


.container-certificaciones {
    width: 90%; /* Ajuste para hacerlo más flexible */
    max-width: 970px;
    height: auto;
    margin: 0 auto;
    padding: 20px 120px 50px; /* Espaciado interno */
    margin-top: 100px;
    background-color: #cb9932;
    border-radius: 10px;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.39);
}

.titulo-certificaciones {
    font-weight: bold;
    color: white;
    margin-top: 30px;
    text-align: center;
    width: 100%;
}

.contenedor-flecha {
    display: flex;
    justify-content: center;
    align-items: center;
}

.img-centered {
    margin-top: 15px;
    margin-bottom: 30px;
    width: 30px;
    height: auto;
}

.sub-container {
    background-color: white;
    padding: 20px;
    border-radius: 10px;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
    max-width: 90%;
    margin: 0 auto;
}

.list-unstyled {
    list-style-type: disc;
    padding-left: 20px;
}

.list-unstyled li {
    margin-bottom: 20px;
}

.contenedor-img-certificaciones {
    display: flex;
    justify-content: center;
    margin-top: 20px;
    align-items: center;
    flex-wrap: wrap;
}

.contenedor-img-certificaciones img {
    width: auto;
    height: 70px; /* Reducido para pantallas pequeñas */
    max-width: 100%;
}

.container-textos-certificaciones {
    margin-top: 40px;
    margin-bottom: 100px;
}

.subtitulo-certificaciones {
    font-weight: normal;
    color: #333;
    font-size: 16px;
    margin-top: 40px;
    text-align: center;
}

.subtitulo-certificaciones-movil {
    display: none;
}

.linea {
    display: block;
    width: 80%;
    max-width: 600px;
    height: 2px;
    background-color: #2b4b79;
    margin-top: 10px;
    border-radius: 5px;
    margin-left: auto;
    margin-right: auto;
}

/* Media Queries para iPad y iPhone */
@media (max-width: 1024px) {
    .container-certificaciones {
        padding: 10px 0px 40px;

        margin-top: 80px;
    }
    

    
.titulo-certificaciones {
    font-weight: bold;
    font-size:23px;
}

.contenedor-flecha {
    display: flex;
    justify-content: center;
    align-items: center;
}

.img-centered {
    margin-top: 20px;
    width: 26px;
    height: auto;
}

    
.list-unstyled li {
    font-size:14px;
    margin-bottom: 20px; /* Espaciado entre los elementos de la lista */
}
}

@media (max-width: 768px) {
    .container-certificaciones {
        padding: 15px;
        margin-top: 60px;
    }
    .sub-container {
        padding: 10px;
    }
    .contenedor-img-certificaciones img {
        height: 60px;
    }

   .container-textos-certificaciones{
    padding-left: 20px;
    padding-right: 20px;
   } 

.subtitulo-certificaciones{
font-size: 14px;

}
    

.linea {
    display: block;
    width: 90%;
    max-width: 600px;
    height: 2px;
    background-color: #2b4b79;
    margin-top: 10px;
    border-radius: 5px;
    margin-left: auto;
    margin-right: auto;
}
.titulo-certificaciones {
    font-weight: bold;
    font-size:16px;
}

.contenedor-flecha {
    display: flex;
    justify-content: center;
    align-items: center;
}

.img-centered {
    margin-top: 15px;
    margin-bottom: 30px;
    width: 26px;
    height: auto;
}

    
.list-unstyled li {
    font-size:11px;
    margin-bottom: 20px; /* Espaciado entre los elementos de la lista */
}
}


/*fin de certificaciones-------------------------------------------------------------------------------*/

/*capacitaciones---------------------------------------------------------------------------*/

/* Estilos para el contenedor principal */
/* Estilos para el contenedor principal */
/* Centrar el contenedor principal */
.contenedor-capacitaciones {
    display: flex;
    flex-direction: column; /* Mantiene la estructura principal */
    align-items: center; /* Centra todo horizontalmente */
    justify-content: center; /* Si el padre tiene altura, centra verticalmente */
    width: 100%;
    max-width: 1200px;
    margin: 0 auto;
    padding: 20px;
    box-sizing: border-box;
    margin-bottom: 180px;
}

/* Mantener en fila la imagen y la lista */
.contenido-capacitaciones {
    display: flex;
    flex-direction: row; /* Mantiene imagen y lista en fila */
    align-items: center; /* Alinea verticalmente */
    justify-content: center; /* Centra horizontalmente */
    gap: 50px; /* Espacio entre imagen y lista */
    width: 100%;
}

/* Centrar la imagen */
.contenedor-img-capacitaciones {
    display: flex;
    justify-content: flex-start; /* Mueve la imagen más a la izquierda */
    align-items: center;
}

/* Ajustar imagen */
.contenedor-img-capacitaciones img {
    max-width: 624px;
    height: 416px;
    display: block; /* Evita espacios extra */
}

/* Centrar los textos */
.contenedor-textos-capacitaciones {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start; /* Asegura que la lista esté alineada a la izquierda */
    text-align: left; /* Evita que el texto se centre */
}

/* Estilos para la lista */
.contenedor-textos-capacitaciones ul {
    list-style-type: none;
    padding: 0;
    margin: 0;
}

/* Estilos para la imagen */
.contenedor-img-capacitaciones img {
    max-width: 624px; /* Asegura que la imagen no se desborde */
    height: 416px; /* Mantiene la proporción de la imagen */
}

/* Estilos para los textos */
.contenedor-textos-capacitaciones {
    display: flex;
    flex-direction: column;
    align-items: center; /* Centra los textos */
}

.contenedor-textos-capacitaciones ul {
    list-style-type: none; /* Elimina los puntos de la lista */
    padding: 0; /* Elimina el padding por defecto de la lista */
    margin: 0; /* Elimina el margen por defecto de la lista */
    width: 100%; /* Ocupa todo el ancho disponible */
}

.contenedor-textos-capacitaciones li {
    margin-bottom: 28px; /* Espaciado entre los elementos de la lista */
    position: relative; /* Posicionamiento relativo para la línea */
    padding-bottom: 10px; /* Espaciado inferior para la línea */
}

.contenedor-textos-capacitaciones li::after {
    content: ""; /* Contenido vacío para la línea */
    position: absolute; /* Posicionamiento absoluto para la línea */
    left: 0; /* Alinea la línea a la izquierda */
    bottom: 0; /* Alinea la línea al fondo */
    width: 30%; /* Ancho de la línea */
    height: 1px; /* Altura de la línea */
    background-color: #cb9932; /* Color de la línea */
}

/* Estilos para el título */
.titulo-capacitaciones {
    font-weight: bold;
    color: #333; /* Color del texto */
    text-align: center; /* Centrar el texto */
    margin-bottom: 60px;
    letter-spacing: 3px;
}

/* Estilos para el subtítulo */
.contenedor-subtitulo-capacitaciones {
    text-align: center; /* Centrar el subtítulo */
    padding-top: 40px;
    margin-bottom: 40px;
}

.subtitulo-capacitaciones {
    font-size: 24px;
    font-weight: bold;
    color: #2b4b79; /* Color del texto */
}

.texto-capacitaciones-movil{
    display: none;
}
/* Media Queries para iPad (768px - 1024px) */
@media (max-width: 1024px) {

    .contenedor-capacitaciones{
        margin-bottom: 0px;
    }


    .contenedor-img-capacitaciones img {
        max-width: 446px; /* Reducir el tamaño de la imagen */
        height: 297px; /* Mantener la proporción */
    }

    .contenedor-textos-capacitaciones {
        font-size: 13px; /* Reducir el tamaño de la fuente */
    }

    .contenedor-textos-capacitaciones li {
        margin-bottom: 20px; /* Reducir el espaciado entre elementos */
    }

    .contenido-capacitaciones {
        gap: 20px; /* Reducir el espacio entre la imagen y la lista */
        padding-left: 70px;
        padding-right: 70px;
    }

    .titulo-capacitaciones {
        font-size: 20px; /* Ajustar el tamaño del título */
        margin-bottom: 40px; /* Reducir el margen inferior */
    }

    .subtitulo-capacitaciones {
        font-size: 18px; /* Reducir el tamaño del subtítulo */
    }

    .texto-capacitaciones-movil{
        display: block;
        font-size: 14px;
    align-items: center;
    margin-top: 10px;
    }

}

/* Media Queries para iPhone (menos de 767px) */
@media (max-width: 767px) {

    .contenedor-capacitaciones{
        margin-bottom: 0px;
        padding-bottom: 0px;
    }
    .contenedor-img-capacitaciones img {
        max-width: 164px; /* Reducir el tamaño de la imagen */
        height: 230px; /* Mantener la proporción */
        object-fit: cover;
      }

    .contenedor-textos-capacitaciones {
        font-size: 10px; /* Reducir el tamaño de la fuente */
    }

    .contenedor-textos-capacitaciones li {
        margin-bottom: 15px; /* Reducir el espaciado entre elementos */
    }

    .contenido-capacitaciones {
        gap: 10px; /* Reducir el espacio entre la imagen y la lista */
        padding-left: 30px; /* Reducir el padding izquierdo */
        padding-right: 30px; /* Reducir el padding derecho */
    }

    .titulo-capacitaciones {
        font-size: 16px; /* Reducir el tamaño del título */
        margin-bottom: 30px; /* Reducir el margen inferior */
    }

    .subtitulo-capacitaciones {
        font-size: 14px; /* Reducir el tamaño del subtítulo */
        font-weight: bold;
    }

    .texto-capacitaciones-movil{
        display: block;
        font-size: 11px;
    align-items: center;
    margin-top: 10px;
    }
}









/* 🖥️ Pantallas extra grandes (más de 1440px) */
@media (min-width: 1440px) {
    .contenedor-capacitaciones {
        width: 80%; /* Ajusta el ancho del contenedor principal */
        max-width: 1200px; /* Ancho máximo del contenedor principal */
        padding: 20px; /* Espaciado interno */
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center; /* Centrar el contenido dentro del contenedor */
    }
}


/*fin de capacitaciones------------------------------------------------------------------------------------------------------------------------------------------*/

/*mapa------------------------------------------------------------------------------------------------------------------------------------------------------------*/

/* Estilos para el contenedor principal */
.contenedor-principal-mapa {
    display: flex;
    flex-direction: column; /* Alinea los elementos en columna */
    justify-content: center;
    align-items: center;
    height: 100vh; /* Ocupa toda la altura de la pantalla */
    width: 100vw; /* Ocupa todo el ancho de la pantalla */
    margin-bottom: 122px;
    position: relative;
  
}

/* Estilos para el título */
.titulo-mapa {
    font-weight: bold;
    color: #333; /* Color del texto */
    text-align: center; /* Centrar el texto */
    margin-bottom: 10px; /* Espacio entre el título y el mapa */
    font-size: 30px;
}

.nombre-estado {
    font-size: 24px;
    font-weight: bold;
    text-align: center;
    margin-bottom: 10px; /* Espacio entre el nombre y el mapa */
    color: #2b4b79;
    transition: opacity 0.2s ease-in, visibility 0.2s ease-in;
}

.nombre-estado.fade-out {
    opacity: 0;
    visibility: hidden;
}

.nombre-estado.visible {
    opacity: 1;
    visibility: visible;
}

/* Estilos para el contenedor secundario */
.contenedor-secundario-mapa {
    display: flex;
    justify-content: center;
    align-items: center;
    height: auto;
    width: 100%;
    max-width: 970px;
    position: relative;
}

.contenedor-secundario-mapa img {
    width: 100%;
    height: 100%;
}

.estado {
    position: absolute;
    cursor: pointer;
    opacity: 0; /*poner opacidad en 0 para desaparecer estado*/
    transition: opacity 0.3s;
}

.estado:hover {
    opacity: 1;
}

/* Posicionamiento de los estados */
.estado[data-nombre="Mazatlán y Culiacán"] {
    top: 195px;
    left: 247px;
    width: 127px;
    height: auto;
}

.estado[data-nombre="Cd. Obregón"] {
    top: 7px;
    left: 68px;
    width: 208px;
    height: auto;
}

.estado[data-nombre="Durango"] {
    top: 203px;
    left: 321px;
    width: 145px;
    height: auto;
}

.estado[data-nombre="Guadalajara"] {
    top: 351px;
    left: 369px;
    width: 129px;
    height: auto;
}

.estado[data-nombre="Cabo San Lucas"] {
    top: 164px;
    left: 67px;
    width: 180px;
    height: auto;
}

.estado[data-nombre="CDMX"] {
    top: 456px;
    left: 570px;
    width: 12px;
    height: auto;
}

@media (min-width: 1440px) {
}

/* iPad (1024px) */
@media screen and (max-width: 1024px) {
    .estado[data-nombre="Mazatlán y Culiacán"] {
        top: 166px;
        left: 210px;
        width: 113px;
    }

    .estado[data-nombre="Cd. Obregón"] {
        top:6px;
        left: 57px;
        width: 180px;
    }

    
    .estado[data-nombre="Durango"] {
        top: 176px;
        left: 277px;
        width: 124px;
    }

    .estado[data-nombre="Guadalajara"] {
        top: 300px;
        left: 316px;
        width: 115px;
    }

    .estado[data-nombre="Cabo San Lucas"] {
        top: 140px;
        left: 56px;
        width: 160px;
    }

    .estado[data-nombre="CDMX"] {
        top: 390px;
        left: 490px;
        width: 13px;
    }

    
    .contenedor-principal-mapa {
        display: flex;
        flex-direction: column; /* Alinea los elementos en columna */
        justify-content: center;
        align-items: center;
        height: 100vh; /* Ocupa toda la altura de la pantalla */
        width: 100vw; /* Ocupa todo el ancho de la pantalla */
        margin-bottom: 0px;
        position: relative;
    }
    
    /* Estilos para el título */
    .titulo-mapa {
        font-weight: bold;
        color: #333; /* Color del texto */
        text-align: center; /* Centrar el texto */
        margin-bottom: 10px; /* Espacio entre el título y el mapa */
        font-size: 20px;
    }
    
    .nombre-estado {
        font-size: 18px;
        font-weight: bold;
        text-align: center;
        margin-bottom: 10px; /* Espacio entre el nombre y el mapa */
        color: #2b4b79;
        transition: opacity 0.2s ease-in, visibility 0.2s ease-in;
    }
}
/* iPhone (812px) */
@media screen and (max-width: 812px) {
    .estado[data-nombre="Mazatlán y Culiacán"] {
        top: 76px;
        left: 96px;
        width: 49px;
    }

    .estado[data-nombre="Cd. Obregón"] {
        top: 3px;
        left: 27px;
        width: 80px;
    }

    .estado[data-nombre="Durango"] {
        top: 78px;
        left: 124px;
        width: 57px;
    }

    .estado[data-nombre="Guadalajara"] {
        top: 134px;
        left: 142px;
        width: 52px;
    }

    .estado[data-nombre="Cabo San Lucas"] {
        top: 63px;
        left: 26px;
        width: 70px;
    }

    .estado[data-nombre="CDMX"] {
        top: 175px;
        left: 220px;
        width: 7px;
    }

    .contenedor-principal-mapa {
        display: flex;
        flex-direction: column; /* Alinea los elementos en columna */
        justify-content: center;
        align-items: center;
        height: 100vh; /* Ocupa toda la altura de la pantalla */
        width: 100vw; /* Ocupa todo el ancho de la pantalla */
        margin-bottom: 0px;
        position: relative;
    }
    
    /* Estilos para el título */
    .titulo-mapa {
        font-weight: bold;
        color: #333; /* Color del texto */
        text-align: center; /* Centrar el texto */
        margin-bottom: 10px; /* Espacio entre el título y el mapa */
        font-size: 16px;
    }
    
    .nombre-estado {
        font-size: 14px;
        font-weight: bold;
        text-align: center;
        margin-bottom: 10px; /* Espacio entre el nombre y el mapa */
        color: #2b4b79;
        transition: opacity 0.2s ease-in, visibility 0.2s ease-in;
    }
    
}

@media screen and (max-width: 375px) {
    .estado[data-nombre="Mazatlán y Culiacán"] {
        top: 76px;
        left: 96px;
        width: 49px;
    }

    .estado[data-nombre="Cd. Obregón"] {
        top: 3px;
        left: 27px;
        width: 80px;
    }

    .estado[data-nombre="Durango"] {
        top: 78px;
        left: 124px;
        width: 57px;
    }

    .estado[data-nombre="Guadalajara"] {
        top: 134px;
        left: 142px;
        width: 52px;
    }

    .estado[data-nombre="Cabo San Lucas"] {
        top: 63px;
        left: 26px;
        width: 70px;
    }

    .estado[data-nombre="CDMX"] {
        top: 175px;
        left: 220px;
        width: 7px;
    }

    .contenedor-principal-mapa {
        display: flex;
        flex-direction: column; /* Alinea los elementos en columna */
        justify-content: center;
        align-items: center;
        height: 100vh; /* Ocupa toda la altura de la pantalla */
        width: 100vw; /* Ocupa todo el ancho de la pantalla */
        margin-bottom: 0px;
        position: relative;
    }
    
    /* Estilos para el título */
    .titulo-mapa {
        font-weight: bold;
        color: #333; /* Color del texto */
        text-align: center; /* Centrar el texto */
        margin-bottom: 10px; /* Espacio entre el título y el mapa */
        font-size: 16px;
    }
    
    .nombre-estado {
        font-size: 14px;
        font-weight: bold;
        text-align: center;
        margin-bottom: 10px; /* Espacio entre el nombre y el mapa */
        color: #2b4b79;
        transition: opacity 0.2s ease-in, visibility 0.2s ease-in;
    }
    

}




/*fin de mapa------------------------------------------------------------------------------------------------------------------------------------------*/

/*slider-servicios----------------------------------------------------------------------------------------------------------------------*/
/* Estilos personalizados para el slider */
.custom-slider {
    width: 100%;
    height: 400px;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    overflow: hidden; /* Evita que se vean slides adicionales */
}

.custom-slider .swiper-wrapper {
    display: flex;
    align-items: center;
}

.custom-slider .swiper-slide {
    text-align: center;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    transition: transform 0.5s ease, opacity 0.5s ease;
}

.custom-slider .swiper-slide img {
    border-radius: 10px;
    object-fit: contain;
    transition: transform 0.5s ease, opacity 0.5s ease;
}

/* Tamaño de las slides no activas */
.custom-slider .swiper-slide:not(.swiper-slide-active) img {
    width: 150px;
    height: 150px;
    opacity: 0.5;
}

.custom-slider .swiper-slide:not(.swiper-slide-active) p {
    font-size: 16px;
    font-weight: 500;
    margin-top: 15px;
    color: #333;
}

/* Tamaño de la slide activa */
.custom-slider .swiper-slide-active img {
    width: 295px;
    height: 295px;
    opacity: 1;
}

.custom-slider .swiper-slide p {
    font-size: 20px;
    font-weight: 500;
    margin-top: 15px;
    color: #333;
}

.titulo-servicios-slider {
    font-size: 20px;
    font-weight: lighter;
    margin-bottom: 40px;
}

.custom-slider .swiper-slide-active p {
    color: #2b4b79;
}

@media (max-width: 1024px) {

/* Tamaño de las slides no activas */
.custom-slider .swiper-slide:not(.swiper-slide-active) img {
    width: 115px;
    height: 115px;
    opacity: 0.5;
}

.custom-slider .swiper-slide:not(.swiper-slide-active) p {
    font-size: 12px;
    font-weight: 500;
    margin-top: 15px;
    color: #333;
}

/* Tamaño de la slide activa */
.custom-slider .swiper-slide-active img {
    width: 225px;
    height: 225px;
    opacity: 1;
}

.custom-slider .swiper-slide p {
    font-size: 15px;
    font-weight: 500;
    margin-top: 15px;
    color: #2b4b79;
}

.titulo-servicios-slider {
    font-size: 18px;
    font-weight: lighter;
    margin-bottom: 0px;
}
 
}

@media (max-width: 812px) {

/* Tamaño de las slides no activas */
.custom-slider .swiper-slide:not(.swiper-slide-active) img {
    width: 55px;
    height: 55px;
    opacity: 0.5;
}

.custom-slider .swiper-slide:not(.swiper-slide-active) p {
    font-size: 5px;
    font-weight: 500;
    margin-top: 15px;
    color: #333;
}

/* Tamaño de la slide activa */
.custom-slider .swiper-slide-active img {
    width: 133px;
    height: 133px;
    opacity: 1;
}

.custom-slider .swiper-slide p {
    font-size: 10px;
    font-weight: 500;
    margin-top: 15px;
    color: #2b4b79;
}

.titulo-servicios-slider {
    font-size: 13px;
    font-weight: lighter;
    margin-bottom: -50px;
}
 
}




/*fin slider servicios----------------------------------------------------------------------------------------------------------------*/

/*clientes-------------------------------------------------------------------------------------------------------------------------------*/
/* Estilos para el contenedor principal de clientes */
.contenedor-principal-clientes {
    width: 100%; /* Ajusta el ancho del contenedor principal */
    max-width: 100%; /* Ancho máximo del contenedor principal */
    margin: 0 auto; /* Centrar el contenedor */
    padding: 0px; /* Espaciado interno */
    margin-top: 170px;
    margin-bottom: 250px;
}

/* Estilos para el título */
.titulo-clientes {
    font-weight: bold;
    color: #333; /* Color del texto */
    text-align: center; /* Centrar el texto */
    margin-bottom: 40px;
    font-size: 24px;
}

.sponsors-container {
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    overflow: hidden; /* Evita desbordamientos */
    background-color: #fff;
}

.sponsorsSwiper {
    width: 100%;
    height: 100%;
}

.sponsorsSwiper .swiper-wrapper {
    display: flex;
    align-items: center;
    transition-timing-function: linear !important; /* Movimiento constante */
}

.sponsorsSwiper .swiper-slide {
    display: flex;
    justify-content: center;
    align-items: center;

    width: 230px; /* Ancho fijo para cada slide */
    height: 230px; /* Alto fijo para cada slide */
}

.sponsorsSwiper .swiper-slide img {
    width: 100%; /* La imagen ocupa el 100% del ancho del slide */
    height: 100%; /* La imagen ocupa el 100% del alto del slide */
    object-fit: contain; /* Ajusta la imagen sin distorsionarla */
    margin-right: 10px; /* Espaciado entre imágenes */
}

/* Media Query para iPad (1024px o menos) */
@media only screen and (max-width: 1024px) {
    .titulo-clientes {
        font-size: 20px; /* Tamaño del título para iPad */
        font-weight: bold; /* Negrita */
    }

    .contenedor-principal-clientes{
        margin-top: 60px;
        margin-bottom: 20px;
    }

    .sponsorsSwiper .swiper-slide {
        width: 180px; /* Reducir el ancho de los slides */
        height: 180px; /* Reducir el alto de los slides */
    }
}

/* Media Query para iPhone (812px o menos) */
@media only screen and (max-width: 812px) {
    .titulo-clientes {
        font-size: 16px; /* Tamaño del título para iPhone */
        font-weight: bold; /* Negrita */
        margin-bottom: 25px;
    }

    
    .contenedor-principal-clientes{
        margin-top: -40px;
        margin-bottom: 80px;
    }

    .sponsorsSwiper .swiper-slide {
        width: 120px; /* Reducir el ancho de los slides */
        height: 120px; /* Reducir el alto de los slides */
    }
}

/*fin de clientes*/

/* Estilos para el contenedor principal de sectores */

.contenedor-principal-sectores {
    margin: 0 auto; /* Centrar el contenedor */
    padding: 0px 160px 130px;

    background-color: #2b4b79;
    background-position: center; /* Centra la imagen */
    background-repeat: no-repeat; /* Evita que la imagen se repita */
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 100%;
    height: 100%;
    max-height: 680px;
}

/* Estilos para el título */
.titulo-sectores {
    font-weight: bold;
    color: #fff; /* Color del texto */
    margin-bottom: 40px;
    margin-top: 40px;
    font-size: 24px;
    text-align: left; /* Alinea el texto a la izquierda */
    width: 100%; /* Ocupa todo el ancho del contenedor */
    margin-left: 0; /* Asegura que no haya margen izquierdo */
}
/* Contenedor general */
.contenedor-flex-sectores {
    display: flex;
    align-items: flex-start; /* Alinea la lista y la imagen al tope */
    justify-content: space-between; /* Separa la lista a la izquierda y la imagen a la derecha */
    flex-direction: row; /* Asegura que la lista quede a la izquierda y la imagen a la derecha */
    width: 100%;
}

/* Contenedor de la lista */
.contenedor-principal-sectores {
    margin-top: 200px;
    margin-bottom: 80px;
    flex: 1; /* Permite que la lista ocupe el espacio disponible */
    display: flex;
    flex-direction: column;
}

/* Estilos para la lista */
.contenedor-principal-sectores ul {
    list-style-type: none; /* Elimina las viñetas predeterminadas */
    padding-left: 0; /* Elimina el espaciado a la izquierda */
    margin-left: 0px;
    text-align: left; /* Alinea el texto a la izquierda */
}

.contenedor-principal-sectores li {
    color: #fff;
    margin-bottom: 50px; /* Ajustado para mejor espaciado */
    position: relative; /* Para la viñeta personalizada */
    padding-left: 30px; /* Espaciado a la izquierda */
}

.contenedor-principal-sectores li::before {
    content: ""; /* Crea un contenido vacío para la viñeta */
    position: absolute;
    left: 0; /* Coloca la viñeta al principio del <li> */
    top: 50%; /* Centra verticalmente */
    transform: translateY(-50%); /* Ajuste fino para centrar */
    width: 10px; /* Tamaño de la viñeta */
    height: 10px; /* Tamaño de la viñeta */
    border-radius: 50%; /* Forma redonda */
    background-color: #cb9932; /* Color de la viñeta */
}

/* Diseño por defecto (pantallas grandes) */
.contenedor-principal-sectores {
    margin: 0 auto;
    padding: 0 160px 130px;
    background-color: #2b4b79;
    background-position: center;
    background-repeat: no-repeat;
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 100%;
    height: 100%;
    max-height: 680px;
    position: relative;
}

.img-sectores-empresa {
    position: absolute;
    z-index: 0; /* La coloca detrás del texto pero encima del fondo */
    top: 30px; /* Ajusta la posición vertical */
    right: 50px;
     width: 660px; /* Controla el tamaño máximo */
    height: auto;
    opacity: 0.7; /* Opcional: hacer la imagen semitransparente */
}


.titulo-sectores {
    font-weight: bold;
    color: #fff;
    margin-bottom: 40px;
    margin-top: 40px;
    font-size: 24px;
    text-align: left;
    width: 100%;
    padding-left: 154px;
letter-spacing: 2px;
}

.contenedor-flex-sectores {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    flex-direction: row;
    width: 100%;
    
    padding-left: 154px;
}

.contenedor-principal-sectores ul {
    list-style-type: none;
    padding-left: 0;
    margin-left: 0px;
    text-align: left;
}

.contenedor-principal-sectores li {
    color: #fff;
    margin-bottom: 50px;
    position: relative;
    padding-left: 30px;
}

.contenedor-principal-sectores li::before {
    content: "";
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background-color: #cb9932;
}

/* Estilos específicos para iPad de 1024px */
@media screen and (max-width: 1024px) {
    .contenedor-principal-sectores {
        padding-left: 70px;
        overflow: hidden;
        position: relative;
        height:550px ;
   margin-top: 150px;      
    }


    .img-sectores-empresa {
        position: absolute;
        z-index: 0;
        top: 20px;
        right: 20px;
        width: 430px;
        height: auto;
        opacity: 0.7;
    }

    .titulo-sectores {
        font-size: 20px;
        font-weight: bold;
        letter-spacing: 2px;
        text-align: left;
        padding-left: 20px;
        margin-bottom: 30px !important;
    }

    .contenedor-flex-sectores {
        flex-direction: column;
        align-items: flex-start;
        text-align: left;
        width: 100%;
        padding-left: 20px;
    }

    .contenedor-principal-sectores ul {
        text-align: left;
        font-size: 14px;
        margin-bottom: 0;
     }
}



/* Responsivo para iPhone (hasta 768px) */
/* Estilos específicos para dispositivos con 812px de ancho */
@media screen and (max-width: 812px) {
    .contenedor-principal-sectores {
        padding-top: 40px; /* Ligera reducción del padding superior */
        padding-bottom: 31px !important; /* Aplica el padding inferior y fuerza su aplicación */
        padding-left: 50px; /* Ajuste lateral */
        padding-right: 50px;
        overflow: hidden; /* Previene márgenes colapsados */
        position: relative;
    }

    .img-sectores-empresa {
        position: absolute;
        z-index: 0; /* La coloca detrás del texto pero encima del fondo */
        top: 232px; /* Ajuste para evitar que cubra texto */
        right: 10px; /* Se ajusta para mejor alineación */
        width: 193px; /* Se reduce un poco el tamaño */
        height: auto;
        opacity: 0.7; /* Opcional: hacer la imagen semitransparente */
    }

    .titulo-sectores {
        font-size: 15px; /* Ajuste para mejor legibilidad */
        text-align: left;
        padding-left: 15px;
        margin-bottom: 28px !important; /* Ajustado para un mejor balance */
    }

    .contenedor-flex-sectores {
        flex-direction: column;
        align-items: flex-start;
        text-align: left;
        width: 100%;
        padding-left: 15px;
    }

    .contenedor-principal-sectores ul {
        text-align: left;
        font-size: 12px; /* Ligera mejora en tamaño */
        margin-bottom: 0; /* Evita que el ul tenga un margen extra */
        padding-bottom: 0; /* Asegura que el padding no sume espacio innecesario */
    }
}

/* Responsivo para iPhone pequeños (hasta 480px) */
@media screen and (max-width: 480px) {
    .contenedor-principal-sectores {
        padding: 0 20px 60px; /* Padding más compacto */
    }

    .titulo-sectores {
        font-size: 18px; /* Reduce el tamaño en móviles pequeños */
    }

    .contenedor-principal-sectores li {
        margin-bottom: 30px; /* Reduce el espaciado entre elementos */
        padding-left: 25px;
    }

    .contenedor-principal-sectores li::before {
        width: 8px;
        height: 8px;
    }
}





/*CONTACTO-----------------------------------------------------------------------------------------------------------------------------*/


.contenedor-flex-contacto {
    display: flex;
    justify-content: space-between;
    align-items: center;
    max-width: 1200px;
    padding-bottom: 160px;
    padding-top: 120px;
}

.contenedor-textos-contacto {
    margin-left: 99px;
}

.titulo-contacto {
    font-weight: bold;
    color: #333;
    margin-bottom: 20px;
}

.contenedor-textos-contacto p {
    display: flex;
    align-items: center;
    margin-bottom: 25px;
    font-size: 16px;
}

.contenedor-textos-contacto img {
    width: 30px;
    margin-right: 10px;
}

.contenedor-redes-sociales {
    text-align: center;
    margin-top: 20px;
}

.contenedor-redes-sociales img {
    width: 52px;
    margin: 0 5px;
    text-decoration: none;
}

.contenedor-redes-sociales a:hover {
    opacity: 0.8; /* Efecto de transparencia al pasar el mouse */
}

.contenedor-formulario-contacto {
    width: 560px;
    background-color: #cb9932;
    padding: 40px 60px;
}

.p-formulario {
    color: #fff;
    font-size: 16px;
    font-weight: regular;
    margin-bottom: 0px;
}

.contenedor-formulario-contacto form {
    display: flex;
    flex-direction: column;
}

.contenedor-formulario-contacto input {
    margin-bottom: 15px;
    padding: 10px;
    border: none;
    border-radius: 5px;
    width: auto;
    height: 44px;
    background-color: #cb9932;
    outline: 2px solid #fff;
    color: #fff;
}

.contenedor-formulario-contacto input:focus {
    outline: 2px solid white; /* Asegura que el outline se mantenga blanco al enfocar */
}

.contenedor-formulario-contacto textarea:focus {
    outline: 2px solid white; /* Asegura que el outline se mantenga blanco al enfocar */
}

.contenedor-formulario-contacto textarea {
    margin-bottom: 15px;
    padding: 10px;
    color: #fff;
    border: none;
    border-radius: 5px;
    width: auto;
    height: 100px;

    background-color: #cb9932;
    outline: 2px solid #fff;
}

.contenedor-formulario-contacto input[type="submit"] {
    background-color: #fff;
    margin: 0 auto;
    display: block;
    color: #edb90b;
    cursor: pointer;
    font-size: 16px;
    height: auto;
    width: 150px;
    border-radius: 10px;
    transition: transform 0.3s ease;
}

.contenedor-formulario-contacto input[type="submit"]:hover {
    transform: scale(1.1);
}

@media (min-width: 1440px) {
    .contenedor-flex-contacto {
        max-width: 1200px; /* Mantiene el ancho */
        margin: 0 auto; /* Centra el contenedor */
    }
}

@media only screen and (max-width: 1024px) {
    .contenedor-flex-contacto {
        flex-direction: row; /* Mantener la disposición en fila */
        padding: 86px 70px 50px;
    }

    .contenedor-textos-contacto {
        margin-left: 0; /* Eliminar el margen izquierdo */
    }

    
    .titulo-contacto{
        display: flex; /* Activa flexbox */
        justify-content: center; /* Centra horizontalmente */
        align-items: center; /* Centra verticalmente */
        text-align: center; /* Asegura que el texto esté centrado */
        height: 100%; /* Asegura que ocupe todo el alto disponible */
        width: 100%; /* Opcional, para ocupar todo el ancho del contenedor */
    
    }


    .contenedor-textos-contacto p {
        display: flex;
        align-items: center;
        margin-bottom: 25px;
        font-size: 11px;
    }

    .contenedor-formulario-contacto input {
        margin-bottom: 15px;
        padding: 10px;
        border: none;
        border-radius: 5px;
        width: auto;
        height: 30px;
        background-color: #cb9932;
        outline: 2px solid #fff;
        color: #fff;
    }

    .contenedor-redes-sociales img.imagen-contacto-logo {
        width: 35px; /* Tamaño para iPad */
        height: auto;
    }

    .p-formulario {
        color: #fff;
        font-size: 10px;
        font-weight: regular;
        margin-bottom: 5px;
    }

    .contenedor-formulario-contacto {
        width: 378px; /* Reducir el ancho del formulario */
        padding: 15px 40px; /* Reducir el padding interno */
    }

    .contenedor-formulario-contacto textarea {
        padding: 10px;
        height: 67px;
    }

    .contenedor-formulario-contacto input[type="submit"] {
        font-size: 10px;
        height: auto;
        width: 100px;
    }

    .contenedor-textos-contacto img {
        width: 19px;
        margin-right: 10px;
    }
}

/* Media Queries para iPhone */
@media only screen and (max-width: 812px) {
    .contenedor-flex-contacto {
        padding-top: 72px;
        padding-left: 30px;
        padding-right: 30px;
    }

    .contenedor-flex-contacto {
        flex-direction: column; /* Cambiar a disposición en columna */
        padding-bottom: 40px; /* Reducir el padding inferior */
    }

    .contenedor-redes-sociales img {
        width: 35px;
        height: auto;
        padding-bottom: 30px;
    }

    .titulo-contacto{
        display: flex; /* Activa flexbox */
        justify-content: center; /* Centra horizontalmente */
        align-items: center; /* Centra verticalmente */
        text-align: center; /* Asegura que el texto esté centrado */
        height: 100%; /* Asegura que ocupe todo el alto disponible */
        width: 100%; /* Opcional, para ocupar todo el ancho del contenedor */
    
    }

    .contenedor-textos-contacto {
        margin-left: 0; /* Eliminar el margen izquierdo */
        text-align: left; /* Centrar el texto */
    }

    .contenedor-formulario-contacto {
        width: 100%; /* Ocupar todo el ancho disponible */
        padding: 20px; /* Reducir el padding interno */
    }

    .contenedor-redes-sociales {
        margin-top: 40px; /* Ajustar el margen superior */
    }
}

/*fin de contacto-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------*/

/*FOOTER-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------*/
/*FOOTER-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------*/
.contenedor-footer {
    background-color: #fff;
    height: auto; /* Cambia a altura automática */
    max-width: 100%; /* Ancho máximo del contenedor */
    margin: 0 auto; /* Centrar el contenedor */
    text-align: center; /* Centrar el contenido */
    padding: 20px 0; /* Añade un padding para mejor espaciado */
}

/* Estilos para el logo principal (grupogipsa) */
.contenedor-logo-footer img {
    width: 210px; /* Ancho fijo */
    height: auto; /* Alto automático */
    display: block; /* Para centrar la imagen */
    margin: 0 auto; /* Centrar la imagen */
}

.contenedor-logo-footer {
    padding-top: 37px; /* Espacio superior */
    padding-bottom: 25px; /* Espacio inferior */
}

/* Estilos para el contenedor flexible de imágenes */
.contenedor-flex-img-footer {
    display: flex;
    justify-content: space-between; /* Espacio entre elementos */
    align-items: center; /* Centrar verticalmente */
    gap: 80px; /* Espacio de 80px entre elementos */
    margin: 20px auto; /* Margen superior e inferior */
    max-width: 1000px; /* Ancho máximo del contenedor */
}

/* Estilos para cada imagen dentro del contenedor flexible */
.contenedor-img-footer-logo img {
    height: 53px; /* Alto fijo */
    width: auto; /* Ancho automático */
}

.contenedor-img-footer-gippsa img {
    height: 90px; /* Alto fijo */
    width: auto; /* Ancho automático */
}

.contenedor-img-footer-igesi img {
    height: 70px; /* Alto fijo */
    width: auto; /* Ancho automático */
}

.contenedor-img-footer-solid img {
    height: 90px; /* Alto fijo */
    width: auto; /* Ancho automático */
}

/* Estilos para el texto "Sitio diseñado y desarrollado por..." */
.developed {
    text-align: center; /* Centrar el texto */
    font-size: 14px; /* Tamaño de fuente */
    color: #333; /* Color del texto */
    padding-top: 20px;
    padding-bottom: 10px;
}

.developed a {
    color: #cb9932; /* Color del enlace */
    text-decoration: none; /* Quitar subrayado */
}

.developed a:hover {
    text-decoration: underline; /* Subrayado al pasar el mouse */
}

/* Media Queries para dispositivos específicos */
@media (max-width: 1024px) {
    .contenedor-footer {
        padding: 0 150px 0;
        background-color: #fff;
        height: auto; /* Cambia a altura automática */
    }

    .contenedor-logo-footer img {
        width: 130px; /* Ancho fijo */
        height: auto; /* Alto automático */
    }

    /* Ajustes para iPad de 11 pulgadas */
    .contenedor-flex-img-footer {
        gap: 40px; /* Reduce el espacio entre elementos */
    }

    .contenedor-img-footer-logo img {
        height: 30px; /* Reduce el tamaño de la imagen */
    }

    .contenedor-img-footer-gippsa img {
        height: 60px; /* Reduce el tamaño de la imagen */
    }

    .contenedor-img-footer-igesi img {
        height: 45px; /* Reduce el tamaño de la imagen */
    }

    .contenedor-img-footer-solid img {
        height: 60px; /* Reduce el tamaño de la imagen */
    }

    .developed {
        font-size: 10px; /* Reduce el tamaño de la fuente */
    }
}

@media (max-width: 812px) {
    /* Ajustes para iPhone X */

    .contenedor-footer {
        padding: 0 40px 0;

        background-color: #fff;
        height: auto; /* Cambia a altura automática */
    }

    .contenedor-logo-footer img {
        width: 82px; /* Ancho fijo */
        height: auto; /* Alto automático */
    }

    .contenedor-flex-img-footer {
        gap: 20px; /* Reduce aún más el espacio entre elementos */
    }

    .contenedor-img-footer-logo img {
        height: 20px; /* Reduce el tamaño de la imagen */
    }

    .contenedor-img-footer-gippsa img {
        height: 30px; /* Reduce el tamaño de la imagen */
    }

    .contenedor-img-footer-igesi img {
        height: 30px; /* Reduce el tamaño de la imagen */
    }

    .contenedor-img-footer-solid img {
        height: 30px; /* Reduce el tamaño de la imagen */
    }

    .developed {
        font-size: 8px; /* Reduce el tamaño de la fuente */
    }
}
