/* Shared navigation enhancement; base layout remains usable without JavaScript. */
.nav-links { display:contents; }
.nav-toggle { display:none; }
.nav a[aria-current]:not(.nav-cta) { text-decoration:underline; text-underline-offset:6px; text-decoration-thickness:2px; }
#approach, #about { scroll-margin-top:112px; }
@media(max-width:600px) {
  .top:has(.nav-ready) { height:72px; min-height:72px; padding:12px 18px; flex-wrap:nowrap; gap:12px; overflow:visible; }
  .nav.nav-ready { width:auto; margin-left:auto; justify-content:flex-end; gap:10px; }
  .nav-ready .nav-toggle { display:inline-flex; align-items:center; justify-content:center; min-height:44px; padding:9px 10px; border:1px solid var(--color-border,#d9d9d9); border-radius:100px; color:var(--color-dark,#111); background:#fff; font:500 .84rem Poppins,sans-serif; cursor:pointer; }
  .nav-ready .nav-toggle:focus-visible { outline:3px solid #111; outline-offset:4px; }
  .nav.nav-ready a.nav-cta { display:inline-flex; align-items:center; min-height:44px; padding:9px 13px; font-size:.84rem; }
  .nav-ready .nav-links { display:none; position:absolute; top:100%; left:0; right:0; padding:12px 18px 18px; background:#fff; border-bottom:1px solid var(--color-border,#d9d9d9); }
  .nav-ready.is-open .nav-links { display:flex; flex-direction:column; gap:0; }
  .nav-ready .nav-links a { display:flex; align-items:center; min-height:44px; font-size:.94rem; }
  #approach, #about { scroll-margin-top:90px; }
}
