/* =========================
   custom.css (исправлено/нормализовано)
   - убраны ошибки CSS
   - убраны дубли блоков (поиск/меню)
   - исправлен text-color -> color
   - убраны двойные ;; 
   - оставлены твои стили, но без конфликтов и повторов
   ========================= */

html {
  overflow-y: scroll;
  overflow-x: auto;
}

h1 {
  font-size: 2.4em;
  padding-bottom: 0;
  font-weight: 100;
  letter-spacing: -1px;
  font-family: 'Roboto Condensed', sans-serif;
  margin: 0;
}

h2 {
  color: #365574;
  font-size: 30px;
  margin-top: 15px;
  font-family: 'Georgia', 'Times New Roman', 'serif' !important;
}

.B_crumbBox li {
  display: inline-table;
}

.content-wrap h1 {
  color: #365574;
  font-size: 30px;
  margin-left: 15px;
  margin-top: 15px;
  font-family: 'Georgia', 'Times New Roman', 'serif' !important;
}

h1:after {
  display: block;
  height: 25px;
  content: '';
}

.logo {
  padding: 30px 10px 10px 0px;
}

.phone {
  color: #58626c;
  font-size: 20px;
  font-weight: bold;
  margin: 7px 10px 0px 20px;
  text-align: left;
}

.gorod {
  color: #58626c;
  font-size: 11px;
  text-transform: uppercase;
  text-align: left;
}

.poisk {
  padding: 14px 0px 10px 0px;
}

/* ВАЖНО: ниже было конфликтно (ты задаёшь hero белым, а тут задаётся синий).
   Оставляю как было у тебя, но hero-переопределение ниже делает белым. */
.jumbotron h1 {
  font-size: 32px !important;
  margin-bottom: 0 !important;
}

.jumbotron h1,
.jumbotron h2 {
  color: #082f57 !important;
  font-family: Georgia;
  margin-bottom: 20px;
}

#partners h2,
#news h2 {
  color: #365574;
  font-size: 30px;
  margin-left: 15px;
  margin-top: 15px;
  font-family: 'Georgia', 'Times New Roman', 'serif';
  text-align: center;
}

#catalog h2 {
  color: #365574;
  font-size: 30px;
  margin-top: 15px;
  font-family: 'Georgia', 'Times New Roman', 'serif';
}

#catalog h4 {
  color: #339cd8;
  text-transform: uppercase;
  font-size: 14px;
  font-weight: 600;
  margin-top: 15px;
  font-family: 'Istok Web', sans-serif;
  width: 100%;
  float: left;
  min-height: 3em;
}

#catalog h4 a:hover {
  text-decoration: underline;
}

#catalog img {
  border: 1px solid #c7dae2;
}

.cat-all {
  margin-top: 30px;
}

.cat-main {
  text-align: left;
}

.cat-main ul li {
  display: inline;
  list-style-type: none;
  font-size: 14px;
}

.cat-main ul li:after {
  content: "/";
  margin-left: 5px;
}

.breadcrumbs {
  margin: 10px 0px 0px 15px !important;
  position: relative;
  left: -10px;
  text-transform: uppercase;
  font-size: 12px;
  font-family: Arial;
}

.breadcrumbs a {
  text-decoration: underline;
}

#object {
  color: #fff;
  background: url(../img/bg-object.jpg);
  background-size: cover;
}

#object .fotorama__dot {
  display: block;
  width: 4px;
  height: 4px;
  position: relative;
  top: 12px;
  left: 6px;
  border-radius: 6px;
  border: 1px solid #ffffff;
}

#object .fotorama {
  min-width: 1px;
  overflow: hidden;
  float: right;
}

.poisk-material {
  padding: 18px !important;
  border-radius: 0;
}

.big-button {
  padding: 10px 50px !important;
  border-radius: 0;
}

table td.title p {
  color: #8a8b8c;
  line-height: 1.4em;
}

#flip-scroll table {
  background: #fdfeff;
}

#flip-scroll table td {
  padding: 5px 10px !important;
  color: #333 !important;
}

#flip-scroll table td ul {
  margin-left: 20px;
}

#flip-scroll table tbody tr td {
  color: #464e55 !important;
  border: 1px solid #ddd;
}

#flip-scroll table td:nth-child(1) {
  font-weight: bold !important;
}

#flip-scroll table tbody tr:nth-child(2n) {
  background: #ecf2f4 !important;
}

#msCart .table tbody tr td {
  border: 1px solid rgba(221, 221, 221, 0.28) !important;
}

.minicart {
  background: #ffb346 !important;
  color: #fff !important;
}

a.more-link {
  text-decoration: underline;
  text-transform: uppercase;
}

a.more-link:hover {
  text-decoration: none;
}

/* Видео Блок */
.video-block {
  position: relative;
  height: 180px;
  overflow: hidden;
  padding: 15px 20px;
}

.video-block iframe {
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  width: 100% !important;
  height: 100% !important;
}

.share-block {
  clear: both;
  border: 1px dashed #c7dae2;
  margin-top: 20px;
  padding: 5px;
  font-weight: bold;
  color: #0079c0;
}

/* СТИЛИ КАТЕГОРИИ */
.blog-list-content h1 {
  color: #365574;
  font-size: 30px;
  margin-left: 0px;
  margin-top: 15px;
  font-family: Georgia !important;
  border-bottom: none;
}

.blog-list-content p {
  color: #333;
}

.blog-list-content ul {
  -webkit-padding-start: 30px;
  list-style-type: square;
  color: #333;
}

.blog-list-content h3,
.modal-header h3 {
  text-transform: uppercase;
  font-size: 18px;
  font-weight: 500;
  color: #24578a;
}

.blog-side-nest h3 {
  font-family: Georgia;
  font-size: 22px;
  font-weight: 500;
  color: #24578a;
}

.blog-side-nest img {
  border: 1px solid #ddd;
  height: 64px;
}

.blog-side-nest img:hover {
  border: 1px solid #c7dae2;
}

.panel-default > .panel-heading {
  color: #333;
  background-color: #fff !important;
  border: 1px solid #c7dae2 !important;
}

.panel-title > a {
  color: #0083ce;
  text-transform: uppercase;
  font-size: 14px;
}

.panel-group .panel-heading + .panel-collapse .panel-body {
  border: none !important;
}

.fotorama__wrap--css3 .fotorama__html,
.fotorama__wrap--css3 .fotorama__stage .fotorama__img {
  border: 1px solid #c7dae2 !important;
}

.alert-warning h3 {
  color: #dd4e2d;
  font-size: 16px;
  text-transform: uppercase;
}

.alert-warning p {
  color: #464e55;
  font-size: 13px;
}

.col1 {
  width: 20%;
  float: left;
}

.col2 {
  width: 18%;
  float: left;
  padding: 0;
}

/* Кнопка вверх */
div.scrollup {
  position: fixed;
  color: #fff;
  background-color: #286090;
  right: 20px;
  bottom: 20px;
  padding: 6px 12px;
  font-size: 20px;
  border-radius: 4px;
  cursor: pointer;
  display: none;
  text-align: center;
}

div.scrollup:hover {
  background-color: #000;
}

.shop-item .img-responsive-media {
  border: 1px solid #c7dae2;
  padding: 0px;
}

footer {
  padding: 50px;
  background: #2d455c;
}

footer p.blue {
  padding-right: 50px;
  color: #579fe5;
}

footer ul.main-link li {
  list-style: none;
  font-size: 13px;
  line-height: 30px;
  text-transform: uppercase;
}

footer ul.main-link li a {
  color: #fff;
}

footer ul.main-link li a:hover {
  color: #b0e4ff;
}

footer ul.product-link li {
  list-style: none;
  width: 50%;
  float: left;
  line-height: 1.6em;
}

footer ul.product-link li a {
  color: #d7d7d7;
}

footer ul.product-link li a:hover {
  text-decoration: underline !important;
}

.well-media .btn-default {
  margin-top: 10px;
}

.well-media:hover,
.video-media:hover {
  background: #e8eef1;
}

.video-text p {
  color: #464e55;
  font-size: 12px;
}

.orange-forms {
  padding: 25px;
  margin-top: 20px;
  border-radius: 4px;
  background: #f38429;
}

.well-media {
  padding: 10px 10px 50px 10px;
  border: 1px solid #c7dae2;
  margin: 20px 0px;
}

.video-media {
  padding: 0px;
  border: 1px solid #c7dae2;
  margin: 20px 0px;
}

.tovar-media {
  padding: 10px;
  border: 1px solid #c7dae2;
  margin: 5px 0px;
}

.tovar-media:hover {
  background: #e8f0f3;
}

.tovar-media h4 {
  text-transform: uppercase;
}

.razdel ul {
  -webkit-padding-start: 20px;
}

.razdel ul li {
  display: inline-block;
  width: 15%;
  padding: 10px 10px 10px 0px;
  margin-right: 5px;
  vertical-align: top;
}

.razdel ul li a {
  color: #fff;
  font-size: 11px;
  text-transform: uppercase;
  font-weight: bold;
}

a.download {
  color: #0083ce;
  text-decoration: underline;
  font-family: 'Istok Web', sans-serif;
}

a.download:hover {
  text-decoration: none;
}

/* фиксированное плавающее меню (оставлено как было; может ломать адаптив) */
.header {
  top: 170px;
  width: 1140px;
  position: fixed;
  z-index: 1000;
}

section {
  padding: 50px 0px;
}

#prioritet {
  padding: 50px 0px;
  color: #263038;
  font-size: 14px;
}

#prioritet h3 {
  color: #fff;
  font-family: 'Georgia', 'Times New Roman', 'serif';
  font-size: 30px;
}

.punkt {
  width: 10%;
  padding: 25px 5px 10px 5px;
  min-height: 90px;
  display: block;
  float: left;
  text-align: center;
  line-height: 0.9em;
  transition: 0.5s all;
  -webkit-transition: 0.5s all;
  -moz-transition: 0.5s all;
  -o-transition: 0.5s all;
  -ms-transition: 0.5s all;
}

.punkt a:hover {
  text-decoration: none;
  color: #0090d3;
}

.punkt p {
  font-size: 12px;
  padding: 15px 0px;
}

#about {
  clear: both;
  position: relative;
  top: 160px;
}

.vse {
  background: #fff;
  border-radius: 5px;
  -webkit-box-shadow: 0px 0px 20px rgba(0, 0, 0, 0.3);
  box-shadow: 0px 0px 20px rgba(0, 0, 0, 0.3);
}

.input-group .form-control:first-child,
.input-group-addon:first-child,
.input-group-btn:first-child > .btn,
.input-group-btn:first-child > .btn-group > .btn,
.input-group-btn:first-child > .dropdown-toggle,
.input-group-btn:last-child > .btn:not(:last-child):not(.dropdown-toggle),
.input-group-btn:last-child > .btn-group:not(:last-child) > .btn {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
  border: 2px solid #fff;
  background: rgba(255, 255, 255, 0);
  color: #fff;
}

/* FIX: было "text-color" (не существует в CSS) */
input.form-control {
  color: #000;
}

.balka {
  color: #333;
  padding: 5px 20px;
  font-size: 22px;
  letter-spacing: -1px;
  -webkit-box-shadow: 1px 0px 5px #ccc;
  box-shadow: 1px 0px 5px #ccc;
  background: rgb(255, 255, 255);
  background: -webkit-gradient(
    linear,
    left top,
    left bottom,
    from(rgba(255, 255, 255, 1)),
    color-stop(47%, rgba(246, 246, 246, 1)),
    to(rgba(237, 237, 237, 1))
  );
  background: linear-gradient(
    to bottom,
    rgba(255, 255, 255, 1) 0%,
    rgba(246, 246, 246, 1) 47%,
    rgba(237, 237, 237, 1) 100%
  );
}

/*----------------------------------------------------------------------------------------------------*/
#example,
#example2,
#example3,
#example4 {
  font-size: 36px;
  text-align: center;
}

.cat-main .cat-title {
  text-transform: uppercase !important;
  color: #0083ce;
  font-size: 15px !important;
  font-weight: bold;
}

.cat-main hr {
  border-bottom: 3px solid #e2eff4;
}

/* Левое меню */
#left-menu,
#left-menu li,
#left-menu ul {
  padding: 0;
  margin: 0;
  font-size: 0px;
  line-height: 0px;
  list-style: none;
}

#left-menu {
  padding: 8px 1px 0;
}

#left-menu ul {
  background: #0090d3;
}

#left-menu li.c {
  border-top: 1px dotted #dedede;
  display: block;
  list-style-type: circle;
}

#left-menu li.c:first-child {
  border: none;
}

#left-menu li.c a.c {
  display: block;
  text-decoration: none;
}

#left-menu li.c a.c span {
  padding: 7px 4px 7px 17px;
  font: 12px Arial, Helvetica, sans-serif;
  color: #4d4d4e;
  display: block;
  text-decoration: none;
  position: relative;
}

#left-menu li.c.active a.c span {
  border-color: #fff;
  color: #fff;
  background: #115879;
}

#left-menu li.c.active a.c:hover span {
  background: #0090d3;
  color: #fff;
  text-decoration: underline;
}

#left-menu li.c a.c:hover {
  text-decoration: none;
}

#left-menu li.c a.c:hover span {
  background: #f1f1f1;
  color: #4d4d4e;
  text-decoration: none;
  cursor: pointer;
}

#left-menu li.d:first-child {
  border-color: #fff;
}

#left-menu li.d:first-child li.d:first-child {
  border-color: #82c9e9;
}

#left-menu li.d {
  border-top: 1px dotted #82c9e9;
}

#left-menu li.d a.d {
  background: none 16px center no-repeat #0090d3;
  padding: 5px 4px 5px 26px;
  font: 12px Arial, Helvetica, sans-serif;
  color: #fff;
  display: block;
  text-decoration: none;
  position: relative;
}

#left-menu li.d a.d:hover {
  color: #fff;
  background-color: #313435;
  text-decoration: none;
  cursor: pointer;
}

/* Правая навигация */
#menu-right,
#menu-right ul,
#menu-right li {
  margin: 0;
  padding: 0;
  list-style: none;
  font-family: Arial, Helvetica, sans-serif;
  font-size: 0px;
  line-height: 0px;
}

#menu-right {
  list-style: none;
  padding: 8px 1px 0;
  margin: 0;
}

#menu-right li {
  border-top: 1px dotted #dedede;
  padding: 0;
  display: block;
}

#menu-right li:first-child {
  border: none;
}

#menu-right li a {
  display: block;
  text-decoration: none;
}

#menu-right li span {
  padding: 7px 4px 7px 28px;
  font-size: 12px;
  line-height: normal;
  color: #4d4d4e;
  display: block;
  text-decoration: none;
}

#menu-right li a:hover,
#menu-right li a.over {
  text-decoration: none;
}

#menu-right li a:hover span,
#menu-right li a.over span {
  background: #f1f1f1;
  color: #4d4d4e;
  text-decoration: none;
  cursor: pointer;
}

#menu-right ul {
  background: none right 6px no-repeat;
  padding: 0 9px 0 0;
  margin: 0 -9px 0 0;
}

#menu-right ul ul {
  padding: 0 9px 0 0;
  margin: 0 -9px 0 0;
}

#menu-right li li a,
#menu-right li li a:hover {
  background: none;
  margin: 0;
  padding: 7px 13px 7px 17px;
  width: 170px;
  display: block;
  font-size: 12px;
  line-height: normal;
  color: #737374;
  text-decoration: none;
}

#menu-right li li a:hover,
#menu-right li li a.over {
  background: #f4f4f4;
  color: #737374;
  text-decoration: none;
}

/*----------------------------------------------------------------------------------------------------*/
/* МЕНЮ ВЕРХНЕЕ */
.main-menu {
  text-align: left;
  background-color: #fff;
  background: #355472;
  width: 101%;
  background: -webkit-gradient(linear, left top, left bottom, from(#336290), to(#355472));
  background: linear-gradient(#336290, #355472);
  padding: 20px 0 9px 0;
  list-style: none;
  margin: 0;
}

.main-menu a,
.main-menu a:hover {
  text-decoration: none;
  text-transform: uppercase;
}

.main-menu li {
  display: inline-block;
  padding: 0;
  position: relative;
  vertical-align: top;
}

.main-menu > li {
  color: #fff;
}

.main-menu > li > a {
  color: #fff;
  display: block;
  padding: 0.75em 1.25em;
}

.main-menu ul.sub-menu {
  position: absolute;
  width: 12em;
  top: 0;
  z-index: 900;
  padding-top: 3em;
  padding-left: 0;
}

.main-menu ul.sub-menu li {
  display: block;
  opacity: 0;
}

.main-menu ul.sub-menu a {
  background-color: #355472;
  color: #fff;
  padding: 0.75em 1em;
  display: block;
  text-transform: none;
}

.main-menu > li > a:hover {
  background-color: rgb(90, 121, 148);
  color: #fff;
}

.main-menu > li:hover ul.sub-menu,
.main-menu > li:focus ul.sub-menu {
  visibility: visible;
  opacity: 1;
}

.main-menu > li.menu-item-has-children {
  padding-right: 1.5em;
  overflow: hidden;
}

.main-menu > li.menu-item-has-children a {
  padding: 0.75em 0.7em 0.7em 1.25em;
}

.main-menu > li.menu-item-has-children:hover a {
  background-color: #355472;
  color: #fff;
}

.main-menu > li.menu-item-has-children:after {
  content: '';
  position: absolute;
  right: 0.5em;
  top: 1.2em;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 6px 5px 0 5px;
  border-color: #ccc transparent transparent;
}

.main-menu > li.menu-item-has-children:hover,
.main-menu > li.menu-item-has-children:focus {
  overflow: visible;
  background-color: #355472;
}

.main-menu > li.menu-item-has-children:hover ul.sub-menu,
.main-menu > li.menu-item-has-children:focus ul.sub-menu {
  top: 100%;
  padding-top: 0;
}

.main-menu > li.menu-item-has-children:hover ul.sub-menu li,
.main-menu > li.menu-item-has-children:focus ul.sub-menu li {
  opacity: 1;
}

.main-menu ul.sub-menu a:hover {
  background-color: #5488b7;
}

a,
.sub-menu,
.menu-item {
  -webkit-transition: all 0.3s ease-out;
  transition: all 0.3s ease-out;
}

/* МЕНЮ ЛЕВАЯ */
.accordion {
  width: 100%;
  max-width: 360px;
  margin: 30px auto 20px;
  background: #fff;
  border-radius: 4px;
}

.accordion li {
  list-style: none;
}

.accordion .link {
  cursor: pointer;
  display: block;
  padding: 15px 15px 15px 42px;
  color: #4d4d4d;
  font-size: 16px;
  text-transform: uppercase;
  font-weight: 700;
  position: relative;
  -webkit-transition: all 0.4s ease;
  transition: all 0.4s ease;
}

.accordion .link:hover {
  background: #ccc;
}

.accordion li:last-child .link {
  border-bottom: 0;
}

.accordion li i {
  position: absolute;
  top: 16px;
  left: 12px;
  font-size: 18px;
  color: #595959;
  -webkit-transition: all 0.4s ease;
  transition: all 0.4s ease;
}

.accordion li i.fa-chevron-down {
  right: 12px;
  left: auto;
  font-size: 16px;
}

.accordion li.open .link {
  color: #b63b4d;
}

.accordion li.open i {
  color: #b63b4d;
}

.accordion li.open i.fa-chevron-down {
  -webkit-transform: rotate(180deg);
  transform: rotate(180deg);
}

ul.B_crumbBox {
  -webkit-padding-start: 10px !important;
}

/* Submenu */
.submenu {
  display: none;
  background: #444359;
  font-size: 14px;
}

.submenu li {
  border-bottom: 1px solid #4b4a5e;
}

.submenu a {
  display: block;
  text-decoration: none;
  color: #d9d9d9;
  padding: 12px;
  padding-left: 42px;
  -webkit-transition: all 0.25s ease;
  transition: all 0.25s ease;
}

.submenu a:hover {
  background: #b63b4d;
  color: #fff;
}

.search-link {
  text-transform: uppercase;
}

.hereClass ul {
  display: block !important;
  max-width: 250px;
  background: rgba(52, 91, 129, 0.55);
}

.colorClass ul {
  background: rgba(52, 91, 129, 0.55);
}

/* NINTH EXAMPLE */
.view-ninth .mask-1,
.view-ninth .mask-2 {
  background-color: rgba(0, 0, 0, 0.5);
  height: 361px;
  width: 361px;
  background: rgba(232, 177, 22, 0.5);
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
  filter: alpha(opacity=100);
  opacity: 1;
  -webkit-transition: all 0.3s ease-in-out 0.6s;
  transition: all 0.3s ease-in-out 0.6s;
}

.view-ninth .mask-1 {
  left: auto;
  right: 0;
  -webkit-transform: rotate(56.5deg) translateX(-180px);
  transform: rotate(56.5deg) translateX(-180px);
  -webkit-transform-origin: 100% 0%;
  transform-origin: 100% 0%;
}

.view-ninth .mask-2 {
  top: auto;
  bottom: 0;
  -webkit-transform: rotate(56.5deg) translateX(180px);
  transform: rotate(56.5deg) translateX(180px);
  -webkit-transform-origin: 0% 100%;
  transform-origin: 0% 100%;
}

.view-ninth .content {
  background: rgba(0, 0, 0, 0.9);
  height: 0;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=50)";
  filter: alpha(opacity=50);
  opacity: 0.5;
  width: 361px;
  overflow: hidden;
  -webkit-transform: rotate(-33.5deg) translate(-112px, 166px);
  transform: rotate(-33.5deg) translate(-112px, 166px);
  -webkit-transform-origin: 0% 100%;
  transform-origin: 0% 100%;
  -webkit-transition: all 0.4s ease-in-out 0.3s;
  transition: all 0.4s ease-in-out 0.3s;
}

.view-ninth h2 {
  background: transparent;
  margin-top: 5px;
  border-bottom: 1px solid rgba(255, 255, 255, 0.2);
}

.view-ninth a.info {
  display: none;
}

.view-ninth:hover .content {
  height: 120px;
  width: 245px;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=90)";
  filter: alpha(opacity=90);
  opacity: 0.9;
  top: 40px;
  -webkit-transform: rotate(0deg) translate(0, 0);
  transform: rotate(0deg) translate(0, 0);
}

.view-ninth:hover .mask-1,
.view-ninth:hover .mask-2 {
  -webkit-transition-delay: 0s;
  transition-delay: 0s;
}

.view-ninth:hover .mask-1 {
  -webkit-transform: rotate(56.5deg) translateX(1px);
  transform: rotate(56.5deg) translateX(1px);
}

.view-ninth:hover .mask-2 {
  -webkit-transform: rotate(56.5deg) translateX(-1px);
  transform: rotate(56.5deg) translateX(-1px);
}

@media (max-width: 1024px) {
  .view-ninth:hover .content {
    width: 200px;
    top: 29px;
    height: 97px;
  }
}

@media (min-width: 767px) and (max-width: 1024px) {
  .main-menu {
    font-size: 11px;
  }

  .col1,
  .col2 {
    width: 100%;
  }

  .razdel ul li {
    width: 45%;
  }
}

@media (max-width: 640px) {
  .view-ninth:hover .content {
    width: 168px;
    top: 25px;
  }

  .razdel ul li {
    width: 45%;
  }
}

@media (max-width: 480px) {
  .view-ninth:hover .content {
    width: 181px;
  }
}

@media (max-width: 320px) {
  .view-ninth:hover .content {
    width: 100% !important;
    top: 0px;
  }
}

/* ----------------------------------------------------
   FLEX-карточки каталога/страниц
---------------------------------------------------- */
section#catalog > .container > .row,
#pdopage > .row {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-bottom: 20px;
}

section#catalog > .container > .row .well-media,
#pdopage > .row .well-media {
  height: 100%;
  margin: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  position: relative;
}

section#catalog > .container > .row .well-media .btn-default,
#pdopage > .row .well-media .btn-default {
  margin-top: 10px;
  position: absolute;
  left: 5%;
  width: 90%;
  bottom: 10px;
}

/* ----------------------------------------------------
   Адаптив общих блоков (max-width:1199)
---------------------------------------------------- */
@media (max-width: 1199px) {
  div[style*="width:60%;"] {
    width: 100% !important;
  }

  .orange-forms input.form-control {
    max-width: 100%;
    min-height: 35px;
    margin-bottom: 5px;
  }

  .container-fluid {
    padding: 0 10px !important;
  }

  .breadcrumbs {
    float: left;
    width: 100%;
  }

  .heders {
    float: left;
  }

  .heders .container {
    margin: 0px;
    width: 100% !important;
  }

  .heders .logo {
    width: 195px;
    float: left;
    margin-top: 15px;
  }

  .contakheder {
    float: right;
    width: calc(100% - 200px);
  }

  #menuqwe {
    z-index: 9999;
    position: static;
    left: auto;
    width: 100%;
  }

  div#dmenu {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
  }

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

  .carousel-container,
  #carousel {
    max-width: 100% !important;
  }

  .carousel-container {
    margin-bottom: 20px;
  }

  .carousel-feature {
    max-width: 100%;
    left: 0 !important;
    right: 0 !important;
    margin: auto;
  }

  .jumbotron {
    padding: 10px;
  }

  .jumbotron h1,
  .jumbotron h2 {
    color: #ffffff !important;
  }

  section#catalog > .container > .row,
  #pdopage > .row {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }

  section#catalog > .container > .row > .col-md-3,
  #pdopage > .row > .col-md-4 {
    width: 48%;
    margin: 1%;
  }

  form.ajax_form.af_example.form-horizontal fieldset {
    border: none;
  }

  form.ajax_form.af_example.form-horizontal fieldset input.form-control {
    width: 100%;
    height: 35px;
  }

  form.ajax_form.af_example.form-horizontal .btn-default {
    margin: auto;
    float: none;
    display: block;
  }

  #object .fotorama {
    float: none;
    margin: auto;
    display: block;
  }

  #object .fotorama .fotorama__wrap {
    margin: auto;
  }

  .blog-list-content ul {
    -webkit-padding-start: 10px;
  }

  .media {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-bottom: 10px;
  }

  .media > .pull-left {
    max-width: 50%;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    margin-right: 10px;
  }

  .form-group.form-inline .col-md-6.text-right {
    text-align: center;
  }

  .form-group.form-inline .col-md-6.text-right span {
    margin-bottom: 10px;
    display: inline-block;
  }

  .form-group.form-inline + .big-button {
    display: block;
    width: 100%;
  }

  .thankyou > div > div {
    left: 0 !important;
    right: 0 !important;
    margin: auto;
    max-width: 100%;
    top: 15% !important;
  }

  .modal-content {
    z-index: 2147483647;
    position: relative;
    background-color: #fff;
    background-clip: padding-box;
    border: 1px solid #999;
    border: 1px solid rgba(0, 0, 0, 0.2);
    border-radius: 6px;
    outline: none;
    -webkit-box-shadow: 0 3px 9px rgba(0, 0, 0, 0.5);
    box-shadow: 0 3px 9px rgba(0, 0, 0, 0.5);
  }

  .modal-header {
    min-height: 16.428571429px;
    padding: 15px;
    border-bottom: 1px solid #e5e5e5;
  }

  .modal-body {
    position: relative;
    padding: 20px;
  }

  .modal-dialog {
    margin: 60px auto;
    width: 350px !important;
    max-width: 100%;
  }

  button.close {
    -webkit-appearance: none;
    padding: 0;
    cursor: pointer;
    background: transparent;
    border: 0;
  }

  .close {
    float: right;
    font-size: 21px;
    font-weight: bold;
    line-height: 1;
    color: #000;
    text-shadow: 0 1px 0 #fff;
    filter: alpha(opacity=20);
    opacity: 0.2;
  }

  .well {
    width: 100%;
    float: left;
  }

  .well .form-control {
    width: 100%;
    margin-bottom: 10px;
  }

  .well .big-button {
    display: block;
  }

  .form-control {
    width: 100%;
    max-height: 60px;
  }

  fieldset {
    border: none;
  }

  #filter form {
    float: none !important;
    display: inline-block;
  }

  div#accordion.panel-group {
    float: left;
    width: 100%;
  }

  .panel-default > .panel-heading {
    padding-left: 15px;
  }
}

/* моб меню */
.mob-menu {
  display: none;
  background: -webkit-gradient(linear, left top, left bottom, from(#336290), to(#355472));
  background: linear-gradient(#336290, #355472);
  color: #fff;
  text-align: center;
  height: 40px;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  font-size: 18px;
}

@media (max-width: 768px) {
  div#dmenu {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }

  div#dmenu .phone {
    margin: 0 10px 10px 0;
  }

  div#dmenu .telandemail {
    margin-bottom: 10px;
  }

  .nest {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  #flip-scroll table {
    background: #fdfeff;
    width: 100% !important;
  }

  ul.main-menu {
    display: none;
    width: 100%;
  }

  ul.main-menu > li {
    display: block;
  }

  .mob-menu {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }

  .main-menu ul.sub-menu {
    display: none;
    position: static;
    width: 100%;
  }

  .main-menu > li.menu-item-has-children:hover ul.sub-menu,
  .main-menu > li.menu-item-has-children:focus ul.sub-menu {
    display: block;
  }

  .main-menu > li.menu-item-has-children > a {
    display: inline-block;
  }

  .thankyou > div > div {
    position: static !important;
  }
}

@media (max-width: 767px) {
  section#object.solutions {
    display: none;
  }
}

@media (max-width: 640px) {
  div#tableStatic {
    overflow: auto;
  }

  div#tableStatic:before {
    content: 'Для просмотра теблицы тяните <--> ';
    color: red;
    font-size: 18px;
  }

  div#tableStatic table {
    min-width: 630px;
  }
}

@media (max-width: 480px) {
  .heders .logo {
    float: none;
    margin: auto;
    width: 100%;
    padding: 15px 0;
  }

  .heders .logo img {
    max-width: 160px;
  }

  .contakheder {
    float: none;
    width: 100%;
  }

  div#dmenu {
    padding: 0;
  }

  div#dmenu .phone {
    margin-right: 0;
    width: 100%;
    text-align: center;
  }

  div#dmenu .gorod {
    text-align: center;
  }

  #msMiniCart {
    position: absolute;
    top: 14px;
    right: 10px;
  }

  div#dmenu .telandemail {
    width: 100%;
    text-align: center;
  }

  section#catalog > .container > .row > .col-md-3,
  #pdopage > .row > .col-md-4 {
    width: 100%;
    margin: 1% 0;
  }

  #catalog a.col-md-6.pull-left {
    float: none;
  }

  a.btn.btn-warning.big-button.pull-right {
    float: none;
    display: block;
    margin-top: 10px;
  }

  footer {
    padding: 10px;
  }
}

/* ==========================================================
   ПОИСК (mSearch2) — ОДИН ЧИСТЫЙ БЛОК (убраны все дубли)
   ========================================================== */
.catalog-search {
  position: relative;
}

.catalog-search__row {
  display: flex !important;
  flex-direction: row !important;
  gap: 12px;
  align-items: stretch;
}

.catalog-search__field {
  position: relative;
  flex: 1 1 auto !important;
  min-width: 0;
}

/* Десктопная ширина кнопки */
.catalog-search__btn {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;

  flex: 0 0 260px !important;
  width: 260px !important;
  max-width: 260px !important;
}

/* Подсказки */
.catalog-search__field #mse2_suggest {
  display: none;
  position: absolute;
  left: 0;
  right: 0;
  top: calc(100% + 6px);
  z-index: 99999;

  background: #fff;
  border: 1px solid rgba(0, 0, 0, 0.1);
  border-radius: 10px;
  box-shadow: 0 14px 30px rgba(0, 0, 0, 0.12);
  overflow: hidden;
  padding: 6px 0;
  max-height: 320px;
  overflow-y: auto;
  box-sizing: border-box;
}

/* Мобильный: кнопка сверху, норм размер */
@media (max-width: 640px) {
  .catalog-search__row {
    flex-direction: column-reverse !important;
    gap: 10px;
  }

  .catalog-search__btn,
  #mse2_form .big-button,
  #mse2_form button.catalog-search__btn.big-button {
    width: 100% !important;
    max-width: none !important;
    flex: 0 0 auto !important;

    height: auto !important;
    min-height: 44px !important;
    max-height: 56px !important;

    padding: 12px 16px !important;
    margin: 0 !important;

    font-size: 14px !important;
    line-height: 1.2 !important;

    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    border-radius: 4px;
  }

  /* На мобилке подсказки не должны перекрывать кнопку */
  .catalog-search__field #mse2_suggest {
    position: static;
    margin-top: 6px;
  }
}

/* =========================
   HERO / Первый экран (фикс)
   ========================= */
.jumbotron.hero {
  position: relative;
  min-height: 520px;
  display: flex;
  align-items: flex-start;
  padding-top: 110px;
  background-size: cover;
  background-position: center;
}

.jumbotron.hero::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(
    to right,
    rgba(0, 0, 0, 0.45) 0%,
    rgba(0, 0, 0, 0.25) 45%,
    rgba(0, 0, 0, 0.05) 70%,
    rgba(0, 0, 0, 0) 100%
  );
  z-index: 1;
}

.jumbotron.hero .container {
  width: 100%;
  max-width: 1200px;
  position: relative;
  z-index: 2;
}

.jumbotron.hero .hero-text {
  max-width: 560px;
  margin-left: 0;
  margin-right: auto;
  padding-left: 15px;
  text-align: left;
  color: #fff;
  font-size: 17px;
  line-height: 1.55;
  margin-bottom: 20px;
  opacity: 0.9;
}

.jumbotron.hero h1 {
  color: #ffffff !important;
  opacity: 1 !important;
  font-weight: 700;
  font-size: 42px;
  line-height: 1.2;
  margin-bottom: 22px;
}

.jumbotron.hero .hero-lead {
  color: #fff;
  font-size: 20px;
  font-weight: 600;
  margin-bottom: 18px;
  opacity: 0.95;
}

.jumbotron.hero .hero-note {
  color: #fff;
  font-size: 15px;
  margin-top: 16px;
  opacity: 0.8;
}

/* ===== Результаты поиска в каталоге ===== */
.mse2-results,
.mse2-results * {
  box-sizing: border-box;
}

.mse2-results {
  clear: both;
  margin: 20px 0 30px;
  padding: 20px;
  background: #f7f7f7;
  border: 1px solid #e0e0e0;
}

.mse2-results h2 {
  margin-top: 0;
  font-size: 24px;
  color: #2c3e50;
}

.mse2-row {
  padding: 8px 0;
  border-bottom: 1px solid #ddd;
}

.mse2-row:last-child {
  border-bottom: none;
}

.mse2-row a {
  font-weight: 600;
  color: #1a5fb4;
  text-decoration: none;
}

.mse2-row a:hover {
  text-decoration: underline;
}

/* ===== Описание категории ===== */
.category-description,
.catalog-description {
  clear: both;
  margin: 20px 0 30px;
  font-size: 16px;
  line-height: 1.6;
  color: #333;
}

#mse2_form {
  position: relative;
}

#mse2_suggest {
  max-height: 320px;
  overflow-y: auto;
}

@media (max-width: 768px) {
  #mse2_form .col-md-9,
  #mse2_form .col-md-3 {
    width: 100%;
    float: none;
  }

  #mse2_form button {
    margin-top: 10px;
  }
}

/* ===== Sidebar (Wayfinder) readability ===== */
#side-menu-block {
  padding: 12px 10px !important;
}

#side-menu-block #tree-wrap,
#side-menu-block .side-bar {
  padding: 0 !important;
}

#side-menu-block ul {
  list-style: none;
  margin: 0;
  padding: 0;
}

#side-menu-block li {
  margin: 0;
}

#side-menu-block a {
  display: block;
  font-size: 14px;
  line-height: 1.35;
  padding: 6px 8px;
  text-decoration: none;
  word-break: break-word;
}

#side-menu-block ul ul {
  margin-top: 4px;
  padding-left: 14px;
  border-left: 2px solid rgba(0, 0, 0, 0.08);
}

#side-menu-block ul ul a {
  font-size: 13px;
  padding: 4px 8px;
  opacity: 0.95;
}

#side-menu-block a:hover,
#side-menu-block a:focus {
  background: rgba(255, 255, 255, 0.55);
}

#side-menu-block li.active > a,
#side-menu-block a.active {
  font-weight: 700;
  background: rgba(255, 255, 255, 0.65);
}

@media (max-width: 991px) {
  #side-menu-block {
    max-height: 60vh;
    overflow: auto;
    border-bottom: 1px solid rgba(0, 0, 0, 0.08);
  }
}

#side-menu-block .side-bar--catalog {
  padding-bottom: 10px;
}

/* FIX: Safari carousel images jumping to corner */
.carousel,
.carousel-inner,
.carousel-inner .item,
.carousel-inner .carousel-item {
  width: 100%;
}

.carousel-inner .item,
.carousel-inner .carousel-item {
  display: flex;
  justify-content: center;
  align-items: center;
}

.carousel-inner img {
  display: block;
  max-width: 100%;
  height: auto;
  margin: 0 auto;
  float: none !important;
  position: static !important;
}

.carousel-inner,
.carousel-inner .item,
.carousel-inner .carousel-item {
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
}

/* msGallery/Fotorama */
.col-sm-4 #msGallery {
  max-width: 420px !important;
  margin: 0 auto;
}

.col-sm-4 #msGallery .fotorama,
.col-sm-4 #msGallery .fotorama__wrap,
.col-sm-4 #msGallery .fotorama__stage {
  width: 100% !important;
  max-width: 420px !important;
}

.col-sm-4 #msGallery .fotorama__stage {
  height: 280px !important;
  max-height: none !important;
}

.col-sm-4 #msGallery .fotorama__img,
.col-sm-4 #msGallery .fotorama__stage__frame img {
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
}

.col-sm-4 #msGallery .fotorama__nav-wrap {
  max-width: 420px !important;
}

/* close button inside recommendations block */
.alert.alert-warning {
  position: relative;
}

.alert.alert-warning .close {
  position: absolute;
  top: 10px;
  right: 12px;
  z-index: 2;
}

/* FIX: button "Добавить в корзину" in product list on narrow screens */
@media (max-width: 768px) {
  .ms2_form button[name="ms2_action"][value="cart/add"],
  .ms2_form input[type="submit"],
  .ms2_form input[type="button"],
  .ms2_form .btn {
    width: 100% !important;
    display: block !important;
    float: none !important;
    position: static !important;
    margin: 10px 0 0 !important;
    box-sizing: border-box !important;
  }

  .ms2_form,
  .ms2_form .text-right,
  .ms2_form .pull-right,
  .pull-right,
  .text-right {
    float: none !important;
    text-align: left !important;
  }

  .ms2_form .row,
  .ms2_form [class*="col-"] {
    float: none !important;
    width: 100% !important;
    max-width: 100% !important;
  }

  .tovar-media:after,
  .well-media:after {
    content: "";
    display: block;
    clear: both;
  }
}

/* служебное */
.neighbors {
  display: none !important;
}

/* FIX: carousel items not in column */
.carousel-items {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 12px;
  align-items: flex-start;
}

.carousel-items .carousel-block {
  display: block;
  flex: 0 0 auto;
}

.carousel-items img {
  max-width: 100%;
  height: auto;
  display: block;
}

/* Метрика в футере */
footer a[href*="metrika.yandex"] img {
  display: inline-block !important;
  vertical-align: middle;
}

/* Footer metrics */
.footer-metrics {
  text-align: right;
}

.footer-metrics__badge {
  margin-bottom: 8px;
}

.footer-metrics__badge a,
.footer-metrics__badge img {
  display: inline-block !important;
}

@media (max-width: 992px) {
  .footer-metrics {
    text-align: left;
    margin-top: 15px;
  }
}

/* fallback для иконок, если fontawesome не прогрузился */
.fa,
.fas,
.far,
.fal,
.fab,
[class^="icon-"],
[class*=" icon-"] {
  font-style: normal;
}

/* чтобы карусель не "схлопывалась" пока грузятся картинки */
#carousel,
.carousel-shadow,
.carousel-wrapper {
  min-height: 360px;
}

#carousel img,
.carousel-shadow img,
.carousel-wrapper img {
  max-width: 100%;
  height: auto;
  display: block;
}

/* Сайт футер (если используется) */
.site-footer {
  background: #2f475b;
  padding: 30px 0;
}

.site-footer .footer-col {
  margin-bottom: 15px;
}

.footer-phone {
  font-size: 24px;
  color: #579fe5;
  margin: 0 0 10px;
}

/* скрыть карусель до инициализации featureCarousel */
#carousel {
  visibility: hidden;
  opacity: 0;
}

#carousel.is-ready {
  visibility: visible;
  opacity: 1;
  transition: opacity 0.15s ease;
}

.carousel-container {
  min-height: 420px;
}

#carousel {
  min-height: 360px;
}

/* MENU NORMALIZE (убран дубль: оставлен один блок) */
.nav-wrap {
  background: #2f6f9f;
  background-image: none;
  opacity: 1;
  position: relative;
  z-index: 50;
}

ul.main-menu {
  margin: 0;
  padding: 0;
  list-style: none;

  display: flex;
  align-items: stretch;
  gap: 0;
}

ul.main-menu > li {
  margin: 0;
  padding: 0;
}

ul.main-menu > li > a {
  display: flex;
  align-items: center;

  height: 38px;
  padding: 0 16px;
  line-height: 1;

  border: 1px solid transparent;
  box-sizing: border-box;
  text-decoration: none;
}

ul.main-menu > li > a:hover,
ul.main-menu > li.active > a,
ul.main-menu > li.current > a {
  height: 38px;
  padding: 0 16px;
  border-color: transparent;
}

.cert-fotorama {
  transition: opacity 0.2s ease;
}

.mail-ico svg {
  display: inline-block;
  vertical-align: -2px;
  fill: currentColor;
  margin-right: 6px;
}

/* FeatureCarousel: убрать вспышку в левом верхнем углу */
#carousel {
  position: relative;
  overflow: hidden;
}

/* пока не готово — все слайды скрыты */
#carousel:not(.is-ready) .carousel-feature {
  opacity: 0 !important;
  pointer-events: none;
}

/* гарантируем правильное позиционирование элементов */
#carousel .carousel-feature {
  position: absolute;
  top: 0;
  left: 0;
}

/*.ms2_form,
button[name="ms2_action"],
.btn-minicart {
  display: none !important;
}
*/