.lb-site-header{position:sticky!important;top:0!important;z-index:90!important;width:100%!important;height:104px!important;min-height:104px!important;padding:0 3.4vw!important;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:2rem!important;background:rgba(255,255,255,.96)!important;color:#3a3a3a!important;border:0!important;box-shadow:0 2px 12px #0000000b!important;font-family:Cousine,monospace!important}.lb-brand{display:flex!important;align-items:center!important;text-decoration:none!important}.lb-wordmark{display:block!important;width:clamp(225px,22vw,410px)!important;max-width:none!important;height:auto!important;filter:none!important}.lb-mark{display:none!important;width:52px!important;height:52px!important;object-fit:contain!important;filter:none!important}.lb-site-header.compact .lb-wordmark{display:none!important}.lb-site-header.compact .lb-mark{display:block!important}.lb-site-header nav{position:static!important;inset:auto!important;width:auto!important;height:auto!important;padding:0!important;margin:0!important;display:flex!important;flex-direction:row!important;align-items:center!important;gap:clamp(2rem,4vw,4.4rem)!important;background:transparent!important;border:0!important;opacity:1!important;visibility:visible!important;pointer-events:auto!important;transform:none!important}.lb-site-header nav a{display:block!important;padding:0!important;color:#686868!important;background:none!important;border:0!important;text-decoration:none!important;text-transform:none!important;font:400 clamp(1rem,1.4vw,1.65rem)/1.2 Cousine,monospace!important;letter-spacing:0!important}.lb-site-header nav a.active{color:#279ff2!important}.lb-menu-toggle{display:none!important;border:0!important;background:none!important;padding:.5rem!important}.lb-menu-toggle span:not(.sr-only){display:block!important;width:28px!important;height:1px!important;background:#333!important;margin:7px 0!important}.lb-site-header .sr-only{position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important}@media(max-width:900px){.lb-site-header{height:78px!important;min-height:78px!important;padding:0 5vw!important}.lb-wordmark{width:220px!important}.lb-menu-toggle{display:block!important}.lb-site-header nav{display:none!important;position:absolute!important;top:78px!important;left:0!important;right:0!important;width:100%!important;padding:1.5rem 5vw!important;background:#fff!important;flex-direction:column!important;align-items:flex-start!important;gap:1.25rem!important;border-top:1px solid #ddd!important}.lb-site-header nav.open{display:flex!important}}@media(max-width:600px){.lb-wordmark{width:175px!important}}

/* Win over legacy per-page mobile navigation rules. */
@media (max-width: 900px) {
  body > header.lb-site-header #lb-site-nav {
    display: none !important;
    position: absolute !important;
    inset: 78px 0 auto !important;
    width: 100% !important;
    height: auto !important;
    padding: 1.5rem 5vw !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 1.25rem !important;
    background: #fff !important;
    border: 0 !important;
    border-top: 1px solid #ddd !important;
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
    transform: none !important;
  }

  body > header.lb-site-header #lb-site-nav.open {
    display: flex !important;
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
  }
}

/* Desktop proportions from the original Little Bean presentation. */
@media (min-width: 901px) {
  .lb-site-header {
    height: 80px !important;
    min-height: 80px !important;
    padding: 0 3% !important;
    box-shadow: none !important;
  }

  .lb-wordmark {
    width: 190px !important;
  }

  .lb-site-header nav {
    gap: 30px !important;
  }

  .lb-site-header nav a {
    font-size: 14px !important;
  }
}

/* Restore the compact-on-scroll behavior across project and archive pages. */
.lb-site-header {
  transition: height 220ms ease, min-height 220ms ease, padding 220ms ease,
    background-color 220ms ease, box-shadow 220ms ease !important;
}

.lb-site-header .lb-wordmark,
.lb-site-header .lb-mark,
.lb-site-header nav,
.lb-site-header nav a,
.lb-site-header .lb-menu-toggle span:not(.sr-only) {
  transition: width 220ms ease, font-size 220ms ease, gap 220ms ease,
    transform 220ms ease, opacity 160ms ease !important;
}

.lb-site-header.compact {
  height: 60px !important;
  min-height: 60px !important;
  padding-inline: 2.7vw !important;
  background: rgba(255,255,255,.985) !important;
  box-shadow: 0 3px 16px rgba(0,0,0,.07) !important;
}

.lb-site-header.compact .lb-mark {
  width: 42px !important;
  height: 42px !important;
}

.lb-site-header.compact nav {
  gap: 24px !important;
}

.lb-site-header.compact nav a {
  font-size: 13px !important;
}

@media (max-width: 900px) {
  .lb-site-header.compact {
    height: 62px !important;
    min-height: 62px !important;
    padding-inline: 4vw !important;
  }

  .lb-site-header.compact .lb-mark {
    width: 40px !important;
    height: 40px !important;
  }

  body > header.lb-site-header.compact #lb-site-nav {
    inset-block-start: 62px !important;
  }

  .lb-site-header.compact .lb-menu-toggle span:not(.sr-only) {
    width: 24px !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  .lb-site-header,
  .lb-site-header * {
    transition-duration: 0.01ms !important;
  }
}

/* Desktop must always win over legacy archive dropdown rules. */
@media (min-width: 901px) {
  body > header.lb-site-header .lb-menu-toggle {
    display: none !important;
  }

  body > header.lb-site-header #lb-site-nav {
    display: flex !important;
    position: static !important;
    inset: auto !important;
    width: auto !important;
    height: auto !important;
    padding: 0 !important;
    margin: 0 !important;
    flex-direction: row !important;
    align-items: center !important;
    gap: 30px !important;
    background: transparent !important;
    border: 0 !important;
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
    transform: none !important;
  }
}
