/******* Do not edit this file *******
Simple Custom CSS and JS - by Silkypress.com
Saved: Jul 08 2026 | 13:08:43 */
/* ===== Tables responsives MJC (mobile <= 781px) =====
   .mjc-resp est pose par le JS sur le <table> (Gutenberg ou classique table.responsive).
   - .mjc-resp seul : une carte par ligne (tableaux >= 4 colonnes)
   - .mjc-single    : tout le tableau = une seule carte (tableaux 2 colonnes)
   Desktop (> 781px) inchange. */
@media (max-width: 781px) {
  table.mjc-resp,
  .mjc-resp thead,
  .mjc-resp tbody,
  .mjc-resp tr,
  .mjc-resp td { display: block; width: 100%; height: auto; box-sizing: border-box; }
  table.mjc-resp { border: 0; }
  /* Neutralise les attributs height="..." des tableaux de l'editeur classique */
  table.mjc-resp, .mjc-resp tr, .mjc-resp td { height: auto !important; }

  .mjc-resp tr.mjc-hide-row,
  .mjc-resp tr.mjc-header-row { display: none; }

  .mjc-resp td { border: 0; padding: 0; text-align: left; }
  .mjc-resp td.mjc-hide-cell { display: none; }
  /* Les tableaux classiques enveloppent le contenu dans des <p> : marges neutralisees */
  .mjc-resp p { margin: 0; }

  /* ---------- Mode "une carte par ligne" (>= 4 colonnes) ---------- */
  .mjc-resp tr.mjc-card {
    background: #fff !important;
    border: 1px solid #e2e2e2;
    border-radius: 12px;
    box-shadow: 0 1px 3px rgba(0,0,0,.06);
    padding: 14px 16px;
    margin: 0 0 16px;
  }

  /* En-tete de fiche : titre (.mjc-t) a gauche + categorie a droite en italique */
  .mjc-resp td.mjc-card-title {
    display: flex;
    align-items: baseline;
    gap: 10px;
    font-weight: 700;
    font-size: 17px;
    color: #32373c;
    padding: 0 0 10px;
    margin: 0 0 8px;
    border-bottom: 2px solid #32373c;
    line-height: 1.3;
  }
  .mjc-resp td.mjc-card-title .mjc-t { flex: 1 1 auto; min-width: 0; }
  .mjc-resp td.mjc-card-title[data-cat]::after {
    content: attr(data-cat);
    flex: 0 0 auto;
    font-weight: 400;
    font-style: italic;
    font-size: 13px;
    color: #6a707c;
    white-space: nowrap;
  }

  /* Cellule libellee generique : libelle (petit, gris) au-dessus, valeur en dessous */
  .mjc-resp td.mjc-cell {
    padding: 8px 0;
    border-bottom: 1px solid #f0f0f0;
    color: #32373c;
    font-size: 15px;
    line-height: 1.4;
  }
  .mjc-resp td.mjc-cell:last-child { border-bottom: 0; }
  .mjc-resp td.mjc-cell::before {
    content: attr(data-label);
    display: block;
    color: #6a707c;
    font-size: 13px;
    font-weight: 400;
    margin-bottom: 2px;
  }

  /* Cellule prix (grille de tarifs) : libelle a gauche, prix " €" a droite */
  .mjc-resp td.mjc-price {
    display: flex;
    justify-content: space-between;
    align-items: baseline;
    gap: 12px;
    padding: 7px 0;
    border-bottom: 1px solid #f0f0f0;
    font-size: 0;
    color: transparent;
  }
  .mjc-resp td.mjc-price:last-child { border-bottom: 0; }
  .mjc-resp td.mjc-price::before {
    content: attr(data-label);
    color: #6a707c;
    font-size: 14px;
  }
  .mjc-resp td.mjc-price::after {
    content: attr(data-price) " €";
    font-weight: 700;
    font-size: 15px;
    color: #32373c;
    white-space: nowrap;
  }

  .mjc-resp td.mjc-note {
    padding: 6px 0 0;
    color: #3c424f;
    font-size: 14px;
    line-height: 1.4;
  }

  /* ---------- Mode "tableau entier = une carte" (2 colonnes) ---------- */
  table.mjc-single {
    background: #fff !important;
    border: 1px solid #e2e2e2;
    border-radius: 12px;
    box-shadow: 0 1px 3px rgba(0,0,0,.06);
    padding: 14px 16px;
    margin: 0 0 16px;
  }
  .mjc-single tr.mjc-title2 {
    font-weight: 700;
    font-size: 17px;
    color: #32373c;
    padding: 0 0 10px;
    margin: 0 0 8px;
    border-bottom: 2px solid #32373c;
    line-height: 1.3;
  }
  .mjc-single tr.mjc-title2 td + td { display: none; }
  .mjc-single tr.mjc-line {
    display: flex;
    justify-content: space-between;
    align-items: baseline;
    gap: 12px;
    padding: 7px 0;
    border-bottom: 1px solid #f0f0f0;
  }
  .mjc-single tr.mjc-line:last-child { border-bottom: 0; }
  .mjc-single tr.mjc-line td { padding: 0; width: auto; }
  .mjc-single tr.mjc-line td:first-child { flex: 1 1 auto; min-width: 0; color: #3c424f; font-size: 15px; line-height: 1.4; }
  .mjc-single tr.mjc-line td:last-child { flex: 0 0 auto; text-align: right; font-weight: 700; color: #32373c; font-size: 15px; white-space: nowrap; }
}