.media-title{font-size:1.75rem;font-weight:800;margin:1rem 0}
.media-grid{display:grid;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(220px,1fr))}
.media-card{display:block;border:1px solid #e5e7eb;border-radius:12px;padding:1rem;text-decoration:none;color:inherit;background:#fff;box-shadow:0 1px 2px rgba(0,0,0,0.04)}
.media-card:hover{box-shadow:0 4px 12px rgba(0,0,0,0.08)}
.media-card-title{font-weight:700;margin-top:.25rem}
.media-card-sub{opacity:.7;font-size:.9rem}
.media-thumb{aspect-ratio:16/9;overflow:hidden;border-radius:8px;margin-bottom:.5rem;display:grid;place-items:center;background:#f7f7f7}
.media-thumb img{width:100%;height:100%;object-fit:cover}
.media-breadcrumb{display:inline-block;margin:.5rem 0;color:#2563eb;text-decoration:none}
.media-breadcrumb:hover{text-decoration:underline}
.media-info{display:grid;gap:.25rem;margin:.5rem 0 1rem}
.media-links a{margin-right:.75rem}
.media-gallery{display:grid;gap:.75rem;grid-template-columns:repeat(auto-fill,minmax(220px,1fr))}
.media-gallery img{width:100%;height:220px;object-fit:cover;border-radius:12px;border:1px solid #e5e7eb}

/* Captions for gallery images */
.media-figure{margin:0}
.media-caption{font-size:.85rem;color:#6b7280;padding-top:.35rem;line-height:1.3}
.media-caption a{color:#2563eb;text-decoration:none}
.media-caption a:hover{text-decoration:underline}
