/* Редизайн 2026: компоненты, общие для главной и внутренних страниц
   (заголовки, плитки, стрелки, блок контактов, форма консультации). */

body {
	background: #fff;
}
.dz .dz-section {
	margin-top: 64px;
}
.dz .dz-title {
	margin: 0 0 24px;
	font-weight: 600;
	font-size: clamp(28px, 2.8vw, 40px);
	line-height: 1.17;
	color: var(--dz-text);
}
.dz-home ul,
.dz-contacts ul {
	margin: 0;
	padding: 0;
	list-style: none;
}

/* Плитка с бирюзовой рамкой и толстой нижней границей */
.dz-tile {
	border: 2px solid var(--dz-primary);
	border-bottom-width: 5px;
	border-radius: var(--dz-radius-tile);
	background: var(--dz-tile-bg);
}
.dz-tile--filled {
	background: var(--dz-light-bg);
}
/* у иконок и фото товаров белая подложка — растворяем её на цветном фоне */
.dz-tile img {
	mix-blend-mode: multiply;
}

/* Круглая стрелка «→» */
.dz-arrow {
	position: relative;
	display: inline-block;
	flex: 0 0 auto;
	width: 29px;
	height: 29px;
	padding: 0;
	border: 1px solid var(--dz-primary);
	border-radius: 50%;
	background: #fff;
	cursor: pointer;
	transition: background-color .2s;
}
.dz-arrow::before,
.dz-arrow::after {
	content: '';
	position: absolute;
	top: 50%;
	background: var(--dz-primary);
}
.dz-arrow::before {
	left: 6px;
	right: 6px;
	height: 1px;
}
.dz-arrow::after {
	right: 6px;
	width: 6px;
	height: 6px;
	border-top: 1px solid var(--dz-primary);
	border-right: 1px solid var(--dz-primary);
	background: none;
	transform: translateY(-50%) rotate(45deg);
}
.dz-arrow--prev {
	transform: scaleX(-1);
}
.dz-round-icon {
	display: inline-flex;
	flex: 0 0 auto;
	align-items: center;
	justify-content: center;
	width: 35px;
	height: 35px;
	border-radius: 50%;
	background: var(--dz-primary);
}
.dz-round-icon img {
	max-width: 20px;
	max-height: 20px;
	filter: brightness(0) invert(1);
}
/* Контакты */
.dz-contacts {
	display: grid;
	grid-template-columns: 454fr 417fr 463fr;
	gap: 14px;
}
.dz-contacts__map,
.dz-contacts__photo,
.dz-contacts__card {
	min-height: 278px;
	border-radius: 15px;
	overflow: hidden;
}
.dz-contacts__map img,
.dz-contacts__photo {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.dz-contacts__map:hover img {
	opacity: .9;
}
.dz-contacts__card {
	display: flex;
	flex-direction: column;
	justify-content: center;
	gap: 22px;
	padding: 28px 25px;
	background: var(--dz-light-bg);
	font-weight: 500;
	font-size: 20px;
	line-height: 1.3;
}
.dz-contacts__card ul {
	display: flex;
	flex-direction: column;
	gap: 18px;
}
.dz-contacts__card li {
	display: grid;
	grid-template-columns: 34px 1fr;
	gap: 16px;
	align-items: center;
}
.dz-contacts__card li img {
	justify-self: center;
}
.dz-contacts__card li span {
	display: flex;
	flex-direction: column;
}
.dz-contacts__card a:hover {
	color: var(--dz-primary-dark);
}
.dz-contacts__card .dz-btn {
	align-self: flex-start;
	min-width: 254px;
}

/* Консультация: фото уходит за правый край экрана */
.dz-consult {
	position: relative;
	margin-top: 64px;
	padding: 43px 0 38px;
	background: var(--dz-light-bg);
	overflow: hidden;
}
.dz-consult__form {
	position: relative;
	z-index: 1;
	max-width: 474px;
}
.dz-consult__form .dz-title {
	margin-bottom: 18px;
}
.dz-consult__lead {
	margin: 0 0 14px;
	font-weight: 500;
	font-size: 25px;
	line-height: 1;
}
.dz-consult__form .dz-btn {
	min-width: 166px;
}
.dz-consult__photo {
	position: absolute;
	top: 43px;
	bottom: 43px;
	left: max(calc(50% - 676px + 529px), calc(var(--dz-gutter) + 529px));
	width: auto;
	max-width: none;
	height: calc(100% - 86px);
	min-width: 60%;
	border-radius: var(--dz-radius) 0 0 var(--dz-radius);
	object-fit: cover;
	object-position: left center;
}

@media (max-width: 1199px) {
	.dz-contacts { grid-template-columns: 1fr 1fr; }
	.dz-contacts__card { grid-column: 1 / -1; }
}
@media (max-width: 991px) {
	.dz-consult__photo {
		position: static;
		display: block;
		width: 100%;
		min-width: 0;
		height: auto;
		max-height: 360px;
		margin-top: 32px;
		border-radius: var(--dz-radius);
	}
	.dz-consult__form { max-width: none; }
}
@media (max-width: 767px) {
	.dz .dz-section { margin-top: 48px; }
	.dz-contacts { grid-template-columns: 1fr; }
	.dz-contacts__map, .dz-contacts__photo { min-height: 220px; }
	.dz-contacts__card { font-size: 17px; padding: 24px 18px; }
	.dz-contacts__card .dz-btn { width: 100%; min-width: 0; }
	.dz-consult { padding: 36px 0; }
	.dz-consult__lead { font-size: 19px; line-height: 1.2; }
	.dz-consult__form .dz-btn { width: 100%; }
}
