/*!
Theme Name: Divi Child
Template: Divi
Theme URI: http://www.elegantthemes.com/gallery/divi/
Version: 4.27.4
Description: Smart. Flexible. Beautiful. Divi is the most powerful theme in our collection.
Author: Elegant Themes
Author URI: http://www.elegantthemes.com
License: GNU General Public License v2
License URI: http://www.gnu.org/licenses/gpl-2.0.html
*/

.cfdt-blog-grid__items {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
  gap: 24px;
}

.cfdt-blog-grid__item {
  border: 1px solid #eee;
  padding: 16px;
  background: #fff;
}

.cfdt-blog-grid__title {
  margin-bottom: 1rem;
  color: #e95d0f;
}

.cfdt-blog-grid__item-title a {
  color: #e95d0f;
  text-decoration: none;
}

.cfdt-blog-grid__read-more {
  display: inline-block;
  margin-top: 8px;
  color: #e95d0f;
  font-weight: 600;
}

.encadre {
  border: solid 1px #7e3bd0;
  padding: 1em;
}

/* ============================================================
   AGENDA CFDT — styles des shortcodes [agenda_accueil] et [agenda_complet]
   À coller dans : Divi → Options du thème → CSS personnalisé
   ============================================================ */

/* ── Variables ─────────────────────────────────────────────── */
:root {
  --evt-rouge: #e30613; /* rouge CFDT */
  --evt-rouge-dark: #b8000f;
  --evt-noir: #1a1a1a;
  --evt-gris: #f5f5f5;
  --evt-gris-mid: #888;
  --evt-blanc: #ffffff;
  --evt-radius: 10px;
  --evt-shadow: 0 4px 20px rgba(0, 0, 0, 0.08);
  --evt-gap: 1.5rem;
  --evt-font: inherit; /* hérite de Divi */
}

/* ── Grilles ────────────────────────────────────────────────── */
.evt-grille {
  display: grid;
  gap: var(--evt-gap);
  width: 100%;
}

.evt-grille--3 {
  grid-template-columns: repeat(3, 1fr);
}

.evt-grille--2 {
  grid-template-columns: repeat(2, 1fr);
}

@media (max-width: 980px) {
  .evt-grille--3 {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 640px) {
  .evt-grille--3,
  .evt-grille--2 {
    grid-template-columns: 1fr;
  }
}

/* ── Carte ──────────────────────────────────────────────────── */
.evt-carte {
  background: var(--evt-blanc);
  border-radius: var(--evt-radius);
  box-shadow: var(--evt-shadow);
  overflow: hidden;
  display: flex;
  flex-direction: column;
  transition:
    transform 0.2s ease,
    box-shadow 0.2s ease;
}

.evt-carte:hover {
  transform: translateY(-4px);
  box-shadow: 0 10px 32px rgba(0, 0, 0, 0.13);
}

/* ── Média (image + catégorie) ──────────────────────────────── */
.evt-media {
  position: relative;
  overflow: hidden;
  background: var(--evt-gris);
  aspect-ratio: 16 / 9;
}

.evt-media--no-img {
  aspect-ratio: unset;
  min-height: 48px;
  background: var(--evt-rouge);
}

.evt-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform 0.4s ease;
}

.evt-carte:hover .evt-img {
  transform: scale(1.04);
}

.evt-categorie {
  position: absolute;
  top: 12px;
  left: 12px;
  background: var(--evt-rouge);
  color: var(--evt-blanc);
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  padding: 4px 10px;
  border-radius: 4px;
  z-index: 2;
  line-height: 1.4;
}

.evt-media--no-img .evt-categorie {
  position: static;
  display: inline-block;
  margin: 10px 12px;
}

/* ── Corps de la carte ──────────────────────────────────────── */
.evt-body {
  padding: 1.25rem 1.4rem 1.4rem;
  display: flex;
  flex-direction: column;
  flex: 1;
  gap: 0.5rem;
}

/* ── Lieu ───────────────────────────────────────────────────── */
.evt-lieu {
  display: flex;
  align-items: center;
  gap: 5px;
  font-size: 0.82rem;
  color: var(--evt-gris-mid);
  margin: 0;
  font-weight: 500;
}

.evt-lieu svg {
  flex-shrink: 0;
  color: var(--evt-rouge);
}

/* ── Titre ──────────────────────────────────────────────────── */
.evt-titre {
  font-size: 1.05rem;
  font-weight: 700;
  line-height: 1.3;
  margin: 0;
  color: var(--evt-noir);
}

.evt-titre a {
  color: inherit;
  text-decoration: none;
}

.evt-titre a:hover {
  color: var(--evt-rouge);
}

/* ── Contenu / excerpt ──────────────────────────────────────── */
.evt-contenu {
  font-size: 0.9rem;
  color: #444;
  line-height: 1.6;
  flex: 1;
}

.evt-contenu p {
  margin: 0 0 0.5em;
}
.evt-contenu p:last-child {
  margin-bottom: 0;
}

/* ── Meta (dates & heures) ──────────────────────────────────── */
.evt-meta {
  display: flex;
  flex-direction: column;
  gap: 3px;
  margin-top: 0.25rem;
  padding-top: 0.75rem;
  border-top: 1px solid #eee;
}

.evt-dates {
  font-size: 0.82rem;
  font-weight: 600;
  color: var(--evt-rouge);
}

.evt-heures {
  font-size: 0.8rem;
  color: var(--evt-gris-mid);
}

/* ── Boutons ────────────────────────────────────────────────── */
.evt-actions {
  display: flex;
  gap: 0.6rem;
  flex-wrap: wrap;
  margin-top: 0.75rem;
}

.evt-btn {
  display: inline-flex;
  align-items: center;
  padding: 0.45rem 1.1rem;
  border-radius: 5px;
  font-size: 0.82rem;
  font-weight: 600;
  text-decoration: none;
  transition:
    background 0.18s,
    color 0.18s,
    transform 0.15s;
  line-height: 1.4;
}

.evt-btn--info {
  background: transparent;
  color: var(--evt-rouge);
  border: 2px solid var(--evt-rouge);
}

.evt-btn--info:hover {
  background: var(--evt-rouge);
  color: var(--evt-blanc);
  transform: translateY(-1px);
}

.evt-btn--inscription {
  background: var(--evt-rouge);
  color: var(--evt-blanc);
  border: 2px solid var(--evt-rouge);
}

.evt-btn--inscription:hover {
  background: var(--evt-rouge-dark);
  border-color: var(--evt-rouge-dark);
  transform: translateY(-1px);
}

/* ── Message vide ───────────────────────────────────────────── */
.evt-vide {
  text-align: center;
  color: var(--evt-gris-mid);
  font-style: italic;
  padding: 2rem 0;
}

.etn-event-item .etn-event-category span,
.etn-btn,
.attr-btn-primary,
.etn-attendee-form .etn-btn,
.etn-ticket-widget .etn-btn,
.schedule-list-1 .schedule-header,
.speaker-style4 .etn-speaker-content .etn-title a,
.etn-speaker-details3 .speaker-title-info,
.etn-event-slider .swiper-pagination-bullet,
.etn-speaker-slider .swiper-pagination-bullet,
.etn-event-slider .swiper-button-next,
.etn-event-slider .swiper-button-prev,
.etn-speaker-slider .swiper-button-next,
.etn-speaker-slider .swiper-button-prev,
.etn-single-speaker-item .etn-speaker-thumb .etn-speakers-social a,
.etn-event-header .etn-event-countdown-wrap .etn-count-item,
.schedule-tab-1 .etn-nav li a.etn-active,
.schedule-list-wrapper .schedule-listing.multi-schedule-list .schedule-slot-time,
.etn-speaker-item.style-3 .etn-speaker-content .etn-speakers-social a,
.event-tab-wrapper ul li a.etn-tab-a.etn-active,
.etn-btn,
button.etn-btn.etn-btn-primary,
.etn-schedule-style-3 ul li:before,
.etn-zoom-btn,
.cat-radio-btn-list [type='radio']:checked + label:after,
.cat-radio-btn-list [type='radio']:not(:checked) + label:after,
.etn-default-calendar-style .fc-button:hover,
.etn-default-calendar-style .fc-state-highlight,
.etn-calender-list a:hover,
.events_calendar_standard .cat-dropdown-list select,
.etn-event-banner-wrap,
.events_calendar_list
  .calendar-event-details
  .calendar-event-content
  .calendar-event-category-wrap
  .etn-event-category,
.etn-variable-ticket-widget .etn-add-to-cart-block,
.etn-recurring-event-wrapper #seeMore,
.more-event-tag,
.etn-settings-dashboard .button-primary {
  background-color: #e95d0f !important;
}

.etn-event-item .etn-event-location {
  color: #e95d0f !important;
}

.schedule-tab-wrapper .etn-nav li a:after,
.etn-event-list2 .etn-event-content,
.schedule-tab-1 .etn-nav li a.etn-active:after {
  border-color: #e95d0f transparent transparent transparent !important;
}

.etn-event-item .etn-event-footer .etn-atend-btn .etn-btn-border,
.etn-btn.etn-btn-border,
.attr-btn-primary.etn-btn-border,
.etn-attendee-form .etn-btn.etn-btn-border,
.etn-ticket-widget .etn-btn.etn-btn-border,
.event-tab-wrapper ul li a.etn-tab-a,
.event-tab-wrapper ul li a.etn-tab-a.etn-active,
.etn-schedule-style-3 ul li:after,
.etn-default-calendar-style .fc-ltr .fc-basic-view .fc-day-top.fc-today .fc-day-number,
.etn-default-calendar-style .fc-button:hover,
.etn-variable-ticket-widget .etn-variable-total-price,
.etn-settings-dashboard .button-primary.etn-btn-border {
  border-color: #e95d0f !important;
}

/* .etn-event-single-content-wrap .etn-event-meta .etn-event-category span, .etn-event-item .etn-event-footer .etn-atend-btn .etn-btn-border, .etn-btn.etn-btn-border, .attr-btn-primary.etn-btn-border, .etn-attendee-form .etn-btn.etn-btn-border, .etn-ticket-widget .etn-btn.etn-btn-border, .etn-settings-dashboard .button-primary.etn-btn-border, .etn-single-speaker-item .etn-speaker-content a:hover, .etn-event-style2 .etn-event-date, .etn-event-style3 .etn-event-content .etn-title a:hover, .event-tab-wrapper ul li a.etn-tab-a, .etn-speaker-item.style-3:hover .etn-speaker-content .etn-title a, .etn-variable-ticket-widget .ticket-header, .events_calendar_list .calendar-event-details:hover .calendar-event-title, .etn-event-item:hover .etn-title a, .etn-recurring-widget .etn-date-text, .etn-event-header ul li i {
    color: #FFFFFF !important;
}*/

.etn-speaker-item.style-3:hover .etn-speaker-content .etn-title a,
.events_calendar_list .calendar-event-details:hover .calendar-event-title,
.etn-event-item:hover .etn-title a {
  color: #e95d0f !important;
}

@keyframes ticker {
  0% {
    transform: translateX(100%);
  }
  100% {
    transform: translateX(-100%);
  }
}

/*!
Theme Name: Divi Child
Template: Divi
Theme URI: http://www.elegantthemes.com/gallery/divi/
Version: 4.27.4
Description: Smart. Flexible. Beautiful. Divi is the most powerful theme in our collection.
Author: Elegant Themes
Author URI: http://www.elegantthemes.com
License: GNU General Public License v2
License URI: http://www.gnu.org/licenses/gpl-2.0.html
*/

.cfdt-blog-grid__items {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
  gap: 24px;
}

.cfdt-blog-grid__item {
  border: 1px solid #eee;
  padding: 16px;
  background: #fff;
}

.cfdt-blog-grid__title {
  margin-bottom: 1rem;
  color: #e95d0f;
}

.cfdt-blog-grid__item-title a {
  color: #e95d0f;
  text-decoration: none;
}

.cfdt-blog-grid__read-more {
  display: inline-block;
  margin-top: 8px;
  color: #e95d0f;
  font-weight: 600;
}

.encadre {
  border: solid 1px #7e3bd0;
  padding: 1em;
}

/* ============================================================
   AGENDA CFDT — styles des shortcodes [agenda_accueil] et [agenda_complet]
   À coller dans : Divi → Options du thème → CSS personnalisé
   ============================================================ */

/* ── Variables ─────────────────────────────────────────────── */
:root {
  --evt-rouge: #e95d0f; /* orange CFDT */
  --evt-rouge-dark: #e95d0f;
  --evt-noir: #1a1a1a;
  --evt-gris: #f5f5f5;
  --evt-gris-mid: #888;
  --evt-blanc: #ffffff;
  --evt-radius: 10px;
  --evt-shadow: 0 4px 20px rgba(0, 0, 0, 0.08);
  --evt-gap: 1.5rem;
  --evt-font: inherit; /* hérite de Divi */
}

/* ── Grilles ────────────────────────────────────────────────── */
.evt-grille {
  display: grid;
  gap: var(--evt-gap);
  width: 100%;
}

.evt-grille--3 {
  grid-template-columns: repeat(3, 1fr);
}

.evt-grille--2 {
  grid-template-columns: repeat(2, 1fr);
}

@media (max-width: 980px) {
  .evt-grille--3 {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 640px) {
  .evt-grille--3,
  .evt-grille--2 {
    grid-template-columns: 1fr;
  }
}

/* ── Carte ──────────────────────────────────────────────────── */
.evt-carte {
  background: var(--evt-blanc);
  border-radius: var(--evt-radius);
  box-shadow: var(--evt-shadow);
  overflow: hidden;
  display: flex;
  flex-direction: column;
  transition:
    transform 0.2s ease,
    box-shadow 0.2s ease;
}

.evt-carte:hover {
  transform: translateY(-4px);
  box-shadow: 0 10px 32px rgba(0, 0, 0, 0.13);
}

/* ── Média (image + catégorie) ──────────────────────────────── */
.evt-media {
  position: relative;
  overflow: hidden;
  background: var(--evt-gris);
  aspect-ratio: 16 / 9;
}

.evt-media--no-img {
  aspect-ratio: unset;
  min-height: 48px;
  background: var(--evt-rouge);
}

.evt-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform 0.4s ease;
}

.evt-carte:hover .evt-img {
  transform: scale(1.04);
}

.evt-categorie {
  position: absolute;
  top: 12px;
  left: 12px;
  background: var(--evt-rouge);
  color: var(--evt-blanc);
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  padding: 4px 10px;
  border-radius: 4px;
  z-index: 2;
  line-height: 1.4;
}

.evt-media--no-img .evt-categorie {
  position: static;
  display: inline-block;
  margin: 10px 12px;
}

/* ── Corps de la carte ──────────────────────────────────────── */
.evt-body {
  padding: 1.25rem 1.4rem 1.4rem;
  display: flex;
  flex-direction: column;
  flex: 1;
  gap: 0.5rem;
}

/* ── Lieu ───────────────────────────────────────────────────── */
.evt-lieu {
  display: flex;
  align-items: center;
  gap: 5px;
  font-size: 0.82rem;
  color: var(--evt-gris-mid);
  margin: 0;
  font-weight: 500;
}

.evt-lieu svg {
  flex-shrink: 0;
  color: var(--evt-rouge);
}

/* ── Titre ──────────────────────────────────────────────────── */
.evt-titre {
  font-size: 1.05rem;
  font-weight: 700;
  line-height: 1.3;
  margin: 0;
  color: var(--evt-noir);
}

.evt-titre a {
  color: inherit;
  text-decoration: none;
}

.evt-titre a:hover {
  color: var(--evt-rouge);
}

/* ── Contenu / excerpt ──────────────────────────────────────── */
.evt-contenu {
  font-size: 0.9rem;
  color: #444;
  line-height: 1.6;
  flex: 1;
}

.evt-contenu p {
  margin: 0 0 0.5em;
}
.evt-contenu p:last-child {
  margin-bottom: 0;
}

/* ── Meta (dates & heures) ──────────────────────────────────── */
.evt-meta {
  display: flex;
  flex-direction: column;
  gap: 3px;
  margin-top: 0.25rem;
  padding-top: 0.75rem;
  border-top: 1px solid #eee;
}

.evt-dates {
  font-size: 0.82rem;
  font-weight: 600;
  color: var(--evt-rouge);
}

.evt-heures {
  font-size: 0.8rem;
  color: var(--evt-gris-mid);
}

/* ── Boutons ────────────────────────────────────────────────── */
.evt-actions {
  display: flex;
  gap: 0.6rem;
  flex-wrap: wrap;
  margin-top: 0.75rem;
}

.evt-btn {
  display: inline-flex;
  align-items: center;
  padding: 0.45rem 1.1rem;
  border-radius: 5px;
  font-size: 0.82rem;
  font-weight: 600;
  text-decoration: none;
  transition:
    background 0.18s,
    color 0.18s,
    transform 0.15s;
  line-height: 1.4;
}

.evt-btn--info {
  background: transparent;
  color: var(--evt-rouge);
  border: 2px solid var(--evt-rouge);
}

.evt-btn--info:hover {
  background: var(--evt-rouge);
  color: var(--evt-blanc);
  transform: translateY(-1px);
}

.evt-btn--inscription {
  background: var(--evt-rouge);
  color: var(--evt-blanc);
  border: 2px solid var(--evt-rouge);
}

.evt-btn--inscription:hover {
  background: var(--evt-rouge-dark);
  border-color: var(--evt-rouge-dark);
  transform: translateY(-1px);
}

/* ── Message vide ───────────────────────────────────────────── */
.evt-vide {
  text-align: center;
  color: var(--evt-gris-mid);
  font-style: italic;
  padding: 2rem 0;
}

.etn-event-item .etn-event-category span,
.etn-btn,
.attr-btn-primary,
.etn-attendee-form .etn-btn,
.etn-ticket-widget .etn-btn,
.schedule-list-1 .schedule-header,
.speaker-style4 .etn-speaker-content .etn-title a,
.etn-speaker-details3 .speaker-title-info,
.etn-event-slider .swiper-pagination-bullet,
.etn-speaker-slider .swiper-pagination-bullet,
.etn-event-slider .swiper-button-next,
.etn-event-slider .swiper-button-prev,
.etn-speaker-slider .swiper-button-next,
.etn-speaker-slider .swiper-button-prev,
.etn-single-speaker-item .etn-speaker-thumb .etn-speakers-social a,
.etn-event-header .etn-event-countdown-wrap .etn-count-item,
.schedule-tab-1 .etn-nav li a.etn-active,
.schedule-list-wrapper .schedule-listing.multi-schedule-list .schedule-slot-time,
.etn-speaker-item.style-3 .etn-speaker-content .etn-speakers-social a,
.event-tab-wrapper ul li a.etn-tab-a.etn-active,
.etn-btn,
button.etn-btn.etn-btn-primary,
.etn-schedule-style-3 ul li:before,
.etn-zoom-btn,
.cat-radio-btn-list [type='radio']:checked + label:after,
.cat-radio-btn-list [type='radio']:not(:checked) + label:after,
.etn-default-calendar-style .fc-button:hover,
.etn-default-calendar-style .fc-state-highlight,
.etn-calender-list a:hover,
.events_calendar_standard .cat-dropdown-list select,
.etn-event-banner-wrap,
.events_calendar_list
  .calendar-event-details
  .calendar-event-content
  .calendar-event-category-wrap
  .etn-event-category,
.etn-variable-ticket-widget .etn-add-to-cart-block,
.etn-recurring-event-wrapper #seeMore,
.more-event-tag,
.etn-settings-dashboard .button-primary {
  background-color: #e95d0f !important;
}

.etn-event-item .etn-event-location {
  color: #e95d0f !important;
}

.schedule-tab-wrapper .etn-nav li a:after,
.etn-event-list2 .etn-event-content,
.schedule-tab-1 .etn-nav li a.etn-active:after {
  border-color: #e95d0f transparent transparent transparent !important;
}

.etn-event-item .etn-event-footer .etn-atend-btn .etn-btn-border,
.etn-btn.etn-btn-border,
.attr-btn-primary.etn-btn-border,
.etn-attendee-form .etn-btn.etn-btn-border,
.etn-ticket-widget .etn-btn.etn-btn-border,
.event-tab-wrapper ul li a.etn-tab-a,
.event-tab-wrapper ul li a.etn-tab-a.etn-active,
.etn-schedule-style-3 ul li:after,
.etn-default-calendar-style .fc-ltr .fc-basic-view .fc-day-top.fc-today .fc-day-number,
.etn-default-calendar-style .fc-button:hover,
.etn-variable-ticket-widget .etn-variable-total-price,
.etn-settings-dashboard .button-primary.etn-btn-border {
  border-color: #e95d0f !important;
}

/* .etn-event-single-content-wrap .etn-event-meta .etn-event-category span, .etn-event-item .etn-event-footer .etn-atend-btn .etn-btn-border, .etn-btn.etn-btn-border, .attr-btn-primary.etn-btn-border, .etn-attendee-form .etn-btn.etn-btn-border, .etn-ticket-widget .etn-btn.etn-btn-border, .etn-settings-dashboard .button-primary.etn-btn-border, .etn-single-speaker-item .etn-speaker-content a:hover, .etn-event-style2 .etn-event-date, .etn-event-style3 .etn-event-content .etn-title a:hover, .event-tab-wrapper ul li a.etn-tab-a, .etn-speaker-item.style-3:hover .etn-speaker-content .etn-title a, .etn-variable-ticket-widget .ticket-header, .events_calendar_list .calendar-event-details:hover .calendar-event-title, .etn-event-item:hover .etn-title a, .etn-recurring-widget .etn-date-text, .etn-event-header ul li i {
    color: #FFFFFF !important;
}*/

.etn-speaker-item.style-3:hover .etn-speaker-content .etn-title a,
.events_calendar_list .calendar-event-details:hover .calendar-event-title,
.etn-event-item:hover .etn-title a {
  color: #e95d0f !important;
}

@keyframes ticker {
  0% {
    transform: translateX(100%);
  }
  100% {
    transform: translateX(-100%);
  }
}

.menu-sections a {
   color: #fff;*/
}
.mon-menu-custom a {
  position: relative;
  padding-bottom: 4px;
}

.mon-menu-custom a:hover {
  color: #e95d0f;
}

.mon-menu-custom a::after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 0;
  width: 0;
  height: 4px;
  background-color: #e95d0f;
  transition: width 0.3s ease;
}

.mon-menu-custom a:hover::after {
  width: 100%;
}