/* vars: --c-accent,--c-bg,--c-ink,--c-ink-ghost,--f-sans,--nav-h */
.nav {
  position: fixed; top: 0; left: 0; right: 0; z-index: 900;
  height: var(--nav-h); display: flex; align-items: center; justify-content: space-between;
  padding: 0 clamp(16px, 4vw, 48px);
  background: rgba(12, 11, 9, 0.94);
  border-bottom: 1px solid var(--c-ink-ghost);
  backdrop-filter: blur(12px); -webkit-backdrop-filter: blur(12px);
}
.nav__logo {
  font-family: var(--f-sans); font-size: 1.125rem; font-weight: 700; letter-spacing: 4px;
  color: var(--c-ink); text-decoration: none;
  display: inline-flex; align-items: center; height: 100%;
}
.nav__logo em { color: var(--c-accent); font-style: normal; }
.nav__logo-img { display: block; height: 48px; width: auto; padding: 1px; }
.nav__links {
  display: flex; gap: 24px; align-items: center; list-style: none; margin: 0; padding: 0;
}
.nav__link {
  font-family: var(--f-sans); font-size: 0.875rem; font-weight: 500;
  letter-spacing: .1em; text-transform: uppercase; color: var(--c-ink);
  text-decoration: none; background: none; border: none; cursor: pointer;
  padding: 0; display: inline-flex; align-items: center; gap: 8px;
  transition: color .2s;
}
.nav__link:hover { color: var(--c-accent); }
.nav__right { display: flex; align-items: center; gap: 16px; }
.nav__phone {
  font-family: var(--f-sans); font-size: 0.875rem; font-weight: 600; letter-spacing: 0.5px;
  color: var(--c-ink); text-decoration: none;
}
.nav__phone:hover { color: var(--c-accent); }
.nav__cta {
  font-family: var(--f-sans); font-size: 0.8125rem; font-weight: 600; letter-spacing: .06em;
  background: var(--c-accent); color: var(--c-bg);
  padding: 9px 22px; border: none; cursor: pointer;
  text-decoration: none; transition: background .2s; text-transform: uppercase;
}
.nav__cta:hover { background: #ffad2a; }
.nav__hamburger {
  display: none; flex-direction: column; gap: 4px;
  background: none; border: none; cursor: pointer; padding: 0.5rem;
}
.nav__hamburger span {
  display: block; width: 22px; height: 2px; background: var(--c-ink); transition: transform .3s;
}
@media (max-width: 900px) {
  .nav__links, .nav__phone { display: none; }
  .nav__hamburger { display: flex; }
  .nav--open .nav__links {
    display: flex; flex-direction: column; align-items: stretch;
    position: absolute; top: var(--nav-h); left: 0; right: 0;
    background: rgba(12, 11, 9, 0.97); backdrop-filter: blur(12px);
    padding: 1.5rem 2rem; gap: 1rem;
    border-bottom: 1px solid var(--c-ink-ghost);
    max-height: calc(100vh - var(--nav-h)); overflow-y: auto;
  }
  .nav--open .nav__link { font-size: 1.125rem; padding: 0.25rem 0; }
}
