form { 
	
}

fieldset { 
	border: 0; 
}

input, 
textarea,
select { 
	box-sizing: border-box;
	font-family: inherit; 
	font-size: inherit; 
	font-weight: inherit;
}

input[type="text"], 
input[type="number"], 
input[type="email"], 
input[type="search"], 
input[type="password"], 
input[type="submit"], 
input[type="tel"],
button,
.select-style,
textarea { 
	-webkit-appearance: none;
	background: #FFFFFF;
	border: none;/*border: 1px solid #CCCCCC;*/
	border-radius: 0;
	display: inline-block;
	font-size: 1em;
	margin: .3em 0;
	padding: .5em 1em;
	vertical-align: middle;
}
input[type="text"],
input[type="number"], 
input[type="email"], 
input[type="search"], 
input[type="password"],
input[type="tel"] {
	
}
textarea { 
	min-height: 8em;
}

::-webkit-input-placeholder {
	color: #707070;
}
:-moz-placeholder {
	color: #707070;
	opacity: 1;
}
::-moz-placeholder {
	color: #707070;
	opacity: 1;
}
:-ms-input-placeholder {
	color: #707070;
}



/* submit, button */
input[type="submit"], 
button { 
	background: url('../images/submit-arrow.svg') center right/auto 1em no-repeat transparent;
	border: none;
	color: #81b03c;
	cursor: pointer;
	font-size: 1.8em;
	font-weight: normal;
	margin: .3em 0;
	padding: 0 1.5em 0 0;
	text-transform: lowercase;
	width: auto;
}
input[type="submit"]:hover, 
input[type="submit"]:focus, 
button:hover,
button:focus { 
	/*opacity: .8;*/
}

/* image */
input[type="image"] { 
	background: transparent;
	border: 0;
	border-radius: 0;
	cursor: pointer;
	display: inline-block;
	font-size: 1em;
	margin: .3em 0;
	padding: 0;
	width: auto; height: 2em;
	vertical-align: middle;
}
input[type="image"]:hover,
input[type="image"]:focus { 
	opacity: .8;
}



/* select style (requires wrapper .select-style) */
.select-style {
	padding: 0;
	margin: .3em 0;
	overflow: hidden;
	position: relative;
	vertical-align: middle;
}
	.select-style select {
		-webkit-appearance: none;
		background: none;
		border: 0;
		color: inherit;
		display: block;
		padding: .5em 2.5em .5em 1em;
		position: relative;
		width: 100%;
	}
		.select-style select option {
			color: #000; /*color: inherit; fixes text visibility bug*/
			padding: 0 2em 0 0;
		}
	.select-style:after {
		background: url('../images/arrow-down.svg') center/50% auto no-repeat #FFFFFF;
		content: '';
		display: block;
		pointer-events: none; 
		position: absolute; top: 0; right: 0;
		width: 2em; height: 100%;
	}


input[type="checkbox"],
input[type="radio"] {
	margin: 0 .5em 0 0;
	vertical-align: middle;
}


label {
	/*font-weight: bold;*/
	margin: .3em 0;
	vertical-align: top;
	max-width: calc(100% - 4em);
}


/* colour invert */
.white-text input[type="text"], 
.white-text input[type="number"], 
.white-text input[type="email"], 
.white-text input[type="search"], 
.white-text input[type="password"], 
.white-text input[type="tel"],
.white-text .select-style,
.white-text textarea {
	background: transparent;
	border: 1px solid #FFFFFF;
	color: #FFFFFF;
}
.white-text  ::-webkit-input-placeholder {
	color: #FFFFFF;
}
.white-text  :-moz-placeholder {
	color: #FFFFFF;
	opacity: 1;
}
.white-text  ::-moz-placeholder {
	color: #FFFFFF;
	opacity: 1;
}
.white-text  :-ms-input-placeholder {
	color: #FFFFFF;
}


/* generic */
form ul {
	list-style-type: none;
	margin: 0 !important;
	padding: 0 !important;
}
	form ul ul {
		margin: 0 0 1em 1em !important;
	}