

/* Start:/local/templates/techstore/techstore.css?178877504827404*/
/* ==========================================================================
   TechStore — дизайн-система шаблона.
   Подключается поверх template_styles.css (сетка Bootstrap 4 и базовые
   стили компонентов Битрикса остаются, внешний вид полностью переопределён).
   ========================================================================== */

:root {
	--ts-bg:          #ffffff;
	--ts-surface:     #f5f7fa;
	--ts-surface-2:   #eef1f6;
	--ts-ink:         #0f1720;
	--ts-ink-2:       #33404f;
	--ts-muted:       #667486;
	--ts-line:        #e4e8ee;
	--ts-accent:      #2f6bff;
	--ts-accent-2:    #1f4fd0;
	--ts-accent-soft: #eaf0ff;
	--ts-danger:      #e23b53;
	--ts-success:     #12a06e;
	--ts-warning:     #f0a020;
	--ts-r-sm: 10px;
	--ts-r:    14px;
	--ts-r-lg: 20px;
	--ts-sh:    0 1px 2px rgba(15,23,32,.05), 0 6px 20px rgba(15,23,32,.05);
	--ts-sh-h:  0 2px 6px rgba(15,23,32,.07), 0 16px 36px rgba(15,23,32,.10);
	--ts-font: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto,
	           "Helvetica Neue", Arial, "Noto Sans", sans-serif;
	--ts-head: 72px;
}

/* Перекрашиваем тему компонентов Битрикса под акцент TechStore */
.bx-blue, .bx-theme-blue, body.ts {
	--primary: #2f6bff;
	--theme-color-primary: #2f6bff;
	--theme-color-second: #5b8cff;
	--theme-color-light: #f5f7fa;
	--theme-b-link: #2f6bff;
	--theme-b-link-hover: #1f4fd0;
	--theme-b-tx-primary: #fff;
	--theme-b-bg-primary: #2f6bff;
	--theme-b-bd-primary: #2f6bff;
	--theme-b-sd-primary: rgba(47,107,255,.35);
	--theme-b-tx-primary-hover: #fff;
	--theme-b-bg-primary-hover: #1f4fd0;
	--theme-b-bd-primary-hover: #1f4fd0;
	--theme-b-tx-primary-active: #fff;
	--theme-b-bg-primary-active: #1f4fd0;
	--theme-b-bd-primary-active: #1f4fd0;
}

/* --------------------------------------------------------- база */
html { -webkit-text-size-adjust: 100%; }
body.ts {
	margin: 0;
	background: var(--ts-bg);
	color: var(--ts-ink);
	font-family: var(--ts-font);
	font-size: 16px;
	line-height: 1.55;
	-webkit-font-smoothing: antialiased;
}
body.ts a { color: var(--ts-accent); text-decoration: none; }
body.ts a:hover { color: var(--ts-accent-2); text-decoration: underline; }
body.ts img { max-width: 100%; height: auto; }
body.ts h1, body.ts h2, body.ts h3, body.ts h4 {
	font-weight: 700; line-height: 1.2; color: var(--ts-ink); letter-spacing: -.015em;
}
:focus-visible { outline: 3px solid var(--ts-accent); outline-offset: 2px; border-radius: 4px; }

.ts-container { width: 100%; max-width: 1240px; margin: 0 auto; padding: 0 16px; }
.ts-visually-hidden {
	position: absolute !important; width: 1px; height: 1px; overflow: hidden;
	clip: rect(0 0 0 0); white-space: nowrap;
}
.ts-skip {
	position: absolute; left: -9999px; top: 0; z-index: 100;
	background: var(--ts-ink); color: #fff; padding: 12px 18px; border-radius: 0 0 var(--ts-r-sm) 0;
}
.ts-skip:focus { left: 0; }

.ts-h1 { font-size: clamp(26px, 4vw, 38px); margin: 8px 0 20px; }
.ts-h2 { font-size: clamp(22px, 3vw, 30px); margin: 0 0 6px; }
.ts-lead { color: var(--ts-muted); font-size: 16px; margin: 0; }

/* --------------------------------------------------------- шапка */
.ts-header { position: sticky; top: 0; z-index: 60; background: var(--ts-bg); border-bottom: 1px solid var(--ts-line); }
.ts-topbar { background: var(--ts-ink); color: #cbd5e1; font-size: 13px; }
.ts-topbar__in { display: flex; align-items: center; gap: 22px; height: 38px; }
.ts-topbar__phone { margin-left: auto; color: #fff !important; font-weight: 600; white-space: nowrap; }
.ts-topbar__phone:hover { color: #fff !important; }

.ts-header__main {
	display: grid; align-items: center; gap: 12px;
	grid-template-columns: auto 1fr auto;
	grid-template-areas: "burger logo actions" "search search search";
	padding: 12px 16px;
}
.ts-logo { grid-area: logo; display: inline-flex; align-items: center; gap: 10px; color: var(--ts-ink) !important; text-decoration: none !important; }
.ts-logo__mark { color: var(--ts-accent); flex: none; }
.ts-logo__text { font-size: 21px; font-weight: 800; letter-spacing: -.03em; }
.ts-logo__text span { color: var(--ts-accent); }
.ts-logo--light { color: #fff !important; }
.ts-logo--light .ts-logo__mark { color: #fff; }
.ts-logo--light .ts-logo__text span { color: #7ba2ff; }

.ts-burger {
	grid-area: burger; display: inline-flex; flex-direction: column; justify-content: center; gap: 5px;
	width: 42px; height: 42px; padding: 0 10px; border: 1px solid var(--ts-line);
	border-radius: var(--ts-r-sm); background: #fff; cursor: pointer;
}
.ts-burger span { display: block; height: 2px; background: var(--ts-ink); border-radius: 2px; transition: .2s; }
.ts-burger[aria-expanded="true"] span:nth-child(1) { transform: translateY(7px) rotate(45deg); }
.ts-burger[aria-expanded="true"] span:nth-child(2) { opacity: 0; }
.ts-burger[aria-expanded="true"] span:nth-child(3) { transform: translateY(-7px) rotate(-45deg); }

.ts-search { grid-area: search; display: flex; position: relative; }
.ts-search__input {
	flex: 1; min-width: 0; height: 44px; padding: 0 46px 0 16px;
	border: 1px solid var(--ts-line); border-radius: var(--ts-r-sm);
	background: var(--ts-surface); font: inherit; font-size: 15px; color: var(--ts-ink);
}
.ts-search__input::placeholder { color: var(--ts-muted); }
.ts-search__input:focus { background: #fff; border-color: var(--ts-accent); outline: none; box-shadow: 0 0 0 3px var(--ts-accent-soft); }
.ts-search__btn {
	position: absolute; right: 4px; top: 4px; width: 36px; height: 36px;
	border: 0; border-radius: 8px; background: transparent; color: var(--ts-muted); cursor: pointer;
	display: inline-flex; align-items: center; justify-content: center;
}
.ts-search__btn:hover { background: var(--ts-accent-soft); color: var(--ts-accent); }

.ts-header__actions { grid-area: actions; display: flex; align-items: center; gap: 8px; }

.ts-cart {
	display: inline-flex; align-items: center; gap: 10px; height: 42px; padding: 0 14px;
	border-radius: var(--ts-r-sm); background: var(--ts-ink); color: #fff !important;
	font-weight: 600; font-size: 14px; text-decoration: none !important; white-space: nowrap;
}
.ts-cart:hover { background: var(--ts-accent); color: #fff !important; }
.ts-cart__icon { position: relative; display: inline-flex; }
.ts-cart__count {
	position: absolute; top: -7px; right: -9px; min-width: 18px; height: 18px; padding: 0 5px;
	border-radius: 9px; background: var(--ts-accent); color: #fff;
	font-size: 11px; line-height: 18px; text-align: center; font-weight: 700;
}
.ts-cart--empty .ts-cart__count { background: var(--ts-muted); }
.ts-cart__sum { display: none; }

/* --------------------------------------------------------- навигация */
.ts-nav { border-top: 1px solid var(--ts-line); background: var(--ts-bg); }
.ts-nav[hidden] { display: none; }
.ts-nav ul { list-style: none; margin: 0; padding: 0; }
.ts-nav__list { display: flex; flex-direction: column; gap: 2px; padding: 8px 0 14px; }
.ts-nav__link {
	display: block; padding: 11px 4px; color: var(--ts-ink-2) !important;
	font-weight: 500; font-size: 15px; text-decoration: none !important; border-radius: 8px;
}
.ts-nav__link:hover { color: var(--ts-accent) !important; background: var(--ts-surface); }
.ts-nav__item--active > .ts-nav__link { color: var(--ts-accent) !important; font-weight: 700; }

/* --------------------------------------------------------- хлебные крошки */
.ts-crumbs { padding: 16px 0 0; font-size: 13px; color: var(--ts-muted); }
.ts-crumbs ol { display: flex; flex-wrap: wrap; gap: 6px; list-style: none; margin: 0; padding: 0; }
.ts-crumbs li:not(:last-child)::after { content: "/"; margin-left: 6px; color: var(--ts-line); }
.ts-crumbs a { color: var(--ts-muted); }
.ts-crumbs a:hover { color: var(--ts-accent); }

.ts-main { min-height: 50vh; }
.ts-page { padding: 8px 16px 56px; }

/* --------------------------------------------------------- кнопки */
.ts-btn, body.ts .btn {
	display: inline-flex; align-items: center; justify-content: center; gap: 8px;
	min-height: 44px; padding: 10px 20px; border: 1px solid transparent;
	border-radius: var(--ts-r-sm); font: inherit; font-weight: 600; font-size: 15px;
	cursor: pointer; text-decoration: none !important; transition: background .15s, color .15s, border-color .15s;
}
.ts-btn--primary, body.ts .btn-primary, body.ts .btn.btn-default {
	background: var(--ts-accent); border-color: var(--ts-accent); color: #fff !important;
}
.ts-btn--primary:hover, body.ts .btn-primary:hover, body.ts .btn.btn-default:hover {
	background: var(--ts-accent-2); border-color: var(--ts-accent-2); color: #fff !important;
}
.ts-btn--ghost, body.ts .btn-outline-primary, body.ts .btn-secondary {
	background: #fff; border-color: var(--ts-line); color: var(--ts-ink) !important;
}
.ts-btn--ghost:hover, body.ts .btn-outline-primary:hover, body.ts .btn-secondary:hover {
	border-color: var(--ts-accent); color: var(--ts-accent) !important; background: #fff;
}
.ts-btn--dark { background: var(--ts-ink); color: #fff !important; }
.ts-btn--dark:hover { background: var(--ts-accent); }
.ts-btn--lg { min-height: 52px; padding: 12px 28px; font-size: 16px; }
.ts-btn[disabled], .ts-btn--disabled { opacity: .5; pointer-events: none; }

/* --------------------------------------------------------- главная */
.ts-hero {
	position: relative; overflow: hidden; border-radius: var(--ts-r-lg);
	background: linear-gradient(135deg, #0f1720 0%, #1b2b4b 55%, #24408a 100%);
	color: #fff; padding: 40px 24px; margin: 20px 0 40px;
}
.ts-hero::after {
	content: ""; position: absolute; right: -120px; top: -140px; width: 460px; height: 460px;
	border-radius: 50%; background: radial-gradient(circle at 35% 35%, rgba(47,107,255,.55), rgba(47,107,255,0) 70%);
}
.ts-hero__in { position: relative; z-index: 1; max-width: 640px; }
.ts-hero__badge {
	display: inline-block; padding: 5px 12px; border-radius: 999px;
	background: rgba(255,255,255,.14); font-size: 13px; font-weight: 600; margin-bottom: 16px;
}
.ts-hero h1 { color: #fff; font-size: clamp(28px, 5.2vw, 46px); margin: 0 0 14px; }
.ts-hero p { color: #c3d0e4; font-size: 17px; margin: 0 0 26px; }
.ts-hero__actions { display: flex; flex-wrap: wrap; gap: 12px; }
.ts-hero__actions .ts-btn--ghost { background: transparent; border-color: rgba(255,255,255,.4); color: #fff !important; }
.ts-hero__actions .ts-btn--ghost:hover { background: rgba(255,255,255,.12); color: #fff !important; border-color: #fff; }

.ts-section { margin: 0 0 48px; }
.ts-section__head { display: flex; align-items: flex-end; justify-content: space-between; gap: 16px; margin-bottom: 20px; }
.ts-section__head a { font-size: 15px; font-weight: 600; white-space: nowrap; }

.ts-cats { display: grid; grid-template-columns: repeat(2, 1fr); gap: 14px; }
.ts-cat {
	display: flex; flex-direction: column; gap: 8px; padding: 16px;
	border: 1px solid var(--ts-line); border-radius: var(--ts-r); background: var(--ts-bg);
	color: var(--ts-ink) !important; text-decoration: none !important; transition: box-shadow .18s, border-color .18s, transform .18s;
}
.ts-cat:hover { border-color: transparent; box-shadow: var(--ts-sh-h); transform: translateY(-2px); }
.ts-cat__img { display: block; width: 100%; aspect-ratio: 1/1; object-fit: cover;
	border-radius: var(--ts-r-sm); background: var(--ts-surface); }
.ts-cat__name { font-weight: 700; font-size: 16px; }
.ts-cat__count { color: var(--ts-muted); font-size: 13px; }

.ts-features { display: grid; grid-template-columns: 1fr; gap: 14px; }
.ts-feature { padding: 20px; border-radius: var(--ts-r); background: var(--ts-surface); }
.ts-feature__icon {
	width: 40px; height: 40px; border-radius: 12px; background: #fff; color: var(--ts-accent);
	display: inline-flex; align-items: center; justify-content: center; margin-bottom: 12px;
}
.ts-feature h3 { font-size: 16px; margin: 0 0 6px; }
.ts-feature p { margin: 0; color: var(--ts-muted); font-size: 14px; }

.ts-cta {
	display: flex; flex-direction: column; gap: 18px; align-items: flex-start;
	padding: 32px 24px; border-radius: var(--ts-r-lg);
	background: var(--ts-accent-soft); border: 1px solid #d5e0ff;
}
.ts-cta h2 { margin: 0; font-size: clamp(22px, 3vw, 28px); }
.ts-cta p { margin: 0; color: var(--ts-ink-2); }

/* --------------------------------------------------------- карточка товара (компоненты Битрикса) */
body.ts .product-item-container { height: 100%; }
body.ts .product-item {
	height: 100%; display: flex; flex-direction: column; padding: 14px;
	border: 1px solid var(--ts-line); border-radius: var(--ts-r); background: #fff;
	transition: box-shadow .18s, border-color .18s, transform .18s;
}
body.ts .product-item:hover { border-color: transparent; box-shadow: var(--ts-sh-h); transform: translateY(-2px); }
body.ts .product-item-image-wrapper { border-radius: var(--ts-r-sm); overflow: hidden; background: var(--ts-surface); }
body.ts .product-item-title { font-size: 15px; font-weight: 600; line-height: 1.35; margin: 12px 0 8px; }
body.ts .product-item-title a { color: var(--ts-ink) !important; }
body.ts .product-item-title a:hover { color: var(--ts-accent) !important; text-decoration: none; }
body.ts .product-item-price-current { font-size: 19px; font-weight: 800; color: var(--ts-ink); }
body.ts .product-item-price-old { font-size: 14px; color: var(--ts-muted); text-decoration: line-through; }
body.ts .product-item-label-text span,
body.ts .product-item-label-ring {
	background: var(--ts-ink); color: #fff; border: 0; border-radius: 999px;
	font-size: 11px; font-weight: 700; letter-spacing: .02em; padding: 4px 10px; box-shadow: none;
}
body.ts .product-item-label-ring { background: var(--ts-danger); width: auto; height: auto; line-height: 1.4; }
body.ts .product-item-label-ring > span { background: transparent; padding: 0; }
body.ts .product-item-amount-field-container { max-width: 180px; }
body.ts .product-item-button-container { margin-top: auto; padding-top: 10px; }
body.ts .product-item-info-container { padding: 0; }
body.ts .product-item-detail-info-container { padding: 0; }

/* Карточка товара — детальная */
body.ts .product-item-detail-tab-content { font-size: 15px; }
body.ts .bx-lg-4 .product-item-detail-info-container,
body.ts .product-item-detail-pay-block { margin-top: 12px; }
body.ts .product-item-detail-price-current { font-size: 30px; font-weight: 800; }
body.ts .product-item-detail-price-old { font-size: 16px; color: var(--ts-muted); }
body.ts .product-item-detail-slider-container { background: var(--ts-surface); border-radius: var(--ts-r); }
body.ts .product-item-detail-properties { width: 100%; }
body.ts .product-item-detail-properties dt { color: var(--ts-muted); font-weight: 500; }
body.ts .product-item-detail-properties dd { font-weight: 600; }

/* --------------------------------------------------------- каталог: сайдбар и фильтр */
body.ts .bx-filter { border: 1px solid var(--ts-line); border-radius: var(--ts-r); background: #fff; padding: 4px 14px 14px; }
body.ts .bx-filter .bx-filter-title { font-size: 16px; font-weight: 700; padding: 12px 0 4px; }
body.ts .bx-filter-parameters-box-title { font-weight: 600; color: var(--ts-ink); }
body.ts .bx-filter-button-box { padding: 8px 0 0; }
body.ts .bx-sidebar-block { border: 1px solid var(--ts-line); border-radius: var(--ts-r); padding: 14px; margin-bottom: 18px; }

/* --------------------------------------------------------- корзина / оформление */
body.ts .bx-basket-item-list { border-radius: var(--ts-r); }
body.ts .basket-items-list-wrapper { border: 1px solid var(--ts-line); border-radius: var(--ts-r); overflow: hidden; }
body.ts .basket-checkout-container { border: 1px solid var(--ts-line); border-radius: var(--ts-r); background: var(--ts-surface); }
body.ts .basket-checkout-section { border: 0; }
body.ts input[type="text"], body.ts input[type="email"], body.ts input[type="tel"],
body.ts input[type="password"], body.ts input[type="number"], body.ts input[type="search"],
body.ts select, body.ts textarea {
	border: 1px solid var(--ts-line); border-radius: var(--ts-r-sm); padding: 10px 12px;
	font: inherit; font-size: 15px; background: #fff; color: var(--ts-ink); max-width: 100%;
}
body.ts input:focus, body.ts select:focus, body.ts textarea:focus {
	border-color: var(--ts-accent); outline: none; box-shadow: 0 0 0 3px var(--ts-accent-soft);
}

/* --------------------------------------------------------- состояния */
.ts-empty { text-align: center; padding: 48px 16px; border: 1px dashed var(--ts-line); border-radius: var(--ts-r); color: var(--ts-muted); }
.ts-empty h2 { margin: 0 0 8px; font-size: 20px; }
.ts-note { padding: 14px 16px; border-radius: var(--ts-r-sm); background: var(--ts-surface); color: var(--ts-ink-2); font-size: 14px; }

/* --------------------------------------------------------- контент-страницы */
.ts-prose { max-width: 780px; }
.ts-prose h2 { font-size: 22px; margin: 28px 0 10px; }
.ts-prose h3 { font-size: 18px; margin: 22px 0 8px; }
.ts-prose p, .ts-prose li { color: var(--ts-ink-2); }
.ts-prose ul, .ts-prose ol { padding-left: 22px; }

.ts-contacts { display: grid; gap: 16px; grid-template-columns: 1fr; margin-bottom: 32px; }
.ts-contact-card { padding: 20px; border: 1px solid var(--ts-line); border-radius: var(--ts-r); }
.ts-contact-card h2 { font-size: 15px; color: var(--ts-muted); font-weight: 600; margin: 0 0 6px; }
.ts-contact-card p { margin: 0; font-size: 17px; font-weight: 600; }

/* --------------------------------------------------------- подвал */
.ts-footer { background: var(--ts-ink); color: #b9c4d2; margin-top: 40px; }
.ts-footer__grid { display: grid; grid-template-columns: 1fr; gap: 28px; padding: 40px 16px; }
.ts-footer__about { font-size: 14px; margin: 14px 0; max-width: 320px; }
.ts-footer__phone { display: inline-block; color: #fff !important; font-size: 18px; font-weight: 700; }
.ts-footer__muted { color: #8695a8; font-size: 13px; margin: 4px 0 0; }
.ts-footer__title { font-size: 14px; text-transform: uppercase; letter-spacing: .06em; color: #fff; margin: 0 0 12px; }
.ts-footer__list { list-style: none; margin: 0; padding: 0; display: grid; gap: 9px; }
.ts-footer__list a { color: #b9c4d2 !important; font-size: 14px; }
.ts-footer__list a:hover { color: #fff !important; }
.ts-footer__bottom { border-top: 1px solid rgba(255,255,255,.09); }
.ts-footer__bottom-in { padding: 18px 16px; font-size: 13px; }
.ts-footer__bottom-in p { margin: 0; }

/* --------------------------------------------------------- планшет */
@media (min-width: 600px) {
	.ts-cats { grid-template-columns: repeat(2, 1fr); gap: 18px; }
	.ts-features { grid-template-columns: repeat(2, 1fr); }
	.ts-contacts { grid-template-columns: repeat(2, 1fr); }
	.ts-hero { padding: 56px 40px; }
	.ts-cta { flex-direction: row; align-items: center; justify-content: space-between; padding: 36px 40px; }
	.ts-cart__sum { display: inline; opacity: .75; font-weight: 500; }
}

/* --------------------------------------------------------- десктоп */
@media (min-width: 992px) {
	.ts-header__main {
		grid-template-columns: auto minmax(240px, 1fr) auto;
		grid-template-areas: "logo search actions";
		gap: 28px; padding: 16px;
	}
	.ts-burger { display: none; }
	.ts-nav { display: block !important; }
	.ts-nav[hidden] { display: block !important; }
	.ts-nav__list { flex-direction: row; gap: 4px; padding: 0; }
	.ts-nav__link { padding: 13px 14px; }
	.ts-nav__item--active > .ts-nav__link { box-shadow: inset 0 -2px 0 var(--ts-accent); border-radius: 8px 8px 0 0; }
	.ts-cats { grid-template-columns: repeat(4, 1fr); }
	.ts-features { grid-template-columns: repeat(4, 1fr); }
	.ts-contacts { grid-template-columns: repeat(3, 1fr); }
	.ts-footer__grid { grid-template-columns: 1.6fr 1fr 1fr 1.2fr; }
	.ts-footer__bottom-in { display: flex; justify-content: space-between; gap: 20px; }
	.ts-hero { padding: 72px 56px; }
}

/* Мобильная навигация выезжает по бургеру */
@media (max-width: 991.98px) {
	.ts-nav { position: absolute; left: 0; right: 0; background: #fff; border-bottom: 1px solid var(--ts-line); box-shadow: var(--ts-sh); }
	.ts-nav .ts-nav__link { padding: 13px 8px; border-bottom: 1px solid var(--ts-line); border-radius: 0; }
}

/* Печать и уменьшение анимаций */
@media (prefers-reduced-motion: reduce) {
	* { animation: none !important; transition: none !important; }
}

/* ---------- уточнения специфичности и поведения карточек ---------- */
body.ts .ts-hero h1,
body.ts .ts-hero h2 { color: #fff; }
body.ts .ts-hero p { color: #c3d0e4; }
body.ts .ts-footer h2,
body.ts .ts-footer h3 { color: #fff; }

/* Кнопка «В корзину» видна всегда: наведение мышью — не единственный способ
   взаимодействия (тач-устройства, клавиатура). */
body.ts .product-item-container .product-item-info-container[data-entity="buttons-block"].product-item-hidden {
	display: block !important;
	opacity: 1 !important;
}
body.ts .product-item-container .product-item-info-container[data-entity="props-block"] { display: none !important; }
body.ts .product-item-button-container .btn { width: 100%; }

/* Наличие товара в карточке */
body.ts .product-item-amount { text-align: left; }
.ts-stock { display: inline-flex; align-items: center; gap: 6px; font-size: 13px; font-weight: 600; margin: 2px 0 8px; }
.ts-stock::before { content: ""; width: 8px; height: 8px; border-radius: 50%; background: currentColor; }
.ts-stock--in { color: var(--ts-success); }
.ts-stock--out { color: var(--ts-muted); }

/* ---------- сортировка каталога ---------- */
.ts-sort { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin: 0 0 20px; }
.ts-sort__label { color: var(--ts-muted); font-size: 14px; }
.ts-sort__item {
	padding: 7px 14px; border: 1px solid var(--ts-line); border-radius: 999px;
	font-size: 14px; color: var(--ts-ink-2) !important; text-decoration: none !important; background: #fff;
}
.ts-sort__item:hover { border-color: var(--ts-accent); color: var(--ts-accent) !important; }
.ts-sort__item--active { background: var(--ts-ink); border-color: var(--ts-ink); color: #fff !important; }

/* ---------- боковая колонка каталога ---------- */
.ts-sidebar-block { margin-bottom: 22px; }
.ts-sidebar-title { font-size: 15px; font-weight: 700; margin: 0 0 10px; }
.ts-side-nav { list-style: none; margin: 0; padding: 0; display: grid; gap: 2px; }
.ts-side-nav__link {
	display: flex; align-items: center; justify-content: space-between; gap: 10px;
	padding: 9px 12px; border-radius: var(--ts-r-sm);
	color: var(--ts-ink-2) !important; text-decoration: none !important; font-size: 15px;
}
.ts-side-nav__link:hover { background: var(--ts-surface); color: var(--ts-accent) !important; }
.ts-side-nav__link--active { background: var(--ts-accent-soft); color: var(--ts-accent) !important; font-weight: 600; }
.ts-side-nav__count { color: var(--ts-muted); font-size: 13px; }
.ts-sidebar-help ul { list-style: none; margin: 0; padding: 0; display: grid; gap: 8px; }
.ts-sidebar-help a { font-size: 14px; }

/* ---------- сетка товаров ----------
   Битрикс разбивает товары на «строки» по LINE_ELEMENT_COUNT. Раскрываем
   эти обёртки через display:contents и раскладываем всё одной CSS-сеткой,
   чтобы количество колонок зависело только от ширины экрана. */
body.ts .catalog-section {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(210px, 1fr));
	gap: 16px;
}
body.ts .catalog-section [data-entity="items-row"] { display: contents; }
body.ts .catalog-section [data-entity="items-row"] > [class*="col-"] {
	display: flex; width: auto; max-width: none; flex: initial; padding: 0; margin: 0;
}
body.ts .catalog-section [data-entity="items-row"] > [class*="col-"] > .product-item-container { width: 100%; }
body.ts .catalog-section > .catalog-block-header { grid-column: 1 / -1; }

/* ---------- карточка товара: детальная ---------- */
body.ts .product-item-detail-price-current { color: var(--ts-ink); }
body.ts .product-item-detail-price-old { text-decoration: line-through; }
body.ts .product-item-detail-info-container { border-radius: var(--ts-r); }
body.ts .product-item-detail-tabs-container { border-bottom: 1px solid var(--ts-line); }
body.ts .product-item-detail-tab { font-weight: 600; }

/* ---------- умный фильтр ---------- */
body.ts .smart-filter { border: 1px solid var(--ts-line); border-radius: var(--ts-r); padding: 14px; }
body.ts .smart-filter-title { font-size: 15px; font-weight: 700; margin-bottom: 10px; }
body.ts .smart-filter-parameters-box-title-text { font-weight: 600; font-size: 14px; }
body.ts .smart-filter-button-box .btn { min-height: 40px; }

/* ---------- корзина ---------- */
body.ts .basket-filter, body.ts .basket-items-list-header-filter { display: none !important; }
body.ts .basket-item-block-image { padding: 8px; }
body.ts .basket-item-label-ring, body.ts .basket-item-label-text { z-index: 2; }

/* ---------- мобильные правки ---------- */
@media (max-width: 575.98px) {
	/* Верхняя плашка: на узких экранах оставляем только телефон */
	.ts-topbar__item { display: none; }
	.ts-topbar__in { justify-content: flex-end; }
	.ts-topbar__phone { margin-left: 0; }

	body.ts .catalog-section { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
	body.ts .product-item { padding: 10px; }
	body.ts .product-item-title { font-size: 13px; }
	body.ts .product-item-price-current { font-size: 16px; }
	body.ts .product-item-price-old { font-size: 12px; }
	body.ts .product-item-button-container .btn { font-size: 13px; padding: 8px 10px; min-height: 40px; }
	.ts-sort { gap: 6px; }
	.ts-sort__item { padding: 6px 11px; font-size: 13px; }
	.ts-hero { padding: 28px 20px; }
	.ts-cats { gap: 10px; }
}

/* ---------- характеристики на карточке товара ---------- */
body.ts .product-item-detail-properties { list-style: none; margin: 0; padding: 0; }
body.ts .product-item-detail-properties-item {
	display: flex; align-items: baseline; gap: 8px;
	padding: 6px 0; font-size: 14px; line-height: 1.4;
}
body.ts .product-item-detail-properties-name { flex: 0 1 auto; color: var(--ts-muted); }
body.ts .product-item-detail-properties-dots {
	flex: 1 1 12px; min-width: 12px; align-self: flex-end;
	border-bottom: 1px dotted var(--ts-line); transform: translateY(-4px);
}
body.ts .product-item-detail-properties-value {
	flex: 0 1 auto; text-align: right; font-weight: 600; color: var(--ts-ink);
}

/* Второй кадр карточки (показ по наведению) дублирует основной, а грузится
   всегда. Скрываем его: display:none — фон такого элемента браузер не качает. */
body.ts .product-item-image-alternative { display: none !important; }

/* End */


/* Start:/local/templates/techstore/template_styles.min.css?17887662908037*/
.bx-yellow,.bx-theme-yellow{--primary:#f9a91d;--theme-color-primary:#f9a91d;--theme-color-second:#faba4a;--theme-color-light:#fff;--theme-b-link:#f9a91d;--theme-b-link-hover:#faba4a;--theme-b-tx-primary:#fff;--theme-b-bg-primary:#f9a91d;--theme-b-bd-primary:#f9a91d;--theme-b-sd-primary:rgba(249,169,29,0.5);--theme-b-tx-primary-hover:#fff;--theme-b-bg-primary-hover:#faba4a;--theme-b-bd-primary-hover:#daa53e;--theme-b-tx-primary-active:#fff;--theme-b-bg-primary-active:#faba4a;--theme-b-bd-primary-active:#daa53e;--theme-b-tx-primary-disabled:#fff;--theme-b-bg-primary-disabled:#daa53e;--theme-b-bd-primary-disabled:#b7853b}.bx-blue,.bx-theme-blue{--primary:#0083d1;--theme-color-primary:#0083d1;--theme-color-second:#5ca6e4;--theme-color-light:#f0f6f8;--theme-b-link:#44b1c9;--theme-b-link-hover:#5cc3d1;--theme-b-tx-primary:#fff;--theme-b-bg-primary:#0083d1;--theme-b-bd-primary:#0083d1;--theme-b-sd-primary:rgba(0,131,209,0.5);--theme-b-tx-primary-hover:#fff;--theme-b-bg-primary-hover:#5ca6e4;--theme-b-bd-primary-hover:#5599d2;--theme-b-tx-primary-active:#fff;--theme-b-bg-primary-active:#5ca6e4;--theme-b-bd-primary-active:#5599d2;--theme-b-tx-primary-disabled:#fff;--theme-b-bg-primary-disabled:#5599d2;--theme-b-bd-primary-disabled:#4d8bbf}.bx-red,.bx-theme-red{--primary:#e22b2b;--theme-color-primary:#e22b2b;--theme-color-second:#e95c5c;--theme-color-light:#f0f0f0;--theme-b-link:#e22b2b;--theme-b-link-hover:#e95c5c;--theme-b-tx-primary:#fff;--theme-b-bg-primary:#e22b2b;--theme-b-bd-primary:#e22b2b;--theme-b-sd-primary:rgba(226,43,43,0.5);--theme-b-tx-primary-hover:#fff;--theme-b-bg-primary-hover:#e95c5c;--theme-b-bd-primary-hover:#d05454;--theme-b-tx-primary-active:#fff;--theme-b-bg-primary-active:#e95c5c;--theme-b-bd-primary-active:#d05454;--theme-b-tx-primary-disabled:#fff;--theme-b-bg-primary-disabled:#d05454;--theme-b-bd-primary-disabled:#c04e4e}.bx-green,.bx-theme-green{--primary:#63aa28;--theme-color-primary:#63aa28;--theme-color-second:#5b9f0b;--theme-color-light:#a8d95b;--theme-b-link:#44b1c9;--theme-b-link-hover:#5cc3d1;--theme-b-tx-primary:#fff;--theme-b-bg-primary:#63aa28;--theme-b-bd-primary:#63aa28;--theme-b-sd-primary:rgba(99,170,40,0.5);--theme-b-tx-primary-hover:#fff;--theme-b-bg-primary-hover:#5b9f0b;--theme-b-bd-primary-hover:#56940b;--theme-b-tx-primary-active:#fff;--theme-b-bg-primary-active:#5b9f0b;--theme-b-bd-primary-active:#56940b;--theme-b-tx-primary-disabled:#fff;--theme-b-bg-primary-disabled:#56940b;--theme-b-bd-primary-disabled:#497c09}body{background-attachment:fixed;background-size:cover;font-family:"Helvetica Neue",Helvetica,Arial,sans-serif}#pagetitle{margin-bottom:35px}h1,h2,h3,h4,h5{font-family:var(--ui-font-family-secondary,var(--ui-font-family-open-sans));font-weight:var(--ui-font-weight-regular,400)}.bx-content-section,.bx-header-section{padding-bottom:2px;background-color:rgba(255,255,255,.95)}.bx-header-logo{order:1}.bx-header-personal{order:3}.bx-header-contact{order:2}.bx-logo-block{display:block;height:50px;border-bottom:0}.bx-logo-block img{max-height:50px;width:auto}@media(max-width:767px){.bx-logo-block img{max-width:100%;max-height:45px;width:auto;height:auto}.bx-header-logo{padding:5px 50px;height:55px;background-color:var(--theme-color-primary)}.bx-logo-block{height:auto}body.bx-theme-green .bx-store-logo{background:#33b111}}.bx-header-phone-block{display:flex;align-items:center}.bx-header-phone-number{color:#000;white-space:nowrap;font:21px/28px var(--ui-font-family-secondary,var(--ui-font-family-open-sans));font-weight:var(--ui-font-weight-semi-bold,600);transition:250ms linear all}.bx-header-phone-icon{display:block;margin-right:10px;width:26px;height:26px;	background: no-repeat center url(/local/templates/techstore/images/phone.svg);}@media(max-width:991px){.bx-header-phone-number{font:15px/18px var(--ui-font-family-secondary,var(--ui-font-family-open-sans));font-weight:var(--ui-font-weight-semi-bold,600)}}.bx-header-worktime{color:#000;font:16px/22px var(--ui-font-family-secondary,var(--ui-font-family-open-sans));font-weight:var(--ui-font-weight-semi-bold,600);transition:250ms linear all}.bx-worktime-title{color:#adadad;font:12px var(--ui-font-family-secondary,var(--ui-font-family-open-sans));font-weight:var(--ui-font-weight-regular,400)}.bx-worktime-schedule{color:#000;font:12px var(--ui-font-family-secondary,var(--ui-font-family-open-sans));font-weight:var(--ui-font-weight-regular,400)}@media(max-width:991px){.bx-header-worktime{font:15px/18px var(--ui-font-family-secondary,var(--ui-font-family-open-sans));font-weight:var(--ui-font-weight-regular,400)}}.sidebar-block-title{color:#343434;text-transform:uppercase;font-size:14px;font-family:var(--ui-font-family-secondary,var(--ui-font-family-open-sans));font-weight:var(--ui-font-weight-semi-bold,600)}.bx-footer-bg{background-color:#1f496a}.bx-footer-logo{border-bottom:none !important;text-decoration:none !important}.bx-footer-logo img{max-width:100%;height:auto}.bx-inclinkspersonal-item.bx-theme-blue:hover{background:#0083d1}.bx-theme-blue.bx-inclinkspersonal-selected{background:#3398d7}.bx-inclinkspersonal-item.bx-theme-black:hover{background:#303030}.bx-theme-black.bx-inclinkspersonal-selected{background:#484848}.bx-inclinkspersonal-item.bx-theme-green:hover{background:#44b1c9}.bx-theme-green.bx-inclinkspersonal-selected{background:#5cc3d1}.bx-inclinkspersonal-item.bx-theme-red:hover{background:#e63c3c}.bx-theme-red.bx-inclinkspersonal-selected{background:#e95c5c}.bx-inclinkspersonal-item.bx-theme-yellow:hover{background:#f4a52e}.bx-theme-yellow.bx-inclinkspersonal-selected{background:#fbb859}.btn-primary,.list-group-item.active{border-color:var(--theme-b-bd-primary);background-color:var(--theme-b-bg-primary);color:var(--theme-b-tx-primary)}.btn-primary:hover{border-color:var(--theme-b-bd-primary-hover);background-color:var(--theme-b-bg-primary-hover);color:var(--theme-b-tx-primary-hover)}.btn-primary:focus,.btn-primary.focus{box-shadow:0 0 0 .2rem var(--theme-b-sd-primary)}.btn-primary.disabled,.btn-primary:disabled{border-color:var(--theme-b-bg-primary);background-color:var(--theme-b-bg-primary);color:var(--theme-b-tx-primary)}.btn-primary:not(:disabled):not(.disabled):active,.btn-primary:not(:disabled):not(.disabled).active,.show>.btn-primary.dropdown-toggle{border-color:var(--theme-b-bd-primary-active);background-color:var(--theme-b-bg-primary-active);color:var(--theme-b-tx-primary-active)}.btn-primary:not(:disabled):not(.disabled):active:focus,.btn-primary:not(:disabled):not(.disabled).active:focus,.show>.btn-primary.dropdown-toggle:focus{box-shadow:0 0 0 .2rem var(--theme-b-sd-primary)}.form-control:focus{border-color:var(--theme-color-primary);box-shadow:0 0 0 .2rem var(--theme-b-sd-primary)}a,.btn-link{color:var(--theme-b-link)}a:hover,.btn-link:hover{color:var(--theme-b-link-hover)}.g-font-size-15{font-size:15px}.g-font-size-17{font-size:17px}.g-font-size-20{font-size:20px}.text-primary{color:var(--primary) !important}.bg-primary{background:var(--primary) !important}.border-primary{border-color:var(--primary) !important}.sidebar h2,.sidebar h3,.sidebar h4,.sidebar h5{text-transform:uppercase;font-size:14px;font-family:var(--ui-font-family-secondary,var(--ui-font-family-open-sans));font-weight:var(--ui-font-weight-semi-bold,600)}.sidebar li{font-size:12px;font-family:var(--ui-font-family-secondary,var(--ui-font-family-open-sans));font-weight:var(--ui-font-weight-semi-bold,600)}.sidebar-icon{width:27px;height:27px;margin-right:5px;border-radius:50%;background-color:var(--theme-color-primary);background-repeat:no-repeat;background-position:center;}

.sidebar-icon-label {
	background-image:  url(/local/templates/techstore/images/label.svg); background-size:19px auto;}

.sidebar-icon-delivery {
	background-image: url(/local/templates/techstore/images/delivery.svg); background-size:17px auto;}

.sidebar-icon-sale {
	background-image: url(/local/templates/techstore/images/sale.svg); background-size:auto 17px;}

.sidebar-icon-self {
	background-image: url(/local/templates/techstore/images/self.svg); background-size:auto 17px;}

.sidebar-icon-phone {
	background-image: url(/local/templates/techstore/images/phone_white.svg); background-size:auto 21px}
/* End */
/* /local/templates/techstore/techstore.css?178877504827404 */
/* /local/templates/techstore/template_styles.min.css?17887662908037 */
