@font-face {
	font-family: 'Montserrat';
	src: url('../../../fonts/montserrat/montserrat-r.woff2') format('woff2'),
		 url('../../../fonts/montserrat/montserrat-r.woff') format('woff');
	font-weight: normal;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: 'Montserrat';
	src: url('../../../fonts/montserrat/montserrat-b.woff2') format('woff2'),
		 url('../../../fonts/montserrat/montserrat-b.woff') format('woff');
	font-weight: 700;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: 'Montserrat';
	src: url('../../../fonts/montserrat/montserrat-i.woff2') format('woff2'),
		 url('../../../fonts/montserrat/montserrat-i.woff') format('woff');
	font-weight: normal;
	font-style: italic;
	font-display: swap;
}

@font-face {
	font-family: 'Montserrat';
	src: url('../../../fonts/montserrat/montserrat-t.woff2') format('woff2'),
		 url('../../../fonts/montserrat/montserrat-t.woff') format('woff');
	font-weight: 300;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: 'Montserrat';
	src: url('../../../fonts/montserrat/montserrat-m.woff2') format('woff2'),
		 url('../../../fonts/montserrat/montserrat-m.woff') format('woff');
	font-weight: 500;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: 'Montserrat';
	src: url('../../../fonts/montserrat/montserrat-s-b.woff2') format('woff2'),
		 url('../../../fonts/montserrat/montserrat-s-b.woff') format('woff');
	font-weight: 600;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: 'Montserrat';
	src: url('../../../fonts/montserrat/montserrat-e-b.woff2') format('woff2'),
		 url('../../../fonts/montserrat/montserrat-e-b.woff') format('woff');
	font-weight: 800;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: 'Montserrat';
	src: url('../../../fonts/montserrat/montserrat-b-i.woff2') format('woff2'),
		 url('../../../fonts/montserrat/montserrat-b-i.woff') format('woff');
	font-weight: 700;
	font-style: italic;
	font-display: swap;
}

@font-face {
	font-family: 'Open Sans';
	src: url('../../../fonts/open_sans/open_sans-r.woff2') format('woff2'),
		 url('../../../fonts/open_sans/open_sans-r.woff') format('woff');
	font-weight: normal;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: 'Open Sans';
	src: url('../../../fonts/open_sans/open_sans-b.woff2') format('woff2'),
		 url('../../../fonts/open_sans/open_sans-b.woff') format('woff');
	font-weight: 700;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: 'Open Sans';
	src: url('../../../fonts/open_sans/open_sans-i.woff2') format('woff2'),
		 url('../../../fonts/open_sans/open_sans-i.woff') format('woff');
	font-weight: normal;
	font-style: italic;
	font-display: swap;
}

@font-face {
	font-family: 'Open Sans';
	src: url('../../../fonts/open_sans/open_sans-s-b.woff2') format('woff2'),
		 url('../../../fonts/open_sans/open_sans-s-b.woff') format('woff');
	font-weight: 600;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: 'Open Sans';
	src: url('../../../fonts/open_sans/open_sans-b-i.woff2') format('woff2'),
		 url('../../../fonts/open_sans/open_sans-b-i.woff') format('woff');
	font-weight: 700;
	font-style: italic;
	font-display: swap;
}

html {
	line-height              : 1.15;
	-webkit-text-size-adjust : 100%;
}

body {
	margin         : 0;
	position       : relative;
	color          : #333;
	background     : #fff;
	letter-spacing : 0.2px;
	font-size      : 16px;
	font-family    : "Open Sans", sans-serif;
}

main {
	display : block;
}

hr {
	box-sizing : content-box;
	height     : 0;
	overflow   : visible;
}

pre {
	font-family : monospace, monospace;
	font-size   : 1em;
}

a {
	background-color : transparent;
}

abbr[title] {
	border-bottom   : none;
	text-decoration : underline;
	text-decoration : underline dotted;
}

b, strong {
	font-weight : bolder;
}

code, kbd, samp {
	font-family : monospace, monospace;
	font-size   : 1em;
}

small {
	font-size : 80%;
}

sub, sup {
	font-size      : 75%;
	line-height    : 0;
	position       : relative;
	vertical-align : baseline;
}

sub {
	bottom : -0.25em;
}

sup {
	top : -0.5em;
}

img {
	border-style : none;
}

button, input, optgroup, select, textarea {
	font-family : "Open Sans", sans-serif;
	font-size   : 100%;
	line-height : 1.15;
	margin      : 0;
}

button, input {
	overflow : visible;
}

button, select {
	text-transform : none;
}

button, [type="button"], [type="reset"], [type="submit"] {
	-webkit-appearance : button;
}

button::-moz-focus-inner, [type="button"]::-moz-focus-inner, [type="reset"]::-moz-focus-inner, [type="submit"]::-moz-focus-inner {
	border-style : none;
	padding      : 0;
}

button:-moz-focusring, [type="button"]:-moz-focusring, [type="reset"]:-moz-focusring, [type="submit"]:-moz-focusring {
	outline : 1px dotted ButtonText;
}

fieldset {
	padding : 0.35em 0.75em 0.625em;
}

legend {
	box-sizing  : border-box;
	color       : inherit;
	display     : table;
	max-width   : 100%;
	padding     : 0;
	white-space : normal;
}

progress {
	vertical-align : baseline;
}

textarea {
	overflow    : auto;
	font-family : inherit;
}

[type="checkbox"], [type="radio"] {
	box-sizing : border-box;
	padding    : 0;
}

[type="number"]::-webkit-inner-spin-button, [type="number"]::-webkit-outer-spin-button {
	height : auto;
}

[type="search"] {
	-webkit-appearance : textfield;
	outline-offset     : -2px;
}

[type="search"]::-webkit-search-decoration {
	-webkit-appearance : none;
}

::-webkit-file-upload-button {
	-webkit-appearance : button;
	font               : inherit;
}

details {
	display : block;
}

summary {
	display : list-item;
}

template {
	display : none;
}

[hidden] {
	display : none;
}

h1, h2, h3, h4, h5, h6 {
	font-weight : normal;
	margin      : 0.67em 0;
	color       : #000;
}

h1, .mg-title {
	margin-top  : 0;
	font-family : "Montserrat", sans-serif;
	font-weight : 500;
	font-size   : 6.875vw;
	line-height : 1.4;
}

.mp-wrapp {
	max-width     : 1168px;
	margin-left   : auto;
	margin-right  : auto;
	padding-left  : 24px;
	padding-right : 24px;
	box-sizing    : border-box;
}

.mp-main-menu-container {
	box-shadow : 0px 8px 16px rgba(0, 0, 0, 0.04);
	position   : relative;
	z-index    : 4;
	position   : sticky;
	top        : 0;
	left       : 0;
	right      : 0;
	background : #fff;
}

.mp-main-menu-container__inner {
	display         : flex;
	justify-content : space-between;
	align-items     : center;
}

.mp-main-menu__nav, .mp-main-menu__search-wrapper, .mp-main-menu__btn-login, .mp-main-menu__bot, .mp-main-menu__logo-desk {
	display : none;
}

.mp-main-menu__logo {
	flex      : none;
	height    : 48px;
	font-size : 0;
}

.mp-main-menu__logo img {
	max-height : 100%;
	width      : auto;
}

.mp-main-menu__phone {
	font-family: 'Montserrat', sans-serif;
	font-weight: 600;
	font-size: 14px;
	line-height: 24px;
	text-align: right;
	letter-spacing: -0.1px;
	color: #000000;
	text-decoration: none;
	margin-left: auto;
}

.mp-main-menu-container {
	padding : 12px 0;
}

.mp-main-menu__btn-burger {
	flex       : none;
	padding    : 0;
	margin     : 0  0 0 14px;
	border     : none;
	background : none;
	cursor     : pointer;
	font-size  : 0;
	outline    : none;
}

.mp-m-menu {
	position   : fixed;
	top        : 0;
	bottom     : 0;
	right      : 0;
	width      : 288px;
	background : #fff;
	box-shadow : 0 0 0 100000px rgba(36, 36, 36, 0.84);
	z-index    : 10000;
	transform  : translate(100%);
	opacity    : 0;
}

.mp-m-menu._opened {
	transform  : translate(0);
	transition : all .3s linear;
	opacity    : 1;
}

.mp-m-aside-close {
	position   : absolute;
	width      : 32px;
	height     : 32px;
	font-size  : 0;
	padding    : 0;
	margin     : 0;
	background : none;
	border     : none;
	outline    : none;
	top        : 0;
	left       : -32px;
	z-index    : 4;
}

.mp-m-menu__wrap {
	position   : absolute;
	top        : 0;
	bottom     : 0;
	left       : 0;
	right      : 0;
	overflow   : auto;
	box-sizing : border-box;
	padding    : 32px 22px 22px;
}

.mp-m-nav-aside {
	padding    : 0 0 8px;
	margin     : 0;
	list-style : none;
}

.mp-m-nav-aside > li {
	border-bottom : 1px solid #e1e1e1;
}

.mp-m-nav-aside > li._active ._icon {
	transform : rotate(180deg);
}

.mp-m-nav-aside > li._active ._active a, .mp-m-nav-aside > li._active ._active span {
	color : #1ca345;
}

.mp-m-nav-aside > li._active .mp-main-menu-aside__link {
	color : #1ca345;
}

.mp-m-nav-aside > li._active ul {
	display : block;
}

.mp-main-menu-aside__link {
	font-weight     : 500;
	font-size       : 16px;
	line-height     : 27px;
	text-decoration : none;
	color           : #000;
	display         : flex;
	justify-content : space-between;
	align-items     : center;
	padding         : 16px 0;
}

.mp-main-menu-aside__link ._icon {
	flex        : none;
	margin-left : 16px;
}

.mp-m-nav-aside ul {
	list-style : none;
	padding    : 8px 0 20px 16px;
	margin     : 0;
	display    : none;
}

.mp-m-nav-aside ul li + li {
	margin-top : 20px;
}

.mp-m-nav-aside ul a, .mp-m-nav-aside ul span {
	font-size       : 16px;
	line-height     : 22px;
	letter-spacing  : 0.2px;
	color           : #666;
	text-decoration : none;
}

.mp-m-aside-menu__btn {
	display         : block;
	margin-top      : 16px;
	padding         : 16px;
	font-weight     : 600;
	font-size       : 16px;
	line-height     : 27px;
	text-align      : center;
	letter-spacing  : 0.2px;
	color           : #000;
	border-radius   : 48px;
	text-decoration : none;
	background      : #f4f5f4;
}

.mp-m-aside-menu__btn._call {
	color      : #fff;
	background : #1ca345;
}

.mp-main-aside-menu__search {
	display       : flex;
	background    : #fff;
	border        : 1px solid #e1e1e1;
	box-sizing    : border-box;
	border-radius : 112px;
	padding       : 16px 24px;
	align-items   : center;
	margin-top    : 32px;
}

.mp-main-aside-menu__search-button {
	border      : none;
	background  : none;
	outline     : none;
	flex        : none;
	line-height : 0;
	padding     : 0;
	margin      : 0 0 0 8px;
}

.mp-main-aside-menu__search-input {
	border      : none;
	outline     : none;
	padding     : 0;
	width       : 100%;
	font-size   : 16px;
	line-height : 27px;
}

.mp-main-aside-menu__phones {
	padding-bottom : 40px;
	border-bottom  : 1px solid #e1e1e1;
}

.mp-main-aside-menu__phones-item {
	position : relative;
}

.mp-main-aside-menu__phones-item + .mp-main-aside-menu__phones-item {
	margin-top : 16px;
}

.mp-main-aside-menu__phone-item-title {
	font-size   : 14px;
	line-height : 24px;
	color       : #666;
}

.mp-main-aside-menu__phone-item-title a {
	color           : #0369d9;
	text-decoration : none;
}

.mp-main-aside-menu__phone-item-text {
	font-weight : 500;
	font-size   : 18px;
	line-height : 31px;
	color       : #000;
}

.mp-main-aside-menu__phone-item-text a {
	text-decoration : none;
	color           : inherit;
}

.mp-main-aside-menu__phones-list {
	height     : 0;
	overflow   : hidden;
	transition : all 0.5s;
}

.mp-main-aside-menu__phones-list-inner {
	padding-top : 16px;
}

.mp-main-aside-menu__phone-more {
	padding     : 0;
	margin      : 0;
	background  : none;
	position    : absolute;
	right       : 0;
	border      : none;
	line-height : 0;
	top         : 50%;
	margin-top  : -8px;
	transform   : rotate(180deg);
	transition  : all 0.2s;
}

.mp-main-aside-menu__phone-more.active {
	transform : none;
}

#onicon .onicon-bookmark .onicon-button__image {
	width         : 60px !important;
	height        : 60px !important;
	border-radius : 50%;
}

#onicon .onicon-bookmark--bottom .onicon-button__wrapper {bottom: 90px !important; right: 12px !important; }

@media all and (min-width : 416px) {
	h1, .mg-title {
		font-size : 28px;
	}

	.mp-wrapp {
		padding-left  : 32px;
		padding-right : 32px;
	}

	.mp-m-menu {
		width : 352px;
	}

	.mp-m-menu__wrap {
		padding : 40px 32px 32px;
	}

	.mp-m-nav-aside {
		padding-bottom : 16px;
	}

	.mp-m-aside-menu__btn {
		padding : 24px;
	}

	.mp-main-aside-menu__search {
		margin-top : 40px;
	}

	.mp-main-aside-menu__phone-item-title {
		font-size      : 16px;
		line-height    : 170%;
		padding-bottom : 4px;
	}

	.mp-m-aside-close {
		left : -40px;
		top  : 8px;
	}
}


@media all and (min-width : 640px) {
	h1, .mg-title {
		font-size : 32px;
	}

	.mp-main-menu-container {
		padding  : 10px 0;
		position : relative;
	}
	
	.mp-main-menu__logo {height: 28px;}
	
	.mp-main-menu__logo-desk {display: block;}
	.mp-main-menu__logo-mob {display: none;}
	
	.mp-main-menu__phone {
		font-size: 16px;
	}

	.mp-main-menu__btn-burger {
		margin-left : 24px;
	}

	.mp-main-menu__bot {
		display    : block;
		border-top : 1px solid #efefef;
		background : #fff;
		position   : relative;
		z-index    : 2;
		box-shadow : 0px 8px 16px rgba(0, 0, 0, 0.04);
		position   : sticky;
		left       : 0;
		top        : 0;
		right      : 0;
		z-index    : 100;
	}

	.mp-main-menu__link {
		display : none;
	}

	.mp-main-menu__bot {
		overflow : auto;
	}

	.mp-main-menu__bot::-webkit-scrollbar {
		display : none;
	}

	.mp-main-menu__bot-nav-in {
		padding    : 0;
		margin     : 0;
		list-style : none;
		display    : flex;
	}

	.mp-main-menu__bot-item {
		flex : none;
	}

	.mp-main-menu__bot-link {
		display         : block;
		padding         : 20px 20px 22px;
		font-weight     : 500;
		font-size       : 14px;
		line-height     : 25px;
		color           : #000;
		text-decoration : none;
		position        : relative;
	}

	.mp-main-menu__bot-link:before {
		position      : absolute;
		left          : 0;
		right         : 0;
		bottom        : 0;
		background    : #1ca345;
		border-radius : 1px;
		content       : "";
		transition    : all 0.2s;
		height        : 0;
	}

	.mp-main-menu__bot-link.active:before, .mp-main-menu__bot-link:hover:before {
		height : 2px;
	}
}

@media all and (min-width : 1200px) {
	#onicon .onicon-bookmark--bottom .onicon-button__wrapper {bottom: 100px !important; right: 40px !important;}
	h1, .mg-title {
		font-size : 40px;
	}

	.mp-m-menu, .mp-main-menu__btn-burger {
		display : none;
	}

	.mp-main-menu__logo {
		height : auto
	}

	.mp-main-menu-container {
		padding : 16px 0;
	}

	.mp-main-menu__phone {
		font-size   : 18px;
		line-height : 172.3%;
		margin-left : 16px;
		font-weight: 500;
	}

	.mp-main-menu__btn-login {
		display       : block;
		padding       : 8px;
		flex          : none;
		margin-left   : 16px;
		font-size     : 0;
		transition    : all 0.2s;
		border-radius : 50%;
	}

	.mp-main-menu__btn-login path {
		transition : all 0.2s;
	}

	.mp-main-menu__btn-login:hover path {
		stroke : #1ca345;
	}

	.mp-main-menu__search-wrapper {
		display     : block;
		flex        : none;
		position    : relative;
		width       : 40px;
		height      : 40px;
		margin-left : 16px;
		box-sizing  : border-box;
	}

	.mp-services__search-btn {
		padding       : 8px;
		font-size     : 0;
		display       : block;
		cursor        : pointer;
		background    : none;
		border        : none;
		outline       : none;
		transition    : all 0.2s;
		border-radius : 50%;
	}

	.mp-services__search-btn path {
		transition : all 0.2s;
	}

	.mp-services__search-btn:hover path {
		fill : #1ca345;
	}

	.mp-services__search-input-field {
		border     : none;
		outline    : none;
		background : none;
		width      : 100%;
		padding    : 0 0 0 16px;
	}

	.mp-services__search {
		position      : absolute;
		top           : -2px;
		right         : 0;
		bottom        : -4px;
		width         : 0;
		opacity       : 0;
		box-shadow    : 0 0 0 1px #d3d3d3;
		background    : #fff;
		box-sizing    : border-box;
		border-radius : 24px;
		overflow      : hidden;
		display       : flex;
		align-items   : center;
		transition    : 0.3s;
	}

	._opened form.mp-services__search {
		width   : 240px;
		opacity : 1;
	}

	.mp-main-menu__nav {
		display     : block;
		flex        : 1 0 1%;
		margin-left : 16px;
	}

	.mp-main-menu__nav-in {
		padding    : 0;
		margin     : 0;
		list-style : none;
		text-align : center;
	}

	.mp-main-menu__item {
		display     : inline-block;
		padding     : 0 6px;
		font-weight : 400;
		font-size   : 13px;
		line-height : 180%;
		color       : #666;
		transition  : all 0.2s;
	}

	.mp-main-menu__item:first-child {
		padding-left : 0px;
	}

	.mp-main-menu__item:last-child {
		padding-right : 0px;
	}

	.mp-main-menu__item:hover {
		color : #1ca345;
	}

	.mp-main-menu__item a {
		color           : inherit;
		text-decoration : none;
	}

	.mp-main-menu__link {
		display         : block;
		font-weight     : 500;
		font-size       : 14px;
		line-height     : 180%;
		text-align      : center;
		color           : #fff;
		text-decoration : none;
		padding         : 10px 24px;
		background      : #1ca345;
		border-radius   : 96px;
		transition      : all 0.2s;
	}

	.mp-main-menu__link:hover {
		background : linear-gradient(0deg, rgba(255, 255, 255, 0.1), rgba(255, 255, 255, 0.1)), #1ca345;
		box-shadow : 0px 8px 16px rgba(28, 163, 69, 0.32);
	}

	.mp-main-menu__link:active {
		background : linear-gradient(0deg, rgba(0, 0, 0, 0.06), rgba(0, 0, 0, 0.06)), #1ca345;
		box-shadow : none;
	}

	.mp-main-menu__bot-in {
		display         : flex;
		align-items     : center;
		justify-content : space-between;
	}

	.mp-main-menu__bot-link {
		font-size   : 14px;
		line-height : 180%;
		padding     : 20px 20px 22px;
	}

	.mp-main-menu__bot-item ul {
		padding       : 0px;
		margin        : 0px;
		list-style    : none;
		position      : absolute;
		background    : #fff;
		padding       : 16px 0;
		border-radius : 8px;
		box-shadow    : 0px 2px 18px rgba(0, 0, 0, .25);
		text-align    : left;
		left          : -20px;
		top           : 96%;
		width         : 250px;
		overflow      : hidden;
		display       : none;
		opacity       : 0;
		transition    : all 0.2s;
		z-index       : 3;
	}

	.mp-main-menu__bot-item ul.active {
		opacity : 1;
		display : block;
	}

	.mp-main-menu__bot-item ul a {
		text-decoration : none;
		color           : #8b8b8b;
		display         : block;
		padding         : 10px 16px 10px 24px;
		transition      : all 0.2s;
	}

	.mp-main-menu__bot-item ul a:hover {
		color : #000;
	}

	.mp-main-menu__bot {
		overflow : visible;
	}

	.mp-main-menu__bot-item {
		position : relative;
	}

	.mp-main-menu__bot-item:hover > ul {
		opacity : 1;
		display : block;
	}
}

@media all and (min-width : 1440px) {
	h1, .mg-title {
		font-size : 48px;
	}

	.mp-wrapp {
		max-width : 1216px;
	}

	.mp-main-menu__bot-link {
		font-size : 16px;
		padding   : 22px 20px;
	}

	.mp-main-menu__link {
		padding : 12px 28px;
	}

	.mp-main-menu__item {
		padding   : 0 7px;
		font-size : 14px;
	}
}