/* CSS3 Reset
---------------------------------------------------------------------- */
html,body,div,span,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,abbr,address,cite,code,del,dfn,em,img,ins,kbd,q,samp,small,strong,sub,var,b,i,dl,dt,dd,ol,ul,li,
fieldset,form,label,legend,table,caption,article,aside,canvas,details,figcaption,figure,footer,header,hgroup,menu,nav,section,summary,time,
mark,audio,video{margin:0;padding:0;border:0;outline:0;font-size:100%;vertical-align:baseline;background:transparent;text-align: left;}
body{line-height:1;}
article,aside,canvas,details,figcaption,figure,footer,header,hgroup,menu,nav,section,summary{display:block;}
blockquote,q{quotes:none;}
blockquote:before,blockquote:after,q:before,q:after{content:'';content:none;}
a{margin:0;padding:0;border:0;font-size:100%;vertical-align:baseline;background:transparent;}
ins{background-color:#ff9;color:#000;text-decoration:none;}
mark{background-color:#ff9;color:#000;font-style:italic;font-weight:bold;}
del{ text-decoration:line-through;}
abbr[title],dfn[title]{border-bottom:1px dotted #000;cursor:help;}
table{border-collapse:collapse;border-spacing:0;}
hr{display:block;height:1px;border:0;border-top:1px solid #ccc;margin:1em 0;padding:0;}
input,select{vertical-align:middle;}
ul {list-style: none;}
* {box-sizing: border-box; -moz-box-sizing: border-box;}


/* Les Fonts : ici !
---------------------------------------------------------------------- */




/* Structure générale
---------------------------------------------------------------------- */


body {	font-family: Arial, sans-serif; color: #444; font-size: 0;}
body > header {
	text-align: center;
	background: #666;
	width:100%;
	min-height: 350px;
	overflow: hidden;
	z-index:100;
	position:relative;
}
body > footer {
	font-size: 12px;
	text-align: center;
	width: 100%;
	min-height: 100px;
	overflow: hidden;
	position:relative;
	background: #151515;
	padding-top: 30px;

}
body > nav {
	width: 100%;
	z-index:1;
	position:relative;
	background: #1c1c1c;	
	
}
aside {}



/* Charte graphique élémentaire
---------------------------------------------------------------------- */
h1 {
	text-align: center;
	font-size:40px;
	color:#555;
	font-weight: 100;
	margin:8vh 0 6vh 0;
	letter-spacing: 2px;
	padding:0 0 8px 0;
/*	border-bottom: 1px solid #555;*/
}
h2 {
	font-size:26px;
	line-height: 30px;
	color:#555;
	font-weight: 100;
	letter-spacing: 2px;
	margin:2vh 0px 8px 0px;
	padding:0 0 4px 0;
}
h3 {
	font-size:18px;
	font-weight: normal;
	color:#555;
	margin:0px 0px 6px 0px;
	padding:0 0 3px 0;
}
h4 {}
h5 {}
h6 {}
p { margin:6px 0px; font-size:13px; text-align: justify; line-height: 16px;}
a {}
a:hover {}
i {}
b {}
strong {}
.content ul {margin:8px 0 8px 8px; list-style:disc;}
.content li {margin-left:12px;}
.content li li {list-style:circle;}
.content li li li {list-style:diamond;}
figure { text-align: center;}
figcaption { font-size:10px; font-style: italic; text-align: center; padding-top:10px;}
figure img {min-width: 50px; max-width: 100%;}
img {}
section {}
article {}
code {}
input[type='text'],input[type='password'],input[type='email'],select {
	height: 30px;
	color:#555;
	border:1px solid #aaa;
	width:100%;
	padding:5px;
	font-size:14px;
}
button,input[type='button'],input[type='submit'], a.btn {
	background: #151515;
	cursor: pointer;
	padding:8px 15px;
	color:#fff;
	font-size:16px;
	border-radius: 2px;
	border:none;
}
button:hover,
input[type='button']:hover,
input[type='submit']:hover,
a.btn:hover {
	background: #777;
}
.login .btn_reg {margin-left: 175px;}


/*  Header 
------------------- */
/* Version qui fonctionne pour FF, Chrome, IE9~11 & Edge pour n'importe quelle taille de bannière. Bisous de Monika */
body > header > img,
body > header > a > img{
	height: 350px;
	z-index:0;
	position: absolute;
    top: -9999px;
    bottom: -9999px;
    left: -9999px;
    right: -9999px;
    margin: auto;
	object-fit: cover;
}

.subwrap > header > img,
.subwrap > header > a > img {
	height: 100%;
	width:100%;
	min-height:200px;
	text-align: center;
	z-index:0;
	object-fit: cover;
}


header .overHead {
	font-size:12px; 
	background: rgba(255,255,255,0.3);
	position:absolute;
	z-index:10000; top:0; left: 0;
	padding: 3px 0 5px;  width: 100%;
}
.overHead .flags {padding:3px 0px; display: inline-block;}
.overHead .flags>img {}
.overHead .flags > div {display: inline-block;}
.overHead .flags a { padding: 0 5px; display: inline-block; }
.overHead .flags a img { opacity: 0.6; }
.overHead .flags a:hover img { opacity: 1; }
.overHead > div > ul {
	display: inline-block;
	position:absolute;
	right:0;
	color:#fff;
	padding: 0 0 5px;
}
.overHead > div > ul > li {vertical-align: middle; display:inline-block; white-space: nowrap; margin-left:2vw;}

.overHead .access.connect {cursor: pointer; white-space: nowrap;}
.overHead > div > ul a {color:#fff; text-decoration: none; display: inline-block;}
.overHead > div > ul a:hover {color:#a00; text-decoration: none;}
.overHead > div > ul i {font-size: 16px; margin: 0 1%;}
.overHead .cart {}

body > header.noBanner {height:28px; min-height: auto;}
body > header.noBanner .overHead {background: rgba(0, 0, 0, 0.8); color:#555;}


/*  Pop-in de connexion
------------------------------------- */

.connect-popin { 
	display: none;
	position:fixed;
	top:50px;
	width:40%;
	margin:0 30% 0 30%;
	padding:30px;
	background: rgba(205, 235, 255, 0.8);
	border-radius: 20px;
	z-index:1000;
}
.connect-popin h3 { border-bottom: 1px solid #fff}
.connect-popin article { margin: 6px 0}
.connect-popin article > label { font-size: 14px; display: inline-block; width:30%; text-align: right; padding-right: 20px; vertical-align: top; padding-top: 6px;}
.connect-popin article > div { font-size: 14px; display: inline-block; width:70%; }

.connect-popin::after {
	content:" ";
	width:100%;
	height:100%;
	border-color: rgba(0, 0, 0, 0.15) rgba(0, 0, 0, 0.15) rgba(0, 0, 0, 0.25);
	border-radius: 20px;
	box-shadow: 0px 0px 15px #000000;
	position:absolute;
	top:0;
	left:0;
	z-index:-1;
}


/*  Navigation
------------------- */
body > nav .menuSmart {cursor: pointer;}
body > nav > div {text-align: center;}
body > nav > div > i.fa { display:none; }

body > header > a > .logoTarget {position: absolute; top: 80px; left: 40px; z-index: 10;}
body > header > a > .logoTarget img {width: 80%;}

body > nav > div > ul {padding: 24px 0 18px 0px; font-size:0; display: inline-block;}
body > nav > div > ul li {
	font-size:16px;
	color:#fff;
	display: inline-block;
	background: #151515;
	border-bottom: 4px solid #151515;
	margin:0px 1px;
	position:relative;
}
body > nav > div > ul li.selected,
body > nav > div > ul li:hover  {border-bottom:4px solid #a00; cursor: pointer;}
body > nav > div > ul > li span,
body > nav > div > ul > li a {padding: 10px 25px; color:#fff; display: inline-block; text-decoration: none; font-size:16px; }
body > nav > div > ul > li > ul {
	position:absolute;
	top:44px;
	overflow:hidden;
	max-height: 0px;
	border-radius: 0 0 10px 10px;
	z-index:200;
	background: #151515;
	transition: max-height 0.5s ease 0s;
}
body > nav > div > ul > li:hover ul {display:block; max-height: 210px;}
body > nav > div > ul > li  li { white-space: nowrap; width:100%; border-bottom: 1px solid #444;}
body > nav > div > ul > li  li:hover {border-bottom:none; background:#a00;}


/*  Navigation Fixed
------------------- */
body > nav .logo-float {width: 180px; top: 15px; opacity:0; position:absolute; left:10px; z-index:101;}
body > nav .logo-float > a > img {width: 100%;}
body > nav.fixe { position:fixed; top:25px; left:0; z-index:10000; transition: opacity 0.5s ease; box-shadow: 0 2px 3px #000 ;}
body > nav.fixe .logo-float {opacity:1;}
body > nav.fixe > div > ul > li span,
body > nav.fixe > div > ul > li a {padding:6px 25px; font-size:14px;}
body > nav.fixe > div > ul > li > ul {top: 58px;}
header .overHead.fixe { position:fixed; top:0; left:0; background: rgba(0, 0, 0, 1); color:#555;}
header .overHead.fixe a {color:#fff;}


/*  Structure sous-événement
---------------------------- */
body > .subevent { display:flex; flex-direction:row; }
body > .subevent > nav {padding-top: 180px; width:20vw; position:fixed; height:100vh; left:0; top:28px; background: #600; z-index:0; display:flex; flex-direction:column; }
body > .subevent > .subwrap {flex-grow:1; margin-left:20vw;}
body > .subevent > nav h3 {margin:0;padding:0;}
body > .subevent > nav h3 a,
body > .subevent > nav li a {font-size:18px; color:#ffe; width:100%; padding:15px 25px; transition:all 0.2s ease; text-decoration: none; display:block; border-bottom:1px solid #800;  }
body > .subevent > nav li a:hover {color:#ddc; background: #800;}



/*  Footer
------------------- */
body > footer ul > li > ul {padding: 0;}
body > footer > div > ul > li {width:18%; display:inline-block; margin-right: 6%; vertical-align: top;}
body > footer li > h3 {font-size: 18px; font-weight: normal; letter-spacing: 0.01em; color: #fff; margin-bottom: 14px;}
body > footer li a {text-decoration:none; color: #fff;}
body > footer li a:hover {color: #999;}
body > footer ul li ul li {display: block; line-height: 1.8em; margin-right: 0; padding-top:2px; }
body > footer ul li ul li:first-child {padding-top: 0;}
body > footer ul li ul li a {font-size: 14px;}

body > footer > .logo {text-align: center; padding:0px; }
body > footer > .logo img {max-height: 150px;}

/* Image de déco Full size en bas avant le footer */
body > .full {width:100%;} 
body > .full > img { object-fit: cover; width:100%; margin: auto;}

/* under-footer */
body > footer > .underFooter {width: 100%; height: 60px; background: #1c1d22; color: #646464; margin-top: 20px; padding-top:20px;}
body > footer > .underFooter > ul {vertical-align: middle; height: 20px;}
body > footer > .underFooter > ul > li {
	display: inline-block; 
	width: auto; 
	height: 20px; 
	border-right: ridge 2px #555; 
	padding: 5px 9px 0 6px; 
	font-size: 10px; 
	margin-right:0;
	vertical-align: middle; 
}
body > footer > .underFooter ul li a {color: #646464; vertical-align: middle; }
body > footer > .underFooter ul li:last-child {border-right: none;}
body > footer > .underFooter ul li:first-child {padding-left: 0;}



/*  Corps
------------------- */


/* "alone" : Pour pouvoir utiliser un wrap que sur certains éléments, tout en laissant les contenus en affichage 100%. **/
.wrapAlone { position:relative; max-width: 1200px; width: auto; margin: 0 auto; }

.wrap_page { 
	width: 100%; 
	min-height: 50vh; 
}

.wrap { 
	position:relative; 
/*	max-width: 1200px; */
	width: auto; 
	margin: 0 auto; 
}

.wrap-form {max-width: 1200px;}

.wrap > section { padding:2vh 3vw; font-size:13px; line-height:16px; width: 100%; display: inline-block; vertical-align: top;}


.wrap.col { display: flex; flex-direction: row; justify-content: top; }
.wrap.col > section { width: 70%;	}
.wrap.col > aside { width: 30%; font-size:12px; padding:30px 10px 10px 10px; margin-left:10px; background: #f4f4f4;}


.ctBloc {display:flex; flex-direction:column; }
.ctBloc.left { flex-direction:row; }
.ctBloc.left > aside {width:30%; }
.ctBloc.left > section {width:70%;}

.ctBloc.right { flex-direction: row-reverse; }
.ctBloc.right > aside {width:30%;}
.ctBloc.right > section {width:70%;  }

.ctBloc.top {  }
.ctBloc.top > aside {}
.ctBloc.top > section {}
.ctBloc.top > section h1 {text-align: center;}

.ctBloc.bottom {flex-direction:column-reverse; }
.ctBloc.bottom > aside {}
.ctBloc.bottom > section {}
.ctBloc.bottom > section h1 {text-align: center;}

.ctBloc.left.half > aside,
.ctBloc.right.half > aside { width:50%;}
.ctBloc.left.half > section,
.ctBloc.right.half > section { width:50%; }

.ctBloc.left.big > aside,
.ctBloc.right.big > aside { width:60%;}
.ctBloc.left.big > section,
.ctBloc.right.big > section { width:40%; }

.ctBloc.half > aside figure {overflow: hidden; height: 100%;}
.ctBloc.half > aside img {max-width:none; object-fit: cover; height:100%; width:100%;}

.ctBloc.big > aside figure {overflow: hidden; max-height: 60vh;}
.ctBloc.big > aside img {max-width:none; object-fit: cover; height:60vh; width:100%;}

.ctBloc section {padding:0;}
.ctBloc > section > article {padding:2vh 3vw; }

aside.left,
aside.right {
	width: 30%;	
	display: inline-block;
	vertical-align: top;
	margin-top: 20px;

}
aside.left+article {
	vertical-align: top;
	width: 70%;
	padding-left:20px;
	display: inline-block;
}
article.left {
	width: 70%;
	vertical-align: top;
	padding-right:20px;
	display: inline-block;
}

/* Contenu classique
--------------------------- */
.chapo {
	font-family: "Roboto Slab";
	line-height: 24px;
	font-size:18px;
	font-weight: lighter;
	margin: 4vh 0;
}

.content {
	font-size:14px;
	line-height: 18px;
	padding-bottom: 10px;
	color:#444;
}
div.link { margin:20px 0px 30px 0px; text-align: center;}
div.link a {
	background: #151515;
	color:#fff;
	padding:13px 30px;
	max-width: 60%;
	border-radius: 10px;
	min-height:30px;
	text-decoration:none;
	font-size:18px;
	display: inline-block;
}
div.link a:hover { background: #777;}
div.link a.file { background: none; color: #000; }
div.link a.file:hover { background:#eee; }
div.link a.file i { font-size: 2em; margin-right: 10px; }

div.links {
	width: 100%;
	display: block;
	background: #a88;
	padding:4vh 3vw;
	margin: 0;
	color:#fff;
}
div.links ul li { list-style: disc; margin-left:10px; color:#fff;}
div.links ul li a { width: 100%; display: block; font-size:14px; padding:6px 0px; text-decoration: none; color:#fff;}
div.links ul li a:hover{ text-decoration: underline;}

div.fileLinks { display: block; padding:15px; margin: 10px 0 20px 0; }
div.fileLinks ul li { list-style: none; margin-left:10px;}
div.fileLinks ul li a { width: 100%; display: block; font-size:14px; padding:6px 0px; text-decoration: none; color:#000;}
div.fileLinks ul li a:hover { text-decoration: underline;}
div.fileLinks ul li a i { font-size: 2em; margin-right: 10px; }

.file { color: #666; }
.file.pdf { color: #da251c; }
.file.doc { color: #2b5797; }
.file.tab { color: #1e7145; }
.file.key { color: #d04525; }
.file.arc { color: #cba81b; }
.file.img { color: #57bf1c; }
.file.aud { color: #208895; }
.file.mov { color: #464646; }

/* Edito ****************************/
.signature {width: 100%; text-align: right;  margin-top: 5%;}
.signature img {text-align: left; }
.signature figure {text-align: right; width:40%; display: inline-block; }
.signature figcaption {
	text-align: left;
	font-size:16px;
	padding-left: 20px;
	margin-right: 0;
}

/* Personne ****************************/

.person { margin:6vh 0; display:flex; flex-direction:row;}
.person aside { width: 30%; display: inline-block; }
.person aside img { max-height: 300px; border-radius: 100%; border:1px solid #999; min-height: 220px;}
.person section { width: 70%; display: inline-block; justify-content:center; display:flex; flex-direction:column;}

.person .func { color:#555; font-size:16px; display: block; padding-bottom: 4px;}
.person a { color:#999; text-decoration: none;}
.person a:hover { text-decoration: underline;}
 
.persons.largeList {justify-content:center; display:flex; flex-direction:row; flex-wrap:wrap;}
.persons .exhibitor > figure {flex:1; justify-content:center; display:flex; flex-direction:column; }
.largeList .person {flex-direction:column; width:25%; display:flex; }
.largeList .person img {width:80%; border-radius: 100%; border:1px solid #999; }
.person > div > h2 {text-align: center; font-size:22px; padding-top:15px;}

.persons.smallList {justify-content:start; display:flex; flex-direction:row; flex-wrap:wrap;}
.smallList .person{flex-direction:column; width:180px; margin:20px 10px; display:flex; }
.smallList .person figure img {border-radius: 100%; border:1px solid #999; }
.smallList .person h2 {font-size:18px;}

.person-view {display:flex; flex-direction:column; }
.person-view > figure {width:100%; overflow: hidden; height: 300px;}
.person-view > figure img {width:100%; object-fit: cover; height:100%; border-radius: 100%;  border:1px solid #999;}
.person-view > section {display:flex; flex-direction:row; padding:0;}
.person-view > section.info figure {width:30%; text-align: center;}
.person-view > section.info figure img {width:70%;}
.person-view > section.info article {width:40%; display:flex; flex-direction:column; justify-content:center;}
.person-view > section.info article:last-child {width:30%; text-align: center;}
.person-view > section.info article h3 { color:#555; font-size:20px;}
.person-view > section.info article h2 { color:#000; font-size:24px; font-weight: 100; text-align: center; margin-bottom: 4vh;}
.person-view > section.info article:last-child span { text-align: center;}
.person-view > section.info article h1 { text-align: left;}
.person-view > section.ct article {width:70%; padding:6vh 5vw;} 
.person-view > section.ct figure {width:30%; overflow: hidden;} 
.person-view > section.ct figure img {width:100%; height: 100%; object-fit: cover;} 

.person-view > .link { background: #333; width: 100%; padding-left:30%; color:#fff; text-align: left; margin: 0; transition: 0.3s all ease;}
.person-view > .link a { color:#fff; text-decoration: none; display:inline-block; height:30px; padding:6px; background: inherit; border-radius: 0;}
.person-view > .link a:hover { text-decoration: underline; background: inherit;}
.person-view > .link:hover {background: #000;} 





/* Attendees - participants
--------------------------- */
.trombi  {justify-content:center; display:flex; flex-direction:row; flex-wrap:wrap;}
.trombi li {flex-direction:column-reverse; display:flex; width:250px; margin-bottom: 40px; text-align: center; }
.trombi li figure {flex:1;  width:170px; height:170px; align-self:center;}
.trombi li figure img {border-radius: 100%; width:100%;  height: 100%; object-fit: cover; border:1px solid #999;}
.trombi li span {font-size:14px; text-align: center; padding-top:5px;}
.trombi li span * {display: block; text-align: center; text-decoration: none;  padding:2px 0; }


.attendees .list {
	font-size: 0;
/*	-moz-column-gap: 20px;
	-webkit-column-gap: 20px;
	-o-column-gap: 20px;
	column-gap: 20px;
	-moz-column-count: 4; 
	-webkit-column-count: 4; 
	-o-column-count: 4; 
	column-count: 4;
*/	margin:10px 40px;
	display:flex;
	flex-wrap: wrap;
	
}
.attendees .list li {
	-webkit-column-break-inside: avoid;
	-moz-column-break-inside: avoid;
	-o-column-break-inside: avoid;
	column-break-inside: avoid;
/*	display: table;*/
	display:flex;
	justify-content: start;
	min-height: 60px;
	min-width: 200px;;
}
.attendees .list li span {font-size:14px; padding:8px;}
.attendees .list li span * {display: block; text-decoration: none;  padding:2px 0; }



/* Exposants 
--------------------------- */
.search {font-size:0; background: #ddd; border-radius: 0 0 10px 10px; padding:10px 20px; margin:10px 0 20px 0; }
.search article { display: inline-block; margin:10px 20px 10px 0; }
.search article * { font-size:14px; vertical-align: middle;}
.search article label { text-align: right; padding-right: 20px; margin:6px 0px;}
.search article input,
.search article select { margin: 6px 40px 6px 0;}
 
.exhibitor { margin:6vh 0; display:flex; flex-direction:row;}
.exhibitor aside { width: 30%; display: inline-block; }
.exhibitor aside img { max-height: 300px; }
.exhibitor section { width: 70%; display: inline-block; justify-content:center; display:flex; flex-direction:column;}

.exhibitor .booth { color:#555; font-size:16px; display: block; padding-bottom: 4px;}
.exhibitor a { color:#999; text-decoration: none;}
.exhibitor a:hover { text-decoration: underline;}

.exhibitors.largeList {justify-content:center; display:flex; flex-direction:row; flex-wrap:wrap;}
.exhibitors .exhibitor > figure {flex:1; justify-content:center; display:flex; flex-direction:column; }
.largeList .exhibitor {flex-direction:column; width:25%; display:flex; }
.largeList .exhibitor img {width:80%; }
.exhibitor > div > h2 {text-align: center; font-size:14px; padding-top:10px;}

.exhibitors.smallList {justify-content:start; display:flex; flex-direction:row; flex-wrap:wrap;}
.smallList .exhibitor{flex-direction:column; width:180px; margin:20px 10px; display:flex; }

.exhibitor-view {display:flex; flex-direction:column; }
.exhibitor-view > figure {width:100%; overflow: hidden; height: 300px;}
.exhibitor-view > figure img {width:100%; object-fit: cover; height:100%; }
.exhibitor-view > section {display:flex; flex-direction:row; padding:0;}
.exhibitor-view > section.info figure {width:30%; text-align: center;}
.exhibitor-view > section.info figure img {width:70%;}
.exhibitor-view > section.info article {width:40%; display:flex; flex-direction:column; justify-content:center;}
.exhibitor-view > section.info article:last-child {width:30%; text-align: center;}
.exhibitor-view > section.info article h3 { color:#555; font-size:20px;}
.exhibitor-view > section.info article h2 { color:#000; font-size:24px; font-weight: 100; text-align: center; margin-bottom: 4vh;}
.exhibitor-view > section.info article:last-child span { text-align: center;}
.exhibitor-view > section.info article h1 { text-align: left;}
.exhibitor-view > section.ct article {width:70%; padding:6vh 5vw;} 
.exhibitor-view > section.ct figure {width:30%; overflow: hidden;} 
.exhibitor-view > section.ct figure img {width:100%; height: 100%; object-fit: cover;} 

.exhibitor-view > .link { background: #333; width: 100%; padding-left:30%; color:#fff; text-align: left; margin: 0; transition: 0.3s all ease;}
.exhibitor-view > .link a { color:#fff; text-decoration: none; display:inline-block; height:30px; padding:6px; background: inherit; border-radius: 0;}
.exhibitor-view > .link a:hover { text-decoration: underline; background: inherit;}
.exhibitor-view > .link:hover {background: #000;} 


.letters {text-align: center; margin:40px; }
.letters li { 
	display: inline-block;
	font-size:16px;
	color:#888;
}
.letters li a { color:#888; text-decoration: none;	padding:2px 4px;display: inline-block;}  
.letters li:hover a { color:#888; text-decoration: underline; } 

h4.letter {
	margin-top:20px;
	font-size:26px;
	color:#888;
	border-bottom:2px solid #888
}


/* Slider
--------------------------- */
.slider {padding: 0; width:100%; margin: 0; position:relative; overflow: hidden;}
.slider > ul li {width: 100%;}
.slider > ul li>img {width: 100%;}
.slider .slide_info h2 {font-size:50px; color:#fff; margin-bottom: 20px; line-height: 60px;}
.slider .slide_info .link a {font-size:24px;}
.slider .slide_info > div, 
.slider > .slide_info > div p {color:#fff; font-size: 22px; line-height: 30px;}
.slider .slide_info {
    color:#000;
    width: 675px;
    position: absolute; top: 25%; left:0;
    background: rgba(0,0,0,0.4);
    box-shadow: 0 1px 2px #000;
    z-index: 5;
    padding: 2% 5%;
    box-sizing: border-box;
}
.slider .link {margin: 10% 0 5%;}


/* Hôtels
--------------------------- */
 
.hotel { margin:20px 0 40px 0;}
.hotel aside { width:35%; margin-top: 0;}
.hotel aside > div { height: 450px; width:100%; border:1px solid #ddd; border-width:1px 1px 1px 0px; padding:3px 3px 3px 0;  }
.hotel aside img { max-height: 450px;}
.hotel > section { width: 65%; display: inline-block; }
.hotel .link {position:relative; z-index:0; background: #444; width: 99vw; left:-38vw; padding-left:38vw; }
.hotel .link li { position:relative; z-index:1; color:#fff; padding-left:2px; } 
.hotel .link a { color:#fff; text-decoration: none; display:inline-block; height:30px; padding:6px; position:relative; z-index:1;}
.hotel .link a:hover { text-decoration: underline;}
.hotel img {  }
.hotel section > article,
.exhibitor section > article {display:flex; justify-content:space-between; width: 100%; margin-top:3vh; }
.hotel section > article > div,
.exhibitor section > article > div { flex:1; }
.hotel .content { margin-top: 10px; padding-right: 40%;}

article .contact .cpy { font-size:16px; display: block; color:#555; padding-bottom: 4px;}
article .contact .func {display: block;}
article .contact .phone {display: block;}
article .contact .email {display: block; text-decoration: none;}
article .contact .email:hover {text-decoration: underline;}
article .contact .func { color:#999;}


/* GRID
--------------------------- */


.wrap .digi-grid,
.wrap .digi-news-grid {overflow: hidden; margin:30px 0 0 0; padding:0; }

.wrap .digi-grid .ctBloc > section {flex-grow:1; justify-content:center; flex-direction:column; display:flex;}

.wrap .bloc-news {
	width:200px;
	height: auto;
	min-height: 100px;
	display: flex; 
	opacity:0;
	flex-direction:column; 	
	justify-content:center;
	background: #fafafa;
}

.wrap .bloc-news > aside {}
.wrap .bloc-news > aside figure{ overflow: hidden; text-align: center;  }
.wrap .bloc-news > aside img { 
	width:100%; 
	height:100%; 
	object-position: center; 
	object-fit: cover;  
	overflow: hidden; 
	max-width: none;
}
.wrap .bloc-news > section {
	flex:1;
	padding:1vh 1vw;
}
.wrap .bloc-news > section h2 {font-size: 18px; line-height: 20px;}
.wrap .bloc-news > section .chapo {font-size:13px;}





/* Rangée de blocs
--------------------------- */
.wrap .ct-blocs {
	justify-content:center; 
	flex-direction:row; 
	display:flex;
}
.wrap .ct-blocs > .wrap {
	flex:1;
}

.wrap .ct-blocs .hotel {margin:0;}
.wrap .ct-blocs .hotel .link {width: auto; left:0; padding-left:0; }
.wrap .ct-blocs .hotel .content { padding-right: 0; }
.wrap .ct-blocs .hotel section > article {flex-direction:column; }
.wrap .ct-blocs .hotel section > article > div {padding-bottom:20px;}
.wrap .ct-blocs .hotel aside { width:100%; margin-top: 0;}
.wrap .ct-blocs .hotel aside > div { height: 250px; }
.wrap .ct-blocs .hotel aside img { max-height: 250px;}
.wrap .ct-blocs .hotel > section { width: 100%; }


/*  Categories produit
----------------------- */
.wrap .categories {display:flex; flex-direction:row; flex-wrap:wrap; font-size:0;}
.categories article {
	margin:2vh 2vh; 
	background-size: cover; 
	background-position: center; 
	display: inline-block; 
	width:calc(25% - 4vh); 
	min-height: 30vh;
	position:relative;
	
}
.categories article::before {
	content:"";
	position:absolute;
	z-index:0;
	height: 100%;
	width: 100%;
	background: #000;
	opacity:0.1;
	transition:all 0.4s ease; 
}
.categories article:hover::before { opacity: 0.4;}

.categories article:nth-child(-n+2) {width:calc(50% - 4vh);}
.categories article:nth-child(n+3):nth-child(-n+5), 
.categories article:nth-child(n+10):nth-child(-n+12),
.categories article:nth-child(n+17):nth-child(-n+19) {width:calc(33.33% - 4vh);}
.categories article > a {
	display:flex; 
	z-index:1;
	position:relative;
	flex-direction:column; 
	justify-content:end; 
	padding:1vw; 
/*	background:rgba(0,0,0,0.1); */
	text-decoration: none; 	
	min-height: 30vh;
	cursor: pointer;
}
.categories article.noimg > a {justify-content:center; text-decoration: none; }
.categories article > a h2 {font-size:40px; line-height: 34px; color:#fff; text-align: center; z-index:1; text-decoration: none; transition:all 0.8s;}
.categories article:hover > a h2 {color:#eee;}


/*  Bloc Produits
----------------------- */
.prods { display: flex; flex-wrap:wrap; flex-direction:row; justify-content:left; margin-top:20px;}
.prods > article { 
	display: flex;
	min-height: 150px;
	width:23%;
	margin:0 2% 20px 0; 
	background: #f1f1F1; 
	flex-direction:column; 	
}
.prods > article div.noimg { flex-grow:1; display: flex; flex-direction:column; }
.prods > article h2 {font-size:18px; padding:6px 6px; font-weight: normal;}
.prods > article h2 a {text-decoration: none; color:#252525;}
.prods > article div.noimg h2 {
	flex-grow:1; 
	background: #fafafa; 
	color:#000;
	justify-content:center;
	flex-direction:column; 	
	display: flex; 
	font-size:28px;
}
.prods > article div.noimg h2 a {display:block; text-align: center;}
.prods > article .price {color:#3b3e88; font-size:20px; font-weight: bold; width:auto;}
.prods > article input {width:25px; font-size:14px; height:20px;}
.prods > article i.fa {color:#252525; font-size:20px; margin-left:5px; cursor: pointer;}
.prods > article figure {background: #fff; border:1px solid transparent;}
.prods > article figure:hover {border:1px solid #f1f1f1;}
.prods > article:nth-child(4n) {margin-right: 0;}
.prods > article > div > div { display: flex; flex-direction:row; width:100%;padding: 0 8px 7px 8px;}
.prods > article .quantity-modifier{ flex-grow:1; text-align: right;}
.prods > article .quantity-modifier * { vertical-align: middle;}

.jet_img {position: absolute; z-index: 1;}
.jet_img img {width: 100%;}
.jet_img h2 {width:200px; height:150px; background: #f1f1f1; 	display: -ms-flex;  font-weight: normal; font-size:28px; 
	display: -webkit-flex; 
	display: flex; 
	-ms-flex-direction:column; 	
	-webkit-flex-direction:column; 	
	flex-direction:column; 	
	justify-content:center;
	-ms-justify-content:center;
	-webkit-justify-content:center;
	
	text-align: center;
}
.jet_img h2 a {color:#252525; display: inline-block; text-decoration: none;}

.prod {margin-top:25px;}
.prod > .info {
	width:50%;
	display: inline-block;
	vertical-align: top;
	padding-right:50px;
	padding-top:20px;
}
.prod > .info * {vertical-align: middle; display: inline-block;}
.prod > .info .desc {font-size:14px; margin-top:25px;}
.prod .price {color:#3b3e88; font-size:28px; font-weight: bold; width:50%; text-align: center;}
.prod .price i {font-size:14px; font-style: normal;}
.prod input {width:45px; font-size:14px; height:30px;}
.prod i.fa {color:#252525; font-size:28px; margin-left:15px; cursor: pointer;}
.prod > aside { width:50%; display: inline-block; vertical-align: top;}
.prod > aside figure { width:100%;}
.prod > aside figure img { width:70%; max-height: 100%;}



/*Home Page / Bloc list des intervenants____________________*/
.vis-bloc .img_bg {width: 25%; height: 350px; display: inline-block; position: relative;}
.vis-bloc .overlay {
	position: absolute;
	top: 0; left: 0; z-index: 1;
	height: 100%; width: 100%;
	background-color: transparent;
	transition: background-color 1s ease 0s;
}
.vis-bloc article:hover .overlay {
	background: rgba(0,65,255,0.8);
	display: block;
}
.vis-bloc article a h2 {
	text-align: center;
	font-style: normal;
	text-transform: uppercase;
	color: #fff;
	width: 100%;
	font-family: 'avenir-heavy';
}
.vis-bloc article a {
	text-decoration: none;
	font-weight: bold;
	display: none;
	width: 100%; height: 30%;
	text-align: center;
	position: absolute;
	top: 40%; left: 0;
	z-index: 2;
	transition: 0.5s all;
}
.vis-bloc article:hover a {display: block;}



/* Event tomorrow
--------------------------- */

.event .date {display:flex; flex-direction:column; justify-content:center; }
.event .date > div {display:flex; flex-direction:row;} 
.event .date span { font-size:40vh; line-height: 30vh; justify-self:end; }
.event .date > div > b {display:flex; flex-direction:column; justify-self:start; justify-content:space-between;}
.event .date u {font-size:8vh; text-decoration: none; line-height: 10vh;}
.event .date i {font-size:13vh; font-style: normal;line-height: 12vh;}
.event .date i s {font-size:6vh; text-decoration: none;}


.event-trw {
	background:#070;
	color:#fff;
	padding:2vh 3vw;
	
}
.event-trw > h2 { color:#fff; font-size:56px; margin-bottom: 40px; }
.event-trw > section {
	display:flex;
	flex-direction:row;
}
.event-trw > section > div {
	padding:0 2vw;
	flex:1;
}

.event-trw .address i.fa {font-size:50px; width:10%; display:inline-block; vertical-align:middle;}
.event-trw .address address {display:inline-block; width:85%; font-size:14px; font-style: normal; vertical-align: middle; line-height: 18px;}
.event-trw .address article > div {height:50vh; margin-bottom: 30px;}
.event-trw .qrCode {text-align: center; }
.event-trw .qrCode img {width:50vh; height:50vh; vertical-align: bottom; }



/* All-in-one Event
--------------------------- */
.event-all {min-height: 100vh; display:flex; flex-direction:column;}
.event-all > header {display:flex; flex-direction:row; background: #000; color:#aaa;}
.event-all > header figure {width:66%; display: inline-block;}
.event-all > header figure img {width:100%; height:100%; object-fit: cover;}
.event-all > header > div {width:34%; display: inline-block;}
.event-all > header > div > div {margin:0 auto; display:block; }
.event-all > div {flex-grow:1; display:flex; flex-direction:row;}
.event-all > div > section { display:inline-block; width:66%; padding:2vh 2vw; }
.event-all > div > aside { padding:3vh 0; display:inline-block; width:34%; }
.event-all > div > aside > h3 {font-size:24px; margin-bottom:2vh;}
.event-all > div > aside .content {font-size:14px; line-height: 18px; margin-bottom: 4vh;}
.event-all > div > aside .contact span {font-size:14px; display:block; line-height: 18px; }
.event-all > div > aside .contact a {font-size:14px; display:block; line-height: 18px; }

.event-all > div > aside .address {margin: 4vh 0;}
.event-all .address i.fa {font-size:50px; width:10%; display:inline-block; vertical-align:middle;}
.event-all .address address {display:inline-block; width:85%; font-size:14px; font-style: normal; vertical-align: middle; line-height: 18px; }


/* Agenda
--------------------------- */

h2.agenda {
    font-size: 36px; letter-spacing: 1px;
    margin-top: 20px;
    color:#fff;
    background: #3d78bc;
    opacity: 0.5;
    padding: 2%; margin: -11px 0 0 0;
    text-align: center; 
    font-weight: normal;}
table.agenda {width: 100%; margin-bottom: 40px; text-align: center;}
table.agenda th {background-color: #3d78bc;color:#fff; font-size: 20px; font-weight: normal; opacity: 0.8; padding:12px 14px;}
table.agenda td {border-bottom:#aaa 1px solid; padding: 20px 10px; font-size:14px; line-height: 20px; color:#555; text-align: left;}
table.agenda td .title {display: block; color:#555; font-weight: bold; font-size:15px;}
table.agenda td:nth-child(1) {width: 10%; min-width: 50px;}
table.agenda td:nth-child(2) {text-align: center; width: 15%;  min-width: 50px;}
table.agenda td:nth-child(3) {color:#999;}

table.agenda td.break>div {text-align: center; color:#999; font-size:11px; font-weight: normal;}
table.agenda tr:hover td {background: #f4f4f4;}

table.agenda td:nth-child(1), table.agenda th:nth-child(1) {width: 20%; text-align: center;}
table.agenda td:nth-child(1) {font-size: 25px;}
table.agenda td:nth-child(1) > span {text-align: left; margin-left: 30%; display: block;}
table.agenda td:nth-child(2), table.agenda th:nth-child(2)  {width: 35%;  min-width: 50px;}

table.agenda td.break {background:#eee; text-align: center; color:#a00; font-style: italic; letter-spacing: 1px; font-size: 25px; font-weight: normal; line-height: 40px;}



/* Google Map 
--------------------------- */

.jGmap {display: none;}
.j-Gmap, .j-Map { height: 450px; width:100%;}
.gmTitle {text-align: center;}
.gmImage { max-height: 150px; max-width:250px; vertical-align: top; object-fit: cover; display: inline-block;}
.gmAddr {color:#999; font-style: italic;}
.gmContent { vertical-align: top; padding-left:10px; display: inline-block; max-width: 250px; max-height: 250px; overflow-y: hidden;}



/* KIT Média
--------------------------- */

article.kit .result {
	padding:10px;
	border:3px double #aaa;
	background: #eee;
	margin:20px 0px;
}
article.kit code {
	display: block;
	padding:10px;
	margin:10px 0px 20px 0;
	width:100%;
	overflow: scroll;
	min-height:60px;
	max-height:140px;
	white-space: nowrap;
	border:3px double #aaa;
}



/*  Formulalre
------------------- */
.digiForm {width: 100%;margin: 0 auto;}
.digiForm div {display: inline-block;}

.digiForm article {font-size: 0; margin:10px 0;}
.digiForm article>label, 
.digiForm article label {width:30%; font-size: 14px; text-align: right; display: inline-block; padding-right:20px; color:#777; vertical-align: top;}
.digiForm article>div {width:40%; font-size: 14px; text-align: left; display: inline-block;}
.digiForm article.formTxt {font-size:12px; margin-left: 30%;}
.digiForm article.formTxt.inline {padding-left: 30%; }

.digiForm article.trombiPicture {text-align: center;}
.digiForm article.trombiPicture figure img {width:30%;}
.digiForm article.trombiPicture span {font-size:12px; }


form article s{text-decoration: none;}
form article s::before {content:" *"; font-size:14px; color:#d00; }

.digiForm .form-title {
	font-size:18px;
	font-weight: normal;
	display: block;
	color:#555;
	margin:20px 30% 6px 15%;
	border-bottom:1px solid #999;
	padding:0 0 3px 0;
}
.digiForm section {margin:40px 0;}
.digiForm section > section {margin:0;}
.digiForm .invisible div {border: none; padding: 0; margin: 0;}
form .central {
	text-align: center;
	display: block;
	margin-top: 20px;
	margin-bottom: 40px;
}
form .central input[type="submit"],
form .central button {
	padding:13px 30px;
	max-width: 60%;
	min-height:30px;
	text-decoration:none;
	font-size:18px;
}

.digiForm .infoMention {font-size: 12px; padding: 40px 0 0 0;}
.digiForm .conference {padding-top: 10px; font-size: 13px; font-weight: bold;}
.digiForm .separ_txt {margin-top: 60px; border-top: 3px double #e4e4e4; padding-top: 25px;}

.digiForm article.hotelFellows>div {display: block; width: 100%; margin-right: 31px}
.digiForm article.hotelFellows>div li {text-align: right;}
.digiForm article.hotelFellows>div li div {margin-right: 25px;margin-left: 15px;}
.digiForm article.hotelFellows>div li input {margin-left: 5px;}
.digiForm article.hotelFellows > div {margin-left: 30%; width: 70%;}
.digiForm article.hotelFellows > div li {text-align: left; }
.digiForm article.hotelFellows > div li label {text-align: left; width: 20%;}
.digiForm .hotelNbNights {font-weight: bold; margin-bottom: 50px;}
.digiForm .hotelNbNights div:before {content: "Nombre de nuit : ";}

form article.error label { color:#d00;}
form article.error input { border-color:#d00; color:#d00; box-shadow : 0 1px 4px rgba(0, 0, 0, 0.2) inset, 0 0 2px 1px rgba(240, 61, 31, 0.3);}
.digiForm .formCheckbox label {vertical-align: top;}
.digiForm .formCheckbox input {vertical-align: top;}
.digiForm .formRadio ul {text-align: left;}
.digiForm .formRadio ul li {display: inline-block;padding-right: 20px;}

.digiForm .hotelMainModule.hotelChoice > div {width: 70%;}
.digiForm .hotelMainModule.hotelChoice.formRadio ul li {display: block; margin-bottom: 1%;}
.digiForm .hotelMainModule.hotelChoice.formRadio ul li label {text-align: left;}

.digiForm .oneline {padding-top:8px;padding-bottom: 10px;}
.digiForm .oneline>label {width:80%;text-align: left;font-size:16px;margin-left:15%;padding-bottom: 10px;}
.digiForm .oneline>div {margin-left:20%; width: 60%;}
.digiForm .oneline>div label {width:94%;display: inline-block;}
.digiForm .oneline>div>ul label {width: auto; vertical-align: middle;}
.digiForm .oneline>div>ul input { vertical-align: middle;}
.digiForm .oneline textarea { width: 80%;}
.digiForm .oneline .form-title {font-size:16px;margin-left: 15%; border:none;}
.digiForm section.oneline>article {margin-left:7%;} 

.digiForm.login article > label { padding-top: 8px;	vertical-align: top;}

article>div>span.connex { font-size:11px; padding-top:4px; display: block; text-align: right;  cursor: pointer;}
article>div>span.connex:hover {text-decoration: underline;}

ul.errors {background : #B71D21; padding:20px;}
ul.errors li {list-style: circle; margin-left:10px;	color:#fff;	margin-bottom: 3px;font-size: 13px;}

.modAccompany .tpl {display:none;}
.modAccompany .accForm {
	margin-bottom: 15px;
	padding-bottom: 8px;
	border-bottom: 1px solid #eee;
	display: block;
	width: 100%;
}
.modAccompany .accForm article{
	display:inline-block;
}
.modAccompany .accForm article label {min-width: 30%;}
.app-List {position:relative; border:1px #ccc solid; margin: 0 0 20px 0; padding:0; background: #fff; clear:both}

.digiForm .app-List { width: 100%; position:relative; }
.app-List header {padding-left:0px;}
.app-List table { width: 100%; border:none; border-spacing: 0; border-collapse: collapse; }
.app-List table td { margin:0; }
.app-List table tr.noresult { display:none; }
.app-List table tr.noresult td {
	padding:30px;
	font-weight: bold;
	font-size:14px;
	text-align: center;
	color:#d00;
}
.app-List table tr.headcols td, .app-List thead th { /* titre */ 
	height:24px;
	font-size:12px;
	padding:3px 4px;
	line-height: 16px;
    background: linear-gradient(to bottom, #758294, #657284);
    color:#fff;
    text-align: left;
    cursor: pointer;
}
.app-List table tr.headcols td:hover { background: linear-gradient(to bottom, #95a2b4, #8592a4); }
.app-List table tr.headcols td.on { background: linear-gradient(to bottom, #999, #777); color:#fff; }
.app-List table tr.headcols td i { padding:0 4px 0 8px; float:right; }
.app-List table tr.headcols td.action i { float: none; }
.app-List table tr td, .app-List table tr th  {
	height:24px;
	padding:3px 4px;
	font-size:11px;
	line-height: 14px;
	background: #fff;
	border-bottom: 1px solid #ddd;
}
.app-List table tr th  {
    white-space: nowrap;
}
.app-List table tr td.link { font-weight: bold; cursor: pointer; }
.app-List table tr td.link-sec { cursor: pointer; }
.app-List table tr td.link:hover, 
.app-List table tr td.link-sec:hover { text-decoration: underline;}
.app-List table tr.search td { height:36px; }
.app-List table tr.search td input { height:22px; border:1px solid #ccc; font-size:11px; line-height: 14px; padding:2px 3px; width:97%}
.app-List tbody th,
.app-List table tr .action {	text-align: center; }
.app-List tbody i,
.app-List table tr td.action i { padding:0 8px; color:#555; font-size: 14px; font-weight:normal; }
.app-List table tr:nth-child(even) td, .app-List table tr:nth-child(even) th { background: #f0f0f0; }
.app-List>div { padding:4px 8px; text-align: right; } 
.app-List select { line-height: 14px; height:auto; padding:0; margin:2px; }
.app-List header div span { display: inline-block; padding-right: 30px; font-size: 11px; line-height: 24px; vertical-align: middle; }
.app-List header>div:first-child {
    background: linear-gradient(to bottom, #f8f8f8, #eaeaea);
    vertical-align: middle;
	margin: 0;	
	padding: 3px 5px;	
	height:34px;
	border-bottom: 1px solid #ccc;
	display: block;
}
.app-List header aside { float:right; height:28px; }
.app-List header aside>div{
	display: inline-block;
	padding-right: 20px;
	padding-left: 20px;
	height: 28px;
	border-left:1px solid #ccc;
	margin-left: 20px;
	border-right:1px solid #ccc;
	margin-right: 20px;
}
.app-List .pagination {text-align: right;}
.app-List tbody th u {font-weight: normal; margin:0 5px;}
.app-List tbody th u:hover {text-decoration: none;}
.app-List tbody th u,
.app-List tbody th i,
.app-List .action i { cursor: pointer;}
.app-List table tbody tr:hover:nth-child(odd) td, .app-List table tbody tr:hover:nth-child(odd) th {background: #fafaff;}
.app-List table tbody tr:hover:nth-child(even) td, .app-List table tbody tr:hover:nth-child(even) th {background: #f0f0f5;}
.app-List table tr.new td {	background: #efe;}
.app-List table tr.dragging td {	opacity: 0.9; background:#fee; }
.app-List .lineDrag { z-index:2; position:absolute; width:auto; height:auto; opacity: 0.9; cursor: move;}

.app-List table tbody tr td.price {
	text-align: right;
	padding-right: 20px;
}
.app-List td.price.credit {color:#00c;}
.app-List td.price.debit {color:#c00;}
.app-List table tbody tr td.subtotal{
	color:#000;
	text-align: right;
	background: #eee;	
}
.app-List table tr td.total, .app-List table tbody tr:hover td.total {
	text-align: right;	
	background-color: #000;
	color:#fff;
	font-weight: bold;
}
.modRdv {position:relative; text-align: center;}
.modRdv>h1 {margin:10px 0px 20px 0px;}


.modRdv .panel.confForm button,
.modRdv .btn {
	background-color:#F5F5F5;
	background-image: linear-gradient(to bottom, #f8f8f8, #E0E0E0);
	border:solid 1px;
	line-height: 14px;
	font-weight:bold;
	display: inline-block;
	vertical-align: top;
	border-color: rgba(0, 0, 0, 0.15) rgba(0, 0, 0, 0.15) rgba(0, 0, 0, 0.25);
	border-radius: 3px 3px 3px 3px;
	font-size:12px;
	padding:7px 13px;
	color:#555;
	white-space:nowrap;
	cursor: pointer;
}

.modRdv .panel.confForm button,
.modRdv .btn:hover	{ opacity:0.85; transition: opacity 0.1s ease-in-out 0s; }
.modRdv .panel.confForm button,
.modRdv .btn.valid { color:#fff; background-color:#6ac; background-image: linear-gradient(to bottom, #9c6, #694);}
.modRdv .panel {
	border: 1px solid #aaa;
	border-radius:5px;
	background: #fea;
	padding:15px;
	position:relative;
}
.modRdv .panelContainer{
	display: block;
	width: 100%;
	position:relative;
}
.modRdv .panel h2 {	margin:5px 0px 10px 0px;}
.modRdv .panel ul {	list-style: none;}
.modRdv .panel ul li.day {	display: inline-block; width: 48%; padding:0 5%;}
.modRdv .panel li.plage { padding: 8px 0px;}
.modRdv .panel li.slot {
	margin: 0px 6px 6px 0px;
	padding: 3px 6px; 
	text-align: center;
	cursor: pointer;
	background-image: linear-gradient(to bottom, #ed5, #eb3);
	color:#000;
	border-radius: 5px;
	width:160px; 
	display: inline-block;
}
.modRdv .panel li.slot>span { font-size: 10px;}
.modRdv .panel li.slot>label { cursor: pointer;}
.modRdv .panel li.slot>span::before {content:" (";}
.modRdv .panel li.slot>span::after {content:")";}

.modRdv .panel li.slot {
	width: 100%;
	text-align: left;
}
.modRdv .panel li.slot>label {
	width:140px;
	text-align: center;
}
.modRdv .panel li.slot>span { float:right}
.modRdv .panel li.slot>span::before {content:"Places restantes : ";}
.modRdv .panel li.slot>span::after {content:"";}
.modRdv .panel li.closed {
	cursor:auto;
	background-image: linear-gradient(to bottom, #eaa, #d88);
}
.modRdv .panel li.closed>label { cursor:auto;}

.modRdv .panel.person li.slot>span {
	float: none;
	display: block;
	font-size: 11px;
}
.modRdv .panel.person li.slot>span::before,
.modRdv .panel.person li.slot>span::after { content:""}
.modRdv .panel.confForm h2 {font-size:16px}
.modRdv .panel.confForm .with b,
.modRdv .panel.confForm .at b { width:47px; display: inline-block; text}
.modRdv .panel.confForm .with ,
.modRdv .panel.confForm .at {width:100%;}
.modRdv .panel.confForm span {padding-left:10px;}
.modRdv .panel.confForm .msg { padding-top:10px; display: block;}
.modRdv .panel.confForm .msg b { display: block;}
.modRdv .panel.confForm .msg textarea {width: 100%;}

div.actions,
.modRdv .panel.confForm .actions {padding:8px; display: block; text-align: center;}

.close::before  {
	font-family: FontAwesome;
	content:"\f00d";
	background: #fff;
	border:#000 2px solid;
	text-align: center;
	border-radius: 15px 15px 15px 15px;
	font-size:18px;
	font-weight: normal;
	position:absolute;
	right:-10px;
	top:-10px;
	width:20px;
	height:20px;
	z-index:1;
	cursor: pointer;
}




/* Contacts ****************************/
.wrap .contacts {padding:2vh 3vw; }
.contacts h2 {}
.contacts > div { margin-bottom: 50px;  }
.contacts article {
	display: inline-block;
	width: 32%;
	font-size:14px;
	line-height: 22px;
	color:#777;
	margin:10px 0 30px 0;
	
}
.contacts article .func {display: block;}
.contacts article .phone {display: block;}
.contacts article .email {display: block; text-decoration: none;}
.contacts article .email:hover {text-decoration: underline;}


/* Sponsors ****************************/
.wrap section.sponsors { padding: 10vh 1%;}
.sponsors h2 { text-align: center;}
.sponsors ul { text-align: center; }
.sponsors ul li { display: inline-block; vertical-align: bottom; margin: 0 10px; }
.sponsors ul li figure {  }
.sponsors ul li figure img { }
.sponsors ul li figure figcaption { font-style: normal; color: #777; }


ul.galleries {}
ul.galleries li { width:27%; margin:40px 3% 60px 3%; }
ul.galleries h3 { text-align: center; }
ul.galleries h3 a { color:#777; font-weight: normal; text-decoration: none;}
ul.galleries h3 a:hover { text-decoration: underline;}
ul.galleries img { width: 100%;}

ul.gallery {
	font-size: 0;
	-moz-column-gap: 4px;
	-webkit-column-gap: 4px;
	-o-column-gap: 4px;
	column-gap: 4px;
	-moz-column-count: 4; 
	-webkit-column-count: 4; 
	-o-column-count: 4; 
	column-count: 4;
}
ul.gallery li {
	padding:0 0 4px 0;
	line-height: 0;
}
ul.gallery li img {
	width: 100%;
}

.sponsors {text-align: center; margin-bottom: 20px;}
.sponsors ul li {display: inline-block; padding: 10px 15px;}
.sponsors ul li figure img {max-width: 150px;}
.sponsors ul li figure figcaption {font-size: 10px;}



/* Section - Member / main */
section.member nav {text-align: center; padding:20px 0;}
section.member.main { display: flex; flex-direction:row; flex-wrap:wrap; padding:0; }
section.member.main > article { width: 33%; padding: 30px 3%; font-size:14px;}
section.member.main > article:nth-child(2n-1) {background:#eee;}
section.member.main > article h2 { padding-left:0; text-align: center;}
section.member.main > article h3 { margin-bottom: 10px; }
section.member.main > article p { margin-bottom: 30px; }
section.member.main > article p:last-child { margin-bottom: 0; }
section.member.main fieldset {margin:10px 0; }
section.member.main fieldset article {margin:10px 0; }
section.member.main fieldset article label {display:inline-block; width:40%; }
section.member.main fieldset article div { display:inline-block; width:50%;}
section.member.main article.orders { }
section.member.main article.orders table { width: 100%; border-collapse: separate; border-spacing: 10px; }
section.member.main article.orders table th { text-align: left; }
section.member.main article.orders table th a { color: #000; }
section.member.main article.orders table th a:hover { text-decoration: underline; }
section.member.main article.orders table td { }
section.member.main article.address { }
section.member.main article.id { }

/* Section - Member / orders */
section.member.orders { }
section.member.orders > ul { list-style: none; }
section.member.orders > ul > li { display: inline-block; vertical-align: top; margin: 0 4% 4%; width: 40%; background: rgba(255,255,255,0.4); }

/* Section - Member / order */
section.member.order { }
section.member.order article { padding: 1vw; }
section.member.order article h3 { margin-bottom: 10px; }
section.member.order article .column { display: inline-block; vertical-align: top; width: calc(100% / 3); margin-right: -4px; }
section.member.order article.address { }
section.member.order article.infos { }
section.member.order article.products { padding: 30px 0 0 0; }
section.member.order article.products > h2 { margin: 0 30px; }

/* Section - Member / address */
section.member.address { }
section.member.address .columns article { padding-bottom: 70px; }

/* Section - Member / id */
section.member.id { }
section.member.id .columns article { padding-bottom: 70px; }

/* Section - Member / login */
section.member.login { }
section.member.login .columns article { padding-bottom: 70px; }
section.member.login article.newAccount { }
section.member.login article.login { }

article.left.login, article.right.password {width: 49%; display: inline-block;}
.login form label > span, .password form label > span {width: 30%; display: inline-block; padding-right: 2%;}

section.member.id .columns .login article, section.member.id .columns .password article {display: block; padding-bottom: 1%; }
.login form input.button, .password form input.button {margin-top: 1%; margin-left: 29.5%;}
.login form label > p, .password form > label > p {width: 60%; display: inline-block;}
.login form label > span, .password form > label > span {font-size: 14px; font-weight: bold;}

.login input[type="text"], input[type="password"], input[type="email"] {width: 57%; margin-right: 10%;}

.member.order h2 {margin-bottom: 2%;}
.connex.forgetPwd {text-align: left;}

.quantity-modifier input {display:inline-block; vertical-align: middle; width:40px; text-align: center;margin:0 4px;}
.quantity-modifier .minus, 
.quantity-modifier .plus {display: inline-block; cursor: pointer;background:#d55; border:2px solid rgba(0,0,0,0.1); box-shadow: 0px 0px 2px #aaa; border-radius: 20px; width:16px; height: 16px; text-align: center; font-size:18px; line-height: 10px; vertical-align: middle; color:#fff; }
.quantity-modifier .plus {background:#5d5; line-height: 13px; }


/****************** Process paiement **************/
.basket {
	width:100%;
	margin:2vh auto;
}

.basket thead tr {
	background: #004972;
	color:#fff;
	font-size: 18px;
	height:40px;
}
.basket thead tr td { vertical-align: middle; padding:20px; }

.basket tbody td { border-top:1px solid #fff; min-height:40px; color:#333; vertical-align: top; padding:10px 20px; font-size: 16px;}

.basket tfoot td {	font-size: 24px; background: #3f3f3f; color:#fff; font-weight: bold; padding:20px; }
.basket tfoot .subtotal {font-size:20px; }
.basket tfoot .subtotal,
.basket tfoot .total {text-align: right;}
.basket td.qtty {text-align: center;} 
.basket td.qtty div {text-align: center;} 
.basket td.price {text-align: right;} 

.bloc.order {
	display: inline-block;
	width:90%;
	margin: 5%;
}
.bloc.order h2 {
	font-size:30px;
	font-variant: initial;
	padding-left: 0;
}
.bloc.order h3 {
	padding-bottom: 8px;
	text-align: right;
}
.bloc.order .price {font-size:30px;} 
.bloc.order a li {font-weight: normal;}
.member.order h1 {

}
.member.order h2 {
	font-variant: normal;
	font-size: 40px;
	padding-left: 0;
}
.member.order h3 {
	font-variant: normal;
	font-size: 26px;
	padding-left: 0;
}

.payModes {
	width:90%;
	margin:0 auto 40px auto;
}
.payModes li {
	display: inline-block; 
	width:33%;
	text-align: center;
	border:15px solid transparent; 
	padding:20px;
	transition: 0.5s border-color;
}

.payModes li:hover,
.payModes li.select {border-color:#ccc; }

.payModes li label {
	cursor: pointer;
}
.payModes li img {
	width:80%;
}
.payModes li label span {display:block; text-align: center; padding:10px; font-size:14px;}

.payment_form {
	text-align: center;
	margin:100px auto;
}
.payment_form form {display:inline-block; width:auto;}
.payment_form div {display: block; 	margin:100px auto;}

.cgv {
	font-size:18px;
	text-align: center;
	margin-bottom: 50px;
}


.btn {
	font-size: 16px;
	padding: 13px 10px;
	text-decoration: none; 
	max-width: 40%;
	min-height:30px;
	color:#fff;
	text-decoration:none;
	font-size:18px;
	background: #888;
	vertical-align: middle;
	margin:0 4%;
}
.btn.big {font-size: 24px; padding: 20px 40px;}
.btn.small {font-size: 16px; padding: 10px 10px; min-height: none;}
.btn.mini {font-size: 12px; padding: 4px 7px; min-height: none;}

.staffList .btn {max-width:none; display:inline-block;}

.digiForm-price {
	position:fixed;
	top:calc(40% - 20px);
	right:0;
	height:auto;
	color:#fff;
	background:#3f3f3f;
	border-radius:10px 0 0 10px;
	padding:20px;
	font-size:18px;
}
.digiForm-price .price {
	color:#fff;
}
.digiForm-price .price::before {
	content:"Prix total :";
	display:block;
	padding-bottom: 5px;
}

/****************** Column style modifier **************/
.col aside .wrap > section {padding:0; }
.colBloc.wrap {margin:12px 0;}
.colBloc  h2 {text-align: center;}

.colBloc .person aside {width:100%; padding-right: 0; padding-bottom: 12px;}
.colBloc .person .content {width:100%; padding-right: 0;}
.colBloc .person aside+section {width:100%;}
.colBloc .exhibitor aside {width:100%; padding-right: 0; padding-bottom: 12px;}
.colBloc .exhibitor aside+section {width:100%;}
.colBloc .contacts article {width: 100%;}
.colBloc .contacts > div {margin-bottom: 0;}

.colBloc .hotel {margin-top: 0;}
.colBloc .hotel aside + section {width: 100%; margin-top:12px;}
.colBloc .hotel .content, 
.colBloc .hotel aside {padding-right: 0;}

.colBloc article.left {padding-right: 0px;}
.colBloc aside.left,
.colBloc aside.right,
.colBloc article.left,
.colBloc aside.left+article { width: 100%;}
.colBloc .contacts article {	width: 95%; }
.colBloc ul.gallery {
	-moz-column-count: 1; 
	-webkit-column-count: 1; 
	-o-column-count: 1; 
	column-count: 1;
}

.colBloc div.links {width: 100%;}
.colBloc .j-Gmap { height: 200px;}
	
.colBloc {width: 100%;}
.colBloc > a > img,
.colBloc > img  {width: 100%;}

/*  List Conf & Ateliers------------------- */
.list_conf table {width: 100%; border: 1px solid #444; font-size: 14px;}
.list_conf table td:first-child {width: 20%;}
.list_conf table td {border: 1px solid #444; font-size: 14px;}

.list_conf section > article {margin-bottom: 5%;}
.list_conf section > article figure {
	width: 35%;
	display: inline-block;
}  
.list_conf section aside h2 {padding-bottom: 1%; margin: 0 0 2% 0; text-align: right; border-bottom: 2px ridge #AA0000;}  
.list_conf section aside .desc {text-align: justify;}  
.list_conf section aside .date {
	font-size: 20px;
	font-weight: bold;
	margin: 0 0 5%;
	color: #AA0000;
}
.list_conf section aside {
	width: 60%;
	display: inline-block;
	vertical-align: top;
	padding: 0 10% 0 5%;
}  
.list_conf section .wrap_coord {margin: 2% 0; display: inline-block; vertical-align: top; width: 40%;}  
.list_conf section .wrap_coord a, .list_conf section .wrap_coord span {
	text-decoration: none;
	font-size: 14px;
	color: #444;
	line-height: 20px;
}  
.list_conf section .persons figure {width: 80%;}  
.list_conf section .persons > h3 {width: 100%; font-weight: bold;}  
.list_conf section .person h3 {margin-top: 8px;}  
.list_conf table th {
	background: #E6E1DD;
	border: 1px solid #1C1D22;
	padding: 10px;
}
.list_conf table td {
	position: relative;
	padding: 10px;
	border: 1px solid #1C1D22;
}  
.list_conf table i {cursor: pointer;}
.popEvInfo {
	display: none;
	font-size: 13px;
	position: absolute; top: 0; left: 0; z-index: 100;
	padding: 20px; 
	border: 1px solid #aaa;
	background: white;
	width: 500px;
}
.popEvInfo.active {display: block;}

.list_conf table footer > i {margin-right: 75%;}
.seats {text-align: right; display: inline-block;}
.seats img {width: 28px; vertical-align: middle; padding-right: 5px;}
.seats span {vertical-align: middle;}


/*  Général
------------------- */
body .hide {display:none;}