@charset "UTF-8";
/* Единая гамма сайта «тёмно-синий неон» — как обложка группы ВК и новый баннер (banner.css).
   Шапка целиком (логотип, контакты, меню, баннер, поиск) — тёмная полоса; на компьютере
   тёмно-синий фон продолжается на всю страницу, левое меню — светлые карточки, середина и правая колонка — белые карточки.
   Белый логотип ставит banner.js (logo-white.png). Подключается после styles.css и header-contacts.css. */

/* ---------- Один шрифт на весь сайт ----------
   Тот же, что у блока контактов («ЕДИНЫЙ НОМЕР»): системный шрифт устройства — San Francisco на Mac/iPhone,
   Segoe UI на Windows, Roboto на Android. !important — чтобы перебить и Tahoma/Verdana из styles.css,
   и шрифты, вшитые в тексты страниц из админки. jdiv — виджет чата Jivo, у него свои шрифты.
   «BC Segoe» — тот же Segoe UI из Windows, но жирность 800 (цены, заголовки) берётся из Segoe UI Bold:
   у самого Segoe UI нет начертания 800, и Chrome на Windows брал Segoe UI Black (900) — цифры выходили слишком жирными.
   На Mac/iPhone срабатывает -apple-system раньше, на Android шрифта Segoe UI нет — там ничего не меняется. */
@font-face { font-family: "BC Segoe"; src: local("Segoe UI Light"), local("SegoeUI-Light"); font-weight: 100 300; }
@font-face { font-family: "BC Segoe"; src: local("Segoe UI"), local("SegoeUI"); font-weight: 400 500; }
@font-face { font-family: "BC Segoe"; src: local("Segoe UI Italic"), local("SegoeUI-Italic"); font-weight: 400 500; font-style: italic; }
@font-face { font-family: "BC Segoe"; src: local("Segoe UI Semibold"), local("SegoeUI-Semibold"); font-weight: 600; }
@font-face { font-family: "BC Segoe"; src: local("Segoe UI Bold"), local("SegoeUI-Bold"); font-weight: 700 900; }
@font-face { font-family: "BC Segoe"; src: local("Segoe UI Bold Italic"), local("SegoeUI-BoldItalic"); font-weight: 700 900; font-style: italic; }
html body,
html body *:not(jdiv):not(jdiv *) {
	font-family: -apple-system, BlinkMacSystemFont, "BC Segoe", "Segoe UI", Roboto, Arial, sans-serif !important;
}
body { -webkit-font-smoothing: antialiased; }

/* ---------- Шапка: тёмная полоса ---------- */
.shapka {
	background:
		radial-gradient(ellipse 30% 70% at 12% 30%, rgba(40, 90, 255, .22) 0, rgba(40, 90, 255, 0) 100%),
		linear-gradient(180deg, #071c55 0%, #0c2c77 100%);
	box-shadow: 0 2px 0 #00b4ff, 0 0 18px 2px rgba(0, 180, 255, .45);   /* неоновая линия под шапкой */
}
/* Пустой <p> под блоком контактов задаёт высоту шапки. Было 16px, и строка поиска (до 344px) и низ контактов
   вылезали за синюю полосу (338px). 40px — шапка до 362px, под поиском синий запас ~18px. */
.shapka > p { height: 48px; }
/* блок контактов чуть ниже логотипа (было вплотную: top 4px); шапка выше на те же 8px, запас снизу сохраняется */
.shapka .earth .ct { top: 14px; }
/* «Писать в мессенджеры тут» и три магазина — ниже, отдельно от блока «Единый номер»:
   .ct — колонка space-between высотой 219px (header-contacts.css), +20px уходят в промежуток между блоками */
@media (min-width: 768px) { .shapka .earth .ct { height: 239px; } }
@media (min-width: 768px) { .content { padding-top: 18px; } }   /* отступ середины сайта от синей шапки (на телефоне своя вёрстка) */

.shapka .pol2,
.shapka .pol2 .pol1 { background: none; }
.shapka .pol2 { background: linear-gradient(90deg, rgba(0, 180, 255, 0), #00b4ff 50%, rgba(0, 180, 255, 0)); height: 2px; }
.shapka .kv { background: none; }
.shapka .ico3 { background: none; }
.shapka .ico3 div { filter: brightness(0) invert(1); opacity: .65; transition: opacity .2s; }
.shapka .ico3 div:hover { opacity: 1; }

/* Блок контактов (header-contacts.css): без карты, неоновые карточки */
.shapka .earth,
.shapka .earth.ct-on { background: none; }
.ct-call {
	background: linear-gradient(160deg, rgba(0, 120, 255, .28) 0%, rgba(0, 70, 170, .22) 100%);
	border: 1px solid rgba(0, 180, 255, .6);
	box-shadow: 0 0 14px rgba(0, 160, 255, .3), inset 0 0 12px rgba(0, 160, 255, .15);
}
.ct-order { background: #00b4ff; color: #06215e !important; }
.ct-order:hover { box-shadow: 0 0 10px rgba(0, 180, 255, .8); }
.ct-nums a { background: rgba(0, 150, 255, .14); border-color: rgba(0, 180, 255, .45); }
.ct-nums a:hover { background: rgba(0, 170, 255, .3); }
.ct-chats-title { color: #7fc4ff; }
.ct-chats-title svg { fill: #7fc4ff; }
.ct-shop { background: rgba(0, 120, 255, .12); border-color: rgba(0, 180, 255, .3); }
.ct-addr { color: #e6f3ff !important; }
.ct-addr:hover { color: #3fd4ff !important; }
.ct-addr small { color: #8fb3d9; }
.ct-map { background: rgba(0, 150, 255, .2); }
.ct-map svg { fill: #3fd4ff; }

/* Верхнее меню */
.shapka .menu a { color: #e6f3ff; }
.shapka .menu a:hover { color: #3fd4ff; text-decoration: none; text-shadow: 0 0 8px rgba(0, 180, 255, .8); }
.shapka .menu .poloska div { background: rgba(0, 180, 255, .45); }
.shapka .menu table .kor { border-left: 1px solid rgba(0, 180, 255, .45); }
.shapka .menu table .kor .minkor p { color: #3fd4ff; }
.shapka .menu table .kor .minkor .pp,
.shapka .menu table .kor .minkor .pp a { color: #c9dcf2; }
/* Значок корзины: вместо старой картинки img.png — линейная тележка в неоновой «кнопке».
   #cart_num_cont_3 — корзина пуста (контур), #cart_num_cont_2 — в корзине есть товары (залитая голубая, кликабельная) */
.shapka .menu table .kor .minkor .img {
	top: 4px;
	right: 12px;
	width: 40px;
	height: 40px;
	box-sizing: border-box;
	border-radius: 12px;
	border: 1px solid rgba(0, 180, 255, .6);
	background: rgba(0, 150, 255, .14) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%233fd4ff' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M2.5 3h2.2l2.4 11.2a1.8 1.8 0 0 0 1.8 1.4h8.6a1.8 1.8 0 0 0 1.8-1.4L21 7H6'/%3E%3Ccircle cx='9.5' cy='20' r='1.4'/%3E%3Ccircle cx='17' cy='20' r='1.4'/%3E%3C/svg%3E") center / 24px no-repeat;
	box-shadow: 0 0 10px rgba(0, 170, 255, .3), inset 0 0 8px rgba(0, 170, 255, .15);
	transition: transform .15s, box-shadow .15s, background-color .15s;
}
.shapka .menu table .kor .minkor #cart_num_cont_2 {
	border-color: #3fd4ff;
	background: #00b4ff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2306215e' stroke-width='2.1' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M2.5 3h2.2l2.4 11.2a1.8 1.8 0 0 0 1.8 1.4h8.6a1.8 1.8 0 0 0 1.8-1.4L21 7H6'/%3E%3Ccircle cx='9.5' cy='20' r='1.4'/%3E%3Ccircle cx='17' cy='20' r='1.4'/%3E%3C/svg%3E") center / 24px no-repeat;
	box-shadow: 0 0 14px rgba(0, 180, 255, .75);
}
.shapka .menu table .kor .minkor #cart_num_cont_2:hover { transform: translateY(-1px); box-shadow: 0 0 18px rgba(0, 200, 255, .95); }
.shapka .menu table .kor .podr_kor .pp, .shapka .menu table .kor .podr_kor .pp a { color: #000; }   /* выпадающая корзина остаётся белой */

/* Подложка баннера и поиск */
.shapka .slide { background: none; border: 0; }
.full_search .search1 { border-color: rgba(0, 180, 255, .7); background: #fff; box-shadow: 0 0 10px rgba(0, 160, 255, .25); }
.full_search .search2 input { border-color: #00b4ff; background: #00b4ff; color: #06215e; font-weight: bold; cursor: pointer; }
.full_search .search2 input:hover { border-color: #3fd4ff; background: #3fd4ff; color: #06215e; box-shadow: 0 0 10px rgba(0, 180, 255, .8); }

/* ---------- Левое меню: светлые карточки на синем фоне страницы ---------- */
.content .catalog,
.content .catalog2,
.content .catalog3 {
	background: linear-gradient(180deg, #ffffff 0%, #f1f6ff 100%);
	border: 1px solid rgba(0, 180, 255, .6);
	border-radius: 12px;
	box-shadow: 0 0 0 1px rgba(0, 180, 255, .15), 0 0 22px rgba(0, 140, 255, .25), 0 10px 30px rgba(2, 10, 40, .35);
	overflow: hidden;
}
.content .catalog .ten,
.content .catalog2 .ten,
.content .catalog3 .ten { display: none; }

.content .catalog ul li,
.content .catalog2 ul li {
	background: none;
	border-radius: 7px;
	transition: background .15s, box-shadow .15s;
}
.content .catalog ul li:hover,
.content .catalog2 ul li:hover {
	background: #e6efff;
	box-shadow: inset 3px 0 0 #1346aa;
}
.content .catalog ul li p,
.content .catalog2 ul li p,
.content .catalog2 ul li div { border-bottom-color: #e1e9f7 !important; border-bottom-style: solid !important; }
.content .catalog ul li .pp,
.content .catalog2 ul li .pp { border-bottom: 0 !important; }
.content .catalog ul li a,
.content .catalog2 ul li a { color: #0e3184; }
.content .catalog ul li:hover a,
.content .catalog2 ul li:hover a { color: #1346aa; }

/* Значки пунктов: в styles.css это белые PNG (str.png, sobrkomp.png…) — на светлом их не видно.
   Фон-картинку убираем и рисуем значок через ::before: стрелка — SVG, у «Собрать компьютер» и др. — те же PNG маской, синим. */
.content .catalog ul li p,
.content .catalog2 ul li p { position: relative; filter: none; background-image: none !important; }
.content .catalog ul li p::before,
.content .catalog2 ul li p::before {
	content: "";
	position: absolute;
	left: 0;
	top: 50%;
	width: 16px;
	height: 16px;
	margin-top: -8px;
	background: #1f6fe0;
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M9 5l7 7-7 7'/%3E%3C/svg%3E") left center / 12px no-repeat;
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M9 5l7 7-7 7'/%3E%3C/svg%3E") left center / 12px no-repeat;
}
.content .catalog2 ul li p::before { -webkit-mask-size: contain; mask-size: contain; }
.content .catalog2 ul li .leftico1::before { -webkit-mask-image: url(/templates/byte/img/sobrkomp.png); mask-image: url(/templates/byte/img/sobrkomp.png); }
.content .catalog2 ul li .leftico2::before { -webkit-mask-image: url(/templates/byte/img/prby.png); mask-image: url(/templates/byte/img/prby.png); }
.content .catalog2 ul li .leftico3::before { -webkit-mask-image: url(/templates/byte/img/senddir.png); mask-image: url(/templates/byte/img/senddir.png); }
.content .catalog2 ul li .leftico4::before { -webkit-mask-image: url(/templates/byte/img/master.png); mask-image: url(/templates/byte/img/master.png); }

/* Подписка на рассылку */
.content .catalog3 .zag p { color: #1346aa; }
.content .catalog3 .zag p span { color: #071c55; }
.content .catalog3 .email_zag { color: #4a5873; }
.content .catalog3 .email_send,
.content .catalog3 .email_send2 { background: linear-gradient(180deg, #1a55c4 0%, #0e3184 100%); border-color: #0e3184; color: #fff; font-weight: bold; }
.content .catalog3 .email_send:hover,
.content .catalog3 .email_send2:hover { border-color: #00b4ff; box-shadow: 0 0 10px rgba(0, 180, 255, .6); }

/* ---------- Фон страницы на компьютере: тёмно-синий, продолжение шапки ----------
   Шапка без своего фона и без неоновой линии снизу — сливается с фоном страницы. Середина и правая колонка —
   белые карточки (см. ниже): в текстах из админки вшит чёрный/красный цвет, на синем он не читался бы.
   На телефоне фон светлый (у mobile.js своя синяя верхняя панель). */
body { background: #f2f6fd; }
/* у старого styles.css body { min-width: 1200px } — на ноутбуках с масштабом 125% (1366 → 1093px, 1280 → 1024px)
   корзина, правая колонка и баннер уходили под горизонтальную прокрутку; средняя колонка резиновая, шапка
   помещается от 1024px (уже — меню собирается в столбик). Планшеты получают viewport 1240 (mobile.js) — их не касается */
@media (min-width: 768px) { body { min-width: 1024px; } }
/* корзина (.skidka) и шаги заказа buy_1–4 (.shag) уже 1200px: таблице товаров не хватало места, «Сумма» обрезалась —
   правую колонку («Спецпредложения») здесь убираем, середина забирает её место */
@media (min-width: 768px) and (max-width: 1199px) {
	.content > table > tbody > tr:has(.tpl > .skidka, .tpl > .shag) > td.right { display: none; }
}
@media (min-width: 768px) {
	/* только страницы с шапкой: окна (contacts_*, sposob_dostavki*, zvonok) — отдельные страницы без шапки,
	   окно контактов шириной 890px тоже попадало сюда, и тёмный текст из админки оказывался на тёмном фоне */
	/* окно, открытое напрямую (из поиска, в новой вкладке) — по центру; в рамке fancybox ширина та же, ничего не меняется */
	html:not(.m-popup) body:not(:has(.shapka)) { max-width: 900px; margin-left: auto; margin-right: auto; }
	body:has(.shapka) {
		background:
			radial-gradient(ellipse 40% 380px at 10% 120px, rgba(40, 90, 255, .2) 0, rgba(40, 90, 255, 0) 100%),
			radial-gradient(ellipse 45% 600px at 90% 900px, rgba(0, 150, 255, .1) 0, rgba(0, 150, 255, 0) 100%),
			linear-gradient(180deg, #071c55 0, #0c2c77 360px, #0b2970 1200px, #08205f 100%);
		background-color: #08205f;
		/* у сайта html { height: 100% } — фон повторялся каждые 900px, и на коротких страницах (под карточкой середины)
		   были видны горизонтальные швы; ниже первого экрана — сплошной цвет, которым градиент и заканчивается */
		background-repeat: no-repeat;
	}
	.shapka { background: none; box-shadow: none; }
	.shapka .pol2 { opacity: .35; }   /* линия под шапкой — едва заметная, чтобы не делила страницу */
	.footer { box-shadow: 0 -1px 0 rgba(0, 180, 255, .5); }
}

/* «улица + номер дома» в адресах магазинов — одним куском, номер не отрывается и не режется (banner.js → addrNoWrap()) */
.addr-nw { white-space: nowrap; }
/* «ул. Гудкова 22» — тоже одним куском, пока помещается; не помещается в колонку — перенос только после «ул.» (fitAddr()) */
.addr-ul { white-space: nowrap; }
.addr-ul.addr-ul-wrap { white-space: normal; }

/* ---------- Середина и правая колонка ---------- */
a:link, a:visited, a:active { color: #1346aa; }
a:hover { color: #0090d8; }

/* Заголовки разделов («ВАЖНАЯ информация», «СЕГОДНЯ в продаже»…): вместо серых полосок kv.png и пиксельной стрелки —
   неоновая линия, которая у правого края скругляется и уходит стрелкой вниз, к содержимому раздела.
   ::after — линия (верхняя + правая граница со скруглённым углом), ::before — наконечник стрелки. */
.content .danger,
.content .center { position: relative; display: flex; align-items: flex-start; height: auto; min-height: 38px; background: none; }
.content .danger::after,
.content .center::after {
	content: '';
	flex: 1;
	height: 22px;
	margin: 9px 1px 0 14px;
	border-top: 2px solid #00a6ee;
	border-right: 2px solid #00a6ee;
	border-top-right-radius: 9px;
	filter: drop-shadow(0 0 3px rgba(0, 180, 255, .55));
}
.content .danger::before,
.content .center::before {
	content: '';
	position: absolute;
	top: 26px;
	right: -2px;
	width: 7px;
	height: 7px;
	border-right: 2px solid #00a6ee;
	border-bottom: 2px solid #00a6ee;
	transform: rotate(45deg);
	filter: drop-shadow(0 0 3px rgba(0, 180, 255, .55));
}
.content .danger .zag,
.content .center .zag { background: none; flex: none; }
.content .center .img { display: none; }   /* старая пиксельная стрелка */
.content .danger .zag .img { display: none; }   /* восклицательный знак voskl1.png — заходил на старую полоску */
/* «Полезная информация»: вместо пиксельного «?» (img.png) — неоновый кружок с вопросом */
.content .info .zag .img {
	top: 6px;
	width: 30px;
	height: 30px;
	background: 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='%2300b4ff'/%3E%3Cstop offset='1' stop-color='%231346aa'/%3E%3C/linearGradient%3E%3C/defs%3E%3Ccircle cx='16' cy='16' r='15' fill='url(%23g)'/%3E%3Cpath d='M12.3 12.6a3.8 3.8 0 0 1 7.5 1c0 2.7-3.8 3-3.8 5.6' fill='none' stroke='%23fff' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3Ccircle cx='16' cy='23.4' r='1.7' fill='%23fff'/%3E%3C/svg%3E") center / contain no-repeat;
	filter: drop-shadow(0 0 5px rgba(0, 170, 255, .55));
}
.content .center .zag p,
.content .info .zag p,
.news .zag p,
.spec .zag p { color: #1346aa; }
.content .center .zag p span,
.content .info .zag p span,
.news .zag p span { color: #071c55; }
.content .danger .zag p { color: #e8283c; }   /* «ВАЖНАЯ» — остаётся красной, это предупреждение */
.content .danger .zag p span { color: #071c55; }

/* Карточки товаров */
.content .vivod .tovar {
	background: #fff;
	border: 1px solid #d3def3;
	border-radius: 12px;
	box-shadow: 0 2px 8px rgba(14, 49, 132, .06);
	transition: border-color .2s, box-shadow .2s;
}
.content .vivod .tovar:hover { border-color: #00b4ff; box-shadow: 0 0 0 1px rgba(0, 180, 255, .4), 0 4px 16px rgba(0, 150, 255, .25); }
.content .vivod .tovar .img { border-color: transparent; }

/* Цена: вместо красного «облачка» shop.png — синяя плашка с неоновой каймой */
.content .vivod .tovar .podrb .shop,
.spec .tovar .podrb .shop {
	background: linear-gradient(180deg, #1346aa 0%, #0e3184 100%);
	height: 28px;
	line-height: 28px;
	border-radius: 8px;
	box-shadow: 0 0 0 1px rgba(0, 180, 255, .55), 0 0 8px rgba(0, 160, 255, .35);
	font-size: 16px;
	font-weight: bold;
}

/* Правая колонка «Специальные предложения» */
.spec {
	background: #fff;
	border: 1px solid #d3def3;
	border-radius: 12px;
	box-shadow: 0 2px 8px rgba(14, 49, 132, .06);
	overflow: hidden;
}
.spec .ygol_v,
.spec .ygol_n,
.spec .ten1 { display: none; }
.spec .zag p span { color: #0090d8; }
.spec .tovar .img { border-color: transparent; }
/* разделители между предложениями — чёткая синяя линия с голубым центром */
.spec .tovar .dashed {
	border-top: 0;
	height: 2px;
	width: auto !important;
	margin: 14px 12px 0;
	border-radius: 1px;
	background: linear-gradient(90deg, rgba(19, 70, 170, .15), #1346aa 18%, #00b4ff 50%, #1346aa 82%, rgba(19, 70, 170, .15));
	box-shadow: 0 0 6px rgba(0, 160, 255, .35);
}
.spec .tovar { padding-bottom: 2px; }
.news .print { border-right-color: #00b4ff; }

/* Картинки-подложки не нужны: клавиатура под блоками левой колонки (карта земного шара в шапке и
   панорамы/ноутбук баннера убраны выше и в banner.css) */
.content .info .text { background: none; min-height: 0; }

/* ---------- Белые карточки на синем фоне (компьютер) ----------
   Неоновая кайма и тень вместо прежней голубой рамки. Середина страницы — одна большая белая карточка; блоки левой и правой колонок — свои карточки;
   между колонками ровные промежутки 14px (border-spacing вместо прежних margin у блоков). */
@media (min-width: 768px) {
	.content > table { border-collapse: separate; border-spacing: 14px 0; }
	.content { padding-bottom: 20px; }   /* карточки не прилипают к подвалу */
	.content > table > tbody > tr > td:not(.left):not(.right) {
		background: #fff;
		border: 1px solid rgba(0, 180, 255, .55);
		border-radius: 14px;
		box-shadow: 0 0 0 1px rgba(0, 180, 255, .15), 0 0 22px rgba(0, 140, 255, .22), 0 10px 30px rgba(2, 10, 40, .35);
		padding: 12px 0 6px;
	}
	/* Колонки — flex: все три всегда заканчиваются на одном уровне (по самой длинной). Середина — одна карточка во всю
	   высоту; в левой и правой колонке последняя карточка («Наши новости» слева, «Специальные предложения» справа)
	   вытягивается до общего низа. Ширины и отступы — как были у ячеек таблицы. */
	html:not(.m-ready) .content > table,
	html:not(.m-ready) .content > table > tbody { display: block; }
	html:not(.m-ready) .content > table > tbody > tr { display: flex; align-items: stretch; gap: 14px; padding: 0 14px; }
	html:not(.m-ready) .content > table > tbody > tr > td.left { flex: 0 0 257px; }
	html:not(.m-ready) .content > table > tbody > tr > td.right { flex: 0 0 238px; }
	html:not(.m-ready) .content > table > tbody > tr > td:is(.left, .right) { display: flex; flex-direction: column; }
	html:not(.m-ready) .content > table > tbody > tr > td:is(.left, .right) > :last-child { flex-grow: 1; margin-bottom: 0 !important; }
	html:not(.m-ready) .content > table > tbody > tr > td:not(.left):not(.right) { display: block; flex: 1 1 0; min-width: 0; }
	/* «Наши новости» — внизу левой колонки (переносит banner.js → newsLeft()), шириной как карточки слева */
	html:not(.m-ready) .content td.left .news { width: 255px; margin: 0 0 20px; }
	/* «Отзывы на Яндекс Картах» под новостями (banner.js → yandexReviews()): переключатель магазинов + виджет Яндекса */
	html:not(.m-ready) .content .yr .yr-tabs { display: flex; gap: 4px; margin: 8px 8px; }
	html:not(.m-ready) .content .yr .yr-tabs button {
		flex: 1 1 0;
		min-width: 0;
		padding: 6px 2px;
		border: 1px solid #c9d8f5;
		border-radius: 999px;
		background: #eef4ff;
		color: #1346aa;
		font: 600 11.5px/1.2 inherit;
		white-space: nowrap;
		cursor: pointer;
	}
	html:not(.m-ready) .content .yr .yr-tabs button:hover { border-color: #00b4ff; }
	html:not(.m-ready) .content .yr .yr-tabs button.on { border-color: #1346aa; background: #1346aa; color: #fff; }
	html:not(.m-ready) .content .yr .yr-frame { margin: 0 4px; height: 760px; border-radius: 10px; overflow: hidden; }
	html:not(.m-ready) .content .yr .yr-frame iframe { display: block; width: 100%; height: 100%; border: 0; }
	html:not(.m-ready) .content .yr a.yr-add {
		display: block;
		margin: 10px 12px 0;
		padding: 9px 10px;
		border-radius: 10px;
		background: #fc3f1d;   /* красный Яндекса — понятно, что ведёт на Яндекс Карты */
		color: #fff !important;
		font-size: 13.5px;
		font-weight: 700;
		text-align: center;
		text-decoration: none;
	}
	html:not(.m-ready) .content .yr a.yr-add:hover { background: #e2361a; }
	html:not(.m-ready) .content .yr .yr-all { display: block; margin: 8px 12px 4px; color: #1346aa; font-size: 12.5px; font-weight: 700; text-align: center; }
	/* содержимое вытянутой последней карточки едет вместе с прокруткой (banner.js → stickyLast(), только если ниже экрана) */
	html:not(.m-ready) .content .col-stick.is-sticky { position: sticky; top: 12px; }
	/* overflow: hidden у карточки (скруглённые углы) отключает sticky; clip обрезает так же, но прилипать не мешает */
	html:not(.m-ready) .content > table > tbody > tr > td:is(.left, .right) > :last-child { overflow: clip !important; }
	/* «Сейчас покупают» под коротким текстом в середине (banner.js → nowBuying()) */
	html:not(.m-ready) .content .nb { margin-top: 18px; padding-top: 6px; border-top: 1px solid #e6edf8; }
	.content .catalog,
	.content .catalog2,
	.content .catalog3 { margin-left: 0; }

	/* «Полезная информация», «Способы оплаты», «Отзывы»… */
	.content .info {
		width: 255px;
		box-sizing: border-box;
		margin-bottom: 20px;
		padding: 2px 0 6px;
		background: #fff;
		border: 1px solid rgba(0, 180, 255, .55);
		border-radius: 12px;
		box-shadow: 0 0 0 1px rgba(0, 180, 255, .15), 0 0 22px rgba(0, 140, 255, .22), 0 10px 30px rgba(2, 10, 40, .35);
		overflow: hidden;
	}
	.content .info .text,
	.content .info .text2 { width: auto; min-height: 0; }
	.content .info .zag { margin-left: 16px; }
	.content .info .text .border,
	.content .info .text2 .border { border-left: 0; margin-top: 12px; }   /* полоска слева — от старого дизайна, карточка уже в рамке */
	.news .print { border-right: 0; }   /* та же старая полоска справа у «Наших новостей» */

	/* «Отзывы клиентов» (видео YouTube) убраны совсем — banner.js → noVideoReviews(); здесь — чтобы не мелькали до скрипта */
	.content .info:has(.full_otzyv),
	.content .tpl:has(> .zag_otzyv) { display: none !important; }

	/* «Отзывы клиентов»: видео были прижаты к правому краю (float: right, ширина 215px) — теперь на всю ширину карточки
	   с одинаковыми отступами, подписи слева */
	.content .info .youtube {
		float: none;
		width: auto;
		margin: 0 14px 4px;
		padding-top: 12px;
		text-align: left;
		color: #071c55;
	}
	.content .info .youtube iframe { display: block; width: 100%; height: auto; aspect-ratio: 16 / 9; border: 0; border-radius: 8px; }
	.content .info .youtube p { padding-top: 6px; line-height: 1.3; }

	/* «Способы оплаты»: ровный отступ слева и справа, как у остальных карточек */
	.content .info .sposob_money { padding: 4px 14px 8px; text-align: left; }
	.content .info .sposob_money .pay-link { padding: 0; }
	.content .info .text .border p,
	.content .info .text2 .border p { padding-left: 14px; padding-right: 10px; }

	/* правая колонка: те же карточки, верх вровень с остальными */
	.spec { margin-top: 0; border-color: rgba(0, 180, 255, .55); box-shadow: 0 0 0 1px rgba(0, 180, 255, .15), 0 0 22px rgba(0, 140, 255, .22), 0 10px 30px rgba(2, 10, 40, .35); }
	.news {
		box-sizing: border-box;
		width: 238px;
		margin: 20px 0;
		padding: 10px 10px 6px;
		background: #fff;
		border: 1px solid rgba(0, 180, 255, .55);
		border-radius: 12px;
		box-shadow: 0 0 0 1px rgba(0, 180, 255, .15), 0 0 22px rgba(0, 140, 255, .22), 0 10px 30px rgba(2, 10, 40, .35);
	}
}

/* ---------- Значки: корзина у товаров и стрелки у заголовков (компьютер) ----------
   Вместо пиксельных картинок buy.png / img.png / str_s.png — линейные SVG в стиле новой корзины в шапке. */
@media (min-width: 768px) {
	/* «в корзину» в плитках товаров: кнопка с тележкой рядом с ценой */
	.content .vivod .tovar .podrb .buy {
		display: inline-flex;
		align-items: center;
		height: 28px;
		box-sizing: border-box;
		margin: 0 0 0 10px;
		padding: 0 10px 0 30px;
		border-radius: 8px;
		border: 1px solid #7fa3e6;
		background: #eef4ff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231346aa' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M2.5 3h2.2l2.4 11.2a1.8 1.8 0 0 0 1.8 1.4h8.6a1.8 1.8 0 0 0 1.8-1.4L21 7H6'/%3E%3Ccircle cx='9.5' cy='20' r='1.4'/%3E%3Ccircle cx='17' cy='20' r='1.4'/%3E%3C/svg%3E") 9px center / 16px no-repeat;
		line-height: 1;
		cursor: pointer;
		transition: background-color .15s, border-color .15s, box-shadow .15s;
	}
	.content .vivod .tovar .podrb .buy a { font-size: 12px; font-weight: 600; text-decoration: none; color: #1346aa; }
	.content .vivod .tovar .podrb .buy:hover {
		border-color: #00b4ff;
		background-color: #00b4ff;
		background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2306215e' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M2.5 3h2.2l2.4 11.2a1.8 1.8 0 0 0 1.8 1.4h8.6a1.8 1.8 0 0 0 1.8-1.4L21 7H6'/%3E%3Ccircle cx='9.5' cy='20' r='1.4'/%3E%3Ccircle cx='17' cy='20' r='1.4'/%3E%3C/svg%3E");
		box-shadow: 0 0 10px rgba(0, 180, 255, .55);
	}
	.content .vivod .tovar .podrb .buy:hover a { color: #06215e; }
	.content .vivod .tovar .podrb .shop { margin-left: 14px; }

}

/* каталог-таблица (компьютер и телефон): старая картинка-тележка → кнопка-значок, подпись под ней */
.catalogs .table td.kr img[src$="buy.png"] { display: none; }
.catalogs .table td.kr > a.btnPrint {
		display: inline-block;
		width: 34px;
		height: 28px;
		border-radius: 8px;
		border: 1px solid #7fa3e6;
		background: #eef4ff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231346aa' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M2.5 3h2.2l2.4 11.2a1.8 1.8 0 0 0 1.8 1.4h8.6a1.8 1.8 0 0 0 1.8-1.4L21 7H6'/%3E%3Ccircle cx='9.5' cy='20' r='1.4'/%3E%3Ccircle cx='17' cy='20' r='1.4'/%3E%3C/svg%3E") center / 17px no-repeat;
		vertical-align: middle;
		transition: background-color .15s, box-shadow .15s;
	}
	.catalogs .table td.kr > a.btnPrint:hover { background-color: #00b4ff; border-color: #00b4ff; box-shadow: 0 0 10px rgba(0, 180, 255, .55); }
	.catalogs .table td.kr p a { font-size: 11px; text-decoration: none; }

@media (min-width: 768px) {
	/* «Специальные предложения» — та же линия-стрелка, что у заголовков разделов (вариант 2а):
	   заголовок слева в две строки, линия рядом с ним уходит вниз у правого края карточки */
	.spec .zag {
		position: relative;
		display: grid;
		grid-template-columns: auto 1fr;
		width: auto;
		height: auto;
		padding: 10px 14px 4px;
		box-sizing: border-box;
	}
	.spec .zag .img,
	.spec .zag > p:first-of-type { display: none; }   /* пиксельная стрелка и пустая строка-распорка */
	.spec .zag > p { grid-column: 1; }
	.spec .zag::after {
		content: '';
		grid-column: 2;
		grid-row: 1 / span 2;
		height: 24px;
		margin: 9px 0 0 10px;
		border-top: 2px solid #00a6ee;
		border-right: 2px solid #00a6ee;
		border-top-right-radius: 9px;
		filter: drop-shadow(0 0 3px rgba(0, 180, 255, .55));
	}
	.spec .zag::before {
		content: '';
		position: absolute;
		top: 37px;
		right: 11px;
		width: 7px;
		height: 7px;
		border-right: 2px solid #00a6ee;
		border-bottom: 2px solid #00a6ee;
		transform: rotate(45deg);
		filter: drop-shadow(0 0 3px rgba(0, 180, 255, .55));
	}
}

/* ---------- Путь (хлебные крошки) — строит banner.js: «Каталоги › Жуковский, Гагарина 2 › …» ---------- */
.bc {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 6px 4px;
	padding: 2px 0;
	font-size: 13px;
	line-height: 1.3;
	font-weight: normal;
	text-align: left;
}
.bc a,
.bc .bc-cur {
	display: inline-flex;
	align-items: center;
	padding: 4px 10px;
	border-radius: 999px;
	white-space: nowrap;
	text-decoration: none !important;
}
.bc a:link, .bc a:visited { color: #1346aa; background: #eef4ff; border: 1px solid #c9d8f5; }
.bc a:hover { color: #06215e; background: #00b4ff; border-color: #00b4ff; box-shadow: 0 0 8px rgba(0, 180, 255, .5); }
.bc .bc-cur,
.bc a.bc-cur:link, .bc a.bc-cur:visited {
	color: #fff;
	font-weight: 600;
	background: linear-gradient(180deg, #1346aa 0%, #0e3184 100%);
	border: 1px solid rgba(0, 180, 255, .6);
	box-shadow: 0 0 6px rgba(0, 160, 255, .35);
}
/* Последний пункт — полное название товара в одну строку (бывает 700+ px): ширина таблицы страницы считается по нему,
   середина распиралась, правая колонка уезжала за край окна, а шапка (по ширине окна) кончалась раньше неё.
   contain: inline-size — ширину крошкам задаёт колонка, длинное название обрезается многоточием (полностью — в заголовке ниже) */
html:not(.m-ready) .bc { contain: inline-size; }
html:not(.m-ready) .bc .bc-cur { display: block; min-width: 0; max-width: 100%; box-sizing: border-box; overflow: hidden; text-overflow: ellipsis; }
/* разделитель между пунктами — шеврон › */
.bc .bc-sep {
	width: 6px;
	height: 6px;
	margin: 0 6px 0 2px;
	border: solid #7fa3e6;
	border-width: 2px 2px 0 0;
	transform: rotate(45deg);
}
.tovars > .forum_a { margin: 4px 0 10px; }
.catalogs .table tr.tzag > td { padding: 8px 6px 10px; }
.catalogs .table tr.tzag:hover > td { background: none; }
/* результаты поиска: путь над каждой группой товаров (td.podcat → nav.bc) — вместо жирной строки с линией */
.catalogs .table td.podcat { padding: 16px 6px 8px; border-bottom: 0; font-weight: normal; }
.catalogs .table tr:first-child > td.podcat { padding-top: 4px; }
/* названия товаров в списке категории — было 14px бирюзовым #006c9d из styles.css, на Windows читалось плохо */
html:not(.m-ready) .content .catalogs .table td.naimen a { color: #0e3184; font-size: 15px; font-weight: 500; line-height: 1.35; }
html:not(.m-ready) .content .catalogs .table td.naimen a:hover { color: #1346aa; }
/* длинные коды без пробелов («CB435/CB436,CE255/CE278/…», поиск «картридж») распирали таблицу
   под правую колонку и прятали «в корзину» — разрешаем перенос в любом месте */
.catalogs .table td.naimen { overflow-wrap: anywhere; }

/* Каталог-список: колонка «купить» */
.tovars .kupit { border-left-color: #d3def3; }
.tovars .kupit .buy { background: linear-gradient(180deg, #1346aa 0%, #0e3184 100%); border-radius: 8px; box-shadow: 0 0 8px rgba(0, 160, 255, .35); }
.tablemargin tr:hover td { background: #e6efff; }

/* ---------- Подвал: как шапка ---------- */
.footer {
	background: linear-gradient(180deg, #0c2c77 0%, #071c55 100%);
	color: #cfe0ff;
	height: auto;
	min-height: 71px;
}
.footer a:link, .footer a:visited { color: #3fd4ff; }
.footer .left { background: none; }
.footer .pol2 { background: linear-gradient(90deg, rgba(0, 180, 255, 0), #00b4ff 50%, rgba(0, 180, 255, 0)); height: 2px; box-shadow: 0 0 12px 1px rgba(0, 180, 255, .7); }
.footer .pol2 .pol1 { background: none; }
.footer table { height: 71px; }

/* ---------- Всплывающие окна ----------
   1) Рамка окна fancybox на основной странице: скруглённая карточка с неоновой каймой, затемнение в синий,
      круглая кнопка закрытия ✕ вместо картинки fancy_close.png. */
#fancybox-overlay { background-color: #071c55 !important; opacity: .72 !important; }
#fancybox-outer {
	background: #fff;
	border-radius: 16px;
	box-shadow: 0 0 0 1px #00b4ff, 0 0 28px rgba(0, 160, 255, .45), 0 20px 50px rgba(3, 10, 40, .45);
}
#fancybox-content { border-radius: 16px; overflow: hidden; }
#fancybox-wrap .fancybox-bg { display: none; }   /* старая тень из картинок */
#fancybox-close {
	top: -14px;
	right: -14px;
	width: 34px;
	height: 34px;
	border-radius: 50%;
	border: 2px solid #00b4ff;
	background: #0e3184 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='2.6' stroke-linecap='round'%3E%3Cpath d='M6 6l12 12M18 6L6 18'/%3E%3C/svg%3E") center / 14px no-repeat;
	box-shadow: 0 0 10px rgba(0, 180, 255, .7);
	transition: transform .15s, background-color .15s;
}
#fancybox-close:hover { background-color: #1346aa; transform: rotate(90deg); }

/* 2) Содержимое окон — отдельные маленькие страницы (zvonok.tpl, sposob_dostavki*.tpl, contacts_*.tpl).
      Размеры окон заданы в minscript.js и прокрутки нет — отступы и высота полей подобраны так, чтобы всё влезало. */
/* Заказать звонок (400×470) */
body > h1 {
	background: linear-gradient(110deg, #071c55 0%, #0e3184 55%, #1346aa 100%);
	box-shadow: inset 0 -2px 0 #00b4ff;
	padding: 7px 0 8px;
	font-size: 18px;
	font-weight: 600;
	letter-spacing: .01em;
}
html:not(.m-popup) body:has(> h1) { border: 0; width: 400px; }
.vajno { color: #071c55; }
.vajno span, form table span { color: #e8283c; }
form[name="zvonok-frm"] table td { color: #071c55; }
form[name="zvonok-frm"] table td input,
form[name="zvonok-frm"] table td select,
form[name="zvonok-frm"] table td textarea {
	border: 1px solid #7fa3e6;
	border-radius: 7px;
	background: #fff;
	transition: border-color .15s, box-shadow .15s;
}
form[name="zvonok-frm"] table td input,
form[name="zvonok-frm"] table td select { height: 20px; box-sizing: content-box; }
html:not(.m-popup) form[name="zvonok-frm"] > table { margin-top: 12px; }
form[name="zvonok-frm"] table td input:focus,
form[name="zvonok-frm"] table td select:focus,
form[name="zvonok-frm"] table td textarea:focus { outline: 0; border-color: #00b4ff; box-shadow: 0 0 0 3px rgba(0, 180, 255, .25); }
.submit input {
	background: linear-gradient(180deg, #1346aa 0%, #0e3184 100%);
	border-radius: 10px;
	box-shadow: 0 0 0 1px rgba(0, 180, 255, .6), 0 0 10px rgba(0, 160, 255, .4);
	font-weight: 600;
}
.submit input:hover { background: #00b4ff; color: #06215e; box-shadow: 0 0 14px rgba(0, 180, 255, .8); }
.error { background: #e8283c; border-radius: 8px; margin: 0 12px; }

/* Способы доставки и оплаты (600×350) */
.sposob_dostavki > .zag {
	background: linear-gradient(110deg, #071c55 0%, #0e3184 55%, #1346aa 100%);
	box-shadow: inset 0 -2px 0 #00b4ff;
	font-size: 16px;
	font-weight: 600;
}
.sposob_dostavki .sposob h3 { color: #1346aa; font-size: 15px; }
.sposob_dostavki .sposob ul li { color: #071c55; font-size: 13.5px; line-height: 1.35; }
.sposob_dostavki .sposob ul li::marker { color: #00b4ff; }
.sposob_dostavki .niz { background: linear-gradient(90deg, #071c55, #00b4ff 50%, #071c55); height: 4px; }

/* Оповещение о приходе товара (/email/<id>): поля и кнопка — как в «Заказать звонок» */
.sposob_dostavki .emailform input[type="text"],
.sposob_dostavki .emailform textarea {
	border: 1px solid #7fa3e6;
	border-radius: 8px;
	background: #fff;
	transition: border-color .15s, box-shadow .15s;
}
.sposob_dostavki .emailform input[type="text"]:focus,
.sposob_dostavki .emailform textarea:focus { outline: 0; border-color: #00b4ff; box-shadow: 0 0 0 3px rgba(0, 180, 255, .25); }
.sposob_dostavki .emailform .input input[type="submit"] {
	border: 0;
	border-radius: 10px;
	background: linear-gradient(180deg, #1346aa 0%, #0e3184 100%);
	box-shadow: 0 0 0 1px rgba(0, 180, 255, .6), 0 0 10px rgba(0, 160, 255, .4);
	color: #fff;
	font-weight: 600;
	cursor: pointer;
	transition: background-color .15s, box-shadow .15s, color .15s;
}
.sposob_dostavki .emailform .input input[type="submit"]:hover { background: #00b4ff; color: #06215e; box-shadow: 0 0 14px rgba(0, 180, 255, .8); }

/* Выбор подарка (podarok.tpl, 890×400). Было: список 890px и таблица 860px фиксированно — в окне браузера уже ~900px
   fancybox сжимает окно, и колонка с кнопками «Выбрать» уходила за правый край. Теперь всё по ширине окна,
   длинные названия переносятся, кнопка всегда видна, заголовок не уезжает при прокрутке списка. */
body > .catalogs {
	width: auto;
	height: 100vh;
	margin: 0;
	padding: 0 12px 10px;
	box-sizing: border-box;
	overflow-y: auto;
}
body > .catalogs .table { width: 100%; height: auto; table-layout: auto; }
body > .catalogs .table tr.tzag > td {
	position: sticky;
	top: 0;
	z-index: 1;
	padding: 12px 6px 10px;
	background: #fff;
	color: #071c55;
	font-size: 18px;
	font-weight: 600;
	box-shadow: 0 2px 0 #00b4ff;
}
body > .catalogs .table tr td { border-bottom: 1px solid #dbe5f7; }
body > .catalogs .table tr:hover td { background: #eef4ff; }
body > .catalogs .table td.naimen { font-size: 13px; line-height: 1.3; overflow-wrap: anywhere; }
body > .catalogs .table td.naimen a { color: #1346aa; }
body > .catalogs .table tr .img img { object-fit: contain; border-radius: 4px; }
body > .catalogs .table td.vibrat { width: 1%; white-space: nowrap; text-align: right; }
body > .catalogs .table td.vibrat img { display: none; }   /* старая картинка-кнопка vibrat.png */
body > .catalogs .table td.vibrat a {
	display: inline-block;
	padding: 6px 14px;
	border-radius: 8px;
	background: linear-gradient(180deg, #1346aa 0%, #0e3184 100%);
	box-shadow: 0 0 0 1px rgba(0, 180, 255, .55);
	color: #fff;
	font-size: 12px;
	font-weight: 600;
	text-decoration: none;
	transition: background .15s, box-shadow .15s;
}
body > .catalogs .table td.vibrat a::after { content: 'Выбрать'; }
body > .catalogs .table td.vibrat a:hover { background: #00b4ff; color: #06215e; box-shadow: 0 0 10px rgba(0, 180, 255, .7); }

/* Затемнение под окном — на весь экран, даже если страница шире окна браузера (раньше справа оставалась светлая полоса) */
/* только на страницах с шапкой: в самих окнах (podarok и др.) скрипт тоже создаёт пустой #fancybox-overlay — его не растягиваем */
body:has(.shapka) #fancybox-overlay { position: fixed !important; top: 0; left: 0; width: 100% !important; height: 100% !important; }

/* Контакты магазина (890×400) */
body > .contacts .maps .img { border-radius: 10px; }
body > .contacts .maps .yandex { border-radius: 10px; overflow: hidden; }
body > .contacts .zag { border-top: 2px solid #00b4ff; border-bottom: 2px solid #00b4ff; color: #071c55; }
body > .contacts .zag span { color: #1346aa; }
body > .contacts .zag a span { color: inherit; }

/* ---------- Телефон: верхняя панель mobile.js — тот же тёмный неон ---------- */
@media (max-width: 767px) {
	.m-ready .shapka { background: none; box-shadow: none; }
	#m-bar {
		background: linear-gradient(180deg, #071c55 0%, #0e3184 100%) !important;
		box-shadow: 0 1px 0 #00b4ff, 0 0 14px rgba(0, 180, 255, .45) !important;
	}
	/* у mobile.css свои цены и кнопки — снимаем десктопные плашки/свечение из блока выше */
	.m-ready .content .vivod .tovar .podrb .shop,
	.m-ready .spec .tovar .podrb .shop,
	.m-ready .tovars .kupit .buy { box-shadow: none; border-radius: 0; }
	/* кнопки «Купить» / «Отправить заказ» / заголовки контактов — в новую гамму */
	.m-ready .tovars td.kupit .buy a,
	.m-ready .send_zakaz span:not(.m-btn-final):not(.m-btn-back),
	.m-ready .content .contacts td.bawt h1 {
		background: linear-gradient(180deg, #1346aa 0%, #0e3184 100%);
		box-shadow: 0 0 0 1px rgba(0, 180, 255, .45), 0 4px 12px rgba(0, 120, 255, .3);
	}
	.m-ready .footer { background: linear-gradient(180deg, #0c2c77 0%, #071c55 100%); box-shadow: 0 -1px 0 #00b4ff, 0 0 14px rgba(0, 180, 255, .35); }
	.m-ready .full_search .search2 input { background-color: #00b4ff; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2306215e' stroke-width='2.6' stroke-linecap='round'%3E%3Ccircle cx='10.5' cy='10.5' r='6.5'/%3E%3Cpath d='m15.5 15.5 5 5'/%3E%3C/svg%3E"); }
	.m-ready .full_search .search1 { background: #fff; border-color: #c9d8f5; box-shadow: 0 2px 8px rgba(14, 49, 132, .06); }
	.m-ready .full_search .search1:focus-within { border-color: #00b4ff; box-shadow: 0 0 0 3px rgba(0, 180, 255, .18); }
	.m-ready .full_search .m-mode { background: #eef4ff; box-shadow: inset 0 0 0 1px #c9d8f5; color: #1346aa; }
	.m-ready .full_search .search1 input { padding-left: 10px; }
	/* «в корзину» в плитках — та же тележка, что на компьютере */
	.m-ready .content .vivod .tovar .podrb .buy a {
		padding: 6px 10px 6px 28px;
		border-radius: 9px;
		background: linear-gradient(180deg, #1346aa 0%, #0e3184 100%);
		background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M2.5 3h2.2l2.4 11.2a1.8 1.8 0 0 0 1.8 1.4h8.6a1.8 1.8 0 0 0 1.8-1.4L21 7H6'/%3E%3Ccircle cx='9.5' cy='20' r='1.4'/%3E%3Ccircle cx='17' cy='20' r='1.4'/%3E%3C/svg%3E") 8px center / 15px no-repeat, linear-gradient(180deg, #1346aa 0%, #0e3184 100%);
		box-shadow: 0 0 0 1px rgba(0, 180, 255, .45);
	}
	/* окна на телефоне (mobile.js открывает их на весь экран): шапка окна и ссылки «Карта проезда» — в гамме сайта */
	#m-modal .m-modal-head {
		background: linear-gradient(110deg, #071c55 0%, #0e3184 55%, #1346aa 100%);
		box-shadow: inset 0 -2px 0 #00b4ff, 0 0 12px rgba(0, 180, 255, .4);
	}
	#m-modal .m-modal-close { border: 1px solid rgba(0, 180, 255, .7); background: rgba(0, 150, 255, .2); }
	.m-popup td.m-maps a { background: #eef4ff; color: #1346aa; border: 1px solid #c9d8f5; }
	.m-popup .sposob_dostavki .niz { display: none; }
	.m-frame body > .catalogs .table tr.tzag { display: none; }   /* «Выберите подарок» уже в шапке окна на телефоне */   /* полоса «низ окна» — на телефоне окно во весь экран, она висела посреди */
	.m-popup form > table td input, .m-popup form > table td select, .m-popup form > table td textarea { border-radius: 9px; height: auto; }

	/* путь — компактнее под палец */
	.m-ready .bc { gap: 5px 2px; font-size: 12px; }
	.m-ready .bc a, .m-ready .bc .bc-cur { padding: 3px 8px; }
	.m-ready .bc .bc-sep { margin: 0 4px 0 1px; width: 5px; height: 5px; }
	.m-ready .full_search .search2 input:active { background-color: #3fd4ff; }

	/* Выдвижное меню (мобильное «левое меню») */
	#m-drawer { background: linear-gradient(180deg, #0d2f7d 0%, #071f59 100%); box-shadow: 1px 0 0 #00b4ff, 4px 0 18px rgba(0, 160, 255, .35); }
	#m-drawer .m-sec { border-bottom-color: rgba(0, 180, 255, .3); }
	#m-drawer .m-sec a { color: #e6f3ff; border-top-color: rgba(0, 180, 255, .14); }
	#m-drawer .m-sec a:active { background: rgba(0, 150, 255, .22); }
	#m-drawer .m-title { color: #3fd4ff; }
	#m-drawer .m-callback { background: #00b4ff; color: #06215e; font-weight: 700; }
	#m-drawer .m-shop a { color: #e6f3ff; }
	#m-drawer .m-shop .m-tel { color: #3fd4ff; }
	#m-drawer .m-ct .ct-call {
		background: linear-gradient(160deg, rgba(0, 120, 255, .28) 0%, rgba(0, 70, 170, .22) 100%);
		border: 1px solid rgba(0, 180, 255, .6);
		box-shadow: 0 0 14px rgba(0, 160, 255, .3), inset 0 0 12px rgba(0, 160, 255, .15);
	}
	#m-drawer .m-ct .ct-nums a { background: rgba(0, 150, 255, .14); border-color: rgba(0, 180, 255, .45); }
	#m-drawer .m-ct .ct-order { background: #00b4ff; color: #06215e; }
	#m-drawer .m-ct .ct-chats-title { color: #7fc4ff; }
	#m-drawer .m-ct .ct-chats-title svg { fill: #7fc4ff; }
	#m-drawer .m-ct .ct-shop { background: rgba(0, 120, 255, .12); border-color: rgba(0, 180, 255, .3); }
	#m-drawer .m-ct .ct-addr { color: #e6f3ff; }
	#m-drawer .m-ct .ct-addr small { color: #8fb3d9; }
	#m-drawer .m-ct .ct-map { background: rgba(0, 150, 255, .2); }
	#m-drawer .m-ct .ct-map svg { fill: #3fd4ff; }
}

/* ---------- Корзина (/buy) ----------
   Было: голубой блок с пунктирной рамкой, таблица с картинками-кнопками («удалить», «очистить», ±),
   подарок и промокод в пунктирных рамках, кнопка «Оформить заказ» старого вида.
   Стало: светлые карточки со скруглением, круглые кнопки ±, корзина-иконка вместо «удалить», крупный итог,
   промокод — поле и кнопка в одну строку, главная кнопка в гамме сайта со стрелкой.
   Правила привязаны к .skidka (блок «Внимание!» есть только на странице корзины), чтобы не задеть шаги 1–4.
   Картинки-кнопки не удаляются, а делаются прозрачными поверх новой кнопки — остаются подписи (alt) и клики. */
.tpl > .skidka {
	position: relative;
	margin: 0 0 18px;
	padding: 16px 18px 12px 52px;
	border: 1px solid #d3e2fb;
	border-radius: 14px;
	background: linear-gradient(180deg, #f3f8ff 0%, #eaf2ff 100%);
	color: #24324a;
	font-size: 13.5px;
	line-height: 1.45;
}
.tpl > .skidka::before {   /* значок «i» */
	content: "";
	position: absolute;
	left: 16px;
	top: 15px;
	width: 24px;
	height: 24px;
	border-radius: 50%;
	background: #1346aa url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='2.6' stroke-linecap='round'%3E%3Cpath d='M12 11v6M12 7.2v.1'/%3E%3C/svg%3E") center / 18px no-repeat;
	box-shadow: 0 0 0 3px rgba(19, 70, 170, .12);
}
.tpl > .skidka > p { padding: 2px 0 8px; color: #0e3184; font-size: 15px; font-weight: 700; }
.tpl > .skidka ul { list-style: none; margin: 0; padding: 0; }
.tpl > .skidka ul li { position: relative; margin: 0; padding: 0 0 7px 16px; text-align: left; }
.tpl > .skidka ul li::before {
	content: "";
	position: absolute;
	left: 2px;
	top: .58em;
	width: 6px;
	height: 6px;
	border-radius: 50%;
	background: #00a2e8;
}
.tpl > .skidka b { color: #0e3184; }
.tpl > .skidka u { text-decoration: none; border-bottom: 1px dashed #7c95c4; }
.tpl > .skidka ul li span { color: #13a04a; }   /* «БЕСПЛАТНО!» — зелёным, как выгода, а не как ошибка */

/* Таблица товаров — белая карточка */
.tpl > .skidka ~ table.basket {
	position: relative;   /* «Очистить» прижата к левому краю строки итога */
	border-collapse: separate;
	border-spacing: 0;
	margin: 0 0 18px;
	border: 1px solid #e1e8f3;
	border-radius: 14px;
	background: #fff;
	box-shadow: 0 2px 10px rgba(14, 49, 132, .06);
	font-size: 14px;
	overflow: hidden;
}
.tpl > .skidka ~ table.basket tr { border: 0; }
.tpl > .skidka ~ table.basket tr.tr td {
	padding: 11px 8px;
	border-bottom: 1px solid #e8eef7;
	background: #f7f9fd;
	color: #7a879c;
	font-size: 11.5px;
	font-weight: 600;
	letter-spacing: .04em;
	text-transform: uppercase;
}
.tpl > .skidka ~ table.basket tr.tr td:last-child { font-size: 0; }   /* «Удалить» — над колонкой узких иконок */
.tpl > .skidka ~ table.basket tr:not(.tr):not(.itogo2) > td { padding: 14px 8px; border-bottom: 1px solid #eef2f8; }
.tpl > .skidka ~ table.basket td.nomer { width: 22px; padding-left: 14px !important; color: #9aa6b8; font-size: 13px; }
.tpl > .skidka ~ table.basket td.naime { font-size: 14.5px; line-height: 1.35; overflow-wrap: anywhere; }   /* «3.7 GHz/6PC+4E/9.5+20Mb/150W/16GT/s» без пробелов держал колонку 352px — корзина не сжималась на узком окне */
.tpl > .skidka ~ table.basket td.naime a { color: #0e3184; font-weight: 500; text-decoration: none; }
.tpl > .skidka ~ table.basket td.naime a:hover { color: #1f6fe0; text-decoration: underline; }
.tpl > .skidka ~ table.basket td.cena { width: 1%; padding-left: 14px !important; color: #1d2433; font-size: 15px; font-weight: 600; white-space: nowrap; }
.tpl > .skidka ~ table.basket td.cena span { color: #7a879c; font-size: 12px; font-weight: 500; }
.tpl > .skidka ~ table.basket td.cena + td.cena { color: #0e3184; font-weight: 700; }   /* «Сумма» */

/* Количество: [−] [ 50 ] [+] */
.tpl > .skidka ~ table.basket td.kolvo { width: 1%; white-space: nowrap; }
.tpl > .skidka ~ table.basket td.kolvo .minus,
.tpl > .skidka ~ table.basket td.kolvo .minplu { display: inline-block; float: none; vertical-align: top; margin: 0; }
.tpl > .skidka ~ table.basket td.kolvo .minus { width: auto; height: auto; }
.tpl > .skidka ~ table.basket td.kolvo .minus a {
	display: block;
	width: 30px;
	height: 30px;
	border-radius: 50%;
	background: #eef3fc center / 14px no-repeat;
	transition: background-color .15s;
}
.tpl > .skidka ~ table.basket td.kolvo .minus:first-child a { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231346aa' stroke-width='2.8' stroke-linecap='round'%3E%3Cpath d='M5 12h14'/%3E%3C/svg%3E"); }
.tpl > .skidka ~ table.basket td.kolvo .minplu + .minus a { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231346aa' stroke-width='2.8' stroke-linecap='round'%3E%3Cpath d='M5 12h14M12 5v14'/%3E%3C/svg%3E"); }
.tpl > .skidka ~ table.basket td.kolvo .minus a:hover { background-color: #dbe7fb; }
.tpl > .skidka ~ table.basket td.kolvo .minus img { display: block; width: 100%; height: 100%; opacity: 0; }
.tpl > .skidka ~ table.basket td.kolvo .minplu { position: static; width: auto; height: auto; margin: 0 4px; }
.tpl > .skidka ~ table.basket td.kolvo .inp1,
.tpl > .skidka ~ table.basket td.kolvo .inp3 { display: none; }
.tpl > .skidka ~ table.basket td.kolvo .inp2 { position: static; width: auto; height: auto; padding: 0; border: 0; background: none; }
.tpl > .skidka ~ table.basket td.kolvo .inp2 input {
	display: block;
	width: 44px;
	height: 30px;
	margin: 0;
	padding: 0;
	box-sizing: border-box;
	border: 1px solid #d5deec;
	border-radius: 8px;
	background: #fff;
	color: #1d2433;
	font-size: 15px;
	font-weight: 600;
	text-align: center;
}
.tpl > .skidka ~ table.basket td.kolvo .inp2 input:focus { outline: 0; border-color: #1f6fe0; box-shadow: 0 0 0 3px rgba(31, 111, 224, .18); }
.tpl > .skidka ~ table.basket td.kolvo br.clear { display: none; }

/* «Удалить» — иконка корзины; «Очистить корзину» — текстовая кнопка */
.tpl > .skidka ~ table.basket td.delete { width: 1%; padding-right: 12px; text-align: right; }
.tpl > .skidka ~ table.basket td.delete form { display: inline-block; }
.tpl > .skidka ~ table.basket tr:not(.itogo2) td.delete a {
	display: block;
	width: 34px;
	height: 34px;
	border-radius: 10px;
	background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%238a96a8' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 7h16M9.5 7V4.5h5V7M6 7l.9 12.2A1.9 1.9 0 0 0 8.8 21h6.4a1.9 1.9 0 0 0 1.9-1.8L18 7M10 11v6M14 11v6'/%3E%3C/svg%3E") center / 20px no-repeat;
	transition: background-color .15s;
}
.tpl > .skidka ~ table.basket tr:not(.itogo2) td.delete a:hover {
	background-color: #ffeceb;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23e5484d' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 7h16M9.5 7V4.5h5V7M6 7l.9 12.2A1.9 1.9 0 0 0 8.8 21h6.4a1.9 1.9 0 0 0 1.9-1.8L18 7M10 11v6M14 11v6'/%3E%3C/svg%3E");
}
.tpl > .skidka ~ table.basket tr:not(.itogo2) td.delete img { display: block; width: 100%; height: 100%; opacity: 0; }

/* Итог */
.tpl > .skidka ~ table.basket tr.itogo2 > td { padding: 16px 8px; background: #f7f9fd; border: 0; }
.tpl > .skidka ~ table.basket td.itogo { color: #5d6a80; font-size: 15px; font-weight: 600; text-align: right; }
.tpl > .skidka ~ table.basket td.itogo1 { color: #0e3184; font-size: 21px; font-weight: 800; text-align: left; contain: inline-size;   /* сумма не раздвигает колонку, а заходит на пустую ячейку справа */ white-space: nowrap; letter-spacing: -.01em; }
.tpl > .skidka ~ table.basket td.itogo1 span { color: #5d6a80; font-size: 14px; font-weight: 600; }
.tpl > .skidka ~ table.basket tr.itogo2 td.delete { padding: 0; }
.tpl > .skidka ~ table.basket tr.itogo2 td.delete a {
	position: absolute;
	left: 10px;
	bottom: 17px;
	display: inline-block;
	padding: 6px 10px;
	border-radius: 8px;
	color: #8a96a8;
	font-size: 12.5px;
	font-weight: 500;
	text-decoration: none;
	transition: color .15s, background-color .15s;
}
.tpl > .skidka ~ table.basket tr.itogo2 td.delete a::after { content: "\041E\0447\0438\0441\0442\0438\0442\044C  \043A\043E\0440\0437\0438\043D\0443"; }   /* «Очистить корзину» */
.tpl > .skidka ~ table.basket tr.itogo2 td.delete a:hover { color: #e5484d; background: #ffeceb; }
.tpl > .skidka ~ table.basket tr.itogo2 td.delete img { position: absolute; inset: 0; width: 100%; height: 100%; opacity: 0; }

/* Выбранный подарок */
.tpl > .skidka ~ .jspodarok {
	display: flex;
	align-items: center;
	gap: 14px;
	height: auto;
	margin: 0 0 18px;
	padding: 14px 18px;
	border: 1px solid #ffd9a0;
	border-radius: 14px;
	background: linear-gradient(100deg, #fff6e6 0%, #fffaf2 60%, #fff 100%);
	font-size: 15px;
	line-height: 1.35;
}
.tpl > .skidka ~ .jspodarok a:first-child { flex: none; }
.tpl > .skidka ~ .jspodarok img { float: none; display: block; width: 52px; height: auto; margin: 0; }
.tpl > .skidka ~ .jspodarok #choose_present_link { color: #0e3184; font-weight: 700; text-decoration: none; }
.tpl > .skidka ~ .jspodarok #choose_present_link:hover { color: #1f6fe0; }
.tpl > .skidka ~ .jspodarok .nourl { padding: 0 0 2px; color: #a0670c; font-size: 12px; font-weight: 600; letter-spacing: .04em; text-transform: uppercase; }

/* Промокод: подпись, поле и кнопка в одну строку, пример под полем */
.tpl > .skidka ~ .promokod {
	margin: 0 0 6px;
	padding: 16px 18px;
	border: 1px solid #e1e8f3;
	border-radius: 14px;
	background: #fff;
	text-align: left;
	font-weight: 400;
}
.tpl > .skidka ~ .promokod form:has(input[name="code"]) {
	display: grid;
	grid-template-columns: 1fr auto;
	gap: 8px 10px;
	align-items: center;
}
.tpl > .skidka ~ .promokod form:has(input[name="code"]) > p { padding: 0; }
.tpl > .skidka ~ .promokod form:has(input[name="code"]) > p:first-child { grid-column: 1 / -1; color: #24324a; font-size: 14px; font-weight: 600; }
.tpl > .skidka ~ .promokod form:has(input[name="code"]) > p.primer { grid-column: 1; grid-row: 3; }
.tpl > .skidka ~ .promokod form:has(input[name="code"]) > p:last-child { grid-column: 2; grid-row: 2; }
.tpl > .skidka ~ .promokod p input[type="text"] {
	width: 100%;
	height: 42px;
	box-sizing: border-box;
	padding: 0 12px 0 38px;
	border: 1px solid #d5deec;
	border-radius: 10px;
	background: #f9fbfe url(/templates/byte/img/coins_add.png) 12px center no-repeat;
	color: #1d2433;
	font-size: 15px;
	letter-spacing: .03em;
	transition: border-color .15s, box-shadow .15s, background-color .15s;
}
.tpl > .skidka ~ .promokod p input[type="text"]:hover { border: 1px solid #b9c8df; }
.tpl > .skidka ~ .promokod p input[type="text"]:focus {
	outline: 0;
	border: 1px solid #1f6fe0;
	background-color: #fff;
	box-shadow: 0 0 0 3px rgba(31, 111, 224, .18);
}
.tpl > .skidka ~ .promokod p.primer { color: #9aa6b8; font-size: 12px; }
.tpl > .skidka ~ .promokod input[type="submit"] {
	height: 42px;
	padding: 0 18px;
	border: 1.5px solid #1346aa;
	border-radius: 10px;
	background: #fff;
	color: #1346aa;
	font-size: 13px;
	font-weight: 700;
	letter-spacing: .05em;
	cursor: pointer;
	-webkit-appearance: none;
	appearance: none;
	transition: background-color .15s, color .15s;
}
.tpl > .skidka ~ .promokod input[type="submit"]:hover { background: #1346aa; color: #fff; }

/* «Оформить заказ» */
.tpl > .skidka ~ .send_zakaz { width: auto; height: auto; margin: 18px 0 8px; padding: 0; }
.tpl > .skidka ~ .send_zakaz span {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	margin: 0;
	padding: 15px 34px;
	border: 0;
	border-radius: 14px;
	background: linear-gradient(180deg, #1a55c4 0%, #0e3184 100%);
	box-shadow: 0 0 0 1px rgba(0, 180, 255, .45), 0 6px 18px rgba(0, 90, 220, .3);
	color: #fff;
	font-size: 18px;
	font-weight: 600;
	line-height: 1.2;
	transition: transform .15s, box-shadow .15s;
}
.tpl > .skidka ~ .send_zakaz span::after { content: "\2192"; font-weight: 400; font-size: 20px; transition: transform .15s; }
.tpl > .skidka ~ .send_zakaz span:hover {
	border: 0;
	transform: translateY(-1px);
	box-shadow: 0 0 0 1px rgba(0, 200, 255, .8), 0 8px 22px rgba(0, 120, 255, .4);
}
.tpl > .skidka ~ .send_zakaz span:hover::after { transform: translateX(3px); }

/* Корзина на телефоне: строка товара — карточка (сетку строит mobile.css), здесь только поправки к правилам выше */
@media (max-width: 767px) {
	.m-ready .tpl > .skidka { margin: 0 0 14px; padding: 14px 14px 8px; font-size: 14px; }
	.m-ready .tpl > .skidka::before { left: 14px; top: 13px; width: 22px; height: 22px; background-size: 16px; }
	.m-ready .tpl > .skidka > p { padding: 1px 0 8px 32px; }
	.m-ready .tpl > .skidka ul li { padding-left: 14px; }
	.m-ready .tpl > .skidka ~ table.basket { margin-bottom: 14px; }
	.m-ready .tpl > .skidka ~ table.basket tr:has(> td.naime) { padding: 14px 14px 12px; border-bottom: 1px solid #eef2f8; column-gap: 10px; }
	.m-ready .tpl > .skidka ~ table.basket tr:not(.tr):not(.itogo2) > td { padding: 0; border: 0; }
	.m-ready .tpl > .skidka ~ table.basket td.naime { padding-bottom: 10px !important; font-size: 15px; }
	.m-ready .tpl > .skidka ~ table.basket td.cena { width: auto; padding-left: 0 !important; }
	.m-ready .tpl > .skidka ~ table.basket td.cena .m-price { font-size: 15px; color: #1d2433; }
	.m-ready .tpl > .skidka ~ table.basket td.cena + td.cena .m-price { color: #0e3184; }
	.m-ready .tpl > .skidka ~ table.basket td.kolvo { width: auto; }
	.m-ready .tpl > .skidka ~ table.basket td.kolvo .minus { margin: 0; }
	.m-ready .tpl > .skidka ~ table.basket td.kolvo .minplu { width: auto; height: auto; }
	.m-ready .tpl > .skidka ~ table.basket td.kolvo .inp2 { height: auto; line-height: normal; padding: 0; }
	.m-ready .tpl > .skidka ~ table.basket td.kolvo .inp2 input { width: 40px; height: 32px; font-size: 16px; }
	.m-ready .tpl > .skidka ~ table.basket td.kolvo .minus a { width: 32px; height: 32px; }
	.m-ready .tpl > .skidka ~ table.basket tr.itogo2 { position: relative; padding: 0 14px; background: #f7f9fd; }
	.m-ready .tpl > .skidka ~ table.basket tr.itogo2 > td { padding: 14px 0 !important; background: none; }
	.m-ready .tpl > .skidka ~ table.basket td.itogo1 { contain: none; }
	.m-ready .tpl > .skidka ~ table.basket td.itogo1 .m-price { font-size: 21px; color: #0e3184; }
	.m-ready .tpl > .skidka ~ table.basket tr.itogo2 td.delete a::after { content: "\041E\0447\0438\0441\0442\0438\0442\044C"; }   /* «Очистить» — короче, рядом «Итого» */
	.m-ready .tpl > .skidka ~ table.basket tr.itogo2 td.delete a { left: 6px; bottom: 50%; transform: translateY(50%); }
	.m-ready .tpl > .skidka ~ .jspodarok { margin-bottom: 14px; padding: 12px 14px; gap: 12px; font-size: 14px; }
	.m-ready .tpl > .skidka ~ .jspodarok img { width: 44px; }
	.m-ready .tpl > .skidka ~ .jspodarok #choose_present_link { min-width: 0; overflow-wrap: break-word; }
	.m-ready .tpl > .skidka ~ .promokod { padding: 14px; }
	.m-ready .tpl > .skidka ~ .promokod form:has(input[name="code"]) { grid-template-columns: 1fr; }
	.m-ready .tpl > .skidka ~ .promokod form:has(input[name="code"]) > p.primer { grid-row: auto; }
	.m-ready .tpl > .skidka ~ .promokod form:has(input[name="code"]) > p:last-child { grid-column: 1; grid-row: auto; }
	.m-ready .tpl > .skidka ~ .promokod input[type="submit"] { width: 100%; }
	.m-ready .tpl > .skidka ~ .promokod p input[type="text"] { max-width: none; font-size: 16px; }   /* 16px — iPhone не увеличивает страницу при вводе */
	.m-ready .tpl > .skidka ~ .promokod input[type="submit"] { padding: 0 12px; font-size: 12px; }
	.m-ready .tpl > .skidka ~ .send_zakaz span { padding: 0 16px; gap: 6px; font-size: 17px; border-radius: 14px; }   /* как кнопки шагов 1–4 (mobile.css) */
	.m-ready .tpl > .skidka ~ .send_zakaz span::after { font-size: inherit; }
	.m-ready .tpl > .skidka ~ .send_zakaz span:hover { transform: none; }
}

/* ---------- «ВАЖНАЯ информация» на главной: карточка акции (разметку раскладывает promo() в banner.js) ---------- */
.content .danger1.pr-ready {
	container-type: inline-size;
	margin-top: 10px;
	margin-bottom: 22px;
	padding: 0;
	background: #fff;
	border: 1px solid #d3def3;
	border-radius: 16px;
	box-shadow: 0 0 0 1px rgba(0, 180, 255, .12), 0 6px 22px rgba(14, 49, 132, .12);
	overflow: hidden;
	text-align: left;
	font-size: 14px;
	color: #33415c;
}
/* Узкая колонка (ноутбук, телефон): картинка сверху во всю ширину, текст под ней.
   Широкая: картинка слева (прилипает при прокрутке), текст справа. */
.content .danger1 .pr-pic { background: #071c55; }
.content .danger1 .pr-pic img { display: block; width: 100%; height: auto; }
.content .danger1 .pr-body { min-width: 0; padding: 20px 22px 18px; box-sizing: border-box; }
@container (min-width: 820px) {
	.content .danger1 .pr-card { display: grid; grid-template-columns: minmax(0, 1.15fr) minmax(0, 1fr); align-items: start; padding: 18px; }
	.content .danger1 .pr-pic { position: sticky; top: 18px; border-radius: 12px; overflow: hidden; box-shadow: 0 4px 18px rgba(7, 28, 85, .25); }
	.content .danger1 .pr-body { padding: 4px 6px 0 24px; }
}
.content .danger1 .pr-body p { margin: 0 0 12px; text-align: left; line-height: 1.55; }
.content .danger1 .pr-body p > br:first-child { display: none; }
.content .danger1 .pr-body span[style*="font-size"] { font-size: inherit !important; }
.content .danger1 .pr-emoji { width: 1.15em; height: 1.15em; vertical-align: -.2em; margin: 0 .1em; }

/* Заголовок акции — красный, как «ВАЖНАЯ» */
.content .danger1 .pr-title { font-size: 21px; font-weight: 800; line-height: 1.25 !important; }
.content .danger1 .pr-title span[style*="color"] { color: #e8283c !important; }
/* Подзаголовки («SSD-ДИСКИ SAMSUNG…», «В АКЦИИ УЧАСТВУЮТ:») */
.content .danger1 .pr-sub { font-size: 15px; color: #071c55; line-height: 1.35 !important; }
.content .danger1 .pr-sub + .pr-item,
.content .danger1 p + .pr-sub { margin-top: 16px; }

/* Товар акции: название + цена + кнопка */
.content .danger1 .pr-item {
	position: relative;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 10px 14px;
	padding: 12px 14px 12px 30px;
	background: #f2f7ff;
	border: 1px solid #cfe0fb;
	border-radius: 12px;
	color: #071c55;
}
.content .danger1 .pr-item::before {
	content: '';
	position: absolute;
	left: 13px;
	top: 19px;
	width: 7px;
	height: 7px;
	background: #00a6ee;
	transform: rotate(45deg);
	box-shadow: 0 0 6px rgba(0, 180, 255, .7);
}
.content .danger1 .pr-name { flex: 1 1 100%; font-weight: 600; line-height: 1.4; }
.content .danger1 .pr-item strong { font-weight: 800; }
.content .danger1 .pr-price {
	display: inline-block;
	padding: 4px 12px;
	border-radius: 999px;
	background: #e8283c;
	color: #fff;
	font-size: 17px;
	font-weight: 800;
	white-space: nowrap;
	box-shadow: 0 3px 10px rgba(232, 40, 60, .3);
}
.content .danger1 .pr-btn,
.content .danger1 .pr-more a {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	padding: 7px 16px;
	border-radius: 999px;
	background: linear-gradient(180deg, #0183bd, #006c9d);
	color: #fff !important;
	font-weight: 600;
	font-size: 14px;
	text-decoration: none;
	white-space: nowrap;
	transition: box-shadow .2s, transform .2s;
}
.content .danger1 .pr-btn::after,
.content .danger1 .pr-more a::after { content: '→'; }
.content .danger1 .pr-btn:hover,
.content .danger1 .pr-more a:hover { box-shadow: 0 0 0 2px rgba(0, 180, 255, .35), 0 4px 14px rgba(0, 150, 255, .35); transform: translateY(-1px); }

/* «Количество ограничено!» — жёлтое предупреждение */
.content .danger1 .pr-note {
	display: flex;
	align-items: center;
	gap: 10px;
	margin-top: 16px !important;
	padding: 10px 14px;
	background: #fff7e0;
	border: 1px solid #ffd76a;
	border-left: 4px solid #ffb800;
	border-radius: 10px;
	color: #5a3d00;
	text-align: left !important;
	font-size: 14px;
	line-height: 1.4 !important;
}
.content .danger1 .pr-note .pr-emoji { width: 22px; height: 22px; flex: none; }

.content .danger1 .pr-more { margin: 18px 0 0 !important; text-align: right !important; }
.content .danger1 .pr-more a { background: none; color: #1346aa !important; border: 1.5px solid #1346aa; padding: 6px 16px; }
.content .danger1 .pr-more a:hover { background: #1346aa; color: #fff !important; }

/* ---------- Оформление заказа на компьютере (/buy_1…/buy_4) ----------
   Полоса шагов .ck-steps и классы кнопок ck-* ставит checkout() в banner.js. На телефоне всё это делает
   mobile.css/mobile.js (.m-ready) — там правила ниже не действуют. */
.ck-steps { display: none; }
html:not(.m-ready) .tpl > .shag { display: none; }
html:not(.m-ready) .ck-steps {
	display: flex;
	margin: 6px 0 22px;
	padding: 0;
	list-style: none;
	counter-reset: none;
}
html:not(.m-ready) .ck-step {
	position: relative;
	flex: 1;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 7px;
	color: #8a97ad;
	font-size: 13px;
	font-weight: 600;
}
/* соединительная линия между кружками */
html:not(.m-ready) .ck-step + .ck-step::before {
	content: '';
	position: absolute;
	top: 16px;
	right: calc(50% + 22px);
	left: calc(-50% + 22px);
	height: 3px;
	border-radius: 2px;
	background: #e1e8f3;
}
html:not(.m-ready) .ck-step.is-done::before,
html:not(.m-ready) .ck-step.is-cur::before { background: linear-gradient(90deg, #1346aa, #00a6ee); }
html:not(.m-ready) .ck-step b {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 34px;
	height: 34px;
	box-sizing: border-box;
	border: 2px solid #d5deec;
	border-radius: 50%;
	background: #fff;
	color: #8a97ad;
	font-size: 15px;
}
html:not(.m-ready) .ck-step.is-done { color: #1346aa; }
html:not(.m-ready) .ck-step.is-done b { border-color: #1346aa; background: #1346aa; color: #fff; font-size: 0; }
html:not(.m-ready) .ck-step.is-done b::after { content: '\2713'; font-size: 16px; }
html:not(.m-ready) .ck-step.is-cur { color: #071c55; }
html:not(.m-ready) .ck-step.is-cur b {
	border-color: #00a6ee;
	background: linear-gradient(180deg, #1a55c4, #0e3184);
	color: #fff;
	box-shadow: 0 0 0 4px rgba(0, 166, 238, .18), 0 0 12px rgba(0, 166, 238, .45);
}

/* Блок шага: вместо пунктирной рамки с «висящим» заголовком и серой тенью — карточка с заголовком-шапкой */
html:not(.m-ready) .buy_1 { margin-top: 0; }
html:not(.m-ready) .buy_1 .buy_1_nal {
	margin: 0 0 22px;
	padding: 0 0 6px;
	border: 1px solid #d3def3;
	border-radius: 14px;
	box-shadow: 0 2px 10px rgba(14, 49, 132, .07);
	background: #fff;
	overflow: hidden;
}
html:not(.m-ready) .buy_1 .buy_1_nal .buy_1_zag {
	position: static;
	display: block;
	height: auto;
	margin: 0;
	padding: 14px 20px 14px 56px;
	text-align: left;
	border: 0;
	border-bottom: 1px solid #e6edf8;
	border-radius: 0;
	background: linear-gradient(180deg, #f6f9ff, #eef4fd);
	color: #071c55;
	font-size: 16px;
	line-height: 1.35;
	font-weight: 700;
}
html:not(.m-ready) .buy_1 .buy_1_nal .buy_1_zag b { text-transform: none; color: #1346aa; }
html:not(.m-ready) .buy_1 .buy_1_nal .buy_1_zag img { width: 26px; height: 26px; margin: -4px 4px 0 -36px; vertical-align: middle; }
html:not(.m-ready) .buy_1 .buy_1_nal .buy_1_zag a { font-weight: 600; }

/* Варианты выбора: вся строка кликабельна, выбранная подсвечена */
html:not(.m-ready) .buy_1 .buy_1_str { margin: 0; padding: 0; border-bottom: 1px solid #eef2f8; }
html:not(.m-ready) .buy_1 .buy_1_str:last-child { border-bottom: 0; }
html:not(.m-ready) .buy_1 .buy_1_str label {
	position: relative;
	display: grid;
	grid-template-columns: 22px 1fr;
	column-gap: 14px;
	align-items: start;
	padding: 14px 20px;
	cursor: pointer;
	transition: background-color .15s;
}
html:not(.m-ready) .buy_1 .buy_1_str label:hover { background: #f7faff; }
html:not(.m-ready) .buy_1 .buy_1_str label:has(input:checked) { background: #eaf3ff; box-shadow: inset 4px 0 0 #1346aa; }
html:not(.m-ready) .buy_1 .buy_1_str .buy_radio {
	position: static;
	grid-row: 1 / span 2;
	grid-column: 1;
	width: auto;
	height: auto;
	margin: 0;
	padding-top: 1px;
}
html:not(.m-ready) .buy_1 .buy_1_str .buy_radio input { width: 20px; height: 20px; margin: 0; accent-color: #1346aa; cursor: pointer; }
html:not(.m-ready) .buy_1 .buy_1_str .buy_1_zagolovok {
	grid-column: 2;
	padding: 0;
	text-align: left;
	color: #071c55;
	font-size: 15px;
	line-height: 1.35;
	font-weight: 700;
}
html:not(.m-ready) .buy_1 .buy_1_str .buy_1_zagolovok a { font-weight: 600; }
html:not(.m-ready) .buy_1 .buy_1_str .buy_1_opis {
	grid-column: 2;
	padding: 4px 0 0;
	color: #5b6880;
	font-size: 13px;
	line-height: 1.45;
	text-align: left;
}
/* цена доставки — плашкой */
html:not(.m-ready) .buy_1 .buy_1_str .buy_1_opis span {
	display: inline-block;
	margin-left: 2px;
	padding: 1px 9px;
	border-radius: 999px;
	background: #fdecee;
	color: #d42d39;
	font-size: 13px;
	font-weight: 700;
}
/* Компьютерам сайт отдаёт другую разметку вариантов (телефонам — радиокнопки в label, как выше):
   div.buy_1_kvadrat с onclick="setDostType(…)", у выбранного — .buy_1_hover. Квадрат растягиваем на всю строку
   (кликабельна целиком), кружок рисуем ::before; текст — поверх квадрата, но клики пропускает к нему (кроме ссылок). */
html:not(.m-ready) .buy_1 .buy_1_str:has(> .buy_1_kvadrat) { position: relative; padding: 14px 20px 14px 56px; transition: background-color .15s; }
html:not(.m-ready) .buy_1 .buy_1_str:has(> .buy_1_kvadrat):hover { background: #f7faff; }
html:not(.m-ready) .buy_1 .buy_1_str:has(> .buy_1_hover) { background: #eaf3ff; box-shadow: inset 4px 0 0 #1346aa; }
html:not(.m-ready) .buy_1 .buy_1_str .buy_1_kvadrat,
html:not(.m-ready) .buy_1 .buy_1_str .buy_1_kvadrat:hover {
	position: absolute;
	inset: 0;
	z-index: 0;
	width: auto;
	height: auto;
	margin: 0;
	border: 0;
	border-radius: 0;
	background: none;
}
html:not(.m-ready) .buy_1 .buy_1_str .buy_1_kvadrat .buy_1_img { display: none; }   /* старая картинка-галочка */
html:not(.m-ready) .buy_1 .buy_1_str .buy_1_kvadrat::before {
	content: "";
	position: absolute;
	left: 20px;
	top: 14px;
	box-sizing: border-box;
	width: 20px;
	height: 20px;
	border: 2px solid #9aaccb;
	border-radius: 50%;
	background: #fff;
}
html:not(.m-ready) .buy_1 .buy_1_str .buy_1_kvadrat:hover::before { border-color: #1346aa; }
/* выбранный — сразу, без transition: плавная смена толщины рамки у ::before в Safari не дорисовывалась, кружок оставался пустым */
html:not(.m-ready) .buy_1 .buy_1_str .buy_1_kvadrat.buy_1_hover::before { border-color: #1346aa; background: #1346aa; box-shadow: inset 0 0 0 3px #fff; }
html:not(.m-ready) .buy_1 .buy_1_str .buy_1_kvadrat ~ div { position: relative; z-index: 1; pointer-events: none; }
html:not(.m-ready) .buy_1 .buy_1_str .buy_1_kvadrat ~ div a { pointer-events: auto; }
html:not(.m-ready) .buy_1 .buy_1_nal .buy_1_ico { padding: 14px 20px 8px; }

/* Кнопки внизу шагов: «Вперёд» — главная синяя, «Назад» — светлая, «Отправить заказ» — зелёная */
html:not(.m-ready) .tpl > .shag ~ .send_zakaz {
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 14px;
	width: auto;
	height: auto;
	margin: 4px 0 10px;
	padding: 0;
}
html:not(.m-ready) .tpl > .shag ~ .send_zakaz span {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	margin: 0;
	padding: 14px 30px;
	border: 0;
	border-radius: 14px;
	background: linear-gradient(180deg, #1a55c4 0%, #0e3184 100%);
	box-shadow: 0 0 0 1px rgba(0, 180, 255, .45), 0 6px 18px rgba(0, 90, 220, .3);
	color: #fff;
	font-size: 17px;
	font-weight: 600;
	line-height: 1.2;
	transition: transform .15s, box-shadow .15s, background-color .15s;
}
html:not(.m-ready) .tpl > .shag ~ .send_zakaz span img { display: none; }   /* старые картинки-стрелки */
html:not(.m-ready) .tpl > .shag ~ .send_zakaz span.ck-next::after,
html:not(.m-ready) .tpl > .shag ~ .send_zakaz span.ck-final::after { content: "\2192"; font-weight: 400; font-size: 20px; transition: transform .15s; }
html:not(.m-ready) .tpl > .shag ~ .send_zakaz span:hover {
	border: 0;
	transform: translateY(-1px);
	box-shadow: 0 0 0 1px rgba(0, 200, 255, .8), 0 8px 22px rgba(0, 120, 255, .4);
}
html:not(.m-ready) .tpl > .shag ~ .send_zakaz span:hover::after { transform: translateX(3px); }
html:not(.m-ready) .tpl > .shag ~ .send_zakaz span.ck-back {
	padding: 13px 22px;
	background: #fff;
	box-shadow: inset 0 0 0 1.5px #c9d6ec;
	color: #1346aa;
	font-size: 15px;
}
html:not(.m-ready) .tpl > .shag ~ .send_zakaz span.ck-back::before { content: "\2190"; font-weight: 400; font-size: 18px; transition: transform .15s; }
html:not(.m-ready) .tpl > .shag ~ .send_zakaz span.ck-back:hover { transform: none; background: #f3f7ff; box-shadow: inset 0 0 0 1.5px #1346aa; }
html:not(.m-ready) .tpl > .shag ~ .send_zakaz span.ck-back:hover::before { transform: translateX(-3px); }
html:not(.m-ready) .tpl > .shag ~ .send_zakaz span.ck-final {
	background: linear-gradient(180deg, #34b45a 0%, #23913f 100%);
	box-shadow: 0 6px 18px rgba(35, 145, 63, .35);
}
html:not(.m-ready) .tpl > .shag ~ .send_zakaz span.ck-final:hover { box-shadow: 0 0 0 2px rgba(52, 180, 90, .35), 0 8px 22px rgba(35, 145, 63, .45); }

/* ---------- Шаг 4 «Проверка» на компьютере (класс .ck-review ставит review() в banner.js) ----------
   Было: красная рамка «Проверьте Ваш заказ…», таблица с серыми линиями, подарок/доставка/оплата с картинками-иконками
   и текстом по ширине, «Итого» красным. Стало: подсказка в гамме сайта, таблица как в корзине, подарок — плашкой,
   доставка и оплата — две карточки с иконками, итог — полосой внизу, карточка заказа — аккуратный список. */
html:not(.m-ready) .ck-review > .shag_finish {
	position: relative;
	margin: 0 0 16px;
	padding: 13px 18px 13px 52px;
	border: 1px solid #d3e2fb;
	border-radius: 14px;
	background: linear-gradient(180deg, #f3f8ff 0%, #eaf2ff 100%);
	color: #0e3184;
	font-size: 15px;
	font-weight: 600;
	line-height: 1.4;
	text-align: left;
}
html:not(.m-ready) .ck-review > .shag_finish::before {   /* значок «список с галочкой» */
	content: "";
	position: absolute;
	left: 16px;
	top: 50%;
	width: 24px;
	height: 24px;
	margin-top: -12px;
	border-radius: 50%;
	background: #1346aa url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='2.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6.5 12.5l3.5 3.5 7.5-8'/%3E%3C/svg%3E") center / 16px no-repeat;
	box-shadow: 0 0 0 3px rgba(19, 70, 170, .12);
}
html:not(.m-ready) .ck-review > .shag_finish + .send_zakaz { margin-bottom: 22px; }

/* таблица товаров */
html:not(.m-ready) .ck-review .buy_1_nal table.basket {
	width: 100%;
	margin: 0;
	border-collapse: collapse;
	font-size: 14px;
}
html:not(.m-ready) .ck-review .buy_1_nal table.basket tr { border: 0; }
html:not(.m-ready) .ck-review .buy_1_nal table.basket tr.tr td {
	padding: 10px 10px;
	border-bottom: 1px solid #e8eef7;
	background: #fbfcfe;
	color: #7a879c;
	font-size: 11.5px;
	font-weight: 600;
	letter-spacing: .04em;
	text-transform: uppercase;
	text-align: right;
}
html:not(.m-ready) .ck-review .buy_1_nal table.basket tr.tr td:nth-child(-n+2) { text-align: left; }
html:not(.m-ready) .ck-review .buy_1_nal table.basket tr.tr td:nth-child(3) { text-align: center; }
html:not(.m-ready) .ck-review .buy_1_nal table.basket tr:not(.tr) td { padding: 14px 10px; border-bottom: 1px solid #eef2f8; vertical-align: middle; }
html:not(.m-ready) .ck-review .buy_1_nal table.basket td:first-child { padding-left: 20px !important; }
html:not(.m-ready) .ck-review .buy_1_nal table.basket td:last-child { padding-right: 20px !important; }
html:not(.m-ready) .ck-review .buy_1_nal table.basket td.nomer { width: 22px; color: #9aa6b8; font-size: 13px; text-align: left; }
html:not(.m-ready) .ck-review .buy_1_nal table.basket td.naime { font-size: 14.5px; line-height: 1.4; text-align: left; }
html:not(.m-ready) .ck-review .buy_1_nal table.basket td.naime a { color: #0e3184; font-weight: 500; text-decoration: none; }
html:not(.m-ready) .ck-review .buy_1_nal table.basket td.naime a:hover { color: #1f6fe0; text-decoration: underline; }
html:not(.m-ready) .ck-review .buy_1_nal table.basket td.kolvo { width: 1%; text-align: center; white-space: nowrap; }
html:not(.m-ready) .ck-review .ck-qty {
	display: inline-block;
	padding: 3px 10px;
	border-radius: 999px;
	background: #eef4ff;
	color: #1346aa;
	font-size: 13px;
	font-weight: 700;
}
html:not(.m-ready) .ck-review .buy_1_nal table.basket td.cena {
	width: 1%;
	padding-left: 18px !important;
	color: #1d2433;
	font-size: 15px;
	font-weight: 600;
	text-align: right;
	white-space: nowrap;
}
html:not(.m-ready) .ck-review .buy_1_nal table.basket td.cena span { color: #7a879c; font-size: 12px; font-weight: 500; }
html:not(.m-ready) .ck-review .buy_1_nal table.basket td.cena + td.cena { color: #0e3184; font-weight: 800; }

/* подарок, доставка, оплата, примечание, итог — сеткой: доставка и оплата рядом */
html:not(.m-ready) .ck-review .buy_1_nal:has(> table.basket) {
	display: grid;
	grid-template-columns: 1fr 1fr;
	column-gap: 14px;
	padding: 0;
}
html:not(.m-ready) .ck-review .buy_1_nal:has(> table.basket) > * { grid-column: 1 / -1; }
html:not(.m-ready) .ck-review .buy_1_nal:has(> table.basket) > br.clear { display: none; }
html:not(.m-ready) .ck-review .buy_1_nal > .buy_1_gift,
html:not(.m-ready) .ck-review .buy_1_nal > .buy_1_dostavka,
html:not(.m-ready) .ck-review .buy_1_nal > .buy_1_oplata {
	position: relative;
	float: none;
	height: auto;
	min-width: 0;
	box-sizing: border-box;
	padding: 14px 16px 14px 66px;
	border-radius: 12px;
	background: #f6f9ff no-repeat 16px center / 36px;
	font-size: 14px;
	text-align: left;
}
html:not(.m-ready) .ck-review .buy_1_nal > .buy_1_gift { margin: 16px 20px 0; }
html:not(.m-ready) .ck-review .buy_1_nal:has(> table.basket) > .buy_1_dostavka { grid-column: 1; margin: 14px 0 0 20px; }
html:not(.m-ready) .ck-review .buy_1_nal:has(> table.basket) > .buy_1_oplata { grid-column: 2; margin: 14px 20px 0 0; }
html:not(.m-ready) .ck-review .buy_1_nal > div > p {
	padding: 0;
	color: #071c55;
	font-size: 14.5px;
	font-weight: 700;
	line-height: 1.35;
	text-align: left !important;
}
html:not(.m-ready) .ck-review .buy_1_nal > div > p + p { margin-top: 3px; }
html:not(.m-ready) .ck-review .buy_1_nal > div > p span { color: #5b6880; font-size: 13.5px; font-weight: 400; line-height: 1.45; }
html:not(.m-ready) .ck-review .buy_1_nal > div > p span b { color: #d42d39; }
/* иконки — синие круги с линейными значками вместо старых картинок (и на телефоне) */
.ck-review .buy_1_nal > .buy_1_dostavka {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 36 36'%3E%3Ccircle cx='18' cy='18' r='18' fill='%23dfeaff'/%3E%3Cg fill='none' stroke='%231346aa' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M8 12h12v10H8zM20 15h4.5l3 3.5V22H20'/%3E%3Ccircle cx='12' cy='23.5' r='2' fill='%23dfeaff'/%3E%3Ccircle cx='24' cy='23.5' r='2' fill='%23dfeaff'/%3E%3C/g%3E%3C/svg%3E");
}
.ck-review .buy_1_nal > .buy_1_oplata {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 36 36'%3E%3Ccircle cx='18' cy='18' r='18' fill='%23dfeaff'/%3E%3Cg fill='none' stroke='%231346aa' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='8' y='11' width='20' height='14' rx='2.5'/%3E%3Cpath d='M8 15.5h20M12 21h4'/%3E%3C/g%3E%3C/svg%3E");
}
/* подарок — тёплой плашкой, чтобы радовал глаз (и на телефоне) */
.ck-review .buy_1_nal > .buy_1_gift {
	border: 1px solid #ffd9a8;
	background-color: #fff6ea;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 36 36'%3E%3Ccircle cx='18' cy='18' r='18' fill='%23ffe3bf'/%3E%3Cg fill='none' stroke='%23e0730f' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='9' y='14' width='18' height='4.5' rx='1'/%3E%3Cpath d='M10.5 18.5V27h15v-8.5M18 14v13M18 14c-1.5-3.5-5.5-4.5-5.5-2 0 1.5 2.5 2 5.5 2zM18 14c1.5-3.5 5.5-4.5 5.5-2 0 1.5-2.5 2-5.5 2z'/%3E%3C/g%3E%3C/svg%3E");
}
html:not(.m-ready) .ck-review .buy_1_nal > .buy_1_gift > p:first-child { color: #b35a00; font-size: 11.5px; letter-spacing: .05em; text-transform: uppercase; }
html:not(.m-ready) .ck-review .buy_1_nal > .buy_1_gift > p span { color: #3a2a12; font-size: 14.5px; font-weight: 600; }
/* «Когда товары на заказ будут доставлены…» */
html:not(.m-ready) .ck-review .buy_1_nal > .buy_1_padding {
	width: auto;
	margin: 14px 20px 0;
	padding: 11px 14px;
	border: 1px solid #ffd76a;
	border-left: 4px solid #ffb800;
	border-radius: 10px;
	background: #fff7e0;
	color: #5a3d00;
	font-size: 14px;
	line-height: 1.45;
	text-align: left;
}
html:not(.m-ready) .ck-review .buy_1_nal > .buy_1_padding p { padding: 0; text-align: left !important; }
html:not(.m-ready) .ck-review .buy_1_nal > .buy_1_padding img { margin: 2px 8px 0 0; }
/* итог блока */
html:not(.m-ready) .ck-review .buy_1_nal > .buy_1_itogo {
	display: flex;
	justify-content: flex-end;
	align-items: baseline;
	gap: 10px;
	margin: 16px 0 0;
	padding: 14px 20px;
	border-top: 1px solid #e6edf8;
	background: #f7f9fd;
	color: #0e3184;
	font-size: 22px;
	font-weight: 800;
	letter-spacing: -.01em;
}
html:not(.m-ready) .ck-review .buy_1_nal > .buy_1_itogo span { color: #5d6a80; font-size: 15px; font-weight: 600; letter-spacing: 0; }

/* Карточка заказа: ФИО / телефон / e-mail — список, общая сумма — выделенной строкой */
html:not(.m-ready) .ck-review table.cart_user { width: 100%; margin: 0; border-collapse: collapse; font-size: 15px; }
html:not(.m-ready) .ck-review table.cart_user td { padding: 11px 20px 11px 0; border-bottom: 1px solid #eef2f8; color: #1d2433; text-align: left; vertical-align: top; }
html:not(.m-ready) .ck-review table.cart_user td.cart_user_td {
	width: 32%;
	padding-left: 20px;
	color: #7a879c;
	font-size: 14px;
	font-weight: 500;
	white-space: nowrap;
}
html:not(.m-ready) .ck-review table.cart_user td[colspan] { display: none; }   /* разделитель <hr> */
html:not(.m-ready) .ck-review table.cart_user tr:has(td[colspan]) { display: none; }
html:not(.m-ready) .ck-review table.cart_user tr:last-child td {
	padding-top: 15px;
	padding-bottom: 15px;
	border-bottom: 0;
	background: #f7f9fd;
	vertical-align: middle;
}
html:not(.m-ready) .ck-review table.cart_user tr:last-child td.cart_user_td { color: #0e3184; font-size: 15px; font-weight: 700; }
html:not(.m-ready) .ck-review table.cart_user tr:last-child td span { color: #0e3184; font-size: 24px; font-weight: 800; letter-spacing: -.01em; }
html:not(.m-ready) .ck-review .buy_1:last-of-type .buy_1_nal { padding-bottom: 0; }

/* Шаг 4 на телефоне: те же подсказка, плашка подарка и карточки доставки/оплаты — одна под другой (сетку и шрифты задаёт mobile.css) */
@media (max-width: 767px) {
	.m-ready .content .ck-review > .shag_finish {
		position: relative;
		padding: 12px 14px 12px 48px;
		border: 1px solid #d3e2fb;
		background: linear-gradient(180deg, #f3f8ff 0%, #eaf2ff 100%);
		color: #0e3184;
		font-weight: 600;
	}
	.m-ready .content .ck-review > .shag_finish::before {
		content: "";
		position: absolute;
		left: 14px;
		top: 50%;
		width: 22px;
		height: 22px;
		margin-top: -11px;
		border-radius: 50%;
		background: #1346aa url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='2.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6.5 12.5l3.5 3.5 7.5-8'/%3E%3C/svg%3E") center / 15px no-repeat;
	}
	.m-ready .content .ck-review .buy_1_nal > br.clear { display: none; }
	.m-ready .content .ck-review .buy_1 .buy_1_nal > .buy_1_gift,
	.m-ready .content .ck-review .buy_1 .buy_1_nal > .buy_1_dostavka,
	.m-ready .content .ck-review .buy_1 .buy_1_nal > .buy_1_oplata {
		float: none;
		height: auto;
		margin: 10px 14px 0;
		padding: 12px 12px 12px 58px;
		border-radius: 12px;
		background-color: #f6f9ff;
		background-repeat: no-repeat;
		background-position: 12px 12px;
		background-size: 34px;
		font-size: 14px;
		text-align: left;
	}
	.m-ready .content .ck-review .buy_1 .buy_1_nal > .buy_1_gift { margin-top: 12px; background-color: #fff6ea; }
	.m-ready .content .ck-review .buy_1_nal > div > p { padding: 0; color: #071c55; font-size: 15px; font-weight: 700; line-height: 1.35; text-align: left !important; }
	.m-ready .content .ck-review .buy_1_nal > div > p + p { margin-top: 2px; }
	.m-ready .content .ck-review .buy_1_nal > div > p span { color: #5b6880; font-size: 14px; font-weight: 400; line-height: 1.4; }
	.m-ready .content .ck-review .buy_1_nal > .buy_1_gift > p:first-child { color: #b35a00; font-size: 11px; letter-spacing: .05em; text-transform: uppercase; }
	.m-ready .content .ck-review .buy_1_nal > .buy_1_gift > p span { color: #3a2a12; font-size: 15px; font-weight: 600; }
	.m-ready .content .ck-review .buy_1_nal > .buy_1_padding {
		width: auto;
		margin: 10px 14px 0;
		padding: 10px 12px;
		border: 1px solid #ffd76a;
		border-left: 4px solid #ffb800;
		border-radius: 10px;
		background: #fff7e0;
		color: #5a3d00;
		font-size: 14px;
		text-align: left;
	}
	.m-ready .content .ck-review .buy_1_nal > .buy_1_padding p { padding: 0; text-align: left !important; }
	.m-ready .content .ck-review .buy_1 .buy_1_nal .buy_1_itogo .m-price,
	.m-ready .content .ck-review .buy_1 table.cart_user .m-price { color: #0e3184; }
	.m-ready .content .ck-review .buy_1 table.cart_user tr:last-child { margin: 4px -14px -8px; padding: 12px 14px; background: #f7f9fd; }
	.m-ready .content .ck-review .buy_1 table.cart_user tr:last-child .cart_user_td { color: #0e3184; font-size: 13px; font-weight: 700; }
	.m-ready .content .ck-review .buy_1 table.cart_user tr:has(hr) { display: none; }
}

/* ---------- «Заказ успешно отправлен» (/buy_success; разметку собирает orderDone() в banner.js) ---------- */
.tpl.od-ready { padding-top: 4px; }
.od { max-width: 680px; margin: 0 auto 10px; color: #1d2433; font-size: 15px; line-height: 1.45; text-align: left; }
.od-hero {
	padding: 30px 24px 26px;
	border: 1px solid #cdeedb;
	border-radius: 18px;
	background: radial-gradient(120% 90% at 50% 0%, #e8fbef 0%, #f6fdf8 55%, #fff 100%);
	box-shadow: 0 2px 12px rgba(20, 120, 60, .08);
	text-align: center;
}
.od-check {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 68px;
	height: 68px;
	border-radius: 50%;
	background: linear-gradient(180deg, #34b45a 0%, #23913f 100%);
	box-shadow: 0 0 0 8px rgba(52, 180, 90, .14), 0 8px 20px rgba(35, 145, 63, .35);
	animation: od-pop .5s cubic-bezier(.2, 1.4, .4, 1) both;
}
.od-check svg { width: 36px; height: 36px; fill: none; stroke: #fff; stroke-width: 3; stroke-linecap: round; stroke-linejoin: round; }
.od-check path { stroke-dasharray: 24; stroke-dashoffset: 24; animation: od-draw .4s .35s ease-out forwards; }
@keyframes od-pop { from { transform: scale(.4); opacity: 0; } to { transform: none; opacity: 1; } }
@keyframes od-draw { to { stroke-dashoffset: 0; } }
@media (prefers-reduced-motion: reduce) { .od-check, .od-check path { animation: none; stroke-dashoffset: 0; } }
.od .od-title { margin: 18px 0 4px; padding: 0; color: #071c55; font-size: 26px; font-weight: 800; line-height: 1.2; text-align: center; }
.od .od-num { margin: 10px 0 6px; padding: 0; color: #5d6a80; font-size: 14px; text-align: center !important; }
.od .od-ids { display: flex; flex-wrap: wrap; justify-content: center; gap: 8px; margin: 0; padding: 0; }
.od .od-ids b {
	padding: 7px 16px;
	border: 1.5px dashed #1346aa;
	border-radius: 10px;
	background: #fff;
	color: #0e3184;
	font-size: 22px;
	font-weight: 800;
	letter-spacing: .02em;
	user-select: all;
}
.od .od-sub { margin: 26px 0 10px; padding: 0; color: #071c55; font-size: 18px; font-weight: 700; }
.od .od-steps { margin: 0; padding: 0; list-style: none; border: 1px solid #e1e8f3; border-radius: 14px; background: #fff; box-shadow: 0 2px 10px rgba(14, 49, 132, .06); overflow: hidden; }
.od .od-steps li { display: flex; gap: 14px; margin: 0; padding: 15px 18px; border-top: 1px solid #eef2f8; text-align: left; }
.od .od-steps li:first-child { border-top: 0; }
.od .od-steps li > div { min-width: 0; }
.od .od-steps b { display: block; color: #071c55; font-size: 15px; }
.od .od-steps span:not(.od-ico) { display: block; margin-top: 2px; color: #5b6880; font-size: 14px; }
.od .od-steps span b { display: inline; color: #b3261e; }
.od .od-ico { display: inline-flex; flex: none; align-items: center; justify-content: center; width: 40px; height: 40px; border-radius: 50%; background: #e6efff; }
.od .od-ico svg { width: 21px; height: 21px; fill: none; stroke: #1346aa; stroke-width: 1.9; stroke-linecap: round; stroke-linejoin: round; }
.od .od-steps li.od-ok { background: #f3fbf6; }
.od .od-steps li.od-ok .od-ico { background: #d9f3e2; }
.od .od-steps li.od-ok .od-ico svg { stroke: #1f8a3e; }
.od .od-steps li.od-ok b { color: #17692f; }
.od .od-steps li.od-warn { background: #fff8e6; }
.od .od-steps li.od-warn .od-ico { background: #ffe9b0; }
.od .od-steps li.od-warn .od-ico svg { stroke: #a86a00; }

/* Вступайте в группу ВКонтакте — карточка в цветах VK */
.od a.od-vk,
.od a.od-vk:visited {
	display: flex;
	align-items: center;
	gap: 16px;
	margin: 18px 0 0;
	padding: 18px 20px;
	border-radius: 16px;
	background: linear-gradient(120deg, #0077ff 0%, #2787f5 55%, #4ca3ff 100%);
	box-shadow: 0 8px 22px rgba(0, 119, 255, .3);
	color: #fff;
	text-decoration: none;
	transition: transform .15s, box-shadow .15s;
}
.od a.od-vk:hover { transform: translateY(-1px); box-shadow: 0 10px 26px rgba(0, 119, 255, .4); color: #fff; text-decoration: none; }
.od .od-vk-logo { display: inline-flex; flex: none; align-items: center; justify-content: center; width: 52px; height: 52px; border-radius: 14px; background: #fff; }
.od .od-vk-logo svg { width: 34px; height: 34px; fill: #0077ff; }
.od .od-vk-text { flex: 1; min-width: 0; }
.od .od-vk-text b { display: block; font-size: 17px; line-height: 1.3; }
.od .od-vk-text span { display: block; margin-top: 3px; color: rgba(255, 255, 255, .88); font-size: 14px; }
.od .od-vk-btn {
	flex: none;
	padding: 11px 20px;
	border-radius: 12px;
	background: #fff;
	color: #0077ff;
	font-size: 15px;
	font-weight: 700;
	transition: background-color .15s;
}
.od a.od-vk:hover .od-vk-btn { background: #eaf3ff; }

.od .od-actions { display: flex; justify-content: center; margin: 22px 0 6px; }
.od a.od-home,
.od a.od-home:visited {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	padding: 14px 32px;
	border-radius: 14px;
	background: linear-gradient(180deg, #1a55c4 0%, #0e3184 100%);
	box-shadow: 0 0 0 1px rgba(0, 180, 255, .45), 0 6px 18px rgba(0, 90, 220, .3);
	color: #fff;
	font-size: 17px;
	font-weight: 600;
	text-decoration: none;
	transition: transform .15s, box-shadow .15s;
}
.od a.od-home::after { content: "\2192"; font-weight: 400; font-size: 20px; transition: transform .15s; }
.od a.od-home:hover { transform: translateY(-1px); box-shadow: 0 0 0 1px rgba(0, 200, 255, .8), 0 8px 22px rgba(0, 120, 255, .4); color: #fff; }
.od a.od-home:hover::after { transform: translateX(3px); }

@media (max-width: 767px) {
	.m-ready .od { font-size: 15px; }
	.m-ready .od-hero { padding: 24px 16px 20px; border-radius: 16px; }
	.m-ready .od .od-title { font-size: 23px; }
	.m-ready .od .od-ids b { padding: 6px 12px; font-size: 19px; }
	.m-ready .od .od-steps li { padding: 14px; gap: 12px; }
	.m-ready .od a.od-vk { flex-wrap: wrap; gap: 12px 14px; padding: 16px; }
	.m-ready .od .od-vk-logo { width: 46px; height: 46px; }
	.m-ready .od .od-vk-text b { font-size: 16px; }
	.m-ready .od .od-vk-btn { flex: 1 1 100%; padding: 12px; text-align: center; }
	.m-ready .od .od-actions a.od-home { flex: 1; justify-content: center; }
}

/* ---------- «Специальные предложения»: каждое предложение — карточка ----------
   Было: подчёркнутые ссылки, описание по ширине/вправо, «подробнее...» мелкой ссылкой, пунктирные разделители.
   Стало: картинка во всю ширину карточки со скруглением, жирный заголовок, серое описание, внизу — цена и кнопка
   «Подробнее →» (у предложений без цены кнопку добавляет spec() в banner.js / buildSpecGrid() в mobile.js).
   Новые картинки — вертикальные 3:4 в стиле «Ксерокопия» (неон, робот БАЙТ). */
@media (min-width: 768px) {
	.spec { padding-bottom: 12px; }
	.spec .tovar {
		margin: 12px 12px 0;
		padding: 0 0 12px;
		border: 1px solid #dde6f5;
		border-radius: 14px;
		background: #fff;
		box-shadow: 0 2px 8px rgba(14, 49, 132, .07);
		overflow: hidden;
		transition: border-color .2s, box-shadow .2s, transform .2s;
	}
	.spec .tovar:hover { border-color: #00b4ff; box-shadow: 0 0 0 1px rgba(0, 180, 255, .4), 0 6px 18px rgba(0, 150, 255, .25); transform: translateY(-2px); }
	.spec .tovar .dashed { display: none; }
	.spec .tovar .img { width: auto; margin: 0; border: 0; background: #fff; }
	.spec .tovar .img a { display: block; }
	.spec .tovar .img img { display: block; width: 100%; height: auto; margin: 0 auto; padding: 0; }
	.spec .tovar .title { padding: 10px 12px 0; font: 700 14px/1.3 Arial, sans-serif; text-align: left; }
	.spec .tovar .title a { color: #0e3184; text-decoration: none; }
	.spec .tovar .title a:hover { color: #1f6fe0; }
	.spec .tovar .opis { padding: 4px 12px 0; color: #5b6880; font: 12.5px/1.4 Arial, sans-serif; text-align: left; }
	.spec .tovar .opis * { margin: 0; padding: 0; color: inherit !important; font-size: inherit !important; text-align: left !important; }
	.spec .tovar .podrb { display: flex; align-items: center; gap: 8px; padding: 12px 12px 0; }
	.spec .tovar .podrb .clear { display: none; }
	.spec .tovar .podrb .shop { float: none; flex: none; width: auto; margin: 0; padding: 0 12px; }
	.spec .tovar .podrb .buy { float: none; height: auto; margin: 0 0 0 auto; padding: 0; background: none; line-height: 1; }
	.spec .tovar .podrb .buy a {
		display: inline-flex;
		align-items: center;
		gap: 6px;
		padding: 7px 12px;
		border-radius: 999px;
		background: #eef4ff;
		box-shadow: inset 0 0 0 1px #c9d8f5;
		color: #1346aa;
		font: 600 0/1 Arial, sans-serif;   /* «подробнее...» из шаблона прячем, текст — ниже */
		text-decoration: none;
		transition: background-color .15s, color .15s, box-shadow .15s;
	}
	.spec .tovar .podrb .buy a::before { content: "\041F\043E\0434\0440\043E\0431\043D\0435\0435"; font-size: 13px; }   /* «Подробнее» */
	.spec .tovar .podrb .buy a::after { content: "\2192"; font-size: 15px; transition: transform .15s; }
	.spec .tovar .podrb .buy a:hover { background: #1346aa; box-shadow: inset 0 0 0 1px #1346aa, 0 0 10px rgba(0, 160, 255, .45); color: #fff; }
	.spec .tovar .podrb .buy a:hover::after { transform: translateX(2px); }
	.spec .tovar .podrb:has(> .shop) .buy a { padding: 7px 10px; }
}

/* Телефон: сетка 2×N из mobile.css — в тех же цветах; картинки целиком, без рамки-окна */
@media (max-width: 767px) {
	.m-ready .spec { border-color: #d3def3; border-radius: 14px; }
	.m-ready .m-spec-grid { gap: 10px; }
	.m-ready .m-spec-grid > .tovar { border-color: #dde6f5; border-radius: 12px; box-shadow: 0 2px 8px rgba(14, 49, 132, .07); }
	.m-ready .m-spec-grid .tovar .img { height: auto; aspect-ratio: 3 / 4; border-bottom: 0; }
	.m-ready .m-spec-grid .tovar .img img { width: 100%; height: 100%; max-height: none; object-fit: contain; }
	.m-ready .m-spec-grid .tovar .title a { color: #0e3184; }
	.m-ready .m-spec-grid .tovar .opis { color: #5b6880; font-size: 12px; }
	.m-ready .m-spec-grid .tovar .podrb .buy a { background: #eef4ff; box-shadow: inset 0 0 0 1px #c9d8f5; color: #1346aa; font-size: 0; font-weight: 600; }
	.m-ready .m-spec-grid .tovar .podrb .buy a::before { content: "\041F\043E\0434\0440\043E\0431\043D\0435\0435"; font-size: 12px; }   /* «Подробнее» вместо «подробнее...» */
}

/* =====================================================================================================
   Внутренние страницы — в одном стиле с главной (белая карточка, синие заголовки с неоновой линией)
   ===================================================================================================== */

/* ---------- Тексты из админки: «О компании», «Доставка», «Вакансии», «Скупка», новости, «Полезная информация»… ----------
   Было: мелкий текст по ширине (с «дырами» между словами), Verdana 12px и line-height: 1 вшиты в абзацы,
   ярко-синие/красные цвета вперемешку. Стало: ровный левый край, крупнее и с воздухом между строками,
   цвета из палитры сайта. Заголовки (абзацы целиком жирным крупным шрифтом) и пустые абзацы-распорки
   размечает article() в banner.js: .tx-h, .tx-h3, .tx-note, .tx-alert, .tx-empty. */
.content .marimg,
.content .n_text,
.content .pol_info > div:not(.title) {
	color: #1d2433;
	font-size: 14.5px;
	line-height: 1.6;
	text-align: left;
	overflow-wrap: break-word;
}
.content :is(.marimg, .n_text, .pol_info > div) :is(p, div, li, td, span, font, a, strong, b, em) { line-height: inherit; }
.content :is(.marimg, .n_text, .pol_info > div) :is([style*="justify" i], [align="justify" i]) { text-align: left !important; }
.content :is(.marimg, .n_text, .pol_info > div) [style*="line-height" i] { line-height: inherit !important; }
.content :is(.marimg, .n_text, .pol_info > div) :is([style*="font-size: 10px" i], [style*="font-size:10px" i], [style*="font-size: 11px" i], [style*="font-size:11px" i], [style*="font-size: 12px" i], [style*="font-size:12px" i], [style*="font-size: 13px" i], [style*="font-size:13px" i], [style*="font-size: 14px" i], [style*="font-size:14px" i], [style*="font-size: 14.3" i], [style*="font-size: 14.4" i], font[size="2"]) { font-size: inherit !important; }
.content :is(.marimg, .n_text, .pol_info > div) p { margin: 0 0 10px; }
.content :is(.marimg, .n_text, .pol_info > div) .tx-empty { display: none; }
.content :is(.marimg, .n_text, .pol_info > div) p.tx-li { margin: 0 0 4px; padding-left: 12px; text-indent: -12px; }   /* пункты «• …» / «- …» отдельными абзацами (article() в banner.js); перенос строки — под текст, не под точку */
.content :is(.marimg, .n_text, .pol_info > div) p.tx-li-sub { padding-left: 30px; }
.content :is(.marimg, .n_text, .pol_info > div) p.tx-li + p:not(.tx-li) { margin-top: 10px; }
.content :is(.marimg, .n_text, .pol_info > div) strong,
.content :is(.marimg, .n_text, .pol_info > div) b { color: #0b1f4d; font-weight: 700; }
.content :is(.marimg, .n_text, .pol_info > div) a { color: #1346aa; text-decoration: underline; text-decoration-color: rgba(19, 70, 170, .3); text-underline-offset: 3px; transition: color .15s, text-decoration-color .15s; }
.content :is(.marimg, .n_text, .pol_info > div) a:hover { color: #0090d8; text-decoration-color: currentColor; }

/* вшитые в тексты цвета → палитра сайта: синие оттенки — фирменный синий, красный — мягче, зелёный — «выгодный» */
.content :is(.marimg, .n_text, .pol_info > div) :is([style*="color:#0000ff" i], [style*="color: #0000ff" i], [style*="color:#3366ff" i], [style*="color: #3366ff" i], [style*="color:#0000cd" i], [style*="color: #0000cd" i], [style*="color:#218edd" i], [style*="color: #218edd" i], [style*="color:#0033ff" i], [style*="color: #0033ff" i], [style*="color:#3399cc" i], [style*="color: #3399cc" i], [style*="color:#003399" i], [style*="color: #003399" i], [style*="color:#298dd5" i], [style*="color: #298dd5" i], [style*="color:#0099ff" i], [style*="color: #0099ff" i], [style*="color:#0066ff" i], [style*="color: #0066ff" i], [style*="color: rgb(0, 0, 255)" i], font[color="#0000ff" i], font[color="blue" i]) { color: #1346aa !important; }
.content :is(.marimg, .n_text, .pol_info > div) :is([style*="color:#ff0000" i], [style*="color: #ff0000" i], [style*="color: red" i], [style*="color:red" i], [style*="color: rgb(255, 0, 0)" i], font[color="#ff0000" i], font[color="red" i]) { color: #e0283a !important; }
.content :is(.marimg, .n_text, .pol_info > div) :is([style*="color:#008000" i], [style*="color: #008000" i], [style*="color: green" i], [style*="color:green" i]) { color: #13a04a !important; }

/* Заголовки внутри текста — тёмно-синие, с неоновой чертой слева (как линия у заголовков разделов) */
.content .tx-h,
.content .tx-h3 {
	position: relative;
	clear: none;
	margin: 26px 0 10px !important;
	padding: 0 0 0 14px !important;
	color: #071c55 !important;
	font-size: 19px !important;
	line-height: 1.3 !important;
	font-weight: 700;
	text-align: left !important;
}
.content .tx-h::before,
.content .tx-h3::before {
	content: "";
	position: absolute;
	left: 0;
	top: 2px;
	bottom: 2px;
	width: 4px;
	border-radius: 2px;
	background: linear-gradient(180deg, #00b4ff 0%, #1346aa 100%);
	box-shadow: 0 0 6px rgba(0, 170, 255, .5);
}
.content .tx-h3 { margin-top: 20px !important; font-size: 16px !important; }
.content .tx-h3::before { width: 3px; }
.content :is(.marimg, .n_text, .pol_info > div) :is(.tx-h, .tx-h3, #tx-weight) * { color: inherit !important; font-size: inherit !important; line-height: inherit !important; text-align: left !important; }
.content :is(.tx-h, .tx-h3) a { text-decoration: none; }
.content .tx-h.tx-h-red { color: #e0283a !important; }
.content .tx-h.tx-h-red::before { background: linear-gradient(180deg, #ff6b78 0%, #e0283a 100%); box-shadow: 0 0 6px rgba(224, 40, 58, .45); }
.content :is(.marimg, .n_text, .pol_info > div) > .tx-h:first-child,
.content :is(.marimg, .n_text, .pol_info > div) > .tx-empty:first-child + .tx-h { margin-top: 6px !important; }

/* Длинный абзац целиком жирным — выделенная плашка; красный жирный — предупреждение */
.content .tx-note,
.content .tx-alert {
	margin: 14px 0 !important;
	padding: 12px 16px 12px 46px !important;
	border-radius: 12px;
	font-size: 14.5px !important;
	line-height: 1.55 !important;
	text-align: left !important;
	position: relative;
}
.content .tx-body * { font-size: inherit !important; }   /* длинный обычный абзац с размером из Word (banner.js → article()) */
.content .tx-note { background: #eef4ff; border: 1px solid #c9d8f5; color: #0e3184 !important; }
.content .tx-alert { background: #fff4f4; border: 1px solid #f6c9cd; color: #b3202f !important; }
.content :is(.marimg, .n_text, .pol_info > div) :is(.tx-note, .tx-alert, #tx-weight) * { color: inherit !important; font-size: inherit !important; text-align: left !important; }
.content :is(.marimg, .n_text, .pol_info > div) :is(.tx-note, .tx-alert, #tx-weight) a { color: #1346aa !important; }
.content :is(.tx-note, .tx-alert)::before {
	content: "i";
	position: absolute;
	left: 14px;
	top: 13px;
	width: 20px;
	height: 20px;
	border-radius: 50%;
	background: #1346aa;
	color: #fff;
	font: 700 13px/20px Georgia, serif;
	text-align: center;
}
.content .tx-alert::before { content: "!"; background: #e0283a; font: 700 13px/20px Arial, sans-serif; }

/* «Вакансии» (/vakansii) — строит banner.js → vacancies(): вводная плашка, вакансии одинаковыми карточками, плюсы — галочками, контакты */
.content .marimg .vk-intro {
	margin: 4px 0 6px;
	padding: 16px 20px;
	border-radius: 14px;
	background: linear-gradient(135deg, #eef4ff 0%, #e4f4ff 100%);
	border: 1px solid #c9d8f5;
	color: #1d2433;
	font-size: 15px;
}
.content .marimg .vk-intro p { margin: 0 0 6px; }
.content .marimg .vk-intro p:last-child { margin-bottom: 0; }
.content .marimg .vk-intro :is(strong, b, span) { font-weight: 400; color: inherit !important; }
.content .marimg .vk-intro p:last-child :is(strong, b) { font-weight: 700; color: #0b1f4d !important; }   /* «Мы всегда рады…» — итог */
.content .marimg .vk-intro a { font-weight: 700; }

.content .marimg .vk-card {
	margin: 14px 0;
	padding: 18px 20px 14px;
	border: 1px solid #dde6f5;
	border-radius: 14px;
	background: #fff;
	box-shadow: 0 2px 10px rgba(14, 49, 132, .07);
}
.content .marimg .vk-head {
	display: flex;
	align-items: flex-start;
	gap: 12px;
	margin: 0 0 12px !important;
	padding-bottom: 12px;
	border-bottom: 1px solid #e6edf8;
	color: #071c55;
	font-size: 17px;
	font-weight: 700;
	line-height: 1.35 !important;
}
.content .marimg .vk-num {
	flex: none;
	width: 30px;
	height: 30px;
	margin-top: -2px;
	border-radius: 50%;
	background: linear-gradient(135deg, #00b4ff 0%, #1346aa 100%);
	box-shadow: 0 0 8px rgba(0, 170, 255, .45);
	color: #fff;
	font-size: 15px;
	line-height: 30px !important;
	text-align: center;
}
.content .marimg .vk-title { padding-top: 2px; }
.content .marimg .vk-card p { margin: 0 0 8px; }
.content .marimg .vk-card p.vk-li { margin: 0; }
.content .marimg .vk-card p.vk-li + p:not(.vk-li) { margin-top: 8px; }
.content .marimg .vk-label {
	display: block;
	margin: 12px 0 4px;
	color: #1346aa;
	font-size: 12.5px;
	font-weight: 700;
	letter-spacing: .06em;
	text-transform: uppercase;
}
.content .marimg .vk-card p > .vk-label:first-child { margin-top: 4px; }

.content .marimg .tx-note.vk-mission { margin: 20px 0 !important; }

.content .marimg .vk-perks { display: grid; grid-template-columns: 1fr 1fr; gap: 8px 18px; margin: 0 0 18px; }
.content .marimg .vk-perks p { position: relative; margin: 0; padding: 0 0 0 28px; }
.content .marimg .vk-perks p::before {
	content: "";
	position: absolute;
	left: 0;
	top: 2px;
	width: 18px;
	height: 18px;
	border-radius: 50%;
	background: #13a04a url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M6 12.5l4 4 8-9' fill='none' stroke='%23fff' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / 12px no-repeat;
}

.content .marimg .vk-contact {
	margin: 18px 0 6px;
	padding: 16px 20px;
	border-radius: 14px;
	background: linear-gradient(135deg, #0e3184 0%, #1346aa 60%, #0a8fd6 100%);
	box-shadow: 0 4px 16px rgba(14, 49, 132, .25);
	color: #fff;
	font-size: 15.5px;
}
.content .marimg .vk-contact p { margin: 0 0 4px; }
.content .marimg .vk-contact p:last-child { margin-bottom: 0; }
.content .marimg .vk-contact :is(strong, b) { color: #fff !important; }
.content .marimg .vk-contact a { color: #fff !important; text-decoration-color: rgba(255, 255, 255, .5); white-space: nowrap; }
.content .marimg .vk-contact a:hover { color: #9fe0ff !important; }
.m-ready .content .marimg .vk-perks { grid-template-columns: 1fr; }
.m-ready .content .marimg :is(.vk-intro, .vk-card, .vk-contact) { padding-left: 14px; padding-right: 14px; }

/* «Ремонт мобильной техники» (/remont_tel) — строит banner.js → priceList(): прайс карточкой, строки «услуга — цена», плёнка — отдельная карточка */
.content .marimg .pl-card {
	margin: 0 0 18px;
	padding: 6px 0;
	border: 1px solid #dde6f5;
	border-radius: 16px;
	background: #fff;
	box-shadow: 0 2px 12px rgba(14, 49, 132, .08);
	overflow: hidden;
}
.content .marimg .pl-row {
	display: flex;
	align-items: center;
	gap: 16px;
	padding: 11px 20px;
	border-top: 1px solid #edf2fa;
	line-height: 1.4;
	transition: background .15s;
}
.content .marimg .pl-row:first-child,
.content .marimg .pl-sub + .pl-row { border-top: 0; }
.content .marimg .pl-row:hover { background: #f5f9ff; }
.content .marimg .pl-name { flex: 1; min-width: 0; color: #1d2433; }
.content .marimg .pl-price {
	flex: none;
	padding: 4px 12px;
	border-radius: 10px;
	background: #eaf2ff;
	color: #0e3184;
	font-weight: 800;
	white-space: nowrap;
}
.content .marimg .pl-card-new { padding-bottom: 14px; background: linear-gradient(180deg, #f2f8ff 0%, #fff 90px); }
.content .marimg .pl-sub {   /* не flex: addrNoWrap() режет текст на span.addr-nw, во flex они вставали колонками */
	display: block;
	margin: 10px 20px 4px;
	padding-bottom: 8px;
	border-bottom: 1px solid #e6edf8;
	color: #071c55;
	font-size: 16px;
	font-weight: 700;
	line-height: 1.35;
}
.content .marimg .pl-row + .pl-sub { margin-top: 18px; }
.content .marimg .pl-where { display: block; margin-top: 3px; color: #5a6b8c; font-size: 14px; font-weight: 400; }
.content .marimg .pl-warn {
	margin: 14px 20px 0 !important;
	padding: 12px 14px 12px 44px;
	border-radius: 12px;
	background: #fff6e5 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23d98a00' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 3 2 20h20z'/%3E%3Cpath d='M12 10v4M12 17v.01'/%3E%3C/svg%3E") 14px 13px / 20px no-repeat;
	color: #6b4700;
	line-height: 1.45;
}
.content .marimg .pl-warn :is(strong, b) { color: #8a5a00 !important; }
/* «Звоните или пишите нам…» и номера мастеров — синяя карточка, телефоны — плитки-кнопки (tel:) */
.content .marimg .pl-contact {
	margin: 4px 0 10px;
	padding: 20px 22px 22px;
	border-radius: 16px;
	background: linear-gradient(135deg, #0e3184 0%, #1346aa 60%, #0a8fd6 100%);
	box-shadow: 0 4px 16px rgba(14, 49, 132, .25);
	color: #fff;
}
.content .marimg .pl-lead { margin: 0 0 14px; font-size: 18px; font-weight: 800; line-height: 1.35; }
.content .marimg .pl-label { margin: 0 0 10px; color: #9fd8ff; font-size: 12.5px; font-weight: 700; letter-spacing: .05em; text-transform: uppercase; }
.content .marimg .pl-phones { display: grid; gap: 8px; }
.content .marimg a.pl-phone {
	position: relative;
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
	gap: 2px 16px;
	padding: 12px 16px 12px 58px;
	border: 1px solid rgba(255, 255, 255, .22);
	border-radius: 14px;
	background: rgba(255, 255, 255, .1);
	color: #fff !important;
	text-decoration: none;
	transition: background .2s, border-color .2s, transform .2s;
}
.content .marimg a.pl-phone::before {
	content: "";
	position: absolute;
	top: 50%;
	left: 12px;
	width: 34px;
	height: 34px;
	margin-top: -17px;
	border-radius: 50%;
	background: #fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231346aa' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M22 16.9v3a2 2 0 0 1-2.2 2 19.8 19.8 0 0 1-8.6-3.1 19.5 19.5 0 0 1-6-6A19.8 19.8 0 0 1 2.1 4.2 2 2 0 0 1 4.1 2h3a2 2 0 0 1 2 1.7c.1 1 .4 1.9.7 2.8a2 2 0 0 1-.5 2.1L8 9.9a16 16 0 0 0 6 6l1.3-1.3a2 2 0 0 1 2.1-.4c.9.3 1.8.6 2.8.7a2 2 0 0 1 1.7 2z'/%3E%3C/svg%3E") center / 17px no-repeat;
	box-shadow: 0 0 0 4px rgba(255, 255, 255, .15);
}
.content .marimg a.pl-phone:hover { border-color: rgba(159, 216, 255, .7); background: rgba(255, 255, 255, .18); }
.content .marimg .pl-num { flex: none; min-width: 190px; font-size: 17px; font-weight: 800; line-height: 1.3; white-space: nowrap; }
.content .marimg .pl-addr { color: #cfe8ff; font-size: 14px; line-height: 1.35; }
.m-ready .content .marimg .pl-contact { padding: 18px 14px; }
.m-ready .content .marimg .pl-lead { font-size: 16.5px; }
.m-ready .content .marimg a.pl-phone { padding: 11px 12px 11px 52px; }
.m-ready .content .marimg a.pl-phone::before { left: 10px; width: 32px; height: 32px; margin-top: -16px; }
.m-ready .content .marimg .pl-num { min-width: 0; }
.m-ready .content .marimg .pl-addr { flex-basis: 100%; font-size: 13.5px; }
.m-ready .content .marimg .pl-row { gap: 10px; padding: 10px 14px; font-size: 15px; }
.m-ready .content .marimg .pl-price { padding: 3px 9px; font-size: 14.5px; }
.m-ready .content .marimg .pl-sub { margin-left: 14px; margin-right: 14px; font-size: 15.5px; }
.m-ready .content .marimg .pl-warn { margin: 12px 14px 0 !important; font-size: 14.5px; }

/* «Оцифровка видеокассет» (/video) — строит banner.js → video(): блоки прайса /remont_tel + свои мелочи */
.content .marimg .vd-pic { margin: 0 0 14px !important; }
.content .marimg .vd-pic img { max-width: 100%; height: auto !important; border-radius: 12px; }
.content .marimg a.vd-map {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	margin-top: 12px;
	padding: 7px 14px;
	border: 1px solid rgba(255, 255, 255, .35);
	border-radius: 999px;
	color: #fff !important;
	font-size: 14px;
	font-weight: 700;
	text-decoration: none;
}
.content .marimg a.vd-map::before { content: ""; width: 14px; height: 14px; background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 21s-7-6.2-7-11.5a7 7 0 0 1 14 0C19 14.8 12 21 12 21z'/%3E%3Ccircle cx='12' cy='9.5' r='2.5'/%3E%3C/svg%3E") center / contain no-repeat; }
.content .marimg a.vd-map:hover { background: rgba(255, 255, 255, .12); }
.content .marimg .vd-plus { margin: 0 0 18px; padding: 0; list-style: none; display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.content .marimg .vd-plus li {
	position: relative;
	margin: 0;
	padding: 12px 14px 12px 44px;
	border: 1px solid #dde6f5;
	border-radius: 14px;
	background: #fff;
	color: #1d2433;
	font-size: 14.5px;
	line-height: 1.45;
	text-align: left;
}
.content .marimg .vd-plus li::before {
	content: "";
	position: absolute;
	left: 14px;
	top: 13px;
	width: 20px;
	height: 20px;
	border-radius: 50%;
	background: #e3f7ec url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231a9a55' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5'/%3E%3C/svg%3E") center / 13px no-repeat;
}
.content .marimg .vd-desc { margin: -4px 0 12px; color: #4a5672; font-size: 14px; line-height: 1.5; text-align: left; }
.content .marimg .vd-desc * { color: inherit !important; font-size: inherit !important; }
.content .marimg .vd-plus + .tx-h { margin-top: 8px !important; }
.content .marimg .pl-card + .pl-warn { margin: 0 0 14px !important; }
.m-ready .content .marimg .vd-plus { grid-template-columns: 1fr; }

/* «Сотовая связь» (/sotovaya_svyaz) — строит banner.js → cellular(): каждая часть («Скупка-продажа б/у», «Ремонт») — карточка */
.content .marimg .cs-sec {
	margin: 4px 0 22px;
	padding: 18px;
	border: 1px solid #dde6f5;
	border-radius: 16px;
	background: #fff;
	box-shadow: 0 2px 12px rgba(14, 49, 132, .08);
}
.content .marimg .cs-top { display: grid; grid-template-columns: minmax(0, 46%) minmax(0, 1fr); gap: 20px; align-items: start; }
.content .marimg .cs-top.cs-nopic { grid-template-columns: 1fr; }
.content .marimg .cs-pic { position: relative; aspect-ratio: 16 / 10; overflow: hidden; border-radius: 12px; background: #0e3184; box-shadow: 0 4px 14px rgba(14, 49, 132, .2); }
.content .marimg .cs-pic img,
.content .marimg .cs-pic a { display: block; width: 100% !important; height: 100% !important; margin: 0 !important; float: none !important; border-radius: 0; object-fit: cover; }
.content .marimg .cs-title {
	position: relative;
	margin: 0 0 10px;
	padding-left: 14px;
	color: #071c55;
	font-size: 19px;
	font-weight: 700;
	line-height: 1.3;
}
.content .marimg .cs-title::before {
	content: "";
	position: absolute;
	left: 0;
	top: 2px;
	bottom: 2px;
	width: 4px;
	border-radius: 2px;
	background: linear-gradient(180deg, #00b4ff 0%, #1346aa 100%);
	box-shadow: 0 0 6px rgba(0, 170, 255, .5);
}
.content .marimg .cs-intro p { margin: 0; font-size: 15px; }

.content .marimg .cs-facts { display: flex; flex-wrap: wrap; gap: 8px; margin: 16px 0 4px; padding: 0; list-style: none; }
.content .marimg .cs-facts li {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	margin: 0;
	padding: 7px 14px 7px 10px;
	border-radius: 999px;
	background: #eef4ff;
	border: 1px solid #c9d8f5;
	color: #0e3184;
	font-size: 13.5px;
	font-weight: 600;
	line-height: 1.2;
}
.content .marimg .cs-facts svg { flex: none; width: 18px; height: 18px; fill: none; stroke: #1346aa; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }

.content .marimg .cs-body { margin-top: 14px; }
.content .marimg .cs-body p { margin: 0 0 10px; }
.content .marimg .cs-warranty {
	position: relative;
	margin: 14px 0 4px !important;
	padding: 12px 16px 12px 52px;
	border-radius: 12px;
	background: #ecf9f1;
	border: 1px solid #bfe6cd;
	color: #14532d;
}
.content .marimg .cs-w-ico { position: absolute; left: 14px; top: 12px; width: 26px; height: 26px; }
.content .marimg .cs-w-ico svg { width: 100%; height: 100%; fill: none; stroke: #13a04a; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.content .marimg .cs-facts li::before,
.content .marimg .cs-facts li::marker { content: none; display: none; }
.content .marimg .cs-actions { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 16px; }
.content .marimg .cs-actions a.tx-btn { color: #fff; text-decoration: none; }

.m-ready .content .marimg .cs-sec { padding: 14px; }
.m-ready .content .marimg .cs-top { grid-template-columns: 1fr; gap: 14px; }
.m-ready .content .marimg .cs-actions a.tx-btn { flex: 1 1 100%; justify-content: center; }

/* Картинки, видео, линии, списки, таблицы */
.content :is(.marimg, .n_text, .pol_info > div) img { max-width: 100% !important; height: auto !important; }
.content :is(.marimg, .n_text, .pol_info > div) img:not([src*="emoji"]):not([width="1"]) { border-radius: 12px; }
.content :is(.marimg, .n_text, .pol_info > div) img[src*="emoji"] { width: 1.15em !important; height: 1.15em !important; vertical-align: -.2em; margin: 0 2px; }
.content :is(.marimg, .n_text, .pol_info > div) img[style*="float: left" i],
.content :is(.marimg, .n_text, .pol_info > div) img[style*="float:left" i],
.content :is(.marimg, .n_text, .pol_info > div) img[align="left" i] { margin: 4px 20px 12px 0 !important; }
.content :is(.marimg, .n_text, .pol_info > div) img[style*="float: right" i],
.content :is(.marimg, .n_text, .pol_info > div) img[style*="float:right" i],
.content :is(.marimg, .n_text, .pol_info > div) img[align="right" i] { margin: 4px 0 12px 20px !important; }
.content :is(.marimg, .n_text, .pol_info > div) iframe { max-width: 100%; border: 0; border-radius: 12px; box-shadow: 0 4px 14px rgba(14, 49, 132, .15); }
.content :is(.marimg, .n_text, .pol_info > div) :is(.tx-h, .tx-h3) + hr { display: none; }   /* линия под заголовком из админки — у заголовка уже своя черта */
.content :is(.marimg, .n_text, .pol_info > div) hr {
	clear: both;
	height: 2px;
	margin: 22px 0;
	border: 0;
	border-radius: 1px;
	background: linear-gradient(90deg, rgba(0, 166, 238, 0), #00a6ee 30%, #1346aa 70%, rgba(19, 70, 170, 0));
	opacity: .5;
}
.content :is(.marimg, .n_text, .pol_info > div) ul { margin: 6px 0 12px; padding: 0 0 0 4px; list-style: none; }
.content :is(.marimg, .n_text, .pol_info > div) ul > li { position: relative; padding: 0 0 5px 20px; list-style: none; }
.content :is(.marimg, .n_text, .pol_info > div) ul > li::before {
	content: "";
	position: absolute;
	left: 4px;
	top: .62em;
	width: 7px;
	height: 7px;
	border-radius: 50%;
	background: #00a6ee;
	box-shadow: 0 0 5px rgba(0, 166, 238, .6);
}
.content :is(.marimg, .n_text, .pol_info > div) ol { margin: 6px 0 12px 22px; }
.content :is(.marimg, .n_text, .pol_info > div) ol > li { padding: 0 0 5px 4px; }
.content :is(.marimg, .n_text, .pol_info > div) ol > li::marker { color: #1346aa; font-weight: 700; }
.content :is(.marimg, .n_text, .pol_info > div) blockquote { margin: 14px 0; padding: 10px 16px; border-left: 4px solid #00a6ee; border-radius: 0 10px 10px 0; background: #f4f8ff; }

/* таблицы с рамками (прайсы, тарифы; размечает article()) — карточкой: синяя шапка, светлые строки через одну */
.content table.tx-table {
	width: 100% !important;
	height: auto !important;
	margin: 12px 0 18px;
	border: 1px solid #d3def3 !important;
	border-collapse: separate !important;
	border-spacing: 0;
	border-radius: 12px;
	overflow: hidden;
	box-shadow: 0 2px 8px rgba(14, 49, 132, .06);
}
.content table.tx-table td,
.content table.tx-table th {
	height: auto !important;
	padding: 7px 12px !important;
	border: 0 !important;
	border-top: 1px solid #eef2f8 !important;
	background: none !important;
	color: #1d2433 !important;
	font-size: 14px !important;
	line-height: 1.4 !important;
	vertical-align: middle;
}
.content table.tx-table tr { height: auto !important; }
.content table.tx-table :is(td, th) > p { margin: 0 !important; padding: 0 !important; }
/* цена в прайсе — плашкой, как в прайсе /remont_tel (.pl-price); размечает banner.js → txPrices() */
.content table.tx-table td .tx-price {
	display: inline-block;
	padding: 3px 10px;
	border-radius: 9px;
	background: #eaf2ff;
	color: #0e3184 !important;
	font-weight: 800;
	white-space: nowrap;
}
.content table.tx-table tr:nth-child(even) td { background: #f7f9fd !important; }
.content table.tx-table tr.tx-thead + tr.tx-thead td { border-top: 0 !important; background: #eef4ff !important; color: #0e3184 !important; font-weight: 600 !important; }
.content table.tx-table tr.tx-thead + tr.tx-thead td * { color: #0e3184 !important; }
.content table.tx-table tr.tx-thead td,
.content table.tx-table tr.tx-thead th { border-top: 0 !important; background: linear-gradient(180deg, #1346aa 0%, #0e3184 100%) !important; color: #fff !important; font-weight: 700 !important; }
.content table.tx-table tr.tx-thead td *,
.content table.tx-table tr.tx-thead th * { color: #fff !important; }

/* ---------- Путь «Главная › Новости › …» (строит crumbs() в banner.js и на этих страницах) ---------- */
.content .forum_links,
.content .tpl:not(.tovars) > .forum_a,
.content .zakaz_nix > .forum_a { margin: 2px 0 14px; padding: 0; }
.content .zakaz_nix > .forum_a { padding: 4px 20px 0; }

/* ---------- «Корзина пуста» ---------- */
.content .nokorzina {
	box-sizing: border-box;
	width: auto;
	max-width: 420px;
	height: auto;
	margin: 30px auto;
	padding: 34px 24px 28px;
	border: 1px dashed #b9cbef;
	border-radius: 18px;
	background: radial-gradient(120% 90% at 50% 0%, #eef4ff 0%, #f8fbff 60%, #fff 100%);
	text-align: center;
}
.content .nokorzina > div:not(.tx-cta) {
	width: auto;
	margin: 0;
	padding: 76px 0 0;
	background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231346aa' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M2.5 3h2.2l2.4 11.2a1.8 1.8 0 0 0 1.8 1.4h8.6a1.8 1.8 0 0 0 1.8-1.4L21 7H6'/%3E%3Ccircle cx='9.5' cy='20' r='1.4'/%3E%3Ccircle cx='17' cy='20' r='1.4'/%3E%3C/svg%3E") center top / 60px no-repeat;
	color: #071c55;
	font-size: 20px;
	font-weight: 700;
}
.content .nokorzina > div:not(.tx-cta)::after {
	content: "\0417\0430\0433\043B\044F\043D\0438\0442\0435\0020\0432\0020\043A\0430\0442\0430\043B\043E\0433\0438\0020\2014\0020\0442\043E\0432\0430\0440\044B\0020\0432\0020\043D\0430\043B\0438\0447\0438\0438\0020\0434\043E\0441\0442\0430\0432\0438\043C\0020\0441\0440\0430\0437\0443";   /* «Загляните в каталоги — товары в наличии доставим сразу» */
	display: block;
	margin-top: 6px;
	color: #5b6880;
	font-size: 14px;
	font-weight: 400;
}
.content .nokorzina .tx-cta { width: auto; margin: 18px 0 0; padding: 0; background: none; font-size: 14px; }   /* старое правило .nokorzina div (картинка-тележка, ширина 150px) — не для кнопки */

/* ---------- Поиск: «Ничего не найдено» (noSearch() в banner.js, вместо .no_search) ---------- */
.content .ns {
	box-sizing: border-box;
	max-width: 480px;
	margin: 30px auto;
	padding: 32px 26px 26px;
	border: 1px dashed #b9cbef;
	border-radius: 18px;
	background: radial-gradient(120% 90% at 50% 0%, #eef4ff 0%, #f8fbff 60%, #fff 100%);
	color: #2b3a55;
	font-size: 14px;
	line-height: 1.45;
	text-align: center;
}
.content .ns-ico {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 64px;
	height: 64px;
	border-radius: 50%;
	background: #fff;
	box-shadow: 0 0 0 1px #c9d8f5, 0 4px 14px rgba(19, 70, 170, .12);
}
.content .ns-ico svg { width: 34px; height: 34px; fill: none; stroke: #1346aa; stroke-width: 1.7; stroke-linecap: round; }
.content .ns .ns-title { margin: 14px 0 0; padding: 0; color: #071c55; font-size: 21px; font-weight: 700; line-height: 1.25; text-transform: none; }
.content .ns .ns-q { margin: 6px 0 0; padding: 0; color: #5b6880; font-size: 14px; overflow-wrap: anywhere; }
.content .ns .ns-q b { color: #0e3184; }
.content .ns .ns-tips {
	display: inline-block;
	margin: 18px 0 0;
	padding: 14px 18px;
	border-radius: 12px;
	background: #fff;
	box-shadow: inset 0 0 0 1px #dde6f5;
	list-style: none;
	text-align: left;
}
.content .ns .ns-tips li { position: relative; margin: 0; padding: 3px 0 3px 22px; background: none; color: #2b3a55; font-size: 14px; }
.content .ns .ns-tips li::before {
	content: "";
	position: absolute;
	left: 3px;
	top: 10px;
	width: 7px;
	height: 7px;
	border-radius: 50%;
	background: #00b4ff;
	box-shadow: 0 0 0 3px rgba(0, 180, 255, .18);
}
.content .ns .ns-tips a { color: #1346aa; font-weight: 600; text-decoration: underline; text-underline-offset: 2px; }
.content .ns .ns-tips a:hover { color: #0090e0; }
.content .ns .ns-actions { display: flex; flex-wrap: wrap; justify-content: center; gap: 10px; margin: 20px 0 0; }
.content .ns .ns-call { margin: 16px 0 0; padding: 0; color: #5b6880; font-size: 13px; }
.content .ns .ns-call a { color: #0e3184; font-weight: 700; text-decoration: none; white-space: nowrap; }
@media (max-width: 767px) {
	.m-ready .content .ns { margin: 14px 0; padding: 24px 16px 20px; }
	.m-ready .content .ns .ns-tips { display: block; padding: 12px 14px; }
	.m-ready .content .ns .ns-actions a.tx-btn { flex: 1 1 100%; justify-content: center; }
}

/* Общая кнопка «действия» (ставит banner.js: «Открыть каталоги», «Читать далее», «Следующий товар»…) */
.content a.tx-btn,
.content a.tx-btn:visited {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 9px 18px;
	border-radius: 999px;
	background: linear-gradient(180deg, #1a55c4 0%, #0e3184 100%);
	box-shadow: 0 0 0 1px rgba(0, 180, 255, .45), 0 4px 12px rgba(0, 90, 220, .25);
	color: #fff;
	font-size: 14px;
	font-weight: 600;
	line-height: 1.2;
	text-decoration: none;
	transition: transform .15s, box-shadow .15s;
}
.content a.tx-btn::after { content: "\2192"; font-size: 16px; transition: transform .15s; }
.content a.tx-btn:hover { transform: translateY(-1px); box-shadow: 0 0 0 1px rgba(0, 200, 255, .8), 0 6px 18px rgba(0, 120, 255, .35); color: #fff; }
.content a.tx-btn:hover::after { transform: translateX(3px); }
.content a.tx-btn.tx-btn-light,
.content a.tx-btn.tx-btn-light:visited { background: #eef4ff; box-shadow: inset 0 0 0 1px #c9d8f5; color: #1346aa; }
.content a.tx-btn.tx-btn-light:hover { background: #1346aa; box-shadow: inset 0 0 0 1px #1346aa, 0 0 10px rgba(0, 160, 255, .45); color: #fff; }

/* ---------- «Товары в наличии» (/catalogs): магазины — карточки с фото ---------- */
.content .borderrr {
	box-sizing: border-box;
	min-width: 0;
	max-width: none;
	height: auto;
	margin: 0 20px 14px;
	border: 1px solid #dde6f5;
	border-radius: 16px;
	background: #fff;
	box-shadow: 0 2px 10px rgba(14, 49, 132, .07);
	overflow: hidden;
	transition: border-color .2s, box-shadow .2s, transform .2s;
}
.content .borderrr:hover { border: 1px solid #00b4ff; box-shadow: 0 0 0 1px rgba(0, 180, 255, .4), 0 8px 22px rgba(0, 150, 255, .22); transform: translateY(-2px); }
.content .borderrr .positiona { inset: 0; z-index: 1; }
.content .borderrr table { border-collapse: collapse; }
.content .borderrr table td { height: auto; padding: 14px 18px; vertical-align: middle; }
.content .borderrr table td.img { width: 200px; padding: 0; line-height: 0; }
.content .borderrr table td.img img { display: block; width: 200px; height: 134px; object-fit: cover; }
.content .borderrr table td.td p { padding: 0; text-align: left; }
/* «Каталог магазина Байт» — мелкой серой строкой, адрес под ним — крупно */
.content .borderrr table td.td p:has(> a) { line-height: 1.3; }
.content .borderrr table td.td p:has(> a) a { color: #5b6880; font-size: 14px; text-decoration: none; }
.content .borderrr table td.td p:has(> a) + p:has(> a) a { color: #071c55; font-size: 21px; font-weight: 700; }
.content .borderrr table td.td p:not([align]):not(:has(*)) { display: none; }   /* пустые абзацы-распорки */
.content .borderrr table td.td p[align] {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	margin-top: 10px;
	padding: 4px 10px;
	border-radius: 999px;
	background: #e8f8ef;
	color: #17692f;
	font-size: 12.5px !important;
}
.content .borderrr table td.td p[align]::before { content: ""; width: 7px; height: 7px; border-radius: 50%; background: #23a04a; box-shadow: 0 0 0 3px rgba(35, 160, 74, .18); }
.content .borderrr table td.td::after {
	content: "\041E\0442\043A\0440\044B\0442\044C\0020\043A\0430\0442\0430\043B\043E\0433\0020\2192";   /* «Открыть каталог →» */
	float: right;
	margin-top: 10px;
	padding: 7px 14px;
	border-radius: 999px;
	background: #eef4ff;
	box-shadow: inset 0 0 0 1px #c9d8f5;
	color: #1346aa;
	font-size: 13px;
	font-weight: 600;
	transition: background-color .15s, color .15s;
}
.content .borderrr:hover table td.td::after { background: #1346aa; box-shadow: inset 0 0 0 1px #1346aa; color: #fff; }

/* Магазины — большие синие кнопки друг под другом (строит banner.js → shops()); старые .borderrr выше — запасной вид, если скрипт не сработал */
.sh-ready .content .borderrr { display: none; }
.content .sh-list { display: flex; flex-direction: column; gap: 16px; margin: 22px 20px 26px; }
.content a.sh-card,
.content a.sh-card:visited {
	position: relative;
	display: flex;
	align-items: center;
	gap: 22px;
	padding: 14px 22px 14px 14px;
	border-radius: 20px;
	background: radial-gradient(120% 160% at 100% 0%, #1f6fe0 0%, rgba(31, 111, 224, 0) 55%), linear-gradient(135deg, #1a55c4 0%, #0e3184 60%, #0a2468 100%);
	box-shadow: 0 0 0 1px rgba(0, 180, 255, .35), 0 8px 22px rgba(10, 40, 120, .28);
	color: #fff;
	text-decoration: none;
	overflow: hidden;
	transition: transform .2s, box-shadow .2s;
}
.content a.sh-card:hover {
	transform: translateY(-3px);
	box-shadow: 0 0 0 1px rgba(0, 200, 255, .9), 0 0 22px rgba(0, 160, 255, .45), 0 12px 28px rgba(10, 40, 120, .3);
	color: #fff;
}
.content .sh-pic {
	flex: none;
	position: relative;
	display: block;
	width: 210px;
	aspect-ratio: 3 / 2;
	border-radius: 14px;
	background: #0a2468;
	box-shadow: 0 0 0 2px rgba(255, 255, 255, .18);
	overflow: hidden;
}
.content .sh-pic img { position: absolute; inset: 0; display: block; width: 100% !important; height: 100% !important; max-width: none; object-fit: cover; transition: transform .5s; }
.content a.sh-card:hover .sh-pic img { transform: scale(1.06); }
.content .sh-body { display: flex; flex: 1; flex-direction: column; align-items: flex-start; min-width: 0; text-align: left; }
.content .sh-label { color: #9cc8ff; font-size: 14px; line-height: 1.3; }
.content .sh-addr { margin-top: 4px; color: #fff; font-size: 23px; font-weight: 800; line-height: 1.2; }
.content .sh-upd {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	margin-top: 12px;
	padding: 5px 12px 5px 10px;
	border-radius: 999px;
	background: rgba(255, 255, 255, .12);
	box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .18);
	color: #d6e6ff;
	font-size: 13px;
	line-height: 1.3;
}
.content .sh-upd i { flex: none; width: 8px; height: 8px; border-radius: 50%; background: #3ddc6f; box-shadow: 0 0 8px rgba(61, 220, 111, .9); }
.content .sh-arrow {
	flex: none;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 48px;
	height: 48px;
	border-radius: 50%;
	background: #fff;
	box-shadow: 0 4px 12px rgba(0, 0, 0, .2);
	transition: transform .2s, background-color .2s;
}
.content .sh-arrow svg { width: 22px; height: 22px; fill: none; stroke: #0e3184; stroke-width: 2.4; stroke-linecap: round; stroke-linejoin: round; }
.content a.sh-card:hover .sh-arrow { transform: translateX(4px); background: #00b4ff; }
.content a.sh-card:hover .sh-arrow svg { stroke: #fff; }
@media (prefers-reduced-motion: reduce) {
	.content a.sh-card, .content .sh-pic img, .content .sh-arrow { transition: none; }
}
@media (max-width: 767px) {
	.m-ready .content .sh-list { gap: 12px; margin: 16px 0 20px; }
	.m-ready .content a.sh-card { gap: 12px; padding: 10px 12px 10px 10px; border-radius: 16px; }
	.m-ready .content .sh-pic { width: 104px; aspect-ratio: 1; border-radius: 11px; }
	.m-ready .content .sh-label { font-size: 12px; }
	.m-ready .content .sh-addr { margin-top: 2px; font-size: 16px; }
	.m-ready .content .sh-upd { align-items: flex-start; margin-top: 6px; padding: 0; gap: 6px; background: none; box-shadow: none; font-size: 11.5px; }
	.m-ready .content .sh-upd i { width: 6px; height: 6px; margin-top: 5px; }
	.m-ready .content .sh-arrow { width: 32px; height: 32px; }
	.m-ready .content .sh-arrow svg { width: 17px; height: 17px; }
}

/* ---------- Каталог магазина (/catalog, /catalog_axs35, /catalog_kosm20): разделы — карточки ---------- */
.content .catalogs .block {
	box-sizing: border-box;
	float: none;
	width: auto;
	margin: 0 0 14px;
	padding: 0 0 6px;
	border: 1px solid #dde6f5;
	border-radius: 14px;
	background: #fff;
	box-shadow: 0 2px 8px rgba(14, 49, 132, .06);
	overflow: hidden;
}
.content .catalogs .block > p { margin: 0; padding: 0; border-bottom: 1px solid #e6ecf6; background: linear-gradient(180deg, #f6f9ff 0%, #edf3fe 100%); }
.content .catalogs .block > p a {
	display: flex;
	align-items: center;
	gap: 10px;
	padding: 12px 18px;
	color: #071c55;
	font-size: 16px;
	font-weight: 700;
	text-decoration: none;
	text-align: left;
}
.content .catalogs .block > p a::before { content: ""; width: 4px; height: 18px; border-radius: 2px; background: linear-gradient(180deg, #00b4ff 0%, #1346aa 100%); box-shadow: 0 0 6px rgba(0, 170, 255, .5); }
.content .catalogs .block > p a:hover { color: #1346aa; }
.content .catalogs .block ul { margin: 0; padding: 0; list-style: none; }
.content .catalogs .block > ul > li > ul { padding: 8px 10px 2px; }
.content .catalogs .block ul li ul li {
	margin: 0;
	padding: 0;
	list-style: none;
	break-inside: avoid;
}
.content .catalogs .block ul li ul li a {
	display: flex;
	align-items: center;
	gap: 8px;
	padding: 6px 8px;
	border-radius: 8px;
	color: #0e3184;
	font-size: 15px;
	font-weight: 500;   /* на Windows (Segoe UI) тонкие 13.5px читались плохо */
	line-height: 1.3;
	text-decoration: none;
	transition: background-color .15s, color .15s;
}
.content .catalogs .block ul li ul li a::before {
	content: "";
	flex: none;
	width: 6px;
	height: 6px;
	border: solid #7fa3e6;
	border-width: 2px 2px 0 0;
	transform: rotate(45deg);
	transition: border-color .15s;
}
.content .catalogs .block ul li ul li a:hover { background: #e6efff; color: #0e3184; }
.content .catalogs .block ul li ul li a:hover::before { border-color: #00a6ee; }
@media (min-width: 768px) {
	.content .catalogs .block > ul > li > ul { columns: 2; column-gap: 12px; }
}

/* «Обращаем внимание…» под каталогом — светлая плашка с иконкой вместо красной пунктирной рамки */
.content .vnim2 {
	position: relative;
	margin: 18px 0 6px;
	padding: 14px 18px 4px 54px;
	border: 1px solid #c9d8f5;
	border-radius: 14px;
	background: #f4f8ff;
	color: #1d2433;
	font-size: 14px;
	line-height: 1.55;
	text-align: left;
}
.content .vnim2::before {
	content: "i";
	position: absolute;
	left: 18px;
	top: 15px;
	width: 22px;
	height: 22px;
	border-radius: 50%;
	background: #1346aa;
	color: #fff;
	font: 700 14px/22px Georgia, serif;
	text-align: center;
}
.content .vnim2 p { padding-bottom: 10px; }
.content .vnim2 p span { color: #e0283a; }

/* ---------- «Товары под заказ» (/na_zakaz): группы — карточки в три колонки ---------- */
.content .zakaz_nix .pyatnica {
	margin: 4px 20px 16px;
	padding: 14px 18px;
	border: 1px solid #c9d8f5;
	border-radius: 14px;
	background: linear-gradient(120deg, #eef4ff 0%, #f7fbff 100%);
	text-align: left;
}
.content .zakaz_nix .pyatnica p { padding: 0; color: #071c55 !important; font-size: 15px; font-weight: 700; line-height: 1.5; }
.content .zakaz_nix .pyatnica p + p { margin-top: 4px; color: #3b4a66 !important; font-size: 14px; font-weight: 400; }
.content .zakaz_nix .pyatnica p + p a { font-weight: 700; }
.content .zakaz_nix .pyatnica p:first-child::before { content: "\1F69A"; margin-right: 8px; }   /* 🚚 */
/* Группы «на заказ» оформлены так же, как разделы каталога «в наличии» (.catalogs .block выше):
   белая карточка, светлый заголовок с синей полоской, у каждой категории — стрелка слева */
.content .nix_block {
	box-sizing: border-box;
	margin: 0 0 14px;
	padding: 0 0 6px;
	border: 1px solid #dde6f5;
	border-radius: 14px;
	background: #fff;
	box-shadow: 0 2px 8px rgba(14, 49, 132, .06);
	overflow: hidden;
}
.content .nix_block .nix_zag {
	display: flex;
	align-items: center;
	gap: 10px;
	padding: 12px 18px;
	border-bottom: 1px solid #e6ecf6;
	background: linear-gradient(180deg, #f6f9ff 0%, #edf3fe 100%);
	color: #071c55;
	font-size: 16px;
	font-weight: 700;
	line-height: 1.3;
	text-align: left;
}
.content .nix_block .nix_zag::before { content: ""; flex: none; align-self: stretch; width: 4px; min-height: 18px; border-radius: 2px; background: linear-gradient(180deg, #00b4ff 0%, #1346aa 100%); box-shadow: 0 0 6px rgba(0, 170, 255, .5); }
.content .nix_block .nix_spisok ul { margin: 0; padding: 8px 10px 2px; list-style: none; }
.content .nix_block .nix_spisok ul li { margin: 0; padding: 0; list-style: none; break-inside: avoid; }
.content .nix_block .nix_spisok ul li a {
	display: flex;
	align-items: center;
	gap: 8px;
	padding: 6px 8px;
	border-radius: 8px;
	color: #1346aa;
	font-size: 13.5px;
	line-height: 1.3;
	text-decoration: none;
	transition: background-color .15s, color .15s;
}
.content .nix_block .nix_spisok ul li a::before {
	content: "";
	flex: none;
	width: 6px;
	height: 6px;
	border: solid #7fa3e6;
	border-width: 2px 2px 0 0;
	transform: rotate(45deg);
	transition: border-color .15s;
}
.content .nix_block .nix_spisok ul li a:hover { background: #e6efff; color: #0e3184; }
.content .nix_block .nix_spisok ul li a:hover::before { border-color: #00a6ee; }
.content .nix_block .nix_spisok ul .raspras a { color: #071c55; font-weight: 700; }   /* крупные разделы (Ноутбуки, Планшеты) — жирным, как и раньше */
.content .nix_block .konec { display: none; }
@media (min-width: 768px) {
	.content .zakaz_nix { padding: 0 20px; }
	.content .zakaz_nix .pyatnica { margin: 4px 0 16px; }
	.content .zakaz_nix .float_nix { width: calc((100% - 24px) / 3); margin: 0 12px 0 0; }
	.content .zakaz_nix .float_nix + .float_nix + .float_nix { margin-right: 0; }   /* третья колонка; не nth-of-type — перед колонками ещё div.pyatnica */
	.content .zakaz_nix .nix_block .nix_zag { gap: 8px; padding: 10px 12px; font-size: 14px; }   /* колонки узкие — заголовок компактнее */
	.content .zakaz_nix .nix_block .nix_spisok ul { padding: 6px 6px 2px; }
}
/* подкатегории на странице раздела (/na_zakaz_products) — «таблетки» */
.content .podcateg_nix { margin: 0 0 16px; }
.content .podcateg_nix .konec,
.content .podcateg_nix .konec1 { display: none; }
.content .podcateg_nix .nix_spisok { padding: 0; background: none; }
.content .podcateg_nix .nix_spisok ul { display: flex; flex-wrap: wrap; gap: 6px; margin: 0; padding: 0; list-style: none; }
.content .podcateg_nix .nix_spisok ul li { float: none; margin: 0; line-height: 1; list-style: none; }
.content .podcateg_nix .nix_spisok ul li a {
	display: inline-block;
	padding: 6px 12px;
	border: 1px solid #c9d8f5;
	border-radius: 999px;
	background: #eef4ff;
	color: #1346aa;
	font-size: 13px;
	text-decoration: none;
	transition: background-color .15s, color .15s, border-color .15s;
}
.content .podcateg_nix .nix_spisok ul li a:hover { border-color: #00b4ff; background: #00b4ff; color: #06215e; }
.content .podcateg_nix .nix_spisok br.clear { display: none; }

/* ---------- Новости (/news): дата — плашкой, заголовок — крупно, «Читать далее» — кнопкой ---------- */
.content .tpl > .n_date {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	margin: 0 0 8px;
	padding: 4px 11px;
	border-radius: 999px;
	background: #eef4ff;
	color: #1346aa;
	font-size: 12.5px;
	font-weight: 600;
}
.content .tpl > .n_date::before { content: ""; width: 12px; height: 12px; background: currentColor; -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2.2' stroke-linecap='round'%3E%3Crect x='3.5' y='5' width='17' height='15.5' rx='3'/%3E%3Cpath d='M3.5 10h17M8 3v4M16 3v4'/%3E%3C/svg%3E") center / contain no-repeat; mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2.2' stroke-linecap='round'%3E%3Crect x='3.5' y='5' width='17' height='15.5' rx='3'/%3E%3Cpath d='M3.5 10h17M8 3v4M16 3v4'/%3E%3C/svg%3E") center / contain no-repeat; }
.content .tpl > a[name^="news"] { display: block; height: 0; overflow: hidden; }
.content .tpl > a[name^="news"] ~ a[name^="news"] { height: 1px; margin: 26px 0 22px; background: linear-gradient(90deg, rgba(0, 166, 238, 0), #00a6ee 30%, #1346aa 70%, rgba(19, 70, 170, 0)); opacity: .45; }
.content .tpl > .n_title { margin: 0 0 14px; padding: 0; border: 0; font-size: 20px; line-height: 1.3; }
.content .tpl > .n_title a { color: #071c55; text-decoration: none; }
.content .tpl > .n_title a:hover { color: #1346aa; }
.content .n_text p.dalee { clear: both; margin: 14px 0 0; padding-top: 4px; text-align: left !important; }
.content .n_text p.dalee a {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 8px 16px;
	border-radius: 999px;
	background: #eef4ff;
	box-shadow: inset 0 0 0 1px #c9d8f5;
	color: #1346aa;
	font-size: 13.5px;
	font-weight: 600;
	text-decoration: none;
	transition: background-color .15s, color .15s, box-shadow .15s;
}
.content .n_text p.dalee a::after { content: "\2192"; font-size: 15px; }
.content .n_text p.dalee a:hover { background: #1346aa; box-shadow: inset 0 0 0 1px #1346aa, 0 0 10px rgba(0, 160, 255, .45); color: #fff; }

/* ---------- «Полезная информация» (/info): оглавление-таблетки (строит infoToc()) и разделы-карточки ---------- */
.content .tx-toc { display: flex; flex-wrap: wrap; gap: 6px; margin: 2px 0 18px; }
.content .tx-toc a {
	padding: 6px 12px;
	border: 1px solid #c9d8f5;
	border-radius: 999px;
	background: #eef4ff;
	color: #1346aa;
	font-size: 13px;
	text-decoration: none;
	transition: background-color .15s, color .15s, border-color .15s;
}
.content .tx-toc a:hover { border-color: #00b4ff; background: #00b4ff; color: #06215e; }
.content .pol_info {
	margin: 0 0 16px;
	border: 1px solid #dde6f5;
	border-radius: 14px;
	background: #fff;
	box-shadow: 0 2px 8px rgba(14, 49, 132, .06);
	overflow: hidden;
	scroll-margin-top: 12px;
}
.content .pol_info > .title {
	display: flex;
	align-items: center;
	gap: 10px;
	margin: 0;
	padding: 13px 18px;
	border-bottom: 1px solid #e6ecf6;
	background: linear-gradient(180deg, #f6f9ff 0%, #edf3fe 100%);
	color: #071c55;
	font-size: 17px;
	line-height: 1.3;
}
.content .pol_info > .title::before { content: ""; flex: none; width: 4px; height: 20px; border-radius: 2px; background: linear-gradient(180deg, #00b4ff 0%, #1346aa 100%); box-shadow: 0 0 6px rgba(0, 170, 255, .5); }
.content .pol_info > div:not(.title) { padding: 14px 18px 6px; }
.content .pol_info > div:not(.title)::after { content: ""; display: table; clear: both; }
/* 2026-10-25: «Полезная информация» — битые картинки 2011 г. (файлов нет, браузер рисует «?») скрыты;
   «Способы оплаты товара» набран в админке font-size: 18px — приводим к размеру остальных разделов */
.content .pol_info > div :is(img[src*="uploads/images/2011-08/"], img[src*="uploads/thumbs/2011-08/"]) { display: none !important; }
.content .pol_info > div :is([style*="font-size: 18" i], [style*="font-size:18" i]) { font-size: inherit !important; }

/* ---------- Формы: «Собрать компьютер», «Вызвать мастера», «Продать б/у», «Написать директору» ---------- */
.content .sobrcomp { color: #3b4a66; font-size: 14.5px; line-height: 1.6; text-align: left; padding-bottom: 10px; }
.content table.sobrat { border-top: 0; border-collapse: separate; border-spacing: 0 2px; }
.content table.sobrat td { padding: 6px 6px; font-size: 14px; vertical-align: middle; }
.content table.sobrat td.td { width: 230px; padding-right: 16px; color: #071c55; font-size: 13.5px; font-weight: 600; line-height: 1.35; }
.content table.sobrat td.td span { color: #e0283a; }
.content table.sobrat td.td span.green { color: #13a04a; font-size: inherit; }
.content table.sobrat td.td span.red { color: #e0283a; font-size: inherit; }
.content table.sobrat td.cen { padding-top: 12px; color: #071c55; font-size: 15px; font-weight: 600; text-align: center; }
/* поле ввода: вместо трёх кусочков-картинок (inp1/inp2/inp3) — одна рамка со скруглением */
.content :is(table.sobrat, .sb) .input { height: auto; }
.content :is(table.sobrat, .sb) .input .inp1,
.content :is(table.sobrat, .sb) .input .inp3,
.content :is(table.sobrat, .sb) .textarea :is(.lv, .rv, .ln, .rn) { display: none; }
.content :is(table.sobrat, .sb) .input .inp2 {
	position: relative;
	left: 0;
	right: 0;
	height: auto;
	border: 1px solid #c9d6ee;
	border-radius: 10px;
	background: #fff;
	transition: border-color .15s, box-shadow .15s;
}
.content :is(table.sobrat, .sb) .input .inp2 p { padding: 0; }
.content :is(table.sobrat, .sb) .input .inp2 input { box-sizing: border-box; height: 38px; margin: 0; padding: 0 12px; border-radius: 10px; color: #1d2433; font-size: 14px; }
.content :is(table.sobrat, .sb) .input .inp2 label { top: 10px; left: 12px; height: 18px; color: #94a0b4; font-size: 13.5px; }
.content :is(table.sobrat, .sb) .input .inp2:focus-within,
.content :is(table.sobrat, .sb) .textarea:focus-within { border-color: #1f6fe0; box-shadow: 0 0 0 3px rgba(31, 111, 224, .15); }
.content :is(table.sobrat, .sb) .textarea { border: 1px solid #c9d6ee; border-radius: 10px; background: #fff; transition: border-color .15s, box-shadow .15s; }
.content :is(table.sobrat, .sb) .textarea .padding { padding: 0; }
.content :is(table.sobrat, .sb) .textarea .padding textarea { box-sizing: border-box; display: block; padding: 10px 12px; border-radius: 10px; background: #fff; color: #1d2433; font-size: 14px; line-height: 1.45; resize: vertical; }
.content :is(table.sobrat, .sb) .textarea p label { top: 10px; left: 12px; color: #94a0b4; font-size: 13.5px; }
.content :is(table.sobrat, .sb) input::placeholder,
.content :is(table.sobrat, .sb) textarea::placeholder { color: #94a0b4; }
.content :is(table.sobrat, .sb) :is(input[type="text"], textarea):not(.inp2 input):not(.padding textarea) { box-sizing: border-box; padding: 9px 12px; border: 1px solid #c9d6ee !important; border-radius: 10px !important; background: #fff !important; font-size: 14px; }
.content :is(table.sobrat, .sb) select,
.content :is(table.sobrat, .sb) .byselect {
	box-sizing: border-box;
	height: 38px;
	padding: 0 34px 0 12px;
	border: 1px solid #c9d6ee;
	border-radius: 10px;
	background: #fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231346aa' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E") right 10px center / 16px no-repeat;
	color: #1d2433;
	font-size: 14px;
	-webkit-appearance: none;
	appearance: none;
	cursor: pointer;
}
.content :is(table.sobrat, .sb) select:focus { outline: 0; border-color: #1f6fe0; box-shadow: 0 0 0 3px rgba(31, 111, 224, .15); }
.content :is(table.sobrat, .sb) input[type="checkbox"],
.content :is(table.sobrat, .sb) input[type="radio"] { width: 16px; height: 16px; margin: 0 6px 0 0; vertical-align: -3px; accent-color: #1346aa; }
/* «Понравилось ли обслуживание?» ДА / НЕТ — две таблетки вместо картинок yes.png / no.png */
.content table.sobrat .knop2 { display: flex; justify-content: center; gap: 10px; width: auto; }
.content table.sobrat .knop2 .clear { display: none; }
.content table.sobrat .knop2 .yes,
.content table.sobrat .knop2 .no {
	float: none;
	width: auto;
	height: auto;
	margin: 0;
	padding: 8px 18px;
	border-radius: 999px;
	background: #e8f8ef;
	box-shadow: inset 0 0 0 1px #b5e3c6;
	color: #17692f;
	font-size: 14px;
	font-weight: 600;
}
.content table.sobrat .knop2 .no { background: #fff1f2; box-shadow: inset 0 0 0 1px #f6c9cd; color: #b3202f; }
.content table.sobrat .knop2 .yes:hover,
.content table.sobrat .knop2 .no:hover { font-weight: 600; filter: brightness(.97); }
.content table.sobrat .knop2 p { padding: 0; }
/* «Отправить заявку» — главная синяя кнопка, как «Оформить заказ» */
.content .submit { overflow: visible; line-height: 1; letter-spacing: 0; }
.content .submit .inp4,
.content .submit .inp6 { display: none; }
.content .submit .inp5 { height: auto; background: none; }
.content .submit .inp5 input,
.content .submit .inp5 div {
	padding: 13px 30px;
	border-radius: 12px;
	background: linear-gradient(180deg, #1a55c4 0%, #0e3184 100%);
	box-shadow: 0 0 0 1px rgba(0, 180, 255, .45), 0 6px 16px rgba(0, 90, 220, .28);
	color: #fff;
	font-size: 15px;
	font-weight: 600;
	letter-spacing: 0;
	transition: transform .15s, box-shadow .15s;
}
.content .submit .inp5 input:hover,
.content .submit .inp5 div:hover { transform: translateY(-1px); box-shadow: 0 0 0 1px rgba(0, 200, 255, .8), 0 8px 22px rgba(0, 120, 255, .38); }
@media (min-width: 768px) {
	.content table.sobrat td.td { text-align: right; }
}

/* ---------- Карточка товара (компьютер; на телефоне её раскладывает mobile.js) ---------- */
@media (min-width: 768px) {
	.content .tovars .nazvan {
		margin: 4px 0 14px;
		padding: 0 0 12px;
		border-bottom: 1px solid #e6ecf6;
		color: #071c55;
		font-size: 20px;
		line-height: 1.3;
		text-align: left;
	}
	.content .tovars > table { border-collapse: separate; border-spacing: 0; }
	.content .tovars > table > tbody > tr { border-bottom: 0; }
	.content .tovars > table > tbody > tr > td { padding-top: 0 !important; }
	.content .tovars td.bigimages { padding: 6px 16px 10px 0; }
	.content .tovars td.bigimages img:not(.noimg) { border-radius: 12px; }
	.content .tovars .mintov img { border: 1px solid #dde6f5; border-radius: 8px; transition: border-color .15s; }
	.content .tovars .mintov img:hover { border-color: #00b4ff; }
	.content .tovars td.kupit {
		width: 230px;
		padding: 18px 18px 16px !important;
		border: 1px solid #dde6f5;
		border-radius: 16px;
		background: linear-gradient(180deg, #f8fbff 0%, #fff 100%);
		box-shadow: 0 2px 10px rgba(14, 49, 132, .07);
		text-align: left;
	}
	.content .tovars td.kupit > div { width: auto !important; margin-left: 0 !important; margin-right: 0 !important; }
	/* окно уже 1200px — середина ~430px: фото 300px + «Купить» не помещались, цена обрезалась у края карточки */
	@media (max-width: 1199px) {
		.content .tovars td.bigimages { padding-right: 12px; }
		.content .tovars td.bigimages img { max-width: 100% !important; height: auto !important; }
		.content .tovars td.kupit { width: 160px; padding: 14px !important; }
	}
	.content .tovars td.kupit .korzina { margin: 0; color: #071c55; font-size: 30px; font-weight: 800; line-height: 1.1; }
	.content .tovars td.kupit .korzina img { height: 22px !important; vertical-align: -1px; opacity: .85; }
	.content .tovars td.kupit .buy,
	.content .tovars td.kupit .buy2 { height: auto; margin: 14px 0 0; background: none; }
	.content .tovars td.kupit .buy a,
	.content .tovars td.kupit .buy2 a {
		box-sizing: border-box;
		display: flex;
		align-items: center;
		justify-content: center;
		gap: 10px;
		width: auto;
		height: 46px;
		padding: 0 16px;
		border-radius: 12px;
		background: linear-gradient(180deg, #1a55c4 0%, #0e3184 100%);
		box-shadow: 0 0 0 1px rgba(0, 180, 255, .45), 0 6px 16px rgba(0, 90, 220, .28);
		color: #fff;
		font-size: 17px;
		line-height: 1;
		transition: transform .15s, box-shadow .15s;
	}
	.content .tovars td.kupit .buy a::before {
		content: "";
		width: 20px;
		height: 20px;
		background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M2.5 3h2.2l2.4 11.2a1.8 1.8 0 0 0 1.8 1.4h8.6a1.8 1.8 0 0 0 1.8-1.4L21 7H6'/%3E%3Ccircle cx='9.5' cy='20' r='1.4'/%3E%3Ccircle cx='17' cy='20' r='1.4'/%3E%3C/svg%3E") center / contain no-repeat;
	}
	.content .tovars td.kupit .buy2 a { height: auto; min-height: 46px; padding: 10px 14px; background: linear-gradient(180deg, #ef4a55 0%, #d42d39 100%); box-shadow: 0 6px 16px rgba(212, 45, 57, .28); font-size: 14px; text-align: center; }
	.content .tovars td.kupit .buy:hover,
	.content .tovars td.kupit .buy2:hover { opacity: 1; }
	.content .tovars td.kupit .buy a:hover,
	.content .tovars td.kupit .buy2 a:hover { transform: translateY(-1px); box-shadow: 0 0 0 1px rgba(0, 200, 255, .8), 0 8px 22px rgba(0, 120, 255, .38); }
	/* наличие: «● в наличии на Гагарина 2 · 1 шт.» — зелёная плашка */
	.content .tovars td.kupit .in_stock,
	.content .tovars td.kupit .not_available,
	.content .tovars td.kupit .kolvo {
		margin: 12px 0 0 !important;
		padding: 9px 12px;
		border-radius: 10px;
		background: #e8f8ef;
		color: #17692f;
		font-size: 14px;
		line-height: 1.4;
		text-align: left;
	}
	.content .tovars td.kupit .kolvo:not(.in_stock) { background: #fff6e5; color: #8a5a00; }
	.content .tovars td.kupit .not_available { background: #fff1f2; color: #b3202f; }
	.content .tovars td.kupit .kolvo p { display: inline; padding: 0; }
	.content .tovars td.kupit .kolvo p:first-child::before { content: ""; display: inline-block; width: 8px; height: 8px; margin-right: 7px; border-radius: 50%; background: #23a04a; box-shadow: 0 0 0 3px rgba(35, 160, 74, .18); vertical-align: 1px; }
	.content .tovars td.kupit .kolvo:not(.in_stock) p:first-child::before { background: #f29b18; box-shadow: 0 0 0 3px rgba(242, 155, 24, .2); }
	.content .tovars td.kupit .kolvo p + p::before { content: " "; }
	.content .tovars td.kupit .kolvo a { color: inherit; font-weight: 700; }
	.content .tovars td.kupit .kolvo .kol-vo { display: block; margin-top: 2px; padding: 0; font-size: 13px; font-weight: 600; }
	.content .tovars td.kupit .sposoboplati { height: auto; margin: 14px 0 0 !important; }
	.content .tovars td.mnenrav { height: auto; padding: 14px 0 0 0 !important; color: #5b6880; font-size: 13px; }
	.content .tovars td.mnenrav b { color: #5b6880; font-weight: 600; }
	.content .tovars td.mnenrav img { width: 28px; margin: 8px 4px 0 0; border-radius: 8px; transition: transform .15s; }
	.content .tovars td.mnenrav img:hover { transform: translateY(-1px); }
	.content .podherknyt { border-left: 0; }
	.content .tovars tr:has(> td.slpr) > td { padding: 16px 0 6px !important; border-top: 1px solid #e6ecf6; }
	.content .tovars td.slpr img { display: none; }
	.content .tovars td.slpr a::after { content: "\0421\043B\0435\0434\0443\044E\0449\0438\0439\0020\0442\043E\0432\0430\0440\0020\2192"; }   /* «Следующий товар →» */
	.content .tovars td.slpr a:has(img[src*="pred"])::after { content: "\2190\0020\041F\0440\0435\0434\044B\0434\0443\0449\0438\0439\0020\0442\043E\0432\0430\0440"; }   /* «← Предыдущий товар» */
	.content .tovars td.slpr a {
		display: inline-block;
		margin: 0 4px;
		padding: 8px 16px;
		border-radius: 999px;
		background: #eef4ff;
		box-shadow: inset 0 0 0 1px #c9d8f5;
		color: #1346aa;
		font-size: 13.5px;
		font-weight: 600;
		text-decoration: none;
		transition: background-color .15s, color .15s, box-shadow .15s;
	}
	.content .tovars td.slpr a:hover { background: #1346aa; box-shadow: inset 0 0 0 1px #1346aa, 0 0 10px rgba(0, 160, 255, .45); color: #fff; }
	.content .komplektaciya { margin: 8px 20px 10px; }
	.content .komplektaciya a,
	.content .komplektaciya p { color: #7a879c; font-size: 12.5px; line-height: 1.5; text-decoration: none; text-align: left; }
	.content .komplektaciya a:hover { color: #1346aa; }
}

/* ---------- «Наши координаты» (/koordinaty, компьютер): магазин — карточка ---------- */
@media (min-width: 768px) {
	.content .tpl > p.email { margin: 0; color: #3b4a66; font-weight: 400; text-align: left; }
	.content .tpl > p.email:first-of-type { margin-top: 2px; }
	.content .tpl > p.email b { color: #071c55; }
	.content .tpl > p.email a { font-weight: 600; }
	.content .tpl:has(> .contacts) > br { display: block; content: ""; margin-top: 10px; }
	.content .contacts {
		margin: 18px 0 0;
		border: 1px solid #dde6f5;
		border-radius: 16px;
		background: #fff;
		box-shadow: 0 2px 10px rgba(14, 49, 132, .07);
		overflow: hidden;
	}
	.content .contacts .kontakti { border-collapse: collapse; }
	.content .contacts .kontakti .bawt { padding: 14px 18px 12px; text-align: left; border-bottom: 1px solid #e6ecf6; background: linear-gradient(180deg, #f6f9ff 0%, #edf3fe 100%); }
	.content .contacts .kontakti .bawt h1 { display: flex; align-items: center; gap: 10px; margin: 0; color: #071c55; font-size: 18px; }
	.content .contacts .kontakti .bawt h1::before { content: ""; width: 4px; height: 20px; border-radius: 2px; background: linear-gradient(180deg, #00b4ff 0%, #1346aa 100%); box-shadow: 0 0 6px rgba(0, 170, 255, .5); }
	.content .contacts .kontakti .img { padding: 14px 7px 0 14px; line-height: 0; }
	.content .contacts .kontakti .img img { border-radius: 12px; }
	.content .contacts .kontakti .yandex { padding: 14px 14px 0 7px; }
	.content .contacts .kontakti .yandex .height_div { border-radius: 12px; overflow: hidden; }
	.content .contacts .zag { margin: 0; padding: 8px 10px 10px; border: 0; }
	.content .contacts .zag table td { padding: 5px 8px; color: #1d2433; font-size: 14px; }
	.content .contacts .zag table td span { color: #5b6880; font-weight: 600; }
	.content .contacts .zag table td a { font-weight: 600; text-decoration: none; }
	.content .contacts .zag table td[rowspan] { width: 1%; white-space: nowrap; }
	.content .contacts .zag table td[rowspan] p { margin: 3px 0; }
	.content .contacts .zag table td[rowspan] p a {
		display: inline-block;
		padding: 6px 12px;
		border-radius: 999px;
		background: #eef4ff;
		box-shadow: inset 0 0 0 1px #c9d8f5;
		color: #1346aa;
		font-size: 13px;
		font-weight: 600;
		transition: background-color .15s, color .15s;
	}
	.content .contacts .zag table td[rowspan] p a span { color: inherit; font-weight: 700; }
	.content .contacts .zag table td[rowspan] p a:hover { background: #1346aa; color: #fff; }
}

/* ---------- «Услуги и ремонт»: список прайсов — плитки с иконками ---------- */
.content .cat_service { display: grid; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); gap: 10px; margin: 6px 0 10px; }
.content .cat_service br.clear { display: none; }
/* /service_and_remont: плитки перенесены над текстом (banner.js → serviceMenuFirst()), подпись над ними — заголовком */
.content .cat_service.svc-moved { margin-bottom: 24px; }
.content .svc-lead { margin: 6px 0 12px !important; color: #071c55; font-weight: 700; }
.content .cat_service .podcategor { width: auto; margin: 0; font-size: 15px; }
.content .cat_service .podcategor a {
	box-sizing: border-box;
	display: flex;
	align-items: center;
	gap: 12px;
	width: auto;
	height: 100%;
	padding: 10px 14px;
	border: 1px solid #dde6f5;
	border-radius: 14px;
	background: #fff;
	box-shadow: 0 2px 8px rgba(14, 49, 132, .06);
	color: #071c55;
	font-weight: 600;
	line-height: 1.3;
	text-decoration: none;
	transition: border-color .2s, box-shadow .2s, transform .2s;
}
.content .cat_service .podcategor a::after { content: "\2192"; margin-left: auto; color: #7fa3e6; font-size: 17px; transition: transform .15s, color .15s; }
.content .cat_service .podcategor a:hover { border-color: #00b4ff; box-shadow: 0 0 0 1px rgba(0, 180, 255, .4), 0 6px 18px rgba(0, 150, 255, .22); transform: translateY(-2px); color: #1346aa; }
.content .cat_service .podcategor a:hover::after { color: #00a6ee; transform: translateX(3px); }
.content .cat_service .podcategor img { flex: none; width: 40px; height: 40px; margin: 0; padding: 6px; border-radius: 12px !important; background: #eef4ff; object-fit: contain; }

/* «Услуги и ремонт», страница прайса: примечания под таблицей (.service_descr) — вместо красной двойной рамки карточка «Важно знать» */
.content .service_descr {
	position: relative;
	margin: 22px 0 10px;
	padding: 50px 22px 16px;
	border: 1px solid #d6e3f8;
	border-radius: 16px;
	background: linear-gradient(180deg, #eef5ff 0%, #fff 64px);
	box-shadow: 0 2px 10px rgba(14, 49, 132, .06);
	color: #1d2433;
}
.content .service_descr::before {
	content: "Важно знать";
	position: absolute;
	top: 16px;
	left: 22px;
	padding-left: 26px;
	background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231346aa' stroke-width='2' stroke-linecap='round'%3E%3Ccircle cx='12' cy='12' r='9.5'/%3E%3Cpath d='M12 11v6M12 7.5v.01'/%3E%3C/svg%3E") left center / 18px no-repeat;
	color: #1346aa;
	font-size: 13px;
	font-weight: 800;
	line-height: 20px;
	letter-spacing: .05em;
	text-transform: uppercase;
}
.content .service_descr ul { margin: 0; }
.content .service_descr ul:not(:has(li)) { display: none; }
.content .service_descr li { padding-bottom: 6px; }
.content .service_descr hr { height: 1px; margin: 12px 0 14px; border: 0; background: #e1eaf7; color: transparent; }
.content .service_descr p { margin: 0 0 8px; }
/* адреса сервис-центров — синие плашки, не переносятся по частям */
.content .service_descr p strong { display: inline-block; max-width: 100%; box-sizing: border-box; padding: 1px 9px; border-radius: 8px; background: #e8f1ff; color: #1346aa; font-weight: 700; }   /* без nowrap: на узком телефоне плашка «Раменском (Чугунова, д. 18Б)» вылезала; адрес не рвётся — .addr-nw */
.content .service_descr p strong a { color: inherit; text-decoration: none; }
.content .service_descr p strong a:hover { text-decoration: underline; }

/* ---------- «Отзывы покупателей» на странице «О компании» (#otzyv): видео — карточки в две колонки ---------- */
.content .zag_otzyv {
	position: relative;
	clear: both;
	margin: 30px 0 14px;
	padding: 0 0 0 14px;
	background: none;
	color: #071c55;
	font-size: 19px;
	font-weight: 700;
	line-height: 1.3;
	text-align: left;
}
.content .zag_otzyv::before { content: ""; position: absolute; left: 0; top: 2px; bottom: 2px; width: 4px; border-radius: 2px; background: linear-gradient(180deg, #00b4ff 0%, #1346aa 100%); box-shadow: 0 0 6px rgba(0, 170, 255, .5); }
.content .vivod_otz { display: grid; grid-template-columns: repeat(auto-fill, minmax(240px, 1fr)); gap: 14px; }
.content .vivod_otz .otzyv_video2 {
	float: none;
	width: auto;
	height: auto;
	margin: 0;
	padding: 0 0 12px;
	border: 1px solid #dde6f5;
	border-radius: 14px;
	background: #fff;
	box-shadow: 0 2px 8px rgba(14, 49, 132, .06);
	overflow: hidden;
	text-align: left;
}
.content .vivod_otz .otzyv_video2 iframe { display: block; width: 100%; height: auto; aspect-ratio: 16 / 9; border: 0; border-radius: 0; box-shadow: none; }
.content .vivod_otz .otzyv_video2 p { margin: 0; padding: 10px 12px 0; color: #3b4a66; font-size: 13px; line-height: 1.4; }
.content table.sobrat td:not(.td):not(.cen) { text-align: left; line-height: 1.8; }
.content table.sobrat :is(input, textarea) { text-align: left; }

/* ---------- Фильтр по цене в каталогах «под заказ» (/na_zakaz_products): поля и «сбросить» в стиле сайта ---------- */
@media (min-width: 768px) {
	.content .formCost .label1 { color: #3b4a66; font-size: 13px; font-weight: 600; }
	.content .formCost input {
		box-sizing: border-box;
		width: 84px;
		height: 30px;
		margin: 0 6px;
		padding: 0 8px;
		border: 1px solid #c9d6ee;
		border-radius: 8px;
		background: #fff;
		color: #071c55;
		font-size: 13px;
		transition: border-color .15s, box-shadow .15s;
	}
	.content .formCost input:focus { outline: 0; border-color: #1f6fe0; box-shadow: 0 0 0 3px rgba(31, 111, 224, .15); }
	.content .sbros_fil { width: auto; line-height: 30px; }
	.content .sbros_fil a {
		display: inline-block;
		width: 26px;
		height: 26px;
		margin-top: 2px;
		border-radius: 50%;
		background: #eef4ff;
		box-shadow: inset 0 0 0 1px #c9d8f5;
		color: #1346aa;
		font-size: 12px;
		line-height: 26px;
		text-align: center;
		text-decoration: none;
	}
	.content .sbros_fil a:hover { background: #e0283a; box-shadow: none; color: #fff; }
	.content .tpl > .checkbox { color: #3b4a66; font-size: 13px; }
	.content .tpl > .checkbox input { accent-color: #1346aa; vertical-align: -2px; }
}

/* ---------- Телефон: поправки к новым карточкам внутренних страниц ---------- */
@media (max-width: 767px) {
	/* магазины на /catalogs — фото сверху во всю ширину, текст под ним */
	.m-ready .content .borderrr { margin: 0 0 12px; border-width: 1px; }
	.m-ready .content .borderrr table,
	.m-ready .content .borderrr table tbody,
	.m-ready .content .borderrr table tr,
	.m-ready .content .borderrr table td { display: block; width: auto; }
	.m-ready .content .borderrr table td.img { width: auto; height: auto; }
	.m-ready .content .borderrr table td.img img { width: 100% !important; height: 150px !important; }
	.m-ready .content .borderrr table td.td { padding: 12px 14px 14px; }
	.m-ready .content .borderrr table td.td p:has(> a) + p:has(> a) a { font-size: 18px; }
	.m-ready .content .borderrr table td.td::after { float: none; display: inline-block; margin: 10px 0 0 8px; }
	.m-ready .content .borderrr table td.td p[align] { font-size: 12px !important; }
	/* заголовки и плашки в текстах — чуть компактнее */
	.m-ready .content .tx-h { font-size: 17px !important; }
	.m-ready .content .tx-h3 { font-size: 15.5px !important; }
	.m-ready .content :is(.marimg, .n_text, .pol_info > div) { font-size: 15px; }
	.m-ready .content :is(.marimg, .n_text, .pol_info > div) img[style*="float" i],
	.m-ready .content :is(.marimg, .n_text, .pol_info > div) img[align] { float: none !important; display: block; margin: 6px auto 12px !important; }
	.m-ready .content .pol_info > div:not(.title) { padding: 12px 14px 4px; }
	.m-ready .content .pol_info > .title { padding: 12px 14px; font-size: 16px; }
	.m-ready .content .zakaz_nix .pyatnica { margin: 4px 0 14px; }
	.m-ready .content .cat_service { grid-template-columns: 1fr; }
	.m-ready .content .service_descr { margin: 18px 0 8px; padding: 46px 16px 12px; font-size: 15px; }
	.m-ready .content .service_descr::before { top: 14px; left: 16px; }
	.m-ready .content .vivod_otz { grid-template-columns: 1fr; }
	.m-ready .content table.tx-table td { padding: 6px 8px !important; font-size: 13px !important; }
}
.content table.sobrat :is(.inp2, .textarea) label { right: 12px; height: 18px; line-height: 18px; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }

/* Счётчик товаров на значке корзины в шапке (компьютер; ставит cartBadge() в banner.js) — красный кружок, как в мобильной версии */
.shapka .menu table .kor .minkor { position: relative; z-index: 5; }   /* над рожками робота из баннера (banner.css) */
.shapka .menu table .kor .minkor a.ct-num,
.shapka .menu table .kor .minkor a.ct-num:visited {
	position: absolute;
	z-index: 2;
	top: -2px;
	right: 6px;   /* значок: top 4px, right 12px — кружок заходит на его правый верхний угол */
	min-width: 20px;
	height: 20px;
	box-sizing: border-box;
	padding: 0 5px;
	border-radius: 10px;
	background: #e30613;
	box-shadow: 0 0 0 2px #0a2468, 0 2px 6px rgba(227, 6, 19, .5);
	color: #fff;
	font: 700 11px/20px Arial, sans-serif !important;
	text-align: center;
	text-decoration: none;
}
.shapka .menu table .kor .minkor a.ct-num:hover { color: #fff; text-decoration: none; text-shadow: none; }

/* ---------- Товар под заказ (/products_z): плашка «под заказ», артикул, «Товара временно нет», «Оповестить меня» ----------
   (компьютер и телефон; старые стили сайта: красная плашка, голубой/зелёный блок, красная кнопка с <br>) */
.content .tovars .tovar_na_zakaz { padding: 12px 0 6px; line-height: 1; }
.content .tovars .tovar_na_zakaz span {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	padding: 6px 12px 6px 10px;
	border: 0;
	border-radius: 999px;
	background: linear-gradient(180deg, #ef4a55 0%, #d42d39 100%);
	box-shadow: 0 4px 12px rgba(212, 45, 57, .3);
	color: #fff;
	font-size: 12.5px;
	font-weight: 700;
	letter-spacing: .04em;
	line-height: 1.2;
}
.content .tovars .tovar_na_zakaz span::before {   /* грузовик */
	content: "";
	width: 16px;
	height: 16px;
	background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M2 6h11v10H2zM13 9h4l4 4v3h-8'/%3E%3Ccircle cx='6.5' cy='17.5' r='1.8'/%3E%3Ccircle cx='17' cy='17.5' r='1.8'/%3E%3C/svg%3E") center / contain no-repeat;
}
.content .tovars .zakaz_art { padding: 4px 0 0; color: #5b6880; font-size: 13.5px; line-height: 1.4; }
.content .tovars .zakaz_art a { color: #1346aa; font-weight: 600; }

/* «Товара временно нет под заказ» + «Последний раз … был доступен …» — синяя карточка с часами */
.content .tovars td.kupit .kolvo.vremenno_net {
	position: relative;
	display: block;
	box-sizing: border-box;
	width: auto !important;
	margin: 12px 0 0 !important;
	padding: 12px 14px 12px 50px !important;
	border: 1px solid #c9d8f5;
	border-radius: 12px;
	background: #eef4ff;
	color: #071c55;
	text-align: left;
	font-size: 15px;
	line-height: 1.35;
}
.content .tovars td.kupit .kolvo.vremenno_net::before {
	content: "";
	position: absolute;
	left: 12px;
	top: 12px;
	width: 28px;
	height: 28px;
	border-radius: 50%;
	background: #1346aa url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='2.2' stroke-linecap='round'%3E%3Ccircle cx='12' cy='12' r='8'/%3E%3Cpath d='M12 8v4l2.5 2'/%3E%3C/svg%3E") center / 18px no-repeat;
	box-shadow: none;
}
.content .tovars td.kupit .kolvo.vremenno_net p { display: block; margin: 0; padding: 0; color: inherit; font: inherit; text-align: left; }
.content .tovars td.kupit .kolvo.vremenno_net p:first-child { font-weight: 700; }
.content .tovars td.kupit .kolvo.vremenno_net p + p::before,
.content .tovars td.kupit .kolvo.vremenno_net p:first-child::before { content: none !important; }   /* точки «в наличии» и разделители — у этой карточки свой значок */
.content .tovars td.kupit .kolvo.vremenno_net p:not(:first-child):not(:last-child) { display: none; }   /* пустой <p>&nbsp;</p> */
.content .tovars td.kupit .kolvo.vremenno_net p:last-child:not(:first-child) { margin-top: 3px; color: #5b6880; font-size: 13px; font-weight: 400; }

/* «Оповестить меня о поступлении товара на e-mail» — главная кнопка, раз купить нельзя: синяя, с конвертом, без переноса <br> */
.content .tovars td.kupit .buy2 a,
.m-ready .content .tovars td.kupit .buy2 a {
	gap: 10px;
	height: auto !important;
	min-height: 50px;
	padding: 10px 16px !important;
	background: linear-gradient(180deg, #1a55c4 0%, #0e3184 100%) !important;
	box-shadow: 0 0 0 1px rgba(0, 180, 255, .45), 0 6px 16px rgba(0, 90, 220, .28) !important;
	font-size: 15px !important;
	line-height: 1.25 !important;
	text-align: left;
}
.content .tovars td.kupit .buy2 a br { display: none; }
.content .tovars td.kupit .buy2 a::before {
	content: "";
	flex: none;
	width: 22px;
	height: 22px;
	background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9a6 6 0 0 1 12 0c0 6 2.5 7.5 2.5 7.5h-17S6 15 6 9'/%3E%3Cpath d='M10.3 20a1.9 1.9 0 0 0 3.4 0'/%3E%3C/svg%3E") center / contain no-repeat;
}
@media (max-width: 767px) {
	.m-ready .content .tovars .tovar_na_zakaz { padding: 14px 0 4px; text-align: center; }
	.m-ready .content .tovars .zakaz_art { text-align: center; }
	/* iPhone сам делает номер артикула ссылкой «позвонить»; ссылки в td.bigimages — блоки с line-height: 0 (mobile.css),
	   из-за этого номер наезжал на «Артикул:». Оставляем строкой текста и без звонка по нажатию */
	.m-ready .content .tovars .zakaz_art a { display: inline; line-height: inherit; font-size: inherit; text-decoration: none; pointer-events: none; }
	.m-ready .content .tovars td.kupit .kolvo.vremenno_net p + p::before { content: none !important; }
}

/* «Бесплатная доставка в магазины "Байт"…» — строка с зелёным значком магазина; «Способы доставки и оплаты» — светлая кнопка
   на всю ширину карточки (грузовик + стрелка). Три <br> между ними прячем. Компьютер и телефон. */
.content .tovars td.kupit .vni_cena,
.m-ready .content .tovars td.kupit .vni_cena {
	position: relative;
	margin: 14px 0 0 !important;
	padding: 1px 0 0 30px !important;
	color: #3b4a66;
	font-size: 13.5px;
	line-height: 1.4;
	text-align: left;
}
.content .tovars td.kupit .vni_cena::before {
	content: "";
	position: absolute;
	left: 0;
	top: 0;
	width: 22px;
	height: 22px;
	border-radius: 50%;
	background: #e8f8ef url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2323a04a' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 10v10h16V10M3 10l2-6h14l2 6zM10 20v-5h4v5'/%3E%3C/svg%3E") center / 14px no-repeat;
}
.content .tovars td.kupit .vni_cena br { display: none; }
.content .tovars td.kupit .vni_cena.vc-empty,
.m-ready .content .tovars td.kupit .vni_cena.vc-empty { padding: 0 !important; }
.content .tovars td.kupit .vni_cena.vc-empty::before { content: none; }
.content .tovars td.kupit .vni_cena.vc-empty a,
.m-ready .content .tovars td.kupit .vni_cena.vc-empty a { margin: 0; }
.content .tovars td.kupit .vni_cena a,
.m-ready .content .tovars td.kupit .vni_cena a {
	display: flex;
	align-items: center;
	gap: 10px;
	margin: 12px 0 0 -30px;
	padding: 10px 12px;
	border-radius: 10px;
	background: #eef4ff;
	box-shadow: inset 0 0 0 1px #c9d8f5;
	color: #1346aa;
	font-size: 14px;
	font-weight: 600;
	line-height: 1.2;
	text-decoration: none;
	transition: background-color .15s, box-shadow .15s, color .15s;
}
.content .tovars td.kupit .vni_cena a::before {
	content: "";
	flex: none;
	width: 20px;
	height: 20px;
	background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231346aa' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M2 6h11v10H2zM13 9h4l4 4v3h-8'/%3E%3Ccircle cx='6.5' cy='17.5' r='1.8'/%3E%3Ccircle cx='17' cy='17.5' r='1.8'/%3E%3C/svg%3E") center / contain no-repeat;
}
.content .tovars td.kupit .vni_cena a::after { content: "\2192"; margin-left: auto; font-size: 16px; transition: transform .15s; }
.content .tovars td.kupit .vni_cena a span { flex: 1; border: 0; color: inherit; text-decoration: none; }
.content .tovars td.kupit .vni_cena a:hover { background: #1346aa; box-shadow: inset 0 0 0 1px #1346aa, 0 0 10px rgba(0, 160, 255, .45); color: #fff; }
.content .tovars td.kupit .vni_cena a:hover::before { filter: brightness(0) invert(1); }
.content .tovars td.kupit .vni_cena a:hover::after { transform: translateX(3px); }

/* компьютер: «есть под заказ» на странице товара под заказ — оранжевым (сайт ставит класс in_stock, как у товара в наличии) */
@media (min-width: 768px) {
	.content .tovars:has(.tovar_na_zakaz) td.kupit .kolvo.in_stock:not(.vremenno_net) { background: #fff6e5; color: #8a5a00; }
	.content .tovars:has(.tovar_na_zakaz) td.kupit .kolvo.in_stock:not(.vremenno_net) p:first-child::before { background: #f29b18; box-shadow: 0 0 0 3px rgba(242, 155, 24, .2); }
	/* «есть под заказ» и «срок доставки уточняйте» — два предложения, каждое своей строкой (второе — вровень с текстом после точки) */
	.content .tovars:has(.tovar_na_zakaz) td.kupit .kolvo.in_stock:not(.vremenno_net) p { display: block; }
	.content .tovars:has(.tovar_na_zakaz) td.kupit .kolvo.in_stock:not(.vremenno_net) p + p { margin-top: 2px; padding-left: 15px; }
	.content .tovars:has(.tovar_na_zakaz) td.kupit .kolvo.in_stock:not(.vremenno_net) p + p::before { content: none; }
	.content .tovars td.kupit .pay-methods .pay-chip.pay-cash { font-size: 10.5px; letter-spacing: -.02em; }   /* «Наличные» вылезало из узкой плашки */
}

/* ---------- «Карта сайта» (/maps; разметку строит sitemap() в banner.js) ----------
   Страницы — три карточки-группы, каталоги — переключатель магазинов и разделы-карточки (<details>), подразделы — таблетки.
   Старая таблица в 4 колонки остаётся запасным видом, если скрипт не сработал. */
html.sm-ready .content .tpl > table:has(ul.maps) { display: none; }
.content .sm { margin: 4px 20px 26px; color: #1d2433; text-align: left; }
.content .sm svg { width: 18px; height: 18px; fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
.content .sm a { text-decoration: none; }
.content .sm .sm-title {
	display: flex;
	align-items: center;
	gap: 10px;
	margin: 20px 0 12px;
	padding: 0;
	color: #071c55;
	font-size: 19px;
	font-weight: 800;
	line-height: 1.25;
}
.content .sm .sm-title:first-child { margin-top: 6px; }
.content .sm .sm-title::before { content: ""; flex: none; width: 4px; height: 20px; border-radius: 2px; background: linear-gradient(180deg, #00b4ff 0%, #1346aa 100%); box-shadow: 0 0 6px rgba(0, 170, 255, .5); }
/* синий кружок со значком (группы страниц, магазины) */
.content .sm .sm-ico {
	flex: none;
	display: grid;
	place-items: center;
	width: 32px;
	height: 32px;
	border-radius: 50%;
	background: linear-gradient(135deg, #1a55c4 0%, #0e3184 100%);
	box-shadow: 0 0 0 3px rgba(0, 180, 255, .18);
	color: #fff;
}

/* 1) Страницы сайта: три колонки-карточки */
.content .sm-pages { columns: 2; column-gap: 12px; }   /* две колонки без дыр: «Товары» + «Ремонт» | «Скупка» + «О компании» */
.content .sm-pages > .sm-group { break-inside: avoid; margin: 0 0 12px; }
.content .sm-group {
	padding: 0 0 6px;
	border: 1px solid #dde6f5;
	border-radius: 14px;
	background: #fff;
	box-shadow: 0 2px 8px rgba(14, 49, 132, .06);
	overflow: hidden;
}
.content .sm-group h3 {
	display: flex;
	align-items: center;
	gap: 10px;
	margin: 0;
	padding: 11px 14px;
	border-bottom: 1px solid #e6ecf6;
	background: linear-gradient(180deg, #f6f9ff 0%, #edf3fe 100%);
	color: #071c55;
	font-size: 15.5px;
	font-weight: 700;
}
.content .sm-group ul { margin: 0; padding: 6px; list-style: none; }
.content .sm-group li { margin: 0; padding: 0; list-style: none; }
.content .sm .sm-group li a {   /* поверх общих правил ссылок ниже */ align-items: flex-start; padding: 7px 10px; }
.content .sm .sm-group li a::before { margin-top: 6px; }
.content .sm-group li b { display: block; font-weight: 600; }
.content .sm-group li small { display: block; margin-top: 1px; color: #5a6b8c; font-size: 12.5px; line-height: 1.35; }
.content .sm-group li a:hover small { color: #3b4a66; }
/* ссылка со стрелкой-шевроном: страницы и разделы каталога */
.content .sm-group li a,
.content .sm-body li > a {
	display: flex;
	align-items: center;
	gap: 8px;
	padding: 7px 8px;
	border-radius: 8px;
	color: #1346aa;
	font-size: 14px;
	line-height: 1.3;
	transition: background-color .15s, color .15s;
}
.content .sm-group li a::before,
.content .sm-body li > a::before {
	content: "";
	flex: none;
	width: 6px;
	height: 6px;
	border: solid #7fa3e6;
	border-width: 2px 2px 0 0;
	transform: rotate(45deg);
	transition: border-color .15s;
}
.content .sm-group li a:hover,
.content .sm-body li > a:hover { background: #e6efff; color: #0e3184; }
.content .sm-group li a:hover::before,
.content .sm-body li > a:hover::before { border-color: #00a6ee; }

/* 2) Каталоги: магазины — вкладки-кнопки */
.content .sm-tabs { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; margin: 0 0 14px; }
.content .sm-tab {
	display: flex;
	align-items: center;
	gap: 10px;
	min-width: 0;
	margin: 0;
	padding: 10px 12px;
	border: 1px solid #c9d8f5;
	border-radius: 14px;
	background: #f4f8ff;
	color: #071c55;
	font-size: 15px;
	font-weight: 700;
	line-height: 1.2;
	text-align: left;
	cursor: pointer;
	transition: background-color .15s, border-color .15s, box-shadow .15s;
}
.content .sm-tab > span:last-child { min-width: 0; }
.content .sm-tab small { display: block; margin-bottom: 2px; color: #5a6b8c; font-size: 12px; font-weight: 400; }
.content .sm-tab .sm-ico { width: 30px; height: 30px; background: #dfe9fb; box-shadow: none; color: #1346aa; }
.content .sm-tab:hover { border-color: #7fb0f0; background: #eaf2ff; }
.content .sm-tab:focus-visible { outline: 2px solid #00b4ff; outline-offset: 2px; }
.content .sm-tab[aria-selected="true"] {
	border-color: #0e3184;
	background: linear-gradient(135deg, #1a55c4 0%, #0e3184 70%, #0a2468 100%);
	box-shadow: inset 0 -2px 0 #00b4ff, 0 4px 14px rgba(14, 49, 132, .25);
	color: #fff;
}
.content .sm-tab[aria-selected="true"] small { color: #a9c8ff; }
.content .sm-tab[aria-selected="true"] .sm-ico { background: rgba(255, 255, 255, .16); color: #fff; }
.content .sm-shop[hidden] { display: none; }

/* «Каталог магазина …» — ссылка-полоса над разделами */
.content a.sm-open {
	display: flex;
	align-items: center;
	gap: 12px;
	margin: 0 0 12px;
	padding: 11px 14px;
	border: 1px solid #c9d8f5;
	border-radius: 14px;
	background: linear-gradient(120deg, #eef4ff 0%, #f7fbff 100%);
	color: #1346aa;
	font-size: 13px;
	transition: border-color .15s, box-shadow .15s;
}
.content a.sm-open b { display: block; color: #071c55; font-size: 16px; }
.content .sm i { flex: none; display: grid; place-items: center; width: 32px; height: 32px; margin-left: auto; border-radius: 50%; background: #e1ebfd; color: #1346aa; font-style: normal; transition: transform .15s, background-color .15s, color .15s; }
.content a.sm-open:hover { border-color: #7fb0f0; box-shadow: 0 4px 14px rgba(14, 49, 132, .1); }
.content a.sm-open:hover i,
.content a.sm-cat-solo:hover i { transform: translateX(3px); background: #00b4ff; color: #fff; }

/* Раздел каталога — карточка; заголовок раскрывает список */
.content .sm-cat {
	display: block;
	margin: 0 0 10px;
	border: 1px solid #dde6f5;
	border-radius: 14px;
	background: #fff;
	box-shadow: 0 2px 8px rgba(14, 49, 132, .06);
	overflow: hidden;
}
.content .sm-cat > summary,
.content a.sm-cat-solo {
	display: flex;
	align-items: center;
	gap: 10px;
	padding: 10px 12px 10px 16px;
	background: linear-gradient(180deg, #f6f9ff 0%, #edf3fe 100%);
	color: #071c55;
	font-size: 16px;
	font-weight: 700;
	line-height: 1.3;
	list-style: none;
	cursor: pointer;
	user-select: none;
}
.content .sm-cat > summary::-webkit-details-marker { display: none; }
.content .sm-cat > summary::before,
.content a.sm-cat-solo::before { content: ""; flex: none; width: 4px; height: 18px; border-radius: 2px; background: linear-gradient(180deg, #00b4ff 0%, #1346aa 100%); box-shadow: 0 0 6px rgba(0, 170, 255, .5); }
.content .sm-cat > summary small { color: #5a6b8c; font-size: 12.5px; font-weight: 400; white-space: nowrap; }
.content .sm-cat > summary i { margin-left: auto; }
.content .sm-cat > summary i::before { content: ""; width: 7px; height: 7px; margin-top: -3px; border: solid currentColor; border-width: 0 2px 2px 0; transform: rotate(45deg); transition: transform .2s; }
.content .sm-cat[open] > summary { border-bottom: 1px solid #e6ecf6; }
.content .sm-cat[open] > summary i::before { margin: 3px 0 0; transform: rotate(-135deg); }
.content .sm-cat > summary:hover i { background: #00b4ff; color: #fff; }
.content .sm-cat > summary:focus-visible { outline: 2px solid #00b4ff; outline-offset: -2px; }
.content a.sm-cat-solo:hover { color: #1346aa; }

.content .sm-body { padding: 8px 10px 10px; }
.content .sm-body a.sm-all {
	display: inline-flex;
	margin: 2px 0 6px 4px;
	padding: 5px 12px;
	border-radius: 999px;
	background: #1346aa;
	color: #fff;
	font-size: 13px;
	font-weight: 600;
	transition: background-color .15s;
}
.content .sm-body a.sm-all::after { content: "\2192"; margin-left: 6px; }
.content .sm-body a.sm-all:hover { background: #0e3184; }
.content .sm-body ul { margin: 0; padding: 0; list-style: none; columns: 2; column-gap: 12px; }
.content .sm-body li { margin: 0; padding: 0; list-style: none; break-inside: avoid; }
/* подразделы (3-й уровень) — таблетки под разделом */
.content .sm-chips { display: flex; flex-wrap: wrap; gap: 5px; margin: 0 0 6px 22px; }
.content .sm-chips a {
	padding: 3px 10px;
	border: 1px solid #c9d8f5;
	border-radius: 999px;
	background: #eef4ff;
	color: #1346aa;
	font-size: 12.5px;
	line-height: 1.35;
	transition: background-color .15s, border-color .15s, color .15s;
}
.content .sm-chips a:hover { border-color: #00b4ff; background: #00b4ff; color: #06215e; }
@media (prefers-reduced-motion: reduce) {
	.content .sm *, .content .sm *::before { transition: none !important; }
}

/* Карта сайта на телефоне: всё в одну колонку, магазины — вкладки друг под другом компактнее */
@media (max-width: 767px) {
	.m-ready .content .sm { margin: 0 -10px 20px; }   /* у .tpl на телефоне поля по 20px — карточкам нужно место пошире */
	.m-ready .content .sm .sm-title { margin: 18px 0 10px; font-size: 18px; }
	.m-ready .content .sm-pages { columns: 1; }
	.m-ready .content .sm-pages > .sm-group { margin-bottom: 10px; }
	.m-ready .content .sm-group li a,
	.m-ready .content .sm-body li > a { padding: 9px 8px; font-size: 15px; }   /* пальцем попадать легче */
	.m-ready .content .sm-tabs { gap: 6px; }   /* три магазина в ряд, без значков */
	.m-ready .content .sm-tab { justify-content: center; padding: 8px 4px; border-radius: 12px; font-size: 13.5px; text-align: center; }
	.m-ready .content .sm-tab .sm-ico { display: none; }
	.m-ready .content .sm-tab small { font-size: 11px; }
	/* узкие телефоны: «Чугунова 18Б» одним куском (номер дома не переносится) — шрифт и отступы меньше, чтобы влезало */
	@media (max-width: 380px) {
		.m-ready .content .sm-tabs { gap: 4px; }
		.m-ready .content .sm-tab { padding: 8px 2px; font-size: 12px; letter-spacing: -.01em; }
	}
	.m-ready .content .sm-body ul { columns: 1; }
	.m-ready .content .sm-cat > summary,
	.m-ready .content a.sm-cat-solo { padding: 11px 10px 11px 14px; font-size: 15.5px; }
	.m-ready .content .sm-chips { margin-left: 22px; }
	.m-ready .content .sm-chips a { padding: 5px 11px; font-size: 13px; }
}

/* ---------- «Компьютеры БАЙТ» (/komputer_bawt; разметку строит computers() в banner.js) ----------
   Тёмная карточка-шапка в цветах баннера, «10 причин» — карточки со значками в две колонки, «Смотрите также» — плитки. */
.content .marimg .kb-hero {
	position: relative;
	margin: 4px 0 24px;
	padding: 24px 26px 22px;
	border-radius: 18px;
	background:
		radial-gradient(ellipse 60% 90% at 100% 0%, rgba(0, 180, 255, .28) 0, rgba(0, 180, 255, 0) 70%),
		radial-gradient(ellipse 40% 70% at 0% 100%, rgba(40, 90, 255, .3) 0, rgba(40, 90, 255, 0) 100%),
		linear-gradient(160deg, #0c2c77 0%, #071c55 100%);
	box-shadow: 0 0 0 1px rgba(0, 180, 255, .45), 0 8px 26px rgba(7, 28, 85, .35);
	color: #dce8ff;
	text-align: left;
	overflow: hidden;
}
.content .marimg .kb-hero svg,
.content .marimg .kb-reasons svg,
.content .marimg .kb-note svg,
.content .marimg .kb-links svg { fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.content .marimg .kb-eyebrow { margin: 0 0 4px; color: #7fd4ff; font-size: 13px; font-weight: 600; letter-spacing: .04em; text-transform: uppercase; }
.content .marimg .kb-hero h2 { margin: 0 0 12px; color: #fff; font-size: 28px; font-weight: 800; line-height: 1.15; text-shadow: 0 0 18px rgba(0, 180, 255, .45); }
.content .marimg .kb-lead { margin: 0 0 8px; color: #dce8ff; font-size: 15px; }
.content .marimg .kb-places { display: flex; flex-wrap: wrap; gap: 6px; margin: 0 0 18px; padding: 0; list-style: none; }
.content .marimg .kb-places li {
	display: inline-flex;
	align-items: center;
	gap: 5px;
	margin: 0;
	padding: 4px 11px 4px 8px;
	border: 1px solid rgba(127, 212, 255, .35);
	border-radius: 999px;
	background: rgba(255, 255, 255, .08);
	color: #fff;
	font-size: 13px;
	line-height: 1.2;
	list-style: none;
}
.content .marimg .kb-places svg { width: 14px; height: 14px; color: #7fd4ff; }
.content .marimg .kb-facts { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; margin: 0; padding: 0; list-style: none; }
.content .marimg .kb-facts li {
	display: flex;
	align-items: center;
	gap: 10px;
	margin: 0;
	padding: 11px 12px;
	border: 1px solid rgba(0, 180, 255, .35);
	border-radius: 12px;
	background: rgba(4, 16, 54, .45);
	color: #fff;
	font-size: 13.5px;
	font-weight: 700;
	line-height: 1.25;
	list-style: none;
	hyphens: auto;   /* длинное слово («Производитель») переносится с дефисом, а не вылезает за рамку */
	-webkit-hyphens: auto;
	overflow-wrap: anywhere;
}
.content .marimg .kb-facts svg { width: 24px; height: 24px; flex: none; color: #00b4ff; filter: drop-shadow(0 0 4px rgba(0, 180, 255, .6)); }
.content .marimg .kb-places li::before, .content .marimg .kb-facts li::before,
.content .marimg .kb-reasons > li::before { content: none; display: none; }
.content .marimg .kb-actions { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 18px; }
.content .marimg .kb-hero a.tx-btn { text-decoration: none !important; }   /* на телефоне главная кнопка оказывалась подчёркнутой */
.content .marimg .kb-hero a.tx-btn::after { content: none; }   /* кнопки в шапке — без стрелки */
.content .marimg .kb-hero a.tx-btn.kb-btn-main { background: linear-gradient(180deg, #19c1ff 0%, #0090e0 100%); box-shadow: 0 0 0 1px rgba(127, 212, 255, .7), 0 4px 16px rgba(0, 170, 255, .45); color: #04163f; }
.content .marimg .kb-hero a.tx-btn.tx-btn-light { background: rgba(255, 255, 255, .1); box-shadow: inset 0 0 0 1px rgba(127, 212, 255, .5); color: #fff; }
.content .marimg .kb-hero a.tx-btn.tx-btn-light:hover { background: rgba(255, 255, 255, .2); }

/* заголовки «10 причин…», «Смотрите также» — как заголовки карты сайта */
.content .marimg h2.kb-h {
	display: flex;
	align-items: center;
	gap: 10px;
	margin: 0 0 14px;
	padding: 0;
	color: #071c55;
	font-size: 21px;
	font-weight: 800;
	line-height: 1.25;
	text-align: left;
}
.content .marimg h2.kb-h::before { content: ""; flex: none; width: 4px; height: 22px; border-radius: 2px; background: linear-gradient(180deg, #00b4ff 0%, #1346aa 100%); box-shadow: 0 0 6px rgba(0, 170, 255, .5); }

/* причины: колонки, чтобы длинные и короткие карточки не оставляли дыр */
.content .marimg .kb-reasons { columns: 2; column-gap: 14px; margin: 0 0 10px; padding: 0; list-style: none; }
.content .marimg .kb-reason {
	display: inline-block;   /* break-inside в колонках надёжнее у inline-block */
	box-sizing: border-box;
	width: 100%;
	margin: 0 0 14px;
	padding: 16px 18px 6px;
	border: 1px solid #dde6f5;
	border-radius: 16px;
	background: #fff;
	box-shadow: 0 2px 10px rgba(14, 49, 132, .07);
	break-inside: avoid;
	list-style: none;
	text-align: left;
	transition: border-color .2s, box-shadow .2s;
}
.content .marimg .kb-reason:hover { border-color: #9fc0f5; box-shadow: 0 6px 18px rgba(14, 49, 132, .12); }
.content .marimg .kb-r-head { display: flex; align-items: center; gap: 12px; margin: 0 0 10px; }
.content .marimg .kb-r-ico {
	position: relative;
	flex: none;
	display: grid;
	place-items: center;
	width: 44px;
	height: 44px;
	border-radius: 12px;
	background: linear-gradient(135deg, #1a55c4 0%, #0e3184 100%);
	box-shadow: inset 0 -2px 0 #00b4ff, 0 4px 10px rgba(14, 49, 132, .25);
	color: #fff;
}
.content .marimg .kb-r-ico svg { width: 24px; height: 24px; }
.content .marimg .kb-r-ico b {
	position: absolute;
	right: -7px;
	top: -7px;
	min-width: 20px;
	height: 20px;
	padding: 0 4px;
	box-sizing: border-box;
	border: 2px solid #fff;
	border-radius: 999px;
	background: #00b4ff;
	color: #04163f;
	font-size: 11px;
	font-weight: 800;
	line-height: 16px;
	text-align: center;
}
.content .marimg .kb-reason h3 { margin: 0; color: #071c55; font-size: 16px; font-weight: 700; line-height: 1.3; }
.content .marimg .kb-reason p { margin: 0 0 10px; color: #2b3650; font-size: 14px; line-height: 1.55; text-indent: 0; }

/* «Оплату можно произвести по безналичному расчету…» */
.content .marimg p.kb-note {
	display: flex;
	align-items: center;
	gap: 12px;
	margin: 4px 0 24px;
	padding: 14px 18px;
	border: 1px solid #c9d8f5;
	border-radius: 14px;
	background: linear-gradient(120deg, #eef4ff 0%, #f7fbff 100%);
	color: #071c55;
	font-size: 15px;
	font-weight: 600;
	text-align: left;
	text-indent: 0;
}
.content .marimg .kb-note-ico { flex: none; display: grid; place-items: center; width: 38px; height: 38px; border-radius: 50%; background: #1346aa; color: #fff; }
.content .marimg .kb-note-ico svg { width: 20px; height: 20px; }

/* «Смотрите также» — плитки */
.content .marimg .kb-links { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; margin: 0 0 10px; }
.content .marimg a.kb-link,
.content .marimg a.kb-link:visited {
	display: flex;
	align-items: center;
	gap: 12px;
	padding: 12px 14px;
	border: 1px solid #dde6f5;
	border-radius: 14px;
	background: #fff;
	box-shadow: 0 2px 8px rgba(14, 49, 132, .06);
	color: #071c55;
	text-align: left;
	text-decoration: none;
	transition: border-color .15s, box-shadow .15s, transform .15s;
}
.content .marimg a.kb-link:last-child:nth-child(odd) { grid-column: 1 / -1; }   /* нечётная последняя плитка — во всю ширину */
.content .marimg a.kb-link:hover { border-color: #7fb0f0; box-shadow: 0 6px 16px rgba(14, 49, 132, .12); transform: translateY(-1px); }
.content .marimg .kb-l-ico { flex: none; display: grid; place-items: center; width: 38px; height: 38px; border-radius: 10px; background: #e1ebfd; color: #1346aa; transition: background-color .15s, color .15s; }
.content .marimg .kb-l-ico svg { width: 20px; height: 20px; }
.content .marimg a.kb-link:hover .kb-l-ico { background: #00b4ff; color: #fff; }
.content .marimg .kb-l-text b { display: block; font-size: 15px; font-weight: 700; line-height: 1.3; }
.content .marimg .kb-l-text small { display: block; margin-top: 2px; color: #5a6b8c; font-size: 12.5px; line-height: 1.4; }
@media (prefers-reduced-motion: reduce) {
	.content .marimg .kb-reason, .content .marimg a.kb-link, .content .marimg .kb-l-ico { transition: none; }
}

/* телефон */
@media (max-width: 767px) {
	.m-ready .content .marimg .kb-hero { margin: 0 0 20px; padding: 18px 16px 16px; border-radius: 16px; }
	.m-ready .content .marimg .kb-hero h2 { font-size: 24px; }
	.m-ready .content .marimg .kb-facts li { gap: 7px; padding: 10px 9px; font-size: 13px; }
	.m-ready .content .marimg .kb-facts svg { width: 20px; height: 20px; flex: none; }
	.m-ready .content .marimg .kb-actions a.tx-btn { flex: 1 1 100%; justify-content: center; }
	.m-ready .content .marimg h2.kb-h { font-size: 19px; }
	.m-ready .content .marimg .kb-reasons { columns: 1; }
	.m-ready .content .marimg .kb-reason { padding: 14px 14px 4px; }
	.m-ready .content .marimg p.kb-note { padding: 12px 14px; font-size: 14px; }
	.m-ready .content .marimg .kb-links { grid-template-columns: 1fr; }
}
@media (max-width: 359px) {
	.m-ready .content .marimg .kb-facts { grid-template-columns: 1fr; }   /* «Производитель» не помещается в половину узкого экрана */
}

/* ---------- «Собрать компьютер» (/sobrat_komputer; раскладывает buildPc() в banner.js) ----------
   Вводная карточка, шаги-карточки с номером, задачи — плитки-выбор, поля — подпись над полем в две колонки.
   Рамки и подсказки самих полей — общие правила форм выше (:is(table.sobrat, .sb)). */
.content .sb svg { fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.content .sb-intro {
	margin: 2px 0 18px;
	padding: 18px 20px;
	border: 1px solid #c9d8f5;
	border-radius: 16px;
	background: linear-gradient(120deg, #eef4ff 0%, #f7fbff 100%);
	text-align: left;
}
.content .sb-intro > p { margin: 0 0 14px; padding: 0; color: #2b3650; font-size: 14.5px; line-height: 1.6; }
/* «Как это работает» — не кнопки: без плашек и теней, шаги с номером, соединены пунктиром; значки — синие линии на белом.
   Карточка .sb-intro стоит вне .sb, поэтому у значков свои fill/stroke (иначе iPhone заливал их чёрным). */
.content .sb-how-title { margin: 0 0 12px; padding: 14px 0 0; border-top: 1px solid #d6e2f6; color: #1346aa; font-size: 12px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; }
.content .sb-how { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 26px; margin: 0; padding: 0; list-style: none; }
.content .sb-how li { position: relative; display: flex; align-items: flex-start; gap: 10px; margin: 0; padding: 0; list-style: none; }
.content .sb-how li::before { content: none; }
.content .sb-how li + li::after {   /* пунктир от предыдущего шага */
	content: "";
	position: absolute;
	top: 19px;
	right: calc(100% + 10px);
	width: 12px;
	border-top: 2px dashed #a9c3ec;
}
.content .sb-how i {
	position: relative;
	flex: none;
	display: grid;
	place-items: center;
	width: 38px;
	height: 38px;
	box-sizing: border-box;
	border: 1.5px solid #b9cff2;
	border-radius: 12px;
	background: #fff;
	color: #1346aa;
	font-style: normal;
}
.content .sb-how i svg { width: 20px; height: 20px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.content .sb-how em {
	position: absolute;
	left: -7px;
	top: -7px;
	min-width: 17px;
	height: 17px;
	border-radius: 999px;
	background: #00b4ff;
	color: #fff;
	font-size: 10.5px;
	font-style: normal;
	font-weight: 800;
	line-height: 17px;
	text-align: center;
}
.content .sb-how span { padding-top: 1px; color: #5a6b8c; font-size: 12.5px; line-height: 1.35; }
.content .sb-how b { display: block; margin-bottom: 1px; color: #071c55; font-size: 13.5px; font-weight: 700; }

/* шаг */
.content .sb-step {
	margin: 0 0 14px;
	padding: 16px 18px 18px;
	border: 1px solid #dde6f5;
	border-radius: 16px;
	background: #fff;
	box-shadow: 0 2px 10px rgba(14, 49, 132, .07);
	text-align: left;
}
.content .sb-h { display: flex; align-items: center; gap: 10px; margin: 0; padding: 0; color: #071c55; font-size: 17px; font-weight: 800; line-height: 1.3; }
.content .sb-num {
	flex: none;
	display: grid;
	place-items: center;
	width: 30px;
	height: 30px;
	border-radius: 50%;
	background: linear-gradient(135deg, #1a55c4 0%, #0e3184 100%);
	box-shadow: 0 0 0 3px rgba(0, 180, 255, .18);
	color: #fff;
	font-size: 14px;
	font-weight: 800;
}
.content .sb-note { margin: 4px 0 0 40px; padding: 0; color: #5a6b8c; font-size: 13px; line-height: 1.4; }
.content .sb-step > .sb-h + :is(.sb-tasks, .sb-fields) { margin-top: 14px; }
.content .sb-note + :is(.sb-tasks, .sb-fields) { margin-top: 14px; }

/* задачи — плитки: весь блок кликабелен, выбранная подсвечена */
.content .sb-tasks { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; }
.content label.sb-task {
	position: relative;
	display: flex;
	flex-direction: column;
	gap: 10px;
	padding: 14px 14px 14px;
	border: 1.5px solid #dde6f5;
	border-radius: 14px;
	background: #f7faff;
	color: #1d2433;
	cursor: pointer;
	transition: border-color .15s, background-color .15s, box-shadow .15s;
}
.content label.sb-task input { position: absolute; opacity: 0; width: 1px; height: 1px; margin: 0; pointer-events: none; }
.content .sb-t-ico { display: grid; place-items: center; width: 42px; height: 42px; border-radius: 12px; background: #e1ebfd; color: #1346aa; transition: background-color .15s, color .15s; }
.content .sb-t-ico svg { width: 24px; height: 24px; }
.content .sb-t-text { font-size: 13.5px; font-weight: 600; line-height: 1.4; }
.content .sb-t-tick {
	position: absolute;
	right: 10px;
	top: 10px;
	display: grid;
	place-items: center;
	width: 22px;
	height: 22px;
	border: 1.5px solid #c9d6ee;
	border-radius: 50%;
	background: #fff;
	color: transparent;
	transition: background-color .15s, border-color .15s, color .15s;
}
.content .sb-t-tick svg { width: 14px; height: 14px; stroke-width: 3; }
.content label.sb-task:hover { border-color: #7fb0f0; background: #eef4ff; }
.content label.sb-task:has(input:focus-visible) { outline: 2px solid #00b4ff; outline-offset: 2px; }
.content label.sb-task:has(input:checked) { border-color: #1346aa; background: #eaf2ff; box-shadow: 0 4px 14px rgba(14, 49, 132, .14); }
.content label.sb-task:has(input:checked) .sb-t-ico { background: linear-gradient(135deg, #1a55c4 0%, #0e3184 100%); color: #fff; }
.content label.sb-task:has(input:checked) .sb-t-tick { border-color: #00a6ee; background: #00b4ff; color: #fff; }

/* поля: подпись над полем */
.content .sb-fields { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px 14px; }
.content .sb-field { min-width: 0; }
.content .sb-field.sb-wide { grid-column: 1 / -1; }
.content .sb-label { display: block; margin: 0 0 5px; color: #071c55; font-size: 13.5px; font-weight: 600; line-height: 1.35; }
.content .sb-label em { color: #e0283a; font-style: normal; }
.content .sb .input .inp2 input { width: 100%; }
.content .sb select.byselect { width: 100%; max-width: 100%; }
.content .sb .textarea .padding textarea { width: 100%; }

/* хвост таблицы: капча, «* — обязательные», «Отправить заявку» — последней карточкой */
.content table.sobrat.sb-final {
	display: block;
	margin: 0 0 6px;
	padding: 12px 14px;
	border: 1px solid #dde6f5;
	border-radius: 16px;
	background: #fff;
	box-shadow: 0 2px 10px rgba(14, 49, 132, .07);
	border-spacing: 0;
}
.content table.sobrat.sb-final :is(tbody, tr) { display: block; }
.content table.sobrat.sb-final tr { display: flex; flex-wrap: wrap; align-items: center; gap: 4px 10px; }   /* слева, как поля выше */
.content table.sobrat.sb-final td { display: block; padding: 4px 0; }
.content table.sobrat.sb-final td.td { width: auto; text-align: left; }
.content table.sobrat.sb-final tr:last-child td:first-child { display: none; }   /* пустая ячейка слева от кнопки */
.content table.sobrat.sb-final .submit { margin-top: 4px; }
.content table.sobrat.sb-final p { padding: 0; }

@media (max-width: 767px) {
	.m-ready .content :is(.sb-intro, .sb, table.sobrat.sb-final) { margin-left: -10px; margin-right: -10px; }   /* у .tpl поля по 20px */
	.m-ready .content .sb-intro { padding: 14px; }
	.m-ready .content .sb-how { grid-template-columns: 1fr; gap: 14px; }
	.m-ready .content .sb-how li + li::after { top: auto; bottom: calc(100% + 2px); right: auto; left: 18px; width: 0; height: 10px; border-top: 0; border-left: 2px dashed #a9c3ec; }   /* на телефоне — пунктир сверху вниз */
	.m-ready .content .sb-step { padding: 14px; }
	.m-ready .content .sb-h { font-size: 16px; }
	.m-ready .content .sb-note { margin-left: 0; margin-top: 6px; }
	.m-ready .content .sb-tasks { grid-template-columns: 1fr; gap: 8px; }
	.m-ready .content label.sb-task { flex-direction: row; align-items: center; padding: 10px 40px 10px 10px; }
	.m-ready .content .sb-t-tick { top: 50%; margin-top: -11px; }
	.m-ready .content .sb-fields { grid-template-columns: 1fr; gap: 12px; }
	.m-ready .content table.sobrat.sb-final td:has(.g-recaptcha, .smart-captcha) { max-width: 100%; overflow: visible; }
	.m-ready .content table.sobrat.sb-final > tbody > tr { display: flex; }   /* «*» и «— поля обязательные» в одну строку (mobile.css делает строки таблицы блоками) */
	.m-ready .content table.sobrat.sb-final > tbody > tr > td { padding: 4px 0; }
	.m-ready .content table.sobrat.sb-final > tbody > tr > td:not(.td) { flex: 1 1 180px; min-width: 0; }
	/* поля: в mobile.css у .inp2 свои отступ и line-height 38px — подсказка «Например…» съезжала вниз и обрезалась */
	.m-ready .content :is(table.sobrat, .sb) .input { height: auto; }
	.m-ready .content :is(table.sobrat, .sb) .input .inp2 { height: auto; padding: 0; line-height: normal; }
	.m-ready .content :is(table.sobrat, .sb) .input .inp2 input { height: 42px; }
	.m-ready .content :is(table.sobrat, .sb) .input .inp2 label { top: 12px; height: 18px; line-height: 18px; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; right: 12px; }
	.m-ready .content table.sobrat.sb-final { box-sizing: border-box; width: auto !important; max-width: none; padding: 10px 12px; }
}
/* капча Google — всегда 304px: на телефонах уже 360px уменьшаем, чтобы не вылезала за карточку */
@media (max-width: 359px) {
	.m-ready .content table.sobrat.sb-final .g-recaptcha { width: 304px; height: 78px; margin-bottom: -17px; transform: scale(.78); transform-origin: left top; }
}

/* ---------- Те же шаги на «Вызове мастера», «Продать б/у», «Написать директору» (buildForm() в banner.js) ---------- */
/* «Вызов мастера»: подзаголовок «Стоимость вызова…», цены плитками, совет «сначала позвоните» — плашкой */
.content .sb-intro > p:last-child { margin-bottom: 0; }
.content .sb-intro > p.sb-sub { margin: 4px 0 8px; color: #071c55; font-size: 14px; font-weight: 700; }
.content .sb-intro > p a { font-weight: 600; }
.content .sb-prices { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; margin: 0 0 12px; padding: 0; list-style: none; }
.content .sb-prices li {
	display: flex;
	flex-direction: column;
	gap: 2px;
	margin: 0;
	padding: 10px 12px;
	border: 1px solid #d6e2f6;
	border-radius: 12px;
	background: #fff;
	list-style: none;
}
.content .sb-prices li::before { content: none; }
.content .sb-prices span { color: #5a6b8c; font-size: 12.5px; line-height: 1.3; }
.content .sb-prices b { color: #071c55; font-size: 17px; font-weight: 800; line-height: 1.25; }
.content .sb-intro > p.sb-tip {
	display: flex;
	align-items: flex-start;
	gap: 10px;
	margin: 0 0 14px;
	padding: 10px 12px;
	border: 1px solid #f3dca4;
	border-radius: 12px;
	background: #fff8e6;
	color: #5c4708;
	font-size: 13.5px;
	line-height: 1.5;
}
.content .sb-tip i { flex: none; display: grid; place-items: center; width: 22px; height: 22px; color: #c98a00; font-style: normal; }
.content .sb-tip i svg { width: 20px; height: 20px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.content .sb-tip a { color: #8a5a00; font-weight: 700; }

/* «Написать директору»: ДА / НЕТ — две крупные плитки (те же блоки сайта с onclick=mcheck, чекбоксы спрятаны) */
.content .sb .knop2.sb-rate { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; width: auto; margin-top: 14px; }
.content .sb .knop2.sb-rate .clear { display: none; }
.content .sb .knop2.sb-rate :is(.yes, .no) {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	float: none;
	width: auto;
	height: auto;
	margin: 0;
	padding: 14px;
	border: 1.5px solid #dde6f5;
	border-radius: 14px;
	background: #f7faff;
	box-shadow: none;
	color: #1d2433;
	font-size: 16px;
	font-weight: 700;
	cursor: pointer;
	transition: border-color .15s, background-color .15s, box-shadow .15s, color .15s;
}
.content .sb .knop2.sb-rate p { display: flex; align-items: center; margin: 0; padding: 0; }
.content .sb .knop2.sb-rate input { position: absolute; opacity: 0; width: 1px; height: 1px; margin: 0; pointer-events: none; }
.content .sb .sb-r-ico { display: grid; place-items: center; width: 36px; height: 36px; border-radius: 10px; background: #e1ebfd; color: #1346aa; transition: background-color .15s, color .15s; }
.content .sb .sb-r-ico svg { width: 20px; height: 20px; }
.content .sb .knop2.sb-rate :is(.yes, .no):hover { border-color: #7fb0f0; background: #eef4ff; filter: none; }
.content .sb .knop2.sb-rate .yes:has(input:checked) { border-color: #13a04a; background: #ecf9f1; box-shadow: 0 4px 14px rgba(19, 160, 74, .15); color: #14532d; }
.content .sb .knop2.sb-rate .yes:has(input:checked) .sb-r-ico { background: #13a04a; color: #fff; }
.content .sb .knop2.sb-rate .no:has(input:checked) { border-color: #e0283a; background: #fff1f2; box-shadow: 0 4px 14px rgba(224, 40, 58, .14); color: #8f1622; }
.content .sb .knop2.sb-rate .no:has(input:checked) .sb-r-ico { background: #e0283a; color: #fff; }

@media (max-width: 767px) {
	.m-ready .content .sb-prices { grid-template-columns: 1fr; gap: 6px; }
	.m-ready .content .sb-prices li { flex-direction: row; align-items: baseline; justify-content: space-between; gap: 10px; padding: 9px 12px; }
	.m-ready .content .sb-prices b { font-size: 15px; white-space: nowrap; }
}

/* ---------- Спецпредложения (/remontiphone, /gidrogel, /kserokopiya…) и отдельные новости (/news/N) ----------
   Разметку строит offer() в banner.js: тёмная карточка-шапка как у «Компьютеров БАЙТ» — картинка слева, подпись,
   заголовок, цена, факты значками, адреса таблетками, кнопки. Ниже — текст из админки. */
.content .marimg .of-hero {
	display: grid;
	grid-template-columns: minmax(0, 250px) minmax(0, 1fr);
	gap: 24px;
	align-items: center;
	margin: 4px 0 24px;
	padding: 22px;
	border-radius: 18px;
	background:
		radial-gradient(ellipse 60% 90% at 100% 0%, rgba(0, 180, 255, .28) 0, rgba(0, 180, 255, 0) 70%),
		radial-gradient(ellipse 40% 70% at 0% 100%, rgba(40, 90, 255, .3) 0, rgba(40, 90, 255, 0) 100%),
		linear-gradient(160deg, #0c2c77 0%, #071c55 100%);
	box-shadow: 0 0 0 1px rgba(0, 180, 255, .45), 0 8px 26px rgba(7, 28, 85, .35);
	color: #dce8ff;
	text-align: left;
}
.content .marimg .of-hero.of-nopic { grid-template-columns: minmax(0, 1fr); }
.content .marimg .of-hero svg { fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.content .marimg .of-pic { align-self: stretch; display: flex; align-items: center; justify-content: center; }
.content .marimg .of-pic img { display: block; width: 100%; max-height: 360px; object-fit: contain; margin: 0 !important; border-radius: 14px; box-shadow: 0 0 0 1px rgba(127, 212, 255, .35), 0 6px 20px rgba(0, 10, 40, .45); float: none !important; }
.content .marimg .of-eyebrow { display: flex; align-items: center; gap: 6px; margin: 0 0 6px; color: #7fd4ff; font-size: 13px; font-weight: 600; letter-spacing: .04em; text-transform: uppercase; }
.content .marimg .of-eyebrow svg { width: 15px; height: 15px; }
.content .marimg .of-hero h2 { margin: 0 0 10px; color: #fff; font-size: 26px; font-weight: 800; line-height: 1.18; text-shadow: 0 0 18px rgba(0, 180, 255, .45); }
.content .marimg .of-lead { margin: 0 0 12px; color: #dce8ff; font-size: 15px; line-height: 1.45; }
.content .marimg .of-price { display: inline-flex; align-items: baseline; gap: 6px; margin: 0 0 14px; padding: 6px 16px; border-radius: 12px; background: linear-gradient(180deg, #19c1ff 0%, #0090e0 100%); box-shadow: 0 0 0 1px rgba(127, 212, 255, .7), 0 4px 16px rgba(0, 170, 255, .4); color: #04163f; font-size: 24px; font-weight: 800; line-height: 1.2; }
.content .marimg .of-price small { font-size: 13px; font-weight: 700; text-transform: lowercase; }
.content .marimg .of-facts { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; margin: 0 0 12px; padding: 0; list-style: none; }
.content .marimg .of-facts li {
	display: flex;
	align-items: center;
	gap: 9px;
	margin: 0;
	padding: 9px 11px;
	border: 1px solid rgba(0, 180, 255, .35);
	border-radius: 12px;
	background: rgba(4, 16, 54, .45);
	color: #fff;
	font-size: 13.5px;
	font-weight: 700;
	line-height: 1.25;
}
.content .marimg .of-facts svg { width: 22px; height: 22px; flex: none; color: #00b4ff; filter: drop-shadow(0 0 4px rgba(0, 180, 255, .6)); }
.content .marimg .of-places { display: flex; flex-wrap: wrap; gap: 6px; margin: 0 0 4px; padding: 0; list-style: none; }
.content .marimg .of-places li {
	display: inline-flex;
	align-items: center;
	gap: 5px;
	margin: 0;
	padding: 4px 11px 4px 8px;
	border: 1px solid rgba(127, 212, 255, .35);
	border-radius: 999px;
	background: rgba(255, 255, 255, .08);
	color: #fff;
	font-size: 13px;
	line-height: 1.2;
}
.content .marimg .of-places svg { width: 14px; height: 14px; color: #7fd4ff; }
.content .marimg :is(.of-facts, .of-places) li::before { content: none; display: none; }
.content .marimg .of-actions { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 16px; }
.content .marimg .of-hero a.tx-btn { text-decoration: none !important; }
.content .marimg .of-hero a.tx-btn::after { content: none; }
.content .marimg .of-hero a.tx-btn.of-btn-main { background: linear-gradient(180deg, #19c1ff 0%, #0090e0 100%); box-shadow: 0 0 0 1px rgba(127, 212, 255, .7), 0 4px 16px rgba(0, 170, 255, .45); color: #04163f; }
.content .marimg .of-hero a.tx-btn.tx-btn-light { background: rgba(255, 255, 255, .1); box-shadow: inset 0 0 0 1px rgba(127, 212, 255, .5); color: #fff; }
.content .marimg .of-hero a.tx-btn.tx-btn-light:hover { background: rgba(255, 255, 255, .2); }
.content .marimg.of-page .of-dup { display: none; }   /* крупный заголовок в начале текста — уже в шапке */
.content .marimg.of-page a.of-link { margin: 2px 0; text-decoration: none !important; }
.content .marimg.of-page :not(.of-actions) > a.tx-btn.tx-btn-light { color: #1346aa; }
.content .marimg.of-page :not(.of-actions) > a.tx-btn.tx-btn-light:hover { color: #fff; }
.content .marimg.of-page > p > br:first-child { display: none; }   /* пустые строки перед абзацами из ВК */
.content .marimg .of-foot { clear: both; display: flex; gap: 10px; margin: 22px 0 0; padding-top: 16px; border-top: 1px solid #e3eaf7; }
.content .marimg .of-foot a.tx-btn::after { content: none; }
.content .marimg .of-foot a.tx-btn::before { content: "\2190"; font-size: 16px; }

/* ---------- Список новостей (/news): карточки (строит newsList() в banner.js) ---------- */
.content .nw-list { display: grid; gap: 14px; margin: 4px 0 10px; }
.content .nw-card {
	display: grid;
	grid-template-columns: 190px minmax(0, 1fr);
	gap: 18px;
	padding: 14px;
	border: 1px solid #d3def3;
	border-radius: 16px;
	background: #fff;
	box-shadow: 0 2px 10px rgba(14, 49, 132, .07);
	scroll-margin-top: 16px;
	transition: border-color .15s, box-shadow .15s, transform .15s;
}
.content .nw-card:hover { border-color: #00b4ff; box-shadow: 0 0 0 1px rgba(0, 180, 255, .4), 0 6px 18px rgba(0, 150, 255, .2); transform: translateY(-1px); }
.content .nw-card:target { border-color: #00b4ff; box-shadow: 0 0 0 2px rgba(0, 180, 255, .5); }
.content .nw-pic { display: flex; align-items: center; justify-content: center; aspect-ratio: 4 / 3; overflow: hidden; border-radius: 12px; background: linear-gradient(160deg, #0c2c77 0%, #071c55 100%); }
.content .nw-pic { position: relative; isolation: isolate; }
.content .nw-pic::before { content: ""; position: absolute; inset: -16px; z-index: -1; background: var(--nw-bg, none) center / cover no-repeat; filter: blur(14px) brightness(.8) saturate(1.1); }   /* поля вокруг картинки — она же, размытая */
.content .nw-pic img { display: block; width: 100%; height: 100%; object-fit: contain; }
.content .nw-pic svg { width: 54px; height: 54px; fill: none; stroke: #7fd4ff; stroke-width: 1.5; stroke-linecap: round; stroke-linejoin: round; filter: drop-shadow(0 0 6px rgba(0, 180, 255, .6)); }
.content .nw-body { display: flex; flex-direction: column; align-items: flex-start; min-width: 0; text-align: left; }
.content .nw-meta { display: flex; flex-wrap: wrap; gap: 6px; margin: 0 0 6px; }
.content .nw-date, .content .nw-new { display: inline-flex; padding: 3px 10px; border-radius: 999px; font-size: 12px; font-weight: 600; line-height: 1.3; }
.content .nw-date { background: #eef4ff; color: #1346aa; }
.content .nw-new { background: linear-gradient(180deg, #19c1ff 0%, #0090e0 100%); color: #04163f; }
.content .nw-body h3 { margin: 0 0 6px; font-size: 17px; font-weight: 800; line-height: 1.3; }
.content .nw-body h3 a { color: #071c55; text-decoration: none; }
.content .nw-body h3 a:hover { color: #1346aa; }
.content .nw-ex { margin: 0 0 12px; color: #4a5875; font-size: 13.5px; line-height: 1.5; }
.content .nw-body .nw-more { margin-top: auto; padding: 7px 14px; font-size: 13px; }
.content .nw-body .n_text.nw-full { color: #4a5875; font-size: 13.5px; line-height: 1.5; }
.content .nw-body .n_text.nw-full p:last-child { margin-bottom: 0; }
.content .nw-top { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); padding: 16px; border-color: rgba(0, 180, 255, .55); }
.content .nw-top .nw-pic { aspect-ratio: auto; max-height: 300px; background: #f4f8ff; }
.content .nw-top .nw-pic img { object-fit: contain; }
.content .nw-top .nw-body h3 { font-size: 21px; }
.content .nw-top .nw-ex { font-size: 14.5px; }

@media (max-width: 767px) {
	.m-ready .content .marimg .of-hero { grid-template-columns: minmax(0, 1fr); gap: 14px; margin: 0 0 18px; padding: 14px 14px 16px; border-radius: 16px; }
	.m-ready .content .marimg .of-pic img { max-height: 340px; width: auto; max-width: 100%; }
	.m-ready .content .marimg .of-hero h2 { font-size: 22px; }
	.m-ready .content .marimg .of-facts { grid-template-columns: minmax(0, 1fr); }
	.m-ready .content .marimg .of-actions a.tx-btn { flex: 1 1 100%; justify-content: center; }
	.m-ready .content .nw-card,
	.m-ready .content .nw-top { grid-template-columns: 96px minmax(0, 1fr); gap: 12px; padding: 10px; }
	.m-ready .content .nw-top { grid-template-columns: minmax(0, 1fr); }
	.m-ready .content .nw-top .nw-pic { max-height: 260px; }
	.m-ready .content .nw-card:not(.nw-top) .nw-pic { aspect-ratio: 1; align-self: start; }
	.m-ready .content .nw-pic svg { width: 36px; height: 36px; }
	.m-ready .content .nw-body h3 { font-size: 15px; }
	.m-ready .content .nw-card:not(.nw-top) .nw-ex { display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; font-size: 13px; }
}

/* ---------- «Товар добавлен в корзину» (.winkupit → .wk, раскладывает addedToast() в banner.js) ----------
   Было: квадрат 250×100 по центру экрана, синяя рамка 6px, картинка-тележка. Стало: всплывашка снизу по центру,
   тёмно-синяя, с зелёной галочкой. Прозрачность анимирует сайт (jQuery), здесь — только вид и «выезд». */
.winkupit.wk {
	position: fixed;
	top: auto;
	bottom: 28px;
	left: 50%;
	z-index: 10000;
	display: flex;
	align-items: center;
	gap: 12px;
	width: auto;
	max-width: calc(100vw - 32px);
	height: auto;
	margin: 0;
	padding: 12px 18px 12px 12px;
	border: 0;
	border-radius: 16px;
	background: rgba(9, 22, 58, .96);
	box-shadow: 0 0 0 1px rgba(0, 180, 255, .35), 0 12px 32px rgba(3, 12, 40, .45);
	color: #fff;
	font-size: 14px;
	font-weight: 400;
	text-align: left;
	transform: translateX(-50%);
	animation: wk-in .35s cubic-bezier(.2, .9, .3, 1.2);
	-webkit-backdrop-filter: blur(8px);
	backdrop-filter: blur(8px);
}
@keyframes wk-in { from { transform: translate(-50%, 24px) scale(.96); } to { transform: translate(-50%, 0); } }
.wk .wk-ico,
.kc .kc-ico {
	flex: none;
	display: grid;
	place-items: center;
	width: 34px;
	height: 34px;
	border-radius: 50%;
	background: linear-gradient(180deg, #3cc566 0%, #23913f 100%);
	box-shadow: 0 4px 12px rgba(35, 145, 63, .4);
}
.wk .wk-ico svg,
.kc .kc-ico svg { width: 20px; height: 20px; fill: none; stroke: #fff; stroke-width: 2.6; stroke-linecap: round; stroke-linejoin: round; }
.wk .wk-txt { display: flex; flex-direction: column; gap: 1px; line-height: 1.25; }
.wk .wk-txt b { font-size: 15px; font-weight: 600; }
.wk .wk-txt span { color: #9fc2ea; font-size: 13px; }
.wk a.wk-go,
.wk a.wk-go:visited {
	flex: none;
	margin-left: 6px;
	padding: 8px 14px;
	border-radius: 999px;
	background: linear-gradient(180deg, #1a55c4 0%, #0e3184 100%);
	box-shadow: 0 0 0 1px rgba(0, 180, 255, .55);
	color: #fff;
	font-size: 13px;
	font-weight: 600;
	text-decoration: none;
	white-space: nowrap;
}
html:not(.m-ready) .wk a.wk-go { display: none; }   /* на компьютере то же самое есть в мини-корзине справа вверху */
@media (max-width: 767px) {
	.m-ready .winkupit.wk {
		left: 12px;
		right: 12px;
		bottom: calc(96px + env(safe-area-inset-bottom, 0px));   /* над круглой кнопкой чата Jivo (она снизу справа, до 85px от края) */
		max-width: none;
		transform: none;
		animation-name: wk-in-m;
	}
	@keyframes wk-in-m { from { transform: translateY(24px); } to { transform: none; } }
	.m-ready .wk .wk-go { margin-left: auto; }
}

/* ---------- Мини-корзина справа вверху (.podr_kor → .kc, раскладывает miniCart() в banner.js) ----------
   Было: серое окно 400×200 у края экрана с прокруткой, мелкий текст, красная сумма до бесплатной доставки.
   Стало: карточка с отступом от края, товары списком, итог, полоса прогресса до бесплатной доставки, две кнопки. */
.shapka .menu table .kor .podr_kor.kc-box {
	top: 16px;
	right: 16px;
	width: 380px;
	height: auto;
	padding: 0;
	border: 0;
	border-radius: 18px;
	background: #fff;
	box-shadow: 0 0 0 1px rgba(19, 70, 170, .12), 0 24px 60px rgba(3, 12, 40, .45);
	color: #10204a;
	text-align: left;
	overflow: hidden;
	z-index: 10001;   /* над поиском в шапке (.search2 — тоже 999, но ниже по коду) */
}
.shapka .menu table .kor .podr_kor.kc-box[style*="opacity: 0;"] { pointer-events: none; }   /* сайт гасит окно, но не убирает — не перехватывать клики */
.shapka .podr_kor .kc, .shapka .podr_kor .kc * { text-transform: none; letter-spacing: normal; }   /* меню шапки пишет заглавными */
.podr_kor .kc { animation: kc-in .3s cubic-bezier(.2, .9, .3, 1.1); }
@keyframes kc-in { from { transform: translateY(-10px); opacity: .4; } to { transform: none; opacity: 1; } }

.podr_kor .kc-head { display: flex; align-items: center; gap: 12px; padding: 14px 14px 12px 16px; border-bottom: 1px solid #e8eef8; }
.podr_kor .kc-head .kc-ico { width: 30px; height: 30px; }
.podr_kor .kc-head .kc-ico svg { width: 18px; height: 18px; }
.podr_kor .kc-title { flex: 1; display: flex; flex-direction: column; line-height: 1.25; }
.podr_kor .kc-title b { color: #10204a; font-size: 16px; font-weight: 700; }
.podr_kor .kc-title span { color: #6b7a99; font-size: 13px; }
.podr_kor .kc-x {
	flex: none;
	display: grid;
	place-items: center;
	width: 32px;
	height: 32px;
	padding: 0;
	border: 0;
	border-radius: 50%;
	background: #f1f5fc;
	color: #5a6a8c;
	font-size: 22px;
	line-height: 1;
	cursor: pointer;
	transition: background-color .15s, color .15s;
}
.podr_kor .kc-x:hover { background: #e2eafa; color: #10204a; }

.podr_kor .kc-list { max-height: 248px; margin: 0; padding: 6px 8px; overflow-y: auto; list-style: none; }
.podr_kor .kc-list li { display: flex; gap: 12px; align-items: center; margin: 0; padding: 8px; border-radius: 12px; background: none; }
.podr_kor .kc-list li + li { border-top: 1px solid #eef2f9; border-radius: 0; }
.podr_kor .kc-pic {
	flex: none;
	display: grid;
	place-items: center;
	width: 56px;
	height: 56px;
	border-radius: 12px;
	background: #f4f7fc;
	overflow: hidden;
}
.podr_kor .kc-pic img { max-width: 48px; max-height: 48px; mix-blend-mode: multiply; }
.podr_kor .kc-info { flex: 1; min-width: 0; }
.podr_kor a.kc-name,
.podr_kor a.kc-name:visited {
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
	overflow: hidden;
	color: #10204a;
	font-size: 13px;
	line-height: 1.3;
	text-decoration: none;
}
.podr_kor a.kc-name:hover { color: #1346aa; text-decoration: underline; }
.podr_kor .kc-price { display: flex; align-items: baseline; gap: 6px; margin-top: 4px; }
.podr_kor .kc-price b { color: #10204a; font-size: 15px; font-weight: 700; white-space: nowrap; }
.podr_kor .kc-price span { color: #6b7a99; font-size: 13px; }

.podr_kor .kc-sum { display: flex; align-items: baseline; justify-content: space-between; padding: 10px 16px 4px; border-top: 1px solid #e8eef8; }
.podr_kor .kc-sum span { color: #6b7a99; font-size: 14px; }
.podr_kor .kc-sum b { color: #10204a; font-size: 20px; font-weight: 800; }

.podr_kor .kc-ship { margin: 10px 16px 0; padding: 10px 12px; border-radius: 12px; background: #eef4ff; }
.podr_kor .kc-ship-txt { display: flex; align-items: center; gap: 8px; color: #24365e; font-size: 13px; line-height: 1.3; }
.podr_kor .kc-ship-txt svg { flex: none; width: 20px; height: 20px; fill: none; stroke: #1346aa; stroke-width: 1.8; stroke-linejoin: round; }
.podr_kor .kc-ship-txt b { color: #1346aa; white-space: nowrap; }
.podr_kor .kc-bar { height: 6px; margin-top: 8px; border-radius: 999px; background: #d6e2f7; overflow: hidden; }
.podr_kor .kc-bar i { display: block; height: 100%; border-radius: inherit; background: linear-gradient(90deg, #1a8cff, #00c2ff); transition: width .6s ease; }
.podr_kor .kc-ship small { display: block; margin-top: 6px; color: #7a88a6; font-size: 11px; }
.podr_kor .kc-ship-free { background: #e9f8ee; }
.podr_kor .kc-ship-free .kc-ship-txt svg { stroke: #23913f; }
.podr_kor .kc-ship-free .kc-ship-txt b { color: #1d7a35; }
.podr_kor .kc-ship-free .kc-bar i { background: linear-gradient(90deg, #3cc566, #23913f); }

.podr_kor .kc-actions { display: flex; flex-direction: column; gap: 6px; padding: 14px 16px 14px; }
.podr_kor a.kc-buy,
.podr_kor a.kc-buy:visited {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	padding: 12px 18px;
	border-radius: 12px;
	background: linear-gradient(180deg, #1a55c4 0%, #0e3184 100%);
	box-shadow: 0 0 0 1px rgba(0, 180, 255, .45), 0 6px 18px rgba(0, 90, 220, .3);
	color: #fff;
	font-size: 15px;
	font-weight: 600;
	text-decoration: none;
	transition: transform .15s, box-shadow .15s;
}
.podr_kor a.kc-buy::after { content: "\2192"; font-size: 18px; transition: transform .15s; }
.podr_kor a.kc-buy:hover { transform: translateY(-1px); box-shadow: 0 0 0 1px rgba(0, 200, 255, .8), 0 8px 22px rgba(0, 120, 255, .4); color: #fff; }
.podr_kor a.kc-buy:hover::after { transform: translateX(3px); }
.podr_kor .kc-more {
	padding: 8px;
	border: 0;
	background: none;
	color: #1346aa;
	font-size: 14px;
	font-weight: 500;
	cursor: pointer;
}
.podr_kor .kc-more:hover { text-decoration: underline; }

/* ---------- Карточка товара на компьютере: «Поделиться» и «ВНИМАНИЕ!!!» (разметку готовят productShare() / productNote() в banner.js) ----------
   Было: картинки-кнопки 2011 года (VK, facebook, twitter, ОК) и красная рамка 4px с «ВНИМАНИЕ!!!» капсом.
   Стало: карточка «Поделиться» с плитками ВКонтакте / Одноклассники / «Ещё» и жёлтая плашка «Обратите внимание» со значком.
   На телефоне — свои правила в mobile.css. */
html:not(.m-ready) .content .tovars td.mnenrav.m-share { padding: 16px 0 0 !important; }
html:not(.m-ready) .content .tovars td.mnenrav.m-share > b { display: block; margin-bottom: 8px; color: #5b6880; font-size: 13px; font-weight: 600; }
html:not(.m-ready) .m-share-btns { display: flex; gap: 8px; }
html:not(.m-ready) .m-share-btns a {
	display: grid;
	place-items: center;
	width: 38px;
	height: 38px;
	border-radius: 11px;
	overflow: hidden;
	transition: transform .15s, box-shadow .15s;
}
html:not(.m-ready) .m-share-btns a:hover { transform: translateY(-2px); box-shadow: 0 6px 14px rgba(14, 49, 132, .18); }
html:not(.m-ready) .m-share-btns svg { display: block; width: 100%; height: 100%; margin: 0; }
html:not(.m-ready) .m-share-btns a.m-share-odnoklassniki { background: #ee8208; }
html:not(.m-ready) .m-share-btns a.m-share-odnoklassniki svg,
html:not(.m-ready) .m-share-btns a.m-share-more svg { width: 22px; height: 22px; }
html:not(.m-ready) .m-share-btns a.m-share-more { background: #eef4ff; box-shadow: inset 0 0 0 1px #c9d8f5; }
html:not(.m-ready) .m-share-btns a.m-share-more:hover { box-shadow: inset 0 0 0 1px #1346aa, 0 6px 14px rgba(14, 49, 132, .18); }

html:not(.m-ready) .content .day_nix.m-note {
	position: relative;
	margin: 6px 20px 4px;   /* по краям — как у таблицы характеристик под ней, а не во всю карточку */
	padding: 16px 22px 16px 66px;
	border: 0;
	border-radius: 18px;
	background: #fff8eb;
	box-shadow: inset 0 0 0 1px #f6dcaa;
	color: #5c4a2a;
	font-size: 14.5px;
	line-height: 1.5;
	text-align: left;
}
html:not(.m-ready) .content .day_nix.m-note::before {
	content: "!";
	position: absolute;
	left: 20px;
	top: 50%;
	width: 32px;
	height: 32px;
	margin-top: -16px;
	border-radius: 50%;
	display: grid;
	place-items: center;
	background: linear-gradient(180deg, #f7b23b 0%, #e58e0c 100%);
	box-shadow: 0 3px 10px rgba(229, 142, 12, .35);
	color: #fff;
	font: 800 18px/1 -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif;
}
html:not(.m-ready) .content .day_nix.m-note p { margin: 0; padding: 0; font-size: inherit; line-height: inherit; color: inherit; }
html:not(.m-ready) .content .day_nix.m-note span,
html:not(.m-ready) .content .day_nix.m-note .nix_red { display: block; margin-bottom: 2px; color: #9a5b00; font-size: 15.5px; font-weight: 700; text-transform: none; }

/* Контакты: вместо интерактивных Яндекс.Карт (API 1.1, ~600 КБ) — статичная картинка карты на всю рамку карты,
   по нажатию — карточка магазина в Яндекс.Картах (маршрут, отзывы; на телефоне — приложение) */
[id^="YMapsID"] { position: relative; }
html [id^="YMapsID"] a.ymap { display: block; position: absolute; inset: 0; overflow: hidden; background: #e8eef5; }
html [id^="YMapsID"] a.ymap > img { display: block; width: 100% !important; height: 100% !important; max-width: none !important; object-fit: cover; }
html [id^="YMapsID"] a.ymap > span {
	position: absolute; left: 10px; bottom: 10px; padding: 8px 12px; border-radius: 8px;
	background: #fff; color: #0e3184; font: 600 13px/1.2 -apple-system, BlinkMacSystemFont, "BC Segoe", "Segoe UI", Roboto, Arial, sans-serif;
	box-shadow: 0 2px 8px rgba(0, 20, 60, .3); text-decoration: none;
}
html [id^="YMapsID"] a.ymap:hover > span { background: #0e3184; color: #fff; }
