/*
Theme Name: Focus 2030
Text Domain: moduloo
Version: 2.2
Tested up to: 6.2
Requires at least: 4.7
Requires PHP: 5.2.4
Author URI: https://wordpress.org/
Theme URI: https://wordpress.org/themes/twentytwenty/
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html

All files, unless otherwise stated, are released under the GNU General Public
License version 2.0 (http://www.gnu.org/licenses/gpl-2.0.html)

This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned
with others.
*/

@font-face {
  font-family: 'din_condensedbold';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url(/wp-content/themes/focus2030/assets/fonts/dincondensed-bold-webfont.woff2) format('woff2');
}
@font-face {
  font-family: 'din_condensed';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url(/wp-content/themes/focus2030/assets/fonts/din_black_regular-webfont.woff2) format('woff2');
}
@font-face {
  font-family: 'source_sans_3';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/wp-content/themes/focus2030/assets/fonts/SourceSans3-VariableFont_wght.ttf) format('truetype');
}
@font-face {
  font-family: 'source_sans_3_extrabold';
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url(/wp-content/themes/focus2030/assets/fonts/SourceSans3-VariableFont_wght.ttf) format('truetype');
}
@font-face {
  font-family: 'source_sans_3_semibold';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(/wp-content/themes/focus2030/assets/fonts/SourceSans3-VariableFont_wght.ttf) format('truetype');
}
@font-face {
  font-family: 'source_sans_3_bold';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(/wp-content/themes/focus2030/assets/fonts/SourceSans3-VariableFont_wght.ttf) format('truetype');
}






HTML {
  height: 100%;
  width: 100%;
  margin: 0;
  padding: 0;
font-size: 62.5%;  
}

BODY{
	position:relative;
	width: 100%;
  margin: 0;
  padding: 0;	
	font-size: 2rem;  
	color:black;
	background:white;
	line-height:1.4;
font-family: 'source_sans_3';
overflow-x:hidden;
	}
IMG{
max-width:100%;
height:auto;
}

*{
box-sizing: border-box;
}
/* =========================================================
             HEADER
 ========================================================= */
#site-header{
	width:100%;
	background:white;
	position:relative;
}
#site-header>div:first-of-type{
	max-width: 1340px;
	position:relative;
	margin:0 auto;
}
.site-logo{
width: 336px;
padding: 20px 0;
margin:0 0 0 1%;
}
 
#barre_noire{
background:#1a1a1a;
height:54px;
color:white;
text-align:right;
letter-spacing: 1px;
}
#barre_noire div{
max-width:1340px;
position:relative;
top:-10px;
padding: 0 30px 0 20px;
margin:0 auto;
}
.lang-item{
display:inline-block;
}
#barre_noire A{
 font-family: 'source_sans_3_bold';
text-transform:uppercase;
color:white;
font-size:1.3rem;
font-weight:bold;
padding:5px 10px;
}
.oblique{
position: relative;
  background: white;
  height: 1px;
  width: 30px;
  transform: rotate(-68deg);
  display: inline-block;
  top: 16px;
}
#barre_noire A.btcontact{
background:white;
color:black;
margin:0 10px 0 0;
border-radius:2px;
}
.bluesky, .linkedin{
display: inline-block;
width:29px;
height:29px;
border-radius:30px;
background:url(/wp-content/themes/focus2030/assets/images/bluesky.png) no-repeat center center white;
margin: -10px 6px;
}
.linkedin{
background:url(/wp-content/themes/focus2030/assets/images/linkedin.png) no-repeat center center white;
}
.menu_outils{
background:#f2f2f2;
height:100px;
text-align:center;
overflow-x:auto;
overflow-y:clip;
}
.menu_outils div{
width:700px;
margin: 0 auto;
}
.btoutil{
display: inline-block;
min-width:125px;
height:65px;
border-radius:30px;
margin:15px 20px;
border:1px solid #0a97d9;
box-shadow: 4px 4px 0px 0px #0a97d9;
transition:all 1s ease;
background-size:80%;
}
.btexpertise{
border:1px solid #fcc74c;
box-shadow: 4px 4px 0px 0px #fcc74c;
background:url(/wp-content/themes/focus2030/assets/images/btexpertise.svg) no-repeat center center white;
background-size:90%;
}
.btdata{
border:1px solid #e5243b;
box-shadow: 4px 4px 0px 0px #e5243b;
background:url(/wp-content/themes/focus2030/assets/images/btdata.svg) no-repeat center center white;
background-size:90%;
}
.btmedia{
border:1px solid #ba4c81;
box-shadow: 4px 4px 0px 0px #ba4c81;
background:url(/wp-content/themes/focus2030/assets/images/btmedia.svg) no-repeat center center white;
background-size:90%;
}
.btagenda{
border:1px solid #0a97d9;
box-shadow: 4px 4px 0px 0px #0a97d9;
background:url(/wp-content/themes/focus2030/assets/images/btagenda.svg) no-repeat center center white;
background-size:80%;
}
.btactif{
box-shadow: 4px 4px 0px 0px #f2f2f2;
position:relative;
left:4px;
top:4px;
z-index:10;
}
#site-header .slogan{
position: absolute;
  top: 100%;
  width: 100%;
  background: #fcc74c;
  display: none;
  font-size: 2.2rem;
  text-align: center;
  padding: 9px;
  font-family: 'source_sans_3_semibold';
  z-index: 5;
}
#site-header .slogan br{
display:none;
}
#site-header #slogan_data{
background:#e5243b;
color:white;
}
#site-header #slogan_media{
background:#ba4c81;
color:white;
}
#site-header #slogan_agenda{
background:#0a97d9;
color:white;
}

#claque_newsletter{
display:none;
position: fixed;
  left: 0;
  top: 0;
height: 100vh;
width: calc(100% - 30px);
  background: rgb(0,0,0,0.5);
  z-index: 20;
  padding: 40px;
}
#claque_newsletter>div{
max-width: 900px;
  background: white;
  padding: 40px;
  margin: 0 auto;
  overflow: scroll;
  height: 100%;
}

#btrecherche{
  background: url(/wp-content/themes/focus2030/assets/images/loupe.png) no-repeat center center;
  width:50px;
  height:50px;
position:absolute;
top: 43px;
  right: 30px;
  border:0 none;
  cursor:pointer;
}
#formulaire_recherche{
display:none;
position: absolute;
  right: 150px;
  top: 0;
width: 690px;
  max-width: 690px;
   text-align: right;
   padding:0 0 30px 0;
   z-index: 60;
  }
  
/* =========================================================
             MENU PRINCIPAL
 ========================================================= */
.primary-menu{
position:absolute;
top: 35px;
right: 140px;
}
.primary-menu>ul{
max-width:1400px;
margin:0 auto;
padding:0;
display: block;
text-align:center;
}
.primary-menu li{
display:inline-block;
list-style: none;
margin:0;
padding:0;
}

.primary-menu li a{
display: inline-block;
  position: relative;
  margin: 15px 0;
  padding: 0px 30px 0 10px;
  color: black;
  text-decoration: none;
  font-size: 2rem;
  font-family: 'source_sans_3_extrabold';
  text-transform: uppercase;
  letter-spacing: 1px;
}	
.primary-menu li a:after{
content:"";
position:absolute;
left:10px;
bottom:-10px;
width:60px;
height:1px;
background:black;
}
.primary-menu li a:hover:after{
height:4px;
}
.primary-menu li:hover > .sub-menu {
  animation: apparitionSousMenu 1s forwards;
}
.sub-menu{
position:absolute;
background:white;
overflow: hidden;
max-height: 0;
padding:0;
z-index:50;
width: 300px;
top: 58px;
}
.sub-menu li{
display:block;
text-align:left;
list-style: none;
margin:0;
padding:0;
}
.sub-menu li A{
	display:block;
	width:100%;
margin:0;
padding:18px 20px 15px 10px;
border:0 none;
font-size: 1.8rem;
font-weight: normal;
}
.sub-menu li a::after {
  bottom: 0px;
}

@keyframes apparitionSousMenu {
  0% {
    box-shadow: 0px 3px 3px 1px rgba(0,0,0,0);
    border-top: 3px solid white;
  }
  30% {
    box-shadow: 0px 3px 3px 1px rgba(0,0,0,0.3);
  }
  100% {
    max-height: 50em;
    border-top: 3px solid white;
    box-shadow: 0px 3px 3px 1px rgba(0,0,0,0.3);
  }
}

.bouton_actif{
	background:white;
	color:black !important;
}


 
/* =========================================================
             MENU SMARTPHONE
 ========================================================= */ 
#bouton_menu{
	display:none;
width: 35px;
  height: 35px;
  position: absolute;
top: 18px;
  right: 15px;
  cursor: pointer;
  background: url(/wp-content/themes/focus2030/assets/images/bt_menu.png) no-repeat center center;
  border-radius: 5px;
}	
.btmenuactif{
background: url(/wp-content/themes/focus2030/assets/images/bt_fermer.png) no-repeat center center;
}
#menu_smartphone{
	display:none;
	width:100%;
	background:white;
	position:absolute;
top: 133px;
	left:0;
	z-index:50;
	padding:0 0 50px 0;
}
 #menu_smartphone ul{
margin:0;
 }
 #menu_smartphone li{
	 list-style:none;
 }
  #menu_smartphone li A{
display: inline-block;
  position: relative;
  margin: 0;
  padding: 0px 30px 0 0;
  color: black;
  text-decoration: none;
  font-size: 1.6rem;
  font-family: 'source_sans_3_extrabold';
  text-transform: uppercase;
  letter-spacing: 1px;
 }
 
#menu_smartphone .sub-menu li A:after{
content:"";
position:absolute;
left:0;
bottom:0;
width:60px;
height:1px;
background:black;
}
#menu_smartphone .sub-menu li A:hover:after{
height:4px;
}
#menu_smartphone  .sub-menu {
  max-height: none;
  padding:10px 0 20px 30px;
  position:relative;
  left:0;
  top:0;

 }
  #menu_smartphone .sub-menu li A{
  max-height: none;
  padding:10px 0;
 }

#menu_smartphone  .second-menu_smartphone li A{
	text-transform:none;
 }
 #menu_smartphone  .second-menu_smartphone{
margin:30px 0  0 0;
 }
 
 .partiegauche{
 padding:10px 30px 30px;
 background:black;
 text-align:center;
 }
 
#menu_smartphone .partiegauche li  a, .partiegauche  a{
  color:white;
  margin:15px 10px 0 10px;
  padding:5px;
  border:0 none;
  font-size: 2rem;
  font-family: 'source_sans_3_semibold';
  }
 #menu_smartphone .partiegauche li  a{
  margin:0 10px 0 10px;
  } 
  	.partiegauche{
	display:none;
	}
 /* =========================================================
             FOOTER
 ========================================================= */ 
#site-footer{
background: #f2f2f2;
color:black;
}	
.footer-logo .custom-logo{
width: 300px;
}

#site-footer section{
padding: 0 40px;
}	
.footerodd{
background:#0a97d9;
padding:20px 0;
}
.touslesodd{
box-shadow: -8px 9px 0px 0px #0059b9;
}
.bloccompteur{
padding: 89px 0 0 0;
  font-size: 3.5rem;
  font-family: 'source_sans_3_bold';
  color: white;
  margin: 10px 0;
  text-transform:uppercase;
 }
#compteur div{
float:left;
background:white;
position:relative;
margin:10px 1px;
width:35px;
height:60px;
overflow:hidden;
box-shadow: -8px 9px 0px 0px #0059b9;
z-index:2;
}
#compteur div:nth-child(3n+2){
z-index:1;
}
#compteur div.sepdeuxpoints{
background: transparent;
  width: 20px;
  box-shadow: none;
  padding: 2px 0 0 1px;
  font-size: 4rem;
  color: white;
}
#compteur  .countdown-digit .digit {
  position: absolute;
  background:transparent;
 box-shadow:none; 
  top: -100%;
  left: 0;
  width: 100%;
  height: 100%;
  line-height: 42px;
  transition: all 0.5s ease;
  text-align:center;
font-size: 4rem;
  color: #0a97d9;
}
#compteur  .unitecompteur{
float:left;
background:transparent;
position:relative;
margin:0;
width:auto;
height:auto;
overflow:visible;
box-shadow: none;
}
.unitecompteur:after{
content: "ans";
  position: absolute;
  bottom: -20px;
  color: white;
  text-transform: uppercase;
  z-index: 10;
  height: 20px;
  font-size: 1.6rem;
  left: 0;
  width: 90%;
  text-align: center;
}
#mois:after{
content: "mois";
}
#jours:after{
content: "jours";
}
#heures:after{
content: "heures";
}
#minutes:after{
content: "minutes";
}
#secondes:after{
content: "secondes";
}

.btrezo{
position: absolute;
  top: -26px;
left:calc(50% - 30px);
  width: 50px;
  height: 50px;
  border-radius: 100px;
  box-shadow: 2px 4px 0px 0px black;
  background: white;
  text-align: center;
  padding: 7px 0 0 0;
  border: 1px solid black;
}
.btrezo:hover{
box-shadow: none;
top: -23px;
left:calc(50% - 27px);
}
.btrezo img{
max-width: 70%;
}
.bt_bluesky{
left:calc(50% - 120px);
}
.bt_bluesky:hover{
left:calc(50% - 117px);
}
.bt_insta{
left:calc(50% + 60px);
}
.bt_insta:hover{
left:calc(50% + 63px);
}
#site-footer h4{
color:white;
margin:0 0 30px 0;
font-size: 2.5rem;
}	
#site-footer  .external{
margin:0 10px;
}	
#site-footer  .deux_colonnes{
padding:0 0 20px 0;
	max-width:1620px;
	position:relative;
	margin:0 auto;
}

.footer_abonnement{
padding: 10px 20px 40px 20px;
background:white;
}
.footer_abonnement h2{
color:black;
text-transform:uppercase;
font-size:2.5rem;
text-align:center;
font-family: 'source_sans_3_extrabold';
}

.footer_milieu{
padding:50px 0;
position:relative;
border-top:1px solid black;
}

.menu-footer{
position:absolute;
right:130px;
top:70px;
}
.menu-footer li{
display:inline-block;
list-style: none;
margin:0;
padding:0;
}

.menu-footer li a{
display: inline-block;
position:relative;
  margin: 15px 0;
  padding: 0px 20px 0 0;
  color: black;
  text-decoration: none;
  font-size: 1.5rem;
font-family: 'source_sans_3_extrabold';
  text-transform:uppercase;
}	
#menu-item-3879 a{
border: 1px solid black;
  border-radius: 30px;
  font-size: 1.7rem;
  box-shadow: 3px 4px 0px 0px black;
  background: white;
  padding: 10px 10px 8px 10px;
  line-height: 1;
}	
#menu-item-3879 a:hover{
box-shadow: none;
top: 3px;
left:3px;
}
.menu-footer li a:after{
content:"";
position:absolute;
left:0;
bottom:-10px;
width:60px;
height:1px;
background:black;
}
.menu-footer li:hover a:after{
content:"";
position:absolute;
left:0;
bottom:-10px;
width:60px;
height:3px;
background:black;
}
#menu-item-3879 a:after{
display:none;
}
.bthautpage{
display:none;
position: fixed;
  right: 30px;
  bottom: 5px;
  z-index: 500;
  width: 50px;
  opacity:0.5;
   transition:all 1s ease;
}
.bthautpage:hover{
  opacity:1;
  bottom: 10px;
}
.footer_bas{
background:url(/wp-content/themes/focus2030/assets/images/motif-footer.png) repeat center center;
text-align:right;
color:#27a2dc;
font-size:1.5rem;
padding:20px 50px;
}
 /* =========================================================
     GENERALITES
 ========================================================= */ 
#site-content{

}
.clear{
clear:both;
width: 100%;
height: 1px;
}
main{
padding: 30px 0;
margin:0 auto;
}
.of{
overflow:hidden;
}

.colonnes_2_1{
  display: grid;
  position:relative;
  grid-template-columns: 2fr 1fr;
column-gap: 90px;
  row-gap: 30px;
} 
.colonnes_2_1 div{
  position:relative;
  }
.trait_v:after{
position:absolute;
right:-50px;
top:0;
content:"";
width:1px;
height:95%;
background:#cccccc;
} 
.trait_h, .trait_h1{
position:relative;
margin:0 0 50px 0;
} 
.trait_h1:last-of-type{
margin:0 0 20px 0;
} 
.trait_h:not(:nth-last-child(-n+3)):after, .trait_h1:not(:last-of-type):after{
position: absolute;
  left: 0;
  bottom: -30px;
  content: "";
  width: 100%;
  height: 1px;
  background: #cccccc;
} 
.trait_h1:not(:last-of-type):after{
  bottom: -30px;
} 
 .deux_colonnes {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  column-gap: 70px;
  row-gap: 30px;
  padding: 0 0 40px 0;
} 
 .colonnes5_4 {
  display: grid;
  grid-template-columns: 6fr 4fr;
  column-gap: 100px;
  row-gap: 30px;
  padding: 0 0 40px 0;
} 
 .colonnes4_5 {
  display: grid;
  grid-template-columns: 4fr 6fr;
  column-gap: 100px;
  row-gap: 30px;
  padding: 0 0 40px 0;
} 
section.deux_colonnes {
column-gap: 120px;
}
.trois_colonnes {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  column-gap: 50px;
  row-gap: 30px;
} 
.quatre_colonnes {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  column-gap: 50px;
  row-gap: 30px;
  padding: 10px 0;
} 
.lien_bloc, .lien_petitbloc, .lien_theme{
display:block;
text-decoration:none;
color:black;
}	
.lien_theme{
background:red;
color:white;
font-size:2.5rem;
padding:20px;
}
.lien_theme img{
display:block;
position:relative;
height:150px;
width:auto;
margin:20px auto;
}
.cadreimage{
border:2px solid #0a97d9;
position:relative;
z-index:10;
box-shadow: -8px 9px 0px 0px #b5e0f4;
margin:0 0 30px 0;
 transition: box-shadow 1s ease;
}
.cadreimage:hover{
  overflow: hidden;
box-shadow: -8px 9px 0px 0px #b5c2f4;
}
.cadreimage_oblique {
position:relative;
}
.cadreimage_oblique div{
position:absolute;
background:#0a97d9;
width:100%;
height:100%;
transform:rotate(-6deg);
}
.image-container {
  position: relative;
  width: 98%; /* La largeur du conteneur peut être ajustée selon vos besoins */
  padding-bottom: 62%; /* 4/3 en pourcentage (3 / 4 * 100) */
 margin: 0 0 14px 8px;
}
.image-carre {
position: relative;
  width: 70px;
  padding-bottom: 70px;
  margin: 0 10px 0 0;
  float:left;
}
.image-rectangle{
position: relative;
  width: 210px;
  padding-bottom: 140px;
  margin: 0 30px 0 0;
  background: #F0F0F0;
  float: left;
}

.image-container img, .image-carre img, .image-enquete img , .image-rectangle img {
  position: absolute;
  width: 100%;
  height: 100%;
  object-fit: cover; /* Ajuste l'image pour remplir la zone définie */
 transition: all 1s ease;
}
.image-container img:hover, .image-carre img:hover, .image-enquete img:hover , .image-rectangle img:hover {
 transform: scale(1.1);
}
.image_vignette img {
  position: relative;
  width: 70%;
  height: auto;
  z-index:5;
  display: block;
  margin:0 auto;
  padding: 27px 0 0 0;
}
.lien_petitbloc{
	margin:0 0 15px 0;
}

.gdescriptif{
font-size:2.2rem;
margin:0;
}
.descriptif{
font-size:1.8rem;
margin:10px 0 0 0;
}
.descriptif p{
margin:0;
}
.lien_bloc .titre_lien{
font-size:2.8rem;
margin:25px 0 0 0;
font-family: 'source_sans_3_extrabold';
}

.spip_documents_left {
  float: left;
  margin-right: 15px;
  margin-bottom: 5px;
}
table.spip{
border: 1px solid #D0D0D0;
  background: #FBFBFB;
  max-width: 800px;
  margin: 0 auto;
  border-radius:5px;
  padding: 21px;
}
/* =========================================================
       PAGE THEME
 ========================================================= */ 
.soustitretheme{
text-align:center;
font-family: 'source_sans_3_extrabold';
font-size:2.5rem;
text-transform:uppercase;
position:relative;
top:-30px;
}

.soustitretheme span{
display: inline-block;
  font-size: 2rem;
  text-transform: uppercase;
  position: relative;
  top: -2px;
  border-radius: 50px;
  border: 1px solid black;
  width: 20px;
  height: 20px;
  line-height: 1;
  padding: 0;
  left: -11px;
font-family: 'source_sans_3';
}

.encart_tri{
margin: 20px auto 130px auto;
max-width: 1000px;
}
.encart_tri p{
display:inline-block;
float:left;
font-family: 'source_sans_3_extrabold';
  text-transform: uppercase;
  border-top: 2px solid black;
  border-bottom: 2px solid black;
  padding: 6px 0;
  margin: 15px 20px;
  position: relative;
  top: 9px;
  width: 70px;
}

.encart_tri div{
display:inline-block;
width: 310px;
  float: left;
  padding: 10px 15px;
  margin: 10px 20px 10px 0px;
}
.pagination{
text-align:center;
}
.page-numbers{
color: black;
  font-size: 1.9rem;
  font-family: 'source_sans_3_semibold';
  display: inline-block;
margin: 10px 7px;
  border: 0 none;
  padding: 1px 8px;
  position:relative;
}
.next:after{
position: absolute;
  right: -33px;
  content: "";
  background: url(/wp-content/themes/focus2030/assets/images/next.png) no-repeat center center;
  width: 30px;
  height: 30px;
  top: -2px;
}
.prev:after{
position: absolute;
  left: -33px;
  content: "";
  background: url(/wp-content/themes/focus2030/assets/images/precedent.png) no-repeat center center;
  width: 30px;
  height: 30px;
  top: -2px;
}
.current{
text-decoration:underline;
  font-family: 'source_sans_3_extrabold';
   text-underline-offset: 6px;
}
/* =========================================================
        HOME PAGE 
 ========================================================= */ 
 main.homepage{
 max-width:none;
 }
 
.alerte{
position:relative;
}
.alerte .hachures_bleue{
position:absolute;
top:150px;
left:-30px;
height:50%;	
width:1000px;
}
.alerte .deux_colonnes{
position:relative;
-webkit-box-shadow: -3px 8px 15px 0px rgba(0,0,0,0.56); 
box-shadow: -3px 8px 15px 0px rgba(0,0,0,0.56);
margin:60px auto;
}
.alerte .deux_colonnes>div{
position:relative;
padding: 110px 50px 20px 50px;
 }
 .alerte .deux_colonnes>div:first-of-type{
padding: 10px 0 20px 40px;
 }
BODY.home H1, .traitrouge{
font-family: 'source_sans_3_extrabold';
position:relative;
text-align:left;
text-transform:uppercase;
font-size: 4rem;
margin: 60px 0 60px 0;
line-height: 1.3;
text-align:left;
}
BODY.home H1:first-of-type{
margin: 20px 0 60px 0;
}
BODY.home  H1:after, .traitrouge:after{
content: "";
  position: absolute;
  right: calc(100% - 100px);
  bottom: -20px;
  width: 400px;
  height: 3px;
  background: #e5243b;
  left: auto;
}
.lien_bloc h2, .homepage h2{
font-family: 'source_sans_3_bold';
font-size:3.5rem;
color:black;
margin: 0 0 20px 0;
line-height: 1.2;
letter-spacing:0.2px;
}
.lien_bloc h3{
font-family: 'source_sans_3_bold';
font-size:2.4rem;
color:black;
margin:0 0 10px 0;
}

.breve{
padding:30px 0;
background:#f2f2f2;
margin: 30px 0 50px 0;
overflow: auto;
}
::-webkit-scrollbar {
  width: 4px; /* Largeur de la barre de défilement verticale */
  height:4px;
}

/* Piste de la barre de défilement */
::-webkit-scrollbar-track {
  background: #f1f1f1; /* Couleur de fond de la piste */
  border-radius: 4px;
}

/* Pouce (la partie mobile) de la barre de défilement */
::-webkit-scrollbar-thumb {
  background: #888; /* Couleur du pouce */
  border-radius: 4px;
}
.titre_fil{
float:left;
width:100px;
font-family: 'source_sans_3_extrabold';
font-size:1.6rem;
padding:0 20px 0 0;
}
p.titre{
float:left;
font-family: 'source_sans_3_extrabold';
font-size:1.6rem;
padding:0 20px 0 0;
}
p.theme_breve{
font-family: 'source_sans_3';
font-size:1.6rem;
color:#29a4de;
margin: 0;
}

.conteneur_breve{
width:2000px
}
.conteneur_breve .lien_bloc{
float:left;
width:310px;
height:190px;
padding:0 25px 0 20px;
overflow:scroll;
font-size:1.6rem;
}

.blocnewsletter{
background:#f6f7fb;
font-size:2.5rem;
text-align:center;
margin:50px 0;
}
.blocnewsletter p{
max-width:870px;
margin:0 auto;
}
.blocpartenaires{
background:white;
font-size:2.8rem;
text-align:center;
margin: 50px 0 0 0;
}
div.blocnewsletter section, div.blocpartenaires section{
border-top:1px solid black;
border-bottom:1px solid black;
padding:30px;
padding: 30px 30px 20px 30px;
}
.blocpartenaires section{
border-bottom:none;
}
.blocnewsletter h2, .blocpartenaires h2{
font-size:3.3rem;
font-family: 'source_sans_3_semibold';
text-transform:uppercase;
display: block;
  border: 1px solid black;
  border-radius: 30px;
  padding: 7px 30px;
  background: white;
  position: relative;
  top: -54px;
  color: black;
  line-height: 1;
  margin: 0 auto;
  width: fit-content;
  letter-spacing: 1.4px;
}

.mono_champ{
position:relative;
text-align:center;
max-width:600px;
margin: 36px auto;
}
.mono_champ.inverse{
margin:36px auto;
}
.mono_champ input{
width:100%;
border-radius:5px;
border:1px solid black;
background:white;
height:50px;
font-size:2rem;
line-height:100%;
padding: 5px 128px 5px 20px;
}
.mono_champ input[type=button], .mono_champ input[type=submit]{
position: absolute;
  width: fit-content;
  right: 2px;
  top: 5px;
  height: 40px;
  background: black;
  color: white;
  text-transform: uppercase;
  font-family: 'source_sans_3_bold';
  padding: 10px;
  line-height: 1;
  min-height: 0;
border-radius: 5px;
  border: 1px solid black;
  margin: 0;  
  padding: 0 10px;
  cursor:pointer;
  transition:all 1s ease;
}
#formulaire_recherche.mono_champ input[type=button], #formulaire_recherche.mono_champ input[type=submit]{
  top: 10px;
  }
.mono_champ input[type=button]:hover, .mono_champ input[type=submit]:hover{
  background:white ;
  color: black;
}
input::placeholder{
color:#b3b3b3;
}
.logo_agenda{
display:block;
padding:0 10px 20px 0;
border-bottom:4px solid #0a97d9;
margin:30px 0 40px 0;
width:200px;
}
.logo_data{
display:block;
padding:0 10px 20px 0;
border-bottom:4px solid #4c9f38;
margin:30px 0 40px 0;
width:200px;
}
.logo_expertise{
display:block;
padding:0 10px 20px 0;
border-bottom:4px solid #fcc30b;
margin:30px 0 40px 0;
width:200px;
}
.logo_media{
display:block;
padding:0 10px 20px 0;
border-bottom:4px solid #ba4c81;
margin:30px 0 40px 0;
width:200px;
}

.lien_agenda0{
line-height: 1;
  display: inline-block;
  padding: 12px 10px 8px 50px;
background:url(/wp-content/themes/focus2030/assets/images/agenda0.png) no-repeat 10px center;
color:#0a97d9;
border:1px solid #0a97d9;
border-radius:30px;
font-size:2rem;
box-shadow: 4px 4px 0px 0px #0a97d9;
text-transform:uppercase;
margin: 0 10px 10px 10px;
}
.lien_agenda0:hover{
box-shadow: none;
position:relative;
top:3px;
left:3px;
}
.lien_agenda1, .lien_agenda2, .lien_agenda3, .lien_agenda4{
display: inline-block;
  padding: 12px 10px 12px 60px;
  background: url(/wp-content/themes/focus2030/assets/images/calendrier.png) no-repeat 20px center;
  background-size:30px;
  color: #0a97d9;
  font-size: 2rem;
  margin: 5px 10px 5px 0;
     transition:all 1s ease;
}
.lien_agenda1:hover, .lien_agenda2:hover, .lien_agenda3:hover, .lien_agenda4:hover{
  background: url(/wp-content/themes/focus2030/assets/images/calendrier.png) no-repeat 20px 45%;
  background-size:35px;  
}
.hachures_bleue,.hachures_verte,.hachures_jaune, .hachures_violet{
font-size:2.3rem;
line-height: 1.2;
font-family: 'source_sans_3_semibold';
padding: 10px 60px 10px 60px;
position:relative;
  background-image:
    /* Coin blanc */
    linear-gradient(120deg, white 56%, transparent 57%),
    /* Lignes orange */
    url("/wp-content/themes/focus2030/assets/images/hachure_bleue.png");
    
  background-repeat: no-repeat, repeat;
  background-position: top left, 0 0;
  background-size: auto, 15px 25px; 
}
.hachures_verte{
  background-image:
    /* Coin blanc */
    linear-gradient(120deg, transparent 37%, white 21%),
    /* Lignes orange */
    url("/wp-content/themes/focus2030/assets/images/hachure_verte.png");
	}
.hachures_verte .cadreimage_oblique div{
position:absolute;
background:#4c9f38;
width:100%;
height:100%;
transform:rotate(6deg);
}	
.bleu.mono_champ input{
border:1px solid #0a97d9;
}
.bleu.mono_champ input[type="button"], .bleu.mono_champ input[type="submit"]{
background:#0a97d9;
}
.bleu.mono_champ input[type="button"]:hover, .bleu.mono_champ input[type="submit"]:hover{
background:white;
color:#0a97d9;
}
.orange.mono_champ input{
border:1px solid #fd6925;
}
.orange.mono_champ input[type="button"]{
background:#fd6925;
}
.orange.mono_champ input[type="button"]:hover, .orange.mono_champ input[type="submit"]:hover{
background:white;
color:#fd6925;
}
.vert.mono_champ input{
border:1px solid #4c9f38;
}
.vert.mono_champ input[type="button"]{
background:#4c9f38;
}
.vert.mono_champ input[type="button"]:hover, .vert.mono_champ input[type="submit"]:hover{
background:white;
color:#4c9f38;
}
.inverse.mono_champ input{
}
.inverse.mono_champ input[type="button"]{
background:white;
border:1px solid black;
color:black;
}
.inverse.mono_champ input[type="button"]:hover, .inverse.mono_champ input[type="submit"]:hover{
background:black;
color:white;
}
.hachures_jaune{
  background-image:
    /* Coin blanc */
    linear-gradient(120deg, white 56%, transparent 57%),
    /* Lignes orange */
    url("/wp-content/themes/focus2030/assets/images/hachure_jaune.png");
	}
.hachures_jaune .cadreimage_oblique div{
position:absolute;
background:#fcc30b;
width:100%;
height:100%;
transform:rotate(-6deg);
}	
.jaune.mono_champ input{
border:1px solid #fcc30b;
}
.jaune.mono_champ input[type=submit]{
background:#fcc30b;
}
.jaune.mono_champ input[type="button"]:hover, .jaune.mono_champ input[type="submit"]:hover{
background:white;
color:#fcc30b;
}
.hachures_violet{
  background-image:
    /* Coin blanc */
    linear-gradient(120deg, transparent 37%, white 21%),
    /* Lignes orange */
    url("/wp-content/themes/focus2030/assets/images/hachure_violet.png");
	}
.hachures_violet .cadreimage_oblique div{
position:absolute;
background:#ba4c81;
width:100%;
height:100%;
transform:rotate(6deg);
}

#slider_partenaires{
overflow:hidden;
height:100px;
position:relative;
text-align:left;
margin:0 0 30px 0;
}
#logo_partenaires{
width:2000px;
position:relative;
}
#logo_partenaires p{
margin:0;
}
#logo_partenaires img{
width:auto;
height:90px;
margin:10px 30px;
}


 /* =========================================================
            PAGE ARTICLE 
 ========================================================= */  
article{
max-width: 1000px;
margin: 0 auto;
padding:0 15px;
}  

section{
max-width:1430px;
margin:0 auto;
padding:0 40px;
}
section.grande_section
{
max-width:1920px;
margin:0 auto;
padding:0 20px;
}
.transparente{
	background:transparent;
}

.lien_traduction{
text-align:right;
float:right;
}
.lien_traduction A{
color:gray;
display: inline-block;
padding: 0 10px 10px 0;
}

H1{
text-align:left;
	font-size: 4rem;
	margin: 10px 0 20px 0;
	line-height: 1.3;
	font-family: 'source_sans_3_extrabold';
	letter-spacing:0.2rem;
}
.page-template H1,.page-template-default  H1{
position:relative;
text-align:center;
	font-size: 4rem;
margin: 10px 0 90px 0;
	line-height: 1.3;
	font-family: 'source_sans_3_extrabold';
}
.page-template H1::after ,.page-template-default H1::after {
  content: "";
  display: block;
  height: 1px;
  width: 500px;
  max-width: 90%;
  left: calc(50% - 250px);
  bottom: -26px;
  background: black;
  position: relative;
}

H2 {
border:0 none;
  color:black;
  padding:0;
  margin:30px 0 10px 0;
  letter-spacing:0.2rem;
  }


H3{
	font-size: 2.7rem;
	margin: 25px 0 20px 0;
	line-height: 1.2;
letter-spacing: 0.1rem;
}
.breve H3{
	font-size: 1.6rem;
	text-transform:uppercase;
	}
.partage{
opacity: 1;
  position: absolute;
  right: 190px;
  top: 13px;
  width: 260px;
  height: 38px;
}
.partage A{
width: 30px;
  display: inline-block;
  margin: 2px 8px;
  background: black;
  border-radius: 40px;
  height: 30px;
  cursor:pointer;
  text-align:center;
  padding: 1px 0 0 0;
  }
  .partage img{
max-width: 90%;
  }
 #bt_print{
  text-align: center;
  } 
#bt_lien{
  text-align: center;
   transition: all 0.5s ease;
   position:relative;
  }
#bt_lien:after{
content: "Copié !";
opacity: 0;
  position: absolute;
  top: -27px;
  left: 0;
  width: 50px;
  height: 20px;
  font-size: 1.3rem;
  color: white;
  background: black;
  transition: all 0.5s ease;
  padding: 2px 2px 0;
  border-radius: 5px;
  }  
  #bt_lien.show-after:after {
    opacity: 1;
}
.chapo{
font-weight:bold;
}
A{
color:#0a97d9;
text-decoration:none;
}
table{
font-size: 1.7rem;
margin:15px 0;
}
table tr:nth-child(even){
	background:#f9f9f9;
}
table td {
	#border-top:1px solid #ddd;
	padding:6px;
	vertical-align: middle;
}

.liste_cat{
	border:0 none !important;
	border-top:1px solid #ddd !important;
	padding:15px 0 !important;
}

.notes{
	font-size:1.6rem !important;
	color:#A0A0A0;
	border:0 none !important;
}
.spip_note_ref{
	position:relative;
		font-size:1.4rem;
		top:-10px;
}
.spip_documents_left {
	margin:0 30px 0 0;
}
.listedocuments{
display:none;
}
.nav-sommaire{
	padding:0 30px 30px 30px;
	border:1px solid #009f3c;
}
.nav-sommaire li{
list-style:none;
}
.nav-sommaire li ul li{
list-style:circle;
}
.nav-sommaire a{
display:block;
margin:5px 0 5px 5px;
}
figure{
text-align: center;
margin:40px 0;
}
figcaption{
font-size:1.6rem;
color:#A0A0A0;
font-weight: normal;
}
figcaption A{
font-size:1.6rem;
color:#A0A0A0;
font-weight: normal;
text-decoration:underline;
}
figcaption p{
margin:0 0 5px 0;
}
dd, dt{
max-width:100% !important;
margin:0;
}
.iframe_video{
width:100%;padding-bottom:56%;overflow:hidden;position:relative;z-index:5;
}
.iframe_video iframe{
	width:100% !important;height:100% !important;position:absolute;left:0;
}

.bloc_rdv,.bloc_rdv h3{
	color:black;
	font-size:3rem;
	margin: 0 0 15px 0;
}

.case-date{
position:relative;
background:#009f3c;
text-align:center;
color:white;
font-size:2rem;
font-weight:bold;
padding:20px;
width:210px;
float:left;
height:140px;
margin:0;
}
.case-date.fin{
margin:0 30px 0 0;
}
.case-date.fin:after{
	content:">";
	font-size:5rem;
	color:white;
position:absolute;
top: 30px;
  left: -14px;
}	
.date_jour{
font-size:4rem;
margin:0;
line-height:1;
}
.case-texte{
overflow:hidden;
}

.cs_blocs{
	padding:0 20px 10px 20px;
	border:1px solid #009f3c;
}
.featured-media{
margin: 10px 0 40px 0;
}
.featured-media-inner img{
max-height: 550px;
  width: auto;
}

.banniere{
background:#fcc74c;
padding:20px 20px 20px 50px;
text-align:center;
box-shadow: -1px 10px 18px -2px rgba(0,0,0,0.3);
-webkit-box-shadow: -1px 10px 18px -2px rgba(0,0,0,0.3);
-moz-box-shadow: -1px 10px 18px -2px rgba(0,0,0,0.3);
  z-index: 5;
position: absolute;
  width: 100%;
  top: 180px;
   font-family: 'source_sans_3_extrabold';
   height: 106px;
}
.banniere div{
max-width:1340px;
margin:0 auto;
position: relative;
}
.banniere button{
display:none;
background:url(/wp-content/themes/focus2030/assets/images/bt_retour.png) no-repeat center center;
border:0 none;
position: absolute;
left: -10px;
  top: 7px;
  width: 50px;
  height: 50px;
  cursor:pointer;
  }
.banniere_data2030{
background:#e5243b;
}
.banniere_agenda2030{
background:#0a97d9;
}
.banniere_media2030{
background:#a91f61;
}
.banniere_repertoireong{
background:#fd6925;
}
.banniere  .logo{
position:relative;
height: 65px;
overflow:hidden;
display:flex;
border-radius:50px;
margin:0 40px 0 0;
width:180px;
display: inline-block;
background:white;
}

.banniere  .logo img{
position: relative;
top: 4px;
  height: 90%;
}
.banniere_agenda2030  .logo img{
position: relative;
top: 4px;
  height: 90%;
}
.banniere p{
margin: 0 0 0 0;
  text-align: left;
  font-size: 2.5rem;
  display: inline-block;
  line-height: 1.2;
  position: relative;
  top: -8px;
  letter-spacing: 0.6px;
  font-weight: normal;
  max-width: 810px;
  color:black;
}
.banniere_repertoireong p{
margin: 11px 0 0 0;
}
.expertise2030{
background:#e5f6fb;
}

#outils {
  text-align: right;
  font-size: 1.1rem;
  z-index: 10;
  position: absolute;
top: 162px;
  right: 90px;
}
#outils A{
color:black;
}
.fin_grisclair{
display:none;
}

.detailarticle{
display:none;
}  

blockquote.ombree{
background:white;
position:relative;
border:1px solid #0a97d9;
padding:10px 20px 30px 20px;
margin:30px 20px;
}
blockquote.ombree:before{
content:"";
position:absolute;
left:0;
top:0;
background:#0a97d9;
width:100%;
height:100%;
transform:rotate(-6deg);
z-index:-1;
}

.infoconnexe{
margin:60px 0;
padding:10px 0;
position:relative;
}
.infoconnexe:before{
top:0;
height:2px;
width:50%;
position:absolute;
content:"";
background:#868484;
}
.les_dates{
position:relative;
color:#666666;
font-size:1.8rem;
}
.les_dates:before{
position:absolute;
content:"";
width:200px;
height:2px;
top:-10px;
left:0;
background:#c7c5c5;
}
.infoconnexe .les_dates:before{
display:none;
}
.bt_partage{
float: right;
  position: relative;
  top: 15px;
  line-height: 1;
  color: black;
  font-size: 1.5rem;
  border: 1px solid black;
  border-radius: 100px;
  padding: 6px 15px 8px 45px;
  background: white;
  height: auto;
  z-index: 2;
  cursor: pointer;
  margin: 0 0 15px 0;
  background:url(/wp-content/themes/focus2030/assets/images/bt_partage.png) no-repeat 8px center;
}
fieldset.documents_spip{
border:1px solid black;
margin:30px 0;
padding: 10px 50px 30px 50px;
}
fieldset.documents_spip:after{
display:none;
}
fieldset.documents_spip legend{
color:black;
text-transform:none;
top:0;
padding: 10px 15px;
}
.documents_spip li{
list-style:none;
}
.documents_spip a{
position:relative;
display:block;
color:black;
width: calc(100% - 210px);
padding: 11px 0 11px 40px;
}
.documents_spip a:before{
content: "";
  position: absolute;
  left: -34px;
  top: 0;
  background: url(/wp-content/themes/focus2030/assets/images/icone_doc.png) no-repeat left center;
  width: 60px;
  height: 100%;
}
.documents_spip a:after{
content: "Consulter";
  position: absolute;
  right: -230px;
  top: calc(50% - 20px);
  width: fit-content;
  border: 1px solid black;
  border-radius: 100px;
  font-size: 1.8rem;
  padding: 5px 20px;
}

.tag_typearticle .tag,.tag_theme .tag,.tag_autre .tag{
display:inline-block;
background:#b5e0f4;
border:1px solid #60bce7;
border-radius:100px;
padding: 6px 15px 5px;
margin:10px 20px 10px 0;
font-size:1.5rem;
color:black;
text-transform:uppercase;
line-height:1;
}
.tag_theme .tag{
background:#c9e2c3;
border:1px solid #4c9f38;
}
.tag_autre .tag{
background: #f7c4d8;
border:1px solid #ef80ab;
}
.tag_odd p{
margin: 30px 0 30px;
  text-transform: uppercase;
  text-decoration: underline;
  text-underline-offset: 13px;
  font-size: 1.7rem;
}

/* =================================================
                   Landing Page 
=========================================
*/
main.fiche_expert  {
padding: 60px;
  max-width: 1200px;
margin: 80px auto 50px auto;
  background:white;
}


/* Landing Page =========================================
*/
.bandeau_bleu{
padding: 60px 20px 70px;
text-align:center;
background:#0a97d9;
position:relative;
margin: 0 0 20px 0;
}

.bandeau_bleu:before, .bandeau_bleu:after{
content:"";
display:block;
background:url(/wp-content/themes/focus2030/assets/images/expertse_fleche.png) no-repeat center center;
height:50px;
width:150px;
left:calc(50% - 75px);
top: -12px;
position:absolute;
}
.bandeau_bleu:after{
top:auto;
bottom:-12px;
transform:rotate(180deg);
}
.bandeau_bleu.sansflechehaut{
padding: 30px 20px 80px;
}
.sansflechehaut:before{
display:none;
}
.sansfleche{
padding-top:1px;
}
.bandeau_bleu h1{
color:white;
text-align:center;
position:relative;
font-size: 3.5rem;
margin: 30px 0 70px 0;
letter-spacing: 0.8px;
border:0 none;
}

.bandeau_bleu h1:after{
content:"";
display:block;
height:1px;
width: 500px;
  max-width: 90%;
  left: calc(50% - 250px);
bottom: -26px;
background:white;
position:relative;
}

h1.expert{
text-align:left;
margin: 20px 0 15px 0;
padding:0 !important;
color: #0a97d9;
font-family: 'source_sans_3_extrabold';
font-size: 5rem;
}
h1.expert:after{
display:none;
}

 .ais-SearchBox-submit{
position: absolute;
  top: -28px;
  right: calc(5% + 12px);
  background: #0a97d9;
  color: white;
  padding: 0px 10px 0 10px;
  font-size: 1.2rem;
  border-radius: 5px;
  height: 40px;
	letter-spacing: 1px;
	font-weight: normal;
}

A.lien_article{
background: #e5f6fb;
  margin: 110px 0 0 0;
  padding: 100px 15px 20px 15px;
  text-align: center;
  position:relative;
  display: block;
}
.lien_article h3{
color:#0a97d9;
text-align:center;
text-transform:uppercase;
font-size:3rem;
margin: 20px 0 10px 0;
font-family: 'source_sans_3_extrabold';
  font-weight:normal;
}
.lien_article .titre{
color:black;
text-align:center;
font-size: 2rem;
font-family: 'source_sans_3_bold';
margin:5px 0 30px 0;
position:relative;
text-transform: initial;
width:100%;
float:none;
padding:0;
}
.lien_article .titre:after{
content:"";
display:block;
height:1px;
width:90px;
max-width:90%;
left:calc(50% - 45px);
bottom: -15px;
background:#0a97d9;
position:relative;
}
.lien_article .orga{
color:#0a97d9;
text-align:center;
font-size: 2rem;
font-family: 'source_sans_3';
margin: 5px 0 12px 0;
position:relative;
text-transform: initial;
font-style:italic;

}

.affdate{
font-size:1.8rem;
color: #666;
}
.tag{
color:#29a4de;
  margin:5px 5px 5px 0;
  text-decoration:none;
font-family: 'source_sans_3_bold';
  font-size:1.8rem;
  text-transform:uppercase;
  border-left: 3px solid #29a4de;
  padding: 0 6px 0 10px;
  line-height: 1;
}
.lien_bloc .tag{
  margin:0;
  border-left:0 none;
  padding: 0;

}
article .tag:first-of-type{
border:none;
padding: 0;
}
.infoconnexe .tag:first-of-type{
border:0 1px;
padding: 6px 15px 5px;
}
article .tag{
font-size:2.1rem;
 }
 .tagimg{
 margin:5px 10px 5px 0;
 }
.tagexpert, .tagexpert2, .tagmcp{
color: #0a97d9;
  background: white;
  border: 1px solid #0a97d9;
  border-radius: 0;
  margin: 5px 5px 5px 0;
padding: 2px 8px 0px 8px;
  text-decoration: none;
font-family: 'source_sans_3_semibold';
  text-transform: uppercase;
  font-size:1.4rem;
  width:fit-content;
  display:inline-block;
  line-height:1.1;
 }
 .tagmcp{
padding: 2px 6px 1px;
 }
.tagexpert2{ 
font-size:1.7rem;
}
a.tagexpert2:hover{
color:white;
background:#0a97d9;
text-decoration:none;
}
.celluleblanche{
background:white;
color:black;
margin:30px;
padding: 48px 30px 30px 30px;
  font-size: 0.8rem;
  text-align:center;
}

.btvoirtout{
  border: 1px solid white;
padding: 25px 50px;
font-size: 1.4rem;
	font-weight:normal;
}


A.boutonrouge, input[type='button'].boutonrouge{
border-radius: 0;
  border: 1px solid red;
  color: red;
  background: white;
  margin: 20px 0 0 0;
  padding: 5px 10px;
}
A.boutonrouge:hover{
background:red;
color:white;
border:1px solid red;
}



/* 
=========================================
         AGENDA
=========================================
*/
.principale_agenda{
position:relative;
left:calc(50% - 45vw);
width:90vw;
overflow: hidden;
transform-origin: top;
transform: scale(0.2);
opacity:0;
 transition: all 4s ease; 
}
.principale_agendaon{
transform-origin: top;
transform: scale(1);
opacity:1;
}
h3.agenda{
color:#0871a3;
font-size: 3.9rem;
  margin: 25px 0 20px 0;
  line-height: 1.2;
  letter-spacing: 0;
}
#divagenda{
position:relative;
width:100%;
overflow-x: auto;
margin: 0 40px;
}
#agenda{
overflow: hidden;
}
.principale_agenda .inverse {
    display: flex;
    flex-direction: column-reverse; /* Empile les �l�ments dans l'ordre inverse */
}
.principale_agenda .normal {
    display: flex;
	 flex-direction: column;
}
#divagenda a {
    display:block;
	position:relative;
	border: 1px solid #57a2d2; /* Optionnel : bordure pour visualiser les divs */
    padding: 8px; /* Optionnel : espace int�rieur */
    margin: 5px 0; /* Optionnel : espace entre les divs */
	color:black;
	font-size: 1.6rem;
	background: white;
}
#divagenda a:hover { 
box-shadow: 0px 0px 6px 2px #57a2d2; 
}
.trmensuel,#trmensuelhaut{

}

.trmensuel a{
border: 0 none;
border-bottom:2px solid orange; 
}
#divagenda .trmensuel  a:hover { 
box-shadow: none; 
background:white;
}
#trmensuelmois, #trhaut, #trbas{
display:flex;
}
#trmensuelmois div{
background:#0871a3;
color:white;
text-transform:uppercase;
font-family: 'source_sans_3_bold';
 font-size: 1.9rem;
 text-align:center;
 padding:10px;
 margin:10px;
}
#trhaut ,#trbas {
min-height: 200px;
}
#trhaut div,#trbas div{
margin:0 10px;
}
#trhaut div:nth-child(odd),#trbas div:nth-child(odd){
background:#e6f5fb;
}
#trmensuelbas,#trmensuelhaut{
padding: 0 0 20px 0;

}
#trmensuelhaut a,#trmensuelbas a{
color:#0a97d9;
border:none;
border-bottom:4px solid #0a97d9;
 padding:8px;
 margin:5px 0;
 background:transparent;
}
#divagenda a img {
width: 50px;
  height: auto;
margin:0 10px 0 0;
float:left;
}

#libellebas, #libellehaut,#libellebasd, #libellehautd{
position: absolute;
z-index:5;
top: 0;
  font-size: 3rem;
  left: 0;
  color:white;
  background:#0a97d9;
  text-transform:uppercase;
  padding:5px 20px;
  border-radius:50px 0 0 50px;
  text-align:center;
  width:40px;
  height:100%;
  font-family: 'source_sans_3_bold';
box-shadow: 9px 0px 13px -1px rgba(0,0,0,0.63);
}
#libellebas span, #libellehaut span{
  transform: rotate(-90deg) translateY(50%);
  transform-origin: top left; /* Point de rotation en haut à gauche */
  display: block;
  position: absolute;
  top: 50%; /* Centrage vertical par rapport au parent */
left: -21px;; /* Plus besoin de décalage fixe */
}
#libellebasd span, #libellehautd span{
  transform: rotate(-90deg) translateY(50%);
  transform-origin: top left; /* Point de rotation en haut à gauche */
  display: block;
  position: absolute;
  top: 50%; /* Centrage vertical par rapport au parent */
  left: -23px; /* Plus besoin de décalage fixe */
}

#libellebas,#libellebasd{
top:auto;
bottom: 0;
}
#libellebasd, #libellehautd{
  right: 0;
  left:auto;
  border-radius: 0 50px 50px 0;
  box-shadow: -9px 0px 13px -1px rgba(0,0,0,0.63);
  z-index:10;
}
.fullscreen {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1000;
    background-color: white;
}
#divagenda a.important{
border-left:4px solid red;
}
#precedent{
position: absolute;
  bottom: -72px;
  left: -40px;
  background: url(/wp-content/themes/focus2030/assets/images/pflecheg.png) no-repeat 40px center  #e6f5fb;
  width: 70px;
  height: 70px;
  border-radius: 90px;
  }
#suivant{
position: absolute;
  bottom: -72px;
left: 10px;
  background:url(/wp-content/themes/focus2030/assets/images/pfleched.png) no-repeat 10px center   rgb(230,245,251,0.7);
  width: 70px;
  height: 70px;
  border-radius: 90px;
  }
#boutonagenda1, #boutonagenda2{
display: inline-block;
  border: 1px solid #E0E0E0;
  border-radius: 5px;
  font-size: 1.5rem;
  font-family: 'source_sans_3_semibold';
  background: white;
  text-align: center;
  text-transform: uppercase;
  padding: 17px 0 0 0;
  line-height: 1;
  width: 48px;
  height: 48px;
  color: #0a97d9;
  background:#e6f5fb;
  position: relative;
  top: -19px;
  margin:0 5px;
}
#boutonagenda1.boutonagenda_actif, #boutonagenda2.boutonagenda_actif{
  background:#0a97d9 ;
  color: white;
}
#exportICal, #exportpdfBtn, #exportimageBtn{
display:inline-block;
border:0 none;
border-radius:5px;
line-height:1;
width: 48px;
  height: 48px;
  padding: 0;
   margin:0 5px;
}
  
  
  /*  =========================================
                FICHE EXPERT 
=========================================
*/  
.fiche_2colonnes {
  display: grid;
grid-template-columns: 4fr 7fr;
  column-gap: 40px;
  row-gap: 30px;
  padding: 10px 0 40px 0;
} 

.avec_hachure{
position:relative;
padding:0 0 40px 0;
margin: 0 0 50px 0;
}
.avec_hachure:after{
content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  height: 20px;
  width: 100%;
  background: url(/wp-content/themes/focus2030/assets/images/hachure.png);
}  
.portrait{
width: 250px;
  height: 250px;
  border-radius: 200px;
  overflow: hidden;
  position: relative;
  justify-content: center;
  align-items: center;
  background: url(/wp-content/themes/focus2030/assets/images/photo.png) no-repeat center center;
  margin: 0 auto;
}
.pportrait{
width: 190px;
  height: 190px;
  top: -95px;
  position: absolute;
  left: calc(50% - 95px);
  transition: transform 1s;
  }
.lien_article:hover .pportrait img{  
  width: 105%; 
}
  .adminportrait{
width: 200px;
  height: 200px;
float:left;
margin:0;
  }
.portrait img{
  width: 100%; /* Largeur de l'image */
  height: 100%; /* Hauteur de l'image */
  object-fit: cover; /* Ajuste l'image pour remplir le cercle sans d�formation */
  object-position: center; 
  max-width:none;
  transition:all 1s ease;
}	

.titre_fonction{
  font-size: 2.3rem;
  margin:5px 0 40px 0;
  position:relative;
}
.titre_fonction span{
font-family: 'source_sans_3_bold';
}
.titre_fonction:after{
content:"";
position:absolute;
bottom: -22px;
left:0;
width:90px;
height:1px;
background:#0a97d9;
}
.contact{
position:relative;
border:1px solid #0a97d9;
margin: 6px 0 40px 0;
text-align:right;
}
.contact p:first-of-type{
position: absolute;
  left: 20px;
top: -39px;
  background: #0a97d9;
  color: white;
  padding: 7px 15px 9px 15px;
  z-index: 10;
  line-height: 1;
}

#coord{
position: relative;
  background: #e5f6fb;
  color: #0a97d9;
font-size: 1.8rem;
padding: 30px 20px 20px;
line-height:1.5;
text-align: left;
width:100%;
word-break: break-all;
}
#coord .cadenas{
cursor:pointer;
color: #0a97d9;
  text-decoration: none;
background: url(/wp-content/themes/focus2030/assets//images/cadenas.png) no-repeat center left;
  padding: 10px 0 10px 60px;
  display: inline-block;
}
#coord a{
color: #0a97d9;
  text-decoration: none;
}
.contact img{
margin: 11px 18px 5px 0;
}
.poubelle img{
vertical-align: middle;
position: relative;
  top: -2px;
}
.soustitre{
color:black;
font-size: 2.2rem;
  font-weight:bold;
  margin:25px 0 5px 0;
}
.soustitre:first-of-type{
  margin:0 0 5px 0;
}
.tag2{
color:#0a97d9;
background:#e5f6fa;
  border-radius: 0;
  margin:5px 5px 5px 0;
padding: 5px 10px;
  text-decoration:none;
  display:inline-block;
  border:0 none;
}
.tag3{
color:white;
background:#0084a6;
  border-radius: 0;
  margin:5px 5px 5px 0;
    padding:5px;
  text-decoration:none;
  display:inline-block;
}
a.tag2:hover,a.tag3:hover{
color:#0a97d9;
background:white;
text-decoration:none;
}

ul.publication{
padding:0;
margin: 0;
}

.publication li{
list-style:none;
}

.publication .lien{
  text-decoration: none;
  background: url(/wp-content/themes/focus2030/assets//images/publication.png) no-repeat left center;
padding: 10px 0 10px 50px;
  margin: 0;
  display: block;
}
.publication .lien a{
color: #0a97d9;
  text-decoration: none;
}



#publi2, #publi3, #media2, #media3{
position:relative;
}

#publi2:before, #publi3:before, #media2:before, #media3:before{
content:"";
position:absolute;
top: -41px;
left:calc(50% - 100px);
width:200px;
height:2px;
background:#a0deef;
}

.explication{
font-size:1.1rem;
color:#0a97d9;
margin:0 0 30px 0;
}

.date_maj{
margin:100px 0 0 0;
position:relative;
}
.date_maj:after{
content:"";
display:block;
height:1px;
width:50px;
left:0;
top: -56px;
background:black;
position:relative;
}
.lien_connecte{
margin:100px 0 0 0;
position:relative
}
.lien_connecte:after{
content:"";
position:absolute;
top: -30px;
left:0;
width:90px;
height:1px;
background:#0a97d9;
}


 /*  =========================================
                REPERTOIRE ONG
=========================================
*/ 
H2.repertoireong{
  position: relative;
  text-align: center;
  text-transform: uppercase;
  font-size: 4rem;
  margin: 40px 0 70px 0;
  line-height: 1.1;
  font-family: 'source_sans_3_extrabold';
  color:#fd6925;
}
H2.repertoireong:after{
  content: "";
  display: block;
  height: 1px;
  width: 500px;
  max-width: 90%;
  left: calc(50% - 250px);
  bottom: -26px;
  background: #fd6925;
  position: relative;
}
h1.taxo_cause{
font-size:3rem;
text-transform:uppercase;
text-align:left;
padding: 40px 0 0 0;
}
h1.taxo_cause:after{
display:none;
}
.logo_cause{
width:150px;
float:left;
margin:0 30px 0 0;
}

.lien_bloc .titre_ong{
position:relative;
z-index:5;
font-size:2rem;
text-align:center;
color:black;
padding: 0 15px;
font-family: 'source_sans_3_extrabold';
}  
A.lien_article.ong {
  background: #fff8e5;
  margin: 110px 0 0 0;
padding: 100px 15px 20px 15px;
  text-align: center;
  position: relative;
  display: block;
}  

.cause_4604 {
border:1px solid #3f7e44;
} 
.cause_4607 {
border:1px solid #4c9f38;
} 
.cause_4611 {
border:1px solid #dda83a;
} 
.cause_4609 {
border:1px solid #19486a;
} 
.cause_4606 {
border:1px solid #c5192d;
} 
.cause_4612 {
border:1px solid #4fc9e7;
} 
.cause_4603 {
border:1px solid #ff3a21;
} 
.cause_4610 {
border:1px solid #1071a3;
} 
.cause_4605 {
border:1px solid #ef5152;
} 
.cause_4608 {
border:1px solid #dd1367;
} 


 .pportraitong{
   display: flex;
  align-items: center; /* Centre verticalement */
  justify-content: center; /* Centre horizontalement (optionnel) */
  overflow: hidden; /* Pour éviter les débordements */
  height: 190px; /* Définis une hauteur fixe pour la div (ajuste selon tes besoins) */
padding:20px;
  background:white;
  border:1px solid #fd6925;
  } 
.pportraitong img{
  width: 100%; /* Largeur de l'image */
  height: auto;
  object-fit: cover; /* Ajuste l'image pour remplir le cercle sans d�formation */
  object-position: center; 
  position:relative;
}  
.lien_article.ong{
padding:
}
.lien_article.ong h3 {
  color: black;
}
.lien_article.ong .titre {
  color: black;
  text-align: center;
  font-size: 2rem;
  font-family: 'source_sans_3_bold';
  margin: 5px 0 30px 0;
  position: relative;
  text-transform: initial;
  width: 100%;
  float: none;
  padding: 0;
}
.lien_article.ong .titre span{
  font-family: 'source_sans_3';
  text-decoration:italic;
}
.lien_article.ong .titre::after {
  content: "";
  display: block;
  height: 1px;
  width: 90px;
  max-width: 90%;
  left: calc(50% - 45px);
  bottom: -15px;
  background: green;
  position: relative;
}
.lien_article.ong .tag{
color: #fd6925;
  background: white;
  border: 1px solid #fd6925;
  border-radius: 0;
  margin: 5px 5px 5px 0;
  padding: 2px 8px 0px 8px;
  text-decoration: none;
  font-family: 'source_sans_3_semibold';
  text-transform: uppercase;
  font-size: 1.4rem;
  width: fit-content;
  display: inline-block;
  line-height: 1.1;
  }
.listecauses{
margin: 30px 0 0 0;
  padding: 20px 0 0 0;
  background: url(/wp-content/themes/focus2030/assets/images/phachureong.png) repeat-x left top;
  text-align: left;
  position: relative;
  left: -10px;
  width: calc(100% + 20px);
  bottom: 0;
} 
.listecauses img{
margin:10px;
max-width:50px;
} 
main.fiche_ong{
padding: 20px 60px 60px;
}
.logos_cause a{
bordure:2px solid black;
display:inline-block;
border-radius:40px;
max-width:50px;
width:50px;
height:50px;
padding:8px;
} 
H1.ong{
text-align: left;
  margin:10px 0 15px 0;
  padding: 0 !important;
  color: #fd6925;
  font-family: 'source_sans_3_extrabold';
  font-size: 4rem;
}  
.liste_causes img{
width:100px;
margin:0 20px;
}

.fiche_ong .avec_hachure::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  height: 16px;
  width: 100%;
  background: url(/wp-content/themes/focus2030/assets/images/hachureong.png);
}
.fiche_ong .contact {
  position: relative;
  border: 1px solid #fd6925;
  text-align: right;
  margin: 6px 0 10px 0;
}
.fiche_ong .contact p:first-of-type {
  position: absolute;
  left: 20px;
  top: -39px;
  background: #fd6925;
  color: white;
  padding: 7px 15px 9px 15px;
  font-weight: bold;
  z-index: 10;
  line-height: 1;
}
.fiche_ong  .tag_typearticle .tag {
  color: #fd6925;
  background: white;
  border: 1px solid #fd6925;
  border-radius: 0;
  margin: 5px 5px 5px 0;
  padding: 2px 8px 0px 8px;
  text-decoration: none;
  font-family: 'source_sans_3_semibold';
  text-transform: uppercase;
  font-size: 1.5rem;
  width: fit-content;
  display: inline-block;
  line-height: 1.1;
}

.boutonorange{
display: block;
  background: #fd6925;
  color: white;
  padding: 15px 30px;
  font-weight: bold;
  margin: 10px auto;
  width: fit-content !important;
  height: auto;
  border-radius: 5px;
}
/* =========================================

              FORMULAIRE 
			  
=========================================*/

FORM .deux_colonnes>div, .input{

}

FORM .deux_colonnes>div.sansbordure{
border:0 none;
}
FORM  p{
margin:11px 0;
}
FIELDSET{
background: white;
  margin: 10px auto 70px auto;
  position: relative;
  border-radius: 5px;
  padding: 10px 50px 30px 50px !important;
  max-width:1200px;
  border:0 none;
}

FIELDSET:after{
content:"";
position:absolute;
bottom:0;
left:0;
height:20px;
width:100%;
background:url(/wp-content/themes/focus2030/assets//images/hachure.png);
}
FIELDSET div{
position:relative;
}

LEGEND {
font-size: 2.6rem;
  background: white;
  padding: 10px 30px;
  color: #0a97d9;
  text-transform: uppercase;
font-family: 'source_sans_3_extrabold';
  position: relative;
  top: -9px;
  border-radius: 5px;
  font-weight: normal;
}
H4 {
font-weight: bold;
  font-size: 2rem;
  color: #0a97d9;
  margin:10px 0 25px 0;
  text-transform: uppercase;
}
INPUT,TEXTAREA,SELECT, .select2, .cadreinput {
border:1px solid #a0deef;
  border-radius:5px;
  outline:0 none;
min-height: 40px;
  padding: 10px 15px 10px 15px;
  background:white;
  position:relative;
  font-size: 1.8rem;
  max-width: 100%;
  margin: 5px;
}
.encart_tri SELECT{
border:1px solid black;
}
.wp-block-button{
 width:100%;
 text-align:center;
 }
input[type="submit"], .bouton, .bouton_blanc, .wp-block-button__link,.pbouton, .bouton_nav{
display: block;
  background: #0a97d9;
  color: white;
  padding: 15px 30px;
  font-weight: bold;
  margin: 10px auto;
  width: fit-content !important;
  height:auto;
  border-radius: 9999px;
}
.bouton, .bouton_blanc{
/*	background:white;
	color:#009f3c;
	*/
}
.boutonviolet{
background:white;
color:#ba4c81;
border:1px solid #ba4c81;
box-shadow: 3px 4px 0px 0px #ba4c81;
}
.boutonviolet{
background:white;
color:#ba4c81;
border:1px solid #ba4c81;
box-shadow: 3px 4px 0px 0px #ba4c81;
text-transform:uppercase;
padding: 10px 20px;
}
.boutonviolet:hover{
background:white;
color:#ba4c81;
border:1px solid #ba4c81;
box-shadow: none;
position:relative;
top:3px;
left:3px;
}
.pbouton{
border-radius: 05px;
  border: 0 none;
  padding: 10px;
}
.bouton_nav{
display: inline-block;
border-radius: 05px;
  border: 0 none;
  padding: 5px;
  font-size:1.9rem;
}
.input_vert{
	height: 30px;
	padding:0 15px;
  font-size: 1.8rem;
  width: 100px;
  background: #009f3c;
  border: 0 none;
  border-radius: 5px;
  color: white;
}

input[type="button"].boutonplus{
font-weight: bold;
  font-size: 1rem;
  padding: 7px 15px 9px 54px;
  color: #0a97d9;
  border: 1px solid #0a97d9;
  border-radius: 30px;
  text-transform: uppercase;
  margin: 20px auto;
  width: fit-content;
  background: url(/wp-content/themes/focus2030/assets//images/plus.png) no-repeat 13px center white;
  display: block;
}
#messagemail,#messagetel,#messagemail2,#messagetel2{
position: absolute;
  background: white;
  text-transform: uppercase;
  font-size: 1.4rem;
  right: 20px;
  bottom: -35px;
  } 
#messagetel,#messagetel2{
  bottom: -19px;
  } 
#messagemail.error,#messagetel.error,#messagemail2.error,#messagetel2.error{
bottom: -20px;
  padding: 3px 10px;
  border: 1px solid #ed1c24;
  }
.erreur{
  background: white;
  text-transform: uppercase;
  font-size: 1.4rem;
  border: 1px solid #ed1c24;
  padding: 2px 10px;
  color:#ed1c24;
 bottom: 9px;
  position: relative; 
  max-width:900px;
  margin:0 auto;
  }  
.reponse_ok{
  background: white;
  text-transform: uppercase;
  font-size: 1.4rem;
  border: 1px solid #22b573;
  padding: 2px 10px;
  color:#22b573;
  }
 .obligatoire::after {
  content: "*";
  color: red;
}
LABEL{
position: relative;
  bottom: -15px;
  background:white;
  padding:0 10px;
font-size: 1.9rem;
  z-index: 5;
  left: 10px;
font-family: 'source_sans_3_bold';
}
.ninja-forms-form-wrap LABEL{
position: relative;
  bottom: -23px;
  }
LABEL.label_checkbox, .form_bleu  .upload-btn{
position: relative;
  top: 0;
  left: 0;
font-size: 1.8rem;
    background: transparent;
	overflow: hidden;
  display: inline;
  line-height: 1.4;
  height:50px;
  font-family: 'source_sans_3';
}
.cadreinput label{
bottom: 15px;
  background:white;
  padding:0 10px;
 }

SELECT span{
margin:10px 0;
border:0 none !important;
}

TEXTAREA{
width: 100%;
height: calc(100% - 70px);
  }
  .precision{
font-size: 1.5rem;
  font-style:italic;
  }
input[type="radio"],input[type="checkbox"] {
  width: 20px;
  height: 20px;
  min-height: 0;
  display:inline-block;
}

.deux_colonnes{
border:0 none;
}
input, textarea{
  max-width: none;
  width: 98%;
max-width: 800px;
display: block;
}
:root {
    --iti-border-color: white !important;
}
.iti {
display: block !important;
}
.select2-container--default.select2-container--focus .select2-selection--multiple, .select2-container--default .select2-selection--multiple{
border:0 none !important;
}
.select2-container .select2-selection--single .select2-selection__rendered {
  white-space: normal;
}
.select2-container .select2-selection--single {
  height: auto !important;
  border:0 none  !important;
}

.select2-container--default .select2-selection--multiple .select2-selection__choice{
background:#a0deef;
color:black;
max-width:50%;
 white-space: wrap  !important;
}
.select2-search__field{
width: 0.75em;
  height: 70px;
min-height: 30px;
font-size: 2rem !important;
}
  .upload-container {
      border: 2px dashed #ccc;
      border-radius: 10px;
      padding: 20px;
      width: 100%;
      text-align: center;
      background-color: #fff;
    }

    .upload-container:hover {
      border-color: #a0deef;
    }

    .upload-container input[type="file"] {
      display: none;
    }

    .upload-container img {
      max-width: 100%;
      margin-top: 10px;
      border-radius: 5px;
    }

.modal {
  display: none;
  position: fixed;
  z-index: 7;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  overflow: auto;
  background-color: rgb(0,0,0);
  background-color: rgba(0,0,0,1);
}

.modal-content {
  position: relative;
  margin: 10% auto;
  padding: 0;
  width: 80%;
  max-width: 500px;
}

.close {
  position: absolute;
  top: 10px;
  right: 25px;
  color: #f1f1f1;
  font-size: 40px;
  font-weight: bold;
}

.close:hover,
.close:focus {
  color: #bbb;
  text-decoration: none;
  cursor: pointer;
}

#crop-image {
  width: 100%;
}
.upload-text {
  color: #666;
  font-size: 16px;
  margin: 50px 0 10px 0;
  float: right;
}

.form_bleu .upload-btn {
  display: inline-block;
   font-family: 'source_sans_3_bold';
padding: 12px 20px 20px 20px;
  color: white;
  background-color: #0a97d9;
  border: none;
  border-radius: 5px;
  cursor: pointer;
}

.upload-btn:hover {
  background: #0a97d9;
}
#ui-datepicker-div{
z-index:6 !important;
}
#mc_embed_signup {
  background: #fff;
  clear: left;
  font-family: 'source_sans_3' !important;
  max-width: 100%;
}

.wp-block-column:nth-child(2n) {
  padding: 0  0 20px 0;
}
.wp-block-column:nth-child(2n+1) {
  padding: 0 20px 0 0;
}
 /* =========================================================
         RESPONSIVE
 ========================================================= */ 
@media screen and (max-width: 1800px) {
	section{
	padding:0 60px;
	}
}

@media screen and (max-width: 1300px) {
.primary-menu {
  right: 80px;
}
.site-logo {
  width: 281px;
  padding: 30px 0;
}
#formulaire_recherche {
  right: 100px;
  
  }
.adminportrait {
  width: 150px;
  height: 150px;
  background: url(/wp-content/themes/focus2030/assets//images/photo.png) no-repeat center center;
  background-size: cover;
}
.pportrait {
  width: 170px;
  height: 170px;
  top: -83px;
  left: calc(50% - 85px);
}
	#compteur{
	margin: 0 auto;
	width: 290px;
	}
	#compteur div.sepdeuxpoints:nth-child(3n){
	float: none;
	margin-bottom: 45px;
	opacity:0;
	}
}
@media screen and (max-width: 1024px) {
	.second-menu, .primary-menu{
	display:none;
	}	
	#bouton_menu{	
	display:block;
	}
	#btrecherche {
top: 13px;
    right: 80px;
  }
	.site-logo {
width: 210px;
    padding: 10px 0 11px 10px;
	}	
	.slogan {
	  top: 43px;
	  left: 53px;
	  font-size: 1.8rem;
	  width: auto;
	  padding: 0 10px 0 0;
	}
.adminportrait {
  width: 100px;
  height: 100px;
}
.upload-text {
  margin: 10px 0 0 0;
}

.banniere {
top: 130px;
height: 130px;
padding: 15px 15px 15px 50px;
}

	.banniere p {
	  text-align: center;
	  font-size: 1.7rem;
	  top: 5px;
	  width: 97%;
	}
.banniere  .logo{
position:relative;
height: 75px;
overflow:hidden;
display:flex;
border-radius:50px;
margin:0;
width:190px;
display: inline-block;
background:white;
}
  .banniere .logo {
    height: 50px;
    width: 140px;
  }
 .logo img {
  top: 1px;
  height: 76px;
} 	
	#outils {
top: 150px;
  right: 10px;
}
.logoexpert2030 {
  border-right: 0 none;
  padding:0;
  margin:0;
  }
  #site-footer {
  text-align: center;
}
.menu-footer {
  position: relative;
  right: auto;
  top: auto;
}
#formulaire_recherche {
top: -31px;
  right: 140px;
  width: calc(100% - 380px) !important;
  max-width: calc(100% - 380px) !important;
  }
#formulaire_recherche input[type="text"]{
  width: 100%  !important;
  max-width: 100% !important;
  }  
}
/* max-width pour  résolutions en dessous de 900px*/
@media screen and (max-width: 900px) {

	.bouton_don {
	  top: 10px;
	  right: 60px;
	}
	#bouton_recherche{
	  top: 10px;
	}	
	.nb_produits {
	  top: 11px;
	  right: 220px;
	}
	.colonnes21, .colonnes_2_1 {
	  grid-template-columns: 1fr;
	}	
	.homepage .deux_colonnes {
	  grid-template-columns: 1fr;
	}
	.quatre_colonnes, .trois_colonnes {
	  grid-template-columns: repeat(2, 1fr);
	}
	section {
	  padding: 10px 20px;
	}
	#fenetre_don {
	  top: 45px;
	  right: 10px;
	}
	.aligne_gauche {
	  float: none;
	  width: 100%;
	  padding: 0;
	}
	aside.colonne_droite {
	  float: none;
	  width: 100%;
	  padding: 0 4%;
	}
	.case-texte{
	width:100%;
	}
	  .colonnes5_4, .colonnes4_5 {
  grid-template-columns: 1fr 1fr;
  column-gap: 30px;
  }
}


@media screen and (max-width: 700px) {
	.deux_colonnes {
	  grid-template-columns: 1fr;
	  column-gap: 50px;
	  row-gap: 30px;
	} 
	#barre_noire{
	display:none;
	}
	.partiegauche{
	display:block;
	}
#menu_smartphone{
top:80px;
}	
FORM .deux_colonnes > div {
  padding: 15px 10px 0 10px;
}	
.adminportrait {
  width: 170px;
  height: 170px;
  top: -100px;
  position: absolute;
  left: calc(50% - 85px);
}
	.upload-text {
	  margin: 40px 40px 0 0;
	}

  .trois_colonnes {
  grid-template-columns: repeat(2, 1fr);
  column-gap: 30px;
  row-gap: 30px;
} 
  .fiche_2colonnes {
grid-template-columns: 1fr;
  column-gap: 40px;
  row-gap: 30px;
  padding: 10px 0 40px 0;
} 
	.deux_colonnes, .trois_colonnes {
	  grid-template-columns: 1fr;
	}
	.documents_spip a {
  width: calc(100% - 110px);
}
.documents_spip a::after {
  right: -140px;
}
 .banniere {
    top: 70px;
	}
  .banniere .logo {
    height: 50px;
    width: 140px;
  }
 .logo img {
  top: 1px;
  height: 76px;
} 
.banniere_agenda2030  .logo img {
  top: -1px;
  height: 55px;
} 
.menu_outils{
height:70px;
}
.menu_outils div{
width:700px;
transform: scale(0.7);
  transform-origin: left;
}
.btoutil {margin:0 15px;
}
  #formulaire_recherche {
    top: 45px;
    right: 0px;
    width: 99% !important;
    max-width: 99% !important;
  }

    .colonnes5_4, .colonnes4_5 {
  grid-template-columns:1fr;
  column-gap: 30px;
  }
}
/* max-width pour  résolutions en dessous de 500px*/
@media screen and (max-width: 500px) {
 .banniere {
    padding: 10px;
  }

.banniere button {
  left: 10px;
  top: -5px;
  }

#libellebasd, #libellehautd{
display:none;
}
  .banniere p {
    font-size: 1.6rem;
    top: 5px;
    width: 97%;
  }
  #divagenda a {
  font-size: 1.4rem;}
  #divagenda a p.clear{
  display:none;}  
	H1 {
	  font-size: 3rem;
	  margin: 0 0 20px 0;
	  line-height: 1.1;
	}
	.quatre_colonnes {
	  grid-template-columns: 1fr;
	  row-gap: 10px;
	}

	.deux_colonnes H4{
		margin:10px 0;
	}
	.case-date{
  padding: 10px;
  width: 140px;
	}
	.bloc_rdv .image-rectangle{
		width: 140px;
	}
.banniere_expertise2030 p {
  font-size: 1.3rem;
  width: 98%;
}
  H1 {
    padding: 0 0 0 0 !important;
	font-size: 2.1rem;
	}
 h1:after,  .bandeau_bleu h1:after{
width: 70%;
  left: 15%;
}	
BODY.home H1, .traitrouge {
  font-size: 3.4rem;
  margin: 0px 0 50px 0;
  }
  .page-template H1, .page-template-default H1 {
  font-size: 3.4rem;
  margin: 10px 0 50px 0;
  }
  .page-template H1::after, .page-template-default H1::after {
  width: 280px;
  left: calc(50% - 140px);
  bottom: -15px;
  }
  .lien_bloc h2, .homepage h2 {
  font-size: 2.3rem;
  }
  .lien_bloc h3 {
  font-size: 2.1rem;
  }
.bandeau_bleu h2, h2 {
  font-size: 2rem;
}
.bandeau_bleu h2::after, h2::after {
  width: 280px;
  left: calc(50% - 140px);
   }
   .adminportrait {
  top: 0;
  position: relative;
}
.breve {
  padding: 20px 0;
  margin: 0 0 30px 0;
}
   FIELDSET{
   padding: 10px 20px 30px 20px;
   }
   TEXTAREA {
  width: 100%;
  height: 400px;
}
LEGEND {
  font-weight: bold;
font-size: 1.3rem;
  }
  input[type="button"].boutonplus {
  font-size: 0.8rem;
  margin: 0 auto 20px auto;
  }
.logo_agenda, .logo_data, .logo_expertise, .logo_media {
 margin: 10px auto 30px;
  max-width: 40%;
  padding: 0 10px 10px 0;
}
  	.bandeau_bleu input[type="text"] {
  width: 90%;
  padding: 10px 20px;
  }
  .bandeau_bleu input[type="submit"] {
  position: relative;
  top: 0;
  right: 0;
  background: white;
  color: #0a97d9;
  padding: 0px 10px 0 10px;
  }
    .trois_colonnes {
  grid-template-columns: 1fr;
  column-gap: 30px;
  row-gap: 20px;
	} 	
	.hachures_bleue, .hachures_verte, .hachures_jaune, .hachures_violet {
  font-size: 2rem;
padding: 0px 20px;
}
.encart_tri div {
  padding: 10px 5px;
  margin: 5px 10px;
}
  #site-footer {
  margin: 0 auto;
}
	#site-footer section {
  padding: 0 20px;
}
.footer_abonnement {
  padding: 10px 20px 40px 20px;
  background: white;
}
.bloccompteur {
  font-size: 3.1rem;
  padding: 0;
  }
  .bthautpage {
  right: 0px;
  top:auto;
  bottom: -30px;
}

.documents_spip a {
  width: 100% ;
}
.documents_spip a::after {
display:none;
}
main.fiche_expert {
  padding: 20px;
  }
  h1.expert {
  font-size: 3.6rem;
}
.tagexpert2 {
  font-size: 1.7rem;
}
BODY.home H1, .traitrouge {
  font-size: 3.3rem;
  margin: 30px 0 50px 0;

}
.principale_agenda {
  position: relative;
  left: calc(50% - 49vw);
  width: 98vw;
  overflow: hidden;
}

}



@media print {
	#barre_noire, nav.primary-menu, .menu_outils, .lireaussi, #btrecherche, footer, #bt_partage {
	display: none;
	}
  @page {
        margin: 0.2in 0.6in ; /* Marge uniforme de 1 cm */
        size: a4 portrait;
    }	
}