/* KINTO V203 — local directory visual refresh only.
   No change to live store data, filtering, pagination, links or events. */
html body #localStoresPublic.local-stores-shell{
  width:min(1180px,calc(100% - 20px))!important;
  max-width:1180px!important;
  margin:18px auto 24px!important;
  padding:0 0 20px!important;
  border:0!important;border-radius:0!important;
  background:transparent!important;box-shadow:none!important;
  overflow:visible!important;
}
html body #localStoresPublic .local-stores-head.kinto-v201-local-banner{
  width:100%!important;max-width:100%!important;
  margin:0 auto 14px!important;
}
html body #localStoresPublic .kinto-v172-search-wrap{
  display:flex!important;flex-direction:column!important;gap:7px!important;
  margin:0 0 12px!important;padding:0!important;
  background:transparent!important;border:0!important;box-shadow:none!important;
}
html body #localStoresPublic .kinto-v172-search-wrap label{
  display:block!important;color:#f7d98e!important;
  font-size:clamp(13px,1.65vw,16px)!important;
  font-weight:800!important;line-height:1.4!important;
  margin:0!important;padding:0 4px!important;
}
html body #localStoresPublic #kintoV172LocalSearch{
  box-sizing:border-box!important;width:100%!important;
  min-height:46px!important;height:46px!important;
  border-radius:13px!important;
  padding:8px 16px!important;
  background:linear-gradient(120deg,rgba(9,67,50,.97),rgba(16,81,61,.93))!important;
  border:1px solid rgba(226,190,108,.45)!important;
  color:#fff7df!important;font-size:15px!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.05),0 4px 13px rgba(0,23,15,.13)!important;
}
html body #localStoresPublic #kintoV172LocalSearch::placeholder{color:#b7cfc3!important;opacity:1!important}
html body #localStoresPublic #kintoV172LocalSearch:focus{
  outline:2px solid rgba(255,209,100,.65)!important;outline-offset:2px!important;
}
html body #localStoresPublic #localSpecialtyFilters.local-specialty-filters{
  display:flex!important;align-items:center!important;justify-content:flex-start!important;
  gap:7px!important;flex-wrap:wrap!important;
  margin:0 0 12px!important;padding:0!important;
  background:transparent!important;border:0!important;
}
html body #localStoresPublic #localSpecialtyFilters[hidden]{display:none!important}
html body #localStoresPublic #localSpecialtyFilters .local-filter-btn{
  min-height:34px!important;min-width:0!important;
  padding:5px 11px!important;border-radius:10px!important;
  font-size:12px!important;font-weight:800!important;
  line-height:1.2!important;white-space:nowrap!important;
  color:#f3ead2!important;
  background:linear-gradient(125deg,rgba(25,84,65,.9),rgba(42,99,79,.83))!important;
  border:1px solid rgba(199,214,186,.29)!important;
  box-shadow:0 3px 10px rgba(0,24,16,.12)!important;
  transform:none!important;
}
html body #localStoresPublic #localSpecialtyFilters .local-filter-btn.active,
html body #localStoresPublic #localSpecialtyFilters .local-filter-btn[aria-pressed="true"]{
  color:#103b2d!important;background:linear-gradient(125deg,#ffe49a,#e7b54d)!important;
  border-color:#f4d180!important;
}
html body #localStoresPublic #localStoresPublicGrid.local-stores-grid{
  gap:12px!important;align-items:stretch!important;
}
html body #localStoresPublic .local-public-card{
  box-sizing:border-box!important;
  min-height:0!important;padding:15px 10px!important;
  border-radius:17px!important;
  background:linear-gradient(155deg,rgba(20,80,60,.97),rgba(9,55,43,.98))!important;
  border:1px solid rgba(230,193,104,.35)!important;
  box-shadow:0 6px 20px rgba(0,24,17,.19),inset 0 1px 0 rgba(255,242,195,.06)!important;
  backdrop-filter:none!important;
  transition:transform .18s ease,border-color .18s ease!important;
}
html body #localStoresPublic .local-public-card:hover{
  transform:translateY(-2px)!important;border-color:rgba(247,207,112,.72)!important;
}
html body #localStoresPublic .local-public-logo{
  width:clamp(76px,9vw,104px)!important;
  height:clamp(76px,9vw,104px)!important;
  object-fit:contain!important;
  border:2px solid rgba(255,225,153,.75)!important;
  background:#f5f3e8!important;
  box-shadow:0 3px 13px rgba(0,0,0,.19)!important;
  margin-bottom:10px!important;
}
html body #localStoresPublic .local-public-name{
  font-size:clamp(13px,1.65vw,17px)!important;
  color:#fff9e9!important;line-height:1.35!important;
  overflow-wrap:anywhere!important;
}
html body #localStoresPublic .local-public-meta{
  color:#c9ded1!important;font-size:12px!important;line-height:1.5!important;
}
html body #localStoresPublic .local-public-chip{color:#f5d58b!important;padding-top:8px!important}
html body #localStoresPublic .local-public-open{
  border-radius:11px!important;
  background:linear-gradient(120deg,#ffe298,#e5b449)!important;
  color:#123c2f!important;
}
@media(max-width:700px){
  html body #localStoresPublic.local-stores-shell{
    width:calc(100% - 20px)!important;margin:14px auto 20px!important;
    padding:0 0 14px!important;
  }
  html body #localStoresPublic .local-stores-head.kinto-v201-local-banner{
    width:calc(100% - 30px)!important;max-width:calc(100% - 30px)!important;
    margin:0 auto 12px!important;
  }
  html body #localStoresPublic .kinto-v172-search-wrap{gap:5px!important;margin-bottom:10px!important}
  html body #localStoresPublic #kintoV172LocalSearch{
    height:42px!important;min-height:42px!important;
    font-size:13px!important;border-radius:11px!important;
  }
  html body #localStoresPublic #localSpecialtyFilters.local-specialty-filters{
    gap:6px!important;margin-bottom:10px!important;
  }
  html body #localStoresPublic #localSpecialtyFilters .local-filter-btn{
    min-height:31px!important;padding:5px 9px!important;font-size:11px!important;
    border-radius:9px!important;
  }
  html body #localStoresPublic #localStoresPublicGrid.local-stores-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:9px!important;
  }
  html body #localStoresPublic .local-public-card{padding:12px 7px!important;border-radius:14px!important}
  html body #localStoresPublic .local-public-logo{
    width:clamp(70px,20vw,88px)!important;height:clamp(70px,20vw,88px)!important;
  }
  html body #localStoresPublic .local-public-name{font-size:13px!important}
  html body #localStoresPublic .local-public-meta{font-size:11px!important}
}
@media(prefers-reduced-motion:reduce){
  html body #localStoresPublic .local-public-card{transition:none!important}
}

/* V203.3: Restore exact horizontal alignment with global banner.
   V202 and V203 each inset the local artwork, creating the visible double inset.
   The shell is already aligned; the banner must fill that shell. */
html body section#localStoresPublic.local-stores-shell > .local-stores-head.kinto-v201-local-banner{
  box-sizing:border-box!important;
  width:100%!important;max-width:100%!important;
  margin:0 0 12px!important;padding:0!important;
  aspect-ratio:2172 / 412!important;
  height:auto!important;min-height:0!important;max-height:none!important;
  border-radius:15px!important;overflow:hidden!important;
}
html body section#localStoresPublic.local-stores-shell > .local-stores-head.kinto-v201-local-banner > img{
  display:block!important;box-sizing:border-box!important;
  width:100%!important;height:100%!important;
  aspect-ratio:2172 / 412!important;
  object-fit:fill!important;border-radius:15px!important;
}
@media(max-width:700px){
  html body section#localStoresPublic.local-stores-shell > .local-stores-head.kinto-v201-local-banner{
    width:100%!important;max-width:100%!important;
    margin:0 0 12px!important;
    border-radius:13px!important;
  }
  html body section#localStoresPublic.local-stores-shell > .local-stores-head.kinto-v201-local-banner > img{
    border-radius:13px!important;
  }
  /* Bring the first stores into view sooner while keeping filters functional. */
  html body section#localStoresPublic #localSpecialtyFilters.local-specialty-filters{
    margin-bottom:5px!important;
  }
}

/* V203.6 — full-bleed local banner and compact right-aligned page indicators */
html body section#localStoresPublic.local-stores-shell>.local-stores-head.kinto-v201-local-banner{
box-sizing:border-box!important;width:calc(100% + 26px)!important;max-width:none!important;
margin:-12px -13px 9px!important;padding:0!important;aspect-ratio:2172/412!important;
border-radius:17px!important;overflow:hidden!important}
html body section#localStoresPublic.local-stores-shell>.local-stores-head.kinto-v201-local-banner>img{
display:block!important;width:100%!important;height:100%!important;object-fit:fill!important;border-radius:inherit!important}
html body section#localStoresPublic nav.kinto-v172-pages{
box-sizing:border-box!important;min-height:0!important;gap:5px!important;
margin:5px 0 9px!important;padding:0!important;align-items:center!important}
html body section#localStoresPublic nav.kinto-v172-pages[data-position="top"]{
justify-content:flex-start!important;flex-wrap:nowrap!important;direction:rtl!important}
html body section#localStoresPublic nav.kinto-v172-pages .kinto-v174-page-info{
font-size:10px!important;font-weight:700!important;line-height:1.2!important;
padding:4px 7px!important;border-radius:7px!important;
background:rgba(10,59,45,.38)!important;border:1px solid rgba(223,186,98,.24)!important;white-space:nowrap!important}
html body section#localStoresPublic nav.kinto-v172-pages button{
min-height:27px!important;padding:4px 8px!important;font-size:10px!important;border-radius:7px!important}
html body section#localStoresPublic nav.kinto-v172-pages[data-position="bottom"]{
justify-content:center!important;margin:11px 0 7px!important}
@media(max-width:700px){
html body section#localStoresPublic.local-stores-shell>.local-stores-head.kinto-v201-local-banner{
width:calc(100% + 18px)!important;max-width:none!important;margin:-9px -9px 8px!important;border-radius:15px!important}
html body section#localStoresPublic nav.kinto-v172-pages[data-position="top"]{margin:4px 0 8px!important}}
