body, html {
  background: #fff;
  height: 100%; }

#header {
  width: 100%;
  line-height: 3; }
  #header .navbar-nav a {
    color: #fff;
    font-size: .8rem;
    text-transform: uppercase;
    font-weight: 700;
    font-family: 'Montserrat', sans-serif;
    -webkit-transition: all 0.4s;
    -o-transition: all 0.4s;
    transition: all 0.4s;
    position: relative; }
    #header .navbar-nav a:after {
      content: '';
      position: absolute;
      bottom: 0;
      left: 0;
      width: 0;
      height: 2px;
      background: #fff;
      -webkit-transition: all .2s;
      -o-transition: all .2s;
      transition: all .2s; }
    #header .navbar-nav a:hover:after {
      width: 100%; }

.navbar-brand img {
  max-width: 250px;
  -webkit-transition: all .4s;
  -o-transition: all .4s;
  transition: all .4s; }

.bg_transparent {
  background: rgba(0, 0, 0, 0.6);
  -webkit-transition: all .2s;
  -o-transition: all .2s;
  transition: all .2s; }

#main__bg {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  width: 100%;
  height: 600px;
  -webkit-transition: all 0.8s;
  -o-transition: all 0.8s;
  transition: all 0.8s;
  background: url(../images/bg01.png);
  background-size: cover;
  background-position: center; }
  #main__bg:after {
    content: "\f107";
    position: absolute;
    font-family: FontAwesome;
    color: #fff;
    bottom: 0;
    font-size: 4rem;
    -webkit-animation: arrow 3s infinite;
    animation: arrow 3s infinite; }
  #main__bg .icon_service {
    margin: 0 50px; }
  #main__bg .main-icon {
    width: 100%;
    position: relative;
    text-align: center;
    -webkit-transition: all .4s;
    -o-transition: all .4s;
    transition: all .4s; }
    #main__bg .main-icon h2 {
      margin: 10px 0;
      font-size: 1.5rem;
      color: #fff;
      -webkit-transition: all .4s;
      -o-transition: all .4s;
      transition: all .4s; }
    #main__bg .main-icon:after {
      content: "";
      position: absolute;
      width: 70%;
      height: 3px;
      background: #fff;
      bottom: -20px;
      margin: 0 auto;
      left: 0;
      right: 0;
      -webkit-transition: all .2s;
      -o-transition: all .2s;
      transition: all .2s; }
    #main__bg .main-icon:hover:after {
      height: 4px; }
    #main__bg .main-icon:hover h2 {
      -webkit-transform: translateY(-10px);
      -ms-transform: translateY(-10px);
      transform: translateY(-10px); }

.servicios {
  width: 100%;
  height: auto;
  float: left;
  padding: 20px 0;
  background: #fff;
  border-top: solid #eeeeef 1px; }
  .servicios .item__servicios {
    text-align: center;
    margin: 20px 0; }
    .servicios .item__servicios h6 {
      font-weight: bold;
      font-size: 1rem;
      margin: 10px 0;
      font-family: 'Montserrat', sans-serif;
      -webkit-transform: translateY(-20px);
      -ms-transform: translateY(-20px);
      transform: translateY(-20px);
      opacity: 0;
      -webkit-transition: all .4s;
      -o-transition: all .4s;
      transition: all .4s;
      color: #c90748; }
    .servicios .item__servicios img {
      width: 100%;
      max-width: 100px;
      -webkit-transition: all .4s;
      -o-transition: all .4s;
      transition: all .4s;
      -webkit-filter: grayscale(100%);
      filter: grayscale(100%);
      opacity: .8; }
      .servicios .item__servicios img:hover {
        -webkit-transform: scale(1.1);
        -ms-transform: scale(1.1);
        transform: scale(1.1);
        cursor: pointer;
        -webkit-filter: grayscale(0);
        filter: grayscale(0);
        opacity: 1; }
    .servicios .item__servicios:hover h6 {
      -webkit-transform: translateY(0);
      -ms-transform: translateY(0);
      transform: translateY(0);
      opacity: 1;
      -webkit-animation: arrow 2s infinite;
      animation: arrow 2s infinite; }

.title {
  font-family: 'Montserrat', sans-serif;
  letter-spacing: -1px;
  text-align: center;
  margin: 20px 0 30px 0;
  color: #c90748;
  font-weight: bolder;
  line-height: 25px; }
  .title span {
    color: #353535; }

#proyectos {
  float: left;
  width: 100%;
  margin-bottom: 110px;
  background: #EDEAEA;
  display: block;
  background-attachment: fixed;
  position: relative;
  border-bottom: #dcdcde solid 1px; }
  #proyectos .title {
    color: #c90748; }
    #proyectos .title span {
      color: #353535; }
  #proyectos:after {
    content: "";
    opacity: 1;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    position: absolute;
    z-index: -1; }
  #proyectos h1 {
    width: 100%;
    text-align: center;
    color: #3E3E3E;
    margin: 50px 0;
    font-weight: bolder;
    line-height: 25px; }
    #proyectos h1 span {
      color: #c90748; }
  #proyectos .p_item {
    width: 100%;
    overflow: hidden;
    position: relative;
    margin-bottom: 25px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center; }
    #proyectos .p_item:after {
      content: "";
      width: 100%;
      height: 100%;
      position: absolute;
      top: 0;
      left: 0;
      opacity: 1;
      -webkit-transition: all .5s;
      -o-transition: all .5s;
      transition: all .5s;
      background: rgba(86, 86, 86, 0.5); }
    #proyectos .p_item img {
      width: 100%;
      -webkit-transition: all .4s;
      -o-transition: all .4s;
      transition: all .4s; }
    #proyectos .p_item:hover img {
      -webkit-transform: scale(1.1);
      -ms-transform: scale(1.1);
      transform: scale(1.1); }
    #proyectos .p_item:hover:after {
      opacity: 0; }
    #proyectos .p_item h5 {
      position: absolute;
      text-align: center;
      padding: 20px;
      color: #fff;
      font-size: 1.2em;
      letter-spacing: .3px;
      z-index: 99;
      opacity: 1;
      -webkit-transform: translateY(0);
      -ms-transform: translateY(0);
      transform: translateY(0);
      -webkit-transition: all .5s;
      -o-transition: all .5s;
      transition: all .5s;
      text-shadow: 1px 1px 1px #000; }
    #proyectos .p_item:hover h5 {
      opacity: 0;
      -webkit-transform: translateY(20px);
      -ms-transform: translateY(20px);
      transform: translateY(20px); }

#footer {
  width: 100%;
  bottom: 0;
  text-align: center;
  line-height: 7;
  position: fixed;
  z-index: -9;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
  -webkit-justify-content: flex-end;
  -ms-flex-pack: end;
  justify-content: flex-end;
  background: #2A2A2A;
  color: #fff; }
  #footer a {
    text-decoration: none;
    color: #fff; }
    #footer a:hover {
      color: rgba(255, 255, 255, 0.6); }
  #footer .brochure {
    width: 100%;
    height: auto; }
    #footer .brochure a {
      color: #fff;
      text-align: center;
      font-weight: bold;
      padding: 10px 20px;
      border: 1px solid #fff;
      border-radius: 20px;
      -webkit-transition: all .3s;
      -o-transition: all .3s;
      transition: all .3s; }
      #footer .brochure a:hover {
        background: #fff;
        color: #2A2A2A; }
  #footer .f-info {
    width: 100%;
    text-align: left; }
    #footer .f-info ul {
      list-style: none;
      margin: 0;
      padding: 0; }
    #footer .f-info img {
      max-width: 120px; }

@-webkit-keyframes arrow {
  0% {
    -webkit-transform: translateY(0px);
    transform: translateY(0px); }
  25% {
    -webkit-transform: translateY(10px);
    transform: translateY(10px); }
  50% {
    -webkit-transform: translateY(0px);
    transform: translateY(0px); }
  75% {
    -webkit-transform: translateY(10px);
    transform: translateY(10px); }
  100% {
    -webkit-transform: translateY(0px);
    transform: translateY(0px); } }

@keyframes arrow {
  0% {
    -webkit-transform: translateY(0px);
    transform: translateY(0px); }
  25% {
    -webkit-transform: translateY(10px);
    transform: translateY(10px); }
  50% {
    -webkit-transform: translateY(0px);
    transform: translateY(0px); }
  75% {
    -webkit-transform: translateY(10px);
    transform: translateY(10px); }
  100% {
    -webkit-transform: translateY(0px);
    transform: translateY(0px); } }

.navbar-toggler-icon {
  display: inline-block;
  width: 1.5em;
  height: 1.5em;
  vertical-align: middle;
  content: "";
  background: no-repeat center center;
  background-size: 100% 100%;
  background: #fff; }

.navbar-light .navbar-toggler-icon {
  background: url(../images/menu.png);
  background-size: cover; }

.brand {
  width: 100%;
  float: left;
  background: #fff;
  padding: 20px 0;
  border-bottom: #dcdcde solid 1px; }
  .brand .item img {
    width: 100%;
    opacity: .8; }

.translate {
  width: auto;
  height: 20px;
  z-index: 99999;
  position: fixed;
  top: 30px;
  right: 10px; }

.translate ul {
  list-style: none;
  margin: 0;
  padding: 0;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: row;
  -webkit-justify-content: row;
  -ms-flex-pack: row;
  justify-content: row; }

.translate li {
  margin: 0 4px; }

.translate img {
  max-width: 25px; }

@media only screen and (max-width: 600px) {
  .translate {
    height: auto;
    background: #E7E7E7;
    top: 90px;
    right: 0;
    border-radius: 3px 0 0 3px; }
    .translate ul {
      display: block; }
  .servicios .item__servicios h6 {
    font-weight: bold;
    font-size: 1rem;
    margin: 10px 0;
    font-family: 'Montserrat', sans-serif;
    -webkit-transform: translateY(0px);
    -ms-transform: translateY(0px);
    transform: translateY(0px);
    opacity: 1;
    -webkit-transition: all .4s;
    -o-transition: all .4s;
    transition: all .4s;
    color: #434343; }
  .servicios .item__servicios img {
    width: 100%;
    max-width: 100px;
    -webkit-transition: all .4s;
    -o-transition: all .4s;
    transition: all .4s;
    -webkit-filter: grayscale(0);
    filter: grayscale(0);
    opacity: .8; }
  #footer {
    position: relative; }
    #footer .f-info {
      text-align: center; }
  .brand {
    margin-bottom: 0; } }
