/* spacing between nav items on lg+ */
@media (min-width: 992px){
  .navbar .navbar-nav { gap: 2.25rem; }
}

/* text sizing for nav links (exclude icon anchors with .p-0) */
.navbar .nav-link:not(.p-0){
  font-size: 1.5rem;
  font-weight: 800; /* 700–900 are valid; 1000 gets clamped */
  transition: color .15s ease;
}

/* dark navbar colors */
.navbar {
  background-color: #070d4f;
}
.navbar .navbar-brand { color: #fff; }
.navbar .nav-link { 
  position: relative; 
  color: #fff; 
}

/* underline base (single definition) */
.navbar .nav-link::after{
  content: "";
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  top: -1px;
  width: 64px;
  border-radius: 2px;
  height: 0;                 /* hidden by default */
  background: transparent;
  transition: height .15s ease, background .15s ease;
}

/* active & hover states (single source of truth) */
/*.navbar .nav-link.is-active::after{
  height: 4px;
  background: #fff;
}
.navbar .nav-link:hover::after{
  height: 3px;
  background: rgba(255,255,255,.35);
}*/


/* Hover */
.navbar .nav-link:not(.p-0):hover{
  color: #78daa0;
}

/* ACTIVE TAB — change color instead of underline */
.navbar .nav-link.is-active{
  color: #78daa0;
}

/* Mobile hamburger: white pill with black bars */
.navbar .navbar-toggler{
  background-color:#fff;          /* white button */
  border-color:#fff;
  border-radius:10px;             /* optional: round corners */
  padding:.35rem .5rem;           /* a bit larger tap target */
}
.navbar .navbar-toggler:focus{
  box-shadow:0 0 0 .2rem rgba(255,255,255,.3);
}

/* Draw black lines for the icon */
.navbar .navbar-toggler-icon{
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba(0,0,0,0.9)' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
}
