#shop-list,.shop-card{scroll-margin-top:100px}.shop-toolbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:14px;margin-bottom:12px}.shop-filter{display:inline-flex;padding:4px;gap:4px;border:1px solid var(--hairline);border-radius:999px;background:var(--stracciatella-deep)}.shop-filter button{min-height:40px;padding:8px 16px;border-radius:999px;font-size:12.5px;font-weight:600;letter-spacing:.04em;color:var(--espresso-70);transition:background .2s,color .2s}.shop-filter button:hover{color:var(--espresso)}.shop-filter button[aria-pressed=true]{background:var(--espresso);color:var(--stracciatella)}.shop-filter button:focus-visible{outline:2px solid var(--amarena);outline-offset:2px}.shop-nearest{display:inline-flex;align-items:center;gap:9px;min-height:44px;padding:11px 20px;border:1px solid var(--hairline);border-radius:999px;font-size:12.5px;font-weight:600;letter-spacing:.04em;color:var(--espresso);background:transparent;transition:background .2s,border-color .2s}.shop-nearest:hover{background:var(--stracciatella-deep);border-color:rgba(46,30,27,.28)}.shop-nearest:focus-visible{outline:2px solid var(--amarena);outline-offset:2px}.shop-nearest__icon{width:10px;height:10px;border-radius:50%;border:2px solid var(--amarena)}.shop-geo-note{font-size:12px;line-height:1.5;color:var(--espresso-60);margin-bottom:20px;min-height:18px}.shop-layout{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:20px;align-items:start}@media (max-width:1000px){.shop-layout{grid-template-columns:1fr}}.shop-detail{scroll-margin-top:100px;display:flex;flex-direction:column;gap:12px;padding:26px 24px;border-radius:20px;border:1px solid var(--hairline);background:var(--stracciatella-deep);min-height:220px}.shop-detail:focus-visible{outline:2px solid var(--amarena);outline-offset:3px}.shop-detail--empty{justify-content:center}.shop-detail__eyebrow{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:10.5px;font-weight:600;letter-spacing:.22em;text-transform:uppercase;color:var(--espresso-60)}.shop-detail__distance{text-transform:none;letter-spacing:.04em;font-size:11.5px;color:var(--amarena)}.shop-detail__name{font-family:var(--serif);font-style:italic;font-size:clamp(28px,3.4vw,36px);line-height:1.04;letter-spacing:-.01em;color:var(--espresso)}.shop-detail__empty-body{font-size:13.5px;line-height:1.65;color:var(--espresso-70)}.shop-card__addr,.shop-detail__address{font-style:normal;font-size:13.5px;line-height:1.6;color:var(--espresso-70)}.shop-detail__actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:2px}.btn-pill{display:inline-flex;align-items:center;gap:7px;min-height:44px;padding:11px 18px;border-radius:999px;border:1px solid var(--hairline);font-size:12.5px;font-weight:600;letter-spacing:.03em;color:var(--espresso);transition:background .2s,transform .2s,border-color .2s}.btn-pill:hover{background:rgba(46,30,27,.06)}.btn-pill:focus-visible{outline:2px solid var(--amarena);outline-offset:2px}.btn-pill--solid{background:var(--espresso);border-color:var(--espresso);color:var(--stracciatella)}.btn-pill--solid:hover{background:var(--amarena);border-color:var(--amarena);transform:translateX(2px)}.shop-status{display:inline-flex;align-items:center;gap:8px;font-size:12.5px;font-weight:600;letter-spacing:.02em}.shop-status__dot{width:7px;height:7px;border-radius:50%;background:currentColor;flex:none}.shop-status--open{color:var(--pistacchio-deep)}.shop-status--soon{color:#b8791f}.shop-status--closed,.shop-status--unknown{color:var(--espresso-60)}.shop-status--unknown{font-weight:500}.shop-hours{margin-top:4px;padding-top:14px;border-top:1px solid var(--hairline-light)}.shop-hours__title{font-size:10.5px;font-weight:600;letter-spacing:.22em;text-transform:uppercase;color:var(--espresso-60);margin-bottom:8px}.shop-hours__row{display:flex;justify-content:space-between;gap:16px;font-size:12.5px;line-height:1.9;color:var(--espresso-70)}.shop-hours__row dt{color:var(--espresso-60)}.loc-hero{padding-top:140px;padding-bottom:72px;position:relative;overflow:hidden}.loc-hero:before{content:"";position:absolute;right:-8%;top:10%;width:520px;height:520px;border-radius:50%;background:radial-gradient(circle,rgba(168,184,132,.12) 0,transparent 70%);pointer-events:none}.loc-hero-badge{display:inline-flex;align-items:center;gap:8px;padding:5px 12px;border:1px solid var(--hairline);border-radius:999px;font-size:10.5px;letter-spacing:.22em;text-transform:uppercase;color:var(--espresso-60);background:transparent;margin-bottom:20px}.loc-hero-badge .dot{width:6px;height:6px;border-radius:50%;background:var(--amarena);animation:pinPulse 2.4s infinite}.loc-hero h1{font-size:clamp(44px,6.5vw,86px);line-height:1.02;letter-spacing:-.02em;max-width:900px}.loc-hero .intro{margin-top:22px;font-size:clamp(15px,1.4vw,17px);line-height:1.75;color:var(--espresso-80);max-width:680px}.state-group{margin-bottom:48px}.state-label{display:flex;align-items:center;gap:16px;margin-bottom:24px}.state-label__name{font-family:var(--sans);font-size:11px;font-weight:600;letter-spacing:.24em;text-transform:uppercase;color:var(--espresso-60)}.state-label__line{flex:1;height:1px;background:var(--hairline)}.state-label__count{font-family:var(--serif);font-style:italic;font-size:18px;color:var(--espresso-40)}.loc-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}@media (max-width:1080px){.loc-cards{grid-template-columns:repeat(2,1fr)}}@media (max-width:640px){.loc-cards{grid-template-columns:1fr}}.shop-card{position:relative;padding:22px 22px 18px;border-radius:18px;background:var(--stracciatella);border:1px solid var(--hairline);display:flex;flex-direction:column;gap:9px;animation:shopCardIn .5s cubic-bezier(.2,.7,.2,1) both;animation-delay:calc(var(--card-index, 0) * 45ms);transition:transform .45s cubic-bezier(.2,.7,.2,1),box-shadow .45s cubic-bezier(.2,.7,.2,1),border-color .25s}@keyframes shopCardIn{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}.shop-card:hover{transform:translateY(-4px);box-shadow:0 16px 40px rgba(46,30,27,.1);border-color:rgba(46,30,27,.22)}.shop-card.is-selected{border-color:var(--amarena);box-shadow:0 0 0 1px var(--amarena),0 16px 40px rgba(200,70,59,.14)}.shop-card__head{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.shop-card__name{font-family:var(--serif);font-style:italic;font-size:27px;line-height:1.05;letter-spacing:-.01em;color:var(--espresso);text-align:left;padding:2px 0;transition:color .2s}.shop-card__name:hover{color:var(--amarena)}.shop-card__name:focus-visible{outline:2px solid var(--amarena);outline-offset:3px;border-radius:4px}.shop-card__distance{font-size:11.5px;font-weight:600;letter-spacing:.04em;color:var(--amarena);white-space:nowrap}.shop-card__addr{flex:1}.shop-card__footer{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:12px;border-top:1px solid var(--hairline-light);margin-top:4px}.shop-card__tel{font-size:12.5px;font-weight:500;color:var(--espresso-70);padding:6px 0;transition:color .2s}.shop-card__tel:hover{color:var(--amarena)}.shop-card__tel:focus-visible{outline:2px solid var(--amarena);outline-offset:2px;border-radius:4px}.shop-card__dir{display:inline-flex;align-items:center;gap:6px;padding:9px 15px;border-radius:999px;background:var(--espresso);color:var(--stracciatella);font-size:12px;font-weight:600;letter-spacing:.04em;white-space:nowrap;transition:background .2s,transform .2s}.shop-card__dir:hover{background:var(--amarena);transform:translateX(2px)}.shop-card__dir:focus-visible{outline:2px solid var(--amarena);outline-offset:2px}@media (prefers-reduced-motion:reduce){.shop-card{animation-delay:0s!important}}.loc-cta-band{margin-top:80px;padding:56px;border-radius:20px;background:var(--stracciatella-deep);border:1px solid var(--hairline);display:grid;grid-template-columns:1fr auto;gap:40px;align-items:center}@media (max-width:880px){.loc-cta-band{grid-template-columns:1fr;padding:36px 28px;gap:24px}}.loc-cta-band__eyebrow{display:inline-flex;align-items:center;gap:10px;font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:var(--espresso-60);margin-bottom:12px}.loc-cta-band__eyebrow:before{content:"";width:20px;height:1px;background:var(--espresso-40)}.loc-cta-band h3{font-family:var(--serif);font-style:italic;font-size:clamp(28px,3.5vw,44px);line-height:1.08;letter-spacing:-.01em;max-width:540px}.loc-cta-band .actions{display:flex;gap:12px;flex-wrap:wrap;align-items:center}@media (max-width:880px){.loc-cta-band .actions{flex-direction:column;align-items:flex-start}}