a.button-base,
.wp-block-button a {
	text-transform: uppercase;
	color: #fff;
	letter-spacing: 2px;
	font-size: .9em;
	font-weight: 700;
	padding: 20px 30px;
	background: none;
	margin-top: 15px;
	position: relative;
	transition: all cubic-bezier(.54,.01,.37,1) .4s;
}

a.button-base::before,
.wp-block-button a::before{
	content:'';
	display: block;
	position: absolute;
	left: 0;
	top: 0px;
	width: 115px;
	height: 75px;
	background: url(../img/trait-lien.svg) no-repeat center / contain;
	transition: all cubic-bezier(.54,.01,.37,1) .4s;
}

a.button-base::after,
.wp-block-button a::after{
	content:'\f061';
	display: inline-block;
	font-family: 'Font Awesome 5 Free';
	font-weight: 900;
	color: #ac6621;
	margin-left: 10px;
	transform: rotate(-45deg);
	font-size: 1.1em;
	transition: all cubic-bezier(.54,.01,.37,1) .4s;
}

a.button-base:hover,
.wp-block-button a:hover{
	color: #ac6621;
}

a.button-base:hover::before,
.wp-block-button a:hover::before{
	width: 80px;
}

a.button-base:hover::after,
.wp-block-button a:hover::after{
	transform: rotate(0deg);
}

.button_image a{
	background: #ac6621;
	border-radius: 50px 0 0 50px;
	position: absolute;
	right: -4px;
	padding: 30px 50px;
	top: 70%;
	transition: all cubic-bezier(.54,.01,.37,1) .4s;
}

.button_image a:hover{background: #fff;}

.button_image a::after,
.button_image a::before{
	display: none;
}

p a,
li a{
	color: #ac6621;
}

.wp-block-list li:not(:last-of-type){
	margin-bottom: 10px;
}

.wp-block-list li::before{
	content:'';
	display: inline-block;
	width: 6px;
	height: 6px;
	background: #ac6621;
	margin-right: 6px;
	position: relative;
	top: -2px;
}

.wrap_content{
	max-width: 1500px;
	margin: auto;
	padding: 0 10px;
}

.wrap_small_content{
	max-width: 1200px;
	margin: auto;
	padding: 0 10px;
}

body{
	overflow-x: hidden;
}

/* HEADER *//* HEADER *//* HEADER *//* HEADER */
/* HEADER *//* HEADER *//* HEADER *//* HEADER */
/* HEADER *//* HEADER *//* HEADER *//* HEADER */

.logo-doyfreres{
	display: block;
	width: 315px;
	height: 220px;
	position: absolute;
	left: 120px;
	top: 38px;
	z-index: 100;
	background: url(../img/logo-doyfreres.webp) no-repeat left / contain;
}

.contact_header{
	text-align: right;
	display: inline-block;
	position: absolute;
	right: 120px;
	top: 50px;
	text-transform: uppercase;
	font-size: 1.4em;
	font-weight: 300;
	color: #fff;
	z-index: 100;
	transition: all .3s;
}

.contact_header:hover{
	color: #ac6621;
}

.wrap_button_burger {
	position: fixed;
	left: 0;
	right: 0;
	margin: auto;
	top: 0;
	width: 70px;
	z-index: 400;
	height: 70px;
	background: #ac6621;
	border-radius: 0 0 50px 50px;
	cursor: pointer;
	transition: all cubic-bezier(.54,.01,.37,1) .4s;
}

.wrap_button_burger:hover{
	background: #fff;
}

.wrap_barre {
	position: relative;
	width: 34px;
	height: 24px;
	top: 20px;
	margin: auto;
}

.wrap_barre .barre{
	width: 100%;
	height: 3px;
	background: #fff;
	position: absolute;
	left: 0;
	transition: all cubic-bezier(.54,.01,.37,1) .4s;
}

.wrap_barre .barre1{
	top: 0;
}

.wrap_barre .barre2{
	top: 50%;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
}

.wrap_barre .barre3{
	bottom: 0;
	width: 50%;
}

body.home #content-main,
body.page-template-page-contact #content-main{
	padding-top: 150px;
}

#main_menu{
	display: none;
}

.wrap_button_burger:hover .barre{
	background: #ac6621;
}

.wrap_button_burger:hover .barre3{
	width: 100%;
}

#header-main.isOpen{
	content:'';
	display: block;
	width: 100%;
	position: fixed;
	left: 0;
	right: 0;
	margin: auto;
	top: 0;
	z-index: 990;
	height: 100%;
	background: rgba(0,0,0,0.5);
}

#main_menu {
	display: block;
	width: 96%;
	height: 0%;
	background: #fff;
	position: fixed;
	left: 2%;
	top: 2%;
	border-radius: 30px;
	z-index: 999;
	overflow: hidden;
	transition: all cubic-bezier(.54,.01,.37,1) .4s;
}

#main_menu::before{
	content:'';
	display: block;
	width: 80px;
	height: 100px;
	background: url(../img/logo-rge.webp) no-repeat;
	background-size: contain;
	background-position: left center;
	position: absolute;
	left: 80px;
	bottom: 80px;
	transform: none;
	z-index: 10;
}

#main_menu::after{
	content:'';
	display: block;
	width: 80px;
	height: 80px;
	background: url(../img/logo-velux.jpg.webp) no-repeat;
	background-size: contain;
	background-position: left center;
	position: absolute;
	left: 220px;
	bottom: 80px;
	transform: none;
}

#header-main.isOpen #main_menu{
	height: 96%;
}

.isOpen .wrap_button_burger {
	top: 98%;
}

#main_menu > div{
	display: flex;
	align-items: center;
	height: auto;
}

#main_menu > div > ul{
	display: flex;
	align-items: center;
	justify-content: space-between;
	flex-wrap: wrap;
	width: 50%;
	padding: 70px 80px 10px 80px;
}

#main_menu > div > ul::before{
	content:'';
	display: block;
	width: 100%;
	height: 100%;
	position: absolute;
	left: 0;
	top: 0;
	background-color: #dbdbdb;
	opacity: 0.9;
	background-image:  repeating-radial-gradient( circle at 0 0, transparent 0, #fff 5px ), repeating-linear-gradient( #F2F2F255, #F2F2F2 );
}

#main_menu > div > ul > li {
	width: 100%;
}

#main_menu > div > ul > li::before{
	content:'';
	display: block;
	width: 50%;
	height: 100%;
	position: absolute;
	right: 0;
	top: 0;
	background: url(../img/img-bottom.webp) no-repeat center / cover;
}

#main_menu > div > ul > li:nth-of-type(1).active_menu::before{
	background: url(https://doyfreres.mon-projet-internet.com/wp-content/uploads/toiture-moderne-doyfreres.jpg) no-repeat center / cover;
	z-index: 100;
}

#main_menu > div > ul > li:nth-of-type(2).active_menu::before{
	background: url(https://doyfreres.mon-projet-internet.com/wp-content/uploads/entreprise-charpente-couverture-menuiserie-nantua.jpg) no-repeat center / cover;
	z-index: 100;
}

#main_menu > div > ul > li:nth-of-type(3).active_menu::before{
	background: url(https://doyfreres.mon-projet-internet.com/wp-content/uploads/couverture-doy-freres.jpg) no-repeat center / cover;
	z-index: 100;
}

#main_menu > div > ul > li:nth-of-type(4).active_menu::before{
	background: url(https://doyfreres.mon-projet-internet.com/wp-content/uploads/toiture-doyfreres.jpg) no-repeat center / cover;
	z-index: 100;
}

#main_menu > div > ul > li:nth-of-type(5).active_menu::before{
	background: url(https://doyfreres.mon-projet-internet.com/wp-content/uploads/recrutement-doy-freres.jpg) no-repeat center / cover;
	z-index: 100;
}

#main_menu > div > ul > li > a {
	line-height: 1.3em;
	position: relative;
	color: #1a3240;
	text-transform: uppercase;
	font-size: 3em;
	letter-spacing: 1px;
	font-weight: 700;
	padding: 5px 0;
	display: inline-block;
	transition: all cubic-bezier(.54,.01,.37,1) .4s;
}

#main_menu > div > ul > li > a::before{
	content:'';
	display: block;
	font-size: .4em;
	letter-spacing: 3px;
	font-weight: 100;
	color: #ac6621;
	line-height: 1em;
}

#main_menu > div > ul > li:nth-of-type(1) > a::before{
	content:'01';
}

#main_menu > div > ul > li:nth-of-type(2) > a::before{
	content:'02';
}

#main_menu > div > ul > li:nth-of-type(3) > a::before{
	content:'03';
}

#main_menu > div > ul > li:nth-of-type(4) > a::before{
	content:'04';
}

#main_menu > div > ul > li:nth-of-type(5) > a::before{
	content:'05';
}

#main_menu > div > ul > li:nth-of-type(6) > a::before{
	content:'06';
}

#main_menu > div > ul > li > a:hover{
	letter-spacing: 3px;
	color: #ac6621;
}

.close_menu{
	width: 40px;
	height: 40px;
	border-radius: 50%;
	background: #fff;
	position: absolute;
	right: 80px;
	top: 80px;
	color: #000;
	z-index: 9999;
	display: flex;
	justify-content: center;
	align-items: center;
	text-align: center;
	cursor: pointer;
	transition: all .3s;
}

.close_menu::before{
	content:'\f00d';
	display: block;
	font-size: 1em;
	font-family: 'Font Awesome 5 Free';
	font-weight: 900;
}

.close_menu:hover{
	background: #ac6621;
	color: #fff;
}

.go_fb {
	display: block;
	color: #fff;
	position: absolute;
	right: 80px;
	bottom: 80px;
	width: 40px;
	z-index: 999;
	height: 40px;
	background: url(../img/ico-fb.svg) no-repeat center / contain;
}

.go_fb:hover{
	background: url(../img/ico-fb-orange.svg) no-repeat center / contain;
}

/* HOME *//* HOME *//* HOME *//* HOME */
/* HOME *//* HOME *//* HOME *//* HOME */
/* HOME *//* HOME *//* HOME *//* HOME */

h1{
	text-transform: uppercase;
	font-size: 4.4em;
	font-weight: 100;
	line-height: 1.3em;
}

h2{
	text-transform: uppercase;
	font-size: 3.8em;
	font-weight: 100;
	line-height: 1.3em;
	margin-bottom: 30px;
}

h1 strong{
	font-weight: 700;
	display: block;
}

h2 strong{
	font-weight: 700;
	display: block;
	font-size: .8em;
}

.wrap_top_home{
	position: relative;
	margin-bottom: 170px;
}

.wrap_top_home h1 {
	position: absolute;
	width: 90%;
	left: 3%;
	top: 200px;
	z-index: 10;
}

.wrap_top_home h1 strong{
	padding-left: 12%;
}

.wrap_top_home > .wp-block-column > .wp-block-group{
	padding: 460px 0 230px 2vw;
	text-align: right;
	position: relative;
}

.wrap_top_home > .wp-block-column > .wp-block-group p{
	font-size: 1.1em;
}

.wrap_top_home > .wp-block-column:last-of-type {
	position: relative;
}

.wrap_top_home > .wp-block-column:last-of-type figure {
	position: absolute;
	right: 0;
	top: 0;
	width: 100%;
	height: 100%;
}

.wrap_top_home > .wp-block-column:last-of-type picture{
	display: block;
	width: 100%;
	height: 100%;
}

.wrap_top_home > .wp-block-column:last-of-type img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.section2_home{
	margin-bottom: 200px;
	padding-left: 2vw;
	gap: 100px;
}

.section2_home > .wp-block-column{
	position: relative;
}

.section2_home > .wp-block-column:last-of-type > .wp-block-group{
	padding-right: 40%;
	padding-bottom: 130px;
}

.section2_home > .wp-block-column:last-of-type figure {
	position: absolute;
	right: 0px;
	bottom: -150px;
	width: 60%;
	height: 100%;
	z-index: -1;
	opacity: .5;
	max-width: 776px;
	max-height: 606px;
}

.section2_home > .wp-block-column:last-of-type figure img {
	width: 100%;
	height: 100%;
	object-fit: contain;
	object-position: bottom;
}

.section2_home > .wp-block-column:first-of-type figure{
	width: 100%;
	height: 100%;
}

.section2_home > .wp-block-column:first-of-type figure img{
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.wrap_triple_col{
	position: relative;
	padding-left: 900px;
}

.wrap_triple_col > .wp-block-column{
	position: relative;
}

.wrap_triple_col > .wp-block-column:first-of-type{
	width: 400px;
	flex-basis: 400px;
	height: 500px !important;
	position: absolute;
	left: 0;
	top: 0;
}

.wrap_triple_col > .wp-block-column:nth-of-type(2){
	width: 530px;
	flex-basis: 530px;
	height: 600px !important;
	position: absolute;
	left: 500px;
	top: -200px;
	z-index: 10;
}

.wrap_triple_col > .wp-block-column:first-of-type figure{
	width: 100%;
	height: 100%;
}

.wrap_triple_col > .wp-block-column:nth-of-type(2) figure{
	width: 100%;
	height: 100%;
}

.wrap_triple_col > .wp-block-column:first-of-type figure img{
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.wrap_triple_col > .wp-block-column:nth-of-type(2) figure img{
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.wrap_triple_col > .wp-block-column:nth-of-type(3){
	padding: 80px 60px 70px 160px;
	background: #1a3240;
	flex-basis: 700px !important;
	text-align: right;
}

.surtitre{
	font-weight: 300;
	font-size: 2.8em;
	line-height: 1em;
}

.surtitre strong{
	display: block;
	font-weight: 700;
	font-size: .8em;
}

.wrap_triple_col > .wp-block-column:nth-of-type(3) .wp-block-button a {
	margin: 40px 0 0 -100px;
}

.wrap_projets_home{
	margin: 55px auto 90px auto;
}

.wrap_projets_home .wrap_intro_home{
	max-width: 75%;
	margin: auto;
	text-align: center;
}

p.titre_intro_projet{
	text-transform: uppercase;
	font-weight: 300;
	color: #fff;
	font-size: 2em;
	margin-bottom: 40px;
}

.wrap_intro_home > div p{
	font-weight: 300;
	line-height: 1.5em;
}

.wrap_intro_home a.button-base{
	margin-top: 20px;
	display: inline-block;
}

.wrap_projets_home > ul{
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
}

.wrap_projets_home > ul li{
	width: 27%;
}

.wrap_projets_home > ul li:nth-of-type(2){
	margin-top: 100px;
}

.wrap_projets_home > ul li a{
	display: block;
	width: 100%;
	position: relative;
}

.wrap_projets_home > ul li a::before{
	content:'';
	display: block;
	width: 100%;
	height: 0%;
	background: #ac6621;
	opacity: 0;
	position: absolute;
	left: 0;
	right: 0;
	top: 0;
	z-index: 9;
	transition: all .3s;
}

.wrap_projets_home > ul li a::after{
	content:'\f061';
	display: inline-block;
	font-family: 'Font Awesome 5 Free';
	font-weight: 900;
	position: absolute;
	left: -30px;
	right: 0;
	margin: auto;
	top: 50%;
	pointer-events: none;
	text-align: center;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	font-size: 3em;
	color: #fff;
	opacity: 0;
	z-index: 10;
	transition: all .3s;
}

.wrap_projets_home > ul li a:hover::before{
	height: 100%;
	opacity: .75;
}

.wrap_projets_home > ul li a:hover::after{
	left: 0;
	opacity: 1;
}

.wrap_projets_home > ul li a img{
	display: block;
	width: 100%;
	height: 700px;
	object-fit: cover;
}

.titre_actus {
	text-transform: uppercase;
	font-weight: 700;
	font-size: 1em;
	line-height: 1.3em;
	padding-top: 25px;
	display: block;
	text-align: right;
	color: #fff;
	position: relative;
	z-index: 11;
	background: #001b2a;
}

.footer_go_contact{
	display: block;
	width: 100%;
	height: 600px;
	background: url(../img/img-bottom.webp) no-repeat center / cover;
	position: relative;
}

.footer_go_contact::before{
	content:'';
	display: block;
	width: 100%;
	height: 100%;
	background: #001b2a;
	z-index: 10;
	opacity: .5;
	position: absolute;
	left: 0;
	top: 0;
	transition: all .3s;
}

.footer_go_contact > div {
	max-width: 830px;
	padding: 100px;
	position: absolute;
	left: 200px;
	top: 100px;
	z-index: 20;
}

.titre_go_contact{
	text-transform: uppercase;
	font-weight: 700;
	color: #fff;
	font-size: 2.5em;
	line-height: 1.3em;
	display: block;
}

.button_go_contact {
	text-transform: uppercase;
	color: #fff;
	letter-spacing: 2px;
	font-size: 1.4em;
	font-weight: 700;
	padding: 15px;
	background: none;
	display: inline-block;
	margin: 0;
	display: block;
	text-align: right;
	width: 100%;
	margin-top: 20px;
}

.button_go_contact::after{
	content:'\f061';
	display: inline-block;
	font-family: 'Font Awesome 5 Free';
	font-weight: 900;
	color: #ac6621;
	margin-left: 10px;
	transform: rotate(-45deg);
	font-size: 1.1em;
	transition: all .3s;
}

.footer_go_contact:hover::before{
	background: #ac6621;
	opacity: .65;
}

.footer_go_contact:hover .button_go_contact::after{
	transform: rotate(0deg);
	color: #fff;
}

/* FOOTER *//* FOOTER *//* FOOTER *//* FOOTER */
/* FOOTER *//* FOOTER *//* FOOTER *//* FOOTER */
/* FOOTER *//* FOOTER *//* FOOTER *//* FOOTER */

#footer-main{
	position: relative;
	padding: 70px 0;
	background: #001b2a;
}

#footer-main > .wrap_content{
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
}

.copy-nova {
	display: block;
	width: 32px;
	height: 40px;
	background: url(../img/made-by-blanc.svg) no-repeat;
	background-size: contain;
	background-position: right center;
	position: absolute;
	right: 60px;
	top: 60px;
}

.logo-rge {
	position: absolute;
	left: 30px;
	top: 50px;
	width: 42px;
	height: 55px;
	background: url(../img/logo-rge.webp) no-repeat;
	background-size: contain;
	background-position: left center;
}

.go_fb_footer{
	right: unset;
	left: 90px;
	bottom: unset;
	top: 66px;
	width: 20px;
	height: 32px;
}

.right_footer ul{
	display: flex;
	align-items: center;
	justify-content: space-between;
}

.right_footer ul li:not(:first-of-type){
	margin-left: 70px;
}

.right_footer ul li a{
	text-transform: uppercase;
	color: #fff;
	font-weight: 300;
	font-size: 1.1em;
	line-height: 1.3em;
}

.left_footer p{
	font-size: 1.1em;
	line-height: 1.3em;
	font-weight: 700;
	color: #fff;
}

.left_footer p a{
	color: #fff;
}

/* Border anim */

.pos-static{position: static !important;}

#borderanim-1 {
	position: absolute;
	right: 80px;
	top: 110px;
	z-index: 10;
	width: 880px;
	height: auto;
	pointer-events: none;
}

#borderanim-2 {
	position: absolute;
	left: 80px;
	top: -290px;
	width: 800px;
	height: auto;
	z-index: 4;
	pointer-events: none;
}

#borderanim-footer {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: auto;
	z-index: 10;
	pointer-events: none;
}

/* -------- */

/** FIL ARIANE **/
.breadcrumb ul{display:flex; justify-content: center; font-size:12px; flex-wrap: wrap;}
.breadcrumb li{list-style:none; font-size:12px; text-transform: uppercase; font-weight: 700;letter-spacing: 3px;}

/* ENTREPRISE *//* ENTREPRISE *//* ENTREPRISE *//* ENTREPRISE */
/* ENTREPRISE *//* ENTREPRISE *//* ENTREPRISE *//* ENTREPRISE */
/* ENTREPRISE *//* ENTREPRISE *//* ENTREPRISE *//* ENTREPRISE */

.wrap_top_page{
	width: 100%;
	height: 300px;
	position: relative;
	z-index: 10;
	border: 0px solid #001b2a;
	margin-bottom: 80px;
}

body:not(.home) .logo-doyfreres {
	width: 250px;
	height: 165px;
}

.wrap_top_page::before {
	content: '';
	display: block;
	width: 100%;
	height: 100%;
	position: absolute;
	left: 0;
	top: 50%;
	background: linear-gradient(180deg, rgba(0, 27, 42, 0) 0%, #001B2A 100%);
	opacity: 0.6;
	z-index: 210;
	transform: translateY(-50%);
}

.border_top_page{
	display: none !important;
	display: block;
	width: 90%;
	height: 100%;
	position: absolute;
	left: 0;
	right: 0;
	margin: auto;
	top: 50%;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	background: url(../img/lines-pages.png) no-repeat center / cover;
	z-index: 210;
}

.wrap_top_page picture{
	display: block;
	width: 100%;
	height: 100%;
}

.wrap_top_page img{
	position: absolute;
	width: 100%;
	height: 100%;
	object-fit: cover;
	left: 0;
	right: 0;
	margin: auto;
	top: 50%;
	transform: translateY(-50%);
	z-index: -1;
}

.wrap_top_page .content{
	position: absolute;
	left: 0;
	right: 0;
	margin: auto;
	top: 50%;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	color: #fff;
	font-size: 5em;
	line-height: 1em;
	letter-spacing: .04em;
	text-transform: uppercase;
	z-index: 211;
	font-weight: 700;
	text-align: center;
}

.arrow_white{
	position: absolute;
	left: 0;
	right: 0;
	margin: auto;
	bottom: 30px;
	width: 35px;
	height: 35px;
	background: url(../img/arrow-white.svg) no-repeat center / contain;
	z-index: 220;
}

.intro_page {
	margin: 0 auto 150px auto;
}

.intro_page > .wp-block-group__inner-container > .wp-block-group{
	max-width: 980px;
	margin: auto;
}

.page h1 {
	text-transform: uppercase;
	font-size: 3.8em;
	font-weight: 100;
	line-height: 1.3em;
	margin-bottom: 30px;
}

.page .section2_home{
	margin-bottom: 300px;
}

.page-template-default.page:not(.home) .section2_home > .wp-block-column:last-of-type figure {
	right: -20%;
	opacity: 1;
}

.page .section2_home > .wp-block-column:last-of-type figure picture{
	display: block;
	width: 100%;
	height: 100%;
}

.col_double_img{
	margin: 80px auto 40px auto;
	gap: 60px;
}

.col_double_img h2 {
	font-size: 2.8rem;
	margin-bottom: 50px;
	text-align: right;
	margin-top: 20px;
	background: #001b2a;
	padding: 20px 0;
}

.col_double_img picture{
	display: block;
	width: 100%;
	height: 100%;
}

.col_double_img picture img{
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

.col_double_img > .wp-block-column:last-of-type figure {
	width: 100%;
	height: 50%;
	margin-bottom: 60px;
}

.col_double_img > .wp-block-column:last-of-type figure picture {
	display: block;
	width: 100%;
	height: 100%;
}

.col_double_img > .wp-block-column:last-of-type figure picture img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.bloc_full{
	background: #01131D;
}

.bloc_full .wp-block-columns{
	gap: 0;
	display: block;
	position: relative;
	padding: 100px 40% 100px 10%;
}

.titre_rge {
	position: relative;
	padding-left: 130px;
}

.titre_rge::before {
	content: '';
	display: block;
	width: 110px;
	height: 135px;
	background: url(../img/logo-rge.webp) no-repeat;
	background-size: contain;
	background-position: left center;
	position: absolute;
	left: 0;
	top: 9px;
	transform: none;
}

.bloc_full .wp-block-columns > .wp-block-column:last-of-type{
	position: absolute;
	right: 0;
	top: 0;
	width: 30%;
	height: 100%;
}

.bloc_full .wp-block-columns > .wp-block-column:last-of-type figure {
	width: 100%;
	height: 100%;
}

.bloc_full .wp-block-columns > .wp-block-column:last-of-type figure picture {
	display: block;
	width: 100%;
	height: 100%;
}

.bloc_full .wp-block-columns > .wp-block-column:last-of-type figure picture img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.bloc_plus_img {
	position: absolute;
	right: 0;
	top: 0;
	background: rgba(172, 102, 33, 0.8);
	height: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	padding: 10px 20px;
	width: 100%;
}

.bloc_plus_img p::before{
	content:'';
	display: block;
	width: 40px;
	height: 40px;
	background: url(../img/icone-check.png) no-repeat center / contain;
	margin: 0 auto 15px auto;
}

.bloc_plus_img p{
	margin: 50px auto;
	font-size: 1.1em;
	line-height: 1.3em;
	font-weight: 500;
	color: #fff;
	max-width: 300px;
}

blockquote{
	position: relative;
	padding: 30px;
	border-top: 1px solid #AC6621;
	border-bottom: 1px solid #AC6621;
}

blockquote::before{
	content:'';
	display: block;
	width: 60px;
	height: 40px;
	background: #001B2A url(../img/quote-marron.png) no-repeat;
	background-position: center center;
	background-size: 30px;
	position: absolute;
	left: 0;
	top: -20px;
}

blockquote p{
	color: #fff;
	font-style: italic;
	font-weight: 300;
	font-size: 1.1em;
	line-height: 1.8em;
}

blockquote.citation_full{
	border-top: 2px solid #AC6621;
	padding: 30px !important;
	margin: 100px auto;
	border-bottom: 2px solid #AC6621;
}

blockquote.citation_full::before{
	width: 120px;
	height: 70px;
	background-size: 60px;
	position: absolute;
	left: 0;
	right: 0;
	margin: auto;
	top: -35px;
}

blockquote.citation_full p{
	font-size: 2em;
	line-height: 1.8em;
	text-align: center;
}

/* RECRUTEMENT */

.intro_page_double .wp-block-columns {
	gap: 80px;
}

.intro_page_double .wp-block-columns > .wp-block-column:first-of-type{
	margin-top: -10px;
}

.intro_page_double .wp-block-columns > .wp-block-column:first-of-type p{
	font-size: 1.8em;
	line-height: 1.8em;
	font-weight: 400;
	font-style: italic;
}

.page .intro_page_double h1{
	font-size: 3em;
	margin-bottom: 50px;
}

.wrap_offres {
	margin-bottom: 40px;
	background: #1a3240;
	padding: 40px;
	margin: 80px auto 60px auto;
	position: relative;
	text-align: center
}

.wrap_offres::after {
	content: '';
	display: block;
	position: static;
	left: 40px;
	bottom: -42px;
	width: 15px;
	height: 54px;
	background: url(../img/arrow-white.svg) no-repeat center / contain;
	margin-top: 30px;
	margin: auto;
	margin-top: 30px;
}

.wrap_offres_item{
	margin-bottom: 60px;
}

.item_offres{
	padding: 30px 10px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	border-top: 1px solid rgba(255,255,255,0.3);
}

.left_offres{
	padding-right: 10%;
}

.right_offres {
	min-width: 320px;
	text-align: center;
}

.item_offres h3{
	font-size: 1.3em;
	font-weight: 500;
	line-height: 1.5em;
	margin-bottom: 10px;
}

.content_offres{
	margin-bottom: 30px;
}

.content_offres p{
	color: #888;
	font-size: 1em;
	font-weight: 400;
}

.info_offres{
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	justify-content: flex-start;
}

.info_offres > div {
	display: inline-flex;
	color: #AC6621;
	font-size: 1em;
	line-height: 1.3em;
	font-weight: 700;
	align-items: center;
}

.info_offres > div::before{
	content:'';
	display: inline-block;
	margin-right: 10px;
	width: 25px;
	height: 25px;
	background-repeat: no-repeat;
	background-size: contain;
	background-position: center center;
}

.info_offres > div.info_offre::before{
	background-image: url(../img/icon-info.svg);
}

.info_offres > div.heure_offre::before{
	background-image: url(../img/icon-time.svg);
}

.info_offres > div.salaire_offre::before{
	background-image: url(../img/icon-euro.svg);
}

.info_offres > div:not(:last-of-type){
	margin-right: 20px;
}

body#page-postuler-a-loffre.page-template-page-contact .wrap_top_home > .wp-block-column:last-of-type {
	margin-top: 180px;
}

/* CONTACT *//* CONTACT *//* CONTACT *//* CONTACT */
/* CONTACT *//* CONTACT *//* CONTACT *//* CONTACT */
/* CONTACT *//* CONTACT *//* CONTACT *//* CONTACT */

.page-template-page-contact .wrap_top_home > .wp-block-column:first-of-type {
	flex-basis: 50% !important;
}

.page-template-page-contact .wrap_top_home > .wp-block-column:last-of-type {
	margin-top: 380px;
	flex-basis: 40% !important;
}

.page-template-page-contact .wrap_top_home > .wp-block-column > .wp-block-group > .wp-block-group__inner-container{
	background: #001b2a;
	position: relative;
	z-index: 10;
	padding: 20px 0;
}

.map iframe{
	width: 100%;
}

.wrap_map{
	position: relative;
}

.info_contact {
	position: absolute;
	left: 4%;
	top: -280px;
	padding: 80px 160px 70px 60px;
	background: #1a3240;
	max-width: 700px;
}

.info_contact .surtitre{
	margin-bottom: 25px;
	padding-bottom: 15px;
	border-bottom: 1px solid #fff;
}

.info_contact span{
	display: block;
	margin-bottom: 20px;
}

.info_contact span:last-of-type{
	margin: 0;
}

.info_contact span i{
	margin-right: 6px;
	display: inline-block;
	width: 16px;
	text-align: center;
}

.doy{
	text-transform: uppercase;
	font-size: 1.1em;
	line-height: 1.3em;
	margin-bottom: 10px;
	font-weight: 700;
}

.info_contact span a{
	color: #ac6621;
	font-weight: 700;
	transition: all .3s;
	border-bottom: 1px solid transparent;
}

.info_contact span a:hover{
	color: #fff;
	border-bottom: 1px solid #fff;
}

/* formulaire */
.wpcf7-form {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

.wpcf7 {
	max-width: 100%;
	margin: 40px auto;
	width: 90%;
	background: #1a3240;
	padding: 50px;
	position: relative;
	z-index: 10;
}
.wpcf7 label {
	width: 48%;
	margin: 2% 1%;
	font-size: .9em;
	line-height: 1.8em;
	letter-spacing: 2px;
	text-transform: uppercase;
	font-weight: 400;
	display: block;
	padding-bottom: 5px;
	border-bottom: 1px solid #fff;
}
.wpcf7 input {
	width: 100%;
	padding: 8px 15px;
	background: #001b2a;
	border: none;
	margin-top: 10px;
	color: #fff;
	font-family: 'Lato', sans-serif;
	font-size: 1em;
	line-height: 1.3em;
}
.wpcf7 label.textarea-label{
	width: 98%;
	margin: 2% auto;
}
.wpcf7 textarea {
	width: 100%;
	height: 120px;
	resize: none;
	background: #001b2a;
	border: none;
	color: #fff;
	padding: 8px 15px;
	margin-top: 10px;
	font-family: 'Lato', sans-serif;
	font-size: 1em;
	line-height: 1.3em;
}
.wpcf7 input::placeholder,
.wpcf7 textarea::placeholder{
	color: #888;
}
.wpcf7 .wpcf7-acceptance input{width:20px;}
.wpcf7 input.wpcf7-submit {
	background: #ac6621;
	margin: 20px 0;
	transition: all 0.3s ease;
	width: 98%;
	margin: auto;
	color: #fff;
	text-transform: uppercase;
	letter-spacing: 2px;
	font-size: 1.1em;
	cursor: pointer;
	text-align: center;
}
.wpcf7 input.wpcf7-submit:hover {color: #fff; background: #001b2a;}
.wpcf7-not-valid-tip {
	color: #dc3232;
	font-size: .8em;
	font-weight: normal;
	display: block;
}
.wpcf7 form.invalid .wpcf7-response-output, .wpcf7 form.unaccepted .wpcf7-response-output, .wpcf7 form.payment-required .wpcf7-response-output {
	padding: 20px;
	text-align: center;
}
.wpcf7 form.sent .wpcf7-response-output {
	border-color: #00232C;
	width: 100%;
	padding: 40px 20px;
	background: #00232C;
	color: #fff;
	text-align: center;
	border-bottom: 10px solid #B02529;
}

input[type="checkbox"] {
	appearance: checkbox !important;
	width: 14px !important;
	height: 14px !important;
	padding: 0 !important;
	margin: 0 !important;
	display: inline !important;
}

input[type="checkbox"]:checked {
	background: #009FE3 !important;
}

.wpcf7-acceptance{
	display: block;
	width: 100%;
}

.wpcf7-acceptance > span {
	margin: 0;
	display: block;
	width: 100%;
}

span.wpcf7-form-control-wrap{
	display: block;
	width: 100%;
}

.wpcf7-acceptance label {
	width: 98%;
	margin: 0px auto 20px auto;
	border: none;
}

.wpcf7-acceptance label span{
	text-transform: none;
	letter-spacing: 0;
}

/* METIERS *//* METIERS *//* METIERS *//* METIERS */
/* METIERS *//* METIERS *//* METIERS *//* METIERS */
/* METIERS *//* METIERS *//* METIERS *//* METIERS */

.page_metiers{
	padding-top: 180px;
	position: relative;
	min-height: 80vh;
}

.page_metiers h1{
	text-align: center;
	font-weight: 700;
	position: relative;
	z-index: 10;
}

.wrap_liste_metiers {
	position: relative;
	z-index: 12;
}

.wrap_liste_metiers ul{
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	flex-wrap: wrap;
}

.child-thumb{
	width: 31%;
	margin: 2% 0;
}

.child-thumb img{
	display: block;
	width: 100%;
	height: 240px;
	object-fit: cover;
}

.child-thumb .button_metiers{
	display: block;
	width: 100%;
	padding: 12px;
	text-align: center;
	text-transform: uppercase;
	font-weight: 700;
	color: #fff;
	background: #ac6621;
	z-index: 12;
}

.child-thumb > a{
	position: relative;
	display: block;
	width: 100%;
	height: 100%;
}

.img_page_metiers{
	position: absolute;
	right: 0;
	bottom: 0;
	opacity: .4;
}

/*
.child-thumb > a::before{
	content:'';
	display: block;
	width: 60%;
	height: 100%;
	background: #001b2a;
	opacity: 0;
	position: absolute;
	left: 0;
	top: 0;
	z-index: 1;
	transition: all cubic-bezier(.54,.01,.37,1) .4s;
}
*/

/*
.child-thumb > a:hover::before{
	opacity: .7;
	width: 100%;
}
*/

.child-thumb > a::after{
	content:'';
	display: block;
	width: 100%;
	height: 60%;
	background: url(../img/arrow-white.svg) no-repeat center / contain;
	position: absolute;
	left: -20px;
	right: 0;
	margin: auto;
	opacity: 0;
	top: 50%;
	transform: translateY(-50%) rotate(-90deg);
	-webkit-transform: translateY(-50%) rotate(-90deg);
	z-index: 10;
	transition: all cubic-bezier(.54,.01,.37,1) .4s;
}

.child-thumb > a:hover::after{
	left: 0;
	opacity: 1;
}

/* SOUS METIERS *//* SOUS METIERS *//* SOUS METIERS *//* SOUS METIERS */
/* SOUS METIERS *//* SOUS METIERS *//* SOUS METIERS *//* SOUS METIERS */
/* SOUS METIERS *//* SOUS METIERS *//* SOUS METIERS *//* SOUS METIERS */

.parent-pageid-146 .intro_page_double .wp-block-columns .wp-block-button a::after{
	transform: rotate(90deg);
	position: relative;
	bottom: 0px;
}

.parent-pageid-146 .intro_page_double .wp-block-columns .wp-block-button a:hover::after{
	transform: rotate(90deg);
	bottom: -20px;
}

.media_simple h2{
	font-size: 3.5em;
}

.liste_check{
	margin-top: 30px;
}

.liste_check li{
	margin: 20px 0;
	font-size: 1em;
	color: #fff;
	font-weight: 700;
}

.liste_check li::before{
	content: '';
	display: inline-block;
	width: 20px;
	height: 20px;
	background: url(../img/icone-check.png) no-repeat center / contain;
	margin-right: 10px;
	position: relative;
	bottom: -5px;
}

.parent-pageid-146 .footer_go_contact{
	margin-top: 100px;
}

.media_simple .wp-block-media-text__content {
	padding-top: 60px;
	padding-bottom: 30px;
}

#realisations picture{
	display: block;
	width: 100%;
	height: 100%;
}

.wp-block-gallery figure a{
	position: relative;
}

.wp-block-gallery figure a::before{
	content:'';
	display: block;
	width: 100%;
	height: 50%;
	position: absolute;
	left: 0;
	bottom: 0;
	background: #ac6621;
	opacity: 0;
	transition: all cubic-bezier(.54,.01,.37,1) .4s;
}

.wp-block-gallery figure a:hover::before{
	opacity: .75;
	height: 100%;
}

.wp-block-gallery figure a::after{
	content:'';
	display: block;
	width: 100%;
	height: 0px;
	background: url(../img/icone-fancybox.svg) no-repeat center / contain;
	position: absolute;
	left: 0;
	right: 0;
	margin: auto;
	top: 50%;
	opacity: 0;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	transition: all cubic-bezier(.54,.01,.37,1) .4s;
}

.wp-block-gallery figure a:hover::after{
	opacity: 1;
	height: 60px;
}

.mb0{
	margin-bottom: 0;
}

.mb10{
	margin-bottom: 10px;
}

.mb30{
	margin-bottom: 30px;
}

.liste_check_horizontal{
	margin-top: 10px;
}

.liste_check_horizontal ul{
	display: flex;
	align-items: center;
	justify-content: flex-start;
	flex-wrap: wrap;
}

.liste_check_horizontal ul li{
	display: inline-block;
	margin: 10px 20px 10px 0;
}

.liste_check_horizontal ul li:last-of-type{
	margin-right: 0;
}

/* avant apres */

.avant_apres{
	margin: 100px auto;
}

.avant_apres img{
	width: 100%;
	height: auto;
}

/* ACCORDION */

.accordion {
  width: 100%;
  margin: 50px auto 0;
}

.accordion .accordion-item:first-child {
	border: none;
}

.accordion .accordion-item {
	position: relative;
	border-top: 1px solid #ac6621;
}

.accordion .link {
  position: relative;
  display: block;
  padding: 15px 40px 15px 20px;
  color: #fff;
  font-weight: bold;
  text-decoration: none;
  font-size: 18px;
  cursor: pointer;
  transition: all .3s;
  margin: 0 !important;
}

.accordion .active .link {
  background: #ac6621;
}

.accordion .link {
  background: #001b2a;
  color: #fff;
}

body.home .accordion .link{
	background: transparent;
}

body.home .active .link {
  background: #ac6621;
}

.accordion .link:hover,
body.home .accordion .link:hover {
  background: #ac6621;
}

.accordion .link::after{
	content:'\f078';
	display: block;
	font-family: 'Font Awesome 5 Free';
	font-weight: 900;
	color: #ac6621;
	position: absolute;
	right: 25px;
	top: 15px;
	transition: all .3s;
}

.accordion .link:hover::after{
	color: #fff;
}

.accordion .active .link::after{
	content:'\f077';
	color: #fff;
}

/* submenu */

.accordion .item-tog {
	display: none;
	background: #1a3240;
	padding: 25px;
}

.accordion .item-tog.onactive{
	display: block;
}

.accordion .item-tog .accordion-item h3 {
	display: block;
	padding: 10px 15px;
	text-decoration: none;
	color: #ac6621;
	cursor: pointer;
}

.accordion .item-tog .accordion-item:first-child {
	border: none;
}

.accordion .item-tog .accordion-item {
	border-top: 1px solid #ac6621;
}

.accordion .item-tog .accordion-item h3:hover {
  background: #ac6621;
  color: #fff;
  padding: 10px 15px 10px 20px;
  transition: padding 0.2s ease-in;
}

.accordion .item-tog .accordion-item p{
	font-size: 1em;
}

.accordion-image .image:not(:first-child){display:none;}
.accordion-image .image{height:90%; width:100%; overflow:hidden;}
.accordion-image .image div{height:100%;}
.accordion-image .image img{object-fit: cover; height:100%; width:100%; max-width:inherit;}

/* --- */

#men_ext.col_double_img > .wp-block-column:last-of-type figure {
	width: 100%;
	height: 440px;
	margin-bottom: 60px;
}

#men_ext.col_double_img {
	align-items: flex-start !important;
}

.col_double_img{
	position: relative;
}

.col_double_img::before {
	content: '';
	display: block;
	width: 100%;
	height: 600px;
	background: url(../img/trait-blanc.svg) no-repeat left / contain;
	position: absolute;
	left: 120px;
	top: -220px;
	z-index: -1;
}

.right_footer{
	text-align: right;
}

.go_mentions {
	color: #888;
	font-size: .9em;
	display: inline-block;
	margin: 10px 0 0 auto;
	position: absolute;
	right: 0;
	left: 0;
	text-align: center;
	bottom: 15px;
}

.go_mentions:hover,
footer a:hover{
	color: #ac6621 !important;
}

.page-template-default.page:not(.home) .col_double_img {
	margin-top: -130px;
}

.button_recrutement {
	display: inline-block;
	padding: 12px 25px;
	background: #ac6621;
	color: #fff;
	position: fixed;
	right: 0;
	top: 10vh;
	transform: rotate(-90deg);
	z-index: 100;
	transform-origin: right bottom;
	text-transform: uppercase;
	font-weight: 700;
	letter-spacing: 1px;
	transition: all .3s;
}

.button_recrutement:hover{
	background: #1a3240;
}

.page-id-117 #btn_recrut{
	display: none;
}

.flex_footer{
	display: flex;
	align-items: center;
	justify-content: space-between;
}

.error404 .footer_go_contact{
	height: 100vh;
}

.error404 .footer_go_contact > div {
	top: 50%;
	transform: translateY(-50%);
}

/* PROJETS *//* PROJETS *//* PROJETS *//* PROJETS */
/* PROJETS *//* PROJETS *//* PROJETS *//* PROJETS */
/* PROJETS *//* PROJETS *//* PROJETS *//* PROJETS */
.single-projet h1{font-weight: 700; font-size: 1.5em; line-height: 1em; letter-spacing: .04em;}

.media_projet{
	margin-bottom: 80px;
}

.media_projet .wp-block-media-text__content{
	padding-top: 40px;
	padding-bottom: 40px;
}

body.single-projet #realisations{
	margin-bottom: 80px;
}

body.single-projet #realisations img{
	max-height: 80vh;
}

.groupe_projet{
	margin-bottom: 20px;
}

.groupe_projet > .wp-block-group__inner-container > p:first-of-type{
	margin-bottom: 5px;
}

.categorie{
	font-size: 1em;
	line-height: 1.3em;
	color: #ac6621;
}

body.single-projet .wrap_top_page .content{
	font-size: 2em;
}

.grecaptcha-badge{
	display: none !important;
}

.mt20{
	margin-top: 20px;
}

.mb20{
	margin-bottom: 20px;
}

.wp-block-button__link{
	height: auto;
}

body.page-id-521 .footer_go_contact,
body.page-id-531 .footer_go_contact{
	display: none;
}

#wrap-page-titre{
	padding-top: 150px;
}

#wrap-page-titre .section2_home > .wp-block-column:last-of-type figure{
	opacity: 1;
}

.originain{
	margin: 100px auto;
}

.originain img{
	width: 250px;
	height: auto;
	margin: 0 auto 20px auto;
}

.originain p{
	font-size: 1.3em;
	line-height: 1.6em;
}

/* --- */

/* 

font-family: 'Barlow', sans-serif;


Marron : #ac6621;
Bleu foncé : #001b2a;
Bleu clair : #1a3240;
	
*/

