/* ==========================================================
   HEADER COMPARTILHADO — UMA ÚNICA REGRA PARA TODAS AS PÁGINAS
   Carregado por último para eliminar qualquer CSS antigo conflitante.
   ========================================================== */

@media (min-width: 1001px) {
  html body .header {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    z-index: 100 !important;
    padding-top: clamp(18px, 1.15vw, 22px) !important;
  }

  html body .header .container.nav {
    width: min(1480px, calc(100% - 56px)) !important;
    max-width: 1480px !important;
    height: clamp(65px, 4.1vw, 76px) !important;
    margin: 0 auto !important;
    padding: 0 !important;
    display: flex !important;
    align-items: center !important;
    gap: clamp(20px, 1.45vw, 28px) !important;
  }

  html body .header .logo {
    display: block !important;
    width: clamp(220px, 13.8vw, 260px) !important;
    flex: 0 0 clamp(220px, 13.8vw, 260px) !important;
    margin: 0 !important;
  }

  html body .header .logo img {
    display: block !important;
    width: clamp(220px, 13.8vw, 260px) !important;
    max-width: none !important;
    height: auto !important;
  }

  html body .header .menu {
    display: flex !important;
    align-items: center !important;
    gap: clamp(18px, 1.25vw, 24px) !important;
    margin-left: auto !important;
    white-space: nowrap !important;
  }

  html body .header .menu a {
    margin: 0 !important;
    padding: 0 !important;
    font-size: clamp(11px, .74vw, 14px) !important;
    line-height: 1 !important;
    font-weight: 800 !important;
  }

  html body .header .nav-actions {
    display: flex !important;
    align-items: center !important;
    gap: clamp(9px, .7vw, 12px) !important;
    margin: 0 !important;
  }

  html body .header .nav-actions .btn {
    width: auto !important;
    min-width: 0 !important;
    height: clamp(44px, 2.9vw, 54px) !important;
    min-height: clamp(44px, 2.9vw, 54px) !important;
    padding: 0 clamp(18px, 1.3vw, 24px) !important;
    border-radius: clamp(11px, .75vw, 14px) !important;
    font-size: clamp(11px, .74vw, 14px) !important;
    line-height: 1 !important;
    font-weight: 900 !important;
    margin: 0 !important;
    transform: none !important;
  }

  html body .header .mobile { display: none !important; }
}

@media (max-width: 1000px) {
  html body .header { padding-top: 14px !important; }
  html body .header .container.nav {
    width: calc(100% - 28px) !important;
    max-width: none !important;
    height: 60px !important;
    margin: 0 auto !important;
    padding: 0 !important;
    display: flex !important;
    align-items: center !important;
  }
  html body .header .logo {
    width: 190px !important;
    flex: 0 0 190px !important;
  }
  html body .header .logo img {
    width: 190px !important;
    max-width: 190px !important;
    height: auto !important;
  }
  html body .header .menu,
  html body .header .nav-actions { display: none !important; }
  html body .header .mobile {
    display: grid !important;
    place-items: center !important;
    margin-left: auto !important;
    width: 42px !important;
    height: 42px !important;
    padding: 0 !important;
    font-size: 20px !important;
  }
}

@media (max-width: 520px) {
  html body .header .container.nav { width: calc(100% - 22px) !important; }
  html body .header .logo {
    width: 170px !important;
    flex-basis: 170px !important;
  }
  html body .header .logo img {
    width: 170px !important;
    max-width: 170px !important;
  }
}
