/* ===== NHC Storefront 1.9.3 — header ONLY (greet-bar, account menu, search, badge) ===== */
/* Single source for header chrome. DELETE conflicting greets in .hdr-actions. */

/* Actions row: flex icons only — never absolute-over-brand; no greeting here */
.hdr-actions,
.nhc-hdr-actions,
header .header-actions,
.elementor-location-header .hdr-actions{
  display:flex!important;
  align-items:center!important;
  gap:10px!important;
  position:relative!important;
  flex-wrap:nowrap!important;
}
/* Legacy greeting chip path — kill if anything still injects into actions */
.hdr-actions .nhc-header-greeting,
.nhc-hdr-actions .nhc-header-greeting,
.nhc-acct-firstname{display:none!important}

/* Brand: .hdr .brand-txt (custom HTML pages) + Elementor titles */
.hdr .brand,
.nhc-cart .brand,
header .brand{
  display:flex!important;
  align-items:center!important;
  gap:10px!important;
  flex:1 1 auto!important;
  min-width:0!important;
}
.hdr .brand-txt,
.nhc-cart .brand-txt{
  min-width:0!important;
  max-width:100%!important;
  overflow:hidden!important;
}
.hdr .brand-txt strong,
.nhc-cart .brand-txt strong,
.hdr .brand-txt em,
.nhc-cart .brand-txt em{
  display:block!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  max-width:100%!important;
}
@media (max-width:767px){
  .hdr .brand img,
  .nhc-cart .brand img{width:40px!important;height:40px!important}
  .hdr .brand-txt strong,
  .nhc-cart .brand-txt strong{font-size:13px!important;letter-spacing:-.01em!important}
  .hdr .brand-txt em,
  .nhc-cart .brand-txt em{font-size:10px!important}
}

/* Brand: keep logo title / tagline on one line */
.elementor-location-header .elementor-heading-title,
.elementor-location-header .site-title,
.elementor-location-header .elementor-widget-theme-site-title .elementor-heading-title,
header .site-title,
header .site-description{
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  max-width:100%;
}

/* Greeting bar BELOW header — left-aligned, single line "Welcome back, First" */
.nhc-greet-bar{
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  box-sizing:border-box!important;
  margin:0!important;
  padding:6px max(16px, env(safe-area-inset-left, 0px)) 8px max(16px, env(safe-area-inset-right, 0px))!important;
  padding-left:max(16px, env(safe-area-inset-left, 0px))!important;
  padding-right:max(16px, env(safe-area-inset-right, 0px))!important;
  text-align:left!important;
  font:600 13px/1.3 Figtree,system-ui,sans-serif!important;
  color:#24382e!important;
  background:transparent!important;
  border:0!important;
  position:static!important;
  pointer-events:none;
}
/* Logged-out: no node (JS removes) — also collapse empty leftovers */
.nhc-greet-bar:empty{display:none!important;margin:0!important;padding:0!important;height:0!important}

/* Account dropdown — ONE copy; 44px rows + dividers; NO gold outline */
.hdr-actions,
.nhc-hdr-actions,
a.icon-btn.nhc-acct-logged-in,
a.nhc-acct-logged-in{
  position:relative!important;
}
a.nhc-acct-logged-in,
a.icon-btn.nhc-acct-logged-in{
  outline:none!important;
  box-shadow:none!important;
}
.nhc-acct-menu{
  display:none!important;
  position:absolute!important;
  right:0!important;
  top:calc(100% + 8px)!important;
  min-width:200px!important;
  z-index:1200!important;
  background:#fff!important;
  border:1px solid #ddd4c4!important;
  border-radius:12px!important;
  box-shadow:0 12px 28px rgba(0,0,0,.14)!important;
  padding:0!important;
  flex-direction:column!important;
  gap:0!important;
  overflow:hidden!important;
}
.nhc-acct-menu.open{display:flex!important}
.nhc-acct-menu a{
  display:flex!important;
  align-items:center!important;
  min-height:44px!important;
  padding:10px 16px!important;
  border-radius:0!important;
  color:#24382e!important;
  text-decoration:none!important;
  font:700 13px Figtree,sans-serif!important;
  border:0!important;
  border-bottom:1px solid #eee6d7!important;
  background:transparent!important;
  outline:0!important;
  box-shadow:none!important;
  box-sizing:border-box!important;
}
.nhc-acct-menu a:last-child{border-bottom:0!important}
.nhc-acct-menu a:hover{background:#f4efe4!important}

/* Hide Woo account nav if leaked into header */
.elementor-location-header .woocommerce-MyAccount-navigation,
.elementor-location-header .woocommerce-MyAccount-content,
header .woocommerce-MyAccount-navigation,
header .woocommerce-MyAccount-content{
  display:none!important;
}

/* Search: one container, shared radius, page side padding */
.elementor-location-header .elementor-search-form,
.elementor-location-header .elementor-search-form__container,
header .searchform,
header form[role="search"],
header form.search-form{
  position:relative!important;
  display:flex!important;
  align-items:stretch!important;
  width:100%!important;
  max-width:100%!important;
  box-sizing:border-box!important;
  margin-left:auto!important;
  margin-right:auto!important;
  padding-left:0!important;
  padding-right:0!important;
  border-radius:14px!important;
  overflow:hidden!important;
  background:#fff!important;
  border:1px solid #d7cdb8!important;
}
.elementor-location-header .elementor-search-form__input,
.hdr-actions input[type="search"],
header input[type="search"],
.elementor-location-header input[type="search"],
header form[role="search"] input[type="search"],
header .searchform input[type="search"],
.elementor-location-header .elementor-search-form__container input{
  flex:1 1 auto!important;
  width:100%!important;
  min-width:0!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  outline:0!important;
  background:transparent!important;
  font:600 14px Figtree,system-ui,sans-serif!important;
  color:#24382e!important;
  padding:12px 14px!important;
  box-sizing:border-box!important;
}
.elementor-location-header .elementor-search-form__submit,
header form[role="search"] button,
header .searchform button{
  border:0!important;
  border-radius:0!important;
  background:#f4efe4!important;
  color:#24382e!important;
  min-width:44px!important;
  min-height:44px!important;
  flex:0 0 auto!important;
}
/* Match page side padding for search row wrappers */
.elementor-location-header .elementor-widget-search-form,
.elementor-location-header .elementor-widget-search,
body .elementor-location-header .e-con > .elementor-widget-search-form{
  padding-left:max(16px, env(safe-area-inset-left, 0px))!important;
  padding-right:max(16px, env(safe-area-inset-right, 0px))!important;
  box-sizing:border-box!important;
}

/* Cart badge: top-right of icon, white ring, INSIDE bounds */
.icon-btn,
a.icon-btn[href*="/cart/"],
.hdr-actions a[href*="/cart/"]{
  position:relative!important;
  overflow:visible!important;
}
.icon-btn .cart-count,
.icon-btn [data-nhc-cart-count],
a.icon-btn .cart-count,
a[href*="/cart/"] .cart-count,
a[href*="/cart/"] [data-nhc-cart-count],
.hdr-actions [data-nhc-cart-count]{
  position:absolute!important;
  top:2px!important;
  right:2px!important;
  left:auto!important;
  bottom:auto!important;
  min-width:16px!important;
  height:16px!important;
  padding:0 4px!important;
  border-radius:999px!important;
  background:#c6a048!important;
  color:#24382e!important;
  font:800 9px/16px Figtree,system-ui,sans-serif!important;
  display:none;
  align-items:center!important;
  justify-content:center!important;
  box-sizing:border-box!important;
  border:2px solid #fff!important;
  box-shadow:0 0 0 1px rgba(36,56,46,.08)!important;
  z-index:2!important;
  transform:none!important;
}

/* Safe-area bottom padding: cart / checkout / my-account */
body.woocommerce-cart,
body.woocommerce-checkout,
body.woocommerce-account,
body.single-cartflows_step{
  padding-bottom:max(16px, env(safe-area-inset-bottom, 0px))!important;
}


/* Brand name one line on narrow screens — shrink rather than wrap */
@media (max-width:767px){
  .elementor-location-header .elementor-widget-theme-site-logo,
  .elementor-location-header .elementor-widget-theme-site-title,
  .elementor-location-header .elementor-widget-heading{
    max-width:min(58vw,220px)!important;
    min-width:0!important;
  }
  .elementor-location-header .elementor-heading-title,
  .elementor-location-header .site-title,
  .elementor-location-header a.site-title,
  .elementor-location-header .elementor-widget-theme-site-title .elementor-heading-title,
  .elementor-location-header .elementor-widget-theme-site-title a,
  header .custom-logo-link + *,
  .elementor-location-header [class*="logo"] .elementor-heading-title{
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    font-size:clamp(13px,3.6vw,17px)!important;
    line-height:1.2!important;
    max-width:100%!important;
  }
  .elementor-location-header .site-description,
  .elementor-location-header .elementor-heading-title + p,
  .elementor-location-header .elementor-widget-text-editor{
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    font-size:11px!important;
    max-width:100%!important;
  }
}
