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: #09090B;
	color: #FFFFFF;
	font-weight: bold;
	padding: 12px;
}
figure.wp-block-table td {
	border: 1px solid #dedede;
	padding: 12px;
}
figure.wp-block-table thead {
	border: none;
}
footer {
	position: relative;
	background: #09090B;
	color: #99A1AF;
	z-index: 1;
}
#footerInner {
	position: relative;
	width: 87%;
	max-width: 1020px;
	margin: 0px auto;
	padding: 60px 0px 55px 0px;
	display: flex;
	justify-content: space-between;
}
footer a {
	color: #99A1AF;
	text-decoration: none;
}
footer a:hover {
	text-decoration: underline;
}
#signature {
    width: 90%;
    max-width: 1020px;
    margin: 0px auto;
    font-size: 12px;
    color: #99A1AF;
    display: flex;
    justify-content: space-between;
    border-top: 1px solid #414141;
    padding: 30px 0;
}
footer #footerInner > div > .wp-block-group__inner-container > :first-child {
    letter-spacing: -0.45px;
    color: #FFFFFF;
    line-height: 1;
    margin-bottom: 25px;
}
#footerInner > :first-child .wp-block-group__inner-container > :first-child {
    font-family: 'Oxanium';
    font-size: 24px;
}
footer .wp-block-group__inner-container {
    max-width: 240px;
}
footer .rs {
    display: flex;
    gap: 15px;
    margin-top: 20px;
}
footer .rs svg {
    width: auto;
    height: 28px;
    transition: 0.3s;
}
footer .rs svg:hover {
	opacity: 0.6;
}
footer .wp-block-group.is-nowrap {
    align-items: flex-start;
    margin-bottom: 15px;
}
footer .wp-block-group.is-nowrap svg {
    position: relative;
    top: 4px;
}
footer p {
    font-size: 16px;
    letter-spacing: -0.3px;
}






::selection {
	background-color: #000000;
	color: #FFFFFF;
}
#chapterPicture ::selection,
span.has-noir-background-color + div ::selection,
footer ::selection,
.has-noir-background-color ::selection {
	background-color: #FFFFFF;
	color: #000000;
}

#wrapper .wp-block-image {
    margin: 0;
}
#wrapper .wp-block-column > :first-child,
.wp-block-cover__inner-container > :first-child,
.wp-block-group__inner-container > :first-child {
	margin-top: 0;
}
#wrapper .wp-block-column > :last-child:not(.read_more),
#wrapper .wp-block-cover__inner-container > :last-child:not(.read_more),
#wrapper .wp-block-group__inner-container > :last-child:not(.read_more),
#wrapper div#text .wp-block-group__inner-container > div:last-child:not(.read_more) {
	margin-bottom: 0;
}
#wrapper div#text > *:not(.wp-block-cover):not(.wp-block-group),
#wrapper div#text > figure,
#wrapper div#text > ul,
#wrapper div#text > .wp-block-group > .wp-block-group__inner-container,
#wrapper div#text > p {
	width: 90%;
	max-width: 1300px;
	margin-left: auto;
    margin-right: auto;
	box-sizing: border-box;
}
#wrapper 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;
}
.wp-block-columns.gap60,
.gap60 {
	gap: 60px;
}
.wp-block-columns.gap70,
.gap70 {
	gap: 70px;
}




/* ----------------------- 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) {
	#wrapper .wpforms-container .wpforms-submit-container {
		display: flex;
		justify-content: flex-end;
		margin-top: -20px;
	}
	#wrapper .wpforms-field-container {
		z-index: 2;
		position: relative;
	}
}
#wrapper div div.wpforms-container-full input:focus,
#wrapper div div.wpforms-container-full textarea:focus {
    border-color: #09090B;
    box-shadow: 0 0 0 1px #09090B, 0px 1px 2px rgba(0,0,0,0.15);
}
#wrapper div div.wpforms-container-full ::placeholder {
	color: #969696;
	opacity: 1;
}
#wrapper .wpforms-confirmation-container-full p {
    margin: 0;
}
#wrapper div .wpforms-field-container > div.wpforms-field {
	padding: 12px 0;
}
#wrapper div .wpforms-field-container > div.wpforms-field .wpforms-field {
    padding: 24px 0 0 0;
}
@media (min-width: 601px) {
    #wrapper div .wpforms-field-container > div > div > div:first-child .wpforms-field {
        padding-top: 0;
    }
}
#wrapper div .wpforms-field-container > div.wpforms-field:first-child {
    padding-top: 0;
    margin-top: -10px;
}


/* ------------------------- PAGE 404 ------------------------- */

body.error404 .widget_breadcrumb {
	display: none;
}
body.error404 article {
	text-align: center;
}
body:not(.home).error404 .title_and_bc h1 {
	margin: 0;
}



body:not(.home) #wrapper p:not(.read_more) {
	margin: 0 0 15px 0;
}
body:not(.home) #wrapper figure + *,
#wrapper .wp-block-image + p {
    margin-top: 20px;
}
#wrapper .wp-block-cover:not(.cover-inner-full-width) .wp-block-cover__inner-container {
    width: 90%;
    max-width: 1300px;
}
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;
	position: relative;
}
@media (min-width: 980px) {
	.is_hidden_on_desktop {
		display: none !important;
	}
}
#wrapper .wp-block-separator {
    margin: 20px 0px;
    max-width: 100px;
}
#wrapper .wp-block-columns .wp-block-column.is-vertically-aligned-center.has-background hr {
    width: 100px;
    margin-top: 5px;
}
#wrapper .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 */
#wrapper figure.wp-block-gallery.masonry-display {
    display: block;
    columns: 2;
	gap: 2em;
	margin: 0px;
}
#wrapper figure.wp-block-gallery.masonry-display > figure {
    width: initial !important;
	break-inside: avoid;
    margin: 0 0 2em 0 !important;
}
#wrapper figure.wp-block-gallery.masonry-display > figure img {
    width: auto !important;
    max-height: none !important;
    height: auto !important;
}
#wrapper figure.wp-block-gallery.masonry-display.columns-3 {
	columns: 3;
}
#wrapper figure.wp-block-gallery.masonry-display.columns-4 {
	columns: 4;
}
#wrapper figure.wp-block-gallery.masonry-display.columns-5 {
	columns: 5;
}
#wrapper 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) {
	#wrapper figure.wp-block-gallery.masonry-display > figure {
		margin: 0 0 1.2em 0 !important;
	}
	#wrapper 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;
	}
}

/* galerie 2024 */
:root {
    --wp--style--gallery-gap-default: 20px;
}
#wrapper .wp-block-gallery img {
    transition: opacity 0.2s ease-in-out;
}
#wrapper .wp-block-gallery img:hover {
    opacity: 0.8;
}
#wrapper .wp-block-gallery.has-nested-images.is-cropped figure.wp-block-image:not(#individual-image)>a,
#wrapper .wp-block-gallery figure:not(:has(> a)) {
    display: block;
}
#wrapper .wp-block-gallery.columns-3 figure.wp-block-image:not(#individual-image) img,
#wrapper .wp-block-gallery.columns-default figure.wp-block-image:not(#individual-image) img {
    height: 240px;
}
#wrapper .wp-block-gallery.columns-4 figure.wp-block-image:not(#individual-image) img {
    height: 190px;
}
#wrapper .wp-block-gallery.columns-5 figure.wp-block-image:not(#individual-image) img {
    height: 150px;
}

/* si une colonne a du padding, on la met par défaut à 50% */
#wrapper .wp-block-column[style*="padding"]:not([style*="flex-basis"]):not(:only-child) {
    flex-basis: 50%;
    flex-grow: 0;
}





.cmplz-video.cmplz-iframe-styles {
	background-color: transparent
}
.cmplz-video.cmplz-hidden {
	visibility: hidden !important
}
.cmplz-blocked-content-notice {
	display: none
}
.cmplz-placeholder-parent {
	height: inherit
}
.cmplz-optin .cmplz-blocked-content-container .cmplz-blocked-content-notice, .cmplz-optin .cmplz-wp-video .cmplz-blocked-content-notice, .cmplz-optout .cmplz-blocked-content-container .cmplz-blocked-content-notice, .cmplz-optout .cmplz-wp-video .cmplz-blocked-content-notice {
	display: block
}
.cmplz-blocked-content-container, .cmplz-wp-video {
	animation-name: cmplz-fadein;
	animation-duration: 600ms;
	background: #FFF;
	border: 0;
	border-radius: 3px;
	box-shadow: 0 0 1px 0 rgba(0, 0, 0, 0.5), 0 1px 10px 0 rgba(0, 0, 0, 0.15);
	display: flex;
	justify-content: center;
	align-items: center;
	background-repeat: no-repeat !important;
	background-size: cover !important;
	height: inherit;
	position: relative
}
.cmplz-blocked-content-container.gmw-map-cover, .cmplz-wp-video.gmw-map-cover {
	max-height: 100%;
	position: absolute
}
.cmplz-blocked-content-container.cmplz-video-placeholder, .cmplz-wp-video.cmplz-video-placeholder {
	padding-bottom: initial
}
.cmplz-blocked-content-container iframe, .cmplz-wp-video iframe {
	visibility: hidden;
	max-height: 100%;
	border: 0 !important
}
.cmplz-blocked-content-container .cmplz-custom-accept-btn, .cmplz-wp-video .cmplz-custom-accept-btn {
	white-space: normal;
	text-transform: initial;
	cursor: pointer;
	position: absolute !important;
	width: 100%;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	max-width: 200px;
	font-size: 14px;
	padding: 10px;
	background-color: rgba(0, 0, 0, 0.5);
	color: #fff;
	text-align: center;
	z-index: 98;
	line-height: 23px
}
.cmplz-blocked-content-container .cmplz-custom-accept-btn:focus, .cmplz-wp-video .cmplz-custom-accept-btn:focus {
	border: 1px dotted #cecece
}
.cmplz-blocked-content-container .cmplz-blocked-content-notice, .cmplz-wp-video .cmplz-blocked-content-notice {
	white-space: normal;
	text-transform: initial;
	position: absolute !important;
	width: 100%;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	max-width: 300px;
	font-size: 14px;
	padding: 10px;
	background-color: rgba(0, 0, 0, 0.5);
	color: #fff;
	text-align: center;
	z-index: 98;
	line-height: 23px
}
.cmplz-blocked-content-container .cmplz-blocked-content-notice .cmplz-links, .cmplz-wp-video .cmplz-blocked-content-notice .cmplz-links {
	display: block;
	margin-bottom: 10px
}
.cmplz-blocked-content-container .cmplz-blocked-content-notice .cmplz-links a, .cmplz-wp-video .cmplz-blocked-content-notice .cmplz-links a {
	color: #fff
}
.cmplz-blocked-content-container .cmplz-blocked-content-notice .cmplz-blocked-content-notice-body, .cmplz-wp-video .cmplz-blocked-content-notice .cmplz-blocked-content-notice-body {
	display: block
}
.cmplz-blocked-content-container div div {
	display: none
}
.cmplz-wp-video .cmplz-placeholder-element {
	width: 100%;
	height: inherit
}
@keyframes cmplz-fadein {
	from {
		opacity: 0
	}
	to {
		opacity: 1
	}
}




#wrapper .wp-block-accordion-heading__toggle-icon {
    width: 40px;
    height: 40px;
    background: #ececec;
    border-radius: 50%;
    font-size: 20px;
	line-height: 1;
}
#wrapper .wp-block-accordion-item:not(:last-child) {
    border-bottom: 1px solid #e8e8e8;
    margin-bottom: 15px;
}
#wrapper .wp-block-accordion-heading__toggle-title {
    padding-right: 30px;
}
p.read_more {
	display: inline-block;
	cursor: pointer;
	margin-bottom: 0;
	font-weight: 700;
}
p.read_more:hover {
	text-decoration: underline;
}
p.read_more ~ * {
	display: none;
}


@media (min-width: 981px) {
	/* bloc bannière avec image qui dépasse */
	figure.posabs {
		position: absolute;
		left: 0;
		top: -135px;
		bottom: -135px;
		width: 100%;
	}
	figure.posabs img {
		width: 100%;
		height: 100%;
		object-fit: cover;
	}
	.wp-block-cover.overflow-visible {
		overflow: visible;
		margin: 55px 0;
	}
	/* si padding sur le côté, c'est au final un margin */
	#text > .wp-block-cover[style*="padding-left"] {
		padding-left: 0 !important;
		padding-right: 0 !important;
		margin: 0 60px;
	}
}


/* colonnes 50/50 pleine largeur */
@media (min-width: 1600px) {
	#wrapper .wp-block-columns[style*="9999px"] > .wp-block-column[style*="padding"]:not(.full_width) {
		align-items: center;
	}
	#wrapper .wp-block-columns[style*="9999px"] > .wp-block-column[style*="padding"]:not(.full_width) > * {
		width: 70%;
	}
}














#blocs {
    margin-bottom: 105px;
}
#blocs .flex {
    width: 90%;
    max-width: 1300px;
    margin: 0 auto 50px;
    display: flex;
    flex-wrap: wrap;
	row-gap: 24px;
    justify-content: space-between;
}
#blocs .flex h2 {
    width: 37.5%;
	margin: 0;
}
#blocs .flex > .txt {
    width: 58.5%;
}
#blocs .bloc {
    width: calc(33.333% - 16px);
    position: relative;
	overflow: hidden;
}
#blocs .bloc img {
    width: 100%;
    height: 600px;
    object-fit: cover;
	transition: 0.4s;
}
#blocs .bloc:after {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(180deg, rgba(25, 25, 31, 0.1) 50%, rgba(25, 25, 31, 1) 80%);
    pointer-events: none;
}
#blocs .bloc .infos {
    color: #FFFFFF;
    position: absolute;
    bottom: 11px;
    z-index: 2;
    left: 25px;
	right: 25px;
	flex-direction: column;
    align-items: flex-start;
    display: flex;
}
#blocs .bloc ul {
    margin: 12px 0 25px 0;
    display: flex;
    flex-wrap: wrap;
    gap: 15px;
	list-style-type: none;
}
#blocs .bloc li:before {
	display: none;
}
#blocs .bloc li {
	line-height: 1;
	color: #99A1AF;
}


#av_ap .txt :first-child,
#blocs .bloc li {
	font-size: 16px;
	letter-spacing: -0.3px;
}


#blocs .bloc:nth-child(3) .titre {
	max-width: 290px;
}
#blocs .bloc .titre {
    font-family: 'Oxanium';
    font-size: 24px;
    display: block;
    line-height: 1.15em;
	letter-spacing: -0.4px;
}
#blocs .bloc:nth-child(3) ul {
    max-width: 260px;
}
#blocs a.btn_like {
    padding: 10px 0;
}
#blocs a.btn_like:after {
	bottom: 5px;
}
#blocs .bloc:has(a:hover) img {
	transform: scale(1.1);
	filter: brightness(1.1);
}
#blocs .bloc .titre + a {
    margin-top: 25px;
}















#pro {
	background: #09090B;
	color: #D1D5DC;
    margin-bottom: 80px;
	position: relative;
}
#pro .txt {
    width: 65%;
    box-sizing: border-box;
    padding: 100px;
	display: flex;
	justify-content: center;
}
#pro .txt .inner {
	flex-direction: column;
    align-items: flex-start;
    display: flex;
}
#pro > img {
	width: 35%;
	position: absolute;
	top: 0;
	right: 0;
	height: 100%;
	object-fit: cover;
}
#pro .item p:first-of-type {
    color: #FFFFFF;
    font-family: 'Oxanium';
    font-size: 24px;
	padding-left: 42px;
	margin: 0;
}
#pro .item {
    position: relative;
    border-top: 1px solid #4C505D;
    padding: 15px 0 5px 0;
    width: 100%;
    max-width: 670px;
}
#pro .item svg {
    position: absolute;
    top: 19px;
    left: 0;
}
#pro h2 {
    color: #FFFFFF;
    max-width: 610px;
    margin: 0;
}
#pro .item p {
    font-size: 16px;
    letter-spacing: -0.3px;
	color: #99A1AF;
}
#pro .txt .inner > a {
    margin-top: 150px;
}
#pro .item:last-of-type {
    border-bottom: 1px solid #4C505D;
}
#pro .item:first-of-type {
    margin-top: 45px;
}






#exi {
    text-align: center;
    width: 90%;
    max-width: 1200px;
    margin: 0 auto 90px;
}
#exi .flex {
    display: flex;
    justify-content: space-between;
    margin-top: 65px;
}
#exi .item {
    border: 1px solid #D1D5DC;
    width: 23%;
    position: relative;
    box-sizing: border-box;
    padding: 40px 35px 35px 35px;
	background: #FFFFFF;
}
#exi h3 {
    font-family: 'Ubuntu';
    font-size: 20px;
    max-width: 170px;
    margin: 25px auto 20px;
}
#exi .item p {
    font-size: 14px;
    margin: 0;
}
#exi .item:not(:last-child):after {
    content: '';
    width: 40px;
    height: 1px;
    background: #D1D5DC;
    left: 100%;
    top: 0;
    bottom: 0;
    margin: auto;
    position: absolute;
}






#exp {
    position: relative;
	background: #09090B;
	color: #FFFFFF;
	margin-bottom: 65px;
}
#exp > img {
    position: absolute;
    right: 0;
    top: 0;
    height: 100%;
    object-fit: cover;
    width: calc(100% - 900px);
    background: #09090B;
    color: #FFFFFF;
}
#exp .titre {
    font-size: 56px;
    font-weight: 700;
    font-family: 'Oxanium';
    text-transform: uppercase;
    line-height: 1.05em;
    max-width: 750px;
    display: block;
	margin-bottom: 75px;
}
#exp .c {
    padding: 100px;
}
#exp .c .flex {
    display: flex;
    gap: 25px;
}
#exp .c .flex img {
    width: auto;
    height: 280px;
    object-fit: cover;
}
#exp:after {
    content: '';
    width: calc(100% - 900px);
    background: linear-gradient(90deg, #09090B, transparent);
    position: absolute;
    right: 0;
    top: 0;
    bottom: 0;
    pointer-events: none;
}
@media (min-width: 1600px) {
	#exp .c {
		padding: 100px 250px;
	}
	#exp > img,
	#exp:after {
		width: calc(100% - 1050px);
	}
}







#avis {
    text-align: center;
    padding: 90px 0px 15px 0;
    width: 87%;
    max-width: 1280px;
    margin: 0 auto;
}
#avis > div {
    min-height: 399px;
	margin-top: 40px;
}
body:not(.home) div[class*="elfsight"] {
    min-height: 479px;
    margin-top: -15px;
}











#real {
    width: 90%;
    max-width: 1300px;
    margin: 0 auto 55px;
}
#real h2 {
	text-align: center;
	margin: 0 6.5% 55px;
}
#real .flex {
    position: relative;
    padding-left: 50.8%;
    display: flex;
    flex-wrap: wrap;
    row-gap: 24px;
    justify-content: space-between;
    height: 600px;
}
#real .flex .item:first-child {
    position: absolute;
    left: 0;
    width: 49%;
    height: 100%;
}
#real .item {
    width: calc(50% - 12px);
    height: calc(50% - 12px);
    position: relative;
}
#real .flex .item:nth-child(2) {
    width: 100%;
}
#real .item img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
/*#real .item:after {
	content: '';
	width: 100%;
	height: 60px;
	position: absolute;
	left: 0;
	bottom: 0;
	background: linear-gradient(0deg, rgba(0,0,0,0.8), rgba(0,0,0,0));
	pointer-events: none;
} masqué suite à décision de ne pas mettre le descriptif des images dans la page réalisations */
#real .btn {
    display: flex;
    margin-top: 55px;
    justify-content: center;
}
#real span.desc {
    position: absolute;
    left: 20px;
    bottom: 15px;
    z-index: 1;
    letter-spacing: -0.15px;
    color: #FFFFFF;
    font-size: 14px;
}











#prox {
    background: #09090B;
    color: #99A1AF;
    display: flex;
    flex-wrap: wrap;
}
#prox > div {
	width: 50%;
	position: relative;
	box-sizing: border-box;
}
#prox .titre_agences, #prox h2, #prox .ic p:first-of-type, #prox .flex strong {
    color: #FFFFFF;
}
#prox > div.map > img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    filter: brightness(0.9);
	max-height: 700px;
	object-position: bottom;
}

#prox > div.txt {
    padding: 90px 100px;
}
#prox .flex {
    display: flex;
    gap: 80px;
    margin-top: 10px;
}
#prox .ic {
    position: relative;
    padding-left: 42px;
    margin-top: 25px;
}
#prox .ic svg {
    position: absolute;
    left: 0;
    top: 2px;
}
span.titre_agences {
    display: block;
    margin-top: 60px;
}
#prox .ic p:first-of-type {
    font-size: 20px;
    font-weight: 500;
}











#ekip {
    position: relative;
    padding: 180px 0;
}
#ekip > img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
	object-position: top;
}
#ekip .c {
    position: relative;
	z-index: 2;
    text-align: center;
    padding: 0 6.5%;
    color: #FFFFFF;
}
#ekip .titre {
    font-size: 56px;
    font-family: 'Oxanium';
    font-weight: 700;
    line-height: 1.05em;
    text-transform: uppercase;
    max-width: 830px;
    display: block;
    margin: 0 auto;
}
#ekip .rs {
    display: flex;
    justify-content: center;
    gap: 15px;
    margin-top: 30px;
}
#ekip:after {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    background: #09090B;
    z-index: 1;
    opacity: 0.6;
	pointer-events: none;
}
#ekip .rs a {
	transition: 0.3s;
}
#ekip .rs a:hover {
	opacity: 0.6;
}







#logos {
    text-align: center;
    margin: 85px auto 95px;
    width: 90%;
    max-width: 1300px;
}
#logos .flex {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 70px;
    margin-top: 45px;
}
@media (min-width: 1141px) {
    #logos .flex + .flex {
        display: none;
    }
}


h3.wp-block-accordion-heading {
    font-size: 20px;
    font-family: 'Ubuntu';
    font-weight: 700;
}
#wrapper .wp-block-column > .wp-block-cover:only-child .wp-block-cover__inner-container {
    width: 100%;
}
.h100 {
	height: 100%;
}
#page #wrapper div#text #ekip {
    width: 100%;
    max-width: 100%;
}
div#text > #ekip:last-child {
    border-bottom: 1px solid #656565;
}
body:not(.home) #contact {
    scroll-margin-top: 100px;
}



@media (max-width: 1600px) {
	#blocs .flex h2 {
		width: 34.5%;
	}
	#blocs .flex > .txt {
		width: 60.5%;
	}
	#exp .titre,
	#ekip .titre {
		font-size: 46px;
		max-width: 600px;
	}
	#ekip .titre {
		max-width: 685px;
	}
}
@media (max-width: 1700px) {
	#prox > div.map > img {
		max-height: initial;
	}
}





#av_ap figcaption {
    color: #FFFFFF;
    font-size: 20px;
    font-style: normal;
    font-family: 'Oxanium';
}
#wrapper div#text > #prox {
    width: 100%;
    max-width: 100%;
}





#onglets {
    padding: 0;
    min-height: initial;
}
#onglets .wp-block-cover__background {
	display: none;
}
body:not(.home) #wrapper #onglets .tabs p {
    margin: 0;
    letter-spacing: 2.8px;
    font-size: 14px;
    text-transform: uppercase;
    font-weight: 700;
    cursor: pointer;
    padding: 29px;
    color: #99A1AF;
    border-left: 8px solid #FFFFFF;
}
body:not(.home) #wrapper #onglets .tabs p.active {
	border-color: #000000;
	color: #000000;
	background: #F4F4F5;
}
#onglets > div > .wp-block-columns {
    gap: 100px;
}
#onglets > div > .wp-block-columns > div:nth-child(2) > div:not(.active) {
	display: none;
}
#onglets > div > .wp-block-columns > div:nth-child(2) {
    padding-right: 5%;
}
#onglets .quatre_blocs > div {
    border: 1px solid #99A1AF;
    width: calc(50% - 12px);
    box-sizing: border-box;
    padding: 35px 37px;
}
#onglets .quatre_blocs {
    align-items: initial;
    gap: 24px;
}
#onglets .quatre_blocs > div > div > p:first-child {
    font-family: 'Oxanium';
    text-transform: uppercase;
    font-size: 20px;
    font-weight: 700;
    letter-spacing: 2px;
	color: #000000;
}
#onglets .quatre_blocs > div p {
    letter-spacing: 0;
    color: #6B7280;
    font-size: 16px;
}
#onglets > div > .wp-block-columns > div:nth-child(2) > div {
    max-width: 1120px;
}
#onglets p {
	color: #4B5563;
}

@media (min-width: 2100px) {
	#onglets > div > .wp-block-columns {
		justify-content: center;
	}
	#onglets > div > .wp-block-columns > div:nth-child(2) {
		flex-grow: initial;
		flex-basis: 1120px;
		padding: 0;
	}
}
#wrapper div.wpforms-container-full button[type=submit] {
	z-index: 2;
}
#wrapper .wp-block-cover:not(.cover-inner-full-width) .wp-block-cover__inner-container .wp-block-columns[style*="max-width"] {
    margin-left: auto;
    margin-right: auto;
}










@media (max-width: 820px) {
    #blocs .flex h2 {
        width: 100%;
    }
    #blocs .flex > .txt {
        width: 100%;
    }
    #blocs .flex:first-of-type {
        gap: 0px;
    }
}
@media (max-width: 1050px) {
    #blocs .bloc {
        width: calc(50% - 16px);
    }
}
@media (max-width: 730px) {
    #blocs .bloc {
        width: 100%;
    }
    #blocs .flex {
        width: 87%;
        row-gap: 6.5vw;
    }
}
@media (max-width: 890px) {
    #pro > img {
        width: 100%;
    }
    #pro .txt {
        position: relative;
        z-index: 1;
        width: 100%;
        padding: 6.5vw;
        background: rgba(0,0,0,0.8);
    }
}
@media (max-width: 1030px) {
    #exi {
        width: 100%;
        text-align: left;
    }
    #exi > :not(div) {
        padding: 0 6.5%;
    }
    #exi .flex {
        margin-top: 35px;
        overflow-x: scroll;
        padding-left: 6.5%;
        scroll-snap-type: x mandatory;
    }
    #exi .flex::-webkit-scrollbar {
        display: none;
    }
    #exi .item {
        width: 270px;
        flex-shrink: 0;
        margin-right: 6.5vw;
        scroll-snap-align: center;
    }
    #exi .item:not(:last-child):after {
        width: 100px;
    }
    #exi h3 {
        margin: 25px 0 20px 0;
    }
}
@media (max-width: 1150px) {
    #exp > img,
    #exp:after {
        display: none;
    }
    #exp .titre {
        max-width: 100%;
        text-align: center;
    }
    #exp .c .flex {
        justify-content: center;
    }
}
@media (max-width: 950px) {
    #exp .c {
        padding: 65px 6.5vw;
    }
    #exp .c .flex {
        flex-direction: column;
        gap: 6.5vw;
    }
    #exp .c .flex img {
        width: 100%;
        height: 56vw;
    }
}
@media (max-width: 1150px) {
    #real .flex {
        flex-wrap: nowrap;
        overflow-x: scroll;
        scroll-snap-type: x mandatory;
        padding-left: 6.5%;
        height: auto;
    }
    #real .flex::-webkit-scrollbar {
        display: none;
    }
    #real {
        width: 100%;
    }
    #real .flex .item:first-child {
        position: relative;
        height: auto;
    }
    #real .flex .item:first-child,
    #real .flex .item:nth-child(2),
    #real .item {
        width: 36vw;
        height: 36vw;
        margin-right: 6.5vw;
        flex-shrink: 0;
        scroll-snap-align: center;
    }
}
@media (max-width: 600px) {
    #real .flex .item:first-child,
    #real .flex .item:nth-child(2),
    #real .item {
        width: 75vw;
        height: 75vw;
    }
}
@media (max-width: 1100px) {
    #prox > div.txt {
        padding: 50px 6.5vw;
    }
    #prox > div {
        width: 100%;
    }
}
@media (max-width: 1140px) {
    #logos .marquee {
        display: flex;
    }
    #logos .flex {
        flex-shrink: 0;
        gap: 0;
        will-change: transform;
        animation: marquee 10s linear infinite;
    }
    @keyframes marquee {
        0% {
            transform: translateX(0%);
        }
        100% {
            transform: translateX(-100%);
        }
    }
    #logos .flex + .flex {
        display: flex;
    }
    #logos .flex img {
        flex-shrink: 0;
        margin-right: 70px;
    }
}
@media (max-width: 920px) {
    footer #footerInner > div > .wp-block-group__inner-container > :first-child {
        margin-bottom: 18px;
    }
    #footerInner {
        flex-direction: column;
        gap: 40px;
    }
    footer .wp-block-group__inner-container {
        max-width: 100%;
    }
    #footerInner > div:last-child {
        margin-top: -15px;
    }
    #signature {
        flex-direction: column;
        align-items: center;
        text-align: center;
    }
}
@media (max-width: 1130px) {
    #onglets > div > .wp-block-columns > div {
        flex-basis: initial !important;
        max-width: 87vw;
    }
    #onglets > div > .wp-block-columns {
        flex-direction: column;
        gap: 50px;
    }
    #onglets > div > .wp-block-columns > div:first-child .wp-block-group__inner-container {
        display: flex;
        white-space: nowrap;
        overflow-x: scroll;
        scroll-snap-type: x mandatory;
    }
    #onglets > div > .wp-block-columns > div:first-child .wp-block-group__inner-container::-webkit-scrollbar {
        display: none;
    }
    body:not(.home) #wrapper #onglets .tabs p {
        scroll-snap-align: start;
        padding: 20px;
    }
    #onglets {
        padding: 0 6.5vw !important;
    }
    #onglets > div > .wp-block-columns > div:nth-child(2) {
        padding-right: 0;
    }
}
@media (max-width: 700px) {
    #onglets .quatre_blocs > div {
        width: 100%;
    }
}
@media (max-width: 600px) {
    #wrapper div .wpforms-field-container > div > div > div:first-child > div:first-child .wpforms-field {
        padding-top: 0;
    }
}













@media (max-width: 500px) {
    #wrapper div#text > *:not(.wp-block-cover):not(.wp-block-group), 
	#wrapper div#text > figure, 
	#wrapper div#text > ul, 
	#wrapper div#text > .wp-block-group > .wp-block-group__inner-container, 
	#wrapper div#text > p, 
	#wrapper .wp-block-cover:not(.cover-inner-full-width) .wp-block-cover__inner-container {
		width: 87%;
	}
    .wp-block-spacer {
		max-height: 50px;
	}
	.wp-block-columns + .wp-block-spacer {
		max-height: 35px;
	}
	#container {
		margin: 0px 0px 60px 0px;
	}
	body:not(.home) h3 {
		margin-bottom: 10px;
	}
	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;
	}
	div .wp-block-cover {
		padding-left: 0 !important;
		padding-right: 0 !important;
	}
	#wrapper figure.wp-block-gallery.masonry-display.columns-5,
	#wrapper figure.wp-block-gallery.masonry-display.columns-4,
	#wrapper figure.wp-block-gallery.masonry-display.columns-3 {
		columns: 2;
	}
	#wrapper .wp-block-gallery.columns-4 figure.wp-block-image:not(#individual-image) img,
	#wrapper .wp-block-gallery.columns-3 figure.wp-block-image:not(#individual-image) img,
	#wrapper .wp-block-gallery.columns-default figure.wp-block-image:not(#individual-image) img,
	#wrapper .wp-block-gallery.columns-5 figure.wp-block-image:not(#individual-image) img {
		height: 28vw;
	}
	.wp-block-columns {
		margin-bottom: 1.75em;
	}
	#wrapper div .wpforms-field-container div.wpforms-field {
		width: 100%;
		margin-left: 0;
		margin-right: 0;
		padding-bottom: 8px;
	}
	#wrapper div .wpforms-field-container > div.wpforms-field .wpforms-field {
		padding: 16px 0 0 0;
	}
    #wrapper .wpforms-submit-container {
        display: flex;
        justify-content: center;
        margin: 30px 0 15px 0;
    }


    #pro .item p:first-of-type {
		font-size: 22px;
	}
    div #blocs .bloc img {
		height: 115vw;
	}
	#blocs .bloc .titre + a {
		margin-top: 12px;
	}
    #blocs {
        margin-bottom: 70px;
    }
    #pro .txt {
        padding: 60px 6.5%;
    }
    #pro .txt .inner > a {
        margin-top: 55px;
    }
    #pro .item:first-of-type {
        margin-top: 20px;
    }
    #pro .item svg {
        width: auto;
        height: 20px;
    }
    #pro .item p:first-of-type {
        padding-left: 34px;
    }
    #pro,
    #exi {
        margin-bottom: 65px;
    }
    #exi h3 {
        margin: 18px 0 15px 0;
    }
    #exp .titre, #ekip .titre {
        font-size: 28px;
    }
    #exp .titre {
        margin-bottom: 30px;
    }
    #real h2 {
        margin-bottom: 35px;
    }
    #real .btn {
        margin-top: 35px;
    }



    #prox .flex {
        justify-content: center;
        text-align: center;
        gap: 0;
    }
    span.titre_agences {
        text-align: center;
    }
    #ekip {
        padding: 60px 0;
    }
    #avis > div {
        margin-top: 25px;
    }
    #avis {
        padding: 55px 0 0 0;
    }
    #logos {
        margin: 70px auto 65px;
        width: 87%;
    }

    #onglets > div > .wp-block-columns > div:first-child .wp-block-group__inner-container {
        margin-right: -6.5vw;
    }
    body:not(.home) #wrapper #onglets .tabs p {
        border-width: 4px;
        padding: 15px;
        font-size: 12px;
    }
    #onglets > div > .wp-block-columns > div:first-child > div {
        position: relative;
    }
    #onglets > div > .wp-block-columns > div:first-child > div:after {
        content: '';
        width: 6.5vw;
        height: 48px;
        background: linear-gradient(270deg, #FFFFFF, transparent);
        position: absolute;
        left: 100%;
        top: 0;
        pointer-events: none;
    }
    body:not(.home) #prox > div.txt {
        padding-top: 0;
    }
    body:not(.home) .es-widget-background-wrapper {
        padding: 30px 0 0 0 !important;
    }
    #onglets .quatre_blocs > div {
        padding: 30px;
    }
    #av_ap figcaption {
        font-size: 12px;
        margin-bottom: 0;
    }
    #av_ap .gap70 {
        gap: 35px;
    }

    div.gros_btn_mobile {
        width: 100%;
    }
    div.gros_btn_mobile > a {
        flex-direction: column;
        align-items: center;
        gap: 12px !important;
    }
    div.gros_btn_mobile > a:after {
        display: none;
    }
    #onglets .quatre_blocs > div > div > p:first-child {
        font-size: 18px;
        line-height: 1.25em;
        margin-bottom: 10px;
    }
    #av_ap .wp-block-columns.is-not-stacked-on-mobile {
        gap: 20px;
    }
    .full_width_mobile {
        width: 100% !important;
    }
    #wrapper .wp-block-column > .wp-block-cover:only-child .wp-block-cover__inner-container {
        box-sizing: border-box;
        padding: 0 6.5vw;
    }
    .wp-block-columns[style*="padding-right:20px;padding-left:20px"] {
        padding-left: 6.5vw !important;
        padding-right: 6.5vw !important;
    }
    #ekip .rs {
        gap: 12px;
    }
    #ekip .rs svg {
        width: auto;
        height: 26px;
    }
}