/* ---- top bar ---- */
.wp-block-lazyblock-new-design-header,
.lzb-new-design-header,
header.nav {
  position: sticky;
  top: 0;
  z-index: 50;
}
.admin-bar .wp-block-lazyblock-new-design-header,
.admin-bar .lzb-new-design-header,
.admin-bar header.nav {
  top: 32px;
}
@media screen and (max-width: 782px) {
  .admin-bar .wp-block-lazyblock-new-design-header,
  .admin-bar .lzb-new-design-header,
  .admin-bar header.nav {
    top: 46px;
  }
}

header.nav {
  background: rgba(10,31,23,.88);
  backdrop-filter: blur(14px);
  border-bottom: 1px solid var(--line);
}
.nav-in { display: flex; align-items: center; justify-content: space-between; height: 70px; }
header.nav a, header.nav a:visited, header.nav a:hover, header.nav a:focus, header.nav a:active { text-decoration: none; color: inherit; }
header.nav a.brand { display: flex; align-items: center; gap: 12px; color: var(--cream); }
.brand img { height: 42px; width: auto; border-radius: 8px; }
.brand b { font-family: 'Bricolage Grotesque'; font-weight: 800; font-size: 16px; letter-spacing: .02em; }
.navlinks { display: flex; gap: 30px; align-items: center; }
header.nav .navlinks a { color: var(--cream-2); font-weight: 600; font-size: 14px; opacity: .85; transition: .2s; }
header.nav .navlinks a:hover { opacity: 1; color: var(--brass); }
.lang {
  color: var(--cream-2);
  font-size: 13px;
  font-weight: 600;
  opacity: .7;
  border: 1px solid var(--line);
  padding: 5px 11px;
  border-radius: 20px;
}
.cta {
  background: var(--brass);
  color: var(--ink);
  font-weight: 800;
  font-family: 'Bricolage Grotesque';
  padding: 11px 20px;
  border-radius: 30px;
  font-size: 13.5px;
  letter-spacing: .02em;
  box-shadow: 0 10px 24px -10px rgba(201,162,75,.7);
  transition: .2s;
  white-space: nowrap;
}
.cta:hover { transform: translateY(-2px); box-shadow: 0 16px 30px -12px rgba(201,162,75,.85); }
.menu-btn { display: none; background: none; border: 0; color: var(--cream); font-size: 24px; cursor: pointer; }

@media(max-width:640px) {
  .nav-in { height: 64px; }
  .brand img { height: 32px; }
  .brand b { font-size: 14px; white-space: nowrap; }
  .cta { padding: 8px 14px; font-size: 12px; }
  .nav-right { gap: 16px; }
  .navlinks { display: none; }
  .navlinks.active {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    text-align: right;
    position: absolute;
    top: 64px;
    left: 0;
    width: 100%;
    background: rgba(10,31,23,.98);
    padding: 30px 26px 40px;
    gap: 18px;
    border-bottom: 1px solid var(--line);
    box-shadow: 0 10px 30px rgba(0,0,0,0.3);
  }
  header.nav .navlinks a { font-size: 16px; padding: 4px 0; }
  .menu-btn { display: block; width: 32px; text-align: right; line-height: 1; margin: 0; }
}
