.gs-store-v2{max-width:var(--gs-max);margin:auto;padding:48px var(--gs-gutter);font-family:var(--gs-body);color:var(--gs-ink)}
.gs-store-v2 h1{font:800 clamp(40px,6vw,80px)/1.05 var(--gs-display);letter-spacing:-.025em;margin:16px 0}.gs-store-v2 p{color:var(--gs-muted);line-height:1.6}
.gs-store-v2 form{display:flex;gap:12px;align-items:end;margin:32px 0 24px}.gs-store-v2 form label{flex:1;display:grid;gap:8px}.gs-store-v2 input[type=search]{width:100%;min-width:0}
.gs-store-v2 button,.gs-store-v2 input[type=search]{min-height:48px;padding:12px 16px;border:1px solid var(--gs-line);border-radius:8px;font:inherit;color:inherit;background:#fff}.gs-store-v2 button{cursor:pointer}
.gs-store-v2 fieldset{display:flex;flex-wrap:wrap;gap:8px 20px;padding:16px 0 24px;border:0}.gs-store-v2 legend{font-weight:600;margin-bottom:10px}.gs-store-v2 fieldset label{display:flex;align-items:center;gap:8px;min-height:44px;font-size:13px;cursor:pointer}.gs-store-v2 input[type=checkbox]{accent-color:var(--gs-red)}
.gs-store-v2__layout{display:grid;grid-template-columns:minmax(0,.35fr) minmax(0,.65fr);gap:20px;min-height:520px}
.gs-store-v2__list,.gs-store-v2__results{min-width:0}
.gs-store-v2__map{position:sticky;top:100px;align-self:start;display:grid;place-items:center;min-width:0;height:620px;max-height:75svh;background:var(--gs-white);border:1px solid var(--gs-line);border-radius:16px;overflow:hidden;text-align:center}
.gs-store-v2__map-message{max-width:38ch;padding:32px}
.gs-store-v2__map-canvas{position:absolute;inset:0;width:100%;height:100%}
.gs-store-v2 [hidden]{display:none}
.gs-store-v2__toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px}
.gs-store-v2__toolbar p{margin:0}
.gs-store-v2__map-toggle{display:none}
.gs-store-v2__more{width:100%;margin-top:16px}
.gs-store-v2__error{padding:24px;border:1px solid var(--gs-line);border-radius:12px}
.gs-store-v2__error p{color:var(--gs-ink);margin-top:0}
.gs-store-v2 button:disabled{cursor:wait;opacity:.65}
.gs-store-v2 article[data-selected=true]{border-color:var(--gs-ink);box-shadow:inset 0 0 0 1px var(--gs-ink)}
.gs-store-v2 article>img{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;border-radius:6px;margin-bottom:20px}
.gs-store-v2 article p{overflow-wrap:anywhere}
.gs-store-v2__actions{display:flex;flex-wrap:wrap;gap:8px 16px;align-items:center;margin-top:20px}
.gs-store-v2__actions a{margin:0;font-size:13px}
.gs-store-v2__models{font-size:13px}
.gs-store-v2 .gs-store-v2__distance{font-size:13px;color:var(--gs-ink);font-weight:600}
.gs-store-v2__hours{display:grid;grid-template-columns:auto 1fr;gap:8px 20px;font-size:14px}
.gs-store-v2__hours dd{margin:0;overflow-wrap:anywhere}
.gs-store-v2__empty,.gs-store-v2 article{padding:28px;border:1px solid var(--gs-line);border-radius:12px}.gs-store-v2__empty h2{font:700 24px/1.3 var(--gs-display);margin:0 0 24px}.gs-store-v2 a{display:inline-block;min-height:44px;align-content:center;margin-right:16px;color:inherit;text-underline-offset:4px}
.gs-store-v2 article+article{margin-top:12px}.gs-store-v2 article h2{font:700 22px/1.3 var(--gs-display)}.gs-store-v2__badges{display:flex;flex-wrap:wrap;gap:6px}.gs-store-v2__badges span{padding:6px 8px;border:1px solid var(--gs-line);border-radius:4px;font-size:11px}
.gs-store-v2 dialog{max-width:680px;width:calc(100% - 32px);max-height:85svh;overflow:auto;overscroll-behavior:contain;border:1px solid var(--gs-line);border-radius:16px;padding:28px;color:inherit;background:#fff}.gs-store-v2 dialog::backdrop{background:#0006}
.gs-store-v2 :is(a,button,input):focus-visible{outline:3px solid var(--gs-red);outline-offset:3px}.gs-store-v2 button:hover{background:var(--gs-paper)}
@media(max-width:899px){.gs-store-v2__layout{grid-template-columns:1fr;min-height:0}.gs-store-v2__map{position:relative;top:auto;height:400px;max-height:60svh}.gs-store-v2__map:not([hidden]){grid-row:1}.gs-store-v2__map-toggle{display:block}.gs-store-v2__toolbar{margin-bottom:20px}}
@media(max-width:749px){.gs-store-v2{padding-block:32px}.gs-store-v2 form{flex-wrap:wrap}.gs-store-v2 form label{flex-basis:100%}.gs-store-v2 form button{flex:1}.gs-store-v2 fieldset{gap:4px 12px}}
