/***** banner *****/
.banner                         { position: relative; padding-top: 150px;  display: grid; grid-template-columns: 640px auto; /*gap: 20px;*/}
.banner .titre_main             { color: #113c4b; margin-bottom: 30px; font-size: 40px; }
.banner .sous_titre             { color: #113c4b; font-size: 25px; line-height: 45px; margin: 0; }
.banner .texte                  { padding: 80px; background-color: #eee;}
.banner_texte                   { display: grid; /*gap: 20px;*/}
.banner_image                   { position: relative;}
.banner_image img               { display: block; width: 100%; object-fit: cover; max-height: 680px; height: 100%;}
.banner .link_contact           { display: inline-block; height: 100%; background-color: #d7534a; font-size: 30px; line-height: 45px; padding: 55px 80px; color: #fff; font-weight: 500;}
.banner .link_contact span      { padding-right: 80px; display: inline-block; background: url(../images/link.svg) no-repeat center right 20px;}
.banner .small_title { max-width: 300px; }
@media (min-width: 600px) {
  .banner .small_title { max-width: 100%; }
}
@media (min-width: 1000px) {
  .banner .small_title { max-width: 300px; }
}
@media (min-width:1200px) {
.banner .link_contact:hover      { background-color: #113c4b;}
.banner .link_contact:hover span { background-position: center right;}
}

@media (max-width:1400px) {
.banner .texte                  { padding: 70px 40px;}
.banner                         { grid-template-columns: 1fr 1fr;}
.banner .link_contact           { padding: 40px;}
}

@media (max-width:1200px) {
.banner                         { padding-top: 90px;}
.banner .sous_titre             { font-size: 25px; line-height: 35px;}
.banner .titre_main             { font-size: 35px; line-height: 45px; margin-bottom: 20px;}
.banner .link_contact           { font-size: 25px; line-height: 35px;}
}

@media (max-width:1000px) {
.banner                         { grid-template-columns: 1fr; gap: 0;}
.banner_content                 { max-width: 100% ; width: 100%;}
.banner_image                   { grid-area: 1;}
.banner .texte                  { padding: 40px 7.5vw; }
.banner .link_contact           { padding: 20px 7.5vw; width: 100%;  background: url(../images/link.svg) no-repeat center right calc(7.5vw + 40px) #d7534a;}
.banner .link_contact span      { display: block; background: none;}
.banner_texte                   { gap: 0;}
}
@media (max-width:600px) {
.banner                         { padding-top: 160px;}
.banner .titre_main             { font-size: 30px; line-height: 40px; margin-bottom: 10px; }
.banner .sous_titre             { font-size: 16px; line-height: 30px;}
.banner .texte                  { padding: 30px 7.5vw;}
.banner .link_contact           { font-size: 16px; line-height: 25px; padding: 15px 7.5vw; background-position: center right 7.5vw;}
}
@media (max-width:350px) {
.banner .titre_main br          {display: none;}
}




.intro                          { display: grid; grid-template-columns: 1fr 440px; gap: 80px; margin: 80px 0; align-items: center;}
.intro .titre_main              { font-size: 40px; line-height: 50px;}

.intro_list                     { padding: 50px 60px 70px; background-color: #eee;}
.ul_list  li                    { color: #113C4B; padding-left: 35px; background: url(../images/list_blue.svg) no-repeat center left; font-size: 18px; line-height: 45px;}
.intro_list .sous_titre         { font-size: 35px; line-height: 45px; color: #113C4B;}

@media (max-width:1200px) {
.intro                          { gap: 50px; grid-template-columns: 1fr 380px;}
.intro .titre_main              { font-size: 32px; line-height: 42px;}
.intro_list .sous_titre         { font-size: 30px; line-height: 40px;}  
.intro_list                     { padding: 50px 40px 60px;}
}
@media (max-width:1000px) {
.intro                          { grid-template-columns: 1fr; gap: 30px; margin: 50px 0;}
.intro_list                     { padding: 40px;}
}
@media (max-width:600px) {
.intro .titre_main,
.intro .chapo,
.intro .texte_more               { display: none;}
.intro                           { gap: 10px; margin: 30px 0 50px;}
.intro_list .sous_titre          { font-size: 18px; line-height: 30px; margin-bottom: 5px;}
.ul_list  li                     { font-size: 13px; line-height: 35px;}
.intro_list                      { padding: 30px 40px ;}
}



/***** services *****/
.services                               { position: relative; display: grid; grid-template-columns: 1fr 1fr 1fr; grid-gap: 50px; margin: 110px 0;}
.services .item                         { position: relative; padding: 40px; background: #fff;}
.services .titre_icone                  { display: grid; grid-template-columns: auto 1fr; grid-gap: 25px; align-items: center; margin-bottom: 20px;}
.services .titre_icone img              { width: auto; height: 70px; display: block;}
.services .sous_titre                   { margin: 0; font-size: 25px; line-height: 35px; color: #000;}
.services .link                   		{ margin: 25px 0 0 0;}
.services .photo                        { grid-row: span 2; background: none; padding: 0;}
.services .photo img                    { width: 100%; height: 70%; height: auto; object-fit: cover; display: block;}
.services .decouvre 				    { background: #d7534a; text-align: center; color: #fff; font-size: 25px; line-height: 35px; font-weight: 500;padding: 50px 90px; display: grid; align-content: center;}
.services .decouvre .link               { max-width: fit-content; margin: 25px auto 0; background-image: linear-gradient(to top, #ffffff 0% 50%, #113c4b 50% 100%); color: #d7534a;}

@media (min-width:1201px) {
.services .decouvre .link:hover         { color: #fff;}
}
@media (max-width:1600px) {
.services .decouvre                     { padding:50px 60px;}
.services .item                         { padding: 60px 50px;}
.services                               { gap: 30px;}
}
@media (max-width:1200px) {
.services                               { grid-template-columns: 1fr 1fr; grid-gap: 30px; margin: 80px 0;}
.services .photo img                    { height: 100%!important;}
.services .item                         { padding: 50px;}
}
@media (max-width:1000px) {
.services                               { grid-template-columns: 1fr; grid-gap: 20px; margin: 60px 0;}
.services .item                         { padding: 40px 50px;}
.services .photo img                    { max-height: 600px;}
.services .item br                      { display: none;}
}
@media (max-width:600px) {
.services                               { gap: 30px; margin: 40px 0;}
.services .item                         { background-color: transparent; padding: 0; margin-bottom: 10px;}
.services .photo img                    { max-height: 380px;}
.services .titre_icone img              { height: 60px;}
.services .titre_icone                  { gap: 20px;}
.services .sous_titre                   { font-size: 18px;}
.services .link                         { margin: 20px 0 0;}
.services .decouvre                     { display: block; margin: 10px 0 0;}
.services .decouvre_content             { background-color: #1e596a; padding: 30px 35px; font-size: 18px; line-height: 28px;}
.services .decouvre .link               { background: #d7534a; color: #fff; max-width: 100%; margin: 0;}
}
@media (max-width:500px) {
.services .photo img                    { max-height: 320px;}
}



.about                                  { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; margin: 140px 0 100px;}
.about .texte                           { background-color: #fff; display: grid; align-items: center; padding: 50px 80px; color: #333; position: relative; overflow: hidden;}
.about .link                            { margin-top: 20px; /* background-image: linear-gradient(to top, #ffffff 0% 50%, #113c4b 50% 100%); color: #d7534a;*/}
.about .photo img                       { display: block; width: 100%; object-fit: cover; height: 100%;}
.about .since                           { padding: 100px 200px 20px; background-color: #eee; position: absolute; top: -55px; right: -200px; transform: rotate(45deg); font-size: 18px; line-height: 25px; text-align: center; color: #113C4B;} 
.about .sous_titre                      { font-size: 40px; line-height: 50px; color: #333;}
@media (min-width:1200px) {
/*
.about .link:hover                     { color: #fff;}
*/
}
@media (max-width:1600px) {
.about .texte                           { padding: 50px;}
}

@media (max-width:1200px) {
.about                                  { margin: 80px 0; gap: 15px;}
.about .since                           { padding: 90px 200px 10px;top: -59px;right: -215px;font-size: 15px; line-height: 20px;}
.about .texte                           { padding: 30px 40px;}
}
@media (max-width:1000px) {
.about                                  { grid-template-columns: 1fr; gap: 20px;}
.about .texte                           { grid-area: 2; padding: 0; background-color: transparent; color: #000;}
.about .since                           { display: none;}
.about .link                            { background:#d7534a; color: #fff;}
.about .sous_titre                      { color: #000; font-size: 18px; line-height: 30px; margin-bottom: 10px;}
}
@media (max-width:600px) {
.about                                  { margin: 50px 0 10px;}
}



/* PARTENAIRES */
.partenaire_content .sous_titre     { font: 500 25px/35px "poppins"; margin-bottom: 30px; color: #000;}
.partenaire                     { display: grid; grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr; gap: 40px; margin-bottom: 120px;}
.partenaire .item               { background-color: #fff; height: auto;}
.partenaire .item img           { width: 100%; display: block; height: 100%;/* filter: invert(1); opacity: 0.8;*/}
@media (max-width:1200px) {
.partenaire                      { gap: 15px;}
}

@media (max-width:1000px) {
.partenaire                     { grid-template-columns: 1fr 1fr 1fr; gap: 15px; margin-bottom: 60px;}
.partenaire .item               { height: 120px; padding: 15px;}

}
@media (max-width:600px) {
.partenaire .item               { height: 85px; }
.partenaire_content .sous_titre  { font-size: 18px; line-height: 28px; margin-bottom: 20px;}
.partenaire                     { margin-bottom: 50px;}
}



.notes .item                    { background-color: #eeeeee; padding: 30px 40px 45px;}
.notes .name                    { font-weight: 500; margin-bottom: 5px;}
.notes .item p                  { font-style: italic;}
.notes .stars                   { display: block; margin-bottom: 10px;}
.notes .hide                    { display: none;}
.notes .hide					{ display: none;}
.notes .lire_plus,
.notes .lire_moins 				{ cursor: pointer;}
.notes .lire_plus.active		{ opacity: 0; cursor: default;}

@media (max-width:1400px) {
.notes .item                    { padding: 30px 25px 40px;}
}
@media (max-width:1280px) {
.notes .swiper-wrapper          { gap: 0; margin: 0; }
.notes .item                    { padding: 30px 30px 40px;}
}
@media (max-width:700px) {
.notes                          { margin: 50px 0; overflow: visible;}
.notes .swiper-wrapper          { width: auto; } 
.notes::before                  { content: ""; width: 4000px; left: -4000px; height: 100%; top: 0; z-index: 50; position: absolute; background-color: #fff;}
.notes .item                    { width: 380px;}
}
@media (max-width:500px) {
.notes .item                    { width: 300px;}
}