/* NoirParts — replica of the custom storefront header, for every native
   Odoo-rendered page (checkout, login, signup, account portal, etc).
   Hides Odoo's default header and replaces it with a hand-built copy of
   the same three-row header used on the homepage/product/category pages,
   so the whole site shares one consistent header instead of switching to
   a generic Odoo navbar partway through. Purely visual/structural for the
   header only — no page content, forms, or checkout logic are touched. */

header#top.o_header_standard {
  display: none !important;
}

body.o_id_2463 .np-replica-header {
  display: none !important;
}

.np-replica-header {
  background: #f4f1ea;
  color: #1a1a1a;
  position: sticky;
  top: 0;
  z-index: 1030;
  box-shadow: 0 1px 2px rgba(40,32,20,.08), 0 1px 3px rgba(40,32,20,.10);
  border-bottom: 1px solid rgba(184,137,74,.4);
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
}
.np-replica-header .wrap {
  max-width: 1240px;
  margin: 0 auto;
  padding: 0 20px;
}

.np-replica-header .header-top {
  background: #f4f1ea;
  font-size: 12.5px;
  color: #776d60;
  letter-spacing: .2px;
}
.np-replica-header .header-top-inner {
  display: flex;
  justify-content: space-between;
  align-items: center;
  height: 32px;
}
.np-replica-header .header-top-right a {
  color: #776d60;
  text-decoration: none;
}
.np-replica-header .header-top-right a:hover {
  color: #b8894a;
}

.np-replica-header .header-main-inner {
  display: flex;
  align-items: center;
  gap: 20px;
  height: 68px;
  color: #1a1a1a;
}
.np-replica-header a.logo {
  background: #f2ede3;
  padding: 6px 16px;
  border-radius: 10px;
  display: inline-flex;
  align-items: center;
  white-space: nowrap;
}
.np-replica-header a.logo img {
  max-height: 32px;
  width: auto;
  display: block;
}

.np-replica-header .search-wrap {
  flex: 1;
}
.np-replica-header .search-bar {
  flex: 1;
  display: flex;
  background: #fff;
  border-radius: 8px;
  overflow: hidden;
  height: 42px;
  border: 1px solid #e3ddd0;
  margin: 0;
}
.np-replica-header .search-bar input {
  flex: 1;
  border: 0;
  padding: 0 14px;
  font-size: 14px;
  outline: none;
  color: #1a1a1a;
  background: transparent;
}
.np-replica-header .search-bar button {
  background: #b98c2b;
  border: 0;
  color: #fff;
  width: 48px;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
}
.np-replica-header .search-bar button:hover {
  background: #72561a;
}

.np-replica-header .header-actions {
  display: flex;
  align-items: center;
}
.np-replica-header .cart-link {
  position: relative;
  display: flex;
  align-items: center;
  color: #1a1a1a;
  padding: 8px;
  text-decoration: none;
}
.np-replica-header .cart-count {
  position: absolute;
  top: 0;
  right: 0;
  background: #b8894a;
  color: #221c12;
  font-size: 10.5px;
  font-weight: 700;
  min-width: 16px;
  height: 16px;
  border-radius: 999px;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0 3px;
}

.np-replica-header .cat-nav {
  background: #ffffff;
  border-top: 1px solid #e3ddd0;
  border-bottom: 1px solid #e3ddd0;
}
.np-replica-header .cat-nav-inner {
  display: flex;
  gap: 22px;
  height: 42px;
  align-items: center;
  overflow-x: auto;
  font-size: 13px;
  letter-spacing: .15px;
}
.np-replica-header .cat-nav-inner a {
  color: #776d60;
  white-space: nowrap;
  text-decoration: none;
}
.np-replica-header .cat-nav-inner a:hover {
  color: #1a1a1a;
}
.np-replica-header .cat-nav-inner a.all-link {
  color: #b8894a;
  font-weight: 700;
}

@media (max-width: 900px) {
  .np-replica-header .header-main-inner {
    flex-wrap: wrap;
    height: auto;
    padding: 10px 0;
  }
  .np-replica-header .search-bar {
    order: 3;
    flex: 1 1 100%;
  }
}
