/*==================================================================
[ Main nav ]*/
.wrap-main-nav {
  width: 100%;
  min-height: 45px;
  z-index: 1000;
  position: relative;
}

.main-nav {
    width: 100%;
    min-height: 45px;
    background-color: #fff;
    -webkit-transform: translateY(0%);
    -moz-transform: translateY(0%);
    -ms-transform: translateY(0%);
    -o-transform: translateY(0%);
    transform: translateY(0%);
}

.menu-desktop {
    max-width: 100%;
    margin: 0;
    min-height: 45px;
    position: relative;
    padding: 0;
}

.main-menu {
  list-style-type: none;
  margin: 0;
  height: 100%;

  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
  align-items: center;
}

.main-menu > li {
  height: 100%;
  position: relative;
}

.main-menu > li > a {
    font-family: Roboto-Medium;
    font-size: 16px;
    line-height: 1.5;
    color: #222;
    position: relative;
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    align-items: center;
    height: 100%;
    padding: 5px 0px;
    /*margin: 0 18px;*/
    transition: all 0.3s;
    -o-transition: all 0.3s;
    -moz-transition: all 0.3s;
    -webkit-transition: all 0.3s;
    text-decoration: none;
}

.main-menu > li > a::before {
    content: "";
    display: block;
    position: absolute;
    width: calc(100% + 36px);
    height: 2px;
    bottom: -9px;
    left: -18px;
    background-color: #e6e6e6;
    transition: all 0.3s;
    -webkit-transition: all 0.3s;
    -o-transition: all 0.3s;
    -moz-transition: all 0.3s;
    -webkit-transform: scaleX(0);
    -moz-transform: scaleX(0);
    -ms-transform: scaleX(0);
    -o-transform: scaleX(0);
    transform: scaleX(0);
}
li.main-menu-active > a::before {
  -webkit-transform: scaleX(1);
  -moz-transform: scaleX(1);
  -ms-transform: scaleX(1);
  -o-transform: scaleX(1);
  transform: scaleX(1);
}

/* .main-menu > li > a:hover:before {
  -webkit-transform: scaleX(1);
  -moz-transform: scaleX(1);
  -ms-transform: scaleX(1);
  -o-transform: scaleX(1);
  transform: scaleX(1);
} */

@media (max-width: 1199px) {
  .main-menu > li > a {
    margin: 0 10px;
  }

  .main-menu > li > a::before {
    left: -10px;
    width: calc(100% + 20px);
  }
}

/*---------------------------------------------*/
.sub-menu {
  list-style-type: none;
  position: absolute;
  top:0;
  left:100%;
  width: 225px;
  background-color: #fff;
  padding: 15px 0px 15px 0px;

  transition: all 0.3s;
  -webkit-transition: all 0.3s;
  -o-transition: all 0.3s;
  -moz-transition: all 0.3s;

  visibility: hidden;
  opacity: 0;

  border: 1px solid #f2f2f2;
  box-shadow: 0 5px 10px 0px rgba(0,0,0,0.2);
  -moz-box-shadow: 0 5px 10px 0px rgba(0,0,0,0.2);
  -webkit-box-shadow: 0 5px 10px 0px rgba(0,0,0,0.2);
  -o-box-shadow: 0 5px 10px 0px rgba(0,0,0,0.2);
  -ms-box-shadow: 0 5px 10px 0px rgba(0,0,0,0.2);
}

.sub-menu li {
  position: relative;
  background-color: transparent;
}

.main-menu > li > .sub-menu {
  top:100%;
  left: 0px;
}

.main-menu > li.respon-sub-menu > .sub-menu {
  top:100%;
  left: auto;
  right: 0;
}

li.respon-sub-menu > .sub-menu .sub-menu {
  top:0;
  left: auto;
  right: 100%;
}

.sub-menu a {
  font-family: Roboto-Medium;
  font-size: 14px;
  line-height: 1.7857;
  color: #222;

  display: block;
  padding: 8px 30px;
  width: 100%;

  transition: all 0.3s;
  -webkit-transition: all 0.3s;
  -o-transition: all 0.3s;
  -moz-transition: all 0.3s;
}

@media (max-width: 1199px) {
  .sub-menu {
    width: 190px;
  }

  .sub-menu a {
    padding: 8px 20px;
  }
}


/*---------------------------------------------*/
.main-menu > li:hover > a:after {
  color: #17b978;
}

.main-menu > li:hover > a {
  text-decoration: none;
  color: #17b978;
}

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

.sub-menu li:hover > .sub-menu {
  visibility: visible;
  opacity: 1;
}

.sub-menu li:hover {
  background-color: transparent;
}

.sub-menu > li:hover > a {
  background-color: #17b978;
  color: #fff;
  text-decoration: none;
}

/*------------------------------------------------------------------
[ Mega menu ]*/
.main-menu > li.mega-menu-item {
  position: static;
}

.sub-mega-menu {
  flex-wrap: wrap;
  position: absolute;
  top: 100%;
  left: 0;
  background-color: #fff;
  width: 100%;
  display: none;

  border: 1px solid #f2f2f2;
  box-shadow: 0 5px 10px 0px rgba(0,0,0,0.2);
  -moz-box-shadow: 0 5px 10px 0px rgba(0,0,0,0.2);
  -webkit-box-shadow: 0 5px 10px 0px rgba(0,0,0,0.2);
  -o-box-shadow: 0 5px 10px 0px rgba(0,0,0,0.2);
  -ms-box-shadow: 0 5px 10px 0px rgba(0,0,0,0.2);
}

.main-menu > li:hover > .sub-mega-menu {
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-box;
  display: -ms-flexbox;
  display: flex;
}

.sub-mega-menu .nav {
  width: 240px;
  border-right: 1px solid #f2f2f2;
  padding: 30px 0;
}

.sub-mega-menu .tab-content {
  width: 100%;
}

/*---------------------------------------------*/
.sub-mega-menu .nav-pills .nav-link {
  font-family: Roboto-Medium;
  font-size: 14px;
  line-height: 1.8;
  color: #222;
  border-radius: 0;
  padding: 8px 20px 8px 33px;
}

.sub-mega-menu .nav-pills .nav-link.active,
.sub-mega-menu .show>.nav-pills .nav-link {
  color: #fff;
  background-color: #17b978;
}

/*---------------------------------------------*/
.sub-mega-menu .tab-content .tab-pane {
  padding: 25px 50px 35px 30px;
}

.main-menu > li > a > i {
    padding-left: 10px;
    font-size: 12px;
}
