.v2-header {
  --v2-azul: #4a6cf7;
  --v2-azul-escuro: #2946ba;
  --v2-tinta: #17203b;
  --v2-linha: #dfe4f0;
  --cabecalho-publico-largura: 1460px;
  --cabecalho-publico-margem: 40px;
  padding-inline: max(var(--cabecalho-publico-margem), calc((100% - var(--cabecalho-publico-largura)) / 2));
  position: sticky;
  top: 0;
  z-index: 50;
  min-height: 82px;
  display: flex;
  align-items: center;
  border-bottom: 1px solid rgba(223, 228, 240, .9);
  backdrop-filter: blur(16px);
}
.v2-header a { text-decoration: none; }
.v2-header .v2-nav { display: flex; align-items: center; justify-content: space-between; width: 100%; max-width: var(--cabecalho-publico-largura); margin-inline: auto; gap: 24px; }
.v2-header .v2-links { display: flex; align-items: center; gap: 24px; }
.v2-header .v2-links a { padding: 8px; color: #46506a; font-size: 18px; font-weight: 700; border-radius: 999px; transition: background .2s, color .2s; }
.v2-header .v2-links a:hover { color: var(--v2-azul); background: rgba(74, 108, 247, .1); }
.v2-header .v2-acoes { display: flex; align-items: center; gap: 18px; }
.v2-header .v2-botao { display: inline-flex; align-items: center; justify-content: center; gap: .5rem; min-height: 46px; padding: 0 24px; border: 0; border-radius: 13px; color: #fff; background: var(--v2-azul); box-shadow: 0 8px 22px rgba(74, 108, 247, .27); font: 700 14px/1.2 Inter, system-ui, sans-serif; white-space: nowrap; cursor: pointer; transition: .2s ease; }
.v2-header .v2-botao:hover { color: #fff; background: var(--v2-azul-escuro); transform: translateY(-2px); }
.v2-header .v2-botao-sm { box-shadow: none; }
.v2-header .v2-botao-claro { color: var(--v2-tinta); background: #fff; border: 1px solid var(--v2-linha); box-shadow: none; }
.v2-header .v2-botao-claro:hover { color: var(--v2-azul); background: #fff; border-color: #b9c5f7; }
.v2-header .v2-entrar { color: #131c45; border-color: #cad3e8; background: #fff; }
.v2-header .v2-cadastro-destaque { background: #0085ff; box-shadow: 0 7px 18px #0085ff26; }
.v2-header .v2-cadastro-destaque:hover { background: #0074df; }
.v2-header .v2-menu { display: none; width: 42px; height: 42px; border: 1px solid var(--v2-linha); border-radius: .7rem; color: var(--v2-tinta); background: #fff; font-size: 1.2rem; cursor: pointer; }
.v2-header .hp-menu-entrar { display: none; }
.v2-header :is(a, button):focus-visible { outline: 3px solid rgba(74, 108, 247, .5); outline-offset: 3px; }
@media (max-width: 1250px) {
  .v2-header { --cabecalho-publico-margem: 32px; }
  .v2-header .v2-links { gap: 8px; }
  .v2-header .v2-links a { font-size: 16px; }
  .v2-header .v2-acoes { gap: 10px; }
  .v2-header .v2-botao { padding-inline: 17px; }
}
@media (max-width: 1020px) {
  .v2-header .v2-menu { display: block; }
  .v2-header .v2-links { display: none; }
  .v2-header .v2-links.aberto { display: grid; position: absolute; left: 20px; right: 20px; top: calc(100% + 4px); gap: 0; padding: 12px; border: 1px solid #d7e2f4; border-radius: 12px; background: #fff; box-shadow: 0 8px 24px #243b6126; }
}
@media (max-width: 980px) {
  .v2-header { min-height: 74px; }
  .v2-header .v2-nav { gap: 14px; }
}
@media (max-width: 720px) {
  .v2-header .v2-acoes .v2-botao { display: none; }
  .v2-header .v2-links.aberto .hp-menu-entrar { display: block; border-top: 1px solid #d7e2f4; margin-top: 5px; }
  .v2-header .v2-acoes :is(.v2-voltar-mapa, .v2-ir-admin) { display: inline-flex; }
  .v2-header .v2-ir-admin { padding-inline: .8rem; }
  .v2-header .v2-ir-admin-texto { display: none; }
}
@media (max-width: 600px) {
  .v2-header { --cabecalho-publico-margem: 18px; }
  .v2-header .v2-nav { gap: 8px; }
  .v2-header .v2-acoes { gap: 6px; }
  .v2-header .v2-botao { min-height: 38px; padding-inline: 12px; border-radius: 9px; font-size: 12px; }
  .v2-header .v2-menu { width: 36px; height: 36px; }
}
