/*
	Flat - Mark Willis
*/

input[type='submit'] {
   -webkit-appearance: none;
   -moz-appearance: none;
   appearance: none;  
}

::placeholder {
	color: #999999;
	opacity: 1;
}
:-ms-input-placeholder {
	color: #999999;
}
::-ms-input-placeholder {
	color: #999999;
}

.button_flat {
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	
	color: #FFFFFF;
	text-decoration: none;
	padding: 10px 20px;
	background: #CCCCCC;
	display: inline-block;
	border-radius: 0px;
	border: 1px solid #999999;
	text-shadow: 1px 1px rgba(0, 0, 0, 0.4);
	font-weight: 400;
	font-size: 20px;
	line-height: 1.4em;
	-webkit-transition: all 0.2s;
	-moz-transition: all 0.2s;
	-ms-transition: all 0.2s;
	-o-transition: all 0.2s;
	transition: all 0.3s;
	text-align: center;
	margin: 0;
	cursor: pointer;
	white-space: nowrap;
	vertical-align: middle;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	-o-user-select: none;
	user-select: none;
	letter-spacing: 1px;
	
	-moz-box-shadow: 0 2px 10px 0 rgba(0, 0, 0, 0.15), inset 0px 4px 12px 0px rgba(255,255,255,0.25);
    -webkit-box-shadow: 0 2px 10px 0 rgba(0, 0, 0, 0.15), inset 0px 4px 12px 0px rgba(255,255,255,0.25);
    box-shadow: 0 2px 10px 0 rgba(0, 0, 0, 0.15), inset 0px 4px 12px 0px rgba(255,255,255,0.25);
	
	border: 2px solid rgba(255,255,255,0.5);
}
.button_flat:hover {
	color: #FFFFFF;
	transform: scale(1.02);
}
.button_flat_bold {
	font-weight: bold;
}

.button_flat_no_shadow {
	-moz-box-shadow: none;
    -webkit-box-shadow: none;
    box-shadow: none;
}

.button_flat_curved {
	padding: 10px 42px;
	border-radius: 40px;
}

.button_flat_wide {
	padding: 10px 80px;
}

.button_form {
	margin: 15px 0 15px 0;
}
.button_flat_full {
	display: block;
	width: 100%;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	text-align: center;
}
.button_flat_right {
	float: right;
}
.button_flat_left {
	float: left;
}
.button_flat_small {
	padding: 6px 15px 6px 15px;
	font-size: 14px;
}

/* Blue */
.button_flat_blue {
	color: #FFFFFF;
	background-color: #0054A5;
	border-color: #0059af;
}
.button_flat_blue:hover {
	color: #FFFFFF;
	background-color: #0061BE;
	border-color: #0059af;
}
.button_flat_blue:active {
	background-color: #0059af;
}

/* White */
.button_flat_white {
	color: #333333;
	background-color: #F7F7F7;
	border-color: #EBEBEB;
	text-shadow: 1px 1px 0px rgba(255,255,255,0.15);
}
.button_flat_white:hover {
	color: #555555;
	background-color: #FFFFFF;
	border-color: #EBEBEB;
}
.button_flat_white:active {
	background-color: #DFDFDF;
}

/* Green */
.button_flat_green {
	color: #FFFFFF;
	background-color: #009032;
	border-color: #007c2c;
}
.button_flat_green:hover {
	color: #FFFFFF;
	background-color: #3dbb00;
	border-color: #007c2c;
}
.button_flat_green:active {
	background-color: #007c2c;
}

/* Red */
.button_flat_red {
	color: #FFFFFF;
	background-color: #df0024;
	background-color: #E0121A;
	border-color: #c90008;
}
.button_flat_red:hover {
	color: #FFFFFF;
	background-color: #ff674d;
	background-color: #f91e27;
	border-color: #c90008;
}
.button_flat_red:active {
	background-color: #c90008;
}

/* Yellow */
.button_flat_yellow {
	color: #222222;
	background-color: #f1c40f;
	border-color: #E3B603;
	text-shadow: 1px 1px 0px rgba(255,255,255,0.5);
}
.button_flat_yellow:hover {
	color: #111111;
	background-color: #FFD634;
	border-color: #f5d313;
}
.button_flat_yellow:active {
	background-color: #E3B603;
}

/* Gold */
.button_flat_gold {
	color: #222222;
	background-color: #C0A669;
	border-color: #DABE7D;
	text-shadow: 1px 1px 0px rgba(255,255,255,0.3);
}
.button_flat_gold:hover {
	color: #111111;
	background-color: #E7B643;
	border-color: #f5d313;
}
.button_flat_gold:active {
	background-color: #DABE7D;
}

/* Pink */
.button_flat_pink {
	color: #FFFFFF;
	background-color: #E2145E;
	border-color: #a81b4e;
	text-shadow: 1px 1px 0px rgba(0,0,0,0.15);
}
.button_flat_pink:hover {
	color: #FFFFFF;
	background-color: #ff3b82;
	border-color: #a81b4e;
}
.button_flat_pink:active {
	background-color: #a81b4e;
}

/* Teal */
.button_flat_teal {
	color: #FFFFFF;
	background-color: #00A79D;
	border-color: #008a82;
	text-shadow: 1px 1px 0px rgba(0,0,0,0.15);
}
.button_flat_teal:hover {
	color: #FFFFFF;
	background-color: #09beb3;
	border-color: #008a82;
}
.button_flat_teal:active {
	background-color: #008a82;
}

/* Home page welcome */
.button_flat_red_home {
	color: #FFFFFF;
	font-weight: bold;
	background-color: rgba(237, 28, 36, 0.7);
	border: 2px solid #DA040C;
	border-color: #DA040C;
	text-shadow: 1px 1px 1px rgba(0,0,0,0.6);
}
.button_flat_red_home:hover {
	color: #FFFFFF;
	background-color: rgba(237, 28, 36, 1);
	border-color: #DA040C;
}
.button_flat_red_home:active {
	background-color: rgba(237, 28, 36, 1);
}


/* FORMS */
.form_item {
	display: block;
	width: 100%;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	padding: 12px 12px;
	font-size: 14px;
	line-height: 1.42857143;
	color: #555;
	background-color: #fff;
	background-image: none;
	border: 1px solid #E1E1E1;
	-webkit-border-radius: 6px;
	-moz-border-radius: 6px;
	border-radius: 6px;
	/*
	-webkit-box-shadow: inset 0 1px 1px rgba(0,0,0,.075);
	box-shadow: inset 0 1px 1px rgba(0,0,0,.075);
	*/
	-webkit-transition: border-color ease-in-out .15s,-webkit-box-shadow ease-in-out .15s;
	-o-transition: border-color ease-in-out .15s,box-shadow ease-in-out .15s;
	transition: border-color ease-in-out .15s,box-shadow ease-in-out .15s;
	margin: 0;
}
.form_item:focus {
	border-color: #FFFFFF;
	-webkit-box-shadow: 0 0px 16px rgba(60,182,0,0.3);
	box-shadow: 0 0px 16px rgba(60,182,0,0.3);
}
.form_item_new:focus {
	border-color: #FFFFFF;
	-webkit-box-shadow: 0 0px 18px rgba(97,178,255,0.3);
	box-shadow: 0 0px 18px rgba(97,178,255,0.4);
}
.form_item_auto {
	width: auto;
	display: inline-block;
}
.form_item_large {
	/*padding: 22px 12px;*/
}
.form_item_margin {
	margin: 0 0 10px 0;
}
.form_item_checkbox {
	display: inline-block;
	height: 20px;
	width: 20px;
	line-height: 16px;
}
.form label {
	font-weight: normal;
	font-size: 14px;
	line-height: 1.5em;
	margin: 0 0 5px 3px;
	color: #888888;
	display: block;
}
textarea.form_item {
	resize: none;
}
div.form_security img {
	float: left;
	margin: 0 10px 0 0;
}
div.form_security .form_item_small {
	display: inline-block;
	width: 50%;
}

.form_item_radius_reset {
	-webkit-border-radius: 0px;
	-moz-border-radius: 0px;
	border-radius: 0px;
}

.form_item_radius_right {
	-webkit-border-top-right-radius: 3px;
	-webkit-border-bottom-right-radius: 3px;
	-moz-border-radius-topright: 3px;
	-moz-border-radius-bottomright: 3px;
	border-top-right-radius: 3px;
	border-bottom-right-radius: 3px;
}
.form_item_radius_left {
	-webkit-border-top-left-radius: 3px;
	-webkit-border-bottom-left-radius: 3px;
	-moz-border-radius-topleft: 3px;
	-moz-border-radius-bottomleft: 3px;
	border-top-left-radius: 3px;
	border-bottom-left-radius: 3px;
}
.form_item_height50 {
	height: 50px;
}

.form_item_error {
	background-color: #F2DEDE;
	border: 1px solid #CC0000;
}



/* Password strength */
div.password_strength {
	background: none;
	border: 0;
	border-top: none;
}
div.password_strength_left {
	width: 20%;
	float: left;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
}
div.password_strength_text {
	padding: 0px 0 5px 5px;
	font-size: 12px;
	color: #AAAAAA;
	text-align: left;
}
div.password_strength_right {
	width: 79%;
	float: left;
	margin: 11px 0 0 0;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
}
div.password_strength_b {
	width: 20%;
	height: 6px;
	float: left;
	background: #FFFFFF;
	border-left: 1px solid #CCC;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
}
div.form_pass_weak {
	background: #d9534f;
}
div.form_pass_good {
	background: #f0ad4e;
}
div.form_pass_strong {
	background: #5cb85c;
}

/* Mobile Styles */
@media only screen and (min-width: 0px) and (max-width: 767px) {
	.button_flat_250 {
		width: auto;
	}
}