/* Header: logo · office · phones — aligned with icons + dividers */

.header .wr {
	align-items: center;
	gap: 0;
}

.header .logo_wr {
	flex: 0 0 auto;
	width: auto;
	max-width: 320px;
	padding-right: 22px;
}

.header .logo_wr img {
	display: block;
	width: auto;
	max-width: 100%;
	height: 62px;
	image-rendering: -webkit-optimize-contrast;
}

.header .header_icn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 auto;
	width: 34px;
	height: 34px;
	border-radius: 50%;
	background: rgba(49, 144, 48, 0.1);
	color: #319030;
}

.header .header_icn svg {
	display: block;
}

/* Office block */
.header .header_office {
	display: flex;
	align-items: center;
	gap: 12px;
	flex: 1 1 auto;
	min-width: 0;
	max-width: 380px;
	margin: 0;
	padding: 0 22px;
	font-family: "Nunito", "ProximaNova", sans-serif;
	box-sizing: border-box;
}

.header .header_office_body {
	min-width: 0;
}

.header .header_office_label {
	display: block;
	margin: 0 0 3px;
	font-size: 12px;
	font-weight: 800;
	letter-spacing: 0.02em;
	text-transform: none;
	color: #8a9286;
	line-height: 1.2;
}

.header .header_office_addr {
	display: block;
	margin: 0;
	font-size: 14px;
	font-weight: 700;
	line-height: 1.35;
	color: #1f2a1c;
	text-decoration: none;
}

.header .header_office_addr:hover {
	color: #319030;
}

/* Phones */
.header .right {
	flex: 0 0 auto;
	margin-left: auto;
	padding-left: 22px;
	box-sizing: border-box;
}

.header .header_tels {
	display: flex;
	align-items: center;
	gap: 22px;
}

.header .right .tel {
	display: flex;
	align-items: center;
	gap: 10px;
	margin: 0;
	padding: 0;
	font-family: "Nunito", "ProximaNova", sans-serif;
	box-sizing: border-box;
}

.header .header_tel_body {
	min-width: 0;
}

.header .right .tel a {
	display: block;
	font-size: 16px;
	font-weight: 800;
	line-height: 1.25;
	color: #1f2a1c;
	text-decoration: none;
	letter-spacing: -0.01em;
	white-space: nowrap;
}

.header .right .tel a:hover {
	color: #319030;
}

.header .header_tel_city,
.header .right .tel .header_tel_city,
.header .right .tel div {
	margin-top: 2px;
	font-size: 13px !important;
	font-weight: 700;
	line-height: 1.25;
	color: #5f6b5a;
}

@media screen and (max-width: 1200px) {
	.header .logo_wr {
		max-width: 280px;
		padding-right: 16px;
	}

	.header .logo_wr img {
		height: 54px;
	}

	.header .header_office,
	.header .right {
		padding-left: 16px;
		padding-right: 16px;
	}

	.header .header_tels {
		gap: 16px;
	}

	.header .right .tel a {
		font-size: 15px;
	}
}

@media screen and (max-width: 1000px) {
	.header .header_office {
		display: none;
	}

	.header .right {
		display: none !important;
	}

	.header .logo_wr {
		padding-right: 0;
	}
}
