/* ГЛАВНЫЙ фикс мобильной версии: тема жёстко держит body минимум 1200px,
   из-за чего вся страница рендерилась как уменьшенный десктоп */
body { min-width: 0 !important; }

/* предохранитель: слайдер не может расширить страницу */
#djslider-loader195, #djslider195, #slider-container195 { max-width: 100%; overflow: hidden; }
#slider195 li img { max-width: 100%; }

/* =========================================================
   Мобильная адаптация metallosort.ru
   Все правила — только внутри медиазапросов: десктоп (>=1200px)
   остаётся ровно как был. Подключается последним в <head>.
   ========================================================= */

/* ---------- Планшет и уже: контейнер становится текучим ---------- */
@media (max-width: 1199px) {

	.main {
		width: auto;
		max-width: 1170px;
		padding-left: 12px;
		padding-right: 12px;
		box-sizing: border-box;
	}

	/* две колонки сохраняются, но в процентах */
	#left.span3,
	.span3 {
		width: 23%;
		box-sizing: border-box;
	}
	#container-box.span9,
	.span9 {
		width: calc(77% - 30px);
		box-sizing: border-box;
	}
	.span12 { width: 100%; }

	/* слайдер и баннеры сжимаются по контейнеру */
	#djslider-loader195,
	#djslider195,
	#slider-container195 {
		max-width: 100% !important;
		width: 100% !important;
		height: auto !important;
		overflow: hidden;
	}
	#slider195 { width: 100% !important; max-width: 100% !important; }
	#slider195 li { width: 100% !important; height: auto !important; }
	#slider195 li img { width: 100% !important; height: auto !important; display: block; }

	/* шапка: якорные блоки следуют за правым краем контейнера */
	.currency { right: 0 !important; }

	/* список товаров: таблица с фиксированными WIDTH -> текучая */
	#product_list table { width: 100%; table-layout: fixed; }
	#product_list td { width: auto; }
	#product_list td:first-child { width: 60%; }
	#product_list td:nth-child(2) { width: 24%; }

	/* баннеры: 3 в ряд сжимаются, без отрицательных отступов */
	.moduletable.banner ul { margin-left: 0 !important; }
	.banner_block ul li[class*="items"] {
		width: 31.5% !important;
		height: auto !important;
		margin: 0 2% 10px 0 !important;
		box-sizing: border-box;
	}
	.banner_block ul li img.banner_img {
		width: 100% !important;
		height: auto !important;
	}

	/* широкие таблицы статей — прокрутка */
	.item-page table {
		display: block;
		width: auto !important;
		max-width: 100%;
		overflow-x: auto;
	}
}

/* ---------- Телефон: одна колонка ---------- */
@media (max-width: 767px) {

	body { overflow-x: hidden; }

	.main {
		width: auto;
		max-width: none;
		padding-left: 10px;
		padding-right: 10px;
	}

	/* ни один элемент не шире контейнера */
	.main, .main * { max-width: 100%; }
	.main * { box-sizing: border-box; }
	body, .main { overflow-wrap: break-word; word-wrap: break-word; }

	img { max-width: 100%; height: auto; }

	/* ----- шапка: бургер | логотип | корзина на абсолютах ----- */
	#header .main {
		position: relative;
		display: block;
		text-align: center;
		min-height: 64px;
		padding: 8px 0 4px 0;
	}
	.m-burger {
		position: absolute;
		left: 8px;
		top: 10px;
		margin: 0;
		z-index: 100;
		background: #fb8f04;
	}
	.logoheader {
		position: static !important;
		display: inline-block;
		margin: 0;
		padding: 0 52px;
		min-width: 0;
	}
	.logoheader #logo { display: inline-block; }
	.logoheader img { max-width: 100%; height: auto; vertical-align: top; }
	.cart {
		position: absolute !important;
		right: 8px;
		top: 10px;
		width: auto !important;
		height: auto !important;
		margin: 0 !important;
		text-align: right;
		z-index: 100;
	}
	.currency { display: none; }
	#custom {
		position: static;
		width: 100%;
		text-align: center;
		margin: 4px 0 0 0;
	}
	#custom .custom_custom .free,
	#custom .custom_custom .ph {
		display: inline-block;
		vertical-align: top;
		margin: 0 10px;
		float: none;
	}
	#custom h3 { font-size: 14px !important; }
	#search {
		position: static !important;
		width: auto !important;
		height: auto !important;
		margin: 6px 0 0 0;
		text-align: center;
	}
	#search .aj_label_wrapper { position: relative; }
	#search input.inputbox { width: 80% !important; box-sizing: border-box; }

	/* ----- верхнее меню: выпадает из-под шапки поверх контента ----- */
	.moduletable_topmenu { position: static !important; }
	.moduletable_topmenu ul#nav_top.sf_menu {
		display: none;
		width: auto;
		margin: 0;
		border: 1px solid #e5e5e5;
		background: #fff;
	}
	body.m-nav-open .moduletable_topmenu ul#nav_top.sf_menu {
		display: block;
		position: absolute;
		left: 8px;
		right: 8px;
		top: 100%;
		z-index: 99999;
		box-shadow: 0 6px 12px rgba(0,0,0,.25);
	}
	.moduletable_topmenu ul#nav_top.sf_menu li {
		float: none;
		display: block;
		border-bottom: 1px solid #e5e5e5;
	}
	.moduletable_topmenu ul#nav_top.sf_menu li a {
		display: block;
		padding: 13px 14px;
		text-align: left;
	}

	/* ----- левая колонка: свёрнута за кнопку ----- */
	.m-left-toggle {
		display: block;
		width: 100%;
		box-sizing: border-box;
		background: #3a3a3a;
		border: none;
		padding: 13px 14px;
		font: bold 16px/22px Arial, Helvetica, sans-serif;
		color: #fff;
		text-align: left;
		cursor: pointer;
	}
	.m-left-toggle .m-arrow { float: right; }
	.m-left-toggle .m-arrow::before { content: '▾'; }
	body.m-left-open .m-left-toggle .m-arrow::before { content: '▴'; }
	.m-left-body { display: none; }
	body.m-left-open .m-left-body { display: block; }
	/* ----- контент: одна колонка ----- */
	#content .wrapper2 { width: 100%; float: none; }
	#left.span3,
	#left {
		float: none;
		width: 100% !important;
		margin: 0 0 15px 0;
	}
	#container-box.span9,
	#container-box {
		float: none;
		width: 100% !important;
		margin: 0;
	}
	.content-indent { padding: 0; }

	/* баннеры выбора категории: 2 в ряд, без отрицательных отступов */
	.moduletable.banner ul { margin-left: 0 !important; }
	.banner_block ul li,
	.banner_block ul li.items1,
	.banner_block ul li[class*="items"] {
		width: 48% !important;
		height: auto !important;
		margin: 0 2% 10px 0 !important;
	}
	.banner_block ul li:nth-child(2n) { margin-right: 0 !important; }
	.banner_block ul li a { display: block; }
	.banner_block ul li img.banner_img {
		width: 100% !important;
		height: auto !important;
	}
	.banner_block ul li span p { font-size: 15px !important; }

	/* ----- списки товаров: компактная строка ----- */
	#product_list table,
	#product_list tbody,
	#product_list tr {
		display: block;
		width: 100%;
		box-sizing: border-box;
	}
	/* название - отдельной строкой */
	#product_list td:first-child {
		display: block;
		width: 100% !important;
		padding: 6px 0 4px 0 !important;
	}
	/* цена и кнопка - в одну строку */
	#product_list td {
		display: inline-block;
		width: auto !important;
		vertical-align: middle;
		text-align: left !important;
		padding: 0 4px !important;
	}
	#product_list td:nth-child(3) { float: right; }
	/* кнопка "В корзину" - компактная */
	#product_list input.addtocart-button,
	#product_list .addtocart-bar2 span.addtocart-button .addtocart-button {
		width: auto !important;
		min-width: 120px;
		height: 30px !important;
		line-height: 30px !important;
		padding: 0 12px !important;
		font-size: 13px !important;
	}
	#product_list .addtocart-bar2 { width: auto !important; margin: 0 !important; }
	#product_list .addtocart-area { margin: 0 !important; }
	/* разделитель между товарами */
	#product_list .spacer {
		border-bottom: 1px solid #e9e9e9;
		padding: 4px 0 10px 0 !important;
		margin: 0 !important;
	}
	#product_list font[size="5"] { font-size: 16px !important; }
	#product_list select { max-width: 110px; }

	/* ----- карточка товара ----- */
	.productdetails-view .wrapper2 .fright,
	.productdetails-view .wrapper2 .fleft,
	.productdetails-view .fright,
	.productdetails-view .fleft {
		float: none !important;
		width: 100% !important;
		text-align: left;
	}
	.productdetails-view img.productimage { width: 100%; max-width: 268px; height: auto; }
	.addtocart-bar2 .wrapper { width: 100%; float: none; }
	.addtocart-bar2 .fright { text-align: left; }
	.ask-a-question-view .form-field .submit { width: auto; }
	#askform textarea.field, #askform input.inputbox { width: 100% !important; box-sizing: border-box; }

	/* ----- категории/производители ----- */
	.category-view .category,
	.manufacturer-view-default .manufacturer {
		width: 100% !important;
		float: none;
	}
	.category-view .category img,
	.manufacturer-view-default .manufacturer img { width: 100%; max-width: 268px; height: auto; }

	.wrap-cat img.cat {
		float: none !important;
		width: auto !important;
		max-width: 100%;
		height: auto;
		margin: 0 0 10px 0;
	}
	.wrap-cat .category_description {
		float: none !important;
		width: auto !important;
		max-width: 100%;
		overflow: visible;
	}

	/* ----- широкие таблицы в статьях (RAL и пр.): горизонтальная прокрутка ----- */
	.item-page table,
	.category_description table {
		display: block;
		width: auto !important;
		max-width: 100%;
		overflow-x: auto;
		-webkit-overflow-scrolling: touch;
	}

	/* ----- карта контактов ----- */
	.ymaps { width: 100% !important; }

	/* ----- фильтр по критериям ----- */
	table.horizontbox,
	table.horizontbox tr,
	table.horizontbox td {
		display: block;
		width: 100% !important;
		box-sizing: border-box;
	}
	table.horizontbox select { width: 100%; }

	/* ----- левое меню категорий ----- */
	#left .module.categories ul li a { display: block; padding: 8px 10px; }

	/* ----- хлебные крошки ----- */
	.breadcrumbs_Breadcrumbs { font-size: 11px; }

	/* ----- пагинация: перенос строк ----- */
	.pagination ul li { margin: 2px 4px 2px 0; }

	/* ----- подвал ----- */
	#foot .wrapper { width: 100%; }
	#foot ul.menu li { display: block; float: none; text-align: center; padding: 4px 0; }
	#foot ul.menu { border-top: 1px solid #e5e5e5; }
	#foot .moduletable_socials { text-align: center; margin-top: 8px; }
	#foot ul.social li { float: none; display: inline-block; }
	.footer1 { text-align: center; }

	/* ----- окно живого поиска ----- */
	#vm_ajax_search_results2135 { width: 90% !important; }

	/* ----- слайдер главной ----- */
	#djslider-loader195,
	#djslider195,
	#slider-container195 {
		max-width: 100% !important;
		width: 100% !important;
		height: auto !important;
		overflow: hidden;
	}
	#slider195 { width: 100% !important; max-width: 100% !important; }
	#slider195 li {
		width: 100% !important;
		height: auto !important;
		float: none;
	}
	#slider195 li img { width: 100% !important; height: auto !important; display: block; }
	#navigation195 img { width: 24px; height: auto; }

	/* корзина-мини: в поток */
	.vmCartModule .minicart { text-align: center; }
}

/* ---------- мобильные кнопки: скрыты на десктопе ---------- */
.m-burger { display: none; }
.m-left-toggle { display: none; }
.m-left-body { }

@media (max-width: 767px) {
	.m-left-toggle { display: block; }
	.m-burger {
		display: block;
		width: 44px;
		height: 36px;
		padding: 8px 10px;
		background: #3a3a3a;
		border: none;
		cursor: pointer;
		box-sizing: border-box;
	}
	.m-burger span {
		display: block;
		height: 3px;
		background: #fff;
		margin: 4px 0;
		border-radius: 1px;
	}
	.m-burger:active { background: #555; }
}

/* ---------- узкие телефоны ---------- */
@media (max-width: 480px) {
	.moduletable.banner ul li[class*="items"] {
		width: 100% !important;
		margin: 0 0 12px 0 !important;
	}
	.banner_block ul li span p,
	.moduletable.banner .ban1_text1 { font-size: 24px !important; }

	#custom .custom_custom .free,
	#custom .custom_custom .ph {
		display: block;
		margin: 2px 0 !important;
	}

	.main { padding-left: 8px; padding-right: 8px; }
}
