/* CAPÇALERA */
*{padding:0;margin:0;-webkit-tap-highlight-color: transparent;}
html{width:100%;height:100%;}
body{width:100%;font-family:'Roboto', Arial, Helvetica, sans-serif;color:#000;background-color:#FFFFFF;overflow-x:hidden;animation: fadein 2s;-moz-animation: fadein 2s; /* Firefox */-webkit-animation: fadein 2s; /* Safari and Chrome */-o-animation: fadein 2s; /* Opera */position:relative;}
a{color:inherit;text-decoration: none;-webkit-transition: all .2s ease-in-out;-moz-transition: all .2s ease-in-out;transition: all .2s ease-in-out;}
h2{color:inherit;text-decoration: none;-webkit-transition: all .2s ease-in-out;-moz-transition: all .2s ease-in-out;transition: all .2s ease-in-out;}
div, img, header, nav, h1, h2, h3, h4, h5, h6, p, svg, path{ transition:all .3s; }
header, nav{ transition:all .3s;top:0px; }
.no_transition{transition:none;}

.pag1{width:100%;position:absolute;top:0px;transition: all .6s;}
.pag1_ini{left:0%;right:0%;opacity:1;}
.pag1_inib{opacity:1;right:100%;}
.pag1_ini2b{opacity:0;left:100%;}
.pag_proyectos{width:100%;height:100%;position:fixed;top:0px;transition: all .6s;overflow-y: scroll;z-index: 99999;}
.pag_proyectos_ini{opacity:0;left:100%;}
.pag_proyectos_inib{opacity:1;left:0px;}

.pag_proyectos2{width:100%;height:100%;position:fixed;top:0px;transition: all .6s;overflow-y: scroll;z-index: 99999;}
.pag_proyectos_ini2{opacity:0;right:100%;}
.pag_proyectos_ini2b{opacity:1;right:0%;}

/* VARIS */
.pointer{cursor:pointer;}
.clear{clear:both;font-size:0px;height:0px;}
.uppercase{text-transform:uppercase;}
.text_center{text-align:center;}
.overflow{overflow:hidden;}
.left{float:left;}
.right{float:right;}
.relative{position:relative;}
.absolute{position:absolute;}

.table{display:table;height:100%;}
.table-cell{display: table-cell;vertical-align: middle;}
.inherit{width:inherit;height:inherit;}
.inherit_height{width:auto;height:inherit;}
.shadow{-webkit-box-shadow: 0px 0px 32px -6px rgba(0,0,0,0.8);-moz-box-shadow: 0px 0px 32px -6px rgba(0,0,0,0.8);box-shadow: 0px 0px 32px -6px rgba(0,0,0,0.8);}
.middle > * {vertical-align: middle;/*display: inline-block;*/}
.relative{position:relative;}
.displayblock{display:block;}
.displaynone{display:none;}
.noselect {-webkit-touch-callout: none; /* iOS Safari */-webkit-user-select: none; /* Chrome/Safari/Opera */-khtml-user-select: none; /* Konqueror */-moz-user-select: none; /* Firefox */-ms-user-select: none; /* Internet Explorer/Edge */user-select: none; /* Non-prefixed version, currently not supported by any browser */
}

/* TRANSITIONS */
.transition4{transition: all .4s;}

/* ANIMATIONS */
.animated2{-webkit-animation-duration: 0.8s;animation-duration: 0.8s;-webkit-animation-fill-mode: both;animation-fill-mode: both;}

/* EFFECTS */
.hover_effect1:hover{opacity:0.7;}
.we_effect1{}
.slick-initialized{animation: fadein 3s;-moz-animation: fadein 3s; /* Firefox */-webkit-animation: fadein 3s; /* Safari and Chrome */-o-animation: fadein 3s; /* Opera */}

/* TEXTOS */
.we_text1 h1{font-family:"Roboto", Arial, Helvetica, sans-serif;font-size:24px;line-height:34px;font-weight:500;color:#FFFFFF;padding-top:30px;}
.we_text1 p{font-family:"Roboto", Arial, Helvetica, sans-serif;font-size:14px;line-height:24px;font-weight:400;color:#FFFFFF;padding-top:20px;padding-bottom:30px;}

/* VIMEO */
.videoWrapper {position: relative;padding-bottom: 56.25%;margin-top: 25px;height: 0;}
.videoWrapper iframe {position: absolute;top: 0;left: 0;width: 100%;height: 100%;}
/* VIMEO */

/* CONTENIDOR */
.we_contenedor0{width:100%;}
.we_contenedor1{width:100%;max-width: 1640px;margin:0 auto;}
.we_contenedor2{width:100%;max-width: 1320px;margin:0 auto;}

.we_marges0{margin:0px 0px 0px 0px;}
.we_marges1{margin:0px 30px 0px 30px;}
.we_marges2{margin:0px 40px 0px 40px;}
/* CONTENIDOR */

/* PADDINGS */
.we2_bh_padding_300{width:100%;height:300px;}
.we2_bh_padding_150{width:100%;height:150px;}
.we2_bh_padding_100{width:100%;height:100px;}
.we2_bh_padding_80{width:100%;height:80px;}
.we2_bh_padding_60{width:100%;height:60px;}
.we2_bh_padding_50{width:100%;height:50px;}
.we2_bh_padding_40{width:100%;height:40px;}
.we2_bh_padding_30{width:100%;height:30px;}
.we2_bh_padding_20{width:100%;height:20px;}
/* PADDINGS */

.we_menu_fixed0{background-color:#FFFFFF;}
.we_menu_fixed{}
.we_menu_fixed2{display:none;}

/* KEYFRAMES */
@keyframes fadein {
    from {
        opacity:0;
    }
    to {
        opacity:1;
    }
}
@-moz-keyframes fadein { /* Firefox */
    from {
        opacity:0;
    }
    to {
        opacity:1;
    }
}
@-webkit-keyframes fadein { /* Safari and Chrome */
    from {
        opacity:0;
    }
    to {
        opacity:1;
    }
}
@-o-keyframes fadein { /* Opera */
    from {
        opacity:0;
    }
    to {
        opacity: 1;
    }
}

@keyframes movearrow {
    0% {bottom: -25px;opacity:1;}
	50% {bottom: -30px;opacity:0.7;}
	100% {bottom: -25px;opacity:1;}
}
@-moz-keyframes movearrow { /* Firefox */
    0% {bottom: -25px;opacity:1;}
	50% {bottom: -30px;opacity:0.7;}
	100% {bottom: -25px;opacity:1;}
}
@-webkit-keyframes movearrow { /* Safari and Chrome */
    0% {bottom: -25px;opacity:1;}
	50% {bottom: -30px;opacity:0.7;}
	100% {bottom: -25px;opacity:1;}
}
@-o-keyframes movearrow { /* Opera */
    0% {bottom: -25px;opacity:1;}
	50% {bottom: -30px;opacity:0.7;}
	100% {bottom: -25px;opacity:1;}
}

/* ANIMATIONS / Y DOWN TO UP */
.animate-reveal {
  opacity: 0;
  -webkit-animation: reveal 1s cubic-bezier(0, 1, 0.5, 1) 1 normal forwards;
     -moz-animation: reveal 1s ease-in 1 normal forwards;
       -o-animation: reveal 1s cubic-bezier(0, 1, 0.5, 1) 1 normal forwards;
          animation: reveal 1s cubic-bezier(0, 1, 0.5, 1) 1 normal forwards;
}

.animate-first {
  -webkit-animation-delay: 0;
     -moz-animation-delay: 0;
       -o-animation-delay: 0;
          animation-delay: 0;
}

.animate-second {
  -webkit-animation-delay: 500ms;
     -moz-animation-delay: 500ms;
       -o-animation-delay: 500ms;
          animation-delay: 500ms;
}

.animate-third {
  -webkit-animation-delay: 1s;
     -moz-animation-delay: 1s;
       -o-animation-delay: 1s;
          animation-delay: 1s;
}

@-webkit-keyframes reveal {
  0% {
    opacity: 0;
    -webkit-transform: translateY(100%);
       -moz-transform: translateY(100%);
         -o-transform: translateY(100%);
            transform: translateY(100%);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
       -moz-transform: translateY(0);
         -o-transform: translateY(0);
            transform: translateY(0);
  }
}

@-moz-keyframes reveal {
  0% {
    opacity: 0;
    -webkit-transform: translateY(100%);
       -moz-transform: translateY(100%);
         -o-transform: translateY(100%);
            transform: translateY(100%);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
       -moz-transform: translateY(0);
         -o-transform: translateY(0);
            transform: translateY(0);
  }
}

@-o-keyframes reveal {
  0% {
    opacity: 0;
    -webkit-transform: translateY(100%);
       -moz-transform: translateY(100%);
         -o-transform: translateY(100%);
            transform: translateY(100%);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
       -moz-transform: translateY(0);
         -o-transform: translateY(0);
            transform: translateY(0);
  }
}

@keyframes reveal {
  0% {
    opacity: 0;
    -webkit-transform: translateY(100%);
       -moz-transform: translateY(100%);
         -o-transform: translateY(100%);
            transform: translateY(100%);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
       -moz-transform: translateY(0);
         -o-transform: translateY(0);
            transform: translateY(0);
  }
}

/* ANIMATIONS / Y UP TO DOWN */
.animate-reveal-reverse {
  opacity: 0;
  -webkit-animation: reveal_reverse 1s cubic-bezier(0, 1, 0.5, 1) 1 normal forwards;
     -moz-animation: reveal_reverse 1s ease-in 1 normal forwards;
       -o-animation: reveal_reverse 1s cubic-bezier(0, 1, 0.5, 1) 1 normal forwards;
          animation: reveal_reverse 1s cubic-bezier(0, 1, 0.5, 1) 1 normal forwards;
}

.animate-reverse-first {
  -webkit-animation-delay: 0;
     -moz-animation-delay: 0;
       -o-animation-delay: 0;
          animation-delay: 0;
}

.animate-reverse-second {
  -webkit-animation-delay: 500ms;
     -moz-animation-delay: 500ms;
       -o-animation-delay: 500ms;
          animation-delay: 500ms;
}

.animate-reverse-third {
  -webkit-animation-delay: 1s;
     -moz-animation-delay: 1s;
       -o-animation-delay: 1s;
          animation-delay: 1s;
}

@-webkit-keyframes reveal_reverse {
  0% {
    opacity: 0;
    -webkit-transform: translateY(-100%);
       -moz-transform: translateY(-100%);
         -o-transform: translateY(-100%);
            transform: translateY(-100%);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
       -moz-transform: translateY(0);
         -o-transform: translateY(0);
            transform: translateY(0);
  }
}

@-moz-keyframes reveal_reverse {
  0% {
    opacity: 0;
    -webkit-transform: translateY(-100%);
       -moz-transform: translateY(-100%);
         -o-transform: translateY(-100%);
            transform: translateY(-100%);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
       -moz-transform: translateY(0);
         -o-transform: translateY(0);
            transform: translateY(0);
  }
}

@-o-keyframes reveal_reverse {
  0% {
    opacity: 0;
    -webkit-transform: translateY(-100%);
       -moz-transform: translateY(-100%);
         -o-transform: translateY(-100%);
            transform: translateY(-100%);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
       -moz-transform: translateY(0);
         -o-transform: translateY(0);
            transform: translateY(0);
  }
}

@keyframes reveal_reverse {
  0% {
    opacity: 0;
    -webkit-transform: translateY(-100%);
       -moz-transform: translateY(-100%);
         -o-transform: translateY(-100%);
            transform: translateY(-100%);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
       -moz-transform: translateY(0);
         -o-transform: translateY(0);
            transform: translateY(0);
  }
}

/* ANIMATIONS X / LEFT TO RIGHT */
.animate-reveal-lateral {
  opacity: 0;
  -webkit-animation: reveal_lateral 2s cubic-bezier(0, 1, 0.5, 1) 1 normal forwards;
     -moz-animation: reveal_lateral 2s ease-in 1 normal forwards;
       -o-animation: reveal_lateral 2s cubic-bezier(0, 1, 0.5, 1) 1 normal forwards;
          animation: reveal_lateral 2s cubic-bezier(0, 1, 0.5, 1) 1 normal forwards;
}

.animate-lateral-first {
  -webkit-animation-delay: 0;
     -moz-animation-delay: 0;
       -o-animation-delay: 0;
          animation-delay: 0;
}

.animate-lateral-second {
  -webkit-animation-delay: 500ms;
     -moz-animation-delay: 500ms;
       -o-animation-delay: 500ms;
          animation-delay: 500ms;
}

.animate-lateral-third {
  -webkit-animation-delay: 1s;
     -moz-animation-delay: 1s;
       -o-animation-delay: 1s;
          animation-delay: 1s;
}

@-webkit-keyframes reveal_lateral {
  0% {
    opacity: 0;
    -webkit-transform: translateX(-100%);
       -moz-transform: translateX(-100%);
         -o-transform: translateX(-100%);
            transform: translateX(-100%);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateX(0);
       -moz-transform: translateX(0);
         -o-transform: translateX(0);
            transform: translateX(0);
  }
}

@-moz-keyframes reveal_lateral {
  0% {
    opacity: 0;
    -webkit-transform: translateX(-100%);
       -moz-transform: translateX(-100%);
         -o-transform: translateX(-100%);
            transform: translateX(-100%);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateX(0);
       -moz-transform: translateX(0);
         -o-transform: translateX(0);
            transform: translateX(0);
  }
}

@-o-keyframes reveal_lateral {
  0% {
    opacity: 0;
    -webkit-transform: translateX(-100%);
       -moz-transform: translateX(-100%);
         -o-transform: translateX(-100%);
            transform: translateX(-100%);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateX(0);
       -moz-transform: translateX(0);
         -o-transform: translateX(0);
            transform: translateX(0);
  }
}

@keyframes reveal_lateral {
  0% {
    opacity: 0;
    -webkit-transform: translateX(-100%);
       -moz-transform: translateX(-100%);
         -o-transform: translateX(-100%);
            transform: translateX(-100%);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateX(0);
       -moz-transform: translateX(0);
         -o-transform: translateX(0);
            transform: translateX(0);
  }
}