:root{
  --color1: rgb(41, 128, 185);
  --color2: rgba(23, 180, 83, 0.877);
  --color3: rgba(11,194,211, 0.623);
  --color4: rgb(0,13,26);
  --color5: rgb(94,223,255);
  --fondo: #f2f2f2;
  --titulos: 33px;
  --margenes: 60px;
  --espacios: 10px;
  --aboutus: 20px;
  --espacios-contenido:45px;
}

* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

body {
  font-family: 'open sans';
  background: var(--fondo);
}

img{
  vertical-align: top;
}


/* Preloader */
.lds-ripple {
  display: inline-block;
  position: relative;
  width: 64px;
  height: 64px;
}
.lds-ripple div {
  position: absolute;
  border: 4px solid #fff;
  opacity: 1;
  border-radius: 50%;
  animation: lds-ripple 1s cubic-bezier(0, 0.2, 0.8, 1) infinite;
}
.lds-ripple div:nth-child(2) {
  animation-delay: -0.5s;
}
@keyframes lds-ripple {
  0% {
    top: 28px;
    left: 28px;
    width: 0;
    height: 0;
    opacity: 1;
  }
  100% {
    top: -1px;
    left: -1px;
    width: 58px;
    height: 58px;
    opacity: 0;
  }
}


/* Wrapper */

  .wrapper {
    padding: 6em 0 4em 0;
    position: relative;
  }

    .wrapper .inner {
      margin: 0 auto;
      width: 80em;
      position: relative;
      z-index: 99;
    }

    .wrapper header {
      margin-bottom: 4em;
    }

      @media screen and (max-width: 736px) {

        .wrapper header {
          margin-bottom: 2em;
        }

      }

    .wrapper.style1 {
      background-color: #fafafa;
      color: #999999;
    }

      .wrapper.style1 input, .wrapper.style1 select, .wrapper.style1 textarea {
        color: #000;
      }

      .wrapper.style1 a {
        color: #000;
      }

        .wrapper.style1 a:hover {
          color: rgba(0, 0, 0, 0.5);
        }

      .wrapper.style1 strong, .wrapper.style1 b {
        color: #000;
      }

      .wrapper.style1 h1, .wrapper.style1 h2, .wrapper.style1 h3, .wrapper.style1 h4, .wrapper.style1 h5, .wrapper.style1 h6 {
        color: #000;
      }

      .wrapper.style1 blockquote {
        border-left-color: rgba(0, 0, 0, 0.15);
      }

      .wrapper.style1 code {
        background: rgba(0, 0, 0, 0.075);
        border-color: rgba(0, 0, 0, 0.15);
      }

      .wrapper.style1 hr {
        border-bottom-color: rgba(0, 0, 0, 0.15);
      }

      .wrapper.style1 .box {
        border-color: rgba(0, 0, 0, 0.15);
      }

      .wrapper.style1 input[type="submit"],
      .wrapper.style1 input[type="reset"],
      .wrapper.style1 input[type="button"],
      .wrapper.style1 button,
      .wrapper.style1 .button {
        background-color: #3498db;
        color: #fff !important;
      }

        .wrapper.style1 input[type="submit"]:hover,
        .wrapper.style1 input[type="reset"]:hover,
        .wrapper.style1 input[type="button"]:hover,
        .wrapper.style1 button:hover,
        .wrapper.style1 .button:hover {
          background-color: #4aa3df;
        }

        .wrapper.style1 input[type="submit"]:active,
        .wrapper.style1 input[type="reset"]:active,
        .wrapper.style1 input[type="button"]:active,
        .wrapper.style1 button:active,
        .wrapper.style1 .button:active {
          background-color: #258cd1;
        }

        .wrapper.style1 input[type="submit"].alt,
        .wrapper.style1 input[type="reset"].alt,
        .wrapper.style1 input[type="button"].alt,
        .wrapper.style1 button.alt,
        .wrapper.style1 .button.alt {
          background-color: transparent;
          box-shadow: inset 0 0 0 2px rgba(0, 0, 0, 0.15);
          color: #000 !important;
        }

          .wrapper.style1 input[type="submit"].alt:hover,
          .wrapper.style1 input[type="reset"].alt:hover,
          .wrapper.style1 input[type="button"].alt:hover,
          .wrapper.style1 button.alt:hover,
          .wrapper.style1 .button.alt:hover {
            background-color: rgba(0, 0, 0, 0.075);
          }

          .wrapper.style1 input[type="submit"].alt:active,
          .wrapper.style1 input[type="reset"].alt:active,
          .wrapper.style1 input[type="button"].alt:active,
          .wrapper.style1 button.alt:active,
          .wrapper.style1 .button.alt:active {
            background-color: rgba(0, 0, 0, 0.2);
          }

          .wrapper.style1 input[type="submit"].alt.icon:before,
          .wrapper.style1 input[type="reset"].alt.icon:before,
          .wrapper.style1 input[type="button"].alt.icon:before,
          .wrapper.style1 button.alt.icon:before,
          .wrapper.style1 .button.alt.icon:before {
            color: #bfbfbf;
          }

        .wrapper.style1 input[type="submit"].special,
        .wrapper.style1 input[type="reset"].special,
        .wrapper.style1 input[type="button"].special,
        .wrapper.style1 button.special,
        .wrapper.style1 .button.special {
          background-color: #000;
          color: #fafafa !important;
        }

      .wrapper.style1 label {
        color: #000;
      }

      .wrapper.style1 input[type="text"],
      .wrapper.style1 input[type="password"],
      .wrapper.style1 input[type="email"],
      .wrapper.style1 select,
      .wrapper.style1 textarea {
        background: rgba(0, 0, 0, 0.075);
        border-color: rgba(0, 0, 0, 0.15);
      }

        .wrapper.style1 input[type="text"]:focus,
        .wrapper.style1 input[type="password"]:focus,
        .wrapper.style1 input[type="email"]:focus,
        .wrapper.style1 select:focus,
        .wrapper.style1 textarea:focus {
          border-color: #000;
          box-shadow: 0 0 0 1px #000;
        }

      .wrapper.style1 .select-wrapper:before {
        color: rgba(0, 0, 0, 0.15);
      }

      .wrapper.style1 input[type="checkbox"] + label,
      .wrapper.style1 input[type="radio"] + label {
        color: #999999;
      }

        .wrapper.style1 input[type="checkbox"] + label:before,
        .wrapper.style1 input[type="radio"] + label:before {
          background: rgba(0, 0, 0, 0.075);
          border-color: rgba(0, 0, 0, 0.15);
        }

      .wrapper.style1 input[type="checkbox"]:checked + label:before,
      .wrapper.style1 input[type="radio"]:checked + label:before {
        background-color: #000;
        border-color: #000;
        color: #fafafa;
      }

      .wrapper.style1 input[type="checkbox"]:focus + label:before,
      .wrapper.style1 input[type="radio"]:focus + label:before {
        border-color: #000;
        box-shadow: 0 0 0 1px #000;
      }

      .wrapper.style1 ::-webkit-input-placeholder {
        color: #bfbfbf !important;
      }

      .wrapper.style1 :-moz-placeholder {
        color: #bfbfbf !important;
      }

      .wrapper.style1 ::-moz-placeholder {
        color: #bfbfbf !important;
      }

      .wrapper.style1 :-ms-input-placeholder {
        color: #bfbfbf !important;
      }

      .wrapper.style1 .formerize-placeholder {
        color: #bfbfbf !important;
      }

      .wrapper.style1 ul.alt li {
        border-top-color: rgba(0, 0, 0, 0.15);
      }

      .wrapper.style1 header p {
        color: #bfbfbf;
      }

      .wrapper.style1 table tbody tr {
        border-color: rgba(0, 0, 0, 0.15);
      }

        .wrapper.style1 table tbody tr:nth-child(2n + 1) {
          background-color: rgba(0, 0, 0, 0.075);
        }

      .wrapper.style1 table th {
        color: #000;
      }

      .wrapper.style1 table thead {
        border-bottom-color: rgba(0, 0, 0, 0.15);
      }

      .wrapper.style1 table tfoot {
        border-top-color: rgba(0, 0, 0, 0.15);
      }

      .wrapper.style1 table.alt tbody tr td {
        border-color: rgba(0, 0, 0, 0.15);
      }

    .wrapper.style2 {
      background-color: #3498db;
      color: #aed6f1;
    }

      .wrapper.style2 input, .wrapper.style2 select, .wrapper.style2 textarea {
        color: #fff;
      }

      .wrapper.style2 a {
        color: #999999;
      }

        .wrapper.style2 a:hover {
          color: rgba(153, 153, 153, 0.5);
        }

      .wrapper.style2 strong, .wrapper.style2 b {
        color: #fff;
      }

      .wrapper.style2 h1, .wrapper.style2 h2, .wrapper.style2 h3, .wrapper.style2 h4, .wrapper.style2 h5, .wrapper.style2 h6 {
        color: #fff;
      }

      .wrapper.style2 blockquote {
        border-left-color: rgba(255, 255, 255, 0.25);
      }

      .wrapper.style2 code {
        background: rgba(255, 255, 255, 0.075);
        border-color: rgba(255, 255, 255, 0.25);
      }

      .wrapper.style2 hr {
        border-bottom-color: rgba(255, 255, 255, 0.25);
      }

      .wrapper.style2 .box {
        border-color: rgba(255, 255, 255, 0.25);
      }

      .wrapper.style2 input[type="submit"],
      .wrapper.style2 input[type="reset"],
      .wrapper.style2 input[type="button"],
      .wrapper.style2 button,
      .wrapper.style2 .button {
        background-color: #fff;
        color: #3498db !important;
      }

        .wrapper.style2 input[type="submit"].alt,
        .wrapper.style2 input[type="reset"].alt,
        .wrapper.style2 input[type="button"].alt,
        .wrapper.style2 button.alt,
        .wrapper.style2 .button.alt {
          background-color: transparent;
          box-shadow: inset 0 0 0 2px rgba(255, 255, 255, 0.25);
          color: #fff !important;
        }

          .wrapper.style2 input[type="submit"].alt:hover,
          .wrapper.style2 input[type="reset"].alt:hover,
          .wrapper.style2 input[type="button"].alt:hover,
          .wrapper.style2 button.alt:hover,
          .wrapper.style2 .button.alt:hover {
            background-color: rgba(255, 255, 255, 0.075);
          }

          .wrapper.style2 input[type="submit"].alt:active,
          .wrapper.style2 input[type="reset"].alt:active,
          .wrapper.style2 input[type="button"].alt:active,
          .wrapper.style2 button.alt:active,
          .wrapper.style2 .button.alt:active {
            background-color: rgba(255, 255, 255, 0.2);
          }

          .wrapper.style2 input[type="submit"].alt.icon:before,
          .wrapper.style2 input[type="reset"].alt.icon:before,
          .wrapper.style2 input[type="button"].alt.icon:before,
          .wrapper.style2 button.alt.icon:before,
          .wrapper.style2 .button.alt.icon:before {
            color: #67b2e4;
          }

        .wrapper.style2 input[type="submit"].special,
        .wrapper.style2 input[type="reset"].special,
        .wrapper.style2 input[type="button"].special,
        .wrapper.style2 button.special,
        .wrapper.style2 .button.special {
          background-color: #fafafa;
          color: #000 !important;
        }

          .wrapper.style2 input[type="submit"].special:hover,
          .wrapper.style2 input[type="reset"].special:hover,
          .wrapper.style2 input[type="button"].special:hover,
          .wrapper.style2 button.special:hover,
          .wrapper.style2 .button.special:hover {
            background-color: white;
          }

          .wrapper.style2 input[type="submit"].special:active,
          .wrapper.style2 input[type="reset"].special:active,
          .wrapper.style2 input[type="button"].special:active,
          .wrapper.style2 button.special:active,
          .wrapper.style2 .button.special:active {
            background-color: #ededed;
          }

      .wrapper.style2 label {
        color: #fff;
      }

      .wrapper.style2 input[type="text"],
      .wrapper.style2 input[type="password"],
      .wrapper.style2 input[type="email"],
      .wrapper.style2 select,
      .wrapper.style2 textarea {
        background: rgba(255, 255, 255, 0.075);
        border-color: rgba(255, 255, 255, 0.25);
      }

        .wrapper.style2 input[type="text"]:focus,
        .wrapper.style2 input[type="password"]:focus,
        .wrapper.style2 input[type="email"]:focus,
        .wrapper.style2 select:focus,
        .wrapper.style2 textarea:focus {
          border-color: #fafafa;
          box-shadow: 0 0 0 1px #fafafa;
        }

      .wrapper.style2 .select-wrapper:before {
        color: rgba(255, 255, 255, 0.25);
      }

      .wrapper.style2 input[type="checkbox"] + label,
      .wrapper.style2 input[type="radio"] + label {
        color: #aed6f1;
      }

        .wrapper.style2 input[type="checkbox"] + label:before,
        .wrapper.style2 input[type="radio"] + label:before {
          background: rgba(255, 255, 255, 0.075);
          border-color: rgba(255, 255, 255, 0.25);
        }

      .wrapper.style2 input[type="checkbox"]:checked + label:before,
      .wrapper.style2 input[type="radio"]:checked + label:before {
        background-color: #fafafa;
        border-color: #fafafa;
        color: #000;
      }

      .wrapper.style2 input[type="checkbox"]:focus + label:before,
      .wrapper.style2 input[type="radio"]:focus + label:before {
        border-color: #fafafa;
        box-shadow: 0 0 0 1px #fafafa;
      }

      .wrapper.style2 ::-webkit-input-placeholder {
        color: #67b2e4 !important;
      }

      .wrapper.style2 :-moz-placeholder {
        color: #67b2e4 !important;
      }

      .wrapper.style2 ::-moz-placeholder {
        color: #67b2e4 !important;
      }

      .wrapper.style2 :-ms-input-placeholder {
        color: #67b2e4 !important;
      }

      .wrapper.style2 .formerize-placeholder {
        color: #67b2e4 !important;
      }

      .wrapper.style2 ul.alt li {
        border-top-color: rgba(255, 255, 255, 0.25);
      }

      .wrapper.style2 header p {
        color: #67b2e4;
      }

      .wrapper.style2 table tbody tr {
        border-color: rgba(255, 255, 255, 0.25);
      }

        .wrapper.style2 table tbody tr:nth-child(2n + 1) {
          background-color: rgba(255, 255, 255, 0.075);
        }

      .wrapper.style2 table th {
        color: #fff;
      }

      .wrapper.style2 table thead {
        border-bottom-color: rgba(255, 255, 255, 0.25);
      }

      .wrapper.style2 table tfoot {
        border-top-color: rgba(255, 255, 255, 0.25);
      }

      .wrapper.style2 table.alt tbody tr td {
        border-color: rgba(255, 255, 255, 0.25);
      }

      .wrapper.style2 .image {
        box-shadow: 0px 0px 0px 7px #3498db, 0px 0px 0px 8px rgba(255, 255, 255, 0.25);
      }

    @media screen and (max-width: 1280px) {

      .wrapper > .inner {
        width: 60em;
      }

    }

    @media screen and (max-width: 980px) {

      .wrapper > .inner {
        width: 90%;
      }

    }

    @media screen and (max-width: 736px) {

      .wrapper {
        padding: 3em 0 1em 0;
      }

    }


/* Header efecto de degradado en la imagen principal*/
header{
  width: 100%;
  height:600px;
  background: linear-gradient(to bottom,
  rgba(40, 116, 166, .4),
  rgba(39, 55, 70, .7)
  ), url(img/fondo.jpeg);
  background-attachment: fixed;
  background-position: center;
  background-size: cover;
}
/* configuracion de la barra de navegacion*/
nav{
  width: 100%;
  position: fixed;
  box-shadow: 0 0 10px 0 rgba(0,0,0,.9)
}
/* Estado 1 de la barra de navegacion*/
.nav1{
  background: transparent;
  height: 85px;
  color:#f2f2f2;
}
/* Estado 2 de la barra de navegacion*/
.nav2{
  background: var(--fondo);
  height:100px;
  color:#000;
}
/* contenedor del logo*/
.contenedor-nav{
  display: flex;
  margin: auto;
  width: 90%;
  justify-content: space-between;
  align-items: center;
  max-width:1000px;
  height:inherit;
  overflow: hidden;
}
/* enlaces del nav*/
nav .enlaces a{
  display: inline-block;
  padding: 5px 0;
  margin-right: 17px;
  font-size: 19px;
  font-weight: 300;
  text-decoration: none;
  border-bottom: 3px solid transparent;
  color: inherit;
}
/* Efecto del nav al pasar sobre opciones*/
nav .enlaces a:hover{
  border-bottom: 3px solid #1498a4;
  transition: 0.6s;
}
/* tamaño del logo*/
.logo, .logo img{ height:65px;}

.icono{
  display:none;
  font-size: 24px;
  padding: 20.5px 20px;
}
/* Textos del Nav*/
.textos{
  width: 100%;
  height: 100%;
  display:flex;
  justify-content: center;
  flex-direction: column;
  align-items: center;
  color:#fff;
  overflow: hidden;
  text-align: center;
}
/* Tamaño de textos*/
.textos>h1{font-size:80px;;}
.textos>h2{font-size: 30px; font-weight: 300;}

/* Main */
/* configuracion de los contenedores*/
.contenedor{
  margin:auto;
  padding: var(--margenes) 0;
  width: 90%;
  max-width: 1000px;
  text-align: center;
  overflow: hidden;
}
/*h3 dentro de contenedor*/
.contenedor h3{
  font-size: var(--titulos);
  color: var(--color1);
  margin-bottom: var(--espacios);
}
/*p dentro de contenedor*/
.contenedor p{
  font-size: var(--aboutus);
  font-weight: 300;
  color: var(--color4);
}

/* Configuracion de ubicacion*/
.ubicacion{
  margin:auto;
  padding: var(--margenes) 0;
  width: 90%;
  max-width: 1000px;
  text-align: center;
  overflow: hidden;
}
/*h3 dentro de ubicacion*/
.ubicacion h3{
  font-size: var(--titulos);
  color: var(--color1);
  margin-bottom: var(--espacios);
}
/*p dentro de ubicacion*/
.ubicacion p{
  font-size: var(--aboutus);
  font-weight: 300;
  color: var(--color4);
}


/* configuracion de los contenedores*/
.contenedor-01{
  margin:auto;
  padding: var(--margenes) 0;
  width: 90%;
  max-width: 1000px;
  text-align: center;
  overflow: hidden;
}
/*h3 dentro de contenedor*/
.contenedor-01 h3{
  font-size: var(--titulos);
  color: var(--color1);
  margin-bottom: var(--espacios);
}
/*p dentro de contenedor*/
.contenedor-01 p{
  font-size: var(--aboutus);
  font-weight: 300;
  color: var(--color5);
}
.acerca{
  text-align: justify;
  padding-top: 15px;
}

/*despues de la clase after agrega esta caja "una rayita naranja"*/
.after::after{
  content:'';
  display: block;
  margin: auto;
  margin-top: var(--espacios);
  width: 100px;
  height: 2px;
  background: var(--color1);
  margin-bottom: var(--espacios-contenido);
}

.card{
  display: flex;
  justify-content: space-around; /*sombreado*/
  flex-wrap: wrap;
}

.content-card{
  width: 31%;
  box-shadow: 0 0 6px 0 rgba(0,0,0,.5);
  overflow: hidden;
  height:400px;
}

.people{
  height: 80%;
}

.content-card img{
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.texto-team{
  height: 20%;
  width: 100%;
  padding: var(--espacios) 0;
}
/*imagen de nuestros servicios*/
.about{
  background: url(img/tecnologia_thumb.jpg);
  height: auto;
}

.servicios{
  display: flex;
  color:#fff;
  justify-content: space-between;
  margin: auto;
  flex-wrap: wrap;
}
.caja-servicios{
  width: 30%;
  margin: auto;
  text-align: center;
}
.caja-servicios>h4{
  margin-bottom: var(--espacios);
}

.caja-servicios>p{
  text-align: center;
}

.botones-work{
  overflow: hidden;
}

.botones-work li{
  display: inline-block;
  text-align: center;
  margin-left: var(--espacios);
  margin-bottom: var(--espacios-contenido);
  padding: 6px 12px;
  border: 1px solid var(--color1);
  list-style: none;
  color: var(--color1);
}

.botones-work li:hover{
  background: var(--color1);
  color:#fff;
  cursor: pointer;
}

.botones-work .active{
  background: var(--color1);
  color:#fff;
}

.galeria-work{
  display:flex;
  flex-wrap: wrap;
  justify-content: space-around;
}

.cont-work{
  width: 31%;
  box-shadow: 0 0 6px 0 rgba(0,0,0,.5);
  height:300px;
  overflow: hidden;
  margin-bottom: var(--espacios-contenido);
}

.img-work{
  height: 90%;
  width: 100%;
}

.img-work img{
  height: 100%;
  width: 100%;
  object-fit: cover;
}

.textos-work{
  height: 10%;
}

.textos-work h4{
  line-height: 30px;
  font-weight: 300;
}

/* Footer */

footer{background:url(img/teclado.jpg);}

.marca-logo{
  width: 40%;
  margin: auto;
  margin-bottom: var(--espacios);
}
.marca-logo img{
  width: 100%;
}

.fab{
  font-size:60px;
  color: #FFF;
  margin-bottom: var(--espacios);
  display: inline-block;
}

footer p{
  margin-top:var(--espacios);
}

@media screen and (max-width: 700px){
  .nav2{
    color: #fff;
  }

  .icono{
    display:block;
    cursor: pointer;
  }

  .enlaces{
    position: fixed;
    top:80px;
    background: #2c3e50;
    left: 0;
    height: 100%;
    transition: 1s;
    width: 0;
    overflow: hidden;
  }

  .enlaces a{
    display: block;
    width: 100%;
    height: 50px;
    padding: 20px;
    text-align: center;
    background: #34495e;
    color:#fff;
  }

  .textos>h1{font-size: 70px;}
  .textos>h2{font-size:35px;}

  .content-card{
    width: 48%;
    margin-bottom:var(--margenes);
  }

  :root{
    --margenes: 30px;
  }
}

@media screen and (max-width: 500px){
  :root{
    --espacios-contenido: 25px;
  }

  .content-card{
    width: 90%;
  }

  .caja-servicios{
    width: 90%;
    margin-bottom: var(--margenes);
  }

  .cont-work{
    width: 85%;
  }

  .marca-logo{
    width: 50%;
  }

  .iconos{
    margin: auto;
  }
}