/* v8.42 — canonical storefront header shared by home and all internal pages */
.site-header,
body.home-premium .site-header{
  position:sticky;top:0;z-index:1000;
  background:rgba(255,255,255,.96)!important;
  border:0!important;border-bottom:1px solid #eee9e4!important;
  box-shadow:none!important;
  -webkit-backdrop-filter:saturate(160%) blur(16px);
  backdrop-filter:saturate(160%) blur(16px);
}
.site-header.is-scrolled,
body.home-premium .site-header.is-scrolled{background:rgba(255,255,255,.985)!important;box-shadow:0 8px 28px rgba(43,31,22,.055)!important}

.header-inner,
body.home-premium .header-inner{
  width:min(1440px,calc(100% - 64px))!important;
  height:84px!important;min-height:84px!important;margin:0 auto!important;padding:0!important;
  display:grid!important;grid-template-columns:112px minmax(480px,1fr) auto!important;
  align-items:center!important;gap:24px!important;
}
.brand,body.home-premium .brand{width:76px!important;height:62px!important;display:flex!important;align-items:center!important;justify-content:flex-start!important}
.brand img,body.home-premium .brand img{width:100%!important;height:100%!important;object-fit:contain!important}
.main-nav,body.home-premium .main-nav{display:flex!important;align-items:center!important;justify-content:center!important;gap:30px!important;min-width:0!important;white-space:nowrap!important}
.main-nav a,body.home-premium .main-nav a{
  position:relative!important;padding:12px 0!important;color:#302e2b!important;
  font-size:12px!important;font-weight:600!important;line-height:1!important;letter-spacing:.015em!important;text-transform:none!important;
}
.main-nav a::after,body.home-premium .main-nav a::after{
  content:""!important;position:absolute!important;left:50%!important;right:auto!important;bottom:2px!important;
  width:0!important;height:1.5px!important;border-radius:99px!important;background:#ff7b24!important;
  transform:translateX(-50%)!important;transition:width .2s ease!important;
}
.main-nav a:hover::after,.main-nav a.is-active::after,
body.home-premium .main-nav a:hover::after,body.home-premium .main-nav a.is-active::after{width:42px!important;left:50%!important;right:auto!important}

.header-actions,body.home-premium .header-actions{display:flex!important;align-items:center!important;justify-content:flex-end!important;gap:8px!important}
/* Desktop must have one search control only: the integrated form button. */
.mobile-search-toggle{display:none!important}
.product-search,body.home-premium .product-search{
  width:250px!important;height:44px!important;margin:0!important;
  display:flex!important;align-items:center!important;overflow:hidden!important;
  border:1px solid #e7e2dd!important;border-radius:999px!important;background:#fbfaf8!important;
  box-shadow:none!important;
}
.product-search:focus-within,body.home-premium .product-search:focus-within{background:#fff!important;border-color:#d7d0ca!important;box-shadow:0 0 0 4px rgba(255,123,36,.08)!important}
.product-search input,body.home-premium .product-search input{
  flex:1!important;width:auto!important;min-width:0!important;height:100%!important;padding:0 14px!important;
  border:0!important;outline:0!important;background:transparent!important;color:#1d1d1f!important;font-size:11px!important;
}
.product-search button,body.home-premium .product-search button{
  flex:0 0 44px!important;width:44px!important;height:44px!important;padding:0!important;border:0!important;
  display:grid!important;place-items:center!important;background:#191919!important;color:#fff!important;cursor:pointer!important;
}
.product-search button svg,body.home-premium .product-search button svg{width:17px!important;height:17px!important;fill:none!important;stroke:currentColor!important;stroke-width:1.7!important}
.header-icon,body.home-premium .header-icon{
  position:relative!important;width:44px!important;height:44px!important;min-width:44px!important;min-height:44px!important;
  display:grid!important;place-items:center!important;border:1px solid #e7e2dd!important;border-radius:50%!important;background:#fff!important;color:#1d1d1f!important;
  box-shadow:none!important;transform:none!important;
}
.header-icon:hover,body.home-premium .header-icon:hover{background:#fbfaf8!important;box-shadow:none!important;transform:none!important}
.header-icon svg,body.home-premium .header-icon svg{width:20px!important;height:20px!important;fill:none!important;stroke:currentColor!important;stroke-width:1.65!important;stroke-linecap:round!important;stroke-linejoin:round!important}
.cart-count,body.home-premium .cart-count{position:absolute!important;right:-1px!important;top:-2px!important;min-width:16px!important;height:16px!important;padding:0 4px!important;border-radius:99px!important;display:grid!important;place-items:center!important;background:#ef5d2a!important;color:#fff!important;font-size:9px!important;font-weight:700!important}

@media(max-width:1080px){
  .header-inner,body.home-premium .header-inner{width:calc(100% - 32px)!important;grid-template-columns:94px minmax(0,1fr) auto!important;gap:16px!important}
  .main-nav,body.home-premium .main-nav{gap:18px!important}
  .main-nav a,body.home-premium .main-nav a{font-size:11px!important}
  .product-search,body.home-premium .product-search{width:210px!important}
}

@media(max-width:860px){
  .header-inner,body.home-premium .header-inner{width:calc(100% - 24px)!important;height:68px!important;min-height:68px!important;grid-template-columns:74px 1fr auto!important;gap:10px!important}
  .brand,body.home-premium .brand{width:58px!important;height:48px!important}
  .main-nav,body.home-premium .main-nav{display:none!important}
  .product-search,body.home-premium .product-search{display:none!important}
  .mobile-search-toggle{display:grid!important}
  .menu-toggle{display:grid!important;width:44px!important;height:44px!important;place-items:center!important;border:1px solid #e7e2dd!important;border-radius:50%!important;background:#fff!important}
  .header-actions,body.home-premium .header-actions{gap:6px!important}
  .mobile-header-search{padding:0 12px 12px;background:#fff;border-bottom:1px solid #eee9e4}
  .mobile-header-search form{height:44px;display:flex;overflow:hidden;border:1px solid #e7e2dd;border-radius:999px;background:#fbfaf8}
  .mobile-header-search input{flex:1;min-width:0;border:0;outline:0;padding:0 14px;background:transparent;font-size:12px}
  .mobile-header-search button{width:46px;border:0;background:#191919;color:#fff;display:grid;place-items:center}
  .mobile-header-search button svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.7}
}

/* v8.43 — definitive search visibility fix.
   This rule intentionally comes after the generic .header-icon display rule so
   the mobile-only search trigger can never reappear on desktop. */
.header-actions .header-icon.mobile-search-toggle,
body.home-premium .header-actions .header-icon.mobile-search-toggle{
  display:none!important;
}
@media(max-width:860px){
  .header-actions .header-icon.mobile-search-toggle,
  body.home-premium .header-actions .header-icon.mobile-search-toggle{
    display:grid!important;
  }
}

/* v9.04 — mobile hamburger + right-side navigation drawer */
.menu-toggle svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round}
.mobile-nav-overlay{position:fixed;inset:0;z-index:1198;background:rgba(15,18,22,.42);opacity:0;transition:opacity .26s ease;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}
.mobile-nav-overlay.is-open{opacity:1}
.mobile-nav-head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:4px 0 18px;border-bottom:1px solid #eee9e4}
.mobile-nav-head>div{display:grid;gap:3px}.mobile-nav-head span{font-size:10px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:#ef642b}.mobile-nav-head strong{font-size:22px;letter-spacing:-.02em;color:#1d1d1f}
.mobile-nav-close{width:42px;height:42px;border:1px solid #e7e2dd;border-radius:50%;background:#fff;color:#1d1d1f;display:grid;place-items:center;cursor:pointer}.mobile-nav-close svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round}
body.mobile-menu-open{overflow:hidden}
@media(max-width:860px){
  .site-header .mobile-nav{position:fixed!important;top:0!important;right:0!important;bottom:0!important;left:auto!important;z-index:1199!important;width:min(390px,calc(100vw - 34px))!important;height:100dvh!important;padding:22px 20px 26px!important;border:0!important;border-left:1px solid #eee9e4!important;border-radius:24px 0 0 24px!important;background:#fff!important;box-shadow:-22px 0 60px rgba(22,26,31,.18)!important;overflow-y:auto!important;overscroll-behavior:contain!important;transform:translateX(105%)!important;transition:transform .28s cubic-bezier(.2,.7,.2,1)!important}
  .site-header .mobile-nav.is-open{transform:translateX(0)!important}
  .site-header .mobile-nav[hidden],.mobile-nav-overlay[hidden]{display:none!important}
  .mobile-nav .mobile-search{margin:18px 0 8px;height:46px;display:flex;overflow:hidden;border:1px solid #e7e2dd;border-radius:999px;background:#fbfaf8}
  .mobile-nav .mobile-search input{flex:1;min-width:0;border:0;outline:0;padding:0 14px;background:transparent;font-size:13px}
  .mobile-nav .mobile-search button{width:46px;border:0;background:#191919;color:#fff;display:grid;place-items:center}.mobile-nav .mobile-search button svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.7}
  .site-header .mobile-nav>a{display:flex!important;align-items:center!important;min-height:50px!important;padding:0 4px!important;border-bottom:1px solid #f0ece8!important;color:#262421!important;font-size:14px!important;font-weight:700!important;text-transform:none!important}
  .mobile-account-actions{display:grid;gap:8px;margin-top:18px;padding-top:18px;border-top:1px solid #eee9e4}.mobile-account-actions a{display:flex!important;align-items:center!important;gap:12px!important;min-height:48px!important;padding:0 12px!important;border:1px solid #eee9e4!important;border-radius:14px!important;background:#fbfaf8!important;color:#222!important;text-transform:none!important}.mobile-account-actions svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.7}
  .menu-toggle{color:#1d1d1f!important;cursor:pointer!important}
}
@media(max-width:520px){.site-header .mobile-nav{width:min(360px,calc(100vw - 16px))!important;padding:20px 16px 24px!important;border-radius:20px 0 0 20px!important}}
@media(prefers-reduced-motion:reduce){.mobile-nav-overlay,.site-header .mobile-nav{transition:none!important}}

/* v9.05 — decisive mobile menu trigger visibility/touch target */
@media(max-width:860px){
  .site-header .menu-toggle{
    display:grid!important;
    position:relative!important;
    z-index:1201!important;
    flex:0 0 44px!important;
    width:44px!important;
    height:44px!important;
    padding:0!important;
    place-items:center!important;
    pointer-events:auto!important;
    touch-action:manipulation!important;
  }
  .site-header .menu-toggle svg{display:block!important;width:22px!important;height:22px!important;opacity:1!important;visibility:visible!important;stroke:#1d1d1f!important}
}

/* v9.07 — mobile header: search lives only in menu drawer */
@media(max-width:860px){
  .header-actions .mobile-search-toggle,.mobile-header-search{display:none!important}
  .header-actions,body.home-premium .header-actions{justify-self:end!important}
}

/* v9.09 — mobile drawer close control alignment */
@media(max-width:860px){
  body.mobile-menu-open .site-header .menu-toggle{
    opacity:0!important;
    visibility:hidden!important;
    pointer-events:none!important;
  }
  .site-header .mobile-nav{z-index:1202!important}
  .mobile-nav-head{position:relative!important;align-items:center!important;padding:6px 0 18px!important}
  .mobile-nav-close{
    position:relative!important;
    top:auto!important;
    right:auto!important;
    z-index:3!important;
    flex:0 0 40px!important;
    width:40px!important;
    height:40px!important;
    margin:0!important;
    border:1px solid #e7e2dd!important;
    border-radius:50%!important;
    background:#fff!important;
    box-shadow:none!important;
  }
  .mobile-nav-close svg{width:17px!important;height:17px!important;display:block!important}
}
