/* === SAVOV STIL — Mobile Menu & Submenu Final Overrides v3 === */
/* Higher specificity than Nicepage's .u-menu.u-offcanvas .u-sidenav .u-nav-link */

/* Sidenav (off-canvas container) */
html body .u-menu.u-offcanvas .u-sidenav,
html body .u-nav-container-collapse .u-sidenav {
  background: #ffffff !important;
  padding-top: 78px !important;
  width: 290px !important;
  box-shadow: 6px 0 28px rgba(0,0,0,0.15) !important;
}

/* Top-level mobile menu items */
html body .u-menu.u-offcanvas .u-sidenav .u-popupmenu-items {
  padding: 0 !important;
  margin: 0 !important;
  list-style: none !important;
  background: #fff !important;
}
html body .u-menu.u-offcanvas .u-sidenav .u-popupmenu-items > .u-nav-item,
html body .u-menu.u-offcanvas .u-sidenav .u-popupmenu-items > li {
  margin: 0 !important;
  padding: 0 !important;
  background: #fff !important;
}
html body .u-menu.u-offcanvas .u-sidenav .u-popupmenu-items > .u-nav-item > a.u-nav-link,
html body .u-menu.u-offcanvas .u-sidenav .u-popupmenu-items > li > a.u-nav-link {
  color: #2c3e50 !important;
  background: #fff !important;
  font-weight: 700 !important;
  font-size: 1rem !important;
  padding: 18px 26px !important;
  display: block !important;
  border-bottom: 1px solid #e8ecf0 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.5px !important;
  text-align: left !important;
  text-decoration: none !important;
  line-height: 1.3 !important;
}

/* SUBMENU CONTAINER */
html body .u-menu.u-offcanvas .u-sidenav .u-nav-popup,
html body .u-nav-container-collapse .u-sidenav .u-nav-popup {
  background: #f1f6fc !important;
  background-color: #f1f6fc !important;
  border-radius: 0 !important;
  box-shadow: inset 4px 0 0 #478ac9 !important;
  padding: 0 !important;
  padding-left: 0 !important;
  margin: 0 !important;
  border: none !important;
}

/* Submenu inner ul/li */
html body .u-menu.u-offcanvas .u-sidenav .u-nav-popup .u-nav,
html body .u-menu.u-offcanvas .u-sidenav .u-nav-popup ul {
  padding: 0 !important;
  margin: 0 !important;
  list-style: none !important;
  background: transparent !important;
  box-shadow: none !important;
}
html body .u-menu.u-offcanvas .u-sidenav .u-nav-popup li,
html body .u-menu.u-offcanvas .u-sidenav .u-nav-popup .u-nav-item {
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
}

/* SUBMENU LINKS — high specificity beats Nicepage's offcanvas padding override */
html body .u-menu.u-offcanvas .u-sidenav .u-nav-popup a.u-nav-link,
html body .u-menu.u-offcanvas .u-sidenav .u-nav-popup li > a,
html body .u-menu.u-offcanvas .u-sidenav .u-nav-popup .u-nav-item > a {
  color: #1a3a5c !important;
  background: transparent !important;
  font-family: 'Open Sans', sans-serif !important;
  font-size: 0.95rem !important;
  font-weight: 700 !important;
  padding: 14px 22px 14px 42px !important;
  padding-left: 42px !important;
  padding-right: 22px !important;
  border-bottom: 1px solid #d6e4f1 !important;
  text-transform: none !important;
  letter-spacing: 0.2px !important;
  display: block !important;
  text-align: left !important;
  text-decoration: none !important;
  line-height: 1.4 !important;
  position: relative !important;
  white-space: normal !important;
  word-wrap: break-word !important;
  opacity: 1 !important;
}
html body .u-menu.u-offcanvas .u-sidenav .u-nav-popup li:last-child > a,
html body .u-menu.u-offcanvas .u-sidenav .u-nav-popup .u-nav-item:last-child > a {
  border-bottom: none !important;
}

/* Bullet dot before each submenu link */
html body .u-menu.u-offcanvas .u-sidenav .u-nav-popup a::before {
  content: "" !important;
  position: absolute !important;
  left: 24px !important;
  top: 50% !important;
  margin-top: -3px !important;
  width: 6px !important;
  height: 6px !important;
  background: #478ac9 !important;
  border-radius: 50% !important;
  display: block !important;
}

/* Hover/focus states */
html body .u-menu.u-offcanvas .u-sidenav .u-nav-popup a:hover,
html body .u-menu.u-offcanvas .u-sidenav .u-nav-popup a:focus,
html body .u-menu.u-offcanvas .u-sidenav .u-nav-popup a:active {
  background: #dbe9f7 !important;
  color: #0a2540 !important;
  outline: none !important;
}
html body .u-menu.u-offcanvas .u-sidenav .u-nav-popup a:hover::before {
  background: #2c5f8a !important;
  width: 8px !important;
  height: 8px !important;
  margin-top: -4px !important;
}

/* Make <br> inside submenu link render as line break */
html body .u-menu.u-offcanvas .u-sidenav .u-nav-popup a br {
  display: block !important;
  visibility: visible !important;
  height: 0 !important;
  content: " " !important;
  margin-top: 2px !important;
}
