/*	--------------------------------------------------
	FORMS
	-------------------------------------------------- */	
	.button { 
		position:relative; display:inline-block; background-color:#0880BA; padding:10px 20px 11px; overflow:hidden; z-index:1; border-radius:4px;
		font-weight:normal; line-height:1.2; font-size:1rem; color:#fff; text-align:center; text-transform:uppercase; text-shadow:1px 1px 0px #06608C;
		-webkit-transition:background-color 0.5s;
		-moz-transition:background-color 0.5s;
		transition:background-color 0.5s; 
		-webkit-transition-timing-function:cubic-bezier(0.7,0,0.9,1); 
		-moz-transition-timing-function:cubic-bezier(0.7,0,0.9,1); 
		transition-timing-function:cubic-bezier(0.7,0,0.9,1);
	}
	.button span {}
	.button:active,
	.button:focus,
	.button:hover { background-color:#254f77; color:#fff; text-decoration:none; }

	.button.loading { background-image:url("../img/spinner.svg"); background-position:center center; background-repeat:no-repeat; pointer-events:none; }
	.button.loading span { opacity:0; visibility:hidden; }

	::-webkit-input-placeholder { color:#999 !important; font-size:100%; opacity:1; }
	::-moz-placeholder { color:#999 !important; font-size:100%; opacity:1; }
	:-ms-input-placeholder { color:#999 !important; font-size:100%; opacity:1; }
	input:-moz-placeholder { color:#999 !important; font-size:100%; opacity:1; }

	label { display:block; font-weight:bold; color:#4D4D4D; }

	input:-webkit-autofill,
	input:-webkit-autofill:hover,
	input:-webkit-autofill:focus,
	input:-webkit-autofill:active {
		transition:background-color 9999s ease-in-out 0s;
		 -webkit-text-fill-color: #fff;
	}

	::-ms-clear { display:none; }

	.formulario { position:relative; margin:0 auto 30px; padding:30px; text-align:left; background:#fff; border:1px solid #ccc; }
	/*.formulario p { margin-bottom:20px; }*/
	.form-group { position:relative; margin-bottom:12px; }
	.form-control {
		-webkit-appearance:none; border-radius:3px; border:1px solid #ccc; font-family:Arial, Helvetica, sans-serif; font-size:1rem; 
		height:36px; margin:0 0 20px; background-color:rgba(0,0,0,0); padding:8px 10px;
		-webkit-transition:0.25s; -moz-transition:0.25s; transition:0.25s;  
		-webkit-box-shadow:none; box-shadow:none; 
	}
	.form-control:focus { -webkit-box-shadow:none; box-shadow:none; background-color:#f9f9f9 !important; border-color:#999 !important; }

	.has-error .form-control { border-color:#BC000E; -webkit-box-shadow:none; box-shadow:none; }
	.has-error .form-control:focus { border-color:#BC000E; -webkit-box-shadow:none; box-shadow:none; }

	.file-button { position: relative; }
	.file-button label { 
		cursor: pointer; position: relative; display: inline-block; width: 100%; font-weight:normal; vertical-align: middle; text-align: center; margin:0;
	    padding:7px 25px; border: 0; border-radius:4px; background:#69b419; color:#fff; height:35px; text-transform:uppercase; text-shadow:1px 1px 0px #4f8a0f;
	    -webkit-transition: all 0.35s cubic-bezier(0.16, 0.78, 0.74, 1.01) 0s;
	    -moz-transition: all 0.35s cubic-bezier(0.16, 0.78, 0.74, 1.01) 0s;
	    transition: all 0.35s cubic-bezier(0.16, 0.78, 0.74, 1.01) 0s;    
	}
	.file-button form { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }
	.file-button form input { cursor: pointer; width: 100%; height: 100%; position: absolute; top: 0; left: 0; opacity: 0; }
	.file-button:hover label { background-color:#4f8a0f; color:#fff; }


	/* Progress bar and msg */
	.progress-wrap { 
		opacity:0; visibility:hidden;
	    -webkit-transition: all 0.35s cubic-bezier(0.16, 0.78, 0.74, 1.01) 0s;
	    -moz-transition: all 0.35s cubic-bezier(0.16, 0.78, 0.74, 1.01) 0s;
	    transition: all 0.35s cubic-bezier(0.16, 0.78, 0.74, 1.01) 0s;  
	}
	.progress-wrap.active { opacity:1; visibility:visible; }
	.progress { position:relative; width:100%; height:5px; overflow:hidden; margin-bottom:12px; background-color:#ccc; }
	.progress span { 
		display:block; position:absolute; left:0; top:0; height:100%; background:#69b419;
	    -webkit-transition: all 0.35s cubic-bezier(0.16, 0.78, 0.74, 1.01) 0s;
	    -moz-transition: all 0.35s cubic-bezier(0.16, 0.78, 0.74, 1.01) 0s;
	    transition: all 0.35s cubic-bezier(0.16, 0.78, 0.74, 1.01) 0s;  
	}

	.status-file { font-size:0.85rem; }
	.status-file.error { color:#BC000E; }

	#formulario_enviar_btn { padding:15px 30px; }

	@media (max-width:991px) {
		#formulario_enviar_btn { display:block; }
	}
	
	@media (min-width:992px) {
		.file-button { margin-top:26px; }
		.progress-wrap { margin-top:26px; }

		.button-row { margin:40px 0 0; display:inline-block; width:100%; }
		#formulario_enviar_btn { float:right;  }
	}


/*	--------------------------------------------------
	Typography
	-------------------------------------------------- */
	
	html { font-size:15px; }
	body { 
		font-family: Arial, Helvetica, sans-serif; color:#333; font-size:1rem;
		background: rgb(247,247,247);
		background: -moz-linear-gradient(top, rgba(247,247,247,1) 0%, rgba(255,255,255,1) 100%);
		background: -webkit-linear-gradient(top, rgba(247,247,247,1) 0%,rgba(255,255,255,1) 100%);
		background: linear-gradient(to bottom, rgba(247,247,247,1) 0%,rgba(255,255,255,1) 100%);
		filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f7f7f7', endColorstr='#ffffff',GradientType=0 );
	}

	h1, h2, h3, h4, h5, h6 { font-weight:bold; margin-top:0; line-height:1.2; }
	h1 { font-size:3.667rem; }
	h2 { font-size:2.533rem; }

	p { font-size:1rem; line-height:1.4; margin:0; }

	a { 
		text-decoration:none !important; outline:0 !important; color:#cc0012;
		-webkit-box-shadow:none !important;
		-moz-box-shadow:none !important;
		box-shadow:none !important;
	}

	a:hover { color:#cc0012; }


	/* Error Message
	-------------------------------------------------- */
	.msg { 
		opacity:0; visibility:hidden; margin:10px 0 0;
		-webkit-transition:all 0.3s ease; -moz-transition:all 0.3s ease; transition:all 0.3s ease;
	}
	.msg.active { opacity:1; visibility:visible; }
	.msg p { font-size:93%; color:#333; display:inline-block; margin:0; }
	.msg .ic {
		display:inline-block; width:30px; height:30px; margin-right:10px; background:url("../img/ic-form-status.png") no-repeat;
		vertical-align:middle;
	}
	.msg-ok .ic { background-position:0 -36px; }


	@media (max-width:991px) {
		.msg { position:fixed !important; top:0 !important; left:0 !important; width:100%; background:#ae0019; padding:10px; margin:0; z-index:50; }
		.msg .ic { margin-right:8px; }
		.msg p { color:#fff; }
		.msg-ok { background-color:#69b419; }
	}

	@media (min-width:992px) {
		.msg { float:left; }
	}
