/*
 * Стили темы zapexpert — один файл.
 * 1) база старой темы: normalize, сетка страницы, текст статей, комментарии, сайдбар, промокоды;
 * 2) дизайн 2026 (шрифт Onest, токены --zx-*, шапка, подвал, карточки, разделы).
 * Второй блок перекрывает первый — порядок важен.
 */

/* ===== 1. База старой темы ===== */

/* reset */html{box-sizing:border-box}*,:after,:before{box-sizing:inherit}a,abbr,acronym,address,applet,article,aside,audio,b,big,blockquote,body,canvas,caption,center,cite,code,dd,del,details,dfn,div,dl,dt,embed,fieldset,figcaption,figure,footer,form,h1,h2,h3,h4,h5,h6,header,hgroup,html,iframe,img,ins,kbd,label,legend,li,mark,menu,nav,object,ol,output,p,pre,q,ruby,s,samp,section,small,span,strike,strong,sub,summary,sup,table,tbody,td,tfoot,th,thead,time,tr,tt,u,ul,var,video{margin:0;padding:0;border:0;font:inherit;vertical-align:baseline}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}table{border-collapse:collapse;border-spacing:0}:focus{outline:0}/* normalize.css v3.0.3 | MIT License | github.com/necolas/normalize.css */html{font-family:sans-serif;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{margin:0}article,aside,details,figcaption,figure,footer,header,hgroup,main,menu,nav,section,summary{display:block}audio,canvas,progress,video{display:inline-block;vertical-align:baseline}audio:not([controls]){display:none;height:0}[hidden],template{display:none}a{background-color:transparent}a:active,a:hover{outline:0}abbr[title]{border-bottom:1px dotted}b,strong{font-weight:700}dfn{font-style:italic}mark{background:#ff0;color:#000}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sup{top:-.5em}sub{bottom:-.25em}img{border:0;vertical-align:bottom}svg:not(:root){overflow:hidden}figure{margin:1em 40px}hr{box-sizing:content-box;height:0}pre{overflow:auto}code,kbd,pre,samp{font-family:monospace,monospace;font-size:1em}button,input,optgroup,select,textarea{color:inherit;font:inherit;margin:0}button{overflow:visible}button,select{text-transform:none}button,html input[type=button],input[type=reset],input[type=submit]{-webkit-appearance:button;cursor:pointer}button[disabled],html input[disabled]{cursor:default}button::-moz-focus-inner,input::-moz-focus-inner{border:0;padding:0}input{line-height:normal}input[type=checkbox],input[type=radio]{box-sizing:border-box;padding:0}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{height:auto}input[type=search]{-webkit-appearance:textfield}input[type=search]::-webkit-search-cancel-button,input[type=search]::-webkit-search-decoration{-webkit-appearance:none}fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}legend{border:0;padding:0}textarea{overflow:auto}optgroup{font-weight:700}table{border-collapse:collapse;border-spacing:0}td,th{padding:0}/* end normalize */

body {
	color: #36425E;
	background: #FFF;
	font: 16px/1.22 'Helvetica Neue', sans-serif;
}

a {
	color: #36425E;
}

a:hover {
	text-decoration: none;
}

p {
	margin: 0 0 22px;
}

.aligncenter,
div.aligncenter {
	display: block;
	margin-right: auto;
	margin-left: auto;
}

.alignleft {
	float: left;
}

img.alignleft,
.wp-caption.alignleft {
	margin: 5px 25px 10px 0;
}

.alignright {
	float: right;
}

img.alignright,
.wp-caption.alignright {
	margin: 5px 0 10px 25px;
}

.container {
	overflow: hidden;
	min-width: 320px;
	padding: 0 10px;
}

.wrapper {
	max-width: 1200px;
	margin: 0 auto;
}

/* Middle
-----------------------------------------------------------------------------*/

.middle {
	padding: 35px 0;
}

.middle:after {
	content: '';
	display: table;
	clear: both;
}

.content {
	float: left;
	width: calc(100% - 30.83% + 1px);
	margin: 0 -1px 0 0;
	padding: 0 40px 0 0;
	border-right: 1px solid #BEBEBE;
}

.no-sidebar .content {
	float: none;
	width: 100%;
	margin: 0;
	padding: 0;
	border: none;
}

.breadcrumbs {
	margin: 0 0 20px;
}

.breadcrumbs a {
	text-decoration: none;
}

.breadcrumbs .home {
	padding: 0 0 0 20px;
	background: url('data:image/gif;base64,R0lGODlhCwAKAIABADZCXv///yH5BAEAAAEALAAAAAALAAoAAAIYTGBoewfKHnrMLZpgtk5R34QgKJadJAUFADs=') no-repeat 0 2px;
}

.breadcrumbs .sep {
	position: relative;
	display: inline-block;
	width: 3px;
	height: 5px;
	margin: 7px 5px 0 6px;
	vertical-align: top;
	text-indent: -9999px;
	border-left: 1px solid #36425E;
}

.breadcrumbs .sep:before,
.breadcrumbs .sep:after {
	content: '';
	position: absolute;
	width: 1px;
	background: #36425E;
}

.breadcrumbs .sep:before {
	top: 1px;
	bottom: 1px;
	left: 0;
}

.breadcrumbs .sep:after {
	top: 2px;
	bottom: 2px;
	left: 1px;
}

.headline,
.cat-desc h1 {
	margin: -7px 0 20px;
	font-size: 42px;
}

.pagination {
	text-align: center;
}

.pagination a,
.pagination span {
	display: inline-block;
	padding: 0 3px;
	vertical-align: middle;
	text-decoration: none;
	color: #686868;
	font-size: 21px;
}

.pagination a:hover {
	text-decoration: underline;
}

.pagination .current {
	font-weight: bold;
}

.pagination + .cat-desc {
	margin: 30px 0 0;
}

.post {
	margin: 0 0 24px;
}

.post:last-child {
	margin-bottom: 0;
}

.post--home {
	margin: 0 0 50px;
}

.post--home .post__entry {
	color: #686868;
	font-size: 21px;
}

.post__headline {
	margin: 0 0 22px;
	font-size: 42px;
	line-height: 1;
}

.post__entry {
	font-size: 21px;
}

.post__entry:after {
	content: '';
	display: table;
	clear: both;
}

.post__entry > :last-child {
	margin-bottom: 0;
}

.post__entry h2,
.post__entry h3,
.post__entry h4,
.post__entry h5,
.post__entry h6 {
	margin: 30px 0 22px;
	font-size: 37px;
	line-height: 1;
}

.post__entry h2:first-child,
.post__entry h3:first-child,
.post__entry h4:first-child,
.post__entry h5:first-child,
.post__entry h6:first-child {
	margin-top: 0;
}

.post__entry h3 {
	font-size: 34px;
}

.post__entry h4 {
	font-size: 30px;
}

.post__entry h5 {
	font-size: 28px;
}

.post__entry h6 {
	font-size: 26px;
}

.post__entry li {
	margin: 0 0 6px;
	list-style: none;
}

.post__entry li ul,
.post__entry li ol {
	margin-top: 6px;
	margin-bottom: 0;
}

.post__entry ol {
	counter-reset: li;
	display: table;
	margin: 0 0 22px;
	padding: 0 0 0 40px;
}

.post__entry ol > li {
	position: relative;
}

.post__entry ol > li:before {
	content: counter(li) '.';
	counter-increment: li;
	position: absolute;
	top: 0;
	left: -40px;
	width: 28px;
	text-align: right;
	color: #AE3045;
}

.post__entry ul {
	display: table;
	margin: 0 0 22px;
	padding: 0 0 0 40px;
}

.post__entry ul > li {
	position: relative;
}

.post__entry ul > li:before {
	content: '';
	position: absolute;
	top: 6px;
	left: -25px;
	width: 11px;
	height: 11px;
	background: #36425E;
}

.post__entry .adaptive-table {
	overflow: auto;
	max-width: 100%;
	margin: 25px 0;

	-webkit-overflow-scrolling: touch;
}

.post__entry .adaptive-table table {
	margin: 0;
}

.post__entry table {
	width: 100%;
}

.post__entry th,
.post__entry td {
	padding: 6px 10px;
	border: 1px solid #DDD;
}

.post__entry img {
	max-width: 100%;
	height: auto;
}

#toc_container {
	margin: 25px 0;
	padding: 20px 40px;
	border-radius: 3px;
	background: #F0F0F0;
}

#toc_container .toc_title {
	margin: 0;
	font-size: 26px;
}

#toc_container ul {
	margin: 13px 0 5px -15px;
}

#toc_container ul ul {
	margin-top: 17px;
	margin-bottom: 0;
}

#toc_container li {
	margin: 0;
}

#toc_container li + li {
	margin: 17px 0 0;
}

.wp-caption {
	background: #F0F0F0;
}

.wp-caption.alignnone,
.wp-caption.aligncenter {
	margin-bottom: 25px;
}

.wp-caption-text {
	padding: 13px 10px;
	text-align: center;
	font-size: 16px;
}

.related {
	margin: 0 0 10px;
}

.related .headline {
	font-size: 37px;
}

.reviews {
	margin: 0 0 50px;
}

.reviews .headline {
	font-size: 37px;
}

.reviews__items {
	padding: 30px 50px;
	border: 3px solid #36425E;
	background: #F0F0F0;
}

.reviews-item {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-webkit-align-items: center;
	align-items: center;
	-ms-flex-align: center;
	font-size: 21px;
}

.reviews-item:not(:first-child) {
	margin: 20px 0 0;
}

.reviews-item__image {
	margin: 0 20px 0 0;
}

.reviews-item__title {
	-webkit-box-flex: 1;
	-webkit-flex: 1;
	-ms-flex: 1;
	flex: 1;
	padding: 1px 0 0;
}

.reviews-item__title a {
	text-decoration: none;
}

.reviews-item__title a:hover {
	text-decoration: underline;
}

.reviews-item__comments {
	position: relative;
	width: 63px;
	height: 27px;
	margin: 0 0 0 20px;
	text-align: center;
	color: #FFF;
	border-radius: 4px;
	background: #36425E;
	line-height: 29px;
}

.reviews-item__comments:after {
	content: '';
	position: absolute;
	bottom: -8px;
	left: 50%;
	width: 15px;
	height: 8px;
	margin-left: -10px;
	background: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAA8AAAAICAYAAAAm06XyAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAI1JREFUeNpiNHOKY8ACtgGxJwNucB6Ii5iwSETg0fgIiJOA2ASID7CgSQoA8QQsmr4AcQcQ9wHxd5ggumaQAnEk/h8gngXELUD8HN1EZM3WQJyGxN8BxMVAfA2Xx2GaWYF4JhAzQgMDpGk/AwEA01wKxPxAnAzEC4D4HwMRAKRZAoh/ArEacmAQAwACDACYjBdB7lQE1wAAAABJRU5ErkJggg==');
}



















.form {
	font-size: 21px;
}

.form-row {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	margin: 0 -10px;
}

.form-row__field {
	-webkit-box-flex: 1;
	-webkit-flex: 1 0 200px;
	-ms-flex: 1 0 200px;
	flex: 1 0 200px;
	margin: 0 10px;
}

.form__field {
	display: block;
	width: 100%;
	margin: 0 0 20px;
	padding: 12px 20px;
	border: none;
	background: #F0F0F0;
}

.form__field::-webkit-input-placeholder {
	color: #AEADAD;
}

.form__field:-ms-input-placeholder {
	color: #AEADAD;
}

.form__button {
	height: 45px;
	padding: 0 30px;
	-webkit-transition: .1s;
	transition: .1s;
	color: #FFF;
	border: none;
	background: #36425E;
}

.form__button:hover {
	background: #435275;
}

/* Sidebar
-----------------------------------------------------------------------------*/

.sidebar {
	float: right;
	width: 30.83%;
	padding: 0 0 0 35px;
	border-left: 1px solid #BEBEBE;
}

.sidebar > :last-child {
	margin-bottom: 0;
}

.sidebar__section {
	margin: 35px 0 35px;
}

.sidebar__nav {
	padding: 50px 25px;
	border: 3px solid #36425E;
	background: #F0F0F0;
	font-size: 21px;
}

.sidebar__nav li {
	list-style: none;
}

.sidebar__nav li:not(:first-child) {
	margin: 40px 0 0;
}

.sidebar__nav a {
	color: #686868;
}

.review {
	position: relative;
	padding: 25px;
	text-align: center;
	background: #F0F0F0;
}

.review .headline {
	margin: -10px 0 5px;
	font-size: 32px;
	font-weight: 600;
}

.review__link {
	display: block;
	text-decoration: none;
	color: #686868;
}

.review__link:hover {
	text-decoration: underline;
}

.review__image {
	max-width: 220px;
	margin: 0 auto 16px;
	background: #FFF;
}

.review__image img {
	display: block;
	width: 100%;
	height: auto;
}

.review__title {
	font-size: 27px;
}

.review__next {
	display: inline-block;
	height: 30px;
	margin: 15px 0 0;
	padding: 0 30px;
	cursor: pointer;
	-webkit-transition: .1s;
	transition: .1s;
	color: #FFF;
	border-radius: 10px;
	background: #36425E;
	font-size: 13px;
	line-height: 30px;
}

.review__next:hover {
	background: #435275;
}

.review__overlay {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	background: rgba(0,0,0,.75);
}

.loader {
	position: absolute;
	top: calc(50% - 25px);
	left: calc(50% - 25px);
	width: 50px;
	height: 50px;
	-webkit-animation: spin .75s infinite linear;
	animation: spin .75s infinite linear;
}

.loader:before {
	content: '';
	position: absolute;
	top: -2px;
	left: -2px;
	width: inherit;
	height: inherit;
	-webkit-animation: spin 1.5s infinite ease;
	animation: spin 1.5s infinite ease;
}

.loader,
.loader:before {
	border: 2px solid;
	border-color: transparent;
	border-top-color: #FFF;
	border-radius: 50%;
}

/* end slick slider */

@-webkit-keyframes spin {
	from {
		-webkit-transform: rotate(0deg);
		transform: rotate(0deg);
	}

	to {
		-webkit-transform: rotate(360deg);
		transform: rotate(360deg);
	}
}

@keyframes spin {
	from {
		-webkit-transform: rotate(0deg);
		transform: rotate(0deg);
	}

	to {
		-webkit-transform: rotate(360deg);
		transform: rotate(360deg);
	}
}

@media screen and (max-width: 1219px) {
	.wrapper {
		max-width: 1000px;
	}

	.content {
		padding: 0 30px 0 0;
	}

	.reviews__items {
		padding: 30px;
	}

	.sidebar {
		padding: 0 0 0 30px;
	}
}

@media screen and (max-width: 999px) {
	.wrapper {
		max-width: 748px;
	}

	.content {
		float: none;
		width: 100%;
		margin: 0;
		padding: 0;
		border: none;
	}

	.headline {
		font-size: 37px;
		line-height: 1;
	}

	.post--home .post__entry {
		font-size: 21px;
	}

	.post__entry ::-webkit-scrollbar {
		-webkit-appearance: none;
	}

	.post__entry ::-webkit-scrollbar:vertical {
		width: 12px;
	}

	.post__entry ::-webkit-scrollbar:horizontal {
		height: 12px;
	}

	.post__entry ::-webkit-scrollbar-thumb {
		border: 2px solid #FFF;
		border-radius: 10px;
		background: rgba(0,0,0,.5);
	}

	.post__entry ::-webkit-scrollbar-track {
		border-radius: 10px;
	}

	.sidebar {
		display: none;
	}

}

@media screen and (max-width: 767px) {
	.wrapper {
		max-width: 460px;
	}

}

@media screen and (max-width: 479px) {

	.headline {
		font-size: 32px;
	}



}

/* Блок promokod */
.promokod {
    border: 2px dashed #AE3045;
    border-radius: 4px;
    padding: 20px;
    margin: 25px 0;
    background-color: rgba(255, 255, 255, 0.7);
    max-width: 100%;
    font-family: inherit;
}

/* Элемент promokod__title */
.promokod__title {
    font-size: 16px;
    margin-bottom: 15px;
    color: #36425E;
    text-align: center;
    font-weight: 600;
    line-height: 1.22;
}

/* Элемент promokod__container */
.promokod__container {
    text-align: center;
    position: relative;
}

/* Элемент promokod__code */
.promokod__code {
    display: inline-block;
    background-color: #FFFFFF;
    padding: 12px 25px;
    border-radius: 3px;
    border: 1px solid #BEBEBE;
    font-family: monospace, monospace;
    font-size: 19px;
    font-weight: bold;
    color: #AE3045;
    cursor: pointer;
    transition: all 0.1s ease;
    user-select: all;
    margin-bottom: 8px;
}

/* Модификатор promokod__code--copied */
.promokod__code--copied {
    background-color: #36425E;
    border-color: #36425E;
    color: #FFFFFF;
}

/* Состояние hover для promokod__code */
.promokod__code:hover {
    background-color: #AE3045;
    color: #FFFFFF;
    border-color: #AE3045;
}

/* Элемент promokod__message */
.promokod__message {
    font-size: 12px;
    color: #36425E;
    margin-top: 5px;
    opacity: 0;
    transition: opacity 0.1s ease;
    font-weight: normal;
}

/* Модификатор promokod__message--visible */
.promokod__message--visible {
    opacity: 1;
}

/* Адаптивность */
@media (max-width: 767px) {
    .promokod {
        padding: 15px;
        margin: 20px 0;
    }

    .promokod__title {
        font-size: 14px;
    }

    .promokod__code {
        font-size: 17px;
        padding: 10px 20px;
    }
}

@media (max-width: 479px) {
    .promokod {
        padding: 12px;
    }

    .promokod__code {
        font-size: 16px;
        padding: 8px 16px;
        display: block;
    }
}


/* ===== 2. Дизайн 2026 ===== */

/* Шрифт Onest: SIL Open Font License 1.1, лицензия — assets/fonts/OFL-onest.txt. Вариативный файл на набор символов, веса 300–700. */
@font-face {
	font-family: "Onest";
	font-style: normal;
	font-weight: 300 700;
	font-display: swap;
	src: url("../fonts/onest-cyrillic.woff2") format("woff2");
	unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}

@font-face {
	font-family: "Onest";
	font-style: normal;
	font-weight: 300 700;
	font-display: swap;
	src: url("../fonts/onest-latin.woff2") format("woff2");
	unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* ==========================================================================
   Редизайн zapchasti.expert, 2026. Подключается после style.css и перекрывает его.
   Фирменные цвета сохранены: синий #36425E и винный #AE3045 (из «.эксперт»).
   ========================================================================== */

:root {
	--zx-ink: #36425e;
	--zx-ink-deep: #1f2638;
	--zx-ink-2: #687186;
	--zx-wine: #ae3045;
	--zx-wine-deep: #8e2536;
	--zx-mist: #f2f4f8;
	--zx-line: #dfe3ec;
	--zx-paper: #ffffff;

	--zx-f-display: "Onest", system-ui, -apple-system, "Segoe UI", sans-serif;
	--zx-f-body: "Onest", system-ui, -apple-system, "Segoe UI", sans-serif;
	/* подписи, счётчики, сноски — тем же шрифтом, цифры табличные */
	--zx-f-data: "Onest", system-ui, -apple-system, "Segoe UI", sans-serif;

	--zx-r-lg: 22px;
	--zx-r-md: 14px;
	--zx-r-sm: 10px;
	--zx-shadow: 0 10px 30px rgba(54, 66, 94, 0.08);
	--zx-wrap: 1240px;
	--zx-sidebar: 320px;
}

/* ---------- основа ---------- */

body {
	color: var(--zx-ink);
	background: var(--zx-paper);
	font: 400 17px/1.6 var(--zx-f-body);
	/* после font: сокращённое свойство font сбрасывает font-variant-numeric */
	font-variant-numeric: tabular-nums;
	-webkit-font-smoothing: antialiased;
}

a {
	color: var(--zx-ink);
	text-decoration-color: var(--zx-line);
	text-underline-offset: 3px;
}

a:hover {
	color: var(--zx-wine);
	text-decoration-color: currentColor;
}

a:focus-visible,
button:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible,
[role="button"]:focus-visible {
	outline: 3px solid var(--zx-wine);
	outline-offset: 2px;
}

::selection {
	background: rgba(174, 48, 69, 0.18);
}

.hidden {
	display: none !important;
}

/* ---------- каркас страницы ---------- */

.container {
	overflow: visible;
	overflow-x: clip;
	padding: 0 20px;
}

/* Контент по ширине совпадает с плашкой шапки: у неё 20px отступа с каждой стороны. */
.wrapper {
	max-width: calc(var(--zx-wrap) - 40px);
}

.middle {
	display: flex;
	align-items: flex-start;
	gap: 48px;
	padding: 32px 0 0;
}

.middle::after {
	display: none;
}

.homepage .middle {
	display: block;
}

.content,
.no-sidebar .content {
	float: none;
	flex: 1 1 auto;
	min-width: 0;
	width: auto;
	margin: 0;
	padding: 0;
	border: 0;
}

.sidebar {
	float: none;
	flex: 0 0 var(--zx-sidebar);
	width: var(--zx-sidebar);
	padding: 0;
	border: 0;
}

/* ---------- шапка: плавающая плашка ---------- */

.zx-header {
	position: relative;
	z-index: 20;
	max-width: var(--zx-wrap);
	margin: 16px auto 0;
	padding: 0 20px;
}

.zx-header__bar {
	display: flex;
	align-items: center;
	gap: 28px;
	padding: 10px 12px 10px 18px;
	background: var(--zx-paper);
	border: 1px solid var(--zx-line);
	border-radius: var(--zx-r-lg);
	box-shadow: var(--zx-shadow);
}

.zx-logo {
	display: flex;
	align-items: center;
	gap: 10px;
	flex-shrink: 0;
	color: var(--zx-ink);
	text-decoration: none;
}

.zx-logo:hover {
	color: var(--zx-ink);
}

.zx-logo__mark {
	width: 26px;
	height: auto;
}

.zx-logo__word {
	font: 500 19px/1 var(--zx-f-display);
	letter-spacing: -0.01em;
	white-space: nowrap;
}

.zx-logo__accent {
	color: var(--zx-wine);
}

/* меню марок; лишние пункты GreedyNav прячет под кнопку «ещё» */
.zx-nav {
	position: relative;
	display: flex;
	align-items: center;
	flex: 1 1 auto;
	min-width: 0;
}

.zx-nav__links {
	display: flex;
	flex: 1 1 auto;
	min-width: 0;
	margin: 0;
	/* Без JS (jQuery не загрузился) лишние пункты обрезаются внутри плашки, а не растягивают страницу.
	   Отступ — чтобы рамка фокуса не обрезалась. */
	overflow: hidden;
	padding: 3px;
	list-style: none;
}

.zx-nav__links > li,
.zx-nav__more > li {
	list-style: none;
	white-space: nowrap;
}

.zx-nav__links a {
	display: block;
	padding: 8px 11px;
	border-radius: var(--zx-r-sm);
	color: var(--zx-ink);
	font-size: 15px;
	font-weight: 500;
	text-decoration: none;
}

.zx-nav__links a:hover,
.zx-nav__links .current-menu-item > a,
.zx-nav__links .current-category-ancestor > a {
	background: var(--zx-mist);
	color: var(--zx-ink);
}

.zx-nav__toggle {
	display: flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	width: 40px;
	height: 40px;
	border-radius: var(--zx-r-sm);
	color: var(--zx-ink);
	cursor: pointer;
}

.zx-nav__toggle::before {
	content: "•••";
	font: 600 13px/1 var(--zx-f-data);
	letter-spacing: 1px;
}

.zx-nav__toggle:hover,
.zx-nav__toggle.active {
	background: var(--zx-mist);
}

.zx-nav__more {
	position: absolute;
	top: calc(100% + 10px);
	right: 0;
	min-width: 220px;
	margin: 0;
	padding: 8px;
	background: var(--zx-paper);
	border: 1px solid var(--zx-line);
	border-radius: var(--zx-r-md);
	box-shadow: var(--zx-shadow);
}

.zx-nav__more a {
	display: block;
	padding: 9px 12px;
	border-radius: var(--zx-r-sm);
	font-size: 15px;
	font-weight: 500;
	text-decoration: none;
}

.zx-nav__more a:hover {
	background: var(--zx-mist);
}

.zx-nav .sub-menu {
	display: none;
}

.zx-search {
	display: flex;
	align-items: center;
	gap: 8px;
	flex: 0 0 280px;
	height: 44px;
	margin: 0;
	padding: 0 14px;
	background: var(--zx-mist);
	border-radius: var(--zx-r-md);
	color: var(--zx-ink-2);
}

.zx-search__icon {
	width: 20px;
	height: 20px;
	flex-shrink: 0;
}

.zx-search__input {
	flex: 1;
	min-width: 0;
	height: 100%;
	padding: 0;
	border: 0;
	background: transparent;
	color: var(--zx-ink);
	font: 400 15px var(--zx-f-body);
}

.zx-search__input::placeholder {
	color: var(--zx-ink-2);
}

.zx-search__input:focus {
	outline: none;
}

.zx-search:focus-within {
	box-shadow: 0 0 0 2px var(--zx-wine);
}

/* бургер: только на телефоне, см. @media (max-width: 767px) */
.zx-burger {
	display: none;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	width: 44px;
	height: 44px;
	margin: 0 0 0 auto;
	padding: 0;
	border: 0;
	border-radius: var(--zx-r-sm);
	background: transparent;
	color: var(--zx-ink);
	cursor: pointer;
}

.zx-burger:hover,
.zx-header--open .zx-burger {
	background: var(--zx-mist);
}

.zx-burger:focus-visible {
	outline: 2px solid var(--zx-wine);
	outline-offset: 2px;
}

/* три полоски: средняя — сам span, верхняя и нижняя — псевдоэлементы; в открытом виде — крестик */
.zx-burger__lines,
.zx-burger__lines::before,
.zx-burger__lines::after {
	display: block;
	width: 20px;
	height: 2px;
	border-radius: 1px;
	background: currentColor;
	transition: transform 0.2s, background-color 0.2s;
}

.zx-burger__lines {
	position: relative;
}

.zx-burger__lines::before,
.zx-burger__lines::after {
	content: "";
	position: absolute;
	left: 0;
}

.zx-burger__lines::before {
	top: -6px;
}

.zx-burger__lines::after {
	top: 6px;
}

.zx-header--open .zx-burger__lines {
	background-color: transparent;
}

.zx-header--open .zx-burger__lines::before {
	transform: translateY(6px) rotate(45deg);
}

.zx-header--open .zx-burger__lines::after {
	transform: translateY(-6px) rotate(-45deg);
}

/* ---------- хлебные крошки-таблетки (разметка dimox_breadcrumbs) ---------- */

.breadcrumbs {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 6px;
	margin: 0 0 22px;
	font-size: 14px;
	line-height: 1.3;
}

.breadcrumbs a {
	display: inline-block;
	padding: 4px 12px;
	border: 1px solid var(--zx-line);
	border-radius: 999px;
	color: var(--zx-ink);
	text-decoration: none;
}

.breadcrumbs a:hover {
	border-color: var(--zx-ink);
	color: var(--zx-ink);
}

/* в старой теме у «Главной» отступ под иконку домика задан одним правилом padding: 0 0 0 20px */
.breadcrumbs .home {
	padding: 4px 12px;
	background: none;
}

.breadcrumbs .home::before {
	display: none;
}

/* В старой теме разделитель — нарисованная рамкой стрелка с текстом за экраном */
.breadcrumbs .sep {
	position: static;
	display: inline;
	width: auto;
	height: auto;
	margin: 0;
	border: 0;
	color: var(--zx-ink-2);
	font-size: 14px;
	text-indent: 0;
	vertical-align: baseline;
}

.breadcrumbs .sep::before,
.breadcrumbs .sep::after {
	display: none;
}

/* ---------- заголовки и секции ---------- */

.zx-eyebrow {
	margin: 0 0 10px;
	color: var(--zx-ink-2);
	font: 500 13px/1.3 var(--zx-f-data);
	letter-spacing: 0.06em;
	text-transform: uppercase;
}

.zx-title,
.post__headline {
	margin: 0 0 24px;
	color: var(--zx-ink);
	font: 500 46px/1.08 var(--zx-f-display);
	letter-spacing: -0.02em;
}

.zx-section {
	margin: 0;
	padding: 56px 0 0;
}

.zx-section__title,
.headline,
.cat-desc h1 {
	margin: 0 0 24px;
	color: var(--zx-ink);
	font: 500 30px/1.15 var(--zx-f-display);
	letter-spacing: -0.01em;
}

.homepage .zx-section:first-child {
	padding-top: 24px;
}

/* ---------- карточки статей ---------- */

.zx-cards {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 20px;
}

.zx-cards--four,
.no-sidebar .zx-cards {
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

.zx-card {
	position: relative;
	display: flex;
	flex-direction: column;
	padding: 10px 10px 16px;
	background: var(--zx-mist);
	border-radius: var(--zx-r-lg);
	transition: background-color 0.15s, box-shadow 0.15s;
}

.zx-card:hover {
	background: var(--zx-paper);
	box-shadow: var(--zx-shadow);
}

.zx-card__media {
	display: block;
}

.zx-card__img {
	display: block;
	width: 100%;
	height: auto;
	aspect-ratio: 4 / 3;
	object-fit: cover;
	border-radius: var(--zx-r-md);
	background: var(--zx-line);
}

.zx-card__img--empty {
	background: var(--zx-line) url("../img/plug-navy.png") no-repeat center / 28px auto;
	opacity: 0.6;
}

.zx-card__tag {
	position: relative;
	z-index: 1;
	align-self: flex-start;
	margin: 12px 6px 0;
	color: var(--zx-ink-2);
	font: 500 12px/1.3 var(--zx-f-data);
	letter-spacing: 0.04em;
	text-decoration: none;
	text-transform: uppercase;
}

.zx-card__tag:hover {
	color: var(--zx-wine);
}

.zx-card__title {
	flex: 1;
	margin: 6px 6px 14px;
	color: var(--zx-ink);
	font-size: 17px;
	font-weight: 600;
	line-height: 1.32;
	text-decoration: none;
}

/* вся карточка кликабельна по ссылке заголовка; ссылка рубрики — поверх */
.zx-card__title::after {
	content: "";
	position: absolute;
	inset: 0;
	border-radius: var(--zx-r-lg);
}

.zx-card__title:hover {
	color: var(--zx-ink);
}

.zx-card__more {
	margin: 0 6px;
	color: var(--zx-wine);
	font-size: 14px;
	font-weight: 600;
}

/* ---------- главная: марки, разделы, комментарии ---------- */

.zx-makes {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(160px, 1fr));
	gap: 12px;
}

.zx-make {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	gap: 24px;
	min-height: 112px;
	padding: 16px;
	border: 1px solid var(--zx-line);
	border-radius: var(--zx-r-md);
	color: var(--zx-ink);
	text-decoration: none;
	transition: border-color 0.15s, box-shadow 0.15s;
}

.zx-make:hover {
	border-color: var(--zx-ink);
	box-shadow: var(--zx-shadow);
	color: var(--zx-ink);
}

.zx-make__name {
	font: 500 19px/1.1 var(--zx-f-display);
}

.zx-make__meta {
	color: var(--zx-ink-2);
	font: 500 13px/1.3 var(--zx-f-data);
}

.zx-chips {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.zx-chip {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	padding: 9px 16px;
	background: var(--zx-mist);
	border-radius: 999px;
	color: var(--zx-ink);
	font-size: 15px;
	font-weight: 500;
	text-decoration: none;
}

.zx-chip:hover {
	background: var(--zx-line);
	color: var(--zx-ink);
}

.zx-chip__count {
	color: var(--zx-ink-2);
	font: 500 12px var(--zx-f-data);
}

.zx-comments {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 20px;
}

.zx-comment {
	display: flex;
	flex-direction: column;
	gap: 10px;
	padding: 20px 22px;
	border: 1px solid var(--zx-line);
	border-radius: var(--zx-r-lg);
	color: var(--zx-ink);
	text-decoration: none;
}

.zx-comment:hover {
	border-color: var(--zx-ink);
	color: var(--zx-ink);
}

.zx-comment__post {
	font-weight: 600;
	line-height: 1.3;
}

.zx-comment__text {
	flex: 1;
	color: var(--zx-ink-2);
	font-size: 15px;
}

.zx-comment__meta {
	color: var(--zx-ink-2);
	font: 500 12px var(--zx-f-data);
}

.post--home {
	margin: 0;
}

.post--home .post__entry {
	max-width: 860px;
	color: var(--zx-ink-2);
	font-size: 17px;
}

/* ---------- текст статьи ---------- */

.post {
	margin: 0 0 32px;
}

.post__entry {
	font-size: 18px;
	line-height: 1.7;
}

.post__entry p {
	margin: 0 0 20px;
}

.post__entry h2,
.post__entry h3,
.post__entry h4,
.post__entry h5,
.post__entry h6 {
	margin: 40px 0 16px;
	color: var(--zx-ink);
	line-height: 1.2;
}

.post__entry h2 {
	font: 500 30px/1.18 var(--zx-f-display);
	letter-spacing: -0.01em;
}

.post__entry h3 {
	font: 500 23px/1.25 var(--zx-f-display);
}

.post__entry h4,
.post__entry h5,
.post__entry h6 {
	font-family: var(--zx-f-body);
	font-size: 19px;
	font-weight: 600;
}

.post__entry ul,
.post__entry ol {
	margin: 0 0 22px;
	padding-left: 28px;
}

.post__entry ul > li::before {
	top: 0.72em;
	left: -18px;
	width: 7px;
	height: 7px;
	border-radius: 50%;
	background: var(--zx-wine);
}

.post__entry ol > li::before {
	left: -34px;
	width: 26px;
	color: var(--zx-wine);
	font: 600 15px/1.9 var(--zx-f-data);
}

.post__entry img {
	border-radius: var(--zx-r-md);
}

/* Таблицы в статьях (в том числе перенесённые из TablePress 25.09.2026). Обёртку .adaptive-table добавляет тема (фильтр the_content):
   она даёт рамку со скруглением и прокрутку вбок, если таблица шире колонки. */
.post__entry .adaptive-table {
	overflow-x: auto;
	max-width: 100%;
	margin: 0 0 28px;
	border: 1px solid var(--zx-line);
	border-radius: var(--zx-r-md);
	-webkit-overflow-scrolling: touch;
}

.post__entry table {
	width: 100%;
	margin: 0;
	border: 0;
	border-collapse: collapse;
	font-size: 15px;
	line-height: 1.45;
}

.post__entry th,
.post__entry td {
	padding: 11px 14px;
	border: 0;
	border-bottom: 1px solid var(--zx-line);
	background: var(--zx-paper);
	color: var(--zx-ink);
	text-align: left;
	vertical-align: top;
}

.post__entry th + th,
.post__entry th + td,
.post__entry td + td,
.post__entry td + th {
	border-left: 1px solid var(--zx-line);
}

.post__entry tr:last-child > td,
.post__entry tr:last-child > th {
	border-bottom: 0;
}

.post__entry thead th,
.post__entry tfoot th,
.post__entry tfoot td {
	background: var(--zx-mist);
	font-weight: 600;
}

/* первая колонка — подписи строк («Тип крепления», «Размер…») */
.post__entry tbody td:first-child {
	font-weight: 500;
	background: #fafbfd;
}

.post__entry tbody tr:nth-child(even) > td:not(:first-child) {
	background: #fcfcfe;
}

.post__entry tbody tr:hover > td {
	background: #f5f7fb;
}

/* ---------- цитаты и выноски в тексте статьи ----------
   Рамка в фирменном цвете и иконка слева сверху. Виды: обычная цитата (облачко с кавычками),
   .info — справка («i», кнопка «Инфоблок» в редакторе), .orange — предупреждение («!»). */

.post__entry blockquote {
	position: relative;
	margin: 30px 0;
	padding: 26px 28px 26px 96px;
	border: 2px solid rgb(174 48 69 / 0.55);
	border-radius: var(--zx-r-lg);
	background: var(--zx-paper);
	color: var(--zx-ink);
	font-size: 18px;
	line-height: 1.5;
}

.post__entry blockquote::before {
	content: "";
	position: absolute;
	top: 26px;
	left: 34px;
	width: 36px;
	height: 32px;
	background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 36 32'%3E%3Cdefs%3E%3ClinearGradient id='g' x1='0' y1='0' x2='1' y2='1'%3E%3Cstop offset='0' stop-color='%23d4566a'/%3E%3Cstop offset='1' stop-color='%238e2536'/%3E%3C/linearGradient%3E%3C/defs%3E%3Cpath d='M6 1h24a5 5 0 0 1 5 5v15a5 5 0 0 1-5 5H19.5L13 31.5V26H6a5 5 0 0 1-5-5V6a5 5 0 0 1 5-5Z' fill='url(%23g)'/%3E%3Cpath d='M10.5 18.5v-4.8L12.9 8h2.8l-1.9 4.8H16v5.7Zm9 0v-4.8L21.9 8h2.8l-1.9 4.8H25v5.7Z' fill='%23fff'/%3E%3C/svg%3E") no-repeat center / contain;
}

.post__entry blockquote.info {
	border-color: rgb(54 66 94 / 0.45);
	background: var(--zx-mist);
}

.post__entry blockquote.info::before {
	width: 32px;
	height: 32px;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'%3E%3Cdefs%3E%3ClinearGradient id='g' x1='0' y1='0' x2='1' y2='1'%3E%3Cstop offset='0' stop-color='%23687186'/%3E%3Cstop offset='1' stop-color='%231f2638'/%3E%3C/linearGradient%3E%3C/defs%3E%3Ccircle cx='16' cy='16' r='15' fill='url(%23g)'/%3E%3Ccircle cx='16' cy='9.5' r='2' fill='%23fff'/%3E%3Crect x='14.2' y='13.5' width='3.6' height='11' rx='1.8' fill='%23fff'/%3E%3C/svg%3E");
}

.post__entry blockquote.orange::before {
	width: 34px;
	height: 32px;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 34 32'%3E%3Cdefs%3E%3ClinearGradient id='g' x1='0' y1='0' x2='1' y2='1'%3E%3Cstop offset='0' stop-color='%23d4566a'/%3E%3Cstop offset='1' stop-color='%238e2536'/%3E%3C/linearGradient%3E%3C/defs%3E%3Cpath d='M14.4 2.5a3 3 0 0 1 5.2 0l13 22.5a3 3 0 0 1-2.6 4.5H4a3 3 0 0 1-2.6-4.5Z' fill='url(%23g)'/%3E%3Crect x='15.2' y='10' width='3.6' height='10' rx='1.8' fill='%23fff'/%3E%3Ccircle cx='17' cy='24' r='2' fill='%23fff'/%3E%3C/svg%3E");
}

.post__entry blockquote p {
	margin: 0;
	padding: 0;
}

.post__entry blockquote p + p {
	margin-top: 12px;
}

.post__entry blockquote > :last-child {
	margin-bottom: 0;
}

/* «Обратите внимание!», «Важно знать!» в начале выноски */
.post__entry blockquote > strong:first-child,
.post__entry blockquote > p:first-child > strong:first-child {
	color: var(--zx-wine);
}

@media (max-width: 767px) {
	.post__entry blockquote {
		padding: 22px 22px 22px 80px;
		font-size: 17px;
	}

	.post__entry blockquote::before {
		top: 22px;
		left: 26px;
		transform: scale(0.9);
		transform-origin: top left;
	}
}

@media (max-width: 479px) {
	.post__entry blockquote {
		padding: 18px 18px 18px 60px;
		border-radius: var(--zx-r-md);
		font-size: 16px;
	}

	.post__entry blockquote::before {
		top: 19px;
		left: 17px;
		transform: scale(0.75);
	}
}

/* оглавление плагина Table of Contents Plus */
.post__entry #toc_container {
	display: block;
	width: auto;
	margin: 0 0 28px;
	padding: 18px 22px 8px;
	border: 1px solid var(--zx-line);
	border-radius: var(--zx-r-lg);
	background: var(--zx-mist);
	font-size: 16px;
}

.post__entry #toc_container .toc_title {
	margin: 0 0 10px;
	color: var(--zx-ink);
	font: 600 13px/1.3 var(--zx-f-data);
	letter-spacing: 0.06em;
	text-align: left;
	text-transform: uppercase;
}

.post__entry #toc_container .toc_toggle a {
	color: var(--zx-ink-2);
	text-transform: none;
}

.post__entry #toc_container ul.toc_list {
	margin: 0 0 10px;
}

.post__entry #toc_container ul.toc_list li {
	margin: 0 0 6px;
}

.post__entry #toc_container a {
	color: var(--zx-ink);
	text-decoration: none;
}

.post__entry #toc_container a:hover {
	color: var(--zx-wine);
}

/* ---------- плитки-ссылки в тексте: .zx-tiles (разделы и модели в тексте главной) ----------
   <ul class="zx-tiles"><li><a class="zx-tile" href="…"><img class="zx-tile__img" …><span class="zx-tile__title">…</span></a></li></ul> */

.post__entry .zx-tiles {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(170px, 1fr));
	gap: 14px;
	margin: 0 0 28px;
	padding: 0;
	list-style: none;
}

.post__entry .zx-tiles > li {
	margin: 0;
	padding: 0;
}

.post__entry .zx-tiles > li::before {
	content: none;
}

.post__entry .zx-tile {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 10px;
	height: 100%;
	padding: 14px 14px 16px;
	border: 1px solid var(--zx-line);
	border-radius: var(--zx-r-md);
	background: var(--zx-paper);
	color: var(--zx-ink);
	text-decoration: none;
	transition: border-color 0.15s, box-shadow 0.15s;
}

.post__entry a.zx-tile:hover {
	border-color: var(--zx-ink);
	box-shadow: var(--zx-shadow);
	color: var(--zx-wine);
}

/* фото деталей и машин на белом фоне — вписываем целиком, без обрезки */
.post__entry .zx-tile__img {
	width: 100%;
	height: auto;
	aspect-ratio: 4 / 3;
	object-fit: contain;
	margin: 0;
	border-radius: var(--zx-r-sm);
}

.post__entry .zx-tile__title {
	font-size: 15px;
	font-weight: 500;
	line-height: 1.3;
	text-align: center;
}

@media (max-width: 479px) {
	.post__entry .zx-tiles {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 10px;
	}

	.post__entry .zx-tile {
		padding: 10px 10px 12px;
	}
}

/* ---------- вопросы и ответы: .zx-faq (аккордеон на <details>, открыт один ответ — атрибут name) ---------- */

.post__entry .zx-faq {
	display: flex;
	flex-direction: column;
	gap: 10px;
	margin: 0 0 28px;
}

.post__entry .zx-faq__item {
	border: 1px solid var(--zx-line);
	border-radius: var(--zx-r-md);
	background: var(--zx-paper);
	transition: border-color 0.15s;
}

.post__entry .zx-faq__item[open] {
	border-color: var(--zx-ink);
}

.post__entry .zx-faq__q {
	position: relative;
	display: block;
	padding: 16px 56px 16px 20px;
	color: var(--zx-ink);
	font-size: 18px;
	font-weight: 600;
	line-height: 1.35;
	list-style: none;
	cursor: pointer;
}

.post__entry .zx-faq__q::-webkit-details-marker {
	display: none;
}

.post__entry .zx-faq__q:hover {
	color: var(--zx-wine);
}

.post__entry .zx-faq__q:focus-visible {
	outline: 2px solid var(--zx-wine);
	outline-offset: -2px;
	border-radius: var(--zx-r-md);
}

/* плюс, в открытом — минус */
.post__entry .zx-faq__q::before,
.post__entry .zx-faq__q::after {
	content: "";
	position: absolute;
	top: 50%;
	right: 22px;
	width: 14px;
	height: 2px;
	border-radius: 1px;
	background: var(--zx-wine);
	transition: transform 0.2s;
}

.post__entry .zx-faq__q::after {
	transform: rotate(90deg);
}

.post__entry .zx-faq__item[open] .zx-faq__q::after {
	transform: rotate(0deg);
}

.post__entry .zx-faq__a {
	padding: 0 20px 18px;
	color: var(--zx-ink-2);
	font-size: 16px;
	line-height: 1.55;
}

.post__entry .zx-faq__a > p {
	margin: 0 0 10px;
}

.post__entry .zx-faq__a > :last-child {
	margin-bottom: 0;
}

@media (max-width: 479px) {
	.post__entry .zx-faq__q {
		padding: 14px 48px 14px 16px;
		font-size: 16px;
	}

	.post__entry .zx-faq__q::before,
	.post__entry .zx-faq__q::after {
		right: 18px;
	}

	.post__entry .zx-faq__a {
		padding: 0 16px 16px;
	}
}

/* ---------- рубрика и поиск: описание, пагинация ---------- */

.cat-desc {
	margin: 40px 0 0;
	padding: 26px 28px;
	background: var(--zx-mist);
	border-radius: var(--zx-r-lg);
}

.cat-desc .post__entry {
	font-size: 16px;
}

.pagination {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 6px;
	margin: 32px 0 0;
}

.pagination a,
.pagination span {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 42px;
	height: 42px;
	padding: 0 12px;
	border: 1px solid var(--zx-line);
	border-radius: var(--zx-r-sm);
	color: var(--zx-ink);
	font: 500 15px var(--zx-f-data);
	text-decoration: none;
}

.pagination a:hover {
	border-color: var(--zx-ink);
	text-decoration: none;
}

.pagination .current {
	border-color: var(--zx-ink);
	background: var(--zx-ink);
	color: #fff;
	font-weight: 600;
}

.pagination .dots {
	border: 0;
}

/* ---------- статья: обзоры, похожие, комментарии ---------- */

.related,
.reviews {
	margin: 48px 0 0;
}

.related .headline,
.reviews .headline {
	margin-bottom: 20px;
	font-size: 26px;
	text-align: left;
}

/* в старой теме — толстая синяя рамка, серый фон и счётчик комментариев «облачком» */
.reviews__items {
	display: grid;
	gap: 10px;
	padding: 0;
	border: 0;
	background: none;
}

.reviews-item,
.reviews-item:not(:first-child) {
	gap: 14px;
	margin: 0;
	padding: 12px 16px 12px 12px;
	border: 1px solid var(--zx-line);
	border-radius: var(--zx-r-md);
	font-size: 16px;
	transition: border-color 0.15s;
}

.reviews-item:hover {
	border-color: var(--zx-ink);
}

.reviews-item__image {
	margin: 0;
}

.reviews-item__image img {
	display: block;
	border-radius: var(--zx-r-sm);
}

.reviews-item__title a {
	color: var(--zx-ink);
	font-weight: 500;
	text-decoration: none;
}

.reviews-item__title a:hover {
	color: var(--zx-wine);
	text-decoration: none;
}

.reviews-item__comments {
	width: auto;
	height: auto;
	min-width: 32px;
	margin: 0;
	padding: 3px 10px;
	border-radius: 999px;
	background: var(--zx-mist);
	color: var(--zx-ink-2);
	font: 500 13px/1.4 var(--zx-f-data);
}

.reviews-item__comments::after {
	display: none;
}

/* ---------- отзывы в тексте статьи: .zx-opinions (кнопка «Отзыв» в редакторе) ----------
   <div class="zx-opinions"><figure class="zx-opinion"><p class="zx-opinion__text">…</p>
   <figcaption class="zx-opinion__author"><b class="zx-opinion__name">Имя</b> <span class="zx-opinion__car">Машина</span></figcaption></figure></div>
   На десктопе — сетка карточек, на телефоне — лента с прокруткой вбок. */

.post__entry .zx-opinions {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
	gap: 16px;
	margin: 28px 0;
}

.post__entry .zx-opinion {
	position: relative;
	display: flex;
	flex-direction: column;
	gap: 16px;
	margin: 0;
	padding: 60px 22px 20px;
	border: 1px solid var(--zx-line);
	border-radius: var(--zx-r-lg);
	background: var(--zx-paper);
}

.post__entry .zx-opinion::before {
	content: "";
	position: absolute;
	top: 20px;
	left: 22px;
	width: 30px;
	height: 27px;
	background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 36 32'%3E%3Cdefs%3E%3ClinearGradient id='g' x1='0' y1='0' x2='1' y2='1'%3E%3Cstop offset='0' stop-color='%23d4566a'/%3E%3Cstop offset='1' stop-color='%238e2536'/%3E%3C/linearGradient%3E%3C/defs%3E%3Cpath d='M6 1h24a5 5 0 0 1 5 5v15a5 5 0 0 1-5 5H19.5L13 31.5V26H6a5 5 0 0 1-5-5V6a5 5 0 0 1 5-5Z' fill='url(%23g)'/%3E%3Cpath d='M10.5 18.5v-4.8L12.9 8h2.8l-1.9 4.8H16v5.7Zm9 0v-4.8L21.9 8h2.8l-1.9 4.8H25v5.7Z' fill='%23fff'/%3E%3C/svg%3E") no-repeat center / contain;
}

.post__entry .zx-opinion__text {
	flex: 1;
	margin: 0;
	color: var(--zx-ink);
	font-size: 16px;
	line-height: 1.55;
}

.post__entry .zx-opinion__author {
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
	gap: 2px 10px;
	padding: 14px 0 0;
	border-top: 1px solid var(--zx-line);
	font-size: 15px;
}

.post__entry .zx-opinion__name {
	color: var(--zx-ink);
	font-weight: 600;
}

.post__entry .zx-opinion__car {
	color: var(--zx-ink-2);
	font: 500 14px/1.3 var(--zx-f-data);
}

@media (max-width: 599px) {
	.post__entry .zx-opinions {
		display: flex;
		gap: 12px;
		margin-right: -14px;
		padding: 0 14px 6px 0;
		overflow-x: auto;
		scroll-snap-type: x mandatory;
		-webkit-overflow-scrolling: touch;
	}

	.post__entry .zx-opinion {
		flex: 0 0 84%;
		scroll-snap-align: start;
	}
}

/* ---------- обсуждение: комментарии и форма (comments.php, zx_comment() в inc/comments.php) ---------- */

.zx-discussion {
	margin-top: 56px;
}

.zx-discussion__title {
	display: flex;
	align-items: baseline;
	gap: 10px;
}

.zx-discussion__count {
	color: var(--zx-ink-2);
	font: 500 0.7em/1 var(--zx-f-data);
}

.zx-comments-list,
.zx-comments-list .children {
	margin: 0;
	padding: 0;
	list-style: none;
}

.zx-cmt {
	margin: 0;
	list-style: none;
}

.zx-cmt + .zx-cmt,
.zx-comments-list > .zx-cmt + .zx-cmt {
	margin-top: 14px;
}

.zx-cmt__body {
	padding: 18px 20px 14px;
	border: 1px solid var(--zx-line);
	border-radius: var(--zx-r-lg);
	background: var(--zx-paper);
}

.zx-cmt__head {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 4px 12px;
	margin: 0 0 10px;
}

.zx-cmt__avatar {
	display: flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	width: 36px;
	height: 36px;
	border-radius: 50%;
	background: var(--zx-mist);
	color: var(--zx-ink);
	font: 600 15px/1 var(--zx-f-body);
}

.zx-cmt__author {
	color: var(--zx-ink);
	font-weight: 600;
}

.zx-cmt__date {
	color: var(--zx-ink-2);
	font: 500 13px/1.3 var(--zx-f-data);
}

.zx-cmt__text {
	color: var(--zx-ink);
	font-size: 16px;
	line-height: 1.55;
	overflow-wrap: anywhere;
}

.zx-cmt__text p {
	margin: 0 0 10px;
}

.zx-cmt__text > :last-child {
	margin-bottom: 0;
}

.zx-cmt__moderation {
	color: var(--zx-ink-2);
	font-style: italic;
}

.zx-cmt__actions {
	display: flex;
	gap: 16px;
	margin: 10px 0 0;
}

.zx-cmt__actions:empty {
	display: none;
}

.zx-cmt__actions a {
	color: var(--zx-ink-2);
	font-size: 14px;
	font-weight: 500;
	text-decoration: none;
}

.zx-cmt__actions a:hover {
	color: var(--zx-wine);
}

/* ответы: сдвиг и линия ветки */
.zx-cmt .children {
	margin: 12px 0 0 22px;
	padding: 0 0 0 20px;
	border-left: 2px solid var(--zx-line);
}

.zx-cmt .children .zx-cmt__body {
	background: var(--zx-mist);
	border-color: transparent;
}

.zx-cmt .children .zx-cmt__avatar {
	background: var(--zx-paper);
}

/* комментарий, к которому ведёт ссылка #comment-… */
.zx-cmt:target > .zx-cmt__body {
	border-color: var(--zx-wine);
	box-shadow: 0 0 0 3px rgb(174 48 69 / 0.12);
}

.zx-comments-nav {
	display: flex;
	justify-content: space-between;
	margin: 20px 0 0;
	font-weight: 500;
}

.zx-comments-nav a {
	color: var(--zx-ink);
	text-decoration: none;
}

.zx-comments-nav a:hover {
	color: var(--zx-wine);
}

.zx-discussion .respond {
	margin-top: 40px;
}

.zx-discussion > .respond:first-child {
	margin-top: 0;
}

.respond__reply {
	display: flex;
	align-items: center;
	gap: 12px;
	margin: -6px 0 16px;
	color: var(--zx-ink-2);
	font-size: 15px;
}

.respond__reply[hidden] {
	display: none;
}

.respond__reply-cancel {
	padding: 0;
	border: 0;
	background: none;
	color: var(--zx-wine);
	font: 500 15px var(--zx-f-body);
	cursor: pointer;
}

.respond__cancel a {
	display: inline-block;
	margin: -6px 0 16px;
	color: var(--zx-wine);
	text-decoration: none;
}

@media (max-width: 479px) {
	.zx-cmt__body {
		padding: 16px 16px 12px;
		border-radius: var(--zx-r-md);
	}

	.zx-cmt .children {
		margin-left: 8px;
		padding-left: 12px;
	}
}

.comment-form input[type="text"],
.comment-form input[type="email"],
.comment-form input[type="url"],
.comment-form textarea {
	width: 100%;
	padding: 12px 14px;
	border: 1px solid var(--zx-line);
	border-radius: var(--zx-r-md);
	background: var(--zx-paper);
	color: var(--zx-ink);
	font: 400 16px/1.5 var(--zx-f-body);
}

.comment-form input:focus,
.comment-form textarea:focus {
	border-color: var(--zx-ink);
	outline: none;
}

.comment-form input[type="submit"],
.form-submit .submit {
	min-height: 50px;
	padding: 0 26px;
	border: 0;
	border-radius: var(--zx-r-md);
	background: var(--zx-wine);
	color: #fff;
	font: 600 16px var(--zx-f-body);
	cursor: pointer;
}

.comment-form input[type="submit"]:hover,
.form-submit .submit:hover {
	background: var(--zx-wine-deep);
}

/* ---------- сайдбар ---------- */

.sidebar > * + * {
	margin-top: 20px;
}

.sidebar__nav {
	padding: 10px;
	border: 0;
	background: var(--zx-mist);
	border-radius: var(--zx-r-lg);
}

.sidebar__nav ul {
	margin: 0;
	padding: 0;
}

.sidebar__nav li,
.sidebar__nav li:not(:first-child) {
	margin: 0;
	list-style: none;
}

.sidebar__nav a {
	display: block;
	padding: 8px 12px;
	border-radius: var(--zx-r-sm);
	color: var(--zx-ink);
	font-size: 15px;
	font-weight: 500;
	text-decoration: none;
}

.sidebar__nav a:hover,
.sidebar__nav .current-menu-item > a {
	background: var(--zx-paper);
	color: var(--zx-ink);
}

.review {
	padding: 18px;
	border: 1px solid var(--zx-line);
	border-radius: var(--zx-r-lg);
	background: var(--zx-paper);
	text-align: left;
}

.review .headline {
	margin: 0 0 14px;
	font-size: 20px;
	font-weight: 500;
}

.review__link {
	color: var(--zx-ink);
	text-decoration: none;
}

.review__link:hover {
	color: var(--zx-wine);
	text-decoration: none;
}

.review__image {
	max-width: none;
	margin: 0 0 12px;
	background: none;
}

.review__image img {
	border-radius: var(--zx-r-md);
}

.review__title {
	font-size: 17px;
	font-weight: 600;
	line-height: 1.3;
}

.review__next {
	display: block;
	height: auto;
	margin: 14px 0 0;
	padding: 10px 16px;
	border-radius: var(--zx-r-sm);
	background: var(--zx-mist);
	color: var(--zx-ink);
	font: 500 14px/1.3 var(--zx-f-body);
	text-align: center;
}

.review__next:hover {
	background: var(--zx-line);
}

/* ---------- подвал ---------- */

.zx-footer {
	margin-top: 88px;
	padding: 48px 20px 28px;
	background: var(--zx-ink-deep);
	color: #c9cfdc;
	font-size: 15px;
}

.zx-footer__inner {
	max-width: calc(var(--zx-wrap) - 40px);
	margin: 0 auto;
}

.zx-footer__grid {
	display: grid;
	grid-template-columns: minmax(0, 1.2fr) minmax(0, 2fr) minmax(0, 0.9fr);
	gap: 40px;
}

.zx-footer .zx-logo,
.zx-footer .zx-logo:hover {
	color: #fff;
}

.zx-footer__tagline {
	max-width: 280px;
	margin: 14px 0 0;
}

.zx-footer__title {
	margin: 0 0 12px;
	color: #fff;
	font: 600 13px/1.2 var(--zx-f-data);
	letter-spacing: 0.06em;
	text-transform: uppercase;
}

.zx-footer__list {
	margin: 0;
	padding: 0;
	list-style: none;
}

.zx-footer__list--columns {
	columns: 2;
	column-gap: 32px;
}

.zx-footer__list li {
	margin: 0 0 7px;
	break-inside: avoid;
}

.zx-footer a {
	color: #c9cfdc;
	text-decoration: none;
}

.zx-footer a:hover {
	color: #fff;
	text-decoration: underline;
}

.zx-footer__bottom {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 16px 32px;
	margin-top: 40px;
	padding-top: 22px;
	border-top: 1px solid rgba(255, 255, 255, 0.12);
	color: #8d96ab;
	font-size: 13px;
}

.zx-footer__legal {
	display: flex;
	flex-direction: column;
	gap: 4px;
	max-width: 520px;
}

.zx-footer__copyright {
	font-family: var(--zx-f-data);
}

.zx-footer__rules ul {
	display: flex;
	flex-wrap: wrap;
	gap: 6px 18px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.zx-footer__rules a {
	color: #8d96ab;
}

.zx-footer__counters {
	display: flex;
	gap: 8px;
}

/* ---------- лайтбокс картинок статьи (assets/js/lightbox.js) ---------- */

.zx-zoomable {
	cursor: zoom-in;
}

.zx-lightbox-open {
	overflow: hidden;
}

.zx-lightbox {
	width: 100vw;
	max-width: none;
	height: 100vh;
	height: 100dvh;
	max-height: none;
	margin: 0;
	padding: 0;
	border: 0;
	background: transparent;
	color: #fff;
}

.zx-lightbox::backdrop {
	background: rgb(20 25 38 / 0.95);
}

.zx-lightbox__figure {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 14px;
	height: 100%;
	margin: 0;
	padding: 56px 72px 48px;
}

.zx-lightbox__img {
	max-width: 100%;
	max-height: calc(100% - 40px);
	width: auto;
	height: auto;
	border-radius: var(--zx-r-sm);
	background: var(--zx-ink-deep);
	object-fit: contain;
}

.zx-lightbox__caption {
	max-width: 720px;
	color: rgb(255 255 255 / 0.85);
	font: 400 15px/1.45 var(--zx-f-body);
	text-align: center;
}

.zx-lightbox__counter {
	position: absolute;
	top: 18px;
	left: 20px;
	margin: 0;
	color: rgb(255 255 255 / 0.7);
	font: 500 14px/1 var(--zx-f-data);
}

.zx-lightbox__btn {
	position: absolute;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 48px;
	height: 48px;
	padding: 0;
	border: 0;
	border-radius: 50%;
	background: rgb(255 255 255 / 0.12);
	color: #fff;
	font: 300 32px/1 var(--zx-f-body);
	cursor: pointer;
	transition: background-color 0.15s;
}

.zx-lightbox__btn:hover {
	background: rgb(255 255 255 / 0.24);
}

.zx-lightbox__btn:focus-visible {
	outline: 2px solid #fff;
	outline-offset: 2px;
}

.zx-lightbox__btn--close {
	top: 8px;
	right: 12px;
}

.zx-lightbox__btn--prev,
.zx-lightbox__btn--next {
	top: 50%;
	transform: translateY(-50%);
}

.zx-lightbox__btn--prev {
	left: 12px;
}

.zx-lightbox__btn--next {
	right: 12px;
}

.zx-lightbox--single .zx-lightbox__btn--prev,
.zx-lightbox--single .zx-lightbox__btn--next {
	display: none;
}

@media (max-width: 767px) {
	.zx-lightbox__figure {
		padding: 56px 8px 24px;
	}

	/* на телефоне листают свайпом, стрелки — внизу, чтобы не закрывать картинку */
	.zx-lightbox__btn--prev,
	.zx-lightbox__btn--next {
		top: auto;
		bottom: 12px;
		transform: none;
	}
}

/* ---------- адаптив ---------- */

@media (max-width: 1100px) {
	.zx-cards--four,
	.no-sidebar .zx-cards {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

@media (max-width: 999px) {
	.middle {
		display: block;
	}

	.sidebar {
		width: auto;
		margin-top: 48px;
	}

	.zx-cards,
	.zx-cards--four,
	.no-sidebar .zx-cards {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.zx-comments {
		grid-template-columns: 1fr;
	}

	.zx-footer__grid {
		grid-template-columns: 1fr 1fr;
	}

	.zx-footer__brand {
		grid-column: 1 / -1;
	}
}

@media (max-width: 767px) {
	/* шапка на телефоне: логотип и бургер; поиск и марки — в панели, которая раскрывается под ними */
	.zx-header__bar {
		flex-wrap: wrap;
		gap: 0 12px;
		padding: 8px 8px 8px 16px;
	}

	.zx-burger {
		display: flex;
	}

	.zx-nav,
	.zx-search {
		display: none;
	}

	.zx-header--open .zx-search {
		display: flex;
		flex: 1 1 100%;
		order: 3;
		margin: 10px 0 0;
	}

	.zx-header--open .zx-nav {
		display: block;
		flex: 1 1 100%;
		order: 4;
		margin: 6px 0 4px;
	}

	.zx-header--open .zx-nav__links {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 2px;
		overflow: visible;
		padding: 0;
	}

	.zx-header--open .zx-nav__links > li {
		white-space: normal;
	}

	.zx-header--open .zx-nav__links a {
		padding: 11px 10px;
	}

	.zx-nav__toggle,
	.zx-nav__more {
		display: none;
	}

	.zx-title,
	.post__headline {
		font-size: 34px;
	}

	.zx-section__title,
	.headline,
	.post__entry h2 {
		font-size: 25px;
	}

	.post__entry {
		font-size: 17px;
	}
}

@media (max-width: 479px) {
	body {
		font-size: 16px;
	}

	.post__entry table {
		font-size: 14px;
	}

	.post__entry th,
	.post__entry td {
		padding: 9px 10px;
	}

	.container,
	.zx-header {
		padding-left: 14px;
		padding-right: 14px;
	}

	.zx-logo__word {
		font-size: 17px;
	}

	.zx-title,
	.post__headline {
		font-size: 29px;
	}

	.zx-cards,
	.zx-cards--four,
	.no-sidebar .zx-cards {
		gap: 12px;
	}

	.zx-card {
		padding: 8px 8px 14px;
	}

	.zx-card__title {
		font-size: 15px;
	}

	.zx-makes {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.zx-footer__grid {
		grid-template-columns: 1fr;
	}

	.zx-footer__list--columns {
		columns: 1;
	}
}

@media (prefers-reduced-motion: reduce) {
	.zx-card,
	.zx-make,
	.zx-burger__lines,
	.zx-burger__lines::before,
	.zx-burger__lines::after,
	.zx-lightbox__btn,
	.post__entry .zx-tile,
	.post__entry .zx-faq__item,
	.post__entry .zx-faq__q::after {
		transition: none;
	}
}

/* Капча под полем комментария и временное поле копирования промокода (раньше — инлайн-стили). */
.comment-form .smart-captcha {
	margin-bottom: 15px;
}

.promokod__buffer {
	position: fixed;
	opacity: 0;
}
