#prdts h1 {
  text-transform: uppercase;
  margin-bottom: 0 !important;
}

#prdts #apercu .card-divider {
  background-color: #005d8a !important;
  padding: 0.75rem 1rem;
  color: #fff !important;
  font-weight: bold !important;
  font-size: 1.5rem !important;
  text-align: center !important;
}

/* #apercu = le <a class="card"> (mep-fiche ~l.55) : hover sur le lien, pas #apercu a */
#prdts #fiche #apercu.card:hover .card-section-double {
  background-color: #cee5f6 !important;
}
#prdts #fiche h1 {color: #005d8a !important; text-transform: none !important;}

#prdts #publiee .card {
  margin-bottom: 2rem;
  display: flex;
  flex-direction: column;
}
/* Grille flx : l’espacement vient du gap, pas de la marge des cartes */
#prdts #publiee .flxgrid .card {
  margin-bottom: 0;
}
#prdts #publiee .flxgrid__item > a > .card {
  display: flex;
  flex-direction: column;
  min-height: 0;
}
#prdts #publiee a {color: black !important; text-decoration: none !important;}

#prdts #publiee .card:hover {
  -webkit-box-shadow: 0 4px 15px 0 rgb(0 0 0 / 30%),
    0 6px 20px 0 rgb(0 0 0 / 39%);
  box-shadow: 0 4px 8px 0 rgb(0 0 0 / 30%), 0 6px 20px 0 rgb(0 0 0 / 39%);
  background: #f9f2ca;
}
#prdts #publiee  .card:hover .card-divider {
  background-color: #F2E074 !important;
  color: black !important;
 
}

#prdts #avenir .bordure {
  border: 2px solid #000 !important;
}

#prdts #avenir  .card .card-divider {
  background-color: #F2E074 !important;
  color: black !important;
  text-align: center !important;
  border-bottom: 2px solid #000 !important;
}
/*
 * Grille flex (doublon aligné sur mep.css — mep.css est la source).
 * Changements presets / colonnes / gap : faire d’abord dans mep.css, puis reporter ici.
 * --flxgrid-cols : colonnes à ce breakpoint (1–12). --flxgrid-gap : espacement.
 */
.flxgrid {
  --flxgrid-gap: 1.5rem;
  --flxgrid-cols: 1;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: stretch;
  align-content: flex-start;
  gap: var(--flxgrid-gap);
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
}

/* Même échelle que .fg-row.fg-gap-* : n × 0,25rem (0–24). S’applique à --flxgrid-gap. */
.flxgrid.flxgrid-gap-0 { --flxgrid-gap: 0; }
.flxgrid.flxgrid-gap-1 { --flxgrid-gap: 0.25rem; }
.flxgrid.flxgrid-gap-2 { --flxgrid-gap: 0.5rem; }
.flxgrid.flxgrid-gap-3 { --flxgrid-gap: 0.75rem; }
.flxgrid.flxgrid-gap-4 { --flxgrid-gap: 1rem; }
.flxgrid.flxgrid-gap-5 { --flxgrid-gap: 1.25rem; }
.flxgrid.flxgrid-gap-6 { --flxgrid-gap: 1.5rem; }
.flxgrid.flxgrid-gap-7 { --flxgrid-gap: 1.75rem; }
.flxgrid.flxgrid-gap-8 { --flxgrid-gap: 2rem; }
.flxgrid.flxgrid-gap-9 { --flxgrid-gap: 2.25rem; }
.flxgrid.flxgrid-gap-10 { --flxgrid-gap: 2.5rem; }
.flxgrid.flxgrid-gap-11 { --flxgrid-gap: 2.75rem; }
.flxgrid.flxgrid-gap-12 { --flxgrid-gap: 3rem; }
.flxgrid.flxgrid-gap-13 { --flxgrid-gap: 3.25rem; }
.flxgrid.flxgrid-gap-14 { --flxgrid-gap: 3.5rem; }
.flxgrid.flxgrid-gap-15 { --flxgrid-gap: 3.75rem; }
.flxgrid.flxgrid-gap-16 { --flxgrid-gap: 4rem; }
.flxgrid.flxgrid-gap-17 { --flxgrid-gap: 4.25rem; }
.flxgrid.flxgrid-gap-18 { --flxgrid-gap: 4.5rem; }
.flxgrid.flxgrid-gap-19 { --flxgrid-gap: 4.75rem; }
.flxgrid.flxgrid-gap-20 { --flxgrid-gap: 5rem; }
.flxgrid.flxgrid-gap-21 { --flxgrid-gap: 5.25rem; }
.flxgrid.flxgrid-gap-22 { --flxgrid-gap: 5.5rem; }
.flxgrid.flxgrid-gap-23 { --flxgrid-gap: 5.75rem; }
.flxgrid.flxgrid-gap-24 { --flxgrid-gap: 6rem; }
.flxgrid.flxgrid-gap-sm { --flxgrid-gap: 0.25rem; }
.flxgrid.flxgrid-gap { --flxgrid-gap: 0.5rem; }
.flxgrid.flxgrid-gap-lg { --flxgrid-gap: 1rem; }

.flxgrid__item {
  flex: 0 1
    calc(
      (100% - (var(--flxgrid-cols) - 1) * var(--flxgrid-gap)) /
        var(--flxgrid-cols)
    );
  max-width: calc(
    (100% - (var(--flxgrid-cols) - 1) * var(--flxgrid-gap)) /
      var(--flxgrid-cols)
  );
  min-width: 0;
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
}

.flxgrid__item > a {
  flex: 1 1 auto;
  display: flex;
  flex-direction: column;
  min-height: 0;
  height: 100%;
}

.flxgrid .card {
  margin-bottom: 0;
  flex: 1 1 auto;
  min-height: 0;
  width: 100%;
}

/* Cartes du repeater « à venir » : même chaîne flex que .flxgrid__item > a + .card */
#prdts #avenir .flxgrid__item > .card {
  display: flex;
  flex-direction: column;
  min-height: 0;
}

/*
 * Carte en grille avec pied — aligné sur mep.css (classe .flxgrid-card-footer).
 */
.flxgrid__item > .flxgrid-stack-end,
.flxgrid__item > a > .flxgrid-stack-end,
.flxgrid__item > a.flxgrid-stack-end {
  display: flex;
  flex-direction: column;
  min-height: 0;
  flex: 1 1 auto;
  width: 100%;
  box-sizing: border-box;
}

.flxgrid__item > .flxgrid-stack-end > .card-section:not(.flxgrid-card-footer),
.flxgrid__item > a > .flxgrid-stack-end > .card-section:not(.flxgrid-card-footer),
.flxgrid__item > a.flxgrid-stack-end > .card-section:not(.flxgrid-card-footer) {
  flex: 0 0 auto;
}

.flxgrid__item > .flxgrid-stack-end > .flxgrid-card-footer,
.flxgrid__item > a > .flxgrid-stack-end > .flxgrid-card-footer,
.flxgrid__item > a.flxgrid-stack-end > .flxgrid-card-footer {
  flex: 1 1 auto;
  min-height: 0;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: stretch;
}

/* Preset type Foundation : 1 / 3 / 5 colonnes (<640 / ≥640 / ≥1024) */
.flxgrid-preset-1-3-5 {
  --flxgrid-cols: 1;
}
@media screen and (min-width: 640px) {
  .flxgrid-preset-1-3-5 {
    --flxgrid-cols: 3;
  }
}
@media screen and (min-width: 1024px) {
  .flxgrid-preset-1-3-5 {
    --flxgrid-cols: 5;
  }
}

/* Exemple : 1 / 2 / 4 — copier et renommer pour d’autres réglages */
/* Également : 4 large / 2 medium / 1 small (presets grille AT). */
.flxgrid-preset-1-2-4 {
  --flxgrid-cols: 1;
}
@media screen and (min-width: 640px) {
  .flxgrid-preset-1-2-4 {
    --flxgrid-cols: 2;
  }
}
@media screen and (min-width: 1024px) {
  .flxgrid-preset-1-2-4 {
    --flxgrid-cols: 4;
  }
}

/* 1 / 2 / 3 colonnes (souvent « à venir » dans une carte parent) */
.flxgrid-preset-1-2-3 {
  --flxgrid-cols: 1;
}
@media screen and (min-width: 640px) {
  .flxgrid-preset-1-2-3 {
    --flxgrid-cols: 2;
  }
}
@media screen and (min-width: 1024px) {
  .flxgrid-preset-1-2-3 {
    --flxgrid-cols: 3;
  }
}

/* 1 colonne (<1024), 3 colonnes (≥1024) — même logique que mep.css */
.flxgrid-preset-1-1-3 {
  --flxgrid-cols: 1;
}
@media screen and (min-width: 1024px) {
  .flxgrid-preset-1-1-3 {
    --flxgrid-cols: 3;
  }
}

/* Presets grille AT — ordre small / medium / large (<640 / ≥640 / ≥1024). */
.flxgrid-preset-2-3-6 {
  --flxgrid-cols: 2;
}
@media screen and (min-width: 640px) {
  .flxgrid-preset-2-3-6 {
    --flxgrid-cols: 3;
  }
}
@media screen and (min-width: 1024px) {
  .flxgrid-preset-2-3-6 {
    --flxgrid-cols: 6;
  }
}

.flxgrid-preset-1-3-6 {
  --flxgrid-cols: 1;
}
@media screen and (min-width: 640px) {
  .flxgrid-preset-1-3-6 {
    --flxgrid-cols: 3;
  }
}
@media screen and (min-width: 1024px) {
  .flxgrid-preset-1-3-6 {
    --flxgrid-cols: 6;
  }
}

.flxgrid-preset-1-2-5 {
  --flxgrid-cols: 1;
}
@media screen and (min-width: 640px) {
  .flxgrid-preset-1-2-5 {
    --flxgrid-cols: 2;
  }
}
@media screen and (min-width: 1024px) {
  .flxgrid-preset-1-2-5 {
    --flxgrid-cols: 5;
  }
}

.flxgrid-preset-1-2-2 {
  --flxgrid-cols: 1;
}
@media screen and (min-width: 640px) {
  .flxgrid-preset-1-2-2 {
    --flxgrid-cols: 2;
  }
}
@media screen and (min-width: 1024px) {
  .flxgrid-preset-1-2-2 {
    --flxgrid-cols: 2;
  }
}

.flxgrid-preset-1-1-2 {
  --flxgrid-cols: 1;
}
@media screen and (min-width: 640px) {
  .flxgrid-preset-1-1-2 {
    --flxgrid-cols: 1;
  }
}
@media screen and (min-width: 1024px) {
  .flxgrid-preset-1-1-2 {
    --flxgrid-cols: 2;
  }
}

#prdts .simule-h1 {
  font-size: 2rem;
  text-transform: uppercase;  
  padding-top: 1rem;
  padding-bottom: 1rem;
  margin-bottom: 0 !important;
  font-family: "Fira Sans", sans-serif !important;
  font-weight: 400 !important;
}
#prdts #retour a{color: black !important; text-decoration: none !important; font-weight: bold !important;}
#prdts #retour a:hover{color: #005d8a !important; text-decoration: none !important;}
#retour {/*background-color: #EEEEEE !important;*/ padding: 1rem !important;}
#prdts #retour  a.bouton-bdc:hover {background-color: #F2E074 !important; color: black !important;}


#prdts h2 {
  color: #005d8a !important;
}
/* Aligner le bandeau et le corps (mes-styles impose 2rem sur .card-section-double) */
#prdts #env .card-divider {
  background-color: #005d8a !important;
  padding: 0.75rem 1rem;
}
#prdts #env .card-divider h2 {
  color: #ffffff !important;
}
#prdts #env .card-section-double h2 {
  color: #005d8a !important;
}
#prdts #env .card-section-double h3 {
  color: #005d8a !important;
  font-size: 1.5rem;
  font-weight: bold;
}
#prdts  h3 {
  color: #005d8a !important;
  font-size: 1.5rem;
  font-weight: bold;
}
#prdts #env .card-section-double {background-color: #EEEEEE !important;}

/* Bloc En vedette — même principe que page-idlcf : .interchange-set (mes-styles : largeur 100 %) */
#prdts #env .mep-vedette-thumb-wrap {
  min-width: 0;
}
#prdts #env .mep-vedette-thumb-wrap img.interchange-set,
#prdts #env .mep-vedette-thumb-wrap img {
  width: 100%;
  height: auto;
  display: block;
}
#prdts #env .mep-vedette-contenu {
  min-width: 0;
}
#prdts #env .mep-vedette-actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.75rem 1.25rem;
}

#prdts a.bouton-bdc {
  display: inline-flex;
  flex-direction: row;
  align-items: center;
  gap: 0.5rem;
  max-width: 100%;
  min-width: 0;
  background-color: white;
  color: black;
  border: 2px solid black;
  padding: 0.5rem 1rem;
  border-radius: 0.25rem;
  text-decoration: none;
  box-sizing: border-box;
  font-weight: bold;
}
#prdts a.bouton-bdc .bouton-bdc__text {
  flex: 1 1 auto;
  min-width: 0;
  text-align: left;
}
#prdts a.bouton-bdc .bouton-bdc__icon {
  flex-shrink: 0;
  align-self: center;
  font-size: 2rem;
}
#prdts a.bouton-bdc:hover {background-color: #F2E074 !important;}


/*
 * Grille 12 — flex + flex-grow = parts sur 12 (compatible avec gap)
 * Les anciennes largeurs en % + max-width + gap laissaient du vide à droite.
 * lg : défaut | md : ≤1024px | sm : ≤600px
 * Les classes .fg-* ci-dessous sont globales (pas de scope #prdts).
 */

.fg-row {
  display: flex;
  flex-wrap: wrap;
  width: 100%;
  box-sizing: border-box;
  align-items: stretch;
  align-content: flex-start;
}

.fg-col {
  min-width: 0;
  box-sizing: border-box;
}

.fg-row.fg-gap-0 { gap: 0; }

.fg-row.fg-gap-1 { gap: 0.25rem; }
.fg-row.fg-gap-2 { gap: 0.5rem; }
.fg-row.fg-gap-3 { gap: 0.75rem; }
.fg-row.fg-gap-4 { gap: 1rem; }
.fg-row.fg-gap-5 { gap: 1.25rem; }
.fg-row.fg-gap-6 { gap: 1.5rem; }
.fg-row.fg-gap-7 { gap: 1.75rem; }
.fg-row.fg-gap-8 { gap: 2rem; }
.fg-row.fg-gap-9 { gap: 2.25rem; }
.fg-row.fg-gap-10 { gap: 2.5rem; }
.fg-row.fg-gap-11 { gap: 2.75rem; }
.fg-row.fg-gap-12 { gap: 3rem; }

.fg-row.fg-gap-sm { gap: 0.25rem; }
.fg-row.fg-gap { gap: 0.5rem; }
.fg-row.fg-gap-lg { gap: 1rem; }

.fg-row.fg-items-start { align-items: flex-start; }
.fg-row.fg-items-center { align-items: center; }
.fg-row.fg-items-end { align-items: flex-end; }
.fg-row.fg-items-stretch { align-items: stretch; }

.fg-row.fg-justify-start { justify-content: flex-start; }
.fg-row.fg-justify-center { justify-content: center; }
.fg-row.fg-justify-end { justify-content: flex-end; }
.fg-row.fg-justify-between { justify-content: space-between; }
.fg-row.fg-justify-around { justify-content: space-around; }
.fg-row.fg-justify-evenly { justify-content: space-evenly; }

.fg-col.fg-self-start { align-self: flex-start; }
.fg-col.fg-self-center { align-self: center; }
.fg-col.fg-self-end { align-self: flex-end; }
.fg-col.fg-self-stretch { align-self: stretch; }

.fg-col.fg-vcenter {
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.fg-col.fg-vbottom {
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
}
.fg-col.fg-hcenter {
  display: flex;
  flex-direction: column;
  align-items: center;
}
.fg-col.fg-vcenter.fg-hcenter {
  align-items: center;
  justify-content: center;
}
.fg-col.fg-vbottom.fg-hcenter {
  align-items: center;
  justify-content: flex-end;
}

.fg-col.fg-text-left { text-align: left; }
.fg-col.fg-text-center { text-align: center; }
.fg-col.fg-text-right { text-align: right; }

/*
 * Ordre des colonnes dans .fg-row (flex order), type Tailwind.
 * Utiliser sur .fg-col : ex. fg-lg-order-last fg-sm-order-first (image en bas en desktop, en haut en mobile).
 * Les règles md/sm dans leurs media queries écrasent lg si les deux classes sont présentes (même spécificité, fichier plus bas).
 */
.fg-col.fg-lg-order-first { order: -1; }
.fg-col.fg-lg-order-last { order: 999; }
.fg-col.fg-lg-order-none { order: 0; }
.fg-col.fg-lg-order-1 { order: 1; }
.fg-col.fg-lg-order-2 { order: 2; }
.fg-col.fg-lg-order-3 { order: 3; }
.fg-col.fg-lg-order-4 { order: 4; }
.fg-col.fg-lg-order-5 { order: 5; }
.fg-col.fg-lg-order-6 { order: 6; }
.fg-col.fg-lg-order-7 { order: 7; }
.fg-col.fg-lg-order-8 { order: 8; }
.fg-col.fg-lg-order-9 { order: 9; }
.fg-col.fg-lg-order-10 { order: 10; }
.fg-col.fg-lg-order-11 { order: 11; }
.fg-col.fg-lg-order-12 { order: 12; }

/* align-items sur l’axe secondaire d’une .fg-col en flex colonne (ex. avec fg-vcenter) — gauche / centre / droite */
.fg-col.fg-lg-items-start { align-items: flex-start; }
.fg-col.fg-lg-items-center { align-items: center; }
.fg-col.fg-lg-items-end { align-items: flex-end; }

.fg-lg-1 { flex: 1 1 0%; min-width: 0; }
.fg-lg-2 { flex: 2 1 0%; min-width: 0; }
.fg-lg-3 { flex: 3 1 0%; min-width: 0; }
.fg-lg-4 { flex: 4 1 0%; min-width: 0; }
.fg-lg-5 { flex: 5 1 0%; min-width: 0; }
.fg-lg-6 { flex: 6 1 0%; min-width: 0; }
.fg-lg-7 { flex: 7 1 0%; min-width: 0; }
.fg-lg-8 { flex: 8 1 0%; min-width: 0; }
.fg-lg-9 { flex: 9 1 0%; min-width: 0; }
.fg-lg-10 { flex: 10 1 0%; min-width: 0; }
.fg-lg-11 { flex: 11 1 0%; min-width: 0; }
.fg-lg-12 { flex: 0 0 100%; min-width: 0; width: 100%; max-width: 100%; }

@media only screen and (max-width: 1024px) {
  .fg-md-1 { flex: 1 1 0%; min-width: 0; }
  .fg-md-2 { flex: 2 1 0%; min-width: 0; }
  .fg-md-3 { flex: 3 1 0%; min-width: 0; }
  .fg-md-4 { flex: 4 1 0%; min-width: 0; }
  .fg-md-5 { flex: 5 1 0%; min-width: 0; }
  .fg-md-6 { flex: 6 1 0%; min-width: 0; }
  .fg-md-7 { flex: 7 1 0%; min-width: 0; }
  .fg-md-8 { flex: 8 1 0%; min-width: 0; }
  .fg-md-9 { flex: 9 1 0%; min-width: 0; }
  .fg-md-10 { flex: 10 1 0%; min-width: 0; }
  .fg-md-11 { flex: 11 1 0%; min-width: 0; }
  .fg-md-12 { flex: 0 0 100%; min-width: 0; width: 100%; max-width: 100%; }

  .fg-col.fg-md-items-start { align-items: flex-start; }
  .fg-col.fg-md-items-center { align-items: center; }
  .fg-col.fg-md-items-end { align-items: flex-end; }

  .fg-col.fg-md-order-first { order: -1; }
  .fg-col.fg-md-order-last { order: 999; }
  .fg-col.fg-md-order-none { order: 0; }
  .fg-col.fg-md-order-1 { order: 1; }
  .fg-col.fg-md-order-2 { order: 2; }
  .fg-col.fg-md-order-3 { order: 3; }
  .fg-col.fg-md-order-4 { order: 4; }
  .fg-col.fg-md-order-5 { order: 5; }
  .fg-col.fg-md-order-6 { order: 6; }
  .fg-col.fg-md-order-7 { order: 7; }
  .fg-col.fg-md-order-8 { order: 8; }
  .fg-col.fg-md-order-9 { order: 9; }
  .fg-col.fg-md-order-10 { order: 10; }
  .fg-col.fg-md-order-11 { order: 11; }
  .fg-col.fg-md-order-12 { order: 12; }

  #prdts h1 {
    font-size: 3rem;
  }
  #prdts h2 {
    font-size: 2rem;
  }

  #prdts .simule-h1 {
    font-size: 3rem;
  }
  


}

@media only screen and (max-width: 1024px) {
  #prdts h1 {
    font-size: 2.5rem;
  }
}
@media only screen and (max-width: 768px) {
  #prdts h1 {
    font-size: 2rem;
  }
  #prdts .prdts-bdc-col {
    display: none !important;
  }
}


@media only screen and (max-width: 600px) {
  /* Boutons En vedette : pleine largeur + espace entre les deux */
  #prdts #env .mep-vedette-actions {
    flex-direction: column;
    align-items: stretch;
    width: 100%;
    gap: 1rem;
  }
  #prdts #env .mep-vedette-actions a.bouton-bdc {
    display: flex;
    width: 100%;
    max-width: none;
    box-sizing: border-box;
  }

  .fg-col.fg-sm-order-first { order: -1; }
  .fg-col.fg-sm-order-last { order: 999; }
  .fg-col.fg-sm-order-none { order: 0; }
  .fg-col.fg-sm-order-1 { order: 1; }
  .fg-col.fg-sm-order-2 { order: 2; }
  .fg-col.fg-sm-order-3 { order: 3; }
  .fg-col.fg-sm-order-4 { order: 4; }
  .fg-col.fg-sm-order-5 { order: 5; }
  .fg-col.fg-sm-order-6 { order: 6; }
  .fg-col.fg-sm-order-7 { order: 7; }
  .fg-col.fg-sm-order-8 { order: 8; }
  .fg-col.fg-sm-order-9 { order: 9; }
  .fg-col.fg-sm-order-10 { order: 10; }
  .fg-col.fg-sm-order-11 { order: 11; }
  .fg-col.fg-sm-order-12 { order: 12; }

  .fg-sm-1 { flex: 1 1 0%; min-width: 0; }
  .fg-sm-2 { flex: 2 1 0%; min-width: 0; }
  .fg-sm-3 { flex: 3 1 0%; min-width: 0; }
  .fg-sm-4 { flex: 4 1 0%; min-width: 0; }
  .fg-sm-5 { flex: 5 1 0%; min-width: 0; }
  .fg-sm-6 { flex: 6 1 0%; min-width: 0; }
  .fg-sm-7 { flex: 7 1 0%; min-width: 0; }
  .fg-sm-8 { flex: 8 1 0%; min-width: 0; }
  .fg-sm-9 { flex: 9 1 0%; min-width: 0; }
  .fg-sm-10 { flex: 10 1 0%; min-width: 0; }
  .fg-sm-11 { flex: 11 1 0%; min-width: 0; }
  .fg-sm-12 { flex: 0 0 100%; min-width: 0; width: 100%; max-width: 100%; }

  .fg-col.fg-sm-items-start { align-items: flex-start; }
  .fg-col.fg-sm-items-center { align-items: center; }
  .fg-col.fg-sm-items-end { align-items: flex-end; }
}
