html:has(#vg-stores),body:has(#vg-stores){overflow-x:clip!important}#vg-stores{padding:0}#vg-stores .inner{width:90%;max-width:980px;margin:0 auto;padding:0}@media only screen and (max-width:768px){#vg-stores .inner{width:88%;padding:0 0 28px}}#vg-stores section.inner{padding:115px 0 24px;margin:0 auto}#vg-stores div.inner{padding:0 0 36px}#vg-stores .vg-intro{margin:0;max-width:720px;font-size:.92rem;line-height:1.6;color:#4a4a4a}.vg-filter-bar{position:sticky;top:0;z-index:10;background:#fff;width:100vw;margin-left:calc(50% - 50vw);padding:70px calc(50vw - 490px) 14px;box-sizing:border-box;border-bottom:1px solid #eee;box-shadow:0 2px 8px rgba(0,0,0,.06)}@media only screen and (max-width:980px){.vg-filter-bar{padding:70px 5% 14px}}@media only screen and (max-width:768px){.vg-filter-bar{padding:70px 4% 10px;max-height:180px;overflow-y:auto;-webkit-overflow-scrolling:touch}}.vg-filter{display:flex;flex-wrap:wrap;gap:6px;margin:0;padding:0}.vg-filter button{font-size:.78rem;letter-spacing:.04em;padding:5px 11px;border:1px solid #d8d8d8;background:#fff;color:#4a4a4a;cursor:pointer;font-family:inherit;text-transform:uppercase;transition:background-color .3s,color .3s,border-color .3s;white-space:nowrap;flex-shrink:0}.vg-filter button:hover{border-color:#1A1A1A;color:#1A1A1A}.vg-filter button.is-on{background:#1A1A1A;border-color:#1A1A1A;color:#fff}.vg-territory-nav{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px;padding:12px 0 0;border-top:1px solid #f0f0f0}.vg-territory-tab{display:inline-flex;align-items:center;font-size:.76rem;letter-spacing:.06em;text-transform:uppercase;color:#4a4a4a;text-decoration:none;padding:5px 12px;border:1px solid transparent;border-bottom:2px solid #e0e0e0;transition:border-color .25s,color .25s;white-space:nowrap}.vg-territory-tab:hover{color:#1A1A1A;border-bottom-color:#1A1A1A}.vg-territory-tab .vg-filter-count{color:#bbb}.vg-territory-tab:hover .vg-filter-count{color:#999}.vg-territory-section{margin-top:32px;scroll-margin-top:var(--filter-scroll-offset,280px)}.vg-territory-section:first-child{margin-top:8px}.vg-territory-title{font-size:1.15rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#1A1A1A;margin:0 0 14px;padding-bottom:8px;border-bottom:1px solid #f0f0f0}.vg-territory-count{display:inline-block;font-size:.78rem;font-weight:400;color:#bbb;margin-left:6px;vertical-align:2px}.vg-shop-grid{display:grid;grid-template-columns:1fr;gap:18px}.vg-shop{display:grid;grid-template-columns:400px 1fr;gap:28px;background:#fff;border:1px solid #e8e8e8;padding:0;scroll-margin-top:var(--filter-scroll-offset,280px);transition:border-color .5s,box-shadow .5s,transform .5s}.vg-shop.vg-shop--no-photo{grid-template-columns:1fr}.vg-shop.vg-shop--no-photo .vg-shop-body{padding:26px}.vg-shop-photo{position:relative;overflow:hidden;background:#f0efec;height:100%;min-height:240px}.vg-shop-photo img{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:100%;height:100%;object-fit:cover}.vg-shop-body{padding:22px 26px;display:flex;flex-direction:column;gap:10px}.vg-shop-no{display:none}.vg-shop-name{font-size:1.14rem;font-weight:600;line-height:1.4;color:#1A1A1A;margin:0}.vg-shop-loc{font-size:.86rem;line-height:1.7;color:#4a4a4a;margin:0}.vg-shop-phone{font-size:.86rem;line-height:1.6;margin:0;color:#4a4a4a}.vg-shop-phone a{color:#1A1A1A;text-decoration:none;border-bottom:1px solid #c8c8c8;display:inline-block;padding:4px 0;transition:border-color .2s}.vg-shop-phone a:hover{border-bottom-color:#1A1A1A}.vg-shop-hours{font-size:.86rem;line-height:1.7;color:#4a4a4a;margin:0}.vg-shop-loc strong,.vg-shop-phone strong,.vg-shop-hours strong{display:inline-block;min-width:112px;font-size:.86rem;letter-spacing:.14em;color:#999;font-weight:700;text-transform:uppercase;vertical-align:top}.vg-shop-brands{display:flex;flex-wrap:wrap;gap:6px;margin:6px 0 0;padding:0;list-style:none}.vg-shop-brands li{font-size:.86rem;letter-spacing:.05em;padding:4px 9px;background:#F5F4F2;color:#3a3a3a;text-transform:uppercase;cursor:pointer;transition:background-color .25s,color .25s;border:1px solid transparent}.vg-shop-brands li:hover{background:#1A1A1A;color:#fff}.vg-filter-count{font-size:.7rem;font-weight:400;letter-spacing:0;color:#999;margin-left:4px;vertical-align:1px}.vg-filter button.is-on .vg-filter-count{color:rgba(255,255,255,.6)}.vg-shop-maps{display:flex;gap:8px;margin-top:8px;flex-wrap:wrap}.vg-map-link{display:inline-flex;align-items:center;gap:5px;font-size:.76rem;color:#1A1A1A;text-decoration:none;padding:6px 12px;border:1px solid #d8d8d8;border-radius:20px;white-space:nowrap;transition:border-color .25s,background-color .25s;line-height:1}.vg-map-link:hover{border-color:#1A1A1A;background:#f8f8f8}.vg-map-link svg{flex-shrink:0;width:14px;height:14px}.vg-map-link span{line-height:1}.vg-no-results{padding:48px 24px;text-align:center;color:#999;font-size:.9rem;letter-spacing:.04em;border:1px dashed #d8d8d8;background:#fafafa}@media only screen and (max-width:768px){.vg-shop{grid-template-columns:1fr}.vg-shop-photo{min-height:200px;height:200px}.vg-shop-body{padding:18px 20px}.vg-shop-loc strong,.vg-shop-phone strong,.vg-shop-hours strong{display:block;min-width:0;margin-bottom:2px}.vg-shop-maps{flex-wrap:wrap}.vg-map-link{font-size:.74rem;padding:6px 12px;min-height:32px}.vg-shop-phone a{padding:8px 0;min-height:36px;display:inline-flex;align-items:center}}@media(max-width:768px){.vg-filter-bar{max-height:180px;overflow-y:auto;-webkit-overflow-scrolling:touch}.vg-filter-bar::-webkit-scrollbar{display:none}.vg-filter-bar{scrollbar-width:none}.vg-filter{gap:4px}.vg-filter button{padding:8px 12px;font-size:.74rem;min-height:36px;display:inline-flex;align-items:center}.vg-territory-nav{flex-wrap:wrap;gap:4px}.vg-territory-tab{padding:6px 10px;font-size:.72rem;min-height:32px;display:inline-flex;align-items:center}}.vg-mobile-controls{display:flex;gap:12px;padding:12px 4%;background:#fff;border-bottom:1px solid #eee}.vg-mobile-field{flex:1 1 0;min-width:0}.vg-mobile-label{display:block;font-size:.7rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:#999;margin-bottom:6px}.vg-mobile-select{width:100%;height:42px;padding:0 12px;font-size:.86rem;border:1px solid #d8d8d8;background:#fff;color:#1A1A1A;cursor:pointer;font-family:inherit;outline:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8' fill='none' stroke='%231A1A1A' stroke-width='2'%3E%3Cpath d='M1 1l5 5 5-5'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;padding-right:32px}.vg-mobile-select:focus{border-color:#1A1A1A}@media(min-width:769px){.vg-mobile-controls{display:none !important}}
/* touch targets — network filters (2026-10-17) */
.vg-filter button{min-height:40px;display:inline-flex;align-items:center;padding-top:8px;padding-bottom:8px}
.vg-brand-tag{min-height:36px;display:inline-flex;align-items:center;padding:6px 12px}
.vg-territory-tab{min-height:44px;display:inline-flex;align-items:center}
@media only screen and (max-width:768px){
  .vg-filter button{min-height:44px;font-size:.78rem}
  .vg-brand-tag{min-height:40px}
  .vg-shop-photo{min-height:220px}
}

/* touch targets round 2 — network cards */
.vg-map-link{min-height:40px;display:inline-flex;align-items:center}
.vg-shop-phone a{min-height:40px;display:inline-flex;align-items:center}
@media only screen and (max-width:1024px){
  .vg-map-link,.vg-shop-phone a{min-height:44px}
  .vg-brand-tag{min-height:40px}
}

/* Arriving from the About map deep link — flag the target territory briefly */
.vg-territory-section.is-target{animation:vgTargetFlash 2.6s ease}
@keyframes vgTargetFlash{0%{background:rgba(26,26,26,.055)}70%{background:rgba(26,26,26,.055)}100%{background:transparent}}
