/* Image */

.image {
  border: 0;
  display: inline-block;
  position: relative;
}

.image:after {
  -moz-transition: opacity 0.25s ease-in-out;
  -webkit-transition: opacity 0.25s ease-in-out;
  -ms-transition: opacity 0.25s ease-in-out;
  transition: opacity 0.25s ease-in-out;
  background-image: url("assets/img/2022/Infraestructura/overlay.png");
  content: '';
  display: block;
  height: 100%;
  left: 0;
  opacity: 0.2;
  position: absolute;
  top: 0;
  width: 100%;
}

.image img {
  display: block;
}

.image.fit {
  display: block;
}

.image.fit img {
  display: block;
  width: 100%;
}

.image.feature {
  display: block;
  margin: 0 0 2em 0;
}

.image.feature img {
  display: block;
  width: 100%;
}

.image.icon {
  -moz-perspective: 500px;
  -webkit-perspective: 500px;
  -ms-perspective: 500px;
  perspective: 500px;
}

.image.icon:before {
  -moz-transition: -moz-transform 0.1s ease-in-out, font-size 0.1s ease-in-out;
  -webkit-transition: -webkit-transform 0.1s ease-in-out, font-size 0.1s ease-in-out;
  -ms-transition: -ms-transform 0.1s ease-in-out, font-size 0.1s ease-in-out;
  transition: transform 0.1s ease-in-out, font-size 0.1s ease-in-out;
  color: #fff;
  font-size: 6em;
  height: 1em;
  left: 50%;
  line-height: 1em;
  margin: -0.5em 0 0 -0.5em;
  position: absolute;
  text-align: center;
  top: 50%;
  width: 1em;
  z-index: 1;
}

.image.icon:hover:before {
  -moz-transform: translateZ(1em);
  -webkit-transform: translateZ(1em);
  -ms-transform: translateZ(1em);
  transform: translateZ(1em);
}

.image.icon:hover:after {
  opacity: 1;
}

span.image.icon {
  cursor: default;
}

/* Box */

.box {
  background: #ffffff;
  border: solid 1px rgba(224, 224, 224, 0.75);
  margin-bottom: 6em;
  padding: 3.5em;
}

.box.alt {
  background: #fff;
  border: none;
  padding: 0;
}

/* Feature */

.feature {
  position: relative;
  height: 20em;
}

.feature-more{
  height: 33em !important;
}

.feature:after {
  clear: both;
  content: '';
  display: block;
}

.feature h3,
.feature h4,
.feature h5,
.feature h6 {
  text-align: inherit;
}

.feature .image {
  display: inline-block;
  height: 100%;
  overflow: hidden;
  position: relative;
  width: 50%;
}

.feature .image img {
  display: block;
  min-height: 100%;
  min-width: 100%;
  position: absolute;
}

.feature:before {
  background: blue;
  content: '';
  display: inline-block;
  height: 100%;
  vertical-align: middle;
}

.feature .content {
  display: inline-block;
  padding: 3.5em;
  vertical-align: middle;
  width: 48%;
}

.feature .content h3 {
  margin-bottom: 0.5em;
}

.feature .content :last-child {
  margin: 0;
}

.feature.left {
  text-align: left;
}

.feature.left .image {
  float: left;
}

.feature.left .image img {
  right: 0;
  top: 0;
}

.feature.left .content {
  padding-right: 0;
  text-align: justify;
}

.feature.right {
  text-align: right;
}

.feature.right .image {
  float: right;
}

.feature.right .image img {
  left: 0;
  top: 0;
}

.feature.right .content {
  padding-left: 0;
  text-align: justify;
}

.feature.long .content {
  padding-top: 0;
}

.feature .content h3 {
  margin-bottom: 0.5em;
}

.image.icon:before {
  color: #fff;
  font-size: 6em;
  height: 1em;
  left: 50%;
  line-height: 1em;
  margin: -0.5em 0 0 -0.5em;
  position: absolute;
  text-align: center;
  top: 50%;
  width: 1em;
  z-index: 1;
}

#header {
  background-attachment: scroll, scroll, fixed;
  background-image: url("assets/img/2022/Infraestructura/top-3200.svg"), url("assets/img/2022/Infraestructura/overlay.png"), url("assets/img/2022/Infraestructura/header.jpg");
  background-position: bottom center, top left, center center;
  background-repeat: repeat-x, repeat, no-repeat;
  background-size: 3200px 460px, auto, cover;
  color: rgba(255, 255, 255, 0.8);
  padding: 10em 0 20em 0;
  position: relative;
  text-align: center;
}

#header:before,
#header:after {
  background: rgba(224, 224, 224, 0.75);
  content: '';
  left: 50%;
  position: absolute;
  width: 1px;
  z-index: 0;
}

#header:before {
  height: calc(100% - 50px);
  opacity: 0.15;
  top: 0;
}

#header:after {
  bottom: 0;
  height: 50px;
}

#header a {
  border-bottom-color: rgba(255, 255, 255, 0.35);
  color: rgba(255, 255, 255, 0.8);
}

#header a:hover {
  border-bottom-color: transparent;
  color: #4eb980;
}

#header strong,
#header b {
  color: #ffffff;
}

#header h1,
#header h2,
#header h3,
#header h4,
#header h5,
#header h6 {
  color: #ffffff;
}

#header input[type="submit"],
#header input[type="reset"],
#header input[type="button"],
#header .button {
  background: #ffffff;
  color: #544d55;
}

#header .logo {
  /* background: #007acc; */
  border-radius: 100%;
  color: #ffffff;
  cursor: default;
  display: inline-block;
  /* font-size: 2.25em; */
  height: 2.35em;
  line-height: 2.35em;
  /* margin: 0 0 0.75em 0; */
  text-align: center;
  width: 2.35em;
}

#header .logo.fa-paper-plane-o:before {
  left: -0.075em;
  position: relative;
}

#header h1 {
  font-size: 2.5em;
  margin: 0;
}

#header p {
  font-size: 1.5em;
  line-height: 1.5em;
  margin: 0.25em 0 0 0;
}



/* container-solutions */

.container-solutions {
  margin: 0 auto;
  max-width: 100%;
  /* width: 68em; */
}

.container-solutions.medium {
  width: 38.25em;
}

@media screen and (max-width: 1280px) {

  .container-solutions {
    /* width: 48em; */
  }

  .container-solutions.medium {
    width: 36em;
  }

  .foo-contacto {
    text-align: center;
    letter-spacing: 2em;
  }

  

}

@media screen and (max-width: 980px) {

  /* .container-solutions {
		width: 95%;
	} */

  .container-solutions.medium {
    width: 71.25%;
  }

}

@media screen and (max-width: 840px) {

  /* .container-solutions {
		width: 95% !important;
	} */

}

@media screen and (max-width: 736px) {

  .button {
    width: 100%;
  }

}

@media screen and (max-width: 480px) {

  .container-solutions {
    width: 100% !important;
  }

}

/* Wide */

@media screen and (max-width: 1680px) {

  /* Basic */

  body,
  input,
  select,
  textarea {
    font-size: 10pt;
  }

  h2 {
    font-size: 1.5em;
  }

  h3 {
    font-size: 1.25em;
  }

  /* Section/Article */

  header.major p {
    font-size: 1.25em;
  }

  /* Header */

  #header {
    padding: 8em 0 16em 0;
  }

  #header h1 {
    font-size: 2.25em;
  }

  #header p {
    font-size: 1.25em;
    line-height: 1.65em;
  }

}

/* Normal */

@media screen and (max-width: 1280px) {

  /* Basic */

  body,
  input,
  select,
  textarea {
    font-size: 10pt;
  }

  h2 {
    font-size: 1.35em;
  }

  h3 {
    font-size: 1.15em;
  }

  /* Section/Article */

  header.major {
    margin-bottom: 4em;
    padding: 3em 0;
  }

  header.major p {
    font-size: 1.15em;
  }

  /* Box */

  .box {
    padding: 2.5em;
    margin-bottom: 4em;
  }

  /* Feature */

  .feature {
    height: 21em;
  }

  .feature-more{
    height: 40em !important;
  }
  

  .feature .content {
    padding: 2.5em;
  }

  /* Header */

  #header {
    background-attachment: scroll, scroll, scroll;
    background-image: url("assets/img/2022/Infraestructura/top-1600.svg"), url("assets/img/2022/Infraestructura/overlay.png"), url("assets/img/2022/Infraestructura/header.jpg");
    background-size: 1600px 230px, auto, cover;
    padding: 6em 0 12em 0;
  }

  #header:before {
    height: calc(100% - 25px);
  }

  #header:after {
    height: 25px;
  }

  #header h1 {
    font-size: 2em;
  }

  /* #header p {
		font-size: 1.15em;
	} */
  /*
	Footer

	#footer {
		background-image: url("images/bottom-1600.svg");
		background-size: 1600px 230px;
		margin-top: -100px;
		padding: calc(230px + 4em) 0 6em 0;
	}

	#footer:before {
		height: calc(230px + 4em);
	} */

  /* Main */

  #main {
    padding: 4em 0 3em 0;
  }

}

/* Narrow */

@media screen and (max-width: 980px) {

  /* Basic */

  body,
  input,
  select,
  textarea {
    font-size: 10pt;
  }

}

/* Narrower */

@media screen and (max-width: 840px) {

  /* Section/Article */

  header.major {
    padding-left: 2em;
    padding-right: 2em;
  }

  footer.major {
    padding-left: 2em;
    padding-right: 2em;
  }

}

/* Tablet */

@media (min-width: 768px) {
  .foo-contacto {
    text-align: center;
    letter-spacing: 2em;
  }
}

/* Mobile */

@media screen and (max-width: 736px) {

  /* Basic */

  h2 {
    font-size: 1em;
  }

  h3 {
    font-size: 1em;
  }

  /* Section/Article */

  header p {
    font-size: 0.8em;
  }

  header.major {
    margin-bottom: 2em;
  }

  header.major br {
    display: none;
  }

  header.major p {
    font-size: 0.8em;
  }

  /* Box */

  .box {
    padding: 2em;
    margin-bottom: 2em;
  }

  /* Feature */

  .feature {
    background: #ffffff;
    display: block;
    height: auto;
    margin-bottom: 2em;
  }

  .feature-more{
    height: auto !important;
  }
  

  .feature:last-child {
    margin-bottom: 0;
  }

  .feature:before,
  .feature:after {
    display: none;
  }

  .feature .image {
    float: none;
    height: 15em;
    width: 100%;
  }

  .feature .content {
    border: solid 1px rgba(224, 224, 224, 0.75);
    padding: 2em !important;
    text-align: center;
    width: 100%;
  }

  /* Header */

  #header {
    background-image: url("assets/img/2022/Infraestructura/top-1280.svg"), url("assets/img/2022/Infraestructura/overlay.png"), url("assets/img/2022/Infraestructura/header.jpg");
    background-size: 1280px 184px, auto, cover;
    padding: 3em 0 7em 0;
  }

  #header:before {
    height: calc(100% - 20px);
  }

  #header:after {
    height: 20px;
  }

  #header .logo {
    font-size: 2em;
  }

  #header h1 {
    font-size: 1.25em;
  }

  #header p {
    font-size: 1em;
  }

  #main {
    padding: 2em 0 2em 0;
  }

  .foo-contacto {
    text-align: center;
    letter-spacing: 2em;
  }

}

/* Mobile (Portrait) */

@media screen and (max-width: 480px) {

  /* Section/Article */

  header.major {
    padding-left: 1em;
    padding-right: 1em;
  }

  /* footer.major {
		padding-left: 1em;
		padding-right: 1em;
	} */

  /* Button */

  input[type="submit"],
  input[type="reset"],
  input[type="button"],
  .button {
    display: block;
    width: 100%;
  }

  /* Box */

  .box {
    padding: 2em 1em;
  }

  /* Feature */

  .feature {
    margin-bottom: 1em;
  }

  .feature .content {
    padding: 2em 1em !important;
  }

  /* Main */

  #main {
    padding-left: 1em;
    padding-right: 1em;
  }

  /* Footer */

  #footer {
    margin-top: -100px;
    padding-left: 1em;
    padding-right: 1em;
  }

  #footer .copyright li {
    border: 0;
    display: block;
    margin: 0;
    padding: 0.75em 0 0 0;
  }

  /* Header */

  #header {
    padding-left: 2em;
    padding-right: 2em;
  }

  #header br {
    display: none;
  }

  .foo-contacto {
    text-align: center;
    letter-spacing: 2em;
  }

}


input[type="submit"],
input[type="reset"],
input[type="button"],
.button {
  -moz-appearance: none;
  -webkit-appearance: none;
  -ms-appearance: none;
  appearance: none;
  -moz-transition: color 0.2s ease-in-out, background-color 0.2s ease-in-out;
  -webkit-transition: color 0.2s ease-in-out, background-color 0.2s ease-in-out;
  -ms-transition: color 0.2s ease-in-out, background-color 0.2s ease-in-out;
  transition: color 0.2s ease-in-out, background-color 0.2s ease-in-out;
  background: #00a4db;
  border-radius: 4px;
  border: 0;
  color: #ffffff;
  cursor: pointer;
  display: inline-block;
  font-size: 0.9em;
  font-weight: 700;
  letter-spacing: 0.125em;
  line-height: 3.25em;
  min-width: 15em;
  padding: 0 1.5em;
  text-align: center;
  text-decoration: none;
  /* text-transform: uppercase; */
}

/* .foo-contacto{
  text-align: center;
  letter-spacing: 7px;
} */

.foo-padding {
  padding: 30px 0 !important;
}

.redes-color{
  color: #fff;
}

.texture-overlay {
  position: absolute;
  top: 0px;
  left: 0px;
  width: 100%;
  height: 100%;
  background-image: url(../img/grid.png);
}