/* ====================================================================================================
  CSS3 MENU
==================================================================================================== */

.main-menu {position: relative;z-index:9;width:auto; float:right; font-weight:500; }
.main-menu a {-webkit-transition:all 0.3s;-moz-transition:all 0.3s;transition:all 0.3s;}
.main-menu ul,
.main-menu ul li,
.main-menu ul li a {position: relative; margin-bottom:0; margin: 0;padding: 0;}

/* Submenu styles */
.main-menu ul li a {display: block; line-height: 20px;padding:20px;}

/*First level styles */
.main-menu > ul > li > a {color: #333;padding: 0 12px 25px  12px; font-size:14px; text-transform:uppercase; font-weight: 600;}
.main-menu > ul > li:hover > a {color: #ff6600;}


/* Opacity mask when left open */
.layer {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    min-width: 100%;
    z-index: 100;
    min-height: 100%;
    background-color: #000;
    z-index: 99;
    background-color: rgba(0, 0, 0, 0.8);
    -webkit-transition: transform 0.3s ease 0s, opacity 0.3s ease 0s, visibility 0s ease 0.3s;
    -moz-transition: transform 0.3s ease 0s, opacity 0.3s ease 0s, visibility 0s ease 0.3s;
    -ms-transition: transform 0.3s ease 0s, opacity 0.3s ease 0s, visibility 0s ease 0.3s;
    -o-transition: transform 0.3s ease 0s, opacity 0.3s ease 0s, visibility 0s ease 0.3s;
    transition: transform 0.3s ease 0s, opacity 0.3s ease 0s, visibility 0s ease 0.3s;
    opacity: 0;
    visibility: hidden;
}
.layer-is-visible {
    opacity: 1;
    visibility: visible;
    -webkit-transition: opacity 0.3s ease 0s, transform 0.3s ease 0s;
    -moz-transition: opacity 0.3s ease 0s, transform 0.3s ease 0s;
    -ms-transition: opacity 0.3s ease 0s, transform 0.3s ease 0s;
    -o-transition: opacity 0.3s ease 0s, transform 0.3s ease 0s;
    transition: opacity 0.3s ease 0s, transform 0.3s ease 0s;
}

#close_in,#header_menu, .cmn-toggle-switch{display:none;}



/* All styles for screen size between 992px and 1200px
================================================== */
@media (min-width: 992px) and (max-width: 1200px) {

/*First level styles */
.main-menu > ul > li > a {padding: 0 5px 15px  5px;}

}

/* All styles for screen size over 992px
================================================== */
@media only screen and (min-width: 992px) {

.main-menu {width: auto;}
.main-menu a {white-space: nowrap;}
.main-menu ul li {display: inline-block;}

.main-menu ul li.submenu:hover > a:before,
.main-menu ul li.submenu:hover > a:after {bottom: -20px;opacity: 0;}

/* Submenu + megamenu*/
.main-menu ul ul, .main-menu ul li .menu-wrapper {
	position: absolute;
	border-top: 2px solid #ff6600;
	z-index: 1;
	visibility: hidden;
	left: 3px;
	top: 100%;
	margin: 0;
	display:block;
	padding: 0;
	background: #fff;
	min-width:210px;
	-webkit-box-shadow: 0 6px 12px rgba(0, 0, 0, .175);
	box-shadow: 0 6px 12px rgba(0, 0, 0, .175);
	-webkit-transform: translateY(20px);
    -ms-transform: translateY(20px);
    transform: translateY(20px);
    opacity: 0;
    -webkit-transition: all 0.3s ease;
    transition: all 0.3s ease;
    font-weight:400;
	}
.main-menu ul li .menu-wrapper {
	padding:10px 15px !important;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	}
.main-menu ul li:hover > ul, .main-menu ul li:hover .menu-wrapper{
	padding: 0;
	visibility:visible;
	-webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0);
    opacity: 1;
	}
.main-menu ul .menu-wrapper ul {
	-webkit-box-shadow:none;
	-moz-box-shadow:none;
	box-shadow:none;
	border-top: none;
	margin:0;
	position:static;
	-webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0);
	}
.main-menu ul .menu-wrapper ul:before{border:0;}

.main-menu ul ul li {display: block;height: auto;padding: 0;}
.main-menu ul ul li a {font-size: 13px;color: #555;border-bottom:1px solid #ededed;display: block;}
.main-menu ul ul li:last-child a {border-bottom:none;}

.main-menu ul ul li:hover > a {background-color:#f3f3f3;color:#ff6600; padding-left:15px;}

/* Megamenu */
.main-menu ul li.megamenu {position:static;}
.main-menu ul li.megamenu .menu-wrapper {width:1140px;float:left;left:auto;right:0;}
.main-menu ul li:hover.megamenu .menu-wrapper {visibility:visible; opacity:1;}
.main-menu ul li:hover.megamenu .menu-wrapper ul{visibility:visible; opacity:1;}

.main-menu ul .menu-wrapper h3 {font-size: 13px;text-transform:uppercase;border-bottom:2px solid #ededed;padding-bottom:10px;margin-bottom:0;}

/* Submenu 3rd level */
.main-menu ul ul ul{position: absolute;border-top: 0;z-index: 1;height: auto;left: 100%;top: 0;margin: 0;padding: 0;background: #fff;min-width:190px;-webkit-box-shadow: 0 6px 12px rgba(0, 0, 0, .175);box-shadow: 0 6px 12px rgba(0, 0, 0, .175);}

/* Arrows top */
.main-menu ul ul:before{bottom: 100%;left: 15%;border: solid transparent;content: " ";height: 0;width: 0;position: absolute;pointer-events: none;border-bottom-color: #ff6600;border-width: 7px;margin-left: -7px;}

/* Arrows top 3rd level*/
.main-menu ul ul ul:before{border-width: 0;margin-left: 0;}

}

@media only screen and (max-width: 991px) {

#header_menu{text-align:center;padding:25px 15px 10px 15px;position:relative;display:block;}

.main-menu ul li a:hover,
a.show-submenu:hover,
a.show-submenu:focus,
a.show-submenu-mega:hover,
a.show-submenu-mega:focus{color:#e04f67 !important;background-color:#f3f3f3;}

.main-menu ul li  {border-top: none;border-bottom: 1px solid #ededed;color: #fff;}

/* Menu mobile first level */
.main-menu ul li a  {padding:10px 15px !important;}

.main-menu h3 {font-size: 12px; line-height:14px;margin: 0;padding: 0 0 15px 15px;color: #333;text-transform:uppercase;}
.megamenu .menu-wrapper > div {padding:0;}

.main-menu li,
.main-menu a {display: block;color:#333 !important;}
.main-menu li {position: relative;}
.main-menu > li > .button_header {
  color:#FFF !important;
}

.main-menu a:hover {color:#ff6600 !important;}

.main-menu ul > li {padding-bottom: 0;}
.main-menu ul > li i{float:right;}

/* Menu mobile second level */
.main-menu ul li.submenu ul{font-size: 13px;border-left:1px solid #ededed;margin:0 0 15px 25px;}
.main-menu ul li.submenu ul li{font-size: 13px;border:0; font-weight: 400;}

/* Menu mobile 3rd level */
.main-menu ul li.submenu ul ul{border-left:none;margin:0 0 0 15px;}


/* Menu mobile left panel */
.main-menu {
	overflow: auto;
	transform: translateX(-105%);
	top:0;
	left:0;
	bottom: 0;
	width: 55%;
	height: 100%;
	position:fixed;
	background-color:#fff;
	z-index:999999;
	-webkit-box-shadow: 1px 0px 5px 0px rgba(50, 50, 50, 0.55);
	-moz-box-shadow:    1px 0px 5px 0px rgba(50, 50, 50, 0.55);
	box-shadow:         1px 0px 5px 0px rgba(50, 50, 50, 0.55);
	-webkit-transition: all 0.5s cubic-bezier(0.77, 0, 0.175, 1);
    -moz-transition: all 0.5s cubic-bezier(0.77, 0, 0.175, 1);
    -ms-transition: all 0.5s cubic-bezier(0.77, 0, 0.175, 1);
    -o-transition: all 0.5s cubic-bezier(0.77, 0, 0.175, 1);
    transition: all 0.5s cubic-bezier(0.77, 0, 0.175, 1);
}
.main-menu.show {transform: translateX(0);}

.main-menu .show-submenu + ul,
a.show-submenu-mega + .menu-wrapper{display: none;visibility: hidden;}
a.show-submenu-mega + .menu-wrapper.show_mega,
.main-menu a.show-submenu + ul.show_normal  {display: block;visibility: visible;}

/* Hamburger menu button*/
.cmn-toggle-switch {
  position: relative;
  display:block;
  overflow: visible;
  position:absolute;
  top:0;
  right:20px;
  margin: 0;
  padding: 0;
  width: 30px;
  height: 30px;
  font-size: 0;
  text-indent: -9999px;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  box-shadow: none;
  border: none;
  cursor: pointer;
}

.cmn-toggle-switch:focus {outline: none;}
.cmn-toggle-switch span {display: block;position: absolute;top: 10px;left: 0;right: 0;height: 2px;background: #555;}

.cmn-toggle-switch span::before,
.cmn-toggle-switch span::after {position: absolute;display: block;left: 0;width: 100%;height:2px;background-color: #555; content: "";}

.sticky .cmn-toggle-switch span::before,
.sticky .cmn-toggle-switch span::after,
.sticky .cmn-toggle-switch span {background-color: #555;}


.cmn-toggle-switch span::before {top: -10px;}
.cmn-toggle-switch span::after {bottom: -10px;}

.cmn-toggle-switch__htx span::before,
.cmn-toggle-switch__htx span::after { -webkit-transition-duration: 0.3s, 0.3s;transition-duration: 0.3s, 0.3s;-webkit-transition-delay: 0.3s, 0;transition-delay: 0.3s, 0;}
.cmn-toggle-switch__htx span::before { -webkit-transition-property: top, -webkit-transform;transition-property: top, transform;}
.cmn-toggle-switch__htx span::after {-webkit-transition-property: bottom, -webkit-transform;transition-property: bottom, transform;}

/* active state, i.e. menu open */
.cmn-toggle-switch__htx.active span{background:none !important;}
.cmn-toggle-switch__htx.active span::before {top: 0; -webkit-transform: rotate(45deg);-ms-transform: rotate(45deg);transform: rotate(45deg);}
.cmn-toggle-switch__htx.active span::after {bottom: 0;-webkit-transform: rotate(-45deg); -ms-transform: rotate(-45deg);transform: rotate(-45deg);}
.cmn-toggle-switch__htx.active span::before,
.cmn-toggle-switch__htx.active span::after {-webkit-transition-delay: 0, 0.3s;transition-delay: 0, 0.3s;}

}

@media only screen and (max-width: 480px) {

.main-menu {width: 100%;}
a#close_in {display:block;position:absolute;right:25px;top:10px;width:20px;height:20px;}
#close_in i{color:#555 !important;font-size:40px;}

}
