/* CSS Document */
html {
    
}
body { font-family: 'Poppins', Arial; font-size:16px; 
 }

* {
  scrollbar-color: #6a80d2 #1A1047;
  scrollbar-width: thin;
}

::-webkit-scrollbar {
  width: 20px;
}

::-webkit-scrollbar-track {
  background-color: #e4e4e4;
  border-radius: 100px;
}

::-webkit-scrollbar-thumb {
  border-radius: 100px;
  border: 5px solid transparent;
  background-clip: content-box;
  background-color: #8070d4;
}

:root {
	--color-dark1: #1A1047;
	--color-hl1: #AE499E;
	--color-hl2: #5CC1C8;
	--color-hl3: #80ED99; 
	--color-but1: #1313FF; 
	--main-color1: #3850A8;
	
	--color-link1: #0032D6;
	--color-link2: #5A70CC;
	--color-light1: #C5EBFF;
	--color-light2: #DFE4FB;
	--color-light3: #7A8FE8;
	--color-light4: #EDF0FD;
	
	--color-alert1: #EC0909;
	
	--color-projet-platinium: #ECFAFB;
	--color-projet-diamond: #F1E0F7;
	--color-projet-gold: #FEFFE9;
	--color-projet-silver: #ECECEC;
	
	--color-projet-bdr-platinium: #3850A8;
	--color-projet-bdr-diamond: #741A96;
	--color-projet-bdr-gold: #AA7508;
	--color-projet-bdr-silver: #000000;
}

.hidden { display:none; }

body { background-image:url(/img/bg-login1.jpg); background-position:top center; background-repeat:no-repeat; margin:0; }
body.body-moncompte, 
body.body-services { background-image:none; }
body.logout {
	background-color:#1A1047;
	background-image:url(/img/bg-logout2.png);
	background-position:top center;
	background-repeat:no-repeat;
}

.wrap { max-width:1820px; margin-left:auto; margin-right:auto; }

.wrap-cont1 { max-width:1235px; margin-left:auto; margin-right:auto; }

input, select, textarea {
	width:100%;
	border:1px solid #707070;
	font-size:16px;
	border-radius:10px;
	-webkit-box-shadow: 0px 4px 10px 0px rgba(0,0,0,0.15); 
	box-shadow: 0px 4px 10px 0px rgba(0,0,0,0.15);
	font-family: 'Poppins', Arial;
	background-color:#FFF;
}
form { margin:0; padding:0; }

#projets-filtrer-profil input:not([type='checkbox']) { box-shadow:none; font-size:18px; padding-left:10px; width:auto; background-color:var(--color-light2); color:var(--main-color1); border:0; width:140px; pointer-events:none; }
input[type="checkbox"], 
input[type="radio"] { width:auto; box-shadow:none; }
input[type="submit"] { background-color:var(--color-but1); color:#FFF; border-radius:7px; cursor:pointer; }

a { text-decoration:none; color:var(--color-link1); }
a:hover { text-decoration:underline; }
.ui-dialog .ui-dialog-buttonpane button, 
a.but, input.but { display:inline-block; cursor:pointer; background:#FFF; color:var(--main-color1); border-radius:9px; padding:12px 22px; font-size:20px; transition:opacity 300ms ease; opacity:1; }
a.but.but-small, input.but-small { padding:12px 18px; }
a.but.but-mini, input.but-mini { padding:8px 16px !important; }
a.but.but-rikiki, input.but-rikiki { padding:6px 16px !important; font-size:16px; }
a.but:hover, input[type="submit"]:hover { text-decoration:none; opacity:.8; }
a.but.but-cart { background-color:var(--color-hl2); padding:10px 15px 10px 10px; color:#FFF; justify-content:center; display:flex; gap:5px; }
a.but.but-cart:hover { color:#FFF; }
a.but.but-delete { border-radius:13px; background-color:var(--color-alert1); padding:10px 10px 10px 10px; color:#FFF; justify-content:center; display:flex; gap:5px; width:45px; }
a.but.but-delete img { width:15px; }
a.but.but-delete:hover { color:#FFF; }
a.but.but-edit { border-radius:13px; background-color:var(--color-light2); padding:10px 10px 10px 10px; color:#FFF; justify-content:center; display:flex; gap:5px; width:45px; }
a.but.but-edit img { width:15px; }
a.but.but-edit:hover { color:#FFF; }


a.but.but-share { background-color:var(--color-light2); padding:10px 10px 10px 10px; border:1px solid var(--main-color1); }

a.but.but-submit { cursor:pointer; background-color:var(--color-hl1); color:#FFF; font-size:22px; text-align:center; }
a.but.but-submit2 { cursor:pointer; background-color:var(--color-hl3); color:#000; font-size:22px; text-align:center; }
.ui-dialog .ui-dialog-buttonpane button, 
a.but.but-fill, input.but-fill { background-color:var(--main-color1); color:#FFF; }
a.but.but-border { background-color:none; border:1px solid var(--main-color1); color:var(--main-color1); }
a.but-dlprojet { color:#FFF; font-weight:bold; border:2px solid #FFF; background-color:#70b700; animation: smoothBounce 2s ease-in-out infinite; }

.ta-center, 
h4.ta-center { text-align:center; }

.d-none { display:none; }

body.logout .logo { margin-top:60px; }
form label { display:block; font-size:27px; margin-bottom:10px; }
form input { font-size:27px; padding:20px 25px; }

header .overhead { 
	height:100px; background-color:var(--main-color1); display:flex;
}
header .overhead .wrap { width:100%; }
header .overhead .wrap ul { margin:0; padding:0; list-style: none; width:100%; display:flex; height:100%; align-items:center; }
header .overhead .wrap ul li { flex:6; color:#FFF; display:flex; font-size:20px; }
header .overhead .wrap ul li:nth-child(1) { margin-left:20px; }
header .overhead .wrap ul li:last-child { margin-right:20px; }
header .overhead .wrap ul li.overhead-solde, 
header .overhead .wrap ul li.overhead-validite { flex:8; }
header .overhead .wrap ul li.overhead-quit { flex:1; max-width:55px; justify-content:end; }
header .overhead .wrap ul li.overhead-lang { flex:1; max-width:55px; justify-content:end; }
header .overhead .wrap ul li.overhead-lang a { color:#FFF; }
header .overhead .wrap ul li.overhead-quit img { width:40px; height:40px; }
header .overhead .wrap ul li > div:nth-child(2) { padding-left:40px; }
header .overhead .wrap ul li p { margin:0; padding:0; }
header .overhead .wrap ul li p span { color:var(--color-light1); line-height:1.1em; }
header .overhead .wrap ul li.with-ico { padding-left:70px; position:relative; background-repeat:no-repeat; }
header .overhead .wrap ul li.with-ico::before { content:''; width:40px; height:38px; position:absolute; left:0; top:50%; margin-top:-20px; background-size:contain; background-position:center center; background-repeat:no-repeat; }

header .overhead .wrap ul li.overhead-user::before { background-image:url(/img/ico-user.svg?v=2); }
header .overhead .wrap ul li.overhead-status::before { background-image:url(/img/ico-eye.svg); }
header .overhead .wrap ul li.overhead-solde::before { background-image:url(/img/ico-card.svg); }
header .overhead .wrap ul li.overhead-validite::before { background-image:url(/img/ico-calendar.svg); }
header .overhead .wrap ul li.overhead-quit::before { background-image:url(/img/ico-quit.svg); }

header .overhead .wrap ul li a.but2 { border-radius:15px; background-color:var(--color-light2); padding:14px 24px; color:var(--color-link2); }

header .header {
	 background-color:#FFF; 
}
header .header .wrap { height:122px; display:flex; align-items:center; width:100%; }
header .header .wrap ul.main-nav { padding-left:110px; padding-right:110px; display:flex; justify-content:space-between; width:100%; list-style:none;  align-items:center; }
header .header .wrap ul.main-nav li.close { display:none; }
header .header .wrap ul.main-nav li a { font-size:20px; display:flex; justify-content: center; text-align:center; flex-direction:column; align-items:center; color:var(--main-color1); position:relative; }
header .header .wrap ul.main-nav li.sel a, 
header .header .wrap ul.main-nav li:hover a{ color:#000; }
header .header .wrap ul.main-nav li a svg { width:38px; height:36px; object-fit:contain; }
header .header .wrap ul.main-nav li.sel a svg path, 
header .header .wrap ul.main-nav li:hover a svg path { fill:#000; }
header .header .wrap ul.main-nav li.sel a svg g, 
header .header .wrap ul.main-nav li:hover a svg g { stroke:#000; }
header .header .wrap ul.main-nav li a:hover { text-decoration: none; }
header .header .wrap ul.main-nav li a span.menu_panier_nb { border-radius:30px; position:absolute; top:13px; left:50%; font-size:14px; line-height:14px; color:#FFF; background-color:var(--color-hl2); margin-left:15px; width:20px; height:20px; margin-top:-10px; display:flex; align-items:center; justify-content:center; }

.formCols { display:flex; flex-wrap:wrap; column-gap:40px; }
.formEl { margin-bottom:35px; }
.formEl50 { flex:1 1 calc(50% - 40px); }

.cont-login { background:#FFF; border-radius:36px; min-height:650px; margin-top:10px; padding:45px 65px; display:flex; font-size:22px; display:flex; }
.cont-login.hidden { display:none; }
.cont-login > .cont-login1 { flex:4; padding-right:105px; }
.cont-subscribe > .cont-login1 { padding-right:0px; }
.cont-forgottenp > .cont-login1 { padding-right:0px; padding-left:0px; }
.cont-login > .cont-login2 { flex:4; }
.cont-login a { color:var(--color-link1); display:block; margin-top:5px; }

.cont-login h1 { font-family:'Livvic', Arial; font-size:30px; color:var(--color-blue1); }
.cont-login h1 strong { font-size:75px; color:var(--color-hl1); line-height:1.2em; margin-bottom:65px; display:block; }
.cont-login h2 { font-family:'Livvic', Arial; font-size:30px; }

.cont-login > .cont-login2 ul { margin:0; padding:0; list-style: none; }
.cont-login > .cont-login2 ul li { display:flex; align-items:center; font-size:25px; margin:45px 0; }
.cont-login > .cont-login2 ul li img { margin-right:35px; font-weight:300; }

.cont-login a.createAccount { text-decoration:underline; }


.top-filters {
	border-radius:40px; 
	background-color:var(--main-color1);
	background: rgb(56,80,168);
	background: linear-gradient(270deg, rgba(56,80,168,1) 0%, rgba(90,112,204,1) 100%);
	min-height:290px;
	margin-bottom:27px;
	padding:30px 45px;
	display:flex;
}
.top-filters-left
{
	color:#FFF;
	flex:1.2;
}
.top-filters-left h3 a.close { display:none; }
main.loading .top-filters-left { pointer-events:none; opacity:0.3; }
.top-filters-right 
{
	color:#FFF;
	flex:5;
	border-left:1px solid #FFF;
	margin-left:15px;
	padding-left:30px;
}
.top-filters-header {
	display:flex; 	
}
.top-filters-header > * { flex:1; }
.top-filters-header .top-filters-buts { justify-content:end; display:flex; }
main.loading .top-filters-right { pointer-events:none; opacity:0.3; }
.top-filters h3 {
	font-weight:300;
	font-size:30px;
	margin:0 0 15px 0;
	padding:0;
}
.top-filters-cont { overflow: auto; max-height:180px; color:#FFF; 	 }
.top-filters-cont ul { margin:0; padding:0; list-style:none; padding-right:15px; }
.top-filters-cont ul li { font-size:18px; display:flex; align-items:center; padding:2px 0 2px 5px; padding-right:5px !important; border-radius:6px; margin:0; }
.top-filters-cont ul li:hover { background-color:var(--main-color1); }
.top-filters-cont ul li.sel { background-color:var(--color-light3); color:#FFF; padding-left:5px !important; padding-right:5px !important; }
.top-filters-cont ul li p { margin:0; padding:0; flex:1; line-height:1.2em; padding-right:5px; text-overflow: ellipsis; overflow: hidden; max-width:275px; cursor:pointer; }
.top-filters-cont ul li a { margin-left:4px; }


.top-filters-minibut { display:inline-block; width:28px; height:28px; border-radius:6px; background:var(--color-light2); }
.top-filters-minibut.edit { background-image:url(/img/ico-save2.svg); background-size:64%; background-repeat:no-repeat; background-position:center center; }
.top-filters-minibut.delete { background-image:url(/img/ico-delete4.svg); background-size:52%; background-repeat:no-repeat; background-position:center center; }

.filters-tags { max-height:160px; margin-bottom:15px; padding:0; font-size:20px; margin-top:0; padding-top:14px; margin-bottom:10px; }
.filters-tags > li { background-color:var(--main-color1); border-radius:0 10px 10px 10px; display:inline-block; position:relative; margin:0 8px 8px 0; padding:4px 10px; }
.filters-tags > li > span.tags-group { position:absolute; top:-15px; background-color:var(--main-color1); color:#FFF; font-size:10px; border-radius:4px; display:inline-block; padding:0px 5px; text-transform:uppercase; white-space: nowrap; text-overflow: ellipsis; overflow: hidden; max-width: 90%; }
.filters-tags > li > ul { padding:2px 0px; }
.filters-tags > li > ul > li { background-color:#FFF; border-radius:8px; display:inline-block; padding:2px 8px; margin:2px;font-size:20px; }
.filters-tags > li > ul > li a { text-decoration:none; display:flex; align-items:center; }
.filters-tags > li > ul > li a img:last-child { cursor:pointer; margin-left:8px; margin-right:5px; }
/* .filters-tags > li a.selsel_classification img:first-child { width:20px; position:relative; top:0px; margin-right:8px; } */

.top-filters a.but-submit, a.but-submit { background-color:var(--color-hl1); color:#FFF; margin-right:15px; font-size:22px; text-align:center; }
.top-filters a.but-submit, .top-filters a.but-fill { padding:5px 15px; }
.top-filters a.but-fill { background-color:#576dc9; }

/* .main-content { background-color:#E3E0E0; border-radius:40px; padding:35px 45px; min-height:550px; } */
.main-content { background-color:#FFFFFF; border-radius:40px; padding:20px 45px 35px 45px; min-height:550px; border:2px solid var(--main-color1); margin-bottom:20px; }
.main-content.panier { padding:20px 5px; }
.main-content.blue { border:0px; background-color:#3850a8; padding:10px 15px 15px; }
.main-content-blue-tabs { }
.main-content-blue-content { padding:20px; background-color:#FFF; min-height:500px; border-radius:0px 20px 20px 20px; width:100%; }
.main-content.moncompte { background-color:transparent; border:0; }
.main-content.services { background-color:transparent; border:0; padding-top:0px; display:block !important; }

.main-content input, 
.main-content select, 
.main-content textarea, 
.main-content input, 
.main-content select, 
.main-content textarea, 
.ui-dialog input, 
.ui-dialog select, 
.ui-dialog textarea {
	font-size:15px; 
	padding:7px;
	box-shadow:none;
	border:1px solid #DFDFDF;	
	border-radius:5px;
}

.formel1, .formel2 { width:50%; float:left; padding-right:25px; margin-bottom:5px; line-height:30px; font-size:13px; }
.formel3 { width:100%; clear:both; float:none; margin-bottom:5px; line-height:30px; font-size:13px; }
.cb0 { clear:both; font-size:0px; margin:0; padding:0; }

.tit3 { color:var(--main-color1); font-size:20px; }
.tit3 p { padding-top:0; margin-top:0; margin-bottom:0px; padding-bottom:10px; }
.tit4 { color:#000; font-size:18px; }

/* PAGE HEADER */ 

.page-header { background-color:rgba(240,240,240,.9); margin-bottom:50px; padding:20px 0; position:sticky; top:0; z-index:20; }
.loading .page-header { opacity:0.3; pointer-events:none; }
.page-header .wrap { display:flex; }
.page-header .wrap > * { flex:1; }
.page-header-title { display:flex; align-items:center; font-size:30px; position:relative; padding-left:20px; }
.page-header-title div { position:relative; }
.page-header-title img { margin-right:10px; }
.page-header-title .page-header-title-nb { border-radius:30px; position:absolute; left:-24px; font-size:18px; line-height:18px; color:#FFF; background-color:var(--color-hl2); width:25px; height:25px; margin-top:-10px; display:flex; align-items:center; justify-content:center; }
.page-header-right { display:flex; justify-content:end; padding-right:15px; align-items:center; }
.page-header-right .but { margin-left:10px; }
.ast { color:#AE499E; }

/* PAGE FOOTER */ 

.page-footer { background:rgba(26,16,71,.9); position:fixed; padding:20px 0; bottom:0; left:0; width:100%; z-index:20; color:#FFF; }
.loading .page-footer { opacity:0.3; pointer-events:none; }
.page-footer .wrap { display:flex; }
.page-footer .wrap > * { flex:1; }
.page-footer-title { display:flex; align-items:center; font-size:26px; position:relative; padding-left:20px; }
.page-footer-title-cout { font-weight:bold; margin-left:10px; }
.page-footer-right { display:flex; justify-content:end; padding-right:15px; align-items:center; }
.page-footer-right .but { margin-left:10px; }


/* PROJETS */

.main-content.projets { display:flex; }
.main-content.wth-page-footer { margin-bottom:135px; }
.projets .projets-filters { flex:2; min-width:300px;  position:relative; }
.projets .projets-list { flex:9; position:relative; }
.projets-filters + .projets-list { margin-left:22px; border-left:1px solid #FFF; padding-left:22px; }
.projets .projets-list-ajax { min-height:500px; transition:opacity 350ms ease; opacity:1; }
main.loading .projets-list-ajax { opacity:0.3; pointer-events:none; }

.projets-coltitle { font-weight:bold; color:#000; text-align:center; font-size:22px; margin-bottom:5px; padding-top:15px; padding-bottom:15px; }
.projets-coltitles { display:flex; z-index:15; background-color:rgba(255,255,255,0.8); }
.projets-coltitles:not(.no-sticky) { position:sticky; top:0; }
.projets-coltitles > div:first-child { padding-left:10px; }
.projets-coltitles > div:last-child { padding-right:10px; }
.projet-infos { display:flex; align-items:center; position:relative; z-index:2; cursor:pointer; }
.projet-desc { display:flex; position:relative; z-index:1; }
.projets-results { padding-top:2px; }
.projets-results div, 
.projet-infos div { flex:1; }
.projets-results .buts { text-align:right; padding-top:20px; }
.projets-results .buts > a { margin-left:15px; display:inline-flex; }
.projets-results .buts > .delete { display:inline-flex; }
.projets-results .buts > a span { margin-left:8px; }
span.highlight { padding:4px 2px; background-color:#FF6; color:#000; }

.projets-list div.col0 { flex:2; }
.projets-coltitles > div.col0 { display:flex; align-items:center; justify-content:center; flex-direction:column; }
.projets-coltitles > div.col0 span { font-size:11px; font-weight:normal; line-height:15px; }
.projets-list div.col1 { flex:1; }
.projets-list div.col2 { flex:5; }
.projets-list div.col3 { flex:1; }
.projets-list div.col4 { flex:3; }
.projets-list div.col5 { flex:2; }
.projets-list div.col6 { flex:3; }
.projets-list div.col7 { flex:3; }
.projets-list div.col8 { flex:3; margin-right:10px; }
.projets-list div.col9 { flex:2; }

.projets-list div.col9 img { cursor:pointer; }

.projets-list .panier-line { display:flex; flex-wrap:wrap; }
.projets-list div.col-group1 { flex:21; display:flex; flex-direction:column; padding-right:30px; }

.projets-list div a { color:#000; }
.projets-list div a:hover { text-decoration:none; color:var(--main-color1); }
.projets-list div a.but-fill:hover { color:#FFF; }
.projets-list div .projets-coltitle a img { width:14px; margin-left:2px; }
.projets-list div .projets-coltitle a img.down { transform:rotate(180deg); }
.projets-list > div { text-align:center; }


.projet { margin-bottom:30px; }
.projet .projet-infos { padding:45px 0; border:1px solid #000; background-color:#FFF; border-radius:20px 20px 0 0; }
.projet.platinium .projet-infos { border-color:var(--color-projet-bdr-platinium); background-color:var(--color-projet-platinium); }
.projet.diamond .projet-infos { border-color:var(--color-projet-bdr-diamond); background-color:var(--color-projet-diamond); }
.projet.gold .projet-infos { border-color:var(--color-projet-bdr-gold); background-color:var(--color-projet-gold); }
.projet.silver .projet-infos { border-color:var(--color-projet-bdr-silver); background-color:var(--color-projet-silver); }
.projet .projet-infos div, 
.projet .projet-infos p { margin:0; padding:0; }
.projet-infos > div:first-child { padding-left:10px; }
.projet-infos > div:last-child { padding-right:10px; }

.projet .projet-infos .classe img { width:42px; }
.projet .projet-infos .famille > div { font-weight:bold; }
.projet .projet-infos .famille > div.famille-title { font-size:20px; }
.projet.platinium .projet-infos .famille > div { color:var(--color-projet-bdr-platinium); }
.projet.diamond .projet-infos .famille > div { color:var(--color-projet-bdr-diamond); }
.projet.gold .projet-infos .famille > div { color:var(--color-projet-bdr-gold); }
.projet.silver .projet-infos .famille > div { color:var(--color-projet-bdr-silver); }

.projet .projet-desc { padding:25px 20px 15px 20px; flex-direction:column; background-color:#FFF; border:2px solid #000; border-radius:0px 0px 20px 20px; position:relative; bottom:10px; margin-bottom:-10px; }

.projet.platinium .projet-desc { border-color:var(--color-projet-bdr-platinium); }
.projet.diamond .projet-desc { border-color:var(--color-projet-bdr-diamond); }
.projet.gold .projet-desc { border-color:var(--color-projet-bdr-gold); }
.projet.silver .projet-desc { border-color:var(--color-projet-bdr-silver); }

.projet .projet-desc-top { display:flex; align-items:center; }
.projet .projet-desc-top .consulte { margin-left:0px; }
.projet .projet-desc-top .consulte.hid { display:none; }
.projets-results-panier .projet .projet-desc-top { flex-direction:column; align-items:start; }
.projet .projet-desc-top > div { flex:1; text-align:left; font-size:20px; display:flex; align-items:center; gap:6px; }
.projet.platinium .projet-desc-top > div { color:var(--color-projet-bdr-platinium);}
.projet.diamond .projet-desc-top > div { color:var(--color-projet-bdr-diamond); }
.projet.gold .projet-desc-top > div { color:var(--color-projet-bdr-gold); }
.projet.silver .projet-desc-top > div { color:var(--color-projet-bdr-silver); }
.projet-desc-top-title { cursor:pointer; }
.projets-results-panier .projet-desc-top-title { margin-bottom:10px; }
.projets-results-panier .desc { color:#000 !important; font-size:16px !important; }

.projet .projet-desc-top .but-description { display:flex; align-items:center; }
.ca-pot { margin-right: 0;
  margin-left: auto;
  font-size: 16px;
  color: #FFF;
  border-radius: 10px;
  background-color: var(--color-hl3);
  padding: 4px 12px;
  font-weight: normal; margin-top:2px; }

.projet.platinium .projet-desc-top .but-description { border-color:var(--color-projet-bdr-platinium); color:var(--color-projet-bdr-platinium); }
.projet.diamond .projet-desc-top .but-description { border-color:var(--color-projet-bdr-diamond); color:var(--color-projet-bdr-diamond); }
.projet.gold .projet-desc-top .but-description { border-color:var(--color-projet-bdr-gold); color:var(--color-projet-bdr-gold); }
.projet.silver .projet-desc-top .but-description { border-color:var(--color-projet-bdr-silver); color:var(--color-projet-bdr-silver); }

.projet .projet-desc-top .delete { opacity:1; transition:all 300ms ease; }

.projet .projet-desc-top > a { margin-left:20px; }
.projet .projet-desc-top.expanded > a { opacity:0; pointer-events:none; }
.projet .projet-desc-top.expanded .delete { opacity:0; pointer-events:none; }
.projet .projet-desc-top.expanded .but-description { display:none; }
.projet .projet-desc-description { text-align:justify; display:none; }

.projets-filter { border-radius:20px; background-color:#FFF; border:1px solid #707070; margin-bottom:20px; padding:20px 15px; transition:all 350ms ease; opacity:1; }
main.loading .projets-filter { opacity:0.3; pointer-events:none; }
.projets-filter h4 { margin:0; padding:0; font-size:22px; font-weight:300; }
.projets-filter .projets-filter-content > p { margin:0; padding:0; }
.projets-filter .allnone a { text-decoration:underline; color:#707070; font-size:15px; }
.projets-filter ul li .allnone a:first-child { margin-right:5px; font-size:13px; }
.projets-filter ul li .allnone a:last-child { margin-left:5px; font-size:13px; }
.projets-filter ul { list-style:none; padding:0; margin:0; font-size:17px; }
.projets-filter ul li { padding:5px 0; font-size:17px; position:relative; }
.projets-filter#projets-filtrer-classe ul li { display:flex; gap:5px; align-items:center; }
.projets-filter#projets-filtrer-classe ul li img { width:30px; }
.projets-filter ul li div { display:flex; align-items:center; }
.projets-filter ul li div label { margin-left:5px; line-height:1.2em; }
.projets-filter ul li ul { padding-left:20px; padding-top:2px; padding-bottom:2px; display:none; }
.projets-filter ul li ul li { padding:2px 0; font-size:13px; display:flex; line-height:15px; }
.projets-filter ul li ul li label { margin-left:5px; }
.projets-filter ul li p { margin:0; }
.projets-filter ul li i { font-size:16px; display:block; }

.projets-onglets { margin-left:5px; margin-right:5px; background:rgba(0,16,75,.75); border-radius:24px; transition:all 300ms ease; position:sticky; bottom:20px; z-index:3; overflow:hidden; }
.projets-onglets:hover { background:rgba(0,16,75,.9); }
.projets-onglets ul { margin:0; padding:0; display:flex; list-style: none; }
.projets-onglets ul li { flex:1; }
.projets-onglets ul li.ong1 { background-color:var(--color-hl1); }
.projets-onglets ul li a { color:#FFF; transition:all 300ms ease; font-weight:400; font-size:20px; padding:20px 10px; display:inline-block; }
.projets-onglets:hover ul li a { color:#FFF; }

.projets-filter h4 { position:relative; }

.projets-filter h4 .raquo1 { display:block; position:absolute; top:10px; right:0; width:13px; height:13px; margin-left:auto; background-image:url(/img/ico-raquotop-big.svg); background-position:center center; background-size:contain; background-repeat:no-repeat; transition:all 300ms ease; transform:rotate(180deg); cursor:pointer; }
.projets-filter h4 .nbcrit { display:block; position:absolute; top:2px; right:20px; border:1px solid var(--main-color1); font-size:15px; border-radius:5px; padding:0px 6px; color:var(--main-color1); }
.projets-filter h4 .nbcrit:empty { display:none; }
.projets-filter.expanded h4 .raquo1 { transform:rotate(0deg); }
.projets-filter ul li div label .raquo2 { display:block; position:absolute; top:10px; right:0; width:11px; height:6px; margin-left:auto; background-image:url(/img/ico-raquotop-mini.svg); background-position:center center; background-size:contain; background-repeat:no-repeat; transition:all 300ms ease; transform:rotate(0deg); cursor:pointer; }
.projets-filter ul li.expanded div label .raquo2 { transform:rotate(180deg); }

.no-result { font-size:20px; padding-top:100px; }
#projets-filtrer-keywords input { border-radius:14px; border:2px solid var(--main-color1); background-color:#FFF; box-shadow:none; padding:15px 15px; }
#projets-filtrer-keywords ul li { position:relative; }
#projets-filtrer-keywords ul li p { margin-bottom:5px; position:relative; }
#projets-filtrer-keywords ul li span { width:24px; height:24px; display:block; background-image:url(/img/ico-loupe.svg); background-size:contain; background-position:center center; position:absolute; top:50%; margin-top:-12px; right:12px; cursor:pointer; }

.panier-line .checkdel > div { padding-bottom:10px; }
.panier-line .checkdel > .prix { font-size:18px; }
.projets-list div.col9 .niveau-el { display:flex; align-items:center; justify-content:center; margin-bottom:30px; }

.ajoute_par { text-align:left; font-size:26px; padding-left:30px; }
.ajoute_par strong { color:var(--color-hl1); }

#projets-search-button { width:200px;  position:sticky; bottom:20px; width:100%; left:0px; z-index:800; cursor:pointer; }
#projets-search-button2 { height:57px; background-color:var(--color-hl2); border-radius:18px; display:flex; align-items:center; justify-content:center; font-size:15px; color:#FFF; opacity:0; transition:opacity 300ms ease; }
#projets-search-button.show #projets-search-button2 { opacity:1; }
#projets-search-button.loading #projets-search-button2 { opacity:0.85; }

/* FIN PROJETS */
/* DIALOGS */

body .dialog { display:none; max-width:1240px; width:100%; }
body .dialog_save_criteres { height:750px; }
body .ui-dialog { position:fixed; top:50% !important; left:50% !important; transform:translate(-50%,-50%) !important; background-color:#FFF !important; border-radius:30px 0 30px 30px !important; overflow:hidden !important; margin:0px !important; padding:25px 45px !important; }
body .dialog-inner { min-height: 510px; overflow: auto; }
body .dialog_edit_filter .dialog-inner { min-height:auto; }
body .dialog-bottom { padding:15px; }
body .ui-dialog p { font-size:16px; }
body .ui-widget-overlay { background: #5971C9; opacity: .6; } 
body .ui-widget-header { border:0; background:none; }
body .ui-dialog .ui-dialog-titlebar-close { width:30px; height:30px; background:none; border:0; }
body .ui-button .ui-icon, 
body .ui-state-hover .ui-icon,body  .ui-state-focus .ui-icon, body .ui-button:hover .ui-icon, body .ui-button:focus .ui-icon { background-image:url(/img/ico-delete2.svg?v=2); background-position:0 0; background-size:contain; }

body .ui-datepicker-header .ui-state-hover .ui-icon, 
body .ui-datepicker-header .ui-state-focus .ui-icon, 
body .ui-datepicker-header .ui-button:hover .ui-icon, 
body .ui-datepicker-header .ui-button:focus .ui-icon { background-image:inherit; }

body .ui-state-hover .ui-icon, body .ui-state-focus .ui-icon, body .ui-button:hover .ui-icon, body .ui-button:focus .ui-icon { color:var(--main-color1); }

body .ui-dialog h3, 
.ui-dialog .ui-dialog-title { font-weight: 300; font-size: 30px; color:var(--main-color1); text-align:center; margin-top:0; }
.ui-dialog .ui-dialog-title { text-align:left; }
body .ui-dialog h3 strong { font-weight:bold; }
body .dialog-cols { display:flex; gap:40px; }
body .dialog-cols > .col { flex:1; }
body .ui-dialog h4 { font-weight: bold; font-size: 22px; color:#000; text-align:left; padding-top:0; margin-top:0; }
body .ui-dialog ul.filters { margin:0px; padding:0px; list-style:none; }
body .ui-dialog ul.filters li { border:1px solid var(--main-color1); border-radius:15px; padding:6px 6px 6px 18px; margin-bottom:5px; font-size:18px; display:flex; align-items:center; }
body .ui-dialog ul.filters li > div { flex:4; }
body .ui-dialog ul.filters li .but { margin:0px; flex:1; }
body .ui-dialog .but.but-submit { padding:17px 18px; }

/* FIN DIALOGS */
/* LOADER */

.loader {
	display: flex;
	justify-content: center;
	align-items: center;
	margin:25px 0;
	display:none;
	position:absolute;
	left:50%;
	top:100px;
	z-index:10;
}

.square {
	width: 12px;
	height: 12px;
    margin: 0 5px;
	animation: jump 0.8s infinite ease-in-out, colorChange 0.8s infinite alternate;
	pointer-events:none;
}

.square:nth-child(2) {
	animation-delay: 0.1s, 0.2s;
}

.square:nth-child(3) {
	animation-delay: 0.2s, 0.4s;
}

@keyframes jump {
	0%, 100% {
		transform: translateY(0);
	}
	50% {
		transform: translateY(-20px);
	}
}

@keyframes colorChange {
	0% { background-color: #5A72D0; }
	25% { background-color: #5068C0; }
	50% { background-color: #466EB0; }
	75% { background-color: #3C64A0; }
	100% { background-color: #325A90; }
}

/* FIN LOADER */
.ui-widget.ui-widget-content { background-color:#8F8F8F; border:0; margin:10px; }
.ui-slider-horizontal { height:6px; }
.ui-slider-horizontal .ui-slider-handle { border:3px solid var(--main-color1) !important; border-radius:10px; top:-6px; }
.ui-slider-horizontal .ui-slider-range { background-color:var(--main-color1); }


/* ACTIVITES */ 

.main-content-blue-inner { padding:10px; width:100%; }
.main-content-blue-header { display:flex; }
.main-content-blue-header > * { flex:2; }
.main-content-blue-header > .buts { flex:3; }
.main-content-blue-header > .onglets, 
.main-content-blue-header > .buts { list-style:none; display:flex; margin:0px; padding:0; gap:15px; justify-content:end; align-items:start; }
.main-content-blue-header > .onglets { justify-content:start; }
.main-content-blue-header > .onglets > li { background-color:#FFF; padding:16px 30px; font-size:22px; color:var(--main-color1); }
.main-content-blue-header > .buts > li { gap:20px; }
.main-content-blue-header > .buts > li > a { padding:12px 16px; background-color:#FFF; border-radius:15px; font-size:15px; }
.activites-header, 
.activite { padding:12px 0px; position:relative; }
.activites-header { display:flex; }
.activite-1 { display:flex; position:relative; }
.activite-2 { display:flex; }
.activite-3 { display:flex; }
.activites-header > div, 
.activite > div > div { flex:1; font-size:16px;  text-align:center; }
.activites-header > div { padding:20px 0; }
.act-projet { flex:3 !important; }
.act-niveau { flex:.7 !important; }
.act-infos { flex:1.5 !important; }
.act-dates { flex:1.5 !important; }
.act-action { flex:2 !important; min-height:120px; }
.activites-header .act-action { min-height:auto; }
.act-projet-group { flex:7 !important; border:1px solid #8a98cc; border-radius:15px; display:flex; overflow:hidden; }
.act-projet-group-projet { flex:3 !important; background-color:#dfe4fb; border-radius:8px; border-right:1px solid #8a98cc; display:flex; padding:15px 0; }
.act-projet-group-niveau { flex:.7 !important; justify-content:center; align-items:center; display:flex; }
.act-projet-group-niveau > img { width:45px; }
.act-projet-group-dates { flex:1.5 !important; justify-content:center; align-items:center; display:flex; flex-direction:column; font-size:14px; }
.act-projet-group-dates > p { margin:0; }
.act-projet-group-infos { flex:1.5 !important; justify-content:center; align-items:center; display:flex; flex-direction:column; font-size:14px; }
.act-projet-group-infos > p { margin:0; }
.act-projet-group-projet-class { flex:1 !important; justify-content:center; align-items:center; display:flex; }
.act-projet-group-projet-class > img { width:32px; }
.act-projet-group-projet-desc { flex:2.5 !important; text-align:left; align-items: center; justify-content: center; display: flex; flex-direction: column; }
.act-projet-group-projet-country { flex:1 !important; justify-content:center; align-items:center; display:flex; }
.act-projet-messagerie { flex:6.8 !important; border:1px solid #8a98cc; border-radius:15px; overflow:hidden; background-color:#f2f1f1; position:relative; top:-1px; padding:10px 15px; }
.act-projet-description { flex:6.8 !important; border:1px solid #8a98cc; border-radius:15px; overflow:hidden; background-color:#f2f1f1; position:relative; top:-1px; padding:10px 15px; text-align:left !important; font-size:14px; }
.activite > div > div.act-projet-description { font-size:14px; }
.act-statut { display:flex; font-size:14px; align-items:center; justify-content:center; flex-direction:column; gap:10px; padding-left:5px; padding-right:5px; }
.act-statut-dlprojet-waiting { background-color:#70b700;
  color:#FFF;
  padding: 10px;
  border-radius: 15px;
  font-size: 14px; height:100%; position:absolute; width:100%; top:0px; left:0px; min-height:120px; }
.act-statut-dlprojet-waiting.step1 { background-color:#FFF; color:#70b700; }
.activites-header .act-statut { flex-direction:row; }
.activites-header .act-statut img { cursor:pointer; }
.activites-header .act-statut img:hover { opacity:.8; }
.activites-header .act-statut .dropdown-filter { position:absolute; top:calc(100% - 10px); display:none; left:50%; margin-left:-155px; width:310px; background-color:#FFF; border:1px solid var(--main-color1); z-index:10; border-radius:15px; padding:10px; text-align:left; }
.activites-header .act-statut .dropdown-filter-close { position:absolute; z-index:11; right:10px; cursor:pointer; background:url(/img/ico-delete2.svg?v=2); width:12px; height:12px; background-size:contain; }
.activites-header .act-statut .dropdown-filter ul { margin:0; padding:0; list-style:none; }
.activites-header .act-statut .dropdown-filter ul li { padding:3px 0; font-size:14px; }
.activites-header .act-statut .dropdown-filter ul li.orange { color:#fe9100; }
.activites-header .act-statut .dropdown-filter ul li.green { color:#70b700; }
.act-statut > p { margin:0; font-size:14px; }
.act-action { align-self:center; position:relative; }
.act-action > p { margin:0; }
.act-action > p.details { font-size:12px; color:#888; }
.act-action .but.but-mini { padding:5px 8px; font-size:15px; }
.act-action .but.but-rdv { background-color:#5a70cc; color:#FFF; min-width:190px; }
.act-action .but.but-retour { background-color:#5a9ccc; color:#FFF; min-width:190px; margin-top:5px; }
.act-projet-empty { flex:3.1 !important; }

.act-projet-group-projet-desc .famille { font-size:14px; color:#374fa8; }
.act-projet-group-projet-desc .nature { font-size:14px; text-align:center; }

.act-projet-msgs { display:flex; flex-direction:column; }
.act-projet-msg-plus.open img { transform:rotate(180deg); }

.act-projet-msg.nonlu { background-color:#F0FFE6; }

.act-projet-msg-header { display:flex; width:100%; }
.act-projet-msg-header > div { flex:1; align-items:center; display:flex; }
.act-projet-msg-header-left { color:#576bb4; font-size:14px; }
.act-projet-msg-header-right { justify-content:end; }
.act-projet-msg-header-right .but { background-color:#5a70cc; color:#FFF; font-size:13px; padding:6px 10px; b0rder-radius:12px; }

.act-projet-msg-title, 
.act-projet-msg { display:flex; width:100%; padding:8px 0px; border-bottom:1px solid #a8a8a8; }
.act-projet-msg.hidden { display:none; }
.act-projet-msgs .act-projet-msg:last-child { border-bottom:0px; }
.act-projet-msg-title > div { font-weight:bold; color:#6a80d2 ; }
.act-projet-msg-title > div, 
.act-projet-msg > div { flex:1; text-align:left; font-size:13px; padding-left:5px; padding-right:5px; }

.act-projet-msg-date { flex:1 !important; }
.act-projet-msg-qui { flex:1.5 !important; }
.act-projet-msg-message { flex:5 !important; }
.act-projet-msg-message { }
.act-projet-msg-message .apercu { overflow:hidden; text-overflow:ellipsis; }
.act-projet-msg-action { max-width:30px; text-align:right !important; display:flex; justify-content:right; align-items:center; }
.act-projet-msg-action a { display:flex; align-items:center; }

.activite-nb { position:absolute; width:25px; height:25px; border-radius:13px; background-color:#ec0909; color:#FFF; top:-8px; left:-12px; display:flex; justify-content:center; align-items:center; font-weight:bold; }

/* MON COMPTE */

.main-content.moncompte { display:flex; gap:40px; }
.main-content-moncompte-left { flex:2; }
.main-content-moncompte-right { flex:5; }
.main-content-moncompte-menu { background-color:var(--main-color1); border-radius:32px; padding:30px 0px; }
.main-content-moncompte-menu h2 { color:#FFF; font-weight:normal; font-size:20px; padding:0 0 20px 0; margin:0; padding-left:25px; }
.main-content-moncompte-menu ul { list-style:none; list-style-type:none; color:#FFF; font-size:12px; padding:0 0 0 20px; margin:0; }
.main-content-moncompte-menu ul li { padding:0; margin:0; border-radius:9px 0 0 9px; transition:all 300ms ease; align-items:start; justify-content:start; }
.main-content-moncompte-menu ul li:hover { background-color:var(--color-light3); }
.main-content-moncompte-menu ul li.active { background-color:#FFF;  }
.main-content-moncompte-menu ul li a { color:#FFF; font-size:13px; line-height:16px; padding:10px 0 10px 10px; display:flex; align-items:start; }
.main-content-moncompte-menu ul li a:hover { text-decoration:inherit; }
.main-content-moncompte-menu ul li a svg { margin-right:7px; width:15px; height:15px; object-fit:contain; }
.main-content-moncompte-menu ul li.active a { color:var(--main-color1); }
.main-content-moncompte-menu ul li.active a svg, .main-content-moncompte-menu ul li.active a svg path { fill:var(--main-color1); }
.main-content-moncompte-content {  }

.main-content-moncompte-content .cadRd { background-color:var(--color-light4); padding:25px; border-radius:25px; margin-bottom:20px; }
.main-content-moncompte-content input[type="button"], 
.main-content-moncompte-content input[type="submit"] { cursor:pointer; border:0px; background-color:var(--main-color1); width:auto; min-width:250px; font-size:15px; color:#FFFFFF; padding:8px 25px; }
.main-content-moncompte-content .but { font-weight:normal !important; }
.main-content-moncompte-content .table1 { font-size:12px; border-radius:15px 15px 0 0; overflow:hidden; }
.main-content-moncompte-content .table1 thead { background:#EAEAEA;  }
.main-content-moncompte-content .table1 thead th { font-weight:normal; font-size:13px; }
.main-content-moncompte-content .table1 th, 
.main-content-moncompte-content .table1 td { padding:10px; text-align:center; border-bottom:1px solid #EAEAEA; }
.main-content-moncompte-content .table1 td p { padding:0px; margin:0px; }
.main-content-moncompte-content .table1 th { white-space:nowrap; padding:8px 8px; border-bottom:2px solid #CFCFCF; }
.main-content-moncompte-content .table1 td .but { display:inline-block; }
.main-content-moncompte-content .bdr1 { border:1px solid #E2E2E2; border-radius:15px; }

.status-circle {
  display: inline-block;
  width: 10px;
  height: 10px;
  margin-right: 8px;
  border-radius: 50%;
  background-color: gray;
}

.status-ok .status-circle {
  background-color: green;
}
.status-error .status-circle {
  background-color: red;
}
.status-default .status-circle {
  background-color: gray;
}

.status-ok span.label-text {
  color: green;
}
.status-error span.label-text {
  color: red;
}
.status-default span.label-text {
  color: gray;
}

.ui-widget.ui-widget-content { background-color:#EFEFEF; }
.ui-state-default, .ui-widget-content .ui-state-default, .ui-widget-header .ui-state-default, .ui-button, html .ui-button.ui-state-disabled:hover, html .ui-button.ui-state-disabled:active { border:0px; }

body .ui-dialog.noborder { padding:0px !important; }
body .ui-dialog.noborder .ui-dialog-titlebar {  display:none !important; }
body .ui-dialog.noborder .ui-dialog-content { padding:0 !important; }

#scrollToTop {
  position: fixed;
  bottom: 80px;
  right: 15px;
  width: 48px;
  height: 48px;
  background-color: #647ad5;
  color: white;
  border: none;
  border-radius: 50%;
  cursor: pointer;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.4s ease, visibility 0.4s ease;
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 9999;
}

#scrollToTop svg {
  width: 24px;
  height: 24px;
  fill: white;
}

#scrollToTop.show {
  opacity: 1;
  visibility: visible;
}

#div_partager, 
#div_renouveler, 
#div_prolonger, 
#div_quitterpanier { display:none; }

.services { display:flex; flex-wrap:wrap; }
.service { width:calc(33% - 60px); margin:0px 30px 40px 30px; border:1px solid var(--main-color1); border-radius:35px; background-color:var(--main-color1); overflow:hidden; }
.service-img { display:flex; align-items:center; justify-content:center; padding:30px 0; background-color:#FFF; }
.service-img img { width:250px; height:110px; margin:0px auto; object-fit:contain;  }
.service-title { background-color:var(--main-color1); color:#FFF; text-align:center; font-size:18px; padding:20px; display:flex; align-items:center; justify-content:center; }
.service-title a { color:#FFF; display:flex; }
.service-detail { display:flex; gap:20px; }
.service-detail > div { flex:1; font-size:12px; }

#responsive-nav { display:none; }
.projets-filters .projets-coltitle { align-items: center; }
.projets-filters .projets-coltitle a.close { display:none; }
.projets-filters .projets-coltitle a.close { display:none; }
.main-content-moncompte-left a.close { display:none; }

.is-mobile { display:none; }
.is-mobile-xs { display:none; }

.acheter-but-ajoute-1:empty { display:none; }

#dmarquee { background-color:var(--color-hl3); padding:7px; cursor:pointer; color:#fe9100;position:absolute; width:100%; top:-44px; z-index:100; }
#dmarquee:hover, #dmarquee.click { top:0px;  }

.projet .projet-desc-top > a img { width:27px; }

.dlprojet-loader-wrapper {
  width: 74px;
  height: 50px;
  position: absolute;
  margin: -25px 0 0 -37px;
  left: 50%;
  top: 60%;
}

.dlprojet-loader {
  width: 74px;
  height: 50px;
  top: 0;
  left: 0;
  position: absolute;
}
.dlprojet-loader:after {
  content: "";
  top: auto;
  position: absolute;
  display: block;
  animation: shadow 1.2s infinite linear;
  -moz-animation: shadow 1.2s infinite linear;
  bottom: 0em;
  left: 0;
  height: .25em;
  width: 1em;
  border-radius: 50%;
  background-color: #034466;
  opacity: 0.3;
}

.roller,
.roller:last-child {
  width: 35px;
  height: 35px;
  position: absolute;
  top: 0;
  left: 0;
  -webkit-animation: rollercoaster 1.2s infinite linear;
  -webkit-transform: rotate(135deg);
  -moz-animation: rollercoaster 1.2s infinite linear;
  -moz-transform: rotate(135deg);
  animation: rollercoaster 1.2s infinite linear;
  transform: rotate(135deg);
}

.roller:last-child {
  left: auto;
  right: 0;
  -webkit-transform: rotate(-45deg);
  -webkit-animation: rollercoaster2 1.2s infinite linear;
  -moz-transform: rotate(-45deg);
  -moz-animation: rollercoaster2 1.2s infinite linear;
  transform: rotate(-45deg);
  animation: rollercoaster2 1.2s infinite linear;
}

.roller:before,
.roller:last-child:before {
  content: "";
  display: block;
  width: 7px;
  height: 7px;
  background: #70b700;
  border-radius: 50%;
}

@-webkit-keyframes rollercoaster {
  0% {
    -webkit-transform: rotate(135deg);
  }
  8% {
    -webkit-transform: rotate(240deg);
  }
  20% {
    -webkit-transform: rotate(300deg);
  }
  40% {
    -webkit-transform: rotate(380deg);
  }
  45% {
    -webkit-transform: rotate(440deg);
  }
  50% {
    -webkit-transform: rotate(495deg);
    opacity: 1;
  }
  50.1% {
    -webkit-transform: rotate(495deg);
    opacity: 0;
  }
  100% {
    -webkit-transform: rotate(495deg);
    opacity: 0;
  }
}
@-webkit-keyframes rollercoaster2 {
  0% {
    opacity: 0;
  }
  49.9% {
    opacity: 0;
  }
  50% {
    opacity: 1;
    -webkit-transform: rotate(-45deg);
  }
  58% {
    -webkit-transform: rotate(-160deg);
  }
  70% {
    -webkit-transform: rotate(-240deg);
  }
  80% {
    -webkit-transform: rotate(-300deg);
  }
  90% {
    -webkit-transform: rotate(-340deg);
  }
  100% {
    -webkit-transform: rotate(-405deg);
  }
}
@-webkit-keyframes shadow {
  0% {
    opacity: .3;
    -webkit-transform: translateX(32px) scale(0.5, 0.5);
  }
  8% {
    -webkit-transform: translateX(15px) scale(2, 2);
  }
  13% {
    -webkit-transform: translateX(0px) scale(1.3, 1.3);
  }
  30% {
    -webkit-transform: translateX(-15px) scale(0.5, 0.5);
    opacity: 0.1;
  }
  50% {
    -webkit-transform: translateX(30px) scale(1.2, 1.2);
    opacity: 0.3;
  }
  60% {
    -webkit-transform: translateX(65px) scale(2, 2);
    opacity: 0.05;
  }
  65% {
    -webkit-transform: translateX(72px) scale(1.2, 1.2);
  }
  80% {
    -webkit-transform: translateX(60px) scale(0.5, 0.5);
    opacity: 0.1;
  }
  90% {
    -webkit-transform: translateX(40px) scale(0.8, 0.8);
  }
  100% {
    -webkit-transform: translateX(30px);
    opacity: 0.3;
  }
}
/* Moz */
@-moz-keyframes rollercoaster {
  0% {
    -moz-transform: rotate(135deg);
  }
  8% {
    -moz-transform: rotate(240deg);
  }
  20% {
    -moz-transform: rotate(300deg);
  }
  40% {
    -moz-transform: rotate(380deg);
  }
  45% {
    -moz-transform: rotate(440deg);
  }
  50% {
    -moz-transform: rotate(495deg);
    opacity: 1;
  }
  50.1% {
    -moz-transform: rotate(495deg);
    opacity: 0;
  }
  100% {
    -moz-transform: rotate(495deg);
    opacity: 0;
  }
}
@-moz-keyframes rollercoaster2 {
  0% {
    opacity: 0;
  }
  49.9% {
    opacity: 0;
  }
  50% {
    opacity: 1;
    -moz-transform: rotate(-45deg);
  }
  58% {
    -moz-transform: rotate(-160deg);
  }
  70% {
    -moz-transform: rotate(-240deg);
  }
  80% {
    -moz-transform: rotate(-300deg);
  }
  90% {
    -moz-transform: rotate(-340deg);
  }
  100% {
    -moz-transform: rotate(-405deg);
  }
}
@-moz-keyframes shadow {
  0% {
    opacity: .3;
    -moz-transform: translateX(32px) scale(0.5, 0.5);
  }
  8% {
    -moz-transform: translateX(15px) scale(2, 2);
  }
  13% {
    -moz-transform: translateX(0px) scale(1.3, 1.3);
  }
  30% {
    -moz-transform: translateX(-7px) scale(0.5, 0.5);
    opacity: 0.1;
  }
  50% {
    -moz-transform: translateX(30px) scale(1.2, 1.2);
    opacity: 0.3;
  }
  60% {
    -moz-transform: translateX(65px) scale(2, 2);
    opacity: 0.05;
  }
  65% {
    -moz-transform: translateX(72px) scale(1.2, 1.2);
  }
  80% {
    -moz-transform: translateX(60px) scale(0.5, 0.5);
    opacity: 0.1;
  }
  90% {
    -moz-transform: translateX(40px) scale(0.8, 0.8);
  }
  100% {
    -moz-transform: translateX(30px);
    opacity: 0.3;
  }
}
/* No-prefix */
@keyframes rollercoaster {
  0% {
    transform: rotate(135deg);
  }
  8% {
    transform: rotate(240deg);
  }
  20% {
    transform: rotate(300deg);
  }
  40% {
    transform: rotate(380deg);
  }
  45% {
    transform: rotate(440deg);
  }
  50% {
    transform: rotate(495deg);
    opacity: 1;
  }
  50.1% {
    transform: rotate(495deg);
    opacity: 0;
  }
  100% {
    transform: rotate(495deg);
    opacity: 0;
  }
}
@keyframes rollercoaster2 {
  0% {
    opacity: 0;
  }
  49.9% {
    opacity: 0;
  }
  50% {
    opacity: 1;
    transform: rotate(-45deg);
  }
  58% {
    transform: rotate(-160deg);
  }
  70% {
    transform: rotate(-240deg);
  }
  80% {
    transform: rotate(-300deg);
  }
  90% {
    transform: rotate(-340deg);
  }
  100% {
    transform: rotate(-405deg);
  }
}
@keyframes shadow {
  0% {
    opacity: .3;
    transform: translateX(32px) scale(0.5, 0.5);
  }
  8% {
    transform: translateX(15px) scale(2, 2);
  }
  13% {
    transform: translateX(0px) scale(1.3, 1.3);
  }
  30% {
    transform: translateX(-7px) scale(0.5, 0.5);
    opacity: 0.1;
  }
  50% {
    transform: translateX(30px) scale(1.2, 1.2);
    opacity: 0.3;
  }
  60% {
    transform: translateX(65px) scale(2, 2);
    opacity: 0.05;
  }
  65% {
    transform: translateX(72px) scale(1.2, 1.2);
  }
  80% {
    transform: translateX(60px) scale(0.5, 0.5);
    opacity: 0.1;
  }
  90% {
    transform: translateX(40px) scale(0.8, 0.8);
  }
  100% {
    transform: translateX(30px);
    opacity: 0.3;
  }
}
#dlprojet-loader2:after {
  -webkit-animation-delay: 0.15s;
  animation-delay: 0.15s;
}
#dlprojet-loader2 .roller {
  -webkit-animation-delay: 0.15s;
  animation-delay: 0.15s;
}

#dlprojet-loader3:after {
  -webkit-animation-delay: 0.3s;
  animation-delay: 0.3s;
}
#dlprojet-loader3 .roller {
  -webkit-animation-delay: 0.3s;
  animation-delay: 0.3s;
}

.bounce-2s {
    animation: smoothBounce 2s ease-in-out infinite;
}

@keyframes smoothBounce {
    0%, 100% {
        transform: translateY(0);
    }
    30% {
        transform: translateY(-6px);
    }
    45% {
        transform: translateY(0);
    }
    60% {
        transform: translateY(-3px);
    }
    75% {
        transform: translateY(0);
    }
}

.tooltip {
  position: relative;
  display: inline-block;
  cursor: help;
  color: #FFF;
  background-color:transparent;
}

.tooltip-text {
  position: absolute;
  top: 125%; /* en dessous du texte */
  left: 50%;
  transform: translateX(-50%);
  background: #111827;
  color: #fff;
  padding: 6px 10px;
  border-radius: 6px;
  font-size: 13px;
  white-space: nowrap;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.2s ease, transform 0.2s ease;
  transform: translateX(-50%) translateY(-5px);
}

.tooltip:hover .tooltip-text {
  opacity: 1;
  transform: translateX(-50%) translateY(0);
}

/* petite flèche */
.tooltip-text::after {
  content: "";
  position: absolute;
  bottom: 100%;
  left: 50%;
  transform: translateX(-50%);
  border-width: 6px;
  border-style: solid;
  border-color: transparent transparent #111827 transparent;
}