.contacts-table {
	margin-bottom: 2px
}
.contacts-table__top {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	margin-bottom: 3.5rem
}
@media (max-width: 989.98px) {
	.contacts-table__top {
		margin-bottom: 2.5rem
	}
}
.contacts-table__table {
	width: 100%
}
.contacts-table__row {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	background-color: #efeff2;
	padding-top: 2.5rem;
	padding-bottom: 2.5rem
}
.contacts-table__row:not(:last-child) {
	margin-bottom: 2px
}
@media (max-width: 989.98px) {
	.contacts-table__row {
		padding: 2.5rem
	}
}
@media (max-width: 639.98px) {
	.contacts-table__row {
		padding: 1.5rem
	}
}
.contacts-table__cell {
	width: 25%;
	padding-right: 3rem
}
@media (max-width: 989.98px) {
	.contacts-table__cell {
		width: 50%
	}
}
@media (min-width: 990px) {
	.contacts-table__cell {
		padding-top: .375rem
	}
}
.contacts-table__cell-heading {
	width: 50%;
	padding-top: 0
}
@media (min-width: 990px) {
	.contacts-table__cell-heading {
		padding-left: 3rem
	}
}
@media (max-width: 989.98px) {
	.contacts-table__cell-heading {
		width: 100%;
		margin-bottom: 2rem
	}
}
.contacts-table__contact:not(:first-child) {
	margin-top: 1.5rem
}
.contacts-table__contact-link {
	margin-top: .5rem
}
/**/
.map-box {
	position: relative
}
@media (min-width: 990px) {
	.map-box__top {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-align: start;
		-ms-flex-align: start;
		align-items: flex-start
	}
}
@media (min-width: 640px) and (max-width: 989.98px) {
	.map-box__top {
		max-width: 66.6666%
	}
}
@media (max-width: 989.98px) {
	.map-box__top > :last-child {
		margin-bottom: 0
	}
}
@media (min-width: 990px) {
	.map-box__heading {
		max-width: 41.6666%;
		width: 100%;
		margin-right: 8.3333%
	}
}
@media (min-width: 640px) and (max-width: 989.98px) {
	.map-box__heading {
		margin-bottom: 2rem
	}
}
@media (max-width: 639.98px) {
	.map-box__heading {
		margin-bottom: 1.5rem
	}
}
@media (min-width: 990px) {
	.map-box__description {
		max-width: 33.3333%
	}
	.map-box__description:not(:first-child) {
		padding-top: 1.5rem
	}
}
.map-box__container {
	position: relative
}
.map-box__frame {
	background-color: #efefef;
	height: 25rem
}
.map-box[data-map-box-contacts] .map-box__frame {
	height: 32rem
}
.map-box__frame--bottom {
	height: 32rem
}
@media (min-width: 990px) {
	.map-box__frame {
		height: 37.5rem
	}
}
@media (min-width: 640px) and (max-width: 989.98px) {
	.map-box__frame {
		height: 43.75rem
	}
	.map-box__frame--bottom {
		height: 37.5rem
	}
}
.map-box--outline .map-box__frame {
	border-top: 2px solid #efeff2;
	border-bottom: 2px solid #efeff2
}
@media (min-width: 990px) {
	.map-box__controls {
		right: 3rem
	}
}
@media (min-width: 640px) and (max-width: 989.98px) {
	.map-box__controls {
		right: 2rem
	}
}
@media (min-width: 640px) {
	.map-box__controls {
		position: absolute;
		top: 50%;
		z-index: 1;
		-webkit-transform: translateY(-50%);
		-ms-transform: translateY(-50%);
		transform: translateY(-50%)
	}
}
@media (max-width: 639.98px) {
	.map-box__controls {
		display: none
	}
}
.map-box__legend {
	position: absolute;
	background-color: #fff;
	padding: 1.5rem 1rem 2rem;
	bottom: 0;
	left: 0;
	width: 100%
}
@media (min-width: 990px) {
	.map-box__legend {
		width: 37.875rem
	}
}
@media (min-width: 640px) and (max-width: 989.98px) {
	.map-box__legend {
		width: 75%
	}
}
@media (min-width: 640px) {
	.map-box__legend {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-align: start;
		-ms-flex-align: start;
		align-items: flex-start;
		-ms-flex-wrap: wrap;
		flex-wrap: wrap;
		padding: 2rem 3rem 1.5rem
	}
}
.map-box__legend > :last-child {
	margin-right: 0
}
.map-box__legend-item {
	position: relative;
	padding-left: 1rem
}
@media (min-width: 990px) {
	.map-box__legend-item {
		min-width: 11.875rem;
		margin-right: 2rem
	}
}
@media (min-width: 640px) and (max-width: 989.98px) {
	.map-box__legend-item {
		margin-right: 2.5rem
	}
}
@media (min-width: 640px) {
	.map-box__legend-item {
		margin-bottom: 1rem
	}
}
@media (max-width: 639.98px) {
	.map-box__legend-item:not(:last-child) {
		margin-bottom: 1rem
	}
}
.map-box__legend-item:before {
	position: absolute;
	top: .3125rem;
	left: 0;
	width: .5rem;
	height: .5rem;
	background-color: currentColor;
	content: ""
}
.map-box__legend-text {
	color: rgba(16, 16, 16, .4)
}
.map-box__bottom {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: end;
	-ms-flex-align: end;
	align-items: flex-end;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	width: 73.2%;
	background-color: #d0043c;
	color: #fff;
	padding-top: 1.5rem;
	padding-bottom: 4rem;
	position: relative;
	z-index: 100
}
@media (max-width: 639.98px) {
	.map-box__bottom {
		padding-right: 1rem
	}
}
@media (min-width: 640px) and (max-width: 989.98px) {
	.map-box__bottom {
		padding-right: 2rem
	}
}
@media (min-width: 990px) {
	.map-box__bottom {
		height: 12rem;
		margin-top: -6rem
	}
}
@media (max-width: 989.98px) {
	.map-box__bottom {
		height: auto;
		width: 100%;
		padding-top: 2.5rem;
		padding-bottom: 2.5rem;
		-webkit-box-align: center;
		-ms-flex-align: center;
		align-items: center
	}
}
.map-box__bottom-heading {
	width: 24%;
	padding-right: 5rem
}
@media (max-width: 989.98px) {
	.map-box__bottom-heading {
		padding-right: 2.5rem
	}
}
@media (max-width: 639.98px) {
	.map-box__bottom-heading {
		width: 100%;
		margin-bottom: 1.5rem
	}
}
.map-box__bottom-contacts {
	width: 33%;
	padding-right: 5rem
}
.map-box__bottom-adress {
	width: 40%;
	padding-right: 5rem
}
@media (min-width: 640px) and (max-width: 989.98px) {
	.map-box__bottom-adress,
	.map-box__bottom-contacts {
		padding-right: 0;
		padding-left: 2.5rem
	}
}
@media (max-width: 639.98px) {
	.map-box__bottom-adress,
	.map-box__bottom-contacts {
		width: 50%;
		padding-right: 1.5rem
	}
}
.map-box__bottom-contact:not(:last-child) {
	/*margin-bottom: 1rem*/
}
/**/
.ymaps3x0--marker-layer {
	width: 100% !important;
	height: 100% !important;
}
.icon-marker {
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
	width: 32px;
	height: 32px;
	left: 50%;
	transform: translate(-100%, -100%);
	cursor: pointer;
	z-index: 1001;
}
.icon-marker img {
	max-height: 100%;
}
.icon-marker__number {
	position: absolute;
	top: 14px;
	left: 50%;
	transform: translate(-50%, -50%);
	color: #fff;
	z-index: 1002;
}
.m-red {
	display: none;
}
.icon-marker:hover .m-def {
	display: none;
}
.icon-marker:hover .m-red {
	display: block;
}
.icon-marker__description {
	min-width: 300px;
	position: relative;
	z-index: 1004;
	display: none;
	padding: 0.3rem 0.8rem;
	background-color: #fff;
	font-size: 16px;
}
.icon-marker__close-button {
	position: absolute;
	top: 6px;
	right: 6px;
	z-index: 1005;
	width: 20px;
	height: 20px;
	margin: 0;
	background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxMiIgaGVpZ2h0PSIxMiI+PHBhdGggZD0iTTUuMyA2TDAgLjcuNyAwIDYgNS4zIDExLjMgMGwuNy43TDYuNyA2bDUuMyA1LjMtLjcuN0w2IDYuNy43IDEybC0uNy0uN0w1LjMgNnoiLz48L3N2Zz4=);
	background-repeat: no-repeat;
	background-size: contain;
	background-position: 50% 50%;
	opacity: 0.3;
}
.icon-marker__close-button:hover {
	opacity: 1;
}
.icon-marker.active .m-def,
.icon-marker.active .m-red,
.icon-marker.active .icon-marker__number {
	display: none;
}
.icon-marker.active .icon-marker__description {
	display: block;
}
.ymaps3x0--marker.active {
	z-index: 1 !important;
}
.hero {
    padding-bottom: 3.5rem !important;
}

.contacts-table__list {
	position: relative;
}

.contacts__wrapper {
	display: grid;
	grid-template-columns: 1fr 1fr;
	width: 50%;
}

.contacts__wrapper .contacts-table__cell {
	width: 100%;
}

.contacts__icon
{
	position:absolute;
	left:-24px;
	top:50%;
	transform:translate(0,-50%);

}

.contacts__icon--email {
	opacity: 0.4
}

@media(max-width: 700px) 
{
	.contacts__wrapper {
		grid-template-columns: 1fr;
		margin-bottom: 1rem;
		width: 100%;
	}

	.contacts__icon
	{
		position: relative;
		vertical-align: middle;
		display: inline !important;

		left: unset;
		top: unset;
		transform: unset;

    	margin-right: .3rem;
	}

	.contacts__icon+.contacts-table__contact-link {
		display: inline !important;
	}

	.contacts__email_block {
		margin-top: .3rem
	}
}
