/* =========================
   Header Proverix (isolado)
   NÃO redefine :root (pra não quebrar o site)
   ========================= */

.pvx-header {
  /* Variáveis do header (escopo local) */
  --pvx-header-border: var(--pvx-border);
  --pvx-header-bg: rgba(255, 255, 255, .92);
  --pvx-header-bg-soft: var(--pvx-light);

  /* Cores do seletor (usa paleta global do base.css) */
  --pvx-header-home: var(--pvx-orange);
  --pvx-header-biz: var(--pvx-primary);

  /* Cor atual do header (padrão: biz = azul) */
  --pvx-header-accent: var(--pvx-header-biz);

  background: transparent;
}

/* ===== Top strip (desktop) ===== */
.pvx-header .pvx-topstrip {
  background: var(--pvx-header-bg-soft);
  border-bottom: 1px solid var(--pvx-header-border);
}

.pvx-header .pvx-topstrip-inner {
  height: 40px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
}

.pvx-header .pvx-seg {
  display: flex;
  align-items: center;
  gap: 18px;
  height: 40px;
}

.pvx-header .pvx-seg-btn {
  background: transparent;
  border: 0;
  padding: 0 2px;
  height: 40px;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .12em;
  text-transform: uppercase;
  color: var(--pvx-muted);
  border-bottom: 2px solid transparent;
  cursor: pointer;
}

.pvx-header .pvx-seg-btn.is-active {
  color: var(--pvx-header-accent);
  border-bottom-color: var(--pvx-header-accent);
}

.pvx-header .pvx-topstrip-help {
  display: flex;
  align-items: center;
  gap: 8px;
  color: var(--pvx-muted);
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .12em;
  text-transform: uppercase;
  text-decoration: none;
}

.pvx-header .pvx-topstrip-help:hover {
  color: var(--pvx-header-accent);
}

.pvx-header .pvx-topstrip-help .pvx-ico {
  font-size: 14px;
}

/* ===== Main navbar (desktop) ===== */
.pvx-header .pvx-navbar {
  background: var(--pvx-header-bg);
  backdrop-filter: blur(14px);
  border-bottom: 1px solid var(--pvx-header-border);
}

.pvx-header .pvx-navbar-inner {
  height: 80px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
}

/* Logo existente do projeto */
.pvx-header .pvx-logo {
  height: 36px;
  width: auto;
  object-fit: contain;
}

/* Links */
.pvx-header .pvx-links {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  align-items: center;
  gap: 42px;
}

.pvx-header .pvx-link {
  text-decoration: none;
  color: var(--pvx-muted);
  font-size: 15px;
  font-weight: 800;
  letter-spacing: .02em;
  transition: transform .15s ease, color .15s ease;
}

.pvx-header .pvx-link:hover {
  color: var(--pvx-header-accent);
  transform: translateY(-1px);
}

.pvx-header .pvx-link.active,
.pvx-header .pvx-anchor-link.active {
  color: var(--pvx-header-accent);
}

/* Actions */
.pvx-header .pvx-actions {
  display: flex;
  align-items: center;
  gap: 12px;
}

/* Botões do header: não mexe no .btn-primary global */
.pvx-header .pvx-btn {
  border: 0;
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  font-weight: 800;
  cursor: pointer;
}

.pvx-header .pvx-btn-primary {
  height: 48px;
  padding: 0 22px;
  border-radius: 999px;
  background: var(--pvx-header-accent);
  color: #fff;
  box-shadow: 0 18px 44px rgba(2, 6, 23, .14);
}

.pvx-header .pvx-btn-primary:hover {
  filter: brightness(.95);
  color: #fff;
}

.pvx-header .pvx-btn-icon {
  width: 48px;
  height: 48px;
  border-radius: 999px;
  background: rgba(15, 23, 42, .06);
  color: rgba(51, 65, 85, .95);
}

.pvx-header .pvx-btn-icon:hover {
  background: rgba(37, 99, 235, .10);
  color: var(--pvx-header-accent);
}

/* ===== Mobile bar (fechado) ===== */
.pvx-header .pvx-mobilebar {
  background: rgba(255, 255, 255, .80);
  backdrop-filter: blur(12px);
  border-bottom: 1px solid rgba(0, 0, 0, .06);
}

.pvx-header .pvx-mobilebar-inner {
  height: 64px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}

.pvx-header .pvx-logo--sm,
.pvx-header .pvx-logo-sm {
  height: 28px;
  width: auto;
  object-fit: contain;
}

.pvx-header .pvx-mobile-actions {
  display: flex;
  align-items: center;
  gap: 10px;
}

.pvx-header .pvx-micon {
  width: 40px;
  height: 40px;
  border-radius: 999px;
  border: 0;
  background: transparent;
  color: rgba(51, 65, 85, .95);
}

.pvx-header .pvx-micon:hover {
  background: rgba(37, 99, 235, .10);
  color: var(--pvx-header-accent);
}

.pvx-header .pvx-mburger {
  width: 40px;
  height: 40px;
  border-radius: 12px;
  border: 1px solid rgba(37, 99, 235, .18);
  background: rgba(37, 99, 235, .06);
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 5px;
}

.pvx-header .pvx-mburger span {
  height: 2px;
  width: 20px;
  background: var(--pvx-header-accent);
  border-radius: 999px;
}

.pvx-header .pvx-mburger span:last-child {
  width: 12px;
  align-self: flex-end;
  margin-right: 9px;
}

/* ===== Offcanvas fullscreen ===== */
.pvx-header .pvx-offcanvas {
  height: 100vh !important;
  background: var(--pvx-light);
  border: 0;
}

.pvx-header .pvx-offcanvas-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 16px;
  border-bottom: 1px solid var(--pvx-header-border);
  background: var(--pvx-light);
}

.pvx-header .pvx-offcanvas-title {
  margin: 0;
  font-size: 24px;
  font-weight: 900;
  letter-spacing: -0.02em;
  color: var(--pvx-text);
}

.pvx-header .pvx-offcanvas-close {
  width: 40px;
  height: 40px;
  border-radius: 999px;
  border: 0;
  background: transparent;
  color: var(--pvx-text);
}

.pvx-header .pvx-offcanvas-close:hover {
  background: rgba(15, 23, 42, .06);
}

.pvx-header .pvx-offcanvas-body {
  padding: 20px 18px 22px;
  overflow-y: auto;
}

/* Segment selector (mobile expanded) */
.pvx-header .pvx-offcanvas-seg {
  display: flex;
  gap: 8px;
  padding: 6px;
  border-radius: 14px;
  background: rgba(15, 23, 42, .08);
  margin-bottom: 18px;
}

.pvx-header .pvx-offcanvas-segbtn {
  flex: 1;
  height: 44px;
  border: 0;
  border-radius: 10px;
  font-weight: 800;
  color: var(--pvx-muted);
  background: transparent;
}

.pvx-header .pvx-offcanvas-segbtn.is-active {
  background: #fff;
  box-shadow: 0 10px 26px rgba(0, 0, 0, .08);
  color: var(--pvx-header-accent);
}

/* Links grandes */
.pvx-header .pvx-offcanvas-links {
  display: flex;
  flex-direction: column;
  margin-bottom: 22px;
}

.pvx-header .pvx-offcanvas-link {
  display: flex;
  align-items: center;
  justify-content: space-between;
  text-decoration: none;
  padding: 16px 4px;
  border-bottom: 1px solid rgba(15, 23, 42, .08);
  font-size: 26px;
  font-weight: 700;
  color: var(--pvx-text);
}

.pvx-header .pvx-offcanvas-link i {
  font-size: 18px;
  color: var(--pvx-muted);
}

.pvx-header .pvx-offcanvas-link:hover {
  color: var(--pvx-header-accent);
}

.pvx-header .pvx-offcanvas-link:hover i {
  color: var(--pvx-header-accent);
}

/* Footer CTA */
.pvx-header .pvx-offcanvas-footer {
  margin-top: auto;
  padding-top: 6px;
}

.pvx-header .pvx-offcanvas-cta {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  height: 56px;
  border-radius: 14px;
  text-decoration: none;
  background: var(--pvx-header-accent);
  color: #fff;
  font-size: 18px;
  font-weight: 900;
  box-shadow: 0 18px 44px rgba(2, 6, 23, .14);
}

.pvx-header .pvx-offcanvas-cta:hover {
  filter: brightness(.95);
  color: #fff;
}

.pvx-header .pvx-offcanvas-mini {
  margin-top: 14px;
}

.pvx-header .pvx-mini-link {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  text-decoration: none;
  color: var(--pvx-muted);
  font-weight: 900;
  letter-spacing: .10em;
  text-transform: uppercase;
  font-size: 11px;
}

.pvx-header .pvx-mini-link:hover {
  color: var(--pvx-header-accent);
}

/* Responsivo: o HTML já usa d-none/d-lg-block,
   mas mantém essa proteção extra se necessário */
@media (max-width: 991.98px) {
  .pvx-header .pvx-navbar {
    display: none;
  }
}