/**
 * Страница «Контакты» (slug: contacts).
 * Та же сетка и брейкпоинты, что у requisites.css.
 * Десктоп / планшет / мобильный — зеркало стилей реквизитов.
 * Только max-width медиазапросы (без min-width).
 */

.site-footer {
	margin-top: 0;
}

.bc-service-page--contacts {
	background: var(--bc-color-surface);
}

.bc-service-contacts__intro.bc-container,
.bc-service-contacts__table.bc-container {
	max-width: var(--bc-container);
}

/* ---------- Десктоп (по умолчанию, > 1023px) ---------- */

.bc-service-contacts__intro.bc-section {
	padding: 48px 0 0;
	box-sizing: border-box;
}

.bc-service-contacts__breadcrumbs {
	margin-bottom: 48px;
}

.bc-service-contacts__breadcrumbs .bc-breadcrumbs__link,
.bc-service-contacts__breadcrumbs .bc-breadcrumbs__current {
	color: #3f2b22;
	font-size: 1rem;
	line-height: 1.4;
	font-weight: 400;
	font-feature-settings: "lnum" 1, "pnum" 1;
}

.bc-service-contacts__title {
	margin: 0 0 36px;
	padding: 0;
	font-family: var(--bc-font-serif);
	font-size: 3rem;
	font-weight: 700;
	line-height: 1.1;
	color: #3f2b22;
	font-feature-settings: "lnum" 1, "pnum" 1;
}

.bc-service-contacts__table {
	padding: 0 0 48px;
	box-sizing: border-box;
}

.bc-service-contacts__list {
	margin: 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	width: 100%;
	line-height: 1.4;
	color: #454545;
	font-feature-settings: "lnum" 1, "pnum" 1;
}

.bc-service-contacts__row {
	width: 100%;
	margin: 0;
	box-sizing: border-box;
}

.bc-service-contacts__row:nth-child(even) {
	background: #f5f5f5;
}

.bc-service-contacts__row-inner {
	display: flex;
	flex-direction: row;
	align-items: flex-start;
	gap: 64px;
	padding: 24px 20px;
	box-sizing: border-box;
	width: 100%;
}

.bc-service-contacts__term,
.bc-service-contacts__value {
	flex: 1 1 0;
	min-width: 0;
	margin: 0;
	font-size: 1.25rem;
	line-height: 1.4;
	font-feature-settings: "lnum" 1, "pnum" 1;
}

.bc-service-contacts__term {
	font-weight: 600;
}

.bc-service-contacts__value {
	font-weight: 400;
	overflow-wrap: anywhere;
	word-break: break-word;
}

.bc-service-contacts__value a {
	color: inherit;
	text-decoration: none;
	overflow-wrap: inherit;
}

.bc-service-contacts__value a:hover,
.bc-service-contacts__value a:focus-visible {
	text-decoration: underline;
	text-underline-offset: 0.12em;
}

.bc-service-contacts__value--accent,
.bc-service-contacts__value--accent a {
	color: #cc7c61;
}

.bc-service-contacts__value--accent a:hover,
.bc-service-contacts__value--accent a:focus-visible {
	color: #b86a52;
}

.bc-service-contacts__row-inner--social {
	align-items: center;
}

.bc-service-contacts__value--socials {
	display: flex;
	align-items: center;
}

.bc-service-contacts__socials {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 14px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.bc-service-contacts__social-link {
	display: inline-flex;
	line-height: 0;
}

.bc-service-contacts__social-link img {
	display: block;
	width: 40px;
	height: 40px;
	object-fit: contain;
}

@media (max-width: 1279px) {
	.bc-service-contacts__intro.bc-section {
		padding: 32px 20px 0;
	}
	.bc-service-contacts__table {
		padding: 0 20px 48px;
		box-sizing: border-box;
	}

}

/* ---------- Планшет: max-width 1023px ---------- */

@media (max-width: 1023px) {
	.bc-service-contacts__intro.bc-section {
		padding: 32px 40px 0;
	}

	.bc-service-contacts__breadcrumbs {
		margin-bottom: 32px;
	}

	.bc-service-contacts__breadcrumbs .bc-breadcrumbs__link,
	.bc-service-contacts__breadcrumbs .bc-breadcrumbs__current {
		font-size: 15px;
		line-height: 1.45;
	}

	.bc-service-contacts__title {
		margin-bottom: 32px;
		font-size: 28px;
	}

	.bc-service-contacts__table {
		padding: 0 0 32px;
	}

	.bc-service-contacts__row-inner {
		gap: 16px;
		padding: 20px 40px;
	}

	.bc-service-contacts__term {
		font-size: 1rem;
		line-height: 1.35;
		font-weight: 600;
	}

	.bc-service-contacts__value {
		font-size: 15px;
		line-height: 1.45;
		font-weight: 400;
	}
}

/* ---------- Мобильный: max-width 767px ---------- */

@media (max-width: 767px) {
	.bc-service-page--contacts {
		overflow-x: hidden;
	}

	.bc-service-contacts {
		padding-left: 20px;
		padding-right: 20px;
		box-sizing: border-box;
	}

	.bc-service-contacts__intro.bc-section {
		padding: 32px 0 0;
	}

	.bc-service-contacts__breadcrumbs {
		margin-bottom: 32px;
	}

	.bc-service-contacts__breadcrumbs .bc-breadcrumbs__link,
	.bc-service-contacts__breadcrumbs .bc-breadcrumbs__current {
		font-size: 14px;
		line-height: 1.35;
	}

	.bc-service-contacts__title {
		margin-bottom: 32px;
		font-size: 28px;
	}

	.bc-service-contacts__table {
		padding: 0 0 40px;
		width: calc(100% + 40px);
		max-width: none;
		margin-left: -20px;
		margin-right: -20px;
		box-sizing: border-box;
	}

	.bc-service-contacts__row {
		width: 100%;
		margin-left: 0;
		margin-right: 0;
	}

	.bc-service-contacts__row-inner {
		flex-direction: column;
		align-items: stretch;
		gap: 12px;
		padding: 20px;
		max-width: 100%;
		box-sizing: border-box;
	}

	.bc-service-contacts__row-inner--social {
		flex-direction: column;
		align-items: stretch;
	}

	.bc-service-contacts__row-inner .bc-service-contacts__term,
	.bc-service-contacts__row-inner .bc-service-contacts__value {
		flex: none;
		width: 100%;
		max-width: 100%;
	}

	.bc-service-contacts__value--socials {
		width: 100%;
	}

	.bc-service-contacts__socials {
		justify-content: flex-start;
	}

	.bc-service-contacts__term {
		font-size: 1rem;
		line-height: 1.35;
		font-weight: 600;
	}

	.bc-service-contacts__value {
		font-size: 15px;
		line-height: 1.45;
		font-weight: 400;
	}

	.bc-service-contacts__social-link img {
		width: 34px;
		height: 34px;
	}
}

/* ---------- Мобилка 400–767px: две колонки в строке (перекрывает вертикаль из блока выше) ---------- */

@media (min-width: 460px) and (max-width: 767px) {
	.bc-service-contacts__row-inner {
		flex-direction: row;
		align-items: flex-start;
		gap: 12px;
	}

	.bc-service-contacts__row-inner--social {
		flex-direction: row;
		align-items: center;
	}

	.bc-service-contacts__row-inner .bc-service-contacts__term,
	.bc-service-contacts__row-inner .bc-service-contacts__value {
		flex: 1 1 0;
		min-width: 0;
		width: auto;
		max-width: none;
	}

	.bc-service-contacts__value--socials {
		width: auto;
		flex: 1 1 0;
		min-width: 0;
	}

	.bc-service-contacts__socials {
		justify-content: flex-end;
	}
}
