/***** fonts et reset *****/
@import url('https://fonts.googleapis.com/css2?family=Barlow:wght@400;500;600;700&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Abril+Fatface&display=swap');


body, ul, li, ol, form, h1, h2, h3, h4, h5, h6, div, p, span { padding:0; margin:0; border:0; -webkit-text-size-adjust: none; -moz-text-size-adjust: none; text-size-adjust: none;}
article, aside, dialog ,figcaption, figure, footer, header, hgroup, main, nav, section { display: block;}  
input, textarea						{ -webkit-appearance: none; -ms-appearance: none; appearance: none; -moz-appearance: none; -o-appearance: none; border-radius: 0;}
*          							{ outline: none;}
strong, b							{ font-weight: 700;}
ul									{ list-style-type: none;}
body								{ font: 400 15px/30px "Barlow"; color: #08233d; letter-spacing: 0.2px; background: #ffffff; position: relative;}
body.active_overflow				{ height: 100vh; overflow: hidden;}
a									{ text-decoration: none; color: #2d3e51; position: relative;}
img									{ border: none;}
main 								{ position: relative;}
#wrapper 							{ min-width: 320px; overflow: hidden; position: relative;}
#wrapper *							{ box-sizing: border-box;}
#footer 							{ position: relative; z-index: 15;}
.menunone, .equipenone              { display:none;}
.equipecontact                      { display:block;}

@media (max-width:600px) {
body								{ font: 400 13px/28px "Barlow";}
}

/***** scollbar *****/
::-webkit-scrollbar 				{ width: 8px; height: 8px; background-color: #2d3e51;}
::-webkit-scrollbar-thumb			{ background-color: #f57f20;}


/***** transition *****/
@media (min-width:1201px) {
.link, .slick-arrow, :before, :after, a, a span, .sub { transition: all 400ms ease-in-out;}
}

/***** class *****/
.wrapper 							{ width: 90vw; min-width: 1080px; max-width: 1200px; margin: 0 auto; position: relative;}
.clear								{ clear: both; display: block;}
.titre_main	 						{ font: 500 25px/32px "Barlow";letter-spacing: 0.4px;position: relative; margin-bottom: 20px;color: #f57f20;}
.sous_titre 						{ font: 500 20px/30px "Barlow"; color: #f57f20; margin-bottom: 20px; letter-spacing: 0.4px; position: relative; }
.chapo		 						{ font: 400 15px/30px "Barlow"; color: #08233d; }
.chapo span                         { display:block; margin-top:20px;}
.link 								{ font: 400 15px/50px "Barlow"; letter-spacing: 0.4px; height: 50px; border-radius:50px; display: inline-block; vertical-align: middle; color: #fff; padding: 0 30px; background: #f57f20; cursor: pointer; border:none; margin-top:10px;}
.link_plus							{ display: block; width: 60px; height: 60px; border-radius: 50%; background: url("../images/plus.svg") 50% no-repeat #f57f20;}
@media (min-width:1201px) {
.link:hover 						{ background: #08233d;}
.link_plus:hover					{ background-color: #f57f20;}
}
@media (max-width:1200px) {
.wrapper 							{ min-width: inherit;}
}
@media (max-width:1000px) {
.wrapper 							{ max-width: 750px;}
}
@media (max-width:600px) {
.link 								{ font: 400 13px/50px "Barlow"; letter-spacing: 0.2px; height: 50px; margin-top: 10px; width: 100%; text-align: center;}
.wrapper 							{ width: 85vw;}
.titre_main, .sous_titre	 		{ font-size: 16px; line-height: 28px; margin-bottom:13px;}
.chapo		 						{ font: 400 13px/28px "Barlow";color: #08233d;}
.chapo span                         { margin-top:10px;}
}

/***** header et menu *****/
.header 							{ width: 100%; font-size: 0; line-height: 0; text-align: right; position: fixed; left: 0; top: 0; letter-spacing: 0; transition: all 400ms ease-in-out; z-index: 100; }
.header .logo						{ width: 150px; position: absolute; left: 0; top: 65px; z-index: 100; transition: all 400ms ease-in-out;}
/*.top_page:before                      { content: ""; display: block; width: 482px; height: 421px; background: url("../images/bg.svg") left top no-repeat; position: absolute; top:550px; z-index:-1; left:0px; opacity:1; }*/
.header .logo img 					{ width: 100%; height: auto; display: block; transition: all 400ms ease-in-out 300ms;}
.header_nav 						{ position: relative; display: block;}

/* menu top */
.menu_top 							{ position: relative; margin-top:0px;}
.menu_top li          				{ display: inline-block; vertical-align: top; margin-left: 25px; position: relative;}
.menu_top li a        				{ font: 500 14px/50px "Barlow"; letter-spacing: 0.4px; height: 50px; color: #2d3e51; display: block;}
.menu_top li a.client  				{ font: 400 15px/48px "Barlow"; padding: 0 30px 0 60px; background: #f57f20; text-align: left; margin-left: 0px; color:#fff; border-radius:25px; }
.menu_top li a.client:before		{ width: 24px; height: 100%; background: url(../images/calendar.svg) 50% no-repeat; position: absolute; top: 0; left: 25px; content: "";}
.menu_top li.active a         		{ color:#f57f20;}
.menu_top li:after                  { width: 1px; height: 10px; background: #c4c4c4; position: absolute; top: 20px; left: -13px; content: ""; }
.menu_top li:first-child:after 		{ display: none;}

.menu_top .langue                   { background: #ffffff; color:#08233d; width: 40px; height: 40px; border-radius: 50%; text-align: center; line-height: 40px; margin-top: 5px; }    
.menu_top .langue.active            { background:#f5f5f5; color:#08233d; }    
.menu_top .cont_langue                        { margin:0 5px; }  
.menu_top .cont_langue:after                  { display: none; }  
.top_langue                         { margin-left:30px; float: right; text-align: left; }

/* menu */
.menu								{ position: relative; padding: 0; transition: all 400ms ease-in-out;} 
.menu>li							{ position: relative; display: inline-block; vertical-align: top; margin-left: 30px;}
.menu>li>a							{ font: 500 16px/68px "Barlow"; letter-spacing: 0.4px; height: 70px; display: block;}
.menu>li.active>a 		 			{ color: #f57f20;}
.menutel                            { font: 400 15px/48px "Barlow" !important; letter-spacing: 0.4px; height: 50px !important; border-radius:50px; display: inline-block; vertical-align: middle; color: #fff; padding: 0 30px; background: #f57f20; cursor: pointer; border:none; margin-top: 10px; }
    

@media (min-width:1201px) {
.menu_mobile,
.header .tel 						{ display: none;}
.header_nav .sub:after 				{ width: 10px; height: 10px; position: absolute; left: 50%; top: -5px; margin: 0 0 0 -5px; transform: rotate(45deg); background: #2d3e51; content: "";}
.menutel:hover                      { color:#ffffff!important;background: #08233d; }
/* hover */   
.menu_top>li:hover>a        		{ color: #f57f20;}
.menu_top li a.client:hover 		{ background: #2d3e51; color: #fff;}
.menu>li:hover>a        			{ color: #f57f20;}

.menu .menu_orange:hover a                   { color:#f57f20; }
.menu .menu_rouge:hover a                    { color:#e30613; }
.menu .menu_bleu:hover a                     { color:#0074bf; }
.menu .menu_vert:hover a                     { color:#00963f; }
.menu .menu_gris:hover a                     { color:#b2b2b2; }

.menu .menu_orange a.active                   { color:#f57f20; }
.menu .menu_rouge a.active                    { color:#e30613; }
.menu .menu_bleu a.active                     { color:#0074bf; }
.menu .menu_vert a.active                     { color:#00963f; }
.menu .menu_gris a.active                     { color:#b2b2b2; }
    
/* sticky */   
.sticky .header 					{ background: #fff; top: -50px; box-shadow: 0 0 30px 0 rgb(0 0 0 / 6%);}
.sticky .header .logo:before        { opacity: 0; }
/*.sticky .header:hover 				{ top: 0;}*/

.sticky .header .logo 				{ top: 65px; width: 145px;}

.sticky .menu  						{ padding: 0;}
.sticky .menu>li.active>a 			{ color: #f57f20;}
.sticky .menu li:hover .sub 		{ border-radius: 0 0 10px 10px;}

/* hover sticky */   
.sticky .menu>li:hover>a 			{ color:#f57f20; }
.sticky .menu .menu_orange:hover a  { color:#f57f20; }
.sticky .menu .menu_rouge:hover a   { color:#e30613; }
.sticky .menu .menu_bleu:hover a    { color:#0074bf; }
.sticky .menu .menu_vert:hover a    { color:#00963f; }
.sticky .menu .menu_gris:hover a    { color:#b2b2b2; }
    
.scrolling_top .header 				{ top: 0;}
/*.scrolling_top .header .logo		{ width: 220px; top: 15px;}*/

.sticky .header:hover .logo			{/* width: 220px;*/ top: 65px; transition: all 400ms ease-in-out;}
}

@media (max-width:1200px) {
.menu_mobile						{ width: 70px; height: 70px; display: inline-block; vertical-align: middle; cursor: pointer; position: relative; z-index: 105; margin: 5px -20px; transition: margin 400ms ease-in-out; float: right;}
.menu_mobile div					{ width: 30px; height: 2px; background: #000; position: absolute; right: 50%; top: 50%; margin: -1px -15px 0 0;}
.menu_mobile div:before				{ width: 100%; height: 2px; background: #000; position: absolute; right: 0; top: 8px; content: "";}
.menu_mobile div:after				{ width: 100%; height: 2px; background: #000; position: absolute; right: 0; top: -8px; content: "";}
.menu_mobile.active div				{ height: 0;}
.menu_mobile.active div:before		{ top: 0; transform: rotate(45deg);}
.menu_mobile.active div:after		{ top: 0; transform: rotate(-45deg);}
.header 							{ height: 80px; background: #fff; transition: height 400ms ease-in-out 400ms; box-shadow: 0 0 30px 0 rgb(0 0 0 / 6%);}
.header .wrapper    				{ width: 100%; padding: 0 5vw; max-width: none;}
.header .wrapper.animate			{ transition: none;}
.header .logo						{ left:5vw; width: 120px; height: 30px; top: 0; padding-top: 25px; z-index: 105;}    
.header .logo:before                { display:none; }
.header .tel_calendar    			{ display: inline-block; vertical-align: middle; font-size: 15px; line-height: 60px; height: 60px; width: 60px; border-radius: 50%; color: #fff; margin-right: 20px; margin-top:10px; float: right; background: url("../images/phone.svg") 50% 50% no-repeat #ffffff; position: relative; z-index: 105;}
.header_nav 	  					{ width: 100%; height: 100vh; position: fixed; right: 100%; top: 0; overflow-y: scroll; display: grid; align-items: start; grid-template-rows: auto auto 1fr; grid-gap: 40px; z-index: 100; padding: 120px 10vw 40px 10vw; transition: 0ms ease-in-out 400ms;}
.header_nav::-webkit-scrollbar		{ display: none;}

/* menu section */
.menu_section  						{ float: none; display: grid; grid-template-columns: 1fr 1fr 1fr; grid-gap: 20px; text-align: center; opacity: 0; transition: all 400ms ease-in-out 200ms;}
.menu_section li a        			{ font: 400 13px/50px "Barlow"; letter-spacing: 0.6px; height: 50px; padding: 0; border-radius: 8px; background: #081b25;}

/* menu top */
.menu_top 							{ margin: 0; grid-area: 3; text-align: center; display: grid; grid-template-columns: 1fr 1fr; grid-gap: 20px; margin-top: -10px; opacity: 0; transition: all 400ms ease-in-out 0ms;}
.menu_top li 						{ margin: 0;}
.menu_top li:after     				{ display: none;}
.menu_top li a        				{ font-size: 16px; line-height: 48px; height: 50px; border: 1px solid #eee; border-radius: 8px;}
.menu_top li a.client  				{ font-size: 16px; padding: 0 30px; background: #f57f20; margin: 0; display: block; border-radius: 8px; border: none; text-align: center;}
.menu_top li a.client:before		{ display: none;}

 .top_langue                         { margin-left:0px; margin-top:40px; }

/* menu */
.menu								{ text-align: left; opacity: 0; transition: all 400ms ease-in-out 100ms; padding:30px 0 0 0;} 
.menu>li							{ display: block; margin: 0;}
.menu>li>a							{ font-size: 18px; line-height: 48px; height: 50px;}
.menu>li.active>a 		 			{ color: #f57f20;}
.menu li i							{ width: 80px; height: 40px; display: block; margin-top: -50px; position: relative; z-index: 5; float: right; border-radius: 8px; background: #f57f20;}
.menu li i:after					{ width: 40px; height: 40px; background: url(../images/arrow-right.svg) 50% no-repeat; transform: rotate(90deg); position: absolute; left: 20px; top: 0; content: "";}
.menu li i.active:after 			{ transform: rotate(270deg);}

    
    
    
/* sub */
.menu .sub							{ opacity: 1; visibility: visible; width: 100%; position: static; margin: 30px 0; background: #081b25; padding: 30px 40px; border-radius: 8px; display: none;}

/* active menu mobile */
.header.active 						{ height: 100vh; transition-delay: 0ms;}
.header.active .header_nav 			{ right: 0; transition-delay: 0ms;}
.header.active .menu_section		{ opacity: 1; transition-delay: 300ms;}
.header.active .menu_top			{ opacity: 1; transition-delay: 700ms;}
.header.active .menu				{ opacity: 1; transform: translateY(0); transition-delay: 500ms; padding-top:15px;}
.menutel                            { display: none !important; }
}

@media (max-width:1000px) {
.header_nav 	  					{ padding: 100px 5vw 40px 5vw; grid-gap:0px;}
/* menu top */
.menu_top 							{ grid-template-columns: 1fr 1fr;}
/* sub */
.menu .sub							{ column-count: inherit; column-gap: normal;}
.menu								{ padding:30px 0 ;} 
}

@media (max-width:600px) {
.header .wrapper    				{ padding-right: 7.5vw;} 
.header .wrapper.animate			{ transition: none;}
.header .tel 						{ font-size: 0; width: 40px; margin-right: 5vw; padding: 0; background-position: 50% 50%;}
.header_nav 	  					{ padding: 0px 7.5vw 100px 7.5vw; grid-gap: 10px; border-top:100px solid #fff;}

/* menu section */
.menu_section  						{ grid-gap: 10px;}
.menu_section li a        			{ font-size: 11px; line-height: 40px; height: 40px; border-radius: 5px;}

/* menu top */
.menu_top 							{ grid-template-columns: 1fr; grid-gap: 10px;}
.menu_top li:last-child 			{ grid-column: spa, 2;}

.menu_top li a        				{ font-size: 14px; line-height: 38px; height: 40px; border-radius: 5px;}
.menu_top li a.client  				{ font-size: 14px; line-height: 48px; height: 50px; border-radius: 5px;}
.menu_top li a.client:before		{ left: 25px;}

/* menu */
.menu								{ padding: 0; text-align: left; opacity: 0; transition: all 400ms ease-in-out 100ms;} 

.menu>li>a							{ font-size: 18px; line-height: 48px; height: 50px;}
.menu li i							{ width: 70px; margin-top: -45px; border-radius: 5px;}
.menu li i:after					{ left: 15px;}

/* sub */
.menu .sub							{ margin: 20px 0; padding: 15px 25px; border-radius: 5px;}
.menu .sub li a						{ font-size: 12px; line-height: 36px; height: 36px;}
}



/***** blc_fb *****/
.blc_fb                              { padding: 0px;  margin:100px auto 0; z-index: 1;}
.blc_fb_link                         { width: 100%; margin: auto; display: block; text-align: center; font: 600 16px/30px "Barlow"; padding: 30px 40px; letter-spacing: 0.5px; height: auto; border-radius: 0px; }
.blc_fb .btnplay                     { background: url(../images/facebook_btn.svg) center left no-repeat; height: 50px; line-height: 50px; padding-left: 60px; display: block; width: 400px; margin: auto; font: 400 20px/50px "Barlow"; }
.blc_fb .btnplay::after              { content: ""; background: url("../images/arrow.svg") 50% 50% no-repeat; display: block; position: absolute; /* right: 0px; */ top: 0px; width: 50px; height: 50px; border-radius: 50%; margin: 30px 0px 0px 350px; }

@media (max-width:1000px) { 
.blc_fb .btnplay::after              { display:none;}
}


@media (max-width:600px) {
.blc_fb                              { padding: 0px;  margin:60px auto 0; z-index: 1;}
.blc_fb_link                         { width: 100%; margin: auto; display: block; text-align: left; font: 600 14px/30px "Barlow"; padding: 30px 20px; letter-spacing: 0.5px; height: auto; border-radius: 0px; }
.blc_fb .btnplay                     { background: url(../images/facebook_btn.svg) center left no-repeat; height: 50px; line-height: 50px; padding-left: 60px; display: block; width: 95%; margin: auto; font: 400 15px/50px "Barlow"; }
.blc_fb .btnplay span                { display: none; }    
}

/***** footer*****/
.footer								{ width: 100%; position: relative; padding-top: 90px; background:url(../images/bgfooter.svg) right center no-repeat #08233d; color: #fff; font-size: 0;}
.footer .logo						{ font:400 25px/30px "Barlow"; text-transform:uppercase; ;color:#fff;height: auto; display: block; margin: 0 0 20px 0;}
.footer .logo span					{ font:400 15px/30px "Barlow"; }
.footer .bloc_footer 				{ display: inline-block; vertical-align: top; margin-right: 90px; line-height: 30px;}
.footer .bloc_footer .titre_footer 	{ color: #f57f20; font-size: 20px; letter-spacing: 0.2px;margin-bottom: 20px;}
.footer .bloc_footer p				{ font-size: 15px ;letter-spacing: 0.2px;margin-bottom: 20px;}
.footer .bloc_footer p b			{ display: block; text-transform: uppercase; font: 400 20px/30px "Barlow"; color:#f57f20; padding-bottom: 5px;}
.footer .bloc_footer p a			{ color: #fff !important;}
.footer .bloc_footer p span			{ display: inline-block;}
.footer .last   				    { }
.footer .last li 				    { font-size: 15px; line-height: 28px; margin-bottom: 10px; padding-left: 30px; background: url("../images/list.svg") left 8px no-repeat}
.footer .last ul li a 		        { color: #fff;}
.footer .bloc_footer.license        { background: #020f16; padding:35px 40px; border-radius: 10px;margin: 15px 0 0 0; }
.footer .bloc_footer.license li,
.footer .bloc_footer.license li a   { background: none;padding-left: 0;font: 400 13px/26px "Barlow";letter-spacing: 0.6px;color: #f57f20;margin-top: 0; }
.footer .bloc_footer.license ul     { margin-top: 5px; }
.footer .btn_phone                    { padding:0 0 0 30px; display: block; background: url("../images/phone.svg") 0px 50% no-repeat; height: 30px; line-height: 30px; margin-bottom: 20px; }
.footer .btn_telfix                   { padding:0 0 0 30px; display: block; background: url("../images/telfix.svg") 0px 50% no-repeat; height: 30px; line-height: 30px; margin-bottom: 20px; }
.footer .btn_enveloppe                { padding:0 0 0 30px; display: block; background: url("../images/enveloppe.svg") 0px 50% no-repeat; height: 30px; line-height: 30px; margin-bottom: 20px; }
.footer	.rs							{ position: absolute; right: 0; top:0;}
.footer	.rs a						{ width: 60px; height: 60px; display: inline-block; vertical-align: top; border-radius: 50%; align-items: center; background: #f57f20; margin-left:10px;}
.footer	.rs a:first-child    		{ margin-left:0px;}					
.footer	.rs .scroll  img            { filter: invert(100%); left:50%; top:50%; transform: translate(-50%,-50%); position:absolute;}
.footer	.rs .facebook  img          { filter: invert(100%); left:50%; top:50%; transform: translate(-50%,-50%); position:absolute;}
.footer	.rs .instagram  img         { filter: invert(100%); left:50%; top:50%; transform: translate(-50%,-50%); position:absolute;}
.footer_bottom   					{ padding: 20px 0; line-height: 0; margin-top: 60px;}
.footer_bottom li 					{ display: inline-block; font-size: 11px; line-height: 30px; margin-right: 25px; letter-spacing: 0.6px; position: relative;}
.footer_bottom li a 				{ color: #fff;}
.footer_bottom li:after				{ width: 1px; height: 10px; content: ""; position: absolute; right: -12px; top: 10px; background: #f57f20;}
.footer_bottom li:last-child:after 	{ display: none;}
.toponweb							{ display: block; z-index: 85; position: absolute; right: 0; bottom: -65px; transition: bottom 400ms ease-in-out;}
.toponweb span						{ width: auto; display: block; padding: 20px; background: linear-gradient(to left, #f57f20 0%, #f57f20 50%, #020f16 50%, #020f16 100%); background-size: 200% 100%; background-position: 100% 0;}
.toponweb img						{ width: 70px; height: auto; display: block; margin: 0 auto;}
.toponweb.show						{ bottom: 0;}

@media (min-width:1201px) {
.footer .bloc_footer p a:hover,
.footer .bloc_footer li a:hover,
.footer_bottom li a:hover			{ color: #f57f20;}
.footer	.rs .instagram:hover			{ background-color: #08233d;}
.footer	.rs .facebook:hover			{ background-color: #08233d;}
.footer	.rs .scroll:hover			{ background-color: #08233d;}
.toponweb:hover span				{ background-position: 0 0;}
.footer .bloc_footer link:hover  { color: #fff; }
.footer .bloc_footer.license li a:hover{ color: #ffffff; }
.footer .bloc_footer .tel:hover			{ background:url("../images/tel.svg") 35px 23px no-repeat #020f16; padding-left: 70px;}
}

@media (max-width:1200px) {
.footer .bloc_footer 				{ margin-right: 80px;}
}

@media (max-width:1000px) {
.footer								{ padding-top: 75px; }
.footer .bloc_footer 				{ display: block; margin: 40px 0 0;}
.footer_bottom   					{ margin-top: 80px;}
.footer .bloc_footer.license        { margin: 30px 0 0;width: 100%;max-width: 250px;text-align: left; }
.footer .bloc_footer.license li     { white-space: nowrap; }
}

@media (max-width:600px) {
.footer .bloc_footer .tel			{ background:url("../images/tel.svg") 35px 17px no-repeat #f57f20; padding-left: 70px;}
.footer .last   				    { display:none; }
}

@media (max-width:600px) {
.footer								{ padding-top: 60px;text-align: left;}
.footer .logo						{ margin-bottom: 0; font-size: 18px;  line-height: 28px;}
.footer .bloc_footer 				{ margin: 25px 0 0 0;}
.footer .bloc_footer p              { font: 400 12px/24px "Barlow"; }
.footer .bloc_footer p:first-child  { margin-top: 15px; }
.footer .bloc_footer p b			{ font-size: 18px; line-height: 20px;}
.footer .bloc_footer.license        { margin: 30px auto 0;}
.footer	.rs							{ position: static; margin-top: 40px; }
.footer	.rs a						{ width: 50px; height: 50px;}
.footer	.rs .scroll  img            { filter: invert(100%); position:absolute;}
.footer	.rs .facebook  img          { filter: invert(100%); position:absolute;}
.footer	.rs .instagram  img         { filter: invert(100%); position:absolute;}
.footer_bottom 	 					{ text-align: left; margin-top: 35px; padding: 0 0 30px 0;}
.footer_bottom li 					{ display: block; margin-right: 0; line-height: 30px;}
.footer_bottom li:after				{ display: none;}
.toponweb							{ position: absolute; }
}

.ancre {
    position: absolute;
    left: 0;
    top: -140px;
}