:root div :where(.wp-block-cover h2:not(.has-text-color)) {
	color: #53849F;
}
figure.wp-block-table {
	overflow: initial;
}
.wp-block-table td:empty:after {
	content: 'Empty cell';
	visibility: hidden;
}
.wp-block-table figcaption {
    font-style: italic;
    text-align: center;
    font-size: 13px;
    line-height: 1;
    margin-top: 20px;
}
table {
	border: 1px solid #dedede;
	margin: 10px 0px;
	border-spacing: 0;
}
figure.wp-block-table th {
	border: 1px solid #dedede;
	background: #53849F;
	color: #FFFFFF;
	font-weight: bold;
	padding: 15px;
}
figure.wp-block-table td {
	border: 1px solid #dedede;
	padding: 15px;
}
figure.wp-block-table thead {
	border: none;
}
footer {
	position: relative;
	background: #53849F;
	color: #FFFFFF;
	z-index: 1;
	text-align: center;
}
#footerInner {
	position: relative;
	width: 90%;
	max-width: 1020px;
	margin: 0px auto;
	padding: 65px 0px 40px 0px;
}
footer a {
	color: #FFFFFF;
	text-decoration: none;
}
footer a:hover {
	text-decoration: underline;
}
#signature {
    font-size: 12px;
    color: #FFFFFF;
    padding: 0 5% 25px 5%;
}
::-moz-selection {
	background-color: #EA6927;
	color: #FFFFFF;
}
::selection {
	background-color: #EA6927;
	color: #FFFFFF;
}
body:not(.home) #wrapperInner .wp-block-image {
    margin: 0;
}
body:not(.home) #wrapperInner figure.wp-block-gallery {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
	margin-right: -2%;
	margin-bottom: -2%;
	gap: 0;
}
body:not(.home) #wrapperInner figure.wp-block-gallery > figure {
	width: 23.5% !important;
	flex-grow: initial;
	margin: 0 2% 2% 0 !important;
}
body:not(.home) #wrapperInner figure.wp-block-gallery > figure:nth-child(4),
body:not(.home) #wrapperInner figure.wp-block-gallery > figure:nth-child(8),
body:not(.home) #wrapperInner figure.wp-block-gallery > figure:nth-child(12),
body:not(.home) #wrapperInner figure.wp-block-gallery > figure:nth-child(16),
body:not(.home) #wrapperInner figure.wp-block-gallery > figure:nth-child(20),
body:not(.home) #wrapperInner figure.wp-block-gallery > figure:nth-child(24),
body:not(.home) #wrapperInner figure.wp-block-gallery > figure:nth-child(28) {
	margin-right: 0 !important;
}
body:not(.home) #wrapperInner .wp-block-column figure.wp-block-gallery > figure {
	width: 48% !important;
}
body:not(.home) #wrapperInner figure.wp-block-gallery > figure img {
    transition: 0.2s ease-in-out;
    width: 100% !important;
    max-height: 175px !important;
    flex: initial !important;
    height: 15vw !important;
	object-fit: cover;
}
body:not(.home) #wrapperInner figure.wp-block-gallery > figure img:hover {
	opacity: 0.8;
}
body:not(.home) #wrapperInner p a,
body:not(.home) #wrapperInner li a {
	transition: 0.2s ease-in-out;
}
body:not(.home) #wrapperInner p a:hover,
body:not(.home) #wrapperInner li a:hover {
	color: #EA6927;
}
body:not(.home) #wrapperInner .wp-block-column > :first-child,
.wp-block-cover__inner-container > :first-child {
	margin-top: 0;
}
body:not(.home) #wrapperInner .wp-block-column > :last-child,
body:not(.home) #wrapperInner .wp-block-cover__inner-container > :last-child,
body:not(.home) #wrapperInner div#text .wp-block-group__inner-container > div:last-child {
	margin-bottom: 0;
}
body:not(.home) #wrapperInner div#text > *:not(.wp-block-cover):not(.wp-block-group),
body:not(.home) #wrapperInner div#text > figure,
body:not(.home) #wrapperInner div#text > ul,
body:not(.home) #wrapperInner div#text > .wp-block-group > .wp-block-group__inner-container,
body:not(.home) #wrapperInner div#text > p {
	width: 90%;
	max-width: 1020px;
	margin-left: auto;
    margin-right: auto;
	box-sizing: border-box;
}
body:not(.home) #wrapperInner div#text > ul {
	padding-left: 15px;
}
.wp-block-cover {
	overflow: hidden;
}
.wp-block-cover img {
    transition: transform 0.4s ease-out;
}
.wp-block-cover.is_hovered img {
	transform: scale(1.1);
}
.wp-block-group__inner-container > .wp-block-cover h2 {
    max-width: 740px;
    margin: 0 auto;
}
div .wp-block-image figcaption {
    margin-top: 15px;
    text-align: center;
    font-style: italic;
    font-size: 15px;
}
.wp-block-columns.gap10,
.gap10 {
	gap: 10px;
}
.wp-block-columns.gap20,
.gap20 {
	gap: 20px;
}
.wp-block-columns.gap30,
.gap30 {
	gap: 30px;
}
.wp-block-columns.gap40,
.gap40 {
	gap: 40px;
}
.wp-block-columns.gap50,
.gap50 {
	gap: 50px;
}



/* ----------------------- PAGE CONTACT / FORMULAIRES ----------------------- */

body.contact #container {
    margin: 0px;
}
.wpforms-container ul li:before {
	display: none;
}
div form.wpforms-form {
	position: relative;
}
div div.wpforms-container-full button[type=submit]:focus:after {
	display: none;
}
@media (min-width: 1200px) {
	div .wpforms-container .wpforms-submit-container {
		position: absolute;
		right: 0;
		bottom: -22px;
		margin: 0;
		padding: 0;
	}
}
#wrapper div div.wpforms-container-full input:focus,
#wrapper div div.wpforms-container-full textarea:focus {
    border-color: #000000;
    box-shadow: 0 0 0 1px #000000, 0px 1px 2px rgba(0,0,0,0.15);
}
#wrapper div div.wpforms-container-full ::placeholder {
	color: #969696;
	opacity: 1;
}
body:not(.home) #wrapperInner .wpforms-confirmation-container-full p {
    margin: 0;
}
#wrapper div .wpforms-field-container div.wpforms-field {
	padding: 12px 0;
}


/* ------------------------- PAGE 404 ------------------------- */

body.error404 #chapterPicture > .title_and_bc:first-child {
    position: relative;
    top: 0;
    border: none;
    padding: 60px;
}
body.error404 .widget_breadcrumb {
	display: none;
}
body.error404 #chapterPicture {
	height: auto !important;
}
body.error404 article {
	text-align: center;
}
body:not(.home).error404 .title_and_bc h1 {
	margin: 0;
}


body:not(.home) #wrapperInner p {
	margin: 0 0 15px 0;
}
body:not(.home) #wrapperInner figure + *,
body:not(.home) #wrapperInner .wp-block-image + p {
    margin-top: 20px;
}
body:not(.home) div .wp-block-cover .wp-block-cover__inner-container {
    width: 90%;
    max-width: 1020px;
}
div :where(.wp-block-columns.is-layout-flex) {
    gap: 3em;
}



.no-margin {
	margin-top: 0 !important;
    margin-bottom: 0 !important;
}
.wp-block-column {
    box-sizing: border-box;
}
@media (min-width: 980px) {
	.is_hidden_on_desktop {
		display: none !important;
	}
}
body:not(.home) .wp-block-separator {
    margin: 20px 0px;
    max-width: 100px;
}
body:not(.home) .wp-block-columns .wp-block-column.is-vertically-aligned-center.has-background hr {
    width: 100px;
    margin-top: 5px;
}
body:not(.home) .wp-block-columns .wp-block-column.is-vertically-aligned-center.has-background {
    align-self: initial;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
}


/* masonry */
body:not(.home) #wrapperInner figure.wp-block-gallery.masonry-display {
    display: block;
    columns: 2;
	gap: 2em;
	margin: 0px;
}
body:not(.home) #wrapperInner figure.wp-block-gallery.masonry-display > figure {
    width: initial !important;
	break-inside: avoid;
    margin: 0 0 2em 0 !important;
}
body:not(.home) #wrapperInner figure.wp-block-gallery.masonry-display > figure img {
    width: auto !important;
    max-height: none !important;
    height: auto !important;
}
body:not(.home) #wrapperInner figure.wp-block-gallery.masonry-display.columns-3 {
	columns: 3;
}
body:not(.home) #wrapperInner figure.wp-block-gallery.masonry-display.columns-4 {
	columns: 4;
}
body:not(.home) #wrapperInner figure.wp-block-gallery.masonry-display.columns-5 {
	columns: 5;
}
body:not(.home) #wrapperInner figure.wp-block-gallery.masonry-display.columns-6 {
	columns: 6;
}


.wp-block-columns {
	margin-bottom: 2.25em;
}

@media (max-width: 930px) {
	.wp-block-spacer {
		max-height: 70px;
	}
	#container {
		margin: 0px 0px 70px 0px;
	}
	.is_hidden_on_mobile {
		display: none !important;
	}
	.invert-columns-order {
		flex-direction: column-reverse;
	}
	div :where(.wp-block-columns.is-layout-flex) {
		gap: 2em;
	}
}
@media (max-width: 980px) {
	body #baguetteBox-overlay .full-image img {
		max-height: 85%;
		max-width: 85%;
	}
	body:not(.home) #wrapperInner figure.wp-block-gallery.masonry-display > figure {
		margin: 0 0 1.2em 0 !important;
	}
	body:not(.home) #wrapperInner figure.wp-block-gallery.masonry-display {
		gap: 1.2em;
	}
	html body {
		--wp--preset--spacing--20: 2.5vw;
		--wp--preset--spacing--30: 2.5vw;
		--wp--preset--spacing--40: 2.5vw;
		--wp--preset--spacing--50: 5vw;
		--wp--preset--spacing--60: 5vw;
		--wp--preset--spacing--70: 5vw;
	}
}
@media (max-width: 850px) {
	body:not(.home) #wrapperInner figure.wp-block-gallery > figure {
		width: 48% !important;
		margin: 0 4% 4% 0 !important;
	}
	body:not(.home) #wrapperInner figure.wp-block-gallery > figure:nth-child(even) {
		margin-right: 0 !important;
	}
	body:not(.home) #wrapperInner figure.wp-block-gallery > figure img {
		max-height: initial !important;
		height: 26vw !important;
	}
}








#secteurs {
    width: 90%;
    max-width: 1020px;
    margin: 0 auto 20px;
}
#secteurs .flex {
    display: flex;
	justify-content: center;
    flex-wrap: wrap;
    row-gap: 50px;
    margin: 45px 0 0 0;
}
#secteurs .item {
    width: 25%;
    text-align: center;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 20px;
	box-sizing: border-box;
	border-right: 2px solid #F2F2F2;
}
#secteurs .item span {
    display: block;
    line-height: 1.2em;
    color: #53849F;
    font-size: 20px;
	padding-bottom: 10px;
}
#secteurs .flex > div:nth-child(4),
#secteurs .flex > div:last-child {
	border: none;
}
#secteurs h2 {
    text-align: center;
}






#chiffres {
    position: relative;
    padding: 290px 0 0 0;
}
#chiffres img {
	position: absolute;
	top: 0;
	left: 0;
    height: calc(100% - 74px);
	width: 100%;
	object-fit: cover;
	filter: brightness(0.5);
}
#chiffres:before {
    content: '';
    height: 0;
    width: 0;
    border-top: 200px solid #FFFFFF;
    border-right: 50vw solid transparent;
    border-left: 50vw solid transparent;
    position: absolute;
    left: 0;
    top: 0;
    z-index: 2;
	pointer-events: none;
}
#chiffres .flex {
    position: relative;
    color: #FFFFFF;
    width: 90%;
    max-width: 1020px;
    margin: 0 auto;
    display: flex;
    justify-content: center;
    text-align: center;
}
#chiffres .item {
    width: 33.333%;
}
#chiffres .flex > div:nth-child(2) {
	border-left: 1px solid #FFFFFF;
	border-right: 1px solid #FFFFFF;
	box-sizing: border-box;
}
#chiffres .item > p:first-child {
    line-height: 1;
    font-size: 60px;
    font-weight: 700;
}
#chiffres .item > p:last-child {
    font-size: 25px;
    line-height: 1.2em;
    max-width: 240px;
    margin: 22px auto 0;
}
#chiffres .contact {
    width: 90%;
    max-width: 490px;
    margin: 200px auto 0;
    color: #FFFFFF;
    position: relative;
    text-align: center;
	background: #53849F;
	z-index: 2;
}
#chiffres .contact h2 + p {
	color: #FFFFFF;
}
#chiffres h2 {
	color: #FFFFFF;
}
#chiffres .contact > p:last-child {
	margin: 20px 0 0 0;
}
#chiffres .contact:before,
#chiffres .contact:after {
    content: '';
    height: 0;
    width: 0;
    border-top: 180px solid #53849F;
    border-right: 45vw solid transparent;
    border-left: 45vw solid transparent;
    position: absolute;
    left: -9999px;
    right: -9999px;
    margin: auto;
    top: 50%;
    pointer-events: none;
    z-index: -1;
}
#chiffres .contact:before {
	transform: rotate(180deg);
	top: auto;
    bottom: 50%;
}












#outils {
    padding-top: 190px;
    position: relative;
	z-index: 2;
}
#outils:before,
#outils:after {
    content: '';
    height: 0;
    width: 0;
    border-left: 50vw solid transparent;
    border-bottom: 200px solid #FFFFFF;
    position: absolute;
    right: 0;
    top: -92px;
    z-index: -1;
    pointer-events: none;
}
#outils:after {
	right: auto;
	left: 0;
	transform: rotateY(180deg);
}







#outils .container {
    width: 90%;
    max-width: 1020px;
    margin: 0 auto;
}
#outils .flex {
    display: flex;
    justify-content: space-between;
    margin: 40px 0;
}
#outils .item {
	background: #F2F2F2;
	width: 23.5%;
	padding-bottom: 55px;
	position: relative;
	overflow: hidden;
}
#outils .titre {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 15px;
    padding: 30px 10px 45px 10px;
    background: #202C55;
    color: #FFFFFF;
	position: relative;
	overflow: hidden;
	margin-bottom: 35px;
}
#outils .titre span {
    display: block;
    line-height: 1.2em;
    font-size: 25px;
}
#outils .titre:after,
#outils .item:after {
    content: '';
    height: 0;
    width: 0;
    border-top: 35px solid #202C55;
	border-right: 123px solid #F2F2F2;
    border-left: 123px solid #F2F2F2;
    position: absolute;
    bottom: 0;
	pointer-events: none;
	left: -200px;
    right: -200px;
    margin: auto;
}
#outils .item p {
    padding: 0 21px;
    text-align: center;
}
#outils .item:after {
	border-top-color: #F2F2F2;
	border-right-color: #FFFFFF;
    border-left-color: #FFFFFF;
}

#outils .flex > div:nth-child(2) .titre {
	background: #6F6F6F;
}
#outils .flex > div:nth-child(2) .titre:after {
	border-top-color: #6F6F6F;
}

#outils .flex > div:nth-child(3) .titre {
	background: #EA6927;
}
#outils .flex > div:nth-child(3) .titre:after {
	border-top-color: #EA6927;
}

#outils .flex > div:nth-child(4) .titre {
	background: #53849F;
}
#outils .flex > div:nth-child(4) .titre:after {
	border-top-color: #53849F;
}


@media (max-width: 1020px) {
	#secteurs .item {
		border: none;
		width: 50%;
	}
	#chiffres:before,
	#chiffres .contact:before,
	#chiffres .contact:after,
	#outils:before,
	#outils:after {
		display: none;
	}
	#chiffres {
		padding-top: 70px;
	}
	#chiffres .contact {
		margin: 80px auto 0;
		padding: 50px;
		box-sizing: border-box;
		max-width: 90%;
	}
	#chiffres .item > p:first-child {
		font-size: 46px;
	}
	#chiffres .item > p:last-child {
		font-size: 18px;
		max-width: 145px;
		margin: 15px auto 0;
	}
	#secteurs {
		margin-bottom: 50px;
	}
	#chiffres img {
		height: calc(100% - 115px);
	}
	#outils {
		padding-top: 70px;
	}
}
@media (max-width: 1600px) {
	#chiffres .contact:before, #chiffres .contact:after {
		border-top: 150px solid #53849F;
	}
	#outils:before, #outils:after {
		top: -110px;
	}
}
@media (max-width: 820px) {
	#chiffres .flex > div:nth-child(2) {
		border: none;
	}
	#chiffres .flex {
		flex-direction: column;
		align-items: center;
		gap: 40px;
	}
	#chiffres .item p br {
		display: none;
	}
	#chiffres .item {
		width: auto;
	}
	#chiffres .item > p:last-child {
		max-width: 100%;
		margin-top: 10px;
	}
}
@media (max-width: 1130px) {
	#outils .titre span {
		font-size: 20px;
	}
	#outils .titre img {
		height: 46px;
	}
}
@media (max-width: 970px) {
	#outils .item {
		width: 48%;
		padding-bottom: 25px;
	}
	#outils .flex {
		flex-wrap: wrap;
		row-gap: 40px;
	}
	#outils .titre:after, #outils .item:after {
		display: none;
	}
	#outils .titre {
		padding: 25px;
	}
	#outils .item p {
		padding: 0 25px;
	}
}
@media (max-width: 760px) {
	#outils .item {
		width: 100%;
	}
}








@media (max-width: 500px) {
    body:not(.home) #wrapperInner div#text > *:not(.wp-block-cover):not(.wp-block-group), 
	body:not(.home) #wrapperInner div#text > figure, 
	body:not(.home) #wrapperInner div#text > ul, 
	body:not(.home) #wrapperInner div#text > .wp-block-group > .wp-block-group__inner-container, 
	body:not(.home) #wrapperInner div#text > p, 
	body:not(.home) div .wp-block-cover .wp-block-cover__inner-container,
	#chiffres .contact,
	#outils .container,
	#footerInner {
		width: 87%;
	}
	.baguetteBox-button#previous-button,
	.baguetteBox-button#next-button {
		display: block !important;
		transform: scale(0.7);
	}
    .wp-block-spacer {
		max-height: 50px;
	}
	body:not(.home) #wrapperInner p + .wp-block-spacer {
		margin-top: -5px;
	}
	#container {
		margin: 0px 0px 60px 0px;
	}
	body:not(.home) h3 {
		margin-bottom: 10px;
	}
    body:not(.home) #wrapperInner {
		padding-top: 45px;
	}
	body:not(.home) #wrapperInner figure.wp-block-gallery > figure {
		width: 48% !important;
		margin: 0 4% 4% 0 !important;
	}
	body:not(.home) #wrapperInner figure.wp-block-gallery > figure:nth-child(2),
	body:not(.home) #wrapperInner figure.wp-block-gallery > figure:nth-child(4),
	body:not(.home) #wrapperInner figure.wp-block-gallery > figure:nth-child(6),
	body:not(.home) #wrapperInner figure.wp-block-gallery > figure:nth-child(8),
	body:not(.home) #wrapperInner figure.wp-block-gallery > figure:nth-child(10),
	body:not(.home) #wrapperInner figure.wp-block-gallery > figure:nth-child(12),
	body:not(.home) #wrapperInner figure.wp-block-gallery > figure:nth-child(14),
	body:not(.home) #wrapperInner figure.wp-block-gallery > figure:nth-child(16),
	body:not(.home) #wrapperInner figure.wp-block-gallery > figure:nth-child(18),
	body:not(.home) #wrapperInner figure.wp-block-gallery > figure:nth-child(20),
	body:not(.home) #wrapperInner figure.wp-block-gallery > figure:nth-child(22),
	body:not(.home) #wrapperInner figure.wp-block-gallery > figure:nth-child(24),
	body:not(.home) #wrapperInner figure.wp-block-gallery > figure:nth-child(26),
	body:not(.home) #wrapperInner figure.wp-block-gallery > figure:nth-child(28) {
		margin-right: 0 !important;
	}
	body:not(.home) #wrapperInner figure.wp-block-gallery > figure img {
		height: 30vw !important;
	}
	td {
		font-size: 14px;
	}
	html body {
		--wp--preset--spacing--20: 5vw;
		--wp--preset--spacing--30: 5vw;
		--wp--preset--spacing--40: 5vw;
		--wp--preset--spacing--50: 7.5vw;
		--wp--preset--spacing--60: 7.5vw;
		--wp--preset--spacing--70: 7.5vw;
		--wp--preset--spacing--80: 45px;
		--wp--preset--font-size--small: 13px;
		--wp--preset--font-size--medium: 18px;
		--wp--preset--font-size--large: 24px;
		--wp--preset--font-size--x-large: 30px;
	}
	div .wp-block-cover, 
	div .wp-block-cover-image {
		min-height: 350px;
	}
	body:not(.home) #wrapperInner figure.wp-block-gallery.masonry-display.columns-5,
	body:not(.home) #wrapperInner figure.wp-block-gallery.masonry-display.columns-4,
	body:not(.home) #wrapperInner figure.wp-block-gallery.masonry-display.columns-3 {
		columns: 2;
	}
	.wp-block-columns {
		margin-bottom: 1.75em;
	}
	div .wpforms-container .wpforms-submit-container {
		text-align: center;
		margin-bottom: 15px;
	}
	#wrapper div .wpforms-field-container div.wpforms-field {
		width: 100%;
		margin-left: 0;
		margin-right: 0;
		padding-bottom: 8px;
	}



	#secteurs .item span {
		padding: 0;
		font-size: 18px;
	}
	#secteurs .item {
		gap: 12px;
		width: 100%;
	}
	#secteurs .item img {
		height: 58px;
	}
	#secteurs .flex {
		row-gap: 35px;
		margin: 30px 0 0 0;
	}
	#chiffres .item > p:first-child {
		font-size: 40px;
	}
	#chiffres img {
		height: calc(100% - 130px);
	}
	#outils .flex {
		row-gap: 6.5vw;
	}
	#footerInner img {
		height: 60px;
	}
	body.error404 article a, body:not(.home) #wrapperInner a.wp-block-button__link, section.newsContainer .droite > a,
	#wrapper div.wpforms-container-full button[type=submit], footer a.wp-block-button__link, header a.btn, #top .titre a,
	#edito .txt > :last-child a, #secteurs a, #chiffres .contact a, #outils a {
		transition: 0.1s;
	}

	#logos_page_societe .wp-block-image img {
		max-height: 55px;
	}
}