html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font: inherit;
	vertical-align: top;
}

html {
	scroll-behavior: smooth;
}

body {
	display: flex;
	flex-direction: column;
	width: 100%;
	min-height: 100vh;
	font-family: "Nunito", serif;
	font-size: 16px;
	font-optical-sizing: auto;
	font-weight: 500;
	font-style: normal;
	font-variation-settings: "wdth" 100;
	color: #000;
	line-height: 1.2;
	overflow-y: scroll;
}

header, main, nav, section, content, div, a, footer {
	display: block;
	box-sizing: border-box;
}

b {
	font-weight: 600;
}

a {
	text-decoration: none;
	color: inherit;
}

i {
	line-height: inherit !important;
	-webkit-font-smoothing: antialiased;
}

content {
	-webkit-box-flex: 1;
	-ms-flex: auto;
	flex: auto;
}

section {
	position: relative;
	width: calc(var(--vw,1vw) * 100);
	height: 100%;
	padding: 0 60px;
	margin: 0 auto;
	box-sizing: border-box;
}

.wrap {
	display: flex;
	flex-direction: column;
	height: 100%;
	justify-content: space-between;
}

.main {
	display: flex;
	justify-content: center;
	align-items: stretch;
	width: calc(100 * var(--vw));
	height: 100vh;
	min-height: 1000px;
	padding: 60px 0;
	background-image: url(../img/bg.jpg);
	background-position: top center;
	background-size: cover;
	box-shadow: 0 0 0 20px #fff inset, 0 0 0 20px #fff;
	border-radius: 80px;
}

nav {
	display: flex;
	justify-content: space-between;
	height: 60px;
	width: 100%;
}

.navlogo {
	height: 60px;
	transition: .3s;
}

.navlogo:hover {
	transform: scale(1.05);
}

.navlogo img {
	display: block;
	max-height: 100%;
}

.navnemu {
	display: flex;
}

.navnemu .btn {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 60px;
	height: 60px;
	padding: 0;
}

.navnemu .btn i {
	margin-right: 0;
}

.mainscreen {
	display: flex;
	justify-content: center;
	align-items: center;
	height: 100%;
}

.maininfo {
	display: flex;
	justify-content: space-between;
}

.logo {
	max-width: 800px;
	margin-top: -60px;
	transition: .3s;
}

.logo:hover {
	transform: scale(1.05);
}

.logo img {
	display: block;
	max-width: 100%;
}

.infoblock {
	display: flex;
	align-items: flex-end;
	width: 60%;
	height: auto;
	padding: 30px;
	background-image: url(../img/infoblock.jpg);
	background-position: center;
	background-size: cover;
	box-shadow: inset 0 -270px 200px -150px #000;
	border-radius: 40px;
	border: 10px solid #fff;
}

.infoblock h2 {
	width: 100%;
	color: #fff;
	font-size: 30px;
	font-weight: 600;
	border-left: 4px solid #c3e678;
	padding-left: 10px;
}

.infoblock h2 b {
	font-weight: 600;
	color: #c3e678;
}

.infoblock h2 i {
	color: #c3e678;
}

.infowrap {
	display: flex;
	flex-wrap: wrap;
	align-content: flex-end;
	width: calc(40% - 20px);
}

.btn {
	display: block;
	width: 100%;
	padding: 20px;
	color: #ffffff;
	text-align: center;
	text-transform: uppercase;
	font-size: 26px;
	font-weight: 800;
	background: rgb(88,207,51);
	background: linear-gradient(162deg, rgba(88,207,51,1) 0%, rgba(46,136,18,1) 100%);
	border-radius: 40px;
	border: 10px solid #fff;
	text-shadow: 1px 1px 2px #2e8812;
	cursor: pointer;
	transition: 0.3s;
}

.btn:hover {
	background: rgb(88,207,51);
	background: linear-gradient(-62deg, rgba(88,207,51,1) 0%, rgba(46,136,18,1) 100%);
	transform: scale(1.015);
}

.btn i {
	margin-right: 3px;
}

.infowrap .btn {
	margin-bottom: 20px;
}

.infowrap_contacts {
	position: relative;
	width: 100%;
	padding: 20px;
	background: #fff;
	border-radius: 40px;
	border: 10px solid #fff;
}

.infowrap_contacts h3 {
	text-transform: uppercase;
	font-size: 22px;
	font-weight: 700;
	margin-bottom: 10px;
}

.contacts {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

.contacts span {
	display: block;
	margin-bottom: 14px;
	width: calc(50% - 10px);
}

.contacts span:nth-child(1) {
	width: 100%;
}

.contacts span i {
	font-size: 96%;
}

.contacts span b {
	display: block;
	color: #62b840;
}

.contacts .btn {
	width: calc(50% - 10px);
	border-radius: 8px;
	border: none;
	box-shadow: 2px 2px 0 #038303;
	font-size: 14px;
	padding: 12px;
	margin-bottom: 0;
	text-shadow: 0px 1px 1px #2e8812;
}

.contacts .btn i {
	margin: -1px 0 0 0;
}

.contacts_logo_x {
	position: absolute;
	top: 6px;
	right: 6px;
	width: 140px;
}

.contacts_logo_x img {
	display: block;
	max-width: 100%;
	opacity: .03;
}