/***** top_page *****/
.top_page                           { padding: 160px 0 80px; background: var(--beige);}
.top_page .sous_titre               { margin-bottom: 15px;  font-size: 48px; line-height: 58px;}
.top_page .titre                    { margin-bottom: 10px;}
.top_grid                           { display: grid; grid-template-columns: 1fr 1fr;  margin-bottom: 50px; align-items: center;}
.top_grid .photo                    { position: relative;}
.top_grid .photo::after             { content: url(../images/deco_left.svg);position: absolute; left: -60px; bottom: -60px;}
.top_grid .photo img                { position: relative; display: block; border-radius: 90px; width: 100%; object-fit: cover;}

.top_grid .texte                    { position: relative; padding-right: 120px;}
.top_grid .breadcrumb               { position: absolute; top: 0; left: 0;}
@media (max-width:1200px) { 
.top_page                           { padding: 120px 0 80px;}
.top_grid .texte                    { padding-right: 60px;}
}
@media (max-width:1000px) { 
.top_page                           { padding: 100px 0 60px;}    
.top_page .sous_titre               { font-size: 36px; line-height: 46px;}
.top_grid                           { grid-template-columns: 1fr; gap: 30px; margin: 0;}
.top_grid .photo img                { border-radius: 20px; max-height: 450px; object-position: top;}
.top_grid .photo::after             { display: none;}
.top_grid .texte                    { padding-right: 0;}
} 
@media (max-width:600px)            {
.top_page                           { padding: 100px 0 40px;}    
.top_page .sous_titre               { font-size: 25px; line-height: 30px;}
.top_grid .photo img                { border-radius: 20px; max-height: 300px; object-position: top;}
}


/***** breadcrumb *****/
.breadcrumb							{ line-height: 0; position: relative; padding:0 0 50px;}
.breadcrumb a                       { color: var(--black);}
.breadcrumb a.active                { color: var(--second-color);}
.breadcrumb li 						{ display: inline-block; font-size: 16px; line-height: 30px; letter-spacing: 0.2px; margin-right: 40px; position: relative;}
.breadcrumb li:after				{ width: 1px; height: 12px; position: absolute; right: -19.5px; top: 9px; background: var(--black); content: "";}
.breadcrumb li:last-child:after 	{ display: none;}

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

/***** page content *****/
.page_content 								{ position: relative;}
.page_content .ul_list a, 
.page_content p a							{ border-bottom: 1px solid transparent; padding-bottom: 2px; color: var(--second-color);}

.ul_list                                    { margin: 15px 0;}

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


.assur                              { position: relative; margin: 90px 0;}
.assur_grid                         { position: relative; display: grid; grid-template-columns: 1fr 1fr; gap: 20px  80px; margin-top: 20px;}
.assur_grid .item                   { display: grid; grid-template-columns: 35px auto; gap: 20px; padding: 15px 80px 15px 30px; background: url(../images/arrow_down.svg) no-repeat right 30px top 8px var(--beige); border-radius: 50px; align-items: center; font-size: 17px; font-weight: 600; color: var(--main-color);} 
.assur_grid .item img               { display: block; width: 100%; object-fit: cover;}

@media (min-width:1200px) {
.assur_grid .item:hover             { color: var(--second-color);}
}

@media (max-width:1200px) {
.assur_grid                         { gap: 20px 30px;}
}
@media (max-width:1000px) {
.assur                              { margin: 50px 0;}
.assur_grid                         { gap: 10px 20px; }
.assur_grid .item                   { padding: 10px 60px 10px 20px; border-radius: 20px; font-size: 16px; line-height: 24px; background-size: 40px; background-position: center right 20px; min-height: 70px; grid-template-columns: 25px auto; gap: 15px;}
}
@media (max-width:768px) {
.assur_grid                         { grid-template-columns: 1fr;}
}

@media (max-width:600px) {
.assur                              { margin: 40px 0;}
}
.option                             { position: relative; display: grid; grid-template-columns: 360px auto; background-color: var(--beige); align-items: center; border-radius: 40px;}
.option::after                      { content: url(../images/deco_right.svg); position: absolute; right: -60px; bottom: -70px;}
.option .image                      { margin-top: -50px; height: calc(100% + 50px);}
.option .image img                  { display: block; border-radius: 40px; width: 100%; object-fit: cover; height: 100%;}
.option .texte                      { padding: 40px 30px 40px 70px;}
.option .titre                      { margin-bottom: 20px; color: var(--main-color);}
.option .ul_list                    { display: grid; grid-template-columns: 1fr  1fr; margin-top: 15px;}

@media (max-width:1200px) {
.option                             { grid-template-columns: 250px auto;}
.option .texte                      { padding: 30px;}
.option::after                      { transform: scale(0.8); right: -40px;}
}

@media (max-width:1000px) {
.option                             { grid-template-columns: 1fr; margin: 50px 0; border-radius: 20px;}
.option .image img                  { height: auto; border-radius: 20px 20px 0 0; max-height: 450px; object-position: center;}
.option .image                      { margin-top: 0; height:auto}
.option::after                      { display: none;}
.option .titre                      { margin-bottom: 10px;}
.option .ul_list                    { margin-top: 5px;}
}

@media (max-width:768px) {
.option .ul_list                    { grid-template-columns: 1fr;}
}

@media (max-width:600px) {
.option .texte                      { padding: 20px 25px 15px;}
}

.bloc_quote                         { position: relative; font: 400 32px/38px "Fraunces"; text-align: center; margin-bottom: 100px; color: var(--white); background: url(../images/quote.svg) no-repeat center top; padding-top: 60px;}
.bloc_quote .titre                  { margin-top: 20px; display: block;}

/***** bloc texte *****/
.bloc_texte							{ margin: 80px auto; position: relative;}
.bloc_texte p                       { margin-bottom: 15px;}
.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;}
.bloc_quote                         { font-size: 24px; line-height: 30px; margin-bottom: 60px;}
}
@media (max-width:600px) { 
.bloc_texte							{ margin: 40px 0;}
.bloc_quote                         { margin-bottom: 40px; background-size: 30px; padding-top: 50px;}
}

.equipe                             { display: grid; grid-template-columns: 1fr 1fr 1fr 1fr;gap: 20px; margin-top: 30px;}
.equipe .item                       { position: relative; }
.equipe .item img                   { display: block; width: 100%; object-fit: cover; border-radius: 40px ; min-height: 350px;}

.equipe .detail                     { position: absolute; bottom: 20px; background: var(--main-color); color: var(--white); display: block; margin: 0 20px; border-radius: 20px; padding: 20px; font-size: 15px; line-height: 20px; width: calc(100% - 40px);}
.equipe .item .job                  { transition: all ease-in-out 400ms; color: var(--white);}
@media (min-width:1200px) {
.equipe .item:hover .detail           { color: var(--second-color); background-color: var(--white);}
.equipe .item:hover .job            { color: var(--black);}
}

@media (max-width:1200px) {
.equipe .detail                     { padding: 20px 15px;}
}
.equipe .item img                   { min-height: 250px;}
@media (min-width:1000px) {
.equipe .item:nth-child(5)          { grid-area: 2 / 2 / 3 / 3; }
.equipe .item:nth-child(6)          { grid-area: 2 / 3 / 3 / 4; }
}

@media (max-width:1000px) {
.equipe                             { grid-template-columns: 1fr 1fr 1fr; gap: 10px;}
.equipe .detail                     { margin: 0 10px; width: calc(100% - 20px); bottom: 10px; border-radius: 10px; padding: 15px 10px;}
.equipe .item img                   { border-radius: 20px;}
}

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

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


.photo img                          { display: block; width: 100%; object-fit: cover;}


.photo_texte                        { position: relative; display: grid; grid-template-columns: 1fr 1fr; align-items: center; margin: 90px 0;}
.photo_texte .photo img             { border-radius: 40px;}
.photo_texte .texte                 { padding-left: 70px;}
.photo_texte.reverse .texte         { grid-area: 1/1; padding-left: 0; padding-right: 70px;}
.photo_texte.reverse .photo         { grid-area: 1/2;}

@media (max-width:1200px) {
.photo_texte .texte                   { padding-left: 45px;}
.photo_texte.reverse .texte           { padding-right: 45px;}
}

@media (max-width:1000px) {
.photo_texte                        { grid-template-columns: 1fr; gap: 30px; margin: 50px 0;}
.photo_texte .photo img             { border-radius: 20px;} 
.photo_texte.reverse .photo         { grid-area: 1;}
.photo_texte .texte                 { padding: 0;}
.photo_texte.reverse .texte         { grid-area: 2;padding-right: 0px;}
.photo_texte .photo img 	        { border-radius: 20px; height: 400px;}
}

.two_option                         { display: grid; grid-template-columns: 1fr 1fr; gap: 50px; margin: 40px 0 0;}
.two_option .item                   { position: relative; display: grid; grid-template-columns: 215px auto; gap: 40px; background-color: var(--beige); border-radius: 40px; align-items: center; color: var(--black); }
.two_option .item:after             { content: url(../images/button_arrow.svg); position: absolute; right: -10px; top: -10px;}
.two_option .photo                  { position: relative; border-radius: 40px; overflow: hidden;}
.two_option .titre                  { color: var(--main-color); transition: all ease-in-out 400ms;}
.two_option .photo::before          { content:""; background-color: rgba(15, 48, 122, 0.54); width: 100%; height: 100%; position: absolute; top: 0; left: 0;}
.two_option .detail                 { padding: 30px 15px 30px 0;}
@media (min-width:1200px) {
.two_option .item:hover .titre      { color: var(--second-color);}
.two_option .item:hover .photo::before { opacity: 0;}

}

@media (max-width:1200px) {
.two_option .item                   { grid-template-columns: 185px auto; gap: 20px; }
}
@media (max-width:1000px) {
.two_option                         { grid-template-columns: 1fr; gap: 15px; margin-top: 20px; padding-bottom: 20px;}
.two_option .photo                  { border-radius: 20px; height: 100%;}
.two_option .item                   { border-radius: 20px;}
.two_option img                     {  height: 100%;}
}
@media (max-width:600px) {
.two_option .item                   { grid-template-columns: 150px auto;}
}
@media (max-width:450px) {
.two_option .item                   { grid-template-columns: 1fr;}
.two_option img                     { height: auto;}
.two_option .photo                  { height: 200px;}
.two_option .detail                 { padding: 0 20px 20px;}
}


.choix                              { display: grid; grid-template-columns: 535px auto; gap: 60px; color: var(--white); margin:50px 0 100px;}
.choix .sous_titre                  { color: var(--second-color);}
.choix .btn_titre                   { font: 600 20px/24px "Syne"; background-color: var(--main-color); border-radius: 50px; writing-mode: vertical-rl; text-orientation: sideways-right; color: var(--second-color); text-align: center; transform: rotate(180deg); display: grid; align-items: center; justify-content: center;}

.choix_table                        { display: flex; gap: 10px;}
.choix_table .item                  { display: grid; width: 14%;}
.choix_table .item .choix_plus      { display: none;}
.choix_table .item.active           { width: 70%;}
.choix_table .item.active .btn_titre { display: none;}
.choix_table .item.active .choix_plus{ display: block;}
.choix_plus                         { position: relative; display: grid; align-content: center; border-radius: 40px;  background:  url(../images/choix_1.webp) no-repeat center; padding: 70px 50px; z-index: 20; overflow: hidden; background-size: cover;}
.choix .item .choix_plus:before         { content:"";  width: 100%; height: 100%; z-index: -1; background: rgba(15, 48, 122, 0.91); position: absolute; left: 0; top:0}
.choix .item_2 .choix_plus              { background-image: url(../images/choix_2.webp);}
.choix .item_3 .choix_plus              { background-image: url(../images/choix_3.webp);}

@media (max-width:1400px) {
.choix                                  { grid-template-columns: 400px auto;}
}
@media (max-width:1200px) {
.choix                                  { gap: 30px;}
.choix_table .item .choix_plus          { padding: 30px ;}
}

@media (max-width:1000px) {
.choix                                  { grid-template-columns: 1fr; margin: 10px 0 60px;}
.choix_plus                             { border-radius: 20px;}
.choix .btn_titre                       { border-radius: 20px; font-size: 16px; }
}

@media (max-width:600px) {
.choix_table                        { display: grid;}
.choix_table .item                  { width: 100%;}
.choix_table .item .choix_plus      { display: block;}
.choix_table .item.active           { width: 100%;}
.choix_table .item .btn_titre       { display: none;}
.choix_table .item.active .choix_plus{ display: block;}
}


.sticky_scroll                        { position: fixed; top: 200px; right: 30px; z-index: 300;}
.sticky_scroll a                        { width: 70px; height: 70px; border-radius: 50%; display: grid; justify-content: center; align-content: center; background-color: var(--beige); margin-bottom: 10px;}

@media (max-width:1300px) {
.sticky_scroll                        { position: fixed; top: 200px; right: 10px; z-index: 300;}
}
@media (max-width:1200px) {
.sticky_scroll                        { display: none;}
}



#partenaires .listing_partenaires     { display: flex; gap: 25px; flex-wrap: wrap; }
#partenaires .listing_partenaires .item    { background-color: var(--white); border: 2px solid var(--beige); width: 135px; height: 135px; }
#partenaires .listing_partenaires .item img  { width: 100%; height: auto; }


