.store-page { background:#050505; }
.header-store-tools { position:absolute; top:100%; right:clamp(1.25rem,4vw,4rem); display:flex; align-items:center; gap:.5rem; padding:.3rem; background:#050505; border:1px solid var(--line); }
.store-header .brand { flex:0 0 auto; }
.store-nav { margin-left:auto; }
.store-controls { display:flex; flex:0 0 auto; gap:.5rem; }
.control-group { display:flex; border:1px solid var(--line); background:rgba(0,0,0,.65); }
.control-group button { min-width:42px; min-height:36px; border:0; color:#888; background:transparent; cursor:pointer; font-size:.62rem; font-weight:900; letter-spacing:.12em; }
.control-group button.active { color:#050505; background:#f2f1ed; }

.catalog-section { padding:clamp(9rem,12vw,11rem) clamp(1.25rem,5vw,5rem) clamp(5rem,9vw,8rem); background:linear-gradient(180deg,#050505,#111 48%,#070707); }
.catalog-head { max-width:1380px; margin:0 auto 4rem; display:grid; grid-template-columns:1.15fr .85fr; align-items:end; gap:4rem; }
.catalog-head h1, .catalog-head h2 { margin:0; font-family:"Arial Black",Arial,Helvetica,sans-serif; font-size:clamp(3.2rem,6vw,6.8rem); line-height:.95; letter-spacing:.01em; }
.catalog-head > p { max-width:560px; margin:0; color:#999; line-height:1.75; }
.category-bar { max-width:1380px; margin:0 auto 1.5rem; display:grid; grid-template-columns:repeat(4,1fr); border:1px solid var(--line); }
.category-bar button { display:flex; align-items:center; justify-content:space-between; min-height:64px; padding:0 1.2rem; border:0; border-right:1px solid var(--line); color:#888; background:#090909; cursor:pointer; font-size:.68rem; font-weight:900; letter-spacing:.12em; text-transform:uppercase; }
.category-bar button:last-child { border-right:0; }
.category-bar button.active,.category-bar button:hover { color:#050505; background:#f2f1ed; }
.category-bar small { opacity:.7; }
.store-product-grid { max-width:1380px; margin:auto; display:grid; grid-template-columns:repeat(4,1fr); gap:1px; border:1px solid var(--line); background:var(--line); }
.store-product-card { min-width:0; background:#0b0b0b; transition:opacity .25s,transform .25s; }
.store-product-card[hidden] { display:none; }
.store-product-image { position:relative; width:100%; padding:0; overflow:hidden; border:0; background:#111; cursor:pointer; }
.store-product-image::after { content:""; position:absolute; inset:0; background:linear-gradient(0deg,rgba(0,0,0,.78),transparent 48%); opacity:0; transition:.3s; }
.store-product-image img { width:100%; aspect-ratio:1; object-fit:cover; transition:transform .65s cubic-bezier(.2,.8,.2,1); }
.store-product-image span { position:absolute; z-index:1; left:1.2rem; bottom:1.2rem; color:#fff; font-size:.62rem; font-weight:900; letter-spacing:.13em; text-transform:uppercase; opacity:0; transform:translateY(7px); transition:.3s; }
.store-product-image:hover img,.store-product-image:focus-visible img { transform:scale(1.045); }
.store-product-image:hover::after,.store-product-image:focus-visible::after,.store-product-image:hover span,.store-product-image:focus-visible span { opacity:1; transform:none; }
.store-product-meta { min-height:178px; display:flex; flex-direction:column; padding:1.35rem; }
.store-product-meta > span { color:#777; font-size:.58rem; font-weight:900; letter-spacing:.16em; }
.store-product-meta h3 { margin:1rem 0 .35rem; font-size:1rem; letter-spacing:.045em; text-transform:uppercase; }
.store-product-meta p { margin:0; color:#777; font-size:.76rem; }
.store-product-meta strong { margin-top:auto; padding-top:1.25rem; color:#d5d5d0; font-size:.64rem; letter-spacing:.1em; text-transform:uppercase; }

.artist-support-section { position:relative; min-height:680px; display:grid; place-items:center; overflow:hidden; padding:6rem 1.25rem; color:#050505; background:#efeee9; text-align:center; }
.artist-support-copy { position:relative; z-index:1; max-width:1000px; }
.artist-support-copy .eyebrow { justify-content:center; color:#333; }
.artist-support-copy h2 { margin:0; font-family:"Arial Black",Arial,Helvetica,sans-serif; font-size:clamp(3.8rem,9vw,9rem); line-height:.95; letter-spacing:.01em; }
.artist-support-copy > p:not(.eyebrow) { max-width:650px; margin:2rem auto; color:#555; line-height:1.7; }
.artist-support-mark { position:absolute; color:rgba(0,0,0,.04); font-family:Georgia,serif; font-size:52vw; font-weight:900; line-height:.7; letter-spacing:-.2em; }
.store-dialog-price { display:block; margin:1rem 0; color:#fff; font-size:.8rem; letter-spacing:.12em; text-transform:uppercase; }

@media (max-width:1100px) {
  .store-header .brand span { display:none; }
  .store-product-grid { grid-template-columns:repeat(3,1fr); }
}
@media (max-width:800px) {
  .store-header { gap:.6rem; padding-inline:1rem; }
  .store-controls { margin-left:auto; }
  .control-group button { min-width:36px; padding:0 .35rem; }
  .catalog-head { grid-template-columns:1fr; gap:2rem; }
  .category-bar { grid-template-columns:repeat(2,1fr); }
  .category-bar button:nth-child(2) { border-right:0; }
  .category-bar button:nth-child(-n+2) { border-bottom:1px solid var(--line); }
  .store-product-grid { grid-template-columns:repeat(2,1fr); }
}
@media (max-width:520px) {
  .store-header .brand img { width:46px; height:46px; }
  .store-controls { gap:.3rem; }
  .control-group button { min-width:32px; min-height:32px; font-size:.55rem; }
  .store-product-grid { grid-template-columns:1fr; }
  .category-bar button { min-height:56px; padding:0 .85rem; font-size:.6rem; }
}

