/* ===== STROM: страница «Контакты» (редизайн 2026) =====
   Токены и примитивы (.sh-wrap/.sh-eyebrow/.sh-lead/.sh-btn) приходят из home.css:
   контент обёрнут в .sh-home, поэтому здесь только блоки страницы, неймспейс sc-*.
   Все селекторы начинаются с .sh-home — на странице рядом живут Woodmart и
   Contact Form 7 со своими классами, пересекаться с ними нельзя. */

.sh-home.sc-page {
	padding-bottom: clamp(48px, 7vw, 96px);
	background: var(--ground);
	/* Сильный текст/ссылки — в один тон с заголовками. Переопределяем только на этой
	   странице: сам токен живёт в home.css и им же покрашена главная (уже на проде). */
	--ink-2: #232624;
}

/* ---------- HERO ---------- */
/* Верхний отступ небольшой: над hero уже стоит глобальный блок крошек. */
.sh-home .sc-hero {
	padding: clamp(10px, 1.6vw, 18px) 0 clamp(26px, 4vw, 44px);
}

.sh-home .sc-hero__title {
	margin: 0 0 14px;
	font-size: clamp(2rem, 4vw, 3.2rem);
	line-height: 1.04;
	letter-spacing: -.025em;
	color: var(--ink);
}

.sh-home .sc-hero__lead {
	max-width: 60ch;
}

/* ---------- КАРТОЧКИ + КАРТА ---------- */
.sh-home .sc-main__grid {
	display: grid;
	grid-template-columns: minmax(300px, 27%) 1fr;
	gap: clamp(14px, 1.6vw, 22px);
	align-items: stretch;
}

.sh-home .sc-cards {
	display: grid;
	gap: clamp(10px, 1.1vw, 14px);
	align-content: start;
}

.sh-home .sc-card {
	display: flex;
	gap: 14px;
	padding: 18px 20px;
	background: var(--ground);
	border: 1px solid var(--line-2);
	border-radius: 10px;
	transition: border-color .25s var(--ease), box-shadow .25s var(--ease);
}

.sh-home .sc-card:hover {
	border-color: var(--line);
	box-shadow: 0 12px 26px -20px rgba(16, 26, 21, .5);
}

.sh-home .sc-card__ico {
	display: grid;
	place-items: center;
	flex: 0 0 auto;
	width: 42px;
	height: 42px;
	border-radius: 50%;
	background: var(--green-soft);
	color: var(--green);
}

.sh-home .sc-ico {
	width: 21px;
	height: 21px;
}

.sh-home .sc-card__body {
	min-width: 0;
}

.sh-home .sc-card__label {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 8px;
	margin: 0 0 6px;
	color: var(--text);
	font-size: .84rem;
	font-weight: 500;
	letter-spacing: 0;
}

.sh-home .sc-card__value {
	margin: 0;
	color: var(--ink);
	font-size: 1rem;
	font-weight: 500;
	line-height: 1.45;
}

.sh-home .sc-card__value + .sc-card__value {
	margin-top: 2px;
}

.sh-home .sc-card__value a {
	transition: color .25s var(--ease);
}

.sh-home .sc-card__value a:hover {
	color: var(--green);
}

.sh-home .sc-card__note {
	margin: 4px 0 0;
	color: var(--text);
	font-size: .84rem;
}

/* min-height/height сбрасываем: Woodmart даёт всем button min-height 42px, и
   кнопка «Скопировать» вылезала на 20px ниже, чем ссылка-близнец в соседней карточке. */
.sh-home .sc-card__link {
	display: inline-flex;
	align-items: center;
	gap: .45em;
	margin-top: 10px;
	padding: 0;
	min-height: 0;
	height: auto;
	background: none;
	border: 0;
	color: var(--green);
	font-size: .88rem;
	font-weight: 600;
	cursor: pointer;
	transition: color .25s var(--ease);
}

.sh-home .sc-card__link:hover {
	color: var(--green-hover);
}

.sh-home .sc-card__arw {
	transition: transform .25s var(--ease);
}

.sh-home .sc-card__link:hover .sc-card__arw {
	transform: translateX(3px);
}

/* Бейдж «Открыто сейчас» / «Закрыто» — включает JS по времени МСК. */
.sh-home .sc-badge {
	display: inline-flex;
	align-items: center;
	gap: .4em;
	padding: 2px 9px 2px 7px;
	border-radius: 999px;
	background: var(--green-soft);
	color: var(--green-dark);
	font-size: .74rem;
	font-weight: 600;
	white-space: nowrap;
}

.sh-home .sc-badge::before {
	content: "";
	width: 6px;
	height: 6px;
	border-radius: 50%;
	background: currentColor;
}

.sh-home .sc-badge--closed {
	background: rgba(35, 38, 36, .06);
	color: var(--text);
}

/* Карта */
.sh-home .sc-map {
	position: relative;
	overflow: hidden;
	min-height: 420px;
	border: 1px solid var(--line-2);
	border-radius: 10px;
	/* Тинт под iframe: пока Яндекс не отдал плитки, блок не выглядит белой дырой. */
	background: var(--ground-3);
}

.sh-home .sc-map__frame {
	display: block;
	width: 100%;
	height: 100%;
	min-height: 420px;
	border: 0;
}

/* Левый ВЕРХ, а не низ: в левом нижнем углу виджета Яндекса живёт его собственная
   кнопка «Открыть в Яндекс Картах», наша её перекрывала. */
.sh-home .sc-map__route {
	position: absolute;
	left: 16px;
	top: 16px;
	display: inline-flex;
	align-items: center;
	gap: .5em;
	padding: 10px 16px;
	border-radius: 999px;
	background: var(--ground);
	color: var(--ink);
	font-size: .86rem;
	font-weight: 600;
	box-shadow: 0 10px 24px -12px rgba(16, 26, 21, .45);
	transition: transform .25s var(--ease), color .25s var(--ease);
}

.sh-home .sc-map__route:hover {
	transform: translateY(-2px);
	color: var(--green);
}

.sh-home .sc-map__route .sc-ico {
	width: 18px;
	height: 18px;
}

/* ---------- CTA ---------- */
.sh-home .sc-cta {
	padding: clamp(14px, 1.8vw, 22px) 0 0;
}

.sh-home .sc-cta__box {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 20px clamp(20px, 3vw, 40px);
	padding: clamp(22px, 3vw, 34px) clamp(22px, 3.4vw, 40px);
	border-radius: 10px;
	background: var(--green);
	color: var(--on-green);
}

.sh-home .sc-cta__title {
	margin: 0 0 6px;
	font-size: clamp(1.3rem, 2.1vw, 1.75rem);
	line-height: 1.15;
	color: var(--on-green);
}

.sh-home .sc-cta__sub {
	margin: 0;
	max-width: 60ch;
	color: var(--on-green-2);
	font-size: 1rem;
}

.sh-home .sc-cta__btn {
	flex: 0 0 auto;
	text-transform: none;
	font-size: .92rem;
	letter-spacing: 0;
}

/* ---------- РЕКВИЗИТЫ ---------- */
.sh-home .sc-legal {
	padding: clamp(14px, 1.8vw, 22px) 0 0;
}

.sh-home .sc-legal__box {
	padding: clamp(22px, 2.8vw, 32px) clamp(22px, 3vw, 36px) clamp(14px, 2vw, 22px);
	border: 1px solid rgba(206, 229, 220, 1);
	border-radius: 10px;
	background: var(--ground);
}

.sh-home .sc-legal__title {
	margin: 0 0 clamp(14px, 1.8vw, 22px);
	font-size: clamp(1.15rem, 1.7vw, 1.4rem);
	color: var(--ink);
}

.sh-home .sc-legal__list {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 4px clamp(24px, 4vw, 64px);
	margin: 0;
}

.sh-home .sc-legal__row {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	padding: 12px 0;
	border-bottom: 1px solid var(--line-2);
}

.sh-home .sc-legal__key {
	color: var(--text);
	font-size: .92rem;
}

.sh-home .sc-legal__val {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	margin: 0;
	color: var(--ink);
	font-size: .98rem;
	font-weight: 600;
	text-align: right;
}

/* ---------- КОПИРОВАНИЕ ---------- */
.sh-home .sc-copy--inline {
	margin: 0;
	color: var(--green);
	font-size: .8rem;
	font-weight: 600;
}

.sh-home .sc-copy.is-copied {
	color: var(--green-dark);
}

/* ---------- ФОРМА ---------- */
.sh-home .sc-form {
	padding: clamp(14px, 1.8vw, 22px) 0 0;
}

.sh-home .sc-form__box {
	padding: clamp(22px, 3vw, 36px);
	border: 1px solid rgba(206, 229, 220, 1);
	border-radius: 10px;
	background: var(--ground);
}

.sh-home .sc-form__title {
	margin: 0 0 10px;
	font-size: clamp(1.3rem, 2.1vw, 1.75rem);
	color: var(--ink);
}

/* Отступ строки MAX от полей формы. Своё правило в max-line.css перебивается
   сбросом `.sh-home p{margin:0}` из home.css (специфичность 0,1,1 против 0,1,0),
   поэтому задаём здесь — этот файл грузится после home.css. */
.sh-home .sc-max-line {
	margin-bottom: 30px;
}

/* CF7 внутри карточки: поля перебиваем адресно, СЕТКУ НЕ ТРОГАЕМ.
   Woodmart сам оборачивает поля в .wd-grid-g (grid с auto-fit колонками) — свой
   grid на form сжимал эту обёртку в одну узкую колонку. Раскладку оставляем теме,
   стилизуем только сами контролы. */
.sh-home .sc-form__cf7 .wd-grid-g > p {
	margin: 0;
}

.sh-home .sc-form__cf7 input[type="text"],
.sh-home .sc-form__cf7 input[type="email"],
.sh-home .sc-form__cf7 input[type="tel"],
.sh-home .sc-form__cf7 textarea {
	width: 100%;
	min-height: 52px;
	padding: 14px 16px;
	border: 1px solid var(--line);
	border-radius: 8px;
	background: var(--ground);
	color: var(--ink);
	font-family: var(--sans);
	font-size: 1rem;
	transition: border-color .25s var(--ease), box-shadow .25s var(--ease);
}

.sh-home .sc-form__cf7 textarea {
	min-height: 132px;
	resize: vertical;
}

.sh-home .sc-form__cf7 input::placeholder,
.sh-home .sc-form__cf7 textarea::placeholder {
	color: var(--text);
	opacity: 1;
}

.sh-home .sc-form__cf7 input[type="text"]:focus,
.sh-home .sc-form__cf7 input[type="email"]:focus,
.sh-home .sc-form__cf7 input[type="tel"]:focus,
.sh-home .sc-form__cf7 textarea:focus {
	outline: none;
	border-color: var(--green);
	box-shadow: 0 0 0 3px rgba(14, 126, 80, .12);
}

.sh-home .sc-form__cf7 input[type="submit"] {
	display: inline-flex;
	min-height: 54px;
	padding: 0 30px;
	border: 0;
	border-radius: var(--r);
	background: var(--green);
	color: #fff;
	font-family: var(--sans);
	font-size: .92rem;
	font-weight: 600;
	cursor: pointer;
	transition: background .25s var(--ease), transform .25s var(--ease);
}

.sh-home .sc-form__cf7 input[type="submit"]:hover {
	background: var(--green-hover);
	transform: translateY(-2px);
}

.sh-home .sc-form__cf7 .wpcf7-list-item {
	margin: 0;
}

.sh-home .sc-form__cf7 label {
	display: inline-flex;
	align-items: center;
	gap: .6em;
	color: var(--text);
	font-size: .92rem;
}

.sh-home .sc-form__cf7 input[type="checkbox"] {
	width: 18px;
	height: 18px;
	accent-color: var(--green);
}

.sh-home .sc-form__cf7 a {
	color: var(--green);
	text-decoration: underline;
}

.sh-home .sc-form__cf7 .wpcf7-not-valid-tip {
	margin-top: 6px;
	color: #c0392b;
	font-size: 12px;
}

.sh-home .sc-form__cf7 .wpcf7-response-output {
	margin: 16px 0 0;
	padding: 12px 16px;
	border-radius: 8px;
	border: 1px solid var(--line);
	font-size: 12px;
}

/* ---------- АДАПТИВ ---------- */
@media (max-width: 1024px) {
	.sh-home .sc-main__grid {
		grid-template-columns: 1fr;
	}

	.sh-home .sc-cards {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.sh-home .sc-map,
	.sh-home .sc-map__frame {
		min-height: 360px;
	}
}

@media (max-width: 767px) {
	.sh-home .sc-cards {
		grid-template-columns: 1fr;
	}

	.sh-home .sc-legal__list {
		grid-template-columns: 1fr;
	}

	.sh-home .sc-legal__row {
		align-items: flex-start;
		flex-direction: column;
		gap: 4px;
	}

	.sh-home .sc-legal__val {
		text-align: left;
	}

	.sh-home .sc-cta__box {
		flex-direction: column;
		align-items: flex-start;
	}

	.sh-home .sc-cta__btn {
		width: 100%;
	}

	.sh-home .sc-map,
	.sh-home .sc-map__frame {
		min-height: 300px;
	}
}
