@font-face {
    font-family: 'Futura LT';
    src: url('fonts/FuturaLT-Heavy.woff2') format('woff2'),
        url('fonts/FuturaLT-Heavy.woff') format('woff');
    font-weight: bold;
    font-style: normal;
}

@font-face {
    font-family: 'Futura LT';
    src: url('fonts/FuturaLT.woff2') format('woff2'),
        url('fonts/FuturaLT.woff') format('woff');
    font-weight: 500;
    font-style: normal;
}

@import url('https://fonts.googleapis.com/css?family=Open+Sans:300,400,700');


html, body, p, img, h1, h2, h3, h4, ul, li, button, header, section, footer {
	margin: 0;
	padding: 0;
	box-sizing: border-box;
}

body {
	font-family: 'Open Sans', sans-serif;
}

h1, h2, h3, h4 {
	font-weight: bold;
}

a,
button {
	cursor: pointer;
}

img {
	max-width: 100%
}

/*HEADER*/

header {
	background: #f28b1f;
	position: fixed;
	width: 100%;
	z-index: 11;
}

header .logo {
	height: 90px;
}

header nav ul li a {
	color: rgba(255, 255, 255, 0.6);
    font-size: 15px;
    letter-spacing: 1px;
}

header .navbar-text a {
	color: white;
	padding: 0 7px;
}

header .nav-item a:hover,
header .navbar-nav .active a {
	color: rgba(255, 255, 255, 1);
}

header .mr-auto, header .mx-auto {
    margin-left: auto !important;
    margin-right: inherit !important;
}

header .cv {
    position: fixed;
    right: 120px;
    background: linear-gradient(0deg, #7a34a6,#521d74);
    border: 1px solid rgba(255, 255, 255, 0.35);
    font-size: 14px;
    letter-spacing: 1px;
    border-radius: 0 0 5px 5px;
    padding: 6px 25px;
    text-transform: uppercase;
}

header .video {
    position: fixed;
    right: 350px;
    background: linear-gradient(0deg, #7a34a6,#521d74);
    border: 1px solid rgba(255, 255, 255, 0.35);
    font-size: 14px;
    letter-spacing: 1px;
    border-radius: 0 0 5px 5px;
    padding: 6px 25px;
    text-transform: uppercase;
}

header .cv:hover {
    border: 1px solid rgba(255, 255, 255, 0.6);
}

header .btn-primary:not(:disabled):not(.disabled):active {
    background: #f28b20;
}

.top-header {
    /*background: linear-gradient(45deg, #f28a20,#ffffff4f);*/
    background: #521d74;
    color: white;
    font-size: 13px;
    letter-spacing: 1px;
    position: fixed;
    width: 100%;
}

.top-header p {
    text-align: right;
    padding: 5px;
}

.top-header p a {
    text-decoration: none;
    color: inherit;
    cursor: pointer;
}

@media (min-width: 992px) {
	.navbar-expand-lg .navbar-nav .nav-link {
	    padding-right: 1rem;
	    padding-left: 1rem;
	}

    .navbar-expand-lg .navbar-nav,
    .navbar-text {
        margin-top: 20px;
    }
}
/*FOOTER*/

footer {
    background: #1b1b1b;
    color: white;
    padding: 20px 10px;
}

footer .logo {
	margin: 0 auto;
	display: block;
    height: 70px;
}

footer p {
	text-align: center;
	font-size: 14px;
}

/*INICIO*/

h1 {
    text-transform: uppercase;
    font-size: 27px;
    text-align: center;
}

h2 {
	color: #511c74;
	text-transform: uppercase;
	font-size: 27px;
}

button {
	background: none;
	border: none;
	color: #f28b1f;
}

.carousel {
    z-index: -1;
}

.carousel-inner img {
  width: 100%;
  height: 100%;
}

.carousel-caption {
	bottom: 90px;
}

.carousel-caption p {
	vertical-align: middle;
    margin: 35vh auto;
    font-size: 40px;
    border: 10px solid white;
    padding: 40px;
    text-transform: uppercase;
    width: fit-content;
}

.white-fog {
	margin-top: -250px;
    background: linear-gradient(#ffffff00,white);
    height:250px;
}

.orange-box {
	background: #f28b1f;
    color: white;
    padding: 70px 50px;
    margin-bottom: 40px;
    margin-top: -160px;
}

#ubicacion {
	background: url("img/inicio/ubicacion.jpg") fixed;
	background-size: cover;
	color: white;
	padding: 70px 10px;
}

#ubicacion .svg-inline--fa {
	color: #f28b1f;
    font-size: 35px;
    display: block;
    margin: 0 auto 10px;
}

#ubicacion p {
	text-align: center;
	font-size: 23px;
}

.logos-gf {
    max-width: 400px;
    margin: 20px auto 0;
    text-align: center;
}

.logos-gf img {
    margin: 0 10px;
}

.modal-lg {
  max-width: 1100px;
}

.modal-backdrop.show {
  opacity: .7;
}

/*NOSOTROS*/

#nosotros {
	background: url("img/nosotros/team.jpg") fixed;
	background-size: cover;
    padding: 160px 0 0;
}

#nosotros h2 {
    color: white;
    text-transform: capitalize;
    margin-bottom: 10px;
    margin-top: 30px;
}

#nosotros h3 {
	color: white;
	text-align: center;
	text-transform: uppercase;
}

#nosotros p {
	color: white;
	text-align: justify;
    font-size: 14px;
    line-height: 24px;
}

.nosotros1 {
	height: 370px;
    width: 90%;
    position: relative;
    background: url(img/nosotros/nosotros1-2.jpg);
    background-size: cover;
    margin: 20px 20px 60px 20px;
}

.nosotros2 {
    height: 370px;
    width: 90%;
    position: relative;
    background: url(img/nosotros/nosotros2.jpg);
    background-size: cover;
    margin: 20px;
}

.nosotros1 .inner {
    width: 100%;
    height: 100%;
    position: absolute;
    border: 7px solid white;
    top: 20px;
    left: -20px;
}

.nosotros2 .inner {
    width: 100%;
    height: 100%;
    position: absolute;
    border: 7px solid white;
    top: 20px;
    left: 20px;
}

#nosotros .orange-bg {
    background: #f28b1f;
    padding: 50px 10px;
    margin-top: 60px;
}


/*PROYECTOS*/

.body-proyectos {
	background: #1b1b1b;
}

#proyectos .proyecto {
    height: 82vh;
    opacity: .8;
}

#proyectos .proyecto:hover {
    background-color: black;
    background-blend-mode: initial;
    /*opacity: .5;*/
}

#proyectos .proyecto1 {
    background-image: url(img/proyectos/1-balaustradas-1.jpg);
}

#proyectos .proyecto2 {
    background-image: url(img/proyectos/2-constituyentes-1.jpg);
}

#proyectos .proyecto3 {
    background-image: url(img/proyectos/3-piramides-1.jpg);
}

#proyectos .proyecto4 {
    background-image: url(img/proyectos/4-sol1-1.jpg);
}

#proyectos .proyecto5 {
    background-image: url(img/proyectos/5-sol2-1.jpg);
}

#proyectos .proyecto6 {
    background-image: url(img/proyectos/6-apaseo-1.jpg);
}

#proyectos .proyecto7 {
    background-image: url(img/proyectos/7-monpani-1.jpg);
}

#proyectos .proyecto8 {
    background-image: url(img/proyectos/8-shell-apaseo-el-grande-1.jpg);
}

#proyectos .proyecto9 {
    background-image: url(img/proyectos/9-shell-maderas-1.jpg);
}

#proyectos .proyecto10 {
    background-image: url(img/proyectos/10-shell-pepsi-1.jpg);
}

#proyectos .proyecto11 {
    background-image: url(img/proyectos/11-shell-villa-petrolera-1.jpg);
}

#proyectos .proyecto12 {
    background-image: url(img/proyectos/12-bp-leon-guzman-1.jpg);
}

#proyectos .proyecto13 {
    background-image: url(img/proyectos/13-brujas1-2.jpg);
}

#proyectos .proyecto14 {
    background-image: url(img/proyectos/14-brujas2-2.jpg);
}

#proyectos .proyecto15 {
    background-image: url(img/proyectos/15-paseo-san-juan-del-rio-1.jpg);
}

#proyectos .proyecto16 {
    background-image: url(img/proyectos/16-pablo-cabrera-1.jpg);
}

#proyectos .proyecto17 {
    background-image: url(img/proyectos/17-lallave-1.jpg);
}

#proyectos .proyecto18 {
    background-image: url(img/proyectos/18-celayatorres-1.jpg);
}

#proyectos .proyecto19 {
    background-image: url(img/proyectos/19-monterreysaltillo-1.jpg);
}

#proyectos .proyecto20 {
    background-image: url(img/proyectos/20-g500apaseo-1.jpg);
}

#proyectos .proyecto21 {
    background-image: url(img/proyectos/21-laluz-1.jpg);
}

#proyectos .proyecto22 {
    background-image: url(img/proyectos/22-elrancho-1.jpg);
}

#proyectos .general {
  background-color: #521d74;
  background-size: cover;
  background-position: center center;
  background-blend-mode: luminosity;
  cursor: pointer;
}


#proyectos .owl-carousel.owl-drag .owl-item {
	margin-right: 0 !important;
}

#proyectos .owl-theme .owl-nav {
	display: none;
}

#proyectos .owl-theme .owl-dots {
    color: white;
    font-size: 40px;
    margin-top: -10px;
}

#proyectos #wrapper .text {
  position: inherit;
  bottom: 29%;
  text-align: center;
  /* visibility: hidden; */
  color: white;
  vertical-align: middle;
  width: 100%;
  margin: 0 auto;
  display: block;
  padding: 5px 10px;
  font-size: 17px;
  letter-spacing: 2px;
  text-shadow: 1px 1px 6px rgba(0, 0, 0, 0.75);
}

#proyectos #wrapper:hover .text {
visibility:visible;
}

/*SERVICIOS*/

#servicios h1 {
	color: #f28b1f;
	text-shadow: 1px 1px 6px black;
}

#servicios #nuestros-servicios {
	background: url("img/servicios/servicios-bg.jpg") fixed;
	background-size: cover;
	background-position: center center;
    padding: 160px 0 40px;
}

#servicios #nuestros-servicios h2 {
	text-align: center;
    color: white;
    font-size: 22px;
    margin-top: 20px;
}

#servicios #nuestros-servicios .tab-content p {
    color: white;
    text-align: center;
    max-width: 850px;
    margin: 10px auto 0;
}

#servicios .nav-tabs {
	max-width: 650px;
    margin: 0 auto;
    border-bottom: 1px solid #ffffff;
    padding: 30px 0;
}

#servicios .nav-tabs li {
    width: 25%;
    text-align: center;
}

#servicios .nav-tabs li a {
    color: #ffffff;
    text-transform: uppercase;
    font-size: 15px;
    text-shadow: 1px 1px 6px black;
}

#servicios .nav-tabs li a:hover {
	color: #f28b1f;
	text-decoration: none;
}

#servicios .nav-tabs li a .svg-inline--fa{
    font-size: 40px;
    display: block;
    margin: 0 auto 5px;
}

#servicios #proyectos {
	background: #ebebeb;
    padding: 70px 0;
}

#servicios #proyectos h3 {
    color: #511c74;
    margin: 30px 0 10px;
    font-size: 21px;
}

#servicios #proyectos p {
	margin-top: 20px;
    font-size: 14px;
}

#servicios .orange-bg {
    background: #f28b1f;
    padding: 50px 10px;
}

#servicios .orange-bg h2 {
	color: white;
    margin-bottom: 20px;
}

#servicios .purple-bg {
    background: #511c74;
    padding: 50px 10px;
}

#servicios .purple-bg .small-container {
    max-width:750px;
    margin: 0 auto;
}

#servicios .purple-bg p {
	color: white;
    font-size: 30px;
    font-weight: 600;
    line-height: 34px;
}

#servicios .white-box {
    color: white;
    border: 2px solid white;
    font-size: 20px;
    padding: 10px 25px;
    float: right;
}

/*MAQUINARIA*/

#maquinaria {
	background: url("img/maquinaria/maquinaria-bg.jpg");
	background-size: cover;
    padding: 150px 0 0;
}

#maquinaria h1 {
	color: white;
	text-align: left;
    margin-top: 50px;
    text-shadow: 1px 1px 6px black;
}

#maquinaria p {
	color: white;
	text-shadow: 1px 1px 6px black;
	text-align: justify;
}

#maquinaria h2 {
	color: white;
	text-align: center;
    font-size: 21px;
    margin: 0 auto;
}

.maquinaria1 {
	height: 230px;
    width: 90%;
    position: relative;
    background: url(img/maquinaria/dos-f-maquinaria.jpg);
    background-size: cover;
    margin: 20px 20px 60px 20px;
}

.maquinaria1 .inner {
    width: 100%;
    height: 100%;
    position: absolute;
    border: 7px solid white;
    top: 20px;
    left: -20px;
}

#maquinaria .desarrollo {
	background: #1b1b1b;
    margin-top: 130px;
}

#maquinaria .owl-carousel {
    margin-top: -110px;
}

#maquinaria .item p {
    color: white;
    text-shadow: 1px 1px 6px black;
    font-size: 14px;
    letter-spacing: 1px;
    position: absolute;
    bottom: 5px;
    left: 10px;
}

/*CONTACTO*/

#contacto .overlay {
	background: purple;
    height: 100vh;
    width: 100%;
    z-index: -1;
    position: absolute;
}

#googlemaps { 
  height: 100%; 
  width: 100%; 
  position:absolute; 
  top: 0; 
  left: 0; 
  z-index: 0; /* Set z-index to 0 as it will be on a layer below the contact form */
  mix-blend-mode: luminosity;
}

#googlemaps .gmnoprint {
	top: 120px !important;
}

#contactform { 
    position: relative;
    top: 130px;
    z-index: 1;
    max-width: 830px;
    margin: 0 auto;
    padding: 35px 50px 15px;
    background: #511c74;
    height: auto;
    color: white;
}

#contactform h1 {
	text-align: left;
}

#contactform h2 {
    color: white;
    font-size: 18px;
    margin: 10px 0px 11px;
}

#contactform p {
	font-size: 14px;
	margin-bottom: 20px;
}

#contactform input,
#contactform textarea {
    width: 100%;
    border-radius: 5px;
    border: none;
    margin: 5px 0;
    padding: 4px 15px;
    font-size: 13px;
    color: #7e33af;
}

#contactform input[type=submit] {
	background: #f28a20;
    color: white;
    width: auto;
    float: right;
    padding: 5px 25px;
    cursor: pointer;
}

form a,
form a:hover {
	color: white;
	text-decoration: none;
}

.footer-contacto {
	bottom: 0;
    position: absolute;
    width: 100%;
}

.fade.show {
  opacity: 1;
  background: rgba(0, 0, 0, 0.72); 
}


@media screen and (max-width:768px) {
	
	p, img, h1, h2, h3, h4 {
		padding: 0 10px;
	}

	#demo {
		position: initial;
    	padding: 125px 0px 170px;
	}

	.carousel-caption {
		bottom:0;
	}

	.carousel-caption p {
	    margin: 60px auto;
	    font-size: 20px;
	    padding: 20px;
	    border: 5px solid white;
	}

	.carousel-control-prev,
	.carousel-control-next {
		display: none;
	}

	#inicio h2 {
		margin-top: 20px;
	}

	#maquinaria h1 {
		margin-top: 0;
	}

	#maquinaria h2 {
		margin-top: 50px;
	}
}


@media screen and (min-width: 991px) {
    .hidden-lg {
        display: none;
    }
}

@media screen and (max-width: 991px) {
    .hidden-xs {
        display: none;
    }

    .menu {
        margin-top: 25px;
    }
    
    header .cv,
    header .video {
      position: inherit;
      width: 100%;
      border-radius: 0;
    }

    #contactform {
      top: 160px;
    }

    #demo {
        padding: 185px 0px 0px;
    }

    .orange-box {
        margin-top: 10px;
    }

    #servicios #nuestros-servicios {
        padding: 210px 0 40px;
    }

}