/*!
 * SlickNav Responsive Mobile Menu v1.0.10
 * (c) 2016 Josh Cope
 * licensed under MIT
 */
.slicknav_btn {
  position: relative;
  display: block;
  vertical-align: middle;
  float: right;
  padding: 0.438em 0.625em 0.438em 0.625em;
  line-height: 1.125em;
  cursor: pointer; }
  .slicknav_btn .slicknav_icon-bar + .slicknav_icon-bar {
    margin-top: 0.188em; }

.slicknav_menu {
  font-size: 16px;
  box-sizing: border-box;
  background: #fff;
  padding: 5px;
  box-shadow: 0 2px 5px rgba(0,0,0,0.1);
  transition: all 0.3s ease;
  zoom: 1;
}
  .slicknav_menu * {
    box-sizing: border-box; }
  .slicknav_menu .slicknav_menutxt {
    display: block;
    line-height: 1.188em;
    float: left; }
  .slicknav_menu .slicknav_icon {
    float: left;
    width: 1.125em;
    height: 0.875em;
    margin: 0.188em 0 0 0.438em; }
    .slicknav_menu .slicknav_icon:before {
      background: transparent;
      width: 1.125em;
      height: 0.875em;
      display: block;
      content: "";
      position: absolute; }
  .slicknav_menu .slicknav_no-text {
    margin: 0; }
  .slicknav_menu .slicknav_icon-bar {
    display: block;
    width: 1.125em;
    height: 0.125em;}
  .slicknav_menu:before {
    content: " ";
    display: table; }
  .slicknav_menu:after {
    content: " ";
    display: table;
    clear: both; }

.slicknav_nav {
  clear: both; }
  .slicknav_nav ul {
    display: block; }
  .slicknav_nav li {
    display: block; }
  .slicknav_nav .slicknav_arrow {
    font-size: 0.8em;
    margin: 0 0 0 0.4em; }
  .slicknav_nav .slicknav_item {
    cursor: pointer; }
    .slicknav_nav .slicknav_item a {
      display: inline; }
  .slicknav_nav .slicknav_row {
    display: block; }
  .slicknav_nav a {
    display: block; }
  .slicknav_nav .slicknav_parent-link a {
    display: inline; }

.slicknav_brand {
  float: left; }

.slicknav_menu {
  font-size: 16px;
  box-sizing: border-box;
  background: #fff;
  padding: 5px;
  box-shadow: 0 2px 5px rgba(0,0,0,0.1);
  transition: all 0.3s ease;
}
  .slicknav_menu * {
    box-sizing: border-box; }
  .slicknav_menu .slicknav_menutxt {
    color: #fff;
    font-weight: bold; }
  .slicknav_menu .slicknav_icon-bar {
      background-color: #dca73a !important;
    }

    .slicknav_btn {
      margin: 5px 5px 6px;
      text-decoration: none;
      background-color: transparent;
      border: none;
      padding: 10px;
    }

.slicknav_nav {
  color: #333;
  margin: 0;
  padding: 0;
  font-size: 0.875em;
  list-style: none;
  overflow: hidden;
  max-height: 0;
  transition: max-height 0.3s ease-out;
}

.slicknav_nav.active {
  max-height: 1000px;
}

.slicknav_nav a {
  padding: 12px 15px;
  margin: 0;
  text-decoration: none;
  color: #333;
  display: block;
  border-bottom: 1px solid rgba(0,0,0,0.05);
  transition: all 0.2s ease;
}

.slicknav_nav a:hover {
  background: #f8f9fa;
  color: #2E7D32;
  padding-left: 20px;
}

.slicknav_nav .slicknav_item a {
  padding: 12px 15px;
  margin: 0;
}

.slicknav_nav .slicknav_parent-link a {
  padding: 12px 15px;
  margin: 0;
}

/* Mobile menu submenu styles */
.slicknav_nav ul {
  list-style: none;
  padding: 0;
  margin: 0;
  background: #f8f9fa;
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.3s ease-out;
}

.slicknav_nav ul.active {
  max-height: 1000px;
}

.slicknav_nav ul a {
  padding-left: 30px;
  font-size: 0.9em;
}

.slicknav_nav ul ul a {
  padding-left: 45px;
}

/* Mobile menu button styles */
.slicknav_btn {
  margin: 5px 5px 6px;
  text-decoration: none;
  background-color: transparent;
  border: none;
  padding: 10px;
  cursor: pointer;
}

.slicknav_icon-bar {
  display: block;
  width: 25px;
  height: 3px;
  margin: 5px 0;
  background-color: #2E7D32 !important;
  border-radius: 1px;
  transition: all 0.3s ease;
}

.slicknav_btn.active .slicknav_icon-bar:nth-child(1) {
  transform: rotate(45deg) translate(5px, 5px);
}

.slicknav_btn.active .slicknav_icon-bar:nth-child(2) {
  opacity: 0;
}

.slicknav_btn.active .slicknav_icon-bar:nth-child(3) {
  transform: rotate(-45deg) translate(5px, -5px);
}

/* Mobile menu positioning */
.mobile_menu {
  position: absolute;
  right: 0;
  width: 100%;
  z-index: 999;
  background: #fff;
}

/* Ensure mobile menu is visible on small screens */
@media (max-width: 991px) {
  .mobile_menu {
    display: block !important;
  }
  
  .main-menu {
    display: none !important;
  }
}