

*{
    font-family: 'Roboto', sans-serif;
}

.img_banner{
    width: 96rem;
    box-shadow: 0px 8px 31px -4px rgba(0,0,0,0.61);
    -webkit-box-shadow: 0px 8px 31px -4px rgba(0,0,0,0.61);
    -moz-box-shadow: 0px 8px 31px -4px rgba(0,0,0,0.61);
}

.btn_banner_p{
    background-color: #f4e72f;
    padding: 1rem;
    border-radius: 9px;
    text-decoration: none;
    color: #004991;
    position: absolute;
    top: 27rem;
    left: 38rem;
    width: 20rem;
    text-align: center;
    font-weight: 700;
    box-shadow: 0px 8px 31px 2px rgba(0,0,0,0.68);
    -webkit-box-shadow: 0px 8px 31px 2px rgba(0,0,0,0.68);
    -moz-box-shadow: 0px 8px 31px 2px rgba(0,0,0,0.68);
    transition: 0.5s;
}

.btn_atras{
    position: absolute;
    top: 2rem;
    left: 2rem;

}

.back_puebla{
    font-size: 3rem !important;
    color: #f4e72f !important;
    filter: drop-shadow(0 0 0.75rem rgb(90, 87, 88));
}

.btn_banner_p:hover{
    background-color: #004991;
    color: #f4e72f;
    cursor: pointer;
    border-color: #f4e72f;
    border-style: solid;
    border-width: 3px;
    transition: 0.5s;
}

.flecha-animada {
  animation: moverIzqDer 1s ease-in-out infinite;
}

@keyframes moverIzqDer {
  0% {
    transform: translateX(0);
  }
  50% {
    transform: translateX(-10px); /* se mueve a la izquierda */
  }
  100% {
    transform: translateX(0);
  }
}

.spaces_cont {
    position: relative;
    margin-top: -80px; /* ajusta según tu banner */
    z-index: 5;
}

.car_pass {
    background: #fff;
    border-radius: 16px;
    padding: 1rem;
    box-shadow: 0px 0px 22px 2px rgba(0,0,0,0.68);
    -webkit-box-shadow: 0px 0px 22px 2px rgba(0,0,0,0.68);
    -moz-box-shadow: 0px 0px 22px 2px rgba(0,0,0,0.68);
    height: 100%;
}

.img_box_card{
    text-align: center;
}

.tit_card{
    color: #004991;
    font-weight: 700;
}

.tit_card2{
    color: #004991;
    font-weight: 700;
    font-size: 1.5rem;
}

.txt_card{
    color: #004991;
    font-weight: 200;
}

.img_card{
    width: 3rem !important;
}

.img_card2{
    width: 5.5rem;
}

.img_card3{
    width: 6.5rem;
}

.map_img{
    text-align: center;
}

.img_map{
    width: 66rem;
    z-index: 9999999999;
    position: relative;
}

.barra_amarilla{
    width: 100%;
    height: 5rem;
    background-color: yellow;
}

.move1{
    position: absolute;
    top: 61.5rem;
    left: 0;
    z-index: 1;
}

.move2{
    position: absolute;
    top: 75rem;
    left: 0;
    z-index: 1;
}

.text1{
    width: 30rem;
    position: absolute;
    z-index: 2;
    top: 58.2rem;
    left: 63rem;
    text-align: center;
}


.tit1, .tit2{
    font-weight: 900;
    font-size: 7.5rem;
    color: #004991;
    
}

.subText1{
    text-align: right;
    padding-right: 1.5rem;
    font-size: 3rem;
    margin-top: -4.5rem;
    color: #004991;
}

.text2{
    width: 30rem;
    position: absolute;
    z-index: 2;
    top: 71.6rem;
    left: -2rem;
    text-align: center;
}

.subText2{
    text-align: center;
    padding-right: 1.5rem;
    font-size: 3rem;
    margin-top: -4.5rem;
    color: #004991;
}

.img_new{
    position: absolute;
    top: 74rem;
    left: 56rem;
    z-index: 999999999999;
}

.img_new_svg{
    width: 8rem;
}

.prods_contain{
    margin-top: 3rem;
}

.tit_prods{
    text-align: center;
}

.txt_tit{
    font-size: 4rem;
    color: #004991;
    font-weight: 900;
    text-decoration: underline #f4e72f;
}

.img_prods{
    padding-top: 1.5rem;
}

.text_contain{
    width: 48rem;
    position: absolute;
    top: 105rem;
    left: 41rem;
}

.tit_prod{
    text-align: left;
    width: 47rem;
}

.tittle_prods{
    color: #004991;
    font-weight: 300;
}

.txt1_img{
    padding-top: 1rem;
    text-align: left;
}

.txt1_txt{
    font-size: 5rem;
    color: #004991;
    font-weight: 300;
}

.img_textProds{
    margin-top: -4rem;
    text-align: left;
    padding-left: 4rem; 
}

.img_3k{
    width: 40rem;
}

.txt2_img{
    margin-top: -2.3rem;
    padding-right: 2rem;
}

.txt2_txt{
    font-size: 5rem;
    color: #004991;
    font-weight: 300;
}

.btn2_contain{
    text-align: center;
    padding-top: 3rem;
    padding-left: 18rem;
}

.btn_prods{
    color: #004991;
    text-decoration: none;
    background-color: #f4e72f;
    padding: 1.3rem;
    font-size: 2rem;
    border-radius: 10px;
    transition: 0.5s;
}

.btn_prods:hover{
    color: #f4e72f;
    background-color: #004991;
    border-radius: 10px;
    transition: 0.5s;
}

.valor_contain{
    background-color: #004991;
    padding: 3rem;
}

.tit_valor{
    text-align: center;
}

.valor_tit_txt{
    color: #fff;
    font-size: 4rem; 
}

.row_camp{
    padding: 2rem;
}

.column1, .column2{
    padding-left: 7rem;
    padding-right: 4rem;
    border-right-style: solid;
    border-width: 2px;
    border-color: #fff;
}

.column3{
        padding-left: 7rem;
        padding-right: 4rem;
}

.img_star{
    width: 9rem;
    padding-bottom: 1rem;
}

.text_star{
    color: #fff;
}

.innova_contain{
    width: 100%;
    background-color: #f4e72f;
    height: 36rem;
    background-image: url("../img/innovacion.png");
    background-size: cenetr;
}

.innova_contain{
    padding: 5rem;
}

.title_inno{
    width: 44rem;
}

.tit_inno{
    font-size: 4rem;
    line-height: 4rem;
    color: #003c76;
    font-weight: 800;
}

.text_inno{
    width: 42rem;
    padding-top: 1.5rem;
}

.txt_inno{
    font-size: 1.2rem;
    color: #004991;
}

.btn_inno{
    width: 43rem;
    text-align: left;
    padding-left: 6rem;
    padding-top: 2.5rem;
}

.link_inno{
    text-decoration: none;
    color: #f4e72f;
    background-color: #004991;
    padding: 0.8rem;
    padding-right: 0.8rem;
    padding-left: 0.8rem;
    font-size: 2rem;
    border-radius: 8px;
    padding-left: 6rem;
    padding-right: 6rem;
    transition: 0.5s;
}

.link_inno:hover{
    background-color: transparent;
    border-style: solid;
    border-color: #004991;
    border-width: 3px;
    cursor: pointer;
    color: #004991;
    transition: 0.5s;
}

.banner_gral_movil, .img_form_movil, 
.img_map_movil, .img_gifzz_movil, 
.carousel_logo_movil, .valores_movil,
.img_4_movil, .bg_foot_movil{
  display: none;
}

.bg_foot{
  width: 100%;
  height: 6rem;
}

.img_logo_bg{
  text-align: right;
  padding-top: 1.3rem;
}

.txt_foot_bg {
  text-align: left;
  padding-top: 2rem;
}

.txt_foot{
  color: #05488a;
  font-family: "Roboto";
}

.foot_redes{
  padding-top: 1.7rem;
  text-align: center;
}

@media(min-width: 1920px) and (max-width: 1924px){

    .img_banner{
        width: 100%;
    }

    .btn_banner_p{
        top: 32rem;
        left: 48rem;
    }

    .text1{
        left: 77rem;
        top: 63.2rem;
    }

    .img_new{
        top: 84rem;
        left: 68rem; 
    }

    .text2{
        left: 5rem;
        top: 81.6rem;
    }

    .prods_contain{
        max-width: 100%;
    }

    .text_contain{
        top: 120rem;
        left: 61rem;
    }

    .move1{
        top: 66.5rem
    }

    .move2{
        top: 85rem;
    }

    .prod_img{
        padding-left: 12rem; 
    }

}


@media(min-width: 340px) and (max-width: 844px){
    .img_banner{
        width: 100%;
    }

    .btn_banner_p{
        top: 0rem;
        left: 5rem;
        position: relative;
    }

    .img_box_card{
        width: 8rem;
    }

    .spaces_cont {
        position: relative;
        margin-top: 47px;
    }

    .map_contain {
        padding-top: 0rem;
        margin-top: 0rem;
    }

    .map_img{
        margin-top: -2rem;
    }

    .barra_amarilla{
        width: 60%;
        height: 2rem;
    }

    .move1{
        top: 3.5rem;
        left: 40%;
        position: relative;
    }

    .img_map{
        width: 23rem;
    }

    .move2{
        position: relative;
        top: 9.4rem;
        left: 0;
    }

    .text1 {
        width: 14rem;
        position: relative;
        z-index: 2;
        top: -14.2rem;
        left: 11rem;
        text-align: center;
    }

    .text2{
        width: 14rem;
        position: relative;
        z-index: 2;
        top: -12.4rem;
        left: -2rem;
        text-align: center;
    }

    .tit1, .tit2{
        font-weight: 900;
        font-size: 2.5rem;
        color: #004991;
    }

    .subText1 {
        text-align: right;
        padding-right: 1.5rem;
        font-size: 2rem;
        margin-top: -2.5rem;
        color: #004991;
    }

    .subText2 {
        text-align: center;
        padding-left: 2rem;
        font-size: 1.5rem;
        margin-top: -2.1rem;
        color: #004991;
    }

    .img_new{
            position: relative;
            top: -21rem;
            left: 14.7rem;
            z-index: 999999999999;
            width: 5rem;
    }

    .map_contain{
        height: 20rem;
    }

    .img_new_svg{
        width: 5rem;
    }

    .prods_contain {
        margin-top: 0;
        height: 39rem;
    }
    
    .txt_tit {
        font-size: 3rem;
        color: #004991;
        font-weight: 900;
        text-decoration: none;
        border-bottom-style: solid;
        border-bottom-color: #f4e72f;
    }

    .img_prods {
        padding-top: 6.5rem;
    }

    .tit_prod {
        text-align: left;
        width: 100%;
        padding-left: 1rem;
        padding-right: 1rem;
    }

    .tittle_prods {
        color: #004991;
        font-weight: 300;
        font-size: 1.2rem;
    }

    .text_contain {
        width: 100%;
        position: relative;
        top: -19rem;
        left: 0;
    }

    .txt1_img{
        padding-top: 0;
        text-align: left;
        padding-left: 7rem;
        margin-top: -1rem;
    }

    .txt1_txt {
        font-size: 2rem;
        color: #004991;
        font-weight: 300;
    }

    .img_textProds {
        margin-top: -2rem;
        text-align: left;
        padding-left: 6rem;
    }

    .img_3k {
        width: 17rem;
    }

    .txt2_img {
        margin-top: -0.8rem;
        padding-left: 0;
        text-align: right;
        padding-right: 0.3rem;
    }

    .txt2_txt {
        font-size: 1.8rem;
        color: #004991;
        font-weight: 300;
    }

    .btn2_contain {
        text-align: center;
        padding-top: 0;
        padding-left: 0;
        margin-top: 7rem;
    }

    .btn_prods {
        color: #004991;
        text-decoration: none;
        background-color: #f4e72f;
        padding: 1.3rem;
        font-size: 1.5rem;
        border-radius: 10px;
        transition: 0.5s;
    }

    .valor_contain{
        padding: 1rem;
    }

    .row_camp {
        padding: 2rem;
    }

    .column1, .column2 {
        padding-left: 0;
        padding-right: 0;
        padding-bottom: 1rem;
        border-bottom-style: solid;
        border-right-style: none;
        border-width: 2px;
        border-color: #fff;
        padding-top: 1rem;
    }

    .column3 {
        padding-left: 0;
        padding-right: 0;
        padding-top: 1rem;
    }

    .innova_contain {
        width: 100%;
        background-color: #f4e72f;
        height: 47rem;
        background-image: url(../img/Grupo_257.png);
        background-size: cover;
        background-position: center;
        padding: 1.5rem;
        padding-top: 12rem;
    }

    .title_inno {
        width: 100%;
        text-align: center;
    }

    .tit_inno {
        font-size: 2.4rem;
        color: #003c76;
        font-weight: 800;
    }

    .text_inno {
        width: 100%;
        padding-top: 1.5rem;
        text-align: center;
    }

    .btn_inno {
        width: 100%;
        text-align: left;
        padding-left: 1rem;
        padding-top: 2.5rem;
    }

    .link_inno {
        text-decoration: none;
        color: #f4e72f;
        background-color: #004991;
        padding: 0.8rem;
        padding-right: 0.8rem;
        padding-left: 0.8rem;
        font-size: 1.4rem;
        border-radius: 8px;
        padding-left: 6rem;
        padding-right: 6rem;
        transition: 0.5s;
    }

    .bg_foot{
        display: none;
    }

    .bg_foot_movil{
        display: block;
    }

    .foot_redes_icon_movil{
        padding: 1rem;
    }

    .linea1 {
        width: 80%;
        margin-left: 2rem;
        margin-bottom: 1rem;
    }

    .linea2 {
        width: 80%;
        margin-left: 2rem;
    }
    
    .linea3{
        margin-top: 1rem;
    }
}





