.shop-page{width:100%;max-width:calc(var(--shell-width) + 2 * var(--shell-padding));padding:0 var(--shell-padding) var(--gap-section);margin:0 auto}.shop-head{margin-top:var(--space-8);gap:var(--space-4);flex-direction:column;display:flex}.shop-head h1{font-size:var(--text-3xl);letter-spacing:-.5px;text-wrap:pretty;max-width:22ch;margin:0;line-height:1.1}.shop-head p{font-size:var(--text-md);color:var(--color-ink-muted);text-wrap:pretty;max-width:56ch;margin:0;line-height:1.6}.shop-trust{gap:var(--space-2) var(--space-5);font-size:var(--text-sm);font-weight:var(--weight-medium);flex-wrap:wrap;display:flex}.shop-filter{margin-top:var(--space-8);padding:var(--space-3) 0 calc(var(--space-3) + 4px);border-bottom:1px solid var(--color-line)}.shop-filter-row{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.shop-filter-divider{background:var(--color-line);width:1px;height:24px;margin:0 var(--space-2)}.shop-filter-count{font-size:var(--text-sm);color:var(--color-ink-muted);white-space:nowrap;margin-left:auto}.shop-grid{margin-top:var(--space-6);gap:var(--space-6) var(--space-4);grid-template-columns:repeat(auto-fill,minmax(min(100%,270px),1fr));display:grid}@media (max-width:640px){.shop-grid{gap:var(--space-5) var(--space-3);grid-template-columns:repeat(2,minmax(0,1fr))}}.shop-empty{margin:var(--space-8) 0 0;font-size:var(--text-md);color:var(--color-ink-muted)}.shop-section{margin-top:var(--gap-section)}.shop-section-ruled{border-top:1.5px solid var(--color-ink);padding-top:var(--space-5)}.shop-section h2{margin:0 0 var(--space-6);font-size:var(--text-2xl);text-wrap:pretty;line-height:1.15}.shop-seo{background:var(--color-magazine-soft);border:1.5px solid var(--color-ink);border-radius:var(--radius-lg);padding:var(--space-8)}.shop-seo h2{max-width:34ch}.shop-seo-cols{columns:2;column-gap:var(--gap-split)}.shop-seo-cols p{margin:0 0 var(--space-4);font-size:var(--text-md);text-wrap:pretty;break-inside:avoid;line-height:1.65}.shop-seo-cols a{color:var(--color-ink);text-underline-offset:3px;text-decoration:underline}@media (max-width:900px){.shop-seo-cols{columns:1}}.shop-filter-fab{display:none}.shop-filter-sheet{z-index:60;background:var(--color-bg);flex-direction:column;display:flex;position:fixed;inset:0}.shop-filter-sheet-head{padding:var(--space-5) var(--shell-padding);border-bottom:1px solid var(--color-line);justify-content:space-between;align-items:center;display:flex}.shop-filter-sheet-head strong{font-size:var(--text-xl)}.shop-filter-sheet-close{border-radius:var(--radius-full);border:1.5px solid var(--color-line);background:var(--color-surface);width:44px;height:44px;font-size:var(--text-base);cursor:pointer}.shop-filter-sheet-body{padding:var(--space-5) var(--shell-padding);gap:var(--space-3);flex-direction:column;flex:1;display:flex;overflow-y:auto}.shop-filter-sheet-label{margin-top:var(--space-3);font-size:var(--text-sm);font-weight:var(--weight-semibold);color:var(--color-ink-muted)}.shop-filter-sheet-label:first-child{margin-top:0}.shop-filter-sheet-chips{gap:var(--space-2);flex-wrap:wrap;display:flex}.shop-filter-sheet-foot{align-items:center;gap:var(--space-4);padding:var(--space-4) var(--shell-padding) calc(var(--space-4) + env(safe-area-inset-bottom));border-top:1px solid var(--color-line);background:var(--color-bg);display:flex}.shop-filter-sheet-foot .btn-primary{text-align:center;flex:1}.shop-filter-sheet-reset{font-family:var(--font-body);font-size:var(--text-sm);color:var(--color-ink-muted);text-underline-offset:3px;cursor:pointer;padding:var(--space-2);background:0 0;border:none;text-decoration:underline}@media (max-width:640px){.shop-filter{display:none}.shop-filter-fab{bottom:calc(var(--space-5) + env(safe-area-inset-bottom));left:var(--shell-padding);z-index:25;align-items:center;gap:var(--space-2);border:1.5px solid var(--color-ink);border-radius:var(--radius-full);background:var(--color-ink);color:var(--color-bg);font-family:var(--font-body);font-size:var(--text-base);font-weight:var(--weight-semibold);cursor:pointer;padding:13px 22px;display:inline-flex;position:fixed;box-shadow:0 4px #19181733}.shop-filter-fab-count{border-radius:var(--radius-full);background:var(--color-secondary);min-width:22px;height:22px;color:var(--color-ink);font-size:var(--text-xs);font-weight:var(--weight-semibold);place-items:center;padding:0 6px;display:grid}.shop-seo{padding:var(--space-5)}}@media (min-width:641px){.shop-filter-sheet{display:none}}
