/* ==========================================================================
   LeadVector — Header menu (nav#mainNav), same as on the Pricing page
   Logo, links (Каталог ниш / Каталог технологий / По параметрам / Тарифы),
   Войти / Регистрация. ≤1100px compact, ≤920px links hidden,
   ≤740px «Войти» hidden. Load after css/styles.css.
   ========================================================================== */
#mainNav{--container:1160px;font-family:var(--font,Onest),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
#mainNav a{text-decoration:none;color:inherit}
/* home .brand sets a fixed 42px height for the old top bar */
#mainNav .brand{height:auto}

/* Bootstrap overrides: .container / .navbar-brand / .navbar-nav are Bootstrap
   component classes — keep the menu's own geometry */
#mainNav .container{max-width:none;padding-left:0;padding-right:0}
#mainNav .navbar-brand{padding-top:0;padding-bottom:0;margin-right:0;font-size:revert;white-space:revert}
#mainNav .navbar-nav{flex-direction:row;flex-wrap:nowrap;padding-left:0;margin-bottom:0;list-style:revert}
/* Bootstrap's a:hover colour would repaint the buttons */
#mainNav .nav-login:hover{color:rgba(255,255,255,.88)}
#mainNav .nav-register:hover{color:#fff}

/* Home hero: the menu replaces the old top bar */
.hero > .wrap{padding-top:0}
.hero .center{min-height:calc(100vh - 88px)}
@media (max-width:740px){.hero .center{min-height:calc(100vh - 76px)}}
@media (max-width:760px){.hero .center{padding-top:20px}}

#mainNav .container{width:min(var(--container),calc(100% - 44px));margin-inline:auto}
#mainNav{height:88px;position:relative;z-index:20;color:#fff}
#mainNav .navbar-inner{height:100%;display:flex;align-items:center;justify-content:space-between;gap:20px}
#mainNav .navbar-brand{display:inline-flex;align-items:center;flex:0 0 auto}
#mainNav .brandLogo{display:block;width:168px;height:auto}
#mainNav .brandLogo .logoVectorRest,#mainNav .brandLogo .logoArrow path{fill:color-mix(in srgb,var(--primary) 85%,white);transition:fill .2s ease,transform .24s cubic-bezier(.2,.8,.2,1)}
#mainNav .brandLogo .logoArrowMoving{transform-box:fill-box;transform-origin:50% 50%;transition:fill .2s ease,transform .28s cubic-bezier(.16,1,.3,1)}
#mainNav .brand:hover .brandLogo .logoVectorRest,#mainNav .brand:hover .brandLogo .logoArrow path{fill:var(--primary)}
#mainNav .brand:hover .brandLogo .logoArrowMoving{transform:translate(4px,-4px)}
#mainNav .nav-right{display:flex;align-items:center;gap:16px}
#mainNav .navbar-nav{display:flex;align-items:center;gap:9px}
#mainNav .navbar-nav a{font-size:15px;line-height:1.35;font-weight:400;letter-spacing:-.01em;color:rgba(255,255,255,.75);padding:8px 10px;border-radius:6px;white-space:nowrap;transition:color .16s,background .16s}
#mainNav .navbar-nav a:hover{color:#fff;background:rgba(255,255,255,.08)}
#mainNav .navbar-nav a.active{color:#fff;background:rgba(255,255,255,.07)}
#mainNav .nav-auth{display:flex;gap:10px;align-items:center}
#mainNav .nav-btn{height:38px;padding:0 15px;border-radius:6px;display:inline-flex;align-items:center;justify-content:center;white-space:nowrap;font-size:15px;line-height:20px;font-weight:500;letter-spacing:-.01em;transition:background .16s,border-color .16s}
#mainNav .nav-login{border:2px solid rgba(255,255,255,.20);color:rgba(255,255,255,.88)}
#mainNav .nav-login:hover{border-color:rgba(255,255,255,.34);background:rgba(255,255,255,.04)}
#mainNav .nav-register{background:var(--primary);color:#fff}
#mainNav .nav-register:hover{background:#486DFF}
@media (max-width:1100px){#mainNav .navbar-nav{gap:0}#mainNav .navbar-nav a{font-size:14px;padding:7px 8px}#mainNav .nav-right{gap:8px}}
@media (max-width:920px){#mainNav .navbar-nav{display:none}}
@media (max-width:740px){
  #mainNav{height:76px}#mainNav .container{width:min(100% - 32px,var(--container))}#mainNav .brandLogo{width:153px}#mainNav .nav-login{display:none}#mainNav .nav-btn{height:36px;padding:0 13px;font-size:14px}}
@media (max-width:380px){#mainNav .brandLogo{width:132px}}

/* ---------- Logged-in state: e-mail + account dropdown (index_auth.html) ---------- */
#mainNav .nav-account{position:relative}
#mainNav .nav-account-trigger{-webkit-appearance:revert;appearance:revert;height:38px;padding:0 8px 0 10px;border:0;border-radius:6px;background:transparent;color:rgba(255,255,255,.75);display:inline-flex;align-items:center;gap:6px;font-family:inherit;font-size:15px;line-height:20px;font-weight:500;letter-spacing:-.01em;white-space:nowrap;cursor:pointer;transition:color .16s,background .16s}
#mainNav .nav-account-trigger:hover,#mainNav .nav-account.is-open .nav-account-trigger{color:#fff;background:rgba(255,255,255,.08)}
#mainNav .nav-account-trigger:focus-visible{outline:2px solid #8199FF;outline-offset:2px}
#mainNav .nav-account-email{max-width:260px;overflow:hidden;text-overflow:ellipsis}
#mainNav .nav-account-chevron{width:16px;height:16px;flex:0 0 16px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round;transition:transform .16s}
#mainNav .nav-account.is-open .nav-account-chevron{transform:rotate(180deg)}
#mainNav .nav-account-menu{position:absolute;top:calc(100% + 8px);right:0;z-index:120;min-width:230px;padding:8px;border:1px solid #E3E8F1;border-radius:12px;background:#fff;box-shadow:0 18px 42px rgba(15,23,42,.13),0 4px 12px rgba(15,23,42,.05);opacity:0;visibility:hidden;transform:translateY(-5px) scale(.99);transform-origin:100% 0;transition:opacity .16s,transform .16s,visibility .16s}
#mainNav .nav-account.is-open .nav-account-menu{opacity:1;visibility:visible;transform:none;transition:opacity .16s,transform .16s,visibility 0s}
#mainNav .nav-account-menu a{width:100%;min-height:40px;padding:8px 10px;border-radius:8px;display:flex;align-items:center;gap:10px;color:#344054;font:550 13px/1.25 var(--font,Onest),sans-serif;letter-spacing:-.01em;text-decoration:none;white-space:nowrap;transition:background .14s,color .14s}
#mainNav .nav-account-menu a:hover,#mainNav .nav-account-menu a:focus-visible{background:#F6F8FC;color:#4450B2;outline:none}
#mainNav .nav-account-menu svg{width:17px;height:17px;flex:0 0 17px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
#mainNav .nav-account-menu .nav-account-logout{margin-top:4px;padding-top:9px;border-top:1px solid #EDF1F6;border-radius:0 0 8px 8px}
@media (max-width:740px){#mainNav .nav-account-trigger{height:36px;font-size:14px;padding:0 6px 0 8px}#mainNav .nav-account-email{max-width:170px}}
@media (max-width:380px){#mainNav .nav-account-email{max-width:120px}}
@media (prefers-reduced-motion:reduce){#mainNav .nav-account-menu,#mainNav .nav-account-chevron{transition:none}}
