/* Maillage interne — blocs neutres, stylables par le thème (Phase 3) */
.mjc-breadcrumb { font-size: 13px; margin: 12px 0; }
.mjc-breadcrumb ol { list-style: none; display: flex; flex-wrap: wrap; gap: 6px; margin: 0; padding: 0; }
.mjc-breadcrumb li:not(:last-child)::after { content: "›"; margin-left: 6px; opacity: .5; }
.mjc-breadcrumb a { text-decoration: none; }
.mjc-breadcrumb [aria-current] { opacity: .7; }

.mjc-block { margin: 32px 0; }
.mjc-block__title { font-size: 22px; margin: 0 0 14px; }

.mjc-linklist { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 10px; }
.mjc-linklist li { margin: 0; }
.mjc-linklist a { display: inline-block; padding: 8px 14px; border: 1px solid rgba(0,0,0,.12); border-radius: 999px; text-decoration: none; font-size: 14px; transition: all .15s; }
.mjc-linklist a:hover { border-color: currentColor; }

.mjc-cards { display: grid; grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); gap: 16px; }
.mjc-card { display: block; border-radius: 12px; overflow: hidden; text-decoration: none; border: 1px solid rgba(0,0,0,.08); background: #fff; transition: transform .15s, box-shadow .15s; }
.mjc-card:hover { transform: translateY(-2px); box-shadow: 0 8px 24px rgba(0,0,0,.08); }
.mjc-card img { width: 100%; aspect-ratio: 4/3; object-fit: cover; display: block; }
.mjc-card__title { display: block; padding: 10px 12px; font-weight: 600; font-size: 14px; }
