/* ==========================================================================
   EPN — PAGES, ARTICLES & TÉMOIGNAGES — Mise en forme des vues détail
   Cible : single post · single page · affichage témoignages
   Les cartes de listing (home/archive) ne sont PAS modifiées.
   ========================================================================== */

/* ==========================================================================
   PARTIE 1 — VARIABLES LOCALES
   ========================================================================== */

:root {
  --epn-blue-800:  #0f3d5e;
  --epn-blue-700:  #185580;
  --epn-blue-50:   #e7f0fa;
  --epn-amber-700: #b45309;
  --epn-ink:       #1f2d3a;
  --epn-ink-soft:  #4a5a6a;
  --epn-muted:     #6b7580;
  --epn-line:      #d8e3ee;
}

/* ==========================================================================
   PARTIE 2 — SÉPARATEUR GRADIENT (upgrade du .epn-detail-separator-bar)
   Remplace la barre bleu pâle par le gradient bleu→ambre→bleu du design
   ========================================================================== */

body:is(.page:not(.home):not(.single-event), .single-post)
.epn-detail-separator {
  display:  block !important;
  width:    62% !important;
  margin:   0 auto 0.85rem !important;
  padding:  0 !important;
  background: transparent !important;
}

body:is(.page:not(.home):not(.single-event), .single-post)
.epn-detail-separator-bar {
  position:      relative !important;
  display:       block !important;
  width:         100% !important;
  height:        4px !important;
  border-radius: 999px !important;
  background: linear-gradient(
    90deg,
    transparent 0%,
    rgba(15, 61, 94, 0.88) 28%,
    var(--epn-amber-700) 50%,
    rgba(15, 61, 94, 0.88) 72%,
    transparent 100%
  ) !important;
  box-shadow: 0 4px 12px rgba(15, 61, 94, 0.14) !important;
}

/* Pas de points aux extrémités */
body:is(.page:not(.home):not(.single-event), .single-post)
.epn-detail-separator-bar::before,
body:is(.page:not(.home):not(.single-event), .single-post)
.epn-detail-separator-bar::after {
  content: none !important;
}

/* ==========================================================================
   PARTIE 3 — BLOC MÉTADONNÉES CENTRÉ — FORME PILL
   Cible le .epn-detail-meta-block et .epn-detail-meta-line existants
   ========================================================================== */

body:is(.page:not(.home):not(.single-event), .single-post)
.epn-detail-meta-block {
  clear:           both !important;
  display:         flex !important;
  flex-direction:  column !important;
  justify-content: center !important;
  align-items:     center !important;
  width:           100% !important;
  margin:          0 0 1.2rem !important;
  padding:         0 !important;
  border:          none !important;
  background:      none !important;
}

body:is(.page:not(.home):not(.single-event), .single-post)
.epn-detail-meta-line {
  display:         inline-flex !important;
  flex-direction:  row !important;
  flex-wrap:       nowrap !important;
  align-items:     center !important;
  justify-content: center !important;
  gap:             0 10px !important;
  padding:         0 !important;
  margin:          0 auto !important;
  width:           fit-content !important;
  max-width:       100% !important;
  overflow:        hidden !important;
  white-space:     nowrap !important;
  font-size:       clamp(0.68rem, 1.3vw, 0.88rem) !important;
  font-weight:     500 !important;
  line-height:     1.5 !important;
  color:           #31506a !important;
  background:      none !important;
  border-radius:   0 !important;
  box-shadow:      none !important;
  border:          none !important;
  scrollbar-width: none !important;
}

body:is(.page:not(.home):not(.single-event), .single-post)
.epn-detail-meta-line .epn-detail-meta-item {
  display:       inline-flex !important;
  flex-direction: row !important;
  align-items:   center !important;
  gap:           4px !important;
  flex:          0 1 auto !important;
  min-width:     0 !important;
  white-space:   nowrap !important;
  overflow:      hidden !important;
  text-overflow: ellipsis !important;
  transition:    color 0.2s ease, transform 0.2s ease !important;
}

/* ==========================================================================
   PAGE LISTING FORMATION SENIORS — texte et sections historiques
   Cible uniquement la page Inclusion Numérique des Seniors.
   ========================================================================== */

body.page-id-12872 .entry-header {
  display: none !important;
}

body.page-id-12870 .entry-header {
  display: none !important;
}

body.page-id-12870 article#post-12870 > .inside-article {
  width: min(100%, 1440px) !important;
  margin: clamp(2rem, 5vw, 4rem) auto !important;
  padding: 0 !important;
  border-radius: 24px !important;
  overflow: hidden !important;
}

body.page-id-12870 article#post-12870 .entry-content {
  margin: 0 !important;
}

body.page-id-12870 .epn-creative-history {
  max-width: none !important;
}

body.page-id-12870 .epn-creative-hero {
  padding: clamp(1.5rem, 3vw, 2.35rem) clamp(1.4rem, 4vw, 4rem) clamp(1.2rem, 2.5vw, 1.8rem) !important;
}

body.page-id-12870 .epn-creative-kicker,
body.page-id-12870 .epn-creative-table-title {
  display: inline-flex !important;
  align-items: center !important;
  width: fit-content !important;
  margin: 0 0 0.85rem !important;
  padding: 0.46rem 0.82rem !important;
  border: 1px solid rgba(242, 140, 40, 0.35) !important;
  border-radius: 999px !important;
  background: rgba(255, 247, 239, 0.96) !important;
  color: #a93f00 !important;
  font-size: 0.78rem !important;
  font-weight: 900 !important;
  letter-spacing: 0.06em !important;
  line-height: 1 !important;
  text-transform: uppercase !important;
}

body.page-id-12870 .epn-creative-title {
  margin: 0 0 0.7rem !important;
}

body.page-id-12870 .epn-creative-intro {
  max-width: 920px !important;
  margin: 0 !important;
}

body.page-id-12870 .epn-creative-section {
  width: calc(100% - clamp(2rem, 7vw, 8rem)) !important;
  max-width: 1220px !important;
  margin: clamp(1rem, 2vw, 1.45rem) auto !important;
  border-radius: 18px !important;
  overflow: hidden !important;
}

body.page-id-12870 .epn-creative-head {
  padding: clamp(1rem, 2.2vw, 1.45rem) !important;
}

body.page-id-12870 .epn-creative-head > .wp-block-group__inner-container {
  display: grid !important;
  grid-template-columns: minmax(280px, 0.82fr) minmax(320px, 1fr) !important;
  gap: clamp(1rem, 2.4vw, 1.8rem) !important;
  align-items: center !important;
  width: min(100%, 980px) !important;
  margin-inline: auto !important;
}

body.page-id-12870 .epn-creative-head > .wp-block-group__inner-container > .epn-creative-photo {
  order: 1 !important;
}

body.page-id-12870 .epn-creative-head > .wp-block-group__inner-container > .epn-creative-copy {
  order: 2 !important;
}

body.page-id-12870 .epn-creative-section-no-image .epn-creative-head {
  display: block !important;
}

body.page-id-12870 .epn-creative-section-no-image .epn-creative-head > .wp-block-group__inner-container {
  display: block !important;
  width: min(100%, 980px) !important;
}

body.page-id-12870 .epn-creative-photo {
  width: 100% !important;
  max-width: 520px !important;
  margin: 0 !important;
}

body.page-id-12870 .epn-creative-tables {
  padding: clamp(0.95rem, 2vw, 1.35rem) !important;
}

@media (max-width: 780px) {
  body.page-id-12870 article#post-12870 > .inside-article {
    border-radius: 16px !important;
  }

  body.page-id-12870 .epn-creative-section {
    width: calc(100% - 1rem) !important;
  }

  body.page-id-12870 .epn-creative-head > .wp-block-group__inner-container {
    grid-template-columns: 1fr !important;
  }

  body.page-id-12870 .epn-creative-photo {
    max-width: 100% !important;
  }
}

/* ==========================================================================
   PARTIE 15 — OVERRIDE FINAL MOBILE : 5px garantis
   Dernière couche volontairement placée en fin de fichier.
   ========================================================================== */

@media (max-width: 900px) {
  body:is(.page-id-12870, .page-id-12872) #page,
  body:has(:is(.epn-creative-history, .epn-seniors-history, .epn-formation-history)) #page,
  body:is(.page-id-12870, .page-id-12872) .site-content,
  body:has(:is(.epn-creative-history, .epn-seniors-history, .epn-formation-history)) .site-content,
  body:is(.page-id-12870, .page-id-12872) #primary,
  body:has(:is(.epn-creative-history, .epn-seniors-history, .epn-formation-history)) #primary,
  body:is(.page-id-12870, .page-id-12872) #main,
  body:has(:is(.epn-creative-history, .epn-seniors-history, .epn-formation-history)) #main,
  body:is(.page-id-12870, .page-id-12872) article.page > .inside-article,
  body:has(:is(.epn-creative-history, .epn-seniors-history, .epn-formation-history)) article.page > .inside-article,
  body:is(.page-id-12870, .page-id-12872) article.page .entry-content,
  body:has(:is(.epn-creative-history, .epn-seniors-history, .epn-formation-history)) article.page .entry-content {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
  }

  body:is(.page-id-12870, .page-id-12872) :is(.epn-creative-hero, .epn-seniors-hero, .epn-formation-hero),
  body:has(:is(.epn-creative-history, .epn-seniors-history, .epn-formation-history)) :is(.epn-creative-hero, .epn-seniors-hero, .epn-formation-hero),
  body:is(.page-id-12870, .page-id-12872) :is(.epn-creative-section, .epn-seniors-section, .epn-formation-section),
  body:has(:is(.epn-creative-history, .epn-seniors-history, .epn-formation-history)) :is(.epn-creative-section, .epn-seniors-section, .epn-formation-section) {
    width: calc(100% - 10px) !important;
    max-width: calc(100% - 10px) !important;
    margin: 5px !important;
  }

  body:is(.page-id-12870, .page-id-12872) :is(.epn-creative-head, .epn-seniors-head, .epn-formation-head),
  body:has(:is(.epn-creative-history, .epn-seniors-history, .epn-formation-history)) :is(.epn-creative-head, .epn-seniors-head, .epn-formation-head) {
    padding: 6px !important;
    gap: 6px !important;
  }

  body:is(.page-id-12870, .page-id-12872) :is(.epn-creative-tables, .epn-seniors-tables, .epn-formation-tables),
  body:has(:is(.epn-creative-history, .epn-seniors-history, .epn-formation-history)) :is(.epn-creative-tables, .epn-seniors-tables, .epn-formation-tables) {
    padding: 5px !important;
  }

  body:is(.page-id-12870, .page-id-12872) :is(.epn-creative-tables, .epn-seniors-tables, .epn-formation-tables) :is(.dataTables_length, .dataTables_filter),
  body:has(:is(.epn-creative-history, .epn-seniors-history, .epn-formation-history)) :is(.epn-creative-tables, .epn-seniors-tables, .epn-formation-tables) :is(.dataTables_length, .dataTables_filter) {
    display: none !important;
  }

  body:is(.page-id-12870, .page-id-12872) :is(.epn-creative-tables, .epn-seniors-tables, .epn-formation-tables) .tablepress,
  body:has(:is(.epn-creative-history, .epn-seniors-history, .epn-formation-history)) :is(.epn-creative-tables, .epn-seniors-tables, .epn-formation-tables) .tablepress {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    table-layout: fixed !important;
  }
}

/* ==========================================================================
   PARTIE 17 — TABLEPRESS MOBILE EN GRILLE LISIBLE
   Stoppe les colonnes écrasées et les mots affichés lettre par lettre.
   ========================================================================== */

@media (max-width: 900px) {
  body:is(.page-id-12870, .page-id-12872) :is(.epn-creative-tables, .epn-seniors-tables, .epn-formation-tables),
  body:has(:is(.epn-creative-history, .epn-seniors-history, .epn-formation-history)) :is(.epn-creative-tables, .epn-seniors-tables, .epn-formation-tables),
  body:is(.page-id-12870, .page-id-12872) :is(.epn-creative-tables, .epn-seniors-tables, .epn-formation-tables) .dataTables_wrapper,
  body:has(:is(.epn-creative-history, .epn-seniors-history, .epn-formation-history)) :is(.epn-creative-tables, .epn-seniors-tables, .epn-formation-tables) .dataTables_wrapper {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: visible !important;
  }

  body:is(.page-id-12870, .page-id-12872) :is(.epn-creative-tables, .epn-seniors-tables, .epn-formation-tables) .tablepress,
  body:has(:is(.epn-creative-history, .epn-seniors-history, .epn-formation-history)) :is(.epn-creative-tables, .epn-seniors-tables, .epn-formation-tables) .tablepress {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    border: 0 !important;
    border-radius: 8px !important;
    background: transparent !important;
    table-layout: auto !important;
    font-size: 11px !important;
  }

  body:is(.page-id-12870, .page-id-12872) :is(.epn-creative-tables, .epn-seniors-tables, .epn-formation-tables) .tablepress thead,
  body:is(.page-id-12870, .page-id-12872) :is(.epn-creative-tables, .epn-seniors-tables, .epn-formation-tables) .tablepress tbody,
  body:has(:is(.epn-creative-history, .epn-seniors-history, .epn-formation-history)) :is(.epn-creative-tables, .epn-seniors-tables, .epn-formation-tables) .tablepress thead,
  body:has(:is(.epn-creative-history, .epn-seniors-history, .epn-formation-history)) :is(.epn-creative-tables, .epn-seniors-tables, .epn-formation-tables) .tablepress tbody {
    display: block !important;
    width: 100% !important;
  }

  body:is(.page-id-12870, .page-id-12872) :is(.epn-creative-tables, .epn-seniors-tables, .epn-formation-tables) .tablepress tr,
  body:has(:is(.epn-creative-history, .epn-seniors-history, .epn-formation-history)) :is(.epn-creative-tables, .epn-seniors-tables, .epn-formation-tables) .tablepress tr {
    display: grid !important;
    grid-template-columns: 2.25em minmax(0, 1.15fr) minmax(0, 1fr) 3.35em !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    border: 0 !important;
  }

  body:is(.page-id-12870, .page-id-12872) :is(.epn-creative-tables, .epn-seniors-tables, .epn-formation-tables) .tablepress tbody tr:nth-child(even),
  body:has(:is(.epn-creative-history, .epn-seniors-history, .epn-formation-history)) :is(.epn-creative-tables, .epn-seniors-tables, .epn-formation-tables) .tablepress tbody tr:nth-child(even) {
    background: #f3f8fb !important;
  }

  body:is(.page-id-12870, .page-id-12872) :is(.epn-creative-tables, .epn-seniors-tables, .epn-formation-tables) .tablepress :is(th, td),
  body:has(:is(.epn-creative-history, .epn-seniors-history, .epn-formation-history)) :is(.epn-creative-tables, .epn-seniors-tables, .epn-formation-tables) .tablepress :is(th, td) {
    display: block !important;
    width: auto !important;
    min-width: 0 !important;
    max-width: none !important;
    padding: 6px 4px !important;
    border: 0 !important;
    border-bottom: 1px solid rgba(216, 227, 238, 0.82) !important;
    overflow: hidden !important;
    color: #213a4d !important;
    line-height: 1.18 !important;
    text-align: left !important;
    white-space: nowrap !important;
    word-break: normal !important;
    overflow-wrap: normal !important;
    text-overflow: ellipsis !important;
    hyphens: none !important;
    -webkit-hyphens: none !important;
  }

  body:is(.page-id-12870, .page-id-12872) :is(.epn-creative-tables, .epn-seniors-tables, .epn-formation-tables) .tablepress thead th,
  body:has(:is(.epn-creative-history, .epn-seniors-history, .epn-formation-history)) :is(.epn-creative-tables, .epn-seniors-tables, .epn-formation-tables) .tablepress thead th {
    background: var(--epn-blue-800) !important;
    color: #ffffff !important;
    font-size: 10px !important;
    font-weight: 800 !important;
  }

  body:is(.page-id-12870, .page-id-12872) :is(.epn-creative-tables, .epn-seniors-tables, .epn-formation-tables) .tablepress :is(.column-1, .column-2, .column-3, .column-4),
  body:has(:is(.epn-creative-history, .epn-seniors-history, .epn-formation-history)) :is(.epn-creative-tables, .epn-seniors-tables, .epn-formation-tables) .tablepress :is(.column-1, .column-2, .column-3, .column-4) {
    width: auto !important;
  }

  body:is(.page-id-12870, .page-id-12872) :is(.epn-creative-tables, .epn-seniors-tables, .epn-formation-tables) :is(.dataTables_length, .dataTables_filter),
  body:has(:is(.epn-creative-history, .epn-seniors-history, .epn-formation-history)) :is(.epn-creative-tables, .epn-seniors-tables, .epn-formation-tables) :is(.dataTables_length, .dataTables_filter) {
    display: none !important;
  }

  body:is(.page-id-12870, .page-id-12872) :is(.epn-creative-tables, .epn-seniors-tables, .epn-formation-tables) :is(.dataTables_info, .dataTables_paginate),
  body:has(:is(.epn-creative-history, .epn-seniors-history, .epn-formation-history)) :is(.epn-creative-tables, .epn-seniors-tables, .epn-formation-tables) :is(.dataTables_info, .dataTables_paginate) {
    width: 100% !important;
    margin: 8px 0 0 !important;
    padding: 0 !important;
    font-size: 11px !important;
    line-height: 1.35 !important;
    text-align: center !important;
  }
}

/* ==========================================================================
   PARTIE 14 — SMARTPHONES : largeur utile maximale
   5px de marge par groupe, aucun couloir central inutile.
   ========================================================================== */

@media (max-width: 900px) {
  html,
  body:is(.page-id-12870, .page-id-12872),
  body:has(:is(.epn-creative-history, .epn-seniors-history, .epn-formation-history)) {
    width: 100% !important;
    max-width: 100% !important;
    overflow-x: hidden !important;
    background: #f8fbfd !important;
  }

  body:is(.page-id-12870, .page-id-12872) #page,
  body:has(:is(.epn-creative-history, .epn-seniors-history, .epn-formation-history)) #page,
  body:is(.page-id-12870, .page-id-12872) .site-content,
  body:has(:is(.epn-creative-history, .epn-seniors-history, .epn-formation-history)) .site-content,
  body:is(.page-id-12870, .page-id-12872) #primary,
  body:has(:is(.epn-creative-history, .epn-seniors-history, .epn-formation-history)) #primary,
  body:is(.page-id-12870, .page-id-12872) #main,
  body:has(:is(.epn-creative-history, .epn-seniors-history, .epn-formation-history)) #main,
  body:is(.page-id-12870, .page-id-12872) article.page,
  body:has(:is(.epn-creative-history, .epn-seniors-history, .epn-formation-history)) article.page,
  body:is(.page-id-12870, .page-id-12872) article.page > .inside-article,
  body:has(:is(.epn-creative-history, .epn-seniors-history, .epn-formation-history)) article.page > .inside-article,
  body:is(.page-id-12870, .page-id-12872) article.page .entry-content,
  body:has(:is(.epn-creative-history, .epn-seniors-history, .epn-formation-history)) article.page .entry-content {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin-right: 0 !important;
    margin-left: 0 !important;
    padding-right: 0 !important;
    padding-left: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
  }

  body:is(.page-id-12870, .page-id-12872) article.page > .inside-article,
  body:has(:is(.epn-creative-history, .epn-seniors-history, .epn-formation-history)) article.page > .inside-article {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    border: 0 !important;
  }

  body:is(.page-id-12870, .page-id-12872) :is(.epn-creative-history, .epn-seniors-history, .epn-formation-history),
  body:has(:is(.epn-creative-history, .epn-seniors-history, .epn-formation-history)) :is(.epn-creative-history, .epn-seniors-history, .epn-formation-history) {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  body:is(.page-id-12870, .page-id-12872) :is(.epn-creative-hero, .epn-seniors-hero, .epn-formation-hero),
  body:has(:is(.epn-creative-history, .epn-seniors-history, .epn-formation-history)) :is(.epn-creative-hero, .epn-seniors-hero, .epn-formation-hero),
  body:is(.page-id-12870, .page-id-12872) :is(.epn-creative-section, .epn-seniors-section, .epn-formation-section),
  body:has(:is(.epn-creative-history, .epn-seniors-history, .epn-formation-history)) :is(.epn-creative-section, .epn-seniors-section, .epn-formation-section) {
    width: calc(100% - 10px) !important;
    max-width: calc(100% - 10px) !important;
    margin: 5px !important;
    border-radius: 10px !important;
  }

  body:is(.page-id-12870, .page-id-12872) :is(.epn-creative-hero, .epn-seniors-hero, .epn-formation-hero),
  body:has(:is(.epn-creative-history, .epn-seniors-history, .epn-formation-history)) :is(.epn-creative-hero, .epn-seniors-hero, .epn-formation-hero) {
    padding: 12px 12px 10px 16px !important;
  }

  body:is(.page-id-12870, .page-id-12872) :is(.epn-creative-hero, .epn-seniors-hero, .epn-formation-hero)::before,
  body:has(:is(.epn-creative-history, .epn-seniors-history, .epn-formation-history)) :is(.epn-creative-hero, .epn-seniors-hero, .epn-formation-hero)::before {
    width: 4px !important;
  }

  body:is(.page-id-12870, .page-id-12872) :is(.epn-creative-title, .epn-seniors-title, .epn-formation-title),
  body:has(:is(.epn-creative-history, .epn-seniors-history, .epn-formation-history)) :is(.epn-creative-title, .epn-seniors-title, .epn-formation-title) {
    margin-top: 0.55rem !important;
    margin-bottom: 0.45rem !important;
    font-size: clamp(1.35rem, 6vw, 1.85rem) !important;
    line-height: 1.12 !important;
  }

  body:is(.page-id-12870, .page-id-12872) :is(.epn-creative-intro, .epn-seniors-intro, .epn-formation-intro),
  body:has(:is(.epn-creative-history, .epn-seniors-history, .epn-formation-history)) :is(.epn-creative-intro, .epn-seniors-intro, .epn-formation-intro) {
    font-size: 0.9rem !important;
    line-height: 1.45 !important;
  }

  body:is(.page-id-12870, .page-id-12872) :is(.epn-creative-head, .epn-seniors-head, .epn-formation-head),
  body:has(:is(.epn-creative-history, .epn-seniors-history, .epn-formation-history)) :is(.epn-creative-head, .epn-seniors-head, .epn-formation-head) {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 8px !important;
    padding: 8px !important;
  }

  body:is(.page-id-12870, .page-id-12872) :is(.epn-creative-photo, .epn-seniors-photo, .epn-formation-photo),
  body:has(:is(.epn-creative-history, .epn-seniors-history, .epn-formation-history)) :is(.epn-creative-photo, .epn-seniors-photo, .epn-formation-photo) {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
  }

  body:is(.page-id-12870, .page-id-12872) :is(.epn-creative-photo img, .epn-seniors-photo img, .epn-formation-photo img),
  body:has(:is(.epn-creative-history, .epn-seniors-history, .epn-formation-history)) :is(.epn-creative-photo img, .epn-seniors-photo img, .epn-formation-photo img) {
    width: 100% !important;
    aspect-ratio: 16 / 10 !important;
    border-radius: 9px !important;
    box-shadow: 0 8px 18px rgba(15, 61, 94, 0.12) !important;
  }

  body:is(.page-id-12870, .page-id-12872) :is(.epn-creative-group, .epn-seniors-group, .epn-formation-group),
  body:has(:is(.epn-creative-history, .epn-seniors-history, .epn-formation-history)) :is(.epn-creative-group, .epn-seniors-group, .epn-formation-group) {
    margin-bottom: 0.4rem !important;
    font-size: clamp(1.05rem, 5vw, 1.35rem) !important;
    line-height: 1.12 !important;
  }

  body:is(.page-id-12870, .page-id-12872) :is(.epn-creative-meta, .epn-seniors-meta, .epn-formation-meta),
  body:has(:is(.epn-creative-history, .epn-seniors-history, .epn-formation-history)) :is(.epn-creative-meta, .epn-seniors-meta, .epn-formation-meta) {
    padding: 0.45rem 0.55rem !important;
    font-size: 0.78rem !important;
    line-height: 1.35 !important;
  }

  body:is(.page-id-12870, .page-id-12872) :is(.epn-creative-tables, .epn-seniors-tables, .epn-formation-tables),
  body:has(:is(.epn-creative-history, .epn-seniors-history, .epn-formation-history)) :is(.epn-creative-tables, .epn-seniors-tables, .epn-formation-tables) {
    width: 100% !important;
    max-width: 100% !important;
    padding: 6px !important;
    overflow: visible !important;
  }

  body:is(.page-id-12870, .page-id-12872) :is(.epn-creative-table-title, .epn-seniors-table-title, .epn-formation-table-title),
  body:has(:is(.epn-creative-history, .epn-seniors-history, .epn-formation-history)) :is(.epn-creative-table-title, .epn-seniors-table-title, .epn-formation-table-title) {
    margin-bottom: 6px !important;
    padding: 0.35rem 0.55rem !important;
    font-size: 0.68rem !important;
  }

  body:is(.page-id-12870, .page-id-12872) :is(.epn-creative-tables, .epn-seniors-tables, .epn-formation-tables) :is(.dataTables_length, .dataTables_filter),
  body:has(:is(.epn-creative-history, .epn-seniors-history, .epn-formation-history)) :is(.epn-creative-tables, .epn-seniors-tables, .epn-formation-tables) :is(.dataTables_length, .dataTables_filter) {
    display: none !important;
  }

  body:is(.page-id-12870, .page-id-12872) :is(.epn-creative-tables, .epn-seniors-tables, .epn-formation-tables) :is(.dataTables_info, .dataTables_paginate),
  body:has(:is(.epn-creative-history, .epn-seniors-history, .epn-formation-history)) :is(.epn-creative-tables, .epn-seniors-tables, .epn-formation-tables) :is(.dataTables_info, .dataTables_paginate) {
    font-size: 0.72rem !important;
    line-height: 1.25 !important;
  }

  body:is(.page-id-12870, .page-id-12872) :is(.epn-creative-tables, .epn-seniors-tables, .epn-formation-tables) .tablepress,
  body:has(:is(.epn-creative-history, .epn-seniors-history, .epn-formation-history)) :is(.epn-creative-tables, .epn-seniors-tables, .epn-formation-tables) .tablepress {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    table-layout: fixed !important;
    font-size: clamp(0.58rem, 2.55vw, 0.72rem) !important;
  }

  body:is(.page-id-12870, .page-id-12872) :is(.epn-creative-tables, .epn-seniors-tables, .epn-formation-tables) .tablepress :is(th, td),
  body:has(:is(.epn-creative-history, .epn-seniors-history, .epn-formation-history)) :is(.epn-creative-tables, .epn-seniors-tables, .epn-formation-tables) .tablepress :is(th, td) {
    padding: 0.32rem 0.25rem !important;
    line-height: 1.2 !important;
  }

  body:is(.page-id-12870, .page-id-12872) :is(.epn-creative-tables, .epn-seniors-tables, .epn-formation-tables) .tablepress :is(.column-1, .column-4),
  body:has(:is(.epn-creative-history, .epn-seniors-history, .epn-formation-history)) :is(.epn-creative-tables, .epn-seniors-tables, .epn-formation-tables) .tablepress :is(.column-1, .column-4) {
    width: 13% !important;
  }

  body:is(.page-id-12870, .page-id-12872) :is(.epn-creative-tables, .epn-seniors-tables, .epn-formation-tables) .tablepress :is(.column-2, .column-3),
  body:has(:is(.epn-creative-history, .epn-seniors-history, .epn-formation-history)) :is(.epn-creative-tables, .epn-seniors-tables, .epn-formation-tables) .tablepress :is(.column-2, .column-3) {
    width: 37% !important;
  }
}

body.page-id-12872 .inside-article {
  padding-top: 0 !important;
}

body.page-id-12872 #page {
  max-width: none !important;
  padding: 0 clamp(1rem, 4vw, 3rem) clamp(2rem, 5vw, 4rem) !important;
  background: transparent !important;
}

body.page-id-12872 .site-content,
body.page-id-12872 #primary,
body.page-id-12872 #main {
  width: 100% !important;
  max-width: none !important;
  margin-inline: auto !important;
  background: transparent !important;
}

body.page-id-12872 article#post-12872 > .inside-article {
  width: min(100%, 1440px) !important;
  margin: clamp(2rem, 5vw, 4rem) auto !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 24px !important;
  background: #f8fbfd !important;
  box-shadow: 0 24px 70px rgba(15, 61, 94, 0.12) !important;
  overflow: hidden !important;
}

body.page-id-12872 article#post-12872 .entry-content {
  margin: 0 !important;
  padding: 0 !important;
  border-radius: 24px !important;
  background: #f8fbfd !important;
  box-shadow: none !important;
}

body.page-id-12872 .epn-seniors-history {
  max-width: none !important;
  padding: 0 !important;
  color: var(--epn-blue-800) !important;
}

body.page-id-12872 .epn-seniors-hero {
  position: relative !important;
  padding: clamp(1.65rem, 4vw, 3rem) clamp(1.4rem, 4vw, 4rem) clamp(1.35rem, 3vw, 2rem) !important;
  margin: 0 !important;
  border: 0 !important;
  border-bottom: 1px solid rgba(216, 227, 238, 0.95) !important;
  border-radius: 0 !important;
  background: #ffffff !important;
  box-shadow: none !important;
  overflow: hidden !important;
}

body.page-id-12872 .epn-seniors-hero::before {
  content: "" !important;
  position: absolute !important;
  inset: 0 auto 0 0 !important;
  width: 7px !important;
  background: linear-gradient(180deg, #f28c28, #c8261d) !important;
}

body.page-id-12872 .epn-seniors-kicker,
body.page-id-12872 .epn-seniors-table-title {
  width: fit-content !important;
  color: #a93f00 !important;
  background: #fff7ef !important;
  border: 1px solid rgba(242, 140, 40, 0.28) !important;
  border-radius: 999px !important;
  font-weight: 900 !important;
  letter-spacing: 0.06em !important;
  text-transform: uppercase !important;
}

body.page-id-12872 .epn-seniors-title {
  max-width: 880px !important;
  margin: 0.85rem 0 0.75rem !important;
  color: var(--epn-blue-800) !important;
  font-size: clamp(2.35rem, 5.2vw, 4.2rem) !important;
  line-height: 0.98 !important;
  font-weight: 950 !important;
  letter-spacing: 0 !important;
}

body.page-id-12872 .epn-seniors-intro {
  max-width: 920px !important;
  margin: 0 !important;
  color: #31506a !important;
  font-size: clamp(1.02rem, 1.45vw, 1.2rem) !important;
  line-height: 1.72 !important;
  font-weight: 500 !important;
}

body.page-id-12872 .epn-seniors-section {
  width: calc(100% - clamp(2rem, 7vw, 8rem)) !important;
  max-width: 1220px !important;
  margin: clamp(1.15rem, 2.5vw, 1.6rem) auto !important;
  border: 1px solid rgba(24, 85, 128, 0.16) !important;
  border-radius: 18px !important;
  background: #ffffff !important;
  box-shadow: 0 16px 38px rgba(15, 61, 94, 0.09) !important;
}

body.page-id-12872 .epn-seniors-head {
  grid-template-columns: 1fr !important;
  gap: clamp(1.4rem, 3vw, 2.4rem) !important;
  padding: clamp(1.15rem, 2.8vw, 1.8rem) !important;
  justify-items: start !important;
}

body.page-id-12872 .epn-seniors-copy {
  order: 1 !important;
  width: 100% !important;
}

body.page-id-12872 .epn-seniors-photo {
  order: 2 !important;
  width: min(100%, 645px) !important;
  max-width: 100% !important;
  margin: 0 !important;
}

body.page-id-12872 .epn-seniors-group {
  margin-bottom: 0.7rem !important;
  color: var(--epn-blue-800) !important;
  font-size: clamp(1.55rem, 2.8vw, 2.3rem) !important;
  font-weight: 950 !important;
  line-height: 1.08 !important;
}

body.page-id-12872 .epn-seniors-meta {
  display: inline-block !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0.75rem 0.95rem !important;
  color: #31506a !important;
  background: rgba(255, 255, 255, 0.76) !important;
  border: 1px solid rgba(216, 227, 238, 0.95) !important;
  border-radius: 12px !important;
  font-size: clamp(0.95rem, 1.2vw, 1.05rem) !important;
  font-weight: 650 !important;
  line-height: 1.55 !important;
}

body.page-id-12872 .epn-seniors-photo-link {
  position: relative !important;
  display: block !important;
  width: 100% !important;
  border-radius: 14px !important;
  outline-offset: 5px !important;
  overflow: hidden !important;
  cursor: zoom-in !important;
}

body.page-id-12872 .epn-seniors-photo img {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  height: auto !important;
  border-radius: 14px !important;
  box-shadow: 0 12px 28px rgba(15, 61, 94, 0.13) !important;
  transition: transform 0.28s ease, filter 0.28s ease, box-shadow 0.28s ease !important;
}

body.page-id-12872 .epn-seniors-photo-link::after {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  border-radius: inherit !important;
  background: linear-gradient(180deg, rgba(6, 31, 52, 0), rgba(6, 31, 52, 0.22)) !important;
  opacity: 0 !important;
  transition: opacity 0.28s ease !important;
  pointer-events: none !important;
}

body.page-id-12872 .epn-seniors-photo-zoom {
  position: absolute !important;
  right: 14px !important;
  bottom: 14px !important;
  z-index: 2 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 42px !important;
  height: 42px !important;
  border: 2px solid rgba(255, 255, 255, 0.78) !important;
  border-radius: 999px !important;
  color: #ffffff !important;
  background: rgba(15, 61, 94, 0.9) !important;
  box-shadow: 0 12px 24px rgba(6, 31, 52, 0.22) !important;
  font-size: 28px !important;
  font-weight: 700 !important;
  line-height: 1 !important;
  opacity: 0 !important;
  transform: translateY(8px) scale(0.92) !important;
  transition: opacity 0.28s ease, transform 0.28s ease !important;
  pointer-events: none !important;
}

body.page-id-12872 .epn-seniors-photo-link:hover img,
body.page-id-12872 .epn-seniors-photo-link:focus-visible img {
  transform: scale(1.035) !important;
  filter: saturate(1.08) contrast(1.04) !important;
  box-shadow: 0 20px 46px rgba(15, 61, 94, 0.2) !important;
}

body.page-id-12872 .epn-seniors-photo-link:hover::after,
body.page-id-12872 .epn-seniors-photo-link:focus-visible::after,
body.page-id-12872 .epn-seniors-photo-link:hover .epn-seniors-photo-zoom,
body.page-id-12872 .epn-seniors-photo-link:focus-visible .epn-seniors-photo-zoom {
  opacity: 1 !important;
  transform: translateY(0) scale(1) !important;
}

body.page-id-12872 .epn-seniors-lightbox {
  position: fixed !important;
  inset: 0 !important;
  z-index: 999999 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: clamp(1rem, 4vw, 3rem) !important;
  background: rgba(2, 14, 24, 0.82) !important;
  opacity: 0 !important;
  visibility: hidden !important;
  transition: opacity 0.22s ease, visibility 0.22s ease !important;
}

body.page-id-12872 .epn-seniors-lightbox.is-open {
  opacity: 1 !important;
  visibility: visible !important;
}

body.page-id-12872 .epn-seniors-lightbox img {
  display: block !important;
  width: auto !important;
  max-width: min(1120px, 94vw) !important;
  max-height: 86vh !important;
  border-radius: 18px !important;
  box-shadow: 0 26px 80px rgba(0, 0, 0, 0.45) !important;
}

body.page-id-12872 .epn-seniors-lightbox-close {
  position: fixed !important;
  top: 18px !important;
  right: 18px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 48px !important;
  height: 48px !important;
  border: 2px solid rgba(255, 255, 255, 0.45) !important;
  border-radius: 999px !important;
  color: #ffffff !important;
  background: rgba(15, 61, 94, 0.95) !important;
  font-size: 28px !important;
  line-height: 1 !important;
  cursor: pointer !important;
}

body.page-id-12872 .epn-seniors-lightbox-close:focus-visible {
  outline: 3px solid #f28c28 !important;
  outline-offset: 3px !important;
}

body.page-id-12872 .epn-seniors-tables {
  padding: clamp(1rem, 2.4vw, 1.45rem) !important;
  background: rgba(255, 255, 255, 0.72) !important;
}

body.page-id-12872 .epn-seniors-table-title {
  margin-bottom: 0.85rem !important;
  padding: 0.48rem 0.72rem !important;
  font-size: 0.78rem !important;
}

body.page-id-12872 .epn-seniors-tables .tablepress {
  font-size: 0.94rem !important;
}

body.page-id-12872 .epn-seniors-tables .tablepress thead th {
  background: var(--epn-blue-800) !important;
  color: #ffffff !important;
  border-color: rgba(255, 255, 255, 0.18) !important;
}

body.page-id-12872 .epn-seniors-tables .tablepress tbody td {
  color: #213a4d !important;
}

body.page-id-12872 .epn-seniors-tables a {
  color: var(--epn-blue-800) !important;
  text-decoration: none !important;
}

body.page-id-12872 .epn-seniors-tables a:hover,
body.page-id-12872 .epn-seniors-tables a:focus-visible {
  color: #a93f00 !important;
}

@media (max-width: 780px) {
  body.page-id-12872 #page {
    padding-inline: 0.75rem !important;
  }

  body.page-id-12872 article#post-12872 > .inside-article,
  body.page-id-12872 article#post-12872 .entry-content {
    border-radius: 16px !important;
  }

  body.page-id-12872 .epn-seniors-history {
    padding-inline: 0 !important;
  }

  body.page-id-12872 .epn-seniors-hero {
    padding-inline: 1.1rem !important;
    border-radius: 0 !important;
  }

  body.page-id-12872 .epn-seniors-section {
    width: calc(100% - 1rem) !important;
  }

  body.page-id-12872 .epn-seniors-head {
    grid-template-columns: 1fr !important;
  }

  body.page-id-12872 .epn-seniors-meta {
    display: block !important;
  }
}

body:is(.page:not(.home):not(.single-event), .single-post)
.epn-detail-meta-line .epn-detail-meta-separator {
  display:     inline-flex !important;
  flex:        0 0 auto !important;
  flex-shrink: 0 !important;
}

body:is(.page:not(.home):not(.single-event), .single-post)
.epn-detail-meta-line .epn-detail-meta-item:hover {
  color:     var(--epn-blue-700) !important;
  transform: translateY(-1px) !important;
}

body:is(.page:not(.home):not(.single-event), .single-post)
.epn-detail-meta-separator {
  color:       rgba(15, 61, 94, 0.35) !important;
  font-weight: 400 !important;
  font-size:   14px !important;
  flex:        0 0 auto !important;
}

/* ==========================================================================
   PARTIE 4 — IMAGES RESPONSIVES dans le contenu
   max-width: 100% · height: auto · jamais en px fixes
   ========================================================================== */

body:is(.page:not(.home):not(.single-event), .single-post)
.entry-content img {
  max-width: 100% !important;
  height:    auto !important;
}

/* Images flottantes : +30% sur desktop, pleine largeur sur mobile */
body:is(.page:not(.home):not(.single-event), .single-post)
.entry-content img[style*="float"] {
  max-width: 65% !important;
  height:    auto !important;
}

body:is(.page:not(.home):not(.single-event), .single-post)
.entry-content :is(.wp-block-image.alignleft, figure.alignleft, .wp-caption.alignleft) {
  width:     min(65%, 720px) !important;
  max-width: 65% !important;
  margin:    0 2rem 1.25rem 0 !important;
}

body:is(.page:not(.home):not(.single-event), .single-post)
.entry-content :is(.wp-block-image.alignleft, figure.alignleft, .wp-caption.alignleft) img {
  width:  100% !important;
  height: auto !important;
}

@media (max-width: 1024px) {
  body:is(.page:not(.home):not(.single-event), .single-post)
  .entry-content img[style*="float"] {
    max-width: 58% !important;
  }

  body:is(.page:not(.home):not(.single-event), .single-post)
  .entry-content :is(.wp-block-image.alignleft, figure.alignleft, .wp-caption.alignleft) {
    width:     min(58%, 620px) !important;
    max-width: 58% !important;
  }
}

@media (max-width: 600px) {
  body:is(.page:not(.home):not(.single-event), .single-post)
  .entry-content img[style*="float"] {
    float:     none !important;
    max-width: 100% !important;
    width:     100% !important;
    margin:    0 0 1rem 0 !important;
  }

  body:is(.page:not(.home):not(.single-event), .single-post)
  .entry-content :is(.wp-block-image.alignleft, figure.alignleft, .wp-caption.alignleft) {
    float:     none !important;
    width:     100% !important;
    max-width: 100% !important;
    margin:    0 0 1.25rem 0 !important;
  }
}

/* ==========================================================================
   PARTIE 5 — TYPOGRAPHIE CONTENU (pages & articles)
   ========================================================================== */

/* Accent couleur sur les titres H2 et H3 */
body:is(.page:not(.home):not(.single-event), .single-post)
.entry-content h2 {
  color:        var(--epn-blue-800) !important;
  font-weight:  800 !important;
  padding-left: 14px !important;
  border-left:  4px solid var(--epn-amber-700) !important;
}

body:is(.page:not(.home):not(.single-event), .single-post)
.entry-content h3 {
  color:        var(--epn-blue-800) !important;
  font-weight:  700 !important;
  padding-left: 10px !important;
  border-left:  3px solid rgba(15, 61, 94, 0.22) !important;
}

/* Blockquote */
body:is(.page:not(.home):not(.single-event), .single-post)
.entry-content blockquote {
  border-left:   4px solid var(--epn-amber-700) !important;
  background:    rgba(231, 240, 250, 0.45) !important;
  border-radius: 0 12px 12px 0 !important;
  padding:       16px 20px !important;
  margin:        20px 0 !important;
  font-style:    italic !important;
  color:         var(--epn-ink) !important;
}
body:is(.page:not(.home):not(.single-event), .single-post)
.entry-content blockquote p {
  margin: 0 !important;
}

/* ==========================================================================
   PARTIE 6 — TÉMOIGNAGES (Strong Testimonials)
   .strong-view · .wpmtst-testimonial-inner · .testimonial-inner
   ========================================================================== */

/* Wrapper interne — carte blanche arrondie */
.strong-view .wpmtst-testimonial-inner,
.strong-view .testimonial-inner {
  position:   relative !important;
  display:    flex !important;
  flex-direction: column !important;
  align-items:    center !important;
  background:     #ffffff !important;
  border-radius:  24px !important;
  padding:        36px 26px 28px !important;
  text-align:     center !important;
  box-shadow:     0 1px 0 rgba(15,61,94,0.04),
                  0 14px 32px rgba(15,61,94,0.10) !important;
  transition:     transform 0.45s cubic-bezier(0.2,0.8,0.2,1),
                  box-shadow 0.45s ease !important;
  isolation:      isolate !important;
  overflow:       hidden !important;
  box-sizing:     border-box !important;
}

/* Barre top bleue→ambre */
.strong-view .wpmtst-testimonial-inner::before,
.strong-view .testimonial-inner::before {
  content:    "" !important;
  position:   absolute !important;
  top:        0 !important;
  left:       50% !important;
  transform:  translateX(-50%) !important;
  width:      80px !important;
  height:     4px !important;
  border-radius: 0 0 999px 999px !important;
  background: linear-gradient(90deg, var(--epn-blue-800), var(--epn-amber-700)) !important;
  opacity:    0.88 !important;
}

/* Grand guillemet décoratif */
.strong-view .wpmtst-testimonial-inner::after,
.strong-view .testimonial-inner::after {
  content:        "\201C" !important;
  position:       absolute !important;
  top:            14px !important;
  left:           20px !important;
  font-size:      52px !important;
  line-height:    1 !important;
  color:          rgba(188, 220, 240, 0.5) !important;
  pointer-events: none !important;
  font-family:    Georgia, serif !important;
}

/* Hover lift */
.strong-view .wpmtst-testimonial:hover .wpmtst-testimonial-inner,
.strong-view .testimonial:hover .testimonial-inner {
  transform:  translateY(-6px) !important;
  box-shadow: 0 1px 0 rgba(15,61,94,0.06),
              0 28px 50px rgba(15,61,94,0.15) !important;
}

/* Avatar circulaire avec anneau gradient */
.strong-view .wpmtst-testimonial-image,
.strong-view .testimonial-image {
  margin:  0 0 18px !important;
  order:   -1 !important;
  padding: 0 !important;
}

.strong-view .wpmtst-testimonial-image img,
.strong-view .testimonial-image img {
  width:         88px !important;
  height:        88px !important;
  border-radius: 50% !important;
  object-fit:    cover !important;
  display:       block !important;
  border:        3px solid #fff !important;
  padding:       0 !important;
  max-width:     none !important;
  background:    linear-gradient(135deg, var(--epn-blue-800), var(--epn-amber-700)) !important;
  box-shadow:    0 0 0 4px rgba(15,61,94,0.08),
                 0 10px 24px rgba(15,61,94,0.18) !important;
}

/* Nom / titre */
.strong-view .wpmtst-testimonial-heading,
.strong-view .testimonial-heading {
  font-size:   15.5px !important;
  font-weight: 800 !important;
  color:       var(--epn-blue-800) !important;
  letter-spacing: 0.01em !important;
  margin:      0 0 6px !important;
  line-height: 1.3 !important;
}

/* Texte du témoignage */
.strong-view .wpmtst-testimonial-content,
.strong-view .testimonial-content {
  font-size:   14.5px !important;
  line-height: 1.72 !important;
  color:       var(--epn-ink) !important;
  font-style:  italic !important;
  text-align:  left !important;
  margin:      12px 0 16px !important;
  width:       100% !important;
}

.strong-view .wpmtst-testimonial-content p,
.strong-view .testimonial-content p { margin: 0 !important; }

/* Champs personnalisés (rôle, société) */
.strong-view .wpmtst-testimonial-field,
.strong-view .testimonial-field {
  font-size:      12.5px !important;
  color:          var(--epn-muted) !important;
  text-transform: uppercase !important;
  letter-spacing: 0.07em !important;
  margin:         0 !important;
  font-style:     normal !important;
}

/* Étoiles */
.strong-view .epn-testimonial-stars,
.strong-view .wpmtst-stars {
  color:   var(--epn-amber-700) !important;
  filter:  drop-shadow(0 2px 4px rgba(180,83,9,0.22)) !important;
  margin:  0 0 12px !important;
  display: flex !important;
  justify-content: center !important;
  gap: 3px !important;
}

/* Bouton "Lire plus" */
.strong-view .wpmtst-more,
.strong-view .wpmtst-testimonial .more-link {
  display:        inline-block !important;
  margin-top:     16px !important;
  padding:        9px 24px !important;
  font-size:      12.5px !important;
  font-weight:    700 !important;
  letter-spacing: 0.04em !important;
  text-transform: uppercase !important;
  color:          var(--epn-blue-800) !important;
  background:     transparent !important;
  border:         2px solid var(--epn-blue-800) !important;
  border-radius:  999px !important;
  text-decoration: none !important;
  transition:     background-color 0.3s ease, color 0.3s ease,
                  transform 0.3s ease, box-shadow 0.3s ease !important;
}
.strong-view .wpmtst-more:hover,
.strong-view .wpmtst-testimonial .more-link:hover {
  background:  var(--epn-blue-800) !important;
  color:       #fff !important;
  transform:   translateY(-2px) !important;
  box-shadow:  0 10px 22px rgba(15,61,94,0.22) !important;
}

/* ==========================================================================
   PARTIE 7 — RESPONSIVE
   ========================================================================== */

/* ==========================================================================
   PAGE DÉTAIL — TÉMOIGNAGES
   Cible uniquement les pages "vers la suite" des témoignages, pas les cartes.
   ========================================================================== */

body:is(.home, .page-id-182) .epn-home-testimonials-grid {
  align-items: stretch !important;
}

body:is(.home, .page-id-182) .testimonial-card-premium[hidden] {
  display: none !important;
}

body:is(.home, .page-id-182) .epn-home-testimonials-pagination {
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
  gap: 0.65rem !important;
  width: 100% !important;
  margin: clamp(0.5rem, 2vw, 1.25rem) auto clamp(4rem, 6vw, 5.8rem) !important;
  padding-bottom: clamp(1rem, 2.4vw, 1.9rem) !important;
}

body:is(.home, .page-id-182) .epn-home-testimonials-page {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 46px !important;
  height: 46px !important;
  border: 0 !important;
  border-radius: 12px !important;
  background: #ffffff !important;
  color: var(--epn-blue-800, #0f3d5e) !important;
  font-size: 1rem !important;
  font-weight: 800 !important;
  line-height: 1 !important;
  cursor: pointer !important;
  box-shadow: 0 8px 20px rgba(15, 61, 94, 0.12) !important;
  transition: transform 0.22s ease, background-color 0.22s ease, color 0.22s ease, box-shadow 0.22s ease !important;
}

body:is(.home, .page-id-182) .epn-home-testimonials-page:hover,
body:is(.home, .page-id-182) .epn-home-testimonials-page:focus-visible {
  transform: translateY(-2px) !important;
  background: #e8f4fb !important;
  outline: 3px solid rgba(180, 83, 9, 0.25) !important;
  outline-offset: 3px !important;
}

body:is(.home, .page-id-182) .epn-home-testimonials-page.is-active {
  background: var(--epn-blue-800, #0f3d5e) !important;
  color: #ffffff !important;
  box-shadow: 0 10px 24px rgba(15, 61, 94, 0.26) !important;
}

body:is(.home, .page-id-182) .testimonial-card-premium .elementor-testimonial-content {
  color: #07395b !important;
  font-family: "Trebuchet MS", "Segoe Print", "Comic Sans MS", "Segoe UI", sans-serif !important;
  font-size: clamp(0.96rem, 1vw, 1.06rem) !important;
  font-weight: 500 !important;
  line-height: 1.62 !important;
}

body:is(.home, .page-id-182) .testimonial-card-premium .elementor-testimonial-name {
  color: #063553 !important;
  font-family: "Trebuchet MS", "Segoe UI", sans-serif !important;
  font-size: clamp(1.02rem, 1vw, 1.12rem) !important;
  font-weight: 900 !important;
  line-height: 1.18 !important;
  letter-spacing: 0.01em !important;
}

body:is(.home, .page-id-182) .testimonial-card-premium .elementor-testimonial-job {
  color: #0f3d5e !important;
  font-family: "Trebuchet MS", "Segoe UI", sans-serif !important;
  font-size: 0.95rem !important;
  font-weight: 700 !important;
  line-height: 1.2 !important;
}

/* Libère le wrapper Elementor qui coupe le box-shadow de l'avatar */
body:is(.home, .page-id-182) .testimonial-card-premium .elementor-testimonial-wrapper {
  overflow: visible !important;
}

body:is(.home, .page-id-182) .testimonial-card-premium .elementor-testimonial-image img {
  box-shadow: 0 0 0 4px rgba(15, 61, 94, 0.12), 0 8px 18px rgba(15, 61, 94, 0.2) !important;
}

@media (max-width: 767px) {
  body:is(.home, .page-id-182) .epn-home-testimonials-pagination {
    gap: 0.5rem !important;
    margin-bottom: clamp(3rem, 12vw, 4.5rem) !important;
    padding-bottom: 1.2rem !important;
  }

  body:is(.home, .page-id-182) .epn-home-testimonials-page {
    width: 42px !important;
    height: 42px !important;
  }
}

body.single-wpm-testimonial {
  background:
    radial-gradient(circle at 14% 10%, rgba(226, 244, 255, 0.58), transparent 30%),
    linear-gradient(180deg, #f8fbfd 0%, #eef6fa 100%) !important;
}

body.single-wpm-testimonial #page,
body.single-wpm-testimonial .site-content {
  background: transparent !important;
}

body.single-wpm-testimonial .inside-article {
  max-width: min(100% - 32px, 980px) !important;
  margin: clamp(1.2rem, 3vw, 3rem) auto !important;
  padding: clamp(1.25rem, 4vw, 3.25rem) !important;
  border: 1px solid rgba(15, 61, 94, 0.12) !important;
  border-radius: 28px !important;
  background: rgba(255, 255, 255, 0.96) !important;
  box-shadow:
    0 1px 0 rgba(255, 255, 255, 0.9) inset,
    0 26px 70px rgba(15, 61, 94, 0.14) !important;
}

body.single-wpm-testimonial .featured-image,
body.single-wpm-testimonial .post-image,
body.single-wpm-testimonial .page-header-image-single {
  display: none !important;
}

body.single-wpm-testimonial .comments-area,
body.single-wpm-testimonial #comments,
body.single-wpm-testimonial .comment-respond,
body.single-wpm-testimonial #respond {
  display: none !important;
}

body.single-wpm-testimonial .entry-header {
  max-width: 820px !important;
  margin: 0 auto clamp(1.25rem, 3vw, 2rem) !important;
  text-align: center !important;
}

body.single-wpm-testimonial .epn-testimonial-detail-hero {
  display: grid !important;
  grid-template-columns: minmax(230px, 330px) minmax(0, 1fr) !important;
  align-items: center !important;
  gap: clamp(1.5rem, 4vw, 3.5rem) !important;
  max-width: 880px !important;
  margin: 0 auto clamp(2rem, 4vw, 3.2rem) !important;
}

body.single-wpm-testimonial .epn-testimonial-detail-hero .entry-header {
  max-width: none !important;
  margin: 0 !important;
  text-align: left !important;
}

body.single-wpm-testimonial .epn-testimonial-detail-hero .entry-header::after {
  margin-left: 0 !important;
  margin-right: auto !important;
}

body.single-wpm-testimonial .epn-testimonial-hero-media {
  margin: 0 !important;
  text-align: center !important;
}

body.single-wpm-testimonial .entry-title {
  margin: 0 !important;
  color: #0a4772 !important;
  font-size: clamp(2rem, 4.4vw, 3.5rem) !important;
  font-weight: 900 !important;
  line-height: 1.05 !important;
}

body.single-wpm-testimonial .entry-header::after {
  content: "" !important;
  display: block !important;
  width: 110px !important;
  height: 5px !important;
  margin: 1.1rem auto 0 !important;
  border-radius: 999px !important;
  background: linear-gradient(90deg, var(--epn-blue-800, #0f3d5e), var(--epn-amber-700, #b45309)) !important;
}

body.single-wpm-testimonial .entry-content {
  max-width: 790px !important;
  margin: 0 auto !important;
  color: #0a4772 !important;
  font-size: clamp(1.08rem, 1.25vw, 1.2rem) !important;
  line-height: 1.9 !important;
  text-align: left !important;
}

body.single-wpm-testimonial .entry-content * {
  text-align: inherit !important;
}

body.single-wpm-testimonial .entry-content > :is(p, figure, .wp-caption):first-child {
  margin-top: 0 !important;
}

body.single-wpm-testimonial .entry-content > p:first-child,
body.single-wpm-testimonial .entry-content > figure.epn-testimonial-hero-image,
body.single-wpm-testimonial .entry-content > .wp-caption:first-child {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  margin: 0 auto clamp(1.4rem, 3vw, 2.25rem) !important;
  text-align: center !important;
}

body.single-wpm-testimonial .entry-content figcaption,
body.single-wpm-testimonial .entry-content .wp-caption-text,
body.single-wpm-testimonial .epn-testimonial-hero-media figcaption,
body.single-wpm-testimonial .epn-testimonial-hero-media .wp-caption-text,
body.single-wpm-testimonial .epn-image-lightbox figcaption:empty {
  display: none !important;
}

body.single-wpm-testimonial .entry-content .epn-image-zoom-button,
body.single-wpm-testimonial .entry-content .epn-testimonial-lightbox-link,
body.single-wpm-testimonial .epn-testimonial-hero-media .epn-image-zoom-button,
body.single-wpm-testimonial .epn-testimonial-hero-media .epn-testimonial-lightbox-link,
body.single-wpm-testimonial .epn-testimonial-detail-hero .epn-image-zoom-button,
body.single-wpm-testimonial .epn-testimonial-detail-hero .epn-testimonial-lightbox-link {
  position: relative !important;
  display: inline-grid !important;
  place-items: center !important;
  width: clamp(210px, 34vw, 330px) !important;
  aspect-ratio: 1 / 1 !important;
  margin: 0 auto !important;
  padding: 10px !important;
  border: 0 !important;
  border-radius: 50% !important;
  background:
    linear-gradient(#ffffff, #ffffff) padding-box,
    linear-gradient(135deg, var(--epn-blue-800, #0f3d5e), #9fd5f1 45%, var(--epn-amber-700, #b45309)) border-box !important;
  border: 5px solid transparent !important;
  cursor: zoom-in !important;
  box-shadow:
    0 18px 44px rgba(15, 61, 94, 0.22),
    0 0 0 10px rgba(225, 239, 247, 0.85) !important;
  overflow: hidden !important;
  transition: transform 0.32s ease, box-shadow 0.32s ease, filter 0.32s ease !important;
}

body.single-wpm-testimonial .entry-content .epn-image-zoom-button::after,
body.single-wpm-testimonial .entry-content .epn-testimonial-lightbox-link::after,
body.single-wpm-testimonial .epn-testimonial-hero-media .epn-image-zoom-button::after,
body.single-wpm-testimonial .epn-testimonial-hero-media .epn-testimonial-lightbox-link::after,
body.single-wpm-testimonial .epn-testimonial-detail-hero .epn-image-zoom-button::after,
body.single-wpm-testimonial .epn-testimonial-detail-hero .epn-testimonial-lightbox-link::after {
  content: "Agrandir" !important;
  position: absolute !important;
  right: 18px !important;
  bottom: 20px !important;
  padding: 0.35rem 0.65rem !important;
  border-radius: 999px !important;
  background: rgba(7, 31, 51, 0.86) !important;
  color: #ffffff !important;
  font-size: 0.72rem !important;
  font-weight: 800 !important;
  letter-spacing: 0.02em !important;
  opacity: 0 !important;
  transform: translateY(6px) !important;
  transition: opacity 0.25s ease, transform 0.25s ease !important;
}

body.single-wpm-testimonial .entry-content .epn-image-zoom-button:hover,
body.single-wpm-testimonial .entry-content .epn-image-zoom-button:focus-visible,
body.single-wpm-testimonial .entry-content .epn-testimonial-lightbox-link:hover,
body.single-wpm-testimonial .entry-content .epn-testimonial-lightbox-link:focus-visible,
body.single-wpm-testimonial .epn-testimonial-hero-media .epn-image-zoom-button:hover,
body.single-wpm-testimonial .epn-testimonial-hero-media .epn-image-zoom-button:focus-visible,
body.single-wpm-testimonial .epn-testimonial-hero-media .epn-testimonial-lightbox-link:hover,
body.single-wpm-testimonial .epn-testimonial-hero-media .epn-testimonial-lightbox-link:focus-visible,
body.single-wpm-testimonial .epn-testimonial-detail-hero .epn-image-zoom-button:hover,
body.single-wpm-testimonial .epn-testimonial-detail-hero .epn-image-zoom-button:focus-visible,
body.single-wpm-testimonial .epn-testimonial-detail-hero .epn-testimonial-lightbox-link:hover,
body.single-wpm-testimonial .epn-testimonial-detail-hero .epn-testimonial-lightbox-link:focus-visible {
  transform: translateY(-5px) scale(1.025) !important;
  box-shadow:
    0 24px 58px rgba(15, 61, 94, 0.28),
    0 0 0 12px rgba(225, 239, 247, 0.95) !important;
  filter: saturate(1.04) !important;
  outline: none !important;
}

body.single-wpm-testimonial .entry-content .epn-image-zoom-button:hover::after,
body.single-wpm-testimonial .entry-content .epn-image-zoom-button:focus-visible::after,
body.single-wpm-testimonial .entry-content .epn-testimonial-lightbox-link:hover::after,
body.single-wpm-testimonial .entry-content .epn-testimonial-lightbox-link:focus-visible::after,
body.single-wpm-testimonial .epn-testimonial-hero-media .epn-image-zoom-button:hover::after,
body.single-wpm-testimonial .epn-testimonial-hero-media .epn-image-zoom-button:focus-visible::after,
body.single-wpm-testimonial .epn-testimonial-hero-media .epn-testimonial-lightbox-link:hover::after,
body.single-wpm-testimonial .epn-testimonial-hero-media .epn-testimonial-lightbox-link:focus-visible::after,
body.single-wpm-testimonial .epn-testimonial-detail-hero .epn-image-zoom-button:hover::after,
body.single-wpm-testimonial .epn-testimonial-detail-hero .epn-image-zoom-button:focus-visible::after,
body.single-wpm-testimonial .epn-testimonial-detail-hero .epn-testimonial-lightbox-link:hover::after,
body.single-wpm-testimonial .epn-testimonial-detail-hero .epn-testimonial-lightbox-link:focus-visible::after {
  opacity: 1 !important;
  transform: translateY(0) !important;
}

body.single-wpm-testimonial .entry-content .epn-image-zoom-button img,
body.single-wpm-testimonial .entry-content .epn-testimonial-lightbox-link img,
body.single-wpm-testimonial .epn-testimonial-hero-media .epn-image-zoom-button img,
body.single-wpm-testimonial .epn-testimonial-hero-media .epn-testimonial-lightbox-link img,
body.single-wpm-testimonial .epn-testimonial-detail-hero .epn-image-zoom-button img,
body.single-wpm-testimonial .epn-testimonial-detail-hero .epn-testimonial-lightbox-link img,
body.single-wpm-testimonial .entry-content > p:first-child > img:not(.emoji),
body.single-wpm-testimonial .entry-content > figure.epn-testimonial-hero-image img,
body.single-wpm-testimonial .entry-content > .wp-caption:first-child img {
  width: 100% !important;
  height: 100% !important;
  display: block !important;
  border-radius: 50% !important;
  object-fit: cover !important;
  object-position: center !important;
  box-shadow: none !important;
}

body.single-wpm-testimonial .entry-content figcaption,
body.single-wpm-testimonial .entry-content .wp-caption-text {
  margin-top: 0.95rem !important;
  color: var(--epn-blue-800, #0f3d5e) !important;
  font-size: 0.95rem !important;
  font-weight: 800 !important;
  text-align: center !important;
}

body.single-wpm-testimonial .entry-content .epn-testimonial-rating,
body.single-wpm-testimonial .entry-content > p:nth-child(2):has(.emoji),
body.single-wpm-testimonial .epn-testimonial-detail-copy .epn-testimonial-hero-rating {
  margin: 1.05rem auto 0 !important;
  text-align: center !important;
  color: #d8a500 !important;
  font-size: 1.35rem !important;
  letter-spacing: 0.08em !important;
}

body.single-wpm-testimonial .entry-content > p {
  max-width: 760px !important;
  margin: 0 auto 1.15rem !important;
}

body.single-wpm-testimonial .entry-content > p:not(.epn-testimonial-rating):not(.epn-testimonial-hero-rating):not(.epn-testimonial-signature) {
  text-align: justify !important;
  font-family: "Patrick Hand", "Segoe Print", "Comic Sans MS", cursive !important;
  color: #0a4772 !important;
  font-weight: 600 !important;
  font-size: clamp(1.22rem, 1.55vw, 1.42rem) !important;
  line-height: 1.72 !important;
}

body.single-wpm-testimonial .entry-content > p:not(.epn-testimonial-rating):not(.epn-testimonial-hero-rating):not(.epn-testimonial-signature) * {
  text-align: justify !important;
}

body.single-wpm-testimonial .entry-content .epn-testimonial-signature {
  margin-top: 1.8rem !important;
  color: #0a4772 !important;
  text-align: left !important;
  font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important;
  font-size: clamp(1.05rem, 1.2vw, 1.18rem) !important;
  font-weight: 900 !important;
  line-height: 1.35 !important;
}

body.single-wpm-testimonial .entry-content .epn-testimonial-signature strong {
  font-weight: 900 !important;
}

@media (max-width: 767px) {
  body.single-wpm-testimonial .inside-article {
    max-width: calc(100% - 20px) !important;
    margin: 0.75rem auto !important;
    padding: 1.1rem !important;
    border-radius: 20px !important;
  }

  body.single-wpm-testimonial .entry-title {
    font-size: clamp(1.65rem, 8vw, 2.35rem) !important;
  }

  body.single-wpm-testimonial .epn-testimonial-detail-hero {
    grid-template-columns: 1fr !important;
    gap: 1.15rem !important;
    margin-bottom: 1.55rem !important;
    text-align: center !important;
  }

  body.single-wpm-testimonial .epn-testimonial-detail-hero .entry-header {
    text-align: center !important;
  }

  body.single-wpm-testimonial .epn-testimonial-detail-hero .entry-header::after {
    margin-left: auto !important;
    margin-right: auto !important;
  }

  body.single-wpm-testimonial .entry-content {
    font-size: 1rem !important;
    line-height: 1.72 !important;
  }

  body.single-wpm-testimonial .entry-content .epn-image-zoom-button,
  body.single-wpm-testimonial .entry-content .epn-testimonial-lightbox-link,
  body.single-wpm-testimonial .epn-testimonial-hero-media .epn-image-zoom-button,
  body.single-wpm-testimonial .epn-testimonial-hero-media .epn-testimonial-lightbox-link,
  body.single-wpm-testimonial .epn-testimonial-detail-hero .epn-image-zoom-button,
  body.single-wpm-testimonial .epn-testimonial-detail-hero .epn-testimonial-lightbox-link {
    width: min(72vw, 270px) !important;
  }

  body.single-wpm-testimonial .entry-content > p:not(.epn-testimonial-rating):not(.epn-testimonial-hero-rating):not(.epn-testimonial-signature) {
    text-align: justify !important;
  }
}

@media (max-width: 767px) {
  body:is(.page:not(.home):not(.single-event), .single-post)
  .epn-detail-separator {
    width: 78% !important;
  }

  body:is(.page:not(.home):not(.single-event), .single-post)
  .epn-detail-meta-line {
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    gap: 0 6px !important;
    font-size: clamp(0.54rem, 2.35vw, 0.75rem) !important;
  }

  .strong-view .wpmtst-testimonial-inner,
  .strong-view .testimonial-inner {
    padding: 30px 18px 22px !important;
  }

  body:is(.page:not(.home):not(.single-event), .single-post)
  .entry-content h2 { padding-left: 10px !important; }
}

@media (max-width: 480px) {
  body:is(.page:not(.home):not(.single-event), .single-post)
  .epn-detail-separator {
    width: 90% !important;
  }

  body:is(.page:not(.home):not(.single-event), .single-post)
  .epn-detail-meta-line {
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    gap: 0 4px !important;
    font-size: clamp(0.44rem, 2.25vw, 0.62rem) !important;
  }
}

/* ==========================================================================
   PARTIE 8 — PRÉFÉRENCE MOUVEMENT RÉDUIT
   ========================================================================== */

@media (prefers-reduced-motion: reduce) {
  .strong-view .wpmtst-testimonial-inner,
  .strong-view .testimonial-inner {
    transition: none !important;
  }
}

/* ==========================================================================
   PARTIE 9 — CLASSES PORTABLES (HTML custom / Elementor)
   Inchangées par rapport au design de référence
   ========================================================================== */

.epn-meta-bar {
  display: flex; flex-wrap: wrap; justify-content: center; align-items: center;
  gap: 10px 14px; margin: 18px auto 0; padding: 10px 20px;
  font-size: 13px; font-weight: 600; letter-spacing: 0.02em; color: var(--epn-ink-soft);
  background: linear-gradient(180deg, rgba(231,240,250,0.6) 0%, rgba(231,240,250,0.18) 100%);
  border-radius: 999px; width: fit-content; max-width: 100%;
  box-shadow: inset 0 0 0 1px rgba(15,61,94,0.07);
}
.epn-meta-item { display: inline-flex; align-items: center; gap: 6px; white-space: nowrap; transition: color 0.22s ease, transform 0.22s ease; }
.epn-meta-item:hover { color: var(--epn-blue-800); transform: translateY(-1px); }
.epn-meta-sep { color: rgba(15,61,94,0.32); font-weight: 400; font-size: 14px; user-select: none; }
.epn-meta-link { color: inherit; text-decoration: none; border-bottom: 1px dashed transparent; transition: color 0.2s ease, border-color 0.2s ease; }
.epn-meta-link:hover { color: var(--epn-blue-800); border-bottom-color: var(--epn-blue-800); }

.epn-card__divider {
  position: relative; height: 4px; margin: 26px auto 28px; width: 65%; border-radius: 999px;
  background: linear-gradient(90deg, transparent 0%, rgba(15,61,94,0.85) 28%, var(--epn-amber-700) 50%, rgba(15,61,94,0.85) 72%, transparent 100%);
  box-shadow: 0 5px 14px rgba(15,61,94,0.15);
}
.epn-card__divider::before,
.epn-card__divider::after {
  content: ""; position: absolute; top: 50%; width: 8px; height: 8px;
  border-radius: 50%; background: var(--epn-amber-700); transform: translateY(-50%);
  box-shadow: 0 0 0 3px rgba(180,83,9,0.18);
}
.epn-card__divider::before { left: -4px; }
.epn-card__divider::after  { right: -4px; }

/* ==========================================================================
   PARTIE 10 — IMAGE MISE EN AVANT sur les PAGES
   GP Premium est filtré via option_generate_blog_settings pour utiliser
   page_post_image_position = 'inside-content' + alignment = 'left'.
   Le thème génère alors la même structure que les articles (body class
   post-image-aligned-left, image dans .inside-article).
   ========================================================================== */

/* Float left + taille augmentée de 30% et responsive */
body.page:not(.home).post-image-aligned-left .inside-article .featured-image,
body.page:not(.home).post-image-aligned-left .inside-article .post-image {
  float:       left !important;
  margin:      0 2em 1em 0 !important;
  max-width:   57% !important;
}

body.page:not(.home).post-image-aligned-left .inside-article .featured-image img,
body.page:not(.home).post-image-aligned-left .inside-article .post-image img {
  width:         100% !important;
  height:        auto !important;
  border-radius: 6px !important;
  display:       block !important;
}

/* Clearfix pour que le contenu suivant ne remonte pas sous l'image */
body.page:not(.home).post-image-aligned-left .inside-article::after {
  content: "";
  display: table;
  clear:   both;
}

/* Mobile : pas de float */
@media (max-width: 767px) {
  body.page:not(.home).post-image-aligned-left .inside-article .featured-image,
  body.page:not(.home).post-image-aligned-left .inside-article .post-image {
    float:     none !important;
    max-width: 100% !important;
    margin:    0 0 1.25rem 0 !important;
  }
}

/* ==========================================================================
   PARTIE 11 — LISTINGS DES FORMATIONS — style commun premium
   Harmonise les deux pages copiées pour obtenir une présentation cohérente.
   ========================================================================== */

body:is(.page-id-12870, .page-id-12872),
body:has(:is(.epn-creative-history, .epn-seniors-history, .epn-formation-history)) {
  background: #eef5f9 !important;
}

body:is(.page-id-12870, .page-id-12872) .entry-header,
body:has(:is(.epn-creative-history, .epn-seniors-history, .epn-formation-history)) .entry-header {
  display: none !important;
}

body:is(.page-id-12870, .page-id-12872) #page,
body:has(:is(.epn-creative-history, .epn-seniors-history, .epn-formation-history)) #page {
  max-width: none !important;
  padding: 0 clamp(0.9rem, 3.5vw, 3rem) clamp(2rem, 5vw, 4rem) !important;
  background: transparent !important;
}

body:is(.page-id-12870, .page-id-12872) .site-content,
body:is(.page-id-12870, .page-id-12872) #primary,
body:is(.page-id-12870, .page-id-12872) #main,
body:has(:is(.epn-creative-history, .epn-seniors-history, .epn-formation-history)) .site-content,
body:has(:is(.epn-creative-history, .epn-seniors-history, .epn-formation-history)) #primary,
body:has(:is(.epn-creative-history, .epn-seniors-history, .epn-formation-history)) #main {
  width: 100% !important;
  max-width: none !important;
  margin-inline: auto !important;
  background: transparent !important;
}

body:is(.page-id-12870, .page-id-12872) article.page > .inside-article,
body:has(:is(.epn-creative-history, .epn-seniors-history, .epn-formation-history)) article.page > .inside-article {
  width: min(100%, 1440px) !important;
  margin: clamp(1.8rem, 4.5vw, 3.8rem) auto !important;
  padding: 0 !important;
  border: 1px solid rgba(24, 85, 128, 0.1) !important;
  border-radius: 24px !important;
  background: #f8fbfd !important;
  box-shadow: 0 24px 70px rgba(15, 61, 94, 0.12) !important;
  overflow: hidden !important;
}

body:is(.page-id-12870, .page-id-12872) article.page .entry-content,
body:has(:is(.epn-creative-history, .epn-seniors-history, .epn-formation-history)) article.page .entry-content {
  margin: 0 !important;
  padding: 0 !important;
  border-radius: 24px !important;
  background: #f8fbfd !important;
  box-shadow: none !important;
}

body :is(.epn-creative-history, .epn-seniors-history, .epn-formation-history) {
  max-width: none !important;
  padding: 0 !important;
  color: var(--epn-blue-800) !important;
}

body :is(.epn-creative-hero, .epn-seniors-hero, .epn-formation-hero) {
  position: relative !important;
  margin: 0 !important;
  padding: clamp(1.65rem, 4vw, 3rem) clamp(1.35rem, 4vw, 4rem) clamp(1.35rem, 3vw, 2rem) !important;
  border: 0 !important;
  border-bottom: 1px solid rgba(216, 227, 238, 0.95) !important;
  border-radius: 0 !important;
  background: #ffffff !important;
  box-shadow: none !important;
  overflow: hidden !important;
}

body :is(.epn-creative-hero, .epn-seniors-hero, .epn-formation-hero)::before {
  content: "" !important;
  position: absolute !important;
  inset: 0 auto 0 0 !important;
  width: 7px !important;
  background: linear-gradient(180deg, #f28c28, #c8261d) !important;
}

body :is(.epn-creative-kicker, .epn-seniors-kicker, .epn-formation-kicker, .epn-creative-table-title, .epn-seniors-table-title, .epn-formation-table-title) {
  display: inline-flex !important;
  align-items: center !important;
  width: fit-content !important;
  max-width: 100% !important;
  padding: 0.48rem 0.78rem !important;
  border: 1px solid rgba(242, 140, 40, 0.3) !important;
  border-radius: 999px !important;
  background: #fff7ef !important;
  color: #a93f00 !important;
  font-size: 0.78rem !important;
  font-weight: 900 !important;
  letter-spacing: 0.06em !important;
  line-height: 1.1 !important;
  text-transform: uppercase !important;
}

body :is(.epn-creative-title, .epn-seniors-title, .epn-formation-title) {
  max-width: 980px !important;
  margin: 0.85rem 0 0.75rem !important;
  padding: 0 !important;
  border: 0 !important;
  color: #061f34 !important;
  font-size: clamp(2.15rem, 4.7vw, 4.05rem) !important;
  line-height: 1.03 !important;
  font-weight: 950 !important;
  letter-spacing: 0 !important;
}

body :is(.epn-creative-intro, .epn-seniors-intro, .epn-formation-intro) {
  max-width: 920px !important;
  margin: 0 !important;
  color: #31506a !important;
  font-size: clamp(1.02rem, 1.45vw, 1.18rem) !important;
  line-height: 1.72 !important;
  font-weight: 500 !important;
}

body :is(.epn-creative-section, .epn-seniors-section, .epn-formation-section) {
  width: calc(100% - clamp(1.5rem, 6vw, 7rem)) !important;
  max-width: 1220px !important;
  margin: clamp(1.15rem, 2.5vw, 1.65rem) auto !important;
  border: 1px solid rgba(24, 85, 128, 0.16) !important;
  border-radius: 18px !important;
  background: #ffffff !important;
  box-shadow: 0 16px 38px rgba(15, 61, 94, 0.09) !important;
  overflow: hidden !important;
}

body :is(.epn-creative-head, .epn-seniors-head, .epn-formation-head) {
  display: grid !important;
  grid-template-columns: minmax(280px, 0.82fr) minmax(320px, 1fr) !important;
  gap: clamp(1rem, 2.4vw, 1.8rem) !important;
  align-items: center !important;
  justify-items: start !important;
  padding: clamp(1rem, 2.2vw, 1.45rem) !important;
}

body :is(.epn-creative-head, .epn-seniors-head, .epn-formation-head) > .wp-block-group__inner-container {
  display: contents !important;
}

body :is(.epn-creative-section-no-image .epn-creative-head, .epn-seniors-section-no-image .epn-seniors-head, .epn-formation-section-no-image .epn-formation-head) {
  display: block !important;
}

body :is(.epn-creative-copy, .epn-seniors-copy, .epn-formation-copy) {
  width: 100% !important;
  min-width: 0 !important;
}

body :is(.epn-creative-group, .epn-seniors-group, .epn-formation-group) {
  margin: 0 0 0.7rem !important;
  padding: 0 !important;
  border: 0 !important;
  color: var(--epn-blue-800) !important;
  font-size: clamp(1.55rem, 2.8vw, 2.25rem) !important;
  font-weight: 950 !important;
  line-height: 1.08 !important;
  letter-spacing: 0 !important;
}

body :is(.epn-creative-meta, .epn-seniors-meta, .epn-formation-meta) {
  display: inline-block !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0.75rem 0.95rem !important;
  border: 1px solid rgba(216, 227, 238, 0.95) !important;
  border-radius: 12px !important;
  background: rgba(248, 251, 253, 0.82) !important;
  color: #31506a !important;
  font-size: clamp(0.95rem, 1.2vw, 1.05rem) !important;
  font-weight: 650 !important;
  line-height: 1.55 !important;
}

body :is(.epn-creative-photo, .epn-seniors-photo, .epn-formation-photo) {
  width: 100% !important;
  max-width: 560px !important;
  margin: 0 !important;
  border-radius: 14px !important;
  overflow: hidden !important;
}

body :is(.epn-creative-photo img, .epn-seniors-photo img, .epn-formation-photo img) {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  height: auto !important;
  border-radius: 14px !important;
  box-shadow: 0 12px 28px rgba(15, 61, 94, 0.13) !important;
}

body :is(.epn-creative-tables, .epn-seniors-tables, .epn-formation-tables) {
  padding: clamp(1rem, 2.4vw, 1.45rem) !important;
  background: rgba(255, 255, 255, 0.72) !important;
  border-top: 1px solid rgba(216, 227, 238, 0.72) !important;
}

body :is(.epn-creative-table-title, .epn-seniors-table-title, .epn-formation-table-title) {
  margin: 0 0 0.85rem !important;
}

body :is(.epn-creative-tables, .epn-seniors-tables, .epn-formation-tables) .tablepress {
  width: 100% !important;
  margin: 0 !important;
  border-collapse: separate !important;
  border-spacing: 0 !important;
  border: 1px solid rgba(15, 61, 94, 0.14) !important;
  border-radius: 12px !important;
  overflow: hidden !important;
  background: #ffffff !important;
  font-size: 0.94rem !important;
}

body :is(.epn-creative-tables, .epn-seniors-tables, .epn-formation-tables) .tablepress thead th {
  padding: 0.75rem 0.85rem !important;
  border-color: rgba(255, 255, 255, 0.18) !important;
  background: var(--epn-blue-800) !important;
  color: #ffffff !important;
  font-weight: 800 !important;
  line-height: 1.25 !important;
}

body :is(.epn-creative-tables, .epn-seniors-tables, .epn-formation-tables) .tablepress tbody td {
  padding: 0.68rem 0.85rem !important;
  border-color: rgba(216, 227, 238, 0.82) !important;
  color: #213a4d !important;
  line-height: 1.35 !important;
}

body :is(.epn-creative-tables, .epn-seniors-tables, .epn-formation-tables) .tablepress tbody tr:nth-child(even) td {
  background: #f6fafc !important;
}

body :is(.epn-creative-tables, .epn-seniors-tables, .epn-formation-tables) a {
  color: var(--epn-blue-800) !important;
  font-weight: 700 !important;
  text-decoration: none !important;
}

body :is(.epn-creative-tables, .epn-seniors-tables, .epn-formation-tables) a:hover,
body :is(.epn-creative-tables, .epn-seniors-tables, .epn-formation-tables) a:focus-visible {
  color: #a93f00 !important;
}

@media (max-width: 780px) {
  body:is(.page-id-12870, .page-id-12872) #page,
  body:has(:is(.epn-creative-history, .epn-seniors-history, .epn-formation-history)) #page {
    padding-inline: 0.75rem !important;
  }

  body:is(.page-id-12870, .page-id-12872) article.page > .inside-article,
  body:is(.page-id-12870, .page-id-12872) article.page .entry-content,
  body:has(:is(.epn-creative-history, .epn-seniors-history, .epn-formation-history)) article.page > .inside-article,
  body:has(:is(.epn-creative-history, .epn-seniors-history, .epn-formation-history)) article.page .entry-content {
    border-radius: 16px !important;
  }

  body :is(.epn-creative-hero, .epn-seniors-hero, .epn-formation-hero) {
    padding-inline: 1.1rem !important;
  }

  body :is(.epn-creative-section, .epn-seniors-section, .epn-formation-section) {
    width: calc(100% - 1rem) !important;
    border-radius: 16px !important;
  }

  body :is(.epn-creative-head, .epn-seniors-head, .epn-formation-head) {
    grid-template-columns: 1fr !important;
  }

  body :is(.epn-creative-photo, .epn-seniors-photo, .epn-formation-photo) {
    max-width: 100% !important;
  }

  body :is(.epn-creative-meta, .epn-seniors-meta, .epn-formation-meta) {
    display: block !important;
  }

  body :is(.epn-creative-tables, .epn-seniors-tables, .epn-formation-tables) {
    overflow-x: auto !important;
    -webkit-overflow-scrolling: touch !important;
  }
}

/* ==========================================================================
   PARTIE 13 — LISTINGS FORMATIONS — version compacte exploitable
   Images équilibrées, espaces resserrés, tableaux limités aux colonnes utiles.
   ========================================================================== */

body:is(.page-id-12870, .page-id-12872) article.page > .inside-article,
body:has(:is(.epn-creative-history, .epn-seniors-history, .epn-formation-history)) article.page > .inside-article {
  width: min(100%, 1320px) !important;
  margin-block: clamp(1rem, 2.8vw, 2.4rem) !important;
}

body:is(.page-id-12870, .page-id-12872) :is(.epn-creative-section, .epn-seniors-section, .epn-formation-section),
body:has(:is(.epn-creative-history, .epn-seniors-history, .epn-formation-history)) :is(.epn-creative-section, .epn-seniors-section, .epn-formation-section) {
  width: min(calc(100% - clamp(1rem, 4vw, 4rem)), 1160px) !important;
  margin-block: clamp(0.8rem, 1.8vw, 1.2rem) !important;
}

body:is(.page-id-12870, .page-id-12872) :is(.epn-creative-head, .epn-seniors-head, .epn-formation-head),
body:has(:is(.epn-creative-history, .epn-seniors-history, .epn-formation-history)) :is(.epn-creative-head, .epn-seniors-head, .epn-formation-head) {
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
  gap: clamp(1rem, 2.2vw, 1.6rem) !important;
  padding: clamp(1rem, 2.3vw, 1.55rem) !important;
}

body:is(.page-id-12870, .page-id-12872) :is(.epn-creative-photo, .epn-seniors-photo, .epn-formation-photo),
body:has(:is(.epn-creative-history, .epn-seniors-history, .epn-formation-history)) :is(.epn-creative-photo, .epn-seniors-photo, .epn-formation-photo) {
  justify-self: stretch !important;
  width: 100% !important;
  max-width: 100% !important;
}

body:is(.page-id-12870, .page-id-12872) :is(.epn-creative-photo img, .epn-seniors-photo img, .epn-formation-photo img),
body:has(:is(.epn-creative-history, .epn-seniors-history, .epn-formation-history)) :is(.epn-creative-photo img, .epn-seniors-photo img, .epn-formation-photo img) {
  width: 100% !important;
  aspect-ratio: 4 / 3 !important;
  object-fit: cover !important;
}

body:is(.page-id-12870, .page-id-12872) :is(.epn-creative-group, .epn-seniors-group, .epn-formation-group),
body:has(:is(.epn-creative-history, .epn-seniors-history, .epn-formation-history)) :is(.epn-creative-group, .epn-seniors-group, .epn-formation-group) {
  font-size: clamp(1.25rem, 2vw, 1.85rem) !important;
}

body:is(.page-id-12870, .page-id-12872) :is(.epn-creative-meta, .epn-seniors-meta, .epn-formation-meta),
body:has(:is(.epn-creative-history, .epn-seniors-history, .epn-formation-history)) :is(.epn-creative-meta, .epn-seniors-meta, .epn-formation-meta) {
  padding: 0.58rem 0.75rem !important;
  font-size: clamp(0.84rem, 1vw, 0.98rem) !important;
  line-height: 1.42 !important;
}

body:is(.page-id-12870, .page-id-12872) :is(.epn-creative-tables, .epn-seniors-tables, .epn-formation-tables),
body:has(:is(.epn-creative-history, .epn-seniors-history, .epn-formation-history)) :is(.epn-creative-tables, .epn-seniors-tables, .epn-formation-tables) {
  padding: clamp(0.75rem, 1.8vw, 1.1rem) !important;
}

body:is(.page-id-12870, .page-id-12872) :is(.epn-creative-tables, .epn-seniors-tables, .epn-formation-tables) .dataTables_wrapper,
body:has(:is(.epn-creative-history, .epn-seniors-history, .epn-formation-history)) :is(.epn-creative-tables, .epn-seniors-tables, .epn-formation-tables) .dataTables_wrapper {
  width: 100% !important;
  max-width: 100% !important;
  overflow: visible !important;
}

body:is(.page-id-12870, .page-id-12872) :is(.epn-creative-tables, .epn-seniors-tables, .epn-formation-tables) :is(.dataTables_length, .dataTables_filter),
body:has(:is(.epn-creative-history, .epn-seniors-history, .epn-formation-history)) :is(.epn-creative-tables, .epn-seniors-tables, .epn-formation-tables) :is(.dataTables_length, .dataTables_filter) {
  margin: 0 0 0.65rem !important;
  font-size: 0.88rem !important;
}

body:is(.page-id-12870, .page-id-12872) :is(.epn-creative-tables, .epn-seniors-tables, .epn-formation-tables) .tablepress,
body:has(:is(.epn-creative-history, .epn-seniors-history, .epn-formation-history)) :is(.epn-creative-tables, .epn-seniors-tables, .epn-formation-tables) .tablepress {
  min-width: 0 !important;
  table-layout: fixed !important;
  font-size: clamp(0.78rem, 1vw, 0.92rem) !important;
}

body:is(.page-id-12870, .page-id-12872) :is(.epn-creative-tables, .epn-seniors-tables, .epn-formation-tables) .tablepress :is(th, td),
body:has(:is(.epn-creative-history, .epn-seniors-history, .epn-formation-history)) :is(.epn-creative-tables, .epn-seniors-tables, .epn-formation-tables) .tablepress :is(th, td) {
  padding: 0.52rem 0.55rem !important;
  overflow-wrap: anywhere !important;
}

body:is(.page-id-12870, .page-id-12872) :is(.epn-creative-tables, .epn-seniors-tables, .epn-formation-tables) .tablepress :is(.column-1, .column-4),
body:has(:is(.epn-creative-history, .epn-seniors-history, .epn-formation-history)) :is(.epn-creative-tables, .epn-seniors-tables, .epn-formation-tables) .tablepress :is(.column-1, .column-4) {
  width: 14% !important;
}

body:is(.page-id-12870, .page-id-12872) :is(.epn-creative-tables, .epn-seniors-tables, .epn-formation-tables) .tablepress :is(.column-2, .column-3),
body:has(:is(.epn-creative-history, .epn-seniors-history, .epn-formation-history)) :is(.epn-creative-tables, .epn-seniors-tables, .epn-formation-tables) .tablepress :is(.column-2, .column-3) {
  width: 36% !important;
}

@media (max-width: 900px) {
  body:is(.page-id-12870, .page-id-12872) :is(.epn-creative-head, .epn-seniors-head, .epn-formation-head),
  body:has(:is(.epn-creative-history, .epn-seniors-history, .epn-formation-history)) :is(.epn-creative-head, .epn-seniors-head, .epn-formation-head) {
    grid-template-columns: 1fr !important;
  }

  body.page-id-12870 .epn-creative-head > .wp-block-group__inner-container > .epn-creative-photo,
  body.page-id-12872 .epn-seniors-head > .wp-block-group__inner-container > .epn-seniors-photo,
  body:has(.epn-formation-history) .epn-formation-head > .wp-block-group__inner-container > .epn-formation-photo,
  body:is(.page-id-12870, .page-id-12872) :is(.epn-creative-photo, .epn-seniors-photo, .epn-formation-photo) {
    order: 1 !important;
  }

  body.page-id-12870 .epn-creative-head > .wp-block-group__inner-container > .epn-creative-copy,
  body.page-id-12872 .epn-seniors-head > .wp-block-group__inner-container > .epn-seniors-copy,
  body:has(.epn-formation-history) .epn-formation-head > .wp-block-group__inner-container > .epn-formation-copy,
  body:is(.page-id-12870, .page-id-12872) :is(.epn-creative-copy, .epn-seniors-copy, .epn-formation-copy) {
    order: 2 !important;
  }
}

@media (max-width: 600px) {
  body:is(.page-id-12870, .page-id-12872) :is(.epn-creative-hero, .epn-seniors-hero, .epn-formation-hero),
  body:has(:is(.epn-creative-history, .epn-seniors-history, .epn-formation-history)) :is(.epn-creative-hero, .epn-seniors-hero, .epn-formation-hero) {
    padding: 1rem 0.85rem 0.9rem !important;
  }

  body:is(.page-id-12870, .page-id-12872) :is(.epn-creative-title, .epn-seniors-title, .epn-formation-title),
  body:has(:is(.epn-creative-history, .epn-seniors-history, .epn-formation-history)) :is(.epn-creative-title, .epn-seniors-title, .epn-formation-title) {
    font-size: clamp(1.45rem, 6.2vw, 1.9rem) !important;
  }

  body:is(.page-id-12870, .page-id-12872) :is(.epn-creative-section, .epn-seniors-section, .epn-formation-section),
  body:has(:is(.epn-creative-history, .epn-seniors-history, .epn-formation-history)) :is(.epn-creative-section, .epn-seniors-section, .epn-formation-section) {
    width: calc(100% - 0.6rem) !important;
  }

  body:is(.page-id-12870, .page-id-12872) :is(.epn-creative-head, .epn-seniors-head, .epn-formation-head),
  body:has(:is(.epn-creative-history, .epn-seniors-history, .epn-formation-history)) :is(.epn-creative-head, .epn-seniors-head, .epn-formation-head) {
    gap: 0.75rem !important;
    padding: 0.75rem !important;
  }

  body:is(.page-id-12870, .page-id-12872) :is(.epn-creative-photo img, .epn-seniors-photo img, .epn-formation-photo img),
  body:has(:is(.epn-creative-history, .epn-seniors-history, .epn-formation-history)) :is(.epn-creative-photo img, .epn-seniors-photo img, .epn-formation-photo img) {
    aspect-ratio: 16 / 10 !important;
  }

  body:is(.page-id-12870, .page-id-12872) :is(.epn-creative-group, .epn-seniors-group, .epn-formation-group),
  body:has(:is(.epn-creative-history, .epn-seniors-history, .epn-formation-history)) :is(.epn-creative-group, .epn-seniors-group, .epn-formation-group) {
    font-size: clamp(1.15rem, 5.2vw, 1.45rem) !important;
  }

  body:is(.page-id-12870, .page-id-12872) :is(.epn-creative-meta, .epn-seniors-meta, .epn-formation-meta),
  body:has(:is(.epn-creative-history, .epn-seniors-history, .epn-formation-history)) :is(.epn-creative-meta, .epn-seniors-meta, .epn-formation-meta) {
    padding: 0.5rem 0.6rem !important;
    font-size: 0.82rem !important;
  }

  body:is(.page-id-12870, .page-id-12872) :is(.epn-creative-tables, .epn-seniors-tables, .epn-formation-tables) :is(.dataTables_length, .dataTables_filter),
  body:has(:is(.epn-creative-history, .epn-seniors-history, .epn-formation-history)) :is(.epn-creative-tables, .epn-seniors-tables, .epn-formation-tables) :is(.dataTables_length, .dataTables_filter) {
    display: none !important;
  }

  body:is(.page-id-12870, .page-id-12872) :is(.epn-creative-tables, .epn-seniors-tables, .epn-formation-tables) .tablepress,
  body:has(:is(.epn-creative-history, .epn-seniors-history, .epn-formation-history)) :is(.epn-creative-tables, .epn-seniors-tables, .epn-formation-tables) .tablepress {
    font-size: 0.72rem !important;
  }

  body:is(.page-id-12870, .page-id-12872) :is(.epn-creative-tables, .epn-seniors-tables, .epn-formation-tables) .tablepress :is(th, td),
  body:has(:is(.epn-creative-history, .epn-seniors-history, .epn-formation-history)) :is(.epn-creative-tables, .epn-seniors-tables, .epn-formation-tables) .tablepress :is(th, td) {
    padding: 0.42rem 0.34rem !important;
  }

  body:is(.page-id-12870, .page-id-12872) :is(.epn-creative-tables, .epn-seniors-tables, .epn-formation-tables) .tablepress :is(.column-1, .column-4),
  body:has(:is(.epn-creative-history, .epn-seniors-history, .epn-formation-history)) :is(.epn-creative-tables, .epn-seniors-tables, .epn-formation-tables) .tablepress :is(.column-1, .column-4) {
    width: 13% !important;
  }

  body:is(.page-id-12870, .page-id-12872) :is(.epn-creative-tables, .epn-seniors-tables, .epn-formation-tables) .tablepress :is(.column-2, .column-3),
  body:has(:is(.epn-creative-history, .epn-seniors-history, .epn-formation-history)) :is(.epn-creative-tables, .epn-seniors-tables, .epn-formation-tables) .tablepress :is(.column-2, .column-3) {
    width: 37% !important;
  }
}

/* ==========================================================================
   PARTIE 12 — CORRECTIFS RESPONSIVE LISTINGS
   Empêche les débordements et les titres tronqués sur mobile/tablette.
   ========================================================================== */

body:is(.page-id-12870, .page-id-12872),
body:has(:is(.epn-creative-history, .epn-seniors-history, .epn-formation-history)) {
  overflow-x: hidden !important;
}

body:is(.page-id-12870, .page-id-12872) *,
body:has(:is(.epn-creative-history, .epn-seniors-history, .epn-formation-history)) * {
  box-sizing: border-box !important;
}

body:is(.page-id-12870, .page-id-12872) #page,
body:has(:is(.epn-creative-history, .epn-seniors-history, .epn-formation-history)) #page,
body:is(.page-id-12870, .page-id-12872) article.page > .inside-article,
body:has(:is(.epn-creative-history, .epn-seniors-history, .epn-formation-history)) article.page > .inside-article,
body:is(.page-id-12870, .page-id-12872) article.page .entry-content,
body:has(:is(.epn-creative-history, .epn-seniors-history, .epn-formation-history)) article.page .entry-content {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
}

body:is(.page-id-12870, .page-id-12872) article.page > .inside-article,
body:has(:is(.epn-creative-history, .epn-seniors-history, .epn-formation-history)) article.page > .inside-article {
  width: min(100%, 1440px) !important;
}

body:is(.page-id-12870, .page-id-12872) :is(.epn-creative-history, .epn-seniors-history, .epn-formation-history),
body:is(.page-id-12870, .page-id-12872) :is(.epn-creative-hero, .epn-seniors-hero, .epn-formation-hero),
body:is(.page-id-12870, .page-id-12872) :is(.epn-creative-section, .epn-seniors-section, .epn-formation-section),
body:is(.page-id-12870, .page-id-12872) :is(.epn-creative-head, .epn-seniors-head, .epn-formation-head),
body:is(.page-id-12870, .page-id-12872) :is(.epn-creative-copy, .epn-seniors-copy, .epn-formation-copy),
body:is(.page-id-12870, .page-id-12872) :is(.epn-creative-tables, .epn-seniors-tables, .epn-formation-tables) {
  max-width: 100% !important;
  min-width: 0 !important;
}

body:is(.page-id-12870, .page-id-12872) :is(.epn-creative-section, .epn-seniors-section, .epn-formation-section),
body:has(:is(.epn-creative-history, .epn-seniors-history, .epn-formation-history)) :is(.epn-creative-section, .epn-seniors-section, .epn-formation-section) {
  width: min(calc(100% - clamp(1rem, 5vw, 6rem)), 1220px) !important;
}

body:is(.page-id-12870, .page-id-12872) :is(.epn-creative-head, .epn-seniors-head, .epn-formation-head),
body:has(:is(.epn-creative-history, .epn-seniors-history, .epn-formation-history)) :is(.epn-creative-head, .epn-seniors-head, .epn-formation-head) {
  grid-template-columns: minmax(240px, 440px) minmax(0, 1fr) !important;
}

body.page-id-12870 .epn-creative-head > .wp-block-group__inner-container,
body.page-id-12872 .epn-seniors-head > .wp-block-group__inner-container,
body:has(.epn-formation-history) .epn-formation-head > .wp-block-group__inner-container {
  display: contents !important;
  width: auto !important;
  max-width: none !important;
  margin: 0 !important;
}

body.page-id-12870 .epn-creative-head > .wp-block-group__inner-container > .epn-creative-photo,
body.page-id-12872 .epn-seniors-head > .wp-block-group__inner-container > .epn-seniors-photo,
body:has(.epn-formation-history) .epn-formation-head > .wp-block-group__inner-container > .epn-formation-photo {
  order: 1 !important;
}

body.page-id-12870 .epn-creative-head > .wp-block-group__inner-container > .epn-creative-copy,
body.page-id-12872 .epn-seniors-head > .wp-block-group__inner-container > .epn-seniors-copy,
body:has(.epn-formation-history) .epn-formation-head > .wp-block-group__inner-container > .epn-formation-copy {
  order: 2 !important;
}

body:is(.page-id-12870, .page-id-12872) :is(.epn-creative-title, .epn-seniors-title, .epn-formation-title),
body:is(.page-id-12870, .page-id-12872) :is(.epn-creative-group, .epn-seniors-group, .epn-formation-group),
body:has(:is(.epn-creative-history, .epn-seniors-history, .epn-formation-history)) :is(.epn-creative-title, .epn-seniors-title, .epn-formation-title),
body:has(:is(.epn-creative-history, .epn-seniors-history, .epn-formation-history)) :is(.epn-creative-group, .epn-seniors-group, .epn-formation-group) {
  max-width: 100% !important;
  overflow: visible !important;
  white-space: normal !important;
  word-break: normal !important;
  overflow-wrap: normal !important;
  hyphens: none !important;
  -webkit-hyphens: none !important;
  text-wrap: balance;
}

body:is(.page-id-12870, .page-id-12872) :is(.epn-creative-group, .epn-seniors-group, .epn-formation-group),
body:has(:is(.epn-creative-history, .epn-seniors-history, .epn-formation-history)) :is(.epn-creative-group, .epn-seniors-group, .epn-formation-group) {
  font-size: clamp(1.35rem, 1.85vw, 2rem) !important;
  line-height: 1.16 !important;
}

body:is(.page-id-12870, .page-id-12872) :is(.epn-creative-photo, .epn-seniors-photo, .epn-formation-photo),
body:has(:is(.epn-creative-history, .epn-seniors-history, .epn-formation-history)) :is(.epn-creative-photo, .epn-seniors-photo, .epn-formation-photo) {
  justify-self: center !important;
  width: min(100%, 440px) !important;
}

body:is(.page-id-12870, .page-id-12872) :is(.epn-creative-tables, .epn-seniors-tables, .epn-formation-tables),
body:has(:is(.epn-creative-history, .epn-seniors-history, .epn-formation-history)) :is(.epn-creative-tables, .epn-seniors-tables, .epn-formation-tables) {
  overflow-x: auto !important;
  -webkit-overflow-scrolling: touch !important;
}

body:is(.page-id-12870, .page-id-12872) :is(.epn-creative-tables, .epn-seniors-tables, .epn-formation-tables) .tablepress,
body:has(:is(.epn-creative-history, .epn-seniors-history, .epn-formation-history)) :is(.epn-creative-tables, .epn-seniors-tables, .epn-formation-tables) .tablepress {
  min-width: 560px !important;
}

@media (max-width: 900px) {
  body:is(.page-id-12870, .page-id-12872) :is(.epn-creative-head, .epn-seniors-head, .epn-formation-head),
  body:has(:is(.epn-creative-history, .epn-seniors-history, .epn-formation-history)) :is(.epn-creative-head, .epn-seniors-head, .epn-formation-head) {
    grid-template-columns: 1fr !important;
  }

  body:is(.page-id-12870, .page-id-12872) :is(.epn-creative-photo, .epn-seniors-photo, .epn-formation-photo),
  body:has(:is(.epn-creative-history, .epn-seniors-history, .epn-formation-history)) :is(.epn-creative-photo, .epn-seniors-photo, .epn-formation-photo) {
    width: min(100%, 520px) !important;
  }
}

@media (max-width: 600px) {
  body:is(.page-id-12870, .page-id-12872) #page,
  body:has(:is(.epn-creative-history, .epn-seniors-history, .epn-formation-history)) #page {
    padding-inline: 0 !important;
  }

  body:is(.page-id-12870, .page-id-12872) article.page > .inside-article,
  body:has(:is(.epn-creative-history, .epn-seniors-history, .epn-formation-history)) article.page > .inside-article,
  body:is(.page-id-12870, .page-id-12872) article.page .entry-content,
  body:has(:is(.epn-creative-history, .epn-seniors-history, .epn-formation-history)) article.page .entry-content {
    border-radius: 0 !important;
  }

  body:is(.page-id-12870, .page-id-12872) :is(.epn-creative-hero, .epn-seniors-hero, .epn-formation-hero),
  body:has(:is(.epn-creative-history, .epn-seniors-history, .epn-formation-history)) :is(.epn-creative-hero, .epn-seniors-hero, .epn-formation-hero) {
    padding: 1.35rem 1rem 1.2rem !important;
  }

  body:is(.page-id-12870, .page-id-12872) :is(.epn-creative-title, .epn-seniors-title, .epn-formation-title),
  body:has(:is(.epn-creative-history, .epn-seniors-history, .epn-formation-history)) :is(.epn-creative-title, .epn-seniors-title, .epn-formation-title) {
    font-size: clamp(1.65rem, 7vw, 2.15rem) !important;
    line-height: 1.12 !important;
  }

  body:is(.page-id-12870, .page-id-12872) :is(.epn-creative-intro, .epn-seniors-intro, .epn-formation-intro),
  body:has(:is(.epn-creative-history, .epn-seniors-history, .epn-formation-history)) :is(.epn-creative-intro, .epn-seniors-intro, .epn-formation-intro) {
    font-size: 0.98rem !important;
  }

  body:is(.page-id-12870, .page-id-12872) :is(.epn-creative-section, .epn-seniors-section, .epn-formation-section),
  body:has(:is(.epn-creative-history, .epn-seniors-history, .epn-formation-history)) :is(.epn-creative-section, .epn-seniors-section, .epn-formation-section) {
    width: calc(100% - 1rem) !important;
    margin-block: 0.9rem !important;
  }

  body:is(.page-id-12870, .page-id-12872) :is(.epn-creative-head, .epn-seniors-head, .epn-formation-head),
  body:has(:is(.epn-creative-history, .epn-seniors-history, .epn-formation-history)) :is(.epn-creative-head, .epn-seniors-head, .epn-formation-head) {
    padding: 1rem !important;
  }

  body:is(.page-id-12870, .page-id-12872) :is(.epn-creative-group, .epn-seniors-group, .epn-formation-group),
  body:has(:is(.epn-creative-history, .epn-seniors-history, .epn-formation-history)) :is(.epn-creative-group, .epn-seniors-group, .epn-formation-group) {
    font-size: clamp(1.25rem, 6vw, 1.65rem) !important;
  }

  body:is(.page-id-12870, .page-id-12872) :is(.epn-creative-tables, .epn-seniors-tables, .epn-formation-tables),
  body:has(:is(.epn-creative-history, .epn-seniors-history, .epn-formation-history)) :is(.epn-creative-tables, .epn-seniors-tables, .epn-formation-tables) {
    padding: 0.85rem !important;
  }
}

/* ==========================================================================
   PARTIE 16 — OVERRIDE FINAL MOBILE : 5px garantis
   Cette couche est volontairement la dernière du fichier.
   ========================================================================== */

@media (max-width: 900px) {
  body:is(.page-id-12870, .page-id-12872) #page,
  body:has(:is(.epn-creative-history, .epn-seniors-history, .epn-formation-history)) #page,
  body:is(.page-id-12870, .page-id-12872) .site-content,
  body:has(:is(.epn-creative-history, .epn-seniors-history, .epn-formation-history)) .site-content,
  body:is(.page-id-12870, .page-id-12872) #primary,
  body:has(:is(.epn-creative-history, .epn-seniors-history, .epn-formation-history)) #primary,
  body:is(.page-id-12870, .page-id-12872) #main,
  body:has(:is(.epn-creative-history, .epn-seniors-history, .epn-formation-history)) #main,
  body:is(.page-id-12870, .page-id-12872) article.page > .inside-article,
  body:has(:is(.epn-creative-history, .epn-seniors-history, .epn-formation-history)) article.page > .inside-article,
  body:is(.page-id-12870, .page-id-12872) article.page .entry-content,
  body:has(:is(.epn-creative-history, .epn-seniors-history, .epn-formation-history)) article.page .entry-content {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
  }

  body:is(.page-id-12870, .page-id-12872) :is(.epn-creative-hero, .epn-seniors-hero, .epn-formation-hero),
  body:has(:is(.epn-creative-history, .epn-seniors-history, .epn-formation-history)) :is(.epn-creative-hero, .epn-seniors-hero, .epn-formation-hero),
  body:is(.page-id-12870, .page-id-12872) :is(.epn-creative-section, .epn-seniors-section, .epn-formation-section),
  body:has(:is(.epn-creative-history, .epn-seniors-history, .epn-formation-history)) :is(.epn-creative-section, .epn-seniors-section, .epn-formation-section) {
    width: calc(100% - 10px) !important;
    max-width: calc(100% - 10px) !important;
    margin: 5px !important;
  }

  body:is(.page-id-12870, .page-id-12872) :is(.epn-creative-hero, .epn-seniors-hero, .epn-formation-hero),
  body:has(:is(.epn-creative-history, .epn-seniors-history, .epn-formation-history)) :is(.epn-creative-hero, .epn-seniors-hero, .epn-formation-hero) {
    padding: 10px 10px 9px 14px !important;
  }

  body:is(.page-id-12870, .page-id-12872) :is(.epn-creative-head, .epn-seniors-head, .epn-formation-head),
  body:has(:is(.epn-creative-history, .epn-seniors-history, .epn-formation-history)) :is(.epn-creative-head, .epn-seniors-head, .epn-formation-head) {
    padding: 6px !important;
    gap: 6px !important;
  }

  body:is(.page-id-12870, .page-id-12872) :is(.epn-creative-tables, .epn-seniors-tables, .epn-formation-tables),
  body:has(:is(.epn-creative-history, .epn-seniors-history, .epn-formation-history)) :is(.epn-creative-tables, .epn-seniors-tables, .epn-formation-tables) {
    padding: 5px !important;
  }

  body:is(.page-id-12870, .page-id-12872) :is(.epn-creative-tables, .epn-seniors-tables, .epn-formation-tables) :is(.dataTables_length, .dataTables_filter),
  body:has(:is(.epn-creative-history, .epn-seniors-history, .epn-formation-history)) :is(.epn-creative-tables, .epn-seniors-tables, .epn-formation-tables) :is(.dataTables_length, .dataTables_filter) {
    display: none !important;
  }

  body:is(.page-id-12870, .page-id-12872) :is(.epn-creative-tables, .epn-seniors-tables, .epn-formation-tables) .tablepress,
  body:has(:is(.epn-creative-history, .epn-seniors-history, .epn-formation-history)) :is(.epn-creative-tables, .epn-seniors-tables, .epn-formation-tables) .tablepress {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    table-layout: fixed !important;
  }
}
