/* Mobile hamburger nav */
.nav-toggle { display: none; }
@media (max-width: 800px) {
  .header-inner { flex-wrap: nowrap; position: relative; }
  .nav-toggle {
    display: inline-flex; align-items: center; justify-content: center;
    width: 44px; height: 44px; flex-shrink: 0;
    border: 1px solid var(--border, #d9e3ea); border-radius: 10px;
    background: var(--white, #fff); color: var(--deep, #0b3a53);
    cursor: pointer; padding: 0;
  }
  .nav-toggle:focus-visible { outline: 3px solid var(--teal, #0f766e); outline-offset: 2px; }
  .nav-toggle-bars, .nav-toggle-bars::before, .nav-toggle-bars::after {
    display: block; width: 22px; height: 2.5px; border-radius: 2px;
    background: currentColor; position: relative; transition: transform .2s ease, opacity .2s ease;
  }
  .nav-toggle-bars::before, .nav-toggle-bars::after { content: ""; position: absolute; left: 0; }
  .nav-toggle-bars::before { top: -7px; }
  .nav-toggle-bars::after { top: 7px; }
  .nav-open .nav-toggle-bars { background: transparent; }
  .nav-open .nav-toggle-bars::before { transform: translateY(7px) rotate(45deg); }
  .nav-open .nav-toggle-bars::after { transform: translateY(-7px) rotate(-45deg); }

  .site-header .nav {
    display: none;
    position: absolute; top: 100%; left: 0; right: 0;
    flex-direction: column; align-items: stretch; gap: 0;
    background: var(--white, #fff);
    border-bottom: 1px solid var(--border, #d9e3ea);
    box-shadow: 0 12px 24px rgba(11,58,83,.12);
    padding: 0.4rem 1rem 0.8rem;
  }
  .site-header.nav-open .nav { display: flex; }
  .site-header .nav a {
    padding: 0.85rem 0.25rem; font-size: 1.05rem;
    border-bottom: 1px solid var(--border, #e6eef3);
  }
  .site-header .nav a:last-child { border-bottom: none; }
  .site-header .nav a[aria-current="page"] { border-bottom-color: var(--border, #e6eef3); color: var(--teal-dark, #0f5f58); }
  .site-header .nav .nav-cta { margin-top: 0.5rem; text-align: center; }
}
