:root{
	--color-primario:##ff8600;
	--color-secundario:#144588;
}
body{
	margin:0;
	padding:0;
	font-family: 'Montserrat', sans-serif;
	color:#555555;
	background: url(http://expoinvierte.com/images/bg/2-1.jpg?v=4) center center no-repeat;
	background-size: cover;
	min-height: 100vh;
}
main,section,article,footer{
	display:block;
	width:100%;
}
.contenedor{
	display:block;
	margin:0 auto;
	width:90%;
}
#Capa_1{
	display: block;
	width: 200px;
	margin:0 auto;
}
.fechas{
	display: block;
	width: 250px;
	margin:0 auto;
}
.contenedor-80{
	display:block;
	margin:0 auto;
	width:80%;
}
.contenedor-1600{
	display:block;
	margin:0 auto;
	width:90%;
	max-width:1600px;
}
.centrar{
	text-align: center;
}
.row{
	display:block;
	width:100%;
	float:left;
}
.relative{
	position: relative;
}
.full-width{
	width:100%;
	display:block;
}
.vertical-center{
    align-items: center;
    justify-content: center;
}
.flex-container{
	display:flex;
	width:100%;
	flex-flow: row wrap;
}
.flex-10{
	flex:0 0 10%;
}
.flex-15{
	flex:0 0 15%;
}
.flex-16{
	flex:0 0 16.6666%;
}
.flex-20{
	flex:0 0 20%;
}
.flex-25{
	flex:0 0 25%;
}
.flex-30{
	flex:0 0 30%;
}
.flex-33{
	flex:0 0 33.33%;
}
.flex-14{
	flex: 0 0 14.2%;
	margin: 10px 0;
}
.flex-40{
	flex:0 0 40%;
}
.flex-50{
	flex:0 0 50%;
}
.flex-60{
	flex:0 0 60%;
}
.flex-70{
	flex:0 0 70%;
}
.flex-80{
	flex:0 0 80%;
}
.flex-85{
	flex:0 0 85%;
}
.display-flex{
	display:flex;
	flex:0 0 100%;
}
.p-b-10{
	padding-bottom:10px;
}
.p-b-20{
	padding-bottom:20px;
}
.p-b-30{
	padding-bottom:30px;
}
.p-b-40{
	padding-bottom:40px;
}
.p-b-50{
	padding-bottom:50px;
}
.p-t-20{
	padding-top:20px;
}
.p-t-200{
	padding-top:200px;
}
.p-t-10{
	padding-top:10px;
}
.p-t-30{
	padding-top:30px;
}
.p-t-40{
	padding-top:40px;
}
.p-t-50{
	padding-top:50px;
}
.m-r-10{
	margin-right: 10px;
}
.col-10{
	display:inline-block;
	width:10%;
	float:left;
}
.col-20{
	display:inline-block;
	width: 20%;
	float:left;
}
.col-25{
	display:inline-block;
	width: 25%;
	float:left;
}
.col-30{
	display:inline-block;
	width: 30%;
	float:left;
}
.col-33{
	display:inline-block;
	width: 33.3333%;
	float:left;
}
.col-40{
	display:inline-block;
	width: 40%;
	float:left;
}
.col-50{
	display:inline-block;
	width:50%;
	float:left;
}
.col-60{
	display:inline-block;
	width:60%;
	float:left;
}
.col-70{
	display:inline-block;
	width:70%;
	float:left;
}
.col-80{
	display:inline-block;
	width:80%;
	float:left;
}
.col-90{
	display:inline-block;
	width:90%;
	float:left;
}
.logo{
	display: block;
	margin: 0 auto;
	width: 80%;
	max-width: 450px;
}
header{
	padding: 50px 0;
}
#formulario{
	background: #fff;
	max-width: 600px;
	width: 90%;
	margin: 0 auto;
	padding: 30px 0;
	border-radius: 10px;
	box-shadow: rgba(149, 157, 165, 0.2) 0px 8px 24px;
}
.required{
	color: red;
}
input[type=text],input[type=tel],input[type=email],input[type=number]{
	display: block;
	width: calc(100% - 22px);
	padding: 10px 10px;
	border: 1px solid #ccc;
	border-radius: 4px;
	margin: 5px 0;
}
input[type=text]:focus,input[type=tel]:focus,input[type=email]:focus,input[type=number]:focus{
	outline: none;
	border: 1px solid #144588;
}
label{
	display: block;
	margin: 0 0 30px 0;
}
select{
	display: block;
	width: calc(100% - 2px);
	padding: 10px 10px;
	border: 1px solid #ccc;
	border-radius: 4px;
	margin: 5px 0;
}
select:focus{
	outline: none;
	border: 1px solid #144588;
}
button{
	background: #ff8600;
	color: #ffffff;
	font-size: 20px;
	padding: 12px 0;
	border-radius: 10px;
	border: 0;
	width: 100%;
}
input.error, select.error{
	border: 1px solid #ff0000 !important;
	background: url(../img/error.png) 96% center no-repeat;
}
label.error{
	color: #ff0000;
	font-size: 12px;
}
.valid{
	border: 1px solid #80d10a !important;
	background: url(../img/check.png) 96% center no-repeat;
}
footer{
	color: #333;
	font-size: 12px;
	padding: 50px 0;
}
.steps{
	font-size: 12px;
}
.bar-progress{
	display: block;
	width: 100%;
	color: #aaa;
	padding: 10px 0;
}
.bar-progress.green{
	border-top: 4px solid #3bd000;
}
.bar-progress.grey{
	border-top: 4px solid #ccc;
}
.bar-progress.green.active{
	color: #333;
}
.bar-progress strong{
	display: block;
}
.aviso{
	font-size: 14px;
	color: #666666;
	text-decoration: none;
}
@media screen and (max-width:600px){
	#formulario label{
		font-size:14px;
	}
	label.error{
		font-size:11px !important;
	}
}

