/* The one navbar every public page uses. Markup: src/lib/site-header.ts. */
.site-nav {
  position: sticky; top: 0; z-index: 10;
  background: rgb(246 249 244 / .85);
  backdrop-filter: blur(14px); -webkit-backdrop-filter: blur(14px);
  font-family: "Public Sans", -apple-system, BlinkMacSystemFont, "Helvetica Neue", Arial, sans-serif;
  letter-spacing: normal;
}
.site-nav-inner { width: min(100% - 32px, 72rem); margin-inline: auto; display: flex; align-items: center; gap: 28px; height: 64px; }
.site-nav-brand { display: inline-flex; margin-right: auto; }
.site-nav-brand img { display: block; width: auto; height: 25px; }
.site-nav-link { color: #5a6457; font-size: 15px; font-weight: 520; text-decoration: none; }
.site-nav-link:hover { color: #0c110b; }
.site-nav-cta {
  display: inline-flex; align-items: center; justify-content: center; gap: 9px;
  min-height: 38px; padding: 0 16px; border-radius: 999px; white-space: nowrap;
  background: #0f7a3d; color: #fff; font-size: 14px; font-weight: 620; text-decoration: none;
  transition: transform 160ms cubic-bezier(0.23, 1, 0.32, 1), background-color 160ms cubic-bezier(0.23, 1, 0.32, 1);
}
.site-nav-cta:hover { background: #0b6532; }
.site-nav-cta:active { transform: scale(0.97); }
.site-nav-cta svg { width: 19px; height: 19px; }
.site-nav-cta-narrow { display: none; }
.site-nav a:focus-visible { outline: 3px solid #0f7a3d; outline-offset: 3px; border-radius: 4px; }
@media (max-width: 860px) {
  .site-nav-link, .site-nav-cta-wide { display: none; }
  .site-nav-cta-narrow { display: inline; }
}
/* Once the page scrolls, the bar gets an edge and a more solid fill, so text
   passing under it reads as scrolling under a header, not as overlapping it. */
@supports (animation-timeline: scroll()) {
  .site-nav { animation: site-nav-scrolled linear both; animation-timeline: scroll(root); animation-range: 0 48px; }
  @keyframes site-nav-scrolled { to { background-color: rgb(246 249 244 / .96); box-shadow: 0 1px 0 rgb(12 17 11 / .08); } }
}
@supports not (animation-timeline: scroll()) { .site-nav { box-shadow: 0 1px 0 rgb(12 17 11 / .08); } }
@media (prefers-reduced-motion: reduce) { .site-nav-cta { transition: none; } }
@media print { .site-nav { display: none !important; } }
@media (prefers-reduced-transparency: reduce) { .site-nav { background: #f6f9f4; backdrop-filter: none; -webkit-backdrop-filter: none; } }
