/*Global styles*/

:root{
  --pacheco-gray:#686868;
  --pacheco-black:#3c3c3b;
  --pacheco-orange:#ec6404;
  --pacheco-green:#00894c;
  --crabs-font:'Open Sans', sans-serif;
  --dotsystems-color:#f9ee2c;
  --dotsystems-black:#000000;
  --crabs-white:#ffffff;
  }
  
  html{
      scroll-behavior: smooth;
  }

  .text.justify{
    text-align: justify;
  }


/*NAV*/

.upper-nav>a>i{
font-size: 1.4rem;
color:var(--pacheco-orange);
}

.upper-nav>a>span{
  vertical-align: top;
  color:var(--pacheco-gray);
  font-weight: bold;
  padding-left:.7rem!important;
}

.upper-nav>span{
  color:var(--pacheco-gray);
  padding-left:1rem!important;
}

.nav-link{
  font-size: 1.25rem!important;
}

.menu3 {
  height: 100%;
  width: 100%;
  display: flex;
  align-items: center;
  list-style: none;
  
}

.menu3 li
{
  height: 100%;
  margin-right: 30px;
  font-size: 20px;
  position: relative;
  display: flex;
  align-items: center;
  color: var(--pacheco-black);
  transition: all 300ms cubic-bezier(0.075, 0.82, 0.165, 1);
}

.menu3 li:after {
  content: "";
  position: absolute;
  width: 0%;
  height: 1px;
  transition: all 0.3s ease;
  bottom: 0%;
}
.menu3 li:hover::after {
  width: 100%;
  height: 3px;
  background-color: var(--pacheco-green);
}


/* presentation styles */

.line {
    position:absolute; 
    top:35vh;
    left:15vh;
    width: 30%;
    height:38%;
    background-image: url(../IMG/slider-line-1.png);
    background-repeat:  no-repeat;
    background-size: contain;
    
    padding: 1rem;
  }
  
  /* **lineup class and keyframes** */
  .lineUp, .line{
    animation: 2s anim-lineUp ease-out;
  }
  @keyframes anim-lineUp {
    0% {
      opacity: 0;
      transform: translateY(80%);
    }
    20% {
      opacity: 0;
    }
    50% {
      opacity: 1;
      transform: translateY(0%);
    }
    100% {
      opacity: 1;
      transform: translateY(0%);
    }
  }

  .lineUp>div{
    color:antiquewhite;
    padding-top: 5rem;
    padding-left: 5rem;
    overflow: visible;
    width: 30rem;
  }

  .lineUp>div>h2{
    font-size: 2.5rem;
    color: var(--pacheco-orange);
    font-weight: bold;
  }
/*Know-us section*/

.img-factory{
  box-shadow: rgba(50, 50, 93, 0.25) 0px 13px 27px -5px, rgba(0, 0, 0, 0.3) 0px 8px 16px -8px;
  border-radius: 5px;
}

/*our services Styles*/

.underline{
    background-color: red;
    height: .3rem;
    width:8rem;
    margin:1.5rem auto;
}

/*Our products section*/

.window-container{
  height: 45vh;
}

.hover-effect {
  /*width: calc(25% - 30px);*/
  float: left;
  text-align: center;
  height: 45vh;
  overflow: hidden;
  position: relative;
  display: inline-block;
  vertical-align: top;
  /*margin: 15px 15px;*/
      -moz-transition: 0.3s;
      -o-transition: 0.3s;
      -webkit-transition: 0.3s;
      transition: 0.3s;
}

  .hover-effect img {
      -moz-transition: 0.3s;
      -o-transition: 0.3s;
      -webkit-transition: 0.3s;
      transition: 0.3s;
      background-size: cover;
      height: 100%;
     width: 100%;
     left:0;
     right:0;
  }

  .hover-effect .description {
      position: absolute;
      top: 0;
      left:0;
      right:0;
      background: orange;
      width: 100%;
      height: 100%;
      opacity: 0;
      -moz-transition: 0.3s;
      -o-transition: 0.3s;
      -webkit-transition: 0.3s;
      transition: 0.3s;
  }

.hover-effect .description h2,
.hover-effect .description p{
 max-width: 90%;
 display: block;
 margin: 0 auto;
}


      .hover-effect .description h2 {
          font-size: 36px;
          -moz-transform: translateY(-25px);
          -ms-transform: translateY(-25px);
          -o-transform: translateY(-25px);
          -webkit-transform: translateY(-25px);
          transform: translateY(-25px);
          -moz-transition: 0.3s;
          -o-transition: 0.3s;
          -webkit-transition: 0.3s;
          transition: 0.3s;
          padding-top: 55px;
      }

  .hover-effect .description p {
      font-size: 1.2rem;
      -moz-transform: translateY(25px);
      -ms-transform: translateY(25px);
      -o-transform: translateY(25px);
      -webkit-transform: translateY(25px);
      transform: translateY(25px);
      -moz-transition: 0.3s;
      -o-transition: 0.3s;
      -webkit-transition: 0.3s;
      transition: 0.3s;
  }

  .hover-effect:hover img {
      -moz-transform: scale(1.1);
      -ms-transform: scale(1.1);
      -o-transform: scale(1.1);
      -webkit-transform: scale(1.1);
      transform: scale(1.1);
  }

.hover-effect:hover .description{
 opacity: 0.75;
 cursor: pointer;
}

  .hover-effect:hover .description h2,
  .hover-effect:hover .description p {
      -moz-transform: translateY(0);
      -ms-transform: translateY(0);
      -o-transform: translateY(0);
      -webkit-transform: translateY(0);
      transform: translateY(0);
  }



/*social-buttons dotSystems*/

.social-buttons {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  margin-top: -10px;
}
.social-buttons__button {
  margin: 10px 5px 0;
}

.social-button {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  outline: none;
  width: 35px;
  height: 35px;
  text-decoration: none;
}
.social-button__inner {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: calc(100% - 2px);
  height: calc(100% - 2px);
  border-radius: 100%;
  background: #fff;
  text-align: center;
}
.social-button i,
.social-button svg {
  position: relative;
  z-index: 1;
  transition: 0.3s;
}
.social-button i {
  font-size: 1.2rem;
}
.social-button svg {
  height: 40%;
  width: 40%;
}
.social-button::after {
  content: "";
  position: absolute;
  top: 0;
  left: 50%;
  display: block;
  width: 0;
  height: 0;
  border-radius: 100%;
  transition: 0.3s;
}
.social-button:focus, .social-button:hover {
  color: #fff;
}
.social-button:focus::after, .social-button:hover::after {
  width: 100%;
  height: 100%;
  margin-left: -50%;
}
.social-button--mail {
  color: #0072c6;
}
.social-button--mail::after {
  background: #0072c6;
}
.social-button--facebook {
  color: #3b5999;
}
.social-button--facebook::after {
  background: #3b5999;
}
.social-button--linkedin {
  color: #0077b5;
}
.social-button--linkedin::after {
  background: #0077b5;
}
.social-button--github {
  color: #6e5494;
}
.social-button--github::after {
  background: #6e5494;
}
.social-button--codepen {
  color: #212121;
}
.social-button--codepen::after {
  background: #212121;
}
.social-button--steam {
  color: #7da10e;
}
.social-button--steam::after {
  background: #7da10e;
}
.social-button--snapchat {
  color: #eec900;
}
.social-button--snapchat::after {
  background: #eec900;
}
.social-button--twitter {
  color: #55acee;
}
.social-button--twitter::after {
  background: #55acee;
}
.social-button--instagram {
  color: #e4405f;
}
.social-button--instagram::after {
  background: #e4405f;
}
.social-button--youtube {
  color: #FF0000;
}
.social-button--youtube::after {
  background: #FF0000;
}

/*nuestros servicios*/

.icon-services{
  height: 6rem;
  width: 6rem;
  margin: 1rem;
  padding: .5rem;
  background-color: #c2c2c2;
  border-radius: 20%;
  box-shadow: rgba(50, 50, 93, 0.25) 0px 13px 27px -5px, rgba(0, 0, 0, 0.3) 0px 8px 16px -8px;
  overflow: hidden;
  margin: auto;
  
}

.icon-services img{
  width: 100%;
  height:100%;
  object-fit: cover;
  transition: transform 400ms;
}

.icon-services:hover img{

  transform: scale(1.1);
}

/*marcas*/

.brands{
  height: 4rem;
  width: auto;
  display: flex;
  justify-content: center;
  align-items: center;
}

.brands img{
  width: 60%;
  height: auto;
}

/*jobs*/

.jobs-container{
  overflow: visible;
}

.jobs-img{
  box-shadow: rgba(50, 50, 93, 0.25) 0px 13px 27px -5px, rgba(0, 0, 0, 0.3) 0px 8px 16px -8px;
  border-radius: 5px;
  transition: transform 400ms;
}

.jobs-img:hover{
  transform:scale(1.1);
}

/*contact*/

.g-maps{
  height: 50vh!important;
  width: 100%!important;
}

.contact-info{
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
}

.dot-link{
  text-decoration: none!important;
  transition: color 400ms;
  color: #ffffff;
  font-weight: bold;
}

.dot-link:hover{
  color: var(--dotsystems-color);
}



/********************************/
/*          Media Queries       */
/********************************/

@media screen and (max-width: 640px){
  .navbar-brand>img{
    width: 60%;
  }
  .upper-nav>a>i{
    font-size: 1rem;
  }
  .nav-link{
    font-size: .2rem;;
  }
  .menu3 li{
    margin-right: 5px;
    font-size: .8rem;
    display: inline;
  }
  .no-display-sm{
    display: none;
  }
}

@media(max-width: 1200px){
  .hover-effect {
   width: calc(50% - 30px);
 }
 }
 
 @media(max-width: 480px){
  .hover-effect {
   width: calc(100% - 30px);
     float: none;
 }
  .hover-effect .description h2{
   font-size: 30px;
 }
  .hover-effect .description p{
   font-size: 18px;
 }
 }

 @media screen and (min-width: 801px){
  .no-display-md{
    display: none!important;
  }

 }