/* StoneMan V3.6.48 — mobile-first ordering refinements.  Presentation only. */

.sm-mobile-category-sticky,
.sm-mobile-cart-action {
  display: none;
}

/* Extra catalogue spec line: intentionally short and visually secondary. */
body.stoneman-site:not(.single-product) .sm-card-pack-spec {
  margin: 0 12px 5px !important;
  color: #b9ae9d;
  font-size: 11px;
  line-height: 1.45;
  overflow-wrap: anywhere;
}
body.stoneman-site:not(.single-product) .sm-product-card .sm-card-pack-spec {
  margin-left: 0 !important;
  margin-right: 0 !important;
}
body.stoneman-site:not(.single-product) .sm-product-card .sm-product-body > h3 { order: 1; }
body.stoneman-site:not(.single-product) .sm-product-card .sm-product-body > .sm-card-pack-spec { order: 2; }
body.stoneman-site:not(.single-product) .sm-product-card .sm-product-body > .sm-price { order: 3; }
body.stoneman-site:not(.single-product) .sm-product-card .sm-product-body > .sm-product-category { order: 4; }
body.stoneman-site:not(.single-product) .sm-product-card .sm-product-body > :is(.sm-buy-row, .sm-view-product) { order: 5; }
body.stoneman-site:not(.single-product) .sm-product-card .sm-product-body > .sm-add-feedback { order: 6; }

/* Catalogue quantity stepper.  Keeps the original number field and POST semantics. */
body.stoneman-site:not(.single-product):not(.woocommerce-cart):not(.woocommerce-checkout) .sm-main :is(li.product, .sm-product-card) .sm-buy-row {
  grid-template-columns: 96px minmax(0, 1fr) !important;
}
.sm-card-qty {
  display: grid;
  grid-template-columns: 30px minmax(0, 1fr) 30px;
  min-width: 0;
  overflow: hidden;
  border: 1px solid #514534;
  border-radius: 5px;
  background: #0d0b09;
}
.sm-card-qty > label {
  display: block;
  min-width: 0;
  margin: 0 !important;
  padding: 0 !important;
}
body.stoneman-site .sm-card-qty input[type="number"] {
  width: 100% !important;
  min-width: 0 !important;
  height: 42px !important;
  min-height: 42px !important;
  margin: 0 !important;
  padding: 0 2px !important;
  border: 0 !important;
  border-left: 1px solid #3d352a !important;
  border-right: 1px solid #3d352a !important;
  border-radius: 0 !important;
  background: #0b0a08 !important;
  color: #fff !important;
  text-align: center;
  appearance: textfield;
  -moz-appearance: textfield;
}
.sm-card-qty input[type="number"]::-webkit-inner-spin-button,
.sm-card-qty input[type="number"]::-webkit-outer-spin-button { appearance: none; margin: 0; }
body.stoneman-site .sm-card-qty-step {
  width: 30px !important;
  min-width: 30px !important;
  height: 42px !important;
  min-height: 42px !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: #17130e !important;
  color: #ead6ad !important;
  font-size: 18px !important;
  font-weight: 900 !important;
  line-height: 1 !important;
  cursor: pointer;
}
body.stoneman-site .sm-card-qty-step:active { background: #2a2115 !important; }

/* SEO content remains visible/indexable, but after the product list it can be calmer. */
.sm-category-seo { margin-top: 38px; }

@media (max-width: 760px) {
  /* Mobile header: keep ordering actions, remove the 34px promotional strip from the shopping viewport. */
  .sm-topbar { display: none !important; }
  .sm-header { height: 56px !important; }
  .sm-header-inner { width: calc(100% - 20px) !important; gap: 4px !important; }
  .sm-brand { gap: 6px !important; }
  .sm-brand-mark { width: 32px !important; height: 32px !important; flex-basis: 32px !important; }
  .sm-brand-wordmark > img { height: 30px !important; max-width: 70px !important; }
  .sm-header-search { flex-basis: 38px !important; min-width: 38px !important; width: 38px !important; }
  .sm-header-search .dgwt-wcas-search-wrapp,
  .sm-header-search .dgwt-wcas-search-icon { min-width: 38px !important; width: 38px !important; height: 38px !important; }
  .sm-menu-button { min-width: 38px !important; min-height: 38px !important; font-size: 20px !important; }
  .sm-cart-button { min-height: 38px !important; padding: 5px 7px !important; gap: 5px !important; }
  .sm-cart-count { min-width: 20px; height: 20px; }
  .sm-primary-nav { --sm-mobile-nav-top: 56px; top: 56px !important; }
  .admin-bar .sm-header { top: 46px !important; }
  .admin-bar .sm-primary-nav { top: 102px !important; }

  /* Shop starts with search + compact category chips instead of tall catalogue cards. */
  .sm-woo-shell { padding-top: 12px !important; }
  .sm-shop-navigation {
    width: calc(100% + 30px) !important;
    margin: 0 0 10px -15px !important;
    padding: 14px 15px 10px !important;
    border-left: 0 !important;
    border-right: 0 !important;
    box-shadow: none !important;
  }
  .sm-shop-heading { display: block !important; }
  .sm-shop-heading .sm-eyebrow,
  .sm-shop-heading > div > p:last-child { display: none !important; }
  .sm-shop-heading h1 { margin: 0 0 10px !important; font-size: 25px !important; line-height: 1.2 !important; }
  .sm-shop-quick-link { display: none !important; }
  .sm-shop-search { display: block !important; margin: 0 0 10px !important; }
  .sm-shop-search > label { position: absolute !important; width: 1px !important; height: 1px !important; overflow: hidden !important; clip: rect(0 0 0 0) !important; }
  .sm-shop-search > div { grid-template-columns: minmax(0, 1fr) 62px !important; }
  .sm-shop-search input[type="search"] {
    min-height: 48px !important;
    padding: 10px 12px !important;
    border-radius: 6px 0 0 6px !important;
    font-size: 16px !important;
  }
  .sm-shop-search button { border-radius: 0 6px 6px 0 !important; font-size: 13px !important; }
  .sm-category-grid {
    display: flex !important;
    gap: 7px !important;
    overflow-x: auto !important;
    padding: 1px 0 5px !important;
    scroll-snap-type: x proximity;
    scrollbar-width: none;
  }
  .sm-category-grid::-webkit-scrollbar,
  .sm-subcategory-row::-webkit-scrollbar,
  .sm-mobile-category-sticky::-webkit-scrollbar { display: none; }
  .sm-category-card {
    flex: 0 0 auto !important;
    min-height: 40px !important;
    padding: 8px 13px !important;
    border-radius: 999px !important;
    scroll-snap-align: start;
  }
  .sm-category-card small,
  .sm-category-card span { display: none !important; }
  .sm-category-card strong { margin: 0 !important; font-size: 13px !important; white-space: nowrap; }
  .sm-subcategory-row {
    margin-top: 7px !important;
    padding-top: 8px !important;
    gap: 6px !important;
    border-top-color: #2e281f !important;
    scrollbar-width: none;
  }
  .sm-subcategory-row > span { font-size: 12px !important; }
  .sm-subcategory-row a { padding: 7px 10px !important; border-radius: 999px; font-size: 12px !important; }
  .sm-subcategory-row a small { display: none; }

  /* One-row sticky category access while products scroll. */
  .sm-mobile-category-sticky {
    position: sticky;
    top: 56px;
    z-index: 85;
    width: 100%;
    min-height: 44px;
    margin: 0 0 10px;
    padding: 6px 0;
    display: flex;
    align-items: center;
    gap: 6px;
    overflow-x: auto;
    border-top: 1px solid #31291f;
    border-bottom: 1px solid #4b3b29;
    background: rgba(12, 11, 9, .97);
    backdrop-filter: blur(12px);
    scrollbar-width: none;
  }
  .admin-bar .sm-mobile-category-sticky { top: 102px; }
  .sm-mobile-category-sticky a {
    flex: 0 0 auto;
    min-height: 32px;
    padding: 7px 10px;
    display: inline-flex;
    align-items: center;
    border: 1px solid #493d2e;
    border-radius: 999px;
    color: #e7ddce !important;
    background: #15120e;
    font-size: 12px;
    font-weight: 800;
    white-space: nowrap;
  }
  .sm-mobile-category-sticky a.is-subcategory { border-style: dashed; color: #d6c6a8 !important; }
  .sm-mobile-category-sticky a.is-current { border-color: #e3bb69; background: #e3bb69; color: #171009 !important; }

  /* Two-column catalogue becomes denser but keeps product name/spec/price immediately visible. */
  body.stoneman-site:not(.single-product):not(.woocommerce-cart):not(.woocommerce-checkout) .sm-main ul.products,
  body.stoneman-site:not(.single-product):not(.woocommerce-cart):not(.woocommerce-checkout) .sm-main .sm-product-grid {
    gap: 8px !important;
  }
  body.stoneman-site:not(.single-product):not(.woocommerce-cart):not(.woocommerce-checkout) .sm-main ul.products > li.product,
  body.stoneman-site:not(.single-product):not(.woocommerce-cart):not(.woocommerce-checkout) .sm-main .sm-product-grid > .sm-product-card {
    --sm-catalog-inset: 8px !important;
    --sm-catalog-title-size: 14px !important;
    --sm-catalog-price-size: 16px !important;
  }
  body.stoneman-site:not(.single-product) .sm-card-pack-spec {
    min-height: 16px;
    margin: 0 8px 4px !important;
    color: #a89f91;
    font-size: 10.5px;
    line-height: 1.4;
  }
  body.stoneman-site:not(.single-product) .sm-product-card .sm-card-pack-spec { margin-left: 0 !important; margin-right: 0 !important; }
  body.stoneman-site:not(.single-product) .sm-product-card .sm-product-category { display: none !important; }
  body.stoneman-site:not(.single-product):not(.woocommerce-cart):not(.woocommerce-checkout) .sm-main :is(li.product, .sm-product-card) .sm-buy-row {
    grid-template-columns: 88px minmax(0, 1fr) !important;
    gap: 4px !important;
    padding-top: 6px !important;
  }
  .sm-card-qty { grid-template-columns: 27px minmax(0, 1fr) 27px; }
  body.stoneman-site .sm-card-qty-step { width: 27px !important; min-width: 27px !important; height: 40px !important; min-height: 40px !important; font-size: 17px !important; }
  body.stoneman-site .sm-card-qty input[type="number"] { height: 40px !important; min-height: 40px !important; font-size: 15px !important; }
  body.stoneman-site:not(.single-product):not(.woocommerce-cart):not(.woocommerce-checkout) .sm-main :is(li.product, .sm-product-card) .sm-buy-row > button[type="submit"] {
    height: 40px !important;
    min-height: 40px !important;
    padding: 4px 3px !important;
    font-size: 11px !important;
    font-weight: 900 !important;
  }
  body.stoneman-site:not(.single-product) .sm-add-feedback:not([hidden]) { font-size: 10px !important; }

  /* A persistent checkout shortcut appears only when the cart has items. */
  .sm-mobile-cart-action {
    position: fixed;
    left: 8px;
    right: 8px;
    bottom: 72px;
    z-index: 1095;
    min-height: 52px;
    padding: 7px 8px 7px 12px;
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    gap: 10px;
    border: 1px solid #6a5437;
    border-radius: 10px;
    background: rgba(23, 18, 12, .98);
    box-shadow: 0 8px 30px rgba(0,0,0,.42);
  }
  .sm-mobile-cart-action[hidden] { display: none !important; }
  .sm-mobile-cart-action span { min-width: 0; }
  .sm-mobile-cart-action b,
  .sm-mobile-cart-action small { display: block; line-height: 1.25; }
  .sm-mobile-cart-action b { color: #f2e9db; font-size: 12px; }
  .sm-mobile-cart-action small { margin-top: 2px; color: #d9bb7d; font-size: 11px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
  .sm-mobile-cart-action small .woocommerce-Price-amount { color: inherit !important; }
  .sm-mobile-cart-action > a {
    min-height: 38px;
    padding: 0 13px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 7px;
    background: #e3bb69;
    color: #171009 !important;
    font-size: 12px;
    font-weight: 900;
    white-space: nowrap;
  }
  body.stoneman-site:not(.single-product):not(.woocommerce-cart):not(.woocommerce-checkout) { padding-bottom: 74px; }
  body.stoneman-site:not(.single-product):not(.woocommerce-cart):not(.woocommerce-checkout):has(.sm-mobile-cart-action:not([hidden])) { padding-bottom: 130px; }

  /* Category SEO block now follows products; make it useful without dominating the mobile page. */
  .sm-category-seo {
    grid-template-columns: 1fr !important;
    margin: 30px 0 10px !important;
    padding: 18px 15px !important;
    gap: 14px !important;
    border-radius: 8px !important;
  }
  .sm-category-seo-copy h2 { font-size: 21px !important; }
  .sm-category-seo-copy > p:not(.sm-eyebrow) { font-size: 12px; line-height: 1.7; }
  .sm-category-seo-actions { grid-template-columns: 1fr 1fr !important; gap: 7px !important; margin-top: 12px !important; }
  .sm-category-seo .sm-button { min-height: 38px !important; padding: 8px 7px !important; font-size: 11px !important; }
  .sm-category-related { font-size: 11px; line-height: 1.8; }
  .sm-category-seo-points { gap: 6px !important; }
  .sm-category-seo-points li { padding: 9px 10px 9px 30px !important; font-size: 11px; }
  .sm-category-seo-points li:before { left: 11px !important; top: 8px !important; }
}

@media (max-width: 420px) {
  .sm-cart-label { display: none; }
  .sm-cart-button { border: 0 !important; padding-inline: 4px !important; }
  .sm-brand-wordmark > img { max-width: 64px !important; }
  body.stoneman-site:not(.single-product):not(.woocommerce-cart):not(.woocommerce-checkout) .sm-main :is(li.product, .sm-product-card) .sm-buy-row {
    grid-template-columns: 82px minmax(0, 1fr) !important;
  }
  .sm-card-qty { grid-template-columns: 25px minmax(0, 1fr) 25px; }
  body.stoneman-site .sm-card-qty-step { width: 25px !important; min-width: 25px !important; }
}

/* V3.6.48 audit: readable controls, one mobile category row, safe-area offsets. */
body.stoneman-site .sm-card-qty-step:disabled { opacity:.45; cursor:default; }
body.stoneman-site .sm-card-qty-step:focus-visible,
body.stoneman-site .sm-mobile-cart-action a:focus-visible { outline:2px solid #e3bb69; outline-offset:-3px; }
.sm-category-seo-copy h2 { color:#f3eadc; }
@media (max-width:760px) {
  body.stoneman-site .sm-shop-navigation { width:100% !important; margin:0 0 10px !important; padding:10px 0 !important; }
  body.stoneman-site .sm-shop-navigation .sm-category-grid,
  body.stoneman-site .sm-shop-navigation .sm-subcategory-row { display:none !important; }
  body.stoneman-site .sm-mobile-category-sticky { top:var(--sm-catalog-sticky-top,56px); }
  body.stoneman-site .sm-mobile-category-sticky a { min-height:44px; }
  body.stoneman-site .sm-primary-nav { top:var(--sm-mobile-nav-top,56px) !important; }
  body.stoneman-site.admin-bar .sm-header { top:var(--sm-mobile-admin-offset,46px) !important; }
  body.stoneman-site:not(.single-product):not(.woocommerce-cart):not(.woocommerce-checkout) .sm-main :is(li.product,.sm-product-card) .sm-buy-row {
    grid-template-columns:minmax(0,1fr) !important; gap:6px !important;
  }
  body.stoneman-site .sm-main :is(li.product,.sm-product-card) .sm-card-qty {
    display:grid !important; width:100% !important; grid-template-columns:44px minmax(0,1fr) 44px !important;
  }
  body.stoneman-site .sm-main :is(li.product,.sm-product-card) .sm-buy-row .sm-card-qty-step {
    width:44px !important; min-width:44px !important; height:44px !important; min-height:44px !important;
    padding:0 !important; font-size:18px !important; border:0 !important;
  }
  body.stoneman-site .sm-main :is(li.product,.sm-product-card) .sm-buy-row .sm-card-qty input[type="number"] {
    height:44px !important; min-height:44px !important; padding:0 1px !important; font-size:16px !important;
  }
  body.stoneman-site:not(.single-product):not(.woocommerce-cart):not(.woocommerce-checkout) .sm-main :is(li.product,.sm-product-card) .sm-buy-row > button[type="submit"] {
    width:100% !important; height:44px !important; min-height:44px !important; font-size:13px !important; padding:6px !important; white-space:nowrap;
  }
  body.stoneman-site .sm-card-pack-spec { font-size:12px !important; }
  body.stoneman-site .sm-mobile-cart-action { bottom:calc(72px + env(safe-area-inset-bottom,0px)); }
  body.stoneman-site .sm-mobile-cart-action > a { min-height:44px; }
  body.stoneman-site:not(.single-product):not(.woocommerce-cart):not(.woocommerce-checkout):has(.sm-mobile-cart-action:not([hidden])) { padding-bottom:calc(146px + env(safe-area-inset-bottom,0px)); }
  body.sm-menu-open .sm-mobile-cart-action, body.sm-catalog-keyboard .sm-mobile-cart-action { display:none !important; }
}
/* Match the V3.6.46 ul.products selector specificity; otherwise its 48px column wins. */
body.stoneman-site:not(.single-product):not(.woocommerce-cart):not(.woocommerce-checkout) .sm-main ul.products > li.product .sm-buy-row,
body.stoneman-site:not(.single-product):not(.woocommerce-cart):not(.woocommerce-checkout) .sm-main .sm-product-grid > .sm-product-card .sm-buy-row {
  grid-template-columns:96px minmax(0,1fr) !important;
}
@media (max-width:760px) {
  body.stoneman-site:not(.single-product):not(.woocommerce-cart):not(.woocommerce-checkout) .sm-main ul.products > li.product .sm-buy-row,
  body.stoneman-site:not(.single-product):not(.woocommerce-cart):not(.woocommerce-checkout) .sm-main .sm-product-grid > .sm-product-card .sm-buy-row {
    grid-template-columns:minmax(0,1fr) !important;
  }
}

/* When the text label is hidden on a narrow phone, keep a recognizable cart icon. */
.sm-header-cart-icon { display:none; }
@media(max-width:760px) {
  body.stoneman-site .sm-header-cart-icon { display:inline-flex; align-items:center; justify-content:center; width:20px; height:20px; flex:0 0 20px; }
  body.stoneman-site .sm-header-cart-icon svg { width:20px !important; height:20px !important; }
}
