/***** Class *****/ 
h2.chapo     										{ font: 400 clamp(1.4rem, 1.3703rem + 0.1297vw, 1.8rem)/2 var(--fontBody); }

/***** Banner *****/ 
banner:before      									{ content: ''; width: 200vw; left: -50vw; background: #252526; position: absolute; height: 560px;}
banner:after       									{ content: ''; width: calc(20vw + 416px); height: 375px; background: url("../images/patern.svg") right top repeat; position: absolute; top: 560px; left: -20vw; z-index:-1;}

.banner       										{ display: grid; grid-template-columns: /*minmax(auto, 670px) 1fr*/ auto 1fr; width: 100vw; padding-top: 150px; color: #ffffff;}
.banner>.item:nth-child(1) 							{ text-align: center; position: relative; text-transform: uppercase; padding-top: 15px;}
.banner-search             							{ position: relative; display: block; background: #ffffff; box-shadow: 0px 30px 60px 0px rgba(32, 38, 40, 0.1); width: 460px; padding: 50px; margin: 50px auto 0 auto;}
.banner>.item:nth-child(2)                			{ position: relative; margin-left: 4vw;}
.banner>.item:nth-child(2) .photo         			{ position: absolute; left: 0; top: 0; display: flex;}
.banner>.item:nth-child(2) .photo img     			{ max-width: 100%; height: inherit; position: relative;}
.banner>.item:nth-child(2) .photo img:nth-child(2) 	{ margin: 0 40px; top: 70px;}

@media (max-width:1200px) {
banner:after       									{ left: -40vw;}
.banner-search     									{ width: auto; padding: 40px;}
.banner>.item:nth-child(2)                			{ margin-left: 5vw;}
.banner .item:nth-child(2) .photo img:nth-child(2) 	{ margin: 0 30px; top: 50px;}

}

@media (max-width:1000px) {

}

@media (max-width:800px) {
banner                               				{ height: auto;}
banner:before                        				{ height: 100%;}
banner:after                         				{ content: none;}
.banner                              				{ padding-top: 210px; grid-template-columns:1fr; width: inherit; grid-gap: 40px; padding-bottom: 40px;}
.banner>.item:nth-child(1)           				{ grid-area: 2;}
.banner>.item:nth-child(2)           				{ grid-area: 1; margin-left: inherit;}
.banner .item:nth-child(2) .photo    				{ position: relative; left: inherit; top: inherit; display: grid; grid-template-columns: repeat(3,1fr); grid-gap: 0 20px; }
.banner .item:nth-child(2) .photo img:nth-child(2) 	{ margin: 0; top: 20px;}
}
@media (max-width:600px) {
banner 												{ width: 100vw;}
.banner                              				{ padding-top: 185px; grid-gap: 35px;}
.banner-search             							{ background: #252526; box-shadow: none; padding: 0; margin: 40px auto 0 auto;}


.banner .item:nth-child(2) .photo    				{ grid-gap: 0 10px; padding: 0 10px;}
.banner>.item:nth-child(1)  						{ padding: 0 5vw;}
}



/***** bloc de recherche *****/
.banner-search                      				{ position: relative;}
.banner-search input[type="text"],
.banner-search form select          				{ width: 100%; padding: 0 40px 0 20px; height: 60px; letter-spacing: 0.4px; border: 0; border-radius: 0; appearance: none; background: url("../images/arrow_down.svg") right 20px center no-repeat #eeeeee;  cursor: pointer; font: 400 clamp(1.4rem, 1.3703rem + 0.1297vw, 1.8rem)/2 var(--fontBody);}
.banner-search form .launch         				{ width: 100%; height: 60px; background: url("../images/search.svg") 95% center no-repeat #c7b890; border: 0; padding: 0; cursor: pointer; transition: all 400ms ease-in-out; text-transform: uppercase; font: 500 clamp(1.4rem, 1.3703rem + 0.1297vw, 1.8rem)/2 var(--fontBody); letter-spacing: 2px;}

#filterForm           								{ position: relative; display: grid; grid-template-columns:1fr; grid-gap: 10px 0;}     
#filterForm:after     								{ content: '';  background: url("../images/vers_bien_reves.svg") right bottom no-repeat; position: absolute; bottom: -90px; right: -400px; width: 408px; height: 76px; }

@media (max-width:1200px) {
#filterForm:after      								{ display: none;}
.banner-search form .launch         				{ letter-spacing: 2px;}
}
@media (max-width:600px) {
.banner-search input[type="text"],
.banner-search form select          				{ padding: 0 40px 0 20px; height: 50px; background: url("../images/arrow_down.svg") right 20px center no-repeat #eeeeee;  cursor: pointer;}
.banner-search form .launch         				{ height: 50px; letter-spacing: 1px; background: #c7b890;}
}



/***** bloc annonces *****/
.bloc_annonces                  							{ display: block; width: 90vw; max-width: 1600px; margin: 0 auto; position: relative; padding-top: 90px; z-index: 2; text-align: center;}
.bloc_annonces:before           							{ content: ''; background: #252526; left: -50vw; width: 200vw; top: 0; height: 530px; display: block; position: absolute; z-index: -1;}
.bloc_annonces .titre-14        							{ color: #ffffff; margin-bottom: 10px;}
.bloc_annonces .titre-40        							{ color: #c7b890;}
.bloc_annonces .bloc-lien       							{ width: auto; margin: 20px auto 0 auto;}
.bloc_annonces .bloc-lien .link 							{ width: 200px; margin: 0 3px; display: inline-block; padding-left: 0; padding-right: 0;}

@media (max-width:1200px) {
.bloc_annonces                  							{ padding-top: 70px;}
.bloc_annonces:before           							{ height: 450px;}
.bloc_annonces ::-webkit-scrollbar 							{ background-color: #eee;}
.bloc_annonces ::-webkit-scrollbar-thumb					{ background-color: #252526;}
.bloc_annonces .swiper-annnoces 							{ margin: 60px auto; position: relative;}
.bloc_annonces .swiper-annnoces:before 						{ background: #fff; width: 5vw; height: 6px; position: absolute; bottom: 0; left: -5vw; z-index: 10; content: "";}
.bloc_annonces .swiper-annnoces:after 						{ background: #fff; width: 5vw; height: 6px; position: absolute; bottom: 0; right: -5vw; z-index: 10; content: "";}
.swiper-annnoces:not(.swiper-initialized) .swiper-wrapper 	{ width: 100vw; overflow-x: auto; gap: 25px; flex-wrap: nowrap; justify-content: start; padding-bottom: 40px; margin-left: -5vw; padding-right: 5vw;}
.bloc_annonces .swiper-slide.bien-accueil 					{ opacity: 1; width: 400px;}
.bloc_annonces .swiper-slide.bien-accueil:first-child		{ margin-left: 5vw;}
.swiper-annnoces .swiper_scrollbar,
.swiper-annnoces .swiper-button-next,
.swiper-annnoces .swiper-button-prev 						{ display: none;}
.bloc_annonces .bloc-lien       							{ width: 100%; display: grid; grid-template-columns: 1fr 1fr 1fr; grid-gap: 10px; margin: 0;}
.bloc_annonces .bloc-lien .link 							{ width: 100%; margin: 0;}
}
@media (max-width:1000px) {
.bloc_annonces:before           							{ height: 400px;}
.bloc_annonces .swiper-slide.bien-accueil 					{ width: 320px;}
}
@media (max-width:600px) {
.bloc_annonces                  							{ padding-top: 35px;}
.bloc_annonces:before           							{ height: 300px;}
.bloc_annonces ::-webkit-scrollbar 							{ height: 4px;}

.bloc_annonces .titre-14        							{ margin-bottom: 5px;}

.bloc_annonces .swiper-annnoces 							{ margin: 20px auto 30px auto;}
.swiper-annnoces:not(.swiper-initialized) .swiper-wrapper 	{ gap: 15px; padding-bottom: 30px;}

.bloc_annonces .swiper-slide.bien-accueil 					{ max-width: 320px; width: 70vw;}


.bloc_annonces .bloc-lien       							{ grid-template-columns: 1fr;}
}



/***** grid *****/
.bloc_grid                       				{ display: grid; grid-template-columns:repeat(2,1fr); align-items: center; position: relative; margin: var(--marginBloc); grid-gap: 0 0;}
.bloc_grid .item .titre-14       				{ text-transform: uppercase; letter-spacing: 1.5px; font-family: var(--fontTitre); margin-bottom: 10px;}
.bloc_grid .item .titre-40       				{ text-transform: uppercase; color: var(--colorBodyTitre);}
.bloc_grid>.item:nth-child(1)    				{ position: relative; padding-right: 100px;}
.bloc_grid>.item:nth-child(2)    				{ background: #252526; padding: 80px 0; color: #ffffff; text-align: center;}
.bloc_grid>.item:nth-child(2) .link.arrow 		{ margin-top: 20px; display: inline-block;}

.bloc_grid .texte                				{ position: relative;}

.bloc_grid.valeur                 				{ margin: 160px auto;}
.bloc_grid.valeur:after           				{ content: ''; width: calc(20vw + 450px); height: 100%; background: url("../images/patern.svg") right top repeat; position: absolute; top: 50%; left: calc(100% - 150px); z-index:-1;}

.bloc_grid.services .titre-14          			{ color: #252526;}
.bloc_grid.services .titre-40          			{ color: #c7b890;}
.bloc_grid.services ul                 			{ border-top: 1px solid #cccccc; margin-top: 40px; display: block;}
.bloc_grid.services ul li              			{ cursor: pointer; text-transform: uppercase; font-weight: 600; height: 60px; line-height: 60px; transition: all 400ms ease-in-out; display: block; position: relative; border-bottom: 1px solid #cccccc;}
.bloc_grid.services ul li a            			{ color: #252526; display: block;}
.bloc_grid.services ul li:after        			{ width: 10px; height: 16px; background: url(../images/arrow-next.svg) 50% no-repeat; border-radius: 50%; position: absolute; right: 5px; top: 50%; content: ""; transform: translateY(-50%);}
.bloc_grid.services .photo             			{ display: flex; flex-direction: column; align-items: flex-end; gap: 45px 0;}
.bloc_grid.services .photo img         			{ max-width: 100%; height: auto;}
.bloc_grid.services .client            			{ color: #ffffff; position: relative; background: #252526; width: 340px; padding: 90px 30px; text-align: center; line-height: 1.8; margin: 0;}
.bloc_grid.services .client:before     			{ content: ''; width: calc(20vw + 520px); height: 100%; background: url("../images/patern.svg") right top repeat; position: absolute; top: 0; right: 380px; z-index:-1;}
.bloc_grid.services .client:after      			{ content: '';  background: url("../images/grace-valeurs.svg") right bottom no-repeat; position: absolute; bottom: -90px; right: -340px; width: 376px; height: 130px; }
.bloc_grid.services .client .brush:before 		{ content: ''; left: 50%; transform: translate(-50%, -50%); top: calc(50% + 5px); position: absolute; background: url("../images/brush-small.svg") 0 0 repeat; width: 114px; height: 36px; z-index: -1;}
.bloc_grid.services .client span 				{ position: relative; z-index: 5;}
.bloc_grid.services .texte            			{ padding-left: 100px;}

.bloc_grid.agence                      			{ z-index: 1; top: -200px; margin-top: 0; margin-bottom: 0;}
.bloc_grid.agence .agence              			{ padding: 60px; position: relative;  background: #ffffff; box-shadow: 0px 30px 60px 0px rgba(32, 38, 40, 0.1);}
.bloc_grid.agence .agence>p            			{ margin-bottom: 40px;}
.bloc_grid.agence .titre-14            			{ color: #252526;}
.bloc_grid.agence .titre-20            			{ color: #c7b890;}
.bloc_grid.agence .titre-40            			{ color: #c7b890;}
.bloc_grid.agence .texte               			{ padding-left: 100px; position: relative;}
.bloc_grid.agence .texte:before        			{ content: ''; background: #ffffff; position: absolute; width: 100%; height: calc(100% + 80px); left: 50px; top: -40px; z-index: -1;}
.bloc_grid.agence .bloc-adresse .brush 			{ display:block; color: #ffffff;}
.bloc_grid.agence .bloc-adresse .brush:before 	{ content: ''; left: 50%; transform: translate(-50%, 0); top: 25px; position: absolute; background: url("../images/brush-nouvelle.svg") 0 0 repeat; width: 151px; height: 35px; z-index: -1;}
.bloc_grid.agence .bloc-adresse        			{ display: grid; grid-template-columns:repeat(2,1fr); align-items: center; position: relative;  grid-gap: 0 0; background: #252526; color: #ffffff; margin-top: 60px;}
.bloc_grid.agence .bloc-adresse:after  			{ content: '';  background: url("../images/venez-decouvrir.svg") 0 bottom no-repeat; position: absolute; bottom: -140px; left: 50%; width: 458px; height: 106px; transform: translateX(-50%);}
.bloc_grid.agence .bloc-adresse img    			{ max-width: 100%; height: auto}
.bloc_grid.agence .bloc-adresse .item:nth-child(1) {  font-size: 0; line-height: 0;}
.bloc_grid.agence .bloc-adresse .item  			{ text-align: center;}

@media (min-width:1201px) {
.bloc_grid.services ul li:hover:after  			{ right:10px;}
}
@media (max-width:1600px) {
.bloc_grid.valeur                 				{ margin: 140px auto;}
.bloc_grid.services .texte             			{ padding-left: 80px;}


.bloc_grid.agence                      			{ top: -180px;}
.bloc_grid.agence .texte 						{ padding-left: 80px;}



}
@media (max-width:1200px) {
.bloc_grid.valeur    			 				{ align-items: start; margin: 100px auto;}
.bloc_grid.valeur>.item:nth-child(1) 			{ padding-right: 60px;}

.bloc_grid.services .photo 						{ grid-gap: 30px;}
.bloc_grid.services .client:before 				{ right: 360px;}
.bloc_grid.services .client:after 				{ display: none;}

.bloc_grid.services .texte             			{ padding-left: 60px;}



.bloc_grid.agence                      			{ top: -80px;}
.bloc_grid.agence .agence              			{ padding: 40px;}

.bloc_grid.agence .texte 						{ padding-left: 60px;}
.bloc_grid.agence .bloc-adresse:after 			{ display: none;}


}
@media (max-width:1000px) {
.bloc_grid                       				{ grid-template-columns: 1fr;}
.bloc_grid .item .titre-14       				{ margin-bottom: 5px;}


.bloc_grid.valeur    			 				{ margin: 80px auto;}
.bloc_grid.valeur>.item:nth-child(1) 			{ padding-right: 0;}
.bloc_grid>.item:nth-child(2) .link.arrow 		{ display: block;}

.bloc_grid.services  							{ grid-gap: 60px;}
.bloc_grid.services .photo 						{ grid-gap: 0;}
.bloc_grid.services .client 					{ width: 100%; padding: 40px;}
.bloc_grid.services .client:before 				{ display: none;}

.bloc_grid.services .texte 						{ padding: 0;}


.bloc_grid.agence .texte 						{ padding-left: 0;}

.bloc_grid.agence .bloc-adresse .item:nth-child(1) img {width: 100%;}




}
@media (max-width:800px) {
.bloc_grid.valeur     							{ margin: var(--marginBloc); grid-template-columns:1fr;}
.bloc_grid.valeur>.item:nth-child(1) 			{ padding-right: 0;}
.bloc_grid>.item:nth-child(2) 					{ background: #ffffff; padding: 0;}
.bloc_grid>.item:nth-child(2) img,
.bloc_grid>.item:nth-child(2) .script-80 		{ display: none;}
.bloc_grid.valeur:after, 
.bloc_grid>.item:nth-child(2) .link.arrow:after { content: none;}
}

@media (max-width:600px) {
.bloc_grid>.item:nth-child(2) .link.arrow 		{ display: block;}

.bloc_grid.services .client 					{ padding: 25px;}
.bloc_grid.services .client .brush:before 		{ top: calc(50% + 3px);}


.bloc_grid.agence 								{ top: auto; margin: 40px 0; grid-gap: 40px;}
.bloc_grid.agence .agence 						{ padding: 0; box-shadow: none;}
.bloc_grid.agence .texte:before 				{ display: none;}

.bloc_grid.agence .bloc-adresse 				{ grid-template-columns: 1fr;}
.bloc_grid.agence .bloc-adresse .item:nth-child(2) { padding: 20px 0;}

.bloc_grid.agence .bloc-adresse .brush:before   { top: 20px;}


}






/***** Paralax *****/
.paralax-photo    								{ text-align: center; min-height: 720px;  width: 100vw; position: relative; display: flex; align-items: center; justify-content: center; color: #ffffff; background: url("../images/parallax-photo-1.webp") 0 0 no-repeat; background-size: cover; margin: 160px 0 0 0; padding: 0 5vw 40px 5vw;}

@media (max-width:1600px) {
.paralax-photo    								{ margin: 140px 0 0 0; min-height: 600px;}
}
@media (max-width:1200px) {
.paralax-photo    								{ margin: 100px 0 0 0; min-height: inherit; padding: 100px 5vw 140px 5vw;}
}
@media (max-width:600px) {
.paralax-photo    								{ display: none;}
}






/***** avis *****/
.avis 									{ position: relative; display: grid; grid-template-columns: 1fr 1fr 1fr 1fr; grid-gap:0 40px; padding: 120px 0; margin: 0 auto; width: 90vw; max-width: 1600px;}
.avis.pattern:after                     { content: ''; width: calc(20vw + 450px); height: 100%; background: url("../images/patern.svg") right top repeat; position: absolute; top: 50%; left: calc(100% - 450px); z-index:-1;}
.avis:before 							{ width: 200vw; position: absolute; left: -50vw; top: 0; bottom: 0; background: #fff; z-index: -1; content: "";}
.avis .swiper 							{ grid-column: span 3; display: grid; grid-template-columns: 1fr 1fr 1fr; grid-gap: 0 40px; overflow: inherit;}
.avis .item 							{ background: #fff; box-shadow: 0px 30px 60px 0px rgba(32, 38, 40, 0.1); position: relative; padding: 50px 40px 80px 40px;}

.avis .item p							{ font-size: 13px; line-height: 26px;}
.avis .item p.author					{ margin-top: 10px;}

.avis .item.arrow-avis:after            {  content: '';  background: url("../images/ils-temoignent.svg") 0 bottom no-repeat; position: absolute; bottom: -110px; right: -200px; width: 458px; height: 137px;}

.avis .note   							{ line-height: 0; letter-spacing: 0; font-size: 0; margin-bottom: 15px;}
.avis .note img 						{ display: inline-block; width: 16px; height: auto; margin-right: 10px;}
.avis .note img:last-child 				{ margin-right: 0;}

.avis .score 							{ background: #252526; color: #fff; text-align: center; box-shadow: none; line-height: 0; letter-spacing: 0; font-size: 0; padding: 60px 0; display: grid; align-items: center;}
.avis .score .note						{ font-size: 50px; line-height: 45px;}
.avis .score img						{ display: block; margin: 0 auto;}
.avis .score img:first-of-type			{ margin-bottom: 28px; margin-top: 20px;}
.avis .score p							{ margin-top: 6px; letter-spacing: 0.6px;}


@media (max-width: 1200px){
.avis 									{ display: block; padding: 100px 0 40px 0;}
.avis.pattern:after,
.avis .item.arrow-avis:after            { content: none;}
.avis .item 							{ padding: 30px 30px 50px 30px; box-shadow: none;}

.avis .swiper 							{ grid-gap: 0 30px;}
.avis .swiper .item 				    { border: 1px solid #d3d3d4; padding: 30px;}
.avis .score 							{ background: none; padding: 0; display: block; text-align: left; position: relative; margin: 0 0 30px 0;}
.avis .score .note						{ font-size: 32px; line-height: 26px; display: inline-block; vertical-align: middle; margin: 0 20px 0 0;color: var(--colorBody);}
.avis .score img						{ display: inline-block; vertical-align: middle;}
.avis .score img.trustpilot             { filter: invert(100%);}
.avis .score img:first-of-type			{ margin-bottom: 0; margin-top: 0; width: auto; height: 26px;}
.avis .score img:last-of-type			{ display: block; margin: 20px 0 0 0; width: auto; height: 40px;}
.avis .score p							{ height: 40px; font-size: 14px; line-height: 62px; margin: 0; position: absolute; left: 200px; top: 40px;color: var(--colorBody);}
}

@media (max-width: 1000px){
.avis 									{ padding: 80px 0 0 0;}
.avis .swiper 							{ grid-template-columns: 1fr; grid-gap: 25px;}
}
@media (max-width: 600px){
.avis 									{ padding: 60px 0 0 0;}
.avis .swiper 							{ grid-gap: 15px;}
.avis .swiper .item 				    { padding: 20px;}
}



/***** DEV *****/
.dev     { display:block; color: #ffffff; font-size: 14px; background: red; padding: 20px; bottom: 0; left: 0; position: fixed; z-index: 999;}




