/* Primary header nav + dropdown submenus (te-nav-* classes from inc/menus.php) */

.te-nav-list{
  list-style:none;
  margin:0;
  padding:0;
}

/* Top-level links */
.te-nav-link{
  text-decoration:none;
  transition:color .15s ease,background-color .15s ease;
}
.te-nav-link--top{
  display:block;
  padding:.5rem 0;
  font-size:.875rem;
  font-weight:500;
  color:#111827;
}
@media (min-width:1024px){
  .te-nav-link--top{
    padding:.5rem .65rem;
    border-radius:.5rem;
  }
  .te-nav-link--top:hover,
  .te-nav-link--top:focus-visible{
    color:#00AA6C;
    outline:none;
  }
}

/* Submenu panel (desktop flyout) */
#primary-nav .te-nav-sub{
  list-style:none;
  margin:0;
  padding:.35rem 0;
  min-width:13rem;
  background:#fff;
  border-radius:.75rem;
  box-shadow:0 10px 40px rgba(0,0,0,.12),0 0 0 1px rgba(0,0,0,.04);
}

@media (min-width:1024px){
  #primary-nav .te-nav-item--has-children{
    position:relative;
  }
  #primary-nav .te-nav-item--has-children > .te-nav-sub{
    position:absolute;
    top:100%;
    left:0;
    margin-top:.25rem;
    opacity:0;
    visibility:hidden;
    transform:translateY(6px);
    transition:opacity .2s ease,visibility .2s ease,transform .2s ease;
    z-index:60;
  }
  #primary-nav .te-nav-item--has-children:hover > .te-nav-sub,
  #primary-nav .te-nav-item--has-children:focus-within > .te-nav-sub{
    opacity:1;
    visibility:visible;
    transform:translateY(0);
  }
  /* Nested flyout to the right */
  #primary-nav .te-nav-sub .te-nav-item--has-children > .te-nav-sub{
    top:0;
    left:100%;
    margin-top:0;
    margin-left:.25rem;
  }
  #primary-nav .te-nav-sub .te-nav-link--sub{
    padding:.5rem 1rem;
    font-size:.8125rem;
    font-weight:500;
    color:#374151;
    white-space:nowrap;
  }
  #primary-nav .te-nav-sub .te-nav-link--sub:hover,
  #primary-nav .te-nav-sub .te-nav-link--sub:focus-visible{
    color:#00AA6C;
    background:#f9fafb;
    outline:none;
  }
  /* Deeper level: small arrow toward nested panel */
  #primary-nav .te-nav-sub .te-nav-item--has-children > .te-nav-link--sub{
    position:relative;
    padding-right:1.15rem;
  }
  #primary-nav .te-nav-sub .te-nav-item--has-children > .te-nav-link--sub::after{
    content:"";
    position:absolute;
    right:.4rem;
    top:50%;
    margin-top:-4px;
    border:4px solid transparent;
    border-left-color:currentColor;
    opacity:.4;
  }
  /* Chevron on top-level parents (desktop) */
  #primary-nav .te-nav-item--has-children > .te-nav-link--top{
    position:relative;
    padding-right:1.35rem;
  }
  #primary-nav .te-nav-item--has-children > .te-nav-link--top::after{
    content:"";
    position:absolute;
    right:.4rem;
    top:50%;
    width:0;
    height:0;
    margin-top:-2px;
    border-left:4px solid transparent;
    border-right:4px solid transparent;
    border-top:5px solid currentColor;
    opacity:.55;
  }
}

/* Mobile drawer: stacked submenus */
#mobile-nav .te-nav-link--top{
  padding:.45rem 0;
}
#mobile-nav .te-nav-sub{
  margin:.25rem 0 .5rem;
  padding-left:.75rem;
  border-left:2px solid #e5e7eb;
}
#mobile-nav .te-nav-sub--nested{
  margin-left:.25rem;
}
#mobile-nav .te-nav-link--sub{
  display:block;
  padding:.35rem 0 .35rem .25rem;
  font-size:.8125rem;
  font-weight:500;
  color:#4b5563;
}
#mobile-nav .te-nav-link--sub:hover,
#mobile-nav .te-nav-link--sub:focus-visible{
  color:#00AA6C;
  outline:none;
}
