/* =========================
   NAVBAR HEIGHT & FLEX LAYOUT
   ========================= */
#nav-main.navbar { 
  min-height: 64px; /* adjust as needed */
}
#nav-main > .container {
  display: flex;               /* ensure flex */
  align-items: stretch;        /* children match navbar height */
}
#offcanvas-navbar .offcanvas-body {
  display: flex;
  align-items: stretch;
  padding: 0;
}

/* Superfish UL used in navbar: full height + centered items */
ul.sf-menu-isat {
  display: flex;
  align-items: center;
  height: 64px;                /* match navbar height */
  margin-bottom: 0;            /* neutralize demo skin margin */
}

/* Top-level LIs in navbar: flex (not floated) */
ul.sf-menu-isat > li {
  float: none !important;      /* override Superfish float */
  display: flex;
  align-items: center;
  height: 100%;
}

/* Top-level anchors: fill li height for larger hit area */
ul.sf-menu-isat > li > a {
  display: flex;
  align-items: center;
  height: 100%;
}

/* Brand alignment */
#nav-main .navbar-brand {
  display: flex;
  align-items: center;
}
 

 
 
/* =========================
   SUPERFISH ESSENTIALS
   (kept generic for submenus)
   ========================= */
.sf-menu,
.sf-menu * {
  margin: 0;
  padding: 0;
  list-style: none;
}

.sf-menu li { position: relative; }

.sf-menu ul {
  position: absolute;
  display: none;
  top: 100%;
  left: 0;
  z-index: 99;
  box-shadow: 2px 2px 6px rgba(0,0,0,.2);
  min-width: 12em;            /* allow long items to set width */
}

.sf-menu li:hover > ul,
.sf-menu li.sfHover > ul {
  display: block;
}

/* Nested submenu positioning */
.sf-menu ul ul {
  top: 0;
  left: 100%;
}

/* NOTE: Superfish demo sets top-level float.
   We intentionally DO NOT include `.sf-menu > li { float:left; }`
   because `ul.sf-menu-isat > li` is flex. If you use Superfish elsewhere
   without the flex navbar, re-add that rule scoped to those menus. */

/* Links */
.sf-menu a {
  display: block;
  position: relative;
  padding: .75em 1em;
  text-decoration: none;
  zoom: 1; /* IE7 */
  color: white;
}
.sf-menu a:hover,.sf-menu a:hover  {
  color:rgb(46,49,146) !important;
}
/* Colors / transitions */
.sf-menu li,
.sf-menu ul li,
.sf-menu ul ul li {
  background: rgb(46,49,146);
  color: white;
  white-space: nowrap;         /* no Supersubs needed */
  -webkit-transition: background .2s;
  transition: background .2s;
}

.sf-menu li:hover,
.sf-menu li.sfHover {
  background: #CFDEFF;
 
  -webkit-transition: none;
  transition: none;
}

/* =========================
   SUPERFISH ARROWS
   ========================= */
.sf-arrows .sf-with-ul {
  padding-right: 2.5em;
  *padding-right: 1em; /* IE7 fallback */
}
.sf-arrows .sf-with-ul:after {
  content: '';
  position: absolute;
  top: 50%;
  right: 1em;
  margin-top: -3px;
  height: 0;
  width: 0;
  border: 5px solid transparent;
  border-top-color: rgba(255,255,255,.5); /* fallback handled by next rules */
}
.sf-arrows > li > .sf-with-ul:focus:after,
.sf-arrows > li:hover > .sf-with-ul:after,
.sf-arrows > .sfHover > .sf-with-ul:after {
  /*border-top-color: white; */
    color:rgb(46,49,146);
}
/* Right-facing arrows for nested menus */
.sf-arrows ul .sf-with-ul:after {
  margin-top: -5px;
  margin-right: -3px;
  border-color: transparent;
  border-left-color: rgba(255,255,255,.5);
}
.sf-arrows ul li > .sf-with-ul:focus:after,
.sf-arrows ul li:hover > .sf-with-ul:after,
.sf-arrows ul .sfHover > .sf-with-ul:after {
  border-left-color: white;
}
