html
{
overflow-x: hidden;
}


/*
Polices
*/

@font-face
{
font-family: 'Inter';
font-style: normal;
font-weight: 400 700;
font-display: swap;
src: url('../fonts/inter-latin-variable.woff2') format('woff2');
}

@font-face
{
font-family: 'Montserrat';
font-style: normal;
font-weight: 700 800;
font-display: swap;
src: url('../fonts/montserrat-latin-variable.woff2') format('woff2');
}

/*
Règles générales
*/

:root
{
--color1: #6ba37e;
--color2: #f9ab1a;
--color3: #0b5c33;
--color4: #212529;
--color5: #5b6570;
--color6: #f5f7f6;
--color7: #036b38;
--color8: #e2990e;
--color9: #ffe4b3;
--color10: #f2f8f4;
--color11: #fdf6e9;
--color12: #017b40;
--color13: #fdf3dd;
--color14: #eef5f0;
--color15: #00934c;
--color16: #e6e9ec;
--color17: #d9dee3;
--font1: 'Inter', sans-serif;
--font2: 'Montserrat', sans-serif;
}

body
{
font-family: var(--font1);
color: var(--color5);
font-size: 16.5px;
background-color: #fff;
}

h1,
h2,
h3,
h4,
h5,
h6
{
font-family: var(--font2);
font-weight: 700;
color: var(--color4);
}

a
{
color: var(--color1);
text-decoration: none;
}

a:hover,
a:active,
a:focus
{
color: var(--color7);
text-decoration: none;
}

/*
Boutons
*/

.btn_std,
.btn_std:active,
.btn_std:focus
{
display: inline-block;
background-color: var(--color1);
color: #fff;
border: none;
font-family: var(--font2);
font-weight: 700;
font-size: 13px;
text-transform: uppercase;
letter-spacing: 0.04em;
text-align: center;
padding: 13px 24px;
border-radius: 999px;
box-shadow: 0 6px 16px rgba(0, 163, 81, 0.35);
transition: background-color 0.3s ease;
cursor: pointer;
}

.btn_std:hover
{
background-color: var(--color7);
color: #fff;
border: none;
}

.btn_std.color2,
.btn_std.color2:active,
.btn_std.color2:focus
{
background-color: var(--color2);
box-shadow: 0 6px 16px rgba(249, 171, 26, 0.35);
}

.btn_std.color2:hover
{
background-color: var(--color8);
}

/*bouton retour en haut*/
.back-to-top
{
cursor: pointer;
position: fixed;
bottom: 20px;
right: 20px;
display:none;
z-index: 999;
border-radius: 4px;
width: 40px;
height: 40px;
background: rgba(128,128,128,0.8);
text-align: center;
transition: background 0.7s ease-in-out;
z-index: 500;
}

.back-to-top,
.back-to-top:hover,
.back-to-top:active,
.back-to-top:focus
{
color: #fff;
}

.back-to-top:hover
{
background: rgba(128,128,128,1);
transition: background 0.7s ease-in-out;
}

.back-to-top i
{
line-height: 40px;
}

.site_footer .legal
{
font-size: 11px;
text-align: center;
padding-top: 15px;
}

/*
Header : barre coordonnées
*/

.header_topbar
{
background-color: var(--color1);
color: #fff;
font-size: 13.5px;
padding: 8px 0;
}

.header_topbar__container
{
display: flex;
justify-content: space-between;
align-items: center;
}

.header_topbar__address
{
display: flex;
align-items: center;
gap: 8px;
}

.header_topbar__phone
{
color: #fff;
font-weight: 700;
display: flex;
align-items: center;
gap: 8px;
}

.header_topbar__phone:hover,
.header_topbar__phone:active,
.header_topbar__phone:focus
{
color: var(--color9);
}

/*
Header : menu principal
*/

.site_header
{
background-color: #fff;
}

.main-nav
{
background-color: #fff;
box-shadow: 0 2px 14px rgba(20, 40, 30, 0.08);
position: relative;
z-index: 100;
}

.main-nav-clone
{
position: fixed;
top: 0;
left: 0;
right: 0;
width: 100%;
z-index: 999;
background: #fff;
opacity: 0;
visibility: hidden;
transform: translateY(-12px);
transition: opacity 0.3s ease, transform 0.3s ease, visibility 0.3s ease;
pointer-events: none;
}

.main-nav-clone.is-visible
{
opacity: 1;
visibility: visible;
transform: translateY(0);
pointer-events: auto;
box-shadow: 0 0 11px rgba(0, 0, 0, 0.1);
}

.main_nav__container
{
gap: 15px;
padding-top: 12px;
padding-bottom: 12px;
}

@media screen and (min-width: 992px)
{
	.main_nav__container
	{
	gap: 24px;
	}
}

.main_nav__logo_wrapper
{
display: block;
flex: none;
}

.main_nav__logo
{
height: 48px;
width: auto;
display: block;
}

@media screen and (min-width: 992px)
{
	.main_nav__logo
	{
	height: 58px;
	}
}

.main_nav__controls
{
display: flex;
align-items: center;
gap: 15px;
}

@media screen and (max-width: 575px)
{
	.main_nav__controls
	{
	margin-right: 20px;
	}
}

@media screen and (max-width: 439px)
{
	.main_nav__cta
	{
	display: none;
	}
}

.speedyui
{
--su-primary-color: var(--color1);
--su-secondary-color: var(--color2);
--su-nav-link-color: var(--color4);
}

.speedyui-header ul,
.speedyui-header ol,
.speedyui-header p,
.speedyui-header h1,
.speedyui-header h2,
.speedyui-header h3,
.speedyui-header h4,
.speedyui-header h5,
.speedyui-header h6,
.speedyui-header figure
{
margin: 0;
padding: 0;
}

.speedyui-header ul.navbar-nav li.nav-item
{
margin: 0 13px;
}

.speedyui-header ul.navbar-nav li.nav-item a.nav-link
{
color: var(--su-nav-link-color);
padding: 1rem 0;
position: relative;
font-family: var(--font2);
font-weight: 700;
font-size: 13px;
text-transform: uppercase;
letter-spacing: 0.03em;
}

.speedyui-header ul.navbar-nav li.nav-item a.nav-link:hover
{
text-decoration: none;
color: var(--color1);
}

.speedyui-header ul.navbar-nav li.nav-item a.nav-link:before
{
content: "";
position: absolute;
left: 0;
bottom: 8px;
width: 100%;
border-bottom: 2px solid currentColor;
transform: scaleX(0);
transition: all 0.5s ease;
}

.speedyui-header ul.navbar-nav li.nav-item a.nav-link.active
{
color: var(--color2);
}

.speedyui-header ul.navbar-nav li.nav-item a.nav-link.active:before,
.speedyui-header ul.navbar-nav li.nav-item a.nav-link:hover:before
{
transform: scaleX(1);
}

.speedyui-header ul.navbar-nav li.nav-item:last-of-type a.nav-link
{
margin-right: 0;
padding-right: 0;
}

.speedyui-header ul.navbar-nav li.nav-item:first-of-type a.nav-link
{
margin-left: 0;
padding-left: 0;
}

.speedyui-header ul.navbar-nav .dropdown-menu
{
border-radius: 14px;
box-shadow: 0 14px 40px rgba(20, 40, 30, 0.16);
margin: 0;
background: #fff;
border: none;
padding: 10px;
min-width: 280px;
transition: all 0.3s;
top: 115% !important;
z-index: 9;
}

.speedyui-header ul.navbar-nav .dropdown-menu a.dropdown-item
{
padding: 10px 14px;
border-radius: 9px;
transition: all 0.3s;
font-family: var(--font1);
font-size: 14.5px;
font-weight: 600;
color: var(--su-nav-link-color);
white-space: normal;
}

.speedyui-header ul.navbar-nav .dropdown-menu a.dropdown-item:hover
{
background-color: var(--color10);
color: var(--color1);
}

.speedyui-header ul.navbar-nav .dropdown-menu a.dropdown-item.active,
.speedyui-header ul.navbar-nav .dropdown-menu li.current-menu-item > a.dropdown-item
{
background-color: var(--color11);
color: var(--color2);
font-weight: 700;
}

.speedyui-header ul.navbar-nav .dropdown-toggle:after
{
border-color: currentColor;
box-sizing: border-box;
height: 0.4em;
width: 0.4em;
border-style: solid;
border-width: 0px 1px 1px 0px;
transform: rotate(45deg);
transition: all 0.3s;
margin-left: 0.355em;
}

.speedyui-header .offcanvas-toggle .icon-wrapper
{
z-index: 0;
color: var(--color4);
transition: all 0.3s;
}

.speedyui-header .offcanvas-toggle:hover .icon-wrapper
{
color: var(--su-primary-color);
}

@media screen and (min-width: 992px)
{
	.speedyui-header .dropdown .dropdown-menu
	{
	opacity: 0;
	visibility: hidden;
	display: block;
	min-width: 12em;
	}

	.speedyui-header .dropdown:hover .dropdown-menu
	{
	opacity: 1;
	visibility: visible;
	top: 100% !important;
	}
}

/*
Header : offcanvas mobile
*/

.speedyui-offcanvas
{
--su-width: 100%;
}

.speedyui-offcanvas .btn-close
{
transition: all ease 0.4s;
}

.speedyui-offcanvas .btn-close:hover
{
transform: rotate(90deg);
}

.speedyui-offcanvas .offcanvas
{
transition: all 0.6s cubic-bezier(0.77, 0, 0.175, 1);
overflow-y: auto;
}

.offcanvas-header img
{
max-width: 160px;
height: auto;
}

.speedyui-offcanvas .offcanvas.offcanvas-mobile
{
border: none;
}

.speedyui-offcanvas .offcanvas.offcanvas-mobile ul.offcanvas-listing li a
{
border-bottom: 1px solid #ededed;
color: var(--color4);
transition: color 0.3s ease;
}

.speedyui-offcanvas .offcanvas.offcanvas-mobile ul.offcanvas-listing li a:hover
{
color: var(--su-primary-color);
}

.speedyui-offcanvas .offcanvas.offcanvas-mobile ul.offcanvas-listing li a.active,
.speedyui-offcanvas .offcanvas.offcanvas-mobile ul.offcanvas-listing li.current-menu-item > a
{
color: var(--color2);
}

.speedyui-offcanvas .offcanvas.offcanvas-mobile ul.offcanvas-listing li a span
{
transform: rotate(180deg);
transition: transform 0.3s ease;
}

.speedyui-offcanvas .offcanvas.offcanvas-mobile ul.offcanvas-listing li a.collapsed span
{
transform: rotate(0deg);
}

.speedyui-offcanvas .offcanvas.offcanvas-mobile ul.offcanvas-listing li:last-of-type a
{
border-bottom: 0;
}

.speedyui-offcanvas .offcanvas.offcanvas-mobile ul.offcanvas-listing .collapse li a
{
border-bottom: 1px solid #ededed;
}

.speedyui-offcanvas .social-listing li a
{
width: 50px;
height: 50px;
border-radius: 50rem;
color: var(--color4);
background-color: var(--color6);
transition: 300ms ease-in;
text-decoration: none;
}

.speedyui-offcanvas .social-listing li a:hover
{
background-color: var(--su-primary-color);
color: #fff;
}

/*
Bandeau hero interne
*/

.bandeau_interne
{
position: relative;
overflow: hidden;
background-color: var(--color1);
background-size: cover;
background-position: center center;
background-repeat: no-repeat;
max-width: 1920px;
margin-left: auto;
margin-right: auto;
}

.bandeau_interne:before
{
content: '';
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
background: linear-gradient(to right, rgb(107, 163, 126) 0%, rgba(98, 152, 117, 0.9) 34%, rgba(90, 143, 109, 0.92) 52%);
}

.bandeau_interne__swoosh
{
position: absolute;
top: -60px;
right: 6%;
width: 200px;
height: 370px;
transform: rotate(14deg);
fill: rgba(255, 255, 255, 0.09);
}

.bandeau_interne__container
{
position: relative;
padding-top: 64px;
padding-bottom: 40px;
}

.bandeau_interne #breadcrumbs
{
margin: 0;
font-size: 13.5px;
color: rgba(255, 255, 255, 0.85);
}

.bandeau_interne #breadcrumbs a
{
color: rgba(255, 255, 255, 0.85);
}

.bandeau_interne #breadcrumbs a:hover,
.bandeau_interne #breadcrumbs a:active,
.bandeau_interne #breadcrumbs a:focus
{
color: #fff;
}

.bandeau_interne #breadcrumbs .breadcrumb_last
{
color: #fff;
font-weight: 600;
}

.bandeau_interne__title
{
font-family: var(--font2);
font-weight: 800;
text-transform: uppercase;
color: #fff;
font-size: clamp(30px, 3.6vw, 46px);
line-height: 1.12;
margin: 22px 0 0;
max-width: 820px;
text-wrap: balance;
}

.bandeau_interne__title_part2
{
color: var(--color2);
}

.bandeau_interne__text
{
color: rgba(255, 255, 255, 0.92);
font-size: 17.5px;
line-height: 1.65;
margin: 16px 0 0;
max-width: 640px;
}

.bandeau_interne__wave
{
display: block;
position: relative;
width: 100%;
height: 90px;
}

/*
Footer
*/

.site_footer
{
background: linear-gradient(to right, #5a8f6d  0%, #598d6c 53%);
color: rgba(255, 255, 255, 0.85);
position: relative;
overflow: hidden;
padding: 0;
max-width: 1920px;
margin-left: auto;
margin-right: auto;
}

.site_footer__wave
{
display: block;
width: 100%;
height: 70px;
}

.site_footer__watermark
{
position: absolute;
bottom: -36px;
right: -24px;
width: 380px;
opacity: 0.08;
filter: brightness(0) invert(1);
pointer-events: none;
}

.site_footer__top
{
position: relative;
padding-top: 36px;
padding-bottom: 48px;
}

.site_footer__logo
{
display: inline-block;
background-color: #fff;
border-radius: 16px;
padding: 14px 20px;
}

.site_footer__logo img
{
height: 52px;
width: auto;
display: block;
}

.site_footer__desc,
.site_footer__desc p
{
font-size: 14.5px;
line-height: 1.7;
}

@media screen and (min-width: 1200px)
{
	.site_footer__desc,
	.site_footer__desc p
	{
	max-width: 320px;
	}
}

.site_footer__desc
{
margin-top: 18px;
}

.site_footer__desc .widget-title,
.site_footer__desc h1,
.site_footer__desc h2,
.site_footer__desc h3
{
font-family: var(--font2);
font-weight: 700;
font-size: 13.5px;
text-transform: uppercase;
letter-spacing: 0.06em;
color: #fff;
margin-bottom: 16px;
}

.site_footer__title
{
font-family: var(--font2);
font-weight: 700;
font-size: 13.5px;
text-transform: uppercase;
letter-spacing: 0.06em;
color: #fff;
margin-bottom: 16px;
}

.site_footer__menu
{
display: flex;
flex-direction: column;
gap: 10px;
font-size: 14.5px;
}

.site_footer li
{
margin-bottom: 0;
}

.site_footer__menu a
{
color: rgba(255, 255, 255, 0.85);
transition: color 0.3s ease;
}

.site_footer__menu a:hover,
.site_footer__menu a:active,
.site_footer__menu a:focus
{
color: var(--color2);
text-decoration: none;
}

.site_footer__contact_list
{
display: flex;
flex-direction: column;
gap: 10px;
font-size: 14.5px;
line-height: 1.6;
}

.site_footer__contact_list li
{
display: flex;
align-items: flex-start;
gap: 10px;
}

.site_footer__contact_list i
{
margin-top: 4px;
opacity: 0.7;
}

.site_footer__contact_list a
{
color: rgba(255, 255, 255, 0.85);
transition: color 0.3s ease;
}

.site_footer__contact_list a:hover,
.site_footer__contact_list a:active,
.site_footer__contact_list a:focus
{
color: var(--color2);
text-decoration: none;
}

.site_footer__contact_list a.site_footer__phone
{
color: #fff;
font-weight: 700;
}

.site_footer__contact_list a.site_footer__phone:hover
{
color: var(--color2);
}

.site_footer__mentions
{
display: flex;
flex-direction: column;
gap: 10px;
margin-top: 14px;
color: rgba(255, 255, 255, 0.65);
font-size: 13.5px;
line-height: 1.6;
}

.site_footer__social
{
display: flex;
gap: 10px;
margin-top: 16px;
}

.site_footer__social a
{
display: flex;
align-items: center;
justify-content: center;
width: 34px;
height: 34px;
border-radius: 9px;
background-color: rgba(255, 255, 255, 0.12);
color: #fff;
font-size: 16px;
transition: color 0.3s ease;
}

.site_footer__social a:hover,
.site_footer__social a:active,
.site_footer__social a:focus
{
color: var(--color2);
text-decoration: none;
}

.site_footer__bottom
{
border-top: 1px solid rgba(255, 255, 255, 0.16);
margin-top: 38px;
padding-top: 22px;
}

.site_footer .legal
{
font-size: 13px;
color: rgba(255, 255, 255, 0.6);
text-align: left;
padding-top: 0;
margin-top: 0;
border-top: none;
}

@media screen and (min-width: 768px)
{
	.site_footer .legal
	{
	margin-top: 0;
	border-top: none;
	}
}

.site_footer .legal a
{
color: rgba(255, 255, 255, 0.6);
}

.site_footer .legal a:hover,
.site_footer .legal a:active,
.site_footer .legal a:focus
{
color: #fff;
}

/*
Titre annexe (surtitre) + titre en 3 parties
*/

.titre_annexe
{
font-family: var(--font2);
font-weight: 700;
font-size: 13px;
text-transform: uppercase;
letter-spacing: 0.1em;
color: var(--color1);
}

.titre_part2
{
color: var(--color2);
}

/*
Carte actualité
*/

.carte_actu
{
display: flex;
flex-direction: column;
height: 100%;
background: #fff;
border-radius: 20px;
overflow: hidden;
box-shadow: 0 6px 22px rgba(20, 40, 30, 0.06);
cursor: pointer;
transition: box-shadow 0.25s ease;
}

.carte_actu:hover
{
box-shadow: 0 16px 40px rgba(20, 40, 30, 0.18);
}

.carte_actu__media
{
position: relative;
width: 100%;
height: 200px;
background: var(--color14);
}

.carte_actu__img
{
display: block;
width: 100%;
height: 100%;
object-fit: cover;
}

.carte_actu__date
{
position: absolute;
top: 14px;
left: 14px;
padding: 6px 12px;
background: var(--color1);
color: #fff;
font-family: var(--font2);
font-weight: 700;
font-size: 11px;
text-transform: uppercase;
letter-spacing: 0.05em;
border-radius: 999px;
pointer-events: none;
}

.carte_actu__body
{
display: flex;
flex-direction: column;
gap: 10px;
flex: 1;
padding: 24px 24px 26px;
}

.carte_actu__titre
{
margin: 0;
font-family: var(--font2);
font-weight: 700;
font-size: 16.5px;
line-height: 1.35;
color: var(--color4);
}

.carte_actu__texte
{
flex: 1;
margin: 0;
color: var(--color5);
font-size: 14.5px;
line-height: 1.6;
}

.carte_actu__lien
{
display: inline-flex;
align-items: center;
gap: 8px;
font-weight: 700;
font-size: 14px;
color: var(--color1);
}

.carte_actu:hover .carte_actu__lien
{
color: var(--color7);
}

/*
Pagination
*/

.wp-pagenavi
{
margin-top: 30px;
text-align: center;
}

.wp-pagenavi .pages
{
border: none;
display: block;
margin-bottom: 10px;
}

.wp-pagenavi a:hover, .wp-pagenavi span.current
{
background-color: var(--color1);
border-color: var(--color1);
color: #fff;
}

.wp-pagenavi a, .wp-pagenavi span
{
display: inline-block;
padding: 10px 16px;
border: 1px solid #E4E4E4;
line-height: 20px;
}

.wp-pagenavi a
{
color: #333;
}

/*
Bande actualités
*/

.bande_actus
{
padding: 56px 0 60px;
/* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#f5f7f6+0,ffffff+100 */
background: linear-gradient(to bottom,  rgba(245,247,246,1) 0%,rgba(255,255,255,1) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */

}
@media screen and (min-width: 992px)
{
	.bande_actus
	{
	padding: 88px 0 96px;
	}
}

.bande_actus__head
{
display: flex;
align-items: flex-end;
justify-content: space-between;
gap: 20px 24px;
flex-wrap: wrap;
margin-bottom: 26px;
}

.bande_actus__head_titres
{
display: flex;
flex-direction: column;
gap: 12px;
}

.bande_actus__titre
{
margin: 0;
font-family: var(--font2);
font-weight: 700;
text-transform: uppercase;
font-size: clamp(26px, 2.6vw, 36px);
line-height: 1.18;
color: var(--color4);
}

.bande_actus__lien
{
display: inline-flex;
align-items: center;
gap: 10px;
font-family: var(--font2);
font-weight: 700;
font-size: 13.5px;
text-transform: uppercase;
letter-spacing: 0.04em;
color: var(--color1);
}

.bande_actus__lien:hover
{
color: var(--color7);
}

/*
---
PAGE SERVICE
---
*/

/* Grille de page (agencement de premier niveau) */

.page_service
{
display: grid;
grid-template-columns: [full-start] 12px [content-start aside-start] minmax(0, 1fr) [content-end aside-end] 12px [full-end];
}

.page_service > *
{
grid-column: content;
}

.page_service > .bandeau_interne,
.page_service > section
{
grid-column: full;
margin-left: 0;
margin-right: 0;
width: 100%;
justify-self: center;
}

.page_service__aside
{
grid-column: aside;
order: 10;
}

@media screen and (min-width: 992px)
{
	.page_service
	{
	--zone: 936px;
	--colgap: 48px;
	grid-template-columns:
		[full-start] 1fr
		[content-start] calc((var(--zone) - var(--colgap)) * 2 / 3) [content-end]
		var(--colgap)
		[aside-start] calc((var(--zone) - var(--colgap)) / 3) [aside-end]
		1fr [full-end];
	}

	.page_service__aside
	{
	order: 0;
	}
}

@media screen and (min-width: 1200px)
{
	.page_service
	{
	--zone: 1116px;
	}
}

@media screen and (min-width: 1400px)
{
	.page_service
	{
	--zone: 1296px;
	}
}

.page_service__content
{
padding: 40px 0 60px;
}

@media screen and (min-width: 992px)
{
	.page_service__content
	{
	padding: 56px 0 90px;
	}
}

.page_service__aside
{
padding: 0 0 60px;
}

@media screen and (min-width: 992px)
{
	.page_service__aside
	{
	padding: 56px 0 90px;
	}
}

/* Intro éditoriale */

.texte_intro__titre
{
font-family: var(--font2);
font-weight: 700;
text-transform: uppercase;
font-size: clamp(24px, 2.4vw, 32px);
line-height: 1.2;
color: var(--color4);
margin: 14px 0 0;
text-wrap: balance;
}

.texte_intro__texte
{
margin-top: 20px;
}

.texte_intro__texte p,
.page_detail_actu .txt p,
.page_detail_actu .cta_txt p
{
line-height: 1.75;
margin: 0 0 20px;
}

.texte_intro__texte p:last-child
{
margin-bottom: 0;
}

/* Bloc titre + texte */

.bloc_titre_texte__titre
{
font-family: var(--font2);
font-weight: 700;
text-transform: uppercase;
font-size: 22px;
color: var(--color4);
margin: 36px 0 0;
}

.bloc_titre_texte__texte
{
margin-top: 20px;
}

.bloc_titre_texte h3
{
font-size: 19px;
}

.bloc_titre_texte__texte p
{
color: var(--color5);
font-size: 16.5px;
line-height: 1.75;
margin: 0 0 20px;
}

.bloc_titre_texte__texte p:last-child
{
margin-bottom: 0;
}

/* Bloc liste */

.bloc_liste__titre
{
font-family: var(--font2);
font-weight: 700;
text-transform: uppercase;
font-size: 18px;
color: var(--color4);
margin: 36px 0 0;
}

.bloc_liste__items
{
margin-top: 10px;
}

.bloc_liste__item
{
display: flex;
align-items: flex-start;
gap: 12px;
background-color: var(--color6);
border-radius: 14px;
padding: 16px 18px;
height: 100%;
}

.bloc_liste__check
{
flex: none;
width: 23px;
height: 23px;
border-radius: 50%;
background-color: var(--color1);
display: flex;
align-items: center;
justify-content: center;
margin-top: 1px;
}

.bloc_liste__valeur
{
font-size: 15px;
color: var(--color4);
font-weight: 500;
line-height: 1.5;
}

/* Bloc mise en avant */

.bloc_mise_en_avant
{
background-color: var(--color13);
border-radius: 20px;
padding: 28px 30px;
margin-top: 36px;
position: relative;
overflow: hidden;
}

.bloc_mise_en_avant__swoosh
{
position: absolute;
top: -30px;
right: -20px;
width: 90px;
height: 170px;
transform: rotate(18deg);
fill: rgba(249, 171, 26, 0.25);
}

.bloc_mise_en_avant__titre
{
font-family: var(--font2);
font-weight: 700;
text-transform: uppercase;
font-size: 17px;
color: var(--color4);
margin: 0;
position: relative;
}

.bloc_mise_en_avant__texte
{
position: relative;
}

.bloc_mise_en_avant__texte p
{
color: var(--color5);
font-size: 15.5px;
line-height: 1.65;
margin: 12px 0 0;
}

.bloc_mise_en_avant__texte ol,
.bloc_mise_en_avant__texte ul
{
list-style: none;
counter-reset: mise_en_avant;
display: flex;
flex-direction: column;
gap: 10px;
margin: 14px 0 0;
padding: 0;
}

.bloc_mise_en_avant__texte ol li,
.bloc_mise_en_avant__texte ul li
{
counter-increment: mise_en_avant;
display: flex;
align-items: flex-start;
gap: 12px;
font-size: 15px;
color: var(--color4);
font-weight: 500;
}

.bloc_mise_en_avant__texte ol li:before,
.bloc_mise_en_avant__texte ul li:before
{
flex: none;
width: 24px;
height: 24px;
border-radius: 50%;
background-color: var(--color2);
color: #fff;
display: flex;
align-items: center;
justify-content: center;
}

.bloc_mise_en_avant__texte ol li:before
{
content: counter(mise_en_avant);
font-family: var(--font2);
font-weight: 800;
font-size: 12.5px;
}

.bloc_mise_en_avant__texte ul li:before
{
content: '\f00c';
font-family: 'Font Awesome 7 Free';
font-weight: 900;
font-size: 11px;
}

.bloc_mise_en_avant__bouton
{
margin-top: 22px;
position: relative;
}

/* Tableau comparatif responsive (pages services) */
.tableau-compare{border-top-left-radius: 20px;border-top-right-radius: 20px;margin:1.5em 0;overflow: hidden}
.tableau-compare table{width:100%;border-collapse:collapse;table-layout:fixed}
.tableau-compare th,.tableau-compare td{border:1px solid #e8e8e8;padding:.8em;text-align:left;vertical-align:top;word-wrap:break-word}
.tableau-compare thead th{background:#F9AB1A;color:#fff;font-weight:700}
.tableau-compare tbody tr:nth-child(even){background:#fdf6ea}
.tableau-compare td:first-child{font-weight:600}
@media (max-width:767px){
.tableau-compare thead{display:none}
.tableau-compare table,.tableau-compare tbody,.tableau-compare tr,.tableau-compare td{display:block;width:100%}
.tableau-compare tr{margin-bottom:1.2em;}
.tableau-compare td{border:0;border-bottom:1px solid #f0f0f0}
.tableau-compare td:first-child{background:#F9AB1A;color:#fff;border-top-left-radius: 20px;border-top-right-radius: 20px;}
.tableau-compare td[data-label]:before{content:attr(data-label) " : ";font-weight:700;color:#b97900}
}

/* Colonne latérale services */

.colonne_services
{
display: flex;
flex-direction: column;
gap: 24px;
}

@media screen and (min-width: 992px)
{
	.colonne_services
	{
	position: sticky;
	top: 104px;
	}
}

.colonne_services__menu_bloc
{
background-color: var(--color6);
border-radius: 20px;
padding: 26px 24px;
}

.colonne_services__titre
{
font-family: var(--font2);
font-weight: 700;
text-transform: uppercase;
font-size: 14.5px;
color: var(--color4);
margin-bottom: 16px;
}

.colonne_services__menu
{
display: flex;
flex-direction: column;
gap: 8px;
margin: 0;
}

.colonne_services__menu a
{
display: flex;
align-items: center;
justify-content: space-between;
gap: 10px;
background-color: #fff;
color: var(--color4);
font-weight: 600;
font-size: 14.5px;
padding: 13px 16px;
border-radius: 12px;
transition: background-color 0.3s ease, color 0.3s ease;
}

.colonne_services__menu a:hover,
.colonne_services__menu a:active,
.colonne_services__menu a:focus
{
color: var(--color1);
background-color: var(--color14);
}

.colonne_services__menu li.current-menu-item > a
{
background-color: var(--color2);
color: #fff;
font-weight: 700;
}

.colonne_services__menu a svg
{
flex: none;
}

/* Bloc conseil */

.colonne_services__conseil
{
background: linear-gradient(to right, var(--color1) 0%, #5a8f6d 53%);
border-radius: 20px;
padding: 28px 26px;
color: #fff;
position: relative;
overflow: hidden;
}

.colonne_services__conseil_swoosh
{
position: absolute;
bottom: -40px;
right: -16px;
width: 100px;
height: 190px;
transform: rotate(14deg);
fill: rgba(255, 255, 255, 0.12);
}

.colonne_services__conseil_titre
{
font-family: var(--font2);
font-weight: 700;
text-transform: uppercase;
font-size: 16px;
position: relative;
}

.colonne_services__conseil_texte
{
font-size: 14.5px;
line-height: 1.6;
margin: 12px 0 0;
color: rgba(255, 255, 255, 0.92);
position: relative;
}

.colonne_services__conseil_phone
{
display: inline-flex;
align-items: center;
gap: 10px;
margin-top: 16px;
background-color: #fff;
color: var(--color1);
font-family: var(--font2);
font-weight: 700;
font-size: 14px;
padding: 12px 20px;
border-radius: 999px;
position: relative;
transition: color 0.3s ease;
}

.colonne_services__conseil_phone:hover,
.colonne_services__conseil_phone:active,
.colonne_services__conseil_phone:focus
{
color: var(--color7);
}

/* Bande FAQ */

.bande_faq
{
background-color: var(--color6);
padding: 60px 0;
}

@media screen and (min-width: 992px)
{
	.bande_faq
	{
	padding: 88px 0;
	}
}

.bande_faq__titre
{
font-family: var(--font2);
font-weight: 700;
text-transform: uppercase;
font-size: clamp(26px, 2.6vw, 36px);
line-height: 1.18;
color: var(--color4);
margin: 14px 0 0;
text-wrap: balance;
}

.bande_faq__texte
{
margin-top: 18px;
}

.bande_faq__texte p
{
color: var(--color5);
font-size: 16px;
line-height: 1.7;
margin: 0 0 18px;
}

.bande_faq__texte p:last-child
{
margin-bottom: 0;
}

.bande_faq__texte a
{
font-weight: 700;
}

.bande_faq__items
{
display: flex;
flex-direction: column;
gap: 14px;
}

.bande_faq__item
{
background-color: #fff;
border: 1px solid var(--color16);
border-radius: 16px;
overflow: hidden;
}

.bande_faq__question
{
width: 100%;
display: flex;
align-items: center;
justify-content: space-between;
gap: 16px;
padding: 20px 24px;
cursor: pointer;
background: none;
border: none;
text-align: left;
}

.bande_faq__question_texte
{
font-family: var(--font2);
font-weight: 700;
font-size: 15.5px;
color: var(--color4);
}

.bande_faq__toggle
{
flex: none;
width: 30px;
height: 30px;
border-radius: 50%;
border: 2px solid var(--color1);
color: var(--color1);
display: flex;
align-items: center;
justify-content: center;
font-size: 20px;
font-weight: 600;
line-height: 1;
transform: rotate(0deg);
transition: transform 0.2s;
}

.bande_faq__item.open .bande_faq__toggle
{
transform: rotate(45deg);
}

.bande_faq__reponse
{
padding: 0 24px 22px;
}

.bande_faq__reponse p
{
color: var(--color5);
font-size: 15.5px;
line-height: 1.7;
margin: 0 0 15px;
}

.bande_faq__reponse p:last-child
{
margin-bottom: 0;
}

/* Bande contact (formulaire) */

.bande_contact
{
background-color: #fff;
padding: 60px 0;
}

@media screen and (min-width: 992px)
{
	.bande_contact
	{
	padding: 88px 0;
	}
}

.bande_contact__titre
{
font-family: var(--font2);
font-weight: 700;
text-transform: uppercase;
font-size: clamp(26px, 2.6vw, 36px);
line-height: 1.18;
color: var(--color4);
margin: 14px 0 0;
text-wrap: balance;
}

.bande_contact__texte
{
margin-top: 18px;
}

.bande_contact__texte p
{
color: var(--color5);
font-size: 16px;
line-height: 1.7;
margin: 0 0 18px;
}

.bande_contact__texte p:last-child
{
margin-bottom: 0;
}

.bande_contact__infos
{
display: flex;
flex-direction: column;
gap: 18px;
margin: 28px 0 0;
}

.bande_contact__infos li
{
display: flex;
align-items: flex-start;
gap: 14px;
}

.bande_contact__icon
{
flex: none;
width: 44px;
height: 44px;
border-radius: 14px;
background-color: rgba(0, 163, 81, 0.12);
color: var(--color1);
display: flex;
align-items: center;
justify-content: center;
}

.bande_contact__info_titre
{
font-weight: 700;
font-size: 15px;
color: var(--color4);
}

.bande_contact__info_texte
{
color: var(--color5);
font-size: 14.5px;
line-height: 1.5;
}

.bande_contact__info_texte a
{
font-weight: 600;
}

.bande_contact__socials
{
display: flex;
gap: 10px;
margin-top: 12px;
}

.bande_contact__socials a
{
display: flex;
align-items: center;
justify-content: center;
width: 38px;
height: 38px;
border-radius: 50%;
background-color: var(--color1);
color: #fff;
font-size: 16px;
transition: background-color 0.3s ease;
}

.bande_contact__socials a:hover,
.bande_contact__socials a:active,
.bande_contact__socials a:focus
{
background-color: var(--color7);
color: #fff;
}

.bande_contact__form_wrapper
{
background-color: var(--color6);
border-radius: 24px;
padding: 24px 20px;
position: relative;
overflow: hidden;
}

@media screen and (min-width: 768px)
{
	.bande_contact__form_wrapper
	{
	padding: 36px 34px 3px 34px;
	}
}

.bande_contact__swoosh
{
position: absolute;
top: -36px;
right: -24px;
width: 100px;
height: 185px;
transform: rotate(20deg);
fill: rgba(0, 163, 81, 0.1);
}

.bande_contact__form
{
position: relative;
}

.bande_contact__form label
{
font-size: 13.5px;
font-weight: 600;
color: var(--color4);
margin-bottom: 6px;
display: block;
}

.bande_contact__form .wpcf7-form-control:not(.wpcf7-submit):not(.wpcf7-checkbox):not(.wpcf7-acceptance):not(.wpcf7-radio)
{
width: 100%;
border: 1px solid var(--color17);
border-radius: 12px;
padding: 13px 16px;
font-size: 15px;
font-family: var(--font1);
background-color: #fff;
outline: none;
margin-bottom: 0;
}

.bande_contact__form .wpcf7-form-control:not(.wpcf7-submit):not(.wpcf7-checkbox):not(.wpcf7-acceptance):not(.wpcf7-radio):focus
{
border-color: var(--color1);
box-shadow: 0 0 0 3px rgba(0, 163, 81, 0.15);
}

.bande_contact__form textarea.wpcf7-form-control
{
resize: vertical;
}

.bande_contact__form .wpcf7-form-control.wpcf7-submit
{
background: var(--color2);
color: #fff;
border: none;
font-family: var(--font2);
font-weight: 700;
font-size: 13.5px;
text-transform: uppercase;
letter-spacing: 0.04em;
padding: 16px 32px;
border-radius: 999px;
cursor: pointer;
box-shadow: 0 8px 22px rgba(249, 171, 26, 0.35);
transition: background-color 0.3s ease;
width: auto;
}

.bande_contact__form .wpcf7-form-control.wpcf7-submit:hover
{
background: var(--color8);
opacity: 1;
}

.bande_contact__form .mention_rgpd_formulaire
{
font-size: 12.5px;
color: #8a939d;
line-height: 1.5;
}

.ne_pas_remplir
{
overflow: hidden;
width: 0;
height: 0;
}

/*
---
PAGE LISTE ACTUS
---
*/

.page_liste_actus .main_wrapper
{
padding-top: 48px;
padding-bottom: 64px;
}


/*
message quand les cookies ne sont pas autorisés
*/

.tac_float
{
padding: 15px
}

.tac_float button
{
display: block!important;
margin: 15px auto 0 auto;
}

/*
---
ACTUS PAGE DETAIL
---
*/

.page_detail_actu
{
padding: 80px 0;
}

.page_actu__image_actu
{
border-radius: 28px;
overflow: hidden;
margin-bottom: 25px;
}

.page_detail_actu h1
{
margin-bottom: 5px;
text-transform: uppercase;
font-size: 27px;
}

/*
@media screen and (min-width: 768px)
{
	.page_detail_actu h1
	{
	font-size: 30px;
	}
}*/

.page_detail_actu .chapeau
{
margin-bottom: 25px;
font-weight: bold;
color: #333;
text-align: justify;
}

/*
@media screen and (min-width: 500px)
{
	.page_detail_actu .chapeau,
	.page_detail_actu .txt p
	{
	text-align: justify;
	}
}*/

.page_detail_actu .txt h2 
{
font-size: 28px;
margin-top: 25px;
margin-bottom: 15px;
}

.page_detail_actu .txt h3
{
font-size: 23px;
margin-top: 25px;
margin-bottom: 15px;
}

.page_detail_actu .txt p
{
margin-bottom: 15px;
}

.page_detail_actu ul
{
margin-bottom: 15px;
}

.page_detail_actu .date
{
margin-bottom: 20px;
}

.page_detail_actu .image_actu
{
margin: 10px auto 30px auto;
}

.page_detail_actu .txt h2
{
font-size: 30px;
margin-top: 25px;
margin-bottom: 15px;
}

.page_detail_actu .txt h3
{
margin-top: 25px;
margin-bottom: 15px;
}

/*navigation entre posts*/

.post_navigation
{
margin-top: 30px;
}

.post_navigation .col2
{
text-align: right;
}

.post_navigation a
{
display: inline-block;
margin: 0 5px;
transition: opacity 0.3s linear;
}

.bloc_cta_actu
{
padding: 30px 15px;
margin-top: 35px;
border-radius: 20px;
border: 5px solid var(--color1);
}

@media screen and (min-width: 576px)
{
	.bloc_cta_actu
	{
	padding: 45px;
	}
}

.bloc_cta_actu .title1
{
margin-top: 0;
text-align: center;
margin-bottom: 15px;
}

.bloc_cta_actu .cta_txt
{
margin-bottom: 25px;
}

.page_detail_actu main .bloc_cta_actu p
{
text-align: center;
}

.bloc_cta_actu .boutons
{
display: flex;
justify-content: center;
gap: 30px;
}

@media screen and (max-width: 767px)
{
	.bloc_cta_actu .boutons
	{
	flex-direction: column;
	}
}

/*
@media screen and (max-width: 767px)
{
	.bloc_cta_actu .boutons .btn_std:first-child
	{
	margin-bottom: 30px;
	}
	
	.bloc_cta_actu .boutons .btn_std
	{
	display: block;
	}
}

@media screen and (min-width: 768px)
{
	.bloc_cta_actu .boutons .btn_std
	{
	margin-left: 10px;
	margin-right: 10px;
	}
}*/

.post-template-default .main_content_style .lien_retour
{
font-size: 14px;
margin-top: 30px;
display: inline-block;
color: #808080;
}

@media screen and (max-width: 991px)
{
	.post-template-default .main_content_style .lien_retour
	{
	margin-bottom: 30px;
	}
}

/*
---
PAGE CONTACT
---
*/

.bande_carte
{
max-width: 1920px;
margin-left: auto;
margin-right: auto;
margin-bottom: 80px;
}

.bande_carte .map_contact
{
width: 100%;
height: 380px;
background-color: var(--color6);
}

@media screen and (min-width: 992px)
{
	.bande_carte .map_contact
	{
	height: 480px;
	}
}

.bande_carte .map_contact iframe
{
display: block;
width: 100%;
height: 100%;
border: 0;
}

/*
---
PAGE A PROPOS
---
*/

/* Bande 1 — Le cabinet */

.bande_cabinet
{
padding: 56px 0 72px;
background-color: #fff;
overflow: hidden;
}

@media screen and (min-width: 992px)
{
	.bande_cabinet
	{
	padding: 56px 0 92px;
	}
}

.bande_cabinet__titre
{
margin: 14px 0 0;
font-size: clamp(26px, 2.6vw, 36px);
text-transform: uppercase;
line-height: 1.18;
text-wrap: balance;
}

.bande_cabinet__texte
{
margin-top: 20px;
}

.bande_cabinet__texte p
{
margin: 0 0 14px;
line-height: 1.75;
}

.bande_cabinet__texte p:last-child
{
margin-bottom: 0;
}

.bande_cabinet__chiffres
{
margin-top: 26px;
}

.bande_cabinet__chiffre
{
height: 100%;
padding: 18px 20px;
background-color: var(--color6);
border-radius: 16px;
}

.bande_cabinet__chiffre_valeur
{
font-family: var(--font2);
font-weight: 800;
font-size: 30px;
line-height: 1;
color: var(--color2);
}

.bande_cabinet__chiffre_texte
{
margin-top: 6px;
font-size: 14.5px;
font-weight: 600;
color: var(--color4);
}

.bande_cabinet__bouton,
.bande_cabinet__bouton:active,
.bande_cabinet__bouton:focus
{
display: inline-flex;
align-items: center;
gap: 10px;
margin-top: 28px;
padding: 16px 30px;
}

.bande_cabinet__image_wrapper
{
position: relative;
max-width: 560px;
margin: 0 auto;
}

@media screen and (min-width: 992px)
{
	.bande_cabinet__image_wrapper
	{
	margin-left: auto;
	margin-right: 0;
	}
}

.bande_cabinet__swoosh
{
position: absolute;
top: -40px;
right: -30px;
width: 110px;
height: 200px;
transform: rotate(18deg);
fill: rgba(249, 171, 26, 0.28);
z-index: 0;
}

.bande_cabinet__image
{
position: relative;
z-index: 1;
display: block;
width: 100%;
aspect-ratio: 5 / 5.4;
object-fit: cover;
border-radius: 250px 30px 250px 30px;
}

/* Bande 2 — L'équipe */

.bande_equipe
{
position: relative;
overflow: hidden;
background: linear-gradient(to right, rgba(107, 163, 126, 1) 0%, rgba(90, 143, 109, 1) 53%);
}

.bande_equipe__wave
{
display: block;
width: 100%;
height: 60px;
}

@media screen and (min-width: 992px)
{
	.bande_equipe__wave
	{
	height: 80px;
	}
}

.bande_equipe__swoosh
{
position: absolute;
top: 40px;
left: 2%;
width: 210px;
height: 380px;
transform: rotate(208deg);
fill: rgba(255, 255, 255, 0.08);
pointer-events: none;
}

.bande_equipe__container
{
position: relative;
padding-top: 24px;
padding-bottom: 70px;
}

@media screen and (min-width: 992px)
{
	.bande_equipe__container
	{
	padding-top: 34px;
	padding-bottom: 90px;
	}
}

.bande_equipe__intro
{
max-width: 820px;
margin: 0 auto;
text-align: center;
}

.bande_equipe__surtitre
{
color: var(--color2);
}

.bande_equipe__titre
{
margin: 14px 0 0;
font-size: clamp(26px, 2.6vw, 36px);
text-transform: uppercase;
line-height: 1.18;
color: #fff;
text-wrap: balance;
}

.bande_equipe__texte
{
margin-top: 18px;
}

.bande_equipe__texte p
{
margin: 0 0 14px;
color: rgba(255, 255, 255, 0.92);
line-height: 1.75;
}

.bande_equipe__texte p:last-child
{
margin-bottom: 0;
}

.bande_equipe__image_wrapper
{
position: relative;
max-width: 1000px;
margin: 36px auto 0;
}

.bande_equipe__image
{
display: block;
width: 100%;
aspect-ratio: 16 / 7.5;
object-fit: cover;
border-radius: 30px 250px 30px 250px;
box-shadow: 0 22px 50px rgba(0, 60, 30, 0.25);
}

.bande_equipe__legende
{
position: absolute;
left: 24px;
bottom: -22px;
padding: 12px 20px;
background: #fff;
border-radius: 14px;
box-shadow: 0 14px 30px rgba(0, 60, 30, 0.2);
font-size: 13.5px;
font-weight: 600;
color: var(--color4);
}

.bande_equipe__cartes
{
margin-top: 36px;
}

@media screen and (max-width: 767px)
{
	.bande_equipe__cartes
	{
	margin-left: auto;
	margin-right: auto;
	max-width: 416px;
	}
}

.bande_equipe__carte
{
display: flex;
flex-direction: column;
height: 100%;
overflow: hidden;
background: #fff;
border-radius: 18px 46px 18px 18px;
box-shadow: 0 10px 28px rgba(0, 0, 0, 0.18);
transition: box-shadow 0.25s ease;
}

.bande_equipe__carte:hover
{
box-shadow: 0 18px 44px rgba(0, 0, 0, 0.28);
}

.bande_equipe__carte_photo
{
display: block;
width: 100%;
aspect-ratio: 1 / 1;
object-fit: cover;
object-position: center top;
}

.bande_equipe__carte_body
{
flex: 1;
padding: 20px 22px 24px;
border-bottom: 4px solid var(--color2);
}

.bande_equipe__carte_nom
{
font-family: var(--font2);
font-weight: 700;
text-transform: uppercase;
font-size: 16.5px;
line-height: 1.25;
color: var(--color4);
}

.bande_equipe__carte_poste
{
margin-top: 6px;
font-size: 14.5px;
font-weight: 500;
color: var(--color5);
}

/* Bande 3 — Galerie */

.bande_galerie
{
padding: 64px 0 72px;
background-color: var(--color6);
}

@media screen and (min-width: 992px)
{
	.bande_galerie
	{
	padding: 88px 0 96px;
	}
}

.bande_galerie__intro
{
max-width: 720px;
margin: 0 auto;
text-align: center;
}

.bande_galerie__titre
{
margin: 14px 0 0;
font-size: clamp(26px, 2.6vw, 36px);
text-transform: uppercase;
line-height: 1.18;
text-wrap: balance;
}

.bande_galerie__texte
{
margin-top: 18px;
}

.bande_galerie__items
{
margin-top: 26px;
}

.bande_galerie__item
{
height: 100%;
margin: 0;
background: #fff;
border-radius: 18px;
overflow: hidden;
box-shadow: 0 6px 22px rgba(20, 40, 30, 0.08);
transition: box-shadow 0.25s ease;
}

.bande_galerie__item:hover
{
box-shadow: 0 16px 40px rgba(20, 40, 30, 0.18);
}

.bande_galerie__lien
{
display: block;
overflow: hidden;
}

.bande_galerie__image
{
display: block;
width: 100%;
aspect-ratio: 4 / 3;
object-fit: cover;
transition: transform 0.4s ease;
}

.bande_galerie__item:hover .bande_galerie__image
{
transform: scale(1.05);
}

.bande_galerie__legende
{
padding: 14px 16px;
font-size: 14px;
font-weight: 600;
color: var(--color4);
}

/*
---
PAGE BASIQUE
---
*/

.page_basique
{
padding: 80px 0;
}

.page_basique h2
{
text-transform: uppercase;
font-size: 25px;
}

/*
Contenu enrichi (wysiwyg) + liste à puces "check" (réutilisable partout)
*/

.wysiwyg > :first-child
{
margin-top: 0;
}

.wysiwyg p
{
margin: 0 0 14px;
line-height: 1.7;
}

.wysiwyg p:last-child
{
margin-bottom: 0;
}

.liste_check,
.wysiwyg ul
{
display: flex;
flex-direction: column;
gap: 13px;
margin: 18px 0;
padding: 0;
list-style: none;
}

.liste_check li,
.wysiwyg ul li
{
display: flex;
align-items: flex-start;
gap: 12px;
font-size: 15.5px;
font-weight: 500;
line-height: 1.5;
color: var(--color4);
}

.liste_check li::before,
.wysiwyg ul li::before
{
content: "";
flex: none;
width: 23px;
height: 23px;
margin-top: 1px;
border-radius: 50%;
background: var(--color1) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='3.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6 9 17l-5-5'/%3E%3C/svg%3E") center / 13px 13px no-repeat;
}

/*
---
PAGE ACCUEIL
---
*/

/* Bande 1 — Bandeau hero */

.bande_hero
{
position: relative;
overflow: hidden;
background: linear-gradient(to right, rgba(107, 163, 126, 1) 0%, rgba(90, 143, 109, 1) 53%);
}

.bande_hero__swoosh
{
position: absolute;
pointer-events: none;
}

.bande_hero__swoosh_1
{
top: -70px;
right: 5%;
width: 240px;
height: 440px;
transform: rotate(14deg);
fill: rgba(255, 255, 255, 0.09);
}

.bande_hero__swoosh_2
{
bottom: -40px;
left: 1%;
width: 200px;
height: 360px;
transform: rotate(200deg);
fill: rgba(255, 255, 255, 0.07);
}

.bande_hero__container
{
position: relative;
padding-top: 56px;
padding-bottom: 40px;
}

@media screen and (min-width: 992px)
{
	.bande_hero__container
	{
	padding-top: 78px;
	padding-bottom: 56px;
	}
}

.bande_hero__pastille
{
display: inline-flex;
align-items: center;
gap: 10px;
padding: 8px 18px;
background: rgba(255, 255, 255, 0.14);
border-radius: 999px;
color: #fff;
font-family: var(--font2);
font-weight: 700;
font-size: 12.5px;
text-transform: uppercase;
letter-spacing: 0.08em;
}

.bande_hero__pastille_dot
{
width: 8px;
height: 8px;
border-radius: 50%;
background: var(--color2);
}

.bande_hero__titre
{
margin-top: 22px;
font-family: var(--font2);
font-weight: 800;
text-transform: uppercase;
color: #fff;
font-size: clamp(34px, 4.2vw, 54px);
line-height: 1.08;
text-wrap: balance;
}

.bande_hero__texte
{
max-width: 560px;
margin-top: 22px;
}

.bande_hero__texte p
{
margin: 0 0 14px;
color: rgba(255, 255, 255, 0.92);
font-size: 18px;
line-height: 1.65;
}

.bande_hero__texte p:last-child
{
margin-bottom: 0;
}

.bande_hero__boutons
{
display: flex;
flex-wrap: wrap;
gap: 14px;
margin-top: 30px;
}

.bande_hero .bande_hero__bouton_secondaire,
.bande_hero .bande_hero__bouton_secondaire:active,
.bande_hero .bande_hero__bouton_secondaire:focus
{
padding: 11px 22px;
background: transparent;
border: 2px solid rgba(255, 255, 255, 0.85);
box-shadow: none;
}

.bande_hero .bande_hero__bouton_secondaire:hover
{
background: rgba(255, 255, 255, 0.14);
color: #fff;
}

.bande_hero__image_wrapper
{
position: relative;
max-width: 560px;
margin: 0 auto;
}

@media screen and (min-width: 992px)
{
	.bande_hero__image_wrapper
	{
	margin-left: auto;
	margin-right: 0;
	}
}

.bande_hero__image_shape
{
position: absolute;
top: 26px;
left: -22px;
right: 22px;
bottom: -26px;
background: var(--color2);
border-radius: 250px 30px 250px 30px;
opacity: 0.9;
}

.bande_hero__image
{
position: relative;
z-index: 1;
display: block;
width: 100%;
aspect-ratio: 5 / 4;
object-fit: cover;
border-radius: 250px 30px 250px 30px;
}

.bande_hero__badge
{
position: absolute;
z-index: 2;
right: -6px;
bottom: -4px;
display: flex;
align-items: center;
gap: 14px;
padding: 16px 22px;
background: #fff;
border-radius: 16px;
box-shadow: 0 14px 34px rgba(20, 40, 30, 0.22);
}

.bande_hero__badge_chiffre
{
font-family: var(--font2);
font-weight: 800;
font-size: 34px;
line-height: 1;
color: var(--color2);
}

.bande_hero__badge_texte
{
font-size: 13.5px;
font-weight: 600;
line-height: 1.35;
color: var(--color4);
}

.bande_hero__wave
{
display: block;
width: 100%;
height: 70px;
}

@media screen and (min-width: 992px)
{
	.bande_hero__wave
	{
	height: 96px;
	}
}

/* Bande 2 — Présentation */

.bande_presentation
{
padding: 56px 0 72px;
background-color: #fff;
overflow: hidden;
}

@media screen and (min-width: 992px)
{
	.bande_presentation
	{
	padding: 64px 0 90px;
	}
}

.bande_presentation__image_wrapper
{
position: relative;
max-width: 540px;
margin: 0 auto;
}

.bande_presentation__swoosh
{
position: absolute;
top: -40px;
right: -30px;
width: 110px;
height: 200px;
transform: rotate(18deg);
fill: rgba(249, 171, 26, 0.28);
z-index: 0;
}

.bande_presentation__image
{
position: relative;
z-index: 1;
display: block;
width: 100%;
aspect-ratio: 5 / 4;
object-fit: cover;
border-radius: 28px;
}

.bande_presentation__badge
{
position: absolute;
z-index: 2;
left: -14px;
bottom: -24px;
display: flex;
align-items: center;
gap: 14px;
padding: 16px 22px;
background: var(--color1);
color: #fff;
border-radius: 16px;
box-shadow: 0 14px 30px rgba(0, 90, 45, 0.28);
}

.bande_presentation__badge_chiffre
{
font-family: var(--font2);
font-weight: 800;
font-size: 32px;
line-height: 1;
}

.bande_presentation__badge_texte
{
font-size: 13.5px;
font-weight: 600;
line-height: 1.35;
}

.bande_presentation__titre
{
margin: 14px 0 0;
font-size: clamp(28px, 3vw, 40px);
text-transform: uppercase;
line-height: 1.15;
text-wrap: balance;
}

.bande_presentation__texte
{
margin-top: 20px;
}

.bande_presentation__lien
{
display: inline-flex;
align-items: center;
gap: 10px;
margin-top: 28px;
font-family: var(--font2);
font-weight: 700;
font-size: 13.5px;
text-transform: uppercase;
letter-spacing: 0.04em;
color: var(--color1);
}

.bande_presentation__lien:hover
{
color: var(--color7);
}

/* Bande 3 — Services */

.bande_services
{
padding: 56px 0 64px;
background-color: var(--color6);
}

@media screen and (min-width: 992px)
{
	.bande_services
	{
	padding: 88px 0 96px;
	}
}

.bande_services__intro
{
max-width: 720px;
margin: 0 auto;
text-align: center;
}

.bande_services__titre
{
margin: 14px 0 0;
font-size: clamp(26px, 2.6vw, 36px);
text-transform: uppercase;
line-height: 1.18;
text-wrap: balance;
}

.bande_services__texte
{
margin-top: 18px;
}

.bande_services__items
{
margin-top: 34px;
}

.bande_services__carte
{
display: flex;
flex-direction: column;
gap: 14px;
height: 100%;
padding: 32px 28px;
background: #fff;
border-radius: 18px 46px 18px 18px;
box-shadow: 0 6px 22px rgba(20, 40, 30, 0.06);
border-bottom: 4px solid var(--color2);
transition: box-shadow 0.25s ease;
}

.bande_services__carte:hover
{
box-shadow: 0 16px 40px rgba(20, 40, 30, 0.16);
}

.bande_services__carte[data-href]
{
cursor: pointer;
}

.bande_services__items > [class*="col"]:nth-child(even) .bande_services__carte
{
border-bottom-color: var(--color1);
}

.bande_services__icon
{
display: flex;
align-items: center;
justify-content: center;
width: 56px;
height: 56px;
border-radius: 18px;
background: rgba(249, 171, 26, 0.14);
color: var(--color2);
font-size: 24px;
}

.bande_services__items > [class*="col"]:nth-child(even) .bande_services__icon
{
background: rgba(0, 163, 81, 0.12);
color: var(--color1);
}

.bande_services__carte_titre
{
margin: 0;
font-family: var(--font2);
font-weight: 700;
text-transform: uppercase;
font-size: 16.5px;
color: var(--color4);
}

.bande_services__carte_texte
{
flex: 1;
}

.bande_services__carte_texte p
{
margin: 0;
color: var(--color5);
font-size: 15px;
line-height: 1.65;
}

.bande_services__lien
{
display: inline-flex;
align-items: center;
gap: 8px;
font-weight: 700;
font-size: 14px;
color: var(--color1);
transition: gap 0.25s ease, color 0.25s ease;
}

.bande_services__lien:hover
{
gap: 12px;
color: var(--color7);
}

/* Bande 4 — Réassurance */

.bande_reassurance
{
position: relative;
overflow: hidden;
background-color: var(--color2);
}

.bande_reassurance__wave
{
display: block;
width: 100%;
height: 60px;
}

@media screen and (min-width: 992px)
{
	.bande_reassurance__wave
	{
	height: 80px;
	}
}

.bande_reassurance__wave path
{
fill: var(--color6);
}

.bande_reassurance__swoosh
{
position: absolute;
pointer-events: none;
}

.bande_reassurance__swoosh_1
{
top: -30px;
left: 2%;
width: 210px;
height: 380px;
transform: rotate(208deg);
fill: rgba(255, 255, 255, 0.15);
}

.bande_reassurance__swoosh_2
{
bottom: -60px;
right: 4%;
width: 250px;
height: 450px;
transform: rotate(14deg);
fill: rgba(255, 255, 255, 0.13);
}

.bande_reassurance__container
{
position: relative;
padding-top: 30px;
padding-bottom: 64px;
}

@media screen and (min-width: 992px)
{
	.bande_reassurance__container
	{
	padding-top: 44px;
	padding-bottom: 88px;
	}
}

.bande_reassurance__intro
{
max-width: 760px;
margin: 0 auto;
text-align: center;
}

.bande_reassurance .titre_annexe
{
color: #fff;
}

.bande_reassurance__titre
{
margin: 14px 0 0;
font-size: clamp(26px, 2.6vw, 36px);
text-transform: uppercase;
line-height: 1.18;
color: var(--color4);
text-wrap: balance;
}

.bande_reassurance__titre .titre_part2
{
color: #fff;
}

.bande_reassurance__chiffres
{
margin-top: 26px;
}

.bande_reassurance__chiffre
{
font-family: var(--font2);
font-weight: 800;
font-size: clamp(40px, 4vw, 56px);
line-height: 1;
color: #fff;
}

.bande_reassurance__chiffre_texte
{
margin-top: 8px;
font-size: 15px;
font-weight: 600;
line-height: 1.4;
color: var(--color4);
}

.bande_reassurance__blocs
{
margin-top: 22px;
}

.bande_reassurance__bloc
{
height: 100%;
padding: 26px;
background: #fff;
border-radius: 18px;
box-shadow: 0 10px 26px rgba(120, 75, 0, 0.12);
}

.bande_reassurance__bloc_head
{
display: flex;
align-items: center;
gap: 12px;
font-family: var(--font2);
font-weight: 700;
font-size: 15px;
text-transform: uppercase;
color: var(--color4);
}

.bande_reassurance__bloc_icon
{
flex: none;
display: flex;
align-items: center;
justify-content: center;
width: 38px;
height: 38px;
border-radius: 50%;
background: rgba(0, 163, 81, 0.12);
color: var(--color1);
font-size: 18px;
}

.bande_reassurance__bloc_texte
{
margin-top: 12px;
}

.bande_reassurance__bloc_texte p
{
margin: 0;
color: var(--color5);
font-size: 14.5px;
line-height: 1.65;
}

/* Bande 5 — CTA (promo prêt) */

.bande_cta
{
position: relative;
overflow: hidden;
background-color: var(--color1);
}

.bande_cta__wave
{
display: block;
width: 100%;
height: 52px;
}

@media screen and (min-width: 992px)
{
	.bande_cta__wave
	{
	height: 70px;
	}
}

.bande_cta__wave path
{
fill: var(--color2);
}

.bande_cta__swoosh
{
position: absolute;
top: -20px;
right: 7%;
width: 170px;
height: 310px;
transform: rotate(12deg);
fill: rgba(255, 255, 255, 0.10);
pointer-events: none;
}

.bande_cta__container
{
position: relative;
padding-top: 24px;
padding-bottom: 56px;
}

@media screen and (min-width: 992px)
{
	.bande_cta__container
	{
	padding-top: 34px;
	padding-bottom: 70px;
	}
}

.bande_cta__titre
{
margin: 0;
font-size: clamp(24px, 2.4vw, 33px);
text-transform: uppercase;
line-height: 1.2;
color: #fff;
text-wrap: balance;
}

.bande_cta__texte
{
margin-top: 14px;
max-width: 640px;
}

.bande_cta__texte p
{
margin: 0;
color: rgba(255, 255, 255, 0.92);
font-size: 16.5px;
line-height: 1.65;
}

.bande_cta__bouton
{
margin-top: 22px;
}

@media screen and (min-width: 992px)
{
	.bande_cta__bouton
	{
	margin-top: 0;
	}
}

/*
Required WordPress CSS
*/
.alignleft {
	display: inline;
	float: left;
	margin-right: 1.5em;
}
.alignright {
	display: inline;
	float: right;
	margin-left: 1.5em;
}

/* WordPress gallery */

.gallery {
	margin-bottom: 1.6em;
}
.gallery-item {
	display: inline-block;
	padding: 1.79104477%;
	text-align: center;
	vertical-align: top;
	width: 100%;
}
.gallery-columns-2 .gallery-item {
	max-width: 50%;
}
.gallery-columns-3 .gallery-item {
	max-width: 33.33%;
}
.gallery-columns-4 .gallery-item {
	max-width: 25%;
}
.gallery-columns-5 .gallery-item {
	max-width: 20%;
}
.gallery-columns-6 .gallery-item {
	max-width: 16.66%;
}
.gallery-columns-7 .gallery-item {
	max-width: 14.28%;
}
.gallery-columns-8 .gallery-item {
	max-width: 12.5%;
}
.gallery-columns-9 .gallery-item {
	max-width: 11.11%;
}
.gallery-icon img {
	margin: 0 auto;
}
.gallery-caption {
	color: #707070;
	color: rgba(51, 51, 51, 0.7);
	display: block;
	font-family: "Noto Sans", sans-serif;
	font-size: 12px;
	font-size: 1.2rem;
	line-height: 1.5;
	padding: 0.5em 0;
}
.gallery-columns-6 .gallery-caption,
.gallery-columns-7 .gallery-caption,
.gallery-columns-8 .gallery-caption,
.gallery-columns-9 .gallery-caption {
	display: none;
}

.wp-caption {
	border: 1px solid #f1f1f1;
	margin-bottom: 1.5em;
	max-width: 100%;
}
.wp-caption img[class*="wp-image-"] {
	display: block;
	margin: 1.2% auto 0;
	max-width: 98%;
}
.wp-caption-text {
	text-align: center;
}
.wp-caption .wp-caption-text {
	margin: 0.8075em 0;
}
/* Text meant only for screen readers. */
.screen-reader-text {
	clip: rect(1px, 1px, 1px, 1px);
	position: absolute !important;
	height: 1px;
	width: 1px;
	overflow: hidden;
}

.screen-reader-text:focus {
	background-color: #f1f1f1;
	border-radius: 3px;
	box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
	clip: auto !important;
	color: #21759b;
	display: block;
	font-size: 14px;
	font-size: 0.875rem;
	font-weight: bold;
	height: auto;
	left: 5px;
	line-height: normal;
	padding: 15px 23px 14px;
	text-decoration: none;
	top: 5px;
	width: auto;
	z-index: 100000; /* Above WP toolbar. */
}

/*
Plan du site
*/

.sitemap-page-list
{
list-style-type: none;
margin: 0 0 30px 0;
padding: 0;
}

.sitemap-page-list ul
{
padding: 0;
margin: 0;
}

.sitemap-page-list li
{
font-size: 16px;
border-bottom: 1px solid #bcd7d9;
padding-bottom: 5px;
margin-bottom: 5px;
}

.sitemap-page-list li ul
{
padding-top: 10px;
}

.sitemap-page-list li ul li
{
border-top: 1px solid #bcd7d9;
padding-left: 25px;
padding-top: 5px;
padding-bottom: 5px;
}

.sitemap-page-list a
{
text-decoration: none;
color: #333;
}

