/* T-presto 2016*/
/* Version: 1.0*/
/* Build: 24 Noviembre 2016*/
/* Autor: http://www.conaxis.com */

/*Estilos generales*/
body{
	font-family: "Raleway", sans-serif;
	color:#666;
	font-size:16px;
    -ms-text-size-adjust: 100%;
    -webkit-text-size-adjust: 100%;
	-webkit-font-smoothing: antialiased;
}
h1, h2, h3, h4, h5, h6, h7{
	font-family: "Raleway", sans-serif;
	letter-spacing:-1px;
	font-weight:normal;
}
h4 {
	font-size:32px;
	color:#666;
	font-weight:300;
	margin-bottom:40px;
}
h6 {
	color:#000;
	font-weight:500;
	font-size:20px;
	margin:20px 0;
}
a, button {
	color:#666;
	transition: all .2s ease-out;
	-moz-transition: all .2s ease-out;
	-o-transition: all .2s ease-out;
	-webkit-transition: all .2s ease-out;
}
a,
a:hover,
a:focus{
	text-decoration: none;
}
a:hover{
	color:#111;
}
a:focus,
button:focus  { 
	outline: none; 
}
.clearfix{
	clear:both;
	display: inline-block;
	height:1%;
}
.visible-mobile {
	display:none;
}
.btn-primary {
	color:#fff;
	background-color:#ffcc00;
	border-radius:30px;
	border:0;
	font-weight:500;
	text-transform:uppercase;
	padding:14px 40px;
	font-size:14px;
}
.btn-primary:hover,
.btn-primary:focus,
.btn-primary:active {
	color:#fff;
	background-color:#eb9d00;
}
.img-responsive {
	width:100%;
	margin-bottom:20px;
}
p {
	color: #666;
	font-size: 14px;
}

/*header*/
header {
	background-position:center bottom;
	background-repeat:no-repeat;
    width: 100%;
	min-height:470px;
}
header.h-home {
	background-image:url('../images/bg-homepage.jpg');
}
header.h-contact {
	background-image:url('../images/bg-contact.jpg');
}
header.h-about {
	background-image:url('../images/bg-empresa.jpg');
}
header .brand {
	display:inline-block;
	padding:0;
	position: relative;
    top: -15px;
}
header .brand img {
    display: inline-block;
	width:auto;
}
header .nav {
	text-align:right;
	margin-top:40px;
}
header .nav a {
	color:#fff;
	font-weight:300;
    padding: 10px;
	font-size:14px;
	border:1px solid transparent;
	border-radius:6px;
}
header .nav a:hover,
header .nav a.active,
header .nav a.active:hover {
	color:#ffcc00;
	border-color:#ffcc00;
}
header .caption {
	padding-right:50px;
}
header .caption h1 {
	color:#fff;
	font-size:40px;
}
header .caption h2 {
	color:#fff;
	font-weight:500;
	font-size:24px;
}
header .caption p {
	color:#ffcc00;
	font-size:18px;
}

/*index form*/
.index-form {
	padding:40px;
	margin-top:30px;
	text-align:center;
	background:#fff;
	margin-bottom:60px;
}
.index-form h5 {
	color:#999;
	font-size:24px;
	font-weight:400;
	margin:0 0 15px;
}

/*About section*/
.about {
	padding:60px 0;
	text-align:center;
}
.about .present {
	padding:20px;
}

/*How works section*/
.how-works {
	background: url(../images/bg-grey.jpg) #EBEBEB center top no-repeat;
	padding:60px 0 40px;
	text-align:center;
}
.how-works .present {
	padding:20px 30px;
}

/*Contacto*/
.contacto {
	padding:60px 0;
	text-align:center;
}
.contact-form {
	padding:40px;
}
/*Form style*/
.form input{
	height:42px;
}
.form input,
.form textarea{
	border-radius:0;
	box-shadow:none;
	font-size:16px;
	font-weight:300;
	padding:8px 15px;
	border:1px solid #C5C5C5;
	background:#fff;
}
.form input:focus,
.form select:focus,
.form textarea:focus,
.form input:active,
.form select:active,
.form textarea:active{
	box-shadow:none;
	border-color:#F2541F;
}
.form .form-group {
	margin-bottom:17px;
	position:relative;
}
.form_hint {
	font-size: 11px;
}
.form input:required,
.form textarea:required {
	background: #fff url(../images/red_asterisk.png) no-repeat 98% center;
}
.form input:required:valid, .form textarea:required:valid {
	background: url(../images/valid.png) no-repeat 98% center;
	background-color: #fff;
}
.form input:focus:invalid,
.form textarea:focus:invalid {
	background: url(../images/invalid.png) no-repeat 98% center;
	background-color: #fff;
}
.form_hint {
	background: #d45252;
	border-radius: 3px 3px 3px 3px;
	color: white;
	margin-left:8px;
	padding: 1px 6px;
	z-index: 999;
	position: absolute;
	display: none;
}
.form_hint::before {
	content: "\25C0";
	color:#d45252;
	position: absolute;
	top:1px;
	left:-6px;
}
.form input:focus + .form_hint {
	display: inline;
}
.form input:required:valid + .form_hint {
	background: #28921f;
}
.form input:required:valid + .form_hint::before {
	color:#28921f;
}
#mensajes .thanks {
	font-size:18px;
	padding:10px;
	text-align:center;
	border-radius:4px;
	color:#fff;
	-moz-border-radius:4px;
	-webkit-border-radius:4px;
	font-weight: 600;
	background-color: #89C04A;
	text-shadow:0 -1px 0 rgba(0,0,0,0.2);
}
#mensajes .thanks_error {
	font-size: 14px;
    padding: 6px;
    line-height: 120%;
	text-align:center;
	border-radius:4px;
	color:#fff;
	-moz-border-radius:4px;
	-webkit-border-radius:4px;
	font-weight: 700;
	background-color:#C35F63;
	text-shadow:0 -1px 0 rgba(0,0,0,0.2);
}
.working {
	margin-bottom:20px;
	font-family: "Open Sans",sans-serif;
	font-size: 18px;
	padding: 10px;
	text-align: center;
	border-radius: 4px;
	color: #999;
	-moz-border-radius: 4px;
	-webkit-border-radius: 4px;
	font-weight: 600;
	background-color: #ddd;
	text-shadow: 0 -1px 0 rgba(255,255,255,0.2);
}
label.error {
	font-size: 11px;
	color: red;
	font-weight:300;
	position: absolute;
	left: 0;
}
.form input.error,
.form textarea.error {
	color:#e9322d;	
	border-color:#e9322d;
	background-color:#F5E0E0;
}
.form input.valid,
.form textarea.valid {
	border-color:#85B200;
}

/*footer*/
footer {
	background:url(../images/bg-footer.jpg) #0e4798 no-repeat center top;
	position:relative;
	color:#0e4798;
	padding:40px 0;
}
footer *{
	color:#fff;
}
footer .f-brand {
	width:150px;
}
footer .contact {
	float:right;
}
footer .contact img{
	margin-right:5px;
}
footer .data-foot p {
	border-top:2px solid #fff;
	margin-top:10px;
	padding-top:5px;
	text-align:right;
	font-size:14px;
}
.copyright {
	background-color:#E5E5E5;
	padding:20px 0;
	color:#333;
	font-size:13px;
}
.copyright p{
	margin:0;
}
.copyright a {
	float:right;
}


/*Directivas del Responsive*/

@media screen and (max-width: 480px){
	.about .present {
		padding:20px!important;
	}

	header .nav {
		text-align:center;
		margin-bottom:20px;
	}
	.index-form {
		margin-left:0!important;
		margin-right:0!important;
	}
	.index-form .btn{
		padding:14px 20px;
	}
	.contact-form{
		padding:20px 0;
	}
	h4 {
		font-size: 24px;
	}
	footer .f-brand {
		width:130px!important;
	}
	footer .col-xs-4 {
		width:100%;
	}
}	
@media screen and (max-width:767px) {
	header.h-home,
	header.h-empresa,
	header.h-contact{
		background-position:center top;
		background-image:url('../images/bg-mobile.jpg');
	}
	header .nav {
		margin-top:20px;
	}
	header .nav a {
		font-size:14px;
		padding:8px 10px;
		border-color:#fff;
		color:#fff;
	}
	header .nav a:hover,
	header .nav a.active,
	header .nav a.active:hover{
		background-color:#fff;
		border-color:#fff;
	}
	header .brand {
		display:block;
		text-align:center;
	}
	header .brand img {
		display:block;
		margin:auto;
		width:200px;
	}
	header .caption {
		padding:0;
		text-align:center;
	}
	header .caption h1 {
		font-size:28px;
	}
	header.h-contact {
		height:200px;
		min-height:auto;
	}
	header.h-contact .brand img{
		width:200px;
	}
	.index-form {
		padding: 25px;
		margin-left:50px;
		margin-right:50px;
		border:1px solid #ccc;
		margin-bottom:0;
	}
	.about .present {
		padding:20px 100px;
	}
	footer {
		padding: 20px 0;
		text-align:center;
	}
	footer .f-brand {
		margin-bottom:20px;
		width:180px;
	}
	footer .contact {
		float:none;
		text-align:center;
	}
	footer .contact img {
		display:block;
		margin:auto;
	}
	footer .data-foot p {
		border-top: 2px solid #fff;
		padding-top: 5px;
		margin-top:0;
		text-align: center;
		font-size: 14px;
	}
	footer .data-foot p br {
		display:none;
	}
	.copyright {
		text-align:center;
	}
	.copyright a{
		float:none;
		display:block;
		margin-top:10px;
	}
}
@media (min-width: 768px) and (max-width: 991px) {
	header.h-home,
	header.h-empresa,
	header.h-contact{
		background-position:center top;
		background-image:url('../images/bg-mobile.jpg');
	}
	header .nav {
		margin-top:20px;
	}
	header .nav a {
		font-size:14px;
		padding:8px 10px;
		border-color:#fff;
		color:#fff;
	}
	header.h-contact {
		height:200px;
		min-height:auto;
	}
	header.h-contact .brand img{
		width:200px;
	}
	header .nav a:hover,
	header .nav a.active,
	header .nav a.active:hover{
		background-color:#fff;
		border-color:#fff;
	}
	.index-form {
		padding: 25px;
	}
	.about .present {
		padding:20px 0;
	}
	footer {
		padding: 20px 0;
		text-align:center;
	}
	footer .f-brand {
		margin-bottom:20px;
		width:180px;
	}
	footer .contact {
		float:none;
		text-align:center;
	}
	footer .data-foot p {
		border-top: 2px solid #fff;
		padding-top: 5px;
		margin-top:0;
		text-align: center;
		font-size: 14px;
	}
	footer .data-foot p br {
		display:none;
	}
}	
@media (min-width: 992px) and (max-width: 1199px) {
	footer {
		padding: 20px 0;
	}
}