/*
Theme Name: Bio Ariège Garonnne
URI: https://mon-webmaster.fr/
Author: Cédric lengagne
Version: 1.0
*/

/* Montserrat Regular (poids 400) */
@font-face{
  font-family:"Montserrat";
  font-style:normal;
  font-weight:300 900;           /* plage autorisée */
  src:url("/wp-content/themes/bag/fonts/montserrat-var.woff2") format("woff2");
  font-display:swap;
}

@font-face {
  font-family: 'AllerDisplay';
  src: url('fonts/AllerDisplay.ttf') format('truetype');
  font-style: normal; font-weight: normal; font-display: swap;
}


body { font-family: 'Montserrat', sans-serif; }


* {outline : none;}

html 	{width:100%; height:100%; margin:0; padding:0;}
body 	{ width:100%; height:100%; margin:0; padding:0; transition-duration:0.5s; background-color: #fff; overflow-x:hidden; }
a 		{ text-decoration: none!important; transition : all 0.3s; color:var(--vertf); transition-duration:0.3s!important; font-weight:bold; }
a:hover { text-decoration:none!important;}
button 	{transition: all 0.3s; }
iframe {
  touch-action: auto;
}
:root {
	--gris:		#626261;	/* Texte */
	--vert:		#8AB026;	/* Général/ éléments graphiques/ titres */
	--vert2: 	#DFE3A5;	/* Fonds */
	--vert3:	#B0CC48;	/* Maraîchage */
	--orange:	#F1A60F;	/* Fruits/Arbo */
	--jaune:	#F7CA09;	/* Grandes Cultures */
	--ocre:		#C25731;	/* Elevage */
	--mauve:	#AC90BA;	/* PPAM */
	--indigo:	#309C80;	/* Transversal, Comm/sensibilisation */
	--orange2:	#F9621F; 	/* Territoires & Projets Alimentaires */
	--vertf:	#5c6f24;	/* Vert foncé */
}

.has-gris-color            { color: #626261; }
.has-vert-color            { color: #8AB026; }
.has-vert2-color           { color: #DFE3A5; }
.has-vert3-color           { color: #B0CC48; }
.has-orange-color          { color: #F1A60F; }
.has-jaune-color           { color: #F7CA09; }
.has-ocre-color            { color: #C25731; }
.has-mauve-color           { color: #AC90BA; }
.has-indigo-color          { color: #309C80; }
.has-orange2-color         { color: #F9621F; }
.has-vertf-color           { color: #5c6f24; }

.has-gris-background-color     { background-color: #626261; }
.has-vert-background-color     { background-color: #8AB026; }
.has-vert2-background-color    { background-color: #DFE3A5; }
.has-vert3-background-color    { background-color: #B0CC48; }
.has-orange-background-color   { background-color: #F1A60F; }
.has-jaune-background-color    { background-color: #F7CA09; }
.has-ocre-background-color     { background-color: #C25731; }
.has-mauve-background-color    { background-color: #AC90BA; }
.has-indigo-background-color   { background-color: #309C80; }
.has-orange2-background-color  { background-color: #F9621F; }
.has-vertf-background-color    { background-color: #5c6f24; }

.has-tres-petit-font-size      { font-size: 0.75rem; }
.has-petit-font-size           { font-size: 0.875rem; }
.has-normal-font-size          { font-size: 1rem; }
.has-grand-font-size           { font-size: 1.25rem; }
.has-tres-grand-font-size      { font-size: 1.75rem; }
.has-titre-principal-font-size { font-size: 2.25rem; font-weight: bold; }

/* Style : invisible */
.wp-block-separator.is-style-separator-invisible {
	border: none !important;
	margin: 2rem auto;
	width:100%;
}

/* Style : vert pleine largeur */
.wp-block-separator.is-style-separator-vert-full {
	border-top: 4px solid var(--vert);
	width: 100%;
	margin: 2rem auto;
}

/* Style : vert 50% centré */
.wp-block-separator.is-style-separator-vert-half {
	border-top: 4px solid var(--vert);
	width: 50%;
	margin: 2rem auto;
}

#chiffres-cles { display:none; }
#menu-item-91 {    display: none!important;}

.reveal 			{ position: relative; transform: translateY(-80px); opacity: 0; transition: 1.2s all ease; z-index: 0; }
.reveal.on 			{ transform: translateY(0) !important; opacity: 1 !important; z-index: 99;}
.reveal-right 		{ position: relative; transform: translateX(100px); opacity: 0; transition: 1.2s all ease; z-index: 0;}
.reveal-right.on 	{ transform: translateX(0) !important; opacity: 1 !important; z-index: 99;}
.reveal-left 		{ position: relative; transform: translateX(-100px); opacity: 0; transition: 1.2s all ease; z-index: 0;}
.reveal-left.on 	{ transform: translateX(0) !important; opacity: 1 !important; z-index: 99;}


/* ===== HERO ===== HERO ===== HERO ===== HERO ===== HERO ===== HERO ===== HERO ===== HERO ===== HERO ===== */

nav#submenu { position:absolute; height: 100%; z-index: 5; right: 0; }
#submenu ul { display:flex; flex-wrap:nowrap; position:absolute; top:20px; right:0px;}
nav#submenu a { color:#fff!important; padding-left:20px; text-transform:uppercase; }
nav#submenu a:hover { color:var(--vert)!important; }

#hero-logo { position:absolute; z-index:4; display:block; text-align:left; top:20px; }
#hero-logo img { width:130px;  }
#hero-logo.hidden { display:none;  }


@media (min-width:1198px) {	.elem-1.hidden { opacity: 0; transform: translateY(-10px); pointer-events: none; width:0%!important; padding:0px!important;} }



/* Conteneur de la barre de recherche : transition entrée/sortie */
#search-bar-container{ position:absolute; width:100%; top:25%; transform: translateY(-8px) scale(1); opacity: 1; visibility: visible; transition: opacity .25s ease, transform .25s ease, visibility 0s linear 0s; pointer-events: auto; z-index:98; }

#hero-single #search-bar-container{ top:18%; }

#search-bar-container.hidden{ opacity:0; visibility:hidden; transform:translateY(-20px) scale(.98); transition:opacity .25s ease, transform .25s ease, visibility 0s linear .25s;pointer-events:none; }

#search-button				{ background-color:transparent; color:#fff; margin-top:-10px; border:none; }
#search-button svg 			{ transform: scale(1); transition: transform .2s ease; }
#search-button:hover svg, #search-button:focus-visible svg { transform: scale(1.1); }
#search-bar-id 				{ display:flex; width: 85%;  margin: auto;  }

#search-button-mobile		{ background-color:transparent; color:#000; width:45px; margin-top:1px; border:none; margin-right: 10px; }

#search-bar-id				{ position:relative; }
#search-bar-id input		{ border:none; width:100%; font-size:18px; z-index:99; outline:none; transition: box-shadow .2s ease, border-color .2s ease; padding:10px; }
#search-bar-id input:focus	{ box-shadow: 0 6px 24px rgba(0,0,0,.12); border-color: var(--vert); }
#search-bar-id button		{ background-color: var(--vert); color:#fff; border:none; width: 50px; position:absolute; right:0; z-index: 99; height: 100%; }
#search-button 				{ cursor: pointer; }

#resultats h2	{ color:var(--vert); font-weight:bold; font-size:2.5rem; margin-bottom:1.5rem; }
#resultats h3	{ color:var(--vertf); font-weight:bold; font-size:1.7rem; margin-top:2.5rem; margin-bottom:2.1rem; }
#resultats a	{ color:#000; font-weight:bold; transition-duration:0.3s; }
#resultats a:hover	{ color:var(--vert); }
.mark, mark { background-color: #8ab0264a!important; }

#resultats #documentsCards .titre { color: var(--vert); font-size: 1.4rem; font-weight: 600; }
#resultats #formations .titre { color: var(--vert); font-size: 1.4rem; font-weight: 700; }
#resultats #formations .date { color: var(--vertf); font-size: 1.15rem; font-weight: 700; margin-bottom:0.5rem; }
#resultats #postsCards .titre { font-size: 1.4rem; line-height: 1.6rem; font-weight: 700; margin-bottom: 0rem; }
#resultats #postsCards .date { color: var(--vertf); font-size: 1.15rem; font-weight: 700; margin-bottom:0.5rem; }

#search-bar-text-id { display: flex; margin-bottom: 30px; border-radius:5px; border: solid #000000aa 1px; padding:4px 5px; }
#search-bar-text-id button {  color: #000000aa; border: none; background:transparent!important; }
#search-bar-text-id input { border: none;  width: 90%; font-size: 1.18rem; }

/* ========================================================================================================================================== */
/* ==== ACCESSIBILITE ==== ACCESSIBILITE ==== ACCESSIBILITE ==== ACCESSIBILITE ==== ACCESSIBILITE ==== ACCESSIBILITE ===== ACCESSIBILITE ==== */
/* ========================================================================================================================================== */
:focus { outline: none; }
:focus-visible { outline: 2px solid var(--focus)!important; outline-offset: 2px; }

#nav-toggle:focus-visible,
#main-nav ul li a:focus-visible,
footer a:focus-visible
{ outline: 2px solid #fff!important; }
.sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }

.breadcrumb		{ margin-top:20px; padding-left: 15px; padding-right: 15px; }
.breadcrumb a { color: var(--vert)!important; z-index: 999; position: relative; }
.breadcrumb a span { display:block; }
.breadcrumb a:hover { color: var(--vertf)!important; }
.breadcrumb meta { display: none !important; }

/* ========================================================================================================================================== */
/* == INPUT FORM BUTTON ==== INPUT FORM BUTTON ==== INPUT FORM BUTTON ==== INPUT FORM BUTTON ==== INPUT FORM BUTTON ==== INPUT FORM BUTTON == */
/* ========================================================================================================================================== */
.forminator-select2 + .forminator-select .selection .select2-selection--single[role="combobox"]:focus, .forminator-select2 + .forminator-select.select2-container--open .selection .select2-selection--single[role="combobox"] { border-color: var(--vert)!important; background-color: #E6E6E6; }
.forminator-select-dropdown-container--open .forminator-custom-form-429.forminator-dropdown--default { border-color: var(--vert)!important; background-color: #E6E6E6; }
.forminator-design--default .forminator-select2 + .forminator-select .selection .select2-selection--single[role="combobox"]:focus .select2-selection__arrow, .forminator-design--default .forminator-select2 + .forminator-select.select2-container--open .selection .select2-selection--single[role="combobox"] .select2-selection__arrow { color: var(--vert)!important; }
.forminator-error-message {
    background-color: transparent !important;
    color: #E04562;
    width: 45%;
    margin-left: 35%!important;
    display: block;
    margin-top: -3px!important;
    margin-bottom: -28px!important;
}
.forminator-edit-module { display:none; }



.cta-button, .btn-primary, .forminator-button-submit	{ background-color: var(--vert); color:#fff!important; border:solid 2px var(--vert)!important; padding: 10px 20px; border-radius:6px; display: inline-block; }
.cta-button:hover, .btn-primary:hover, .forminator-button-submit:hover	{ background-color: transparent;color:var(--vert)!important; border:solid 2px var(--vert)!important; box-shadow: none!important; }
.cta-button:active, .btn-primary:active, .forminator-button-submit:active	{ background-color: transparent!important; color:var(--vert)!important; border:solid 2px var(--vert)!important; box-shadow: none!important; top: 2px;  }

.wp-block-button__link { padding: 10px 20px!important; border-radius:6px!important; border:solid 2px transparent!important; }
.wp-block-button__link:hover	{ background-color: transparent!important ;color:var(--vert)!important; border:solid 2px var(--vert)!important; box-shadow: none!important; }


/* Style par défaut - hérite déjà de tes règles */
#contenu  .wp-block-button.is-style-btn-vert a ,
#contenu  .wp-block-button.is-style-btn-inverse a {text-decoration:none!important;     font-weight: 500 !important; }
.wp-block-button.is-style-btn-vert a {
	background-color: var(--vert)!important;
	color: #fff !important;
	border: 2px solid var(--vert) !important;
	transition: all 0.2s ease;
}
.wp-block-button.is-style-btn-vert a:hover {
	background-color: transparent !important;
	color: var(--vert) !important;
}

/* Variante inversée – à utiliser sur fond foncé */
.wp-block-button.is-style-btn-inverse a {
	background-color: transparent!important;
	color: var(--vert) !important;
	border: 2px solid var(--vert) !important;
}
.wp-block-button.is-style-btn-inverse a:hover {
	background-color: var(--vert)!important;
	color: #fff !important;
}



.blog-card h2 { font-weight:600; text-transform:uppercase; font-size:18px!important; display:inline-block; margin:auto; width:auto; margin-bottom:20px!important; color:#000!important; transition-duration:0.3s; }
.blog-card h2:hover { color:var(--vert)!important; }


.forminator-checkbox input:checked + .forminator-checkbox-box { border-color: var(--vertf)!important; background-color: #EDEDED; }
.forminator-ui.forminator-custom-form[data-design=default] .forminator-checkbox .forminator-checkbox-box:before { color: var(--vertf)!important; }


.forminator-radio input:checked + .forminator-radio-bullet {border-color:var(--vertf)!important; }
.forminator-radio .forminator-radio-bullet:before { background-color: var(--vertf)!important; }

.forminator-radio-bullet { border-radius:0px!important; }

.forminator-checkbox.forminator-is_checked span { font-weight: 600; }
.forminator-radio.forminator-is_checked span { font-weight: 600; }
/* ==================================================================================================================================== */
/* ===== HOMEPAGES===== HOMEPAGES ===== HOMEPAGES ===== HOMEPAGES ===== HOMEPAGES ===== HOMEPAGES ===== HOMEPAGES ===== HOMEPAGES ===== */
/* ==================================================================================================================================== */
#hero-banner 			{ height:700px;background-size:cover;background-position:top;position:relative;display:flex; align-items:center; justify-content:center; color:white; text-align:center; }
#hero-banner::after 	{ content: ''; position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: rgba(0, 0, 0, 0.3); }
#hero-content 			{ position: relative; z-index: 1; }
#hero-banner .text-1 	{ text-transform:uppercase; font-size:2.5rem!important; font-weight:900; z-index:2; position:relative; }

#home-actus .text-1 	{ color:var(--vert); font-size:2.2rem; font-weight:800;  }
#home-actus .text-2 	{ color:var(--vert); font-size:1.6rem; font-weight:700;  }


#home-actus .owl-actus		{  }
#home-actus .card-actu		{ max-width:300px; margin: auto; text-align: center; position:relative; }
#home-actus .card-actu-body { position:absolute; width:100%; height: 100%; z-index:2; top:0; background-color: #00000066; }
#home-actus .card-actu-title 			{ color:#fff; font-weight:800; padding:0 25px; font-size:1.5rem; }
#home-actus .card-actu-body .cta 	{ color:#000;background-color:#fff;border:solid 2px #fff; padding:6px 6px 4px; text-transform:uppercase;font-weight:600;margin:auto;margin-top:5px;margin-bottom: 10px; font-size:0.75rem; }
#home-actus .card-actu-body .cta:hover 	{ color:#fff; background-color:transparent; }
#home-actus .card-actu-body img	{ margin-top:5px;margin-bottom: 10px;}

.owl-nav { position: absolute; top: 25%; width: 100%; transform: translateY(-50%); display: flex; justify-content: space-between; pointer-events: none; }

.owl-nav button.owl-prev,
.owl-nav button.owl-next { width:40px; height:40px; color:var(--vert)!important; box-shadow:none; pointer-events:all; transition:all 0.3s ease; font-size:5rem!important; }

.owl-nav button.owl-prev:hover,
.owl-nav button.owl-next:hover { color: #fff; font-size: 5.2rem; }


#home-qui 				{ background-color:var(--vert); color:#fff; }
#home-qui .text-1 		{ font-size:3.8rem; font-weight:800; text-align:right; max-width:320px; float:right; }
#home-qui .text-2 		{ font-size:1.6rem; font-weight:700;  }
#home-qui .cta 			{ color:var(--vert); background-color:#fff; border:solid 2px #fff; padding:6px 13px 8px; border-radius:10px; font-size:1.05rem; }
#home-qui .cta:hover 	{ color:#fff; background-color:transparent; }

#home-formations .text-1 		{ color:var(--vert); font-size:2.2rem; font-weight:800;  }
#home-formations .text-2 		{ color:var(--vert); font-size:1.6rem; font-weight:700;  }
#home-formations .cta 			{ color:#fff; background-color:var(--vert); border:solid 2px var(--vert); padding:6px 13px 8px; border-radius:10px; font-size:1.05rem; }
#home-formations .cta:hover 	{ color:var(--vert); background-color:transparent; }


.formation-container 		{ position:relative; width: 208px;}
.ombre 						{ position:absolute; bottom:0px; transform: translateX(0%) translateY(100%); }
.formation-container a p 	{ position:absolute; top:40%; width:100%; text-align:center; font-weight:800; text-transform:uppercase; color:#fff; font-size:1.3rem; transition-duration:0.3s; }
.formation-container a:hover p 			{ color:var(--vert)!important; }
.formation-container .catalogue 		{ width:100%; height:auto; transition: filter .25s ease; display:block; }
.formation-container:hover .catalogue			{ filter: brightness(.5); }
.agenda-container 			{ max-width: 500px; margin: auto; border-radius: 8px; padding: 1rem; background: #fff; }
.agenda-header 				{ display: flex; align-items: center; justify-content: space-between; margin-bottom: 1rem; gap: 5px; }
.agenda-header #monthYear	{ flex: 1; text-align: center; font-size: 1.3rem; text-transform:uppercase; color:var(--vert); }
.agenda-header button 		{ background: #f0f0f0; border: none; padding: 6px 10px; font-size: 1.1rem; border-radius: 4px; cursor: pointer; transition-duration:0.3s; }
.agenda-header button:hover	{ background: var(--vert); color:#fff; }
.agenda-calendar 			{ width: 100%; border-collapse: collapse; }
.agenda-calendar th,
.agenda-calendar td 		{ width: 14.28%; padding: 0.35rem; text-align: center; border: 1px solid #eee; }
.agenda-calendar td 		{ height: 70px; }
#agenda 					{ position: relative; overflow: visible; }
.has-formation 				{ padding: 4px; border-radius: 4px; font-weight: bold; text-align: center; cursor: pointer; position: relative; color:#fff; height: 100%; }
.formation-popover { position: absolute; background: white; border: 1px solid #ccc; padding: 0.5rem; border-radius: 6px; box-shadow: 0 4px 12px rgba(0,0,0,0.1); z-index: 9999;
  min-width: 220px; max-width: 100%; }
.popover-link 				{ display: block; padding: 4px 4px; text-decoration: none; font-size: 0.85rem; font-weight:700; }
.popover-link:hover 		{ text-decoration:underline!important; }

#home-consommer .text-1 	{ color:var(--vert); font-size:7rem; font-weight:900; margin-bottom:2rem; }
#home-consommer .text-2 	{ color:#000000aa; }
#home-consommer img		 	{ max-width:553px; width: 100%; height:auto; }




/* XL — Moins de 1400px */
@media (max-width: 1399.98px) {
	#home-consommer .text-1 	{ font-size:5rem; }
}

/* LG — Moins de 1200px */
@media (max-width: 1199.98px) {
	#home-consommer .text-1 	{ font-size:4rem; }
}

/* MD — Moins de 992px */
@media (max-width: 991.98px) {
	#home-consommer .text-1 	{ font-size:3.5rem; }
}

/* SM — Moins de 768px */
@media (max-width: 767.98px) {
	#home-qui .text-1 		{ font-size:3.8rem; font-weight:800; text-align:left; max-width:100%; float:none; }
	#home-consommer .text-1 	{ font-size:3rem; }
}

/* XS — Moins de 576px */
@media (max-width: 575.98px) {
	.formation-container { width: 100%; }
	#home-consommer .text-1 	{ font-size:2.5rem; }
}


/* XXS — Moins de 379.95px */
@media (max-width: 379.95px) {
	#hero-banner .text-1 { font-size:1.8rem!important; }
	.formation-container { width: 100%; }
	#home-consommer .text-1 { font-size:2rem; }
	.formation-container a p { font-size: 1.05rem; }
}



/* ============================================================================================================================ */
/* ===== PAGES===== PAGES ===== PAGES ===== PAGES ===== PAGES ===== PAGES ===== PAGES ===== PAGES ===== PAGES ===== PAGES ===== */
/* ============================================================================================================================ */

#presentation-par-bloc .text-1 	{ color:var(--vert); font-weight:800; font-size:3rem; }
#presentation-par-bloc .text-2 	{ color:var(--vert); font-weight:800; font-size:2rem; }
#presentation-par-bloc .text-3 	{ color:#000000aa; font-size:1rem; }
#presentation-par-bloc .bloc 	{ position: relative; max-width: 300px; margin: auto; margin-bottom: 3rem; overflow: hidden; }
#presentation-par-bloc a 		{ display: block; width: 100%; height: 100%; position: relative; z-index: 1; }
#presentation-par-bloc a::after { content:''; position:absolute; inset:0; background-color:#00000088; z-index:2; transition:background-color 0.3s ease; }
#presentation-par-bloc .draft 			{ display: block; width: 100%; height: 100%; position: relative; z-index: 1; }
#presentation-par-bloc .draft::after 	{ content:''; position:absolute; inset:0; background-color:#00000088; z-index:2; transition:background-color 0.3s ease; }
#presentation-par-bloc img 		{ display: block; width: 100%; height: auto; z-index: 0; }
#presentation-par-bloc h3 		{ position:absolute; top:50%;left:50%;transform:translate(-50%,-50%);z-index:3;color:#fff;font-weight:800;font-size:1.5rem;text-align:center;width:100%;padding:0 1rem; }
#presentation-par-bloc a h3:hover { color:var(--vert); }
#presentation-par-bloc a:hover::after { background-color: #000000cc;}


/* ===== FORMATIONS ===== FORMATIONS ===== FORMATIONS ===== FORMATIONS ===== FORMATIONS ===== FORMATIONS ===== FORMATIONS ===== FORMATIONS ===== */

#formations .text-1 		{ color:var(--vert); font-size:2.2rem; font-weight:800;  }
#formations .text-2 		{ color:var(--vert); font-size:1.6rem; font-weight:700;  }
#formations .cta 			{ color:#fff; background-color:var(--vert); border:solid 2px var(--vert); padding:6px 13px 8px; border-radius:10px; font-size:1.05rem; }
#formations .cta:hover 		{ color:var(--vert); background-color:transparent; }


.cat-checkbox 				{ appearance:none; width:1.2rem;height:1.2rem; border:2px solid var(--cat-color, #d4edda); border-radius:.25rem; cursor:pointer; position:relative; margin-bottom: 0.4rem; }
.cat-checkbox::before		{ content:''; position:absolute; inset:0; background:var(--cat-color, #d4edda); opacity:0; transition:opacity .15s; }
.cat-checkbox:checked::before	{ opacity:1; }
.form-check-label 	{font-size: 1.1rem;}

#formations .agenda-container 			{ max-width: 500px; margin: auto; border-radius: 8px; padding: 0rem; background: #fff; }
.agenda-header 				{ display: flex; align-items: center; justify-content: space-between; margin-bottom: 1rem; gap: 5px; }
.agenda-header #monthYear	{ flex: 1; text-align: center; font-size: 1.3rem; text-transform:uppercase; color:var(--vert); }
#formations .agenda-header button 		{ background: #f0f0f0; border: none; padding: 6px 10px; font-size: 0.9rem; border-radius: 4px; cursor: pointer; }
.agenda-calendar 			{ width: 100%; border-collapse: collapse; font-size: 0.9rem; }
#formations .agenda-calendar th,
.agenda-calendar td 		{ width: 14.28%; padding: 0rem; text-align: center; border: 1px solid #eee; }
.agenda-calendar td 		{ height: 46px; }
#agenda 					{ position: relative; overflow: visible; }
#formations .has-formation 	{ height:100%; }
#formations .date 			{ color:var(--vertf); font-size:1.4rem; font-weight:800;margin-bottom: 0rem; }
#formations .titre 			{ color:var(--vert); font-size:1.7rem; font-weight:800;margin-bottom: 0rem; }
#formations .categorie 		{ color:#fff; position:absolute; text-transform:uppercase; text-align:center; font-size:1.3rem; font-weight:800;margin-bottom: 0rem;z-index:3; pointer-events: none; padding: 0px 5px; }
#formations .img-wrapper 				{ position: relative; overflow: hidden; display: flex; align-items: center; justify-content: center; height: 100%; }
#formations .img-card-formation 		{ width:100%; height:100%; display:block; object-fit:cover; }
#formations .img-wrapper::after 		{ content: ''; position: absolute; inset: 0; background-color: #00000044; z-index: 2;pointer-events: none; }

#hero-single 			{ height:300px; background-color:var(--vert); display:flex; align-items:center; justify-content:center; color:white; text-align:center; }
#hero-single::after 	{ content: ''; position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: rgba(0, 0, 0, 0.3); }
#hero-single 			{ position: relative; z-index: 1; }
#hero-single .text-1 	{ text-transform:uppercase; font-size:2.5rem!important; font-weight:900; z-index:2; position:relative; }
.sidebar-photo 			{ border-radius:100%; width:140px; height:140px; object-fit: cover; margin-bottom:0.5rem; }
.sidebar-nom			{ color:var(--vert); font-size:1rem; font-weight:700; margin-bottom:0px; }
.sidebar-poste			{ font-size:0.9rem; font-weight:700; margin-bottom:0px; }
.sidebar-mail			{ font-size:0.8rem; margin-bottom:0px; }
.sidebar-tel			{ font-size:0.8rem; margin-bottom:0px; }
.formation-info .text-1	{  }
.formation-info .text-2	{  }
.formation-info .text-3	{  }

#formation-formulaire h2	{ color:var(--vert); font-weight:800; font-size:2.4rem; }
.financeur img 		{ max-height:120px; height:auto; width:auto; max-width:100%; }

#loadingSpinner {position:absolute; width:100%; height: 100%; background-color: #ffffffaa;}





/* XS — Moins de 576px */
@media (max-width: 575.98px) {
	#formations .img-card-formation { width: 100%; height: 100%; display: block; object-fit: cover; max-height:250px; }
	#formations .titre { font-size:1.4rem; font-weight:800; }
}


/* XXS — Moins de 379.95px */
@media (max-width: 379.95px) {
	#formations .titre { font-size:1.3rem; font-weight:800; }
}


/* ===== DOCUMENTS =====  DOCUMENTS =====  DOCUMENTS =====  DOCUMENTS =====  DOCUMENTS =====  DOCUMENTS =====  DOCUMENTS =====  DOCUMENTS =====  DOCUMENTS ===== */
#documents .text-1 			{ color:var(--vert); font-size:2.2rem; font-weight:800;  }
#documents .text-2 			{ color:var(--vert); font-size:1.6rem; font-weight:700;  }
#documents .cta 			{ color:#fff; background-color:var(--vert); border:solid 2px var(--vert); padding:6px 13px 8px; border-radius:10px; font-size:1.05rem; }
#documents .cta:hover 		{ color:var(--vert); background-color:transparent; }
#documentsCards .titre 		{ color:var(--vert); font-size:1.7rem; font-weight:800;margin-bottom: 0rem; }
#documentsCards .categorie 	{ color:#fff; position:absolute; text-transform:uppercase; text-align:center; font-size:1.3rem; font-weight:800;margin-bottom: 0rem;z-index:3; pointer-events: none; padding: 0px 5px; }
#documentsCards p 			{ font-size:1rem; }
#documentsCards .btn  		{ align-self:baseline; margin-bottom: 2rem; }

#documentsCards .img-wrapper 				{ position: relative; overflow: hidden; display: flex; align-items: center; justify-content: center; max-width:212px;  }
#documentsCards .img-card-formation 		{ width:100%;  display:block; object-fit:cover; aspect-ratio: 29 / 41;  }
#documentsCards .img-wrapper::after 		{ content: ''; position: absolute; inset: 0; background-color: #00000011; z-index: 2;pointer-events: none; }


/* ===== ACTUALITES =====  ACTUALITES =====  ACTUALITES =====  ACTUALITES =====  ACTUALITES =====  ACTUALITES =====  ACTUALITES =====  ACTUALITES =====  ACTUALITES ===== */
#documents .text-1 			{ color:var(--vert); font-size:2.2rem; font-weight:800;  }
#documents .text-2 			{ color:var(--vert); font-size:1.6rem; font-weight:700;  }
#documents .cta 			{ color:#fff; background-color:var(--vert); border:solid 2px var(--vert); padding:6px 13px 8px; border-radius:10px; font-size:1.05rem; }
#documents .cta:hover 		{ color:var(--vert); background-color:transparent; }
#postsCards .postcard		{ border:solid 2px var(--vert); border-radius:10px; display: inline-block; }
#postsCards .innerContainer	{ padding:15px; }
#postsCards img			{ width:100%; height:auto; border-top-left-radius:10px; border-top-right-radius:10px; }
#postsCards .titre 		{ color:var(--vert); font-size:1.4rem; line-height:1.6rem; font-weight:800;margin-bottom: 0rem; }
#postsCards .date 		{ color:var(--vertf); font-size:1.3rem; line-height:1.5rem; font-weight:800;margin-bottom: 0rem; }

#postsCards p 			{ font-size:1rem; }
#postsCards .btn  		{ align-self:baseline; margin-bottom: 2rem; margin:auto; }




/* ===== CHIFFRES-CLES ===== CHIFFRES-CLES ===== CHIFFRES-CLES ===== CHIFFRES-CLES ===== CHIFFRES-CLES ===== CHIFFRES-CLES ===== CHIFFRES-CLES ===== */
.card-chiffres 			{ background-color:var(--vert); text-align:center; color:#fff; padding:1.3rem 1rem; max-width:28%; margin:auto; border-radius:20px; }
.card-chiffres img 		{ width:130px; height:auto; }
.card-chiffres span 	{ display:block; font-size:1.3rem; }
.card-chiffres span:first-of-type { font-weight:700; }
.card-chiffres.cc3 img 	{ width:100px; }
#chiffres .text-1	{ color: var(--vert); font-weight: 800; font-size: 3rem; }
#chiffres .text-2	{ font-weight:700; }
#chiffres .text-3	{ color: var(--vert); font-weight: 700; font-size: 2rem; }
#chiffres .text-4	{}




/* ===== CONTACT ====== CONTACT ====== CONTACT ====== CONTACT ====== CONTACT ====== CONTACT ====== CONTACT ====== CONTACT ====== CONTACT ====== CONTACT ====== */
#formulaire .text-1 	{ font-weight:800; font-size:2.6rem; color:var(--vert); margin-bottom:5rem;  }
#formulaire .text-2 	{ font-weight:800; font-size:1.1rem; color:var(--vert);   }
#formulaire .text-3 	{  }
.forminator-field 			{ display:flex; flex-wrap:wrap; }
.forminator-field label 	{ width:35%!important; text-align:right; padding-right:2rem; font-size:1.1rem!important; color: #000000aa; }
.forminator-field input 	{ width:60%!important; max-width:500px!important; border-radius:5px!important; }
.forminator-field textarea 	{ width:60%!important; max-width:500px!important; border-radius:5px!important; }
.forminator-field-select  .forminator-field .select2 	{ width:60%!important; max-width:500px!important; min-width:280px!important; display:block; }
.forminator-field-select  .forminator-field .select2 .select2-selection { background-color: #ffffff!important; border-radius:5px!important; }
.forminator-button-submit { margin-left: 35%!important; border-radius:15px!important; }
.forminator-field-checkbox span:first-of-type { width:35%; text-align:right; padding-right:2rem; font-size:1.1rem!important; color: #000000aa; }
.forminator-field-checkbox label { font-size:0.9rem!important; color:#000000aa; margin-left:35%!important; margin-bottom:1.1rem!important; margin-bottom:0.5rem!important; margin-top:0.5rem!important; text-align:left; width:50%!important; }
.forminator-field-checkbox label:first-of-type { margin-left:0%!important; }
.forminator-field-radio span:first-of-type { width:35%!important; text-align:right; padding-right:2rem; font-size:1.1rem!important; color: #000000aa; }
.forminator-field-radio label 	{ font-size:0.9rem!important; color:#000000aa; margin-left:35%!important; margin-bottom:1.1rem; margin-bottom:0.5rem; margin-top:0.5rem; text-align:left; width:50%;}
.forminator-field-radio label:first-of-type { margin-left:0%!important; }

.single-formation .forminator-field-checkbox label:first-of-type { margin-left: 35% !important; }
.forminator-checkbox__wrapper label 	{ width:auto ; text-align:right; padding-right:0rem; }
.forminator-checkbox__wrapper { margin-left:35%; }

.forminator-field-consent span:first-of-type { width:35%!important; text-align:right; padding-right:2rem; font-size:1.1rem!important; color: #000000aa; }
.forminator-field-consent .forminator-checkbox__label 	{ font-size:0.9rem!important; color:#000000aa; margin-left:44px!important; margin-bottom:1.1rem; margin-bottom:0.5rem; margin-top:0rem; text-align:left; width:50%;}
.forminator-field-consent .forminator-checkbox__wrapper { margin-left:35%; }
.forminator-field-consent .forminator-field label 	{ width:0%!important;}

/* --- Trombinoscope --- */
#trombinoscope 			{ background-color:var(--vert); color:#fff; }
#trombinoscope .text-1 	{ font-weight:800; font-size:2.6rem; margin-bottom:4rem; }
.trombino-card  		{ text-align:center; margin-bottom:2rem; }
.trombino-card img 		{ border-radius:100%; display:block; margin:auto; margin-bottom:0.7rem; width:220px; height:220px; object-fit:cover; border: solid 4px #fff; }
.trombino-pole 			{ font-size:1.18rem;text-transform:uppercase;background-color:#fff;color:var(--vert);font-weight:700;padding:3px 8px;display:inline-block;margin:auto;margin-bottom:1rem; }
.trombino-nom 			{ font-size:1.18rem; font-weight:700; margin-bottom:0rem; }
.trombino-poste			{ font-size:1.05rem; margin-bottom:0.2rem; }
.trombino-tel			{ font-size:1.08rem; margin-bottom:0rem; }
.trombino-mail a		{ font-size:1.08rem; color:var(--vert); margin-bottom:0rem; }
#trombinoscope .trombino-mail a		{ font-size:1.08rem; color:#fff; margin-bottom:0rem; }



.wp-block-file 		{ text-align:center; }
.wp-block-file a 	{display:none;}
.wp-block-file a.wp-element-button { display:inline-block; margin:auto; margin-top:35px; background-color: var(--vert); color: #fff !important; border: solid 2px var(--vert) !important; padding: 10px 20px; border-radius: 6px;} 
.wp-block-file a.wp-element-button:hover { background-color: transparent; color: var(--vert) !important; }

/* Responsive breakpoint */
@media (max-width: 991px) {
	#filter-form {
	  position: fixed; top: 0; right: 0; bottom: 0; left: 0; background: #fff; padding: 1.5rem; overflow-y: auto; transform: translateY(100%); transition: transform .3s ease;
	  z-index: 998; }
	button.filtrer-texte { display:none; }

	/* Classe visible */
	#filter-form.open { transform: translateY(0); }
	  .mobile-filter-btn { display: block; }
}
@media (max-width: 767px) {
	#filter-form {
	  position: fixed; top: 0; right: 0; bottom: 0; left: 0; background: #fff; padding: 1.5rem; overflow-y: auto; transform: translateY(100%); transition: transform .3s ease;
	  z-index: 998; }
	button.filtrer-texte { display:none; }

	/* Classe visible */
	#filter-form.open { transform: translateY(0); }
	  .mobile-filter-btn { display: block; }
}

/* XS — Moins de 576px */
@media (max-width: 575.98px) {
	.forminator-field 			{ display:flex; flex-wrap:wrap; }
	.forminator-field label 	{ width:100%!important; text-align:left; padding-right:2rem; font-size:1.1rem!important; color: #000000aa; }
	.forminator-field input 	{ width:100%!important; max-width:100%!important; }
	.forminator-field textarea 	{ width:100%!important; max-width:100%!important; }
	.forminator-field-select  .forminator-field .select2 	{ width:100%!important; max-width:100%!important; min-width:100%!important; display:block; }
	.forminator-field-select  .forminator-field .select2 .select2-selection { background-color: #ffffff!important; border-radius:5px!important; }
	.forminator-button-submit { margin-left: 0%!important; }

	.forminator-field-checkbox span:first-of-type { width:100%!important; text-align:left; padding-right:2rem; font-size:1.1rem!important; color: #000000aa; }
	.forminator-field-checkbox label { font-size:0.9rem!important; color:#000000aa; margin-left:0%!important; margin-bottom:1.1rem; margin-bottom:0.5rem; margin-top:0.5rem; text-align:left; }
	.forminator-field-checkbox label:first-of-type { margin-left:0%!important; }

	.forminator-field-radio span:first-of-type { width:100%!important; text-align:left; padding-right:2rem; font-size:1.1rem!important; color: #000000aa; margin-top:3rem; }
	.forminator-field-radio label 	{ font-size:0.9rem!important; color:#000000aa; margin-left:0%!important; margin-bottom:1.1rem; margin-bottom:0.5rem; margin-top:0.5rem; text-align:left; width:100%!important;}
	.forminator-field-radio label:first-of-type { margin-left:0%!important; }
	.forminator-button-submit { margin-top:4rem!important; }
	.single-formation .forminator-field-checkbox label:first-of-type { margin-left: 0% !important; }
	
	.forminator-field-consent span:first-of-type { width:35%!important; text-align:right; padding-right:2rem; font-size:1.1rem!important; color: #000000aa; }
	.forminator-field-consent .forminator-checkbox__label 	{ width: 100%; margin-left: 13px !important; }
	.forminator-field-consent .forminator-checkbox__wrapper { margin-left:0%!important; }
	.forminator-field-consent .forminator-field label 	{ width:0%!important;}

}


/* ============================================================================================================================ */
/* ===== BLOG ===== BLOG ===== BLOG ===== BLOG ===== BLOG ===== BLOG ===== BLOG ===== */
/* ============================================================================================================================ */

/* === SINGLE === SINGLE === SINGLE === SINGLE === SINGLE === SINGLE === */
.encart-vert { background-color:var(--vert)!important; padding-top: 0.5rem; padding-bottom: 1.5rem; }
.encart-vert :where(h1,h2,h3,h4,h5,h6,p,ul,ol,blockquote) { color: #ffffff; padding-top: 0.6em; padding-bottom: 0.6em; }
.encart-vert :where(p, li) { line-height: 1.6; }
.encart-vert__inner > :first-child { margin-top: 0; }
.encart-vert__inner > :last-child  { margin-bottom: 0; }
.the-content a, #contenu a { font-weight:bold!important; text-decoration:underline!important; }
.the-content a:hover, #contenu a:hover { color:var(--vert)!important; }

.post-nav-h2 { color:var(--vert)!important; font-weight:700; font-size:1.5rem!important; }
.post-nav-card{ border:solid 2px var(--vert); border-radius:1rem; overflow:hidden; background:#fff; box-shadow:0 6px 18px rgba(0,0,0,.08); transition:transform .2s ease, box-shadow .2s ease; text-decoration:none;}
.post-nav-card:hover{ transform:translateY(-2px); box-shadow:0 12px 28px rgba(0,0,0,.12); }
.post-nav-thumb{ aspect-ratio:16/9; background-size:cover; background-position:center; }
.post-nav-topline{ display:flex; justify-content:space-between; align-items:center; gap:.75rem; margin-bottom:.25rem;}
.post-nav-badge{ display:inline-block; font-size:.75rem; line-height:1; padding:.4rem .6rem; background:#DFE3A5; color:#2a3b0b; border-radius:999px; font-weight:600;}
.post-nav-label{ font-size:.85rem; opacity:.7; white-space:nowrap; }
.post-nav-title{ margin:.25rem 0 .25rem; font-weight:700; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; color:var(--vert)!important; }
.post-nav-date{ font-size:.85rem; opacity:.7; }

/* === CONTACT === CONTACT === CONTACT === CONTACT === CONTACT === CONTACT === */
.wpcf7-form input, .wpcf7-form select, .wpcf7-form textarea { width:100%; border-radius:6px; padding: 4px 2px; border: solid 2px #00000044 !important; min-height:20px; }



.wpcf7-form label 		{ display:block; text-transform:uppercase; }

.wpcf7-form input[type=submit] 			{ background-color:var(--vert); color:#fff; padding: 10px; border:solid 1px var(--vert); border-radius:6px; transition-duration:0.3s; }
.wpcf7-form input[type=submit]:hover 	{ background-color:transparent; color:var(--vert); }
.wpcf7-form input:active 				{ border:solid 1px var(--vert)!important; }
.wpcf7-form textarea:active 			{ border:solid 1px var(--vert)!important; }

#map { width:100%; min-height:100%; height:450px; border-radius:6px; }


/* ========================================================================================================================== */
/* ===== FOOTER ===== FOOTER ===== FOOTER ===== FOOTER ===== FOOTER ===== FOOTER ===== FOOTER ===== FOOTER ===== FOOTER ===== */
/* ========================================================================================================================== */
footer .separator	{ width:100%; height:auto; }
footer .container 	{ margin-top:-30px; }
footer .logo		{ width:100%; height:auto; max-width:160px; }
footer .text-1 		{ font-size:0.8rem; color: #000000aa; font-weight:bold; margin-bottom:0.2rem; display:block; }
footer .text-2 		{ font-size:0.8rem; color: #000000aa; display:block; }
footer .text-3 		{ font-size:0.8rem; color: var(--vert); margin-top:0.3rem; display:block; }
#footerMenu			{ margin-top:0.8rem; }
#footerMenu a 		{ font-size:0.8rem!important; color:#000000aa!important; }
#footerMenu ul 		{ display:flex; flex-wrap:wrap; }
#footerMenu li 		{ padding-right:0.5rem; }
#subFooter 			{ margin-top:1rem; }
#subFooter a 		{ font-size:0.8rem; color:#000000aa; }
#footerMenu a:hover, #subFooter a:hover { color:var(--vert)!important; }

/* ============================================================================================================================= */
/* ===== MEDIA QUERIES ===== MEDIA QUERIES ===== MEDIA QUERIES ===== MEDIA QUERIES ===== MEDIA QUERIES ===== MEDIA QUERIES ===== */
/* ============================================================================================================================= */



/* Extra large devices (large desktops) */
@media (max-width: 1399.98px) {

}

/* Large devices (desktops) */
@media (max-width: 1199.98px) {

}

/* Medium devices (tablets) */
@media (max-width: 991.98px) {
	footer .separator { height: 220px; object-fit: cover; }
}

/* Small devices (landscape phones) */
@media (max-width: 767.98px) {
	#hero-banner { height: 500px; }
	#documentsCards .titre { font-size: 1.4rem; line-height:1.7rem; font-weight: 700; }
		.card-chiffres 			{  max-width:100%; margin-bottom:2rem; }
	#hero-single .text-1 { font-size: 2rem !important; }
	#hero-single { height: auto; min-height: 300px; padding-top: 20px; padding-bottom: 20px; }
}

/* Extra small devices (phones) */
@media (max-width: 575.98px) {
	#documentsCards .img-wrapper { max-width: 335px; }
	#hero-single .text-1 { font-size: 1.8rem !important; }
	#hero-single { height: auto; min-height: 300px; padding-top: 20px; padding-bottom: 20px; }
	footer .logo { margin-bottom: 20px; max-width: 110px; }

}

@media (max-width:359px) {
	.agenda-calendar { font-size: 0.8rem; }
}