/*
Theme Name: Ergopix
Theme URI: https://www.ergopix.com
Author: ergopix sàrl
Version: 1.0
*/

:root {
	
	--primary: #f6a006;
	--primary-rgb: 246, 160, 6;
	
	--secondary: #e1620f;
	--secondary-rgb: 225, 98, 15;
	
	--padding-container: 60px;
	
	--padding-bottom-agenda: 520px;
	
	--container-size: 1320px;
	
	--decalage-image: 240px;
	
	--imge-height: 425px;
	
	--btn-size: 36px;
	--btn-font-size: 18px;
}

html {
  scrollbar-gutter: stable;	
}

body {
	text-rendering: optimizeLegibility;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	background-color: black;
	font-family: 'MerriweatherSans';
	overflow-x: hidden;
}



/* GENERAL  ----------------------------------------------------- */

a {
	color:inherit;
	text-decoration: none;
}

.acf-map {
	width: 100%;
	height: 100%;
}

.acf-google {
	width: 100%;
	height: 100%;
}

.container {
	padding-right: var(--padding-container);
	padding-left: var(--padding-container);
}

body.menu-open  {
	overflow: hidden;
}

.btn-primary {
	--bs-btn-color: #fff;
	--bs-btn-bg: var(--primary);
	--bs-btn-border-color: var(--primary);
	--bs-btn-hover-color: #fff;
	--bs-btn-hover-bg: black;
	--bs-btn-hover-border-color: var(--primary);
	--bs-btn-focus-shadow-rgb: var(--primary-rgb);
	--bs-btn-active-color: #fff;
	--bs-btn-active-bg: black;
	--bs-btn-active-border-color: var(--primary);
	--bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
	--bs-btn-disabled-color: #fff;
	--bs-btn-disabled-bg: var(--primary);
	--bs-btn-disabled-border-color: var(--primary);	
}

.contact-social .btn-primary {
	--bs-btn-bg: #000;
	--bs-btn-border-color: #000;
	
	--bs-btn-hover-bg: #fff;
	--bs-btn-hover-border-color:#fff;
	--bs-btn-hover-color: #000;
}

.btn-secondary {
	--bs-btn-color: #000;
	--bs-btn-bg: var(--primary);
	--bs-btn-border-color: var(--primary);
	--bs-btn-hover-color: #fff;
	--bs-btn-hover-bg: black;
	--bs-btn-hover-border-color: var(--primary);
	--bs-btn-focus-shadow-rgb: var(--primary-rgb);
	--bs-btn-active-color: #fff;
	--bs-btn-active-bg: black;
	--bs-btn-active-border-color: var(--primary);
	--bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
	--bs-btn-disabled-color: #fff;
	--bs-btn-disabled-bg: var(--primary);
	--bs-btn-disabled-border-color: var(--primary);	
}

.btn-transparent {
	--bs-btn-color: #000;
	--bs-btn-bg: transparent;
	--bs-btn-border-width: 2px;
	--bs-btn-border-color: #000;
	--bs-btn-hover-color: #fff;
	--bs-btn-hover-bg: black;
	--bs-btn-hover-border-color: black;
	--bs-btn-focus-shadow-rgb: var(--primary-rgb);
	--bs-btn-active-color: #fff;
	--bs-btn-active-bg: black;
	--bs-btn-active-border-color: black;
	--bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
	--bs-btn-disabled-color: #fff;
	--bs-btn-disabled-bg: var(--primary);
	--bs-btn-disabled-border-color: var(--primary);	
}

.btn-round {
	height: var(--btn-size);
	width: var(--btn-size);
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 0;
	line-height: 1;
	border-radius: 50%;
	border-width: 2px;
}

.btn-round > i {
	font-size: var(--btn-font-size);
}

.btn-arrow {
	min-width: 210px;
	display: flex;
	justify-content: space-between;
	align-items: center;
	--bs-btn-padding-y: 0.7rem;
	--bs-btn-font-size: 15px;
	font-weight: 700;
	padding-right: 1.2rem;
}

.btn-arrow > i{
	font-size: 1.2em;
}

gform_wrapper.gravity-theme input[type="color"], .gform_wrapper.gravity-theme input[type="date"], .gform_wrapper.gravity-theme input[type="datetime-local"], .gform_wrapper.gravity-theme input[type="datetime"], .gform_wrapper.gravity-theme input[type="email"], .gform_wrapper.gravity-theme input[type="month"], .gform_wrapper.gravity-theme input[type="number"], .gform_wrapper.gravity-theme input[type="password"], .gform_wrapper.gravity-theme input[type="search"], .gform_wrapper.gravity-theme input[type="tel"], .gform_wrapper.gravity-theme input[type="text"], .gform_wrapper.gravity-theme input[type="time"], .gform_wrapper.gravity-theme input[type="url"], .gform_wrapper.gravity-theme input[type="week"], .gform_wrapper.gravity-theme select, .gform_wrapper.gravity-theme textarea {
  font-size: 15px;
  margin-bottom: 0;
  margin-top: 0;
  padding: 8px;
  border: solid 2px black;
  border-radius: 0.375rem;
  background-color: rgba(255,255,255,0.7);
}

.gform_required_legend {
	font-size: 1.1rem;
}

.facetwp-load-more {
	position: relative;
	background-color: black;
	color: white;
	padding: 0.75rem 6rem 0.75rem 2rem;
	border: solid 1px white;
	border-radius: 0.375rem;
	font-weight: 700;
}

.facetwp-load-more::after {
	position: absolute;
	font-family: "Font Awesome 6 Pro";
	content: "\f175";
	color: var(--primary);
	right: 2rem;
	bottom: 0.25em;
	font-size: 1.5em;
	font-weight: 400;
}

.facetwp-load-more:hover {
	background-color: var(--primary);
	color: black;
	border: solid 1px var(--primary);

}

.facetwp-load-more:hover::after {
	color: black;
}

.image-fond-grey {
	filter: grayscale(100%);
}

.texte-shadow {
	text-shadow: 0 2px 32px #171717;
}

/* HELPERS
---------------------------------------------------------------- */

.font-description {
	font-size: 1.2rem;
	line-height: 1.5;
	font-weight: 600;
}

.texte-blanc {
	color: white!important;
}

.texte-noir {
	color: black!important;
}
.texte-primary {
	color: var(--primary);
}

.texte-secondary {
	color: var(--secondary);
}

.single-padding {
	padding-bottom: var(--padding-container);
}

.double-padding {
	padding-bottom: calc(var(--padding-container)*2);
}

.no-padding {
	padding-left: 0;
	padding-right: 0;	
}

.offset-custom {
	margin-left: 7%;
}

/* SLICK
---------------------------------------------------------------- */ 

.slick-prev::before,
.slick-next::before {
	font-family: "Font Awesome 6 Pro";
	font-size: 3rem;
	color: var(--primary);
}

.slick-prev::before {
	content: "\f104";
}

.slick-next::before {
	content: "\f105"; 
}

.slick-next,
.slick-prev {
	height: 48px;	
}

/* HEADER -----------------------------------------------------------  */


.hamburger {
	display: block;
	width: 16px;
	overflow: hidden;
	cursor: pointer;
	margin-top: 18px;
}

header.scrolled .hamburger {
	margin-top: 12px;
}

.hamburger span {
	background: rgba(255,255,255,1);
	display: block;
	height: 2px;
	margin: 2px 0;
	position: relative;
	transform: rotate(0);
	top: 0;
	left: 0;
	opacity: 1;
	transition: none .5s ease;
	transition-property: transform, top, left, opacity;
}

.hamburger span.middle-bar {
	width: 12px;
}

body.menu-open .hamburger span.top-bar {
	transform: rotate(45deg);
	top: 4px;
}

body.menu-open .hamburger span.middle-bar {
	opacity: 0;
}

body.menu-open .hamburger span.bottom-bar {
	transform: rotate(-45deg);
	top: -4px;
}

body.menu-open .hamburger span.middle-bar {
	left: -20px;
}


header a {
	color: rgba(255, 255, 255, 1);
	text-decoration: none;
}

header a:hover {
	color: rgba(255, 255, 255, 0.8);
}

header {
	padding-top: 2rem;
	z-index: 1000;
}

header .logo {
	font-size: 5.32rem;
	letter-spacing: 0.005em;
	line-height: 1.2;
}

header .sous-titre-logo {
	font-size: 1.6875rem;
	letter-spacing: 0.8em;
}

header .logo-reduit {
	display: none;
}

header.scrolled {
	padding-top: 0;
}

header.scrolled .logo-full{
	display: none;	
}

header.scrolled .logo-reduit{
	display: block;	
}

header.scrolled .logo-reduit span{
	font-size: 2rem;
}


header.scrolled {
	background-color: black;
	transition: .3s;
}

.menu-overlay.open {
	z-index: 10;
	opacity: 1;
	transition: opacity 0.5s;
}

.menu-overlay {
	width: 100dvw;
	height: 100dvh;
	z-index: -10;
	opacity: 0;
}

.menu-overlay .image-menu {
	top:0;
	position: absolute;
	min-width: 100dvw;
	min-height: 100dvh;
	object-fit: cover;
	z-index: -1;
}

.image-overlay {
	top:0;
	position: absolute;
	min-width: 100dvw;
	min-height: 100dvh;
	z-index: 0;
	background-image: linear-gradient(180deg, #000000  0%, rgba(0,0,0, 0.5) 50%, #000000 100%);
}

.container-menu {
	height: 100dvh;
	z-index: 1;
}

.menu-wrapper {
	height: 100%;
}

.menu-items {
	width: 100%;
	list-style-type: none;
	padding-left: 0rem;
	margin-bottom: 0rem;
}

.menu-items .menu-item a { 
	font-size: 2.2rem;
	letter-spacing: 0.03em;
	font-weight: 700;
	color: rgb(215, 215, 215);
	text-transform: uppercase;
	transition: opacity ease-in-out 0.3s;
}

.menu-items .menu-item a:hover {
	opacity: 0.6;
}

.menu-items .menu-item.current-menu-item a  {
	color: white;
	
}

.social-media-menu {
	position: absolute;
	bottom: 10%;
	left: 0;
	right: 0;
	z-index: 2;
	--btn-size: 36px;
	--btn-font-size: 18px;
}

.social-media-menu .row-social-media {
	column-gap: calc(var(--btn-size) / 2.5);
	justify-content: center;
}

/* HERO ------------------------------------------------------------------ */

section.hero {
	background-color: black;
	text-align: center;
}

section.hero .hero--image {
	background-color: black;
}

section.hero .hero--title {
	position: absolute;
	bottom: 120px;
	color: white;
	width: 100%;
	text-align: left;
}

section.hero .hero--title h1 {
	font-size: 4.28rem;
}

/* changer la valeur du width(faire un calcul) */
.fond-wrapper {
	top: calc(var(--padding-container)*-1);
	left: var(--decalage-image);
	position: absolute;
	width: calc(100vw - (50vw - var(--container-size)/2) - var(--decalage-image));
	height: 100%;
	z-index: 0;
}

body.home .fond-wrapper {
	z-index: 5;
}

.fond-overlay {
	position: absolute;
	inset: 0;	
	background-color: rgba(var(--primary-rgb), 0.8);
	z-index: 4
}

/* HOME - Biographie -------------------------------------------------------------- */

section.biographie {
	background-color: black;
}

section.biographie .biographie-titre {
	margin-top: 30px;
	z-index: 5;
}

section.biographie .titre-bio {
	font-size: 1.9rem;
}

section.biographie .contenu--content .bio-texte p:last-child {
	margin-bottom: 0;
}

section.biographie .contenu--content {
	z-index: 5;
}

section.biographie .portrait-bio {
	object-fit: cover;
}

section.biographie .resume-bio i {
	margin-left: 0.5em;
	transition: margin-left 0.4s ease-in;
} 

section.biographie .resume-bio a:hover i {
	margin-left: 1em;

}

section.biographie .image-bio {
	--bs-aspect-ratio: 100%;
}

section.biographie .image-bio::after {
	position: absolute;
	content:"";
	height:1px;
	bottom: -1px;
	width: calc(50vw - var(--container-size)/2 + var(--decalage-image));
	left: calc((50vw - var(--container-size)/2 + var(--padding-container))*-1);
	background-color: var(--primary);
}

/* HOME - NEWS  ------------------------------------------------------------------*/

.socialwall--header .row-social-media {
	--btn-size: 32px;
	--btn-font-size: 15px;
	column-gap: calc(var(--btn-size) / 2.75);
	justify-content: start;
}



/* HOME - CV --------------------------------------------------------------------- */

.cv {
	z-index: 3
}

.cv--contenu {
	z-index: 5;
}

.cv--contenu .mise-avant {
	row-gap: 2rem;
	padding-top: 4rem;
}

.cv--contenu .titre-competence {
	min-height: 3em;
}

/* changer la valeur du width(faire un calcul), de top, right et height */
.encart-cv {
	position: absolute;
	top: -261px;
	right: 0px;
	width: calc(100vw - (50vw - var(--container-size)/2));
	height: calc(100% + 260px);
	border: solid 1px var(--primary);
	border-left: none;
	border-top: none;
	z-index:-2;
}

.titre {
	z-index: 5;
}

a .titre-competence {
	transition: opacity ease-in-out 0.3s;
}

a:hover .titre-competence {
	opacity: 0.6;
}

/* HOME - AGENDA ------------------------------------------------------------------------- */

.agenda {
	margin-top: 100px;
	padding-bottom: 100px;
}

body.home .agenda {
	padding-bottom: var(--padding-bottom-agenda);
}

body.home .agenda.agenda-empty {
	padding-bottom: 200px;
}

.agenda--header h2 {
	margin-bottom: 0;
	line-height: 0.75;
}

.agenda--header {
	margin-bottom: 5rem;
}

.agenda .image-background {
	position: absolute;
	top: calc(var(--padding-container)*-1);
	left:0;
	bottom:0;
	right:0;
	z-index: -1;
}

.agenda .agenda-overlay {
	position: absolute;
	top: calc(var(--padding-container)*-1);
	left:0;
	bottom:0;
	right:0;
	z-index: -1;
	background-image: linear-gradient(180deg, #000000  0%, rgba(0,0,0, 0.4) 50%, #000000 100%);
}

.agenda .image-background > img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: 50% 28%;
}

.encart-agenda {
	position: absolute;
	top: calc(var(--padding-container)*-1);
	left: 0px;
	width: calc(100vw - (50vw - var(--container-size)/2));
	bottom: calc(var(--padding-bottom-agenda)*-1);
	border: solid 1px var(--primary);
	border-right: none;
	z-index:-1;
}

.agenda--container {
	--bs-gutter-x: 12px;
	--bs-gutter-y: 20px;
}

.agenda--container .colonne-cards {
	height: 660px;
}

.agenda--container .colonne-carte {
	height: 660px;
}

.agenda--container .cards {
	overflow: auto;
	row-gap: 12px;
	padding: 1rem;
	border: solid 1px var(--primary);
}

.agenda--container .cards-page {
	row-gap: 12px;
}

main.agenda {
	margin-top: 0;
	padding-bottom: 5rem;
}

.agenda--container .card--link {
	background-color: black;
}

.agenda--boite {
	transition: opacity 0.2s ease-in;
}

.agenda--boite:hover{
	opacity: 0.8;
}

.agenda--boite img {
	max-width: 40%;
	height: auto;
	object-fit: cover;
}

.agenda--content {
	background-color: var(--primary);
	padding: 1.2rem 1.5rem;
	row-gap: 0.2rem;
}

.agenda--content .titre {
	font-size: 1.75rem;
	line-height: 1.1;
}

.agenda--content .lieu-date {
	font-size: 1.2rem;
	line-height: 1.5;
}

.agenda--content .categorie-evenement {
	font-size: 1rem;
}

.agenda--content .categorie-evenement:not(:last-child)::after {
	content: " / ";
}

.agenda--map {
	width: 100%;
	height: 100%;
}

.agenda--map .titre-evenement-carte {
	font-size: 1.2rem;
	margin-bottom: 0.5em;
	font-weight: 600;
}

.agenda--map .date-evenement-carte,
.agenda--map .lieu-evenement-carte,
.agenda--map .lien-evenement-carte  {
	font-size: 1rem;
	font-weight: 500;
}

.agenda--map .lien-evenement-carte::after {
	font-family: "Font Awesome 6 Pro";
	content: "\f178";
	color: var(--secondary);
	margin-left: 0.5em;
	transition: margin-left 0.4s ease-in;
}

.agenda--map .lien-evenement-carte:hover::after {
	margin-left: 1rem;
}

.agenda--map .gm-style {
	font-family: 'MerriweatherSans';
}

.agenda--map .gm-style .gm-style-iw-c {
	padding: 1.2rem 1rem;
	background-color: var(--primary);
	border-radius: 0px;
}

.agenda--map .gm-style .gm-style-iw-tc::after {
	background-color: var(--primary);
}

.gm-style .gm-style-iw-d::-webkit-scrollbar-track, .gm-style .gm-style-iw-d::-webkit-scrollbar-track-piece {
	background: var(--primary)
}

/* HOME - PROJETS ------------------------------------------------------------------------- */

body(.home) section.projets {
	margin-top: -100px;
}

section.projets > .container {
	padding-bottom: 100px;
}

section.projets .encart-projets {
	position: absolute;
	top: calc(var(--padding-container)*-1);
	right: 0px;
	width: calc(100vw - (50vw - var(--container-size)/2));
	bottom: 0;
	z-index:-1;
}

section.projets .featured-project {
	column-gap: 72px;
}

section.projets .featured-project .titre-projet {
	display: -webkit-box;
	  -webkit-line-clamp: 2;
	  -webkit-box-orient: vertical;  
	  overflow: hidden;
}

section.projets .featured-project .description-projet {
	display: -webkit-box;
	  -webkit-line-clamp: 5;
	  -webkit-box-orient: vertical;  
	  overflow: hidden;
}

section.projets .featured-project .featured-project--media{
	width: 700px;
	height: auto;
}

.lien-projet {
	font-size: 1.2rem;
	color: black;
	text-decoration: none;
}

.lien-projet:hover::after {
	margin-left: 1em;
}

.lien-projet::after {
	font-family: "Font Awesome 6 Pro";
	content: "\f178";
	color: var(--secondary);
	margin-left: 0.5em;
	transition: margin-left 0.4s ease-in;
}

section.projets .list-projects {
	margin-top: 140px;
	--bs-gutter-x: 0.3rem;
}

section.projets .projet--vignette::after {
	position: absolute;
	content: "";
	inset: 0;
	background-image: linear-gradient(180deg, rgba(0,0,0, 0.4) 0%, rgba(0,0,0, 0.3) 30%, #000000 100%);
	z-index: 1;
	transition: all 0.3s ease-in;
	opacity: 1;
}

section.projets .nav-link:hover .projet--vignette::after {
	opacity: 0.5;
}

section.projets .projet--vignette--texte {
	position: absolute;
	z-index: 2;
	left: 1.5rem;
	right: 1.5rem;
	bottom: 1.4rem;
}

section.projets .sous-titre {
	font-size: 1rem;
}

section.projets .nav-link {
	transition: transform 0.3s ease-in-out;
} 

section.projets .nav-link.active {
	transform: translate(0px, -50px);
}

/* PRESSE
---------------------------------------------------------------------- */

section.presse > .container {
	padding-bottom: 5rem;
}

section.presse .presse-entete {
	padding-bottom: calc(var(--padding-container)*1.5);
}

section.presse .encart-presse {
	position: absolute;
	top: calc(var(--padding-container)*-1.5);
	left: 0px;
	width: calc(100vw - (50vw - var(--container-size)/2));
	bottom: 0;
	background-color: black;
	border: solid 1px var(--primary);
	border-right: none;
	border-bottom: none;
	z-index:-1;
}

section.presse .titre-presse {
	line-height: 0.8;
}

section.presse .slick-presse {
	margin: auto;
	width: 85%;
	margin-bottom: 5rem;
}

section.presse .presse-item {
	row-gap: 1rem;
}

section.presse .slick-presse h3 {
	font-size: 1.95rem;
	margin-bottom: 0.5rem;
}

section.presse .slick-presse .presse-journal,
section.presse .slick-presse .presse-date {
	font-size: 1.14rem;
}

section.presse .slick-presse .presse-lien {
	font-size: 0.95rem;
	color: rgb(255, 255, 255);
	text-decoration: none;
	transition: 0.3s ease-in-out;
}

section.presse .slick-presse .presse-lien:hover {
	color: rgba(255, 255, 255, 0.8);
}

section.presse .slick-presse .presse-lien i {
	color: var(--secondary);
	margin-left: 0.5em;
	transition: margin-left 0.4s ease-in;
}

section.presse .slick-presse .presse-lien:hover i {
	margin-left: 1em;
}

.slick-presse .slick-prev {
	left: -6%;
}

.slick-presse .slick-next {
	right: -6%;
}

/* Partenariat 
----------------------------------------------------------------------- */

body.home section.partenaire {
	background-color: #1b1b1b;
	padding-top: calc(var(--padding-container)*2.5);
	padding-bottom: 5rem;
}

body.home section.partenaire .encart-partenaire {
	position: absolute;
	top: calc(var(--padding-container)*-2.5);
	left: 0px;
	width: calc(100vw - (50vw - var(--container-size)/2));
	height: calc(var(--padding-container)*1.5);
	background-color: transparent;
	border: solid 1px var(--primary);
	border-top: none;
	border-right: none;
	z-index:0;
}

.slick-partenaire .slick-prev {
	left: calc(var(--padding-container)*-0.5);
}

.slick-partenaire .slick-next {
	right: calc(var(--padding-container)*-0.5);
}

/* Page par défaut
---------------------------------------------------------------------- */

section.en-tete {
	height: 60vh;
	min-height: 600px;
}

section.en-tete .en-tete--image {
	height: 60vh;
	min-height: 600px;
	width: 100%;
	object-fit: cover;
}

section.en-tete .categorie-projet:not(:last-child)::after {
	content: " / ";
}

section.en-tete .en-tete--title {
	position: absolute;
	bottom: 3rem;
	z-index: 3;
	width: 100%;
}

section.en-tete .en-tete--title h1 {
	font-size: 4.28rem;
}

section.en-tete .en-tete--title .surtitre {
	font-size: 1.9rem;
}

section.en-tete .overlay {
	position: absolute;
	inset: 0;
	background: linear-gradient(180deg, rgba(0,0,0,0.4) 0%, rgba(0,0,0,0.6208684157256652) 82%, rgba(0,0,0,0.8) 100%);
}

section.contenu-page {
	background-color: black;
	margin-top: calc(var(--padding-container)*2);
	margin-bottom: calc(var(--padding-container));
}

section.contenu-page .contenu-page--content {
	z-index: 5;
}

section.contenu-page .illustration {
	object-fit: cover;
}

body:not(.page-template-default, .single-prix, .single-emploi, .single-formation) section.contenu-page .image-contenu::after {
	position: absolute;
	content: "";
	height: 1px;
	bottom: -1px;
	width: calc(50vw - var(--container-size)/2 + var(--decalage-image));
	left: calc((50vw - var(--container-size)/2 + var(--padding-container))*-1);
	background-color: var(--primary);
}

section.contenu-page .image-contenu {
	--bs-aspect-ratio: 120%;
}

.image-contenu:not(.default)::after {
	position: absolute;
	content:"";
	height:1px;
	bottom: -1px;
	width: calc(50vw - var(--container-size)/2 + var(--decalage-image));
	left: calc((50vw - var(--container-size)/2 + var(--padding-container))*-1);
	background-color: var(--primary);
}

section.contenu-page .fond-wrapper {
  min-height: calc(100% + 2*(var(--padding-container)));
}

.contenu-page--content a:not(.btn) {
	display: block;
	font-size: 1.2rem;
	color: rgba(33,37,41, 1);
	transition:  color 0.4s ease-in;
}

.contenu-page--content a:not(.btn):hover {
	color: rgba(33,37,41, 0.4);
}

.contenu-page--content a:not(.btn)::after {
	font-family: "Font Awesome 6 Pro";
	content: "\f178";
	color: var(--secondary);
	margin-left: 0.5em;
	transition: margin-left 0.4s ease-in;
}

.contenu-page--content a:not(.btn):hover::after {
	margin-left: 1rem;
}

.contenu-page--content h2,
.contenu-page--content h3,
.contenu-page--content h4,
.contenu-page--content h5,
.contenu-page--content h6 {
	color: white;
	
	
}

.contenu-page--content h2,
.contenu-page--content h3 {
	padding-bottom: 0.5em;
	font-weight: 800;
}

.contenu-page--content h4,
.contenu-page--content h5,
.contenu-page--content h6 {
	padding-bottom: 0.5em;
	font-weight: 700;
	
}

/* .contenu-page--content h2 {
	font-size: 3.33rem;
} */

.contenu--content--image,
.contenu--content--offset {
	flex: 0 0 auto;
	width: 38%;
}

.contenu--content--texte,
.contenu--content--title {
	flex: 0 0 auto;
	width: 52%;
	margin-left: 10%;
}

body.page-template-default:not(.home) section.presse .encart-presse {
	position: absolute;
	top: 0;
	right: 0px;
	left: initial;
	width: calc(100vw - (50vw - var(--container-size)/2));
	bottom: 0;
	background-color: black;
	border: solid 1px var(--primary);
	border-left: none;
	border-top: none;
	z-index:-1;
}

body.page-template-default:not(.home) section.presse {
	margin-top: calc(-1*(var(--padding-container)));
}

body.page-template-default:not(.home) section.presse > .container {
	padding-top: calc(var(--padding-container)*2);
}

body.page-template-default:not(.home) section.agenda {
	margin-top: calc(var(--padding-container)*2);
	padding-bottom: 10rem;
}

body.page-template-default .end-margin {
	padding-bottom: calc(var(--padding-container)*2);
}

body.page-template-default .contenu-flexible,
body.error404 .contenu-flexible  {
	max-width: calc(100% - var(--decalage-image));
	margin-left: auto;
	padding-top: 3rem;
	
}

.contact-social .row-social-media {
	column-gap: calc(var(--btn-size) / 2.5);
}

.contenu--content--texte input {
	  border: solid 2px black;
	  border-radius: 0.375rem;
	  background-color: rgba(255,255,255,0.7);
	  font-size: 15px;
		margin-bottom: 0;
		margin-top: 0;
		padding: 8px;
}

/* Page Biographie 
---------------------------------------------------------------------- */

.responsive-tabs {
	padding-bottom: var(--padding-container);
}

.responsive-tabs .nav-tabs {
	display: flex;
}

.responsive-tabs .card {
	border: none;
	background-color: #1b1b1b;
}

.responsive-tabs .card .card-header {
	display: none;
}

.responsive-tabs .card .collapse {
	display: block;
}

.responsive-tabs .nav-tabs {
	--bs-nav-tabs-border-width: 0;
	--bs-nav-tabs-link-active-bg: var(--primary);
}

.responsive-tabs .nav-tabs .nav-item {
	background-color: #444444;
	border-radius: 6px;
	margin-bottom: 8px;
	width: calc(9.1% - 5.8px);
	text-align: center;
}

.responsive-tabs .nav-tabs .nav-item:not(:last-child) {
	margin-right: 6px;
}

.responsive-tabs .nav-tabs .nav-link {
	border-radius: 6px;
	--bs-nav-link-color: white;
	--bs-nav-link-hover-color: white;
	font-weight: 700;
}


.biography__icon-wrapper {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 54px;
	height: 54px;
	background-color: var(--primary);
	color: #1b1b1b;
	border-radius: 50%;
	font-size: 2rem;
}

.biography__group--elements ul {
	list-style-type: none;
	padding: 0;
	margin: 0;
}

.row-bio {
	row-gap: 4rem;
	padding: 3rem 2.5rem;
}

.biography__group {
	padding-left: 0px;
	padding-right: 1.5rem;
}

.biography__group--icon {
	margin-right: 2rem;
}

.biography__month {
	margin-top: 2rem;
	font-size: 1.2rem;
	color: var(--primary);
}

.biography-type__title.no-month {
	margin-bottom: calc(2rem - 10px);
}

.biography__entry-name {
	display: block;
	font-size: 1.33rem;
	color: white;
	font-weight: 600;
	transition: opacity ease-in-out 0.3s;
}

a.biography__entry-name:hover {
	opacity: 0.6;
}

.biography-type__title {
	font-size: 2rem;
	color: var(--primary);
	font-weight: 700;
	height: 54px;
	display: flex;
	align-items: center;
	margin-bottom: -10px;
}

.biography__caption {
	color: white;
	margin-top: 0.5rem;
}
/* SINGLE PROJET 
---------------------------------------------------------------------- */

section.liste-concerts {
	background-color: #1b1b1b;
	padding-top: 1rem;
	padding-bottom: 2rem;
}

section.liste-concerts .row {
	--bs-gutter-x: 2rem;
	--bs-gutter-y: 2rem;
}

section.liste-concerts .liste-concerts--title {
	font-size: 1.9rem;
}

section.liste-concerts .concert {
	display: flex;
	flex-direction: column;
	height: 100%;
	border: solid 1px var(--primary);
	border-radius: 6px;
	padding: 1.2rem 2rem;
}

section.liste-concerts .concert.passee {
	border: solid 1px rgba(var(--primary-rgb), 0.4);
}

section.liste-concerts .concert .main {
	flex-grow: 1;
	margin-bottom: 1rem;
}

section.liste-concerts .concert .date {
	text-align: center;
	font-size: 1.4rem;
}

section.liste-concerts .concert .lieu {
	font-size: 1.7rem;
}

section.liste-concerts .concert .lien-agenda {
	display: flex;
	justify-content: space-between;
	align-items: center;
}

section.liste-concerts .concert .lien-agenda:not(:last-child) {
	margin-bottom: 0.75rem;
}

section.liste-concerts .concert .lien-agenda i {
	color: var(--secondary);
}

section.contenu-page .dates-projet{
	font-size: 1.15rem;
}

section.contenu-page .titre-projet{
	line-height: 1.2;
}

section.contenu-page .categorie-projet{
	font-size: 1.9rem;
	line-height: 1.2;
}

section.contenu-page .resume i {
	margin-left: 0.5em;
	transition: margin-left 0.4s ease-in;
} 

section.contenu-page .resume a:hover i {
	margin-left: 1em;
}

section.role {
	z-index: 3;
}

section.role--contenu {
	z-index: 5;
}

section.role .role--contenu .mise-avant {
	row-gap: 1.5rem;
}

section.role .role--contenu .titre-role {
	min-height: 3em;
}

section.role .encart-role-projet {
	position: absolute;
	top: 0px;
	right: 0px;
	width: calc(100vw - (50vw - var(--container-size)/2));
	height: 100%;
	border: solid 1px var(--primary);
	border-left: none;
	border-top: none;
	z-index:-2;
}

section.gallerie {
	margin-bottom: var(--padding-container);
}

.galerie-defaut {
	margin-top: 5rem;
}

body.single-projet section.presse .encart-presse {
	position: absolute;
	top: 0;
	right: 0px;
	left: initial;
	width: calc(100vw - (50vw - var(--container-size)/2));
	bottom: 0;
	background-color: black;
	border: solid 1px var(--primary);
	border-left: none;
	z-index:-1;
}

body.single-projet section.presse > .container {
	padding-top: calc(var(--padding-container)*2);
}

body.single-projet section.agenda {
	margin-top: calc(var(--padding-container)*2);
	padding-bottom: 10rem;
}

section.tous-projets .tous-projets--button {
	text-align: center;
	font-size: 1.6rem;
	line-height: 1.2;
	color: black;
	background-color: var(--primary);
	display: flex;
	flex-direction: column;
	justify-content: center;
	margin-bottom: 0;
	padding-left: 0;
	border: solid 1px var(--primary);
	border-radius: 6px;
	font-weight: 500;
	padding: 1.5rem 1.8rem;
	width: 300px;
	margin: auto;
	transition: all .3s;
}

section.tous-projets .tous-projets--button:hover {
	color: white;
	background-color: black;
}


/* Événement
---------------------------------------------------------------------- */

section.contenu-page .dates-evenement{
	font-size: 1.15rem;
}

section.contenu-page .titre-evenement {
  line-height: 1.2;
}

section.contenu-page .categorie-evenement {
  font-size: 1.9rem;
  line-height: 1.2;
}

body.single-evenement section.presse > .container {
  padding-top: calc(var(--padding-container)*2);
}

body.single-evenement section.presse .encart-presse {
  position: absolute;
  top: 0;
  right: 0px;
  left: initial;
  width: calc(100vw - (50vw - var(--container-size)/2));
  bottom: 0;
  background-color: black;
  border: solid 1px var(--primary);
  border-left: none;
  z-index: -1;
}

section.role .encart-role-evenement {
  position: absolute;
  top: 0px;
  right: 0px;
  width: calc(100vw - (50vw - var(--container-size)/2));
  height: 100%;
  border: solid 1px var(--primary);
  border-left: none;
  border-top: none;
  z-index: -2;
}

/* GALERIE 
---------------------------------------------------------------------- */

main.galerie {
	padding-top: 5rem;
}

.slick-gallerie {
	padding: 0 5rem;
}

.slick-gallerie-nav .slick-slide {
	opacity: 0.5;
	transition: opacity 0.5s ease;
}

.slick-gallerie-nav .slick-current {
	opacity: 1;
}

.slick-gallerie-nav .slick-prev,
.slick-gallerie-full .slick-prev {
	left: -40px;
}

.slick-gallerie-nav .slick-next,
.slick-gallerie-full .slick-next {
	right: -40px;
}

.slick-gallerie-full .image-wrapper > a::after {
	position: absolute;
	content: "";
	inset: 0;
	opacity: 0;
	background-image: linear-gradient(180deg, rgba(0, 0, 0, 0.00) 0%, #000000 100%), radial-gradient(circle at 50% 50%, rgba(0, 0, 0, 0.00) 0%, rgba(0, 0, 0, 0.20) 72%);
	z-index: 1;
	transition: opacity 0.3s ease;
}

.slick-gallerie-full .image-wrapper > a:hover::after {
	opacity: .6;
}

.slick-gallerie-full .image-wrapper .text-overlay {
	position: absolute;
	font-size: 1rem;
	font-weight: 500;
	color: white;
	left: 1.2rem;
	right: 1.5rem;
	bottom: 1rem;
	opacity: 0;
	transition: opacity 0.3s ease;
	z-index:2;
}

.slick-gallerie-full .image-wrapper:hover .text-overlay {
	opacity: 1;
}

.slick-gallerie-nav .vignette-gallerie {
	cursor: pointer;
}

/* ARCHIVES PROJETS Et SUBMENU
------------------------------------------------------------------------ */

body .facetwp-facet-projet_statut .facetwp-checkbox {
  background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 576 512"><!--!Font Awesome Free 6.6.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2024 Fonticons, Inc.--><path fill="%23939394" d="M384 128c70.7 0 128 57.3 128 128s-57.3 128-128 128l-192 0c-70.7 0-128-57.3-128-128s57.3-128 128-128l192 0zM576 256c0-106-86-192-192-192L192 64C86 64 0 150 0 256S86 448 192 448l192 0c106 0 192-86 192-192zM192 352a96 96 0 1 0 0-192 96 96 0 1 0 0 192z"/></svg>');
  background-size: 55px 49px;
  padding-left: 41px;
}

body .facetwp-facet-projet_statut .facetwp-checkbox.checked {
background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 576 512"><!--!Font Awesome Pro 6.6.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2024 Fonticons, Inc.--><path fill="%23f6a006" d="M192 112c-79.5 0-144 64.5-144 144s64.5 144 144 144l192 0c79.5 0 144-64.5 144-144s-64.5-144-144-144l-192 0zM0 256C0 150 86 64 192 64l192 0c106 0 192 86 192 192s-86 192-192 192l-192 0C86 448 0 362 0 256zm384-96a96 96 0 1 1 0 192 96 96 0 1 1 0-192z"/></svg>');
}

body .facetwp-facet-projet_statut {
	margin-bottom: 0;
}

.facette-termine {
	font-size: 1.3rem;
}

body .facetwp-facet-projet_statut .facetwp-checkbox {
  width: 55px;
  height: 49px;
  margin: 0;
  padding: 0;
}

body .facetwp-facet-projet_statut .facetwp-checkbox .facetwp-display-value,
body .facetwp-facet-projet_statut .facetwp-checkbox .facetwp-counter{
  display: none;
} 


section.facettes-categories {
	background-color: #1b1b1b;
	padding-top: 4rem;
	padding-bottom: 4rem;
}

section.facettes-categories .facetwp-facet,
.submenu {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	grid-row-gap: 2rem;
	grid-column-gap: 2rem;
	grid-auto-flow: row;
	margin-bottom: 0;
	grid-auto-rows: 5rem;
}

ul.submenu {
	padding-left: 0;
}

section.facettes-categories .facetwp-radio,
section.facettes-categories .facetwp-radio.checked {
	background-image: none;
}

section.facettes-categories .facetwp-radio,
.submenu > li {
	text-align: center;
	font-size: 1.4rem;
	line-height: 1.2;
	color: white;
	display: flex;
	flex-direction: column;
	justify-content: center;
	margin-bottom: 0;
	padding-left: 0;
	border: solid 1px var(--primary);
	border-radius: 6px;
	font-weight: 500;
	padding: 1rem 1.5rem;
}

section.facettes-categories .facetwp-radio .facetwp-display-value {
	padding-right: 0;
}

section.facettes-categories .facetwp-radio.checked,
.submenu > li.current-menu-item {
	background-color: var(--primary);
	border: solid 1px black;
}

section.facettes-categories .facetwp-counter {
	display: none;
}

main .projets {
	padding-top: 5rem;
}

article.carte-projet:not(:last-child) {
	margin-bottom: 1.5rem;
}

article.carte-projet {
	opacity: 1;
	transition: opacity 0.2s ease-in;
}


article.carte-projet .projet-image {
	position: relative;
	width: 40%;
	flex-shrink:0;
}

article.carte-projet .projet-image .projet-image-overlay {
	
	position: absolute;
	z-index:1;
	inset:0;
	
}

article.carte-projet:hover {
	opacity: 0.8;
}

article.carte-projet .projet-contenu {
	padding: 1.75rem 2.2rem 2rem 2.2rem;
	flex-grow: 1;
	background-color: var(--primary);
	display: flex;
	flex-direction: column;
	row-gap: 1.5rem;
}

article.carte-projet .projet-contenu .categorie-projet:not(:last-child)::after {
	content: " / ";
}

article.carte-projet .projet-contenu .categorie-projet,
article.carte-projet .projet-contenu .date-projet,
article.carte-projet .projet-contenu .resume-projet {
	font-size: 1.3rem;
}

article.carte-projet .projet-contenu .dates-projet {
	row-gap: 1rem;
}

article.carte-projet .projet-contenu h3.titre-projet {
	margin-bottom: 0;
}

.show-more {
	text-align: center;
	margin-top: 4rem;
	margin-bottom: 6rem;
}

article .projet-termine {
	position: absolute;
	top: 1rem;
	left: 1rem;
	background-color: black;
	color:white;
	border-radius: 150px;
	font-size: 1rem;
	padding: 0.2rem 0.75rem;
}

/* ARCHIVES Galeries
------------------------------------------------------------------------ */

main.galeries {
	padding-top: 5rem;
}

main.galeries .grid-galerie {
	--bs-gutter-x: 2rem;
	--bs-gutter-y: 1.5rem;
}

main.galeries .carte-galerie {
	overflow: hidden;
}

main.galeries .carte-galerie::after {
	position: absolute;
	content: "";
	inset: 0;
	opacity: .5;
	background-image: linear-gradient(180deg, rgba(0, 0, 0, 0.00) 0%, #000000 100%), radial-gradient(circle at 50% 50%, rgba(0, 0, 0, 0.00) 0%, rgba(0, 0, 0, 0.20) 72%);
	z-index: 1;
	transition: all 0.3s ease;
}

main.galeries .carte-galerie:hover::after {
	opacity: .3;
}

main.galeries .carte-galerie .carte-galerie--image {
	transition: all 0.3s ease;
}

main.galeries .carte-galerie:hover .carte-galerie--image {
	transform: scale(1.08);
}

main.galeries .carte-galerie--texte {
	position: absolute;
	z-index: 2;
	left: 1.5rem;
	right: 1.5rem;
	bottom: 1.4rem;
	font-size: 1.6rem;
	line-height: 1.2;
}

/* Agenda 
----------------------------------------------------------------------*/

main.agenda .colonne-carte {
	height: 760px;
}

section.facettes-agenda {
	background-color: #1b1b1b;
	padding-top: 4rem;
	padding-bottom: 4rem;
}

section.facettes-agenda .facettes-agenda--wrapper {
	display: flex;
	flex-wrap: wrap;
	column-gap: 2rem;
	row-gap: 2rem;
}

section.facettes-agenda .facetwp-facet {
	display: flex;
	flex-wrap: wrap;
	column-gap: 2rem;
	row-gap: 2rem;
	margin-bottom: 0;
}

input.facetwp-date,
.facettes-agenda .fs-label-wrap,
.reset-link {
	height: 5rem;
	background-color: var(--primary);
	border: solid 1px black;
	color: white;
	border-radius: 6px;
	font-weight: 700;
	padding: 1rem 1.5rem;
	font-size: 1.4rem;
	width: 276px;
	cursor: pointer;
	text-align: center;
}


input[value=""].facetwp-date {
	background-color: black;
	border: solid 1px var(--primary);
	color: white;
}

.facettes-agenda .fs-label-wrap {
	display: flex;
	align-items: center;
	justify-content: center;
}

.facettes-agenda .fs-label-wrap .fs-label {
	height: auto;
	padding: 0;
	padding-right: 22px;
	line-height:1.2;
	text-overflow: unset;
	white-space: initial;
}

.facettes-agenda .fs-arrow {
	border-left: 8px solid transparent;
	border-right: 8px solid transparent;
	border-top: 8px solid #fff;
	right: 1.5rem;
}

.facettes-agenda .fs-wrap {
	width: 276px;
}

.facettes-agenda .fs-dropdown {
	margin-top: 8px;
	border: none;
	border-radius: 6px;
	font-size: 1.2rem;
	padding: 0.75rem 0;
}

.facettes-agenda .fs-wrap.single .fs-dropdown .fs-option {
	padding: 0.5rem 1rem;
}

.facettes-agenda .fs-wrap.single .fs-dropdown .fs-option.selected {
	background-color: var(--primary);
	color: white;
}

.facettes-agenda .facetwp-type-fselect .fs-option .fs-option-label {
	text-align: center;
}

body .fdate-wrap {
	width: 276px;
	margin-top: 6px;
}

body .fdate-grid .selected {
	background-color: var(--primary);
	color: white;
}

/* Sous-Pages Services 
---------------------------------------------------------------------- */

section.services-introduction .introduction {
	font-size: 1.4rem;
	line-height: 1.6;
	
}

section.services-introduction .introduction p {
	margin-bottom: 1.5em;
	
}

section.en-tete.services .overlay {
	background: linear-gradient(180deg, rgba(0,0,0,0.4) 0%, rgba(0,0,0,0.6208684157256652) 82%, rgba(0,0,0,1) 100%);
}

section.subtitle .subtitle {
	max-width: 60%;
}

.encart-services {
	position: absolute;
	top: -261px;
	right: 0px;
	width: calc(100vw - (50vw - var(--container-size)/2));
	height: calc(261px + 5rem + var(--imge-height)/2);
	border: solid 1px var(--primary);
	border-left: none;
	border-top: none;
	z-index:-2;
}

.services-realisations > .container {
	padding-bottom: var(--padding-container)
}

.realisation {
	row-gap: 4rem;
	padding-top: 4.5rem;
	padding-bottom: 4.5rem;
}

.realisation:not(:last-child) {
	border-bottom: 1px solid rgba(150, 101, 23, 0.3);
}

.realisation__header  {
	column-gap: 1.5rem;
}

.realisation__icon-wrapper {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 52px;
	height: 52px;
	background-color: var(--primary);
	color: #1b1b1b;
	border-radius: 50%;
	font-size: 1.8rem;
}

.fa-gear {
	margin-left: 0.1em;
}

.wrapper-realisations {
	padding: 0 6rem;
	background-color: #1b1b1b;
}

.realisation__link {
	font-size: 1.3em;
}

.realisation__title {
	font-size: 2rem;
	line-height: 1.2;
}

.realisation__link:hover::after {
	margin-left: 1em;
}

.realisation__link::after {
	font-family: "Font Awesome 6 Pro";
	content: "\f178";
	color: var(--secondary);
	margin-left: 0.5em;
	transition: margin-left 0.4s ease-in;
}

.ratio-service {
	--bs-aspect-ratio: 90%;
}


/* FOOTER 
---------------------------------------------------------------------- */

footer {
	padding-top: 2rem;
	padding-bottom: 5rem;
}

footer a {
	color: rgb(255, 255, 255);
	text-decoration: none;
	transition: 0.3s ease-in-out;
}

footer a:hover {
	color: rgba(255, 255, 255, 0.8);
}

footer input {
	background-color: transparent;
	color: white;
	border: solid 2px white;
	padding: 0.7rem 0.75rem;
	border-radius: 0.375rem;
}

footer .footer-overlay {
	position: absolute;
	inset:0;
	z-index: -1;
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center;
}

footer .color-overlay {
	width: 100%;
	height: 100%;
	background-color: rgba(128,128,128,0.8);
	filter: brightness(75%);
}

footer .footer-top {
	margin-bottom: 90px;
	row-gap: 1.5rem;	
}

footer .footer-top span {
	font-size: 1.5rem;
	margin-right: 3rem;
}

footer .signature {
	margin-bottom: 40px;
	
}

footer ul.menu-footer {
	padding: 0;
}

footer .menu-footer li {
	list-style-type: none;
}

footer .menu-footer li a {
	font-size: 1rem;
	text-transform: none;
}

footer .menu-un li:nth-child(n+4) {
	display: none;
}

footer .menu-deux li:nth-child(-n+3) {
	display: none;
}

footer .signature span {
	font-size: 2rem;
	letter-spacing: 0.005em;
	line-height: 1.1;
}

footer .row-social-media {
	--btn-size: 28px;
	--btn-font-size: 14px;
	column-gap: calc(var(--btn-size) / 2.5);
	justify-content: start;
}

body.mm-wrapper--opened .hamburger span.top-bar {
	transform: rotate(45deg);
	top: 12px;
}

body.mm-wrapper--opened .hamburger span.middle-bar {
	opacity: 0;
}

body.mm-wrapper--opened .hamburger span.bottom-bar {
	transform: rotate(-45deg);
	top: -10px;
}

body.mm-wrapper--opened .hamburger span.middle-bar {
	left: -40px;
}


.mm-listview{
	margin-top: calc((var(--mm-listitem-size) - var(--mm-lineheight))/ 2);
}

.mm-listitem::after {
	display: none;
}

.mm-navbar__title img{
	padding: 15px 0;
}

.btn-search {
	font-size: 1.500rem;
	cursor: pointer;
}

.the-content ul {}

.the-content ol {}

.the-content ul li, .the-content ol li {}

.list-inline li {
	display: inline-block;
}

.list-inline li:not(:last-child) {
	margin-right: .5rem;
}

.main-menu li a {
	display: inline-block;
	text-decoration: none;
}

.accordion-button {
	cursor: pointer;
	font-size: inherit;
}

.accordion-button:not(.collapsed) {
	box-shadow: none;
	border-bottom: 2px solid #FAFAFA;
}

.accordion-body .the-content p:last-child, .content-with-bg p:last-child{
	margin-bottom: 0
}

@media (max-width: 1399.98px) {
	
	:root {
		--padding-container: 50px;
		--container-size: 1140px;
	}
	
	header .logo {
		font-size: 4.52rem;
	}
	
	header .sous-titre-logo {
		font-size: 1.435rem;
	}
	
	.menu-items .menu-item a {
	  font-size: 1.95rem;
	}
	
	section.projets .featured-project .featured-project--media {
		width: 580px;
	}
	
	section.projets .featured-project {
		column-gap: 60px;
	}
	
	section.projets .featured-project .description-projet {
	  -webkit-line-clamp: 4;
	}
		
	section.facettes-categories .facetwp-radio,
	.submenu > li {
		font-size: 1.2rem;
	}
	
	section.liste-concerts .concert {
		padding: 1.2rem 1.8rem;
	}
	
	section.liste-concerts .concert .lieu {
	  font-size: 1.41rem;
	}
	
	main.agenda .colonne-carte {
		height: 700px;
	}
}

@media (max-width: 1199.98px) {
	:root {
		--container-size: 960px;
		
		--decalage-image: 200px;
		
		--padding-bottom-agenda: 360px;
		
		--imge-height: 298px;
	}
	
	.hero--image {
		min-height: 600px;
		object-fit: cover; 
	}
	
	header .logo {
		font-size: 3.84rem;
	}
	
	header .sous-titre-logo {
		font-size: 1.22rem;
	}
	
	section.en-tete .en-tete--title h1 {
	  font-size: 3.56rem;
	}
	
	section.hero .hero--title h1 {
		font-size: 3.56rem;
	}
	
	section.en-tete .en-tete--title .surtitre {
		font-size: 1.58rem;
	}
	
	.menu-items .menu-item a {
	  font-size: 1.6rem;
	}
	
	.agenda--container .colonne-cards {
		max-height: 600px;
		height: auto;
	}
	
	.agenda--container .colonne-carte {
		height: 600px;
	}
	
	section.projets .featured-project .featured-project--media {
	  width: 100%;
	}
	
	section.projets .featured-project {
		flex-direction: column;
		row-gap: 2rem;
		
	}
	
	section.projets .list-projects {
	  margin-top: 100px;
	}
	
	section.projets .list-projects .sous-titre {
	  display: none;
	}
	
	section.projets .featured-project--info {
		height: 260px;
	}
	
	section.projets .featured-project .description-projet {
	  -webkit-line-clamp: 5;
	}
	
	section.facettes-categories .facetwp-facet,
	.submenu {
		grid-template-columns: repeat(3, 1fr);
	}
	
	grid-template-columns: repeat(2, 1fr);

	article.carte-projet .projet-contenu h3.titre-projet {
	  /* font-size: 2.775rem; */
	}
	
	article.carte-projet .projet-contenu {
		row-gap: 1.2rem;
	}
	
	article.carte-projet .projet-contenu .categorie-projet,
	article.carte-projet .projet-contenu .date-projet,
	article.carte-projet .projet-contenu .resume-projet {
		font-size: 1.1rem;
	}
	
	.slick-gallerie {
	  padding: 0 2rem;
	}
	
	.wrapper-realisations {
	  padding: 0 4.5rem;
	  background-color: #1b1b1b;
	}
	
	.realisation {
	  padding-top: 4rem;
	  padding-bottom: 4rem;
	}
	
	.realisation__title {
		font-size: 1.75rem;
	}
	
	.font-description {
	  font-size: 1rem;
	}
	section.projets .projet--vignette--texte {
	  left: 1.2rem;
	  right: 1.2rem;
	  bottom: 1.1rem;
	}

}

@media (max-width: 991.98px) {
	:root {
		--container-size: 720px;
		--padding-bottom-agenda: 280px;
		--imge-height: 400px;
	}
	
	body:not(.page-template-default) section.contenu-page .image-contenu::after {
		display: none;
	}
	
	.menu-items {
		flex-direction: column;
		align-items: center;
		row-gap: 2vh;
	}
	
	header .logo {
		font-size: 3.2rem;
	}
	
	header.scrolled .logo-reduit span {
	  font-size: 1.6rem;
	}
	
	header .sous-titre-logo {
		font-size: 1.02rem;
	}
	
	section.en-tete .en-tete--title {
		bottom: 2rem;
	}
	
	section.hero .hero--title {
	  bottom: 80px;
	}
	
	section.en-tete .en-tete--title h1 {
	  font-size: 3rem;
	}
	
	section.biographie .titre-bio {
	  font-size: 1.52rem;
	}
	
	section.hero .hero--title h1 {
		font-size: 3rem;
	}
	
	section.en-tete .en-tete--title .surtitre {
	  font-size: 1.2rem;
	}
	
	.fond-wrapper {
		top: calc(var(--padding-container)*-1);
		left: calc((50vw - var(--container-size)/2)*-1);
		position: absolute;
		width: 100vw;
		height: 100%;
		z-index: 0;
	}
	
	section.projets .encart-projets  {
		top: calc(var(--padding-container)*-1);
		left: calc((50vw - var(--container-size)/2)*-1);
		position: absolute;
		width: 100vw;
		height: 100%;
	}
	
	section.projets .featured-project--info {
		height: 280px;
	}
	
	body.page-template-default .contenu-flexible,
	body.error404 .contenu-flexible {
		max-width: 100%;
		margin-left: calc(-.5 * var(--bs-gutter-x));
	}
	
	.contenu--content--image {
	  width: 100%;
	  margin-bottom: 2rem;
	}
	
	.contenu--content--texte {
	  width: 100%;
	  margin-left: 0;
	}
	
	section.contenu-page .image-contenu {
		--bs-aspect-ratio: 60%;
	}
	
	section.biographie .image-bio {
		--bs-aspect-ratio: 56.25%;
	}
	
	.image-contenu::after,
	.image-contenu:not(.default)::after,
	section.biographie .image-bio::after {
		height:0px;
	}
	
	section.contenu-page .categorie-projet,
	section.contenu-page .categorie-evenement {
	  font-size: 1.52rem;
	}
	
	section.facettes-categories .facetwp-facet,
	.submenu {
		grid-template-columns: repeat(2, 1fr);
	}
	
	.projet-wrapper {
		flex-direction: column;
	}
	
	article.carte-projet .projet-image {
		height: calc(var(--container-size)/2);
		width: 100%;
	}
	
	.agenda--header {
	  margin-bottom: 4rem;
	}
	
	.show-more {
	  text-align: center;
	  margin-top: 3rem;
	}
	
	.slick-gallerie-full .image-wrapper .text-overlay {
		font-size: 0.8rem;
	}
	
	footer .footer-top > input {
		width: 100%;	
	}
	
	main.agenda .colonne-carte {
		height: 600px;
	}
	
	.responsive-tabs .nav-tabs {
		display: none;
	}
	
	.responsive-tabs .card .card-header {
		display: block;
		padding: 0.75rem 1.5rem;
	}
	
	section.biography .tab-pane {
		display: block !important;
		opacity: 1!important;
	}
	
	.responsive-tabs .card .collapse:not(.show) {
	  display: none;
	}
	
	.responsive-tabs .card-header {
		background-color: var(--primary);
		color: #1b1b1b;
	}
	
	.responsive-tabs .card-header.collapsed {
		background-color: #444444;
		color: white;
	}
	
	.responsive-tabs .card.tab-pane {
		margin-bottom: 6px;
		font-weight: 700;
	}
	
	.biography__group {
	  padding-right: 0;
	}
	
	.offset-custom {
		margin-left: 0;
	}
	
	.ratio-service {
		--bs-aspect-ratio: 90%;
	}
	
	.realisation {
	  padding-top: 3.5rem;
	  padding-bottom: 3.5rem;
	}
	
	.font-description {
	  font-size: 1.2rem;
	}
	
	section.projets .projet--vignette--texte {
	  left: 0.8rem;
	  right: 0.8rem;
	  bottom: 0.7rem;
	}
	
	.contenu--content--offset {
		display: none;
	}
	
	.contenu--content--title {
	  flex: 0 0 auto;
	  width: 100%;
	  margin-left: 0;
	}
	
}

@media (max-width: 767.98px) {
	:root {
		--container-size: 540px;
		--padding-bottom-agenda: 224px;
		--imge-height: 238px;
	}
	
	.social-media-menu {
		--btn-size: 28px;
		--btn-font-size: 14px;
	}
	
	.socialwall--header .row-social-media {
		--btn-size: 30px;
		--btn-font-size: 14px;
	}
	
	section.facettes-categories .facetwp-facet,
	.submenu {
		grid-template-columns: 1fr;
	}
	.agenda--container .colonne-carte {
		height: 400px;
	}
	
	.agenda--content .titre {
	  font-size: 1.4rem;
	}
	
	.agenda--content .lieu-date {
		font-size: 1.1rem;
	}
	
	.btn-arrow {
	  min-width: 170px;
	  max-width: 220px;
	}
	
	.font-description {
	  font-size: 1.1rem;
	}
	
	section.en-tete .en-tete--title h1 {
	  font-size: 2.4rem;
	}
	
	section.hero .hero--title h1 {
		font-size: 2.4rem;
	}
	
	section.en-tete .en-tete--title .surtitre {
	  display: flex;
	  flex-direction: column;
	}
	
	section.en-tete .categorie-projet:not(:last-child)::after {
	  content: "";
	}
	
	section.contenu-page .categorie-projet, section.contenu-page .categorie-evenement {
	  font-size: 1.216rem;
	}
	
	.agenda--header {
	  margin-bottom: 3rem;
	}
	
	footer .footer-top {
	  margin-bottom: 60px;
	}
	
	.facettes-agenda .fs-wrap,
	.facettes-agenda .fs-wrap,
	input.facetwp-date,
	.facettes-agenda .fs-label-wrap,
	section.facettes-agenda .facetwp-facet,
	.reset-link  {
		width: 100%;
	}
	
	.row-bio {
		row-gap: 3rem;
		padding: 2.2rem 1.5rem;
	}
	
	.biography__group--icon {
	  margin-right: 1.5rem;
	}
	
	.biography__icon-wrapper {
	  width: 40px;
	  height: 40px;
	  font-size: 1.5rem;
	}
	
	.biography-type__title {
	  font-size: 1.5rem;
	  height: 40px;
	}
	
	.biography__entry-name {
	  font-size: 1.1rem;
	}
	
	.biography__month {
	  margin-top: 1.5rem;
	  font-size: 0.9rem;
	}
	
	.biography-type__title.no-month {
		margin-bottom: calc(1.5rem - 10px);
	}
	
	section.subtitle .subtitle {
		max-width: 100%;
	}
	
	section.projets .projet--vignette--texte {
		position: static;
	}
	
	section.projets .sous-titre {
		font-size: 1rem;
	}
	
	section.projets .nav-link {
		transition: transform 0.3s ease-in-out;
	} 
	
	section.projets .nav-link.active {
		transform: none;
	}
	
	section.projets .nav-link:not(.active) h4.texte-blanc {
		color: var(--bs-body-color)!important;
	}
	
	section.projets .nav-link h4 {
		transition: color 0.2s ease-in-out;
		font-size: 1.5rem!important;
	}
	
	section.projets .projet--vignette::after {
	  background-image: none;
	}
	
	section.projets .list-projects {
		margin-top: 0;
		margin-bottom: 30px;
	  }
	
}

@media (max-width: 575.98px) {
	
	.encart-cv,
	.encart-agenda,
	.encart-presse,
	.encart-partenaire,
	.encart-role-projet,
	.encart-role-evenement,
	.encart-services {
		display: none;
	}
		
	:root {
		--container-size: 100vw;
		--padding-container: 1.5rem;
	} 
	
	section.presse .encart-presse,
	body.single-projet section.presse .encart-presse,
	section.role .encart-role-projet {
		width: 100%;
	}
	
	header .logo {
		font-size: 2.05rem;
	}
	
	header.scrolled .logo-reduit span {
	  font-size: 1.28rem;
	}
	
	header .sous-titre-logo {
		font-size: 0.64rem;
	}
	
	section.biographie .titre-bio {
	  font-size: 1.3rem;
	}
	
	.cv--contenu .titre-competence {
	  min-height: 2em;
	}
	
	section.role .role--contenu .titre-role {
		min-height: 2em;
	}
	
	.agenda--content .titre {
	  font-size: 1.12rem;
	}
	
	.agenda--content .lieu-date {
		font-size: 0.88rem;
	}
	
	section.presse .slick-presse h3 {
	  font-size: 1.6rem;
	}
	
	section.presse .slick-presse {
	  margin-bottom: 3rem;
	}
	
	.row-bio {
		row-gap: 2.4rem;
		padding: 1.7rem 1.2rem;
	}
	
	.realisation__header {
		column-gap: 1rem;
	}
	
	.realisation {
	  padding-top: 2.5rem;
	  padding-bottom: 2.5rem;
	  row-gap: 2rem;
	}
	
	.realisation__icon-wrapper {
	  width: 46px;
	  height: 46px;
	  font-size: 1.6rem;
	}
	
	.wrapper-realisations {
	  padding: 0 2.5rem;
	}
	
}