.mailform {
	position: relative;
	text-align: left;
	margin-left: auto;
	margin-right: auto;
}
.mailform fieldset {
	border: none;
}
.mailform * {
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
.mailform label {
	position: relative;
	display: block;
	width: 100%;
	margin-top: 10px;
}
.mailform label:first-child {
	margin-top: 0;
}
.mailform label input, .mailform label select, .mailform label textarea {
	display: block;
	width: 100%;
	margin: 0;
	-webkit-appearance: none;
	outline: none;
	font-family: "Roboto", sans-serif;
	font-size: 24px;
	padding: 23px 0;
	line-height: 30px;
	color: #303030;
	text-transform: uppercase;
	background: transperent;
	border-bottom: 3px solid #fff;
	-webkit-border-radius: none;
	-moz-border-radius: none;
	border-radius: none;
}
.mailform label input:-moz-placeholder, .mailform label select:-moz-placeholder, .mailform label textarea:-moz-placeholder {
color:#303030;
opacity:1;
}
.mailform label input::-webkit-input-placeholder, .mailform label select::-webkit-input-placeholder, .mailform label textarea::-webkit-input-placeholder {
color:#303030;
opacity:1;
}
.mailform label input::-moz-placeholder, .mailform label select::-moz-placeholder, .mailform label textarea::-moz-placeholder {
color:#303030;
opacity:1;
}
.mailform label input:-ms-input-placeholder, .mailform label select:-ms-input-placeholder, .mailform label textarea:-ms-input-placeholder {
color:#303030;
opacity:1;
}
.mailform label textarea {
	background: transparent;
	resize: vertical;
	overflow: auto;
	height: 192px;
	border: none;
	border-bottom: 3px solid #fff;
	margin-top: 10px;
}
.mailform label textarea+.mfValidation {
	top: 145px;
}

@media (max-width: 1365px) {
.mailform label {
	margin-top: 30px;
}
}
@-ms-keyframes fout {
0% {
transform:scale(1) translateX(0);
}
100% {
transform:scale(0) translateX(0);
}
}
@-o-keyframes fout {
0% {
transform:scale(1) translateX(0);
}
100% {
transform:scale(0) translateX(0);
}
}
@-webkit-keyframes fout {
0% {
transform:scale(1) translateX(0);
}
100% {
transform:scale(0) translateX(0);
}
}
@-moz-keyframes fout {
0% {
transform:scale(1) translateX(0);
}
100% {
transform:scale(0) translateX(0);
}
}
@keyframes fout {
0% {
transform:scale(1) translateX(0);
}
100% {
transform:scale(0) translateX(0);
}
}
.mfPlaceHolder {
	font: inherit;
	cursor: text;
	position: absolute;
	left: 0;
	top: 0;
	padding: 23px 0;
	color: #303030;
	text-transform: uppercase;
	font-weight: 400;
	font-size: 24px;
	line-height: 26px;
	opacity: 1;
	-moz-transition: 0.3s all ease;
	-o-transition: 0.3s all ease;
	-webkit-transition: 0.3s all ease;
	transition: 0.3s all ease;
}
*:-webkit-autofill~.mfPlaceHolder {
opacity:.4;
-moz-transform:translateY(-80%);
-ms-transform:translateY(-80%);
-o-transform:translateY(-80%);
-webkit-transform:translateY(-80%);
transform:translateY(-80%);
}
.mfPlaceHolder.state-1 {
	opacity: .4;
	-moz-transform: translateY(-80%);
	-ms-transform: translateY(-80%);
	-o-transform: translateY(-80%);
	-webkit-transform: translateY(-80%);
	transform: translateY(-80%);
}
.mfValidation {
	-moz-transform-origin: 0% 50%;
	-ms-transform-origin: 0% 50%;
	-o-transform-origin: 0% 50%;
	-webkit-transform-origin: 0% 50%;
	transform-origin: 0% 50%;
	-moz-transition: 0.3s all ease;
	-o-transition: 0.3s all ease;
	-webkit-transition: 0.3s all ease;
	transition: 0.3s all ease;
	-webkit-animation: notifanim-fo 0.4s cubic-bezier(0.55, 0, 0.1, 1) forwards;
	-moz-animation: notifanim-fo 0.4s cubic-bezier(0.55, 0, 0.1, 1) forwards;
	-ms-animation: notifanim-fo 0.4s cubic-bezier(0.55, 0, 0.1, 1) forwards;
	-o-animation: notifanim-fo 0.4s cubic-bezier(0.55, 0, 0.1, 1) forwards;
	animation: notifanim-fo 0.4s cubic-bezier(0.55, 0, 0.1, 1) forwards;
	-webkit-box-shadow: 2px 2px 2px 0 rgba(0,0,0,0.5);
	-moz-box-shadow: 2px 2px 2px 0 rgba(0,0,0,0.5);
	box-shadow: 2px 2px 2px 0 rgba(0,0,0,0.5);
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	border-radius: 5px;
	position: absolute;
	top: 25px;
	right: 0;
	width: 210px;
	margin-top: -20px;
	margin-left: 10px;
	padding: 10px;
	height: 40px;
	font-weight: 300;
	font-size: 12px;
	line-height: 20px;
	background: #111;
	color: #f86f80;
	opacity: 0;
	visibility: hidden;
	cursor: pointer;
	z-index: 998;
}
.mfValidation:hover {
	background: #231634;
}
.mfValidation:before {
	content: '';
	position: absolute;
	right: 10%;
	top: 105%;
	-moz-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	-o-transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 5px 4px 0 4px;
	border-color: #111 transparent transparent transparent;
	-moz-transition: 0.3s all ease;
	-o-transition: 0.3s all ease;
	-webkit-transition: 0.3s all ease;
	transition: 0.3s all ease;
}
.mfValidation.error {
	-moz-transform: scale(1);
	-ms-transform: scale(1);
	-o-transform: scale(1);
	-webkit-transform: scale(1);
	transform: scale(1);
	opacity: 1;
	visibility: visible;
	-webkit-animation: notifanim 0.4s cubic-bezier(0.55, 0, 0.1, 1) forwards;
	-moz-animation: notifanim 0.4s cubic-bezier(0.55, 0, 0.1, 1) forwards;
	-ms-animation: notifanim 0.4s cubic-bezier(0.55, 0, 0.1, 1) forwards;
	-o-animation: notifanim 0.4s cubic-bezier(0.55, 0, 0.1, 1) forwards;
	animation: notifanim 0.4s cubic-bezier(0.55, 0, 0.1, 1) forwards;
}

@media (max-width: 767px) {
.mfValidation {
	text-align: right;
	top: auto;
	left: auto;
	bottom: 10%;
	right: 0;
	background: none;
	padding: 0;
	margin: 0 0 3px;
	min-height: 0;
	-webkit-box-shadow: none;
	-moz-box-shadow: none;
	box-shadow: none;
}
.mfValidation:before {
	display: none;
}
.mfValidation:hover {
	background: none;
	right: 5px;
}
}
@-ms-keyframes notifanim-fo {
0% {
opacity:1;
visibility:visible;
transform:scale(1);
}
20% {
opacity:1;
transform:scale(1.1);
}
99% {
visibility:hidden;
}
100% {
visibility:hidden;
transform:scale(0.3);
opacity:0;
}
}
@-o-keyframes notifanim-fo {
0% {
opacity:1;
visibility:visible;
transform:scale(1);
}
20% {
opacity:1;
transform:scale(1.1);
}
99% {
visibility:hidden;
}
100% {
visibility:hidden;
transform:scale(0.3);
opacity:0;
}
}
@-webkit-keyframes notifanim-fo {
0% {
opacity:1;
visibility:visible;
transform:scale(1);
}
20% {
opacity:1;
transform:scale(1.1);
}
99% {
visibility:hidden;
}
100% {
visibility:hidden;
transform:scale(0.3);
opacity:0;
}
}
@-moz-keyframes notifanim-fo {
0% {
opacity:1;
visibility:visible;
transform:scale(1);
}
20% {
opacity:1;
transform:scale(1.1);
}
99% {
visibility:hidden;
}
100% {
visibility:hidden;
transform:scale(0.3);
opacity:0;
}
}
@keyframes notifanim-fo {
0% {
opacity:1;
visibility:visible;
transform:scale(1);
}
20% {
opacity:1;
transform:scale(1.1);
}
99% {
visibility:hidden;
}
100% {
visibility:hidden;
transform:scale(0.3);
opacity:0;
}
}
@-ms-keyframes notifanim {
0% {
opacity:0;
visibility:hidden;
transform:scale(0.3);
}
1% {
visibility:visible;
}
50% {
transform:scale(1);
}
75% {
transform:scale(0.9);
}
100% {
transform:scale(1);
opacity:1;
}
}
@-o-keyframes notifanim {
0% {
opacity:0;
visibility:hidden;
transform:scale(0.3);
}
1% {
visibility:visible;
}
50% {
transform:scale(1);
}
75% {
transform:scale(0.9);
}
100% {
transform:scale(1);
opacity:1;
}
}
@-webkit-keyframes notifanim {
0% {
opacity:0;
visibility:hidden;
transform:scale(0.3);
}
1% {
visibility:visible;
}
50% {
transform:scale(1);
}
75% {
transform:scale(0.9);
}
100% {
transform:scale(1);
opacity:1;
}
}
@-moz-keyframes notifanim {
0% {
opacity:0;
visibility:hidden;
transform:scale(0.3);
}
1% {
visibility:visible;
}
50% {
transform:scale(1);
}
75% {
transform:scale(0.9);
}
100% {
transform:scale(1);
opacity:1;
}
}
@keyframes notifanim {
0% {
opacity:0;
visibility:hidden;
transform:scale(0.3);
}
1% {
visibility:visible;
}
50% {
transform:scale(1);
}
75% {
transform:scale(0.9);
}
100% {
transform:scale(1);
opacity:1;
}
}
.mfControls {
	word-spacing: 10px;
	text-align: center;
}
.mfControls>* {
	margin-top: 53px;
	word-spacing: normal;
	margin-bottom: 5px;
	font-size: 24px;
	line-height: 26px;
	font-weight: 400;
	background: #fff;
	text-transform: uppercase;
	color: #303030;
	padding: 25px 30px;
	-moz-transition: 0.3s ease all;
	-o-transition: 0.3s ease all;
	-webkit-transition: 0.3s ease all;
	transition: 0.3s ease all;
}
.mfControls>*:hover {
	background: #feae93;
	color: #fff;
}
.mfControls>*:active {
	background: #f47b5e;
}
.offset {
	margin-top: 10px;
	padding: 25px 40px;
}
.mfProgress {
	position: relative;
}
.mfProgress .cnt, .mfProgress .loader {
	-moz-transition: 0.4s all ease-in-out;
	-o-transition: 0.4s all ease-in-out;
	-webkit-transition: 0.4s all ease-in-out;
	transition: 0.4s all ease-in-out;
}
.mfProgress .loader {
	opacity: 0;
	text-align: center;
	letter-spacing: 10px;
	-moz-transform: scale(1.2);
	-ms-transform: scale(1.2);
	-o-transform: scale(1.2);
	-webkit-transform: scale(1.2);
	transform: scale(1.2);
}
.mfProgress .loader, .mfProgress .loader:before, .mfProgress .loader:after {
	position: absolute;
	left: 0;
	bottom: 0;
	top: 0;
	right: 0;
	margin: auto;
}
.mfProgress .loader:before {
	content: '';
	width: 20px;
	height: 20px;
	border-radius: 50%;
}
.mfProgress .loader:after {
	content: '';
	width: 30px;
	height: 30px;
	color: #f86f80;
	font: 400 30px "FontAwesome";
	line-height: inherit;
	-moz-transition: 0.4s all ease-in-out;
	-o-transition: 0.4s all ease-in-out;
	-webkit-transition: 0.4s all ease-in-out;
	transition: 0.4s all ease-in-out;
	-moz-transform: scale(0) rotate(-60deg);
	-ms-transform: scale(0) rotate(-60deg);
	-o-transform: scale(0) rotate(-60deg);
	-webkit-transform: scale(0) rotate(-60deg);
	transform: scale(0) rotate(-60deg);
}
.mfProgress.sending .cnt, .mfProgress.fail .cnt, .mfProgress.success .cnt {
	-moz-transform: scale(1.2);
	-ms-transform: scale(1.2);
	-o-transform: scale(1.2);
	-webkit-transform: scale(1.2);
	transform: scale(1.2);
	opacity: 0;
}
.mfProgress.sending .loader, .mfProgress.fail .loader, .mfProgress.success .loader {
	opacity: 1;
	-moz-transform: scale(1);
	-ms-transform: scale(1);
	-o-transform: scale(1);
	-webkit-transform: scale(1);
	transform: scale(1);
}
.mfProgress.fail .loader:before, .mfProgress.success .loader:before {
	-webkit-animation: fout 0.4s ease-in-out 1 forwards;
	-moz-animation: fout 0.4s ease-in-out 1 forwards;
	-ms-animation: fout 0.4s ease-in-out 1 forwards;
	-o-animation: fout 0.4s ease-in-out 1 forwards;
	animation: fout 0.4s ease-in-out 1 forwards;
}
.mfProgress.fail .loader:after, .mfProgress.success .loader:after {
	-moz-transform: scale(1) rotate(0deg);
	-ms-transform: scale(1) rotate(0deg);
	-o-transform: scale(1) rotate(0deg);
	-webkit-transform: scale(1) rotate(0deg);
	transform: scale(1) rotate(0deg);
}
.mfProgress.sending .loader:before {
	-webkit-animation: motion 3s cubic-bezier(0.77, 0, 0.175, 1) infinite;
	-moz-animation: motion 3s cubic-bezier(0.77, 0, 0.175, 1) infinite;
	-ms-animation: motion 3s cubic-bezier(0.77, 0, 0.175, 1) infinite;
	-o-animation: motion 3s cubic-bezier(0.77, 0, 0.175, 1) infinite;
	animation: motion 3s cubic-bezier(0.77, 0, 0.175, 1) infinite;
}
.mfProgress.fail .loader:after {
	content: '\f06a';
}
.mfProgress.success .loader:after {
	content: '\f058';
}
.mfProgress .msg {
	-moz-transform-origin: 0% 50%;
	-ms-transform-origin: 0% 50%;
	-o-transform-origin: 0% 50%;
	-webkit-transform-origin: 0% 50%;
	transform-origin: 0% 50%;
	-moz-transition: 0.3s all ease;
	-o-transition: 0.3s all ease;
	-webkit-transition: 0.3s all ease;
	transition: 0.3s all ease;
	-webkit-animation: notifanim-fo 0.4s ease-in-out forwards;
	-moz-animation: notifanim-fo 0.4s ease-in-out forwards;
	-ms-animation: notifanim-fo 0.4s ease-in-out forwards;
	-o-animation: notifanim-fo 0.4s ease-in-out forwards;
	animation: notifanim-fo 0.4s ease-in-out forwards;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	-webkit-box-shadow: 2px 2px 2px 0 rgba(0,0,0,0.5);
	-moz-box-shadow: 2px 2px 2px 0 rgba(0,0,0,0.5);
	box-shadow: 2px 2px 2px 0 rgba(0,0,0,0.5);
	position: absolute;
	padding: 10px;
	border-radius: none;
	font-size: 24px;
	line-height: 20px;
	opacity: 0;
	visibility: hidden;
	top: 100%;
	left: 50%;
	width: 230px;
	margin-left: -115px;
	margin-top: 20px;
	color: #fff;
	-moz-transform-origin: 50% 100%;
	-ms-transform-origin: 50% 100%;
	-o-transform-origin: 50% 100%;
	-webkit-transform-origin: 50% 100%;
	transform-origin: 50% 100%;
}
.mfProgress .msg:before {
	content: '';
	position: absolute;
	bottom: 100%;
	right: 50%;
	transform: translate(50%, 0%);
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 0 6px 6px 6px;
	border-color: transparent transparent #111 transparent;
	-moz-transition: 0.4s all ease-in-out;
	-o-transition: 0.4s all ease-in-out;
	-webkit-transition: 0.4s all ease-in-out;
	transition: 0.4s all ease-in-out;
}
.mfProgress.fail .msg, .mfProgress.success .msg {
	transform: scale(1);
	opacity: 1;
	visibility: visible;
	-webkit-animation: notifanim 0.4s ease-in-out forwards;
	-moz-animation: notifanim 0.4s ease-in-out forwards;
	-ms-animation: notifanim 0.4s ease-in-out forwards;
	-o-animation: notifanim 0.4s ease-in-out forwards;
	animation: notifanim 0.4s ease-in-out forwards;
}
.mfProgress.fail .msg {
	background: #F44336;
}
.mfProgress.fail .msg:before {
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 0 6px 6px 6px;
	border-color: transparent transparent #F44336 transparent;
}
.mfProgress.success .msg {
	background: #2E7D32;
}
.mfProgress.success .msg:before {
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 0 6px 6px 6px;
	border-color: transparent transparent #2E7D32 transparent;
}
@-ms-keyframes motion {
0% {
transform:translateX(0) scale(1);
}
25% {
transform:translateX(-50px) scale(0.3);
}
50% {
transform:translateX(0) scale(1);
}
75% {
transform:translateX(50px) scale(0.3);
}
100% {
transform:translateX(0) scale(1);
}
}
@-o-keyframes motion {
0% {
transform:translateX(0) scale(1);
}
25% {
transform:translateX(-50px) scale(0.3);
}
50% {
transform:translateX(0) scale(1);
}
75% {
transform:translateX(50px) scale(0.3);
}
100% {
transform:translateX(0) scale(1);
}
}
@-webkit-keyframes motion {
0% {
transform:translateX(0) scale(1);
}
25% {
transform:translateX(-50px) scale(0.3);
}
50% {
transform:translateX(0) scale(1);
}
75% {
transform:translateX(50px) scale(0.3);
}
100% {
transform:translateX(0) scale(1);
}
}
@-moz-keyframes motion {
0% {
transform:translateX(0) scale(1);
}
25% {
transform:translateX(-50px) scale(0.3);
}
50% {
transform:translateX(0) scale(1);
}
75% {
transform:translateX(50px) scale(0.3);
}
100% {
transform:translateX(0) scale(1);
}
}
@keyframes motion {
0% {
transform:translateX(0) scale(1);
}
25% {
transform:translateX(-50px) scale(0.3);
}
50% {
transform:translateX(0) scale(1);
}
75% {
transform:translateX(50px) scale(0.3);
}
100% {
transform:translateX(0) scale(1);
}
}
