.elementor-kit-12{--e-global-color-primary:#FFFFFF;--e-global-color-secondary:#E30F1B;--e-global-color-text:#000000;--e-global-color-accent:#93282C;--e-global-typography-primary-font-family:"Roboto";--e-global-typography-primary-font-weight:600;--e-global-typography-secondary-font-family:"Roboto Slab";--e-global-typography-secondary-font-weight:400;--e-global-typography-text-font-family:"Roboto";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Roboto";--e-global-typography-accent-font-weight:500;}.elementor-kit-12 e-page-transition{background-color:#FFBC7D;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1140px;}.e-con{--container-max-width:1140px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}@media(max-width:1024px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}
/* Start custom CSS *//* =========================================================
   IRW-CGSP — CSS GLOBALE (charte graphique)
   À coller dans : Elementor → Site Settings (Réglages du site)
   → Custom CSS  (nécessite Elementor Pro)

   Cette CSS ne construit AUCUNE structure : elle stylise les
   widgets natifs Elementor que tu places toi-même (Nav Menu,
   Site Logo, Button, Icon Box, Posts, Container...).

   Pour appliquer une classe à un widget/container :
   sélectionne-le → onglet "Advanced" → "CSS Classes" → tape
   le nom de la classe (sans le point), ex: irw-section-dark
   ========================================================= */

/* ---------- 0. POLICES — chargement ---------- */
@import url('https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:ital,wght@0,400;0,500;0,600;0,700;0,800;1,400&display=swap');

@font-face{
  font-family: 'Neutral Face';
  src: url('/wp-content/uploads/fonts/NeutralFaceRegular.woff2') format('woff2'),
       url('/wp-content/uploads/fonts/NeutralFaceRegular.woff') format('woff');
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}
@font-face{
  font-family: 'Neutral Face';
  src: url('/wp-content/uploads/fonts/NeutralFaceBold.woff2') format('woff2'),
       url('/wp-content/uploads/fonts/NeutralFaceBold.woff') format('woff');
  font-weight: bold;
  font-style: normal;
  font-display: swap;
}

/* ---------- 1. VARIABLES DE MARQUE ---------- */
:root{
  --irw-red:        #E30F1B;
  --irw-red-dark:   #B80D16;
  --irw-black:      #2D2926;
  --irw-bordeaux:   #93282C;
  --irw-gray-900:   #2A2A2A;
  --irw-gray-600:   #686867;
  --irw-gray-400:   #999999;
  --irw-gray-200:   #E5E5E5;
  --irw-bg-light:   #F5F5F5;
  --irw-white:      #FFFFFF;
  --irw-off-white:  #FAFAF8;

  --irw-footer-black: #1A1A1A;
  --irw-font-title:    'Neutral Face', 'Arial', sans-serif;
  --irw-font-subtitle: 'Plus Jakarta Sans', 'Arial', sans-serif;
  --irw-font-body:     'Plus Jakarta Sans', 'Arial', sans-serif;
  --irw-radius:     4px;
}

/* ---------- 2. BASE TYPOGRAPHIQUE ---------- */
body{
  font-family: var(--irw-font-body) !important;
  color: var(--irw-black) !important;
}
h1,
h1.elementor-heading-title{
  font-family: var(--irw-font-title) !important;
  font-weight: 800 !important;
  color: var(--irw-black) !important;
}
h2, h3, h4, h5, h6,
.elementor-heading-title{
  font-family: var(--irw-font-subtitle) !important;
  font-weight: 700 !important;
  color: var(--irw-black) !important;
}
a{ color: var(--irw-red) !important; }
a:hover{ color: var(--irw-red-dark) !important; }

.irw-title-underline{
  position: relative;
  padding-bottom: 20px;
}
.irw-title-underline::after{
  content:"";
  position:absolute; left:0; bottom:0;
  width:70px; height:5px;
  background: var(--irw-red) !important;
}

/* ---------- 3. BOUTONS (widget Button natif) ---------- */
.irw-btn-outline-white .elementor-button{
  background: transparent !important;
  border: 1px solid var(--irw-white) !important;
  color: var(--irw-white) !important;
}
.irw-btn-outline-white .elementor-button:hover{
  background: rgba(255,255,255,.1) !important;
}
.irw-btn-outline-red .elementor-button{
  background: transparent !important;
  border: 1px solid var(--irw-red) !important;
  color: var(--irw-red) !important;
}
.irw-btn-outline-red .elementor-button:hover{
  background: var(--irw-red) !important;
  color: var(--irw-white) !important;
}

/* ---------- 4. HEADER (nav, réseaux sociaux, recherche) ---------- */
.irw-header-container{
  background: var(--irw-off-white) !important;
  border-bottom: 2px solid var(--irw-black) !important;
  padding-bottom: 12px !important; /* décale la ligne noire un peu plus bas */
}

.irw-nav-menu.elementor-nav-menu--main .elementor-item{
  font-weight: 500 !important;
  font-size: 17px !important;
  padding: 0 15px !important;
  color: var(--irw-black) !important;
  transition: color .2s;
}
.irw-nav-menu ul{ gap: 4px; }
.irw-nav-menu a{
  font-weight: 500 !important;
  font-size: 17px !important;
  padding: 0 15px !important;
  color: var(--irw-black) !important;
  text-decoration: none !important;
  border-bottom: none !important;
  transition: color .2s;
}
.irw-nav-menu a:hover{ color: var(--irw-red) !important; }
.irw-nav-menu li.current-menu-item a,
.irw-nav-menu li.current_page_item a,
.irw-nav-menu li.current-menu-ancestor a{
  border-bottom: none !important;
  text-decoration: none !important;
}
.irw-nav-menu li ul,
.irw-nav-menu li ul li{
  background: var(--irw-white) !important;
}
.irw-nav-menu li ul a{
  color: var(--irw-black) !important;
  background: var(--irw-white) !important;
}
.irw-nav-menu li ul a:hover{
  color: var(--irw-white) !important;
  background: var(--irw-red) !important;
}
.irw-nav-menu.elementor-nav-menu--main .elementor-item:hover,
.irw-nav-menu.elementor-nav-menu--main .elementor-item.elementor-item-active{
  color: var(--irw-red) !important;
}
.irw-nav-menu.elementor-nav-menu--main .elementor-item.elementor-item-active{
  border-bottom: none !important;
}
.irw-nav-cta .elementor-button,
.irw-nav-cta.elementor-button{
  background: var(--irw-red) !important;
  color: var(--irw-white) !important;
  border-radius: var(--irw-radius) !important;
  padding: 12px 22px !important;
  font-weight: 700 !important;
}
.irw-nav-cta .elementor-button:hover{ background: var(--irw-red-dark) !important; }

/* Sous-menu déroulant décollé + police différenciée */
.irw-nav-menu.irw-nav-menu li ul{
  margin-top: 10px !important;
  padding: 8px 0 !important;
  min-width: 220px !important;
  border-radius: var(--irw-radius) !important;
  box-shadow: 0 6px 16px rgba(0,0,0,.15) !important;
}
.irw-nav-menu.irw-nav-menu li ul li{
  padding: 0 !important;
  margin: 0 !important;
}
.irw-nav-menu.irw-nav-menu li ul a{
  display: block !important;
  font-size: 14px !important;
  font-weight: 400 !important;
  padding: 10px 20px !important;
  line-height: 1.4 !important;
}

/* Rangée réseaux sociaux (fond harmonisé, sans bordure) */
.irw-header-social-row{
  background: var(--irw-off-white) !important;
  border: none !important;
  border-top: none !important;
  border-bottom: none !important;
  box-shadow: none !important;
}
/* Icônes sociales sans cercle, couleur forcée */
.irw-header-social-row.irw-header-social-row .elementor-social-icon,
.irw-header-social-row.irw-header-social-row .elementor-social-icon i,
.irw-header-social-row.irw-header-social-row .elementor-social-icon svg{
  background: transparent !important;
  background-color: transparent !important;
  border: none !important;
  box-shadow: none !important;
  color: var(--irw-black) !important;
  fill: var(--irw-black) !important;
}
.irw-header-social-row.irw-header-social-row .elementor-social-icon:hover,
.irw-header-social-row.irw-header-social-row .elementor-social-icon:hover i,
.irw-header-social-row.irw-header-social-row .elementor-social-icon:hover svg{
  color: var(--irw-red) !important;
  fill: var(--irw-red) !important;
}
/* Wrap forcé entre tablette et desktop large */
@media (min-width: 1025px) and (max-width: 1550px){
  .irw-header-main-row.irw-header-main-row.irw-header-main-row.irw-header-main-row{
    --flex-wrap: wrap !important;
    flex-wrap: wrap !important;
  }
  .irw-header-social-row.irw-header-social-row.irw-header-social-row.irw-header-social-row{
    --flex-wrap: wrap !important;
    flex-wrap: wrap !important;
  }
}

/* Recherche header — dropdown ancré */
.irw-search-dropdown{ position: relative !important; }
.irw-search-dropdown .elementor-widget-search-form,
.irw-search-dropdown .e-search-form{
  position: absolute !important;
  top: 100%;
  right: 0;
  margin-top: 10px;
  width: 220px;
  display: none;
  background: var(--irw-gray-400);
  box-shadow: 0 4px 12px rgba(0,0,0,.2);
  border-radius: var(--irw-radius);
  padding: 10px;
  z-index: 999;
}
.irw-search-dropdown.irw-search-open .elementor-widget-search-form,
.irw-search-dropdown.irw-search-open .e-search-form{ display: block; }
.irw-search-dropdown input[type="search"],
.irw-search-dropdown input[type="text"]{
  font-size: 13px !important;
  padding: 6px 8px !important;
}
.irw-search-dropdown button,
.irw-search-dropdown .elementor-search-form__submit{
  padding: 6px 14px !important;
  font-size: 13px !important;
  margin-top: 8px !important;
}
.irw-search-dropdown svg,
.irw-search-dropdown .elementor-icon i,
.irw-search-dropdown .e-icon svg{ transition: color .2s; }
.irw-search-dropdown:hover svg,
.irw-search-dropdown:hover .elementor-icon i,
.irw-search-dropdown:hover .e-icon svg{
  color: var(--irw-red) !important;
  fill: var(--irw-red) !important;
}

/* ---------- 5. SECTIONS / CONTAINERS RÉUTILISABLES ---------- */
.irw-section-light{ background: var(--irw-white) !important; }
.irw-section-gray{ background: var(--irw-bg-light) !important; }
.irw-section-hero-dark,
.irw-section-hero-dark h1,
.irw-section-hero-dark h2,
.irw-section-hero-dark p{ color: var(--irw-white) !important; }
.irw-section-hero-dark p{ color: #ddd !important; }
.irw-breadcrumb, .irw-breadcrumb a{
  font-size: 13px !important;
  color: var(--irw-gray-400) !important;
}
.irw-breadcrumb a:hover{ color: var(--irw-red) !important; }

/* ---------- 6. FOOTER ---------- */
.irw-footer-dark{ background: var(--irw-footer-black) !important; }
footer.elementor-location-footer{
  background: var(--irw-footer-black) !important;
  border-bottom: 3px solid var(--irw-red) !important;
  padding-bottom: 32px !important;
}
footer.elementor-location-footer,
footer.elementor-location-footer .e-con,
footer.elementor-location-footer .e-con.e-parent,
footer.elementor-location-footer > .elementor-container{
  min-height: 0 !important;
  height: auto !important;
  align-items: flex-start !important;
}
footer.elementor-location-footer *{ min-height: 0 !important; }
footer.elementor-location-footer > *{ height: auto !important; }
footer.elementor-location-footer .elementor-element,
footer.elementor-location-footer .e-con,
footer.elementor-location-footer .elementor-container,
footer.elementor-location-footer .elementor-row,
footer.elementor-location-footer .elementor-column,
footer.elementor-location-footer .elementor-widget-wrap{
  background-color: transparent !important;
}
.irw-footer-col-center{ text-align: center; }
.irw-footer-col-center .elementor-heading-title{ text-align: center; }
.irw-footer-col-center .irw-nav-menu,
.irw-footer-col-center .elementor-nav-menu{
  display: flex;
  flex-direction: column;
  align-items: center;
}
.irw-footer-social-col{ display: flex; justify-content: flex-end; }
.irw-footer-dark,
.irw-footer-dark p,
.irw-footer-dark li,
.irw-footer-dark .elementor-heading-title{ color: #cfcfcf; }
.irw-footer-dark h4,
.irw-footer-dark .elementor-heading-title{
  color: var(--irw-white) !important;
  font-size: 15px;
  font-weight: 700;
  margin-bottom: 6px !important;
}
.irw-footer-dark a{ color: #a8a8a8; text-decoration: none; }
.irw-footer-dark a:hover{ color: var(--irw-red); }
.irw-footer-dark .irw-nav-menu .elementor-item{ color: #a8a8a8; font-size: 14px; }
.irw-footer-dark .irw-nav-menu .elementor-item:hover{ color: var(--irw-red); }
.irw-footer-social .elementor-social-icon{
  background: var(--irw-gray-900) !important;
  color: var(--irw-white) !important;
}
.irw-footer-social .elementor-social-icon:hover{ background: var(--irw-red) !important; }
.irw-footer-dark,
.elementor-location-footer{
  min-height: 0 !important;
  height: auto !important;
  flex-grow: 0 !important;
}
.elementor-location-footer > .elementor-container,
.elementor-location-footer .e-con.e-parent{
  min-height: 0 !important;
  height: auto !important;
}
.irw-footer-dark .elementor-icon-list-items{ gap: 8px; }
.irw-footer-dark .elementor-icon-list-text,
.irw-footer-dark .elementor-icon-list-item a{
  color: #a8a8a8 !important;
  font-size: 14px !important;
}
.irw-footer-dark .elementor-icon-list-item a:hover .elementor-icon-list-text{
  color: var(--irw-red) !important;
}
.irw-footer-dark .elementor-icon-list-item a:hover .elementor-icon-list-text{
  color: var(--irw-red) !important;
}
.irw-footer-dark .irw-nav-menu,
.irw-footer-dark .elementor-nav-menu,
.irw-footer-dark .elementor-icon-list-items{
  margin-top: 0 !important;
  padding-top: 0 !important;
}
.irw-footer-dark .irw-nav-menu li,
.irw-footer-dark .elementor-nav-menu li,
.irw-footer-dark .elementor-icon-list-item{
  margin-top: 0 !important;
  margin-bottom: 4px !important;
}
.irw-footer-dark .elementor-icon-list-item a,
.irw-footer-dark .irw-nav-menu .elementor-item{
  font-weight: 400 !important;
  font-size: 13px !important;
  color: var(--irw-gray-400) !important;
}
html{ height: 100%; } /* footer plus sticky */

/* ---------- 7. ICON BOX ---------- */
.irw-sector-box .elementor-icon{
  color: var(--irw-red) !important;
  background: transparent !important;
}
.irw-sector-box .elementor-icon-box-title,
.irw-sector-box .elementor-icon-box-title a{
  font-size: 16px !important;
  font-weight: 700 !important;
  color: var(--irw-black) !important;
}
.irw-sector-box .elementor-icon-box-description,
.irw-sector-box .elementor-icon-box-description p{ color: var(--irw-gray-600) !important; }
.irw-sector-box .elementor-icon-box-title{
  min-height: 48px;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
}
.irw-sector-box .elementor-icon-box-description a,
.irw-sector-box a.irw-link-arrow{
  color: var(--irw-red) !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  text-decoration: none !important;
}
.irw-stat-box{
  background: var(--irw-bg-light) !important;
  border-radius: var(--irw-radius) !important;
  text-align: center !important;
  padding: 24px 12px;
}
.irw-stat-box .elementor-icon-box-title{
  font-size: 22px !important;
  font-weight: 800 !important;
  color: var(--irw-black) !important;
}

/* ---------- 8. ACTUALITÉS — widget Posts natif ---------- */
.irw-news-posts .elementor-post__card{
  box-shadow: none !important;
  border-radius: var(--irw-radius) !important;
}
.irw-news-posts .elementor-post__thumbnail img{ border-radius: var(--irw-radius) !important; }
.irw-news-posts .elementor-post__badge{
  background: transparent !important;
  color: var(--irw-red) !important;
  font-size: 11px !important;
  font-weight: 800 !important;
  letter-spacing: .5px;
  text-transform: uppercase !important;
  padding: 0 !important;
}
.irw-news-posts .elementor-post__title{
  font-size: 16px !important;
  font-weight: 700 !important;
}
.irw-news-posts .elementor-post__title a{ color: var(--irw-black) !important; }
.irw-news-posts .elementor-post__meta-data{
  font-size: 12px !important;
  color: var(--irw-gray-400) !important;
}
.irw-news-posts .elementor-post__card{ padding: 16px; }
.irw-news-posts .elementor-post__read-more{
  color: var(--irw-red) !important;
  font-weight: 700 !important;
  font-size: 13px !important;
  text-transform: uppercase !important;
}
.irw-link-red{
  color: var(--irw-red) !important;
  font-weight: 700 !important;
  font-size: 14px !important;
  text-decoration: none !important;
}
.irw-link-red:hover{ color: var(--irw-red-dark) !important; }

/* Cartes de hauteur égale, texte du titre JAMAIS coupé : plutôt que
   de tronquer avec "...", on étire toutes les cartes de la même
   rangée à la hauteur de la plus grande, et on pousse "Lire plus"
   en bas de chaque carte pour garder l'alignement visuel. */
.irw-news-posts .elementor-posts-container{
  align-items: stretch !important;
}
.irw-news-posts .elementor-post{
  display: flex !important;
  flex-direction: column !important;
  height: 100% !important;
}
.irw-news-posts .elementor-post__card{
  display: flex !important;
  flex-direction: column !important;
  height: 100% !important;
}
.irw-news-posts .elementor-post__text{
  display: flex !important;
  flex-direction: column !important;
  flex-grow: 1 !important;
}
.irw-news-posts .elementor-post__title{
  min-height: unset !important;
  display: block !important;
  -webkit-line-clamp: unset !important;
  overflow: visible !important;
}
.irw-news-posts .elementor-post__read-more,
.irw-news-posts .elementor-post__read-more-wrapper{
  margin-top: auto !important;
}

/* Image entière visible, pas de recadrage brutal — tous les widgets
   Posts d'Elementor (Actualités, Médias, Recherche...) */
.elementor-posts-container.elementor-has-item-ratio .elementor-post__thumbnail.elementor-fit-height img,
.elementor-post__thumbnail img{
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
  background: var(--irw-bg-light) !important;
}

/* ---------- 9. FORMULAIRE DE CONTACT ---------- */
.irw-contact-form .elementor-field-textual{
  border: 1px solid var(--irw-gray-200) !important;
  border-radius: var(--irw-radius) !important;
  background: var(--irw-white) !important;
}
.irw-contact-form .elementor-field-textual:focus{ border-color: var(--irw-red) !important; }
.irw-contact-form .elementor-button{
  background: var(--irw-red) !important;
  color: var(--irw-white) !important;
  border-radius: var(--irw-radius) !important;
  font-weight: 700 !important;
}
.irw-contact-form .elementor-button:hover{ background: var(--irw-red-dark) !important; }

/* ---------- 10. RESPONSIVE — burger natif Elementor Pro, rien à ajouter ---------- */

/* ---------- 11. BARRE D'ADMIN WORDPRESS ---------- */
#wpadminbar, #wpadminbar a, #wpadminbar *{ color: #eee !important; }
#wpadminbar a:hover{ color: #00b9eb !important; }

/* ---------- 12. PAGE TRIBUNE/AZÖD — image + CTA téléchargement ---------- */
.irw-tribune-download{
  display: block;
  border-radius: var(--irw-radius) !important;
  overflow: hidden;
  transition: opacity .2s;
}
.irw-tribune-download:hover{ opacity: .85; }
.irw-tribune-download img{ width: 100%; height: auto; display: block; }
.irw-tribune-cta{
  text-align: center;
  color: var(--irw-red) !important;
  font-weight: 700 !important;
  font-size: 16px !important;
  text-transform: uppercase !important;
  margin-top: 12px !important;
  margin-bottom: 2rem !important;
}

/* ---------- 13. PAGE CONTACT — Icon Box ---------- */
.irw-contact-item .elementor-icon-box-title{
  font-size: 16px !important;
  font-weight: 700 !important;
  color: var(--irw-gray-600) !important;
  text-transform: uppercase !important;
  margin-bottom: 4px !important;
}
.irw-contact-item .elementor-icon-box-description{
  font-size: 23px !important;
  color: var(--irw-black) !important;
}
.irw-contact-item .elementor-icon{
  color: var(--irw-red) !important;
  font-size: 32px !important;
}

/* ---------- 14. BOUTON "VOIR PLUS" — override du rouge forcé ---------- */
.irw-media-posts a{ color: var(--irw-white) !important; }

/* ---------- 15. TEMPLATE ARTICLE GÉNÉRAL ---------- */
.irw-article-content{
  max-width: 800px;
  margin-top: 40px !important;
}
.irw-article-content p,
.irw-article-content div[dir="auto"]{
  font-size: 18px !important;
  line-height: 1.7 !important;
  color: var(--irw-black) !important;
  margin-bottom: 0.8em !important;
}
.irw-article-content p:empty,
.irw-article-content div[dir="auto"]:empty{
  display: none;
  margin: 0 !important;
}
.elementor-widget-theme-post-content .elementor-widget-container p,
.elementor-widget-theme-post-content .elementor-widget-container div[dir="auto"]{
  font-size: 18px !important;
  line-height: 1.7 !important;
}
.irw-article-content iframe,
.irw-article-content .wp-block-embed__wrapper iframe{
  width: 100% !important;
  height: auto !important;
  aspect-ratio: 16 / 9 !important;
  margin-top: 0.8em !important;
}
.irw-article-content .wp-block-embed,
.irw-article-content .wp-embed-responsive{ max-width: 100%; }

/* Neutralise les couleurs collées en inline depuis Word/Google Docs */
.irw-article-content [style*="color"]{ color: inherit !important; }

/* Tableaux natifs éventuels dans le contenu d'article */
.irw-article-content table,
.irw-article-content .wp-block-table table{
  width: 100% !important;
  border-collapse: collapse !important;
  margin: 24px 0 !important;
}
.irw-article-content table th,
.irw-article-content .wp-block-table table th{
  text-align: left !important;
  font-size: 14px !important;
  font-weight: 800 !important;
  text-transform: uppercase !important;
  letter-spacing: .5px;
  color: var(--irw-black) !important;
  border-bottom: 2px solid var(--irw-red) !important;
  padding: 10px 16px 10px 0 !important;
}
.irw-article-content table td,
.irw-article-content .wp-block-table table td{
  font-size: 16px !important;
  color: var(--irw-black) !important;
  border-bottom: 1px solid var(--irw-gray-200) !important;
  padding: 10px 16px 10px 0 !important;
  vertical-align: top;
}
.irw-article-content table tr:hover td,
.irw-article-content .wp-block-table table tr:hover td{
  background: var(--irw-bg-light) !important;
}
.irw-article-content table a,
.irw-article-content .wp-block-table table a{
  color: var(--irw-red) !important;
  text-decoration: none !important;
}
.irw-article-content table a:hover,
.irw-article-content .wp-block-table table a:hover{
  text-decoration: underline !important;
}
.irw-org-row{
  padding: 10px 0 !important;
  border-bottom: 1px solid var(--irw-gray-200) !important;
  font-size: 16px !important;
  color: var(--irw-black) !important;
}
.irw-org-row:hover{ background: var(--irw-bg-light) !important; }
.irw-article-content details,
.irw-article-content .wp-block-details{
  border: 1px solid var(--irw-gray-200) !important;
  border-radius: var(--irw-radius) !important;
  margin-bottom: 12px !important;
  padding: 4px 16px !important;
}
.irw-article-content summary{
  font-weight: 700 !important;
  font-size: 16px !important;
  color: var(--irw-black) !important;
  cursor: pointer;
  padding: 10px 0 !important;
}
.irw-article-content summary:hover{ color: var(--irw-red) !important; }

/* ---------- 16. PAGE ARCHIVES — Accordion par année ---------- */
.irw-archive-accordion .e-n-accordion-item{
  border: 1px solid var(--irw-gray-200) !important;
  border-radius: var(--irw-radius) !important;
  margin-bottom: 8px;
}
.irw-archive-accordion.irw-archive-accordion .e-n-accordion-item-title,
.irw-archive-accordion.irw-archive-accordion [class*="accordion-item-title"],
.irw-archive-accordion.irw-archive-accordion [class*="accordion-title"],
.irw-archive-accordion .e-n-accordion-item-title *,
.irw-archive-accordion [class*="accordion-item-title"] *,
.irw-archive-accordion [class*="accordion-title"] *{
  font-weight: 700 !important;
  font-size: 24px !important;
  color: var(--irw-black) !important;
}
.irw-archive-accordion .e-n-accordion-item-title:hover,
.irw-archive-accordion [class*="accordion-item-title"]:hover,
.irw-archive-accordion [class*="accordion-title"]:hover{
  color: var(--irw-red) !important;
}

/* ---------- 17. ACCUEIL — cartes sidebar (Belga / Tribune / Vidéo) ---------- */
.irw-side-card{
  background: var(--irw-white) !important;
  border: 1px solid var(--irw-gray-200) !important;
  border-radius: var(--irw-radius) !important;
  padding: 16px !important;
  margin-bottom: 20px;
  transition: box-shadow .2s;
}
.irw-side-card:hover{ box-shadow: 0 4px 12px rgba(0,0,0,.08); }
.irw-side-card .elementor-heading-title{
  font-size: 16px !important;
  margin-bottom: 12px !important;
  text-align: left !important;
}
.irw-side-card img{
  width: 100%;
  border-radius: var(--irw-radius) !important;
  display: block;
  transition: opacity .2s;
}
.irw-side-card img:hover{ opacity: .85; }
.irw-side-card p{
  font-size: 12px !important;
  color: var(--irw-gray-400) !important;
  margin-top: 8px !important;
  margin-bottom: 0 !important;
  text-align: center;
}
/* Centrer le flipbook / la vidéo dans la carte, sans centrer le titre */
.irw-side-card .df-block-shadow,
.irw-side-card .dflip-container,
.irw-side-card [id^="df_book"],
.irw-side-card .elementor-widget-video,
.irw-side-card .elementor-widget-video iframe{
  margin-left: auto !important;
  margin-right: auto !important;
  display: block !important;
}

/* ---------- 18. AÉRATION GÉNÉRALE ---------- */
header.elementor-location-header + *{
  margin-top: 32px !important;
}
.irw-section-light,
.irw-section-gray{
  padding-top: 48px !important;
  padding-bottom: 48px !important;
}
h1.elementor-heading-title{
  margin-bottom: 24px !important;
}

/* ---------- 19. QUI SOMMES-NOUS — listes de contacts en Grilles ---------- */
.irw-data-table.irw-data-table > *:has(.elementor-widget-text-editor),
.irw-data-table.irw-data-table > *.elementor-widget-text-editor,
.irw-data-table.irw-data-table > * > *:has(.elementor-widget-text-editor),
.irw-data-table.irw-data-table > * > *.elementor-widget-text-editor{
  border-bottom: 2px solid var(--irw-gray-400) !important;
  padding: 14px 20px !important;
}
.irw-data-table.irw-data-table > *:has(.elementor-widget-text-editor):hover,
.irw-data-table.irw-data-table > *.elementor-widget-text-editor:hover,
.irw-data-table.irw-data-table > * > *:has(.elementor-widget-text-editor):hover,
.irw-data-table.irw-data-table > * > *.elementor-widget-text-editor:hover{
  background: var(--irw-bg-light) !important;
}
.irw-data-table .elementor-widget-text-editor,
.irw-data-table .elementor-widget-text-editor p{
  font-size: 15px !important;
  color: var(--irw-black) !important;
  line-height: 1.5 !important;
}
.irw-data-table .elementor-widget-text-editor{
  display: block !important;
  width: 100% !important;
}
.irw-data-table .elementor-widget-text-editor a{
  color: var(--irw-red) !important;
  text-decoration: none !important;
}
.irw-data-table .elementor-widget-text-editor a:hover{
  color: var(--irw-red-dark) !important;
  text-decoration: underline !important;
}
.irw-data-table > * > .elementor-widget-text-editor:not(:last-child){
  border-right: 2px solid var(--irw-gray-400) !important;
}
.irw-data-table > .elementor-widget-text-editor:nth-child(odd){
  border-right: 2px solid var(--irw-gray-400) !important;
}
@media (max-width: 767px){
  .irw-data-table.irw-data-table > *{
    flex-direction: column !important;
  }
}/* End custom CSS */