.nav-burger { display: none; }

@media (max-width: 860px) {
  .site-nav .wrap { gap: 10px; }
  .site-nav .nav-logo { margin-right: auto; }
  .nav-burger {
    display: inline-flex; flex-direction: column; justify-content: center; gap: 5px;
    width: 44px; height: 44px; padding: 0 11px; border: 1px solid rgba(51,51,51,0.18); border-radius: 12px;
    background: #fff; cursor: pointer; flex-shrink: 0;
  }
  .nav-burger span { display: block; height: 2px; border-radius: 2px; background: #333; transition: transform .2s, opacity .2s; }
  .nav-burger:focus-visible { outline: 2px solid #13752b; outline-offset: 2px; }
  .site-nav.menu-open .nav-burger span:nth-child(1) { transform: translateY(7px) rotate(45deg); }
  .site-nav.menu-open .nav-burger span:nth-child(2) { opacity: 0; }
  .site-nav.menu-open .nav-burger span:nth-child(3) { transform: translateY(-7px) rotate(-45deg); }

  .site-nav.menu-open .nav-links {
    display: flex !important; flex-direction: column; align-items: stretch; gap: 0;
    position: absolute; top: 100%; left: 0; right: 0;
    background: #fff; border-bottom: 1px solid rgba(51,51,51,0.12);
    box-shadow: 0 18px 30px -18px rgba(43,38,34,0.35);
    padding: 6px 20px 14px; max-height: calc(100vh - 80px); overflow-y: auto;
  }
  .site-nav.menu-open .nav-links a {
    display: block; padding: 14px 4px; font-size: 18px; color: #333;
    border-bottom: 1px solid rgba(51,51,51,0.08);
  }
  .site-nav.menu-open .nav-links a:last-child { border-bottom: none; }
  .site-nav.menu-open .nav-links a.current { color: #13752b; font-weight: 700; }
}

/* Сетки с колонками, прописанными прямо в разметке, на телефоне — в одну колонку */
@media (max-width: 760px) {
  [style*="grid-template-columns"] { grid-template-columns: 1fr !important; }
}

/* Длинные слова заглавными в заголовках («КОНФИДЕНЦИАЛЬНОСТИ») не должны вылезать за экран */
@media (max-width: 480px) {
  h1.page-title { font-size: min(7vw, 34px) !important; }
  h1, h2 { overflow-wrap: break-word; hyphens: auto; -webkit-hyphens: auto; }
}

@media (max-width: 400px) {
  .site-nav .nav-cta { padding: 9px 14px; font-size: 14px; }
  .site-nav .nav-logo { font-size: 15px; }
}

@media (prefers-reduced-motion: reduce) {
  .nav-burger span { transition: none; }
}
