@font-face {
  font-family: 'Source Sans', sans-serif;
  src: url('SourceSansPro/SourceSansPro-Regular.ttf');
  font-style: normal;
}
@font-face {
  font-family: 'Source Sans', sans-serif;
  src: url('SourceSansPro/SourceSansPro-Bold.ttf');
  font-weight: bold;
}
.space { margin-top: 1em; margin-bottom: 1em; }
.max-space { margin-top: 2em; margin-bottom: 2em; }
.blue { color: #009ADE; }
.white { color: #fff; }
.bg-blue { background: #0C3872; }
.bg-blues { background: #4E738A; }
.bg-black { background: #000; }
.bg-gray { background: #E2E3E0; }

h1, h2, h3, h4 { color: #333; }
.bold { font-weight: bold; }

.top-menu { padding-top: 3em; padding-bottom: 2em; }
.bg-head { background: url('../img/bgs/banner.jpg')no-repeat center; background-size: cover; }
.bg-footer { background: url('../img/bgs/contacto.jpg')no-repeat center; background-size: cover; }
.box-welc { margin-top: 100px; margin-bottom: 200px; }
.box-welc h1 { text-transform: uppercase; }
.box-intro { padding-top: 2em; padding-bottom: 2em; }
.box-const { padding-top: 1em; padding-bottom: 1em; }
.box-pyme { padding-top: 6em; }
.box-venta { padding-top: 4em; padding-bottom: 4em; }
.box-proyecto-r { padding: 4em; max-width: 800px; }
.box-proyecto-r p { padding-top: 3em; padding-bottom: 3em; }
.box-contact { padding-top: 4em; padding-bottom: 4em;  }
.box-contact * { color: #fff; }
.brand { padding-top: 1em; padding-bottom: 1em; }
.logo-foot { max-height: 100px; }


#wrp-contacto input[type="text"], #wrp-contacto input[type="email"], #wrp-contacto textarea { 
  box-shadow: none; 
  background-color: #fff; 
  border: none; 
  border-bottom: solid 2px silver; 
}
.menu-hover-lines {
  text-align: center;  
  transition: all 0.35s ease;
}
.menu-hover-lines li a {
  padding: 0.5rem .25em;
  position: relative;
  margin-left: 1rem;
}
.menu-hover-lines li:first-child a {
  margin-left: 0;
}
.menu-hover-lines li.active > a {
  background-color: transparent;
}
.menu-hover-lines a::after {
  height: 3px;
  position: absolute;
  content: '';
  transition: all 0.35s ease;
  background-color: #45a041;
  width: 0;
}
.menu-hover-lines a::after {
  bottom: 0;
  right: 0;
}
.menu-hover-lines a:hover,
.menu-hover-lines li.active > a {
  transition: all 0.35s ease;
}
.menu-hover-lines a:hover::after,
.menu-hover-lines .active a::after {
  width: 100%;
}