.primary-nav { display: flex; align-items: center; gap: clamp(.85rem, 1.7vw, 1.75rem); }
.primary-nav > a:not(.nav-cta) { position: relative; padding: .5rem 0; color: #34445a; font-size: .88rem; font-weight: 600; text-decoration: none; white-space: nowrap; }
.primary-nav > a:not(.nav-cta)::after { position: absolute; right: 0; bottom: .1rem; left: 0; height: 2px; background: var(--gold); content: ""; transform: scaleX(0); transform-origin: left; transition: transform .2s ease; }
.primary-nav > a:not(.nav-cta):hover::after, .primary-nav > a.active::after { transform: scaleX(1); }
.primary-nav > a.active { color: var(--navy); }
.nav-cta { display: inline-flex; align-items: center; gap: .6rem; padding: .72rem 1rem; background: var(--navy); color: #fff; font-size: .84rem; font-weight: 700; text-decoration: none; white-space: nowrap; }
.nav-cta:hover { background: var(--navy-2); }
