#wrapper      				    { overflow-x: hidden;}
#wrapper:before 				{ position: absolute; left: 50%; right :0; bottom: 0; top:-1000px; background:var(--mainColor4); z-index: -1; transition: none; content: ""; border-radius:50%; width: 1600px; height: 1600px}

h1 				            { color: var(--mainColor1);}
.bloc_txt_img:before        { top: 10%; bottom: -10%;}
.cta_bloc.v1                { background: var(--mainColor1); color: #fff;}
.cta_bloc.v1 a              { color: var(--mainColor4);}
.cta_bloc.v1 a:hover        { color: #fff;}
.cta_bloc.v1:after          { background: url(../images/devis_v1.svg) no-repeat center #fff;}

.anchor                     { top: -140px; position: relative;}


.titre_main.smaller         { font-size: 50px; line-height: 120%; }
@media (max-width:1200px) { 
.titre_main.smaller         { font-size: 40px; }
}
@media (max-width:1000px) { 
.titre_main.smaller         { font-size: 35px; }
}
@media (max-width:700px) { 
.titre_main.smaller         { font-size: 28px; margin-bottom: 10px; }
}


@media (max-width:1000px) { 
.bloc_txt_img:before            { top: 20px; bottom: 0;}
}

.grid_bloc .container				{ text-align: left;}
.grid_bloc .container .titre_main	{ font-size: 40px; line-height: 150%}



/***** top page *****/
.top_page 							{ position: relative; padding: 180px 0 60px 0; color: #000; overflow: hidden; }
.top_page .titre_main				{ margin-bottom: 5px;}
.top_page .sous_titre				{ margin-bottom: 5px;}
.top_page .chapo 					{ margin: 20px 0 0 0; font-size: 20px; line-height: 30px;}
.top_page .bloc_txt_img         	{ margin-top: 0;}
.top_page .bloc_txt_img .container	{ grid-template-columns: 55% 1fr;}

@media (max-width:1400px) {
.top_page .wrapper                  { padding-right: 20px;}   
}
@media (max-width:1200px) {
.top_page 							{ padding: 120px 0 100px 0;}
.top_page .titre				    { font-size: 25px;}
}
@media (max-width:1000px) {
.top_page 							{ padding: 120px 0 80px 0;}
.top_page .titre				    { font-size: 22px;}
.top_page .wrapper                  { padding-right: 0;}   
.top_page .bloc_txt_img .container	{ grid-template-columns: 1fr;}
.top_page .chapo 					{ font-size: 18px;}
}
@media (max-width:700px) {
.top_page 							{ padding: 140px 0 20px 0; background-image: none;}
.top_page .titre				    { margin-bottom: 8px; line-height: 150%; }
.top_page .chapo 					{ margin: 15px 0 0 0; font-size: 16px;}
}




/***** breadcrumb *****/
.breadcrumb							{ line-height: 0; position: relative; padding-bottom: 40px;}
.breadcrumb li 						{ display: inline-block; font-size: 13px; line-height: 20px; margin-right: 30px; letter-spacing: 0.8px; position: relative;}
.breadcrumb li:after				{ width: 1px; height: 9px; position: absolute; right: -15px; top: 6px; background: var(--mainColor2); content: "";}
.breadcrumb li:last-child:after 	{ display: none;}
.breadcrumb li a 					{ color: #000;}
.breadcrumb li a.active 			{ color: var(--mainColor2);}
.breadcrumb li:last-child a 		{ color: var(--mainColor2);}

@media (min-width:1201px) {
.breadcrumb a:hover                 { color: var(--mainColor2);}
}
@media (max-width:1200px) { 
.breadcrumb							{ display: none;}
}




/***** page content *****/
.page 								{ position: relative; padding-bottom: 20px;}
.page p								{ margin-bottom: 15px;}
.page .ul_list a, 
.page p a							{ border-bottom: 1px solid #ccc; padding-bottom: 2px;}

@media (min-width:1201px) {
.page .ul_list a:hover,
.page p a:hover						{ color: #ffb600; border-color: #ffb600;}
}
@media (max-width:1200px) {
}
@media (max-width:1000px) {
}
@media (max-width:700px) {
.page 								{ padding-bottom: 10px;}
.page p								{ margin-bottom: 10px;}
.page .ul_list						{ margin-bottom: 10px;}
}


/***** bloc texte *****/
.bloc_texte							{ margin: 120px auto; position: relative;}
.bloc_texte :last-child				{ margin-bottom: 0;}
.bloc_texte img                     { max-width: 100%; width: 100%; height: auto; display: block;}
.bloc_texte video					{ width: 100%; height: auto; display: block;}

.grid_bloc.col_2 h2.titre span            {font-size: 32px; line-height: 40px;}

@media (max-width:1200px) { 
.bloc_texte							{ margin: 70px auto;}
.bloc_txt_img .container            { align-items: start;}
.grid_bloc.col_2 .container         { grid-template-columns:1fr;}
}
@media (max-width:1000px) { 
.bloc_texte							{ margin: 60px auto;}
    
}
@media (max-width:700px) { 
.bloc_texte							{ margin: 35px 0;}
.grid_bloc.col_2 h2.titre span      {font-size: 28px; line-height: 36px;}
}








.cta                                { margin: 80px auto;}
.cta .link                          { height: 80px; line-height: 78px; display: flex; gap: 25px; align-items: center; justify-content: center;}

@media (min-width:1201px) {

}
@media (max-width:1200px) {
.cta                                { margin: 70px auto;}
}
@media (max-width:1000px) {
.cta                                { margin: 60px auto;}
.cta .link                          { height: 70px; line-height: 68px; gap: 20px;}

}
@media (max-width:700px) {
.cta                                { margin: 50px auto;}
.cta .link                          { height: 60px; line-height: 58px; gap: 15px;}

}






.secteurs.grid_bloc .container      { gap: 80px; }    

.grid_bloc .item.full               { grid-column: span 3; }   

@media (max-width:1200px) { 
.secteurs.grid_bloc .container      { gap: 40px;}    
.grid_bloc .item.full               { grid-column: span 2; }             
}
@media (max-width:1000px) { 
.grid_bloc .item.full               { grid-column: span 1; }             
}


.bloc_txt_img .container .img.col_2 { display: grid; grid-template-columns: 1fr 1fr; grid-gap: 40px;}

@media (max-width:700px) { 
.bloc_txt_img .container .img.col_2 { grid-template-columns: 1fr}
.bloc_txt_img .container .col_2.align img:last-child { display: none;}
}





.list_frames                        { display: grid; grid-template-columns: 1fr 1fr; gap: 15px; }
.list_frames li                     { display: flex; align-items: center; background: url("../images/list.svg") 30px 50% no-repeat #fff; padding: 10px 15px 10px 70px; border-radius: var(--linkRadius); background-size: 10px auto; min-height: 70px; line-height: 120%; }

@media (max-width:600px) {
    .list_frames { grid-template-columns: 1fr;}
 }

.ul_list { margin:35px 0;}


.ul_list.col_2                      { column-count: 2; gap: 40px; }

@media (max-width:1000px) { 
.ul_list.col_2                      { column-count: 1; gap: 0px; }
}














