/* Синон — оформление «карточки» на всём сайте (05.10.2026), по образцу кабинета дилера и разделов каталога. */
/* Подключается только при Настройки «Синон» → «Оформление» = «Новое»; каждое правило — под body.ds-cards. */
/* Выключили — файла нет, сайт выглядит как раньше. */

/* ---------- общая карточка: белая, тонкая рамка, лёгкая тень ---------- */
body.ds-cards :is(.cat, .sol-tile, .tech-tile, .picker, .why > div, .kit-card, .card, .buybox, .bundle, .co-box, .co-sum, .cl-items, .cl-more, .kit-form, .kit-result, .mnt-f, .mnt-r, .mnt-price, .hp-sec, .hp-calc, .hp-show-i, .hp-ask, .hp-more, .hp-kit, .hp-key, .hp-note, .faq-ask, .lg-intro > div, .dl-ben li, .sol-steps li, .sol-tasks, .mz-steps li, dl.gl > div, .dl-card.apply, .tab-body > section, .facts ul, .entry-content > ul.wp-block-list:not(.mz-steps), .maps-links, .sol-faq details, .woocommerce form.login, .woocommerce form.register, .woocommerce-MyAccount-content .woocommerce-orders-table, .woocommerce-MyAccount-content .woocommerce-Address, .woocommerce-MyAccount-content form.edit-account, .co-empty) {
	background: #fff; border: 1px solid var(--line); border-radius: var(--r-l); box-shadow: var(--sh-1);
}
/* ссылки-карточки: при наведении — тень, как в кабинете */
body.ds-cards :is(.cat, .sol-tile, .tech-tile, .kit-card, .card, .dl-ben li, .sol-steps li, .mz-steps li) { transition: border-color .15s, box-shadow .15s; }
body.ds-cards :is(.cat, .sol-tile, .tech-tile, .kit-card):hover { background: #fff; color: var(--ink); box-shadow: var(--shadow); border-color: #CFCBC3; transform: none; }
@media (hover: hover) { body.ds-cards .card:hover { background: #fff; color: var(--ink); box-shadow: var(--shadow); border-color: #CFCBC3; transform: none; } }

/* подписи-метки: маленькие заглавные серые */
body.ds-cards :is(.keyspecs span, .mnt-tbl thead th, .hp-t thead th, .an-table thead th, .sol-tasks .sol-price small, .stat span) {
	font-size: var(--fz-xs); line-height: var(--lh-s); font-weight: 600; letter-spacing: .06em; text-transform: uppercase; color: var(--ink-3);
}

/* «таблетки» разделов и подборок — серый фон, без рамки */
body.ds-cards :is(.quick a, .tech-picks a, .hp-terms a) { background: var(--paper-2); box-shadow: none; border-radius: 999px; }
body.ds-cards :is(.quick a, .tech-picks a, .hp-terms a):hover { background: var(--paper-3); box-shadow: none; }

/* ---------- плитка товара ---------- */
body.ds-cards .card { padding: 12px; }
body.ds-cards .card .ph { border-radius: var(--r-m); }

/* ---------- главная ---------- */
body.ds-cards .hero-main .stat b { font-size: var(--fz-h2); letter-spacing: -.01em; }
body.ds-cards .hero-main .stat span { display: block; margin-top: 4px; }
body.ds-cards :is(.hero-side, .svc-card, .brand-band, .sol-cta-txt, .sol-hero-txt) { border-radius: var(--r-l); }
/* первый экран (06.10.2026): карусель баннеров и карточки справа — белые, как в кабинете дилера */
body.ds-cards :is(.hc-track, .hero-side) { background: #fff; color: var(--ink); border: 1px solid var(--line); box-shadow: var(--sh-1); }
body.ds-cards .hc-track { border-radius: var(--r-l); }
body.ds-cards .hc-track > .hero-main { background: #fff; }
body.ds-cards .hero-ph::after { background: linear-gradient(90deg, #fff 38%, #fff0 72%); }
body.ds-cards .hc-pics img { box-shadow: var(--shadow); border: 1px solid var(--line); }
@media (min-width: 640px) { body.ds-cards .hc-nav { box-shadow: 0 1px 3px rgba(47, 46, 42, .12), 0 0 0 1px var(--line); } }
body.ds-cards .hero-side .eyebrow { font-size: var(--fz-xs); font-weight: 600; letter-spacing: .06em; color: var(--ink-3); opacity: 1; }
body.ds-cards .hero-side :is(p, .sub) { color: var(--ink-2); opacity: 1; }
body.ds-cards .hero-side .link-arrow { color: var(--ink); }
body.ds-cards .hero-side:hover .link-arrow { color: var(--red); }
body.ds-cards :is(a.hero-side, .side-dl) { transition: border-color .15s, box-shadow .15s; }
body.ds-cards :is(a.hero-side, .side-dl):hover { box-shadow: var(--shadow); border-color: #CFCBC3; }
body.ds-cards .side-dealer:has(.side-ph)::before { background: linear-gradient(90deg, #fff 50%, #fff0 92%); }
body.ds-cards .side-sale .big { color: var(--red); }
body.ds-cards .side-dl h3 { font-size: var(--fz-h1); letter-spacing: -.01em; max-width: none; }
body.ds-cards .side-dl h3 span { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); } /* «Ваши цены:» — для экранного диктора, на экране — крупно группа */
body.ds-cards .side-dl .dl-facts { gap: 0; font-size: var(--fz-s); color: var(--ink-3); }
body.ds-cards .side-dl .dl-facts li { padding: 8px 0; border-top: 1px solid var(--line); }
body.ds-cards .side-dl .dl-facts b { color: var(--ink); font-variant-numeric: tabular-nums; }
body.ds-cards .side-dl .dl-facts em { padding: 4px 12px; font-size: var(--fz-xs); }
body.ds-cards .dl-links .btn:not(.btn-red) { background: #fff; color: var(--ink); box-shadow: inset 0 0 0 1px var(--line); }
body.ds-cards .dl-links .btn:not(.btn-red):hover { background: var(--paper-2); box-shadow: inset 0 0 0 1px #CFCBC3; }
body.ds-cards .cat { padding: 16px 20px; }
body.ds-cards .cat.first { background: #fff; }
body.ds-cards .cat small, body.ds-cards .cat:hover small { color: var(--ink-3); }
body.ds-cards .cat:hover svg { color: var(--red); transform: none; }
body.ds-cards .sol-tile { padding: 20px; color: var(--ink); }
body.ds-cards .sol-tile .sol-ico, body.ds-cards .sol-tile:hover .sol-ico { background: var(--paper-2); }
body.ds-cards .sol-tile:hover small, body.ds-cards .sol-tile:hover .sol-from { color: var(--ink-2); }
body.ds-cards .sol-tile:hover .sol-from b { color: var(--ink); }
body.ds-cards .tech-tile:hover { box-shadow: var(--shadow); }
body.ds-cards .kit-card { padding: 16px; }
body.ds-cards .kit-pics { border-radius: var(--r-m); }
body.ds-cards .kit-bottom .price { font-size: var(--fz-h2); }
body.ds-cards .why > div { padding: 20px; }
body.ds-cards .picker .opts button { background: var(--paper-2); box-shadow: none; }
body.ds-cards .picker .opts button.on { background: var(--ink); }
body.ds-cards .facts ul { padding: 20px; margin-top: 16px; gap: 0 24px; }
body.ds-cards .facts li { padding: 12px 0; border-top: 1px solid var(--line); }
@media (min-width: 768px) { body.ds-cards .facts li:nth-child(-n+2) { border-top: 0; } }
@media (max-width: 767px) { body.ds-cards .facts li:first-child { border-top: 0; } }

/* ---------- карточка товара ---------- */
body.ds-cards .stage { border-radius: var(--r-l); box-shadow: var(--sh-1); }
body.ds-cards .thumbs button { border-radius: var(--r-m); }
body.ds-cards .buybox { padding: 20px; }
body.ds-cards .keyspecs { gap: 12px; }
body.ds-cards .keyspecs div { display: flex; flex-direction: column-reverse; justify-content: flex-end; gap: 4px; padding: 12px 16px; background: #fff; border: 1px solid var(--line); border-radius: var(--r-m); box-shadow: var(--sh-1); }
body.ds-cards .keyspecs b { font-size: var(--fz-l); }
body.ds-cards .delivery { border-radius: var(--r-l); box-shadow: var(--sh-1); }
body.ds-cards .delivery div { padding: 16px 20px; }
body.ds-cards :is(.trust div, .disk-days, .app-help, .service.light) { background: #fff; border: 1px solid var(--line); border-radius: var(--r-m); box-shadow: var(--sh-1); }
body.ds-cards .service { border-radius: var(--r-l); padding: 16px 20px; }
body.ds-cards .dist-badge { border-radius: var(--r-m); }
body.ds-cards .tab-body { gap: 16px; }
body.ds-cards .tab-body > section { padding: 20px; min-width: 0; align-self: start; }
body.ds-cards .tab-body > section > .h2 { font-size: var(--fz-xl); margin: 0 0 12px; }
@media (max-width: 559px) { body.ds-cards .tab-body > section { padding: 16px 16px; } }
body.ds-cards .tab-body .spec-table caption { font-size: var(--fz-xs); font-weight: 600; letter-spacing: .06em; padding-top: 16px; }
body.ds-cards .p-docs .docs a { border: 0; background: var(--paper-2); border-radius: var(--r-m); }
body.ds-cards .p-docs .docs a:hover { background: var(--paper-3); }
body.ds-cards .bundle { padding: 16px 20px; }
body.ds-cards .b-total .sum { font: 700 var(--fz-h2)/var(--lh-t) var(--f-display); letter-spacing: -.01em; }

body.ds-cards .co-box { padding: 20px; margin-bottom: 12px; } /* форма и в кабинете */
/* ---------- «Помощь» (общее с другими страницами), вопросы. Корзина и оформление — в checkout.css; «Помощь», калькулятор,
   монтаж, дилерам и кабинет — в pages-cards.css (бюджеты скорости, 07.10.2026) ---------- */
body.ds-cards :is(.hp-key, .hp-note) { padding: 16px 20px; }
body.ds-cards .hp-table { border-radius: var(--r-l); box-shadow: var(--sh-1); }
body.ds-cards .sol-faq details { padding: 0 20px; margin: 0 0 8px; border-radius: var(--r-m); }
body.ds-cards .sol-faq details[open] { box-shadow: var(--shadow); }
body.ds-cards .sol-faq summary::after { right: 0; }
/* ---------- страницы с текстом: «Контакты», «Доставка», «Тендеры» — списки карточкой ---------- */
body.ds-cards .entry-content > ul.wp-block-list:not(.mz-steps) { list-style: none; padding: 4px 20px; }
body.ds-cards .entry-content > ul.wp-block-list:not(.mz-steps) > li { position: relative; margin: 0; padding: 12px 0 12px 20px; border-top: 1px solid var(--line); }
body.ds-cards .entry-content > ul.wp-block-list:not(.mz-steps) > li:first-child { border-top: 0; }
body.ds-cards .entry-content > ul.wp-block-list:not(.mz-steps) > li::before { content: ""; position: absolute; left: 0; top: 21px; width: 6px; height: 6px; border-radius: 50%; background: var(--red); }
body.ds-cards .maps-links { padding: 16px 20px; }

/* таблицы «аналоги» в каталоге и комплектах */
body.ds-cards .an-wrap { border: 1px solid var(--line); border-radius: var(--r-l); background: #fff; box-shadow: var(--sh-1); }
body.ds-cards .an-wrap .an-table { margin: 0; }
/* ---------- решения, дилерам, тендеры ---------- */
body.ds-cards .sol-tasks { padding: 20px; }
body.ds-cards .sol-tasks .sol-price b { font-size: var(--fz-h2); }
body.ds-cards .sol-steps li { padding: 20px; }
body.ds-cards .picker { padding: clamp(20px, 3vw, 32px); }
body.ds-cards .apply .eyebrow, body.ds-cards .picker .eyebrow { font-size: var(--fz-xs); letter-spacing: .06em; }

/* ---------- каталог, поиск, 404 ---------- */
body.ds-cards .search.big input { background: #fff; }

/* ===== Шапка по новому макету (06.10.2026): «Сравнение», «Избранное», «Корзина», блок вошедшего с меню ===== */
@media (min-width: 768px) {
	body.ds-cards .h-actions { align-items: center; }
	body.ds-cards .h-actions > [data-fav-link][hidden] { display: flex; }
	body.ds-cards .h-actions > [data-fav-link][hidden] .badge-count { display: none; }
}
body.ds-cards .h-user { position: relative; margin-left: 8px; }
body.ds-cards .h-user summary { display: flex; align-items: center; gap: 12px; padding: 4px 8px 4px 4px; border-radius: 999px; cursor: pointer; list-style: none; }
body.ds-cards .h-user summary::-webkit-details-marker { display: none; }
body.ds-cards .h-user summary:hover, body.ds-cards .h-user[open] summary { background: var(--paper-2); }
body.ds-cards .h-user .ava { width: 40px; height: 40px; border-radius: 50%; background: var(--paper-2); box-shadow: 0 0 0 1px var(--line); }
body.ds-cards .hu-t { display: flex; flex-direction: column; line-height: var(--lh-t); max-width: 150px; }
body.ds-cards .hu-t b { font-size: var(--fz-m); font-weight: 600; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
body.ds-cards .hu-t small { font-size: var(--fz-xs); color: var(--ink-3); }
body.ds-cards .hu-chev { width: 14px; height: 14px; rotate: 90deg; color: var(--ink-3); transition: rotate .15s; }
body.ds-cards .h-user[open] .hu-chev { rotate: -90deg; }
body.ds-cards .hu-menu { position: absolute; right: 0; top: calc(100% + 6px); z-index: 40; min-width: 200px; background: #fff; border: 1px solid var(--line); border-radius: var(--r-m); box-shadow: var(--shadow); padding: 8px; display: grid; }
body.ds-cards .hu-menu a { padding: 8px 12px; border-radius: var(--r-s); font-size: var(--fz-m); }
body.ds-cards .hu-menu a:hover { background: var(--paper-2); }
body.ds-cards .hu-menu a:last-child { color: var(--red); border-top: 1px solid var(--line); border-radius: 0 0 var(--r-s) var(--r-s); margin-top: 4px; }
@media (max-width: 767px) { body.ds-cards .h-user { display: none; } }

/* ===== Разделы каталога по новому макету (06.10.2026): левая колонка, баннер раздела, лента подразделов ===== */
body.ds-cards.cat-v2 { --wrap: 1480px; }
body.ds-cards .cv2 .cs-cats, body.ds-cards .cv2 .filters, body.ds-cards .cban { background: #fff; border: 1px solid var(--line); border-radius: var(--r-l); box-shadow: var(--sh-1); }
body.ds-cards .cv2 .crumbs { padding-top: 12px; }
body.ds-cards .cv2 > .layout { grid-template-columns: minmax(0, 1fr); }
body.ds-cards .cv2 .cmain { min-width: 0; }
@media (min-width: 1000px) {
	body.ds-cards .cv2 > .layout { grid-template-columns: 272px minmax(0, 1fr); gap: 24px; padding-top: 20px; }
	body.ds-cards .cv2 .layout > .cside { grid-column: 1; grid-row: 1; display: grid; gap: 16px; align-content: start; }
	body.ds-cards .cv2 .layout > .cmain { grid-column: 2; grid-row: 1; }
	body.ds-cards .cv2 .filters { position: static; padding: 16px 20px; }
}
@media (max-width: 999px) {
	body.ds-cards .cv2 .cside { display: contents; }
	body.ds-cards .cv2 .cs-cats, body.ds-cards .cv2 .f-head { display: none; }
	body.ds-cards .cv2 .filters { border: 0; border-radius: var(--r-l) var(--r-l) 0 0; }
}
body.ds-cards .cs-cats { padding: 12px; }
body.ds-cards .cs-h, body.ds-cards .f-head b { display: block; font: 700 var(--fz-l)/var(--lh-t) var(--f-display); padding: 8px 8px 12px; }
body.ds-cards .cs-cats ul { list-style: none; margin: 0; padding: 0; }
body.ds-cards .cs-cats a { display: flex; align-items: center; gap: 12px; padding: 8px; border-radius: var(--r-s); font-size: var(--fz-m); }
body.ds-cards .cs-cats a:hover { background: var(--paper-2); }
body.ds-cards .cs-cats a.on { background: var(--red-soft); color: var(--red); font-weight: 600; }
body.ds-cards .cs-cats svg { width: 22px; height: 22px; flex: none; }
body.ds-cards .cs-cats span { flex: 1; }
body.ds-cards .cs-cats .chev { width: 14px; height: 14px; color: var(--ink-3); }
body.ds-cards .cs-cats a.on .chev { color: var(--red); }
body.ds-cards .f-head { display: flex; justify-content: space-between; align-items: baseline; margin: -8px 0 8px; }
body.ds-cards .f-head b { padding: 8px 0; }
body.ds-cards .f-head a { font-size: var(--fz-s); color: var(--red); }

/* баннер раздела */
body.ds-cards .cban { display: grid; grid-template-columns: minmax(0, 1fr) minmax(220px, 40%); background: linear-gradient(110deg, #fff 0%, var(--paper-2) 55%, var(--paper-3) 100%); overflow: hidden; margin-bottom: 20px; }
body.ds-cards .cban.no-art { grid-template-columns: 1fr; }
body.ds-cards .cban-t { padding: clamp(20px, 2.6vw, 36px); align-self: center; }
body.ds-cards .cban .h1 { font-size: var(--fz-h1); }
body.ds-cards .cban-n { margin: 8px 0 0; color: var(--ink-3); font-size: var(--fz-b); }
body.ds-cards .cban-lead { margin: 12px 0 20px; max-width: 52ch; color: var(--ink-2); font-size: var(--fz-b); }
body.ds-cards .cban-art { align-self: center; padding: 18px clamp(16px, 2.6vw, 36px) 18px 0; }
body.ds-cards .cban-art .hc-pics { max-width: 330px; margin-left: auto; }
body.ds-cards .cban .cb-foto, body.ds-cards .cban .cb-foto img { width: 100%; height: auto; border-radius: var(--r-m); }
body.ds-cards .cban-adv { grid-column: 1 / -1; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; list-style: none; margin: 0; padding: 14px clamp(20px, 2.6vw, 36px); border-top: 1px solid var(--line); background: rgba(255, 255, 255, .7); }
body.ds-cards .cban-adv li { display: flex; align-items: center; gap: 12px; font-size: var(--fz-s); font-weight: 500; line-height: var(--lh-s); }
body.ds-cards .cban-adv svg { width: 30px; height: 30px; padding: 8px; border-radius: 50%; background: var(--red-soft); color: var(--red); flex: none; }
@media (max-width: 767px) {
	body.ds-cards .cban { grid-template-columns: 1fr; }
	body.ds-cards .cban-t { padding: 20px 16px 8px; }
	body.ds-cards .cban-lead { margin: 8px 0 16px; font-size: var(--fz-m); }
	body.ds-cards .cban-art { padding: 8px 16px 16px; }
	body.ds-cards .cban-art .hc-pics { max-width: 200px; margin: 0 auto; }
	body.ds-cards .cban-adv { display: flex; overflow-x: auto; scrollbar-width: none; padding: 12px 16px; gap: 20px; }
	body.ds-cards .cban-adv li { flex: none; max-width: 190px; }
}

/* лента подразделов */
body.ds-cards .cat-subs-w { position: relative; margin-bottom: 16px; }
body.ds-cards .cat-subs { display: flex; gap: 12px; overflow-x: auto; scroll-snap-type: x proximity; scrollbar-width: none; padding: 2px; }
body.ds-cards .cat-subs::-webkit-scrollbar { display: none; }
body.ds-cards .sct { flex: none; scroll-snap-align: start; display: flex; align-items: center; gap: 12px; min-width: 190px; max-width: 250px; padding: 8px 16px 8px 8px; background: #fff; border: 1px solid var(--line); border-radius: var(--r-m); }
body.ds-cards .sct:hover { border-color: #CFCBC3; box-shadow: var(--shadow); }
body.ds-cards .sct.on { border-color: var(--red); box-shadow: inset 0 0 0 1px var(--red); }
body.ds-cards .sct img, body.ds-cards .sct-ph { width: 52px; height: 52px; object-fit: contain; border-radius: var(--r-s); background: var(--paper-2); flex: none; }
body.ds-cards .sct img { background: #fff; }
body.ds-cards .sct span { display: grid; line-height: var(--lh-s); }
body.ds-cards .sct b { font-size: var(--fz-m); font-weight: 600; }
body.ds-cards .sct small { font-size: var(--fz-s); color: var(--ink-3); }
body.ds-cards .cs-next { position: absolute; right: -10px; top: 50%; translate: 0 -50%; width: 36px; height: 36px; border-radius: 50%; background: #fff; box-shadow: var(--shadow); border: 1px solid var(--line); display: grid; place-items: center; }
body.ds-cards .cs-next svg { width: 16px; height: 16px; }
@media (max-width: 767px) { body.ds-cards .cs-next { display: none; } body.ds-cards .cat-subs { margin: 0 calc(-1 * var(--gut)); padding: 2px var(--gut); } body.ds-cards .sct { min-width: 170px; } }

/* быстрые фильтры, «Популярные ▾», «Акции» */
body.ds-cards .cq-row { display: flex; gap: 8px; align-items: flex-start; margin-bottom: 16px; }
body.ds-cards .cq-row .quick { flex: 1; margin: 0; min-width: 0; }
body.ds-cards .cq-pop { position: relative; flex: none; }
body.ds-cards .cq-pop summary, body.ds-cards .cq-sale { height: 40px; padding: 0 16px; border-radius: 999px; display: inline-flex; align-items: center; gap: 8px; font-size: var(--fz-m); cursor: pointer; list-style: none; white-space: nowrap; }
body.ds-cards .cq-pop summary { background: #fff; border: 1px solid var(--line); }
body.ds-cards .cq-pop summary::-webkit-details-marker { display: none; }
body.ds-cards .cq-pop summary::after { content: "▾"; font-size: var(--fz-xs); }
body.ds-cards .cq-pop div { position: absolute; right: 0; top: calc(100% + 6px); z-index: 20; width: 280px; background: #fff; border: 1px solid var(--line); border-radius: var(--r-m); box-shadow: var(--shadow); padding: 8px; display: grid; }
body.ds-cards .cq-pop a { padding: 8px 12px; border-radius: var(--r-s); font-size: var(--fz-m); }
body.ds-cards .cq-pop a:hover { background: var(--paper-2); }
body.ds-cards .cq-sale { flex: none; background: var(--red); color: #fff; font-weight: 600; }
body.ds-cards .cq-sale:hover { background: var(--red-hover); }
body.ds-cards .cq-sale svg { width: 16px; height: 16px; }
@media (max-width: 767px) { body.ds-cards .cq-row { flex-wrap: wrap; } body.ds-cards .cq-row .quick { flex-basis: 100%; } }

/* панель «Сортировка … Найдено N товаров» и сетка 5 в ряд */
body.ds-cards .cv2 .toolbar { gap: 12px; }
body.ds-cards .cv2 .tb-l { font-size: var(--fz-m); color: var(--ink-3); }
body.ds-cards .cv2 .views { margin-left: auto; }
body.ds-cards .cv2 .found { font-size: var(--fz-m); color: var(--ink-3); }
body.ds-cards .cv2 .found b { color: var(--ink); }
@media (max-width: 999px) { body.ds-cards .cv2 .tb-l, body.ds-cards .cv2 .found { display: none; } }
@media (min-width: 1360px) { body.ds-cards .cv2 .grid.g4 { grid-template-columns: repeat(5, minmax(0, 1fr)); } }

/* нерабочее время — подсказка у телефона в верхней строке (A2-CRO-020); на телефоне она встаёт вместо номера — звонок ночью уйдёт «в пустоту» */
body.ds-cards .tb-offh{color:var(--promo);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}
body.ds-cards .tb-offh[hidden]{display:none}
body.ds-cards .tb-offh:not([hidden])~.trust-line{display:none}
@media(max-width:767px){body.ds-cards .tb-offh{font-size: var(--fz-xs)}body.ds-cards .tb-offh:not([hidden])~.dealer,body.ds-cards .topbar .wrap:has(>.tb-offh:not([hidden]))>a:first-child{display:none}}

/* Широкие мониторы (06.10.2026): мягкий фон страницы — белые карточки на нём; шире содержимое, чтобы края не пустовали */
body.ds-cards { background: #F6F5F2; }
body.ds-cards .header, body.ds-cards .promise { background: #fff; }
@media (min-width: 1680px) { body.ds-cards { --wrap: 1480px; } }
@media (min-width: 1920px) { body.ds-cards { --wrap: 1600px; } }
body.ds-cards .quick a { background: #fff; box-shadow: inset 0 0 0 1px var(--line); }
body.ds-cards .hero-main .h-display { max-width: 15ch; }
body.ds-cards .hero-main .lead, body.ds-cards .hero-main > p { max-width: 46ch; }
/* P3, пачка 1 (07.10.2026) */
body.ds-cards .spec-table caption, body.ds-cards .tab-body .spec-table caption { font: 700 var(--fz-l)/var(--lh-s) var(--f-text); text-transform: none; letter-spacing: 0; color: var(--ink); padding: 20px 0 8px; } /* группы характеристик — заголовками (A2-UI-013) */
@media (max-width: 480px) { body.ds-cards .kit-card .kit-btns { display: flex; flex-wrap: wrap; gap: 8px; } body.ds-cards .kit-card .kit-btns > * { min-height: 44px; } body.ds-cards .kit-card .kit-btns [data-kit-card-cart] { flex: 1 0 100%; } body.ds-cards .kit-card .kit-btns > a { flex: 1; } body.ds-cards .kit-card .kit-btns [data-kit-card-kp], body.ds-cards .kit-card .kit-btns [data-kit-share] { flex: 0 0 auto; min-width: 44px; } } /* плитка комплекта: «В корзину» на всю ширину, остальное одним рядом (A2-MOB-024) */
body.ds-cards .cban-pg { font-weight: 500; color: var(--ink-2); }
/* P2-9: A2-MOB-008 — «Добавлено в корзину» над липкой панелью покупки; A2-UI-006 — недоступная и занятая кнопка */
@media (max-width: 767px) { body.ds-cards.has-sticky-buy .toast { bottom: calc(148px + env(safe-area-inset-bottom)); } }
body.ds-cards :is(.btn:disabled, .btn[aria-busy=true], button[aria-busy=true]) { opacity: .55; cursor: not-allowed; }
/* P2-9: A2-UX-015 — «Ещё» в нижнем меню гостя: шторка ссылок */
body.ds-cards .tb-more summary { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 2px; min-height: 52px; font-size: var(--fz-xs); color: var(--ink-3); list-style: none; cursor: pointer; }
body.ds-cards .tb-more summary::-webkit-details-marker { display: none; }
body.ds-cards .tb-more[open] summary, body.ds-cards .tb-more summary.on { color: var(--red); }
body.ds-cards .tb-sheet { position: fixed; left: 8px; right: 8px; bottom: calc(60px + env(safe-area-inset-bottom)); display: grid; padding: 8px; background: #fff; border-radius: var(--r-l); box-shadow: var(--sh-3); z-index: 41; }
body.ds-cards .tb-sheet a { flex-direction: row; gap: 12px; min-height: 48px; padding: 0 12px; font-size: var(--fz-b); color: var(--ink); }
body.ds-cards .tb-sheet svg { width: 20px; height: 20px; }
/* P3, пачка 2 (07.10.2026) */
body.ds-cards .card .name { -webkit-line-clamp: 2; min-height: 2.7em; } body.ds-cards .card .brand { min-height: 1.35em; } body.ds-cards .card .specs { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
body.ds-cards :is(.field:has(> .phone-in), .send:has(> .phone-in))::after { content: "Номер нужен только для связи по этому заказу или заявке. Без рассылок, если не попросите."; display: block; flex-basis: 100%; margin-top: 8px; font-size: var(--fz-xs); line-height: var(--lh-s); color: var(--ink-3); }
body.ds-cards:lang(tg) :is(.field:has(> .phone-in), .send:has(> .phone-in))::after { content: "Рақам танҳо барои тамос оид ба ҳамин фармоиш ё дархост лозим аст. Бе паёмҳои таблиғотӣ, агар худатон нахоҳед."; }
@media (max-width: 767px) { body.ds-cards.has-sticky-buy .app-bar { bottom: calc(142px + env(safe-area-inset-bottom)); }
	body.ds-cards:has(#mega:not([hidden])) .header .search { position: fixed; top: 68px; left: var(--gut, 16px); right: var(--gut, 16px); z-index: 72; } body.ds-cards .mega .mega-head { padding-bottom: 80px; } }
body.ds-cards .kit-list li { grid-template-columns: auto minmax(0, 1fr) auto; } body.ds-cards .kit-list li span { display: inline; color: var(--ink-3); } body.ds-cards .kit-list li span::after { content: ":"; }
body.ds-cards .why-pr { margin: 8px 0 2px; font-size: var(--fz-s); } body.ds-cards .why-pr summary { cursor: pointer; color: var(--ink-2); text-decoration: underline dotted; width: max-content; } body.ds-cards .why-pr ul { margin: 8px 0 0; padding-left: 20px; color: var(--ink-2); }
body.ds-cards .b-lbl { display: contents; cursor: pointer; } body.ds-cards .b-more { grid-column: 3; font-size: var(--fz-xs); color: var(--ink-3); text-decoration: underline; margin-top: -8px; }
body.ds-cards .kit-org { display: contents; } body.ds-cards .co-save { color: var(--ok, #1E7F4F); font-weight: 600; } body.ds-cards .st-hint { font-size: var(--fz-s); color: var(--ink-3); margin: -4px 0 12px; } body.ds-cards .st-acts { display: flex; flex-wrap: wrap; gap: 8px; }
body.ds-cards .kit-f { display: grid; gap: 8px; margin: 0 0 16px; } body.ds-cards .kit-f-row { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; } body.ds-cards .kit-f-row > span { font-size: var(--fz-s); color: var(--ink-3); min-width: 64px; flex: none; } @media (max-width: 600px) { body.ds-cards .kit-f-row { flex-wrap: nowrap; overflow-x: auto; scrollbar-width: none; } body.ds-cards .kit-f-row .chip { flex: none; } }
body.ds-cards .wifi-safe ol { margin: 0 0 8px; padding-left: 20px; display: grid; gap: 8px; }
/* P2, пачка 13: A2-MOB-014 — окна «1 клик», «Перезвоните», «КП» на телефоне — шторкой снизу, прокрутка внутри */
@media (max-width: 767px) { body.ds-cards dialog.oc { margin: auto 0 0; width: 100%; max-width: none; max-height: 100dvh; overflow: auto; border-radius: var(--r-l) var(--r-l) 0 0; } }
/* P2-10: A2-UI-022 — значки «сравнить» и «избранное» на плитке: на компьютере — при наведении (выбранные видно всегда),
   на телефоне — только «избранное» на месте «сравнить» (сравнение — в карточке товара), плитка не перегружена */
@media (hover: hover) and (min-width: 768px) { body.ds-cards .card :is(.cmp, .fav):not(.on) { opacity: 0; transition: opacity .15s; } body.ds-cards .card:is(:hover, :focus-within) :is(.cmp, .fav) { opacity: 1; } }
@media (max-width: 767px) { body.ds-cards .card .cmp:not(.on) { display: none; } body.ds-cards .card .fav { top: 4px; } }

/* ---------- P3-6: «Что вы ищете?» под первым экраном (A2-CRO-027), «О магазине» (A2-CONT-028), сроки в первом экране (A2-UX-052) ---------- */
body.ds-cards .doors { display: grid; gap: 8px; margin-top: 12px; }
@media (min-width: 640px) { body.ds-cards .doors { grid-template-columns: repeat(3, 1fr); gap: 12px; } }
body.ds-cards .doors a { display: grid; grid-template-columns: 24px 1fr; gap: 0 12px; align-items: center; min-height: 44px; padding: 12px 16px; background: #fff; border: 1px solid var(--line); border-radius: var(--r-m); box-shadow: var(--sh-1); color: inherit; text-decoration: none; }
body.ds-cards .doors svg { grid-row: span 2; width: 24px; height: 24px; color: var(--red); }
body.ds-cards .doors b { font-size: var(--fz-m); line-height: 1.25; }
body.ds-cards .doors span { font-size: var(--fz-s); color: var(--ink-2); }
body.ds-cards .about-shop p { max-width: 75ch; color: var(--ink-2); }
body.ds-cards .hero-main .stat b::first-letter { text-transform: uppercase; }
body.ds-cards .pdp-page .stage.no-ph { aspect-ratio: 2 / 1; } /* P37-9: нет фото — заглушка ниже, цена и «В корзину» на телефоне выше */
@media (max-width: 767px) { body.ds-cards .pdp-page .stage.no-ph { aspect-ratio: 3 / 1; } }
body.ds-cards .ph-note { margin: 8px 0 0; font-size: var(--fz-s); color: var(--ink-2); }
body.ds-cards .spec-empty { padding: 12px 16px; background: var(--paper); border-radius: var(--r-m); color: var(--ink-2); } /* P37-4 */
@media (max-width: 639px) { /* 11.10.2026: преимущества баннера раздела на телефоне — сеткой 2 × 2, без обрезки справа */
	body.ds-cards .cban .cban-adv { display: grid; grid-template-columns: 1fr 1fr; overflow: visible; gap: 10px 12px; }
	body.ds-cards .cban .cban-adv li { max-width: none; }
}
