.jc-card, .is-style-jc-card { position: relative; display: flex; flex-direction: column; padding: var(--jc-card-pad); border: var(--jc-rule); border-radius: var(--jc-radius); background: var(--jc-bg-card); }
.jc-card--lg { padding: var(--jc-space-40) var(--jc-space-48); }
.jc-card--plain { border: 0; padding: 0; background: transparent; }
.jc-card__title { font: 500 var(--jc-fs-card-title)/var(--jc-lh-card) var(--jc-font-display); }
.jc-card__link::after { content: ''; position: absolute; inset: 0; z-index: var(--jc-z-raised); }
.jc-card:has(.jc-card__link):hover { border-color: var(--jc-ink); }
.jc-card:has(.jc-card__link):hover .jc-card__title { color: var(--jc-accent); }
.jc-card:has(.jc-card__link:focus-visible) { outline: 2px solid var(--jc-focus); outline-offset: 3px; }
.jc-news-card { padding: 0; }
.jc-news-card .jc-card__media { aspect-ratio: 1; }
.jc-news-card .jc-card__body { padding: var(--jc-space-24); }
.jc-card__media img { width: 100%; height: 100%; object-fit: contain; transition: transform var(--jc-duration-slow); }
.jc-card:has(.jc-card__link):hover .jc-card__media img { transform: scale(1.02); }
.jc-media-placeholder { display: grid; place-items: center; min-height: 180px; background: var(--jc-beige-200); }
.jc-artist-card .jc-card__media { aspect-ratio: 4 / 5; margin-bottom: var(--jc-space-20); background: var(--jc-beige-200); }
.jc-artist-card .jc-card__media img { object-fit: contain; }
.jc-artist-card__affiliation { color: var(--jc-text-secondary); font-size: var(--jc-fs-small); }
.jc-tag { display: inline-flex; align-items: center; min-height: 44px; padding: 0 var(--jc-space-12); border: var(--jc-rule); color: var(--jc-ink); font: 600 12px/1 var(--jc-font-body); text-decoration: none; }
.jc-tag[aria-current='true'] { border-color: var(--jc-ink); background: var(--jc-ink); color: var(--jc-paper); }
.jc-media-list, .jc-medias-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--jc-space-32); }
.jc-media-card { border: var(--jc-rule); background: var(--jc-surface); }
.jc-media-card__thumbnail { background: var(--jc-beige-200); }
.jc-media-card__thumbnail img { width: 100%; max-height: 300px; object-fit: contain; }
.jc-media-card__body { padding: var(--jc-space-24); }
.jc-media-card__body h2, .jc-media-card__body h3 { margin: var(--jc-space-12) 0; font: 500 var(--jc-fs-card-title)/1.1 var(--jc-font-display); }
.jc-media-card__meta { display: flex; flex-wrap: wrap; gap: var(--jc-space-8); color: var(--jc-text-secondary); font-size: var(--jc-fs-caption); }
.jc-media-card__description, .jc-media-card__subject { color: var(--jc-text-secondary); }
.jc-media-card__link { display: inline-flex; min-height: 44px; align-items: center; gap: var(--jc-space-8); color: var(--jc-link); text-decoration: underline; }
.jc-media-card__audio audio { width: 100%; }
.jc-medias-filters { display: flex; flex-wrap: wrap; gap: var(--jc-space-8); margin-bottom: var(--jc-space-24); }
.jc-medias-sort { margin-bottom: var(--jc-space-32); color: var(--jc-text-secondary); font-size: var(--jc-fs-small); }
.jc-medias-sort a { color: var(--jc-link); text-decoration: underline; }
.jc-shop-artists-grid { display: grid; grid-template-columns: repeat(6, 1fr); gap: var(--jc-space-24); }
.jc-shop-artist-card { color: var(--jc-ink); text-decoration: none; }
.jc-shop-artist-card__image { display: grid; place-items: center; aspect-ratio: 4 / 5; background: var(--jc-beige-200); }
.jc-shop-artist-card__image img { width: 100%; height: 100%; object-fit: contain; }
.jc-shop-artist-card strong { display: block; margin-top: var(--jc-space-12); font: 500 var(--jc-fs-card-title)/1.1 var(--jc-font-display); }
@media (max-width: 1024px) { .jc-shop-artists-grid { grid-template-columns: repeat(3, 1fr); } }
@media (max-width: 767px) { .jc-media-list, .jc-medias-grid { grid-template-columns: 1fr; gap: var(--jc-space-24); } .jc-shop-artists-grid { grid-template-columns: repeat(2, 1fr); } }
