.popup {
	position: fixed;
	top: 0;
	left: 0;
	/* bottom: 0; */
	/* right: 0; */
	min-width: 100%;
	min-height: 100%;
	background: rgba(0, 0, 0, 0.5);
	z-index: 1000;
	overflow: auto;
	padding: 50px 0;
	height: 100%;
}

.popup.hide {
	display: none;
}

.form {
	width: 37rem;
	background-color: #ffffff;
	border-radius: 1rem;
	position: relative;
	z-index: 20;
	left: 50%;
	top: 0;
	transform: translate(-50%, 0%);
	padding: 4.5rem;
	background-image: url('../images/form/top_bg.min.png'), url('../images/form/bottom_bg.min.png');
	background-position: left top, left bottom;
	background-repeat: no-repeat, no-repeat;
	background-size: 14rem, 5rem;
}

.form.hide {
	display: none;
}

.popup .close {
	width: 2rem;
	height: 2rem;
	background-image: url('../images/form/close.min.svg');
	background-repeat: no-repeat;
	background-position: 50% 50%;
	position: absolute;
	top: 2rem;
	right: -3rem;
	z-index: 20;
	background-size: 3.2rem 3.2rem;
	cursor: pointer;
}

.form h2 {
	font-size: 3rem;
	margin-top: 0;
	margin-bottom: 2.5rem;
}

.thankYou {
	width: 37rem;
	background-color: #fff;
	border-radius: 1rem;
	position: relative;
	z-index: 20;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);
	padding: 3rem 2rem;
}

.thankYou.hide {
	display: none;
}

.thankYou h2 {
	text-align: center;
	font-size: 1.75rem;
	line-height: 4rem;
	margin-top: 1rem;
	margin-bottom: 1rem;
}

.form form {
	font-family: "Fira Sans", sans-serif;
	font-style: normal;
	font-size: .6rem;
	line-height: 1.5rem;
	margin-top: 0;
}

.form .formInput {
	display: flex;
	flex-direction: row;
	border-bottom: 1px solid #d8d8d8;
	min-height: 1.6rem;
	margin-bottom: 1.5rem;
	position: relative;
	transition: 0.3s;
	align-items: flex-start;
}

.form .formInput.file, .form .formInput.file input, .form .formInput.file label, .form .formInput.file div {
	cursor: pointer;
}
.form .formInput.error {
	border-bottom: 1px solid #e02020;
}

.form .formItem>.validation {
	position: absolute;
	left: 0;
	bottom: -1.5rem;
	color: #e02020;
	padding: 0;
	font-size: 0.55rem;
	font-style: normal;
	font-weight: normal;
	transition: 0.3s;
	opacity: 0;
	width: 100%;
}

.form .formItem.formCheckbox>.validation {
	left: 3rem;
	bottom: -1.1rem;
}

.form .formItem.error>.validation {
	opacity: 1;
}

.form .formInput label {
	font-weight: normal;
}

.form .formInput.email { margin-bottom: 2.5rem; } .button.formPost { min-width:
11rem; line-height: 2.5rem; padding: .5rem 2rem; } .form .formCheckbox {
display: flex; flex-direction: row; align-items: flex-start; justify-content:
flex-start; margin-bottom: 1.5rem; position: relative; } .form
.formCheckbox>input, .form .formCheckbox>label { cursor: pointer;
}

.form .formCheckbox label {
	margin-left: 3rem;
	text-transform: uppercase;
	font-size: 0.45rem;
	padding-right: 4rem;
	line-height: 0.9rem;
}

.form .formCheckbox input[type="checkbox"] {
	padding: 0;
	margin: 0;
	position: absolute;
	height: 1.5rem;
	width: 1.5rem;
	z-index: 2;
	opacity: 0;
	left: 0;
	top: .1rem;
}

.form .formCheckbox .checkbox {
	box-sizing: border-box;
	position: absolute;
	width: 1.5rem;
	height: 1.5rem;
	z-index: 1;
	border: 2px solid #83d464;
	border-radius: 50%;
	left: 0;
	top: .1rem;
}

.form .formCheckbox.error .checkbox {
	border: 2px solid #e02020;
}

.form .formCheckbox .checkbox:after {
	content: "";
	position: absolute;
	width: .9rem;
	height: .9rem;
	background-color: #83d464;
	border-radius: 50%;
	top: .2rem;
	left: .2rem;
	transition: 0.3s;
	opacity: 0;
}

.form .formCheckbox input[type="checkbox"]:checked+.checkbox:after {
	opacity: 1;
}

.form .formInput input, .form .formInput>div.textarea, .form .formInput .fileName {
	border: none;
	width: 100%;
	margin: 0;
	padding: 0 0 0px 2rem;
	outline: none;
	font-style: italic;
	font-size: .6rem;
	line-height: 1.4rem;
	min-height: 1.4rem;
	color: #5E5E5E;
}

.form .formInput .fileName {
	padding: 0 0 0px 4px;
}

.form .formInput>div.textarea {
	padding: 1px 0 0px 2rem;
	min-height: 1.4rem;
}

.form .formInput input[name="name"] {
	font-family: "Prata", serif;
	font-style: normal;
	font-size: 1rem;
	line-height: 1.4rem;
	margin-top: -.05rem;
	color: #000000;
}

.form .formInput label {
	white-space: nowrap;
}

.form .formButton {
	margin-top: 2.5rem;
}

.form .formButton a.button {
}

.form .formInput.file label:after {
	content: '';
	display: inline-block;
	height: 1.1rem;
	width: 1.5rem;
	background-image: url("../images/form/attach.min.svg");
	background-repeat: no-repeat;
	background-size: 1.1rem 1.1rem;
	padding: 0;
	margin-left: .3rem;
	margin-right: .5rem;
	margin-top: 0;
	margin-bottom: -.3rem;
}
/*.form .formInput>div.attach {
	height: 1.1rem;
	width: 1.5rem;
	background-image: url("../images/form/attach.min.svg");
	background-repeat: no-repeat;
	background-size: 1.1rem 1.1rem;
	padding: 0;
	margin: .2rem .5rem 0 .3rem;
}*/

.form .formInput input[type="file"] {
	position: absolute;
	z-index: 2;
	top: 0;
	width: 100%;
	opacity: 0;
	height: 100%;
}

@media (max-width: 1360px) {
	.form {
		width: 27.5rem;
		padding: 3rem;
		background-size: 11rem, 4rem;
	}
	.form h2 {
		font-size: 2.75rem;
		margin-bottom: 1.5rem;
	}
	.form .formCheckbox label {
		margin-left: 3rem;
		text-transform: uppercase;
		font-size: 0.45rem;
		padding-right: 1rem;
	}
	.button.formPost {
		min-width: 11rem;
		line-height: 2.5rem;
		padding: .5rem 2rem;
	}
}
@media (max-width: 668px) {
	.form {
		width: 80%;
		max-width: 29rem;
	}
	.form form {
		font-size: 1rem;
	}
	.form h2 {
		font-size: 2rem;
	}
	.popup .close {
		width: 1.5rem;
		height: 1.5rem;
		top: -2rem;
		right: -2rem;
	}
	.form .formInput input, .form .formInput > div.textarea, .form .formInput .fileName {
		font-size: 1rem;
		padding-left: 0;
	}
	.form .formInput label {
		margin-bottom: 1rem;
	}
	.form .formInput input[name="name"] {
		font-size: 1.25rem;
	}
	.form .formInput {
		flex-direction: column;
	}
	.form .formItem > .validation {
		font-size: 0.66rem;
	}
	.form .formItem.formCheckbox > .validation {
		bottom: -1.3rem;
	}
	.form .formCheckbox label {
		font-size: .75rem;
		line-height: 140%;
		text-transform: none;
		padding-right: 0;
	}
	.thankYou {
		width: 80%;
		max-width: 29rem;
	}
	.thankYou h2 {
		font-size: 2rem;
		line-height: 150%;
	}
}
@media (max-width: 668px) {
	.form {
		padding: 3.5rem .8rem;
	}
	.form .formCheckbox .checkbox::after {
		top: .17rem;
		left: .17rem;
	}
	element {

	}
	.popup .close {
		right: 0;
	}
}
