/* 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; color:#7f7f7f;}

body {
    height: 100%;
    min-height: 100%;
    font-family: Arial, sans-serif; color: #444; font-size: 13px;
}
body > header {
	background: transparent;
    text-align: center;
    width:100%;
    min-height: 44px;
    overflow: hidden;
    position:relative;
}
.page {
    margin-left: 285px;
    margin-bottom: 40px;
    width: calc(100% - 285px);
/*    min-height: 82vh;*/
/*    height: 100%;*/
    box-sizing: border-box;
    display: block;
/*    padding: 5% 0 5% 5%;*/
}
/*.page:nth-child(odd) {min-height: 8vh;}*/
.wrap {
/*    max-width: 1200px; */
    width: auto;
    margin: 0 auto;
}
.wrap.full {
    max-width: 100%;
    width: 100%;
}
.central {width: 100%; text-align: center;}

h1:after {
    position: absolute;
    content: "";
    width: 237px; height: 2px;
    transform: rotate(131deg);
    -ms-transform: rotate(131deg);
    -webkit-transform: rotate(131deg);
    top: 39px; left: -154px;
    background: #003478;
}
h1:before {
    position: absolute;
    content: "";
    width: 0; height: 0;
    border-right: 74px rgba(255,255,255,0) solid;
    border-top: 86px transparent solid;
    border-bottom: 0 transparent solid;
    top: 0px; left: -74px;
}
h1 {
    padding: 47px 0 10px 0;
/*    -webkit-padding: 47px 20px 23px 0;
    -ms-padding: 47px 20px 23px 0;
*/
    margin: 30px 0 52px 73px;
    position: relative;
    text-transform: uppercase;
    color: #003478; font-size: 50px; font-weight: normal; letter-spacing: 0.02em; line-height: 65px;
    font-family: 'Noto Serif', serif;
    font-style: italic;
}

.info_event {position: absolute; bottom: 0px; right: 10px;}
.info_event > h1:after {
    position: absolute;
    content: "";
    width: 170px; height: 2px;
    transform: rotate(131deg);
    -ms-transform: rotate(131deg);
    -webkit-transform: rotate(131deg);
    top: 43px; left: -86px;
    background: #003478;
}
.info_event > h1 {
    padding: 47px 20px 10px 0;
    position: relative;
    color: #fff; font-size: 10px; line-height: 20px; font-weight: normal; letter-spacing: 0.02em;
}
h2 {
    font-size:22px; font-weight: 300;
    color:#555;
    margin:0px 0px 8px 0px;
    padding:0 0 4px 0;
    font-family: 'Noto Serif', serif;
}
.band {padding: 1em 0 1em 1em; margin: 1em 0; background: #7F7540; color: #fff; border-bottom: 1px solid #7F7C67;}
h3 {
    font-size:15px;
    font-weight: normal;
    color:#555;
    margin: 6px 0px 6px 0px;
    padding:0 0 3px 0;
}
p {margin:6px 0px; font-size:14px; text-align: justify; line-height: 19px;}

a {text-decoration: none;
    padding-bottom: 5px;
    transition: border-bottom 1s ease 0s;
    border-bottom: 1px solid #fff;
}
a:hover {border-bottom: 1px solid #dfbb0f; }
.content p a {text-decoration: underline;}

.link_plus {text-align: center; border-bottom: none;}
.link_plus:hover {border-bottom: none;}
.link_plus i {font-size: 30px; color: #3d78bc;}

.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; box-shadow: 0 1px 1px #555;}
figcaption { font-size:10px; font-style: italic; text-align: center;}
figure img {min-width: 50px; max-width: 100%;}
input[type='text'],input[type='tel'],input[type='password'],input[type='email'], select, textarea {
    color:#555;
    font-size:14px;
    border: none; border-left: 1px solid #3d78bc;
    height: auto; width: 100%;
    padding: 10px;
    background: rgba(61,120,188, 0.1);
}
button, input[type='button'],input[type='submit'], .btn {
    background: #f1d030;
    cursor: pointer;
    padding: 20px 40px;
    min-height: 40px;
    color:#fff;
    border:none;
    font-size: 15px;
    text-align: center; vertical-align: middle;
}
button:hover,input[type='button']:hover, input[type='submit']:hover, .btn:hover {
    background: #CCB029;
    box-shadow: 0 1px 2px #000;
}
button.tnsp_brd, button.tnsp_brd:hover {
    background: #fff;
    color:#f1d030;
    border: 1px solid #f1d030;
    box-shadow: none;
}

/*  Header
------------------- */
body {font-size: 0;}
body>header>img,
body>header>a {
	width: 100%;
	text-align: center;
	overflow: hidden;
	min-height: 350px;
	display: flex; justify-content: center; flex-direction: row;
	display: -webkit-flex; -webkit-justify-content: center; -webkit-flex-direction: row;
}
body>header>a>img {min-height: 350px;}
header .overHead {
    font-size: 14px;
	background: rgba(255,255,255,0.8);
    position:fixed;
    z-index: 10; top:0; left: 0;
    padding: 3px 0 5px; width: 100%; height: 44px;
    box-shadow: 0 0 19.32px 1.68px rgba(0, 0, 0, 0.4);
    display: flex; flex-direction: row; justify-content: flex-end;
    display: -webkit-flex; -webkit-justify-content: flex-end; -webkit-flex-direction: row;
}
header .overHead:hover {background: rgba(255,255,255,1);}
header .overHead > ul {
	display: flex; flex-direction: row; justify-content: flex-end;
	display: -webkit-flex; -webkit-justify-content: flex-end; -webkit-flex-direction: row;
	width: 70%;
}
.overHead li {font-size: 13px; padding: 10px; color:#7f7f7f; cursor: pointer; border-right: 1px solid #7f7f7f; white-space: nowrap; line-height: 18px; text-align: center;}
.overHead li:last-child {border-right: none;}
.overHead li > i {font-size: 16px; margin: 0 5% 0 2%; color:#7f7f7f;}
.overHead a {border-bottom-color: none; transition: none; border-bottom: none;}
.overHead a:hover {border-bottom-color: #fff; color:#000;}

header .flags {padding:3px 0px; display: none;}
header .flags>img {}
header .flags a { padding: 0 5px; }
header .flags a img { opacity: 0.6; }
header .flags a:hover img { opacity: 1; }

/*Connexion--------------------------*/
.connect-popin {
    display: none;
    position:fixed;
    top:50px;
    width: 60%;
    margin:0 20% 0 20%;
    padding:30px;
    background: #fff;
    border-radius: 20px;
    z-index:9999;
}
.connect-popin.active {display: flex; justify-content: flex-start; flex-direction: row;}
.connect-popin > section {display: inline-block; width: 50%; font-size: 14px; padding-left: 40px;}
.connect-popin > section:nth-child(odd) {padding: 0 0 0 40px; border-left: 1px solid #3d78bc;}
.connect-popin > section.newContact {display: inline-block; width: 50%;}
.connect-popin h3 {text-transform: uppercase; margin-bottom: 20px; font-weight: bold;}
.connect-popin article {margin: 6px 0}

/*.connect-popin */article>label.hidden {color: #fff;}
/*.connect-popin */article>label {display: inline-block; width:30%; text-align: left; padding-right: 20px; vertical-align: top; padding-top: 6px; margin-bottom: 10px;}
.connect-popin article>div { font-size: 14px; display: inline-block; width:70%; }
.connect-popin li {list-style: inside; margin-left: 20px; margin-bottom: 8px;}
.connect-popin .crtContact {margin-top: 75px;}

.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 {
    width: 285px;
    height: 100%;
    position: fixed;
    top: 0; z-index: 100;
    background: #f1d030;
    box-shadow: 0 0 19.32px 1.68px rgba(0, 0, 0, 0.17);
    transform: translateX(0%);
    -webkit-transform: translateX(0%);
    -ms-transform: translateX(0%);
}
body > nav .close_nav {font-size: 30px; color: #fff; padding: 7px 0 7px 7px; cursor: pointer; min-height: 30px;}
body > nav.closed {
    transform: translateX(-70%);
    -webkit-transform: translateX(-70%);
    -ms-transform: translateX(-70%);
    transition: all 0.5s ease 0s;
    -webkit-transition: all 0.5s ease 0s;
    -moz-transition: all 0.5s ease 0s;
    -o-transition: all 0.5s ease 0s;
}
body > nav.closed .info_event {display: none;}
body > nav a.logo {
    padding: 0 0 30px 0;
    display: block;
    width: 100%;
    border: none;
}
body > nav a.logo>img {width: 100%;}
body > nav.closed a.logo {display: none;}
body > nav > ul {
	display: flex; justify-content: flex-start; flex-direction: column;
	display: -webkit-flex; -webkit-justify-content: flex-start; -webkit-flex-direction: column;
}

body > nav .nav_btn {text-align: right; width: 100%; padding: 15px 22px 0 0; color:#fff; cursor: pointer; font-size: 16px; display: none;}
body > nav i.fa {font-size:20px; padding:5px 15px 5px 5px; color:#fff;}
body > nav.closed i.fa, body > nav.closed .nav_btn {display:inline-block;}

body > nav .menuSmart, body > nav .wrap_logo {display: none;}
body > nav.closed > ul {display: none;}
body > nav.closed .wrap_logo {display: inline-block; text-align: right; width: 100%; padding-left: 200px;}
body > nav.closed .wrap_logo > .logo_v {
    background-size: cover;
    width: 100px; height: 486px;
    display: block;

}
body > nav > ul > li {position:relative; background: #f1d030; z-index:100;}
body > nav > ul li {position:relative;}
body > nav > ul li.selected,
body > nav > ul li:hover  {background: #f4c400;}
body > nav > ul > li span, body > nav > ul > li a {
    padding:10px 25px;
    color:#fff;
    font-size:15px;
    text-transform: uppercase;
    display: block;
    font-family: 'Noto Serif', serif;
    border: none;
}
body > nav > ul > li a:hover {border: none;}
body > nav > ul > li > ul {
    max-height: 0px;
    z-index:200;
    padding-left: 35px;
    transform: translateX(-100%);
    -webkit-transform: translateX(-100%);
    -ms-transform: translateX(-100%);
    transition: all 1.5s ease 0s;
}
body > nav > ul > li:hover ul {display:block; max-height: 210px;
	transform: translateX(0%);
	-ms-transform: translateX(0%);
	-webkit-transform: translateX(0%);
}
body > nav > ul > li  li {/*white-space: nowrap; */width:100%;}

body > nav .rs {width: 100%; position: absolute; bottom: 30px; right: 0;z-index: 100;}
body > nav .rs ul {
	width: 100%;
	display: flex; flex-direction: row; justify-content: flex-end;
	display: -webkit-flex; -webkit-justify-content: flex-end; -webkit-flex-direction: row;
	margin-top: 10%;
}
body > nav .rs ul li a {border-bottom: none;}

/*  Footer
------------------- */
body > footer {
    font-size: 12px;
    text-align: center;
    width: 100%;
    min-height: 100px;
    overflow: hidden;
    position:relative;
    background: rgba(255,255,255,0.4);
    padding-top: 30px;
    display: block;
    z-index: 0;
}
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;}

body>.full {width:100%;}
body>.full>img {
/*    height: 250px;*/
    object-fit: cover;
    width:100%;
    margin: auto;
}

.foot_bottom {width: 100%; height: 60px; background: rgba(255,255,255,0.8); color: #646464; margin-top: 20px; padding-top:20px;}
body > footer > div.foot_bottom > ul {vertical-align: middle; height: 20px; margin-left: 345px;}
body > footer > div.foot_bottom > 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;
}
.foot_bottom ul li a {color: #646464; vertical-align: middle; }
.foot_bottom ul li:last-child {border-right: none;}
.foot_bottom ul li:first-child {padding-left: 0;}

/*  Corps
------------------- */
.wrap > section {
/*    padding: 30px 10px 10px 10px;*/
    padding: 5% 0 5% 5%;
    font-size:13px;
    line-height:16px;
    width: 100%;
    display: inline-block;
    vertical-align: top;
    position: relative;
}
/*.wrap>section.flex-row {display: flex; flex-direction: row;}*/
.wrap.col {
    display: flex; flex-direction: row; justify-content: top;
    display: -webkit-flex; -webkit-flex-direction: row; -webkit-justify-content: top;
}
.wrap.col>section {
    width: 70%;
}
.wrap.col>aside {
/*    display: inline-flex;*/
    width: 30%;
    font-size:12px;
    padding:30px 10px 10px 10px;
    margin-left:10px;
    background: #f4f4f4;
}
aside.left, aside.right {display: inline-block; width: 30%;}
aside.fix {
    position: fixed;
    top: 0; right: 0; left: 60%;
    z-index: 1;
}
aside.nonfix {position: static;}

aside.left.nonfix,
aside.right.nonfix {
    width: 45%;
    display: inline-block;
    vertical-align: top;
    margin-top: 30px;
}
aside.left+article {
    vertical-align: top;
    width: 70%;
    padding-left:20px;
    display: inline-block;
}
article.left, article.right {
    width: 48%;
    vertical-align: top;
    display: inline-block;
    padding-right: 2%;
}
article.left.shipping label, article.right.billing label {
	width: 100%;
}
.brd_line {position: relative; margin: 1% auto;}
.brd_line:before, .brd_line:after {position: absolute; width: 46%; height: 1px; background: #CCB029; top: 50%; left: -35%; content: ""; transition: all 1s;}
.brd_line:hover:before, .brd_line:hover:after {width: 56%; left: -50%;}
.brd_line:after {left: auto; right: -35%;}
.brd_line:hover:after {left: auto;right: -55%;}

/* Product list****************************/
.prod_list li {display: inline-block; margin: 0 1% 0 0;}

/* Book style ****************************/
.book_style aside.fix {width: 39%; left: auto; height: 100vh; box-shadow: 0 0 19.32px 1.68px rgba(0, 0, 0, 0.05);}

/* Content ****************************/
.chapo {
    font-size: 24px; line-height: 26px;
    font-weight: 300;
    color: #f1d030;
    text-align: left;
    margin-bottom: 1.5em;
    font-family: 'Noto Serif', serif;
}
.content {
    font-size: 14px;
    line-height: 19px;
    position: relative;
}
div.link {text-align: center;}
div.link a {
    background: #151515;
    color:#fff;
    padding:13px 30px;
    max-width: 60%;
    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 {
    min-width: 30%;
    display: inline-block;
    float: right;
    background: #ddd;
    border-radius: 10px;
    padding:15px;
    margin: 10px 0 20px 0;
}
div.links ul li {
    list-style: disc;
    margin-left:10px;
}
div.links ul li a {
    width: 100%;
    display: block;
    font-size:12px;
    padding:6px 0px;
    color:#000;
}
div.links ul li a:hover{
    text-decoration: underline;
}

div.fileLinks {
    display: block;
    padding:15px;
    background: rgba(255, 255, 255, 0.85) none repeat scroll 0 0;
    margin: 0;
    padding: 20px 77px 5px;
}
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;
    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 ****************************/
aside.edito {
    text-align: center;
}
aside.edito>div {
    width: 100%;
    display: inline-block;
    margin:20px 21% 0 21%;
}

.signature {
    text-align: right;
}
.signature figure {display: inline-block;}
.signature figcaption {
    text-align: center;
    font-style: normal;
    font-size:16px;
    padding-right: 20px;
    padding-top: 20px;
}

/* Products list bloc ****************************/
ul.prods {
    width: 100%;
    padding: 2% 0;
}
ul.prods.open {display: block;}
ul.prods li:hover {box-shadow: 0 1px 2px #000;}
ul.prods li {
    padding: 2% 2% 4% 2%;
    margin: 2% 0 2%;
    width: 16%;
    min-height: 320px;
    display: inline-block;
    position: relative;
    vertical-align: top;
    box-shadow: 0 1px 1px #eee;
}
ul.prods li > a {border-bottom: none;}
ul.prods li img {
    width: 100%;
    margin: 0 auto;box-shadow: 0 1px 1px #555;
}
ul.prods li h3 {margin: 3% 0; min-height: 60px; font-size: 14px;}
ul.prods li h4 {font-size: 12px; font-weight: normal;}
ul.prods li .wrap_btn {
	display: none;
    position: absolute;
    bottom: -20px; left:0;
    width: 100%;
}
ul.prods li .btn {
    margin: 0 auto;
    text-transform:none;
}
ul.prods li:hover .wrap_btn {display: flex; display: -webkit-flex;}

/* Personne ****************************/
.person {margin: 10px 0 20px;}
.img_wrap {
    height: 250px; width: 300px;
    padding:3px;
    border:1px solid #CCB029;
}
.person aside {
    margin-top: 0;
    padding-right: 30px;
}
.person aside.left, .person aside.right {width: auto;}
.person img {
    padding:3px;
    border:1px solid #ddd;
    vertical-align: top;
}
.person aside+section {
    width: 70%;
    display: inline-block;
}
.person .cpy {
    font-size:16px;
    display: block;
    color:#555;
    padding-bottom: 4px;
}
.person .func {
     font-size: 14px;
    line-height: 19px;
    margin: 6px 0;
    text-align: justify;
}
.person .email {display: block; color: #555; text-decoration: none; margin-top: 5px;}
.person .content {
    margin-top: 10px;
    padding-right: 40%;
}

.person aside + section {padding: 5% 0 0 5%; width: 50%; display: inline-block; vertical-align: top;}
.person aside + section h2 {font-size: 30px; line-height: 32px;}

/* Auteurs ****************************/
.auth_list ul.prods {display: none;}
.auth_list ul.prods.open {display: block;}
.auth_list .fa {display: none; cursor: pointer;}

.person .central i {font-size: 30px; color: #f1d030;}
.auth_list .person {border-bottom: 1px solid rgba(0,0,0,0.1);}

.jet_img {position: absolute; z-index: 1;}
.jet_img img {width: 100%;}

/* Product livre ****************************/
.prod section {}
.prod aside {display: inline-block; vertical-align: top; text-align: center; max-width: 500px;}
.prod aside.left {max-width: 200px;}
.prod section atricle {width: 32%; margin: 0 3%; display: inline-block; vertical-align: top;}
.prod section atricle li {list-style: square; margin: 0 0 10px 22px;}
.prod aside > div {text-align: center; margin: 0 0 3%;}
.prod aside > div button i, .prod aside .rs ul li i {color: #f1d030;}

.prod aside > article {display: inline-block; vertical-align: top;}
.prod aside > article h3  {max-width: 163px; font-size: 13px;}
.prod aside > article a {border-bottom: 1px solid #fff; transition: border-bottom 1s; padding-bottom: 4px; display: block;}
.prod aside > article a:hover {border-bottom: 1px solid #dfbb0f;}

.prod aside .rs {padding: 2% 0; height: 60px;}
.prod aside .rs i {color: #f1d030; font-size: 20px;}
.prod aside .rs ul {display: none; min-width: 80%; text-align: center; width: 100%; padding-top:2%;}
.prod aside .rs ul li {margin: 0 2%;}
.prod aside .rs:hover ul {
	display: flex; justify-content: space-around; flex-direction: row;
	display: -webkit-flex; -webkit-flex-direction: row; -webkit-justify-content: space-around;
}

.prod aside > div .price {padding-right: 17%;}
.price {font-size: 20px; display: block; text-align: right; color: #dd1e35; padding: 2% 2% 4% 2%;}
.price sup {font-size: 12px; color: #dd1e35;}
.price s {font-size: 15px; color: #555; margin-right: 2%;}
.price i {font-size: 15px; color: #dd1e35; margin-right: 2%; font-style: normal;}

/*Focus bloc-----------------*/
.focus {display: block;}
.focus ul {width: 100%; height: 350px; overflow: hidden; margin: 15px 0;
	display: flex; justify-content: space-between; flex: row wrap;
	display: -webkit-flex; -webkit-flex-direction: row wrap; -webkit-justify-content: space-between;
}
.focus ul li {
    width: calc(100% / 4); height: 100%;
    display: inline-block;
    overflow: hidden;
    vertical-align: top;
    position: relative;
    margin: 0 0.5% 0;
}
.focus ul li.collapse {display: none;}

.focus ul li > img {
    height: 100%;
    position: absolute; top:0; left:0;
    transition: transform 2s ease 0s, -webkit-transform 2s ease 0s;
    -webkit-transition: transform 2s ease 0s, -webkit-transform 2s ease 0s;
    -ms-transition: transform 2s ease 0s, -webkit-transform 2s ease 0s;
    z-index: 1;
    transition: width 2s, height 4s;
}
.focus ul li > img:hover {height: 105%;}
.focus ul li > article {
    position: absolute;
    bottom: 0; left: 0;
    background: rgba(0, 0, 0, 0.3);
    z-index: 10;
    width: 100%; height: 20%;
    display: flex; justify-content: center; flex-direction: column;
    display: -webkit-flex; -webkit-flex-direction: column; -webkit-justify-content: center;
    padding: 20px;
}

.focus ul li > article:hover {    background: rgba(0, 0, 0, 0.8);}
.focus ul li > article > h2 {
    margin: 0;
    color: #fff;
    font-size: 1.2vw;
    font-weight: normal;
    line-height: 1;
    margin-top: 1vw;
}
.focus ul > .more,.focus ul > .open {display: flex; flex-direction: column; justify-content: center; margin-top: 18px; margin-bottom: 20px; cursor: pointer;}
.focus ul > .more .fa-times-circle {display: none;}
.focus ul > .open .fa-caret-down, .focus ul > .open h2 {display: none;}
.focus ul > .more i, .focus ul > .open i, .focus ul > .more h2, .focus ul > .open h2 {color: #3f3f3f; font-size: 30px; text-align: center; width: 100%;}

.focus ul li > article .link_plus i {
	color: #fff;
	transform: scale(0);
	-ms-transform: scale(0);
	-webkit-transform: scale(0);
	transition: all 400ms ease-in-out 0s;
	-ms-transition: all 400ms ease-in-out 0s;
	-webkit-transition: all 400ms ease-in-out 0s;
}
.focus ul li > article:hover i {transform: scale(1);}

.focus ul li > article .link_plus {
    position: absolute; right: 20px; bottom: 10px;
    width: auto;
}
.focus ul li:nth-child(odd) > article aside {right: auto; left: -48px;}

/*Slider------------------*/
.slider {padding: 0; width:100%; margin: 0; position:relative;}
.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; font-family: "Roboto Condensed", sans-serif;}
.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%;}

/* 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:20px 0 40px 0;
}
.exhibitor aside {
    margin-top: 0;
    padding-right: 30px;
}
.exhibitor aside img {
    max-height: 250px;
}
.exhibitor aside+section {
    width: 70%;
    display: inline-block;
}

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

/* Hotel ****************************/
.hotel {
    margin:20px 0 40px 0;
}
.hotel aside {
    margin-top: 0;
    padding-right: 30px;
}
.hotel aside img {
    max-height: 450px;
}
.hotel aside+section {
    width: 70%;
    display: inline-block;
    vertical-align: top;
}

.hotel a {color:#999;}
.hotel a:hover {
    text-decoration: underline;
}

.hotel img {
    padding:3px;
    border:1px solid #ddd;
}
.hotel .cpy {
    font-size:16px;
    display: block;
    color:#555;
    padding-bottom: 4px;
}
.hotel .func {display: block;}
.hotel .phone {display: block;}
.hotel .email {display: block;}
.hotel .email:hover {text-decoration: underline;}

.hotel .func {
    color:#999;
}
.hotel .content {
    margin-top: 10px;
    padding-right: 40%;
}

/* Agenda ****************************/
h2.agenda {color:#f1d030; font-size: 30px; letter-spacing: 1px; margin-top: 20px; text-align: right;}
table.agenda {width: 100%; margin-bottom: 40px;}
table.agenda th {background-color:#003478; color:#fff; padding:18px 14px; font-size:15px;}
table.agenda td {border-bottom:#aaa 1px solid; padding:10px; font-size:14px; line-height: 20px; color:#555;}
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 {background:#eee; text-align: center; color:#a00; font-weight: bold; font-style: italic; letter-spacing: 1px; }
table.agenda td.break>div {text-align: center; color:#999; font-size:11px; font-weight: normal;}
table.agenda tr:hover td {background: #f4f4f4;}

/* Accès ****************************/
.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; color:#777;
    display: inline-block;
    padding-right:20px;
    vertical-align: top;
}
.digiForm article>div {width:40%; font-size: 14px; text-align: left; display: inline-block;}
.digiForm article.formTxt {font-size:12px;}

.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;}

.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%;}

.modRdv .panel.confForm .actions {padding-top: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 ****************************/
/*.contact_us article > section {display: inline-block; width: 48%; vertical-align: top;}*/
.contact_us aside.fix {top: 180px;}

.contact_us .reg_form .digiForm article>div {width: 65%;}
.contact_us .digiForm > article {margin: 20px 0;}
.contact_us textarea {min-height: 180px;}
.contact_us input[type="submit"] {border: none;}
.contact_us input[type="submit"]:hover {background: #dfbb0f;}
.contact_us textarea {min-height: 180px;}
.contact_us .person aside + section {padding: 8% 0 0 0; width: 37%;}

/* Kit média ****************************/
.contacts { padding: 20px 15%;}
.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;}
.contacts article .email:hover {text-decoration: underline;}

/* Sponsors ****************************/
.sponsors { padding: 20px 15%;}
.sponsors h2 {}
.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;}
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;}

/* Form */
form article {margin-bottom: 15px;}

/* Section - Member / main */
section.member.main > form {width: 50%; margin: 0 0 0 20%;}
section.member.main .content > article {
	display: inline-block;
	vertical-align: top;
	width: calc(100% / 3);
	min-height: 340px;
	margin-right: -4px; padding: 30px 5%;
	font-size:14px;
	border-right: 1px solid #F1D030;
}
section.member.main .content > article:hover { background: #eee; }
section.member.main .content > article > a { float: right; }
section.member.main article h2 { padding-left:0; border-bottom: 1px solid;}
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 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:hover {color: #444;}
section.member.main article.orders table td { }
section.member.main article.orders table .price {font-size: 14px;}
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: 5%; }
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; }
.order_wrap {padding: 0 8%; text-align: right;}
.order_wrap > section {margin: 10% 0;}
.order_wrap h2 {width: 15%; display: inline-block;}
.order_wrap .content {width: 37%; display: inline-block;}
.valid.mini, .button.mini {
    background: none;
    color: #3d78bc;
    border: 1px solid #3d78bc;
}
.valid.mini:hover, .button.mini:hover {background: #3d78bc; color: #fff;}

/* 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 */
.order.address form {margin: 0 auto; width: 80%;}
.order.address .columns label {margin-bottom: 3%; display: block;}
section.member.login { }
section.member.login .columns article { padding-bottom: 70px; }
section.member.login article.newAccount { }
section.member.login article.login { }

section.member .dw {cursor: pointer;}

/* Section - My Orders */
section.member.main .content > article.myOrders {width: 100%;}
article.myOrders table h3 {text-align: left; padding-left: 2%;}
article.myOrders table tr:hover {border-bottom: 1px solid #F1D030;}
article.myOrders table tr:hover h3 {color: #111;}
article.myOrders  td {padding: 20px;}
article.myOrders  td:first-child, article.myOrders  td:last-child {width: 15%;}
article.myOrders  td img {width: 100%; box-shadow: 0 1px 1px #555;}

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%;}

.order.login nav ul, .order.address nav ul {text-align: center; margin-top: 40px;}
.order.login nav ul li, .order.address nav li {display: inline-block;}


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: 30.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;}

.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, .basket + h2  {
    width:85%;
    margin:40px auto;
}
.basket thead tr {
    background: #004972;
    color:#fff;
    font-size: 18px;
    height:40px;
}
.basket thead tr td { vertical-align: middle; padding:20px; color: #fff;}

.basket tbody td { border-top:1px solid #fff; min-height:40px; color:#555; 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 td.qtty {text-align: center;}
.basket td.price {text-align: right; display: table-cell;}

.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%;
}

.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;
}
.cgv label {width: 50%; padding-top: 2px;}

/****************** 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%;}

form .central {
    display: block;
    margin-top: 20px;
    margin-bottom: 40px;
}
/*form .central input[type="submit"],
form .central button {
    padding: 2% 5%;

    min-height:30px;
    text-decoration:none;
    font-size:18px;
    letter-spacing: 0.2em;
}
  */
/* Sujet - votes*/
.ideas .wrap_ideas > aside {display: inline-block; width: 37%; vertical-align: top; margin-left: 3%;}
.ideas .wrap_ideas > article {display: inline-block; width: 60%; vertical-align: top;}
.ideas .wrap_ideas .central {width: 100%; margin: 30px 0 0 0;}

.ideas .wrap_ideas > article .idea {padding: 25px; display: flex; flex-direction: row; justify-content: center;}
.ideas .wrap_ideas > article .idea:hover {background: white; box-shadow: 0 0 19.32px 1.68px rgba(0, 0, 0, 0.08);}
.ideas .wrap_ideas > article .idea>div {width: 80%; display: inline-block; vertical-align: top;border-right: 1px solid #003478; padding-right: 15px;}
.ideas .wrap_ideas > article .idea>div div {font-size: 14px; line-height: 19px; text-align: justify;}
.ideas .wrap_ideas > article .idea nav {display: flex; flex-direction: column; justify-content: center; width: 20%;}
.ideas .wrap_ideas > article .idea nav .votes {text-align: center;}

.ideas .wrap_ideas > article .idea nav .votes button {
    font-size: 20px;
    color:#fff;
    transform: scale(1);
    -webkit-transform: scale(1);
    -ms-transform: scale(1);
    transition: all 400ms ease-in-out 0s;
    -ms-transition: all 400ms ease-in-out 0s;
    -webkit-transition: all 400ms ease-in-out 0s;
    margin-bottom: 15px;
    display: block;
    margin: 0 auto 15px;
}
.ideas .wrap_ideas > article .idea nav .votes button:hover {background: #f1d030;}
.ideas .wrap_ideas > article .idea nav .votes button.mine {font-size: 16px; color:#003478; background: none;}
.ideas .wrap_ideas > article .idea nav .votes span {font-size: 20px; color:#003478;}
.ideas .wrap_ideas > article .idea nav .votes:hover button {transform: scale(1.2);-ms-transform: scale(1.2);-webkit-transform: scale(1.2);}
.ideas .wrap_ideas > article .idea nav .votes .mine {color:#999; font-size: 14px;}
.ideas .wrap_ideas > article .idea nav .votes:hover .mine {transform: scale(1);-ms-transform: scale(1);-webkit-transform: scale(1);}

.ideas .wrap_ideas > aside input, .ideas .wrap_ideas > aside textarea {
    width: 100%;
    height: auto;
    border: none;
    border-left: 2px solid #003478;
    margin: 0 0 10px;
    padding: 10px;
    font-size: 14px; line-height: 19px;
    box-shadow: 0 0 19.32px 1.68px rgba(0, 0, 0, 0.08);
}

.ideas .wrap_ideas > aside footer span,
.ideas .wrap_ideas > aside footer > input,
.ideas .wrap_ideas > aside .nbr_letter input {
    font-size: 16px;
    color: #003478;
    text-align: right;
    border: none;
    background: none;
    box-shadow: none;
    display: inline-block;
    width: auto;
}
.ideas .wrap_ideas > aside footer > input {width: 50px;}
.ideas .wrap_ideas > aside footer {text-align: right;}
.ideas .wrap_ideas > aside .txt_sujet {position: relative;}
.ideas .wrap_ideas > aside .txt_sujet .nbr_letter {position: absolute; top: 0px; right: -50px;}

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