/* errors */
.messageStackError,
.messageStackSuccess,
.messageStackCaution,
.messageStackWarning {
	border: 1px solid transparent;
	border-radius: 3px;
	clear: both;
	color: #fff;
	font-size: 16px;
	line-height: 1.5;
	position: relative;
	max-width: none;
  margin-bottom: 0;
  padding: 8px 10px;
}

.messageStackError,
.messageStackCaution,
.messageStackWarning {
	background: #fdeeec;
	border-color: #e74c3c;
	color: #e74c3c;
}

.messageStackSuccess {
	background: #58862b;
}

.messageStackError img,
.messageStackSuccess img,
.messageStackCaution img,
.messageStackWarning img {
	display: none;
}

.validation {
	margin: 0 0 30px;
	display: inline-block;
}

.messageStackAlert {
   background-color: #e74c3c;
   color: white;
   padding-top: 6px;
   padding-bottom: 6px;
   text-align: center;
}


/* forms */
input[type="submit"] {
	cursor: pointer;
}

.nmx-form {
	line-height: normal;
	box-sizing: border-box;
}

.nmx-form--container + .nmx-form--container {
	border-top: 1px solid #c9d0d5;
 	margin-top: 30px !important;
  	padding-top: 25px;
}
	
	.nmx-form--title {
		/*
			rules for it is found in the stylesheet.css
		*/
	}
	
	.nmx-form--inner {
		
		/*
			In case of inserting a background color here, it is adviced to insert the class .nmx-box--color
			in the place where the class .nmx-form--inner is placed. Doing that, you will be able to control all
			backgrounds/borders/paddings/ for all forms and boxes in an unique place (stylesheet.css).
		*/

		padding: 0
	}



	.nmx-box--color .nmx-form--inner {
		padding: 30px 16px;
		margin-top: 0;
	}

		.nmx-form--intro {
			font-size: 14px;
			line-height: 1.5;
			margin-top: -4px
		}

			.nmx-form--intro ul {
				list-style: disc;
			}
			
			.nmx-form--intro ul,
			.nmx-form--intro ol {
				margin-top: 8px;
				padding-left: 16px
			}

				.nmx-form--intro li + li {
					margin-top: 8px;
				}
			
			.nmx-form--intro ul + p,
			.nmx-form--intro ol + p {
				margin-top: 8px;
			}

		.nmx-form--link a {
			color: #2980b9;
			text-decoration: none;
		}

		.nmx-form--link a:hover {
			color: #3498db;
  			text-decoration: underline;
		}
				
		/*
		 *	Fields
		*/
		[class^="nmx-form"] + [class^="nmx-form"] {
			margin-top: 18px
		}

		[class*="nmx-form--field__checkbox"] + [class*="nmx-form--field__checkbox"] {
			margin-top: 6px;
		}

		[class^="nmx-form"] + .nmx-no--mt {
			margin-top: 0;
		}

		.nmx-form--field__checkbox + .nmx-form--field__checkbox {
			margin-top: 0;
		}

		[class^="nmx-form"] + .nmx-form--buttons__container {
			margin-top: 0;
		}

		.nmx-form--field__checkbox {
			line-height: 100%;
		}

		.nmx-form--buttons__container .nmx-form--button {
			margin-top: 0;
			vertical-align: top;
		}

		[class^="nmx-form"] + .nmx-form--buttons__container--border {
			margin-top: 24px;
			border-top: 1px solid #c9d0d5;
		}
		
		/*
		 *	Fields inline
		 * 	Usually used for just two fiels that needs to be in one line
		 *
		 *	[1] = might change conform layout
		*/
		.nmx-form__inline-fields {
			overflow: hidden;
			max-width: 590px;
		}

			.nmx-form__inline-fields .nmx-form--field:first-child {
				margin-left: 0
			}

		/*
		 *	Field full
		 * 	One unique field that takes all the line
		*/
		.nmx-form__inline-full-field {

		}



		.nmx-form--inner .nmx-form--field:first-child,
		.nmx-form--inner input[type="hidden"] + .nmx-form--field,
		.nmx-form--inner .nmx-form--field__first,
		.nmx-form .nmx-form--field:first-child,
		.nmx-form .nmx-form--field__first {
			margin-top: 0
		}
			
			/* labels */
			.nmx-form--field label {
				display: block;
				float: none;
				color: #2c3e50;
				font-size: 12px;
				margin: 0 0 4px;
				text-transform: uppercase;
				width: auto;
			}

			.nmx-form--field label.hiddenField {
				display: none;
			}

			/* alert */
			.nmx-form--field .alert,
			.nmx-form--field .optional__field,
			.nmx-form--field label.error,
			.required-information {
				color: #7e858a;
				position: relative;
				top: 0;
				text-transform: none;
			}

			.nmx-form--field .alert {
				font-size: 12px;
			}

			h1 + .required-information,
			h2 + .required-information {
				display: block;
				font-size: 14px;
				position: relative;
				top: 0;
				margin: -5px 0 25px;
			}

			.nmx-form--field .alert.validation,
			.nmx-form--field label.error,
			.nmx-form__inline-fields .nmx-form--field [class*="messageStack"] {
				color: #e74c3c;
				display: block;
				font-size: 14px;
				margin-bottom: 0;
				margin-top: 6px;
				text-transform: none;
			}

			.nmx-form__inline-fields .nmx-form--field [class*="messageStack"] {
  				padding: 8px 0 0 0 !important;
			}

			.nmx-form__inline-fields .nmx-form--field [class*="messageStack"]:before {
				display: none;
			}
			
			/* inputs/textarea/select */
			.nmx-form--field input[type="text"],
			.nmx-form--field input[type="password"],
			.nmx-form--field input[type="email"],
			.nmx-form--field input[type="url"],
			.nmx-form--field textarea,
			.nmx-form--field select,
			input[type="text"],
			input[type="password"],
			input[type="email"],
			input[type="url"],
			textarea,
			select,
			/* old template */
			input#login-email-address,
			input#login-password,
			input#company,
			input#firstname,
			input#lastname,
			input#suburb,
			input#street-address,
			input#city,
			input#state,
			select#country,
			input#telephone,
			input#fax,
			input#email-address,
			input#contactname,
			input#password-new,
			input#password-confirm,
			input#dob,
			input#postcode {
				background: #fff;
				color: #2c3e50;
				font-family: inherit;
				font-size: 14px;
				font-weight: normal;

				border: 1px solid #a7adb2;
				height: 32px;
				margin: 0;
				padding: 5px 9px;

				border-radius: 4px;
				
				max-width: 264px;
				width: 100%;

/*				-webkit-appearance: none;
				   -moz-appearance: none;*/

				-webkit-box-sizing: border-box;
				   -moz-box-sizing: border-box;
				        box-sizing: border-box;
			}

			.nmx-form--field input[type="text"]:focus,
			.nmx-form--field input[type="password"]:focus,
			.nmx-form--field input[type="email"]:focus,
			.nmx-form--field input[type="url"]:focus,
			.nmx-form--field textarea:focus,
			.nmx-form--field select:focus {
				border: 1px solid #58862b;
				box-shadow: 0 0 1px #58862b;
			}

			.nmx-form--field input[type="text"].missing,
			.nmx-form--field input[type="password"].missing,
			.nmx-form--field input[type="email"].missing,
			.nmx-form--field input[type="url"].missing,
			.nmx-form--field textarea.missing,
			.nmx-form--field select.missing {
				border: 1px solid #e74c3c;
			}

			.nmx-form__inline-full-field input[type="text"],
			.nmx-form__inline-full-field input[type="password"],
			.nmx-form__inline-full-field input[type="email"],
			.nmx-form__inline-full-field input[type="url"],
			.nmx-form__inline-full-field textarea,
			.nmx-form__inline-full-field select {
				max-width: 551px;
			}

			.nmx-form--field__checkbox input,
			#column_center .nmx-form--field__checkbox input {
				height: 14px;
				float: left;
				margin: 12px 7px 0 1px;
				width: 14px;
			}

			.nmx-form--field__checkbox input:first-child,
			#column_center .nmx-form--field__checkbox input:first-child {
				margin-top: 0
			}

			.nmx-form--field__checkbox input[type="radio"],
			#column_center .nmx-form--field__checkbox input[type="radio"] {
				margin-left: 2px;
				position: relative;
				top: 0
			}

			.nmx-form--field__checkbox label {
				overflow: hidden;
				margin: 11px 0 0;
				position: relative;
				top: -1px;
				line-height: 1.5;
				text-transform: none;
				font-size: 14px;
			}

			.is--pc .nmx-form--field__checkbox label {
				top: -3px;
			}

			.nmx-form--field__checkbox .nmx-form--field label {
				margin-top: 0;
			}

			.nmx-form--inner input[type="hidden"] + .nmx-form--field__checkbox label {
				margin-top: 0
			}

				label a {
					color: #2980b9;
					text-decoration: none;
				}

				label a:hover {
					color: #3498db;
  					text-decoration: underline;
				}
			
			/* placeholders */
			::-webkit-input-placeholder {
			   color: #999;
			}

			:-moz-placeholder { /* Firefox 18- */
			   color: #999;
			   opacity: 1;
			}

			::-moz-placeholder {  /* Firefox 19+ */
			   color: #999;
			   opacity: 1;
			}

			:-ms-input-placeholder {  
			   color: #999;  
			}

			/* buttons */
			.nmx-form--buttons__container {
				clear: both;
				padding-top: 30px;}

			.nmx-content--aling-right {
				text-align: right;
			}

			.nmx-content--aling-center {
				text-align: center;
			}

				.nmx-form--buttons__container span {
					display: inline-block;
					font-size: 14px;
					margin-left: 9px;
				}

				.nmx-form--buttons__container input.first-child,
				.nmx-form--buttons__container span:first-child {
					margin-left: 0;
				}
				
				/* button color/spaces */
				[class*="--action"] input,
				[class*="--action"] span,
				[class*="--action"] a {
					background: #e74c3c;
					border: none;
					border-bottom: 3px solid #ce4435;
					border-radius: 3px;
					color: #fff !important;
					cursor: pointer;
					font-family: inherit;
					font-weight: normal;
					font-size: 14px;
					margin: 0;
					line-height: 100%;
					font-family: 'CoreSansA65Bold';
					padding: 0 18px 0; /* For Firefox, the values might change. */
					height: 36px;
					line-height: 36px;
					text-decoration: none;
					/*text-transform: capitalize;*/

					width: auto !important;
					appearance: none;
				}

				.nmx-form--buttons__container .nmx-form--link {
					line-height: 33px;
				}

				#column_center input.cssButton,
				#column_center input.cssButtonHover {
					margin: 0 !important;
				}
				
				/* firefox treats spaces inside an input submit differently from another browsers */
				.is--firefox [class*="--action"] input {
					padding-left: 15px;
					padding-right: 15px;
				}

				.nmx-second--action input,
				.nmx-second--action span,
				.nmx-second--action a {
					background: #a7adb2;
				}

				[class*="--action"] {
					display: inline-block;
					text-decoration: none;
					text-align: center;
				}

				.nmx-second--action {
					border-bottom-color: #8d949a;
				}

				[class*="--action"] span,
				[class*="--action"] a {
					/*line-height: 100%;*/
					display: inline-block;
				}

				[class*="--action"] input:hover,
				[class*="--action"] span:hover,
				[class*="--action"] a:hover {
					background: #f93f2c;
					text-decoration: none !important;
				}

				.nmx-second--action input:hover,
				.nmx-second--action span:hover,
				.nmx-second--action a:hover {
					background: #9ca8b1;
					text-decoration: none !important;
				}

				[class*="--action"] input:active,
				[class*="--action"] span:active,
				[class*="--action"] a:active {
					-webkit-appearance: none;
					   -moz-appearance: none;
					        appearance: none;
				}

		/* notice */
		.nmx-notice {
			color: #ff9933;
			font-size: 12px;
			line-height: 16px;
		}


@media only screen and (max-width: 978px) {

	.nmx-form--inner {
		padding-bottom: 0
	}

	h1 + .required-information {
		display: block;
		position: static;
		margin-bottom: 30px;
	}

}

@media only screen and (max-width: 767px) {
	.nmx-form__inline-fields .nmx-form--field {
		float: none;
		margin-left: 0;
	}
}

@media only screen and (min-width: 530px) {
	.nmx-form__inline-fields .nmx-form--field {
		float: left;
		width: 48%;
		max-width: 264px; /* 1 */
		margin-left: 4%;
		margin-top: 0;
	}
}

@media (max-width:1520px) and (min-width: 530px) {
	.nmx-form__inline-fields .is--clear__on__desktop {
		clear: left;
		margin-left: 0;
	}
}

@media only screen and (min-width: 1520px) {
	.nmx-form__inline-fields {
		max-width: none;
	}

	.nmx-form__inline-fields .nmx-form--field {
		width: 23.3%;
		margin-left: 20px;
	}
}

@media only screen and (max-width: 400px) {
	/* inputs */
	.nmx-form--field input[type="text"], .nmx-form--field input[type="password"], .nmx-form--field input[type="email"], .nmx-form--field input[type="url"], .nmx-form--field textarea, .nmx-form--field select, input[type="text"], input[type="password"], input[type="email"], input[type="url"], textarea, select, input#login-email-address, input#login-password, input#company, input#firstname, input#lastname, input#suburb, input#street-address, input#city, input#state, select#country, input#telephone, input#fax, input#email-address, input#contactname, input#password-new, input#password-confirm, input#dob, input#postcode {
		max-width: none;
	}
		
		/* inputs */
		.nmx-form--field input[type="text"],
		.nmx-form--field input[type="password"],
		.nmx-form--field input[type="email"],
		.nmx-form--field input[type="url"],
		.nmx-form--field textarea,
		.nmx-form--field select,
		input[type="text"],
		input[type="password"],
		input[type="email"],
		input[type="url"],
		textarea,
		select {
			max-width: none;
		}

	/* buttons */
	.nmx-form--buttons__container span,
	[class*="--action"] {
		display: block;
		text-align: center;
	}

	.nmx-form--buttons__container span + .nmx-form--link {
		margin-top: 15px;
	}

	[class*="--action"] input,
	[class*="--action"] span,
	[class*="--action"] a {
		display: block;
		width: 100% !important;
	}

	.nmx-form--button + .nmx-form--button {
		margin-top: 9px;
		margin-left: 0;
	}
}



