/*
Kate style
*/

/********************/
/****** HEADER ******/
/********************/
.header_container  {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	padding-top: 14px;
}
#logo {
	position: relative;
	width: 126px;
    height: 28px;
	margin-right: 36px;
}
#logo img {
	position: relative;
	display: block;
	width: 100%;
	height: auto;
	object-fit: contain;
	z-index: 2;
}
#logo a {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 3;
}
/*** ***Menu principal ***/
.wpml_btn {
	margin-left: 36px;
}
#navtop {
	flex: 1;
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-end;
	align-items: baseline;
}
#navtop ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-end;
}
#navtop ul li {
	position: relative;
	display: inline-block;
	padding-bottom: 18px;
	margin: 0 2px;
}
#navtop ul li a {
	display: block;
	line-height: normal;
	text-decoration: none;
	padding: 10px 14px;
	transition: all 0.3s;
}
#navtop ul li a:visited {
	color: var(--bleu);
}
#navtop ul li a:hover,
#navtop ul li.current_page_item a {
	color: var(--bleu);
	background-color: var(--beigec);
	border-radius: var(--rad6);
	transition: all 0.3s;
}
#navtop ul li.menu-item-has-children a:hover {
	background-color: var(--beigec);
}
#navtop ul ul {
	display: none;
	position: absolute;
	width: 371px;
	box-sizing: border-box;
	padding: 30px 24px;
	margin: auto;
	top: 45px;
	left: 0;
	background: var(--beige);
	border-radius: 21px;
	z-index: 55;
}
#navtop ul li.menu-item-has-children:hover ul {
	display: block;
}
/*#navtop ul li:nth-last-child(-n+3) ul {*/   /* pour ferrer ss-menu à droite du ul li si hors viewport */
/*	left: unset;*/
/*	right: 0;*/
/*}*/
#navtop ul ul li {
	display: block;
	padding-bottom: 21px;
	margin: 0;
}
#navtop ul ul li a {
	padding: 0;
}
#navtop ul ul li a:hover {
	color: var(--vertf);
	background-color: unset;
}
#navtop ul li.current_page_item ul li a,
#navtop ul li.menu-item-has-children ul li a:hover{
	background-color: transparent;
}
/*** Cas spécial : ul li "Urgence" ***/
#navtop ul li.urgency a {
	background: url(../img/header_urgency_picto.svg)no-repeat 12px center;
}
#navtop ul li.urgency a {
	padding-left: 36px;
	background-color: var(--vert);
	border: 1px solid var(--vert);
	border-radius: var(--rad6);
	transition: all 0.3s;
}
#navtop ul li.urgency:hover a {
	border: 1px solid var(--vertf);
	transition: all 0.3s;
}

/****** NAV BUTTON (seulement visible en resp) ******/
#navtop_bt {
	display: none;
	position: absolute;
	width: 25px;
	height: 22px;
	top: 15px;
	right: 13px;
	background-color: var(--wh);
	cursor: pointer;
	z-index: 888;
}
#navtop_bt.bt_navtop_hover {
	background-color: var(--wh);
}
.navtop_bt_span {
	position: relative;
	display: block;
	width: 25px;
	height: 3px;
	margin: auto;
	background: var(--bleu);
}
.navtop_bt_span:last-of-type {
	/*background: linear-gradient(to left, transparent 50%, var(--bleu) 50%);*/
}
.bt_navtop_hover .navtop_bt_span:first-of-type {
	transform: rotate(-45deg);
	top: 5px;
	background-color: var(--bleu) !important;
}
.bt_navtop_hover .navtop_bt_span:nth-child(2) {
	display: none;
}
.bt_navtop_hover .navtop_bt_span:last-of-type {
	transform: rotate(45deg);
	top: -6px;
	background-color: var(--bleu) !important;
}
.bt_navtop_hover .navtop_bt_span {
	background: none;
	transition: all 0.3s;
}


/********************/
/****** FOOTER ******/
/********************/
#footer {
	display: block;
	width: auto;
	box-sizing: border-box;
	padding: 61px 0 37px;
	margin: 0 29px 34px 29px;
	background-color: var(--bleu);
	border-radius: var(--rad15);
}
.footer_top {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	margin-bottom: 32px;
}
.footer_company_details {
	display: block;
	margin-right: 54px;
}
.footer_main_logo {
	display: block;
	width: 196px;
	height: 54px;
	margin-bottom: 52px;
}
.footer_main_logo img {
	display: block;
	width: 100%;
	height: auto;
	object-fit: contain;
}
.footer_tel,
.footer_adress {
	display: block;
	line-height: 22px;
	margin-bottom: 18px;
}
.footer_adress {
	position: relative; /* pour lien Google Maps */
	text-decoration: underline;
	margin-bottom: 47px;
}
.footer_tel a,
.footer_adress {
	color: var(--wh);
}
.google_maps {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
}
#footer_menu_01,
#footer_menu_02,
#footer_menu_03 {
	display: block;
	width: 24%;
	margin-right: 34px;
}
#footer_menu_03 {
	margin-right: 15px;
}
.footer_menu_title {
	display: block;
	font-weight: 500;
	letter-spacing: 1px;
	margin-bottom: 17px;
	text-transform: uppercase;
	color: var(--vert);
}
.footer_menu ul li a {
	line-height: 22px;
	margin-bottom: 8px;
	text-decoration: unset;
	color: var(--wh);
	transition: all 0.3s;
}
.footer_menu ul li:hover a {
	color: var(--vert);
	transition: all 0.3s;
}
.footer_rs {
	display: flex;
	justify-content: flex-end;
	align-items: center;
	gap: 12px 24px;
	padding-bottom: 17px;
	border-bottom: 1px solid #544769;
}
.footer_rs a {
	display: block;
}
.footer_rs a img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: contain;
}
.footer_bottom {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	column-gap: 43px;
	margin-top: 18px;
}
.footer_certif {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	column-gap: 15px;
}
.footer_certif_logo {
	display: flex;
	align-items: center;
	width: fit-content;
	max-width: 110px;
	height: 75px;
}
.footer_certif_logo img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: contain;
}
.footer_legals {
	display: block;
}
.footer_legals ul {
	display: flex;
	justify-content: flex-end;
	align-items: center;
	column-gap: 49px;
}
.footer_legals ul li a {
	color: var(--wh);
	text-decoration: unset;
	transition: all 0.3s;
}
.footer_legals ul li:hover a {
	color: var(--vert);
	transition: all 0.3s;
}

/*********************/
/******* AUTRES ******/
/*********************/
/*** breadcrumb ***/
#breadcrumb {
	margin-bottom: 9px;
}
#breadcrumb_content {
    display: block;
    font-size: 0;
    line-height: 22px;
}
.breadcrumb_item {
    display: inline-block;
    font-size: 14px;
    font-weight: 400;
    line-height: 22px;
    color: var(--bleu);
}
.breadcrumb_item:last-of-type {
    color: var(--grisf);
}
.breadcrumb_item:not(:last-of-type):after {
    content: '';
    display: inline-block;
    height : 8px;
    width : 16px;
    background: url(../img/arrow_breadcrumb.svg)no-repeat center;
    margin: auto 10px auto 8px;
}
.breadcrumb_item a {
    text-decoration: none;
    color: var(--bleu);
}
.breadcrumb_item a:hover {
    text-decoration: underline;
}

/*** Page 404 ***/
#page_404{
display: flex;
flex-wrap: wrap;
padding: 94px 0 94px;
}
#page_404_ill_block{
width: 36.5%;
margin: 0 9.8% 0 0;
}
#page_404_ill_block object{
width: 100%;
max-width: 511px;
height: auto;
margin: auto;
}
#page_404_ill_main{
flex: 1;
padding-top: 53px;
}

/*** REPETEUR ***/
.page_hentry_wiz_repeat{
display: flex;
flex-wrap: wrap;
justify-content: flex-start;
gap: 40px 3%;
}
.page_hentry_repeat_block_type1{
width: 100%;
}
.page_hentry_repeat_block_type2{
width: 48.5%;
}
.page_hentry_repeat_block_type3{
width: 31.33%;
}
.page_hentry_repeat_block_type4{
width: 22.75%;
}

/*****************/
/***** PAGES *****/
/*****************/

/*** MASTER - TYPE ***/
.chapo_classic {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin-bottom: 67px;
}
.chapo_desc {
	position: relative; /* pour la flèche verte */
	display: block;
	width: 523px;
	padding: 0 104px 38px 0;
}
.chapo_desc:after {
	position: absolute;
	content: '';
	background: url(../img/fleche_verte_chapo.svg)no-repeat center;
	width: 38px;
	height: 38px;
	bottom: 0;
	left: 35px;
}
.chapo_desc h1 {
	margin-bottom: 30px;
}
.chapo_content {
	padding-left: 35px;
}
.chapo_thumb {
	display: block;
	width: 607px;
	height: 460px;
}
.chapo_thumb img {
	object-fit: cover;
	border-radius: var(--rad15);
}
.chapo_nothumb {
	background-color: var(--vertc);
	border-radius: var(--rad15);
}
.bloc_highlights {
	margin-bottom: 90px;
}
.highlights_maintitle {
	display: block;
}
.bloc_highlights ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	gap: 51px 4%;
}
.bloc_highlights ul li {
	display: block;
	width: 22%;
}
.bloc_highlights ul ul {
	display: block;
}
.bloc_highlights ul ul li {
	display: block;
	width: 100%;
}
.bloc_single_pic {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 30px;
	height: 30px;
	margin-bottom: 10px;
}
.bloc_single_pic img {
	width: 23px;
	height: 23px;
	object-fit: contain;
}
.bloc_highlight_title {
	display: block;
	font-size: 15px;
	font-weight: 500;
	letter-spacing: 1px;
	text-transform: uppercase;
	margin-bottom: 13px;
}
.bloc_50_50 {
    display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	gap: 40px 9%;
	margin-bottom: 90px;
}
.bloc_50_50_image,
.bloc_50_50_text {
    flex: 1; /* le 50/50 */
}
.bloc_50_50--reverse {
    flex-direction: row-reverse;
}
.bloc_50_50_image {
	display: block;
	width: 555px;
	height: 464px;
}
.bloc_50_50_image img {
	object-fit: cover;
	border-radius: var(--rad15);
}
.bloc_50_50_text {
	margin-top: 35px;
}
.bloc_faq  {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin-bottom: 90px;
}
.faq_title {
	display: flex;
	justify-content: space-between;
	gap: 20px 10%;
	width: 269px;
}
.faq_picto {
	display: block;
	width: 74px;
	height: 74px;
}
.faq_picto img {
	object-fit: contain;
}
.faq_maintile {
	flex: 1;
	line-height: 43px;
}
.selected_faq_list {
	flex: 1;
	display: block;
	padding-left: 40px;
}
.single_faq {
	display: block;
	padding: 16px 22px;
	margin-bottom: 12px;
	background-color: var(--beigec);
	border-radius: var(--rad15);
}
.single_faq:hover {
	cursor: pointer;
}
.faq_question {
	position: relative; /* pour l'after "+" */
	font-size: 17px;
	font-weight: 500;
	line-height: normal;
	padding-right: 76px;
	margin-bottom: 16px;
}
.faq_question:after {
	position: absolute;
	content: '+';
	width: 24px;
	height: 24px;
	font-size: 22px;
	font-weight: 500;
	line-height: normal;
	top: 0;
	right: 0;
	padding: 2px 11px 7px 22px;
	background-color: var(--beige);
	border-radius: 8px;

}
.single_faq.single_faq_open .faq_question:after {
	content: '-';
}
.faq_answer {
	display: none;
	line-height: 23px;
	padding-right: 90px;
}
.single_faq.single_faq_open .faq_answer {
	display: block;
}
.bloc_cta {
	display: block;
	box-sizing: border-box;
	padding: 206px 69px 66px;
	margin-bottom: 90px;
	border-radius: var(--rad15);
}
.bloc_cta_maintitle {
	display: block;
	font-weight: 600;
	max-width: 489px;
	margin-bottom: 32px;
	color: var(--wh);
}

/********************/
/*** PAGE PRODUIT ***/
/********************/
.single-cpt_product #breadcrumb {
  margin-bottom: 85px;
}
.chapo_single_cpt_product {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	column-gap: 3%;
	margin-bottom: 83px;
}
.single_prod_maintitle h1 {
	font-size: 33px;
	font-weight: 500;
	line-height: 42px;
	margin-bottom: 20px;
}
.single_prod_col_left {
	order: 0;
	flex: 1;
}
.single_prod_thumb {
	order: 1;
	display: block;
	width: clamp(300px, 40vw, 522px);
	aspect-ratio: auto;
	height: 449px;
}
.single_prod_thumb img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	border-radius: var(--rad15);
}
.single_prod_col_right {
	order: 2;
	flex: 1;
}
.single_prod_price {
	display: block;
	line-height: 20px;
	padding: 6px 14px 7px;
	margin-bottom: 39px;
	background-color: var(--vertc);
	border-radius: 51px;
}
.single_prod_sectors_list {
	display: block;
	margin-bottom: 30px;
}
.single_prod_bloc {
	margin-bottom: 30px;
}
.single_prod_caracteristic_titles {
	display: block;
	letter-spacing: 1px;
	margin-bottom: 16px;
	text-transform: uppercase;
}
.single_prod_caracteristic_values {
	line-height: 22px;
}
.list_single_sectors {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	gap: 9px;
}
.single_sector_name {
	display: inline-block;
	padding: 5px 10px;
	background-color: var(--vert);
	border-radius: var(--rad90);
}
.single_prod_bloc_avantage .single_prod_caracteristic_values,
.single_prod_bloc_perso .single_prod_caracteristic_values {
	position: relative; /* pour le picto */
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	padding-left: 28px;
	margin-bottom: 14px;
}
.single_prod_caracteristic_values_picto {
	position: absolute;
	content: '';
	display: block;
	width: auto;
	height: auto;
	max-width: 20px;
	max-height: 20px;
	top: 4px;
	left: 0;
}
.single_prod_caracteristic_values_picto img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: contain;
	object-position: center;
}
.single_prod_bloc_perso {
	margin-bottom: 41px;
}
.bloc_cta_prod {
	display: block;
	box-sizing: border-box;
	padding: 85px 200px 93px;
	margin-bottom: 90px;
	border-radius: var(--rad15);
}
.bloc_cta_prod_maintitle {
	display: block;
	text-align: center;
	margin-top: 86px;
	margin-bottom: 36px;
	color: var(--wh) !important;
}
.bloc_cta_prod_edit.page_hentry p,
.bloc_cta_prod_edit.page_hentry h2,
.bloc_cta_prod_edit.page_hentry h3 {
	margin-bottom: 62px;
	text-align: center;
	color: var(--wh) !important;
}
.bloc_cta_prod_edit_btn {
	text-align: center;
}
.bloc_six_pics {
	margin-bottom: 90px;
}
.six_pics_maintitle {
	display: block;
	text-align: center;
	margin-bottom: 47px;
}
.six_pics_list {
    display: flex;
    flex-wrap: wrap;
	justify-content: flex-start;
    gap: 22px 20px;
}
.pic-1, .pic-2, .pic-3, .pic-4, .pic-5, .pic-6 {
	display: block;
}
.pic-1, .pic-2, .pic-3 { height: 321px; }
.pic-4, .pic-5, .pic-6 { height: 323px; }

.pic-1, .pic-2 { width: 36%; }
.pic-3 { width: 24%; }
.pic-4, .pic-5, .pic-6 { width: 32%; }

.six_pics_single_pic img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
	border-radius: var(--rad15);
}
.bloc_select_products {
	margin-bottom: 90px;
}
.select_prod_maintitle {
	display: block;
	text-align: center;
}
.select_products_list {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	gap: 42px 20px;
}
.select_products_list li {
	position: relative; /* pour la <a> */
	display: block;
	width: 23.5%;
}
.select_single_prod_thumb,
.select_single_prod_nothumb {
	position: relative;	/* pour le bandeau "Voir la fiche produit" au hover */
	display: block;
	width: 100%;
	height: 234px;
	margin-bottom: 7px;
	border-radius: var(--rad15);
	overflow: hidden;
}
.select_single_prod_learn_more {
	position: absolute;
	content: '';
	width: auto;
	height: auto;
	bottom: 15px;
	left: 15px;
	right: 15px;
	font-weight: 500;
	letter-spacing: 1px;
	text-align: center;
	text-transform: uppercase;
	padding: 14px 25px;
	background-color: var(--vert);
	border-radius: var(--rad6);
	opacity: 0;
	transition: all 0.3s;
}
.select_products_list li:hover .select_single_prod_learn_more {
	opacity: 1;
	transition: all 0.3s;
}
.select_single_prod_thumb img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	border-radius: var(--rad15);
	transition: all 0.3s;
}
.select_products_list li:hover .select_single_prod_thumb img {
	transform: scale(1.03);
	transition: all 0.3s;
}
.select_single_prod_nothumb {
	background-color: var(--vertc);
	border-radius: var(--rad15);
}
.select_single_product_title {
	display: block;
	font-size: 16px;
	font-weight: 600;
	margin-bottom: 9px;
}
.select_single_product_desc {
	margin-bottom: 28px;
}
.single_prod_chapo_desc {
	display: block;
	padding-top: 17px;
	border-top: 1px solid var(--grisc);
}
.single_prod_chapo_desc_item {
	display: block;
	font-size: 14px;
	line-height: 17px;
	margin-bottom: 14px;
	color: var(--grisf);
}
.select_products_list li a {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
}
.bloc_sectors {
	margin-bottom: 90px;
}
.sectors_maintitle {
	position: relative;	/* pour lien <a> */
	display: block;
	margin-bottom: 52px;
}
.bloc_sectors_list_static { /* classe si pas de swiper */
	display: flex;
	flex-wrap: nowrap;
	justify-content: flex-start;
	gap: 20px;
}
.mySectorSwipper {
	position: relative;	/* pour les boutons du slider */
	padding-bottom: 78px;
}
.bloc_single_sector {
	position: relative;
	display: block;
	width: 398px;
	transition: all 0.3s;
}
.bloc_single_sector a {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
}
.bloc_single_sector_thumb,
.bloc_single_sector_nothumb {
	position: relative;	/* pour le lien <a> */
	display: block;
	width: 100%;
	height: 343px;
	overflow: hidden;
	border-radius: var(--rad15);
	transition: all 0.3s;
}
.bloc_single_sector_nothumb {
	background-color: var(--vertc);
	border-radius: var(--rad15);
}
.bloc_single_sector_thumb img {
	object-fit: cover;
	border-radius: var(--rad15);
	transition: all 0.3s;
}
.bloc_single_sector:hover .bloc_single_sector_thumb img {
	transform: scale(1.03);
	transition: all 0.3s;
}
.bloc_single_sector .bloc_single_sector_thumb:after,
.bloc_single_sector .bloc_single_sector_nothumb:after {
	position: absolute;
	content: '';
	width: 47px;
	height: 47px;
	bottom: 16px;
	right: 17px;
	background: url(../img/arrow_green_square.svg)no-repeat center;
	transition: all 0.3s;
}
.bloc_single_sector_content {
	display: block;
	padding-top: 17px;
}
.bloc_single_sector_title {
	display: block;
	font-size: 23px;
	font-style: normal;
	font-weight: 600;
	line-height: 38px;
	padding-bottom: 8px;
}
.bloc_single_sector_desc {
	line-height: 26px !important;
}
.swiper_buttons {
	position: absolute;
	bottom: 34px;
	left: 50%;
	transform: translateX(-50%);
}
.swiper-button-next,
.swiper-button-prev {
	display: block;
	width: 54px;
	height: 54px;
	background: url(../img/swiper_btn.svg)no-repeat center;
	color: transparent;
}
.swiper-button-prev {
	left: -65px;
	transform: rotate(180deg);
}
.swiper-button-next {
	right: -65px;
}
.bloc_child_cat_title {
	display: block;
	margin-bottom: 79px;
}
.child_cat_maintitle {
	margin-bottom: 32px;
}
.child_cat_list {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	gap: 11px 20px;
}
.child_cat_single {
	position: relative;	/* pour la flèche */
	display: block;
	width: 23.5%;
	transition: all 0.3s;
}
.child_cat_single:after {
	position: absolute;
	content: '';
	width: 16px;
	height: 17px;
	top: 50%;
	right: 16px;
	transform: translateY(-50%);
	background: url(../img/arrow_classic_black.svg)no-repeat center;
}
.child_cat_single a {
	display: block;
	text-decoration: unset;
	font-size: 17px;
	font-style: normal;
	font-weight: 500;
	line-height: 31px;
	padding: 16px 35px 16px 21px;
	background-color: var(--beige);
	border-radius: var(--rad15);
	transition: all 0.3s;
}
.child_cat_single:hover a {
	color: var(--wh);
	background-color: var(--bleu);
	transition: all 0.3s;
}
.child_cat_single:hover::after {
	background: url(../img/arrow_classic_white.svg)no-repeat center;
}
.bloc_prod_cat_title {
	display: block;
	margin-bottom: 105px;
}
.prod_cat_maintitle {
	margin-bottom: 12px !important;
}
.bloc_prod_cat_title p {
	margin-bottom: 51px;
}


/***********************/
/****** PAGE BLOG ******/
/***********************/
.widget_filters {
	display: block;
	padding-top: 26px;
	margin-bottom: 64px;
	border-top: 1px solid var(--grisc);
}
.widget_filtre_title {
	line-height: 22px;
	margin-bottom: 16px;
}
.widget_blog_menu ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	gap: 13px;
}
.widget_blog_menu ul li {
	display: block;
}
.widget_blog_menu ul li.current-menu-item a {
	background-color: var(--vert);
}
.widget_blog_menu ul li a {
	display: block;
	font-size: 14px;
	line-height: 14px;
	padding: 8px 16px;
	text-decoration: unset;
	border: 1px solid var(--vert);
	border-radius: var(--rad15);
	transition: all 0.3s;
}
.widget_blog_menu ul li:hover a {
	color: var(--bleu);
	background-color: var(--vert);
	border-radius: var(--rad15);
	transition: all 0.3s;
}
#bloc_single_actu_cards {
	display: block;
	margin-bottom: 114px;
}
.list_single_actu_cards {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	gap: 19px;
}

/****** SINGLE ACTU CARD ******/
/******************************/
.single_actu_card {
	position: relative; /* pour le lien <a> */
	display: block;
	width: 398px;
}
.single_actu_card_top {
	position: relative; /* pour la catégorie */
	display: block;
	margin-bottom: 16px;
}
.single_actu_thumb,
.single_actu_nothumb {
	display: block;
	width: 100%;
	height: 225px;
	overflow: hidden;
	border-radius: var(--rad15);
}
.single_actu_thumb img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	transform: scale(1);
	border-radius: var(--rad15);
	transition: all 0.3s;
}
.single_actu_card:hover .single_actu_thumb img {
	transform: scale(1.03);
	transition: all 0.3s;
}
.single_actu_nothumb {
	background-color: var(--vertc);
	border-radius: var(--rad15);
}
.single_actu_category {
	position: absolute;
	display: block;
	font-size: 14px;
	line-height: 15px;
	left: 19px;
	padding: 6px 11px;
	background-color: var(--wh);
	border-radius: var(--rad90);
}
.single_actu_category:nth-child(1 of .single_actu_category) {
	top: 17px; /* +32px à chaque fois */
}
.single_actu_category:nth-child(2 of .single_actu_category) {
	top: 49px;
}
.single_actu_category:nth-child(3 of .single_actu_category) {
	top: 81px;
}
.single_actu_category:nth-child(4 of .single_actu_category) {
	top: 113px;
}
.single_actu_category:nth-child(5 of .single_actu_category) {
	top: 145px;
}
.single_actu_card_bottom {
	display: block;
}
.single_actu_date {
	padding-bottom: 16px;
	color: var(--grisf);
}
.single_actu_title {
	font-size: 16px;
	font-weight: 500;
	line-height: 24px;
	padding-bottom: 16px;
}
.single_actu_excerpt {
	line-height: 24px;
}
.single_actu_link {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
}

/**************************/
/****** PAGE ACCUEIL ******/
/***************************/
.bloc_chapo_home {
    position: relative; /* pour la vidéo */
	display: block;
	max-width: 1687px;
	margin-bottom: 20px;
    overflow: hidden;
    border-radius: var(--rad15);
}
.chapo_home_video {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
	box-shadow: inset 0 0 0 9999px rgba(0, 0, 0, 0.20);
    z-index: 0;
}
.chapo_home_content {
    position: relative;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	padding: 233px 0 250px;
	margin: 0 25%;
    z-index: 2;
}
.bloc_chapo_home h1 {
	display: block;
	font-size: 14px;
	font-style: normal;
	font-weight: 500;
	line-height: 20px;
	letter-spacing: 2px;
	text-align: center;
	text-transform: uppercase;
	margin-bottom: 21px;
	color: var(--wh);
}
.chapo_home_market_title {
	display: block;
	font-size: 47px;
	font-style: normal;
	font-weight: 500;
	line-height: 60px;
	text-align: center;
	margin-bottom: 46px;
	color: var(--wh);
}
.chapo_home_filter {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(0deg, rgba(0, 0, 0, 0.20) 0%, rgba(0, 0, 0, 0.20) 100%);
    z-index: 1;
    pointer-events: none;
}
.myLogoSwiper {
	position: relative; /** pour les effacés blancs sur les côtés du slider */
	display: block;
	margin-bottom: 72px;
	overflow: hidden;
}
.myLogoSwiper:before,
.myLogoSwiper:after {
	position: absolute;
	content: '';
	background: linear-gradient(270deg, rgba(255, 255, 255, 0.00) 0.17%, #FFF 99.83%);
	width: 66px;
	height: 100%;
	top: 0;
	z-index: 2;
}
.myLogoSwiper:after {
	right: 0;
	transform: rotate(180deg);
}
.slider_logos_container {
	display: flex;
	align-items: center;
	column-gap: 66px;
	animation: scrollLogos 30s linear infinite; /* fonction pour créer défilement CSS */
}
@keyframes scrollLogos {
    0% {
        transform: translateX(0); /* à 0% j'affiche les logos, à 100% l'élément est décalé vers la gauche de 100% de sa largeur et boucle indéfiniment avec "infinite" */
    }
    100% {
        transform: translateX(-100%);
    }
}
.single_logo {
	display: block;
	width: auto;
	max-width: 105px;
	height: 60px;
}
.single_logo img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: contain;
}
.bloc_meanings {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	gap: 26px 45px;
	margin-bottom: 102px;
}
.bloc_meanings_title {
	display: block;
	font-size: 14px;
	font-style: normal;
	font-weight: 500;
	line-height: 20px;
	letter-spacing: 1px;
	text-transform: uppercase;
	max-width: 170px;
	padding-top: 20px;
}
.bloc_meanings_textarea {
	flex: 1;
	display: block;
	font-size: 31px;
	font-style: normal;
	font-weight: 500;
	line-height: 54px;
}
.bloc_main_categories {
	margin-bottom: 111px;
}
.text_center {
	text-align: center;
}
.main_cat_maintitle {
	margin-bottom: 48px;
}
.main_cat_cpt_product_list {
	display: flex;
    flex-wrap: wrap;
    gap: 27px 21px;
}
/* Items 1er et 2e de chaque groupe de 6 : 450px */
/*.single_cat_cpt_product:nth-child(6n+1),*/
/*.single_cat_cpt_product:nth-child(6n+2) {*/
/*    width: 450px;*/
/*}*/

/* Item 3e de chaque groupe de 6 : 294px */
/*.single_cat_cpt_product:nth-child(6n+3) {*/
/*    width: 294px;*/
/*}*/

/* Items 4e, 5e, 6e de chaque groupe de 6 : 399px */
/*.single_cat_cpt_product:nth-child(6n+4),*/
/*.single_cat_cpt_product:nth-child(6n+5),*/
/*.single_cat_cpt_product:nth-child(6n+6) {*/
/*    width: 398px;*/
/*}*/

.single_cat_cpt_product {
	position: relative; /* pour le lien <a> + titre */
	display: block;
	width: 397px;
	height: auto;
	z-index: 1;
}
.single_cat_cpt_product_thumb,
.single_cat_cpt_product_nothumb {
	display: block;
	width: 100%;
	height: 270px;
	padding: 5px 5px;
	overflow: hidden;
	border: 1px solid #D8D8D8;
	border-radius: var(--rad15);
}
.single_cat_cpt_product_nothumb {
	padding: 0;
	background-color: var(--vertc);
	border-radius: var(--rad15);
}
.single_cat_cpt_product_thumb img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	transform: scale(1);
	border-radius: var(--rad15);
	transition: all 0.3s;
}
.single_cat_cpt_product:hover .single_cat_cpt_product_thumb img {
	transform: scale(1.03);
	transition: all 0.3s;
}
.main_cat_name {
	display: block;
	font-size: 23px;
	font-style: normal;
	font-weight: 600;
	line-height: 38px;
	margin-top: 17px;
	z-index: 3;
}
.single_cat_cpt_product a {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 4;
}
.main_cat_bloc_contact {
	flex: 1;
	display: flex;
	align-items: center;
	flex-direction: column;
	box-sizing: border-box;
	padding: 43px 25px 20px;
	background-color: var(--vert);
	border-radius: var(--rad15);
}
.main_cat_contact_title {
	margin-bottom: 21px;
	text-align: center;
}
.main_cat_contact_infos {
	font-size: 18px;
	line-height: 30px;
	text-align: center;
	margin-bottom: 21px;
}
.bloc_challenges {
	margin-bottom: 98px;
}
.challenges_maintitle {
	margin-bottom: 56px;
}
.challenges_list {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	gap: 21px 19px;
}
.single_challenge {
	display: block;
	box-sizing: border-box;
	padding: 37px 34px 50px;
	width: 398px;
	background-color: var(--vertc);
	border-radius: var(--rad15);
}
.challenge_picto {
	display: block;
	width: auto;
	max-width: 98px;
	height: 28px;
	margin-bottom: 17px;
}
.challenge_picto img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: contain;
	object-position: left;
}
.challenge_title {
	display: block;
	font-size: 20px;
	font-style: normal;
	font-weight: 600;
	line-height: 27px;
	padding-bottom: 17px;
}
.challenge_content.page_hentry p {
	margin-bottom: 0 !important;
}
.bloc_main_sectors {
	margin-bottom: 54px;
	border-bottom: 1px solid var(--vertf);
}
.main_sectors_maintitle  {
	margin-bottom: 68px;
}
.main_sectors_cpt_product_list {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	gap: 34px 20px;
	margin-bottom: 54px;
}
.single_sector_cpt_product {
	position: relative; /* pour le <a> */
	display: block;
	width: 398px;
	border-radius: var(--rad15);
}
.single_sector_cpt_product_thumb,
.single_sector_cpt_product_nothumb {
	position: relative; /* pour le btn "+" */
	display: block;
	width: 100%;
	height: 343px;
	margin-bottom: 17px;
	overflow: hidden;
	border-radius: var(--rad15);
}
.single_sector_cpt_product_nothumb {
	background-color: var(--vertc);
	border-radius: var(--rad15);
}
.single_sector_cpt_product_thumb:after,
.single_sector_cpt_product_thumb:after {
	position: absolute;
	content: '';
	width: 47px;
	height: 47px;
	bottom: 16px;
	right: 17px;
	background: url(../img/arrow_green_square.svg)no-repeat center;
	transition: all 0.3s;
}
.single_sector_cpt_product_thumb img {
	display: block;
	width: 100%;
	height: 100%;
	transform: scale(1);
	object-fit: cover;
	border-radius: var(--rad15);
	transition: all 0.3s;
}
.single_sector_cpt_product:hover .single_sector_cpt_product_thumb img {
	transform: scale(1.03);
	transition: all 0.3s;
}
.main_sector_name {
	margin-bottom: 8px;
}
.main_sector_desc {
	line-height: 23px;
}
.single_sector_cpt_product a {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
}
.main_sectors_btn {
	text-align: center;
	padding-bottom: 84px;
}

/********************/
/*** PAGE CONTACT ***/
/********************/
.page-template-page_contact .chapo_thumb {
	position: relative; /* pour le bloc Contact rapide */
}
.page-template-page_contact .chapo_thumb:after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(0deg, rgba(0, 0, 0, 0.20) 0%, rgba(0, 0, 0, 0.20) 100%);
    border-radius: var(--rad15);
    z-index: 1;
}
.chapo_subtitle {
	position: absolute;
	display: block;
	width: 256px;
	height: auto;
	max-height: 350px;
	box-sizing: border-box;
	padding: 25px 20px 15px;
	top: 25px;
	left: 20px;
	background-color: var(--wh);
	border-radius: var(--rad15);
	z-index: 2;
}
.chapo_subtitle_title {
	max-width: 202px;
	margin-bottom: 25px !important;
}
.page-template-page_contact .chapo_subtitle .footer_adress {
	padding-left: 26px;
	margin-bottom: 25px !important;
	color: var(--bleuf);
	background: url(../img/icon-park-outline_local.svg)no-repeat 0 3px;
}
.page-template-page_contact .chapo_subtitle .footer_rs {
	width: auto;
	justify-content: flex-start;
	gap: 12px;
	padding-bottom: 50px;
	margin: 0;
	border-bottom: unset;
}
.page-template-page_contact .chapo_subtitle .footer_rs a {
	width: 27px;
	height: 27px;
}
.page-template-page_contact .chapo_subtitle .footer_rs a img {
	border-radius: unset !important;
}
.page-template-page_contact .chapo_subtitle .footer_tel {
	padding: unset;
	text-align: center;
}
.page-template-page_contact .chapo_subtitle .footer_tel a {
  	display: inline-block;
	height: 23px;
	padding: 14px 14px 14px 35px;
	text-decoration: unset;
	color: var(--bleuf) !important;
	background: url(../img/phone_filled.svg)no-repeat 0 14px;
}
.page-template-page_contact .chapo_subtitle .footer_tel:hover a {
	background: url(../img/phone_filled_hover.svg)no-repeat 0 14px;
}
.select_form_front {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	gap: 20px;
	margin-bottom: 115px;
}
.form_selected {
	display: block;
	width: auto;
	width: 606px;
}
.empty_col_container {
	flex: 1;
}
.gform-theme--foundation .gform_fields {
	row-gap: 10px !important;
}
.form_selected .gform_required_legend {
	display: none;
}
.form_selected .gfield--type-name label,
.form_selected .gfield--input-type-consent legend {
	display: none !important;
}
.form_selected fieldset legend,
.form_selected div label {
	font-family: "Inter Tight", sans-serif !important;
	font-size: 15px !important;
	font-style: normal !important;
	font-weight: 400 !important;
	line-height: 27px !important;
	margin-bottom: 0 !important;
	color: var(--bleuf) !important;
}
.form_selected fieldset input,
.form_selected div .ginput_container input,
.form_selected div .ginput_container textarea {
	border: 1px solid var(--grisf) !important;
	border-radius: 5px !important;
}
.form_selected .gfield--type-textarea {
	margin-bottom: 33px !important;
}
.form_selected .gfield--type-textarea .ginput_container_textarea textarea {
	height: 223px !important;
	min-block-size: unset !important;
}
.form_selected .gfield--input-type-consent label {
	font-size: 14px !important;
}
.form_selected form .gform_footer {
	position: relative;
	display: block;
	margin-top: 10px !important;
}
.form_selected form .gform_footer button {
	position: absolute;
	display: block;
	right: 0;
	font-family: "Inter Tight", sans-serif !important;
	font-size: 15px !important;
	font-style: normal !important;
	font-weight: 500 !important;
	line-height: normal !important;
	letter-spacing: 1px !important;
	padding: 14px 25px !important;
	text-transform: uppercase !important;
	color: var(--bleuf) !important;
	background-color: var(--vert) !important;
	border-radius: 6px !important;
}





