/*
	Мобильная версия. Файл подключён с media="(max-width: 991px)", поэтому на компьютере не действует.
	Блоки, которых нет на компьютере, скрыты в конце stylesheet.css.
*/
:root {
	--m-blue: #337ab7;
	--m-blue-dark: #286090;
	--m-red: #e4003a;
	--m-text: #2b2f33;
	--m-muted: #6b7280;
	--m-line: #e3e6ea;
	--m-bg: #f4f6f8;
	--m-bar: 56px;
	--m-gap: 10px;
}

html {
	-webkit-text-size-adjust: 100%;
	text-size-adjust: 100%;
}
html.m-lock {
	overflow: hidden;
}
a, button, label, select {
	-webkit-tap-highlight-color: rgba(51, 122, 183, .15);
	touch-action: manipulation;
}

/* Верхняя строка */
#mbar {
	display: flex;
	align-items: center;
	position: -webkit-sticky;
	position: sticky;
	top: 0;
	z-index: 1030;
	height: var(--m-bar);
	padding: 0 4px;
	background: #fff;
	border-bottom: 1px solid var(--m-line);
	box-shadow: 0 1px 4px rgba(0, 0, 0, .06);
}
#mbar-logo {
	flex: 1 1 auto;
	display: flex;
	align-items: center;
	min-width: 0;
	height: 100%;
	padding: 0 6px;
	color: var(--m-text);
	font-weight: 600;
}
#mbar-logo img {
	display: block;
	width: auto;
	max-width: 100%;
	max-height: 40px;
}
.mbar-btn {
	flex: 0 0 44px;
	display: flex;
	align-items: center;
	justify-content: center;
	position: relative;
	width: 44px;
	height: 44px;
	padding: 0;
	border: 0;
	border-radius: 8px;
	background: none;
	color: var(--m-text);
	font-size: 20px;
}
.mbar-btn:hover,
.mbar-btn:focus {
	color: var(--m-blue);
	text-decoration: none;
	outline: none;
}
.mbar-count {
	position: absolute;
	top: 3px;
	right: 0;
	min-width: 18px;
	height: 18px;
	padding: 0 5px;
	border-radius: 9px;
	background: var(--m-red);
	color: #fff;
	font-size: 11px;
	font-weight: 700;
	line-height: 18px;
	text-align: center;
}
.mbar-count[hidden] {
	display: none;
}

/* Старая шапка: остаются только меню и поиск, они открываются из верхней строки */
#top,
header .logo-line,
.cart-box,
.search-box {
	display: none;
}
header .menu-line {
	margin: 0;
}
header .container {
	padding: 0;
}
.menu-box {
	float: none;
	width: auto;
	min-height: 0;
	padding: 0;
}
#menu {
	display: block;
	height: 0;
	margin: 0;
	box-shadow: none;
}
#menu > .btn {
	display: none;
}

/* Меню */
#menu #menu-list,
#menu #menu-list:hover {
	display: none;
}
#menu #menu-list {
	position: fixed;
	top: var(--m-bar);
	right: 0;
	bottom: 0;
	left: 0;
	width: auto;
	margin: 0;
	padding: 0 0 calc(24px + env(safe-area-inset-bottom));
	border: 0;
	border-radius: 0;
	box-shadow: none;
	background: #fff;
	overflow-y: auto;
	overscroll-behavior: contain;
	-webkit-overflow-scrolling: touch;
}
body.m-menu-open #menu #menu-list,
body.m-menu-open #menu #menu-list:hover {
	display: block;
}
#menu #menu-list > li > a,
#menu #menu-list > li:first-child > a {
	padding: 13px 16px;
	color: var(--m-text);
	font-size: 16px;
	font-weight: 600;
	line-height: 22px;
}
#menu #menu-list > li .with-child {
	margin-right: 52px;
}
#menu #menu-list > li .toggle-child,
#menu #menu-list > li:first-child .toggle-child {
	width: 52px;
	height: 48px;
	padding: 0;
	line-height: 48px;
	font-size: 14px;
}
#menu #menu-list > li .child-box h5 a {
	padding: 12px 16px 12px 24px;
	font-size: 15px;
	line-height: 22px;
}
#menu #menu-list > li .with-child2 {
	margin-right: 52px;
}
#menu #menu-list > li .toggle-child2 {
	width: 52px;
	height: 46px;
	padding: 0;
	line-height: 46px;
}
#menu #menu-list > li .child-box-cell .child2-box a {
	padding: 11px 16px 11px 38px;
	font-size: 15px;
}
#menu #menu-list .child-box > .row {
	margin: 0;
}
#menu #menu-list .child-box [class*="col-"] {
	padding: 0;
}
#menu #menu-list > li.m-extra {
	display: block;
	padding: 8px 0 0;
	border-top: 8px solid var(--m-bg);
}
.m-extra a {
	display: block;
	padding: 12px 16px;
	color: var(--m-text);
	font-size: 15px;
	line-height: 22px;
}
.m-extra a .fa {
	width: 22px;
	color: var(--m-blue);
	text-align: center;
}
.m-extra a.m-tel {
	font-size: 19px;
	font-weight: 600;
}
.m-extra .m-hint {
	padding: 0 16px 10px 42px;
	color: var(--m-muted);
	font-size: 13px;
}

/* Поиск */
body.m-search-open .search-box {
	display: block;
	position: fixed;
	top: var(--m-bar);
	right: 0;
	left: 0;
	z-index: 1029;
	float: none;
	width: auto;
	padding: 8px;
	background: #fff;
	box-shadow: 0 6px 12px rgba(0, 0, 0, .14);
}
#search {
	display: flex;
	margin: 0;
}
#search .input-group-btn.categories {
	display: none !important;
}
#search .form-control {
	flex: 1 1 auto;
	float: none;
	min-width: 0;
	height: 44px;
	border-radius: 8px 0 0 8px;
	font-size: 16px;
}
#search > .input-group-btn {
	display: block;
	flex: 0 0 auto;
	width: auto;
}
#search-button {
	height: 44px;
	padding: 0 16px;
	border-radius: 0 8px 8px 0;
}
.search-box #live-search {
	position: static;
	width: auto;
	max-height: calc(100vh - var(--m-bar) - 70px);
	margin: 8px 0 0;
	padding: 0;
	border: 0;
	border-radius: 0;
	box-shadow: none;
	overflow-y: auto;
	-webkit-overflow-scrolling: touch;
}
.search-box #live-search ul li {
	height: auto !important;
	min-height: 56px;
	margin: 0;
	padding: 6px 4px;
	border-bottom: 1px solid var(--m-line);
}
.search-box #live-search ul li a {
	display: flex;
	align-items: center;
	column-gap: 10px;
}
.search-box #live-search ul li .product-image {
	flex: 0 0 auto;
	float: none;
	margin: 0;
}
.search-box #live-search ul li .product-name {
	flex: 1 1 auto;
	float: none;
	width: auto;
	min-width: 0;
	font-size: 14px;
	line-height: 1.3;
}
.search-box #live-search ul li .product-price {
	flex: 0 0 auto;
	float: none;
	width: auto;
	white-space: nowrap;
}
.search-box #live-search .result-text a {
	padding: 12px;
	font-size: 15px;
	font-weight: 600;
	text-align: center;
}

/* Окно корзины */
#modal-cart .btn-col-2 {
	display: none;
}
#modal-cart .btn-col-3 {
	margin-top: 10px;
}
#modal-cart .modal-footer .btn {
	min-height: 48px;
	border-radius: 8px;
	font-size: 16px;
	line-height: 34px;
}
#modal-cart .modal-footer .btn-danger {
	border-color: var(--m-blue-dark);
	background: var(--m-blue);
	font-weight: 600;
}
#modal-cart .popup-quantity .btn,
#modal-cart .popup-quantity .form-control {
	height: 40px;
	font-size: 16px;
}
#modal-cart .popup-quantity .btn {
	min-width: 36px;
}
#modal-cart .modal-dialog {
	margin: 10px auto;
}
#modal-cart .modal-header .close {
	width: 44px;
	height: 44px;
	margin: -10px -10px -10px 0;
	font-size: 26px;
}

#scroll-top-button {
	display: none !important;
}

/* iOS увеличивает страницу при вводе, если шрифт поля меньше 16 px */
.form-control,
select,
textarea,
input[type="text"],
input[type="email"],
input[type="tel"],
input[type="password"],
input[type="number"],
input[type="search"] {
	font-size: 16px;
}
#button-cart {
	min-height: 44px;
	font-size: 16px;
}
.breadcrumb {
	margin-top: 10px;
}

/* Плитки разделов на главной */
.m-tiles {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(112px, 1fr));
	gap: 8px;
	margin: 0 0 20px;
}
.m-tile {
	display: flex;
	flex-direction: column;
	align-items: center;
	min-height: 96px;
	padding: 8px 2px;
	border: 1px solid var(--m-line);
	border-radius: 10px;
	background: #fff;
	color: var(--m-text);
	font-size: 13px;
	font-weight: 600;
	line-height: 1.25;
	text-align: center;
}
.m-tile:hover,
.m-tile:focus {
	color: var(--m-blue);
	text-decoration: none;
}
.m-tile img {
	display: block;
	width: 76px;
	height: 76px;
	margin-bottom: 6px;
	object-fit: contain;
}
.common-home .slideshow {
	display: none;
}

/* Телефоны */
@media (max-width: 767px) {
	body {
		color: var(--m-text);
		font-size: 15px;
		line-height: 1.5;
	}
	h1 {
		margin: 10px 0 12px;
		font-size: 24px;
		font-weight: 600;
		line-height: 1.25;
	}
	h2 {
		font-size: 20px;
		line-height: 1.3;
	}
	h3 {
		font-size: 18px;
		line-height: 1.3;
	}
	.home-title {
		margin: 14px 0 12px;
		font-size: 22px;
	}
	.form-control {
		height: 44px;
		border-radius: 8px;
	}
	textarea.form-control {
		height: auto;
	}
	.btn:not(.btn-xs):not(.btn-sm):not(.btn-addtocart) {
		min-height: 44px;
	}
	.btn-primary {
		border-color: var(--m-blue-dark);
		background: var(--m-blue);
	}
	.pagination > li > a,
	.pagination > li > span {
		min-width: 44px;
		padding: 11px 12px;
		text-align: center;
	}
	.pagination-wrapper .col-sm-6.text-right {
		font-size: 13px;
		margin-top: 8px;
	}
	#content {
		overflow-wrap: break-word;
	}
	img,
	iframe,
	video {
		max-width: 100%;
	}
	img[height] {
		height: auto;
	}
	.table-responsive {
		border: 0;
	}

	/* Хлебные крошки: только шаг назад */
	.breadcrumb {
		margin: 10px 0 0;
		padding: 0;
		font-size: 14px;
		line-height: 24px;
		white-space: nowrap;
		overflow: hidden;
		text-overflow: ellipsis;
	}
	.breadcrumb > li {
		display: none;
	}
	.breadcrumb > li:nth-last-child(2) {
		display: inline;
	}
	.breadcrumb > li:nth-last-child(2):before {
		content: "\2039";
		padding: 0 6px 0 0;
		color: var(--m-muted);
		font-size: 18px;
	}
	.breadcrumb > li:nth-last-child(2) a {
		color: var(--m-blue);
	}

	/* Каталог: панель фильтра и сортировки */
	.col-show-button,
	.m-toolbar,
	body[class*="product-search"] h1 + .well,
	body[class*="product-search"] #content h2,
	body[class*="product-search"] h2 + .well {
		display: none !important;
	}
	.col-show-button.m-keep {
		display: block !important;
	}
	#column-left {
		min-height: 0;
	}
	#m-catbar {
		display: flex;
		position: -webkit-sticky;
		position: sticky;
		top: var(--m-bar);
		z-index: 1005;
		gap: 8px;
		margin: 0 calc(-1 * var(--m-gap)) 10px;
		padding: 8px var(--m-gap);
		background: #fff;
		border-bottom: 1px solid var(--m-line);
	}
	.m-catbtn {
		flex: 1 1 0;
		display: flex;
		align-items: center;
		justify-content: center;
		position: relative;
		min-width: 0;
		height: 44px;
		margin: 0;
		padding: 0 8px;
		border: 1px solid #c9ced6;
		border-radius: 8px;
		background: #fff;
		color: var(--m-text);
		font-size: 15px;
		font-weight: 600;
		white-space: nowrap;
	}
	.m-catbtn .fa {
		margin-right: 7px;
		color: var(--m-blue);
	}
	.m-catbtn select {
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		border: 0;
		opacity: 0;
	}
	.m-catbtn .m-badge {
		min-width: 20px;
		height: 20px;
		margin-left: 6px;
		padding: 0 5px;
		border-radius: 10px;
		background: var(--m-blue);
		color: #fff;
		font-size: 12px;
		line-height: 20px;
		text-align: center;
	}
	.m-catbtn .m-badge[hidden] {
		display: none;
	}

	/* Фильтр на весь экран */
	#col-left-modules.show {
		display: block;
		position: fixed;
		top: 0;
		right: 0;
		bottom: 0;
		left: 0;
		z-index: 1045;
		padding: 0 16px;
		background: #fff;
		overflow-y: auto;
		overscroll-behavior: contain;
		-webkit-overflow-scrolling: touch;
	}
	#col-left-modules > :not(.mfilter-box):not(#m-filter-head):not(#m-filter-foot) {
		display: none;
	}
	#m-filter-head {
		display: flex;
		align-items: center;
		position: -webkit-sticky;
		position: sticky;
		top: 0;
		z-index: 3;
		height: 56px;
		margin: 0 -16px;
		padding: 0 4px 0 16px;
		border-bottom: 1px solid var(--m-line);
		background: #fff;
	}
	#m-filter-head > span {
		flex: 1 1 auto;
		font-size: 18px;
		font-weight: 600;
	}
	#m-filter-head button {
		height: 44px;
		padding: 0 10px;
		border: 0;
		background: none;
		color: var(--m-blue);
		font-size: 15px;
	}
	#m-filter-head .m-close {
		width: 44px;
		padding: 0;
		color: var(--m-text);
		font-size: 20px;
	}
	#m-filter-foot {
		position: -webkit-sticky;
		position: sticky;
		bottom: 0;
		z-index: 3;
		margin: 12px -16px 0;
		padding: 10px 16px calc(10px + env(safe-area-inset-bottom));
		border-top: 1px solid var(--m-line);
		background: #fff;
	}
	#m-filter-foot .btn {
		height: 48px;
		border-radius: 8px;
		font-size: 16px;
		font-weight: 600;
	}
	.mfilter-box .mfilter-content {
		margin: 0;
		padding: 0;
		border: 0;
	}
	.mfilter-box .mfilter-content > ul {
		margin: 0;
		padding: 0;
		list-style: none;
	}
	.mfilter-box .mfilter-button-top,
	.mfilter-box .mfilter-button-bottom {
		display: none;
	}
	.mfilter-box .mfilter-heading {
		border: 0;
		border-bottom: 1px solid var(--m-line);
		background: none;
		font-size: 16px;
		font-weight: 600;
	}
	.mfilter-box .mfilter-heading-content {
		padding: 13px 0;
	}
	.mfilter-box .mfilter-heading .mfilter-head-icon {
		margin: 7px 0 0;
	}
	.mfilter-box .mfilter-opts-container {
		padding: 4px 0 8px;
		border: 0;
		border-bottom: 1px solid var(--m-line);
	}
	.mfilter-box .mfilter-filter-item .mfilter-options {
		padding: 0;
	}
	.mfilter-box .mfilter-tb .mfilter-tb-as-tr .mfilter-tb-as-td {
		height: 44px;
		padding: 0;
		border: 0;
	}
	.mfilter-box label.mfilter-tb-as-td {
		padding-left: 6px;
		font-size: 16px;
		word-break: normal;
	}
	.mfilter-box .mfilter-col-input {
		width: 28px;
		padding: 0;
	}
	.mfilter-box .mfilter-col-input input[type="checkbox"],
	.mfilter-box .mfilter-col-input input[type="radio"] {
		width: 22px;
		height: 22px;
		margin: 0;
	}
	.mfilter-box .mfilter-col-count {
		width: 1%;
		white-space: nowrap;
	}
	.mfilter-box .mfilter-counter {
		padding: 0 8px;
		border-radius: 11px;
		background: var(--m-bg);
		color: var(--m-muted);
		font-size: 13px;
		line-height: 22px;
	}
	.mfilter-box .mfilter-counter:after {
		display: none;
	}
	.mfilter-box .mfilter-counter.mfilter-close {
		display: none;
	}
	.mfilter-box .mfilter-price-inputs input {
		height: 44px;
		border-radius: 8px;
		font-size: 16px;
	}
	#mfilter-price-slider,
	.mfilter-slider-slider {
		height: 6px !important;
		margin: 18px 16px 14px !important;
		border-radius: 3px !important;
		background: var(--m-line) !important;
	}
	#mfilter-price-slider .ui-slider-range,
	.mfilter-slider-slider .ui-slider-range {
		background: var(--m-blue) !important;
	}
	#mfilter-price-slider .ui-slider-handle,
	.mfilter-slider-slider .ui-slider-handle {
		top: -12px !important;
		width: 30px !important;
		height: 30px !important;
		margin-left: -15px !important;
		border: 2px solid var(--m-blue) !important;
		border-radius: 50% !important;
		background: #fff !important;
		touch-action: none;
	}

	/* Подразделы лентой */
	.m-subcats {
		margin: 0 calc(-1 * var(--m-gap)) 10px;
	}
	.m-subcats > .row {
		display: flex;
		gap: 8px;
		margin: 0;
		padding: 2px var(--m-gap) 6px;
		overflow-x: auto;
		-webkit-overflow-scrolling: touch;
		scrollbar-width: none;
	}
	.m-subcats > .row::-webkit-scrollbar {
		display: none;
	}
	.m-subcats > .row:before,
	.m-subcats > .row:after,
	.m-subcats > hr {
		display: none;
	}
	.m-subcats > .row > div {
		flex: 0 0 auto;
		float: none;
		width: auto;
		padding: 0;
	}
	.m-subcats .subcategory {
		height: 44px;
		margin: 0;
		padding: 0;
		border-radius: 22px;
	}
	.m-subcats .subcategory > a {
		display: flex;
		align-items: center;
		height: 100%;
		padding: 0 14px 0 6px;
		color: var(--m-text);
		text-decoration: none;
	}
	.m-subcats .subcategory .pull-left {
		float: none !important;
	}
	.m-subcats .subcategory img {
		display: block;
		width: 32px;
		height: 32px;
		margin-right: 8px;
		object-fit: contain;
	}
	.m-subcats .subcategory .no-image {
		width: 8px;
		font-size: 0;
	}
	.m-subcats .subcategory .name-wrapper {
		height: auto;
		margin: 0;
		overflow: visible;
	}
	.m-subcats .display-table,
	.m-subcats .display-table-cell {
		display: block;
		width: auto;
		height: auto;
	}
	.m-subcats .subcategory p {
		font-size: 14px;
		white-space: nowrap;
	}

	/* Карточки в каталоге */
	.product-layout {
		margin-bottom: 10px;
	}
	.product-layout .product-thumb {
		display: grid;
		grid-template-columns: 112px minmax(0, 1fr);
		column-gap: 12px;
		margin: 0;
		padding: 10px;
		border-color: var(--m-line);
		border-radius: 10px;
	}
	.product-layout .product-thumb > .clearfix {
		display: none;
	}
	.product-layout .product-thumb .image {
		padding: 0;
	}
	.product-layout .product-thumb .image img {
		width: 112px;
		height: 112px;
		object-fit: contain;
	}
	.product-layout .product-thumb .caption {
		padding: 0;
	}
	.product-layout .product-thumb .caption .name {
		height: auto;
		margin: 0 0 6px;
		overflow: visible;
	}
	.product-layout .product-thumb .caption .name a {
		display: block;
		color: #1f5a8c;
		font-size: 15px;
		font-weight: 600;
		line-height: 1.3;
	}
	.product-layout .product-thumb .description,
	.product-layout .product-thumb .rating,
	.product-layout .product-thumb .price nobr {
		display: none;
	}
	.m-specs {
		display: flex;
		flex-wrap: wrap;
		gap: 4px;
		margin: 0 0 6px;
		padding: 0;
		list-style: none;
	}
	.m-specs li {
		padding: 0 6px;
		border-radius: 4px;
		background: var(--m-bg);
		color: #4a5159;
		font-size: 12px;
		line-height: 20px;
	}
	.product-layout .product-thumb .caption .price {
		margin: 0 0 8px;
		font-size: 18px;
		font-weight: 700;
		line-height: 1.2;
	}
	.product-layout .product-thumb .btn-group {
		display: block;
		width: 100%;
	}
	.product-layout .product-thumb .btn-addtocart {
		display: none;
	}
	.product-layout .product-thumb .btn-addtocart:first-child {
		display: block;
		float: none;
		width: 100%;
		min-height: 44px;
		padding: 0 8px;
		border-color: var(--m-blue-dark);
		border-radius: 8px !important;
		background: var(--m-blue);
		color: #fff;
		font-size: 15px;
		font-weight: 600;
	}
	.product-layout .product-thumb .btn-addtocart span {
		display: inline !important;
	}

	/* Блоки товаров на главной и в карточке */
	.box-product .product-item .name {
		height: 54px;
	}
	.box-product .product-item .image {
		min-height: 0;
		padding: 8px;
	}
	.box-product .product-item .caption {
		padding: 0 10px 10px;
	}
	.box-product .product-item .price {
		font-size: 17px;
		font-weight: 700;
	}
	.box-product .product-item .buttons {
		padding: 0 10px 10px;
	}
	.box-product .product-item .buttons .btn-group {
		display: flex;
		width: 100%;
	}
	.box-product .product-item .buttons .btn-addtocart:first-child {
		flex: 1 1 auto;
		min-height: 44px;
		padding: 0 6px;
		border-color: var(--m-blue-dark);
		background: var(--m-blue);
		color: #fff;
		font-size: 14px;
		font-weight: 600;
	}
	.box-product .product-item .buttons .btn-addtocart .fa-shopping-basket,
	.box-product .product-item .buttons .dropdown-toggle {
		display: none;
	}
	.box-product .product-item .buttons .btn-addtocart:first-child {
		border-radius: 8px !important;
	}

	/* Карточка товара */
	body[class*="product-product"] .container > .well {
		margin: 0 0 10px;
		padding: 0;
		border: 0;
		background: none;
		box-shadow: none;
		color: var(--m-muted);
		font-size: 13px;
	}
	.inline-info {
		margin-right: 14px;
	}
	.thumbnails {
		display: flex;
		position: relative;
		margin: 0 calc(-1 * var(--m-gap)) 12px;
		overflow-x: auto;
		-webkit-overflow-scrolling: touch;
		scroll-snap-type: x mandatory;
		scrollbar-width: none;
	}
	.thumbnails::-webkit-scrollbar {
		display: none;
	}
	.thumbnails .main-image-wrapper,
	.images-additional .thumbnail {
		flex: 0 0 100%;
		display: flex;
		align-items: center;
		justify-content: center;
		margin: 0;
		padding: 0 var(--m-gap);
		border: 0;
		background: none;
		scroll-snap-align: start;
		scroll-snap-stop: always;
	}
	.thumbnails .main-image {
		display: block;
		width: 100%;
	}
	.thumbnails .main-image img,
	.images-additional .thumbnail img {
		display: block;
		width: 100%;
		max-width: 480px;
		height: auto;
		margin: 0 auto;
		aspect-ratio: 1 / 1;
		object-fit: contain;
	}
	.images-additional {
		display: contents;
	}
	.thumbnails:not(.m-no-main) .images-additional .thumbnail:first-child {
		display: none;
	}
	.m-gal-count {
		position: absolute;
		right: 8px;
		bottom: 8px;
		z-index: 2;
		padding: 2px 9px;
		border-radius: 11px;
		background: rgba(0, 0, 0, .55);
		color: #fff;
		font-size: 12px;
		line-height: 18px;
		pointer-events: none;
	}
	.m-gal {
		position: relative;
	}
	.thumbnails a:focus,
	.thumbnails a:active {
		outline: none;
	}

	/* Покупка */
	#product .panel {
		margin-bottom: 10px;
		border: 0;
		box-shadow: none;
	}
	#product .panel-body {
		padding: 0;
	}
	#product .btn-group.pull-right .btn {
		width: 44px;
		height: 44px;
		padding: 0;
		background: #fff;
	}
	#product .price .priceBig {
		margin-bottom: 6px;
		font-size: 28px;
		font-weight: 700;
		line-height: 44px;
	}
	#product .price .priceBig nobr {
		display: none;
	}
	#product .alert-success-alt,
	#product .alert-danger-alt {
		margin: 0 0 12px;
		padding: 0;
		border: 0;
		background: none;
		font-size: 15px;
	}
	#product .addcart .row {
		display: flex;
		align-items: stretch;
		margin: 0;
		column-gap: 8px;
	}
	#product .addcart .row:before,
	#product .addcart .row:after {
		display: none;
	}
	#product .addcart .row > div {
		float: none;
		width: auto;
		padding: 0;
	}
	#product .addcart .row > div:first-child {
		flex: 0 0 132px;
	}
	#product .addcart .row > div:last-child {
		flex: 1 1 auto;
		min-width: 0;
	}
	#product .input-group.quantity {
		display: flex;
		margin: 0;
		width: 100%;
	}
	#product .quantity-plus-minus {
		display: contents;
	}
	#product .quantity-plus-minus .btn {
		flex: 0 0 42px;
		width: 42px;
		height: 48px;
		border: 1px solid #c9ced6;
		background: #fff;
		color: var(--m-text);
		font-size: 22px;
		line-height: 44px;
	}
	#product .quantity-plus-minus #minus {
		order: 1;
		border-radius: 8px 0 0 8px;
	}
	#product #input-quantity {
		order: 2;
		flex: 1 1 auto;
		float: none;
		width: 48px;
		min-width: 0;
		height: 48px;
		padding: 0;
		border-right: 0;
		border-left: 0;
		border-radius: 0;
		box-shadow: none;
		text-align: center;
	}
	#product .quantity-plus-minus #plus {
		order: 3;
		border-radius: 0 8px 8px 0;
	}
	#button-cart {
		height: 48px;
		border-radius: 8px;
		font-size: 17px;
		font-weight: 600;
	}
	#product .cheap {
		display: block;
		min-height: 44px;
		margin: 2px 0 0;
		padding: 0;
		border: 0;
		background: none;
		color: var(--m-blue);
		font-size: 14px;
		line-height: 44px;
		text-align: center;
		text-decoration: underline;
	}
	.m-ask {
		display: block;
		margin: 0 0 10px;
		padding: 0 12px;
		border-radius: 8px;
		background: var(--m-blue);
		color: #fff;
		font-size: 17px;
		font-weight: 600;
		line-height: 48px;
		text-align: center;
	}
	.m-ask:hover,
	.m-ask:focus {
		color: #fff;
		text-decoration: none;
	}
	.m-ask-product #button-cart {
		border-color: #c9ced6;
		background: #fff;
		color: var(--m-text);
	}

	/* Панель покупки внизу экрана */
	#m-buy {
		display: flex;
		align-items: center;
		position: fixed;
		right: 0;
		bottom: 0;
		left: 0;
		z-index: 1005;
		column-gap: 12px;
		padding: 8px 12px calc(8px + env(safe-area-inset-bottom));
		border-top: 1px solid var(--m-line);
		background: #fff;
		box-shadow: 0 -2px 10px rgba(0, 0, 0, .1);
		transform: translateY(110%);
		transition: transform .2s ease;
	}
	#m-buy.m-on {
		transform: none;
	}
	#m-buy .btn {
		flex: 1 1 auto;
		min-width: 0;
		height: 48px;
		border-radius: 8px;
		font-size: 16px;
		font-weight: 600;
		white-space: nowrap;
	}
	#m-buy .m-buy-price {
		flex: 0 0 auto;
		font-size: 17px;
		font-weight: 700;
		white-space: nowrap;
	}
	body.m-has-buy footer {
		padding-bottom: 72px;
	}

	/* Вкладки */
	.product-tabs {
		display: flex;
		margin: 0 calc(-1 * var(--m-gap));
		padding: 0 var(--m-gap);
		border-bottom: 1px solid var(--m-line);
		overflow-x: auto;
		-webkit-overflow-scrolling: touch;
		scrollbar-width: none;
	}
	.product-tabs::-webkit-scrollbar {
		display: none;
	}
	.product-tabs > li {
		flex: 0 0 auto;
		float: none;
		margin-bottom: -1px;
	}
	.product-tabs > li > a,
	.product-tabs > li.active > a,
	.product-tabs > li.active > a:hover,
	.product-tabs > li.active > a:focus,
	.product-tabs > li > a:hover {
		margin: 0;
		padding: 12px 14px 10px 0;
		border: 0;
		border-bottom: 2px solid transparent;
		border-radius: 0;
		background: none;
		box-shadow: none;
		color: var(--m-muted);
		font-size: 15px;
		font-weight: 600;
		white-space: nowrap;
	}
	.product-tabs > li + li > a,
	.product-tabs > li + li.active > a {
		padding-left: 14px;
	}
	.product-tabs > li.active > a,
	.product-tabs > li.active > a:hover,
	.product-tabs > li.active > a:focus {
		border-bottom-color: var(--m-blue);
		color: var(--m-blue);
	}
	.product-tabs > li.active > a:after {
		display: none;
	}
	.product-tabs > li > a .fa {
		display: none;
	}
	.product-tabs > li > a .hidden-xs {
		display: inline !important;
	}
	.tab-content {
		overflow-wrap: break-word;
	}
	.product-tabs > li > a:focus,
	.m-catbtn:focus,
	.m-tile:focus {
		outline: none;
	}
	#tab-komplektaciya td {
		padding: 4px;
		font-size: 13px;
		line-height: 1.3;
	}
	#tab-komplektaciya img {
		height: auto;
	}
	#tab-description img {
		margin: 8px 0;
		height: auto;
	}
	#tab-description table,
	#tab-komplektaciya table {
		display: block;
		max-width: 100%;
		overflow-x: auto;
		-webkit-overflow-scrolling: touch;
	}
	#tab-specification .table-bordered,
	#tab-specification .table-bordered > thead > tr > td,
	#tab-specification .table-bordered > tbody > tr > td {
		border: 0;
	}
	#tab-specification .table-bordered {
		width: 100%;
		margin: 0;
		font-size: 14px;
		table-layout: fixed;
		overflow-wrap: anywhere;
	}
	#tab-specification .table-bordered > thead > tr > td {
		padding: 14px 0 6px;
		font-size: 16px;
		text-align: left;
	}
	#tab-specification .table-bordered > tbody > tr > td {
		padding: 8px 0;
		border-bottom: 1px solid var(--m-line);
		text-align: left;
		vertical-align: top;
	}
	#tab-specification .table-bordered > tbody > tr > td:first-child {
		width: 50%;
		padding-right: 12px;
		color: var(--m-muted);
	}

	/* Оформление заказа */
	.simple-content {
		margin: 0;
	}
	.simple-content .checkout-heading {
		padding: 10px 0;
		border-radius: 0;
		background: none;
		font-size: 18px;
		font-weight: 600;
	}
	.simple-content .simplecheckout-block-content {
		padding: 4px 0 8px;
	}
	#simplecheckout_cart .table-responsive {
		overflow: visible;
	}
	#simplecheckout_cart .simplecheckout-cart,
	#simplecheckout_cart .simplecheckout-cart tbody {
		display: block;
		border: 0;
	}
	#simplecheckout_cart .simplecheckout-cart thead,
	#simplecheckout_cart .simplecheckout-cart colgroup {
		display: none;
	}
	#simplecheckout_cart .simplecheckout-cart tr {
		display: grid;
		grid-template-columns: minmax(0, 1fr) auto;
		gap: 10px;
		padding: 12px 0;
		border-bottom: 1px solid var(--m-line);
	}
	#simplecheckout_cart .simplecheckout-cart td {
		padding: 0;
		border: 0;
	}
	#simplecheckout_cart .simplecheckout-cart td.image,
	#simplecheckout_cart .simplecheckout-cart td.model,
	#simplecheckout_cart .simplecheckout-cart td.price,
	#simplecheckout_cart .simplecheckout-cart td.remove {
		display: none !important;
	}
	#simplecheckout_cart .simplecheckout-cart td.name {
		grid-column: 1 / -1;
		display: grid;
		grid-template-columns: 64px minmax(0, 1fr);
		column-gap: 10px;
		text-align: left;
		font-weight: 600;
	}
	#simplecheckout_cart .simplecheckout-cart td.name div.image {
		display: block;
		grid-row: span 3;
	}
	#simplecheckout_cart .simplecheckout-cart td.name div.image img {
		width: 64px;
		height: 64px;
		object-fit: contain;
	}
	#simplecheckout_cart .simplecheckout-cart td.name div.options {
		display: block;
		font-weight: 400;
	}
	#simplecheckout_cart .simplecheckout-cart td.quantity {
		display: block !important;
		min-width: 0;
	}
	#simplecheckout_cart .simplecheckout-cart td.quantity .input-group {
		display: flex;
		width: auto;
		max-width: none !important;
		margin: 0 !important;
	}
	#simplecheckout_cart .simplecheckout-cart td.quantity .input-group-btn {
		display: flex;
		width: auto;
	}
	#simplecheckout_cart .simplecheckout-cart td.quantity button[data-onclick*="Quantity"] {
		display: block;
	}
	#simplecheckout_cart .simplecheckout-cart td.quantity .btn {
		width: 42px;
		min-height: 44px;
		height: 44px;
		padding: 0;
		border-color: #c9ced6;
		background: #fff;
		color: var(--m-text);
	}
	#simplecheckout_cart .simplecheckout-cart td.quantity .btn-danger {
		margin-left: 8px !important;
		border: 0;
		background: none;
		color: var(--m-muted);
		font-size: 20px;
	}
	#simplecheckout_cart .simplecheckout-cart td.quantity .form-control {
		flex: 0 0 44px;
		width: 44px;
		min-width: 44px;
		height: 44px;
		padding: 0;
		border-radius: 0;
		text-align: center;
	}
	#simplecheckout_cart .simplecheckout-cart td.total {
		display: block !important;
		align-self: center;
		font-size: 16px;
		font-weight: 700 !important;
		text-align: right;
		white-space: nowrap;
	}
	.simplecheckout-cart-total {
		display: flex;
		justify-content: space-between;
		column-gap: 16px;
		padding: 6px 0;
		border: 0;
		text-align: left;
	}
	.simplecheckout-cart-total:after {
		display: none;
	}
	.simplecheckout-cart-total span:first-child {
		max-width: none !important;
		font-weight: 400;
	}
	.simplecheckout-cart-total span:first-child b {
		font-weight: 400;
	}
	.simplecheckout-cart-total-value {
		flex: 0 0 auto;
		margin: 0;
		min-width: 0;
		text-align: right;
	}
	.simplecheckout-cart-total-remove {
		display: none;
	}
	#total_total {
		margin-top: 4px;
		padding-top: 10px;
		border-top: 1px solid var(--m-line);
		font-size: 18px;
		font-weight: 700;
	}
	#total_total span:first-child b {
		font-weight: 700;
	}
	#simplecheckout_shipping .radio,
	#simplecheckout_payment .radio {
		margin: 0 0 8px;
		border: 1px solid #c9ced6;
		border-radius: 8px;
	}
	#simplecheckout_shipping .radio:has(input:checked),
	#simplecheckout_payment .radio:has(input:checked) {
		border-color: var(--m-blue);
		background: #f2f7fb;
	}
	#simplecheckout_shipping .radio label,
	#simplecheckout_payment .radio label {
		display: block !important;
		min-height: 48px;
		padding: 12px 12px 12px 42px;
		line-height: 1.4;
	}
	#simplecheckout_shipping .radio input[type="radio"],
	#simplecheckout_payment .radio input[type="radio"] {
		width: 20px;
		height: 20px;
		margin: 1px 0 0 -30px;
	}
	.simple-content .form-control,
	.simple-content input[type="text"],
	.simple-content input[type="email"],
	.simple-content input[type="tel"] {
		height: 48px;
		font-size: 16px;
	}
	#simplecheckout_cart .simplecheckout-cart td.quantity input[type="text"] {
		height: 44px;
	}
	.simple-content textarea.form-control {
		height: auto;
		min-height: 96px;
	}
	.row-customer_register .radio {
		margin-right: 18px;
	}
	.row-customer_register .radio label {
		min-height: 44px;
		padding-top: 10px;
		padding-left: 28px;
	}
	.row-customer_register .radio input[type="radio"] {
		width: 20px;
		height: 20px;
		margin: 1px 0 0 -28px;
	}
	.simplecheckout-button-block {
		margin: 0 0 16px;
		padding: 0;
		overflow: visible;
	}
	.simplecheckout-button-right {
		float: none;
	}
	#simplecheckout_button_confirm {
		display: block;
		width: 100%;
		height: 52px;
		padding: 0;
		border-radius: 8px;
		font-size: 18px;
		font-weight: 600;
		line-height: 52px;
		text-align: center;
	}
	.m-co-total {
		display: flex;
		justify-content: space-between;
		margin: 0 0 10px;
		font-size: 18px;
		font-weight: 700;
	}

	/* Страница контроля качества свёрстана под фиксированную ширину */
	#control,
	#control p,
	#tests,
	.virtual {
		width: auto;
		max-width: 100%;
		margin-left: 0;
		margin-right: 0;
	}
	#control img,
	#tests img {
		max-width: 100%;
		height: auto;
		margin-top: 0;
	}
	.v_attention {
		right: 16px;
		font-size: 36px;
	}

	/* Сравнение товаров: таблица листается внутри, первая колонка остаётся на месте */
	body[class*="product-compare"] #content {
		overflow-x: auto;
		-webkit-overflow-scrolling: touch;
	}
	body[class*="product-compare"] #content .table {
		width: auto;
		min-width: 100%;
		font-size: 14px;
	}
	body[class*="product-compare"] #content .table td {
		min-width: 148px;
	}
	body[class*="product-compare"] #content .table td:first-child {
		position: -webkit-sticky;
		position: sticky;
		left: 0;
		z-index: 1;
		width: 104px;
		min-width: 104px;
		max-width: 104px;
		background: #f7f8fa;
		font-size: 13px;
		text-align: left;
	}
	body[class*="product-compare"] #content .table td[colspan] {
		position: static;
		max-width: none;
		background: none;
		font-size: 15px;
	}

	/* Подвал */
	.footer-box {
		margin-top: 16px;
		padding: 4px 16px 16px;
		border-color: var(--m-line);
		border-radius: 10px;
		box-shadow: none;
	}
	.footer-box h5 {
		position: relative;
		margin: 0;
		padding: 13px 28px 13px 0;
		cursor: pointer;
	}
	.footer-box h5 span {
		border: 0;
	}
	.footer-box h5:after {
		content: "\f107";
		position: absolute;
		top: 13px;
		right: 2px;
		color: var(--m-muted);
		font-family: FontAwesome;
		font-size: 18px;
		font-weight: 400;
		transition: transform .15s ease;
	}
	.footer-box h5.open:after {
		transform: rotate(180deg);
	}
	.footer-box > .row:first-child .list-unstyled {
		display: none;
		margin: 0 0 8px;
	}
	.footer-box > .row:first-child h5.open + .list-unstyled {
		display: block;
	}
	.footer-box > .row:first-child hr.visible-xs {
		margin: 0;
	}
	.footer-box li {
		margin: 0;
	}
	.footer-box li .fa {
		display: none;
	}
	.footer-box li a {
		display: block;
		padding: 8px 0;
	}
	.footer-box > hr {
		margin: 8px 0 12px;
	}
	.footer-box span[style] {
		display: block;
		margin-top: 10px;
		color: var(--m-muted);
		font-size: 12px !important;
		line-height: 1.45;
	}
}

/* Узкие телефоны */
@media (max-width: 359px) {
	.mbar-btn {
		flex-basis: 40px;
		width: 40px;
	}
	.product-layout .product-thumb {
		grid-template-columns: 92px minmax(0, 1fr);
		column-gap: 10px;
	}
	.product-layout .product-thumb .image img {
		width: 92px;
		height: 92px;
	}
	#product .addcart .row > div:first-child {
		flex-basis: 116px;
	}
	#product .quantity-plus-minus .btn {
		flex-basis: 36px;
		width: 36px;
	}
}

/* Невысокие экраны: закреплённая панель не должна занимать треть страницы */
@media (max-width: 767px) and (max-height: 640px) {
	#m-catbar {
		position: static;
	}
}
