.rs_mobile{display: none;}
@media (max-width: 800px) {
  /* structure */
  main{padding-top: 0;}
  main>section:first-child{
    margin-top: 0;
  }

  /* typo */
  h2.section:not(.line)::before, h2.section:not(.line)::after {
    display: none;
  }

  /* Arranger la barre supérieure */
  #menu {
    --header_h: 90px;
    justify-content: space-between;
  }
  #menu header{
   /* order: 2;
    position: absolute;
    left: 50%;
    transform: translateX(-50%);*/
  }
  #menu .logo{
    font-size: 90px;
  }
  #menu .rs{
    order: 3;
    display: none
  }
  #menu .rs_mobile{display: block;text-align: center; margin-top: 40px}
  #menu .rs_mobile .rs{display: block}
  .main_menu .rechercher input{
    width: 99px;
  }
  #menu #menu_toggle{
    order: 1;
    margin-right: 7px;
  }  
  /* cacher la nav par défaut */
  .main_menu {
    position: absolute;
    top: 100%;
    left: 0;
    width: 100%;
    background: white;
    display: none;
    padding: 30px 0 30px;
    z-index: 1000;
  }

  /* cacher la nav par défaut */
  .rs {
/*    position: absolute;
    right: 90px;*/
  }

  /* montrer au clic JS */
  .main_menu.open {
    display: block;
  }

  /* menu vertical mobile */
  .main_menu ul {
    flex-direction: column;
    gap: 1rem;
    align-items: center;
  }

  /* montrer le burger */
  .burger_bt {
    display: flex;
  }

  #menu{
    border-bottom: 1px solid #000;
    padding: 0 20px;
  }
  .layout {
    display: flex;
    flex-flow: column;
    margin: 10px 0;
    gap:  10px;
  }
  #page .layout section{
    width: 100%;
  }
  #page .contenu{
    padding: 0 15px;
  }
  .content {
    padding: 15px;
  }

  footer {
    height: auto;
    display: flow-root;
  }
  footer .layout {
    display: flex;
    flex-flow: column;
    margin: 10px 0;
    gap:  10px;
  }
  footer .layout .texte{order: 1}
  footer .layout .logo{order: 2; width: auto}
  footer .layout .liens{order: 3; align-items: center;}


  #page main>section {
/*    margin: 30px auto;
*/  }


  #page > section>h2 {
    text-align: left;
    font-size: 20px;
    padding: 15px;
    margin: 0 0 20px;
    border-top: 1px solid var(--colorbg);
  }
   #page > section>h2.line {
      border-top: 1px solid var(--colorbg);
   }
  #page > section>h2 span{
    background: transparent;
    padding: 0;
  }
  #page > section>h2:before{
    display: none;
  }
  #page > section>h2:after{
    display: none;
  }
  #page > section:first-child h2.section{
    border-top: none;
  }

 
  /* ACCUEIL */

  #animation {
    width: 100%;
    margin-bottom: 60px;
  }

  #animation .visuel{
    width: 100%;
    height: auto;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-top: 20px;
    flex-flow: column;
    gap: 40px;
  }

  .visuel #carte_anime{
    width: 100%; 
    transition: all 1s;
  }

  .visuel #chiffres{
    width: 100%; 
    height: 0%;
    transition: all 1s;
    overflow: hidden;
    max-height: 0px;
  }

  .visuel.part2 #carte_anime{
     width: 100%; 
  }
  #chiffres .layout{
    flex-flow: row;
  }
  .visuel.part2 #chiffres{
    width: 100%; 
    height: 100%;
    max-height: 500px;
  }
  
  #animation .texte{
    margin-top:30px;
  }

#chiffres .item span.chiffre{
  font-size: 38px;
  margin-bottom: 1px;
}
#chiffres .item span.soustitre {
  font-size: 16px;
}
#chiffres .item span._million, #chiffres .item span._millions {
  font-size: 25px;
}

  #actualites {
    width: 100%;
    height: auto;
    margin: 0 0 30px;
  }

  #actualites > h2 {
    border-top: 1px solid var(--colorbg);
    text-align: left;
    font-size: 20px;
    padding: 15px;
    margin: 0 0 20px;
    width: 100%;
  }

  /* PUBLICATIONS */

  .grid_view .publications_grid .afficheGrille{display: none}

  .sidebar {
    width: 100%;
    max-width: 100%;
    min-width: auto;
    padding: 1.5rem;
    box-sizing: border-box;
    padding: 15px;
    position: sticky;
    top: 0;
    background: #fff;
    z-index: 1;
  }

  #listBtn, #gridBtn{display: none;}
  .publications section.content{
    padding: 0px 0;
  }
  #filtres h4,
  #filtres .filtres_tags,
  #flat-slider{
    display: none;
  }
  .search-box{
    max-width: 100%;
  }
  .search-box .search-icon {
    left: 16px;
    top: 19px;
  }
  .search-box input {
    padding: 10px 0px 10px 40px;
    border: 1px solid var(--maincolor);
  }



  .grid_view .grid-item,
  .list_view .grid-item {
    width: 100%;
    border-top: 1px solid var(--maincolor);
    border-bottom: none;
    display: block;
    transform-origin: top left;
    height: auto;
  }
  .grid_view .grid-item .publi,
  .list_view .grid-item .publi{
    flex-flow: row;
    width: auto;
    height: auto;
    margin: 15px 0 5px;
    padding: 0;
    justify-content: normal;
    border: none;
  }
  .grid_view .grid-item .pdf-buttons,
  .list_view .grid-item .pdf-buttons{
    position: relative;
    top: auto;
    right: auto;
    width: 100px;
    justify-content: center;
    margin-bottom: 10px;
    margin-top: -30px;
  }
  .grid_view .publi .apercu,
  .list_view .publi .apercu {
    height: auto;
    margin-top: auto;
    margin-bottom: auto;
    width: 100px;
    text-align: center;
    display: flex;
    justify-content: center;
    align-items: center;
    padding-bottom: 30px;
  }
  .grid_view .publi .apercu img,
  .list_view .publi .apercu img {
    height: 90px;
    width: 70px;
  }
  .grid_view .publi .texte,
  .list_view .publi .texte {
    width: calc(100% - 115px);
  }
  .grid_view .publi .texte h2,
  .list_view .publi .texte h2 {
    font-size: 21px;
  }
  .list_view .publi .texte .type_publication,
  .grid_view .publi .texte .type_publication {
    position: relative;
    top: auto;
  }


  /* page Publication */
  .publication .titre {
    margin-bottom: 20px;
    margin-top: 30px;
  }


  /* page Datavisualisation */

  .encart_plateforme{
    flex-flow: column;
  }
  .encart_plateforme div.col{
    width: 100%;
  }
    .carteinteractives_grid{
  --nbrCol : 2;
  }
  .carteinteractive.grid-item {
   /* width: 100%;
    margin: 0;*/
  }


  /* Équipe */
  section div.equipe {
    display: flex;
    gap: 15px;
  }
  div.personne {
      width: 100%;
      padding: 10px;
      text-align: center;
      padding: 0;
  }





}