/*Мобильное меню*/
.mobile_submenu_content_overlay {position: fixed; width: 100%; height: 100%;  background-color: rgba(0,0,0,0.5); top: 0;left: 0; z-index: 998;}
.mobile_menu_container {
  padding: 10px 30px;
  position: fixed;
  left: 0;
  top: 0;
  height: 100%;
  width: 100%;
  z-index: 999;
  background-color: #FFF;
  overflow: auto;
  display: none;
}


.mobile_menu_container .main_content .col1 {padding-right: 50px;}
.mobile_menu_container .main_content .col2 {flex: 0 0 250px;}

.mobile_menu_container .logo {margin-bottom: 20px;}
.mobile_menu_container .logo img {max-width: 80%; display: block; padding: 10px 0; max-height: 100px;}

.mobile_menu_container .contacts > div {margin-bottom: 20px;}
.mobile_menu_container .contacts a {text-decoration: none;}
.mobile_menu_container .contacts .address {font-weight: 600;}
.mobile_menu_container .contacts .callback a {width: 100%;}
.mobile_menu_container .contacts .social {margin-left: -11px;}
.mobile_menu_container .contacts .social a {color: var(--OPTION_BASE_COLOR)!important;}
.mobile_menu_container .contacts .social a:hover {color: var(--TEXT_COLOR)!important;}
.mobile_menu_container .contacts .buttons > div {margin: 15px 0;}
.mobile_menu_container .contacts .buttons a.active {text-decoration: underline;}

body.SITE_THEME_DARK .mobile_menu_container .contacts .social a:hover {color: #FFF!important;}



/*Меню*/
.mobile_menu_container .menu_container {position: relative;}
.mobile_menu_container .menu {margin-top: 20px; text-align: left;}
.mobile_menu_container ul {list-style: none; margin: 0; padding: 0;}
.mobile_menu_container .menu li {position: relative;}
.mobile_menu_container .menu li a {width: 100%; display: block; text-decoration: none;}
.mobile_menu_container .menu > li {width: 100%; }
.mobile_menu_container .menu > li  > a {font-weight: 600; padding: 10px 0;}

.mobile_menu_container .menu li ul ul li {opacity: 0.7}

.mobile_menu_container li.has_sub::after {
    content: '';
    position: absolute;
    right: 0;
    top: 11px;
    content: "\f105";
    font-family: FontAwesome;
    transform: rotate(90deg);
}
.mobile_menu_container li.has_sub {padding-bottom: 15px;}
.mobile_menu_container li.has_sub > a {padding: 10px 0 5px 0;}
.mobile_menu_container li.has_sub ul {font-size: 0.95rem;}
.mobile_menu_container li.has_sub:hover::after {color: var(--OPTION_BASE_COLOR)}


/*Кнока закрыть*/
.mobile_menu_container .close-x {
    width: 30px; height: 30px; 
    display: inline-block; 
    cursor: pointer;
    text-decoration: none;
    color: var(--TEXT_COLOR);
    position: absolute;
    right: 0;
    top: 10px;
}
.mobile_menu_container .close-x svg path {stroke: var(--OPTION_BASE_COLOR);}
.mobile_menu_container .close-x svg path:first-child {stroke: var(--OPTION_BASE_COLOR);}
.mobile_menu_container .close-x:hover svg path {stroke: #FFF;}
.mobile_menu_container .close-x:hover svg path:first-child {stroke: var(--OPTION_BASE_COLOR); fill: var(--OPTION_BASE_COLOR);}


/*Мобильная кнопка*/
.mobile_menu {display: block; position: absolute; left: -10px; top: 50%; margin-top: -22px;}
.mobile_menu .icon:hover .button, .mobile_menu .icon:hover:after, .mobile_menu .icon:hover:before {background-color: var(--OPTION_BASE_COLOR)}
.mobile_menu .icon {
    width: 21px;
    cursor: pointer;
    position: absolute; 
    top: 25px; 
    left: 20px;
    height: 12px;
    margin-top: -10px;
    border-radius: 2px;
}
.mobile_menu .icon .button {
    max-width: 30px;
    width: 100%;
    position: relative;
    height: 2px;
    float: right;
    margin-top: 5px;
    border-radius: 2px;
    background-color: #001d36;
    transition: all .3s ease-out;
}
.mobile_menu .icon::before { 
    content: '';
    position: absolute;
    left: 0px;
    top: 0%;
    transform: translateY(-50%);
    width: 100%;
    height: 2px;
    border-radius: 2px;
    background-color: #001d36;
    transition: all .3s ease-out;
}
.mobile_menu .icon::after { 
    content: '';
    position: absolute;
    left: 0px;
    top: 100%;
    transform: translateY(-50%);
    width: 60%;
    height: 2px;
    border-radius: 2px;
    background-color: #001d36;
    transition: all .3s ease-out;
}

.mobile_menu .icon.active .button {display: none;}
.mobile_menu .icon.active::before {
    content: '';
    position: absolute;
    left: 0px;
    top: 50%;
    transform: rotate(45deg);
    width: 100%;
    height: 2px;
    background-color: var(--OPTION_BASE_COLOR);
    -moz-transition: all .3s ease-out;
    -o-transition: all .3s ease-out;
    -webkit-transition: all .3s ease-out;
    transition: all .3s ease-out;
}
.mobile_menu .icon.active::after {
    content: '';
    position: absolute;
    left: 0px;
    top: 50%;
    transform: rotate(-45deg);
    width: 100%;
    height: 2px;
    background-color: var(--OPTION_BASE_COLOR);
    -moz-transition: all .3s ease-out;
    -o-transition: all .3s ease-out;
    -webkit-transition: all .3s ease-out;
    transition: all .3s ease-out;
}


.custom_menu_wrapper.multi_level {font-size: 90%; padding-left: 10px; border-left: 1px solid #ececec; margin-bottom: 15px;}
.custom_menu_wrapper .section_block.depth_1 > .name {font-weight: 600;}
.custom_menu_wrapper .section_block.depth_2 {margin-top: 5px;}
.custom_menu_wrapper .section_block.depth_2 > .name {font-weight: 500;}
.custom_menu_wrapper .active {color: var(--OPTION_BASE_COLOR);}


.custom_menu_wrapper.one_level .item {
    color: #4E4F54;
    border-radius: 50px;
    border: 1px solid #F0F1EB;
    margin: 0 8px 8px 0;
    cursor: pointer;
    padding: 4px 12px;
    display: inline-block;
    text-decoration: none;
    width: auto;
}
.custom_menu_wrapper.one_level .item::before {
  content: "";
  width: 4px;
  height: 4px;
  border-radius: 2px;
  background-color: var(--OPTION_BASE_COLOR);
  display: inline-block;
  vertical-align: middle;
  margin: -3px 6px 0 0;
}
.custom_menu_wrapper.one_level .item:hover {
    background-color: var(--OPTION_BASE_COLOR);
    border: 1px solid var(--OPTION_BASE_COLOR);
    color: #FFF;   
}
.custom_menu_wrapper.one_level .item:hover::before
{
    background-color: #FFF;    
}
body.SITE_THEME_DARK .custom_menu_wrapper.one_level .item {border: 1px solid var(--THEME_DARK_LINE_COLOR); color: var(--THEME_DARK_TEXT_COLOR);}

body.SITE_THEME_DARK .mobile_menu_container {background-color: var(--THEME_DARK_BG_ITEM_COLOR);}
body.SITE_THEME_DARK .mobile_menu_container .main_content .col2 {background-color: var(--THEME_DARK_BG_ITEM_COLOR)}
body.SITE_THEME_DARK .mobile_menu_container .hr {border-top: 1px solid var(--THEME_DARK_LINE_COLOR);}
body.SITE_THEME_DARK .custom_menu_wrapper.multi_level {border-left: 1px solid var(--THEME_DARK_LINE_COLOR);}


/*Верхнее меню*/
.top_menu {box-shadow: 0px 0px 5px 0px rgba(50, 50, 50, 0.2);}
.top_menu .main_menu > ul {height: 50px;}
.top_menu .main_menu li > a {line-height: 50px; font-size: 0.85rem; font-weight: 400;}
.top_menu .main_menu .fa {margin-top: -9px; z-index: 1;}


@media screen and (max-width: 1348px)
{

}


/*.col-xl-  (>= 1200px)*/
@media screen and (min-width: 1200px)
{
   .custom_menu_wrapper.multi_level {display: flex; flex-wrap: wrap; padding-left: 20px; }    
   .custom_menu_wrapper.multi_level .section_block {flex: 0 0 50%; margin-bottom: 10px;}
}
/*.col-lg-  (>= 992px)*/
@media screen and (max-width: 1200px)
{
     
}
/*.col-md-  (>= 768px)*/
@media screen and (max-width: 991px)
{


    .mobile_menu_container {padding: 0; max-width: 450px;}
    .mobile_menu_container .close-x {right: 20px;}
    .mobile_menu_container ul.sub {display: none;}  
    .mobile_menu_container .logo {margin: 0 20px;}
    .mobile_menu_container .logo img {max-height: 80px;}
    .mobile_menu_container .main_content {flex-wrap: wrap;}     
    .mobile_menu_container .main_content .col1 {flex: 0 0 100%; padding: 20px;}
    .mobile_menu_container .main_content .col2 {flex: 0 0 100%; background-color: #F4F7FB; padding: 20px;}
    
    .mobile_menu_container li.has_sub::after {right: 5px; font-size: 16px; transform: none; top: 50%; margin-top: -9px;}
    .mobile_menu_container li.has_sub {padding-bottom: 0;}
    .mobile_menu_container .menu {border-top: 1px solid #f1f1f1;}
    .mobile_menu_container .menu > li {border-bottom: 1px solid #f1f1f1;}
    .mobile_menu_container .menu > li a {font-weight: 500; padding: 12px 0; font-size: 0.9rem;}
    .mobile_menu_container .contacts .buttons {display: none;}
    .mobile_menu_container .contacts > div.callback {margin-bottom: 0;}
    
    .mobile_menu_container .btn.back {padding: 8px 20px 10px 35px;}
    .mobile_menu_container .btn.back svg {position: absolute; left: 10px; top: 11px}
    .mobile_menu_container .btn.back svg path {fill: var(--OPTION_BASE_COLOR);}
    .mobile_menu_container .btn.back:hover svg path {fill: #FFF;}
    
    .title-search-result .search_menu_mobile_content {margin-left: 16px;}
    
    .menu_wrapper {position: relative;}
    .menu_wrapper .sub_menu_container {display: none; padding-top: 10px; text-align: left;}
    .menu_wrapper .sub_menu_container .menu {margin-top: 5px;}
    
    .custom_menu_wrapper {border-left: none;}
    .custom_menu_wrapper .section_block {display: none;}
    .custom_menu_wrapper .section_block.depth_1 {display: block;}
    .custom_menu_wrapper .section_block .item {display: none;}
    
    body.SITE_THEME_DARK .mobile_menu_container .menu {border-top: 1px solid var(--THEME_DARK_LINE_COLOR);}
    body.SITE_THEME_DARK .menu > li {border-bottom: 1px solid var(--THEME_DARK_LINE_COLOR);}
}
/*.col-sm-  (>= 576px)*/
@media screen and (max-width: 767px)
{
   
}
/*.col-*/
@media screen and (max-width: 575px)
{
    
}

