form {
	margin: 0 50px;
}

form p {
	display:block;
	position:relative;
	padding: 15px 0;
	margin: 5px 0;
	width: 600px;
	border: 1px solid white;
	-webkit-transition: background-color .4s linear;
}

form p:hover,
form p.successmsg {
	background-color: #ccc;
	border: 1px solid #fff;
}

form p.successmsg,
form p.errormsg {
	text-align: center;
	font-weight: bold;
	font-size: 138.5%;
}

form p.error,
form p.errormsg {
	background-color: #FFCDCD;
	border: 1px solid #FF7F7F;
}

form p.submit:hover {
	border: 1px solid white;
	background: none;
}

form p label {
	position: absolute;
	left: -25px;
	display:block;
	width:180px;
	text-align: right;
}

form p input,
form p textarea {
	position: relative;
	left: 180px;
	width: 350px;
}

form p span.errormsg {
	display:none;
	color: #000000;
	text-align: center;
	padding: 15px;
	margin: 0 0 -15px 0;
	font-weight: bold;
}

form p.error span.errormsg {
	display: block;
}

form p textarea {
	height: 100px;
}

form p textarea#address {
	height: 60px
}

form .required span {
	color: red;
}

form .required label {
	font-weight: bold;
}

form .submit input {
	position:relative;
	left: 400px;
	width: 120px;
}
form.editor {
	margin: 0;
}

form.editor p {
	width: 100%;
}