/* Preserve source detail for the admin-selected Kids image. */
.category-cards button[data-cat="Kids"] img{
  filter:none!important;
  mix-blend-mode:normal!important;
  opacity:1!important;
}
.category-cards button[data-cat="Kids"]::after{
  background:linear-gradient(180deg,rgba(255,255,255,0) 0%,rgba(255,255,255,.14) 45%,rgba(255,255,255,.92) 100%)!important;
}

/* Show every category photo exactly as supplied, with no blur or overlay. */
.category-cards button{
  filter:none!important;
  -webkit-filter:none!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
}
.category-cards button img{
  filter:none!important;
  -webkit-filter:none!important;
  opacity:1!important;
  mix-blend-mode:normal!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
}
.category-cards button::before,
.category-cards button::after{
  background:transparent!important;
  filter:none!important;
  -webkit-filter:none!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
}

/* Avoid repaint-heavy card effects while a touch screen is scrolling. */
@media (pointer:coarse){
  #products.product-grid>.product-card{
    content-visibility:visible!important;
    contain:layout!important;
    will-change:auto!important;
    transform:none!important;
  }
  #products.product-grid>.product-card .photo img{
    filter:none!important;
    transform:none!important;
    transition:none!important;
  }
  #products.product-grid>.product-card,
  .category-cards button{backdrop-filter:none!important;-webkit-backdrop-filter:none!important}
}

/* Keep the three hero proof points as one compact, readable line. */
.hero-editorial-proof{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  align-items:center!important;
  gap:clamp(3px,1vw,18px)!important;
  flex-wrap:nowrap!important;
}
.hero-editorial-proof span{
  min-width:0!important;
  white-space:nowrap!important;
  gap:clamp(2px,.55vw,7px)!important;
  font-size:clamp(5.5px,2.15vw,10px)!important;
}
.hero-editorial-proof b{font-size:.9em!important;letter-spacing:.05em!important}

/* The selected pair and its price always begin on the left edge of the hero card. */
.hero-editorial .hero-editorial-product .hero-product-card>strong,
.hero-editorial .hero-editorial-product .hero-product-card>b{
  justify-self:start!important;
  text-align:left!important;
}
.hero-editorial .hero-editorial-product .hero-product-card>b{
  grid-area:hint!important;
  grid-column:1!important;
  white-space:nowrap!important;
}

/* Keep Shop, Support, and Delivery & payment together in one footer row. */
.footer-grid{
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  column-gap:clamp(8px,3vw,42px)!important;
}
.footer-grid>.footer-brand-block{
  grid-column:1/-1!important;
}
.footer-grid>div:not(.footer-brand-block){
  min-width:0!important;
}
.footer-grid>div:not(.footer-brand-block)>b,
.footer-grid>div:not(.footer-brand-block)>a,
.footer-grid>div:not(.footer-brand-block)>span{
  white-space:nowrap!important;
}
@media(max-width:520px){
  .footer-grid{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:20px 8px!important;
  }
  .footer-grid>.footer-brand-block{
    grid-column:1/-1!important;
  }
  .footer-grid>div:not(.footer-brand-block)>b{
    font-size:clamp(8px,2.8vw,11px)!important;
  }
  .footer-grid>div:not(.footer-brand-block)>a,
  .footer-grid>div:not(.footer-brand-block)>span{
    font-size:clamp(7px,2.45vw,10px)!important;
  }
}

/* Keep the NEW DROP headline gold after deployment. */
#new.promo h2 em{
  color:#f3a712!important;
  -webkit-text-fill-color:#f3a712!important;
  opacity:1!important;
}

/* Clear notification and send-state controls for the live conversation. */
#customerChatModal .chat-notify-toggle{
  margin-left:auto!important;
  padding:6px 9px!important;
  border:1px solid rgba(23,32,51,.14)!important;
  border-radius:999px!important;
  background:#fff!important;
  color:#172033!important;
  font-size:10px!important;
  font-weight:800!important;
  white-space:nowrap!important;
}
#customerChatModal .chat-notify-toggle[aria-pressed="true"]{
  border-color:rgba(243,167,18,.55)!important;
  background:#fff6df!important;
  color:#8a5900!important;
}
#customerChatModal .chat-send-status{
  flex:0 0 100%!important;
  min-height:14px!important;
  color:#697386!important;
  font-size:10px!important;
  font-weight:800!important;
  text-align:right!important;
}
#customerChatModal .chat-send-status:empty{display:none!important}
@media(max-width:520px){
  #customerChatModal .chat-notify-toggle{padding:5px 7px!important;font-size:8px!important}
}

/* Final catalog controls: Filter | Featured | Compare on one line at every size. */
.filter-toolbar{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,1fr)!important;
  grid-template-rows:auto auto!important;
  align-items:start!important;
  gap:5px clamp(5px,1.2vw,10px)!important;
}
#mobileFilter{
  grid-column:1!important;
  grid-row:1!important;
  width:100%!important;
  min-width:0!important;
  white-space:nowrap!important;
}
#sortControl{
  grid-column:2!important;
  grid-row:1!important;
  width:100%!important;
  min-width:0!important;
  margin:0!important;
}
#sortControl>span{display:none!important}
#sortControl .custom-sort,
#sortButton{
  width:100%!important;
  min-width:0!important;
}
#sortButton{
  justify-content:center!important;
  white-space:nowrap!important;
}
.filter-toolbar>.toolbar-spacer{display:none!important}
#compareBtn{
  grid-column:3!important;
  grid-row:1!important;
  width:100%!important;
  min-width:0!important;
  white-space:nowrap!important;
}
#filterSummary{
  grid-column:2!important;
  grid-row:2!important;
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  padding:0!important;
  overflow:hidden!important;
  text-align:center!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
  font-size:clamp(8px,2.4vw,11px)!important;
  line-height:1.2!important;
}
@media(max-width:420px){
  .filter-toolbar{padding:7px 5px!important}
  #mobileFilter,#sortButton,#compareBtn{min-height:40px!important;padding-inline:5px!important;font-size:clamp(9px,2.8vw,11px)!important}
  #mobileFilter svg{width:13px!important;height:13px!important}
  #mobileFilter b,#compareBtn b{min-width:17px!important;height:17px!important;font-size:8px!important}
}

/* Permanent Shoe Plug gold accents. */
#new.promo h2 em{
  color:#f3a712!important;
  -webkit-text-fill-color:#f3a712!important;
}
#products .card-actions .quick,
#productModal [data-detail-action="chat"][data-chat-mode="order"],
#customerChatModal [data-chat-action="order"]{
  border-color:#f3a712!important;
  background:#f3a712!important;
  color:#172033!important;
}
#products .card-actions .quick:hover,
#productModal [data-detail-action="chat"][data-chat-mode="order"]:hover,
#customerChatModal [data-chat-action="order"]:hover{
  border-color:#d99516!important;
  background:#e9a00f!important;
  color:#172033!important;
}

/* Give all three footer link columns the same calm vertical rhythm. */
.footer-grid>div:not(.footer-brand-block){
  display:grid!important;
  grid-auto-rows:min-content!important;
  align-content:start!important;
  row-gap:10px!important;
  padding-top:0!important;
}
.footer-grid>div:not(.footer-brand-block)>b{
  margin:0 0 5px!important;
  padding-bottom:9px!important;
}
.footer-grid>div:not(.footer-brand-block)>a,
.footer-grid>div:not(.footer-brand-block)>span{
  display:block!important;
  margin:0!important;
  line-height:1.45!important;
}

/* Keep Delivery note directly against the raised keyboard. */
#customerChatModal[data-chat-layout="order"] .customer-chat-form{
  position:relative!important;
  padding-bottom:2px!important;
  margin-bottom:0!important;
}
#customerChatModal[data-chat-layout="order"] .chat-input-shell,
#customerChatModal[data-chat-layout="order"] .chat-composer-tools{
  margin-bottom:0!important;
}
#customerChatModal[data-chat-layout="order"] .chat-send-status{
  position:absolute!important;
  right:10px!important;
  bottom:calc(100% + 3px)!important;
  z-index:4!important;
  width:auto!important;
  min-height:0!important;
  padding:3px 7px!important;
  border-radius:999px!important;
  background:rgba(255,255,255,.96)!important;
  box-shadow:0 3px 12px rgba(17,24,39,.08)!important;
  pointer-events:none!important;
}
