@charset "UTF-8";

/* Hack Discover / Googlebot — applique seulement pour robots */
@media (max-width: 0px) { 
.page2_article .photo.top img.responsive {
      display: block !important;
      visibility: visible !important;
      opacity: 1 !important;
      height: auto !important;
   }
}


/* Hack Rubriques - Empêche le “saut” au swap en alignant les métriques sur la source */
.rubrique-titre,
.rubrique-fille-titre{
  display:block;
  margin:0;                 /* supprime les marges UA de h1/h2 */
  font: inherit;            /* hérite taille, graisse, famille */
  line-height: inherit;
  letter-spacing: inherit;
  text-transform: inherit;
}



/* Logo SVG max 75px UNIQUEMENT dans le module 73128733 */
#mod_73128733 .titre a.logo-svg {
  display: inline-block;
  height: 60px;          /* hauteur max */
  line-height: 0;
  vertical-align: middle;
  overflow: hidden;
  text-decoration: none;
  padding: 0;
}
#mod_73128733 .titre a.logo-svg img {
  height: 100%;
  width: auto;
  display: block;
}



.mod_73128823 .titre.first a::before {
content: "\e627";
  font-family: 'gbicongeneric' !important;
  color: #3c61d8;
  margin-right: 5px;
  font-size:1.3em;
  font-weight:bold;
}


/* ✅ Correction : ciblage image uniquement */
.adsense-slot img {
  max-width: 100% !important;
  max-height: 100% !important;
  object-fit: contain !important;
}

@font-face{
  font-family:"OpenSansFallback";
  src: local("Arial");
  size-adjust:102%;
  ascent-override: 90%;
  descent-override:22%;
  line-gap-override:0%;
  /* pas de display ici : c’est un fallback métrique */
}

body{
  font-family: "Open Sans", "OpenSansFallback", system-ui, -apple-system, "Segoe UI", Arial, sans-serif;
}


#main { padding-bottom: var(--anchor-reserve); }

/* ===== Modules Rub Une Footer (version factorisée) ===== */
:root {
  /* Ajustables si besoin (facultatif) */
  --sa-gap: 20px;
  --sa-title-max: 26ch;
  --sa-m-title: 250px;
  --sa-m-img: 300px; /* NB: max-width 250px plus bas limite visuellement à 250 */
}

/* Regroupe tous les modules ciblés ici */
:is(#mod_72901402, #mod_72948312, #mod_72948762, #mod_72948825, #mod_72948830) {
  margin-top: 25px;
  margin-bottom: 25px;
}

/* Masquer titres/séparateurs CMS */
:is(#mod_72901402, #mod_72948312, #mod_72948762, #mod_72948825, #mod_72948830)
  :is(.rubrique, .separate, hr) {
  display: none !important;
}

/* Conteneur : 2 lignes (1 vignette, 2 titre), colonnes auto, centré */
:is(#mod_72901402, #mod_72948312, #mod_72948762, #mod_72948825, #mod_72948830)
  .encapse_bloc > :is(.bloc_rub, .no_bloc_rub) {
  display: grid;
  grid-template-rows: auto auto;                 /* 1 = vignette, 2 = titre */
  grid-auto-flow: column dense;                  /* recolle titre + image */
  grid-template-columns: repeat(auto-fit, max-content);
  justify-items: center;
  align-items: start;
  column-gap: var(--sa-gap);
  row-gap: 2px;
  margin-inline: auto;
  max-width: 100%;
}

/* Titres en ligne 2 */
:is(#mod_72901402, #mod_72948312, #mod_72948762, #mod_72948825, #mod_72948830)
  h3.titre {
  grid-row: 2;
  margin: 8px 0 0 !important;
  text-align: center;
  max-width: var(--sa-title-max);
}

/* Vignettes : respecter STRICTEMENT la taille CMS (desktop) */
:is(#mod_72901402, #mod_72948312, #mod_72948762, #mod_72948825, #mod_72948830)
  img {
  display: block;
  width: auto !important;
  height: auto !important;
  max-width: none !important;
  float: none !important;
  object-fit: contain;
}

/* Nettoyage séparateurs internes */
:is(#mod_72901402, #mod_72948312, #mod_72948762, #mod_72948825, #mod_72948830)
  :is(.clear, .clear_separate, .separate) {
  display: none !important;
}

@media only screen and (max-width: 800px) {

.module-rub_une.type-2 .photo {
  max-width: 100% !important;
  padding-right: 0px;
  padding-bottom: 0px;
}
:is(#mod_72901402, #mod_72948312, #mod_72948762, #mod_72948825, #mod_72948830) h3.titre a {
  font-size:15px !important;
}}


/* ===== Style HDK générique pour tout module .sa-ready (header + ruban fluide) ===== */

.sa-ready{

  /* Gabarit fluide : 3 cartes = (100% - 2 gaps) / 3 */
  --gap: 24px;
  --card-min: 240px;        /* sécurité lisibilité */
  --card-max: 360px;        /* design cible */
  --card: clamp(var(--card-min),
                calc((100% - 2 * var(--gap)) / 3),
                var(--card-max));



  /* Vignette proportionnelle à la carte */

  --thumb-min: 56px;
  --thumb-max: 80px;
  --thumb: clamp(var(--thumb-min), calc(var(--card) * 0.22), var(--thumb-max));
  --lh: 1.25;
  --fs: 14px;
  --lines: 3;

  width: 100%;
  max-width: 100%;
  margin: 0 auto 25px;
  background: #F1F1F1;
  box-sizing: border-box;
  position: relative;
  padding-bottom:5px;

  /* pas de “couloir” pour un header vertical : header au-dessus */
  padding-inline: 0;
}


/* ===== ENTÊTE AU-DESSUS, HORIZONTAL ===== */

.sa-ready .entete{
  position: static;
  writing-mode: horizontal-tb;
  transform: none;
  display: block;
  margin: 0;                 /* espace sous le titre si besoin: 0 0 10px */
  text-align: center;        /* 'left' ou 'center' selon ton souhait */
  white-space: normal;
  word-break: normal;
  text-decoration-thickness: 1px;
  text-underline-offset: 3px;
}

.sa-ready .entete .fullmod{
  padding: 0;
  width: 100%;               /* s’aligne naturellement sur le ruban */
  margin-inline: auto;
}


/* Masque les titres CMS redondants du module */

.sa-ready .rubrique,
.sa-ready .separate,
.sa-ready hr { display: none !important; }


/* ===== RUBAN ===== */

.sa-ready .sa-strip{
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  gap: var(--gap);
  align-items: center;
  justify-content: center;     /* 3 cartes centrées dans la colonne */
  overflow-x: visible;         /* pas de clipping */
  -webkit-overflow-scrolling: touch;
  overscroll-behavior-inline: contain;
padding-bottom:10px;
}

/* ===== CARTE ===== */

.sa-ready .sa-item{
  flex: 0 0 var(--card);
  width: var(--card);
  display: flex;
  align-items: center;
  gap: 12px;
  color: #000;
  background: transparent;

}



/* ===== VIGNETTE ===== */

.sa-ready .sa-thumb{
  flex: 0 0 var(--thumb);
  width: var(--thumb);
  height: var(--thumb);
  border-radius: 4px;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
}

.sa-ready .sa-thumb img{
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  object-position: center;
}



/* ===== TEXTE ===== */

.sa-ready .sa-meta{
  flex: 1 1 auto;
  min-width: 0;
  display: flex;
  align-items: center;
}
.sa-ready .sa-title{
  margin: 0;
  font-size: calc(var(--fs) + 2px);
  font-weight: 400;
  color:#000;
  line-height: var(--lh);
  display: -webkit-box;
  -webkit-line-clamp: var(--lines);
  -webkit-box-orient: vertical;
  overflow: hidden;

}

.sa-ready .sa-title a{ color:#000; text-decoration:none; }
.sa-ready .sa-item:hover .sa-title a{ color:#444; }


/* ===== RESPONSIVE ===== */

@media (max-width:1100px){
  /* Ajuste légèrement l’espacement quand la colonne rétrécit */
  .sa-ready{ --gap: 18px; --fs: 13.5px; }
}

@media (max-width:680px){

  .sa-ready{
    --gap: 16px;
    --card-min: 220px;         /* accepte des cartes un peu plus petites */
    --fs: 12px;
    --lines: 2;
    padding-inline: 10px;      /* un peu d’air latéral */
  }


  /* Sur mobile, on peut autoriser le défilement horizontal si besoin */

  .sa-ready .sa-strip{
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    justify-content: flex-start;
  }
  .sa-ready .sa-item{ scroll-snap-align: start; }

  /* Le header prend toute la largeur */

  .sa-ready .entete .fullmod{
    width: 100%;
    margin-inline: 0;
  }
}



/* Active le sticky une fois le module visible */
#z_col2.sticky-under-mod {
  position: sticky;
  top: var(--stickyOffset, 0px); /* défini par le JS */
  z-index: 10;
}

@supports (font-size-adjust: 1) {
  body { font-size-adjust: .50; } /* Open Sans ≈ 0.50 */
}

/* ========== 2. UTILITAIRES GLOBAUX ========== */
.spacer { height: 10px; }
.sticky { position: fixed; top: 0; z-index: 1000; }
.sticky-ad { position: fixed; top: 50px; width: 100%; z-index: 999; }

#backToTopBtn {
  display: none;
  position: fixed;
  bottom: 30px;
  right: 30px;
  z-index: 99;
  font-size: 18px;
  border: none;
  outline: none;
  background-color: #127EB8;
  opacity: 0.9;
  color: white;
  cursor: pointer;
  padding: 15px;
  border-radius: 10px;
}
#backToTopBtn:hover { background-color: #127EB8; }

/* ========== 3. IMAGES, PHOTOS & ICONES ========== */
.auteur.social a img[src*="facebook"],
.auteur.social a img[src*="twitter"],
.auteur.social a img[src*="linkedin"] {
  width: 32px  !important;
  height: 32px  !important;
  aspect-ratio: 1/1;
  display: inline-block;
  object-fit: contain;
  vertical-align: middle;
}

/* Pour toutes les images à rendre responsives */
img.not-responsive,
img.responsive,
.page2_rubrique img.not-responsive {
  width: 100%;
  height: auto;
  aspect-ratio: unset; 
  display: block;
  object-fit: contain; 
  min-height: 1px; 
  max-width: 100%; 
}

.photo.shadow.top {
  aspect-ratio: unset;  
  width: 100%;
  height: auto;
  margin-bottom: 1em;
  display: block;
}

/* Ne pas fixer une hauteur en pixels sauf si absolument nécessaire */
.page2_article img.not-responsive {
  /* height: 478px; sauf cas ultra spécifique */
  /* Si vraiment besoin d'une hauteur, préférer le ratio ou un min/max-height */
}

/* Responsive */
@media (max-width: 768px) {
  .photo.shadow.top, img.responsive {
    aspect-ratio: unset;   /* Désactive le ratio si besoin */
    height: auto;
    margin-bottom: 1em;
  }
  .photo.shadow.top img {
    width: 100%;
    height: auto;
    display: block;
    object-fit: contain;
  }
}

/* ========== 4. TABLES & COLONNES ========== */
tr.tr_median > td.z_col1_td_inner { min-height: 350px !important; height: 350px !important; }
tr.tr_median > td.z_col1_td_inner,
tr.tr_median > td.main-colonne {
  min-height: 320px;
  position: relative;
  padding: 0 !important;
  margin: 0 !important;
  border: none !important;
}
tr.tr_median > td.z_col1_td_inner::after {
  content: '';
  display: block;
  height: 10px;
  margin-bottom: 10px;
  pointer-events: none;
  opacity: 0;
}
@media (max-width: 600px) {
  tr.tr_median > td.z_col1_td_inner,
  tr.tr_median > td.main-colonne { min-height: 280px !important; }
}
@media only screen and (max-width: 800px) {
  #main_table_inner tr.tr_median {
    min-height: 40px; 
  }
}
@media only screen and (max-width: 480px) {
  .entry-content.instapaper_body {
    min-height: 300px; 
  }
}
.page2_article h1.access, .page2_article h3.access {
   min-height: 1em; 
   line-height: 1.2;
}
.page2_article div.auteur {
   min-height: 1.2em; /* Idem */
}

/* ========== 5. BACKGROUNDS, GRADIENTS & GENERAL COLORS ========== */
#z_col100, #mod_60743147, #mod_68158854, #mod_60743142, #mod_60743106, #mod_60743144 {
  background: #000215;
  background: linear-gradient(to right, #000215, #003766, #000215);
  background: -webkit-linear-gradient(to right, #000215, #003766, #000215);
}
.titreh1,
#mod_53059063 .main_menu,
#mod_9477108,
.mod_21160832,
.mod_9642329 {
  background: #000215;
  background: -webkit-linear-gradient(to right, #000215, #003766, #000215);
  background: linear-gradient(to right, #000215, #003766, #000215);
}

/* ========== 6. RESPONSIVE PUB/BANNIÈRES ========== */
@media only screen and (max-width: 800px) {
  #mod_69237028, #mod_68363262, #mod_68363261, #mod_68363259, #mod_68363208, #mod_68362994 {
    display: block !important;
    width: 100% !important;
  }
}
@media only screen and (max-width: 480px) {
  /* Centrer et éviter le débordement sur petits écrans */
  .ad-wrapper { display:flex; justify-content:center; }
}

.module-pub .entete { font-weight: normal; color: #999; }
#mod_69237028 { padding: 0 !important; }

@media only screen and (max-width: 480px), only screen and (max-width: 800px) and (orientation: landscape) {
  .module-pub .entete .fullmod span { font-size: 10px !important; }
  .module-pub { padding: 15px 0 20px; }
}

.page2_article .module-pub {padding:25px 0px 0px}

/* ========== 7. HEADERS & LOGOS ========== */
/* base mobile (avant 641px) */
.site-header-logo{ height:45px; width:auto; display:block; }  /* ajuste 48px si besoin */

@media (min-width: 641px) {
  .site-header-logo { height: 55px; width: auto; }
  .site-header-logo-2 { height: 55px; width: auto; }
}
@media (min-width: 992px) {
  .site-header-logo { height: 65px; width: auto; }
  .site-header-logo-2 { height: 65px; width: auto; }
}

/* ========== 8. MENU PRINCIPAL ========== */
#mod_53059063 .main_menu {
  background: linear-gradient(to right, #003766, #01274d, #003766);
  background: -webkit-linear-gradient(to right, #01274d, #000428, #003766);
}
#mod_53059063 .main_menu .fullmod {
  display: flex; flex-wrap: nowrap; justify-content: center;
}
#mod_53059063 .main_menu li.titre a { border-top: 1px solid transparent !important; }
#mod_53059063 .main_menu li.titre a, #mod_53059063 .main_menu li.titre a:hover { font-weight: 300; }
#mod_53059063 .main_menu li.titre a:hover{ border-top: 1px solid #fff !important; }
#menuliste_53059063_6 { background: #3c61d8; }
#menuliste_53059063_6 a {
  font-size: 13px !important;
  display: inline-block !important;
  white-space: normal !important;
  width: 100px !important;
  padding: 9px 15px !important;
  color:#fff !important;
}
#mod_53059063 .main_menu li.stitre a, #mod_53059063 .main_menu li.stitre a:hover { border-bottom: 1px solid #c0d6f9 !important; }
#mod_53059063 .main_menu li.stitre.slast a, #mod_53059063 .main_menu li.stitre.slast a:hover { border-bottom: none !important; }
#mod_53059063 .main_menu ul li.last a:before, #mod_53059063 .main_menu ul li.last a:hover:before {
  content: "\e627";
  font-family: 'gbicongeneric' !important;
  color: #16a9f8;
  margin-right: 5px;
}
#menuliste_53059063_7 a { padding: 13px !important; }
#mod_53059063 .main_menu li.stitre a { background-color: rgba(60,97,216,0.9); }

/* Responsive menu */
@media (max-width: 800px) {
  .mod_9642330 li .liens a { color: #71ccfd; }
  .module-MOBI_titre .swipe, .mod_9642329 .swipe { font-size: 30px; font-weight: 100 !important; margin-top: 0 !important; }
  .module-MOBI_titre .searchbutton { margin-top: 0 !important; }
}
@media (max-width: 480px) {
  #mod_9642330 .entete:not(.keep-padding) { padding-top: 5px !important; padding-bottom: 5px !important; }
}

/* ========== 9. TITRES & BREADCRUMBS ========== */
.titreh1 {
  display: flex; align-items: center; align-self: stretch; justify-content: center;
  padding: 15px 0;
}
@media (max-width: 800px) {
  .cel1:not(.keep-padding), .cel2:not(.keep-padding), .celentete, .cel_centre, .cel_entete, .cel_pied,
  .breadcrump, .breadcrumbs, .breadcrump_rub, .homecrump, .cel1bread, .bas_page { padding: 0 !important; }

  .z_col1_inner, .z_colfull_inner { padding-bottom: 30px !important; }
  .services_web2 .cel1 { padding: 10px 0 0 !important; }
  #mod_65516171 { display: block !important; }
}
@media (max-width: 480px), (max-width: 800px) and (orientation: landscape) {
  .breadcrumbs { font-size: 15px !important; }
}

/* ========== 10. ARTICLES ========== */
.page2_article .titre,
.page2_article .titre .access { padding: 0 0 10px; }
.page2_article .soustitre, .page2_article .soustitre .access { margin-bottom: 25px; }
.page2_article .intertitre .access { padding: 20px 0 0; }
.page2_article .chapeau, .page2_article .chapeau .access, .mep60 .chapeau, .mep60 .chapeau .access {
  height: auto !important; min-height: 60px; padding: 5px 0 15px 0; font-weight: 300;
}
.page2_article .liens, .page2_article a.liens, .page2_article .liens a, .page2_article a.link,
.page2_article .liens:hover, .page2_article .liens a:hover, .page2_article a.liens:hover, .page2_article a.link:hover {
  font-weight: 600;text-decoration-thickness: 2px; text-underline-offset: 5px;}
.page2_article .auteur { padding: 0; }
.page2_article .entete_liste { margin-top: 20px !important; width: 100%; }
.page2_article .bloc_liste .access a {margin: 15px 15px 0;}
.page2_article .bloc_liste .bloc {
  border: none;
  background-color: #012c54;
  padding: 30px 30px 0;
}
.page2_article .texte { padding: 10px 0; font-weight: 300; }
.page2_article strong { font-weight: 900; font-size: 1.2rem; color: #3C61D8; }
.page2_article u, .page2_article u strong, .page2_article strong u {
  font-size:1.1rem; font-weight: 900; color: #00356D; text-decoration: none}
.page2_article .texte .access li { list-style-position: initial; margin-bottom: 20px; }
.page2_article .bloc_liste .access .date { display: none; }
.page2_article .entete_liste .access { padding: 30px 0 20px !important; }
.page2_article .top .not-responsive { margin-top: 5px; }
.page2_article table { max-width: none !important; background-color: #012c54; }
.page2_article .texte table {border-collapse: separate;border-spacing: 10px;}
.page2_article .bloc_liste .access a { height: 85px !important; margin: 8px 10px 15px 10px; }
.page2_article #entete_liste .break { display: none !important; }
.module-page2_formulaire .button, .module-page2_formulaire .field_error {
  font-family: "Century Gothic", sans-serif;
  font-size: 16px; padding: 7px;
}
.module-page2_formulaire .description { font-weight: 300; }
.page2_article .pj a { font-weight: bold !important; color: #127EB8 !important; }
.page2_article .auteur.social::before {
  content: "Partager cet article sur";
  display: inline-block;
  margin-right: 10px;
  font-size: 1em;
}
@media (max-width: 800px) {
  .page2_article .photo img.responsive { margin-bottom: 20px; }
  .page2_article .titre, .page2_article .titre .access { padding-bottom: 0 !important; }
  .breadcrumbs { padding: 10px 0 5px 10px !important; }
}
@media (max-width: 480px), (max-width: 800px) and (orientation: landscape) {
  .page2_article .titre, .page2_article .titre .access { font-size: 22px !important; }
  .page2_article .chapeau, .page2_article .chapeau .access { line-height: 1.6em !important; font-size: 16px !important; }
  .page2_article .auteur .access { font-size: 12px !important; }
  .page2_article .texte, .page2_article .texte .access { line-height: 1.6em !important; font-size: 16px !important; }
  .page2_article .intertitre .access { font-size: 22px !important; line-height: 1.4 !important; padding: 20px 0 0; }
  .breadcrumbs, .breadcrump { font-size: 15px !important; }
  .pager a { font-size: 17px !important; line-height: 1.6 !important; }
  .page2_article .entete_liste .access { font-size: 1.2rem !important; padding-top: 0 !important; }
  .page2_article .bloc_liste .access a { height: 60px !important; }
  .page2_article .titre_liste .access { font-size: 1rem !important; line-height: 1.3em !important; }
  .page2_article table.same_rub td {
    width: 100% !important; display: block; padding: 0 !important; border-bottom: 10px solid #fff;
  }
  .page2_article strong { line-height: 1.6em !important; font-size: 1rem !important; }
}

/* ========== 11. RUBRIQUES ========== */
.page2_rubrique > #z_col1 .z_col1_inner { padding-top: 25px !important; }
.mep57 .page2_rubrique .celrubrique { padding-top: 0 !important; }
.page2_rubrique .rubrique {
  padding: 15px 0 10px 0; margin: 0 0 20px;
}
.page2_rubrique .sous_titre, .page2_rubrique .sous_titre a {margin: 0 0 35px 0}

.page2_rubrique .celrubrique { margin-right: 0; height: auto !important; min-height: 30px; padding: 0 0 30px 0; }
.page2_rubrique .cel1:first-of-type { border-bottom: 0; padding: 0; }
.page2_rubrique .cel1:nth-child(2) img { display: none; }
.page2_rubrique .cel1:nth-child(2) img.responsive {
  display: block !important; width: 100% !important; max-width: 100%; padding-right: 0; margin-bottom: 5px;
}
.page2_rubrique .cel1:nth-child(2) .photo_left { padding-right: 0; }
.page2_rubrique .cel1:nth-child(2) .titre_article, .page2_rubrique .cel1:nth-child(2) .titre_article a,
.page2_rubrique .cel1:nth-child(n+2) .titre_article, .page2_rubrique .cel1:nth-child(n+2) .titre_article a {
  padding-bottom: 10px;
}
.page2_rubrique .pager { background: #EEE; padding-left: 10px; margin-bottom: 40px; margin-top: 10px; }
.page2_rubrique .pager a, .page2_rubrique .pager .sel {
  background-color: #003366;
  border: #003366 1px solid !important;
  padding: 6px;
}
.page2_rubrique .resume_article { display: block !important; font-weight: 300; }
#mod_32781940 .rub .resume_article { display: none !important; }
.page2_rubrique .infos, .page2_rubrique .infos a, .page2_rubrique .message a.infos {
  color: #000; font: normal 32px "Century Gothic", sans-serif;
}
.page2_rubrique .cel1:nth-child(2) .date_article { margin-bottom: 10px; }
.page2_rubrique div.col { width: 33% !important;margin-bottom:35px; }
.page2_rubrique div.col .content { width: 100% !important; }
.page2_rubrique .cel_centre:nth-child(1) { padding-top: 0 !important; }
.page2_rubrique .cel_centre .bg div {position: absolute; bottom: 0 !important; padding-top: 10px; width: 100% !important; background-color: #fff;}

/* Forcer le titre et la date sur la même ligne */
.page2_rubrique .col .titre_article {
  display: inline; /* ou inline-block */
  margin-right: 8px; /* espace entre titre et date */
}

.page2_rubrique .col .date_article {
  display: inline; /* éviter le retour à la ligne */
}
.page2_rubrique .photo_left {
  margin-bottom: 10px;
}
@media (max-width: 800px) {
  .page2_rubrique .rubrique { margin-bottom: 0; }
  .page2_rubrique.type-10 .col { width: 33% !important; }
  .page2_rubrique .resume_article, .page2_rubrique .resume_article * { font-size: 17px !important; line-height: 1.7em !important; }
  .page2_rubrique.type-9 .cel_centre .bg { padding-top: 80% !important; }
  .page2_rubrique .cel_centre .bg div { padding-top: 5px; padding-bottom: 30px; }
  .page2_rubrique.type-1  .cel1:not(:first-child), .page2_rubrique.type-8  .cel1:not(:first-child), .page2_rubrique.type-6  .cel1:not(:first-child) {
    padding: 10px 6px 40px !important;
  }
}
@media (max-width: 480px) {
  .page2_rubrique .lire_suite { display: none; }
  .page2_rubrique .rubrique span {font-size: 20px !important;}
  .page2_rubrique img.responsive { padding-bottom: 5px; }
  .page2_rubrique .resume_article, .page2_rubrique .resume_article * { font-size: 15px !important; line-height: 1.4em !important; padding-bottom: 40px !important; }
  .page2_rubrique .photo_left, .page2_rubrique .photo_right { max-width: 100% !important; width: 100% !important; padding-left: 0 !important; padding-right: 0 !important; }
  .page2_rubrique.type-10 .col { width: 100% !important; }
  .page2_rubrique .resume_article { padding-top: 0 !important; }
  .page2_rubrique .titre a { line-height: 1.5 !important;}
  .page2_rubrique .cel1:nth-child(n+2) .titre_article, .page2_rubrique .cel1:nth-child(n+2) .titre_article a {font-size:14px !important}
  .page2_rubrique .col .date_article {font-size:12px !important;}
}

/* ========== 12. CAMPAGNES & AFFICHAGE SPÉCIAL ========== */

/* HACK RESPONSIVENESS CAMPAGNES HP */
@media (max-width:800px){
  .z_col0_inner>div.fullwidthsite>*,
  #mod_7148914, #mod_9022072, #mod_21144475, #mod_21145001, #mod_21150409, #mod_21150999 {
    display: block !important; 
  }
  #mod_7148914, #mod_9022072, #mod_21144475, #mod_21145001, #mod_21150409, #mod_21150999 {
    padding-top:10px;
    padding-bottom:10px;
  }
}
.mod_7148914 .cel1,
#z_col0.full .mod_7148914 .cel1 .fullmod,
#z_col0.full .mod_21144475 .cel1 .fullmod,
#z_col0.full .mod_21145001 .cel1 .fullmod,
#z_col0.full .mod_21150409 .cel1 .fullmod,
#z_col0.full .mod_21150999 .cel1 .fullmod {
  width:980px;
  margin:0 auto;
  margin-top:5px;
  max-height:120px !important;
}

/* RESPONSIVENESS - CAMPAGNES HEADER HP + FOOTER + UNIVERS */
@media (max-width:800px){
  #mod_63499673, #mod_63521861, #mod_63521886, #mod_63521887, #mod_63521888, #mod_63523299, #mod_63772720 {
    display:block !important;
    padding-top:5px;
  }
  .cel1:not(.keep-padding){padding:0 !important;}
  #mod_54582539 .cel1 { padding: 25px 0 !important; }
}
@media (min-width:801px){
  #mod_63499673, #mod_63521861, #mod_63521886, #mod_63521887, #mod_63521888, #mod_63523299 {
    display:none !important;
  }
}
.mod_9476882 .cel1, .mod_15834578 .cel1, .mod_21144479 .cel1, .mod_21145003 .cel1, .mod_21151002 .cel1 {
  width:300px !important; 
  margin:0 auto !important; 
}
.mod_9476882 .fullmod, .mod_15834578 .fullmod, .mod_21144479 .fullmod, .mod_21145003 .fullmod, .mod_21151002 .fullmod {
  text-align:center !important; 
}
@media (max-width:800px){
  .z_col2_inner { display: block; }
  #z_col100 .z_col100_inner { padding: 0 0 30px 0 !important; }
  .mod_9476882, .mod_15834578, .mod_21144479, .mod_21145003, .mod_21151002 { border: none !important; }
}

/* CAMPAGNES RUB */
#mod_9482362 { margin:5px 0; }
@media (max-width:800px){
  .mod_9482362 { border: none !important; }
}

/* (doublons Adsense/Affiliation supprimés ici, cf. section 24) */

/* Autres modules liés aux campagnes pub ou newsletter */
div#mod_21144982 { display: block !important; max-width:980px !important; margin:0 auto !important; }
#mod_21145080_pub, #mod_21150478_pub, #mod_21151081_pub, #mod_21144542_pub, #mod_6642450_pub { margin-top:25px; }

@media (orientation:portrait) and (max-width: 480px),
       (max-width:800px) and (orientation:landscape) {
  #mod_6818156, #mod_60738363 {
    display:block !important;
    padding-bottom:10px !important;
  }
}

/* ========== 13. UNE HP (1ère page) ========== */
.mod_21142606 .celcombo2 { display: none !important; }
#mod_21142607 { max-width: 1180px !important; margin: 0 auto !important; }
#mod_21142606 .fullmod { border: none; margin-top: 0; margin-bottom: 0; }
.mod_21142607 .celcombo2 { display: none; }
#mod_21142607 .section div {
  background-position: center center !important;
  background-size: cover !important;
  max-height: 480px;
}
.mod_21142607 .entete {
  position: absolute !important;
  width: 120px;
  z-index: 999;
  margin-top: 25px;
  padding: 0;
}
.mod_21142607 .entete span, .mod_21142607 .entete a {
  margin-top: 20px;
  padding: 10px 20px 6px 20px;
  background-color: #3c61d8;
}
.mod_21142607 .premier_titre, .mod_21142607 .texte { padding: 10px 100px 5px 100px; }
.mod_21142607 .texte { padding-top: 0; }
.mod_21142607 .pager { display: none; }
.mod_21142607 .section:before {
  content: "";
  width: 100%; height: 100%;
  position: absolute; top: 0; left: 0; margin: 0 auto;
  z-index: 1;
  background: linear-gradient(180deg,rgba(5,4,43,0),rgba(5,4,43,.66) 40%);
  background-repeat: repeat-x;
}
.mod_21142607 .opacity {
  width: 100% !important; height: 100% !important;
  z-index: 2;
  top: 35% !important; bottom: 15% !important;
}
.mod_21142607 .pager a, .mod_21142607 .pager a.sel, .mod_21142607 .pager a:hover {
  display: inline-block;
  padding: 0 !important; margin: 0 5px;
  height: 8px; line-height: 8px !important;
  width: 8px; vertical-align: 5%;
  border-radius: 0;
  transform: rotate(45deg);
}
@media (max-width: 800px) {
  #mod_21142607 .entete { margin-top: 5px !important; }
  #mod_21142607 .entete span { font-size: 14px !important; }
  .mod_21142607 .premier_titre, .mod_19059642 .texte { padding: 10px 20px 5px 20px; }
  #z_col0.full .mod_21142606 .fullmod .fullmod { padding-left: 0 !important; padding-right: 0 !important; }
}
@media (max-width: 480px) {
  #mod_21142607 .entete { margin-top: 15px !important; margin-left: -15px !important; }
  .mod_21142607 .premier_titre, .mod_21142607 .premier_titre a {
    font-size: 22px !important; line-height: 1.2em !important;
  }
  .mod_21142607 .opacity { top: 15% !important; bottom: 15% !important; }
}

/* ========== 14. UNE 2nd NIVEAU HP ========== */
.module-une.type-10 .entete { padding: 0; margin-left: 0; }

#mod_53120401 .entete .fullmod { margin: 25px 0 15px !important; }
.module-une.type-10 .entete .fullmod { margin: 100px 0 10px 15px; }
.module-une.type-10 .premier_titre, .module-une.type-10 .premier_titre a {
  padding-bottom: 5px; font-weight: 600;-webkit-background-clip: text;
}

.module-une.type-10 .texte, .module-une.type-10 .texte a {
  margin-top: 5px; margin-bottom: 10px; font-weight: 300;
}
@media (max-width: 800px) {
  .module-une.type-10 .entete * { font-size: 16px !important; line-height: 16px !important; }
  .module-une.type-10 .entete { background-position: center !important; padding-left: 0 !important; }
  .module-une.type-10 .cel1.first { padding-top: 15px !important; }
  .module-une.type-10 .premier_titre, .module-une.type-10 .premier_titre a {
    font-size: 20px !important; line-height: 1.2em !important;
  }
  .module-une.type-10 .border_ie {
    padding-top: 70% !important; background-position-y: top !important; background-size: contain !important;
  }
}

/* ========== 15. MODULES NEWS/COLONNE 2 HP ========== */
.module-news.type-3 .inner_tabs .numero { font-size: 2.5em !important; }
.module-news.type-3 .onglet ul li:nth-of-type(3) { display: none !important; }
.module-news.type-3 .numero { color: #FF2B00 !important; }
.news.module-news.type-2 .entete { padding-top: 3px; padding-bottom: 10px; }
.news.module-news.type-2 .entete span, .module-news.type-2 .entete a { padding: 10px 15px; border-radius: 3px; }
.news.module-news.type-2 .inner_tabs { padding: 0; }
.news.module-news.type-2 .cel1, .module-news.type-2 .cel2 { padding: 10px; }
.news.module-news.type-2 .entete .fullmod span {
  background: #127eb8;
  background: linear-gradient(to right, #024a71, #127eb8, #024a71);
  background: -webkit-linear-gradient(to right, #024a71, #127eb8, #024a71);
}
@media (max-width: 800px) {
  .module-news.type-3 .cel1, .module-news.type-3 .cel2 { padding-bottom: 20px !important; }
  .module-news.type-3 .onglet ul { padding-bottom: 10px; }
}
.module-news.type-3 h3 { margin-left: 35px; }
.module-news.type-3 .onglet li a, .module-news.type-3 .onglet li.selected a { font-weight: bold; }
ins.adsbygoogle[data-ad-status="unfilled"] { display: none !important; }

/* HOME : 2 colonnes sur mobile pour les modules "eau" sous les Unes */
@media (max-width: 600px) {

  /* 1) On sort du modèle table et on passe la ligne en flex wrap */
  .module-eau.type-3 table.inner,
  .module-eau.type-3 table.inner > tbody,
  .module-eau.type-3 table.inner > tbody > tr {
    display: block !important;
    width: auto !important;
    max-width: none !important;
  }
  .module-eau.type-3 table.inner > tbody > tr {
    display: flex !important;
    flex-wrap: wrap !important;
  }

  /* 2) Clé : casser le width:100% !important appliqué par table:not(.combo) td */
  .module-eau.type-3 table.inner:not(.combo) > tbody > tr > td {
    display: block !important;          /* ou inline-block, les deux marchent */
    width: 50% !important;              /* 2 colonnes */
    max-width: 50% !important;
    float: none !important;
    box-sizing: border-box !important;
    padding: 0 8px 16px !important;
  }

  /* 3) Esthétique */
  .module-eau.type-3 img {max-width:100%;height:auto;display:block;}
  .module-eau.type-3 h2,
  .module-eau.type-3 h3,
  .module-eau.type-3 .titre {
    display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;
  }
}

/* assets */
.module-eau.type-3 img {
  max-width: 100%;
  height: auto;
  display: block;
}
.module-eau.type-3 h2, .module-eau.type-3 h3, .module-eau.type-3 .titre {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

/* ========== 16. MODULES RUBRIQUE COL2 HP ========== */
.module-rub_une.type-6 .inner_tabs { padding: 0px 15px 20px 15px; }
.mod_19414631 .inner_tabs { padding: 0px 5px 20px 10px; }
.module-rub_une.type-6 .photo {
  padding-right: 0; padding-bottom: 20px;
  position: relative; float: none; text-align: center !important;
}
.module-rub_une.type-6 .div_play_large {
  text-align: center; padding-right: 39px; padding-top: 25.5px; height: 180px; display: block;
}
.module-rub_une.type-6 .rubrique, .mod_62268488 .onglet a {
  background: #127eb8;
  background: linear-gradient(to right, #024a71, #127eb8, #024a71);
  background: -webkit-linear-gradient(to right, #024a71, #127eb8, #024a71);
  padding: 8px; margin: 10px 0 20px 0;
}
.mod_62268488 .onglet li.selected a {
  background: #dc2601;
  background: linear-gradient(to right, #8e1902, #dc2601, #8e1902);
  background: -webkit-linear-gradient(to right, #8e1902, #dc2601, #8e1902);
  padding: 8px; margin: 10px 0 0 0;
}
.mod_62268488 .onglet li.selected a::after {
  content: "";
  position: absolute;
  left: 50%;              /* centrage horizontal */
  transform: translateX(-50%);
  bottom: -12px; 
  width: 0;
  height: 0;
  border-left: 6px solid transparent;
  border-right: 6px solid transparent;
  border-top: 6px solid #dc2601;
}
.module-rub_une.type-6 .rubrique, .module-rub_une.type-6 .rubrique a { text-align: center; }
@media (max-width: 800px) {
  .module-rub_une.type-6 .rubrique, .module-rub_une.type-6 .titre, .module-rub_une.type-6 .titre a,
  .module-rub_une.type-6 .photo { text-align: center; }
  .module-rub_une.type-6 .photo { max-width: 50% !important; float: none; margin: 0 auto; }
}
@media (orientation:portrait) and (max-width: 480px) {
  .module-rub_une.type-6 .photo { max-width: 75% !important; float: none; margin: 0 auto; }
  .module-rub_une.type-6 .cel1 { width: 90% !important; margin: 0 auto !important; }
}

/* ========== 17. MODULES EAU ========== */
.module-eau.type-3 .cel1 {
  position: relative; background-color: transparent;
  padding: 15px 20px !important;
}
.module-eau.type-3 .photo { display: table; margin: 0 auto; float: inherit; }
.module-eau.type-3 .titre, .module-eau.type-3 .titre a { margin-top: 10px; }
.module-eau.type-3 .rubrique { margin: 10px 0; }
.module-eau.type-3 .texte { padding-left: 5px; padding-bottom: 15px; }
@media (orientation:portrait) and (max-width: 480px), (max-width: 800px) and (orientation:landscape) {
  .module-eau.type-3 .entete, .module-eau.type-3 .entete * {
    font-size: 14px !important; line-height: normal !important; padding-top: 10px !important; padding-bottom: 0 !important;
  }
  .module-eau.type-3 .cel1 { width: 90% !important; margin: 0 auto !important; }
  .module-eau.type-3 .menu_ligne ul li {
    display: inline-block !important; width: 50% !important; float: left !important;
  }
}

/* ========== 18. CAMPAGNES & AFFICHAGE SPÉCIAL ========== */
.mep1.home #z_col0.full .mod_19285605 .cel1 .fullmod { max-width: 990px; }
@media (max-width: 800px) {
  .z_col2_inner { display: block; }
  .mod_19078071 { border: none !important; }
  .z_col0_inner > div.fullwidthsite > *, #mod_7148914, #mod_9022072, #mod_21144475, #mod_21145001, #mod_21150409, #mod_21150999 {
    display: block !important;
  }
  #mod_7148914, #mod_9022072, #mod_21144475, #mod_21145001, #mod_21150409, #mod_21150999 {
    padding-top: 10px; padding-bottom: 10px;
  }
}
.mod_7148914 .cel1, #z_col0.full .mod_7148914 .cel1 .fullmod, #z_col0.full .mod_21144475 .cel1 .fullmod,
#z_col0.full .mod_21145001 .cel1 .fullmod, #z_col0.full .mod_21150409 .cel1 .fullmod, #z_col0.full .mod_21150999 .cel1 .fullmod {
  width: 980px; margin: 0 auto; margin-top: 5px; max-height: 120px !important;
}
@media (max-width: 800px) {
  #mod_63499673, #mod_63521861, #mod_63521886, #mod_63521887, #mod_63521888, #mod_63523299, #mod_63772720 {
    display: block !important; padding-top: 5px;
  }
  .cel1:not(.keep-padding) { padding: 0 !important; }
  #mod_54582539 .cel1 { padding: 25px 0 !important; }
}
@media (min-width: 801px) {
  #mod_63499673, #mod_63521861, #mod_63521886, #mod_63521887, #mod_63521888, #mod_63523299 {
    display: none !important;
  }
}
.mod_9476882 .cel1, .mod_15834578 .cel1, .mod_21144479 .cel1, .mod_21145003 .cel1, .mod_21151002 .cel1 {
  width: 300px !important; margin: 0 auto !important;
}
.mod_9476882 .fullmod, .mod_15834578 .fullmod, .mod_21144479 .fullmod, .mod_21145003 .fullmod, .mod_21151002 .fullmod {
  text-align: center !important;
}
@media (max-width: 800px) {
  .z_col2_inner { display: block; }
  #z_col100 .z_col100_inner { padding: 0 0 30px 0 !important; }
  .mod_9476882, .mod_15834578, .mod_21144479, .mod_21145003, .mod_21151002 { border: none !important; }
}

/* ========== 19. PARTENAIRES ========== */
.mod_6818145 img { width: 766px !important; max-width: none !important; }
.mod_6818145 img.notresponsive { background-size: cover !important; }

/* ========== 20. PAGE DE RECHERCHE ========== */
.page2_recherche .cel1 .button {
  border-radius: 4px;
  background-color: rgba(255,255,255,0.3) !important;
  border: 1px solid #ccc;
  width: 75% !important;
}
.page2_recherche .button { padding-left: 12px; color: #777; }
.page2_recherche .texte, .page2_recherche .texte a { font-weight: 300; }
.page2_recherche .entete {
  padding: 15px 0 10px 10px;
  margin-bottom: 20px;
}
.page2_recherche .rubrique { padding-top: 15px; }
.page2_recherche .texte { padding-top: 25px; }
.page2_recherche .pager a, .page2_recherche .pager .sel {
  background-color: #003366;
  border: #003366 1px solid !important;
  padding: 6px;
}
@media (max-width: 480px) {
  .mod_6642468 .entete span { font-size: 13px !important; }
  .page2_recherche .cel1 input.button { width: 75% !important; }
}

/* ========== 21. FOOTER, OURS, LEGAL ========== */
@media (min-width: 0px) {
  #z_col100 .z_col100_inner {
    background: #000215;
    background: -webkit-linear-gradient(to right, #000215, #003766, #000215);
    background: linear-gradient(to right, #000215, #003766, #000215);
  }
}
.mod_9477141 .legal:before {
  content: url('/https/www.senioractu.com/docs/img/SA-LogoLetterWhite40px.png');
  display: inline; width: 40px;
}
.mod_9477153 .menu_ligne { padding: 10px 10px 10px 0 !important; }
@media (max-width: 800px) {
  .mod_20956119 .menu_ligne .cel1, .mod_20956119 .menu_ligne .cel2,
  .menu_static .menu_ligne li a, .module-menu_deployable .menu_ligne li a,
  .menu_static .main_menu li a, .module-menu_deployable .main_menu li a {
    padding: 10px 0 !important; display: inline !important; float: none !important; width: auto !important;
  }
  .mod_20956119 { padding-bottom: 10px !important; }
  .menu_static.colonne-b .menu_ligne ul li { padding: 10px 5px !important; }
  .mod_9477141 .legal span, .mod_9477141 .legal span i { font-size: 12px !important; }
  #mod_9477153 .menu_ligne li { display: inline !important; }
  #mod_9477153 .menu_ligne { text-align: center; }
}

/* ========== 22. PLAN DU SITE ========== */
#mod_6818149 { margin: 0 auto !important; }
.mod_6818149 .left { float: none; width: 100%; }
.mod_6818149 .rubrique {
  padding: 15px 0 10px 10px;
  margin-top: 40px; margin-bottom: 20px; max-width: 750px;
}
.mod_6818149 .srubrique { }

/* ========== 23. NEWSLETTER, FORMULAIRES ========== */
.mod_6642464 .entete {
  padding: 15px 0 10px 10px;
  background: linear-gradient(to right, rgb(0, 16, 57), rgb(0, 78, 146));
  margin-bottom: 20px;
}
.mod_6642464 .texte:nth-child(3) { color: red; }
.mod_6642464 .button { max-width: 300px; }

/* ========== 24. ADSENSE & AFFILIATION (fusion unique) ========== */
.cg-box-layout-three .cg-layout-row { padding: 0 !important; }  /* déplacé ici */

.google-anno { color: #127EB8; }
.goog { margin: 0 auto; }
ins.adsbygoogle[data-ad-status="unfilled"] { display: none !important; }

@media (max-width: 480px) { .adsbygoogle { margin-left: 0 !important; } }

/* Réajustement responsive uniquement pour les annonces AdSense */
@media (max-width: 800px) {
  .module-pub .adsbygoogle {
    width: 100% !important;
    height: auto !important;
  }

  /* Forcer les wrappers WMaker à suivre */
  .module-pub,
  .module-pub .cell,
  .module-pub .fullmod,
  .module-pub [id^="pub_"] {
    width: 100% !important;
    height: auto !important;
  }
}
