/*Главное меню*/
.main_menu_container {padding: 0!important;}
.main_menu .root-item-selected {text-decoration: underline;}
.main_menu > ul  {
    -moz-border-radius: 2px;
    -webkit-border-radius: 2px;
    border-radius: 2px;
    width: 100%;
    height: 65px;
    font-size: 1.05rem;
    text-align: center;
    padding: 0;
    margin: 0;
    display: flex;
}
.main_menu > ul > li {flex-grow: 1}
.main_menu li 
{
    float: left;
    box-sizing: border-box;
    transition: all 0.2s ease 0s;
    list-style: none;
    height: 100%;
    position: relative;
}
.main_menu li > a {
    line-height: 60px;
    color: #FFFFFF;
    width: 100%;
    box-sizing: border-box;
    display: block;
    padding: 0 25px;
    font-size: 0.90rem;
    text-decoration: none;
    position: relative;
    z-index: 1;
    height: 100%;
    font-weight: 500;
}
.main_menu ul li ul li a {padding: 0 30px;}
.main_menu li.has-child > a {padding: 0 40px 0 25px;}
.main_menu > ul > li ul .item-selected a {text-decoration: underline;}
.main_menu .fa  {
    position: absolute;
    top: 50%;
    right: 17px;
    margin-top: -12px;
    color: #FFF;
    transition: all 0.1s ease-out 0s;
    z-index: 1;
}
.main_menu li:hover > a > svg {
    -ms-transform: rotate(180deg);
    -webkit-transform: rotate(180deg);
    -o-transform: rotate(180deg);
    -moz-transform: rotate(180deg);
    margin-top: -10px;

}

.main_menu li:hover > ul {display: block;} 
.main_menu li ul, .main_menu li ul li ul {
    position: absolute;
    display: none;
    z-index: 500;
    height: auto;
    text-align: left;
}
.main_menu li ul {top: auto; min-width: 100%; box-shadow: 0px 3px 5px 0px rgba(0, 0, 0, 0.3); border-radius: 12px}
.main_menu li ul li ul {left: 100%; top: 0; }
.main_menu li ul li {width: 100%; white-space: nowrap;}
.main_menu li ul li a {background-color: #fafafa; color: #000000!important; border-bottom: 1px solid #dfdfdf;}
.main_menu li ul li:hover > a {background-color: #f3f4f6; color: var(--TEXT_COLOR)!important}
.main_menu li ul li:last-child a {border-bottom: none;}
.main_menu li ul li a:hover {text-decoration: underline;}
.main_menu a.parent::after {position: absolute; top: 25px; right: 5px; content: ""; display: block !important; width: 10px; height: 7px; background: url('../images/menu/arrow.gif') 0px 0px no-repeat;}
.main_menu_container .btn {
    position: absolute;
    right: 0;
    top: 8px;
}
.main_menu ul > li {transition: background 0.2s ease-out 0s; background-position: center center;}
.main_menu > ul > li:hover > a, .main_menu > ul > li.active > a {color: #FFF; text-decoration: underline;}

/*Мобильное меню слева*/
.mobile_submenu_content_overlay {position: fixed; width: 100%; height: 100%;  background-color: rgba(0,0,0,0.5); top: 0;left: 0; z-index: 9998;}
.mobile_submenu_container .close-x {
    width: 30px; height: 30px; 
    display: inline-block; 
    cursor: pointer;
    position: absolute; 
    right: 10px; top: 10px;
    text-decoration: none;
    font-size: 30px;
    color: var(--TEXT_COLOR);
}
.mobile_submenu_container .close-x:hover {color: var(--OPTION_BASE_COLOR)}
.mobile_submenu_container .close-x path {stroke-width: 1.5;}


.mobile_submenu_container {
  padding: 40px 0;
  position: fixed;
  left: 0;
  top: 0;
  height: 100%;
  width: 350px;
  max-width: 95%;
  z-index: 9999;
  background-color: #FFF;
  box-shadow: 0px 0px 15px 10px rgba(50, 50, 50, 0.3);
  text-align: center;
  color: var(--TEXT_COLOR);
  overflow: auto;
}
.mobile_submenu_container .logo img {max-width: 80%; display: block; margin: 0 auto; padding: 10px 0; max-height: 100px;}
.mobile_submenu_container .menu {margin: 20px 0;}
.mobile_submenu_container ul {margin: 15px 0; padding: 0; } 
.mobile_submenu_container li {
    position: relative; line-height: 1.2; font-size: 1rem; 
    text-align: center; list-style: none;    
}
.mobile_submenu_container li:hover > a {background-color: #fafafa}
.mobile_submenu_container li a, body.SITE_THEME_DARK .mobile_submenu_container li a {padding: 12px 0; display: block; color: var(--TEXT_COLOR);}
.mobile_submenu_container li.has_sub::after {
    content: '';
    position: absolute;
    right: 15px;
    top: 50%;
    content: "\f105";
    font-family: FontAwesome;
    margin-top: -11px;
}
.mobile_submenu_container li.has_sub:hover {color: var(--OPTION_BASE_COLOR);}

.mobile_submenu_container li.back {background-color: #f4f4f4;}
.mobile_submenu_container li.back:before {
     content: ''; position: absolute; left: 15px; top: 50%;
    content: "\f104";
    font-family: FontAwesome;
    margin-top: -11px;   
}
.mobile_submenu_container li.back:hover::before {color: var(--OPTION_BASE_COLOR);}


.mobile_submenu_container .menu {position: relative;}
.mobile_submenu_container .sub_menu {
    position: absolute;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    background-color: #FFFFFF;
    display: none;
}
.mobile_submenu_container .sub {display: none;} 


.mobile_submenu_container .phone {margin-bottom: 5px;}
.mobile_submenu_container .phone a {font-size: 1.3rem; text-decoration: none; font-weight: 400;}
.mobile_submenu_container .callback a {color: #de0e00}

/*Кнопка меню*/
header.css_color .mobile_menu .icon::after, header.css_color .mobile_menu .icon::before, header.css_color .mobile_menu .icon .button, 
header.css_dark .mobile_menu .icon::after, header.css_dark .mobile_menu .icon::before, header.css_dark .mobile_menu .icon .button {background-color: #FFF;} 

.mobile_menu {
    display: none;
    position: relative;
    color: #FFFFFF;
    text-align: left;
    line-height: 55px;
    -moz-border-radius: 2px;
    -webkit-border-radius: 2px;
    border-radius: 2px;
    cursor: pointer;
    margin-right: 5px;
}
.mobile_menu .icon {width: 25px;}
.mobile_menu a {color: var(--TEXT_COLOR)!important}

/*----------------Цвета меню----------------*/
header.css_trans .main_menu li > a, header.css_light .main_menu li > a  {color: var(--TEXT_COLOR)}
header.css_color .main_menu a svg path, header.css_dark .main_menu a svg path {stroke: #FFF;}
header.css_color .main_menu li a:hover, header.css_color .main_menu li a.root-item-selected {text-decoration: none;}


/*Цветное*/
header.css_color .main_menu_container .main_menu > ul > li:hover > a, 
header.css_color .main_menu_container .main_menu > ul > li.active > a, 
header.css_color .main_menu_container .main_menu > ul > li > a.active 
{text-decoration: none;  background-color: var(--OPTION_BASE_COLOR_D);}

/*Темное*/
.main_menu_container.css_dark {padding: 0!important; background-color: #333333;}
.main_menu_container.css_dark .main_menu > ul > li:hover > a, .main_menu_container.css_dark .main_menu > ul > li > a.active {text-decoration: none; background-color: #556170;}

/*Светлое*/
.main_menu_container.css_light {padding: 0!important; background-color: #FFF; border-top: 1px solid #ECECEC; border-bottom: 1px solid #ECECEC;}
.main_menu_container.css_light .main_menu li > a {color: var(--TEXT_COLOR)}
.main_menu_container.css_light .main_menu li:hover > a, .main_menu_container.css_light .main_menu li.active > a {text-decoration: none; background-color: #FFF; color: var(--OPTION_BASE_COLOR);}

.main_menu_container.css_light .main_menu li > a::after
{
  position: absolute;
  transition: .6s cubic-bezier(0.165,0.84,0.44,1);
  width: 100%;
  content: "";
  display: block;
  height: 1px;
  background-color: var(--OPTION_BASE_COLOR);
  top: 0;
  transform: scaleX(0) translate(0,0);
}
.main_menu_container.css_light .main_menu li > a::before  {top: auto; bottom: 0px;}
.main_menu_container.css_light .main_menu > ul > li:hover > a::after{left: 0;transform: scaleX(1) translate(0,0);}

.main_menu_container.css_light .main_menu .fa {color: var(--TEXT_COLOR); z-index: 2;}
.main_menu_container.css_light .main_menu > ul > li:hover .fa {color: var(--OPTION_BASE_COLOR);}
.main_menu_container.css_light .main_menu li ul li a {background-color: #FFF;}




