@charset "utf-8";

form {
	margin-top:20px;
}

form > div {
	margin-bottom: 1rem;
	position: relative;
	width: 250px;
}

form > div.textarea {
	width: 75%;
}

form label {
	position: absolute;
	top: 3px;
	right: 5px;
	font-size: 0.75rem;
	color: var(--nf-green);
	opacity: 0;
}

form > div.focused > label {
    opacity:1;
}

input, textarea {
	font-size: 1rem;
	line-height: 1.2;
/*	border-radius: 5px;	*/
	border: 1px solid var(--nf-grey-light);
	padding: 10px 5px;
}

input {
	height: 40px;
	width: 250px;
}

textarea {
	width: 100%;
	height: 250px;
	resize: none;
}

input::placeholder, textarea::placeholder {
	opacity: 1;
    color:var(--nf-grey-light);
	font-size:0.75rem;
}

form > div.focused input::placeholder, form > div.focused textarea::placeholder {
    opacity: 0;
}

form > div:focus-within {
}

input:focus, textarea:focus {
	border:1px solid var(--nf-green);
	box-shadow:1px 1px 3px 0px rgba(0,0,0,0.3);
	outline: none;
}

input:valid, textarea:valid {
	border:1px solid var(--nf-green);
	box-shadow: none;
}

:-moz-ui-invalid {
	border:2px solid var(--nf-red);
	box-shadow: none;
}

.form-invalid, input:valid.form-invalid, textarea:valid.form-invalid {
	border:2px solid var(--nf-red);
}

div.firstname {
	display: none;
}

button {
	display:inline-block;
	background-color:var(--nf-red);
	font-size:1.2rem;
	line-height:1.5;
	color:#FFFFFF;
	text-decoration:none;
	border:none;
	padding:5px 15px;
}

button:hover {
	background-color:var(--nf-red-dark);
	color:#FFFFFF;
}