
/* Portable HTML behavior; the original website stylesheet remains unchanged. */
.reveal { opacity: 1 !important; transform: none !important; }
html { scroll-padding-top: 110px; }
body.is-scrolled > #root header, body.is-menu-open > #root header {
  background: rgba(251,251,248,.97) !important;
  border-bottom-color: rgba(0,0,0,.1) !important;
  backdrop-filter: blur(20px);
}
body.is-scrolled > #root header img, body.is-menu-open > #root header img { filter: none !important; }
body.is-scrolled > #root header nav a, body.is-menu-open > #root header nav a { color: rgba(17,19,17,.62) !important; }
body.is-scrolled > #root header nav a[data-active="true"], body.is-scrolled > #root header nav a:hover { color: #298d3e !important; }
body.is-scrolled > #root header button, body.is-menu-open > #root header button { color: #111 !important; border-color: rgba(0,0,0,.15) !important; }
.html-mobile-menu { position: fixed; inset: 78px 0 0; z-index: 45; background: #111311; color: white; overflow-y: auto; padding: 24px; }
.html-mobile-menu[hidden] { display: none; }
.html-mobile-menu nav { max-width: 600px; margin: auto; }
.html-mobile-menu .menu-item { display: block; padding: 18px 0; border-top: 1px solid rgba(255,255,255,.12); font-size: 24px; font-weight: 600; }
.html-mobile-menu .menu-child { display: block; padding: 6px 0 10px 24px; color: rgba(255,255,255,.6); font-size: 14px; }
header .group:focus-within > div { visibility: visible; opacity: 1; transform: none; }
@media (min-width: 1024px) { .html-mobile-menu { top: 92px; } }
@media (min-width: 1280px) { .html-mobile-menu { display: none !important; } }
