.contacts__header {
	grid-area: title;
	min-width: 0
}
@media (min-width:1200px) {
	.contacts__header {
		margin-bottom: -40px
	}
}
.contacts__container > div {
	min-width: 0
}
@media (max-width:767px) {
	.contacts__container > div {
		margin-bottom: 60px
	}
	.contacts__container > div:not(:last-of-type) {
		margin-bottom: 60px
	}
}
@media (min-width:768px) {
	.contacts__container {
		display: grid;
		grid-template-areas: "title title""map service""info social";
		grid-template-columns: 3fr 2fr;
		row-gap: 60px;
		-webkit-column-gap: 24px;
		-moz-column-gap: 24px;
		column-gap: 24px;
		-webkit-box-align: center;
		-ms-flex-align: center;
		align-items: center;
		min-width: 0;
		min-height: 0
	}
}
@media (min-width:700px) {
	.contacts__container {
		grid-template-columns: 2fr 1fr
	}
}
@media (min-width:1200px) {
	.contacts__container {
		row-gap: 45px;
		-webkit-column-gap: 40px;
		-moz-column-gap: 40px;
		column-gap: 40px
	}
}
.contacts__map-wrap {
	grid-area: map;
	width: 100%;
	height: 420px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	overflow: hidden
}
@media (min-width:1200px) {
	.contacts__map-wrap {
		height: 100%
	}
}
/* @media (min-width:1400px) {
	.contacts__map-wrap {
		height: 600px
	}
} */
.contacts__map {
	display: block;
	width: 100%;
	height: 100%
}
.contacts__service {
	grid-area: service;
	height: 100%
}
.contacts__info {
	grid-area: info
}
@media (min-width:1400px) {
	.contacts__info {
		margin-top: 13px
	}
}
.contacts__social {
	grid-area: social
}
.contacts__social-list {
	padding: 0;
	margin: 0;
	list-style: none;
	width: 100%;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	gap: 20px
}
@media (min-width:1200px) {
	.contacts__social-list {
		gap: 40px
	}
}
@media (min-width:1400px) {
	.contacts__social-list {
		display: grid;
		grid-template-rows: 1fr 1fr;
		grid-template-columns: 1fr 1fr;
		grid-auto-flow: row;
		gap: 35px;
		-webkit-column-gap: 30px;
		-moz-column-gap: 30px;
		column-gap: 30px;
		margin: 12px auto 0
	}
}
@media (min-width:1800px) {
	.contacts__social-list {
		width: 80%;
		gap: 65px;
		-webkit-column-gap: 60px;
		-moz-column-gap: 60px;
		column-gap: 60px
	}
}
.contacts__soc-item {
	display: -webkit-inline-box;
	display: -ms-inline-flexbox;
	display: inline-flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	gap: 15px;
	font-size: 16px;
	font-weight: 500;
	text-transform: uppercase
}
.contacts__soc-icon {
	width: 24px;
	height: 24px
}
.contacts__soc-icon-wrap {
	--bg-color: var(--sky-light);
	width: 40px;
	height: 40px;
	display: -webkit-inline-box;
	display: -ms-inline-flexbox;
	display: inline-flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	border-radius: 10px;
	background-color: var(--bg-color);
	background-image: linear-gradient(to bottom, rgba(31, 150, 239, .1), rgba(255, 255, 255, .1));
}
.contacts__soc-item--vk .contacts__soc-icon-wrap {
	--bg-color: #0077FF
}
.contacts__soc-item--ok .contacts__soc-icon-wrap {
	--bg-color: #FF7700
}
.contacts__soc-item--tg .contacts__soc-icon-wrap {
	--bg-color: #0088CC
}
.contacts__soc-item--wa .contacts__soc-icon-wrap {
	--bg-color: #25D366
}
@media (min-width:1200px) {
	.contacts__soc-icon {
		width: 28px;
		height: 28px
	}
	.contacts__soc-icon-wrap {
		width: 48px;
		height: 48px
	}
}
.contacts-list {
	padding: 0;
	margin: 0;
	list-style: none;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	gap: 28px
}
.contacts-list__item {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	gap: 15px
}
@media (min-width:1400px) {
	.contacts-list__item {
		gap: 20px
	}
}
.contacts-list__icon-wrap {
	-ms-flex-negative: 0;
	flex-shrink: 0;
	width: 40px;
	height: 40px;
	display: -webkit-inline-box;
	display: -ms-inline-flexbox;
	display: inline-flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	border-radius: 10px;
	background-color: #eaf2fa;
	background-image: -webkit-gradient(linear, left top, left bottom, from(rgba(31, 150, 239, .1)), to(rgba(255, 255, 255, .1)));
	background-image: linear-gradient(to bottom, rgba(31, 150, 239, .1), rgba(255, 255, 255, .1))
}
.contacts-list__icon {
	width: 22px;
	height: 22px
}
.contacts-list__dl {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	gap: 8px
}
.contacts-list__dt {
	font-size: 14px
}
.contacts-list__dd {
	font-size: 16px;
	font-weight: 500
}
@media (min-width:576px) {
	.contacts-list {
		padding: 28px 20px;
		border: 1px solid #cecece
	}
	.contacts-list__item {
		gap: 15px
	}
	.contacts-list__dl {
		gap: 4px
	}
}
@media (min-width:1200px) {
	.contacts-list {
		padding: 40px 30px;
		gap: 44px
	}
	.contacts-list__item {
		gap: 20px
	}
	.contacts-list__icon-wrap {
		width: 48px;
		height: 48px
	}
	.contacts-list__icon {
		width: 28px;
		height: 28px
	}
	.contacts-list__dl {
		gap: 0
	}
	.contacts-list__dt {
		font-size: 16px
	}
	.contacts-list__dd {
		font-size: 20px
	}
}
@media (min-width:1400px) {
	.contacts-list {
		padding: 56px 34px;
		row-gap: 65px;
		-webkit-column-gap: 20px;
		-moz-column-gap: 20px;
		column-gap: 20px;
		display: grid;
		grid-template-rows: 1fr 1fr;
		grid-template-columns: 5fr 3fr;
		grid-auto-flow: column
	}
	.contacts-list__item:nth-child(3),
	.contacts-list__item:nth-child(4) {
		margin-left: 52px
	}
}
.ymaps3x0--marker-layer {
	width: 100% !important;
	height: 100% !important
}
.marker {
	position: relative;
	width: 40px;
}
.marker.active .marker__content {
	display: block;
}
.marker__content {
	display: none;
	position: absolute;
	bottom: 10px;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 240px;
	background-color: #fff;
	padding: 10px;
	border-radius: 15px;
	text-align: center;
	box-shadow: 0 0 10px #bedbf0;
	cursor: default;
}
.marker {
	position: relative;
	width: 40px;
	height: 40px;
	border-radius: 50%;
	-webkit-transform: translate(-50%, -100%);
	transform: translate(-50%, -100%);
	background-color: #f43;
	display: -webkit-inline-box;
	display: -ms-inline-flexbox;
	display: inline-flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	cursor: pointer;
}
.marker::before {
	content: "";
	position: absolute;
	top: 100%;
	left: 50%;
	-webkit-transform: translate(-50%, 5px);
	transform: translate(-50%, 5px);
	display: block;
	width: 5px;
	height: 5px;
	border-radius: 50%;
	background-color: #f43;
}