.special-worktime {
	background: var(--warning-message-bg);
	color:var(--warning-message-color);
	padding: 20px;
	border-radius: var(--border-radius);
}
.special-worktime__item {
	margin-left: 2em;
}
.special-worktime__item > b {
	font-weight: 600;
}
.special-worktime__item:not(:first-child) {
	margin-top: 0.5em;
}

main .contacts-info .contact-info-item > h3 {
	font-size: 1.2142em;
	font-weight: 600;
	margin-bottom: 0.5882em;
}
main .contacts-info .contact-info-item > p .d-block + .d-block {
	margin-top: 5px;
}
main .contacts-info .contact-info-item > p .d-block .social-icon-bg {
	font-size: 16px;
	width: 25px;
	height: 25px;
	line-height: 25px;
	text-align: center;
	border-radius: 50%;
	color: #ffffff;
}
main .contacts-info .contact-info-item > p .d-block .social-icon {
	font-size: 25px;
	line-height: 1;
	vertical-align: bottom;
}
main .contacts-info .contact-info-item li + li {
	margin-top: 0.5em;
}
main .contacts-info .contact-info-item > p .d-block:has(.social-icons) {
	display: flex;
	gap:3px 10px;
	flex-wrap: wrap;
	align-items: center;
}
main .contacts-info .contact-info-item .social-icons {
	display: flex;
	gap:3px 5px;
	flex-wrap: wrap;
}

main .Map {
	clear: both;
	height: 400px;
	background: #fafafa;
	margin-bottom: 60px;
}
main .Map > p {
	position: absolute;
	top: 20px;
	left: 20px;
	right: 20px;
	-khtml-opacity: 0.7;
	-moz-opacity: 0.7;
	filter: progid:DXImageTransform.Microsoft.Alpha(opacity=0.7);
	opacity: 0.7;
	font-size: 16px;
}
main .requisites table {
	width: auto;
	max-width: 100%;
}

.contacts-form {
	container: contacts-form / inline-size;
}
.contacts-form-description {
	margin-bottom: 25px;
	font-style: italic;
}
.contacts-form-bottom {
	display: flex;
	align-items: center;
	gap:15px 20px;
}
.contacts-form-notice {
	font-size: 0.85rem;
}

@container contacts-form (max-width: 399px) {
	.contacts-form-bottom {
		flex-wrap: wrap;
	}
}

@container contacts-form (min-width: 400px) {
	.contacts-form-bottom {
		justify-content: space-between;
	}
	.contacts-form-notice {
		max-width: 300px;
		text-align: right;
	}
}



@media all and (max-width: 519px) {
	main .contacts-info-title:not(:first-child) {
		margin-top: 35px;
	}
	main h2 {
		margin-bottom: 20px;
	}
	main .contacts-info .contact-info-item {
		margin-bottom: 20px;
		padding-bottom: 20px;
		border-bottom: 1px solid #ededed;
	}
}
@media all and (min-width: 520px) {
	main .contacts-info {
		display: grid;
		grid-auto-flow: column;
		grid-column-gap: 2%;
		container: contacts-info / inline-size;
		margin-bottom: 20px;
		font-size: clamp(11px, 1.4vw, 14px);
	}
	
	main .contacts-info > * {
		padding-left: max(1.7cqw, 10px);
		padding-right: max(1.7cqw, 10px);
		background: var(--bg2);
	}
	main .contacts-info > .contacts-info-title {
		padding-top: 20px;
		border-top-left-radius: 10px;
		border-top-right-radius: 10px;
	}
	main .contacts-info > .contact-info-item.mail {
		padding-bottom: 20px;
		border-bottom-left-radius: 10px;
		border-bottom-right-radius: 10px;
	}
	main .contacts-info > .contact-info-item {
		padding-top: calc(2.8571em + 1px);
	}
	main .contacts-info > .contact-info-item::before {
		content: '';
		display: block;
		position: absolute;
		top:1.42855em;
		left: max(1.7cqw, 10px);
		right: max(1.7cqw, 10px);
		height: 1px;
		background: #ededed;;
	}
	
	main .contacts-info > .contacts-info-title.section-title-mini {
		font-size: 1.42857em;
	}
	
	main .contacts-info .contacts-info-office-0 {
		grid-column: 1;
	}
	main .contacts-info .contacts-info-office-1 {
		grid-column: 2;
	}
	main .contacts-info .contacts-info-office-2 {
		grid-column: 3;
	}
}
@media all and (min-width: 840px) {
	.contacts-form {
		float: left;
		width: 45%;
	}
	main .requisites {
		float: right;
		width: 45%;
	}
}
@media all and (max-width: 839px) {
	.contacts-form {
		margin-bottom: 60px;
	}
}