/**
 * Тема Borjins — дизайн-токены и компоненты по утверждённому концепту.
 * Палитра: графит #161d26, чернила #18202b, акцент #0d72c8, фон #f1f3f5,
 * наличие #178a4c, под заказ #b26a00, линии #e2e7ec.
 */

:root {
	--borjins-graphite: #161d26;
	--borjins-graphite-2: #1f2937;
	--borjins-ink: #18202b;
	--borjins-muted: #5f6e7e;
	--borjins-ground: #f3f5f7;

	/* Контейнер по концепту: .wrap{max-width:1200px; padding:0 20px}. */
	--theme-normal-container-max-width: 1200px;
	--theme-content-vertical-spacing: 44px;
	--borjins-card: #ffffff;
	--borjins-accent: #0d72c8;
	--borjins-accent-d: #0a5da5;
	--borjins-accent-t: #e8f2fb;
	--borjins-ok: #178a4c;
	--borjins-ok-bg: #e6f4ec;
	--borjins-wait: #b26a00;
	--borjins-wait-bg: #fbf1de;
	--borjins-exp: #6b7684;
	--borjins-exp-bg: #eef0f3;
	--borjins-line: #e2e7ec;

	/* Палитра Blocksy — акцент и ссылки наследуют токены. */
	--theme-palette-color-1: var(--borjins-accent);
	--theme-palette-color-2: var(--borjins-accent-d);
	--theme-link-initial-color: var(--borjins-accent);
	--theme-link-hover-color: var(--borjins-accent-d);
	--theme-button-background-initial-color: var(--borjins-accent);
	--theme-button-background-hover-color: var(--borjins-accent-d);
	--theme-text-color: var(--borjins-ink);
}

/* Типографика и фон — как в концепте. */
body,
button,
input,
select,
textarea {
	font-family: "Segoe UI", -apple-system, "Helvetica Neue", Arial, sans-serif;
}

body {
	background: var(--borjins-ground) !important;
	color: var(--borjins-ink);
	font-size: 15px;
	line-height: 1.55;
}

/* Контейнер контента — как .wrap концепта. */
.ct-container {
	max-width: 1200px;
	padding-left: 20px;
	padding-right: 20px;
}

/* Крошки задают свой отступ сверху (16px), контейнер не дублирует. */
body:not(.home) [data-vertical-spacing*="top"] {
	padding-top: 0;
}

/* Нижний отступ контента не суммируется с отступом подвала — без дыр (7.1). */
body:not(.home) [data-vertical-spacing*="bottom"] {
	padding-bottom: 0;
}

.site-main,
#main {
	background: var(--borjins-ground) !important;
}

/* ── Формы Fluent Forms — в стиле концепта ─────────────────────── */

.fluentform .ff-el-form-control {
	border: 1px solid var(--borjins-line);
	border-radius: 7px;
	background: #fbfcfd;
	font-size: 14px;
	color: var(--borjins-ink);
	min-height: 46px;
	padding: 10px 14px;
	width: 100%;
	transition: border-color 0.12s ease, box-shadow 0.12s ease;
}

/* Textarea — 3 строки (7.2), тянуть можно вниз. */
.fluentform textarea.ff-el-form-control {
	min-height: 0;
	height: 84px;
	resize: vertical;
}

.fluentform .ff-el-form-control::placeholder {
	color: #9aa6b2;
}

.fluentform .ff-el-form-control:focus {
	border-color: var(--borjins-accent);
	box-shadow: 0 0 0 3px var(--borjins-accent-t);
	outline: none;
}

.fluentform .ff-el-input--label label {
	font-size: 13px;
	font-weight: 600;
	color: var(--borjins-ink);
	margin-bottom: 6px;
	display: inline-block;
}

.fluentform .ff-el-group {
	margin-bottom: 14px;
}

.fluentform .ff-btn-submit {
	background: var(--borjins-accent) !important;
	color: #fff !important;
	border: none !important;
	border-radius: 7px !important;
	padding: 13px 28px !important;
	font-weight: 700 !important;
	font-size: 15px !important;
	width: 100%;
	cursor: pointer;
	transition: background 0.12s ease, transform 0.08s ease;
}

.fluentform .ff-btn-submit:hover {
	background: var(--borjins-accent-d) !important;
}

.fluentform .ff-btn-submit:active {
	transform: scale(0.99);
}

/* ── Заявки на странице товара: карточка с табами ──────────────── */

.borjins-form-hub {
	max-width: 720px;
	margin: 30px 0 0;
	background: var(--borjins-card);
	border: 1px solid var(--borjins-line);
	border-radius: 12px;
	box-shadow: 0 1px 3px rgba(24, 32, 43, 0.06);
	padding: 24px;
}

.borjins-form-tabs {
	display: flex;
	gap: 6px;
	margin-bottom: 20px;
	border-bottom: 1px solid var(--borjins-line);
}

.borjins-form-tabs button {
	background: none;
	border: none;
	border-bottom: 2px solid transparent;
	padding: 10px 16px;
	font-size: 14.5px;
	font-weight: 700;
	color: var(--borjins-muted);
	cursor: pointer;
}

.borjins-form-tabs button.is-on {
	color: var(--borjins-ink);
	border-bottom-color: var(--borjins-accent);
}

.borjins-form-pane {
	display: none;
}

.borjins-form-pane.is-on {
	display: block;
}

.borjins-form-pane h2 {
	font-size: 20px;
	font-weight: 800;
	margin: 0 0 4px;
}

.borjins-form-note {
	font-size: 13.5px;
	color: var(--borjins-muted);
	margin: 0 0 16px;
}

.borjins-form-consent {
	font-size: 12px;
	color: var(--borjins-muted);
	margin: 10px 0 0;
}

/* Поля во всю ширину карточки, грид 2 колонки (7.2):
   Имя | Телефон, E-mail | Комментарий, кнопка — на всю ширину. */
.borjins-form-pane .frm-fluent-form fieldset {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 13px 14px;
	align-items: start;
}

.borjins-form-pane .frm-fluent-form fieldset > legend,
.borjins-form-pane .frm-fluent-form fieldset > .ff_submit_btn_wrapper {
	grid-column: 1 / -1;
}

.borjins-form-pane .frm-fluent-form .ff-el-group {
	margin-bottom: 0;
}

.borjins-form-pane .frm-fluent-form .ff_submit_btn_wrapper {
	margin-top: 3px;
}

@media (max-width: 640px) {
	.borjins-form-hub {
		padding: 20px 16px;
	}

	.borjins-form-pane .frm-fluent-form fieldset {
		grid-template-columns: 1fr;
	}

	.borjins-form-pane .frm-fluent-form fieldset > div.ff-el-group,
	.borjins-form-pane .frm-fluent-form fieldset > .ff_submit_btn_wrapper {
		grid-column: 1;
	}
}

.borjins-form-section {
	background: var(--borjins-card);
	border: 1px solid var(--borjins-line);
	border-radius: 8px;
	padding: 22px 24px;
	margin: 22px 0;
	max-width: 720px;
}

.borjins-form-section h2 {
	font-size: 20px;
	font-weight: 800;
	margin: 0 0 12px;
}

/* ── Шапка: графит ─────────────────────────────────────────────── */

#header .ct-container,
#header [data-row] {
	background: var(--borjins-graphite);
}

#header [data-row] > .ct-container {
	background: transparent;
}

#header .site-title a,
#header .site-description {
	color: #fff;
}

#header .site-description {
	color: #aeb9c5;
}

#header [data-items] a:not(.borjins-btn-request) {
	color: #dbe3ea;
}

#header [data-items] a:hover {
	color: #fff;
}

/* ── Каталог: карточки товаров ─────────────────────────────────── */

.woocommerce ul.products li.product,
ul.products li.product {
	background: var(--borjins-card);
	border: 1px solid var(--borjins-line);
	border-radius: 8px;
	padding: 14px 16px 16px;
	transition: box-shadow 0.15s ease;
	display: flex;
	flex-direction: column;
	gap: 10px;
}

ul.products li.product:hover {
	box-shadow: 0 6px 22px rgba(24, 32, 43, 0.1);
}

ul.products li.product {
	position: relative;
}

/* Порядок элементов карточки — по концепту. */
ul.products li.product > a.woocommerce-LoopProduct-link,
ul.products li.product .ct-media-container,
ul.products li.product figure {
	order: 0;
}

ul.products li.product .woocommerce-loop-product__title { order: 1; }
ul.products li.product .borjins-sub { order: 2; }
ul.products li.product .borjins-specs { order: 3; }
ul.products li.product .borjins-stock { order: 4; }
ul.products li.product .borjins-warranty { order: 5; }
ul.products li.product .price { order: 6; }
ul.products li.product .borjins-price-note { order: 7; }
ul.products li.product .borjins-cta-row { order: 9; margin-top: auto; }

ul.products li.product .woocommerce-loop-product__title,
ul.products li.product .woocommerce-loop-product__link h2 {
	font-size: 16.5px;
	font-weight: 700;
	color: var(--borjins-ink);
}

.borjins-sub {
	font-size: 12.5px;
	color: var(--borjins-muted);
	margin-top: -6px;
}

/* Дубль названия от Blocksy (заголовок-ссылка с полным именем) не показываем. */
ul.products li.product .woocommerce-loop-product__title:has(> a.woocommerce-LoopProduct-link) {
	display: none;
}

/* Название модели — текстовая ссылка на товар (7.4): ink, hover accent. */
ul.products li.product .borjins-loop-title a {
	color: var(--borjins-ink);
	text-decoration: none;
	transition: color 0.12s ease;
}

ul.products li.product .borjins-loop-title a:hover {
	color: var(--borjins-accent);
}

/* Фото — на серой панели. */
ul.products li.product img {
	background: #f0f3f6;
	border-radius: 6px;
	width: 100%;
	height: auto;
}

/* Бейджи */
.borjins-badge {
	position: absolute;
	top: 10px;
	left: 10px;
	z-index: 2;
	font-size: 11px;
	font-weight: 700;
	border-radius: 3px;
	padding: 2px 7px;
	letter-spacing: 0.03em;
}

.borjins-badge--hit {
	background: var(--borjins-accent);
	color: #fff;
}

.borjins-badge--alt {
	background: #fff;
	color: var(--borjins-accent);
	border: 1px solid var(--borjins-accent);
}

/* Ряд кнопок */
.borjins-cta-row {
	display: flex;
	gap: 8px;
	width: 100%;
}

.borjins-cta-row .borjins-btn-request {
	flex: 1;
}

.borjins-btn-compare {
	background: #fff;
	color: var(--borjins-muted) !important;
	border: 1px solid var(--borjins-line);
	border-radius: 5px;
	padding: 10px 12px;
	font-size: 13px;
	text-align: center;
	text-decoration: none !important;
}

.borjins-btn-compare:hover {
	color: var(--borjins-accent) !important;
	border-color: var(--borjins-accent);
}

/* Ползунок мощности */
.borjins-range__track {
	position: relative;
	height: 26px;
	margin: 4px 6px 0;
}

.borjins-range__track::before {
	content: "";
	position: absolute;
	left: 0;
	right: 0;
	top: 50%;
	height: 4px;
	transform: translateY(-50%);
	background: var(--borjins-line);
	border-radius: 2px;
}

.borjins-range__track input[type="range"] {
	position: absolute;
	left: 0;
	width: 100%;
	top: 50%;
	transform: translateY(-50%);
	margin: 0;
	background: transparent;
	-webkit-appearance: none;
	appearance: none;
	pointer-events: none;
	height: 26px;
}

.borjins-range__track input[type="range"]::-webkit-slider-thumb {
	-webkit-appearance: none;
	appearance: none;
	pointer-events: auto;
	width: 16px;
	height: 16px;
	border-radius: 50%;
	background: #fff;
	border: 2px solid var(--borjins-accent);
	cursor: pointer;
}

.borjins-range__track input[type="range"]::-moz-range-thumb {
	pointer-events: auto;
	width: 14px;
	height: 14px;
	border-radius: 50%;
	background: #fff;
	border: 2px solid var(--borjins-accent);
	cursor: pointer;
}

.borjins-range__vals {
	display: flex;
	justify-content: space-between;
	font-size: 12.5px;
	color: var(--borjins-muted);
	font-variant-numeric: tabular-nums;
	margin: 2px 4px 0;
}

.borjins-topbar__msk {
	color: #aeb9c5;
}

/* Характеристики */
.borjins-specs {
	list-style: none;
	margin: 0;
	padding: 0;
	font-size: 13px;
	width: 100%;
}

.borjins-specs li {
	display: flex;
	justify-content: space-between;
	gap: 10px;
	padding: 3px 0;
	border-bottom: 1px dashed #edf0f3;
}

.borjins-specs li span:first-child {
	color: var(--borjins-muted);
}

.borjins-specs li span:last-child {
	font-weight: 600;
	font-variant-numeric: tabular-nums;
	text-align: right;
}

/* Наличие */
.borjins-stock {
	font-size: 12.5px;
	font-weight: 700;
	border-radius: 4px;
	padding: 4px 9px;
	display: inline-flex;
	align-items: center;
	gap: 6px;
	width: fit-content;
}

.borjins-stock::before {
	content: "";
	width: 8px;
	height: 8px;
	border-radius: 50%;
	background: currentColor;
}

.borjins-stock--in {
	background: var(--borjins-ok-bg);
	color: var(--borjins-ok);
}

.borjins-stock--order {
	background: var(--borjins-wait-bg);
	color: var(--borjins-wait);
}

.borjins-stock--soon {
	background: var(--borjins-exp-bg);
	color: var(--borjins-exp);
}

/* Гарантия */
.borjins-warranty {
	font-size: 12px;
	color: var(--borjins-muted);
}

.borjins-warranty b {
	color: var(--borjins-ink);
	font-variant-numeric: tabular-nums;
}

/* Цена */
ul.products li.product .price {
	font-size: 15px;
	font-weight: 800;
	color: var(--borjins-ink);
}

/* Бейдж Blocksy «Распродано» скрываем — статус показывает наш бейдж наличия. */
ul.products li.product .out-of-stock-badge {
	display: none;
}

/* Служебный заголовок «Главная» на титульной странице не показываем. */
body.home .page-title,
body.home h1.entry-title {
	display: none;
}

/* ── Типографика статических страниц — по масштабу концепта ────── */

.page .hero-section .page-title,
.page h1.entry-title,
.single-post .hero-section .page-title,
.single-post h1.entry-title {
	font-size: clamp(22px, 3.4vw, 30px);
	font-weight: 800;
	letter-spacing: -0.01em;
	text-align: left;
	margin: 4px 0 4px;
}

/* Заголовок Blocksy (.hero-section.is-width-constrained) использует свою
   ширину контейнера (--theme-container-width-base, 1290px) — она шире и не
   совпадает с .ct-container (1200px), из-за чего H1 «уезжал» левее хлебных
   крошек и белой карточки контента. Приводим к единой сетке сайта.
   Тот же шаблон Blocksy используется и на страницах записей блога (.single-post). */
.page:not(.home) .hero-section.is-width-constrained,
.single-post .hero-section.is-width-constrained {
	max-width: 1200px;
	width: 100%;
	margin-left: auto;
	margin-right: auto;
	padding-left: 20px;
	padding-right: 20px;
	box-sizing: border-box;
}

/* Та же проблема ширины .is-width-constrained (см. выше) — на карточке
   товара (.single-product, шаблон WooCommerce/Blocksy, класс .page не
   применяется). Из-за неё верхний блок товара (галерея+сводка), вкладки
   описания/характеристик и «Похожие модели» уезжали левее хлебных крошек
   (.ct-container, 1200px). Приводим все .is-width-constrained блоки
   страницы товара к единой сетке сайта. Верхний блок — через
   .product-entry-wrapper (реальная обёртка галереи+сводки на этом
   шаблоне; .hero-section тут содержит только пустой заголовок). */
.single-product .hero-section.is-width-constrained,
.single-product .tabs.wc-tabs.is-width-constrained,
.single-product section.related.is-width-constrained {
	max-width: 1200px;
	width: 100%;
	margin-left: auto !important;
	margin-right: auto !important;
	padding-left: 20px;
	padding-right: 20px;
	box-sizing: border-box;
}
/* !important на margin обязателен: у вкладок специфичность (0,4,0) проигрывает
   правилу ниже `.single-product .woocommerce-tabs[data-type*="center"] ul.wc-tabs`
   (0,4,1) — обёртка .woocommerce-tabs реально рендерится с data-type="type-1:center",
   атрибутный селектор добавляет вес и перебивает margin:auto без !important. */

/* Контент страницы — белая карточка, не во всю ширину (раздел 3 ТЗ).
   .article-wrapper на этих страницах во всю ширину экрана (без max-width),
   поэтому карточку нужно центрировать явно — иначе она прижимается влево.
   Записи блога (.single-post) используют тот же голый Blocksy-шаблон —
   без карточки заголовок и текст статьи «уезжали» от сетки сайта. */
.page:not(.home) .entry-content,
.single-post .entry-content {
	background: var(--borjins-card);
	border: 1px solid var(--borjins-line);
	border-radius: 10px;
	padding: 26px 28px;
	max-width: 860px;
	margin-top: 14px;
	margin-left: auto;
	margin-right: auto;
}

.page .entry-content h2,
.single-post .entry-content h2 {
	font-size: 21px;
	font-weight: 800;
	margin: 28px 0 10px;
}

.page .entry-content > h2:first-child,
.single-post .entry-content > h2:first-child {
	margin-top: 0;
}

.page .entry-content h3,
.single-post .entry-content h3 {
	font-size: 16.5px;
	font-weight: 700;
	margin: 20px 0 8px;
}

.page .entry-content p,
.page .entry-content li,
.single-post .entry-content p,
.single-post .entry-content li {
	font-size: 15px;
	line-height: 1.7;
	max-width: 72ch;
}

.page .entry-content p,
.single-post .entry-content p {
	margin-bottom: 14px;
}

.page .entry-content > p:first-child,
.single-post .entry-content > p:first-child {
	font-size: 16px;
}

.page .entry-content li,
.single-post .entry-content li {
	margin-bottom: 6px;
}

.page .entry-content li::marker,
.single-post .entry-content li::marker {
	color: var(--borjins-accent);
}

/* Раскладка Gutenberg центрирует сжатые блоки — прижимаем влево.
   Только внутри карточки страниц (.page:not(.home)) и записей блога
   (.single-post): на главной .entry-content не обёрнут в карточку
   фиксированной ширины, и это правило перебивало центрирующее margin:auto
   из core-стилей (.is-layout-constrained), из-за чего блоки на всю ширину
   экрана прижимались влево. */
.page:not(.home) .entry-content > *,
.single-post .entry-content > * {
	margin-left: 0 !important;
	margin-right: auto !important;
}

/* Главная (.home): .entry-content не завёрнут в карточку и должен вести себя
   как обычный Gutenberg-контент — по центру, в контейнере ~1200px, как шапка
   и подвал сайта (.ct-container). Явно задаём центрирование и ширину: */
body.home .entry-content {
	max-width: 1200px;
	margin-left: auto !important;
	margin-right: auto !important;
	width: 100% !important;
}

body.home .entry-content > * {
	margin-left: auto !important;
	margin-right: auto !important;
}

.page .entry-content ul {
	padding-left: 22px;
	margin: 8px 0 14px;
}

/* ── Кнопки ────────────────────────────────────────────────────── */

.borjins-btn-request {
	display: inline-block;
	background: var(--borjins-accent);
	color: #fff !important;
	border-radius: 5px;
	padding: 10px 12px;
	font-weight: 700;
	font-size: 14px;
	text-align: center;
	text-decoration: none !important;
	transition: background 0.12s ease;
}

.borjins-btn-request:hover {
	background: var(--borjins-accent-d);
}

.borjins-btn-engineer {
	display: inline-block;
	background: #fff;
	color: var(--borjins-accent) !important;
	border: 1px solid var(--borjins-accent);
	border-radius: 5px;
	padding: 10px 16px;
	font-weight: 600;
	font-size: 14px;
	text-align: center;
	text-decoration: none !important;
}

.borjins-btn-engineer:hover {
	background: var(--borjins-accent-t);
}

.borjins-single-cta {
	display: flex;
	gap: 10px;
	flex-wrap: wrap;
	margin: 16px 0;
}

/* ── Карточка товара: страница по дизайн-языку концепта ────────── */

/* Кнопку «В корзину» и количество скрываем — продажа через заявку. */
.single-product form.cart .single_add_to_cart_button,
.single-product form.cart .quantity,
.single-product .ct-cart-actions {
	display: none;
}

/* ── Верх в две колонки (7.1): галерея не шире 46%, sticky ─────── */

/* .product-entry-wrapper несёт класс .is-width-constrained (ширина Blocksy,
   не совпадающая с .ct-container, см. комментарий выше про хлебные крошки/
   .hero-section) — приводим к единой сетке сайта 1200px, иначе блок
   галереи+сводки уезжает левее хлебных крошек. */
.single-product .product-entry-wrapper {
	display: grid;
	grid-template-columns: minmax(0, 46%) minmax(0, 1fr);
	gap: 28px;
	align-items: start;
	max-width: 1200px;
	width: 100%;
	margin-left: auto;
	margin-right: auto;
	padding-left: 20px;
	padding-right: 20px;
	box-sizing: border-box;
}

/* Правая колонка обычно длиннее — галерея прилипает к верху своей. */
.single-product .woocommerce-product-gallery {
	position: sticky;
	top: 16px;
	width: 100% !important;
	max-width: none !important;
	opacity: 1;
}

/* Колонки занимают свои ячейки целиком — ширины Blocksy сбрасываем. */
.single-product .summary.entry-summary {
	width: 100% !important;
	max-width: none !important;
	float: none;
	margin: 0;
}

@media (max-width: 900px) {
	/* Товар: галерея */
	.single-product .product-entry-wrapper {
		grid-template-columns: minmax(0, 1fr);
		gap: 18px;
	}

	.single-product .woocommerce-product-gallery {
		position: static;
	}

	/* Товар: CTA-кнопки */
	.single-product .borjins-single-cta {
		flex-direction: column;
	}

	.single-product .borjins-single-cta .borjins-btn-request,
	.single-product .borjins-single-cta .borjins-btn-engineer {
		width: 100%;
	}

	/* Меню */
	.borjins-nav__menu {
		flex-wrap: wrap;
	}

	.borjins-nav__menu .sub-menu {
		position: static;
		min-width: 0;
		width: 100%;
		border-radius: 0;
		box-shadow: none;
	}

	/* Архив каталога: раскладка (мобильная раскладка: тулбар → сайдбар → карточки, раздел 5 ТЗ) */
	.post-type-archive-product .ct-container > section,
	.tax-product_cat .ct-container > section {
		display: flex;
		flex-direction: column;
	}

	.post-type-archive-product .woocommerce-result-count,
	.tax-product_cat .woocommerce-result-count {
		order: 1;
		margin-bottom: 6px;
	}

	.post-type-archive-product .borjins-sort,
	.tax-product_cat .borjins-sort {
		order: 2;
		margin-bottom: 12px;
	}

	.post-type-archive-product .ct-container section .borjins-filters,
	.tax-product_cat .ct-container section .borjins-filters {
		order: 3;
	}

	.post-type-archive-product .ct-container > section > ul.products,
	.tax-product_cat .ct-container > section > ul.products {
		order: 4;
	}

	.post-type-archive-product .ct-container > section > .borjins-quiz,
	.post-type-archive-product .ct-container > section > .borjins-howto,
	.post-type-archive-product .ct-container > section > .borjins-services,
	.tax-product_cat .ct-container > section > .borjins-quiz,
	.tax-product_cat .ct-container > section > .borjins-seo,
	.tax-product_cat .ct-container > section > .borjins-services {
		order: 5;
	}

	/* Архив каталога: фильтры */
	.borjins-filters {
		position: static;
		width: 100%;
		flex: 0 0 auto;
		margin-bottom: 18px;
	}

	/* Липкая панель */
	.borjins-sticky-bar {
		display: flex;
	}

	body {
		padding-bottom: 46px;
	}
}

/* Главный кадр: панель #f0f3f6 с фиксированной пропорцией 4:3 —
   размер блока не зависит от размера картинки (7.1). */
.single-product .woocommerce-product-gallery figure.ct-media-container {
	background: #f0f3f6;
	border-radius: 8px;
	padding: 18px;
	aspect-ratio: 4 / 3;
	display: flex;
	align-items: center;
	justify-content: center;
	cursor: zoom-in;
}

.single-product .woocommerce-product-gallery figure.ct-media-container img {
	aspect-ratio: auto !important;
	width: 100%;
	height: 100%;
	object-fit: contain;
	border-radius: 6px;
}

/* Стрелки flexy скрываем — переключение по миниатюрам и лайтбоксу. */
.single-product .woocommerce-product-gallery .flexy-arrow-prev,
.single-product .woocommerce-product-gallery .flexy-arrow-next {
	display: none;
}

/* Кадры переключает тема (borjins.js), а не ленивый flexy Blocksy:
   виден только текущий кадр, трансформации слайдера отключены. */
.single-product .borjins-gallery .flexy-items {
	display: block;
	transform: none !important;
}

.single-product .borjins-gallery .flexy-item {
	display: none;
	width: 100% !important;
	height: auto !important;
	transform: none !important;
	order: 0 !important;
}

.single-product .borjins-gallery .flexy-item.is-on {
	display: block;
}

/* Hover-zoom Woo/Blocksy конфликтует с панелью 4:3 — увеличение даёт лайтбокс. */
.single-product .woocommerce-product-gallery .zoomImg {
	display: none !important;
}

/* Миниатюры под главным кадром: 66px, radius 6, активная — акцент. */
.single-product .flexy-pills[data-type="thumbs"] {
	margin-top: 10px;
}

.single-product .flexy-pills[data-type="thumbs"] ol {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin: 0;
	padding: 0;
	list-style: none;
	justify-content: flex-start;
}

.single-product .flexy-pills[data-type="thumbs"] li {
	width: 66px;
	height: 66px;
	flex: none;
	margin: 0;
	padding: 0;
	border: 2px solid var(--borjins-line);
	border-radius: 6px;
	overflow: hidden;
	background: #f0f3f6;
	cursor: pointer;
	transition: border-color 0.12s ease;
}

.single-product .flexy-pills[data-type="thumbs"] li:hover {
	border-color: var(--borjins-accent);
}

.single-product .flexy-pills[data-type="thumbs"] li.active {
	border-color: var(--borjins-accent);
	box-shadow: 0 0 0 3px var(--borjins-accent-t);
}

.single-product .flexy-pills[data-type="thumbs"] li .ct-media-container {
	display: block;
	width: 100%;
	height: 100%;
}

.single-product .flexy-pills[data-type="thumbs"] li img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	border-radius: 0;
}

/* ── Лайтбокс галереи (7.1): клик по главному кадру ────────────── */

.borjins-lightbox {
	position: fixed;
	inset: 0;
	z-index: 10000;
	background: rgba(13, 17, 23, 0.9);
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 48px 72px;
}

.borjins-lightbox[hidden] {
	display: none;
}

.borjins-lightbox img {
	max-width: min(1100px, 100%);
	max-height: 84vh;
	object-fit: contain;
	border-radius: 8px;
	background: #f0f3f6;
	padding: 16px;
}

.borjins-lightbox button {
	position: absolute;
	width: 44px;
	height: 44px;
	display: flex;
	align-items: center;
	justify-content: center;
	background: rgba(255, 255, 255, 0.08);
	color: #fff;
	border: 1px solid rgba(255, 255, 255, 0.28);
	border-radius: 50%;
	font-size: 22px;
	line-height: 1;
	cursor: pointer;
	transition: background 0.12s ease;
}

.borjins-lightbox button:hover {
	background: rgba(255, 255, 255, 0.2);
}

.borjins-lightbox button:focus-visible {
	outline: 2px solid #8fc4ef;
	outline-offset: 2px;
}

.borjins-lightbox__close {
	top: 18px;
	right: 18px;
}

.borjins-lightbox__prev {
	left: 16px;
	top: 50%;
	transform: translateY(-50%);
}

.borjins-lightbox__next {
	right: 16px;
	top: 50%;
	transform: translateY(-50%);
}

.borjins-lightbox__count {
	position: absolute;
	bottom: 16px;
	left: 50%;
	transform: translateX(-50%);
	color: #aeb9c5;
	font-size: 13px;
	font-variant-numeric: tabular-nums;
}

@media (max-width: 700px) {
	.borjins-lightbox {
		padding: 60px 12px;
	}

	.borjins-lightbox__prev {
		left: 8px;
	}

	.borjins-lightbox__next {
		right: 8px;
	}
}

.single-product h1.product_title {
	font-size: clamp(22px, 3vw, 28px);
	font-weight: 800;
	letter-spacing: -0.01em;
	margin: 0 0 2px;
	text-wrap: balance;
}

.borjins-sub--single {
	font-size: 13.5px;
	margin: 0 0 12px;
}

.borjins-single-status {
	display: flex;
	align-items: center;
	gap: 14px;
	flex-wrap: wrap;
	margin: 0 0 4px;
}

.single-product .summary .price {
	font-size: 24px;
	font-weight: 800;
	color: var(--borjins-ink);
	margin: 10px 0 0;
}

.borjins-price-note--single {
	display: block;
	font-size: 12px;
	color: var(--borjins-muted);
	margin: 2px 0 10px;
}

.single-product .woocommerce-product-details__short-description {
	color: var(--borjins-muted);
	font-size: 14px;
	max-width: 60ch;
}

.single-product .ct-product-divider {
	display: none;
}

/* Конструктор допоборудования — .cfg-right концепта. */
.single-product form.cart {
	background: var(--borjins-card);
	border: 1px solid var(--borjins-line);
	border-radius: 10px;
	padding: 18px;
	margin-top: 14px;
}

.single-product .wapf-wrapper {
	border: none;
	border-radius: 0;
	padding: 0;
	margin: 0;
	background: transparent;
}

.single-product .wapf-field-label label,
.single-product .wapf-field-label label span {
	font-weight: 800;
	font-size: 16.5px;
	color: var(--borjins-ink);
}

.single-product .wapf-field-label {
	margin-bottom: 10px;
}

/* Опции — .opt концепта: строки с рамкой, подсветка выбранных. */
.single-product .wapf-checkable {
	margin-bottom: 8px;
}

.single-product .wapf-checkable .wapf-input-label {
	display: flex;
	align-items: flex-start;
	gap: 12px;
	padding: 11px 12px;
	border: 1px solid var(--borjins-line);
	border-radius: 7px;
	cursor: pointer;
	transition: border-color 0.12s, background 0.12s;
	margin: 0;
}

.single-product .wapf-checkable .wapf-input-label:hover {
	border-color: #b9cfe3;
}

.single-product .wapf-checkable .wapf-input-label:has(input:checked) {
	border-color: var(--borjins-accent);
	background: var(--borjins-accent-t);
}

.single-product .wapf-checkable input.wapf-input {
	accent-color: var(--borjins-accent);
	width: 16px;
	height: 16px;
	margin-top: 3px;
	flex: none;
}

.single-product .wapf-label-text {
	flex: 1;
	display: flex;
	justify-content: space-between;
	gap: 12px;
	font-size: 14px;
	font-weight: 600;
	color: var(--borjins-ink);
}

.single-product .wapf-pricing-hint {
	font-weight: 700;
	white-space: nowrap;
	color: var(--borjins-ink);
	font-variant-numeric: tabular-nums;
}

/* Итоги — .cfg-total концепта: линия сверху, итог крупно. */
.single-product .wapf-product-totals {
	margin-top: 16px;
	padding-top: 16px;
	border-top: 1px solid var(--borjins-line);
}

.single-product .wapf--inner > div {
	display: flex;
	justify-content: space-between;
	align-items: baseline;
	gap: 16px;
	font-size: 13.5px;
	color: var(--borjins-muted);
	padding: 2px 0;
}

.single-product .wapf--inner .price {
	font-size: 14px;
	font-weight: 700;
	color: var(--borjins-ink);
	margin: 0;
	font-variant-numeric: tabular-nums;
}

.single-product .wapf--inner > div:last-child {
	margin-top: 6px;
	color: var(--borjins-ink);
	font-weight: 700;
}

.single-product .wapf--inner .wapf-grand-total {
	font-size: 22px;
	font-weight: 800;
}

/* CTA: акцентная кнопка + ghost, «Добавить в КП» — второстепенная. */
.single-product .borjins-single-cta {
	margin: 16px 0 4px;
}

.single-product .borjins-single-cta .borjins-btn-request,
.single-product .borjins-single-cta .borjins-btn-engineer {
	padding: 12px 22px;
	font-size: 15px;
}

.single-product .yith-ywraq-add-to-quote {
	margin: 6px 0 0;
}

.single-product .add-request-quote-button {
	background: #fff !important;
	color: var(--borjins-muted) !important;
	border: 1px solid var(--borjins-line) !important;
	border-radius: 5px !important;
	padding: 9px 16px !important;
	font-size: 13px !important;
	font-weight: 600 !important;
	display: inline-block;
	text-decoration: none !important;
}

.single-product .add-request-quote-button:hover {
	color: var(--borjins-accent) !important;
	border-color: var(--borjins-accent) !important;
}

/* Артикул и категория. */
.single-product .product_meta {
	margin-top: 16px;
	padding-top: 12px;
	border-top: 1px solid var(--borjins-line);
	font-size: 12.5px;
	color: var(--borjins-muted);
	display: flex;
	flex-direction: column;
	gap: 2px;
	text-transform: none;
	letter-spacing: normal;
}

.single-product .product_meta a {
	color: var(--borjins-accent);
	text-decoration: none;
}

/* Плотный вертикальный ритм правой колонки — без дыр (7.1). */
.single-product .entry-summary-items > * {
	--product-element-spacing: 16px;
}

/* Вкладки начинаются сразу после верхних блоков + 30px (7.1). */
.single-product .product-entry-wrapper {
	margin-bottom: 0 !important;
}

.single-product .woocommerce-tabs {
	margin-top: 30px !important;
	padding-top: 0 !important;
}

/* Вкладки «Описание / Характеристики». */
.single-product .woocommerce-tabs ul.wc-tabs,
.single-product .woocommerce-tabs[data-type*="center"] ul.wc-tabs {
	display: flex;
	justify-content: flex-start !important;
	gap: 6px;
	border-bottom: 1px solid var(--borjins-line);
	margin: 0 0 20px;
	padding: 0;
}

/* Контент вкладок — влево, без авто-центровки Gutenberg-раскладки. */
.single-product .woocommerce-Tabs-panel > *,
.single-product .woocommerce-Tabs-panel.is-layout-constrained > * {
	margin-left: 0 !important;
	margin-right: auto !important;
}

.single-product .wc-tabs li {
	margin: 0;
}

.single-product .wc-tabs li a {
	display: block;
	padding: 10px 16px;
	font-weight: 700;
	font-size: 14.5px;
	color: var(--borjins-muted);
	border-bottom: 2px solid transparent;
	text-transform: none;
	letter-spacing: normal;
}

.single-product .wc-tabs li.active a {
	color: var(--borjins-ink);
	border-bottom-color: var(--borjins-accent);
}

/* Типографика описания (post_content) — раздел 3 ТЗ: белая карточка.
   Как и .page .entry-content (см. выше) — карточка внутри полноширинной
   родительской обёртки, без auto-margin она прижималась влево (x=0). */
.single-product .woocommerce-Tabs-panel--description {
	background: var(--borjins-card);
	border: 1px solid var(--borjins-line);
	border-radius: 10px;
	padding: 26px 28px;
	max-width: 860px;
	margin-left: auto;
	margin-right: auto;
}

.single-product .woocommerce-Tabs-panel--description h2 {
	font-size: 21px;
	font-weight: 800;
	margin: 28px 0 10px;
}

.single-product .woocommerce-Tabs-panel--description > h2:first-child {
	margin-top: 0;
}

.single-product .woocommerce-Tabs-panel--description h3 {
	font-size: 16.5px;
	font-weight: 700;
	margin: 20px 0 8px;
}

.single-product .woocommerce-Tabs-panel--description p,
.single-product .woocommerce-Tabs-panel--description li {
	font-size: 15px;
	line-height: 1.7;
	max-width: 72ch;
}

.single-product .woocommerce-Tabs-panel--description > p:first-child {
	font-size: 16px;
}

.single-product .woocommerce-Tabs-panel--description p {
	margin-bottom: 16px;
}

.single-product .woocommerce-Tabs-panel--description ul {
	padding-left: 22px;
	margin: 8px 0 14px;
}

.single-product .woocommerce-Tabs-panel--description li {
	margin-bottom: 6px;
}

.single-product .woocommerce-Tabs-panel--description li::marker {
	color: var(--borjins-accent);
}

.single-product .woocommerce-Tabs-panel {
	overflow-x: auto;
}

/* Характеристики — таблица в стиле .specs концепта. */
.single-product .shop_attributes {
	width: 100%;
	max-width: 640px;
	border-collapse: collapse;
	font-size: 13.5px;
}

.single-product .shop_attributes tr {
	border-bottom: 1px dashed #edf0f3;
}

.single-product table.shop_attributes tr,
.single-product table.shop_attributes tr:nth-child(2n) th,
.single-product table.shop_attributes tr:nth-child(2n) td,
.single-product table.shop_attributes th,
.single-product table.shop_attributes td {
	background: transparent !important;
	padding: 7px 0;
	border: none;
}

.single-product .shop_attributes th {
	color: var(--borjins-muted);
	font-weight: 400;
	text-align: left;
	font-style: normal;
}

.single-product .shop_attributes td {
	text-align: right;
	font-weight: 600;
	font-variant-numeric: tabular-nums;
	color: var(--borjins-ink);
}

.single-product .shop_attributes td p {
	margin: 0;
	display: inline;
}

/* Формы заявок — две панели рядом. */
.borjins-form-duo {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 16px;
	margin: 34px 0 0;
}

.borjins-form-duo .borjins-form-section {
	margin: 0;
	max-width: none;
}

@media (max-width: 860px) {
	.borjins-form-duo {
		grid-template-columns: 1fr;
	}
}

/* «Похожие модели». */
.single-product section.related.products {
	margin-top: 34px;
}

.single-product .related .ct-module-title {
	font-size: 21px;
	font-weight: 800;
	margin: 0 0 12px;
	text-align: left;
}

/* ── Верхняя панель контактов ──────────────────────────────────── */

/* Топбар — .topbar концепта: графит #161d26, min-height 38px, gap 22px. */
.borjins-topbar {
	background: var(--borjins-graphite);
	color: #9fadbd;
	font-size: 12.5px;
}

.borjins-topbar__in {
	max-width: 1200px;
	margin: 0 auto;
	padding: 4px 20px;
	min-height: 36px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 22px;
	flex-wrap: wrap;
}

.borjins-topbar a {
	color: #d3dde7;
	text-decoration: none;
}

.borjins-topbar a:hover {
	color: #fff;
}

.borjins-topbar__phone {
	font-weight: 700;
	color: #fff !important;
	font-variant-numeric: tabular-nums;
}

.borjins-topbar__msngr {
	display: flex;
	gap: 8px;
	align-items: center;
}

/* Чипы мессенджеров — .chip концепта, с цветной точкой. */
.borjins-topbar__msngr a {
	display: inline-flex;
	align-items: center;
	gap: 5px;
	border: 1px solid #33404e;
	border-radius: 999px;
	padding: 2px 10px;
	font-size: 12px;
}

.borjins-topbar__msngr a::before {
	content: "";
	width: 7px;
	height: 7px;
	border-radius: 50%;
	background: #8fc4ef;
}

.borjins-topbar__msngr a[href*="t.me"]::before {
	background: #2aabee;
}

.borjins-topbar__msngr a[href*="wa.me"]::before {
	background: #25d366;
}

.borjins-topbar__msngr a[href*="max.ru"]::before {
	background: #7d5df6;
}

.borjins-topbar__engineer {
	margin-left: auto;
	color: #8fc4ef !important;
	font-weight: 600;
}

@media (max-width: 700px) {
	.borjins-topbar__engineer {
		display: none;
	}
}

/* ── Шапка по концепту (Blocksy-шапку скрываем) ────────────────── */

#header {
	display: none !important;
}

.borjins-header {
	background: var(--borjins-card);
	border-bottom: 1px solid var(--borjins-line);
}

.borjins-header__in {
	max-width: 1200px;
	margin: 0 auto;
	padding: 16px 20px;
	display: flex;
	align-items: center;
	gap: 28px;
	flex-wrap: wrap;
}

.borjins-logo {
	text-decoration: none;
	line-height: 1.1;
}

.borjins-logo__name {
	display: block;
	font-size: 26px;
	font-weight: 800;
	letter-spacing: -0.01em;
	line-height: 1;
	color: var(--borjins-ink);
}

.borjins-logo__name em {
	font-style: normal;
	color: var(--borjins-accent);
}

.borjins-logo__sub {
	display: block;
	font-size: 11.5px;
	color: var(--borjins-muted);
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.borjins-search {
	flex: 1;
	min-width: 220px;
	max-width: 460px;
	height: 44px;
	display: flex;
	border: 1px solid var(--borjins-line);
	border-radius: 8px;
	overflow: hidden;
	background: #fbfcfd;
}

.borjins-search input[type="search"] {
	flex: 1;
	min-width: 0;
	border: none;
	padding: 0 14px;
	font-size: 14px;
	background: transparent;
	color: var(--borjins-ink);
}

.borjins-search input[type="search"]:focus {
	outline: none;
}

.borjins-search button {
	border: none;
	background: var(--borjins-accent);
	color: #fff;
	padding: 0 20px;
	font-size: 14px;
	font-weight: 700;
	cursor: pointer;
}

.borjins-search button:hover {
	background: var(--borjins-accent-d);
}

.borjins-header__cta {
	text-align: right;
}

.borjins-header__phone {
	display: block;
	font-size: 18px;
	font-weight: 800;
	color: var(--borjins-ink) !important;
	text-decoration: none;
	font-variant-numeric: tabular-nums;
}

.borjins-header__callback {
	font-size: 13px;
	color: var(--borjins-accent) !important;
	font-weight: 600;
	text-decoration: none;
	border-bottom: 1px dashed var(--borjins-accent);
}

.borjins-nav {
	background: var(--borjins-graphite-2);
}

.borjins-nav__in {
	max-width: 1200px;
	margin: 0 auto;
	padding: 0 20px;
}

.borjins-nav__menu {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	gap: 2px;
}

.borjins-nav__menu > li {
	position: relative;
	white-space: nowrap;
}

.borjins-nav__menu a {
	display: block;
	color: #dbe3ea;
	font-size: 14px;
	font-weight: 600;
	padding: 11px 16px;
	text-decoration: none;
}

.borjins-nav__menu a:hover,
.borjins-nav__menu > li.current-menu-item > a {
	background: var(--borjins-accent);
	color: #fff;
}

.borjins-nav__menu .sub-menu {
	display: none;
	position: absolute;
	left: 0;
	top: 100%;
	z-index: 50;
	list-style: none;
	margin: 0;
	padding: 6px 0;
	min-width: 280px;
	background: var(--borjins-card);
	border: 1px solid var(--borjins-line);
	border-radius: 0 0 8px 8px;
	box-shadow: 0 10px 28px rgba(24, 32, 43, 0.14);
}

.borjins-nav__menu .sub-menu a {
	color: var(--borjins-ink);
	font-weight: 500;
	padding: 8px 16px;
	white-space: normal;
}

.borjins-nav__menu .sub-menu a:hover {
	background: var(--borjins-accent-t);
	color: var(--borjins-accent);
}

.borjins-nav__menu li:hover > .sub-menu,
.borjins-nav__menu li:focus-within > .sub-menu,
.borjins-nav__menu li.is-open > .sub-menu {
	display: block;
}

/* Видимый индикатор подменю. */
.borjins-nav__menu > li.menu-item-has-children > a::after {
	content: "▾";
	margin-left: 6px;
	font-size: 11px;
	opacity: 0.75;
}

.borjins-nav__menu > li.menu-item-has-children.is-open > a::after {
	content: "▴";
}

/* Hero Blocksy на архивах скрыт — заголовок рендерит тема (borjins-arch-head). */
.post-type-archive-product .hero-section,
.tax-product_cat .hero-section,
.post-type-archive-product .woocommerce-products-header,
.tax-product_cat .woocommerce-products-header {
	display: none;
}

/* Шапка архива всегда прижата влево — никаких центрирований Blocksy. */
.borjins-arch-head,
.borjins-arch-head h1,
.borjins-seo {
	text-align: left;
}

/* ── Хлебные крошки — .crumbs концепта, единые для всех страниц ── */

/* Родные крошки Blocksy отключены, чтобы не дублировались. */
.ct-breadcrumbs {
	display: none !important;
}

.borjins-crumbs-bar {
	max-width: 1200px;
	margin: 0 auto;
	padding: 16px 20px 4px;
}

.borjins-crumbs,
.borjins-crumbs a {
	font-size: 12.5px;
	color: var(--borjins-muted);
	text-decoration: none;
	line-height: 1.55;
}

.borjins-crumbs a:hover {
	color: var(--borjins-accent);
}

.borjins-crumbs b {
	color: var(--borjins-ink);
	font-weight: 600;
	font-size: 12.5px;
}

.borjins-arch-head h1 {
	font-size: clamp(22px, 3.4vw, 30px);
	font-weight: 800;
	letter-spacing: -0.01em;
	margin: 4px 0 4px;
	text-wrap: balance;
}

/* Вводный абзац под H1 — максимум 2 строки, без «хвостов» (7.3). */
.borjins-arch-sub {
	color: var(--borjins-muted);
	font-size: 14px;
	margin: 0 0 18px;
	max-width: 78ch;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

/* ── Каталог: сетка «сайдбар + товары» ─────────────────────────── */

/* Сетка .cat концепта: 250px + 1fr, колонки через 22px.
   Только от 901px — на ≤900px раскладку задаёт консолидированный
   @media(max-width:900px) в начале файла (display:flex+order); это
   правило идёт позже в каскаде и без min-width перебивало бы мобильную
   раскладку обратно в grid независимо от ширины экрана. */
@media (min-width: 901px) {
	.post-type-archive-product .ct-container > section,
	.tax-product_cat .ct-container > section {
		display: grid;
		grid-template-columns: 250px minmax(0, 1fr);
		gap: 0 22px;
		align-items: start;
		padding-bottom: 8px;
	}
}

.post-type-archive-product .ct-container > section > *,
.tax-product_cat .ct-container > section > * {
	grid-column: 2;
}

/* Обёртку тулбара растворяем — фильтры и сортировка встают в сетку сами. */
.post-type-archive-product .woo-listing-top,
.tax-product_cat .woo-listing-top {
	display: contents;
}

.post-type-archive-product .ct-container > section .borjins-arch-head,
.tax-product_cat .ct-container > section .borjins-arch-head {
	grid-column: 1 / -1;
	grid-row: 1;
}

.post-type-archive-product .ct-container section .borjins-filters,
.tax-product_cat .ct-container section .borjins-filters {
	grid-column: 1;
	grid-row: 2 / span 99;
}

/* Тулбар «Найдено: N — чипы сортировки» (.toolbar: margin-bottom 14px). */
.post-type-archive-product .woocommerce-result-count,
.tax-product_cat .woocommerce-result-count {
	grid-column: 2;
	grid-row: 2;
	align-self: center;
	margin: 0 0 14px;
	font-size: 13.5px;
	color: var(--borjins-muted);
	text-transform: none;
	letter-spacing: normal;
	font-weight: 400;
}

.woocommerce-result-count b {
	color: var(--borjins-ink);
	font-variant-numeric: tabular-nums;
}

.post-type-archive-product .borjins-sort,
.tax-product_cat .borjins-sort {
	grid-column: 2;
	grid-row: 2;
	justify-self: end;
	margin-bottom: 14px;
}

/* Выпадающую сортировку Woo заменяют чипы. */
.post-type-archive-product .woocommerce-ordering,
.tax-product_cat .woocommerce-ordering {
	display: none;
}

.borjins-sort {
	display: flex;
	gap: 4px;
}

.borjins-sort a {
	padding: 5px 12px;
	border-radius: 999px;
	border: 1px solid var(--borjins-line);
	background: var(--borjins-card);
	font-size: 13px;
	color: var(--borjins-ink);
	text-decoration: none;
}

.borjins-sort a.is-on {
	background: var(--borjins-ink);
	border-color: var(--borjins-ink);
	color: #fff;
}

/* Сетка карточек — .grid концепта: 3 колонки, gap 14px. */
ul.products[data-products],
ul.products.columns-4 {
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 14px;
}

@media (max-width: 1080px) {
	ul.products[data-products],
	ul.products.columns-4 {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 560px) {
	ul.products[data-products],
	ul.products.columns-4 {
		grid-template-columns: 1fr;
	}
}

/* Квиз-баннер внутри сетки — во всю ширину ряда, как в концепте. */
.borjins-quiz-cell {
	grid-column: 1 / -1;
	list-style: none;
	margin: 0;
	padding: 0;
}

/* Метку категории в карточке не показываем — есть меню и фильтры. */
ul.products li.product .entry-meta,
ul.products li.product .meta-categories {
	display: none;
}

.borjins-price-note {
	font-size: 11.5px;
	color: var(--borjins-muted);
	margin-top: -6px;
}

/* ── Панель фильтров каталога ──────────────────────────────────── */

.borjins-filters {
	background: var(--borjins-card);
	border: 1px solid var(--borjins-line);
	border-radius: 8px;
	padding: 16px;
	position: sticky;
	top: 12px;
}

.borjins-filters__group {
	padding: 12px 0;
	border-bottom: 1px solid var(--borjins-line);
}

.borjins-filters__group:first-child {
	padding-top: 0;
}

.borjins-filters__group:last-of-type {
	border-bottom: none;
}

.borjins-filters__title {
	font-size: 12px;
	font-weight: 700;
	letter-spacing: 0.09em;
	text-transform: uppercase;
	color: var(--borjins-muted);
	margin-bottom: 9px;
}

/* Категории каталога — явная навигация первой группой. */
.borjins-filters__cats {
	list-style: none;
	margin: 0;
	padding: 0;
}

.borjins-filters__cats a {
	display: flex;
	align-items: center;
	gap: 8px;
	font-size: 13.5px;
	padding: 3px 0;
	color: var(--borjins-ink);
	text-decoration: none;
}

.borjins-filters__cats a:hover {
	color: var(--borjins-accent);
}

.borjins-filters__cats .is-current > a {
	color: var(--borjins-accent);
	font-weight: 700;
}

.borjins-filters__ck {
	display: flex;
	align-items: center;
	gap: 8px;
	font-size: 13.5px;
	padding: 3px 0;
	color: var(--borjins-ink);
	cursor: pointer;
}

.borjins-filters__ck input {
	accent-color: var(--borjins-accent);
	width: 15px;
	height: 15px;
}

.borjins-filters__cnt {
	color: #9aa6b2;
	font-size: 12px;
	margin-left: auto;
	font-variant-numeric: tabular-nums;
}

.borjins-filters button {
	width: 100%;
	margin-top: 14px;
	background: var(--borjins-accent);
	color: #fff;
	border: none;
	border-radius: 5px;
	padding: 10px;
	font-weight: 700;
	font-size: 14px;
	cursor: pointer;
}

.borjins-filters button:hover {
	background: var(--borjins-accent-d);
}

.borjins-filters__reset {
	display: block;
	text-align: center;
	margin-top: 8px;
	font-size: 13px;
	color: var(--borjins-muted);
}

/* ── Квиз, гайд и услуги на странице каталога ──────────────────── */

.borjins-quiz {
	background: var(--borjins-graphite);
	color: #fff;
	border-radius: 8px;
	padding: 22px 26px;
	display: flex;
	align-items: center;
	gap: 24px;
	flex-wrap: wrap;
	margin: 0;
}

/* Если квиз не попал в сетку (мало товаров) — отступ как у howto. */
.woo-listing-top ~ .borjins-quiz,
ul.products ~ .borjins-quiz {
	margin: 26px 0 0;
}

.borjins-quiz__text {
	flex: 1;
	min-width: 240px;
}

.borjins-quiz h3 {
	margin: 0 0 4px;
	font-size: 19px;
	font-weight: 800;
	color: #fff;
}

.borjins-quiz p {
	margin: 0;
	color: #aeb9c5;
	font-size: 13.5px;
}

.borjins-howto {
	margin: 34px 0 0;
}

.borjins-howto h2 {
	font-size: 21px;
	font-weight: 800;
	margin: 0 0 12px;
}

.borjins-howto details {
	background: var(--borjins-card);
	border: 1px solid var(--borjins-line);
	border-radius: 7px;
	margin-bottom: 8px;
	overflow: hidden;
}

.borjins-howto summary {
	padding: 13px 44px 13px 18px;
	font-weight: 600;
	font-size: 14.5px;
	cursor: pointer;
	list-style: none;
	position: relative;
}

.borjins-howto summary::-webkit-details-marker {
	display: none;
}

.borjins-howto summary::after {
	content: "+";
	position: absolute;
	right: 18px;
	top: 50%;
	transform: translateY(-50%);
	color: var(--borjins-accent);
	font-size: 20px;
}

.borjins-howto details[open] summary::after {
	content: "–";
}

.borjins-howto details > div {
	padding: 0 18px 15px;
	color: var(--borjins-muted);
	font-size: 14px;
	max-width: 80ch;
}

.borjins-services {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 12px;
	margin: 30px 0 0;
}

/* ── Типографика длинных текстов (раздел 3 ТЗ) ─────────────────── */

/* SEO-текст категории — белая карточка, не во всю ширину, влево. */
.borjins-seo {
	background: var(--borjins-card);
	border: 1px solid var(--borjins-line);
	border-radius: 10px;
	padding: 26px 28px;
	margin: 34px 0 0;
	max-width: 860px;
	color: var(--borjins-ink);
}

.borjins-seo h2 {
	font-size: 21px;
	font-weight: 800;
	margin: 0 0 12px;
	letter-spacing: -0.01em;
}

.borjins-seo p {
	font-size: 15px;
	line-height: 1.7;
	margin: 0 0 14px;
	max-width: 72ch;
}

.borjins-seo h2 + p {
	font-size: 16px;
}

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

/* Маркированный список преимуществ — акцентные маркеры (7.3). */
.borjins-seo ul {
	padding-left: 22px;
	margin: 8px 0 14px;
}

.borjins-seo li {
	font-size: 15px;
	line-height: 1.7;
	margin-bottom: 6px;
	max-width: 72ch;
}

.borjins-seo li::marker {
	color: var(--borjins-accent);
}

/* Свёртка: видимы заголовок и первые 3 блока (<p>/<ul>). */
.borjins-seo.is-collapsed > :nth-child(n + 5):not(.borjins-seo__more) {
	display: none;
}

.borjins-seo__more {
	display: inline-block;
	margin-top: 14px;
	background: none;
	border: none;
	padding: 0;
	font-size: 14px;
	font-weight: 600;
	color: var(--borjins-accent);
	border-bottom: 1px dashed var(--borjins-accent);
	cursor: pointer;
}

.borjins-seo__more:hover {
	color: var(--borjins-accent-d);
}

@media (max-width: 820px) {
	.borjins-services {
		grid-template-columns: repeat(2, 1fr);
	}
}

.borjins-services > div {
	background: var(--borjins-card);
	border: 1px solid var(--borjins-line);
	border-left: 3px solid var(--borjins-accent);
	border-radius: 6px;
	padding: 14px 16px;
}

.borjins-services b {
	display: block;
	font-size: 14.5px;
	margin-bottom: 2px;
}

.borjins-services span {
	font-size: 12.5px;
	color: var(--borjins-muted);
}

/* ── Подвал — footer концепта (Blocksy-футер скрыт) ────────────── */

#footer.ct-footer {
	display: none !important;
}

.borjins-footer {
	background: var(--borjins-graphite);
	color: #9fadbd;
	margin-top: 44px;
	font-size: 13.5px;
}

.borjins-footer__in {
	max-width: 1200px;
	margin: 0 auto;
	padding: 0 20px;
}

.borjins-footer__top {
	display: grid;
	grid-template-columns: 1.3fr 1fr 1.2fr;
	gap: 32px;
	padding: 36px 0 28px;
}

.borjins-footer__col h4 {
	color: #fff;
	font-size: 13px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	margin: 0 0 14px;
}

.borjins-footer__col p {
	font-size: 13.5px;
	line-height: 1.6;
	margin: 0;
	max-width: 34ch;
}

.borjins-footer__nav {
	display: flex;
	flex-direction: column;
	gap: 10px;
}

.borjins-footer b {
	color: #fff;
}

.borjins-footer a {
	color: #9fadbd;
	text-decoration: none;
}

.borjins-footer a:hover {
	color: #fff;
}

.borjins-footer__nav a {
	font-size: 13.5px;
}

.borjins-footer__ph {
	font-size: 19px;
	font-weight: 800;
	color: #fff !important;
	font-variant-numeric: tabular-nums;
	display: block;
	margin-bottom: 4px;
}

.borjins-footer__city {
	font-size: 13px;
	margin-bottom: 10px;
}

.borjins-footer__email {
	font-size: 13.5px;
	display: block;
	margin-bottom: 4px;
}

.borjins-footer__hours {
	font-size: 13px;
	margin-bottom: 14px;
}

.borjins-footer__chips {
	display: flex;
	align-items: center;
	gap: 8px;
}

.borjins-footer__chips a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 26px;
	height: 26px;
	border-radius: 6px;
	background: rgba(255, 255, 255, 0.1);
	color: #cbd5e0;
	font-size: 11px;
	font-weight: 700;
}

.borjins-footer__chips a:hover {
	background: rgba(255, 255, 255, 0.18);
	color: #fff;
}

.borjins-footer__bottom {
	border-top: 1px solid rgba(255, 255, 255, 0.1);
	padding: 16px 0;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	flex-wrap: wrap;
	font-size: 12.5px;
	color: #6e7c8c;
}

.borjins-footer__bottom a {
	color: #6e7c8c;
}

.borjins-footer__bottom a:hover {
	color: #fff;
}

@media (max-width: 600px) {
	.borjins-footer__top {
		grid-template-columns: 1fr;
		gap: 26px;
		padding: 28px 0 22px;
	}

	.borjins-footer__bottom {
		flex-direction: column;
		align-items: flex-start;
		gap: 8px;
	}
}

/* ── Мобильная липкая панель ───────────────────────────────────── */

.borjins-sticky-bar {
	display: none;
	position: fixed;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 999;
	background: var(--borjins-graphite);
	border-top: 1px solid #2b3745;
}

.borjins-sticky-bar a {
	flex: 1;
	text-align: center;
	padding: 12px 4px 13px;
	color: #fff;
	font-size: 13px;
	font-weight: 600;
	text-decoration: none;
}

.borjins-sticky-bar a.is-accent {
	background: var(--borjins-accent);
}

/* Шапка на мобильных (390px): поиск переносится на свою строку. */
@media (max-width: 600px) {
	.borjins-header__in {
		padding-top: 14px;
		padding-bottom: 14px;
	}

	.borjins-search {
		order: 3;
		max-width: none;
		width: 100%;
	}

	.borjins-header__cta {
		margin-left: 0;
		text-align: left;
	}
}

@media (prefers-reduced-motion: reduce) {
	ul.products li.product,
	.borjins-btn-request {
		transition: none;
	}
}

/* ── Страница «Услуги» (/uslugi/) — по мокапу ──────────────────── */

.borjins-intro-card {
	background: var(--borjins-card);
	border: 1px solid var(--borjins-line);
	border-radius: 10px;
	padding: 22px 24px;
	margin-top: 22px;
	max-width: 860px;
}

.borjins-intro-card p {
	font-size: 15.5px;
	line-height: 1.7;
	margin: 0;
	max-width: 72ch;
	color: var(--borjins-ink);
}

.borjins-svc-section {
	margin-top: 32px;
}

.borjins-svc-head {
	margin-bottom: 16px;
}

.borjins-svc-head h2 {
	font-size: 21px;
	font-weight: 800;
	margin: 0 0 4px;
	color: var(--borjins-ink);
}

.borjins-svc-head p {
	font-size: 13.5px;
	color: var(--borjins-muted);
	margin: 0;
	max-width: 78ch;
}

/* Карточки услуг — акцентная левая кромка (паттерн borjins-services). */
.borjins-svc-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 16px;
}

.borjins-svc-card {
	background: var(--borjins-card);
	border: 1px solid var(--borjins-line);
	border-left: 3px solid var(--borjins-accent);
	border-radius: 6px;
	padding: 20px 22px;
	display: flex;
	flex-direction: column;
}

.borjins-svc-card__head {
	display: flex;
	align-items: flex-start;
	gap: 12px;
	margin-bottom: 10px;
}

.borjins-svc-card.no-num .borjins-svc-card__head {
	margin-bottom: 8px;
}

.borjins-svc-num {
	flex-shrink: 0;
	width: 28px;
	height: 28px;
	border-radius: 50%;
	background: var(--borjins-accent);
	color: #fff;
	font-size: 13px;
	font-weight: 800;
	display: flex;
	align-items: center;
	justify-content: center;
}

.borjins-svc-card h3 {
	font-size: 18px;
	font-weight: 700;
	margin: 0;
	line-height: 1.3;
	color: var(--borjins-ink);
}

.borjins-svc-card > p {
	font-size: 14px;
	line-height: 1.6;
	color: var(--borjins-ink);
	margin: 0 0 14px;
}

.borjins-svc-card ul {
	margin: 0;
	padding-left: 20px;
	list-style: none;
}

.borjins-svc-card li {
	position: relative;
	font-size: 13.5px;
	line-height: 1.55;
	color: var(--borjins-ink);
	margin-bottom: 8px;
	padding-left: 4px;
}

.borjins-svc-card li:last-child {
	margin-bottom: 0;
}

.borjins-svc-card li::before {
	content: "";
	position: absolute;
	left: -16px;
	top: 8px;
	width: 6px;
	height: 6px;
	border-radius: 50%;
	background: var(--borjins-accent);
}

/* Финальный CTA — переиспользует графитовый .borjins-quiz, шире и с иным выравниванием. */
.borjins-final-cta {
	margin: 32px 0 44px;
	justify-content: space-between;
}

.borjins-final-cta .borjins-quiz__text p {
	font-size: 15px;
	color: #cbd5e0;
	max-width: 60ch;
	line-height: 1.6;
}

.borjins-final-cta .borjins-quiz__text p b {
	color: #fff;
}

.borjins-final-cta .borjins-btn-request {
	padding: 13px 22px;
	font-size: 14.5px;
	flex-shrink: 0;
}

/* Блок-мост «услуги применимы к любой модели каталога». */
.borjins-models-teaser {
	margin: 0 0 44px;
	background: var(--borjins-card);
	border: 1px solid var(--borjins-line);
	border-radius: 10px;
	padding: 26px 28px;
}

.borjins-models-teaser__head {
	display: flex;
	align-items: baseline;
	justify-content: space-between;
	gap: 16px;
	margin-bottom: 18px;
	flex-wrap: wrap;
}

.borjins-models-teaser__head h2 {
	font-size: 20px;
	font-weight: 800;
	margin: 0 0 4px;
	color: var(--borjins-ink);
}

.borjins-models-teaser__head p {
	font-size: 13px;
	color: var(--borjins-muted);
	margin: 0;
}

.borjins-btn-outline {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	font-size: 13.5px;
	font-weight: 700;
	color: var(--borjins-accent);
	border: 2px solid var(--borjins-accent);
	border-radius: 8px;
	padding: 9px 16px;
	text-decoration: none !important;
	flex-shrink: 0;
	white-space: nowrap;
}

.borjins-btn-outline:hover {
	background: var(--borjins-accent-t);
}

.borjins-models-teaser__grid {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 14px;
}

.borjins-model-card {
	background: #fbfcfd;
	border: 1px solid var(--borjins-line);
	border-radius: 8px;
	overflow: hidden;
	display: flex;
	flex-direction: column;
	text-decoration: none !important;
	transition: box-shadow 0.15s ease;
}

.borjins-model-card:hover {
	box-shadow: 0 6px 22px rgba(24, 32, 43, 0.1);
}

.borjins-model-card__photo {
	aspect-ratio: 16 / 10;
	background: #f0f3f6;
	display: block;
}

.borjins-model-card__photo img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

.borjins-model-card__body {
	padding: 12px 14px;
	display: flex;
	flex-direction: column;
	gap: 2px;
}

.borjins-model-card__sku {
	font-size: 14.5px;
	font-weight: 700;
	color: var(--borjins-ink);
}

.borjins-model-card__sub {
	font-size: 11.5px;
	color: var(--borjins-muted);
	margin-bottom: 4px;
}

.borjins-model-card__price {
	font-size: 13.5px;
	font-weight: 800;
	color: var(--borjins-ink);
}

.borjins-model-card__price .borjins-from {
	font-weight: 400;
	font-size: 11.5px;
	color: var(--borjins-muted);
}

/* ── Мобильная адаптация страницы «Услуги» (390px) ─────────────── */
@media (max-width: 600px) {
	.borjins-intro-card {
		padding: 18px;
	}

	.borjins-svc-grid {
		grid-template-columns: 1fr;
	}

	.borjins-svc-card {
		padding: 16px;
	}

	.borjins-final-cta {
		flex-direction: column;
		align-items: flex-start;
		padding: 22px;
	}

	.borjins-final-cta .borjins-btn-request {
		width: 100%;
		text-align: center;
	}

	.borjins-models-teaser {
		padding: 18px;
	}

	.borjins-models-teaser__head {
		flex-direction: column;
		align-items: flex-start;
		gap: 10px;
	}

	.borjins-models-teaser__grid {
		grid-template-columns: 1fr 1fr;
		gap: 10px;
	}
}

/* ── Страница «Вопросы и ответы» (/voprosy-i-otvety/) ──────────── */

/* Контент страницы выходит из типовой узкой белой карточки (860px) —
   раскладка FAQ сама по себе на всю ширину контейнера, с карточками. */
.page:not(.home) .entry-content:has(.borjins-faq) {
	background: none;
	border: none;
	padding: 0;
	max-width: 1200px;
	margin-left: auto;
	margin-right: auto;
}

.borjins-faq__lead {
	color: var(--borjins-muted);
	font-size: 14px;
	max-width: 78ch;
	margin: 0 0 4px;
}

.borjins-faq__layout {
	margin-top: 24px;
	display: grid;
	grid-template-columns: 67% 1fr;
	gap: 28px;
	align-items: start;
}

/* Правая колонка: навигация по разделам + CTA-карточка. */
.borjins-faq__side {
	position: sticky;
	top: 20px;
	display: flex;
	flex-direction: column;
	gap: 18px;
}

.borjins-faq__side-card {
	background: var(--borjins-card);
	border: 1px solid var(--borjins-line);
	border-radius: 10px;
	padding: 18px;
}

.borjins-faq__side-title {
	font-size: 12px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	color: var(--borjins-muted);
	margin: 0 0 10px;
}

.borjins-faq__side-nav {
	display: flex;
	flex-direction: column;
}

.borjins-faq__side-nav a {
	display: block;
	font-size: 14px;
	font-weight: 600;
	color: var(--borjins-ink);
	text-decoration: none;
	padding: 8px 0;
	border-bottom: 1px dashed var(--borjins-line);
}

.borjins-faq__side-nav a:last-child {
	border-bottom: none;
}

.borjins-faq__side-nav a:hover {
	color: var(--borjins-accent);
}

.borjins-faq__cta h3 {
	font-size: 16px;
	font-weight: 800;
	margin: 0 0 6px;
}

.borjins-faq__cta p {
	font-size: 13px;
	color: var(--borjins-muted);
	margin: 0 0 16px;
	line-height: 1.5;
}

.borjins-faq__cta .borjins-btn-request,
.borjins-faq__cta .borjins-btn-engineer {
	display: block;
	width: 100%;
}

.borjins-faq__cta .borjins-btn-engineer {
	margin-top: 8px;
}

/* Левая колонка: группы вопросов-аккордеонов. */
.borjins-faq__groups {
	display: flex;
	flex-direction: column;
	gap: 24px;
	min-width: 0;
}

.borjins-faq__group {
	background: var(--borjins-card);
	border: 1px solid var(--borjins-line);
	border-radius: 10px;
	overflow: hidden;
}

.borjins-faq__group-head {
	padding: 18px 24px;
	border-bottom: 1px solid var(--borjins-line);
	background: #fbfcfd;
}

.borjins-faq__group-head h2 {
	font-size: 19px;
	font-weight: 800;
	margin: 0 0 3px;
}

.borjins-faq__group-head p {
	font-size: 12.5px;
	color: var(--borjins-muted);
	margin: 0;
}

.borjins-faq__item {
	border-bottom: 1px solid var(--borjins-line);
}

.borjins-faq__item:last-child {
	border-bottom: none;
}

.borjins-faq__q {
	width: 100%;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	background: none;
	border: none;
	text-align: left;
	font-family: inherit;
	font-size: 16px;
	font-weight: 700;
	color: var(--borjins-ink);
	padding: 18px 24px;
	cursor: pointer;
}

.borjins-faq__q:hover {
	color: var(--borjins-accent);
}

.borjins-faq__toggle {
	flex-shrink: 0;
	width: 26px;
	height: 26px;
	border-radius: 50%;
	border: 1px solid var(--borjins-line);
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 16px;
	font-weight: 700;
	color: var(--borjins-muted);
	line-height: 1;
}

.borjins-faq__item.is-open .borjins-faq__toggle {
	background: var(--borjins-accent);
	border-color: var(--borjins-accent);
	color: #fff;
}

.borjins-faq__item.is-open .borjins-faq__q {
	color: var(--borjins-accent);
}

.borjins-faq__a {
	display: none;
	padding: 0 24px 22px;
}

.borjins-faq__item.is-open .borjins-faq__a {
	display: block;
}

.borjins-faq__a p {
	font-size: 15px;
	line-height: 1.7;
	max-width: 72ch;
	margin: 0;
	color: #2c3644;
}

/* Тизер моделей внизу страницы — переиспользует .borjins-models-teaser
   (общий паттерн, см. borjins_models_teaser() в functions.php). */
.borjins-faq .borjins-models-teaser {
	margin: 34px 0 12px;
}

@media (max-width: 600px) {
	.borjins-faq__layout {
		grid-template-columns: 1fr;
		gap: 20px;
	}

	.borjins-faq__side {
		position: static;
	}

	.borjins-faq__side-nav {
		flex-direction: row;
		flex-wrap: nowrap;
		gap: 8px;
		overflow-x: auto;
		-webkit-overflow-scrolling: touch;
		padding-bottom: 2px;
	}

	.borjins-faq__side-nav a {
		flex-shrink: 0;
		border-bottom: none;
		background: var(--borjins-ground);
		border-radius: 999px;
		padding: 7px 12px;
		font-size: 13px;
		white-space: nowrap;
	}

	.borjins-faq__group-head {
		padding: 14px 16px;
	}

	.borjins-faq__q {
		padding: 14px 16px;
		font-size: 14.5px;
		gap: 10px;
	}

	.borjins-faq__a {
		padding: 0 16px 18px;
	}

	.borjins-faq__toggle {
		width: 22px;
		height: 22px;
		font-size: 14px;
	}
}

/* ── Страница «Статьи» (/articles/) ────────────────────────────── */

.borjins-articles__lead {
	color: var(--borjins-muted);
	font-size: 14px;
	max-width: 78ch;
	margin: 0 0 20px;
}

.borjins-articles__chips {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin: 0 0 24px;
}

.borjins-chip {
	display: inline-flex;
	align-items: center;
	font-family: inherit;
	font-size: 13.5px;
	font-weight: 600;
	color: var(--borjins-ink);
	background: var(--borjins-card);
	border: 1px solid var(--borjins-line);
	border-radius: 999px;
	padding: 8px 16px;
	cursor: pointer;
}

.borjins-chip:hover {
	border-color: #b9c6d3;
}

.borjins-chip.is-active {
	background: var(--borjins-graphite);
	border-color: var(--borjins-graphite);
	color: #fff;
}

.borjins-articles__layout {
	display: grid;
	grid-template-columns: 1fr 28%;
	gap: 28px;
	align-items: start;
}

.borjins-articles__grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 20px;
}

.borjins-articles__empty {
	grid-column: 1 / -1;
	color: var(--borjins-muted);
	font-size: 14px;
}

.borjins-article-card {
	background: var(--borjins-card);
	border: 1px solid var(--borjins-line);
	border-radius: 10px;
	overflow: hidden;
	display: flex;
	flex-direction: column;
}

.borjins-article-card__photo {
	aspect-ratio: 16 / 10;
	position: relative;
	display: block;
}

.borjins-article-card__tag {
	position: absolute;
	top: 10px;
	left: 10px;
	background: rgba(22, 29, 38, 0.78);
	color: #fff;
	font-size: 11px;
	font-weight: 700;
	padding: 5px 10px;
	border-radius: 999px;
}

.borjins-article-card__body {
	padding: 16px;
	display: flex;
	flex-direction: column;
	flex: 1;
}

.borjins-article-card__title {
	font-size: 17.5px;
	font-weight: 700;
	line-height: 1.35;
	margin: 0 0 8px;
}

.borjins-article-card__title a {
	color: inherit;
	text-decoration: none;
}

.borjins-article-card:hover .borjins-article-card__title {
	color: var(--borjins-accent);
}

.borjins-article-card__excerpt {
	font-size: 14px;
	color: var(--borjins-muted);
	line-height: 1.55;
	margin: 0 0 16px;
	flex: 1;
}

.borjins-article-card__meta {
	display: flex;
	align-items: center;
	justify-content: space-between;
	font-size: 12px;
	color: #8b98a6;
	border-top: 1px solid #eef1f4;
	padding-top: 12px;
}

.borjins-article-card__arrow {
	color: var(--borjins-accent);
	font-weight: 700;
	font-size: 15px;
	text-decoration: none;
}

/* Заглушки-паттерны фото статей — чистый CSS, без внешних изображений. */
.borjins-ph--1 {
	background:
		linear-gradient(135deg, #e4eaf0 25%, transparent 25%) -10px 0 / 20px 20px,
		linear-gradient(225deg, #e4eaf0 25%, transparent 25%) -10px 0 / 20px 20px,
		linear-gradient(315deg, #e4eaf0 25%, transparent 25%) 0 0 / 20px 20px,
		linear-gradient(45deg, #e4eaf0 25%, #f0f3f6 25%) 0 0 / 20px 20px;
}

.borjins-ph--2 {
	background:
		repeating-linear-gradient(90deg, #e4eaf0 0 2px, transparent 2px 22px),
		repeating-linear-gradient(0deg, #e4eaf0 0 2px, transparent 2px 22px),
		#f0f3f6;
}

.borjins-ph--3 {
	background:
		radial-gradient(circle at 30% 30%, #e4eaf0 0 2px, transparent 3px) 0 0 / 24px 24px,
		#f0f3f6;
}

.borjins-ph--4 {
	background:
		linear-gradient(45deg, #e4eaf0 12.5%, transparent 12.5%, transparent 87.5%, #e4eaf0 87.5%),
		linear-gradient(-45deg, #e4eaf0 12.5%, transparent 12.5%, transparent 87.5%, #e4eaf0 87.5%),
		#f0f3f6;
	background-size: 22px 22px;
}

.borjins-ph--5 {
	background:
		linear-gradient(90deg, #e4eaf0 1px, transparent 1px) 0 0 / 16px 100%,
		#f0f3f6;
}

.borjins-articles__promo {
	grid-column: 1 / -1;
	background: var(--borjins-accent-t);
	border: 1.5px solid var(--borjins-accent);
	border-radius: 10px;
	padding: 26px 28px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 20px;
	flex-wrap: wrap;
}

.borjins-articles__promo-text h3 {
	font-size: 19px;
	font-weight: 800;
	margin: 0 0 6px;
	color: var(--borjins-accent-d);
}

.borjins-articles__promo-text p {
	font-size: 13.5px;
	color: var(--borjins-ink);
	margin: 0;
	max-width: 58ch;
}

.borjins-articles__promo-actions {
	display: flex;
	gap: 10px;
	flex-shrink: 0;
}

.borjins-articles__side {
	position: sticky;
	top: 20px;
}

.borjins-articles__side-card {
	background: var(--borjins-card);
	border: 1px solid var(--borjins-line);
	border-radius: 10px;
	padding: 18px;
}

.borjins-articles__side-title {
	font-size: 12px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	color: var(--borjins-muted);
	margin: 0 0 14px;
}

.borjins-articles__side-model {
	display: flex;
	gap: 10px;
	padding: 12px 0;
	border-bottom: 1px solid #eef1f4;
	text-decoration: none !important;
}

.borjins-articles__side-model:first-of-type {
	padding-top: 0;
}

.borjins-articles__side-model:last-of-type {
	border-bottom: none;
}

.borjins-articles__side-model-photo {
	width: 56px;
	height: 56px;
	border-radius: 6px;
	flex-shrink: 0;
	display: block;
}

.borjins-articles__side-model-info {
	min-width: 0;
	flex: 1;
	display: flex;
	flex-direction: column;
}

.borjins-articles__side-model-sku {
	font-size: 14px;
	font-weight: 700;
	color: var(--borjins-ink);
	margin: 0 0 2px;
}

.borjins-articles__side-model-sub {
	font-size: 11.5px;
	color: #8b98a6;
	margin: 0 0 4px;
}

.borjins-articles__side-model-price {
	font-size: 13px;
	font-weight: 700;
	color: var(--borjins-ink);
	margin: 0;
}

.borjins-articles__side-link {
	display: block;
	text-align: center;
	margin-top: 14px;
	font-size: 13.5px;
	font-weight: 700;
	color: var(--borjins-accent);
	padding: 10px;
	border: 2px solid var(--borjins-accent);
	border-radius: 8px;
	text-decoration: none !important;
}

.borjins-articles__side-link:hover {
	background: var(--borjins-accent-t);
}

@media (max-width: 600px) {
	.borjins-articles__chips {
		overflow-x: auto;
		flex-wrap: nowrap;
		padding-bottom: 4px;
	}

	.borjins-chip {
		flex-shrink: 0;
	}

	.borjins-articles__layout {
		grid-template-columns: 1fr;
		gap: 20px;
	}

	.borjins-articles__grid {
		grid-template-columns: 1fr;
	}

	.borjins-articles__side {
		position: static;
	}

	.borjins-articles__promo {
		padding: 20px;
	}

	.borjins-articles__promo-actions {
		width: 100%;
	}

	.borjins-articles__promo-actions .borjins-btn-request,
	.borjins-articles__promo-actions .borjins-btn-outline {
		flex: 1;
	}
}
