/* Shared Navbar CSS */
.navbar {
  background:#165a9e;
  padding: 0 20px;
  height: 60px;
  box-sizing: border-box;
  display:flex;
  justify-content:space-between;
  align-items:center;
  flex-wrap:wrap;
  position: sticky;
  top:0;
  z-index: 1000;
}
.navbar * { box-sizing: border-box; }
.navbar .logo { text-decoration: none; display: flex; align-items: center; }
.navbar .logo img { height: 35px; width: auto; display: block; }
.nav-links { display:flex; gap:20px; align-items: center; }
.nav-links a {
  color:#fff; text-decoration:none; font-weight:500; position:relative; padding:4px 0;
}
.nav-links a::after {
  content:''; position:absolute; left:0; bottom:-2px; height:2px; width:0; background:#fff; transition: width 0.3s ease;
}
.nav-links a:hover::after,
.nav-links a.active::after { width:100%; }
.burger { display:none; font-size:1.6rem; color:#fff; cursor:pointer; user-select:none; }
@media(max-width:768px){
  .burger { display:block; }
  .nav-links { display:none; flex-direction:column; width:100%; gap:10px; margin-top:10px; }
  .navbar { height: auto; padding: 12px 20px; }
  .nav-links.show { display:flex; }
  .navbar .logo img { height: 23px; width: auto; }
}