/* ====================================================
   HEADER — шапка сайта, навигация, бургер-меню, боковая навигация (sidenav)
   ==================================================== */

header {
  position:fixed;
  left:0;
  right:0;
  top:0;
  z-index:100;
  background:rgba(10,11,14,.7);
  backdrop-filter:blur(14px);
  border-bottom:1px solid var(--line);
  height:64px;
}
.nav {
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:0 72px 0 44px;
  max-width:var(--container);
  margin:0 auto;
  height:100%;
}
.brand {
  display:flex;
  align-items:center;
  gap:10px;
}
.brand img {
  height:110px;
  width:auto;
  flex-shrink:0;
}
.brand span {
  font-family:'Poppins',sans-serif;
  font-size:17px;
  letter-spacing:.05em;
  line-height:1.1;
}
.navlinks {
  display:flex;
  gap:22px;
  font-size:13px;
  text-transform:uppercase;
  letter-spacing:.05em;
  font-weight:600;
}
.navlinks a {
  opacity:.75;
  transition:opacity .2s,color .2s;
  border-bottom:1px solid transparent;
  padding-bottom:2px;
}
.navlinks a:hover {
  opacity:1;
  color:var(--orange);
}
.btn {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  padding:13px 26px;
  font-family:'Poppins',sans-serif;
  font-weight:600;
  text-transform:uppercase;
  letter-spacing:.05em;
  font-size:14px;
  border-radius:var(--radius);
  cursor:pointer;
  border:1px solid transparent;
  transition:.2s all;
}
.btn-primary {
  background:var(--grad-orange);
  color:#161513;
  box-shadow:0 8px 24px -8px rgba(244,144,30,.55);
}
.btn-primary:hover {
  box-shadow:0 10px 32px -6px rgba(244,144,30,.8);
  transform:translateY(-1px);
}
.btn-ghost {
  border-color:var(--line-strong);
  color:var(--white);
  background:rgba(255,255,255,.02);
}
.btn-ghost:hover {
  border-color:var(--orange);
  color:var(--orange);
}
.btn-sm {
  padding:8px 14px;
  font-size:12px;
}
.btn-danger {
  border-color:#d94a4a;
  color:#e08080;
  background:transparent;
}
.btn-danger:hover {
  background:#d94a4a;
  color:#fff;
}
.navcta {
  display:none;
}
@media(min-width:900px) {
  .navcta {
    display:inline-flex;
  }
}
.burger {
  display:none;
  background:none;
  border:none;
  color:var(--white);
  font-size:34px;
  cursor:pointer;
}
@media(max-width:899px) {
  .navlinks {
    display:none;
  }
  .burger {
    display:flex;
    align-items:center;
    justify-content:center;
    line-height:1;
    transform:translateY(-4px);
  }
}
.mobilemenu {
  display:none;
  flex-direction:column;
  border-top:1px solid var(--line);
  background:rgba(10,11,14,.97);
  backdrop-filter:blur(14px);
  box-shadow:0 24px 40px -20px rgba(0,0,0,.7);
}
.mobilemenu.open {
  display:flex;
}
.mobilemenu a {
  padding:16px 24px;
  border-bottom:1px solid var(--line);
  font-family:'Poppins',sans-serif;
  text-transform:uppercase;
  letter-spacing:.04em;
}
.sidenav {
  position:fixed;
  right:26px;
  top:50%;
  transform:translateY(-50%);
  z-index:90;
  display:none;
  flex-direction:column;
  gap:16px;
  align-items:center;
}
@media(min-width:1180px) {
  .sidenav {
    display:flex;
  }
}
.sidenav .dot-wrap {
  position:relative;
  display:flex;
  align-items:center;
}
.sidenav .dot {
  width:9px;
  height:9px;
  border-radius:50%;
  border:1px solid var(--line-strong);
  background:transparent;
  cursor:pointer;
  transition:.25s;
}
.sidenav .dot.active {
  background:var(--orange);
  border-color:var(--orange);
  box-shadow:0 0 0 4px rgba(244,144,30,.18);
  transform:scale(1.15);
}
.sidenav .tip {
  position:absolute;
  right:22px;
  top:50%;
  transform:translateY(-50%);
  white-space:nowrap;
  font-family:'Poppins',sans-serif;
  font-size:11px;
  letter-spacing:.05em;
  text-transform:uppercase;
  color:var(--muted);
  opacity:0;
  pointer-events:none;
  transition:opacity .2s,transform .2s;
}
.sidenav .dot-wrap:hover .tip {
  opacity:1;
  transform:translateY(-50%) translateX(-4px);
}