/* ── SHARED NAV STYLES ── */
nav {
  position: fixed; top: 0; left: 0; right: 0; z-index: 100;
  background: rgba(13,15,18,.94); backdrop-filter: blur(20px);
  border-bottom: 1px solid rgba(255,255,255,.07); height: 64px;
  transform: translateZ(0); will-change: transform;
}
.nav-inner {
  max-width: 1160px; margin: 0 auto; padding: 0 28px;
  height: 100%; display: flex; align-items: center; justify-content: space-between; gap: 24px;
}
.nav-logo { text-decoration: none; flex-shrink: 0; }
.nav-links { display: flex; align-items: center; gap: 2px; list-style: none; flex: 1; justify-content: center; }
.nav-links a { font-size: 14px; font-weight: 500; color: rgba(255,255,255,.55); text-decoration: none; padding: 6px 12px; border-radius: 6px; transition: color .15s, background .15s; }
.nav-links a:hover, .nav-links a.active { color: rgba(255,255,255,.9); background: rgba(255,255,255,.07); }
.nav-cta { display: flex; align-items: center; gap: 10px; flex-shrink: 0; }
.nav-signin { font-size: 13px; font-weight: 500; color: rgba(255,255,255,.45); text-decoration: none; padding: 6px 10px; border-radius: 6px; transition: color .15s; }
.nav-signin:hover { color: rgba(255,255,255,.8); }
.nav-download { font-size: 13px; font-weight: 600; color: #fff; text-decoration: none; background: rgba(255,255,255,.08); border: 1px solid rgba(255,255,255,.12); border-radius: 6px; padding: 6px 14px; transition: background-color .15s; display: inline-flex; align-items: center; gap: 5px; outline: none; -webkit-tap-highlight-color: transparent; }
.nav-download:hover { background: rgba(255,255,255,.14); }
.nav-download:active, .nav-download:focus { background: rgba(255,255,255,.08); outline: none; }
.nav-demo { font-size: 13px; font-weight: 600; color: #fff; text-decoration: none; background: var(--red); border-radius: 6px; padding: 7px 16px; white-space: nowrap; outline: none; -webkit-tap-highlight-color: transparent; transition: background-color .15s; }
.nav-demo:hover { background: var(--red-light); }
.nav-demo:active, .nav-demo:focus { background: var(--red); outline: none; }
.nav-hamburger { display: none; background: none; border: none; cursor: pointer; padding: 6px; }
.nav-hamburger svg { width: 22px; height: 22px; stroke: rgba(255,255,255,.7); fill: none; stroke-width: 2; stroke-linecap: round; }

.mobile-nav {
  display: none; position: fixed; top: 64px; left: 0; right: 0; bottom: 0;
  background: var(--dark); z-index: 99; padding: 20px 28px; flex-direction: column;
}
.mobile-nav.open { display: flex; }
.mobile-nav a { font-size: 17px; font-weight: 500; color: rgba(255,255,255,.65); text-decoration: none; padding: 16px 0; border-bottom: 1px solid rgba(255,255,255,.06); transition: color .15s; }
.mobile-nav a:hover { color: #fff; }
.mobile-nav .btn { margin-top: 24px; justify-content: center; }

@media (max-width: 768px) {
  .nav-links, .nav-download { display: none; }
  .nav-hamburger { display: block; }
}
