@charset "utf-8";
/* CSS Document */

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

*,
*:before,
*:after {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
html {
	height:100%;
}
body {
	background:#f5f5f5;
	margin:0;
	font-family: "Open Sans", sans-serif;
	font-size:1em;
	font-weight:400;
	color: #333;
	overflow-x:hidden;
	height:100%;
}

a {
	text-decoration: none;
	color: #0bc;
}
a:hover {
	text-decoration:underline;
}
a.boton {
	background:#09e;
	margin:10px;
    padding:15px 20px;
	text-decoration: none;
	color: #fff;
	-webkit-border-radius:2px; -moz-border-radius:2px; border-radius:2px;
	-webkit-transition:0.1s linear; -moz-transition:0.1s linear; -o-transition:0.1s linear; transition:0.1s linear;
}
a.boton:hover {
	background:#0bc;
}


@media (max-width:522px){
	a.boton {display:block;}
}



h1 {
	font-size:2em;
	text-align:center;
	color:#136;
	margin:0; padding:0;
	margin-bottom:50px;
	text-transform:uppercase;
}
h1 span {
	display:block;
	width:80px;
	vertical-align:baseline;
	margin:0 auto;
	text-align:center;
	line-height:3px;
	border-bottom:4px solid #0bc;
}
h2 {
	font-size:1.8em;
	font-weight:400;
	text-transform:uppercase;
	margin:0;
	padding-bottom:40px;
}

#wrapper {
	width: 100%;
	margin: 0 auto;
}

#main {
	background-color: #f5f5f5;
	padding-top: 0;
	min-height:500px;
}

.container {
	width: 80%;
	margin: 0 auto;
	padding: 0 30px;
}
@media (max-width:410px){
	.container {
		width:95%;
		padding:0 15px;
	}
}


header {
	width: 100%;
	height: 120px;
	overflow: hidden;
	position: fixed;
	z-index:999;
	top: 0;
	left: 0;
	background-color:rgba(245,245,245,0);
	-webkit-transition: height 0.3s; -moz-transition: height 0.3s; -ms-transition: height 0.3s; -o-transition: height 0.3s; transition: height 0.3s;
}
header nav {
	width:100%;
}
header nav ul {
	margin:0;
	padding:0;
	display:table;
	width:100%;
	list-style-type:none;
	text-align:center;
}
header nav ul li {
	display:table-cell;
	text-align:center;
	vertical-align:middle;
	padding:10px 0;
}
header nav ul li a {
	display:block;
	line-height: 120px;
	margin:0 20px;
	font-family:'Open Sans', sans-serif;
	font-size: 1em;
	color:#fff;
	-webkit-transition: all 0.1s; -moz-transition: all 0.1s; -ms-transition: all 0.1s; -o-transition: all 0.1s; transition: all 0.1s;
	font-weight: 700;
}
header nav ul li a:hover {
	color: #0bc;
	text-decoration:none;
}
header nav ul li a #logow {
	height:100px;
	-webkit-transition: all 0.1s; -moz-transition: all 0.1s; -ms-transition: all 0.1s; -o-transition: all 0.1s; transition: all 0.1s;
}
header nav ul li a #logoc {
	display:none;
}
header.smaller {
	background-color:rgba(245,245,245,0.9);
	height: 100px;
}
header.smaller #logow {
	display:none;
}
header.smaller #logoc {
	display:block;
	height:80px;
	margin:0 auto;
	text-align:center;
}
header.smaller nav ul li a {
	line-height: 80px;
	color:#136;
}
header.smaller nav ul li a:hover {
	color:#0bc;
}
header nav div.logo2 {
	display:none;
}
@media (max-width:1000px){ 
	header {height:100px;}
	header nav ul li a #logow {height:80px;}
	header nav ul li a {line-height:80px;}
}
@media (max-width:720px){
	header {height:130px; background-color:rgba(245,245,245,0.9);}
	#main {padding-top:130px;}
	header nav ul li.logo1 {display:none;}
	header nav div.logo2 {display:block; width:100%; margin:0; text-align:center;}
	header nav div.logo2 a #logoc {height:80px;}
	header nav ul li a {line-height:30px; color:#136;}
	header nav ul li a:hover {color:#0bc;}
	header.smaller {	height:90px;}
	header.smaller nav div.logo2 a #logoc {height:60px;}
	header.smaller nav ul li a {line-height:20px;}
}
@media (max-width:410px){
	header nav ul li a {margin:0 5px;}
}

section.module.parallax {
  background-position: 50% 50%;
  background-repeat: no-repeat;
  background-attachment: fixed;
  -webkit-background-size: cover;
  -moz-background-size: cover;
  -o-background-size: cover;
  background-size: cover;
	padding:70px 0;
	text-align:center;
}
section.module.parallax-1 {
  background-position: 70% 70px !important;
  background-image: url("../images/valores-bg.jpg");
  color:#ddd;
}
#valores, #vrs {
	list-style-type:none;
	margin:0 auto;
	padding:0;
	text-align:center;
	width:100% !important;
}
#valores li, #vrs li {
	vertical-align:text-top;
	display:inline-block;
	margin:0 10px;
	width:400px !important;
	color:#333;
	text-align:center;
	-webkit-transition: all 0.3s; -moz-transition: all 0.3s; -ms-transition: all 0.3s; -o-transition: all 0.3s; transition: all 0.3s;
}
#valores li a, #vrs li a {
	display:block;
	text-decoration:none;
	padding:10px;
	height:350px !important;
}
#valores li img {
	padding-top:10px;
	width:100px;
}
#vrs li img {
	padding-top:10px;
	width:250px;
}
#valores li:hover {
	background:rgba(0,0,0,0.4);
}
#vrs li:hover {
	background:rgba(255,255,255,0.8);
}
#valores li h3, #vrs li h3 {
	margin:0;
	padding-top:30px;
	font-weight:600;
	color:#0bc;
	text-transform:uppercase;
}
#valores li p {
	text-align:center;
	color:#fff;
}
#vrs li p {
	text-align:center;
	color:#333;
}
@media (max-width:350px) {
	#valores li, #vrs li {
		width:200px !important;
	}
	#valores li h3, #vrs li h3 {
		padding-top:5px;
		height:auto;
	}
	#valores li p, #vrs li p {
		height:auto;
	}
}

section.module.parallax-2 {
  background-image: url("../images/bg-contacto.jpg");
  color:#fff;
  padding:100px 100px;
}

@media (max-width:755px) {
	section.module.parallax-2 {
  padding:100px 10px;
}
}

section.module.parallax-vrs {
  background-image: url("../images/vrs-bg.jpg");
  color:#fff;
  padding:100px 10px;
}

.servsprods {
	width:100%;
	margin:0;
	margin-top:50px;
	padding:0;
	list-style-type:none;
}
.servsprods li {
	display:inline-block;
	margin:0 10px;
	width:47%;
}
.servsprods li img {
	width:100%;
}
@media (max-width:755px) {
	.servsprods li {
		display:block;
		width:90%;
		margin:0 auto;
		text-align:center;
	}
}

#galeria {width:92%; height:100%; padding:100px 0 5% 0; margin:0 auto; text-align:center; z-index:1;}
h2.albums-title {font-size:1.4em; font-weight:400; line-height:40px; text-align:left; margin-bottom:0px; padding:0; color:#136; border-bottom:1px solid #0bc;}
h2.albums-title a {text-decoration:none;}
/* Lightbx */
p.choco img {width:auto; height:150px; margin-top:30px; float:right; padding:0 0 20px 20px;}
p.choco-gallery {margin-top:10px; justify-content:space-between;}
p.choco-gallery a {color:rgba(0,0,0,0.0);}
p.choco-gallery a img {padding:10px; width:auto; height:150px; margin:0; opacity:0.8;}
p.choco-gallery a:hover img {opacity:1;}
#Choco_overlay{
	background: #fff;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 1000;
	width: 100%;
	height: 100%;
	display:none;
	padding:0;
	margin:0;
}
#Choco_content{
	display:none;
	width:800px;
	height:600px;
	z-index:1001;
	position:fixed;
	left:50%;
	top:50%;
	margin-left:-400px;
	margin-top:-300px;
	border-top:1px solid transparent;/*Yes, adjust image perfectly at the center of a box, don't know why.*/
}
#Choco_left_arrow{
	float:left;
	background-image:url(../images/left.gif);
	background-position:12%;
	left:-14%;
}
#Choco_right_arrow{
	float:right;
	background-image:url(../images/right.gif);
	background-position:88%;
	left:14%;
}
.Choco_arrows{
	background-repeat:no-repeat;
	display:none;
	position:relative;
	cursor:pointer;
	width:49%;
	top:-100%;
	height:100%;
	margin-top:-30px;
}
#Choco_container_photo{
	text-align:center;
	width:800px;
	height:600px;
	/*background:url(imagenes/ajax-loader.gif) center center no-repeat;*/
}
#Choco_container_description{
	padding:0;
	height:26px;
	width:100%;
	color:#eee;
	font-family:"Open Sans", sans-serif;
	font-weight:300;
	clear:both;
	position:relative;
	margin-top:-5px;
	overflow:hidden;
	visibility:hidden;
}
#Choco_container_title{
	float:left;
	padding:5px;
}
#Choco_container_via{
	padding:5px;
	float:right;
}
#Choco_container_via a{
	color:gray;
}
#Choco_container_via a:hover{
	color:white;
	background:gray;
}
#Choco_close{
	width:30px;
	height:25px;
	background-image:url(../images/close.gif);
	background-repeat:no-repeat;
	z-index:1002;
	cursor:pointer;
	margin-top:-20px;
	display:none;
}
#Choco_loading{
	width:9px;
	height:11px;
	background-image:url(../images/loading.gif);
	background-repeat:no-repeat;
	z-index:1002;
	cursor:pointer;
	float:right;
	margin-top:-20px;
	display:none;
}
#Choco_bigImage{
	display:none;
	position:relative;
	width:100%;
	height:100%;
	margin-top:-5px;
}
#Choco_watermark {
	position:absolute;
	background-image:url(../images/logo-colors.svg);
	background-size:300px;
	top:-50;
	left:0; right:0;
}

#catalogos {
	list-style-type:none;
	margin:0;
	padding:0;
}
#catalogos li {
	background:rgba(0,0,0,0);
	display:inline-block;
	margin:20px;
	padding:0;
}
#catalogos li:hover {
	background:rgba(0,0,0,0.1);
}
#catalogos li a {
	display:block;
	text-decoration:none;
	cursor:pointer;
	color:#09e;
}
#catalogos li a:hover {
	color:#0bc;
}
#catalogos li a h5 {
	font-size:1.2em;
	color:#136;
}
#catalogos li a img {
	display:block;
	width:90%;
	margin:0 auto;
	text-align:center;
	padding-bottom:10px;
	opacity:0.8;
}
#catalogos li a:hover img {
	opacity:1;
}

.contacto {
	width:100%;
}
.contacto td {
	width:50%;
	text-align:left;
}
.cinfo {
	line-height:30px;
}
.cinfo td {
	vertical-align:top;
	padding:10px 0;
}
.cinfo td img {
	width:-50px;
	margin:0;
	padding:0;
}
@media (max-width:755px) {
	.contacto td {
		display:block;
		width:100%;
	}
	.cinfo {
		width:100%;
	}
	.cinfo td {
		display:block;
		width:100% !important;
		text-align:center;
	}
	.cinfo td {
		padding-bottom:50px;
	}
	.cinfo td img {
		margin-bottom:-50px;
	}
}

.col-left {float:left; padding-right:20px;}
.col-right {float:right; width:50%; margin-top:80px;}
@media (max-width:1120px){	
	.col-right {width:40%;}
}
@media (max-width:940px){	
	.col-left {padding-right:0;}
	.col-right {width:100%;}
}
#FORMVENTA input,
#FORMRENTA input,
#FORMSERV input {
	width:100%; border:2px solid rgba(15,50,100,0.2); margin-bottom:5px; padding:5px; font-size:1.2em; color:#136; outline:none;
}
#FORMVENTA textarea,
#FORMRENTA textarea,
#FORMSERV textarea {
	width:100%; height:100px; border:2px solid rgba(15,50,100,0.2); margin-bottom:5px; padding:5px; font-size:1.4em; color:#136; outline:none; resize:vertical;
}
#FORMVENTA input:hover, #FORMVENTA input:focus,
#FORMRENTA input:hover, #FORMRENTA input:focus,
#FORMSERV input:hover, #FORMSERV input:focus,
#FORMVENTA textarea:hover, #FORMVENTA textarea:focus,
#FORMRENTA textarea:hover, #FORMRENTA textarea:focus,
#FORMSERV textarea:hover, #FORMSERV textarea:focus {
	border:2px solid #0bc;
}
#FORMVENTA #fvSend, #FORMRENTA #frSend, #FORMSERV #fsSend {
	width:100%; background:#09e; border:0; margin-bottom:5px; padding:10px; font-size:1.2em; color:#fff; outline:none; cursor:pointer;
}
#FORMVENTA #fvSend:hover, #FORMRENTA #frSend:hover, #FORMSERV #fsSend:hover,
#FORMVENTA #fvSend:focus, #FORMRENTA #frSend:focus, #FORMSERV #fsSend:focus {
	background:#0bc;
}

#videos {
	list-style-type:none;
	width:100%;
	margin:0;
	padding:0;
	text-align:center;
}
#videos li {
	display:inline-block;
	margin:20px;
}
#videos li .videop {
	width:320px;
	height:240px;
}
#mainvid {
	width:60%; height:auto;
}
@media (max-width:700px) {
	#mainvid {
		width:100%;
	}
}

#name, #email, #phone, #message {margin-bottom:5px; padding:5px; background:rgba(255,255,255,0.1); border:1px solid rgba(255,255,255,0.4); width:100%; color:#000;}
#name:focus,#email:focus, #phone:focus, #message:focus {background:rgba(255,255,255,0.9); border:1px solid #03b; outline:none;}
#message{height:100px; font-family:'Open Sans', sans-serif;}
#Send{margin:0 auto; text-align:center; background:#09e; border:1px solid #09e; border-radius:2px; font-size:1.2em; color:#fff; padding:10px 5px; width:100%; cursor:pointer;
-webkit-transition:0.1s linear; -moz-transition:0.1s linear; -o-transition:0.1s linear; transition:0.1s linear;}
#Send:hover, #Send:focus {border:#0bc solid 1px; background:#0bc; outline:none; color:#fff;}
.error{ color:#0cc; font-size:0.8em; font-weight:700; float:left;  margin-left:2%; margin-bottom:2%; width:auto;}
.success{ color:#0c0; font-size:0.8em; font-weight:700; width:auto;}
::-webkit-input-placeholder {color:#ccc;}
:-moz-placeholder {color:#ccc;}
::-moz-placeholder {color:#ccc;}
:-ms-input-placeholder {color:#ccc;}

footer {
	margin:0;
	padding:30px 0;
	background-color: #136;
	font-size:0.8em;
	text-align: center;
	color: #fff;
}
.clearfix:after {
	visibility: hidden;
	display: block;
	content: "";
	clear: both;
	height: 0;
}

/* MODAL */
svg {
  max-width: 100%;
}
.cd-modal {
  position: fixed;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  visibility: hidden;
  -webkit-transition: visibility 0s 0.6s;
  -moz-transition: visibility 0s 0.6s;
  transition: visibility 0s 0.6s;
}
.cd-modal svg {
  position: absolute;
  top: 0;
  left: 0;
}
.cd-modal svg > path {
  fill:rgba(255,255,255,0.96);
}
.cd-modal .modal-close {
  /* 'X' icon */
  position: absolute;
  z-index: 99999;
  top: 20px;
  right: 5%;
  height: 50px;
  width: 50px;
  border-radius: 50%;
  background: rgba(225, 225, 225,0) url(../images/cd-icon-close.png) no-repeat center center;
  /* image replacement */
  overflow: hidden;
  text-indent: 100%;
  white-space: nowrap;
  /* Force hardware acceleration*/
  -webkit-transform: translateZ(0);
  -moz-transform: translateZ(0);
  -ms-transform: translateZ(0);
  -o-transform: translateZ(0);
  transform: translateZ(0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  visibility: hidden;
  opacity: 0;
  -webkit-transform: scale(0);
  -moz-transform: scale(0);
  -ms-transform: scale(0);
  -o-transform: scale(0);
  transform: scale(0);
  -webkit-transition: -webkit-transform 0.3s 0s, visibility 0s 0.3s, opacity 0.3s 0s;
  -moz-transition: -moz-transform 0.3s 0s, visibility 0s 0.3s, opacity 0.3s 0s;
  transition: transform 0.3s 0s, visibility 0s 0.3s, opacity 0.3s 0s;
}
.no-touch .cd-modal .modal-close:hover {
  background-color: rgba(225,225,225,0.2);
}
.cd-modal.modal-is-visible {
  visibility: visible;
  -webkit-transition: visibility 0s 0s;
  -moz-transition: visibility 0s 0s;
  transition: visibility 0s 0s;
  z-index:9999;
}
.cd-modal.modal-is-visible .modal-close {
  visibility: visible;
  opacity: 1;
  -webkit-transition: -webkit-transform 0.3s 0s, visibility 0s 0s, opacity 0.3s 0s;
  -moz-transition: -moz-transform 0.3s 0s, visibility 0s 0s, opacity 0.3s 0s;
  transition: transform 0.3s 0s, visibility 0s 0s, opacity 0.3s 0s;
  -webkit-transform: scale(1);
  -moz-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(1);
  transform: scale(1);
}

.cd-modal-content {
  position: relative;
  margin:0 auto;
  text-align:justify;
  height: 100vh;
  overflow-y:auto;
  padding: 3em 5% 4em;
  opacity: 0;
  -webkit-transform: translateY(50px);
  -moz-transform: translateY(50px);
  -ms-transform: translateY(50px);
  -o-transform: translateY(50px);
  transform: translateY(50px);
  -webkit-transition: opacity 0.3s 0s, -webkit-transform 0.3s 0s;
  -moz-transition: opacity 0.3s 0s, -moz-transform 0.3s 0s;
  transition: opacity 0.3s 0s, transform 0.3s 0s;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.cd-modal-content h3 {
  font-size:1.6em;
  font-weight:400;
  border-bottom:1px solid #0bc;
  color:#136;
  text-align:left;
}
}
.cd-modal-content h4 {font-size:1.4em; font-weight:600; text-align:left;}
.cd-modal-content p {
  color: #333;
  line-height: 1.6;
  margin: 2em 0;
  text-align:left;
}
.cd-modal-content p.center {text-align:center;}
.cd-modal-content dl {color:#333; text-align:left;}
.cd-modal-content ul {color:#333; text-align:left;}

.cd-modal-content #fventa {width:100%;}
.cd-modal-content #fventa td {width:50% !important; border:0px solid #f00;}

.modal-is-visible .cd-modal-content {
  opacity: 1;
  -webkit-transform: translateY(0);
  -moz-transform: translateY(0);
  -ms-transform: translateY(0);
  -o-transform: translateY(0);
  transform: translateY(0);
  -webkit-overflow-scrolling: touch;
  -webkit-transition: opacity 0.3s 0.3s, -webkit-transform 0.3s 0.3s;
  -moz-transition: opacity 0.3s 0.3s, -moz-transform 0.3s 0.3s;
  transition: opacity 0.3s 0.3s, transform 0.3s 0.3s;
}
@media only screen and (min-width: 768px) {
  .cd-modal-content {
    padding: 3em 10% 4em;
  }
  .cd-modal-content p {
    font-size: 1rem;
  }
}
.cd-cover-layer {
  position: fixed;
  z-index: 999;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  background-color:rgba(255,255,255,0.99);
  visibility: hidden;
  opacity: 0;
  -webkit-transition: opacity 0.3s 0.3s, visibility 0s 0.6s;
  -moz-transition: opacity 0.3s 0.3s, visibility 0s 0.6s;
  transition: opacity 0.3s 0.3s, visibility 0s 0.6s;
}
.cd-cover-layer.modal-is-visible {
  opacity: 1;
  visibility: visible;
  -webkit-transition: opacity 0.3s 0s, visibility 0s 0s;
  -moz-transition: opacity 0.3s 0s, visibility 0s 0s;
  transition: opacity 0.3s 0s, visibility 0s 0s;
}


/*Estilos del boton enviar*/
input[type="submit"]{
    margin: 20px auto 0;
    text-align: center;
    background: #09e;
    border: 1px solid #09e;
    border-radius: 2px;
    font-size: 1.2em;
    color: #fff;
    padding: 10px 5px;
    width: 100%;
    cursor: pointer;
    -webkit-transition: 0.1s linear;
    -moz-transition: 0.1s linear;
    -o-transition: 0.1s linear;
    transition: 0.1s linear;
}

/*Estilos de portafolio de fuentes arquitectonicas en generales.php*/
.portafolio-fa{
    width: 100%;
}
.portafolio-fa td{
    width: 50%;
    text-align: left;
}

.portafolio-fa__info{
    line-height: 30px;
}
.portafolio-fa__info td {
    vertical-align: top;
    padding: 10px 0 0 60px;
}
.portafolio-fa__info-titulo{
    font-size: 1.2em;
    /*color: #136;*/
    color: #fff!important;
    font-weight: bold;
    padding-bottom: 0;
}
.portafolio-fa__info-fecha{
    margin: 0;
}

.portafolio-fa__imagen{
    display: flex;
    justify-content: center;
}
.portafolio-fa__imagen img {
    height: 400px;
    width: 100%;
}

@media (max-width: 755px){
.portafolio-fa td {
    display: block;
    width: 100%;
}
}

/*Estilos de las flechas del slider de portafolio*/
.swiper-button-next, .swiper-button-prev {
    /*color: #136!important;*/
    color: #fff!important;
}
.swiper-pagination-bullet {
    width: 15px!important;
    height: 15px!important;
}
.swiper-pagination-bullet-active {
    /*background-color: #136!important;*/
    background-color: #fff!important;
}

/*estilos del input file del formulario de contacto*/
.custom-file-input::-webkit-file-upload-button {
  visibility: hidden;
}
.custom-file-input::before {
  content: 'Seleccionar archivo';
  display: inline-block;
  /*background: linear-gradient(top, #f9f9f9, #e3e3e3);*/
  background: rgba(255,255,255,0.1);
  border: 1px solid rgba(255,255,255,0.4);
  border-radius: 3px;
  padding: 5px 8px;
  outline: none;
  white-space: nowrap;
  -webkit-user-select: none;
  cursor: pointer;
  font-weight: 400;
  font-size: 10pt;
}
.custom-file-input:hover::before {
  border-color: #fff;
}
.custom-file-input:active::before {
  background: -webkit-linear-gradient(top, #e3e3e3, #f9f9f9);
}

/*Estilos de portafolio de ultimos proyectos en pagina de catalogo.*/
.c-proyectos{
    padding: 100px 50px 0 100px; 
    text-align: center;
}
.c-proyectos h1{
    color:#fff!important;
}

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

