/* Shared site navigation, scoped to the isolated Statamic 6 theme. */
.sb-menu-toggle[hidden], .sb-menu:not([open]) { display: none !important; }
.site-navigation .sb-menu-toggle { display: inline-flex; align-items: center; justify-content: center; gap: 10px; min-height: 46px; padding: 10px 13px; border: 1px solid var(--navbar-alpha3); border-radius: 6px; color: var(--font-color); font-size: .85rem; font-weight: 600; }
.sb-menu-icon { display: grid; gap: 5px; width: 20px; }
.sb-menu-icon span { display: block; height: 2px; background: currentColor; border-radius: 2px; }
.sb-menu-icon span:nth-child(2) { width: 14px; }
.sb-menu-toggle:hover { border-color: #00abe2; }
.sb-menu { position: fixed; inset: 0 0 0 auto; box-sizing: border-box; width: min(440px, 100%); height: 100%; height: 100dvh; max-width: 100vw; max-height: none; margin: 0; padding: 0; overflow: hidden; border: 0; border-left: 1px solid var(--navbar-alpha3); background: var(--nav-bg, #101419); color: var(--font-color, #f4f4f4); box-shadow: -20px 0 80px #0005; }
.sb-menu[open] { display: flex; flex-direction: column; animation: sb-menu-enter .2s ease-out; }
.sb-menu::backdrop { background: rgba(4, 8, 12, .68); backdrop-filter: blur(3px); }
.sb-menu-header { display: flex; flex-shrink: 0; align-items: center; justify-content: space-between; gap: 16px; padding: max(24px, env(safe-area-inset-top)) 24px 22px; border-top: 3px solid #00abe2; border-bottom: 1px solid var(--navbar-alpha3); }
.sb-menu-eyebrow { margin: 0 0 7px; color: #3cafd5; font-size: .7rem; font-weight: 700; letter-spacing: .16em; text-transform: uppercase; }
.sb-menu-header h2 { margin: 0; font-size: 1.4rem; font-weight: 700; letter-spacing: -.025em; }
.sb-menu-close { display: grid; place-items: center; flex-shrink: 0; width: 44px; height: 44px; border: 1px solid var(--navbar-alpha3); border-radius: 50%; background: transparent; color: inherit; cursor: pointer; }
.sb-menu-close:hover { border-color: #00abe2; color: #00abe2; }
.sb-menu-body { overflow-y: auto; overscroll-behavior: contain; padding: 24px 24px max(24px, env(safe-area-inset-bottom)); }
.sb-menu-search { margin: 0 0 22px; }
.sb-menu-search label { display: block; margin-bottom: 9px; font-size: .75rem; color: var(--navbar-alpha7); }
.sb-menu-search > div { display: flex; min-width: 0; border: 1px solid var(--navbar-alpha3); border-radius: 6px; overflow: hidden; }
.sb-menu-search input { width: 100%; min-width: 0; min-height: 48px; padding: 12px; border: 0; border-radius: 0; background: transparent; color: inherit; font: inherit; font-size: .85rem; }
.sb-menu-search input::placeholder { color: var(--navbar-alpha7); opacity: 1; }
.sb-menu-search button { display: grid; place-items: center; flex: 0 0 48px; border: 0; background: #00abe2; color: #07131a; cursor: pointer; }
.sb-menu-primary { display: grid; gap: 3px; margin-bottom: 24px; }
.sb-menu a { text-decoration: none; color: inherit; }
.sb-menu-primary > a { display: flex; align-items: center; justify-content: space-between; gap: 12px; min-height: 52px; padding: 12px; border-radius: 5px; font-size: 1.1rem; font-weight: 600; }
.sb-menu-primary > a > span:not(.sb-menu-badge) { color: var(--navbar-alpha7); font-size: 1rem; }
.sb-menu-badge { padding: 4px 7px; border: 1px solid var(--navbar-alpha3); border-radius: 3px; color: var(--navbar-alpha7); font-size: .6rem; font-weight: 500; text-transform: uppercase; letter-spacing: .05em; white-space: nowrap; }
.sb-menu a:hover, .sb-menu a[aria-current], .sb-menu a.is-current-section { background: rgba(0, 171, 226, .1); color: inherit; }
.sb-menu a[aria-current], .sb-menu a.is-current-section { box-shadow: inset 3px 0 #00abe2; }
.sb-menu-group { border-top: 1px solid var(--navbar-alpha3); }
.sb-menu-group summary { display: flex; align-items: center; justify-content: space-between; min-height: 56px; padding: 12px 4px; list-style: none; cursor: pointer; font-size: .9rem; font-weight: 600; }
.sb-menu-group summary::-webkit-details-marker { display: none; }
.sb-menu-group summary > span { color: #3cafd5; font-size: 1.5rem; font-weight: 400; transition: transform .15s; }
.sb-menu-group[open] summary > span { transform: rotate(45deg); }
.sb-menu-subnav { display: grid; grid-template-columns: 1fr 1fr; gap: 4px; padding-bottom: 18px; }
.sb-menu-subnav a { display: flex; align-items: center; min-height: 44px; padding: 9px 10px; border-radius: 4px; font-size: .82rem; line-height: 1.4; }
.sb-menu-secondary { display: flex; flex-wrap: wrap; gap: 2px 10px; border-top: 1px solid var(--navbar-alpha3); padding-top: 18px; }
.sb-menu-secondary a { display: flex; align-items: center; min-height: 44px; padding: 8px 4px; font-size: .8rem; color: var(--navbar-alpha7); }
.sb-menu-signoff { margin: 18px 4px 0; font-size: .72rem; line-height: 1.6; color: var(--navbar-alpha7); }
.sb-menu :focus-visible, .sb-menu-toggle:focus-visible { outline: 2px solid #00abe2; outline-offset: 3px; }
.sb-menu-search:focus-within > div { border-color: #00abe2; box-shadow: 0 0 0 1px #00abe2; }
.sb-menu-search input:focus-visible { outline-offset: -3px; }
body.sb-menu-open { overflow: hidden; }
.sb-menu-fallback { display: flex; flex-wrap: wrap; gap: 16px; padding: 16px 24px; }
@keyframes sb-menu-enter { from { transform: translateX(28px); opacity: .4; } to { transform: translateX(0); opacity: 1; } }
@media (min-width: 992px) { .site-navigation .sb-menu-toggle, .sb-menu-fallback { display: none; } }
@media (max-width: 991.98px) { .site-navigation #navbarNavDropdown { display: none !important; } }
@media (max-width: 360px) { .sb-menu-header, .sb-menu-body { padding-left: 18px; padding-right: 18px; } .sb-menu-primary > a { font-size: 1rem; } }
@media (prefers-reduced-motion: reduce) { .sb-menu[open] { animation: none; } .sb-menu-group summary > span { transition: none; } }

[data-theme="light"] .sb-menu-eyebrow, [data-theme="light"] .sb-menu-group summary > span { color: #007da6; }

/* Desktop disclosures share the drawer's palette, spacing, and current states. */
@media (min-width: 992px) {
  .site-navigation .navbar-collapse { min-width: 0; }
  .site-navigation .navbar-nav { flex-shrink: 0; }
  .site-navigation .nav-link { display: inline-flex; align-items: center; gap: 5px; min-height: 44px; border: 0; border-radius: 5px; background: transparent; color: var(--navbar-alpha7); font: inherit; font-size: .88rem; cursor: pointer; white-space: nowrap; }
  .site-navigation .nav-link:hover, .site-navigation .nav-link[aria-expanded="true"], .site-navigation .nav-link[aria-current], .site-navigation .nav-link.is-current-section { color: var(--font-color); background: rgba(0, 171, 226, .1); }
  .site-navigation .nav-link[aria-current], .site-navigation .nav-link.is-current-section { box-shadow: inset 0 -2px #00abe2; }
  .site-navigation .sb-desktop-dropdown { width: 400px; padding: 12px; margin-top: 5px; border: 1px solid var(--navbar-alpha3); border-top: 3px solid #00abe2; border-radius: 6px; background: var(--nav-bg); color: var(--font-color); box-shadow: 0 16px 40px #0005; max-height: calc(100dvh - 90px); overflow-y: auto; overscroll-behavior: contain; }
  .site-navigation .sb-desktop-link-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 3px; }
  .site-navigation .dropdown-item { display: flex; align-items: center; min-height: 44px; padding: 10px; border-radius: 4px; color: inherit; font-size: .85rem; line-height: 1.4; white-space: normal; }
  .site-navigation .dropdown-item:hover, .site-navigation .dropdown-item:focus, .site-navigation .dropdown-item[aria-current] { color: inherit; background: rgba(0, 171, 226, .1); }
  .site-navigation .dropdown-item[aria-current] { box-shadow: inset 3px 0 #00abe2; }
  .site-navigation .sb-dropdown-overview { justify-content: space-between; font-weight: 700; }
  .sb-dropdown-label { margin: 10px 0 7px; padding: 14px 10px 0; border-top: 1px solid var(--navbar-alpha3); color: var(--navbar-alpha7); font-size: .68rem; font-weight: 600; letter-spacing: .08em; text-transform: uppercase; }
  .site-navigation .site-nav-search { width: 210px; padding-left: 12px; }
  .site-nav-search .input-group { flex-wrap: nowrap; }
  .site-navigation .site-nav-search input { min-width: 0; height: 44px; border: 1px solid var(--navbar-alpha3) !important; border-radius: 5px 0 0 5px; background: transparent; color: var(--font-color); font-size: .82rem; }
  .site-nav-search input::placeholder { color: var(--navbar-alpha7); opacity: 1; }
  .site-navigation .site-nav-search button { display: grid; place-items: center; width: 44px; height: 44px; padding: 0; border: 1px solid #00abe2; border-radius: 0 5px 5px 0; background: #00abe2; color: #07131a; }
  .site-nav-search input:focus { border-color: #00abe2 !important; box-shadow: none; }
  .site-navigation :focus-visible { outline: 2px solid #00abe2; outline-offset: 3px; }
}
@media (min-width: 992px) and (max-width: 1199.98px) {
  .site-navigation .site-nav-search { width: 180px; padding-left: 8px; }
  .site-navigation .nav-link { font-size: .82rem; }
}
