@charset "utf-8";
/* CSS Document */
@import url(https://fonts.googleapis.com/css?family=Josefin+Slab:400,400italic,700,700italic|Cabin:400,400italic,500,500italic,700,700italic|PT+Sans:400,400italic,700,700italic|Archivo+Narrow:400,400italic,700,700italic|Comfortaa:400,700);


body{
	margin:0;
	font-family:"PT Sans", Helvetica, Arial, Sans-serif;
	font-size:0.95em;
	color:#444;
	background-color:#FCFCFC;
}

#mobile-detector{
	display:block;
	width:0;
	height:0;
}


main{
	line-height:1.7em;
}


main h2,
*[role=main] h2{
	color:#333333;
	margin:0;
	padding:1em 0 1em 0;
	font-size:1.6rem;
	font-weight:bold;
	font-family:'Josefin Slab',Helvetica,Arial,sans-serif;
}

main h3,
*[role=main] h3{
	color:#DE4A4A;
	margin:0;
	padding:1em 0 1em 0;
	font-size:1.2em;
}
main h3 > span,
*[role=main] h3 > span{
	display:block;
	color:#3498DA;
	font-weight:400;
}

p.highlight{
	padding:1em;
	background-color:#DE4A4A;
	color:#fff;
	text-align:center;
}

a,
a.button{
	-moz-transition:all 0.3s ease;
	-o-transition:all 0.3s ease;
	-ms-transition:all 0.3s ease;
	-webkit-transition:all 0.3s ease;
	transition:all 0.3s ease;
}

span.clear{
	display:block;
	clear:both;
}
span.clear.spacer{
	height:3rem;
}
a,
a:visited,
a:active{
	color:#06C;
	text-decoration:none;
}
a:focus,
a:hover{
	text-decoration:underline;
}

a img{
	border:none;
}

a.button,
a.button:visited,
a.button:active{
	display:inline-block;
	padding:0.5em 1em 0.5em 1em;
	border:#3598DB 1px solid;
	font-family:'Archivo Narrow',Helvetica,Arial,sans-serif;
	color:#3598DB;
	font-size:1em;
	text-decoration:none;
	text-transform:uppercase;
	font-weight:normal;
}
a.button:focus,
a.button:hover{
	background-color:#3598DB;
	color:#fff;
	text-decoration:none;
}

a.button.solid,
a.button.solid:visited,
a.button.solid:active{
	background-color:#3598DB;
	color:#fff;
	border:none;
}
a.button.solid:hover,
a.button.solid:focus{
	background-color:#268ED5;
	border:none;
	color:#fff;
}

a.button.white,
a.button.white:visited,
a.button.white:active{
	color:#fff;
	border-color:#fff;
}
a.button.white:hover,
a.button.white:focus{
	color:#3598DB;
	background-color:#fff;
}

.gray-background{
	background-color:#EFEFEF;
}

ul{
	list-style-image:url(../media/ulli.svg);
	line-height:150%;
}




.maxwidth{
	width:95%;
	max-width:1400px;
	min-width:960px;
	margin-left:auto;
	margin-right:auto;
}

header{
	display:block;
	width:100%;
	text-align:center;
	background-color:#2F343A;
	height:130px;
}

header > div{
	display:table;
	height:130px;
}
header > div > div{
	display:table-cell;
	vertical-align:middle;
}
header > div > div#mobile-menu{
	display:none;
	visibility:hidden;
}
header > div > div.logo{
	width:30%;
	text-align:left;
}
header > div > div.logo > img{
	position:relative;
	top:0.5em;
}
header > div > div.menu{
	width:70%;
	font-family:Cabin,Helvetica,Arial,sans-serif;
	color:#fff;
	text-align:right;
	position:relative;
}

header > div > div.menu a,
header > div > div.menu a:visited,
header > div > div.menu a:active{
	color:#fff;
	text-decoration:none;
}
header > div > div.menu a:hover,
header > div > div.menu a:focus,
header > div > div.menu a.current{
	color:#DE4A4A;
	text-decoration:none;
}
header > div > div.menu > *{
	position:absolute;
	right:0;
	width:100%;
}
header > div > div.menu > div{
	position:absolute;
	top:2rem;
	font-weight:bold;
	padding-right:1.5em;
}
header > div > div.menu > div a{
	margin-left:1em;
}
header > div > div.menu > div a > img{
	vertical-align:middle;
	margin-right:0.5em;
}
header > div > div.menu > nav{
	display:block;
	bottom:0;
	white-space:nowrap;
}
header > div > div.menu > nav > a{
	display:inline-block;
	text-align:center;
	/*width:15.5%;*/
	padding:0 1.5em 0 1.5em;
	height:4rem;
	line-height:4rem;
}
@media only screen and (max-width:1200px){
	header > div > div.menu{
		font-size:0.9rem;
	}
	
	header > div > div.menu > div{
		padding-right:1em;
	}
	
	header > div > div.menu > nav > a{
		padding:0 1em 0 1em;
	}
	
}
header > div > div.menu > nav > a:hover,
header > div > div.menu > nav > a:focus,
header > div > div.menu > nav > a.current{
	background-color:#363C43;
}

figure[role=banner]{
	width:100%;
	display:block;
	height:410px;
	position:relative;
	margin:0;
	padding:0;
}
figure[role=banner] > figcaption{
	display:block;
	height:94px;
	background-color:#3598DB;
	position:relative;
	margin:0;
	padding:0;
}
figure[role=banner] > figcaption > div{
	height:94px;
	text-align:left;
}
figure[role=banner] > figcaption > div > h2{
	margin:0;
	padding:0;
	font-family:Cabin,Helvetica,Arial,sans-serif;
	font-size:1.6rem;
	color:#fff;
	position:relative;
	top:1rem;
}

figure[role=banner] > figcaption > div > h2 > span{
	display:block;
	color:#444;
}
figure[role=banner] > div.imagen{
	width:100%;
	height:316px;
	position:relative;
	background-repeat:no-repeat;
	background-color:transparent;
	background-position:center center;
	background-size:cover;
}
figure[role=banner] > div.imagen.home{background-image:url(../media/billboard-home.jpg)}
figure[role=banner] > div.imagen.quienes{background-image:url(../media/billboard-quienes.jpg)}
figure[role=banner] > div.imagen.servicios{background-image:url(../media/billboard-servicios.jpg)}
figure[role=banner] > div.imagen.metodologia{background-image:url(../media/billboard-metodologia.jpg)}
figure[role=banner] > div.imagen.contacto{background-image:url(../media/billboard-contacto.jpg)}

figure[role=banner] > div.button{
	position:absolute;
	right:0;
	top:0;
	width:100%;
	height:94px;
}
figure[role=banner] > div.button > div{
	text-align:right;
	height:94px;
}
figure[role=banner] > div.button > div > a{
	position:relative;
	top:1.8rem;
}

figure[role=banner] > div.text{
	font-size:1.8em;
	color:#fff;
}
@media only screen and (max-height:900px){
	figure[role=banner] > div.text{
		font-size:1.6em;
		color:#fff;
	}
}
figure[role=banner] > div.text > div{
	position:relative;
}
figure[role=banner] > div.text > div > p{
	margin:0;
	width:45%;
	position:absolute;
	left:0;
	bottom:2em;
	text-shadow:rgba(0,0,0,1) 0em 0em 0.1em;
	font-family:'Comfortaa',Helvetica,Arial,sans-serif;
	background-color:rgba(47,52,58,0.3);
	padding:0.5rem
}
figure[role=banner] > div.text.black > div > p{
	color:#444;
	text-shadow:rgba(255,255,255,1) 0em 0em 0.1em;
	background-color:rgba(255,255,255,0.5);
}


span.prefooter{
	display:block;
	clear:both;
	height:3rem;
}

footer{
	display:block;
	text-align:center;
	color:#fff;
	font-size:0.8em;
	background-color:#2F343A;
	width:100%;

}
footer.fixed{
	position:fixed;
	bottom:0;
	left:0;
}
footer > div{
	padding:1rem 0 1rem 0;
}
footer > div a,
footer > div a:visited,
footer > div a:active{
	color:#fff;
	font-weight:bold;
}
footer > div a:hover,
footer > div a:focus{
	color:#fff;
	text-decoration:underline;
}




main.home-box{
	text-align:center;
}
main.home-box > div > h2{
	text-align:left;
}
main.home-box > div > div.home-squares{
	width:100%;
	margin:auto;
	text-align:justify;
}
main.home-box > div > div.home-squares:after{
	content:"";
	display:inline-block;
	width:100%;
}
main.home-box > div > div.home-squares > div{
	display:inline-block;
	width:30%;
	text-align:right;
	vertical-align:top;
}
main.home-box > div > div.home-squares > div > h3{
	padding-top:0;
	text-align:left;
}
main.home-box > div > div.home-squares > div > p{
	text-align:justify;
	text-align-last:left;
}


div.floatbox{
	display:inline-block;
	width:40%;
	
}
div.floatbox.right{
	float:right;
	padding:0 0 4rem 2rem;
	margin:0 0 0 2rem;
	border-left:#ccc 1px solid;
}
div.floatbox.left{
	float:left;
	padding:0 2rem 4rem 0;
	margin:0 2rem 0 0;
	border-right:#ccc 1px solid;
}
div.floatbox > img{
	width:100%;
	height:auto;
	margin-bottom:1rem;
}
div.floatbox > p.blue{
	text-align:center;
	color:#3598DB;
	font-weight:bold;
	font-size:1.3em;
}


section.services-boxes{
	text-align:justify;
}
section.services-boxes:after{
	content:"";
	display:inline-block;
	width:100%;
}
section.services-boxes > div{
	width:30%;
	max-width:355px;
	display:inline-block;
	vertical-align:top;
	text-align:left;
}
section.services-boxes > div > img{
	width:100%;
	height:auto;
}
section.services-boxes > div > p{
	text-align:justify;
}

section.outside{
	text-align:center;
	padding:1rem 0 1rem 0;
	display:block;
}

div.graybox{
	display:table;
	width:100%;
}
div.graybox > div{
	display:table-cell;
	vertical-align:middle;
	text-align:left;
}
div.graybox > div.text{width:65%}
div.graybox > div.image{width:35%}
div.graybox > div.image > img{
	width:100%;
	height:auto;
}
div.graybox > div.image > h3{
	margin-bottom:0;
	padding-bottom:0;
}
div.graybox.right > div.text{
	padding-right:3em;
}
div.graybox.right > div.image{
	padding-left:3em;
	border-left:#fff 1px solid;
}
div.graybox.left > div.text{
	padding-left:3em;
}
div.graybox.left > div.image{
	padding-right:3em;
	border-right:#fff 1px solid;
}

p.contacto{
	font-weight:bold;
	font-size:1.1em;
}

input[type=text],
textarea{
	border:none;
	border-bottom:rgba(0,0,0,0.25) 1px solid;
	color:#666;
	font-family:Cabin,Helvetica,Arial,sans-serif;
	font-size:1rem;
	padding:0.6em;
	display:block;
	background-color:transparent;;
	width:100%;
	width:-moz-calc(100% - 1.2em);
	width:-webkit-calc(100% - 1.2em);
	width:-ms-calc(100% - 1.2em);
	width:-o-calc(100% - 1.2em);
	width:calc(100% - 1.2em);
	margin-bottom:1em;
}
textarea{
	height:6em;
}

#contenedorFormaRapida{
	width:50%;
}



form{
	margin:0px;
	padding:0px;
}
p.justificado{
	text-align:justify;
}
p.indent{
	text-indent:2em;
}
img.derecha{
	float:right;
	margin:0px 0px 20px 20px;
}
img.izquierda{
	float:left;
	margin: 0px 20px 20px 0px;
}
img.borde{
	border:#ccc 1px solid;
	padding:3px;
	background-color:#FFF;
}




#oldIeBar div, #noScriptBar div{
	padding:3px;
}
#oldIeBar a{
	color:#06C;
	text-decoration:none;
}
#oldIeBar a:hover, #oldIeBar a:focus{
	text-decoration:underline;
}

a,div,object,embed{
	outline:none;
}

iframe[name=google_conversion_frame]{display:none;visibility:hidden}

p.mobile-call,
div.mobile-contact{
	display:none;
	visibility:hidden;
}

div.contact-button-landing{
	text-align:center;
	padding:2em 0 2em 0;
}
