html, body { width: 100%; }
body { background: #e5e5e5; font-family: 'Montserrat', Arial, Tahoma, Sans-Serif; }

*, *:hover, *:active, *:focus, *:visited { outline: none !important; }

a, a:hover, a:active, a:focus, a:visited { cursor: pointer; text-decoration: none; }

header { padding-top: 25px; position: absolute; top: 0; width: 100%; transition: all .3s ease-in-out; -moz-transition: all .3s ease-in-out; -ms-transition: all .3s ease-in-out; -webkit-transition: all .3s ease-in-out; -o-transition: all .3s ease-in-out; z-index: 9; }
header #logo { background: url(../images/logo.png) no-repeat; display: inline-block; height: 104px; margin-bottom: 15px; text-indent: -9999px; width: 202px; }
header button { background: transparent; border: none; display: none; padding: 0; margin: 0 auto; outline: none; width: 35px; }
header button span { background: #FFF; display: block; height: 3px; margin-bottom: 3px; width: 100%; }
header nav { color: #FFF; font-size: 14px; font-weight: 300; text-transform: uppercase; }
header nav a, header nav a:hover, header nav a:active, header nav a:visited, header nav a:focus { color: #FFF; }
header.fixMenu { background: #FFF; box-shadow: 0 1px 5px rgba(0,0,0,.1); left: 0; padding: 10px 15px; position: fixed; top: 0; z-index: 3; }
header.fixMenu #logo { background-size: 100% auto; float: left; height: 30px; margin: 0; width: 60px; }
header.fixMenu nav { color: #333; line-height: 30px; }
header.fixMenu nav a { color: #333; }


#home { position: relative; }
#home h1 { color: #fff; font-size: 32px; font-weight: bold; padding: 350px 0 150px; text-transform: uppercase; }
#home h1 span { background: #000; display: inline-block; margin-bottom: 15px; padding: 5px 15px; }
#home .obli { background: url(../images/oblique.png) no-repeat center bottom; height: 155px; }
#home .arrow { background: url(../images/arrow-down.png) no-repeat; bottom: 25%; display: block; height: 60px; position: absolute; right: 10%; width: 37px; }


#nosotros { padding: 30px 0 0; position: relative; z-index: 2; }
#nosotros h1 { color: #383838; font-size: 32px; font-weight: 100; position: relative; text-transform: uppercase; }
#nosotros h1:after { background: #ff0000; content: ""; display: block; height: 1px; margin: -35px 0 0 -10px; transform: rotate(-45deg); width: 90px; }
#nosotros .box { background: #FFF; box-shadow: 0 0 50px rgba(0,0,0,.15); padding: 80px 80px 50px; }
#nosotros .box p { color: #383838; font-size: 14px; font-weight: 300; line-height: 1.8; margin-bottom: 30px; }
#nosotros .box p strong { font-size: 24px; font-weight: bold; line-height: 1.4; }


#productos { background: #383838; margin-top: -35px; position: relative; z-index: 1; }
#productos .imgs { overflow: hidden; } 
#productos .imgs img { display: block; float: left; width: 20%; }
#productos .container { padding-bottom: 50px; padding-top: 50px; }
#productos p { color: #b7b7b7; font-size: 14px; font-weight: 200; line-height: 1.8; margin-bottom: 20px; }
#productos p strong { color: #FFF; font-size: 24px; font-weight: bold; }
#productos h1 { color: #FFF; font-size: 32px; font-weight: 100; position: relative; text-transform: uppercase; }
#productos h1:after { background: #ff0000; content: ""; display: block; height: 1px; margin: -65px 0 0 -10px; transform: rotate(-45deg); width: 90px; }


#galeria { padding: 80px 0; }
#galeria h1 { color: #383838; font-size: 32px; font-weight: 100; position: relative; text-transform: uppercase; }
#galeria h1:after { background: #ff0000; content: ""; display: block; height: 1px; margin: -35px 0 0 -10px; transform: rotate(-45deg); width: 90px; }
#galeria .box { background: #353535; margin: 30px; max-width: 100%; overflow: hidden; position: relative; text-align: center; }
#galeria .box a h2 { color: #FFF; font-size: 24px; font-weight: 200; margin: -13px 0 0; position: absolute; text-transform: uppercase; top: 50%; width: 100%; }
#galeria .box img { float: left; max-width: 100%; opacity: 0; transition: all .3s ease-in-out; -moz-transition: all .3s ease-in-out; -ms-transition: all .3s ease-in-out; -webkit-transition: all .3s ease-in-out; -o-transition: all .3s ease-in-out; }
#galeria .box:hover img { opacity: 1; }

.owl-carousel .owl-nav .owl-prev, .owl-carousel .owl-nav .owl-next { margin-top: -31px; position: absolute; top: 50%; }
.owl-carousel .owl-nav .owl-prev { left: 20px; }
.owl-carousel .owl-nav .owl-next { right: 20px; }
.owl-carousel .owl-nav .owl-prev:before, .owl-carousel .owl-nav .owl-next:before { color: #FFF; font-family: 'FontAwesome'; font-size: 42px; text-shadow: 0 0 3px rgba(0,0,0,.3); }
.owl-carousel .owl-nav .owl-prev:before { content: "\f104"; }
.owl-carousel .owl-nav .owl-next:before { content: "\f105"; }


#contacto { background: #FFF; padding: 100px 0; }
#contacto h1 { color: #383838; font-size: 32px; font-weight: 100; position: relative; text-transform: uppercase; }
#contacto h1:after { background: #ff0000; content: ""; display: block; height: 1px; margin: -35px 0 0 -10px; transform: rotate(-45deg); width: 90px; }
#contacto .data { background: #f7f7f7; box-shadow: 0 0 30px rgba(0,0,0,.15); color: #272727; font-size: 14px; font-weight: 200; margin-top: 150px; padding: 50px 30px 30px; }
#contacto .data ul { list-style: none; margin: 0; padding: 0; }
#contacto .data ul li { margin-bottom: 20px; }
#contacto .data ul li i { text-align: center; width: 15px; }
#contacto form input, #contacto form textarea { background: transparent; border: none; border-bottom: 1px solid #808080; border-radius: 0; color: #383838; font-size: 14px; font-weight: 200; height: 38px; width: 100%; }
#contacto form textarea { height: 160px; }
#contacto form input:focus, #contacto form textarea:focus { border-bottom-color: #ff0000; }
#contacto form input[type="submit"] { background: #ff0000; border: none; color: #FFF; float: right; height: 43px; padding: 0 30px; text-transform: uppercase; width: auto; }


footer { background: #e4e4e4; color: #272727; font-size: 11px; font-weight: 200; margin-top: -30px; padding: 40px 0; }

.modal p { font-size: 14px; font-weight: 300; line-height: 1.6; margin-top: 30px; }
.carousel-control.right, .carousel-control.left { background: transparent; }



@media (max-width: 1199px) {}


@media (max-width: 991px) {
	#home h1, #nosotros h1, #obras h1, #servicios h1, #contacto h1 { font-size: 28px; }
	#nosotros h1:after, #contacto h1:after, #obras h1:after, #servicios h1:after { margin: -30px 0 0 -10px; width: 80px; }
	#nosotros h1:after { margin: -60px 0 0 -10px; }
	#productos h1:after { margin: -100px 0 0 -10px; }
	#nosotros .box { padding: 60px 60px 30px; }
	#nosotros .box p strong { font-size: 21px; }
	#galeria .box { margin: 10px; }
	#galeria .box a h2 { font-size: 18px; }
}


@media (max-width: 767px) {
	header.fixMenu #logo { margin-right: 10px; }
	#home h1, #nosotros h1, #obras h1, #servicios h1, #contacto h1 { font-size: 21px; }
	header button { display: block; }
	header nav { background: #FFF; display: none; }
	header nav a { color: #333; display: block; padding: 5px 0; width: 100%; }
	header nav span { display: none; }
	header.fixMenu button { float: right; margin-top: 7px; }
	header.fixMenu button span { background: #333; }
	header.fixMenu nav { clear: both; line-height: 1.4; padding-top: 7px; text-align: left; }
	#nosotros h1, #servicios h1 { margin: 50px 0; }
	#nosotros h1:after, #servicios h1:after, #obras h1:after, #contacto h1:after { margin: -22px 0 0 -7px; width: 60px; }
	#nosotros .box { padding: 40px 40px 10px; }
	#nosotros .box p strong { font-size: 16px; }
	#productos .imgs img { width: 33.333333%; }
	#productos h1:after { margin: -65px 0 0 -10px; }
	#servicios h3 { font-size: 21px; }
	#contacto { padding-bottom: 30px; }
	#contacto h1 { margin: 0 0 50px; }
	#contacto .data { margin: 70px 0 50px; }
	#contacto form input[type="text"] { margin-bottom: 15px; }
	footer { margin-top: 0; }
}