.header {
  position: -webkit-sticky;
  position: sticky;
  top: 0px;
  z-index: 2;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  height: 10vh;
  padding-right: 2vw;
  padding-left: 2vw;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  background-color: #ccc;
}

.link-logo {
  width: 3vw;
  float: left;
}

.logo-img {
  width: 100%;
}

.body {
  background-color: #151515;
  font-family: Gillsans, sans-serif;
  font-weight: 400;
}

.menu-header {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  height: 3vw;
  float: right;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
}

.intro-video {
  position: relative;
  height: 90vh;
}

.img-video {
  width: 100%;
}

.container-header {
  width: 100%;
}

.link-menu {
  margin-left: 3vw;
  -webkit-transition: all 200ms cubic-bezier(.075, .82, .165, 1);
  transition: all 200ms cubic-bezier(.075, .82, .165, 1);
  color: #fff;
  letter-spacing: 0.5px;
  text-decoration: none;
}

.link-menu:hover {
  color: hsla(0, 0%, 100%, 0.5);
}

.video-background {
  position: absolute;
  left: 0%;
  top: 0%;
  right: 0%;
  bottom: 0%;
  z-index: 0;
  height: 100%;
}

.pointer {
  position: absolute;
  left: 0%;
  top: -20vw;
  right: auto;
  z-index: 3;
  width: 1vw;
  height: 1vw;
  border-style: solid;
  border-width: 1px;
  border-color: #375172;
  border-radius: 100%;
  background-color: #375172;
  -webkit-transition: all 500ms cubic-bezier(.075, .82, .165, 1);
  transition: all 500ms cubic-bezier(.075, .82, .165, 1);
}

.pointer.link {
  width: 3vw;
  height: 3vw;
  background-color: rgba(255, 255, 255, 0);
  opacity: 1;
}

.pointer.logo {
  width: 0.5vw;
  height: 0.5vw;
  border-color: #375172;
  background-color: #375172;
}

.pointer.down {
  width: 1vw;
  height: 1vw;
  border-top-style: none;
  border-right-color: #fff;
  border-bottom-color: #fff;
  border-left-style: none;
  border-radius: 0%;
  background-color: transparent;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
}

.pointer.plus {
  width: 5vw;
  height: 5vw;
  border-color: #ccc;
  background-color: transparent;
  background-image: url('/assets/plus.svg');
  background-position: 50% 50%;
  background-size: 30%;
  background-repeat: no-repeat;
}

.pointer.cerrar {
  width: 5vw;
  height: 5vw;
  border-color: #fff;
  background-color: rgba(21, 21, 21, 0);
  background-image: url('/assets/cerrar.svg');
  background-position: 50% 50%;
  background-size: 30%;
  background-repeat: no-repeat;
}

.pointer.next {
  width: 5vw;
  height: 5vw;
  border-color: #fff;
  background-color: rgba(21, 21, 21, 0);
  background-image: url('/assets/next.svg');
  background-position: 50% 50%;
  background-size: 30%;
  background-repeat: no-repeat;
}

.pointer.prev {
  width: 5vw;
  height: 5vw;
  border-color: #fff;
  background-color: transparent;
  background-image: url('/assets/prev.svg');
  background-position: 50% 50%;
  background-size: 30%;
  background-repeat: no-repeat;
}

.link-down {
  position: absolute;
  left: 0%;
  top: 0%;
  right: 0%;
  bottom: 0%;
  z-index: 1;
  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;
  background-color: rgba(21, 21, 21, 0.27);
}

.logo-intro {
  width: 30vw;
}

.intro-website {
  position: relative;
  overflow: hidden;
  margin-top: -10vh;
  padding: 20vh 5vw 10vh;
  background-color: #fff;
}

.titulo-garza-santos {
  position: relative;
  z-index: 1;
  margin-top: 0px;
  margin-bottom: 0px;
  font-family: Gillsans, sans-serif;
  color: #fff;
  font-size: 4.5vw;
  line-height: 5vw;
  font-weight: 600;
}

.sub-titulo-nosotros {
  position: relative;
  z-index: 1;
  margin-bottom: 0px;
  font-family: Arnopro, sans-serif;
  color: #ccc;
  font-size: 1.4vw;
  line-height: 2vw;
  font-weight: 400;
  letter-spacing: 0.05vw;
}

.descripci-n-intro {
  z-index: 1;
  width: 52%;
  max-width: 510px;
  margin-top: 20px;
  margin-bottom: 0px;
  float: left;
  clear: both;
  font-family: Gillsans, sans-serif;
  color: hsla(0, 0%, 80%, 0.6);
  font-size: 24px;
  line-height: 35px;
  font-weight: 400;
  letter-spacing: 0.05vw;
}

.imagen-intro {
  position: absolute;
  top: 0px;
  right: 0px;
  bottom: 0px;
  z-index: 0;
  width: 46%;
  max-width: 532px;
  background-color: #ebebeb;
  background-image: url('/assets/img_intro.jpg');
  background-position: 50% 50%;
  background-size: cover;
  background-repeat: no-repeat;
  -o-object-fit: contain;
  object-fit: contain;
}

.span-resaltado {
  display: inline-block;
  border-bottom: 1px solid #ccc;
}

.servicios-bloque {
  padding: 10vh 5vw;
  background-color: #fff;
  text-align: center;
}

.servicio-contenedor {
  position: relative;
  width: 100%;
  padding-top: 2vw;
  padding-bottom: 2vw;
  border-style: solid;
  border-width: 1px;
  border-color: transparent;
  -webkit-transform: scale3d(1none, 1none, 1none);
  transform: scale3d(1none, 1none, 1none);
  -webkit-transform-origin: 50% 50%;
  -ms-transform-origin: 50% 50%;
  transform-origin: 50% 50%;
  -webkit-transition: all 500ms cubic-bezier(.23, 1, .32, 1);
  transition: all 500ms cubic-bezier(.23, 1, .32, 1);
  text-decoration: none;
  -webkit-transform-style: preserve-3d;
  transform-style: preserve-3d;
}

.servicio-contenedor:hover {
  padding-top: 0vw;
  padding-bottom: 4vw;
  -webkit-transform: none;
  -ms-transform: none;
  transform: none;
  -webkit-transform-origin: 0% 0%;
  -ms-transform-origin: 0% 0%;
  transform-origin: 0% 0%;
}

.servicio-contenedor.srgundo {
  z-index: 1;
  margin-top: 12vw;
  float: right;
}

.servicio-contenedor.srgundo:hover {
  border-right-width: 0vw;
  border-left-width: 2vw;
  -webkit-transform-origin: 100% 100%;
  -ms-transform-origin: 100% 100%;
  transform-origin: 100% 100%;
}

.servicio-contenedor.tercero {
  display: inline-block;
  width: 53.7vw;
  margin-top: 5vw;
  margin-right: auto;
  margin-left: auto;
  float: none;
}

.titulo-servicio {
  margin-top: 1vw;
  margin-bottom: 0px;
  color: #ccc;
  font-size: 1.6vw;
  line-height: 2vw;
  font-weight: 400;
  text-align: center;
}

.titulo-servicio.right {
  left: auto;
  right: 0px;
  text-align: right;
}

.wrapper {
  background-color: #ccc;
}

.imagen-servicio {
  width: 100%;
  background-color: #151515;
  opacity: 0.8;
  -webkit-transition: opacity 200ms ease;
  transition: opacity 200ms ease;
}

.imagen-servicio:hover {
  opacity: 0.4;
}

.hover-img {
  background-color: #151515;
}

.escondidos {
  overflow: hidden;
  height: 0px;
}

.detalle-servicio {
  position: fixed;
  left: 0%;
  top: 0%;
  right: 0%;
  bottom: 0%;
  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;
  background-color: transparent;
}

.click-cerrar {
  position: absolute;
  left: 0%;
  top: 0%;
  right: 0%;
  bottom: 0%;
  z-index: 0;
  background-color: hsla(0, 0%, 80%, 0.8);
}

.contenido-servicio {
  position: relative;
  z-index: 1;
  width: 50%;
  padding: 5vw;
  float: right;
  background-color: #fff;
}

.p-desc-servicio {
  width: 100%;
  margin-bottom: 0px;
  color: #ccc;
  font-size: 16px;
  line-height: 22px;
  -webkit-column-count: 2;
  column-count: 2;
}

.wrapper-detalle-de-proyecto {
  position: relative;
  z-index: 2;
  display: block;
}

.descripci-n-intro-copy {
  position: relative;
  z-index: 1;
  width: 42vw;
  margin-top: 12vw;
  margin-bottom: 0px;
  font-family: Gillsans, sans-serif;
  color: hsla(0, 0%, 80%, 0.6);
  font-size: 2.5vw;
  line-height: 3vw;
  font-weight: 400;
  letter-spacing: 0.05vw;
}

.titulo-servicio-detalle {
  position: relative;
  z-index: 1;
  width: 70%;
  margin-bottom: 5vw;
  font-family: Gillsans, sans-serif;
  color: #ccc;
  font-size: 2.5vw;
  line-height: 3vw;
  font-weight: 400;
  letter-spacing: 0.05vw;
}

.col-a-intro {
  width: 50%;
  max-width: 547px;
  float: left;
}

.proyectos-bloque {
  padding-top: 10vh;
  padding-right: 5vw;
  padding-left: 5vw;
  background-color: #ccc;
}

.titulo-proyectos {
  z-index: 1;
  width: 30vw;
  margin-bottom: 10vh;
  font-family: Gillsans, sans-serif;
  color: #fff;
  font-size: 2vw;
  line-height: 2.5vw;
  font-weight: 400;
  letter-spacing: 0.05vw;
}

.fila-proyecto {
  display: block;
  margin-bottom: 20vh;
  float: left;
  clear: both;
}

.col-a-proyecto {
  position: relative;
  width: 29%;
  float: left;
}

.slider-proyectos {
  z-index: 0;
  display: inline-block;
  width: 100%;
  height: 24.3vw;
  float: left;
  clear: none;
  background-color: transparent;
  box-shadow: 0 16px 20px -10px rgba(0, 0, 0, 0.39);
}

.nav-proyectos {
  display: none;
}

.icon-proyectos-right {
  display: none;
  font-size: 13px;
}

.btn-proyectos {
  z-index: 1;
  width: 50%;
  background-image: -webkit-gradient(linear, left top, right top, color-stop(70%, #000), to(transparent));
  background-image: linear-gradient(90deg, #000 70%, transparent);
  opacity: 0;
  -webkit-transition: all 300ms cubic-bezier(.645, .045, .355, 1);
  transition: all 300ms cubic-bezier(.645, .045, .355, 1);
}

.btn-proyectos:hover {
  opacity: 0.35;
}

.icon-proyectos-left {
  display: none;
  font-size: 13px;
}

.img-slide-proyecto {
  width: 100%;
}

.btn-proyectos-right {
  z-index: 1;
  width: 50%;
  background-image: -webkit-gradient(linear, right top, left top, color-stop(70%, #000), to(transparent));
  background-image: linear-gradient(270deg, #000 70%, transparent);
  opacity: 0;
  -webkit-transition: all 300ms cubic-bezier(.645, .045, .355, 1);
  transition: all 300ms cubic-bezier(.645, .045, .355, 1);
}

.btn-proyectos-right:hover {
  opacity: 0.35;
}

.pointer-wrapper {
  position: absolute;
  left: 40vw;
  top: 40vw;
}

.pointer-wrapper-copy {
  position: absolute;
  left: 40vw;
  top: 30.4vw;
}

.pointer-wrapper-copy-copy {
  position: absolute;
  left: 40vw;
  top: 51.1vw;
}

.pointer-wrapper-copy-copy-copy {
  position: absolute;
  left: 30.3vw;
  top: 51.1vw;
}

.body-pointers {
  background-color: #151515;
}

.desc-proyecto {
  width: 86%;
  margin-top: 10vh;
  margin-bottom: 0px;
  color: hsla(0, 0%, 100%, 0.6);
  font-size: 16px;
  line-height: 22px;
}

.col-a-proyecto-right {
  position: relative;
  width: 29%;
  text-align: right;
}

.desc-proyecto-right {
  width: 86%;
  margin-top: 10vh;
  margin-bottom: 0px;
  float: right;
  color: hsla(0, 0%, 100%, 0.6);
}

.inicial-titulo-garza-santos {
  position: relative;
  z-index: 1;
  margin-top: 0px;
  margin-bottom: 0px;
  font-family: Gillsans, sans-serif;
  color: #ccc;
  font-size: 42px;
  line-height: 48px;
  font-weight: 600;
}

.bloque-contacto {
  padding: 10vh 5vw;
  background-color: #ccc;
}

.col-a-footer {
  width: 50%;
  float: left;
}

.dato-contacto {
  z-index: 1;
  width: 100%;
  margin-top: 1vw;
  margin-bottom: 2vw;
  font-family: Gillsans, sans-serif;
  color: #fff;
  font-size: 1.6vw;
  line-height: 2vw;
  font-weight: 400;
  letter-spacing: 0.05vw;
}

.titulo-contacto {
  margin-bottom: 0px;
  color: hsla(0, 0%, 100%, 0.6);
  font-size: 16px;
  line-height: 22px;
}

.col-b-footer {
  width: 50%;
  float: right;
}

.input {
  height: 3vw;
  margin-bottom: 2vw;
  padding: 0px 1vw;
  border: 1px none #000;
  border-radius: 0px;
}

.mensaje {
  min-height: 10vw;
  margin-bottom: 2vw;
  padding: 1vw;
  border: 1px none #000;
  border-radius: 0px;
}

.enviar {
  position: absolute;
  left: auto;
  top: auto;
  right: 0%;
  bottom: 0%;
  height: 3vw;
  padding: 1.1vw 1vw 0px;
  float: right;
  background-color: #fff;
  color: #999;
  font-size: 1.2vw;
  line-height: 1.2vw;
  text-align: left;
}

.form {
  position: relative;
  margin-bottom: 0px;
}

.link-footer {
  color: #fff;
  text-decoration: none;
}

.link-redes {
  width: 2vw;
  height: 2vw;
  margin-top: 1vw;
  margin-right: 2vw;
}

.sub-titulo-proyecto {
  position: relative;
  z-index: 1;
  margin-top: 0vw;
  margin-bottom: 0px;
  font-family: Arnopro, sans-serif;
  color: hsla(0, 0%, 100%, 0.6);
  font-size: 1.4vw;
  line-height: 2vw;
  font-weight: 400;
  letter-spacing: 0.05vw;
}

.bloque-equipo {
  padding-right: 5vw;
  padding-left: 5vw;
  background-color: #ccc;
}

.img-equipo {
  width: 100%;
}

.col-a-proyecto-f-right {
  position: relative;
  width: 29%;
  float: right;
  text-align: right;
}

.desc-proyecto-f-right {
  width: 86%;
  margin-top: 10vh;
  margin-bottom: 0px;
  float: right;
  color: hsla(0, 0%, 100%, 0.6);
  font-size: 16px;
  line-height: 22px;
}

.menu-hamb {
  display: none;
}

.cerrar-hamb {
  display: none;
}

.cerrar-detalle-servicio {
  display: none;
}

.loader {
  position: fixed;
  left: 0%;
  top: 0%;
  right: 0%;
  bottom: 0%;
  z-index: 2;
  display: block;
  background-color: #ccc;
  background-image: url('/assets/logo.svg');
  background-position: 50% 50%;
  background-size: 5vw;
  background-repeat: no-repeat;
  -webkit-transition: opacity 800ms ease;
  transition: opacity 800ms ease;
}

.loader.out {
  opacity: 0;
}

.loader.hide {
  display: none;
}

.wrapper-servicio {
  width: 33.33%;
  float: left;
}

.nav-tabs {
  margin-bottom: 10vh;
  background-color: #ebebeb;
}

.tab-link {
  width: 33.33%;
  padding-top: 12px;
  padding-right: 12px;
  padding-left: 12px;
  background-color: #ebebeb;
  -webkit-transition: all 500ms cubic-bezier(.23, 1, .32, 1);
  transition: all 500ms cubic-bezier(.23, 1, .32, 1);
  color: rgba(21, 21, 21, 0.27);
}

.tab-link:hover {
  background-color: #fff;
  color: #696f7b;
}

.tab-link.w--current {
  background-color: #fff;
  color: #696f7b;
}

.col-datos {
  width: 60%;
  float: left;
}

.col-datos.larga {
  width: 90%;
}

.col-c-footer {
  width: 50%;
  float: left;
}

.img-contacto {
  width: 94%;
}

.col-redes-contacto {
  margin-top: 2vw;
  float: left;
}

.container-proyectos {
  text-align: center;
}

.espacio-proyectos {
  display: block;
  width: 4%;
  height: 10px;
  float: left;
}

.span-enviar {
  display: block;
}

.col-proyecto {
  width: 48%;
  margin-bottom: 4vw;
  float: left;
}

.titulo-proyecto {
  z-index: 1;
  margin-top: 2vw;
  margin-bottom: 0px;
  float: left;
  clear: both;
  font-family: Gillsans, sans-serif;
  color: #fff;
  font-size: 1.6vw;
  line-height: 2vw;
  font-weight: 400;
  text-align: left;
  letter-spacing: 0.05vw;
}

.ramo-proyecto {
  z-index: 1;
  margin-top: 2vw;
  margin-bottom: 0px;
  margin-left: 2vw;
  float: left;
  font-family: Gillsans, sans-serif;
  color: hsla(0, 0%, 100%, 0.5);
  font-size: 1.6vw;
  line-height: 2vw;
  font-weight: 400;
  text-align: left;
  letter-spacing: 0.05vw;
}

.img-red-social {
  width: 100%;
  height: 100%;
}

.container-nosotros {
  position: relative;
  max-width: 1110px;
  margin-right: auto;
  margin-left: auto;
}

.titulo-servicios {
  position: relative;
  z-index: 1;
  margin-bottom: 0px;
  font-family: Arnopro, sans-serif;
  color: #ccc;
  font-size: 1.4vw;
  line-height: 2vw;
  font-weight: 400;
  text-align: left;
  letter-spacing: 0.05vw;
}

.titulo-proyectos-claro {
  position: relative;
  z-index: 1;
  margin-bottom: 20px;
  font-family: Arnopro, sans-serif;
  color: #fff;
  font-size: 1.4vw;
  line-height: 2vw;
  font-weight: 400;
  letter-spacing: 0.05vw;
}

.titulo-contacto-claro {
  position: relative;
  z-index: 1;
  margin-bottom: 20px;
  font-family: Arnopro, sans-serif;
  color: #fff;
  font-size: 1.4vw;
  line-height: 2vw;
  font-weight: 400;
  letter-spacing: 0.05vw;
}

.alerta-ok {
  display: none;
  margin-bottom: 0px;
  color: rgba(56, 167, 60, 0.6);
  font-size: 16px;
  line-height: 22px;
}

.alerta-error {
  display: none;
  margin-bottom: 0px;
  color: rgba(196, 72, 72, 0.6);
  font-size: 16px;
  line-height: 22px;
}

@media screen and (max-width: 991px) {
  .link-logo {
    width: 4vw;
  }

  .menu-header {
    height: 4vw;
  }

  .intro-video {
    height: 70vh;
  }

  .logo-intro {
    width: 50vw;
  }

  .sub-titulo-nosotros {
    font-size: 14px;
    line-height: 14px;
  }

  .descripci-n-intro {
    font-size: 18px;
    line-height: 23px;
  }

  .titulo-servicio {
    font-size: 14px;
    line-height: 14px;
  }

  .contenido-servicio {
    width: 70%;
  }

  .col-a-intro {
    width: 57%;
    max-width: 400px;
    margin-bottom: 25px;
  }

  .col-a-proyecto {
    width: 41%;
  }

  .img-slide-proyecto {
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
  }

  .desc-proyecto {
    margin-top: 40px;
  }

  .col-a-proyecto-right {
    width: 42%;
  }

  .desc-proyecto-right {
    margin-top: 40px;
  }

  .inicial-titulo-garza-santos {
    font-size: 28px;
    line-height: 36px;
  }

  .input {
    height: 4.5vw;
  }

  .mensaje {
    min-height: 14.5vw;
  }

  .enviar {
    height: auto;
    padding: 13px 10px 10px;
    font-size: 14px;
    line-height: 14px;
  }

  .link-redes {
    width: 3vw;
    height: 3vw;
  }

  .sub-titulo-proyecto {
    margin-top: 0vw;
    font-size: 14px;
    line-height: 14px;
  }

  .col-a-proyecto-f-right {
    width: 41%;
  }

  .desc-proyecto-f-right {
    margin-top: 40px;
  }

  .loader {
    background-size: 8vw;
  }

  .titulo-servicios {
    font-size: 14px;
    line-height: 14px;
  }

  .titulo-proyectos-claro {
    font-size: 14px;
    line-height: 14px;
  }

  .titulo-contacto-claro {
    font-size: 14px;
    line-height: 14px;
  }
}

@media screen and (max-width: 767px) {
  .link-menu {
    font-size: 12px;
    line-height: 12px;
  }

  .link-down {
    display: none;
  }

  .intro-website {
    padding-bottom: 0vh;
  }

  .descripci-n-intro {
    position: static;
    width: 100%;
    margin-bottom: 11vw;
    clear: both;
    font-size: 16px;
    line-height: 20px;
  }

  .imagen-intro {
    position: static;
    width: 100%;
    height: 430px;
    clear: both;
  }

  .contenido-servicio {
    width: 88%;
  }

  .titulo-servicio-detalle {
    font-size: 20px;
    line-height: 24px;
  }

  .col-a-intro {
    width: 100%;
    max-width: 100%;
  }

  .proyectos-bloque {
    padding-bottom: 5vh;
  }

  .titulo-proyectos {
    width: 45vw;
    margin-bottom: 4vh;
    font-size: 16px;
    line-height: 20px;
  }

  .fila-proyecto {
    display: block;
    margin-bottom: 80px;
  }

  .col-a-proyecto {
    width: 100%;
    margin-bottom: 40px;
  }

  .slider-proyectos {
    width: 100%;
    height: auto;
    background-color: #8a8a8a;
  }

  .btn-proyectos {
    display: none;
  }

  .btn-proyectos-right {
    display: none;
  }

  .desc-proyecto {
    width: auto;
    -webkit-column-count: 1;
    column-count: 1;
  }

  .bloque-contacto {
    padding-top: 0vh;
  }

  .dato-contacto {
    width: 100%;
    font-size: 16px;
    line-height: 20px;
  }

  .titulo-contacto {
    font-size: 14px;
    line-height: 14px;
  }

  .col-b-footer {
    width: 100%;
  }

  .input {
    height: 8vw;
  }

  .mensaje {
    min-height: 20vw;
    margin-bottom: 6vw;
  }

  .enviar {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
  }

  .link-redes {
    width: 5vw;
    height: 4vw;
    margin-right: 3vw;
  }

  .col-a-proyecto-f-right {
    width: 100%;
    margin-bottom: 40px;
    text-align: left;
  }

  .desc-proyecto-f-right {
    width: auto;
    -webkit-column-count: 2;
    column-count: 2;
  }

  .loader {
    background-size: 12vw;
  }

  .nav-tabs {
    margin-bottom: 5vh;
  }

  .col-datos {
    width: 100%;
    margin-bottom: 4vw;
  }

  .col-datos.larga {
    width: 65%;
  }

  .col-c-footer {
    width: 100%;
  }

  .img-contacto {
    width: 100%;
    margin-bottom: 4vw;
  }

  .col-proyecto {
    width: 100%;
  }

  .titulo-proyecto {
    font-size: 14px;
    line-height: 14px;
  }

  .alerta-ok {
    font-size: 14px;
    line-height: 14px;
  }

  .alerta-error {
    font-size: 14px;
    line-height: 14px;
  }
}

@media screen and (max-width: 479px) {
  .header {
    position: fixed;
    left: 0%;
    top: 0%;
    right: 0%;
    bottom: auto;
    height: 20vw;
    padding-right: 5vw;
    padding-left: 5vw;
  }

  .link-logo {
    width: 11vw;
  }

  .menu-header {
    position: fixed;
    left: auto;
    top: 0%;
    right: -100vw;
    bottom: 0%;
    display: block;
    width: 100vw;
    height: 100%;
    padding-top: 20vw;
    padding-right: 5vw;
    padding-left: 5vw;
    background-color: #ccc;
    -webkit-transition: all 500ms cubic-bezier(.215, .61, .355, 1);
    transition: all 500ms cubic-bezier(.215, .61, .355, 1);
    text-align: center;
  }

  .menu-header.on-menu {
    right: 0vw;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    padding-top: 50px;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -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;
  }

  .intro-video {
    height: 60vw;
    margin-top: 20vw;
  }

  .link-menu {
    width: 100%;
    margin-bottom: 20px;
    margin-left: 0vw;
    float: left;
    font-size: 15px;
    line-height: 15px;
  }

  .pointer {
    display: none;
  }

  .link-down.w--current {
    display: none;
  }

  .intro-website {
    margin-top: 0vh;
    padding-top: 10vw;
    padding-bottom: 5vh;
    border-bottom: 1px solid #ccc;
  }

  .titulo-garza-santos {
    font-size: 26px;
    line-height: 30px;
  }

  .sub-titulo-nosotros {
    font-size: 16px;
    line-height: 16px;
  }

  .descripci-n-intro {
    position: static;
    width: 100%;
    margin-top: 0px;
    margin-bottom: 30px;
    font-size: 17px;
    line-height: 21px;
  }

  .imagen-intro {
    width: 100%;
    height: 90vw;
    margin-right: 0vw;
    float: right;
    clear: both;
  }

  .servicios-bloque {
    display: block;
    padding: 5vh 5vw;
  }

  .servicio-contenedor {
    width: auto;
    margin-bottom: 20px;
    border-style: none;
  }

  .servicio-contenedor:hover {
    border-style: none;
    border-width: 1px;
  }

  .servicio-contenedor.srgundo {
    margin-top: 0vw;
  }

  .servicio-contenedor.tercero {
    width: auto;
    margin-top: 0vw;
    margin-bottom: 0px;
  }

  .titulo-servicio {
    margin-top: 10px;
  }

  .titulo-servicio.right {
    text-align: left;
  }

  .detalle-servicio {
    display: block;
  }

  .contenido-servicio {
    overflow: scroll;
    width: 100%;
    height: 100%;
  }

  .p-desc-servicio {
    -webkit-column-count: 1;
    column-count: 1;
  }

  .titulo-servicio-detalle {
    float: left;
  }

  .col-a-intro {
    width: auto;
  }

  .proyectos-bloque {
    padding-top: 5vh;
  }

  .titulo-proyectos {
    width: 100%;
    line-height: 22px;
  }

  .col-a-proyecto {
    margin-bottom: 20px;
  }

  .desc-proyecto {
    -webkit-column-count: 1;
    column-count: 1;
  }

  .inicial-titulo-garza-santos {
    font-size: 26px;
    line-height: 30px;
  }

  .bloque-contacto {
    padding-bottom: 60px;
  }

  .col-a-footer {
    width: 100%;
  }

  .dato-contacto {
    width: auto;
    margin-bottom: 0px;
  }

  .col-b-footer {
    width: 100%;
    margin-top: 50px;
  }

  .input {
    height: 12vw;
    margin-bottom: 20px;
    padding-right: 10px;
    padding-left: 10px;
  }

  .mensaje {
    min-height: 32vw;
    margin-bottom: 20px;
    padding: 10px;
  }

  .enviar {
    position: static;
    width: 100%;
    padding-right: 10px;
    padding-left: 10px;
  }

  .link-redes {
    width: 30px;
    height: 30px;
  }

  .desc-proyecto-f-right {
    -webkit-column-count: 1;
    column-count: 1;
  }

  .menu-hamb {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    width: 7vw;
    height: 7vw;
    margin-top: 2vw;
    padding-right: 0px;
    padding-bottom: 0px;
    float: right;
    -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;
    border-top: 1px solid #fff;
    border-bottom: 1px solid #fff;
  }

  .linea-interna-hamb {
    width: 100%;
    height: 0px;
    border-bottom: 1px solid #fff;
  }

  .cerrar-hamb {
    position: relative;
    display: block;
    width: 7vw;
    height: 7vw;
    margin-right: auto;
    margin-bottom: 40px;
    margin-left: auto;
    padding-right: 0px;
    padding-bottom: 0px;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
  }

  .linea-interna-hamb-cerrar-a {
    position: absolute;
    left: 0%;
    top: 3.5vw;
    right: 0%;
    bottom: auto;
    width: 100%;
    height: 0px;
    border-bottom: 1px solid #fff;
  }

  .linea-interna-hamb-cerrar-b {
    width: 0%;
    height: 100%;
    margin-right: auto;
    margin-left: auto;
    border-right: 1px solid #fff;
  }

  .cerrar-detalle-servicio {
    position: relative;
    display: block;
    width: 7vw;
    height: 7vw;
    padding-right: 0px;
    padding-bottom: 0px;
    float: right;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
  }

  .linea-interna-hamb-cerrar-a-obscuro {
    position: absolute;
    left: 0%;
    top: 3.5vw;
    right: 0%;
    bottom: auto;
    width: 100%;
    height: 0px;
    border-bottom: 1px solid #696f7b;
  }

  .linea-interna-hamb-cerrar-b-obscuro {
    width: 0%;
    height: 100%;
    margin-right: auto;
    margin-left: auto;
    border-right: 1px solid #696f7b;
  }

  .loader {
    background-size: 25vw;
  }

  .wrapper-servicio {
    width: 100%;
  }

  .nav-tabs {
    margin-bottom: 5vh;
  }

  .tab-link {
    width: 100%;
  }

  .col-datos {
    margin-bottom: 10vw;
  }

  .col-datos.larga {
    width: 100%;
  }

  .col-redes-contacto {
    margin-top: 8vw;
  }

  .col-proyecto {
    margin-bottom: 8vw;
  }

  .titulo-proyecto {
    margin-top: 4vw;
  }

  .ramo-proyecto {
    float: right;
  }

  .titulo-servicios {
    font-size: 16px;
    line-height: 16px;
  }

  .titulo-proyectos-claro {
    font-size: 16px;
    line-height: 16px;
  }

  .titulo-contacto-claro {
    font-size: 16px;
    line-height: 16px;
  }
}

@font-face {
  font-family: 'Gillsans';
  src: url('../fonts/GillSans-SemiBold.ttf') format('truetype');
  font-weight: 600;
  font-style: normal;
  font-display: auto;
}
@font-face {
  font-family: 'Arnopro';
  src: url('../fonts/ArnoPro-Regular.otf') format('opentype');
  font-weight: 400;
  font-style: normal;
  font-display: auto;
}
@font-face {
  font-family: 'Gillsans';
  src: url('../fonts/GillSans.otf') format('opentype');
  font-weight: 400;
  font-style: normal;
  font-display: auto;
}