.artist-card.artist-link {display: block;}
.artist-card.artist-link:focus-visible, .store-format-link:focus-visible, .release-links a:focus-visible {
  outline: 3px solid #642788; outline-offset: 5px;
}
.shop-card {scroll-margin-top: 24px;}
.shop-card:target {outline: 3px solid #d4af37; outline-offset: 5px;}
.store-release-page, .store-not-found {max-width: 1100px; margin: 32px auto; padding: 24px;}
.store-release-header {display: grid; grid-template-columns: minmax(200px, 380px) minmax(0, 1fr); gap: 32px; margin: 24px 0; align-items: start;}
.store-release-header > img {width: 100%; height: auto; aspect-ratio: 1; object-fit: contain; background: #191817;}
.store-release-header h1 {font-size: clamp(2rem, 5vw, 3.5rem); line-height: 1.1; margin: 0 0 18px;}
.store-release-header h2 {font-size: 1.5rem;}
.store-release-header section > a:not(.store-format-link) {display: block; margin: 8px 0;}
.store-format-link {display: inline-flex; align-items: center; min-height: 44px; padding: 10px 14px; margin: 4px 10px 8px 0; border: 1px solid #642788; color: #4c2066; font-weight: bold; text-decoration: underline; text-underline-offset: 3px;}
.store-release-page .release-links {display: flex; flex-wrap: wrap; gap: 12px; margin-bottom: 20px;}
.store-static {max-width: 1100px; margin: 24px auto; padding: 24px;}
.store-static nav {display: flex; flex-wrap: wrap; gap: 20px; margin-bottom: 24px;}
.store-static article {margin: 24px 0;}
.store-static img {max-width: 300px; width: 100%; height: auto;}
.store-static h1 {font-size: clamp(2rem, 5vw, 3.5rem);}
@media(max-width: 650px) {
  .store-release-header {grid-template-columns: 1fr; gap: 22px;}
  .store-release-header > img {max-width: 380px; margin: auto;}
  .store-release-page, .store-not-found {padding: 18px; margin: 16px auto;}
}
