/* ===============================
   CONTENEUR PRINCIPAL
================================ */

.container-restaurant {
  background-color: #f8f4e9;
  color: #222;
  width: 75%;
  margin: auto;
  padding: 2rem;
  border: 1px solid #ccc;
  border-radius: 10px;
  line-height: 1.4;
  box-sizing: border-box;
}

/* ===============================
   TITRES
================================ */

.container-restaurant h3 {
  margin-top: 2rem;
  margin-bottom: 1rem;
  border-bottom: 2px solid #333;
  padding-bottom: 0.3rem;
  font-weight: 700;
}

/* ===============================
   ITEMS DE MENU
================================ */

.container-restaurant .menu-item {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
  margin: 0.6rem 0;
}

/* Texte du plat */
.container-restaurant .menu-item > div {
  flex: 1;
}

/* Prix */
.container-restaurant .price {
  font-weight: bold;
  white-space: nowrap;
  font-size: 0.9em;
}

/* Notes (réservations, horaires…) */
.container-restaurant .note {
  color: #b00000;
  font-size: 0.85em;
}

/* ===============================
   ITEMS AVEC PHOTO
================================ */

.container-restaurant .menu-item-photo {
  display: grid;
  grid-template-columns: 120px 1fr auto;
  align-items: center;
  gap: 1rem;
}

/* Lien image */
.container-restaurant .menu-photo {
  display: block;
  width: 120px;
}

/* Image plat */
.container-restaurant .menu-photo img {
  width: 120px;        /* ✅ taille desktop */
  height: auto;
  border-radius: 8px;
  display: block;
  object-fit: cover;
}

/* ===============================
   COLONNES (DESSERTS / BOISSONS)
================================ */

.container-restaurant .columns {
  display: flex;
  flex-wrap: wrap;
  gap: 2rem;
  margin-top: 2rem;
}

.container-restaurant .column {
  flex: 1;
  min-width: 260px;
}

/* ===============================
   RESPONSIVE MOBILE
================================ */

@media (max-width: 900px) {
  .container-restaurant {
    width: 95%;
    padding: 1.5rem;
  }
}

@media (max-width: 600px) {

  /* Menu items passent en colonne */
  .container-restaurant .menu-item,
  .container-restaurant .menu-item-photo {
    display: grid;
    grid-template-columns: 1fr;
    gap: 0.5rem;
  }

  /* Images plus petites sur mobile */
  .container-restaurant .menu-photo {
    width: 100%;
  }

  .container-restaurant .menu-photo img {
    width: 100%;       /* ✅ plein largeur mobile */
    max-width: 180px;  /* ✅ limite pour ne pas écraser */
    margin: auto;
  }

  /* Prix aligné à gauche sur mobile */
  .container-restaurant .price {
    text-align: left;
  }
}
