/* ── NAVBAR ── */
.navbar {
   background: transparent !important;
   padding: 1.25rem 0;
   position: fixed;
   top: 0; left: 0; right: 0;
   z-index: 1000;
   transition: background 0.4s, padding 0.3s, box-shadow 0.3s;
}
.navbar.solid {
   background: var(--white) !important;
   padding: 0.6rem 0;
   box-shadow: 0 2px 20px rgba(0,50,82,0.10);
}
.logo-img {
   height: 48px;
   transition: filter 0.4s;
}
.navbar:not(.solid) .logo-img { filter: brightness(0) invert(1); }
.nav-link {
   font-family: 'Montserrat', sans-serif;
   font-size: 12px;
   font-weight: 600;
   letter-spacing: 1px;
   text-transform: uppercase;
   color: rgba(255,255,255,0.9) !important;
   padding: 0.5rem 0.9rem !important;
   position: relative;
   transition: color 0.2s;
}
.navbar.solid .nav-link { color: var(--navy) !important; }
.nav-link:not(.nav-cta)::after {
   content: '';
   position: absolute;
   bottom: 0; left: 0.9rem; right: 0.9rem;
   height: 1px;
   background: var(--accent);
   transform: scaleX(0);
   transform-origin: center;
   transition: transform 0.25s;
}
.nav-link:hover::after, .nav-link.active::after { transform: scaleX(1); }
.nav-cta {
   background: var(--accent) !important;
   color: var(--navy) !important;
   border-radius: 4px;
   padding: 0.5rem 1.25rem !important;
   font-weight: 700;
}
.navbar.solid .nav-cta { background: var(--navy) !important; color: var(--white) !important; }
.nav-cta:hover { opacity: 0.88; }
