/* =============================================
   pieddepage.css — Navigation pied de page responsive
   ============================================= */

/* ── Liens ── */
#mod-custom140 nav a {
    position: relative;
    font-family: "Dosis", Arial, Helvetica, sans-serif !important;
    font-size: 16px !important;
    margin: 0;
    outline: none;
    text-decoration: none !important;
    color: #000000;
    text-transform: none;
    letter-spacing: 1px;
    font-weight: 700;
    text-shadow: 0 0 1px rgba(255,255,255,0.3);
}

nav a:hover,
nav a:focus {
    outline: none;
}

/* =============================================
   LISTE DU FOOTER — desktop (flex row)
   ============================================= */
.footer-links {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0 6px;
}

/* Séparateur | entre les liens de navigation */
.footer-links > li + li.sep::before {
    content: '|';
    color: #ccc;
    margin-right: 6px;
    font-weight: 300;
}

/* Espaceur flexible */
.footer-links .flex-spacer {
    flex: 1;
}

/* Copyright */
.footer-links .copyright {
    font-family: "Dosis", Arial, Helvetica, sans-serif;
    font-size: 14px;
    color: #555;
    white-space: nowrap;
}

/* Icônes accessibilité & cookies */
.footer-links .no-sep a {
    display: flex;
    align-items: center;
    color: #555;
    transition: color 0.2s;
}
.footer-links .no-sep a:hover {
    color: #3FCFD5;
}

/* Bouton notifications */
#push-footer button {
    display: flex;
    align-items: center;
    gap: 6px;
    background: none;
    border: 1px solid #ccc;
    border-radius: 20px;
    padding: 4px 12px;
    cursor: pointer;
    font-family: "Dosis", Arial, Helvetica, sans-serif;
    font-size: 14px;
    color: #333;
    transition: border-color 0.2s, color 0.2s;
    white-space: nowrap;
}
#push-footer button:hover {
    border-color: #3FCFD5;
    color: #3FCFD5;
}

/* =============================================
   EFFETS HOVER
   ============================================= */

/* Effect 1 */
.cl-effect-1 a::before,
.cl-effect-1 a::after {
    display: inline-block;
    font-size: 26px;
    color: #CFD500;
    opacity: 0;
    transition: transform 0.3s, opacity 0.2s;
}
.cl-effect-1 a::before { margin-right: 10px; content: '|'; transform: translateX(20px); }
.cl-effect-1 a::after  { margin-left: 10px;  content: '|'; transform: translateX(-20px); }
.cl-effect-1 a:hover::before,.cl-effect-1 a:focus::before,
.cl-effect-1 a:hover::after, .cl-effect-1 a:focus::after  { opacity: 1; transform: translateX(0); }

/* Effect 2 */
.cl-effect-2 a:not(.no-cl-effect)::before,
.cl-effect-2 a:not(.no-cl-effect)::after {
    display: inline-block;
    color: #3FCFD5;
    font-size: 20px;
    opacity: 0;
    transition: transform 0.3s, opacity 0.2s;
}
.cl-effect-2 a:not(.no-cl-effect)::before { margin-right: 10px; content: '|'; transform: translateX(20px); }
.cl-effect-2 a:not(.no-cl-effect)::after  { margin-left: 10px;  content: '|'; transform: translateX(-20px); }
.cl-effect-2 a:not(.no-cl-effect):hover::before,.cl-effect-2 a:not(.no-cl-effect):focus::before,
.cl-effect-2 a:not(.no-cl-effect):hover::after, .cl-effect-2 a:not(.no-cl-effect):focus::after { opacity:1; transform:translateX(0); }

/* Effect 4 & 5: slide word — exclure les liens avec .no-cl-effect */
.cl-effect-4 a:not(.no-cl-effect),
.cl-effect-5 a:not(.no-cl-effect) {
    overflow: hidden;
    padding: 0 4px;
    height: 1em;
    display: inline-flex;
    align-items: center;
}
.cl-effect-4 a span,
.cl-effect-5 a span {
    position: relative;
    display: inline-block;
    transition: transform 0.3s;
}
.cl-effect-4 a span::before,
.cl-effect-5 a span::before {
    position: absolute;
    top: 100%;
    content: attr(data-hover);
    font-weight: 700;
    transform: translate3d(0,0,0);
    white-space: nowrap;
}
.cl-effect-4 a:hover span,.cl-effect-4 a:focus span,
.cl-effect-5 a:hover span,.cl-effect-5 a:focus span { transform: translateY(-100%); }

/* Effect 13 */
.cl-effect-13 a { transition: color 0.3s; }
.cl-effect-13 a::before {
    position: absolute; top: 100%; left: 50%;
    color: transparent; content: '•';
    text-shadow: 0 0 transparent; font-size: 1.2em;
    transition: text-shadow 0.3s, color 0.3s;
    transform: translateX(-50%); pointer-events: none;
}
.cl-effect-13 a:hover::before,.cl-effect-13 a:focus::before { color:#fff; text-shadow:10px 0 #fff,-10px 0 #fff; }
.cl-effect-13 a:hover,.cl-effect-13 a:focus { color: #ba7700; }

/* Effect 21 */
.cl-effect-21 a::before,.cl-effect-21 a::after {
    position: absolute; left: 0; height: 2px;
    background: #e95895; content: ''; opacity: 0;
    transition: opacity 0.3s, transform 0.3s;
}
.cl-effect-21 a::before { top: 0;    transform: translateY(-10px); }
.cl-effect-21 a::after  { bottom: 0; transform: translateY(10px); }
.cl-effect-21 a:hover,.cl-effect-21 a:focus { color: #e95895; }
.cl-effect-21 a:hover::before,.cl-effect-21 a:focus::before,
.cl-effect-21 a:hover::after, .cl-effect-21 a:focus::after { opacity:1; transform:translateY(0); }

/* =============================================
   TABLETTE  (≤ 900px)
   ============================================= */
@media screen and (max-width: 900px) {
    .footer-links {
        gap: 4px 8px;
    }
    .footer-links .copyright {
        font-size: 13px;
    }
}

/* =============================================
   MOBILE  (≤ 600px)
   Disposition :
   ligne 1 — liens navigation (centrés, multi-ligne)
   ligne 2 — icônes + copyright alignés ensemble
   ============================================= */
@media screen and (max-width: 600px) {

    .footer-links {
        flex-direction: column;
        align-items: center;
        gap: 16px;
        padding: 10px 8px;
        text-align: center;
    }

    /* Spacer inutile en colonne */
    .footer-links .flex-spacer {
        display: none;
    }

    /* Liens nav : centrés, retour à la ligne autorisé */
    .footer-links .nav-group {
        justify-content: center;
        flex-wrap: wrap;
        gap: 6px 10px;
        width: 100%;
    }

    /* Icônes + copyright : centrés sur une ligne */
    .footer-links .icon-group {
        justify-content: center;
        gap: 16px;
        width: 100%;
    }

    /* Effets slide désactivés sur mobile */
    .cl-effect-4 a,
    .cl-effect-5 a {
        height: auto;
        overflow: visible;
    }
    .cl-effect-4 a span::before,
    .cl-effect-5 a span::before {
        display: none;
    }

    #mod-custom140 nav a {
        font-size: 14px !important;
    }
    .footer-links .copyright {
        font-size: 12px;
    }
}

/* ESPACEMENT A DROITE ET A GAUCHE */
.sppb-row,
.row {
  padding-left: 10px;
  padding-right: 10px;
}


@media (max-width: 900px) and (orientation: landscape) {

    /* ===== RACINE DU PROBLÈME ===== */
    .sppb-container-inner {
        width: 100% !important;
        max-width: 100% !important;
        padding-left: 15px !important;
        padding-right: 15px !important;
    }

    .sppb-section {
        width: 100% !important;
        max-width: 100% !important;
        overflow-x: hidden !important;
    }

    /* ===== ROWS & COLONNES ===== */
    .sppb-row,
    .sppb-row-column {
        width: 100% !important;
        max-width: 100% !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
    }

    /* ===== CARROUSEL (style inline JS non overridable autrement) ===== */
    .sppb-carousel-extended-outer-stage {
        max-width: 100vw !important;
    }
    /* Bloquer le débordement sur le parent du carrousel */
    .sppb-addon-carousel-extended,
    [class*="carousel"] {
        overflow: hidden !important;
    }

    /* ===== SEARCH ===== */
    .search,
    .search__form,
    .search__input,
    .search__info {
        width: 100% !important;
        max-width: 100% !important;
        box-sizing: border-box !important;
    }
}

/* ===== GLOBAL (toutes tailles) ===== */
html, body {
    overflow-x: hidden;
}

*, *::before, *::after {
    box-sizing: border-box;
}

@media (max-width: 900px) and (orientation: landscape) {
    .sppb-carousel-extended-outer-stage {
        overflow: hidden !important;
    }
}

#recherche {
	display: flex;
    align-items: center;
    justify-content: flex-end; /* alignement à droite */
    gap: 10px;
}


/* @media (min-width: 768px) and (max-width: 1024px) and (orientation: landscape) { */
  /*Styles pour tablette en mode paysage

  /* .astroid-contact-info span { */
    /* font-size: 11px !important; */
/* } */

/* .cl-effect-4 a span, .cl-effect-5 a span { */
    /* font-size: 11px !important; */
/* } */


  /* .astroid-framework .astroid-nav>li>.as-menu-item, .astroid-framework .astroid-sidebar-menu>li>.nav-item-inner>.as-menu-item, .astroid-framework .astroid-mobile-menu>.nav-item>.as-menu-item { */
    /* font-size: 20px !important; */
/* } */

    /* .sp-page-builder .row, */
    /* .sp-page-builder .sppb-row, */
    /* .sp-page-builder .sppb-container, */
    /* .sp-page-builder .sppb-container-inner { */
        /* width: 100% !important; */
        /* max-width: 100% !important; */
        /* padding-left: 0px !important; */
        /* padding-right: 0px !important; */
        /* margin: 0 !important; */
    /* } */


/* } */

/* @media (min-width: 768px) and (max-width: 1024px) and (orientation: portrait) { */
    /*Styles pour tablette en mode portrait

    /* .astroid-contact-info span { */
        /* font-size: 11px !important; */
    /* } */

    /* .cl-effect-4 a span, */
    /* .cl-effect-5 a span { */
        /* font-size: 10px !important; */
    /* } */
	
	    /* .sp-page-builder .row, */
    /* .sp-page-builder .sppb-row, */
    /* .sp-page-builder .sppb-container, */
    /* .sp-page-builder .sppb-container-inner { */
        /* width: 100% !important; */
        /* max-width: 100% !important; */
        /* padding-left: 0px !important; */
        /* padding-right: 0px !important; */
        /* margin: 0 !important; */
    /* } */

/* } */

/* @media (max-width: 480px) and (orientation: portrait) { */
  /*Styles pour petits smartphones
  	    /* .sp-page-builder .row, */
    /* .sp-page-builder .sppb-row, */
    /* .sp-page-builder .sppb-container, */
    /* .sp-page-builder .sppb-container-inner { */
        /* width: 100% !important; */
        /* max-width: 100% !important; */
        /* padding-left: 0px !important; */
        /* padding-right: 0px !important; */
        /* margin: 0 !important; */
    /* } */

/* } */

/* @media (min-width: 481px) and (max-width: 767px) { */
  /*Styles pour smartphones larges
    /*Styles pour petits smartphones
  	    /* .sp-page-builder .row, */
    /* .sp-page-builder .sppb-row, */
    /* .sp-page-builder .sppb-container, */
    /* .sp-page-builder .sppb-container-inner { */
        /* width: 100% !important; */
        /* max-width: 100% !important; */
        /* padding-left: 0px !important; */
        /* padding-right: 0px !important; */
        /* margin: 0 !important; */
    /* } */
/* } */


/* @media (min-width: 1025px) and (max-width: 1280px) { */
  /*Styles pour petits écrans d’ordinateur
  	    /* .sp-page-builder .row, */
    /* .sp-page-builder .sppb-row, */
    /* .sp-page-builder .sppb-container, */
    /* .sp-page-builder .sppb-container-inner { */
        /* width: 100% !important; */
        /* max-width: 100% !important; */
        /* padding-left: 0px !important; */
        /* padding-right: 0px !important; */
        /* margin: 0 !important; */
    /* } */
/* } */

/* @media (min-width: 1281px) { */
  /*Styles pour grands écrans
  	    /* .sp-page-builder .row, */
    /* .sp-page-builder .sppb-row, */
    /* .sp-page-builder .sppb-container, */
    /* .sp-page-builder .sppb-container-inner { */
        /* width: 100% !important; */
        /* max-width: 100% !important; */
        /* padding-left: 0px !important; */
        /* padding-right: 0px !important; */
        /* margin: 0 !important; */
    /* } */
/* } */


/* Séparateur automatique uniquement entre les liens du nav-group */
.footer-links .nav-group a + a::before {
    content: '|';
    color: #ccc;
    font-weight: 300;
    margin: 0 8px;
}


/* Bouton Lire la suite aligné en bas à droite pour tous */
.sppb-dynamic-content-collection__item {
  display: flex !important;
  flex-direction: column !important;
}

.sppb-dynamic-content-collection__item > .sppb-addon-wrapper {
  float: none !important;
}

#sppb-addon-wrapper-eeac5d05-8064-4e13-9b50-5ab0022b8189 {
  margin-top: auto !important;
}

.sppb-button-wrapper {
  display: flex !important;
  justify-content: flex-end !important;
}


.sppb-dynamic-content-collection__item {
  display: flex !important;
  flex-direction: column !important;
}

.sppb-dynamic-content-collection__item > .sppb-addon-wrapper {
  float: none !important;
}

#sppb-addon-wrapper-c46b6f5e-c627-4572-a1c6-8281383f0344 {
  margin-top: auto !important;
}

.sppb-button-wrapper {
  display: flex !important;
  justify-content: flex-end !important;
}

#column-id-efaaa759-8e9f-471d-a52e-5a714cec4f4e .sppb-column    {
	Margin : 0 !important;
	padding: 0 !important;
}


ESPACEMENT A DROITE ET A GAUCHE ACTUALITES VIGNETTES

Supprimer le padding de la colonne
/* #column-id-33e8b81d-9475-475d-91c3-204e924fdcb9 { */
  /* padding-left: 0 !important; */
  /* padding-right: 0 !important; */
/* } */

Supprimer la marge de la row si nécessaire
/* #column-wrap-id-33e8b81d-9475-475d-91c3-204e924fdcb9 { */
  /* padding-left: 0 !important; */
  /* padding-right: 0 !important; */
/* } */

Supprimer le padding du addon wrapper de la collection
/* #sppb-addon-wrapper-137466af-b79a-4a08-a381-e0f457133237 { */
  /* padding-left: 0 !important; */
  /* padding-right: 0 !important; */
/* } */


ESPACEMENT A DROITE ET A GAUCHE ACTUALITES DETAILS

La section elle-même
/* #section-id-08679931-6257-419e-8a13-7139ede8a464 { */
  /* padding-left: 0 !important; */
  /* padding-right: 0 !important; */
/* } */

Le container de la row
/* #section-id-08679931-6257-419e-8a13-7139ede8a464 .sppb-row-container { */
  /* padding-left: 0 !important; */
  /* padding-right: 0 !important; */
/* } */

La colonne
/* #column-id-b8bd676b-aa51-469e-b897-5a0f9708bc21 { */
  /* padding-left: 0 !important; */
  /* padding-right: 0 !important; */
/* } */

/* #column-wrap-id-b8bd676b-aa51-469e-b897-5a0f9708bc21 { */
  /* padding-left: 0 !important; */
  /* padding-right: 0 !important; */
/* } */