/* Shop Mattey Phase 4: premium navigation experience */
:root{
  --sm-nav-bottom-height:76px;
  --sm-nav-safe-bottom:env(safe-area-inset-bottom,0px);
  --sm-nav-whatsapp-gap:18px;
}

.sm-header{
  transition:transform .22s ease,box-shadow .22s ease,min-height .22s ease;
  will-change:transform;
}
.sm-header.is-compact{box-shadow:0 12px 30px rgba(17,15,13,.08)}
.sm-header.is-hidden{transform:translateY(-100%)}
.admin-bar .sm-header.is-hidden{transform:translateY(calc(-100% - 32px))}

.sm-announcement-dismiss{
  border:1px solid rgba(255,255,255,.28);
  border-radius:999px;
  background:rgba(255,255,255,.08);
  color:#fff;
  min-height:30px;
  padding:0 12px;
  font-size:.68rem;
  font-weight:800;
  cursor:pointer;
}

.sm-header-main{
  grid-template-columns:150px minmax(360px,1fr) minmax(260px,auto);
}
.sm-header-actions{gap:18px}
.sm-action-link{
  min-height:44px;
  padding:6px 0;
  border-radius:999px;
  transition:color .18s ease,transform .18s ease;
}
.sm-action-link:hover,.sm-action-link:focus-visible{
  color:var(--sm-gold);
  transform:translateY(-1px);
}
.sm-account-link{
  gap:10px;
  padding:6px 10px 6px 6px;
  border:1px solid #eee8df;
}
.sm-account-avatar{
  width:34px;
  height:34px;
  border-radius:50%;
  display:grid;
  place-items:center;
  background:#16130f;
  color:#fff;
  font-size:.78rem;
  font-weight:900;
}
.sm-action-text{
  display:grid;
  gap:1px;
  line-height:1.1;
}
.sm-action-text small{
  color:#7c7368;
  font-size:.62rem;
  font-weight:700;
}
.sm-action-text strong{
  color:var(--sm-black);
  font-size:.78rem;
  font-weight:900;
}

.sm-product-search{z-index:12}
.sm-product-search input[type=search]{
  transition:border-color .18s ease,box-shadow .18s ease,background .18s ease;
}
.sm-product-search input[type=search]:focus{
  box-shadow:0 0 0 4px rgba(188,147,76,.13)!important;
}
.sm-search-panel{
  position:absolute;
  left:12px;
  right:12px;
  top:calc(100% + 8px);
  display:none;
  padding:14px;
  border:1px solid var(--sm-border);
  border-radius:18px;
  background:#fff;
  box-shadow:0 18px 44px rgba(17,15,13,.12);
}
.sm-product-search.is-searching .sm-search-panel{display:block}
.sm-search-panel strong{
  display:block;
  margin-bottom:10px;
  color:#6f5b36;
  font-size:.68rem;
  letter-spacing:.14em;
  text-transform:uppercase;
}
.sm-search-panel div{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
}
.sm-search-panel a{
  display:inline-flex;
  min-height:36px;
  align-items:center;
  border:1px solid #efe8dd;
  border-radius:999px;
  padding:0 12px;
  color:var(--sm-black);
  font-size:.76rem;
  font-weight:800;
}

.sm-navigation-inner{position:relative}
.sm-all-categories{
  min-height:42px;
  padding:0 14px;
  border:1px solid transparent;
  border-radius:999px;
  transition:border-color .18s ease,background .18s ease;
}
.sm-navigation-inner:hover .sm-all-categories,
.sm-navigation-inner:focus-within .sm-all-categories{
  border-color:#eadfce;
  background:#fbf7f0;
}
.sm-menu .menu-item-has-children>a:after{content:"";border:solid currentColor;border-width:0 1.5px 1.5px 0;display:inline-block;width:6px;height:6px;margin-left:8px;transform:rotate(45deg) translateY(-2px)}
.sm-menu a{
  position:relative;
  transition:color .18s ease;
}
.sm-menu>li>a:before{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:9px;
  height:2px;
  border-radius:999px;
  background:var(--sm-gold);
  transform:scaleX(0);
  transform-origin:left center;
  transition:transform .18s ease;
}
.sm-menu>li>a:hover:before,
.sm-menu>li>a:focus-visible:before{transform:scaleX(1)}

.sm-mega-menu{
  position:absolute;
  left:0;
  right:0;
  top:100%;
  display:none;
  padding-top:10px;
  z-index:90;
}
.sm-navigation-inner:hover .sm-mega-menu,
.sm-navigation-inner:focus-within .sm-mega-menu{display:block}
.sm-mega-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:18px;
  padding:22px;
  border:1px solid #eadfce;
  border-radius:0 0 22px 22px;
  background:#fff;
  box-shadow:0 26px 60px rgba(17,15,13,.14);
}
.sm-mega-grid section{
  min-width:0;
  display:grid;
  align-content:start;
  gap:9px;
}
.sm-mega-grid h2{
  margin:0;
  color:var(--sm-black);
  font-family:var(--sm-sans);
  font-size:.92rem;
  line-height:1.2;
}
.sm-mega-grid p{
  margin:0 0 4px;
  color:#776f66;
  font-size:.78rem;
  line-height:1.5;
}
.sm-mega-grid a{
  display:flex;
  min-height:34px;
  align-items:center;
  color:var(--sm-black);
  font-size:.78rem;
  font-weight:800;
}
.sm-mega-promo{
  padding:18px;
  border-radius:18px;
  background:linear-gradient(135deg,#171512 0%,#3b2f20 100%);
  color:#fff;
}
.sm-mega-promo span{
  color:#d6b46f;
  font-size:.64rem;
  font-weight:900;
  letter-spacing:.14em;
  text-transform:uppercase;
}
.sm-mega-promo h2,.sm-mega-promo p,.sm-mega-promo a{color:#fff}
.sm-mega-promo a{
  width:max-content;
  min-height:38px;
  border:1px solid rgba(255,255,255,.32);
  border-radius:999px;
  padding:0 14px;
}

.sm-drawer-account-card{
  display:flex;
  align-items:center;
  gap:12px;
  margin:16px 0;
  padding:14px;
  border:1px solid #efe7db;
  border-radius:18px;
  background:#fbf7ef;
}
.sm-drawer-account-card strong{
  display:block;
  color:var(--sm-black);
  font-size:.9rem;
}
.sm-drawer-account-card small{
  display:block;
  margin-top:3px;
  color:#766d62;
  font-size:.74rem;
  line-height:1.35;
}
.sm-mobile-nav-section{padding:8px 0}
.sm-mobile-nav-section h2{
  margin:0 0 4px;
  color:#9f7c3c;
  font-family:var(--sm-sans);
  font-size:.68rem;
  font-weight:900;
  letter-spacing:.16em;
  text-transform:uppercase;
}
.sm-mobile-menu a{
  min-height:56px;
  gap:12px;
}
.sm-mobile-menu a>span:first-child{
  display:grid;
  min-width:0;
  gap:3px;
}
.sm-mobile-menu strong{
  display:flex;
  align-items:center;
  gap:8px;
  color:var(--sm-black);
  font-size:.96rem;
  line-height:1.18;
}
.sm-mobile-menu small{
  color:#776f66;
  font-size:.74rem;
  font-weight:600;
  line-height:1.28;
}
.sm-mobile-menu em{
  border-radius:999px;
  background:var(--sm-gold);
  color:#fff;
  padding:3px 7px;
  font-size:.56rem;
  font-style:normal;
  font-weight:900;
  letter-spacing:.02em;
}
.sm-menu-flagship a{
  margin:8px 0;
  border:1px solid #c7a45e!important;
  border-radius:18px;
  padding:14px!important;
  background:#16130f;
  color:#fff!important;
}
.sm-menu-flagship strong,.sm-menu-flagship small,.sm-menu-flagship a>span:last-child{color:#fff}
.sm-mobile-menu-compact{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:8px;
  padding-top:8px!important;
}
.sm-mobile-menu-compact li{min-width:0}
.sm-mobile-menu-compact a{
  min-height:48px;
  border:1px solid #eee7dc!important;
  border-radius:14px;
  padding:10px 12px!important;
  font-size:.82rem;
}
.sm-mobile-drawer-actions a:first-child{
  border-color:#16130f;
  background:#16130f;
  color:#fff;
}
.sm-mobile-drawer-actions a:last-child{
  border-color:#25d366;
  background:#25d366;
  color:#111;
}

.sm-mobile-bottom-nav{
  min-height:calc(var(--sm-nav-bottom-height) + var(--sm-nav-safe-bottom));
}
.sm-mobile-bottom-nav a{
  min-width:0;
  min-height:58px;
  justify-content:center;
  gap:4px;
  color:#2b2824;
  transition:color .18s ease,transform .18s ease;
}
.sm-mobile-bottom-nav a.is-active{
  color:#a47a2e;
  transform:translateY(-2px);
}
.sm-mobile-bottom-nav a.is-active .sm-bottom-icon:after{
  content:"";
  position:absolute;
  left:50%;
  bottom:-7px;
  width:18px;
  height:3px;
  border-radius:999px;
  background:currentColor;
  transform:translateX(-50%);
}
.sm-bottom-icon{
  position:relative;
  width:26px;
  height:26px;
  display:grid;
  place-items:center;
}
.sm-bottom-icon svg{
  width:23px;
  height:23px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.sm-bottom-build{
  color:#fff!important;
}
.sm-bottom-build .sm-bottom-icon{
  width:42px;
  height:42px;
  margin-top:-18px;
  border:4px solid #fff;
  border-radius:50%;
  background:#16130f;
  color:#fff;
  box-shadow:0 12px 24px rgba(17,15,13,.2);
}
.sm-bottom-build small{
  color:#16130f;
  font-weight:900;
}
.sm-bottom-count{
  position:absolute;
  right:-8px;
  top:-8px;
}
.sm-whatsapp-fab{
  bottom:calc(var(--sm-nav-bottom-height) + var(--sm-nav-safe-bottom) + var(--sm-nav-whatsapp-gap));
}
.sm-menu-open .sm-whatsapp-fab{display:none}

@media(max-width:1180px){
  .sm-header-main{grid-template-columns:130px minmax(280px,1fr) minmax(230px,auto)}
  .sm-action-text small{display:none}
  .sm-mega-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}

@media(max-width:1023px){
  .sm-header.is-hidden{transform:none}
  .sm-header-main{
    grid-template-columns:48px minmax(0,1fr) auto!important;
    gap:10px!important;
  }
  .sm-menu-toggle{
    min-width:48px!important;
    min-height:48px!important;
    border-radius:50%;
  }
  .sm-menu-toggle:focus-visible{
    outline:2px solid var(--sm-gold);
    outline-offset:2px;
  }
  .sm-header-actions .sm-account-link{display:none!important}
  .sm-header-actions .sm-action-link{
    width:42px!important;
    min-width:42px!important;
    height:48px!important;
  }
  .sm-action-icon-wrap>svg{width:24px!important;height:24px!important}
  .sm-header-mobile-search{position:relative;z-index:20}
  .sm-mobile-drawer-panel{
    width:min(92vw,430px)!important;
    padding:calc(18px + env(safe-area-inset-top,0px)) 18px calc(28px + var(--sm-nav-safe-bottom))!important;
  }
  .sm-mobile-drawer-head{
    position:sticky;
    top:0;
    z-index:2;
    margin:-2px -2px 0;
    background:#fff;
  }
  .sm-drawer-close{
    min-width:44px;
    min-height:44px;
  }
}

@media(max-width:767px){
  body.shopmattey-site{padding-bottom:calc(var(--sm-nav-bottom-height) + var(--sm-nav-safe-bottom) + 12px)!important}
  .sm-announcement-dismiss{display:none}
  .sm-header-main{min-height:72px!important}
  .sm-brand{width:108px!important}
  .sm-header-mobile-search{width:min(100% - 24px,var(--sm-container))!important}
  .sm-search-panel{
    left:0;
    right:0;
    top:calc(100% + 6px);
    border-radius:16px;
  }
  .sm-mobile-bottom-nav{
    grid-template-columns:repeat(6,minmax(0,1fr))!important;
    padding:8px 4px calc(8px + var(--sm-nav-safe-bottom))!important;
    z-index:900!important;
  }
  .sm-mobile-bottom-nav small{font-size:.6rem!important;line-height:1.05}
  .sm-bottom-build small{font-size:.58rem!important}
  .sm-whatsapp-fab{
    right:14px!important;
    bottom:calc(var(--sm-nav-bottom-height) + var(--sm-nav-safe-bottom) + 18px)!important;
  }
  .sm-box-builder-controls{bottom:calc(var(--sm-nav-bottom-height) + var(--sm-nav-safe-bottom) + 4px)!important}
  .sm-mobile-buybar{bottom:calc(var(--sm-nav-bottom-height) + var(--sm-nav-safe-bottom) + 6px)!important}
}

@media(max-width:380px){
  .sm-header-actions{gap:6px!important}
  .sm-header-actions .sm-action-link{width:36px!important;min-width:36px!important}
  .sm-mobile-menu strong{font-size:.9rem}
  .sm-mobile-menu small{font-size:.68rem}
  .sm-mobile-menu-compact{grid-template-columns:1fr}
  .sm-mobile-bottom-nav small{font-size:.56rem!important}
  .sm-bottom-build .sm-bottom-icon{width:38px;height:38px}
}

/* Account login mobile hotfix: keep sign-in task near the first screen. */
@media(max-width:767px){
  .woocommerce-account h1,
  .woocommerce-account .entry-title{
    font-size:34px!important;
    line-height:1.02!important;
    margin:18px 0 14px!important;
  }
  .sm-login-page{
    width:calc(100% - 24px)!important;
    margin:12px auto calc(var(--sm-nav-bottom-height) + var(--sm-nav-safe-bottom) + 28px)!important;
    gap:12px!important;
  }
  .sm-login-intro{
    padding:18px 18px 16px!important;
    border-radius:20px!important;
  }
  .sm-login-intro .sm-account-kicker{
    font-size:.62rem!important;
    letter-spacing:.14em!important;
  }
  .sm-login-intro h1{
    max-width:300px;
    font-size:30px!important;
    line-height:1.04!important;
    margin:8px 0 10px!important;
  }
  .sm-login-intro p{
    margin:0!important;
    font-size:14px!important;
    line-height:1.45!important;
  }
  .sm-login-intro ul{
    margin:12px 0 0!important;
    gap:7px!important;
  }
  .sm-login-intro li{
    font-size:13px!important;
    line-height:1.3!important;
  }
  .sm-login-intro li:nth-child(3){
    display:none;
  }
  .sm-login-card{
    padding:20px 18px!important;
    border-radius:20px!important;
  }
  .sm-login-card form.login{
    margin:16px 0!important;
  }
  .sm-new-customer{
    margin-top:16px!important;
    padding:16px!important;
  }
  .sm-new-customer h3{
    font-size:20px!important;
    line-height:1.15!important;
  }
}

@media(max-width:380px){
  .woocommerce-account h1,
  .woocommerce-account .entry-title{font-size:31px!important}
  .sm-login-intro h1{font-size:27px!important;max-width:270px}
  .sm-login-intro p{font-size:13px!important}
  .sm-login-intro li{font-size:12px!important}
}

/* Wishlist repair: make saving visible and make the public wishlist useful. */
.sm-wishlist-button{
  display:grid!important;
  grid-template-columns:22px auto;
  align-items:center;
  justify-content:center;
  gap:5px;
  width:auto!important;
  min-width:48px;
  height:42px!important;
  padding:0 10px!important;
  border:1px solid rgba(166,34,55,.18)!important;
  background:#fff!important;
  color:#a62237!important;
  box-shadow:0 10px 26px rgba(17,15,13,.16)!important;
}
.sm-wishlist-button svg,
.sm-single-wishlist svg{
  width:21px;
  height:21px;
  fill:none;
  stroke:currentColor;
  stroke-width:2;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.sm-wishlist-button span{
  color:#17140f;
  font-size:.68rem;
  font-weight:900;
  line-height:1;
}
.sm-wishlist-button.is-saved,
.sm-single-wishlist.is-saved{
  background:#a62237!important;
  border-color:#a62237!important;
  color:#fff!important;
}
.sm-wishlist-button.is-saved svg,
.sm-single-wishlist.is-saved svg{fill:currentColor}
.sm-wishlist-button.is-saved span{color:#fff}
.sm-single-wishlist{
  min-height:44px;
  color:#17140f;
}
.sm-public-wishlist{
  padding-bottom:calc(var(--sm-nav-bottom-height) + var(--sm-nav-safe-bottom) + 34px);
}
.sm-wishlist-signin-note{
  margin:22px 0 0;
  color:#746a5f;
  font-size:.9rem;
}
.sm-wishlist-signin-note a{
  color:#17140f;
  font-weight:900;
  text-decoration:underline;
}
.sm-account-product-image span{
  width:100%;
  height:100%;
  display:grid;
  place-items:center;
  color:#9b762e;
  font-weight:900;
}

@media(max-width:767px){
  .products li.product .sm-wishlist-button{
    right:10px!important;
    top:10px!important;
    min-width:50px;
    height:44px!important;
    border-radius:999px!important;
  }
  .products li.product .sm-wishlist-button span{
    display:inline;
    font-size:.62rem;
  }
  .sm-public-wishlist{
    padding-top:34px!important;
  }
  .sm-public-wishlist>h1{
    font-size:38px!important;
    line-height:1.05!important;
  }
}

@media(prefers-reduced-motion:reduce){
  .sm-header,
  .sm-action-link,
  .sm-menu>li>a:before,
  .sm-mobile-bottom-nav a{transition:none!important}
  .sm-mobile-drawer-panel{animation:none!important}
}
