/* Shared navigation foundation */
*{
  box-sizing:border-box;
  margin:0;
  padding:0;
}

.custom-navbar{
  background: var(--nav-bg, rgba(12,13,16,.82)) !important;
  border-bottom: 1px solid var(--nav-border, rgba(255,255,255,.06));
  backdrop-filter: blur(14px);
  box-shadow: 0 12px 40px rgba(0,0,0,.18);
  padding-top:.65rem;
  padding-bottom:.65rem;
  --bs-navbar-padding-y: 0;
}

.custom-navbar .container-fluid{
  max-width: var(--nav-max-width, 1100px);
  padding-left:1rem;
  padding-right:1rem;
}

.custom-navbar .navbar-brand{
  font-family:"Playfair Display", serif;
  letter-spacing:.06em;
  font-weight:600;
  color: var(--nav-brand-color, #fef6ec);
  transition: color .2s ease;
}

.custom-navbar .navbar-brand:hover,
.custom-navbar .navbar-brand:focus-visible{
  color: var(--nav-brand-hover-color, var(--nav-brand-color, #fef6ec));
}

.custom-navbar .navbar-toggler{
  border-color: rgba(255,255,255,.35);
  border-radius:.8rem;
  padding:.4rem .65rem;
  background-color: rgba(255,255,255,.08);
}

.custom-navbar .navbar-toggler:focus{
  box-shadow:0 0 0 .15rem rgba(255,255,255,.25);
}

.custom-navbar .navbar-toggler-icon{
  filter: drop-shadow(0 2px 4px rgba(0,0,0,.35));
}

.custom-navbar .nav-links{
  gap:1.5rem;
  list-style:none;
}

.custom-navbar .nav-link{
  color: var(--nav-link-color, #f0e8dd) !important;
  font-weight:600;
  font-size:.95rem;
  letter-spacing:.02em;
  transition: color .18s ease;
  padding:.4rem 0;
}

.custom-navbar .nav-link:hover,
.custom-navbar .nav-link:focus-visible{
  color: var(--nav-link-hover-color, var(--accent, #d49a56)) !important;
}

.custom-navbar .nav-link.active{
  color: var(--nav-link-active-color, var(--accent, #d49a56)) !important;
}

.custom-navbar .nav-link.active::after{
  content:'';
  display:block;
  height:2px;
  width:100%;
  background: currentColor;
  margin-top:.25rem;
  border-radius:999px;
}

@media (max-width: 991.98px){
  .custom-navbar .nav-links{
    width:100%;
    gap:1rem;
    margin-top:1rem;
  }
  .custom-navbar .nav-link{
    padding:.5rem 0;
  }
  .custom-navbar .nav-link.active::after{
    display:none;
  }
}
