/***** top_page *****/
.top_page                           { padding: 200px 0 60px;} 
.back                               { display: inline-block; vertical-align: top; padding-left: 30px; background: url(../images/arrow_left.svg) left center no-repeat; color: #2a2a2a; cursor: pointer;}

@media (max-width:1200px) { 
.top_page                           { padding-top: 150px;}
.top_page .content                  { gap: 50px;}
}
@media (max-width:1000px) { 
.top_page                           { padding: 220px 0 40px;}
.top_page .content                  { grid-template-columns: 1fr;}
.top_page .devis_page               { display: none;}
}



/***** breadcrumb *****/
.breadcrumb							{ line-height: 0; position: relative; padding:0 0 40px;}
.breadcrumb a                       { color: #2a2a2a;}
.breadcrumb a.active                { color: #2a2a2a;}
.breadcrumb li 						{ display: inline-block; font-size: 13px; line-height: 30px; letter-spacing: 0.5px; margin-right: 30px; position: relative;}
.breadcrumb li:after				{ width: 1px; height: 9px; position: absolute; right: -16px; top: 11px; background: #2a2a2a; content: "";}
.breadcrumb li:last-child:after 	{ display: none;}

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


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

@media (min-width:1201px) {
.page_content .ul_list a:hover,
.page_content p a:hover						{ border-color: #ee652e;}
}
@media (max-width:1000px) {
.page_content 								{ padding-bottom: 0;}
}
@media (max-width:600px) {
.page_content p								{ margin-bottom: 10px;}
.page_content .ul_list						{ margin-bottom: 10px;}
}


/***** bloc texte *****/
.bloc_texte							{ margin: 80px auto; position: relative;}
.bloc_texte :last-child				{ margin-bottom: 0;}

@media (max-width:1200px) { 
.bloc_texte							{ margin: 60px auto;}
}
@media (max-width:1000px) { 
.bloc_texte							{ margin: 50px auto;}
}
@media (max-width:600px) { 
.bloc_texte							{ margin: 30px 0;}
}



/***** intro *****/
.intro                              { position: relative; padding-bottom: 60px; text-align: center;}
.intro img                          { width: 100%; height: auto; display: block; object-fit: cover;}
.intro::before                      { content: ""; position: absolute; top: 22%; bottom: 0; left: 0; width: 100%; background: url(../images/shape.svg) center top repeat #2a2a2a; z-index: -1;}
.intro .wrapper                     { z-index: 1;}
.intro .sous_titre                  { color: #fff; margin-top: 50px; margin-bottom: 0;}
.intro .sous_titre span             { color: #ee652e;}

@media (max-width:1000px) { 
.intro .sous_titre                  { margin-top: 20px;}
.intro                              { padding-bottom: 40px;}
}



.dark_bg                            { position: relative; color: #fff; padding: 1px 0;}
.dark_bg .titre,
.dark_bg .sous_titre,
.dark_bg .titre_main                { color: #fff; }
.dark_bg::before                    { content: ""; position: absolute; top: 0; bottom: 0; left: 0; right: 0; width: 100%; background: url(../images/shape.svg) center top repeat #2a2a2a; z-index: -1;}

@media (max-width:1200px) { 

}





.cta                                { text-align: center; background: url(../images/shape.svg) center top repeat #2a2a2a; padding: 35px 40px 50px; margin: 80px auto;}
.cta .titre_main                    { font-size: 40px; line-height: 50px; margin-bottom: 30px;}
.cta .sous_titre                    { color: #fff; margin-bottom: 0;}
.cta .sous_titre a                  { color: #69b32f; border-bottom: transparent;}

@media (min-width:1201px) {
.cta .sous_titre a:hover            { color: #ee652e;}
}
@media (max-width:1200px) {
.cta                                { margin: 70px auto;}
.cta .titre_main                    { font-size: 30px; line-height: 40px; margin-bottom: 25px;}
}
@media (max-width:1000px) {
.cta                                { margin: 50px auto;}
.cta .titre_main                    { font-size: 25px; line-height: 35px; margin-bottom: 20px;}
}
@media (max-width:700px) {
.cta .titre_main                    { font-size: 20px; line-height: 30px; margin-bottom: 15px;}
.cta                                { padding: 20px 30px 30px; margin: 40px auto;}
}




.wrapfiltre                         { display: grid; align-items: end; grid-template-columns: auto auto; justify-content: space-between; margin-bottom: 40px;}
.filtre                             { position: relative;}
.filtre::after                      { content: ""; display: block; position: absolute; right: 0; top: 0; width: 60px; height: 60px; background: url(../images/arrow_down_white.svg) center no-repeat #69b32f;}
.filtre select                      { min-width: 380px; background: #fff; height: 60px; border: none; font: 400 16px/1 "Barlow"; color: #2a2a2a; padding: 0 80px 0 30px;}

.machine                            { margin-bottom: 100px;}
.machine .listing                   { display: grid; grid-template-columns: repeat(4, 1fr); gap: 60px 40px;}
.pagination>*                       { width: 60px; font: 400 16px/60px "Barlow"; color: #fff; background: #69b32f; display: inline-block; vertical-align: top; text-align: center;}
.pagination .current                { background: #fff; color: #69b32f;}

@media (min-width:1201px) {
.pagination a:hover                 { background: #fff; color: #69b32f;}
}
@media (max-width:1366px) {
.machine .listing                   { gap: 40px 20px;}
}
@media (max-width:1200px) {
.machine .listing                   { grid-template-columns: repeat(3, 1fr);}
}
@media (max-width:1000px) {
.machine                            { margin-bottom: 80px;}
.machine .listing                   { grid-template-columns: 1fr 1fr;}
.wrapfiltre                         { grid-template-columns: 1fr; gap: 25px;}
.filtre select                      { width: 100%;}
.filtre option                       { width: 100%;}
}
@media (max-width:700px) {
.machine                            { margin-bottom: 50px;}
.machine .listing                   { gap: 20px; grid-template-columns: 1fr;}
.pagination                         { display: flex; gap: 10px; justify-content: center;}
.pagination a                       { margin: 0;}
}



/***** detail *****/
.detail                             { display: grid; grid-template-columns: 50% 50%;}
.detail_media                       { padding-right: 40px;}
.detail_media .swiper img           { cursor: url(../images/loupe.svg), auto;}
.detail_media .swiper-button-next:after,
.detail_media .swiper-button-prev:after { display: none;}
.detail_media .swiper-button-next,
.detail_media .swiper-button-prev   { width: 50px; height: 50px; display: block; }
.detail_media .swiper-button-next   { background: url("../images/arrow_next_white.svg") 80% 50% no-repeat transparent; }
.detail_media .swiper-button-prev   { background: url("../images/arrow_prev_white.svg") 20% 50% no-repeat transparent; }
.detail_media .sliderthumb          { margin-top: 20px;}
.detail_media .sliderthumb img      { cursor: pointer;}
.detail_media img                   { width: 100%; height: auto; display: block;}
.detail_texte                       { padding-left: 40px;}
.detail_texte .morecontent          { margin-top: 20px;}
.detail_texte .sous_titre           { margin-bottom: 0;}
.detail_texte .infos                { border-bottom: 1px solid #c0bcb2; margin-top: 35px;}
.detail_texte .infos li             { display: grid; justify-content: space-between; grid-template-columns: auto auto; align-items: center; padding: 15px 0; border-top: 1px solid #c0bcb2;}
.detail_texte .infos li strong      { text-transform: uppercase;}
.detail_texte .iwant                { margin: 50px 0 0;}
.detail_texte .link.link_catalogue  { line-height: 50px; height: 50px;}
.detail_texte .iwant .link          { display: block; width: 100%;}

@media (max-width:1200px) {
.detail_media                       { padding-right: 20px;}
.detail_texte                       { padding-left: 20px;}    
}
@media (max-width:1000px) {
.detail                             { display: block;}
.detail_media                       { padding-right: 0; margin-bottom: 30px;}
.detail_texte                       { padding-left: 0;}    
}
@media (max-width:700px) {
.detail_media .sliderthumb          { margin-top: 10px;}
}


/***** popmedia *****/
.popmedia                           { position: relative; display: block;}
.popmedia::before                   { content: ""; display: block; width: 90px; height: 90px; border-radius: 50%; background: url(../images/play.svg) center no-repeat rgba(0, 0, 0, 0.5); position: absolute; top: calc(50% - 45px); left: calc(50% - 45px);;}
.popmedia img                       { width: 100%; height: auto; display: block;}

@media (min-width:1201px) {
.popmedia:hover::before             { background-color: #2a2a2a;}
}
@media (max-width:700px) {
.popmedia::before                   { width: 70px; height: 70px;}
}



#services .table_plus               { margin-top: -50px; }
#services .bloc_grid .table_plus    { margin-top: 0; }
#services .table_plus .titre_plus   { font-size: 18px; }









/***** custom fancybox *****/
.fancybox-bg									{ background: #2a2a2a;}
.fancybox-is-open .fancybox-bg					{ opacity: 1;}
.fancybox-button,
.fancybox-infobar__body 						{ background: none; color: #fff; font: 400 16px/60px "Barlow"; letter-spacing: 0.8px;}
.fancybox-infobar 								{ top: 30px; left: auto; right: 90px; margin-left: 0;}
.fancybox-infobar button						{ display: none;}
.fancybox-toolbar 								{ top: 30px; right: 30px;}
.fancybox-show-nav .fancybox-arrow 				{ opacity: 1; transition: all 400ms ease-in-out;}
.fancybox-button--close 						{ width: 50px; height: 50px; background: #69b32f ; transition: all 400ms ease-in-out;}
.fancybox-button--close:before					{ width: 18px; left: calc(50% - 9px); background: #fff;}
.fancybox-button--close:after					{ width: 18px; left: calc(50% - 9px); background: #fff;}
.fancybox-arrow 								{ width: 50px; height: 50px; background: url("../images/arrow_next_white.svg") 54% 50% no-repeat #69b32f ; margin-top: -30px;}
.fancybox-button--thumbs, 						
.fancybox-button--play, 						
.fancybox-button--fullscreen, 						
.fancybox-arrow:after							{ display: none;}
.fancybox-arrow--right 							{ right: 30px;}
.fancybox-arrow--left 							{ left: 30px;}

@media (min-width:1201px) { 
.fancybox-button:hover:not([disabled]) 			{ background-color: #ee652e;} 
.fancybox-arrow:hover:not([disabled])  			{ background-color: #ee652e;}
}
@media (max-width:1200px) { 
.fancybox-arrow			 						{ border: none;}
}
@media (max-width:700px) { 
.fancybox-button,
.fancybox-infobar__body 						{ line-height: 40px;}
.fancybox-infobar 								{ top: 7.5vw; left: 7.5vw;}
.fancybox-toolbar 								{ top: 7.5vw; right: 7.5vw;}
.fancybox-button--close 						{ width: 40px; height: 40px;}
.fancybox-button--close:before					{ width: 20px; left: calc(50% - 10px);}
.fancybox-button--close:after					{ width: 20px; left: calc(50% - 10px);}
.fancybox-arrow 								{ width: 40px; height: 40px; margin-top: -20px; background-size: 20% auto;}
.fancybox-arrow--right 							{ right: 7.5vw;}
.fancybox-arrow--left 							{ left: 7.5vw;}
} 











