/* Shared NH DISTRIB header, based on the Fontaines page. */
.nh-site-nav.site-nav.has-cart {
  position: sticky;
  top: 0;
  z-index: 1000;
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  justify-content: space-between;
  flex-wrap: nowrap;
  width: 100%;
  max-width: none;
  height: 78px;
  min-height: 78px;
  margin: 0;
  padding: 0 max(25px, calc((100% - 1350px) / 2)) !important;
  gap: 18px;
  background: rgba(255, 255, 255, .97);
  border: 0;
  box-shadow: 0 8px 28px rgba(9, 35, 45, .05);
  backdrop-filter: blur(18px);
  color: #09232d;
  font-family: Manrope, sans-serif;
  line-height: 1.4;
  overflow: visible;
}
.nh-site-nav.site-nav *, .nh-site-nav.site-nav *::before, .nh-site-nav.site-nav *::after { box-sizing: border-box; }
.nh-site-nav.site-nav * { font-family: inherit; }
.nh-site-nav.site-nav a, .nh-site-nav.site-nav button { font-family: inherit; text-transform: none; letter-spacing: normal; text-decoration: none; margin: 0; cursor: pointer; }
.nh-site-nav.site-nav .brand { display: flex; flex: 0 0 auto; align-items: center; gap: 10px; padding: 0; min-height: 0; max-width: none; color: #0f172a; font-size: 24px; font-weight: 800; letter-spacing: -1px; line-height: 1; white-space: nowrap; }
.nh-site-nav.site-nav .brand span { display: grid; place-items: center; flex: 0 0 42px; width: 42px; height: 42px; border-radius: 12px; background: #009688; color: #fff; font-size: 18px; font-weight: 800; letter-spacing: 0; }
.nh-site-nav.site-nav .nav-menu { position: static !important; display: flex !important; flex: 0 1 auto; flex-direction: row !important; align-items: center !important; flex-wrap: nowrap; width: auto !important; min-width: 0; margin: 0 !important; padding: 0 !important; gap: 8px !important; background: transparent; border: 0; box-shadow: none; }
.nh-site-nav.site-nav .nav-menu a { display: inline-flex; flex: 0 0 auto; align-items: center; justify-content: center; width: auto; min-height: 42px; padding: 9px 8px; border: 0; border-radius: 12px; color: #64748b; font-size: 12px; font-weight: 700; line-height: 1.4; white-space: nowrap; background: transparent; }
.nh-site-nav.site-nav .nav-menu a:hover, .nh-site-nav.site-nav .nav-menu a.active, .nh-site-nav.site-nav .nav-menu a[aria-current="page"] { background: #eef7f5; color: #006f65; }
.nh-site-nav.site-nav .global-search-trigger { position: static !important; display: inline-flex !important; flex: 0 0 auto; align-items: center; justify-content: center; gap: 9px; width: auto !important; height: 44px !important; min-height: 44px !important; padding: 0 12px !important; border: 1px solid #dce6e8; border-radius: 12px !important; background: #f8fafb !important; color: #09232d !important; font-size: 12px; font-weight: 700; line-height: 1; box-shadow: none; }
.nh-site-nav.site-nav .global-search-trigger span { display: inline !important; }
.nh-site-nav.site-nav .global-search-trigger:hover { background: #eef7f5 !important; border-color: #b8d8d2; }
.nh-site-nav.site-nav .cart-nav { position: relative !important; top: auto !important; right: auto !important; display: inline-flex !important; flex: 0 0 44px; align-items: center; justify-content: center; width: 44px; height: 44px; padding: 0; border: 0; border-radius: 12px; background: #09232d; color: #fff; font-size: 16px; line-height: 1; box-shadow: none; }
.nh-site-nav.site-nav .cart-nav:hover { background: #16404b; }
.nh-site-nav.site-nav .cart-nav [data-cart-count] { position: absolute; right: -5px; top: -6px; display: grid; place-items: center; min-width: 20px; height: 20px; padding: 0 3px; border: 2px solid #fff; border-radius: 999px; background: #008d7e; color: #fff; font-size: 10px; font-weight: 800; line-height: 1; }
.nh-site-nav.site-nav .nav-toggle { position: static !important; display: none !important; flex: 0 0 40px; width: 40px; height: 40px; padding: 0; border: 1px solid #dce6e8; border-radius: 12px; background: #f8fafb; color: #09232d; }
.nh-site-nav.site-nav .nh-nav-icon { display: block; width: 18px; height: 18px; flex: 0 0 18px; }
.nh-site-nav.site-nav .nav-toggle .nh-nav-icon { width: 20px; height: 20px; }
.nh-site-nav.site-nav a:focus-visible, .nh-site-nav.site-nav button:focus-visible { outline: 3px solid #00a996; outline-offset: 4px; }
.nh-account-logout { display: inline-flex; align-items: center; gap: 8px; margin: 12px 0 0; padding: 9px 12px; border: 1px solid #dce6e8; border-radius: 10px; background: #fff; color: #09232d; font: inherit; font-size: 12px; font-weight: 700; cursor: pointer; }
.nh-account-logout:hover { background: #eef7f5; }
body.nh-auth-header .auth-page, body.nh-confirmation-header .confirmation-page { min-height: calc(100vh - 78px); }
@media (max-width: 1250px) and (min-width: 1121px) {
  .nh-site-nav.site-nav.has-cart { gap: 12px; padding-inline: 24px !important; }
  .nh-site-nav.site-nav .brand { font-size: 20px; }
  .nh-site-nav.site-nav .nav-menu { gap: 4px !important; }
  .nh-site-nav.site-nav .nav-menu a { font-size: 11px; padding-inline: 6px; }
  .nh-site-nav.site-nav .global-search-trigger { width: 44px !important; padding: 0 !important; }
  .nh-site-nav.site-nav .global-search-trigger span { display: none !important; }
}
@media (max-width: 1120px) {
  .nh-site-nav.site-nav.has-cart { padding: 0 20px !important; gap: 12px; }
  .nh-site-nav.site-nav .brand { margin-right: auto; font-size: 22px; }
  .nh-site-nav.site-nav .nav-toggle { display: grid !important; place-items: center; order: 4; }
  .nh-site-nav.site-nav .global-search-trigger { order: 2; width: 40px !important; height: 40px !important; min-height: 40px !important; padding: 0 !important; }
  .nh-site-nav.site-nav .global-search-trigger span { display: none !important; }
  .nh-site-nav.site-nav .cart-nav { order: 3; flex-basis: 40px; width: 40px; height: 40px; }
  .nh-site-nav.site-nav .nav-menu { position: absolute !important; top: 100%; left: 0; right: 0; display: none !important; flex-direction: column !important; align-items: stretch !important; width: 100% !important; max-height: calc(100dvh - 78px); margin: 0 !important; padding: 14px 20px 20px !important; gap: 4px !important; overflow-y: auto; overscroll-behavior: contain; border-bottom: 1px solid #dce6e8; background: #fff; box-shadow: 0 12px 18px rgba(9, 35, 45, .07); }
  .nh-site-nav.site-nav .nav-menu.open { display: flex !important; }
  .nh-site-nav.site-nav .nav-menu a { justify-content: flex-start; width: 100%; min-height: 44px; padding: 12px; font-size: 13px; }
}
@media (max-width: 480px) {
  .nh-site-nav.site-nav.has-cart { padding-inline: 16px !important; gap: 9px; }
  .nh-site-nav.site-nav .brand { gap: 8px; font-size: 20px; }
  .nh-site-nav.site-nav .brand span { flex-basis: 35px; width: 35px; height: 35px; font-size: 14px; border-radius: 10px; }
  .nh-site-nav.site-nav .nav-toggle, .nh-site-nav.site-nav .cart-nav { flex-basis: 37px; width: 37px; height: 37px; }
  .nh-site-nav.site-nav .global-search-trigger { width: 37px !important; height: 37px !important; min-height: 37px !important; }
}
@media (max-width: 350px) {
  .nh-site-nav.site-nav.has-cart { padding-inline: 12px !important; gap: 7px; }
  .nh-site-nav.site-nav .brand { gap: 6px; font-size: 17px; }
}
