/***** banner *****/
.banner                                 { margin-top: 150px;} 
.banner .bloc_grid                      { margin: 0; gap: 0;}
.banner .bloc_grid .photo               { margin-right: -190px;}
.banner .bloc_grid .photo .shape        { bottom: 0; right: 50%;}
.banner .bloc_grid .photo .macaron      { position: absolute; width: auto; top: 30px; left: 30px; z-index: 12; height: auto;}
.banner .bloc_grid .content             { padding: 60px 80px 55px;}
.banner .bloc_grid .texte               { position: relative; z-index: 11; background: #000; margin-left: 70px; color: #fff; padding: 0; max-width: initial;}
.banner .bloc_grid .titre_main          { color: #fff;}
.banner .texte .link                    { display: block; text-align: center; margin: 0; height: 80px; line-height: 80px; font-size: 15px;}


@media (max-width:1400px) {
.banner .bloc_grid .texte               { margin: 0;}
.banner .bloc_grid .photo               { margin: 0; height: 100%;}
.banner .bloc_grid .photo img           { height: 100%;}
.banner .bloc_grid .content             { padding: 60px 40px;}
}
@media (max-width:1000px) {
.banner .wrapper                        { max-width: initial; width: 100%;}
.banner .bloc_grid                      { gap: 0;}
}

@media (max-width:700px) {
.banner                                 { margin-top: 130px;} 
.banner .bloc_grid .photo .macaron      { top: 40px; left: 40px; width: 100px; height: auto;}
.banner .bloc_grid .photo img           { height: 380px; object-fit: cover;}
.banner .bloc_grid .texte               { padding: 40px 30px 50px;}
.banner .bloc_grid .content             { padding: 0 0 30px;}
.banner .bloc_grid .titre_main          { font-size: 20px;}
.banner .texte .link                    { height: 60px; line-height: 60px; font-size: 12px;}
}


/***** intro *****/
.intro                                  { margin: 90px 0 110px;}

@media (max-width:1200px) {
.intro                                  { margin: 80px 0;}
}
@media (max-width:1000px) {
.intro                                  { margin: 70px 0;}
}
@media (max-width:700px) {
.intro                                  { display: none; margin: 40px 0;}
}


/***** services *****/
.services .sous_titre                   { margin-bottom: 10px;}
.services .shape                        { position: absolute; width: 1640px; background: #d10303; top: 10px; left: calc(50% + 100px); transform: skewX(45deg); transform-origin: top;}
.services .slider                       { padding: 0 40px;}
.services .item                         { padding: 60px 40px 75px; border: 1px solid #e0e0e0; background: #fff; border-bottom: 0; position: relative; overflow-y: hidden;}
.services .item img                     { margin-bottom: 10px;}
.services .item .titre                  { font: 700 16px/24px "Poppins"; color: #d10303; text-transform: uppercase; margin-bottom: 15px;}
.services .item .link                   { padding: 0 60px 0 40px; position: absolute; left: 0; width: 100%; bottom: -50px; background: url(../images/arrow_right.svg) right 40px center no-repeat #d10303; text-align: left; z-index: 1;}
.arrownavwrap                           { position: relative; z-index: 2; text-align: right; right: -15px; font-size: 0; letter-spacing: 0; margin-bottom: 20px;}
.arrownav                               { width: 45px; height: 45px; background-position: center; background-repeat: no-repeat; cursor: pointer; display: inline-block; vertical-align: top;}
.arrownav_prev                          { background-image: url(../images/arrow_prev.svg);}
.arrownav_next                          { background-image: url(../images/arrow_next.svg);}

@media (max-width: 1500px) {
.services .item                         { min-height: 480px;}
}

@media (min-width:1201px) {
.arrownav                               { transition: all ease-in-out 400ms; filter: brightness(0) invert(1);}
.arrownav:hover                         { filter: none;}
.services .item:hover .link             { bottom: -1px;}
}
@media (max-width:1200px) {
.services .item .link                   { bottom: 0;}
.titre_main + .sous_titre               { margin-top: -20px;}
.services .item                         { min-height: inherit;}
}

@media (max-width:700px) {
.services                               { background: #eee; padding: 40px 0 50px;}
.services .slider                       { padding: 0; max-width: 750px; width: 85vw; margin: 20px auto 0;}
.services .arrownavwrap                 { display: none;}
.services .swiper-wrapper               { display: grid; grid-template-columns: 1fr 1fr; gap: 10px;}
.services .item p                       { display: none;}
.services .item .link                   { height: 100%; opacity: 0;}
.services .item .titre                  { margin-bottom: 0; font-size: 12px;}
.services .item img                     { height: 50px; margin-bottom: 5px;}
.services .item                         { padding: 30px 20px 40px; text-align: center; background: #fff; border-bottom: 1px solid #eee;}
}



/***** atout *****/
.atout                                  { display: grid; grid-template-columns: 420px auto; align-items: start; gap: 80px; margin: 100px 0;}
.atout .titre_main:after                { display: none;}
.atout .photo                           { z-index: 2;}
.atout .photo img                       { width: 100%; height: auto;}
.atout .table_plus .titre_plus          { padding-left: 90px; background: url(../images/check.svg) 35px center no-repeat;}
.atout .texte                           { padding-top: 25px; position: relative; z-index: 2;}
.atout .shape                           { right: calc(50% + 45px);}
@media (max-width:1000px) {
.atout                                  { margin: 80px 0; display: block;}
.atout .texte                           { padding-top: 0;}
.atout .photo                           { display: none;}
}
@media (max-width:700px) {
.atout                                  { display: block; margin: 45px 0 50px;}
.atout .photo                           { display: none;}
.atout .table_plus .titre_plus          { background: none; padding-left: 20px;}
}

@media (max-width: 1000px) {
.atout                                  { margin: 70px 0 80px;}
}
@media (max-width: 700px) {
.atout                                  { margin: 45px 0 50px;}
.atout .titre_main                      { margin-bottom: 20px;}
}


/***** moving photos *****/
.galerie                                { background: #000; padding: 100px 0 70px; text-align: center; position: relative; z-index: 2;}
.galerie .link                          { margin-top: 50px;}
.moving_gal 						    { width: 100%; font-size: 0; line-height: 0; letter-spacing: 0; text-align: left; position: relative;}
.moving_gal .row						{ width: 9000px; display: inline-block; vertical-align: middle; position: relative; z-index: 5;}
.moving_gal .row .item 					{ display: inline-block; vertical-align: middle; animation: sliding 30s linear infinite;}
.moving_gal .row .item img 				{ max-height: 520px; display: inline-block; vertical-align: middle; position: relative; transition: all 400ms ease-in-out; margin-left: 30px; object-fit: cover;}

@keyframes sliding {
0%										{ transform: translateX(0);}
100% 									{ transform: translateX(-100%);}
}

@media (max-width: 1400px){
.moving_gal .row .item img 				{ max-height: 380px; }
}

@media (max-width: 1000px){
.moving_gal .row .item img 				{ margin-left: 40px;}
}
@media (max-width: 700px){
.galerie                                { padding: 50px 0;}
.moving_gal .row						{ width: 5000px; }    
.moving_gal .row .item 					{ animation: sliding 18s linear infinite;}    
.moving_gal .row .item img 				{ margin-left: 10px; max-height: 250px; height: auto; width: auto; display: inline-block;}
.galerie .link                          { width: 85vw; margin: 30px auto 0;}
}


/***** bloc_texte *****/
.bloc_texte                             { margin: 90px 0;}
@media (max-width: 700px) {
.bloc_texte                             { margin: 45px 0 50px;}
}



/***** avis *****/
.avis                               { margin: 90px 40px 95px; padding-top: 50px;}
.avis .shape                        { left: calc(50% + 570px); transform-origin: left; top: -40px;}
.avis .content                      { margin-bottom: 30px; position: relative; display: grid; grid-template-columns: auto auto; justify-content: space-between; align-items: center;}
.avis .arrownavwrap                 { margin-bottom: 0;}
.avis .arrowavis                    { position: absolute; right: -12px;}
.avis .content *                    { display: inline-block; vertical-align: middle; font: 500 20px/26px "Poppins";}
.avis .content strong               { color: #d10303;}
.avis .content img                  { margin: 0 20px 0 0;}
.avis .content span                 { font-size: 20px;}
.avis .note   						{ line-height: 0; letter-spacing: 0; font-size: 0; margin-bottom: 20px;}
.avis .note img 					{ display: inline-block; height: auto; margin-right: 10px;}
.avis .note img:last-child 			{ margin-right: 0;}
.avis .item                         { padding: 40px 40px 35px; border: 1px solid #e0e0e0; background: #fff; margin-right: 30px; width: 380px;}
.avis .item .lire-plus              { border-color: transparent; color: #e00814;}
.avis .author                       { text-align: right; margin-top: 15px;}
.avis .author span                  { display: block; font-size: 12px; line-height: 20px;}

@media (max-width:700px) {
.avis                               { margin: 0; background: #d10303; padding: 40px 0 50px;}
.avis .arrownavwrap                 { display: none !important;}
.avis .content               		{ margin-bottom: 25px;}
.avis .content strong,
.avis .content span                 { font-size: 16px; color: #fff;}
.avis .content img                  { margin: 0 10px; width: 140px;}
.avis .item                         { padding: 40px; margin-right: 10px; width: 85vw;}
.avis .swiper                       { width: 85vw; margin: 0 auto;}
.swiper_scrollbar                   { background: #fff; width: 85vw; margin: 30px auto 0;}
.swiper-scrollbar-drag              { background: #000; height: 5px; border-radius: 0;}

}

