.site-header{
  position: relative;
  z-index: 1000;
}

.header-bar{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:1rem;
  position:relative;
}

.brand-link{
  display:inline-flex;
  align-items:center;
  width: auto;
  height: auto;
}

.brand-logo{
  display:block;
  height:auto;
}

.brand-logo-desktop{
  width:20em;
}

.brand-logo-mobile{
  width:11em;
  display:none;
}

.nav-pill{
  display:flex;
  align-items:center;
  gap:.25rem;
  background: var(--pill);
  border: 1px solid var(--pill-border);
  border-radius: 999px;
  padding: .35rem;
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  box-shadow: 0 8px 30px rgba(0,0,0,.08);
}

.nav-pill .nav-link{
  color: rgba(15,15,18,.85);
  border-radius: 999px;
  padding: .55rem 1rem;
  font-weight: 600;
  text-decoration:none;
  transition:
    background-color .25s ease,
    color .25s ease,
    transform .25s ease;
}

.nav-pill .nav-link:hover{
  background: var(--fade-brown);
  color: rgba(15,15,18,.95);
  transform: translateY(-1px);
}

.menu-toggle{
  width:52px;
  height:52px;
  border-radius:14px;
  border:1px solid var(--pill-border);
  background: var(--pill);
  display:none;
  align-items:center;
  justify-content:center;
  flex-direction:column;
  gap:5px;
  padding:0;
  cursor:pointer;
  transition:
    background .25s ease,
    border-color .25s ease,
    transform .25s ease;
  box-shadow: 0 8px 30px rgba(0,0,0,.08);
}

.menu-toggle:hover{
  background: var(--fade-brown);
  transform: translateY(-1px);
}

.menu-toggle-line{
  width:20px;
  height:2px;
  border-radius:999px;
  background: rgba(15,15,18,.9);
  transition: transform .25s ease, opacity .25s ease;
}

.menu-toggle.active .menu-toggle-line:nth-child(1){
  transform: translateY(7px) rotate(45deg);
}

.menu-toggle.active .menu-toggle-line:nth-child(2){
  opacity:0;
}

.menu-toggle.active .menu-toggle-line:nth-child(3){
  transform: translateY(-7px) rotate(-45deg);
}

.mobile-menu{
  position:relative;
  display:none;
}

.mobile-menu-panel{
  position:absolute;
  top:1rem;
  right:0;
  width:min(280px, 100%);
  background: rgba(255,255,255,.88);
  border:1px solid rgba(120, 95, 70, .16);
  border-radius:22px;
  padding:.7rem;
  backdrop-filter: blur(18px);
  -webkit-backdrop-filter: blur(18px);
  box-shadow:
    0 18px 55px rgba(0,0,0,.14),
    0 2px 12px rgba(0,0,0,.05);
  opacity:0;
  visibility:hidden;
  transform: translateY(-10px) scale(.98);
  transition:
    opacity .28s ease,
    visibility .28s ease,
    transform .28s ease;
}

.mobile-menu.open .mobile-menu-panel{
  opacity:1;
  visibility:visible;
  transform: translateY(0) scale(1);
}

.mobile-link{
  display:block;
  width:100%;
  text-decoration:none;
  color: rgba(15,15,18,.9);
  font-weight:600;
  letter-spacing:.01em;
  padding:.9rem 1rem;
  border-radius:14px;
  transition:
    background-color .25s ease,
    color .25s ease,
    transform .25s ease;
}

.mobile-link:hover{
  background: var(--fade-brown);
  color: rgba(15,15,18,.95);
  transform: translateX(2px);
}

.mobile-link + .mobile-link{
  margin-top:.25rem;
}

@media (max-width: 991.98px){

  .site-header{
    padding-top: 1rem !important;
    padding-bottom: 1rem !important;
  }

  .brand-logo-desktop{
    display:none;
  }

  .brand-logo-mobile{
    display:block;
  }

  .menu-toggle{
    display:flex;
    flex-shrink:0;
  }

  .mobile-menu{
    display:block;
  }
}

@media (max-width: 575.98px){

  .brand-logo-mobile{
    width:9.5em;
  }

  .menu-toggle{
    width:48px;
    height:48px;
    border-radius:12px;
  }

  .mobile-menu-panel{
    width:min(240px, 100%);
  }
}