.eks-sw,
.eks-sw-specs {
	--eks-sw-border: #c9ced6;
	--eks-sw-head: #eef1f5;
	--eks-sw-accent: #1c5fa8;
}

.eks-sw {
	margin: 0 0 2em;
}

/* Avada капитализирует заголовки вкладок: для русских названий категорий
   «Автоматизация Котельного Технологического Оборудования» — типографская ошибка. */
.fusion-tabs .nav-tabs > li > a {
	text-transform: none;
	padding-top: 14px;
	padding-bottom: 14px;
}

/* Названия категорий длинные, а тема выводит их заголовком H4 в 28px: полоса вкладок
   вырастает до 180px, и первая строка таблицы уходит за пределы экрана. Размер задаётся
   в динамическом CSS темы через переменную, поэтому здесь без !important не обойтись. */
.fusion-tabs .nav-tabs li .fusion-tab-heading {
	font-size: 17px !important;
	line-height: 1.35 !important;
}

/* Avada капитализирует заголовки таблиц и ссылки — артикулам и названиям это вредит. */
.eks-sw .eks-sw__table th,
.eks-sw .eks-sw__table td,
.eks-sw .eks-sw__name a,
.eks-sw__tab,
.eks-sw-specs .eks-sw__table th,
.eks-sw-specs .eks-sw__table td {
	text-transform: none;
}

.eks-sw__controls {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-end;
	gap: 12px;
	margin-bottom: -1px;
}

.eks-sw__search input {
	min-width: 220px;
	padding: 9px 12px;
	border: 1px solid var(--eks-sw-border);
	background: #fff;
	font: inherit;
}

.eks-sw__tabs {
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
}

.eks-sw__tab {
	padding: 9px 16px;
	border: 1px solid var(--eks-sw-border);
	border-bottom-color: transparent;
	background: var(--eks-sw-head);
	color: inherit;
	font: inherit;
	line-height: 1.3;
	text-align: left;
	cursor: pointer;
}

.eks-sw__tab:hover {
	background: #fff;
}

.eks-sw__tab.is-active {
	background: #fff;
	font-weight: 600;
	box-shadow: inset 0 3px 0 var(--eks-sw-accent);
}

.eks-sw__scroll {
	overflow-x: auto;
}

.eks-sw__table {
	width: 100%;
	border-collapse: collapse;
	background: #fff;
}

.eks-sw__table th,
.eks-sw__table td {
	padding: 10px 12px;
	border: 1px solid var(--eks-sw-border);
	vertical-align: top;
	text-align: left;
}

.eks-sw__table thead th {
	background: var(--eks-sw-head);
	font-weight: 700;
	text-align: center;
	white-space: nowrap;
}

.eks-sw__name {
	min-width: 260px;
	font-weight: 600;
	vertical-align: top;
}

.eks-sw__name a {
	color: inherit;
	text-decoration: none;
	border-bottom: 1px solid rgba(28, 95, 168, .35);
}

.eks-sw__name a:hover {
	color: var(--eks-sw-accent);
	border-bottom-color: currentColor;
}

/* Продукты идут подряд и в сплошной сетке сливаются. Разделяем группы линией, а не
   «зеброй»: при поиске часть групп скрывается, и чередование цветов ломается. */
.eks-sw__table tbody.eks-sw__group + tbody.eks-sw__group > tr:first-child > th,
.eks-sw__table tbody.eks-sw__group + tbody.eks-sw__group > tr:first-child > td {
	border-top: 2px solid #9aa3ae;
}

.eks-sw__article {
	white-space: nowrap;
	font-family: Consolas, "Courier New", monospace;
}

.eks-sw__price {
	white-space: nowrap;
	text-align: right;
	font-variant-numeric: tabular-nums;
}

.eks-sw__group[hidden] {
	display: none;
}

/* --- Сквозной поиск поверх вкладок Avada --- */

.eks-sw-search {
	margin: 0 0 1em;
}

.eks-sw-search input {
	min-width: 340px;
	max-width: 100%;
	padding: 9px 12px;
	border: 1px solid var(--eks-sw-border, #c9ced6);
	background: #fff;
	font: inherit;
}

.eks-sw-search__nothing {
	margin: .6em 0 0;
	font-style: italic;
}

.eks-sw__caption {
	display: none;
	padding: 0 0 .5em;
	font-weight: 700;
	text-align: left;
	caption-side: top;
}

/* Пока идёт поиск, показываем все панели вкладок — иначе совпадение в неактивной
   вкладке выглядело бы как отсутствующее. Панели Avada только раскрываются, их
   собственный скрипт не трогается. */
body.eks-sw-searching .fusion-tabs .tab-pane {
	display: block !important;
	opacity: 1 !important;
	height: auto !important;
	visibility: visible !important;
}

body.eks-sw-searching .eks-sw__caption {
	display: table-caption;
}

body.eks-sw-searching [data-eks-sw-table].is-empty {
	display: none;
}

body.eks-sw-searching .fusion-tabs .tab-pane.eks-sw-pane-empty {
	display: none !important;
}

.eks-sw__empty {
	padding: 16px 0;
	font-style: italic;
}

/* Направление есть в перечне заказчика, но публиковать пока нечего. */
.eks-sw__pending {
	margin: 0;
	padding: 18px 20px;
	border: 1px solid var(--eks-sw-border);
	background: var(--eks-sw-head);
}

/* --- Карточка продукта --- */

.eks-sw-product {
	--eks-sw-border: #c9ced6;
	--eks-sw-head: #eef1f5;
	--eks-sw-accent: #1c5fa8;
}

.eks-sw-product__title {
	margin: 0 0 .6em;
	text-transform: none;
}

.eks-sw-product__lead {
	margin: 0 0 1.5em;
	font-size: 1.05em;
}

.eks-sw-product__split {
	display: flex;
	flex-wrap: wrap;
	gap: 32px;
	align-items: flex-start;
	margin-bottom: 1.5em;
}

.eks-sw-product__text {
	flex: 1 1 420px;
	min-width: 0;
}

/* Мнемокадры листаются каруселью Avada: один кадр во всю ширину колонки.
   Колонка шире текстовой доли, чем была под сеткой миниатюр, — кадр
   разглядывают, а не опознают. */
.eks-sw-product__media {
	flex: 0 1 520px;
	min-width: 0;
}

.eks-sw-product__media img {
	max-width: 100%;
	height: auto;
}

/* Курсор-лупа: по клику кадр открывается в лайтбоксе на весь экран. */
.eks-sw-product__media .fusion-image-wrapper {
	cursor: zoom-in;
}

.eks-sw-product h3 {
	text-transform: none;
}

.eks-sw-product__features {
	margin-bottom: 1.5em;
}

.eks-sw-specs {
	margin: 1.5em 0;
}

.eks-sw__table--specs {
	max-width: 720px;
}

/* Специфичность выше «зебры» — иначе подзаголовок теряет свою заливку в чётных группах. */
.eks-sw__table tbody.eks-sw__group tr.eks-sw__subhead td,
.eks-sw-specs .eks-sw__table tr.eks-sw__subhead td,
.eks-sw__subhead td {
	background: var(--eks-sw-head, #eef1f5);
	font-weight: 600;
}

.eks-sw__price-note {
	margin: .6em 0 0;
	font-size: .93em;
	opacity: .8;
}

.eks-sw-block {
	margin-top: 1.5em;
}

.eks-sw-block__title {
	margin: 0 0 .5em;
	font-size: 1.1em;
}

.eks-sw-block__list {
	margin: 0;
	padding-left: 1.2em;
}

.eks-sw-registry__list {
	margin: 0;
}

.eks-sw-registry__list dt {
	margin-top: .8em;
	font-weight: 600;
}

.eks-sw-registry__list dd {
	margin: .2em 0 0;
}

.eks-sw-registry__list dd ul {
	margin: 0;
	padding-left: 1.2em;
}

.eks-sw-registry__link {
	margin-top: 1em;
}

@media (max-width: 640px) {
	.eks-sw__controls {
		flex-direction: column;
		align-items: stretch;
	}

	.eks-sw__tab {
		border-bottom-color: var(--eks-sw-border);
	}

}
