
*, *::after, *::before {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

body, html{
  margin: 0;
  padding: 0;
  scroll-behavior: smooth;
  height: 100%;
}




/* --- generales --- */
a{
  text-decoration: none;
  color: #242E45;
}
p{
  padding: 0px;
  margin: 0px;
}
.contergeneral{
  width: 90%;
  display: block;
  max-width: 1400px;
  margin: 0 auto;
  overflow: hidden;
}
.contergeneral2{
  width: 90%;
  display: block;
  max-width: 1400px;
  margin: 0 auto;
}
.contergeneral100{
  width: 100%;
  display: block;
  max-width: 1400px;
  margin: 0 auto;
  overflow: hidden;
  position: relative;
}
.contergeneral100b{
  width: 100%;
  display: block;
  max-width: 1400px;
  margin: 0 auto;
  position: relative;
  height: auto;
  min-height: 100vh;
}
.conter90{
  width: 90%;
  display: block;
  margin: 0 auto;
  overflow: hidden;
}
.conter90left{
  width: 90%;
  display: block;
  float: left;
}
.conter90right{
  width: 90%;
  display: block;
  float: right;
}
.conter95{
  width: 95%;
  display: block;
  margin: 0 auto;
  overflow: hidden;
}
.conter95left{
  width: 95%;
  display: block;
  float: left;
}
.conter99left{
  width: 99%;
  display: block;
  float: left;
}
.conter95right{
  width: 95%;
  display: block;
  float: right;
}
.conter95righta{
  width: 95%;
  display: block;
  float: right;
}
.conter{
  width: 100%;
  display: block;
  position: relative;
  overflow: hidden;
}
.conter22333{
  width: 100%;
  display: block;
  position: relative;
}
.opacity0{
  opacity: 0;
}
.opacity02{
  opacity: 0 !important;
}
.textcenter{
  text-align: center !important;
}
.textright{
  text-align: right !important;
}
.textleft{
  text-align: left !important;
}
.imgfull{
  width: 100%;
}
.img90{
  width: 90%;
  margin: 0 auto;
  display: block;
}
.img80{
  width: 80%;
  margin: 0 auto;
  display: block;
}
.img70{
  width: 70%;
  margin: 0 auto;
  display: block;
}
.img60{
  width: 60%;
  margin: 0 auto;
  display: block;
}
.img50{
  width: 50%;
  margin: 0 auto;
  display: block;
}
.img80left{
  width: 80%;
  display: block;
}
.imglogros{
  width: 85%;
  float: right;
  padding-left: 10px;
}

.conter30{
  display: block;
  width: 30%;
  float: left;
  position: relative;
}
.conter35{
  display: block;
  width: 35%;
  float: left;
  position: relative;
}
.conter33{
  display: block;
  width: 33.33%;
  float: left;
  position: relative;
}
.conter22{
  display: block;
  width: 22.3%;
  float: left;
  position: relative;
}
.conter50{
  display: block;
  width: 50%;
  float: left;
  position: relative;
}
.conter55{
  display: block;
  width: 55%;
  float: left;
  position: relative;
}
.conter50right{
  display: block;
  width: 50%;
  float: right;
  position: relative;
}
.conter50center{
  display: block;
  width: 50%;
  margin: 0 auto;
  position: relative;
}
.conter60center{
  display: block;
  width: 60%;
  margin: 0 auto;
  position: relative;
}
.conter40center{
  display: block;
  width: 40%;
  margin: 0 auto;
  position: relative;
}
.conter65center{
  display: block;
  width: 65%;
  margin: 0 auto;
  position: relative;
}
.conter65{
  display: block;
  width: 65%;
  float: left;
  position: relative;
}
.conter66{
  display: block;
  width: 66%;
  float: left;
  position: relative;
}
.conter60{
  display: block;
  width: 60%;
  float: left;
  position: relative;
}

.conter40{
  display: block;
  width: 40%;
  float: left;
  position: relative;
}
.conter45{
  display: block;
  width: 45%;
  float: left;
}
.conter70{
  display: block;
  width: 70%;
  float: left;
}
.conter75{
  display: block;
  width: 75%;
  float: left;
}
.conter70center{
  display: block;
  width: 70%;
  margin: 0 auto;
}
.conter80{
  display: block;
  width: 80%;
  float: left;
}
.conter80center{
  display: block;
  width: 80%;
  margin: 0 auto;
}

.conter20{
  display: block;
  width: 20%;
  float: left;
}
.conter21{
  display: block;
  width: 21%;
  float: left;
}
.conter10{
  display: block;
  width: 10%;
  float: left;
}
.conter15{
  display: block;
  width: 15%;
  float: left;
}
.conter10a{
  display: block;
  width: 10%;
  float: left;
}
.conter12{
  display: block;
  width: 12.5%;
  float: left;
}
.conter5{
  display: block;
  width: 5%;
  float: left;
}
.conter5a{
  display: block;
  width: 5%;
  float: left;
}
.conter14{
  display: block;
  width: 14.2%;
  float: left;
}
.conter15{
  display: block;
  width: 15%;
  float: left;
}
.conter85{
  display: block;
  width: 85%;
  float: left;
}
.conter25{
  display: block;
  width: 25%;
  float: left;
}
.conter24{
  display: block;
  width: 24%;
  float: left;
}

.conterflex{
  width: 100%;
  display: flex;
  overflow: hidden;
  align-content: center;
  align-items: center;
}
.conterflexmobil{
  width: 100%;
  display: flex;
  overflow: hidden;
  align-content: center;
  align-items: center;
}
.conterflex2{
  width: 100%;
  display: flex;
  align-content: center;
  align-items: center;
}
.conterfit{
  display: block;
  width: fit-content;
  margin: 0 auto;
}
.flex{
  display: flex;
  overflow: hidden;
  align-content: center;
  align-items: center;
}
.conterflex3{
  width: 100%;
  display: flex;
  overflow: hidden;
  align-content: center;
  align-items: center;
}
.conterflex4{
  width: 100%;
  display: flex;
  overflow: hidden;
  align-content: end;
  align-items: end;
  margin-top: -60px;
}
.conterflex5{
  width: 100%;
  display: flex;
  overflow: hidden;
  align-content: initial;
  align-items: initial;
}
.conterflex6{
  width: 100%;
  display: flex;
  overflow: hidden;
  align-content: end;
  align-items: end;
}
.padtop50px{
  padding-top: 50px;
}
.padtop70px{
  padding-top: 70px;
}
.padtop80px{
  padding-top: 80px;
}
.padtop100px{
  padding-top: 100px;
}
.padtop150px{
  padding-top: 150px;
}
.padbop50px{
  padding-bottom: 50px !important;
}
.pad50px{
  padding: 50px 0px;
}
.padtop20px{
  padding-top: 20px;
}
.padtop30px{
  padding-top: 30px;
}
.padtop40px{
  padding-top: 40px;
}
.padtop10px{
  padding-top: 10px;
}
.padbot20px{
  padding-bottom: 20px;
}
.padbot50px{
  padding-bottom: 50px !important;
}
.padbot30px{
  padding-bottom: 30px;
}

.mar50px{
  margin: 50px 0px;
}
.martop50px{
  margin-top: 50px;
}
.marbot30px{
  margin-bottom: 30px;
}
.pad20px{
  padding: 20px 0px;
}
.pad5px{
  padding: 5px 0px;
}
.pad5pix{
  padding: 5px;
}
.pad10px{
  padding: 10px 0px;
}
.pad30px{
  padding: 30px 0px;
}
.martop20px{
  margin-top: 20px;
}
.multy{
  mix-blend-mode: multiply !important;
}
.overflowhi{
  overflow: hidden !important;
}

.padleft50{
  padding-left: 50px;
}
.padleft30{
  padding-left: 33px;
}
.padleft10{
  padding-left: 10px;
}
.padright50{
  padding-right: 50px;
}
img{
  display: block !important;
}
.disblock{
  display: block;
}
.textupper{
  text-transform: uppercase;
}
.opacity1{
  opacity: 1 !important;
}
.opacity0{
  opacity: 0;
}
.home{
  width:  100%;
    display:  flex;  
    height:   auto; 
    min-height: 100vh;
    align-content:  center; 
    align-items:  center;   
}
.imgcomin{
  width:  90%;
  display:  block;  
  max-width:  700px;
  margin:   0 auto;
}