/* Menu mobile (≤ 899 px) : une catégorie à la fois. Grande photo ronde, rail de vignettes rondes, titre et nombre de plats,
   puis la liste des plats. La version ordinateur n'est pas concernée. */
.mv { display: none; }

@media (max-width: 899px) {
  /* le conteneur disparaît : le rail devient enfant direct de .mm et reste collé sous l'en-tête pendant tout le défilement */
  .mv { display: contents; }
  .mm { overflow: visible; overflow-x: clip; }
  .mv-stage, .mv-meta { text-align: center; }
  .mm.mv-search .mv { display: none; }

  .mv-stage { display: grid; place-items: center; padding: 14px 0 6px; }
  .mv-disc {
    width: min(72vw, 320px); aspect-ratio: 1; border-radius: 50%; overflow: hidden; background: #152a25;
    box-shadow: 0 0 0 1px rgba(201, 160, 99, .55), 0 0 0 9px #0e1c17, 0 0 0 10px rgba(201, 160, 99, .3), 0 34px 52px -24px rgba(0, 0, 0, .9);
  }
  .mv-img { display: block; width: 100%; height: 100%; object-fit: cover;
    transition: opacity .3s cubic-bezier(.16, 1, .3, 1), transform .5s cubic-bezier(.16, 1, .3, 1); }
  .mv-img.is-swap { opacity: 0; transform: scale(1.05); }

  .mv-rail {
    position: sticky; top: var(--pg-top); z-index: 15; background: #0e1c17; display: flex; gap: 12px; overflow-x: auto; padding: 12px 20px 10px; box-shadow: 0 10px 14px -12px rgba(0, 0, 0, .8); scroll-snap-type: x proximity; scrollbar-width: none;
    -webkit-mask-image: linear-gradient(90deg, transparent 0, #000 7%, #000 93%, transparent 100%);
    mask-image: linear-gradient(90deg, transparent 0, #000 7%, #000 93%, transparent 100%);
  }
  .mv-rail::-webkit-scrollbar { display: none; }
  .mv-rail::before, .mv-rail::after { content: ''; flex: 0 0 30%; }
  .mv-thumb {
    flex: none; width: 74px; padding: 0; border: 0; background: none; cursor: pointer; scroll-snap-align: center;
    display: flex; flex-direction: column; align-items: center; gap: 7px; opacity: .62;
    transition: opacity .3s cubic-bezier(.16, 1, .3, 1);
  }
  .mv-ph {
    display: block; width: 60px; height: 60px; padding: 3px; border-radius: 50%; background: #10211c;
    border: 1px solid rgba(248, 246, 240, .22);
    transition: transform .3s cubic-bezier(.16, 1, .3, 1), border-color .3s cubic-bezier(.16, 1, .3, 1), box-shadow .3s cubic-bezier(.16, 1, .3, 1);
  }
  .mv-ph img { display: block; width: 100%; height: 100%; border-radius: 50%; object-fit: cover; }
  .mv-lb { font-size: .6rem; font-weight: 500; letter-spacing: .14em; text-transform: uppercase; line-height: 1.2; color: #f4f2e8; text-align: center; }
  .mv-thumb[aria-selected="true"] { opacity: 1; }
  .mv-thumb[aria-selected="true"] .mv-ph { transform: scale(1.12); border-color: #e9cf9f; box-shadow: 0 0 0 3px rgba(233, 207, 159, .22); }
  .mv-thumb[aria-selected="true"] .mv-lb { color: #e6c98a; }
  .mv-thumb:focus-visible { outline: 2px solid #e9cf9f; outline-offset: 3px; border-radius: 12px; }

  .mv-meta { padding: 10px 20px 4px; }
  .mv-title { margin: 0; font-family: 'Cormorant Garamond', Georgia, serif; font-weight: 500; font-size: clamp(2rem, 9vw, 2.6rem); line-height: 1.05; color: #f4f2e8; text-wrap: balance; }
  .mv-count { margin: 6px 0 0; font-size: .74rem; letter-spacing: .24em; text-transform: uppercase; color: #e6c98a; }

  /* une seule catégorie à la fois ; la recherche garde l'affichage en cartes */
  .mm.mv-on:not(.mv-search) .mm-pills { display: none; }
  .mm.mv-on:not(.mv-search) .mm-card:not(.is-active) { display: none; }
  .mm.mv-on:not(.mv-search) .mm-card.is-active { margin: 8px 14px 26px; padding: 8px 18px 10px; }
  .mm.mv-on:not(.mv-search) .mm-card.is-active::before { display: none; }
  .mm.mv-on:not(.mv-search) .mm-card.is-active .mm-head { display: none; }

  /* « Tout » n'a pas de sens ici : une catégorie à la fois */
  /* les noms sont maintenant sous les vignettes : la rangée de boutons du haut disparaît */
  #bsTabs { display: none; }
}
