/* Страница «Контакты» (ТЗ п.8): две колонки, компактная форма, карта под блоком.
   Свёрстана Gutenberg-блоками (core/group с классами ss-*). Все селекторы с префиксом
   .wp-block-group.ss-contacts — специфичность (0,2,0), чтобы перебить base.css Woodmart
   `:is(.entry-content,.is-layout-flow,…)>*{margin-block:0 20px}` на детях групп. */
.wp-block-group.ss-contacts { padding: 8px 0 40px; }
/* ресет отступов блоков-групп (base.css даёт 20px снизу каждому ребёнку .is-layout-flow) */
.wp-block-group.ss-contacts .wp-block-group,
.wp-block-group.ss-contacts .ss-map { margin-bottom: 0; }

.wp-block-group.ss-contacts .ss-contacts__grid {
	display: grid;
	grid-template-columns: minmax(0, 1.15fr) minmax(0, 0.85fr);
	gap: 40px 64px;
	align-items: start;
	margin-bottom: 40px;
}
.wp-block-group.ss-contacts .ss-h {
	font-size: 13px;
	font-weight: 500;
	letter-spacing: 0.16em;
	text-transform: uppercase;
	margin: 0 0 12px;
	padding-bottom: 10px;
	border-bottom: 1px solid var(--ss-line);
}
.wp-block-group.ss-contacts .ss-lead { color: var(--ss-muted); font-size: 13px; margin: 0 0 18px; }
.wp-block-group.ss-contacts p { margin-bottom: 0; }

/* магазины */
.wp-block-group.ss-contacts .ss-store {
	display: grid;
	grid-template-columns: 112px minmax(0, 1fr);
	gap: 18px;
	padding: 14px 0;
	border-bottom: 1px solid var(--ss-line);
}
.wp-block-group.ss-contacts .ss-store:last-child { border-bottom: 0; }
.wp-block-group.ss-contacts .ss-store__photo { aspect-ratio: 4 / 5; overflow: hidden; background: #E5E0D9; }
.wp-block-group.ss-contacts .ss-store__photo .wp-block-image { margin: 0; height: 100%; }
.wp-block-group.ss-contacts .ss-store__photo img { width: 100%; height: 100%; object-fit: cover; display: block; }
.wp-block-group.ss-contacts .ss-store__name {
	font-size: 15px;
	font-weight: 400;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	margin: 2px 0 6px;
}
.wp-block-group.ss-contacts .ss-store__addr { font-size: 14px; }
.wp-block-group.ss-contacts .ss-store__hours { font-size: 13px; color: var(--ss-muted); margin-top: 2px; }
.wp-block-group.ss-contacts .ss-store__links { font-size: 12px; letter-spacing: 0.04em; margin-top: 8px; }
.wp-block-group.ss-contacts .ss-store__links a { text-decoration: underline; text-underline-offset: 3px; }
.wp-block-group.ss-contacts .ss-sep { color: var(--ss-muted); margin: 0 8px; }

/* контакты: группа .ss-dl — пары абзацев .ss-dt (подпись) / .ss-dd (значение) */
.wp-block-group.ss-contacts .ss-channels { margin-top: 36px; }
.wp-block-group.ss-contacts .ss-dl {
	display: grid;
	grid-template-columns: 110px minmax(0, 1fr);
	row-gap: 8px;
	margin: 0;
	font-size: 14px;
}
.wp-block-group.ss-contacts .ss-dl :is(dt, .ss-dt) { color: var(--ss-muted); font-weight: 600; /* как dl dt в base.css Woodmart — было в WPB-версии */ font-size: 12px; letter-spacing: 0.06em; text-transform: uppercase; padding-top: 2px; }
.wp-block-group.ss-contacts .ss-dl :is(dd, .ss-dd) { margin: 0; }

/* форма CF7: имя + контакт в две колонки, поля без заливки (базовые стили в style.css) */
.wp-block-group.ss-contacts .wpcf7 form { margin: 0; }
.wp-block-group.ss-contacts .ss-cf7-row { display: grid; grid-template-columns: 1fr 1fr; gap: 0 20px; }
.wp-block-group.ss-contacts .wpcf7-form-control-wrap { display: block; margin-bottom: 14px; }
.wp-block-group.ss-contacts .wpcf7 :is(input[type="text"], input[type="email"], input[type="tel"], textarea) {
	width: 100%;
	height: 42px;
	font-size: 14px;
}
.wp-block-group.ss-contacts .wpcf7 textarea { height: auto; min-height: 96px; }
.wp-block-group.ss-contacts .wpcf7-submit { margin-top: 4px; }
.wp-block-group.ss-contacts .wpcf7-spinner { display: none; }
.wp-block-group.ss-contacts .wpcf7-not-valid-tip { font-size: 12px; color: var(--ss-accent); margin-top: 4px; }
.wp-block-group.ss-contacts .wpcf7-response-output {
	margin: 14px 0 0;
	padding: 10px 0;
	border: 0;
	border-top: 1px solid var(--ss-line);
	font-size: 13px;
	color: var(--ss-muted);
}
.wp-block-group.ss-contacts .wpcf7 form.sent .wpcf7-response-output { color: var(--ss-text); }

/* карта — вспомогательный элемент, компактная */
.wp-block-group.ss-contacts .ss-map { border: 1px solid var(--ss-line); line-height: 0; }
.wp-block-group.ss-contacts .ss-map iframe { width: 100%; height: 320px; display: block; filter: saturate(0.6); }

/* плейсхолдеры для Benny — заметные, снять после заполнения */
.wp-block-group.ss-contacts .ss-ph {
	display: flex; align-items: center; justify-content: center;
	width: 100%; height: 100%;
	padding: 8px; text-align: center;
	font-size: 11px; line-height: 1.3; color: var(--ss-accent);
	border: 1px dashed var(--ss-accent);
}
.wp-block-group.ss-contacts .ss-todo { color: var(--ss-accent); }

/* телефон: магазины → контакты → форма → карта (естественный порядок DOM) */
@media (max-width: 1024px) {
	.wp-block-group.ss-contacts .ss-contacts__grid { gap: 32px 40px; }
}
@media (max-width: 767px) {
	.wp-block-group.ss-contacts .ss-contacts__grid { grid-template-columns: 1fr; gap: 32px; margin-bottom: 28px; }
	.wp-block-group.ss-contacts .ss-store { grid-template-columns: 88px minmax(0, 1fr); gap: 14px; }
	.wp-block-group.ss-contacts .ss-channels { margin-top: 28px; }
	.wp-block-group.ss-contacts .ss-dl { grid-template-columns: 90px minmax(0, 1fr); }
	.wp-block-group.ss-contacts .ss-cf7-row { grid-template-columns: 1fr; gap: 0; }
	.wp-block-group.ss-contacts .ss-map iframe { height: 260px; }
}

/* правки 08.09: фото магазинов убраны — карточка магазина в одну колонку, текст от левого края */
.wp-block-group.ss-contacts .ss-store { grid-template-columns: minmax(0, 1fr); gap: 0; padding: 18px 0; }
