/***** banner *****/
.banner                             { position: relative; padding-top: 140px;}
.banner::before                     { content: ""; display: block; position: absolute; top: 0; bottom: calc(50% - 70px); left: 0; right: 0; background: #eee;}
.banner .wrapper                    { height: 85vh; max-height: 850px; min-height: 450px; display: grid; align-items: center;}
.banner .content                    { padding: 0 100px;}
.banner .titre_main                 { color: #fff; font-size: 45px; line-height: 52px; margin-bottom: 35px;}
.banner .img                        { position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: url(../images/banner.webp) center / cover no-repeat;}
.banner ul                          { padding-bottom: 10px;}
.banner li                          { position: relative; font-size: 22px; line-height: 30px; padding-left: 35px; color: #fff; margin-bottom: 25px;}
.banner li::before                  { content: ""; display: block; position: absolute; left: 0; width: 13px; height: 13px; border-radius: 50%; border: 3px solid #d42f13; top: 4px;}

@media (max-width: 1200px) {
.banner                             { padding-top: 120px;}
.banner .content                    { padding: 15vw 40px;}
.banner .titre_main                 { font-size: 40px; line-height: 48px; margin-bottom: 25px;}
.banner li                          { font-size: 20px; margin-bottom: 20px;}
.banner .wrapper                    { height: auto; max-height: inherit; min-height: inherit;}
}
@media (max-width: 1000px) {
.banner .wrapper                    { max-width: initial;}
.banner .titre_main                 { font-size: 35px; line-height: 44px;}
.banner li                          { font-size: 18px; }
}
@media (max-width: 700px) {
.banner                             { padding: 129px 0 40px; background: #eee;}
.banner .wrapper                    { height: auto; grid-gap: 40px;}
.banner .img                        { height: 60vw; width: 100vw; margin: 0 -7.5vw; max-height: 650px; min-height: 250px;  position: static; background-image: url(../images/banner_mobile.webp);}
.banner .content                    { padding: 0; width: 100%; margin: 0 auto;}
.banner .titre_main                 { font-size: 28px; line-height: 36px; color: #081630; margin-bottom: 25px;}
.banner .titre_main br              { display: none;}
.banner li                          { font-size: 16px; line-height: 30px; color: #081630; margin-bottom: 15px;}
.banner li::before                  { width: 10px; height: 10px;}
.banner .link1                      { display: none;}
}



/***** intro *****/
.intro                              { margin: 90px 0; font: 400 15px/30px "Montserrat";}

@media (max-width: 1200px) {
.intro                              { margin: 70px 0;}
}
@media (max-width: 700px) {
.intro                              { margin: 50px 0 0; font-size:13px; line-height: 30px;}
}


/***** services *****/
.services                           { display: grid; grid-template-columns: 1fr 1fr; position: relative; gap: 50px; margin: 135px 0 0;}
.services .quote                    { position: absolute; width: 50%; right: 0; top: 25px; padding-left: 25px; text-align: center;}
.services .quote .titre_main        { display: inline-block; vertical-align: top; text-align: left; background: url(../images/quote.svg) left top no-repeat; padding: 10px 0 0 85px;}
.services .item                     { background: #eeeeee; padding: 55px 50px 60px; text-align: right;}
.services .item p                   { text-align: left; margin-bottom: 25px;}
.services .icone_titre              { display: grid; grid-template-columns: auto 1fr; gap: 20px; align-items: center; margin-bottom: 15px; text-align: left;}
.services .icone_titre .show_m      { display: none;}
.services .item .titre_main         { font-size: 25px; line-height: normal; margin-bottom: 0;}
.services .item:nth-child(odd)      { position: relative; top: 215px;}

@media (max-width: 1200px) {
.services                           { margin: 70px 0;}
}
@media (max-width: 1000px) {
.services                           { grid-template-columns: 1fr; gap: 20px;}
.services .quote                    { position: static;}
.services .item:nth-child(odd)      { top: auto;}
}
@media (max-width: 700px) {
.services                           { gap: 10px; margin: 40px 0;}
.services .link                     { position: absolute; margin: 0; inset: 0; font-size: 0; height: auto; background: url(../images/arrow_right_mobile.svg) right 30px center no-repeat;}
.services .item                     { position: relative; padding: 0 30px;}
.services .item .titre_main         { font-size: 18px;}
.services .icone_titre              { margin-bottom: 0;}
.services .item p,
.services .link::after              { display: none;}
.services .quote                    { width: 100%; padding: 0;}
.services .quote .titre_main        { padding: 45px 0 0; background-position: center top; background-size: 45px; text-align: center; font-size: 22px; line-height: 28px; margin-bottom: 20px;}
.services .icone_titre              { grid-template-columns: 40px auto; gap: 20px; height: 60px;}
.services .icone_titre img          { display: none;}
.services .icone_titre .show_m      { display: block; margin: 0 auto;}
}



/***** apropos *****/
.apropos                            { margin: 100px 0;}
.apropos .titre_main                { font-size: 32px;}

@media (max-width: 1000px) {
.apropos                            { margin: 70px 0;}
}
@media (max-width: 700px) {
.apropos                            { margin: 60px 0 40px;}
.apropos .photo img                 { height: 360px;}
.apropos .titre_main                { font-size: 24px;}
}



/***** equipe *****/
.equipe                             { position: relative;}
.equipe .titre_main                 { margin-bottom: 20px;}
.equipe .item img                   { width: 100%; height: auto; display: block; margin-bottom: 20px;}
.equipe .item .sous_titre           { font-size: 22px; line-height: normal; margin-bottom: 5px;}
.equipe .item span                  { display: block; color: #d42f13; font: 500 14px/1 "Montserrat";}
.arrownavwrap                       { font-size: 0; text-align: right; right: -20px; position: absolute; top: 0;}
.arrownavwrap::after                { content: ""; display: block; position: absolute; left: 0; right: 0; width: 2px; height: 20px; background: #d42f13; margin: auto; top: 50%; margin-top: -10px;}
.arrownav                           { width: 55px; height: 55px; 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: 700px) {
.equipe .titre_main                 { margin-bottom: 10px;}
.equipe .swiper                     { width: 600px;}
.swiper_scrollbar                   { background: #e1e1e1; width: 100%; margin: 15px auto 0; overflow: hidden;}
.swiper-scrollbar-drag              { background: #081731; height: 4px; border-radius: 0;}
.equipe .item                       { width: 195px;}
.equipe .arrownavwrap               { display: none;}
.equipe .item .sous_titre           { font-size: 18px; line-height: 1;}
.equipe .item span                  { font-size: 12px;}
}



/***** atout *****/
.atout                              { margin: 115px 0 100px;}
.atout .titre_main                  { margin-bottom: 30px;}
.atout .table_plus .titre_plus      { padding-left: 65px; background: url(../images/check.svg) 30px center no-repeat;}

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




/***** client *****/
.client                             { position: relative; margin: 100px auto;}
.client .titre_main                 { margin-bottom: 20px;}
.client .item                       { padding: 50px 35px 45px; background: #eee;}
.client .item img                   { display: block; margin-bottom: 15px;}
.client .item p                     { font: 400 13px/30px "Montserrat"; font-style: italic; margin-bottom: 20px;}
.client .item .sous_titre           { text-align: right; font-size: 18px; line-height: 1; margin-bottom: 0;}

@media (max-width: 1200px) {
.client                             { margin: 80px auto;}
}
@media (max-width: 1000px) {
.client                             { margin: 70px auto;}
}
@media (max-width: 700px) {
.client                             { margin: 50px auto;}
.client .item                       { padding: 50px 30px;}  
.client .swiper                     { width: 150vw;}
.client .item p                     { font-size: 12px;}
.client_scrollbar                   { margin-top: 30px;}
.client .item .sous_titre           { font-size: 15px;}
}



/***** confiance *****/
.confiance                          { margin: 100px 0 115px;}
.confiance .titre_main              { margin-bottom: 20px;}
.confiance .item                    { border: 1px solid #eee;}
.confiance .item img                { width: 100%; height: auto; display: block;}

@media (max-width: 1000px) {
.confiance                          { margin: 70px 0 80px;}
}    
@media (max-width: 1000px) {
.confiance                          { margin: 50px 0;}
}    