/* 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,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:24px;
    /*background-color: #2B2B2B;
    */
     background-color: #fcfcfc;
	 max-width: 100%;
	overflow-x: hidden;
}
 article,aside,canvas,figcaption,figure,footer,header,hgroup,menu,nav,section,summary{
    display:block;
}
 a{
    margin:0;
    padding:0;
    border:0;
    font-size:100%;
    vertical-align:baseline;
    background:transparent;
}
 ins{
    background-color:#f1f191;
    color:#010201;
    text-decoration:none;
}
 mark{
    background-color:#f1f191;
    color:#010201;
    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 #c1c2c3;
    margin:1em 0;
    padding:0;
}
 input,select{
    vertical-align:middle;
}
 ul {
    list-style: none;
}
 * {
    box-sizing: border-box;
}
 *::selection {
    background:#112277;
     color:#cdf;
}
/* Les Fonts : ici ! ---------------------------------------------------------------------- */
@font-face {
	font-family: 'sansplomb';
    src: url('/inc/fonts/sansplomb/SansPlomb-98.eot');
    src: url('/inc/fonts/sansplomb/SansPlomb-98.eot?#iefix') format('embedded-opentype'),
         url('/inc/fonts/sansplomb/SansPlomb-98.woff2') format('woff2'),
         url('/inc/fonts/sansplomb/SansPlomb-98.woff') format('woff'),
         url('/inc/fonts/sansplomb/SansPlomb-98.ttf') format('truetype');
}

/*
@font-face {
	font-family: 'Nunito';
	src: url('/inc/fonts/nunito/Nunito-Light.ttf') format('opentype');
	font-weight: normal;
	font-style: normal;
}

@font-face {
	font-family: 'Nunito';
	src: url('/inc/fonts/nunito/Nunito-Bold.ttf') format('opentype');
	font-weight: bold;
	font-style: normal;
}

@font-face {
	font-family: 'Nunito';
	src: url('/inc/fonts/nunito/Nunito-LightItalic.ttf') format('opentype');
	font-weight: normal;
	font-style: italic;
}

@font-face {
	font-family: 'Nunito';
	src: url('/inc/fonts/nunito/Nunito-Bold.ttf') format('opentype');
	font-weight: bold;
	font-style: italic;
}

@font-face {
	font-family: 'Nunito';
	src: url('/inc/fonts/nunito/Nunito-Black.ttf') format('opentype');
	font-weight: 900;
	font-style: normal;
}
@font-face {
	font-family: 'sansplomb';
	src: url('/inc/fonts/sansplomb/Veneer.woff2') format('woff2');
	font-weight: normal;
	font-style: normal;

}
@font-face {
     font-family: 'Rashkey';
     src: url('/inc/fonts/Rashkey.ttf') format('truetype');
     font-weight: normal;
     font-style: normal;
}*/
/* Codes couleurs : ---------------------------------------------------------------------- # 212221 : couleur du texte "normal" # 111412 : h2 # 212422 : h2 # 313432 : h3 # 414442 : h4 # 515452 : h5 # 616462 : h6 # 4e4f4e : couleur du texte ":input" # abacaa : bordure ":input" # 2a292b : fond over-header # 818480 : fond header, & autre blocs avec fond moyen # 1f1411 : fond nav & footer & autre blocs avec fond foncé # fefdfc : hover border nav # 1f1410 : fond boutons & co # d39773 : fond hover-boutons & co # 4343da : fond bouton Exergues (& couleur hover) # fe0504 : fond bouton Exergues && Important (& couleur hover) # ff0084 : surbrillance de selection du text dans le Header # 112277 : surbrillance de selection du text (général) # 727571 : label formulaire # c1c4d3 : fond couleur clair # 818493 : fond couleur moyen # 414453 : fond couleur foncé ---------------------------------------------------------------------- */
 :root {

	 --color-yellow:#f9b115;
	 --color-green:var(--color-yellow);
     --color-white:#FCFCFC;
     --color-red:#fef5e2;
     --color-black:#000000;
	 --color-beige:#fef5e2;
     --max-width:1450px;
}
/* Structure générale ---------------------------------------------------------------------- */
 html {
    font-size:62.5%;
}
/*body {
    font-size:12px;
     font-family: Arial, sans-serif;
     color: #2B2B2B;
}
*/
 body {
    font-size:16px;
     font-family: 'Inter Tight', Arial, sans-serif;
     color: #2B2B2B;
     font-weight:300;
}
 body > header {
     text-align: center;
     background: transparent;
     width:100%;
    /* min-height: 68px;
    */
    /*overflow: hidden;
    */
     z-index:1;
     position:relative;
     font-size: 0;
     z-index: 101;
}
 body > footer {
     font-size: 12px;
     text-align: center;
     width: 100%;
     min-height: 100px;
     overflow: hidden;
     position:relative;
}
 body > nav {
     width: 100%;
     z-index:101;
     position:relative;
    /*background: #2B2B2B;
     */
     background-color: #ffe4d4;
}
 aside {
}
 main {
    /*overflow: hidden;
    */
     min-height:calc(100vh - 234px);
    /* padding-top: 234px;
     */
}
/* Taille header + taille footer */
 main > main {
     padding-top: 0;
}
/* Charte graphique élémentaire ---------------------------------------------------------------------- */
 h1 {
     font-family: 'Sansplomb', Arial, sans-serif;
	 text-transform:uppercase;
     text-align: center;
     font-size:38px;
     line-height:56px;
     color:#2c2e35;
     font-weight: 700;
     padding:5vh 20px;
     letter-spacing: 1px;
     margin:0;
     position:relative;
    /* background:#f00;
     font-variant:small-caps;
    */
     text-transform: uppercase;
}
 h1 > span {
     display: inline-block;
     color: #111;
}
 h1 > div {
     display: block;
     color: #111;
}
/* version pleine avec petite flèche en bas h1::before {
     content: "";
     position: absolute;
     z-index: 1;
     border-top: 16px solid #f00;
     bottom: -16px;
     left: calc(50% - 16px);
     border-left: 16px transparent solid;
     border-right: 16px transparent solid;
}
 */
 h2 {
     font-family: 'Sansplomb', Arial, sans-serif;
	 font-weight:700;
	 text-transform:uppercase;
     font-size:22px;
     line-height: 40px;
     color:#2c2e35;
     letter-spacing: 0.5px;
     margin:2vh 0px;
     padding:0;
    /*font-variant:small-caps;
    */
     text-transform: uppercase;
}
 h3 {
     font-size:22px;
     font-weight: bold;
     color:#2c2e35;
     margin:6px 0px;
     padding:0;
}
 h4 {
     font-size:20px;
     font-weight: bold;
     color:#2c2e35;
     margin:6px 0px;
     padding:0;
}
 h5 {
     font-size:16px;
     font-weight: bold;
     color:#2c2e35;
     margin:6px 0px;
     padding:0;
}
 h6 {
     font-size:14px;
     font-weight: bold;
     color:#2c2e35;
     margin:4px 0px;
     padding:0;
}
 p {
     margin:6px 0px;
     font-size:18px;
     text-align: left;
     line-height: 25px;
}
 .content > p {
     margin:0px;
}
 a {
    text-decoration: none;
     transition: all 0.5s;
     color:#2B2B2B;
}
 a:hover {
    color:#919290;
}
 i {
}
 b {
}
 strong {
}
 hr {
    border-top: 1px solid;
     display: block;
     height: 1px;
}
 blockquote {
    font-size:22px;
     text-align: center;
     letter-spacing: 0.5px;
     line-height: 26px;
     font-style: italic;
     quotes:"\00ab" "\00bb";
}
 blockquote:after {
    content:open-quote;
     font-size:30px;
}
 blockquote:before {
    content:close-quote;
    font-size:30px;
}
 figure {
     text-align: center;
}
 figcaption {
     font-size:10px;
     font-style: italic;
     text-align: center;
     padding-top:10px;
}
 figure img {
     min-width: 30px;
}
 img {
}
 section {
}
 article {
}
 code {
}
 input[type='text'], input[type='password'], input[type='tel'], input[type='number'], input[type='date'], input[type='color'], input[type='range'], input[type='url'], input[type='time'], input[type='datetime'], input[type='email'], select, textarea {
     height: 40px;
     background-color:transparent;
    /* color:#4e4f4e;
    */
     color: #2B2B2B;
     border-bottom:1px solid var(--color-green);
    /*border-radius: 5px;
    */
     width:100%;
     padding:8px;
     font-size:12px;
}
 textarea {
     resize: none;
}
 button, input[type='button'], input[type='submit'], .btn {
     background-color: transparent;
     border: 0px;
     cursor: pointer;
     display: inline-block;
     font-size: 18px;
     padding: 15px 55px;
     transition: all 0.3s;
     color:#fff;
     background-color:var(--color-green);
     border-radius:0;
     position:relative;
     overflow:hidden;
     display:flex;
     align-items:center;
}
 .btn::after {
     content:'';
     width:16px;
     height:8px;
     position:absolute;
     top:50%;
     right:50px;
     opacity:0;
     background-image:url(/img/arrow-white.svg);
     background-repeat:no-repeat;
     margin-top:-4px;
     transition: all 0.3s;
}
 .btn:hover {
     padding-left:45px;
     padding-right:65px;
     color:#FFF;
}
 .btn:hover::after {
     right:30px;
     opacity:1;
}
 .btn img {
     margin-left:20px;
}
 button:hover, input[type='button']:hover, input[type='submit']:hover, .btn:hover {
    /*color: #fefefe;
    */
    /*background-color: #111;
    */
    /*box-shadow: 0 0 15px #1F0C06;
    */
}
 .page-form input[type='submit'] {
    /*background-image: url('/img/design/bg-btn-2.png');
    */
     background-size: cover;
     color: #f0f0f0;
}
/*.page-form input[type='submit']:hover {
     background-position-y: 100%;
     color: #fff;
}
*/
 input[type='checkbox'], input[type='radio'] {
    cursor: pointer;
}
 label {
    cursor: pointer;
}
 .btn.big {
     padding:15px 30px;
     font-size:28px;
    /*border-radius: 10px;
    */
}
 .btn.xbig {
     padding:20px 40px;
     font-size:48px;
    /*border-radius: 14px;
    */
}
 .btn.medium {
    padding:8px 16px;
     font-size:20px;
    /*border-radius: 7px;
    */
}
 .btn.small {
    padding:4px 8px;
     font-size:12px;
    /*border-radius: 4px;
    */
}
 .btn.file > span {
     font-family: 'Poppins', Arial, sans-serif;
}
/* styles remis en forme pour les contenus issus de wysiwyg ---------------------------------------------------------------------- */
 .content {
    font-size:16px;
     line-height: 25px;
     -webkit-hyphens: auto;
     -moz-hyphens: auto;
     hyphens: auto;
     text-align:justify;
}
 .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;
}
 .wrap-content, .struct-wrap, .struct-blocs.struct-wrap {
     max-width:var(--max-width);
     margin:0px auto;
     padding:0px 30px;
}
 .wrap-content .wrap-content, .wrap-content .struct-wrap, .struct-wrap .wrap-content {
     padding:0px 0px;
	 width:100%;
}
/* ------------------------------------------------------------------- ---------------------------------------------------------------------- STRUCTURE ---------------------------------------------------------------------- ---------------------------------------------------------------------- */
/* Navigation ------------------- */
 nav.mainNav {
    position:sticky;
     top:-80px;
     display:flex;
     z-index: 101;
     transition: opacity 0.5s ease;
     padding-left:10px;
     padding-right:10px;
     box-sizing: border-box;
}
 body.scrolling-down nav.mainNav {
     background-color:var(--color-green);
}
 nav.mainNav .menuSmart {
    cursor: pointer;
     display: none;
}
 nav.mainNav .menu-btn {
     position: fixed;
     right: 0px;
     top: 8px;
     cursor: pointer;
     width: 35px;
     height: 35px;
}
 #nav-cat-1584 ul {
     right:0px;
}
 .menu-btn-bars, .menu-btn-bars::after, .menu-btn-bars::before {
     position: absolute;
     display: block;
     height: 2px !important;
     width: 22px !important;
     background-color: #f4f4f4 !important;
     content: '';
     transition-duration: 0.3s;
     transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
}
 .menu-btn-bars {
     top: 18px;
     right: 18px;
}
 .menu-btn-bars::before {
     top: -10px;
}
 .menu-btn-bars::after {
     bottom: -10px;
}
 .menu-btn {
     display: none;
}
 .menu-btn.on > .menu-btn-bars {
     transform: rotate(225deg);
}
 .menu-btn.on > .menu-btn-bars::before {
     top: 0;
}
 .menu-btn.on > .menu-btn-bars::after {
     transform: rotate(-90deg);
     bottom: 0;
}
 nav.mainNav .smallLogo {
     padding:4px 10px;
     -webkit-flex: 0;
     flex:0;
     align-self: center;
     opacity: 0;
     transition: opacity 0.5s ease;
}
 nav.mainNav .smallLogo img {
    height: 32px;
     max-width: 100px;
}
 nav.mainNav > div {
    text-align: center;
     -webkit-flex: 1;
     flex:1;
     align-self: flex-end;
}
 nav.mainNav > div.smallMenu{
    text-align: right;
     margin-right: 20px;
}
 nav.mainNav .mobile-logo {
    display:none;
}
 nav.mainNav > div > ul {
    /*padding: 24px 0 18px 0px;
    */
     font-size:0;
    /*display: inline-block;
    */
}
 nav.mainNav > div > ul li {
     font-size:16px;
     display: inline-block;
    /*background: #2B2B2B;
    */
     margin: 0;
     position:relative;
     transition: border-color 0.3s ease, background-color 0.5s ease;
     text-transform: uppercase;
    /*border-bottom: 4px solid rgba(0, 0, 0, 0);
    */
}
 nav.mainNav > div > ul li.selected, nav.mainNav > div > ul li:hover {
    /*border-bottom: 4px solid #fff;
    */
    /* background: #82504f;
     */
     cursor: pointer;
}
 nav.mainNav > div > ul > li span, nav.mainNav > div > ul > li a {
    /*padding: 10px 25px;
    */
     padding: 34px 10px;
     color:#FCFCFC;
     display: block;
     text-decoration: none;
     font-size:20px;
    /* font-weight: bold;
     */
     font-weight: 300;
     transition: padding 0.5s ease, color 0.2s ease;
}
 nav.mainNav > div > ul > li:hover a {
     color: #2B2B2B;
}
 nav.mainNav > div > ul > li > ul {
     position:absolute;
     top:80px;
     overflow:hidden;
     max-height: 0px;
     z-index:200;
     background:none;
     transition: max-height 0.5s ease 0s;
    /*border-radius: 0 0 10px 10px;
    */
    /* box-shadow: 0 0 15px rgba(0, 0, 0, 0.6);
     */
}
 nav.mainNav > div > ul > li:not(.buttonMenu) > ul > li {
     background-color:var(--color-white);
}
nav.mainNav > div > ul > li.buttonMenu > ul > li > a { color:#FFF !important; }
 nav.mainNav > div > ul > li > ul > li a {
     color:var(--color-black);
}
 nav.mainNav > div > ul:not(.responsiveNav) > li:hover ul {
    display:block;
     max-height: 500px;
}
 nav.mainNav > div > ul > li li {
     white-space: nowrap;
     width:100%;
}
 nav.mainNav > div > ul > li:not(.buttonMenu) li:hover {
     background: #FFFFFF;
     color:var(--color-green);
}
 nav.mainNav > div > ul > li li:hover a {
     color:var(--color-green);
}
 nav.mainNav.scroll .smallLogo, .simpleHeader nav.mainNav .smallLogo, .simpleHeader + nav.mainNav .smallLogo {
    opacity: 1;
}
 nav.mainNav .smallMenu {
    display:none;
}
 nav.mainNav > div > ul .closeMenu {
    display:none;
}
/* top nav */
 body > nav.topNav {
     display: block;
     position: fixed;
     top: 0;
     left: 0;
     z-index: 102;
     background: transparent;
}
 body > nav.topNav > ul {
     display: -webkit-inline-flex;
     display: inline-flex;
     -webkit-flex-direction: row;
     flex-direction: row;
     background: rgba(0, 0, 0, 0.3);
     border-radius: 0 0 3px 3px;
     width: auto;
}
 body > nav.topNav > ul.btns {
     margin-left: 75px;
}
 body > nav.topNav > ul.flags {
     float: right;
     margin-right: 75px;
}
 body > nav.topNav > ul > li > a {
     display: inline-block;
     color: #f4f4f4;
     text-transform: uppercase;
     padding: 10px;
     font-weight: bold;
     font-size: 13px;
}
 body > nav.topNav > ul > li:hover, body > nav.topNav > ul > li.select {
     background: rgba(0, 0, 0, 0.6);
}
 @media all and (min-width: 1001px) and (max-width: 1599px) {
     body > nav.topNav.scroll {
         display: none;
    }
}
/* Header ---------------------------------------------------------------------- */
 body > header {
    position:relative;
}
 body > header .overHead {
     display: none;
     width:100%;
     background:#2a292b;
     color:#fff;
     transition: top 0.7s ease;
     z-index:1;
}
 body > header .overHead > div {
    margin:0 auto;
     display:flex;
     justify-content: space-between;
}
 body > header .overHead .areas {
    display:flex;
     padding:8px 5px;
     font-size:12px;
}
 body > header .overHead .areas li {
    padding:0px 5px;
     cursor: pointer;
}
 body > header .overHead .areas li a {
    color:#fff;
     text-decoration: none;
}
 body > header .wrapTitle {
     position:absolute;
     top:20%;
     left:30%;
     width:40%;
     padding:10px;
     min-width:320px;
     text-align: center;
     color:#fefffd;
}
 body > header .wrapTitle .headerTitle {
    text-align: center;
     margin:20px 0;
     padding:0;
     font-weight: bold;
     font-variant: small-caps;
     font-size:60px;
     line-height: 60px;
     color:#fefffd;
     text-shadow: 0 1px 3px rgba(0, 0, 0, 0.6);
}
 body > header .wrapTitle .headerText {
    text-align: center;
     font-size:26px;
     font-weight: bold;
     color:#fefffd;
     text-shadow: 0 1px 3px rgba(0, 0, 0, 0.6);
}
 body > header .wrapTitle .headerText .btn {
    padding:16px 30px;
     font-size:30px;
     font-weight: normal;
     color:#fff;
     background: #fe0504;
     text-shadow: none;
}
 body > header .wrapTitle .headerText .btn:hover {
    color:#fe0504;
     background: #fff;
    ;
}
 body > header .wrapTitle *::selection {
    background:#ff0084;
     color:#aff;
}
 body > header .wrapBanner {
    width:100%;
     position:relative;
}
 body > header .wrapBanner .banner {
    width:100%;
}
 body > header .wrapBanner .banner img {
    width:100%;
}
 body > header .wrapBanner .logo {
    position:absolute;
     top:20%;
     height:50%;
     width:30%;
     z-index:0;
     left:5%;
}
 body > header .wrapBanner .logo img {
}
 body > header .wrapButtons {
    position:absolute;
     bottom:0;
     right:20%;
     display: -webkit-flex;
     display: flex;
     z-index:10;
}
 body > header .wrapButtons li {
    display:inline-block;
     margin-left:5%;
}
 body > header .wrapButtons li a {
    display:inline-block;
     padding:12px 20px;
     background: #4343da;
     color:#fff;
     text-decoration: none;
     font-size:26px;
     transition: all 0.3s ease;
     border-radius: 5px 5px 0 0;
     font-variant: small-caps;
}
 body > header .wrapButtons li a:hover {
    background:#fff;
     color:#4343da;
}
/*body > header.withWrapButtons {
     min-height: 118px;
}
*/
 body > header.simpleHeader {
    background: #fff;
}
 body > header.simpleHeader .wrapButtons {
    bottom:-50px;
}
 body > header.simpleHeader .wrapButtons li a {
    border-radius: 0 0 5px 5px;
}
 body > header.classic {
}
 body > header.classic .wrapBanner .banner {
}
 body > header.classic .wrapBanner .banner img {
    /* object-fit: cover;
     object-position: center center;
    */
}
 body > header.classic .wrapBanner .logo {
     background:rgba(255,255,255, 0.6);
     padding:20px;
}
 body > header.classic .wrapBanner .logo img {
    width:100%;
     height: 100%;
     object-fit: contain;
}
 body > header.classic .wrapTitle {
    left:40%;
     width:60%;
     height: 80%;
     display: -webkit-flex;
     display: flex;
     -webkit-flex-direction: column;
     flex-direction: column;
     justify-content: center;
}
 body > header.sidelogo {
    min-height:160px;
     background: #fff;
}
 body > header.sidelogo .wrapBanner {
    min-height:160px;
}
 body > header.sidelogo .wrapBanner .logo {
    top:10%;
     width:20%;
     height:80%;
}
 body > header.sidelogo .wrapBanner .logo img {
    width:100%;
     height: 100%;
     object-fit: contain;
}
 body > header.sidelogo nav.mainNav {
    position:absolute;
     top:0%;
     width:75%;
     left:25%;
     height: 100%;
}
 body > header.sidelogo nav.mainNav .wrapNav {
    align-self:center;
}
 body > header.sidelogo nav.mainNav .menu {
    /* background:rgba(255,255,255,0.3);
     border-radius: 10px 0 0 10px;
     */
}
 body > header.sidelogo nav.mainNav > div > ul > li {
    background: none;
     color:#000;
     border-bottom: 4px solid #fff;
}
 body > header.sidelogo nav.mainNav > div > ul > li a, body > header.sidelogo nav.mainNav > div > ul > li span{
    color:#000;
}
 body > header.sidelogo nav.mainNav > div > ul > li:hover {
    border-bottom: 4px solid #444;
}
 body > header.sidelogo nav.mainNav > div > ul {
    width:100%;
}
 body > header.sidelogo nav.mainNav.scroll {
    position:fixed;
     height:auto;
     left:0;
     width:100%;
     background: #fff;
     justify-content: center;
}
 body > header.sidelogo nav.mainNav.scroll ul li {
}
 body > header.sidelogo nav.mainNav.scroll .smallLogo, body > header.sidelogo nav.mainNav.scroll .wrapNav {
    -webkit-flex: none;
     flex:none;
}
/* Autre template body > header.sidelogo {
    min-height:160px;
     background: #fff;
}
 body > header.sidelogo .wrapBanner {
    min-height:160px;
}
 body > header.sidelogo .wrapBanner .logo {
     top:5%;
     width:100%;
     text-align: center;
     left:0;
}
 body > header.sidelogo .wrapBanner .logo img {
    width:100%;
     height: 100%;
     object-fit: contain;
}
 body > header.sidelogo nav.mainNav {
    position:absolute;
     top:0%;
     width:100%;
     height: 100%;
}
 body > header.sidelogo nav.mainNav .wrapNav {
    margin-bottom: 120px;
     display: flex;
}
 body > header.sidelogo nav.mainNav .menu {
    background:rgba(255, 255, 255, 0.5);
     left: 0;
     text-align: center;
     padding: 35px;
    ;
     margin: 0 auto;
     width: 100%;
}
 body > header.sidelogo nav.mainNav > div > ul > li {
    background: none;
     color:#000;
    border-bottom: 4px solid rgba(0,0,0,0);
}
 body > header.sidelogo nav.mainNav > div > ul > li a {
    color:#000;
     font-size:20px;
     margin:4px 0;
}
 body > header.sidelogo nav.mainNav > div > ul > li:hover {
    border-bottom: 4px solid;
     transition:all 0.3s ease;
}
 body > header.sidelogo nav.mainNav > div > ul {
    padding:0;
     transition:all 0.3s ease;
}
 body > header.sidelogo nav.mainNav .smallLogo {
    display: none;
}
 body > header.sidelogo nav.mainNav.scroll .smallLogo {
    display: inline;
}
 body > header.sidelogo nav.mainNav.scroll .wrapNav {
    margin-bottom: 0;
}
 body > header.sidelogo nav.mainNav > div > ul > li > ul, body > header.sidelogo nav.mainNav > div > ul > li > ul > li{
    background:rgba(255, 255, 255, 0.7);
     width:100px;
}
 body > header.sidelogo nav.mainNav.scroll {
    position:fixed;
     height:auto;
     left:0;
     width:100%;
     background: #fff;
     justify-content: center;
}
 body > header.sidelogo nav.mainNav.scroll ul li {
}
 body > header.sidelogo nav.mainNav.scroll .smallLogo, body > header.sidelogo nav.mainNav.scroll .wrapNav {
    flex:none;
}
*/
 body > header.nav-in-banner {
     position: relative;
    /* box-shadow: 0 5px 10px rgba(0, 0, 0, 0.4);
     */
     transition: top 0.5s ease;
	 z-index:10000;
}
 body.scrolling-down > header.nav-in-banner {
     position:fixed;
	 z-index:10000;
}
 body > header.nav-in-banner .wrapBanner {
}
 body > header.nav-in-banner .wrapBanner .banner {
     min-height: 60px;
}
 body > header.nav-in-banner .wrapBanner .banner img {
    width:100%;
     height: 188px;
     object-fit: cover;
    object-position: top;
     transition: height 0.5s ease;
}
 body.scrolling-down > header.nav-in-banner .wrapBanner .banner img {
     height: 0;
}
 body > header.nav-in-banner .wrapBanner .logo {
    top:10%;
     width:20%;
     height:80%;
}
 body > header.nav-in-banner .wrapBanner .logo img {
    width:100%;
     height: 100%;
     object-fit: contain;
}
 body > header.nav-in-banner .wrapTitle {
    display: none;
}
 body > header.nav-in-banner nav.mainNav {
     background:transparent;
	 width: 100%;
}
 body.scrolling-down nav.mainNav>.wrapNav {
     padding-right:75px;
}
 body.scrolling-down > header.nav-in-banner nav.mainNav {
     background:var(--color-black);
}
 body > header.nav-in-banner nav.mainNav .wrapNav {
    align-self:center;
}
 body > header.nav-in-banner.scroll nav.mainNav ul.menu {
     border-top-right-radius: 0;
}
 body > header.nav-in-banner.scroll nav.mainNav .wrapNav {
     text-align: right;
}
 body > header.nav-in-banner .mainNav ul.menu {
     display: -webkit-flex;
     display: flex;
     font-size: 0;
     margin: 0 auto;
     border-radius: 3px 0 0 3px;
    /* max-width: 1200px;
     */
}
 body > header.nav-in-banner .mainNav ul.menu > li {
     -webkit-flex: 1 1;
     flex: 1 1;
     height:80px;
     display:flex;
	 transition:all 300ms ease;
}
body > header.nav-in-banner .mainNav ul.menu > li.buttonMenu { padding:12px; transition:all 0ms ease; }
body > header.nav-in-banner .mainNav ul.menu > li.buttonMenu > a { height: auto; display:block; align-items:center; transition:all 300ms ease; }
body > header.nav-in-banner .mainNav ul.menu > li.hasSub.buttonMenu:hover { padding-bottom:0;  }
body > header.nav-in-banner .mainNav ul.menu > li.menuToRight { margin-left:auto; }
 body > header.nav-in-banner .mainNav ul.menu ul {
     min-width: 100%;
}
 body > header.nav-in-banner .mainNav ul.menu.responsiveNav {
     visibility: visible !important;
     opacity: 1 !important;
     position: fixed;
     top: 0;
     bottom: 0;
     left: 0;
     right: 0;
     padding-top: 50px;
     background-color:var(--color-black);
     width: 100%;
     display: -webkit-flex;
     display: flex;
     -webkit-flex-direction: column;
     flex-direction: column;
     justify-content: flex-start;
	 z-index:10000;
}
 body > header.nav-in-banner .mainNav ul.menu.responsiveNav > li:first-child {
     margin-top: 100px;
}
 body > header.nav-in-banner .mainNav ul.menu.responsiveNav > li {
     -webkit-flex: 0 0 ;
     flex: 0 0;
}
 body > header.nav-in-banner .mainNav ul.menu.responsiveNav > li > a {
     padding: 25px 10px;
}
 body > header.nav-in-banner .mainNav ul.menu.responsiveNav > li ul {
     position: relative;
     box-shadow: unset;
     background: rgba(255, 255, 255, 0.15);
}
 body > header.nav-in-banner .mainNav ul.menu.responsiveNav > li.opened {
     background: rgba(0, 0, 0, 0.8);
}
 body > header.nav-in-banner .mainNav ul.menu.responsiveNav > li.opened > ul {
     display: block;
     max-height: 500px;
}
 body > header.nav-in-banner nav.mainNav > div > ul.menu > li.btLogo {
     display:none;
	 max-width:140px;
     /* border-right:1px solid #FCFCFC; */
}
 body > header.nav-in-banner nav.mainNav > div > ul.menu > li.btLogo a {
     padding-top:10px;
     text-align:left;
     vertical-align:middle;
     display:flex;
     padding-right:10px;
     justify-content:left;
}
 body > header.nav-in-banner nav.mainNav > div > ul.menu > li.btLogo a img:first-child {
     margin-right:0px;
}
body > header.nav-in-banner nav.mainNav > div > ul.menu.responsiveNav > li.btLogo a img:first-child { padding-left:20px; }
 body.scrolling-down > header.nav-in-banner nav.mainNav > div > ul.menu > li.btLogo {
     display:inline-block;
}
 body > header.nav-in-banner nav.mainNav > div > ul.menu > li a, body > header.nav-in-banner nav.mainNav > div > ul.menu > li span {
     color: #f4f4f4;
     font-size: 18px;
     padding: 10px 10px;
     text-align: center;
     align-items:center;
     display:flex;
     justify-content:center;
     width:100%;
	 font-weight:700;
	 line-height:18px;
}

body > header.nav-in-banner nav.mainNav > div > ul.menu > li#nav-cat-3757c a {
	background:transparent;
}
 body > header.nav-in-banner nav.mainNav > div > ul.menu > li:hover > a, body > header.nav-in-banner nav.mainNav > div > ul.menu > li:hover > span {
     color:var(--color-green);
}
 body > header.nav-in-banner nav.mainNav > div > ul.menu > li ul li {
     text-transform:none;
     text-align:left;
}
 body > header.nav-in-banner nav.mainNav > div > ul.menu > li ul li a, body > header.nav-in-banner nav.mainNav > div > ul.menu > li ul li span {
     color:var(--color-black);
     text-align:left;
     justify-content: start;
     padding-left:30px;
     padding-right:20px;
     font-weight:normal;
}
body > header.nav-in-banner .mainNav ul.menu > li.buttonMenu > a { display:flex; align-items:center; }
body > header.nav-in-banner .mainNav ul.menu > li.buttonMenu > a img {
	max-height:26px; width:auto; margin-left:7px; position: relative; bottom: 3px;
}
 body > header.nav-in-banner nav.mainNav > div > ul.menu > li ul li:hover a, body > header.nav-in-banner nav.mainNav > div > ul.menu > li ul li:hover span {
     background-color:var(--color-green);
     color:var(--color-yellow);
}
 @media all and (max-width: 900px) {
     body > header.nav-in-banner:not(.menu-opened) nav.mainNav > div > ul.menu > li a {
         font-size: 12px;
         padding: 10px 5px;
    }
}
 body > header.nav-in-banner nav.mainNav > div > ul.menu > li:hover, body > header.nav-in-banner nav.mainNav > div > ul.menu > li.selected {
    /* background: rgba(47, 27, 17, 0.8);
     */
}
 body > header.nav-in-banner nav.mainNav > div > ul.menu > li:first-child {
     border-top-left-radius: 3px;
}
 body > header.nav-in-banner nav.mainNav > div > ul.menu > li:last-child {
     border-top-right-radius: 3px;
}
 body > header.nav-in-banner .wrapButtons li a {
    padding:6px 10px;
     font-size:15px;
}
 body > nav.topNav > ul > li:hover, body > nav.topNav > ul > li.select {
     background: rgba(0, 0, 0, 0.6);
}
 body > header.nav-in-banner .overHead {
     display: block;
     position: absolute;
     top: 0;
     left: 0;
     z-index: 102;
     background: transparent;
}
 body > header.nav-in-banner.scroll .overHead {
     display: -webkit-flex;
     display: flex;
     justify-content: flex-end;
}
 body > header.nav-in-banner .overHead > ul {
     display: -webkit-inline-flex;
     display: inline-flex;
     -webkit-flex-direction: column;
     flex-direction: row;
     background: rgba(255, 255, 255, 0.3);
     border-radius: 0 0 3px 3px;
     width: auto;
}
 body > header.nav-in-banner .overHead > ul.btns {
     margin-right: 4%;
     float: right;
}
 body > header.nav-in-banner .overHead > ul.flags {
     float: right;
     margin-right: 6%;
}
 body > header.nav-in-banner.scroll .overHead ul.btns {
     margin-right: 25px;
}
 body > header.nav-in-banner.scroll .overHead ul.flags {
     float: none;
     margin-right: 35px;
}
 body > header.nav-in-banner .overHead > ul > li > a {
     display: inline-block;
     color: #f4f4f4;
     text-transform: uppercase;
     padding: 10px;
     font-weight: bold;
     font-size: 13px;
}
 body > header.nav-in-banner .overHead > ul > li:first-child {
     border-bottom-left-radius: 3px;
}
 body > header.nav-in-banner .overHead > ul > li:last-child {
     border-bottom-right-radius: 3px;
}
 body > header.nav-in-banner .overHead > ul > li:hover, body > header.nav-in-banner > .overHead > ul > li.select {
     background: rgba(0, 0, 0, 0.6);
}
 body > header.nav-in-banner
/*.scroll*/
 {
     position: absolute;
     top: 0;
	 left: 0; right: 0;
}
 @media all and (max-width: 999px) {
     body > header.nav-in-banner.scroll:not(.menu-opened) .overHead > ul {
         display: none;
    }
}
 body > header.nav-in-banner.scroll .banner-small {
     display: block;
}
 body > header.nav-in-banner.scroll .banner-large {
     display: none;
}
/*body > header.nav-in-banner .mainNav {
     position: absolute;
     bottom: 0;
     top: unset;
     left: 0;
     right: 0;
}
*/
 .banner-small {
     display: none;
     min-height: 60px;
     object-position: left;
     object-fit: cover;
     position: relative;
     top: -100%;
}
 body > header.nav-in-banner .mainNav ul.menu > li.menu-mobile-lg {
     display:none;
}
/* Autre template body > header.nav-in-banner {
    min-height:160px;
     background: #fff;
}
 body > header.nav-in-banner .wrapBanner {
    min-height:160px;
}
 body > header.nav-in-banner .wrapBanner .banner {
}
 body > header.nav-in-banner .wrapBanner .banner img {
    width:100%;
}
 body > header.nav-in-banner .wrapBanner .logo {
    top:10%;
     width:20%;
     height:80%;
     display:none;
}
 body > header.nav-in-banner .wrapBanner .logo img {
    width:100%;
     height: 100%;
     object-fit: contain;
}
 body > header.nav-in-banner nav.mainNav .smallLogo {
    display: block;
     margin-top: 35px;
     opacity: 1;
}
 body > header.nav-in-banner nav.mainNav .smallLogo img {
    height: auto;
     max-width: 150px;
     padding: 0 25px;
}
 body > header.nav-in-banner nav.mainNav {
    transition: height 6s ease;
     height:80vh;
     display: block;
     position:absolute;
     top:0%;
     width:calc(65% - 30px);
     right: 30.5px;
     background: #4343da;
     width: 10%;
}
 body > header.nav-in-banner nav.mainNav .wrapNav {
    align-self:center;
}
 body > header.nav-in-banner nav.mainNav > div > ul > li {
    width:100%;
     background: none;
     color:#000;
    display:block;
     border-bottom: 4px solid rgba(0,0,0,0);
}
 body > header.nav-in-banner nav.mainNav.scroll {
    position:fixed;
     height:100vh;
}
 @keyframes scroll {
     0% {
         height: 0vh;
    }
     50% {
         height: 20vh;
    }
     60% {
         height: 70vh;
    }
     70% {
         height: 82vh;
    }
     80% {
         height: 90vh;
    }
     100%{
         height: 100vh;
    }
}
 body > header.nav-in-banner nav.mainNav > div > ul > li:before {
    content:"";
     position:absolute;
     left:0px;
     border-left:5px solid #000;
     border-top:5px solid transparent;
     border-bottom:5px solid transparent;
     top:calc(50% - 5px);
}
 body > header.nav-in-banner nav.mainNav > div > ul > li a {
    color:#fff;
     font-size:18px;
     padding:14px 10px;
}
 body > header.nav-in-banner nav.mainNav > div > ul > li:hover {
    border-bottom: 4px solid #fff;
     transition:all 0.3s ease;
}
 body > header.nav-in-banner nav.mainNav > div > ul {
    width: 100%;
     padding: 0 25px;
}
 body > header.nav-in-banner .wrapButtons li a {
    padding:6px 10px;
}
 body > header.nav-in-banner .overHead {
    transition: height 6s ease;
     height:80vh;
     right:0;
     width:30px;
     height:100%;
     position:absolute;
     flex-direction: column;
    display: flex;
}
 body > header.nav-in-banner .overHead.scroll{
    position:fixed;
     height:100vh;
}
 body > header.nav-in-banner .overHead > div {
    flex-direction: column-reverse;
     justify-content: space-between;
     flex:1;
}
 body > header.nav-in-banner .overHead .flags {
    flex-direction: column;
}
 body > header.nav-in-banner .overHead .flags li {
    padding:5px 2px;
}
 body > header.nav-in-banner .overHead .areas {
    flex-direction: column;
}
 body > header.nav-in-banner .overHead .areas li {
    font-size:0;
     padding:0;
     text-align: center;
}
 body > header.nav-in-banner .overHead .areas li i {
    font-size:18px;
}
*/
 body > header.logo-outside {
    min-height:160px;
     background: #fff;
     margin-bottom:20px;
     margin-top:20px;
}
 body > header.logo-outside .wrapBanner {
    min-height:160px;
     width:60%;
     left:32%;
     border-radius: 10px;
}
 body > header.logo-outside .wrapBanner .logo {
    top:10%;
     left:-50%;
     width:50%;
     height:80%;
     text-align: center;
     display: -webkit-flex;
     display: flex;
     -webkit-flex-direction: column;
     flex-direction: column;
     justify-content: center;
}
 body > header.logo-outside .wrapBanner .logo img {
    width:80%;
     height: 80%;
     object-fit: contain;
     align-self: center;
}
 body > header.logo-outside .wrapBanner .banner img {
    border-radius: 10px;
}
 body > header.logo-outside nav.mainNav {
    position:absolute;
     bottom:0%;
     width:60%;
     left:32%;
     top:auto;
     background: #000;
     border-radius: 0 0 10px 10px;
}
 body > header.logo-outside.simpleHeader nav.mainNav {
    top:0;
     bottom:auto;
}
 body > header.logo-outside nav.mainNav .wrapNav {
    align-self:center;
}
 body > header.logo-outside nav.mainNav .wrapNav ul {
    padding:0;
}
 body > header.logo-outside nav.mainNav .smallLogo {
    display: none;
}
 body > header.logo-outside.simpleHeader nav.mainNav .smallLogo {
    display:block;
}
 body > header.logo-outside .wrapTitle {
    left:32%;
     width:60%;
     height: 80%;
     display: -webkit-flex;
     display: flex;
     -webkit-flex-direction: column;
     flex-direction: column;
     justify-content: center;
}
 body > header.logo-outside .wrapTitle h1 {
    font-size:40px;
     line-height: 40px;
}
 body > header.logo-outside .wrapButtons li a {
    padding:6px 10px;
     font-size:15px;
     border-radius: 0 0 6px 6px;
}
 body > header.logo-outside .wrapButtons {
    bottom:auto;
     top:0;
}
 body > header.logo-outside nav.mainNav.scroll {
    position:fixed;
     height:auto;
     left:0;
     bottom:auto;
     top:0;
     width:100%;
     background: #000;
     justify-content: center;
}
 body > header.logo-outside nav.mainNav.scroll .smallLogo, body > header.logo-outside nav.mainNav.scroll .wrapNav {
    -webkit-flex: none;
     flex:none;
}
 body > header.logo-outside .overHead {
    right:calc(7% - 15px);
     width:30px;
     background: none;
     height:calc(100% - 32px);
     position:absolute;
     -webkit-flex-direction: column;
     flex-direction: column;
     display: -webkit-flex;
     display: flex;
}
 body > header.logo-outside .overHead > div {
    -webkit-flex-direction: column-reverse;
     flex-direction: column-reverse;
     justify-content: space-between;
     -webkit-flex: 1;
     flex:1;
}
 body > header.logo-outside .overHead .flags {
    -webkit-flex-direction: column;
     flex-direction: column;
}
 body > header.logo-outside .overHead .flags li {
    padding:5px 2px;
     color:#000;
}
 body > header.logo-outside .overHead .areas {
    -webkit-flex-direction: column;
     flex-direction: column;
}
 body > header.logo-outside .overHead .areas li {
    font-size:0;
     padding:0;
     text-align: center;
     color:#000;
}
 body > header.logo-outside .overHead .areas li i {
    font-size:18px;
}
 body > header.fullpage {
}
 body > header.fullpage .overHead {
    position:absolute;
     top:0;
     left:0;
     z-index:2;
     height:40px;
}
 body > header.fullpage .overHead.scroll {
    top:-30px;
}
 body > header.fullpage .wrapBanner .banner {
}
 body > header.fullpage .wrapBanner .banner img {
    width:100%;
     height:100vh;
     object-fit: cover;
     object-position: center center;
}
 body > header.fullpage .wrapBanner .banner::after {
    content:"";
     z-index:0;
     position:absolute;
     top:0;
     left:0;
     width:100%;
     height:100%;
     background:rgba(0,0,0,0.3);
}
 body > header.fullpage .wrapTitle {
    width:100%;
     left:0;
}
 body > header.fullpage .wrapTitle .logo {
    width:100%;
     text-align: center;
     padding:20px;
}
 body > header.fullpage .wrapTitle .logo img {
    max-height: 30vh;
}
 body > header.fullpage .overHead {
    position:fixed;
}
 body > header.fullpage nav.mainNav {
    position:fixed;
     top:28px;
     width:100%;
     left:0%;
     background:#1f1411;
     transition:top 0.5s ease;
}
 body > header.fullpage nav.mainNav.scroll {
    top:0;
}
 body > header.fullpage nav.mainNav > div > ul {
    padding:0;
}
 .scrollDown {
     background-image: url('../../img/design/double-arrow.png');
     background-repeat: no-repeat;
     background-size: contain;
     width: 50px;
     height: 50px;
     cursor: pointer;
     position: absolute;
     left: 50%;
     bottom: 30px;
     transform: translateX(-50%);
     animation: scrollDown 1.3s infinite;
}
 @keyframes scrollDown {
     0% {
         bottom: 30px;
    }
     50% {
         bottom: 50px;
    }
     60% {
         bottom: 30px;
    }
     70% {
         bottom: 35px;
    }
     80% {
         bottom: 30px;
    }
     100%{
         bottom: 30px;
    }
}
 .switch-lang {
     width: 55px;
     text-align: center;
     cursor: pointer;
     z-index: 50;
     position: absolute;
     top: 100%;
     right: 20px;
     border: 1px solid #F2F2F2;
     border-radius: 0;
     border-top:0px;
     overflow:hidden;
}
 .switch-lang:hover .lang-dropdown {
     display: block;
}
 .switcher-link {
     color: #fff;
}
 .switcher-link:hover {
     color: #fff;
}
 .current-lang {
     background:transparent;
     padding: 10px 5px 10px 5px;
     text-align: center;
     position:relative;
}
 .switch-lang:hover {
     background-color:#FFF;
     color:#2B2B2B;
     border:0px;
}
 .current-lang::after {
     content:'';
     background-image:url(/img/raquo.svg);
     width:8px;
     height:5px;
     background-size:cover;
     position:absolute;
     right:6px;
     top:50%;
     margin-top:-3px;
}
 .switch-lang:hover .current-lang::after {
     background-image:url(/img/raquo-black.svg);
}
 .lang-flag {
     width: 20px;
     display: inline-block;
}
 body.scrolling-down .switch-lang {
     top:50%;
     z-index:105;
     border-radius:0;
     border-top:1px solid #FFF;
     margin-top:-25px;
}
 .switch-lang:hover .lang-text, .switch-lang:hover .current-lang::after {
     color:#2B2B2B;
}
 body.scrolling-down .switch-lang .current-lang {
     padding: 7px 5px 7px 5px;
	 height:50px;
}
 .lang-text {
     display: inline-block;
     vertical-align: middle;
     color:#FFF;
     font-size:20px;
     width:100%;
     text-align:center;
}
 .current-lang .lang-text {
     padding-right:10px;
}
 .lang-dropdown {
     display: none;
     background: transparent;
     border-radius: 5px;
}
 .selecting-lang {
     padding: 8px 5px 8px 5px;
     cursor: pointer;
     text-align:center;
     border-top:1px solid #FFF;
     font-weight:bold;
}
 .switch-lang:hover .selecting-lang {
     border-top:1px solid #E2E2E2;
}
 .selecting-lang:hover {
     background: var(--color-green);
}
 .selecting-lang:hover .lang-text {
     color:#FFF;
}
 ul.menu > :first-child {
     border-radius: 0px;
}

ul.menu li { transition:all 300ms ease-in; }
ul.menu li:not(.btLogo,#nav-cat-3757,.buttonMenu):hover > a
{
	background-color:#FFF;
}
ul.menu li.buttonMenu li:not(.btLogo,#nav-cat-3757,.buttonMenu):hover > a {
	background-color:unset;
}
ul.menu li.buttonMenu li:hover > a
{
	background-color:inherit;
}
ul.menu li#nav-cat-3757c:hover { background:transparent; }
 ul > :last-child {
     border-radius: 0px 0px 0px 0px;
}
 li {
     list-style-type: none;
}
 .menu-arrow {
     display: inline-block;
     width: 10px;
     margin-left: 10px;
     vertical-align: top;
     margin-top: 6px;
}
/* ------------------------------------------------------------------- ---------------------------------------------------------------------- STRUCTURE ---------------------------------------------------------------------- ---------------------------------------------------------------------- */
/* Page ---------------------------------------------------------------------- */
/* Modal ---------------------------------------------------------------------- */
 .simple-modal {
     height: auto;
     left: 50%;
     max-width: 630px;
     min-width: 300px;
     position: fixed;
     top: 0;
     transform: translateX(-50%);
     visibility: hidden;
     width: 50%;
     z-index: 20000;
     background: #661e21;
     box-shadow: 0 0 25px 5px rgba(0,0,0,0.3);
     overflow: hidden;
}
 .simple-modal.on {
    visibility: visible;
     top: 6vh;
}
 .simple-modal .simpleModal-content {
     color:#fff;
     margin: 0 auto;
     opacity: 0;
     position: relative;
     transform: translateY(-50%);
     transition: all 0.3s;
     padding: 10px;
}
 .simple-modal.on .simpleModal-content {
    border-radius: 0 0 3px 3px;
     opacity: 1;
     transform: translateY(0%);
}
 .simpleModal-overlay {
     height: 100%;
     left: 0;
     opacity: 0;
     position: fixed;
     top: 0;
     transition: all 0.3s;
     visibility: hidden;
     width: 100%;
     z-index: 2000;
}
 .simple-modal.on ~ .simpleModal-overlay {
    background-color: rgba(100, 100, 100, 0.8);
     opacity: 1;
     visibility: visible;
}
 .simple-modal h3 {
    font-size: 2.4em;
     font-weight: normal;
     padding: 0.4em;
     text-align: center;
     color:#fff;
}
 .simple-modal .wrap-form {
    padding: 10px;
}
 .simple-modal .wrap-form label {
    color:#fff;
}
 .simple-modal .wrap-form .btn {
     border-radius: 6px;
     cursor: pointer;
     display: block;
     margin: 10px auto;
     padding: 10px 20px;
     font-variant: small-caps;
     background: #4343da;
     font-size:16px;
}
 .simple-modal .wrap-form .btn:hover {
    color:#4343da;
     background: #fff;
}
 .simple-modal .products, .simple-modal .nav {
    display: -webkit-flex;
     display: flex;
     justify-content: center;
     text-align: center;
}
 .simple-modal h4 {
    margin: 15px 0;
}
 .simple-modal h4, .simple-modal .price {
    font-size: 18px;
}
 .simple-modal img {
    max-height: 250px;
     object-fit: contain;
     width: 100%;
}
 .simple-modal .nav div {
    -webkit-flex: 1;
    flex: 1;
}
/* Rubrique ---------------------------------------------------------------------- */
/* Rangée || Colonne de blocs ---------------------------------------------------------------------- */
 .struct-blocs {
    width:100%;
     padding:0;
}
 .struct-blocs.struct-wrap {
    max-width:var(--max-width);
     margin:0 auto;
}
 .struct-blocs.struct-padding {
    padding:0 5vw;
}
 .struct-blocs.struct-padding-full {
    padding:5vh 5vw;
}
 .struct-blocs.struct-padding > .ct-blocs > *:last-child {
    padding-right: 0;
}
 .struct-blocs.struct-padding-full > .ct-blocs > *:last-child {
    padding-right: 0;
}
 .struct-blocs > .ct-blocs {
    display:flex;
     justify-content: flex-start;
     align-items: flex-start;
}
 .struct-blocs > .ct-blocs:not(.align-start) {
     justify-content: space-between;
     align-items: center;
}
 .struct-blocs > .ct-blocs.align-start:not(.column) {
    align-items: flex-start;
}
 .struct-blocs > .ct-blocs.align-center.column {
     align-items: center;
}
 .struct-blocs > .ct-blocs.align-center {
     align-items: center;
}
 .struct-blocs.align-left > .ct-blocs.column {
    align-items: flex-start;
}
 .struct-blocs > .ct-blocs.column.align-start {
     align-items: flex-start;
}
 .struct-blocs > .ct-blocs.column {
    -webkit-flex-direction: column;
     flex-direction:column;
     height: 100%;
}
 .struct-blocs > .ct-blocs > * {
    -webkit-flex: 1 50%;
     flex:1 50%;
}
/*.struct-blocs > .ct-blocs.column > * {
    align-self:center;
}
*/
 .struct-blocs > .ct-2-1 > :nth-child(1) {
    -webkit-flex: 2;
     flex:2;
}
 .struct-blocs > .ct-2-1 > :nth-child(2) {
    -webkit-flex: 1;
     flex:1;
}
 .struct-blocs > .ct-1-2 > :nth-child(2) {
    -webkit-flex: 2;
     flex:2;
}
 .struct-blocs > .ct-1-1-2 > :nth-child(3) {
    -webkit-flex: 2;
     flex:2;
}
 .struct-blocs > .ct-1-2-1 > :nth-child(2) {
    -webkit-flex: 2;
     flex:2;
}
 .struct-blocs > .ct-2-1-1 > :nth-child(1) {
    -webkit-flex: 2;
     flex:2;
}
 .struct-blocs > .ct-3-1 > :nth-child(1) {
    -webkit-flex: 3;
     flex:3;
}
 .struct-blocs > .ct-1-3 > :nth-child(2) {
    -webkit-flex: 3;
     flex:3;
}
/*.struct-blocs.struct-span-2 > .ct-blocs {
    flex-direction: column;
}
*/
 .struct-blocs.struct-span-1 > .ct-blocs {
    -webkit-flex-direction: column;
     flex-direction: column;
}
 .struct-blocs.struct-span-0 > .ct-blocs {
    -webkit-flex-direction: column;
     flex-direction: column;
}
 .struct-blocs article > h2 {
     font-size: 22px;
     font-weight: bold;
}
 .struct-blocs.horaires > .ct-blocs > .bloc-text:first-child {
     flex-basis: 50%;
}
 .struct-blocs.horaires > .ct-blocs > .bloc-text:not(:first-child) {
     flex-basis: 35%;
}
 .struct-blocs.horaires > .ct-blocs > .bloc-image {
     flex-basis: 15%;
     align-self: center;
     display: flex;
     justify-content: center;
     align-items: center;
     height: 100%;
}
 .struct-blocs.horaires > .ct-blocs > .bloc-image img {
     max-width: 120px;
}
 .struct-blocs .bloc-image {
     padding: 20px;
}
/* Blocs empilés (news) ---------------------------------------------------------------------- */
 .struct-stacked {
    margin: 10px;
}
 .struct-stacked .bloc-news {
     opacity: 0;
     background:#f1f3f2;
}
 .struct-stacked .new {
    border: 1px solid rgba(195, 195, 195, 0.2);
}
 .struct-stacked img {
    width: 100%;
     display: block;
}
 .struct-stacked article {
    padding: 10px;
}
 .struct-stacked article > h2 {
    margin-top:0;
     font-size:18px;
     line-height: 22px;
}
 .struct-stacked article > .chapo {
    font-size:13px;
     line-height: 15px;
}
 .struct-stacked .buttons {
    padding:10px 0;
     text-align: center;
}
 .struct-stacked.style-1 article {
     position: relative;
     top: -3px;
}
 .struct-stacked.style-1 article:before {
     border-bottom: 15px solid;
     border-left: 15px solid transparent;
     border-right: 15px solid transparent;
     content: "";
     display: block;
     position: absolute;
     top: -15px;
     width: 0;
}
 .struct-stacked.style-1 .new:nth-child(even) article:before {
     left: 30px;
}
 .struct-stacked.style-1 .new:nth-child(odd) article:before {
     right: 30px;
}
 .struct-stacked.style-1 .chapo {
     font-size: 13px;
}
 .struct-stacked.style-2 h2 {
     font-size: 20px;
     margin-top: 20px;
     position: relative;
}
 .struct-stacked.style-2 h2:before {
     border-top: 5px solid;
     content: "";
     height: 10px;
     position: absolute;
     top: -10px;
     width: 30px;
}
 .struct-stacked.style-2 .chapo {
     font-size: 14px;
}
 @media all and (max-width: 700px) {
     .struct-stacked .bloc-news {
        left: 15px !important;
    }
     .struct-stacked .chapo {
        text-align: justify;
    }
}
/* Onglets ---------------------------------------------------------------------- */
 .struct-tabs {
     max-width: 1200px;
     margin: 25px auto;
     background: #eee;
     box-shadow: 3px 3px 15px rgba(0, 0, 0, 0.15);
}
 .struct-tabs > header > ul.tabs {
     display: -webkit-flex;
     display: flex;
}
 .struct-tabs > header > ul.tabs > li {
     -webkit-flex: 1 1;
     flex: 1 1;
     cursor: pointer;
     padding: 12px;
     font-size: 18px;
     font-weight: bold;
     text-align: center;
     border-bottom: 3px solid #82504f;
}
 .struct-tabs > header > ul.tabs > li.selected {
     background: #82504f;
     color: #fbfbfb;
}
 .struct-tabs > .tab-content {
     padding: 25px;
}
/* ------------------------------------------------------------------- ---------------------------------------------------------------------- BLOCS GENERIQUES ---------------------------------------------------------------------- ---------------------------------------------------------------------- */
/* Contenu ---------------------------------------------------------------------- */
 .bloc-content > .pos-bottom {
    -webkit-flex-direction: column-reverse;
     flex-direction: column-reverse;
}
 .bloc-content > .pos-top {
    -webkit-flex-direction: column;
     flex-direction: column;
}
 .bloc-content > .pos-right {
    -webkit-flex-direction: row-reverse;
    flex-direction: row-reverse;
}
 .generic-content > .bloc-content > .ct-blocs {
     height:75vh;
     min-height:700px;
     position:relative;
     border-radius:0;
     overflow:hidden;
}
 .generic-content > .bloc-content aside {
     position:absolute;
     width:100%;
     top:0px;
     left:0px;
     height:100%;
}
 .generic-content > .bloc-content aside::after {
     content: '';
     width: 100%;
     height: 100%;
     z-index: 5;
     background: rgba(0, 0, 0, 0.55);
     top: 0px;
     left: 0px;
     position: absolute;
     border-radius:0;
     overflow:hidden;
}
 .generic-content > .bloc-content section {
     height:100%;
     position:absolute;
     top:0px;
     left:0px;
     width:100%;
     z-index:10;
}
 .generic-content > .bloc-content section .hgroup {
     transform: translateY(-50%) translateX(-50%);
     width:100%;
     position:absolute;
     top:50%;
     max-width:var(--max-width);
     margin:0px auto;
     left:50%;
     padding:180px 20px 20px 20px;
}
 .generic-content > .bloc-content section .hgroup > h2 {
     display:none;
}
 .generic-content > .bloc-content section .hgroup .chapo > h2 {
     font-size:96px;
     line-height:105px;
     color:var(--color-white);
}
 .generic-content > .bloc-content .content {
     max-width:var(--max-width);
     margin:0px auto;
     padding:60px 20px;
}
 .bloc-content figure {
    width:100%;
     font-size: 0;
     padding: 20px 0;
}
 .generic-content .bloc-content figure {
     padding:0px;
     height:100%;
     position:absolute;
     width:100%;
     top:0px;
     left:0px;
}
 .bloc-content figure img {
    width:100%;
}
 .generic-content .bloc-content figure img {
     object-fit:cover;
     width:100%;
     height:100%;
}
 .bloc-content figure figcaption {
    font-size:11px;
     font-style: italic;
}
 .bloc-content .cover-full figure {
    height:100%;
}
 .bloc-content .cover-full figure img {
    height:100%;
     object-fit: cover;
}
 .bloc-content .cover-margin figure {
    padding:20px;
}
 .bloc-content > div > section {
    padding:20px;
}
 .bloc-content .hgroup h2 {
     font-size: 22px;
     padding:0;
     margin-bottom:24px;
     margin-top: 0;
}
 .bloc-content .hgroup .chapo {
    font-size:24px;
     line-height: 28px;
     font-weight: normal;
     font-variant: none;
     padding:0;
     margin-bottom: 16px;
     color:#888;
}
 .bloc-content .hgroup h3 {
    font-size:13px;
     line-height: 13px;
     font-weight: normal;
     font-variant: none;
     display:inline-block;
     border-bottom:1px solid #bbb;
     color:#bbb;
     padding:5px 30px 5px 0;
     margin-top:0;
     margin-bottom: 24px;
     width:auto;
     font-style: italic;
}
 .bloc-content .content {
    font-size:13px;
     text-align: justify;
}
 .bloc-content > .align-start h1, .bloc-content > .align-start h2 {
    text-align: left;
}
 .bloc-content > .align-center h1, .bloc-content > .align-center h2 {
    text-align: center;
}
 .bloc-content > .align-end h1, .bloc-content > .align-end h2 {
    text-align: right;
}
 .bloc-content .buttons, .buttons {
     display: -webkit-flex;
     display: flex;
     flex-wrap: wrap;
     justify-content: end;
     margin-top:35px;
}
 .bloc-slider .buttons {
     justify-content:start;
}
 .bloc-content > .align-center .buttons {
    justify-content: center;
}
 .bloc-content > .align-start .buttons {
    justify-content: flex-start;
}
 .bloc-content .buttons a, .buttons a {
     max-width:420px;
}
 .bloc-content .buttons a:hover {
    background: #000;
}
 .bloc-content .buttons span {
     vertical-align: middle;
}
 .bloc-content .file {
    overflow: hidden;
     position: relative;
     min-width: 70px;
}
 .bloc-content .file span {
    display: block;
     position: relative;
     text-align: center;
     top: 0;
     transition: all 0.3s;
}
 .bloc-content .file:hover span {
    top: 150%;
}
 .bloc-content .file:before {
     bottom: 100%;
     font-size: 22px;
     left: 0;
     line-height: 50px;
     color:#fff;
     position: absolute;
     text-align: center;
     transition: all 0.3s;
     width: 100%;
}
 .bloc-content .file:hover:before {
    bottom: 0;
}
 .bloc-content .goto {
    font-size:15px;
}
 .bloc-content .goto span:before {
     font: normal normal normal 14px/1 FontAwesome;
     margin-right: 5px;
     transition: color 0.3s;
}
 .bloc-content .goto:hover {
    color:#fff;
}
 .bloc-counter .digi-counter.bar .backBar {
    background: #AAA;
}
 .bloc-counter .digi-counter.bar .backBar .counterBar{
    background: #FA2;
    padding-top: 10px;
}
 .bloc-content > [data-c="1332"] {
     background-color: #870001;
}
 .bloc-content > [data-c="1332"] .hgroup > h1 {
     color: #fff;
     margin-bottom: 0;
     padding-bottom: 0;
     padding-top: 40px;
}
 .bloc-content > [data-c="1337"] {
     margin: 40px 0;
}
 .bloc-content > [data-c="1337"] > aside {
     flex: 0 1;
}
 .bloc-content > [data-c="1337"] > aside > figure > img {
     max-height: 600px;
     width: auto;
     max-width: 100%;
}
 main.homePage .bloc-content .hgroup > h1, main.homePage .bloc-content .hgroup > h2 {
     border-bottom: 4px solid #870001;
     padding-bottom: 10px;
     font-size: 32px;
     font-weight: bold;
     color: #000;
}
 main.homePage .bloc-content > div.pos-right, main.homePage .bloc-content > div.pos-left {
     align-items: flex-start;
     margin: 40px 0;
}
 main.homePage .bloc-content > div.pos-right > section {
     padding-right: 0;
}
 main.homePage .bloc-content > div.pos-right > section > .content {
     padding-right: 20px;
}
 main.homePage .bloc-content > div.pos-left .hgroup > h1, main.homePage .bloc-content > div.pos-left .hgroup > h2 {
     padding-left: 20px;
}
 main.homePage .bloc-content > div.pos-left > section {
     padding-left: 0;
}
 main.homePage .bloc-content > div.pos-left > section > .content {
     padding-left: 20px;
}
/* Titre ---------------------------------------------------------------------- */
 .bloc-title {
     margin: 0 0 40px 0;
}
 .bloc-title h1, .bloc-title h2 {
     color: #fff;
     width: 100%;
     text-align: left;
     margin: 0;
     padding: 0px;
     font-size: 50px;
	 line-height:50px;
     font-weight:700;
     text-transform: uppercase;
     color:var(--color-green);
     font-family:'Sansplomb';
	 text-transform:uppercase;
     border-bottom:1px solid var(--color-green);
     padding-bottom:20px;
}
 .bloc-title.align-start h1, .bloc-title.align-start h2 {
    text-align: left;
}
 .bloc-title.align-center h1, .bloc-title.align-center h1 span, .bloc-title.align-center h2, .bloc-title.align-center h2 span {
    text-align: center;
}
 .bloc-title.align-end h1, .bloc-title.align-end h1 span, .bloc-title.align-end h2, .bloc-title.align-end h2 span {
    text-align: right;
}
 .struct-blocs > .ct-blocs.column > .bloc-title {
    display:flex;
     -webkit-flex-direction: column;
     flex-direction: column;
     justify-content: center;
}
 .struct-blocs > .ct-blocs.column > .bloc-title h1, .struct-blocs > .ct-blocs.column > .bloc-title h2 {
    -webkit-flex: 1;
     flex:1;
     display:flex;
     -webkit-flex-direction: column;
     flex-direction: column;
     justify-content: center;
}
/* Texte ---------------------------------------------------------------------- */
 .bloc-text {
    font-size:13px;
     line-height: 15px;
     padding:20px;
}
 .bloc-text .hgroup {
}
 .bloc-text .hgroup h2 {
}
 .bloc-text.align-center .hgroup h2 {
     text-align: center;
}
 .bloc-text .hgroup h3 {
}
 .bloc-text .content {
}
 .bloc-text .content li {
    font-size: 16px;
     line-height: 1.3;
}
 .bloc-text .content blockquote {
    font-size:16px;
     line-height: 18px;
}
 .bloc-text .content blockquote:after {
    font-size:22px;
}
 .bloc-text .content blockquote:before {
    font-size:22px;
}
 .bloc-text .content img {
    max-width: 90% !important;
     height:auto !important;
}
/* Image ---------------------------------------------------------------------- */
 .bloc-image {
    width:100%;
     font-size: 0;
}
 .bloc-image.with-title {
     position: relative;
     max-height: 40vh;
     height: 40vh;
}
 .bloc-image.with-title.cover-full img {
     max-height: calc(40vh - 40px);
}
 .bloc-image.with-title .title {
     position: absolute;
     top: 0;
     left: 0;
     right: 0;
     bottom: 0;
     display: flex;
     justify-content: center;
     align-items: center;
}
 .bloc-image.with-title .title > h1 {
     color: var(--title-color, #fff);
}
 .bloc-image img {
	max-width:100%;
}
 .bloc-image a {
    display:block;
}
 .bloc-image a img {
}
 .bloc-image figcaption {
    font-size:11px;
     font-style: italic;
}
 .bloc-image.cover-full img {
    height:100%;
     object-fit: cover;
}
 .bloc-image.cover-margin {
    padding:20px;
}
 .struct-blocs > .ct-blocs.column > .bloc-image:last-child {
    display:flex;
     -webkit-flex-direction: column;
     flex-direction: column;
     justify-content: end;
}
 .struct-blocs > .ct-blocs.column > .bloc-image:only-child {
    justify-content: start;
}
/* Video ---------------------------------------------------------------------- */
 .bloc-video {
     background: none;
     position: relative;
     font-size: 0;
     background-repeat: no-repeat;
     background-position: top center;
}
 .bloc-video .video-details > h2, .bloc-video .video-details > div {
    margin: 10px 0;
     text-shadow: 0 1px 3px rgba(0, 0, 0, 0.3);
     text-align: center;
}
 .bloc-video .video-details > h2 {
    font-weight: normal;
     text-align: center;
}
 .bloc-video .video-details {
    padding: 3vh 3vw;
     text-align: center;
}
 .bloc-video .video-details > div {
    font-size: 17px;
}
 .bloc-video .video-container {
}
 .bloc-video iframe {
     z-index: 0;
     height: 55.77vw;
     width: calc(100vw - 18px);
}
 .struct-wrap .bloc-video iframe {
    max-width:1200px;
     max-height: 670px;
}
 .bloc-video .video-container.highlight iframe {
}
/* Bouton ---------------------------------------------------------------------- */
 .bloc-button {
    padding: 30px 0px;
}
 .bloc-button.align-start, .bloc-button.align-start h2 {
    text-align: left;
}
 .bloc-button.align-center, .bloc-button.align-center h2 {
    text-align: center;
}
 .bloc-button.align-end, .bloc-button.align-end h2 {
    text-align: right;
}
 .bloc-button h2 {
}
 .bloc-button a {
}
 .bloc-button .btn {
     width: 100%;
     text-align: center;
     border-color: none;
}
 .bloc-button .btn:hover {
}
/* Call to Action ---------------------------------------------------------------------- */
/* Testimonial ---------------------------------------------------------------------- */
 .bloc-testimonial {
    display:flex;
     background:#eee;
     color:#000;
     padding:20px;
}
 .bloc-testimonial aside {
    width:25%;
}
 .bloc-testimonial aside figure {
    max-height: 180px;
     max-width: 180px;
     margin: 0 auto;
}
 .bloc-testimonial aside figure img {
    width:100%;
     height:100%;
     object-fit: cover;
     border-radius: 100%;
}
 .bloc-testimonial section {
    width:75%;
     display: -webkit-flex;
     display: flex;
     -webkit-flex-direction: column;
     flex-direction: column;
     justify-content: center;
}
 .bloc-testimonial section h2 {
    font-size:32px;
     margin:1vh 0;
}
 .bloc-testimonial section > blockquote {
}
 .bloc-testimonial section > blockquote::before, .bloc-testimonial section > blockquote::after {
    content:none;
}
 .bloc-testimonial section > blockquote .chapo {
    font-size:16px;
     padding:4px 0;
     font-style: italic;
}
 .bloc-testimonial section > blockquote .content {
    position:relative;
     quotes:"\00ab" "\00bb";
     padding:0 35px;
}
 .bloc-testimonial section > blockquote .content::before {
    content:open-quote;
     position:absolute;
     top:0px;
     left:0px;
     font-size:50px;
}
 .bloc-testimonial section > blockquote .content::after {
    content:close-quote;
    position:absolute;
     bottom:10px;
     right:0px;
    font-size:50px;
}
 .bloc-testimonial section > .contact {
    padding:6px 0;
     text-align: right;
}
 .bloc-testimonial section > .contact > div {
    max-width: 200px;
     display: inline-block;
}
 .bloc-testimonial section > .contact > div > * {
    display: block;
     margin:3px 0;
}
 .bloc-testimonial section > .contact .name {
    font-weight: bold;
     font-size:14px;
}
 .bloc-testimonial section > .contact .cpy {
}
 .bloc-testimonial section > .contact .function {
    font-style: italic;
}
/* Personne ---------------------------------------------------------------------- */
 .bloc-person {
     margin: 0vh 18px;
     text-align: center;
     display: -webkit-inline-flex;
     display:inline-flex;
     -webkit-flex-direction: column;
     flex-direction:column;
     position:relative;
     width:100%;
}
 .bloc-person.has-bio {
    cursor: pointer;
}
 .bloc-person > aside {
     position:absolute;
     top:0px;
     left:0px;
     width:100%;
}
 .bloc-person > aside figure {
     text-align: center;
     width:288px;
     height:288px;
     margin:0px auto;
}
 .bloc-person > aside figure img {
     display: block;
     margin: 0px auto;
     object-fit: cover;
     max-height: 300px;
     border-radius: 0;
     height:100%;
     width: 100%;
}
 .bloc-person > section {
     border:1px solid var(--color-green);
     border-radius:0;
     border-bottom:0px;
     padding:270px 30px 60px 30px;
     margin-top:62px;
     font-size:24px;
     text-align:left;
}
 .bloc-person > section > h2, .bloc-person > section > h3 {
     text-align:left;
     font-variant: none;
     font-size:24px;
     line-height: 30px;
     font-weight: normal;
     padding:0;
     margin:0;
     font-family:'Inter Tight';
     text-transform:none;
}
 .bloc-person > section > .cpy {
    display:block;
     text-align: center;
     font-size:15px;
     line-height: 17px;
     font-weight: normal;
     color:#c4191a;
}
 .bloc-person > section > .function {
    display:block;
     text-align: center;
     font-size:13px;
     line-height: 17px;
}
 .bloc-person > section > article {
    text-align: center;
}
 .bloc-person > section > article a {
    color:#999;
     text-decoration: none;
}
 .bloc-person > section > article i {
    font-size: 16px;
     vertical-align: middle;
}
 .bloc-person > section > article .content {
    display:none;
}
 .bloc-person > section > article .contact {
    padding-top:5px;
}
 .bloc-person > section > article .contact .phone {
    display:block;
     font-style: italic;
     text-align: center;
     padding:2px 0;
}
 .bloc-person > section > article .contact .phone a {
    margin:4px 8px;
}
 .bloc-person > section > article .contact .email {
    display:block;
     font-style: italic;
     text-align: center;
     padding:2px 0;
}
 .bloc-person > section > article .contact .email a {
    margin:4px 8px;
}
 .bloc-person > section > article .social {
    display: -webkit-flex;
     display: flex;
     margin: 10px 0;
     justify-content: space-around;
}
 .bloc-person > section > article .social a {
}
 .struct-blocs .bloc-person > section > h2, .struct-blocs .bloc-person > section > h3 {
     color:var(--color-black);
     font-size:24px;
     line-height:30px;
     margin:0px;
     padding:0px;
}
 .detailList .bloc-person {
    display:flex;
     -webkit-flex-direction: column;
     flex-direction: row;
     margin: 6vh;
}
 .detailList .bloc-person > aside {
    -webkit-flex: 1;
     flex:1;
}
 .detailList .bloc-person > aside figure {
    padding: 0 5vw;
}
 .detailList .bloc-person > aside figure img {
    width:auto;
     height:auto;
}
 .detailList .bloc-person > section {
    -webkit-flex: 2;
     flex:2;
}
 .detailList .bloc-person > section * {
    text-align: left;
}
 .detailList .bloc-person > section > article .contact * {
    text-align: left;
}
 .detailList .bloc-person > section > article .content {
    display: block;
     padding:10px 0;
    /* max-width: 500px;
     */
     text-align: justify;
}
 .smallList .bloc-person > aside figure img {
     height: 110px;
     width: 110px;
}
 .smallList .bloc-person > section > h2 {
    font-size:15px;
     font-weight: bold;
     line-height: 20px;
}
 .smallList .bloc-person > section > .cpy {
    font-size:13px;
     line-height: 16px;
}
 .smallList .bloc-person > section > .function {
    font-size:12px;
     line-height: 14px;
}
 .smallList .bloc-person > section > article .contact {
    display: none;
}
 .smallList .bloc-person > section > article .social {
    display: none;
}
 #personBio {
     position:absolute;
     top:0;
     left:20%;
     width:60%;
     background: #fff;
     border-radius:30px;
     box-shadow: 0 0 5px 5px rgba(0,0,0,0.2);
     padding:30px;
     transition:top 0.3s ease;
     display:flex;
     box-sizing: border-box;
}
 #personBio div.close {
    position:absolute;
     font-size:24px;
     top:15px;
     right:25px;
     cursor: pointer;
}
 #personBio aside {
    width:35%;
     padding:20px;
     text-align: right;
    box-sizing: border-box;
}
 #personBio aside .name {
    font-size:40px;
     font-weight: normal;
     color:#213871;
    padding-bottom: 20px;
     margin:0;
     text-align: right;
     font-variant: none;
}
 #personBio aside .function {
    font-size:13px;
     text-align: right;
     font-weight: normal;
     color:#c4191a;
}
 #personBio aside .company {
    text-align: right;
     font-weight: bold;
     color:#7F8284;
     font-size:15px;
}
 #personBio aside .city {
}
 #personBio aside figure {
    width:100%;
     text-align: right;
     padding-top:30px;
}
 #personBio aside figure img {
     width: 200px;
     max-height: 200px;
     border-radius: 100%;
     object-fit: cover;
}
 #personBio section {
    width:65%;
     padding:20px 40px;
     box-sizing: border-box;
     font-size: 15px;
     color:#7F8284;
}
 @media all and (max-width: 1000px) {
     #personBio {
        -webkit-flex-direction: column;
         flex-direction: column;
         width:100%;
         left:0;
         padding:10px;
    }
     #personBio aside {
        width: 100%;
         text-align: center;
    }
     #personBio aside figure {
        text-align: center;
    }
     #personBio section {
        width: 100%;
         padding: 20px;
         text-align: left;
    }
     #personBio section p {
        text-align: left;
    }
}
/* Section couverte ---------------------------------------------------------------------- */
 .bloc-covered {
    position:relative;
     font-size:0;
     height:100vh;
}
 .bloc-covered > a {
    display:block;
     width:100%;
     height:100%;
}
 .bloc-covered > img, .bloc-covered > a > img {
    width:100%;
     height:100vh;
     object-fit: cover;
}
 .bloc-covered .details {
     text-align: center;
     position:absolute;
     background:rgba(0,0,0,0.6);
     padding:2vw;
     top:0;
     left:0;
     width:100%;
     height:100%;
     display:flex;
     -webkit-flex-direction: column;
     flex-direction: column;
     justify-content: center;
}
 .bloc-covered .details > h2 {
    text-align: center;
     color:#fff;
     margin:0;
     padding:1vh 0 3vh 0;
     font-size:60px;
     line-height: 68px;
}
 .bloc-covered .details > .content {
    text-align: center;
     color:#fff;
     font-size:30px;
     line-height: 36px;
}
 .bloc-covered .details > .link {
    text-align: center;
     padding:4vh 0 0 0;
}
 .bloc-covered .details > .link a {
    background: #4343da;
     font-size:30px;
     padding:16px 30px;
}
 .bloc-covered .details > .link a:hover {
    color: #4343da;
     background: #fff;
}
 .bloc-covered.cover-center .details {
    height:50%;
     width:50%;
     left:25%;
     top:25%;
}
 .bloc-covered.cover-left .details {
    height:50%;
     width:40%;
     left:5%;
     top:25%;
}
 .bloc-covered.cover-right .details {
    height:50%;
     width:40%;
     left:55%;
     top:25%;
}
 .bloc-covered.cover-bottom .details {
    height:40%;
     width:100%;
     left:0%;
     top:60%;
}
 .bloc-covered.cover-bottom .details h2 {
    font-size:46px;
     line-height: 54px;
}
 .bloc-covered.cover-bottom .details .content {
    font-size:22px;
     line-height: 26px;
}
 .bloc-covered.cover-bottom .details > .link a {
    font-size:22px;
     padding:12px 24px;
}
/* Section Parallax ---------------------------------------------------------------------- */
 .bloc-covered.parallax {
    /* Set a specific height */
     height: 100vh;
     background-position: 0% 0%;
    /* Create the parallax scrolling effect */
     background-attachment: fixed;
     background-position: center;
     background-repeat: no-repeat;
     background-size: cover;
}
/* Slider ---------------------------------------------------------------------- */
 .slideShow[data-c="1323"] {
     display: unset;
}
 .bloc-slider {
     position:relative;
}
 .bloc-slider ul {
    height: 100%;
}
 .bloc-slider li {
    height: 100%;
     position: relative;
}
 .bloc-slider .slide > a > img, .bloc-slider .slide > img {
     height: 100%;
     object-fit: cover;
     width:100%;
}
 .bloc-slider .slide-info {
     padding: 80px;
     position: absolute;
     text-align: left;
     top: 50%;
     transform: translateY(-50%);
     width: 100%;
     z-index:10;
     color:#fff;
     font-size:32px;
}
 .bloc-slider .slide-info h1 {
     font-family:'Sansplomb', Arial;
	 text-transform:uppercase;
     font-size:96px;
     line-height:100px;
     text-align:left;
     color:#FFF;
     padding-left:0px;
     margin:0px 0px 15px 0px;
     padding:0px;
     font-weight:700;
}
 .bloc-slider .slide-info h2 {
     font-size:48px;
     color:#FFF;
     background-color:var(--color-green);
    font-family:'Inter Tight', Arial;
     font-weight:bold;
     display:inline-block;
     text-align:left;
     margin:0px 0px 15px 0px;
     padding:0px;
     padding:10px 15px;
     border-radius:0;
}
.bloc-slider .slide-info h2 span { vertical-align:middle; }
 .bloc-slider .slide-info > h2, .bloc-slider .slide-info > h2 {
    font-weight: normal;
     color:#fff;
     text-align: left;
}
 .bloc-slider .slide-info > div.chapo {
    display: block;
     font-size: 20px;
     color:#fff;
    text-align: left;
     font-size:32px;
     margin-top:150px;
     margin-bottom:60px;
}
 .bloc-slider .slide-info > div.chapo p {
     font-size:32px;
}
 .bloc-slider .slide-info .link {
    text-align: center;
}
 .bloc-slider .slide-info .buttons a {
     background-color: transparent;
     border: 0px;
     cursor: pointer;
     display: inline-block;
     font-size: 24px;
     padding: 15px 55px;
     transition: all 0.3s;
     color:#fff;
     background-color:var(--color-green);
     border-radius:0;
     margin-right:55px;
     position:relative;
     overflow:hidden;
}
 .bloc-slider .slide-info .buttons a:nth-child(2) {
     color:var(--color-black);
     background-color:#FFF;
}
 .bloc-slider .slide-info .buttons a::after {
     content:'';
     width:16px;
     height:8px;
     position:absolute;
     top:50%;
     right:50px;
     opacity:0;
     background-image:url(/img/arrow-white.svg);
     background-repeat:no-repeat;
     margin-top:-4px;
     transition: all 0.3s;
}
 .bloc-slider .slide-info .buttons a:nth-child(2)::after {
     background-image:url(/img/arrow-green.svg);
}
 .bloc-slider .slide-info .buttons a:hover {
     padding-left:45px;
     padding-right:65px;
}
 .bloc-slider .slide-info .buttons a:hover::after {
     right:30px;
     opacity:1;
}
/*.bloc-slider .slide-info a, .bloc-slider .slide-info .fa {
     background-color: transparent;
     border: 2px solid;
     border-radius: 6px;
     cursor: pointer;
     display: inline-block;
     font-size: 17px;
     padding: 10px 25px;
     transition: all 0.3s;
     color:#fff;
}
 .bloc-slider .slide-info a:hover, .bloc-slider .slide-info .fa:hover {
     background-color: rgba(255, 255, 255, 0.95);
     border-color: rgba(255, 255, 255, 0.95);
     color:#000;
}
 */
 .bloc-slider .slide-video {
     width: 100%;
     height: 100%;
     background: #000;
}
 .bloc-slider .slide-video > iframe {
     width: 100%;
     height: 100%;
}
 .digi-slideshow .items li {
     background-color:#212121;
}
 .bloc-slider[data-c="1323"] {
     height: calc(100vh);
     margin: 0;
     background-color:#2B2B2B;
}
 .bloc-slider > .chapo {
     position: absolute;
     top: 0;
     right: 0;
     background: #7c160d;
     z-index: 10000;
     color: #fff;
     padding: 15px;
     box-shadow: -5px 5px 15px rgba(255, 255, 255, 0.1);
}
 .bloc-slider .slide-swipe {
     width:300px;
     text-align:center;
     position:absolute;
     bottom:20px;
     left:50%;
     margin-left:-150px;
     color:#FCFCFC;
     z-index:15;
     font-size:16px;
}
 .bloc-slider .slide-swipe a, .bloc-slider .slide-swipe div {
     text-align:center;
     display:block;
}
 .bloc-slider .slide-swipe a {
     padding-top:25px;
}
 .bloc-slider .slide-swipe a img {
     animation:bouncing 0.5s ease alternate infinite;
}
.bloc-slider .slide-sn {
	position:absolute; width:auto; bottom:30px; right:30px; z-index:20; height:30px; width:300px; text-align:right;
}
.bloc-slider .slide-sn a { padding:0px 5px; }
.bloc-slider .slide-sn svg { width:22px; height:auto; }
 .homePage .digi-slideshow .fleche {
     display:none;
}
/* Galerie - Blocs ---------------------------------------------------------------------- */
 .bloc-gallery {
     margin-bottom:120px;
}
 .bloc-gallery article {
    margin: auto 20px;
}
 .bloc-gallery ul {
    column-count: 5;
     column-gap: 10;
     padding: 10px 0;
}
 .bloc-gallery li {
     background: #000;
     border-radius: 0px 10px 10px 10px;
     break-inside: avoid;
     cursor: pointer;
     margin: 5px;
     transition: all 0.3s ease;
}
 .bloc-gallery li img {
    border-radius: 8px;
     display: block;
     width: 100%;
}
 .popin-gallery {
     display:none;
     width:100vw;
     min-height:100vh;
     position:fixed;
     top:0;
     left:0;
     z-index:10000;
     background:rgba(0,0,0,0.9);
}
 .popin-gallery > div {
     text-align: center;
     display:flex;
     -webkit-flex-direction: column;
     flex-direction:column;
     justify-content:center;
     width:100vw;
     min-height:100vh;
}
 .popin-gallery img {
     max-width: 100vw;
     align-self:center;
     height:100vh;
     width: 100vw;
     object-fit: contain;
}
/* Galerie - TimeLine ---------------------------------------------------------------------- */
 .bloc-gallery .gallery-line > ul > li.pic.l::after {
     right:-35px;
}
 .bloc-gallery .gallery-line li {
    border:none;
}
/* Galerie - Album photos ---------------------------------------------------------------------- */
/* c'est dans /inc/style/plugins/digi-album.css */
/* Compte à rebours ---------------------------------------------------------------------- */
 .bloc-countdown {
    background-position: center;
     background-repeat: no-repeat;
     background-size: cover;
}
 .bloc-countdown .picture, .bloc-countdown .date, .bloc-countdown svg {
     display: none;
}
 .bloc-countdown .details {
    padding: 40px 10px;
}
 .bloc-countdown h2 {
    font-size: 50px;
     line-height: unset;
}
 .bloc-countdown h2, .bloc-countdown strong {
    display: block;
     text-align: center;
     width: 100%;
}
 .bloc-countdown h2 {
    font-variant: small-caps;
}
 .bloc-countdown strong {
    font-weight: normal;
}
 .bloc-countdown .countdown-bloc {
    display: -webkit-flex;
     display: flex;
     -webkit-flex-direction: row;
     flex-direction: row;
     justify-content: center;
     padding-top: 40px;
}
 .bloc-countdown .licd {
    margin: 0 20px;
     text-align: center;
}
 .bloc-countdown .val-bloc {
    font-size: 50px;
     text-align: center;
}
 .bloc-countdown .val {
    font-size: 50px;
     text-align: center;
}
 .bloc-countdown .legend {
     border-top: 2px solid rgba(255, 255, 255, 0.5);
     font-size: 18px;
     font-variant: small-caps;
     padding-top: 5px;
     text-align: center;
}
 .bloc-countdown.wzcircle.wzbg .details {
    background-color: rgba(0, 0, 0, 0.5);
}
 .bloc-countdown.wzcircle .details {
    padding: 10px 10px 20vh 10px;
}
 .bloc-countdown.wzcircle .details strong {
    text-transform: uppercase;
}
 .bloc-countdown.wzcircle .details strong:after {
     border-bottom: 1px solid #030805;
     content: "";
     display: block;
     margin: auto;
     padding-top: 10px;
     width: 30%;
}
 .bloc-countdown.wzcircle .licd {
     box-sizing: border-box;
     height: 120px;
     padding: 20px 15px 10px 15px;
     position: relative;
     width: 120px;
}
 .bloc-countdown.wzcircle .legend {
    border-top: 0;
     padding-top: 0;
}
 .bloc-countdown.wzcircle svg {
     box-sizing: border-box;
     display: block;
     fill: transparent;
     height: 100%;
     left: 0;
     padding: 3px;
     position: absolute;
     stroke: #030805;
     stroke-dasharray: 360;
     stroke-dashoffset: 360;
     stroke-width: 3px;
     top: 0;
     transform: rotate(-90deg);
     transition: all 0.5s;
     width: 100%;
}
/* Compteur - Circle ---------------------------------------------------------------------- */
/* Compteur - Bar ---------------------------------------------------------------------- */
/* Compteur - Number ---------------------------------------------------------------------- */
/* Fichier à télécharger ---------------------------------------------------------------------- */
/* Blurb ---------------------------------------------------------------------- */
 .bloc-blurb {
    padding: 10px 0px;
     display:flex;
     -webkit-flex-direction: column;
     flex-direction: column;
     transition: all .5s ease;
}
 .bloc-blurb figure {
    width:100%;
     padding:2.8vh 0;
     text-align: center;
     align-self: center;
     transition: all .5s ease;
}
 .bloc-blurb figure img {
    max-width: 100%;
     height:200px;
}
 .bloc-blurb figure img.with-border {
    width:100%;
     object-fit: cover;
     border: 4px solid;
}
 .bloc-blurb figure i {
    font-size:40px;
     backgroun-color:#f1f1f1;
     width:80px;
     text-align:center;
}
 .bloc-blurb > div {
    padding:0px;
     text-align: center;
     color:#fff;
     max-width:100%;
     align-self: center;
     height:100%;
     width:100%
}
 .bloc-blurb > div > h2 {
    font-size:2.5rem;
     line-height: 2.8rem;
     color:#fff;
     text-align: center;
     padding:0 0 8px 0;
     margin:0;
}
 .bloc-blurb > div > .content {
    font-size:1.7rem;
     line-height: 2rem;
     text-align: center;
}
 .bloc-blurb.pos-bottom {
    -webkit-flex-direction: column-reverse;
     flex-direction: column-reverse;
}
 .bloc-blurb.pos-left {
    -webkit-flex-direction: row;
     flex-direction: row;
}
 .bloc-blurb.pos-right {
    -webkit-flex-direction: row-reverse;
     flex-direction: row-reverse;
}
 .bloc-blurb.align-start figure {
    text-align: center;
}
 .bloc-blurb.align-start > div > h2 {
    text-align: left;
}
 .bloc-blurb.align-end figure {
    text-align: center;
}
 .bloc-blurb.align-end > div > h2 {
    text-align: left;
}
 .bloc-blurb.pos-right figure, .bloc-blurb.pos-left figure {
    text-align: center;
     display:flex;
     -webkit-flex-direction: column;
     flex-direction: column;
     padding:0;
     height:100%;
}
 .bloc-blurb.pos-left figure img, .bloc-blurb.pos-left figure i, .bloc-blurb.pos-right figure img, .bloc-blurb.pos-right figure i {
    align-self:center;
     margin: auto;
}
 .bloc-blurb.pos-left figure i {
    margin-right: 2.8vh;
}
 .bloc-blurb.pos-right figure i {
    margin-left: 2.8vh;
}
 .bloc-blurb.pos-left figure img.with-border, .bloc-blurb.pos-right figure img.with-border {
    width:80%;
}
 .bloc-blurb.align-start.pos-left figure, .bloc-blurb.align-start.pos-right figure {
    justify-content: start;
}
 .bloc-blurb.align-end.pos-left figure, .bloc-blurb.align-end.pos-right figure {
    justify-content: end;
}
 .bloc-blurb.align-center.pos-left figure, .bloc-blurb.align-center.pos-right figure {
    justify-content: center;
}
 .bloc-blurb.align-start > div > .content {
    text-align: left;
}
 .bloc-blurb.align-start > div > .content {
    text-align: left;
}
 .bloc-blurb.pos-left > div > .content {
    text-align: left;
}
/* Tabs ---------------------------------------------------------------------- */
/* Collapse ---------------------------------------------------------------------- */
 .bloc-collapse {
    margin:0px;
}
 .bloc-collapse > h2 {
}
 .bloc-collapse > ul {
}
 .bloc-collapse > ul > li {
    background: #fff;
     margin:10px 0;
     padding:20px 0;
}
 .bloc-collapse > ul > li > label {
    font-size:24px;
     display: block;
     border-bottom: 4px solid;
     padding-bottom: 2vh;
}
 .bloc-collapse > ul > li > label:hover {
    color: rgba(0, 0, 0, 0.5);
}
 .bloc-collapse > ul > .on > label {
    color: rgba(0, 0, 0, 0.5);
}
 .bloc-collapse > ul > li > article {
    display:none;
}
/* Divider ---------------------------------------------------------------------- */
 .bloc-divider {
    padding:50px 5%;
     font-size:0;
}
 .bloc-divider hr {
    background: none;
     font-size:0;
     border:1px solid;
     border-color:#ddd;
     border-radius: 100% 100%;
}
/* Back to top ---------------------------------------------------------------------- */
 .back-to-top {
     border: 0px solid var(--color-green);
     background-color:var(--color-green);

     border-radius: 100%;
     bottom: 20px;
     cursor: pointer;
     display: block;
     overflow: hidden;
     padding: 0;
     position: fixed;
     right: 15px;
     z-index: 500;
     opacity: 0;
     transition: opacity 1s ease;
	 width:52px; height:52px;
	 text-align:center;
}
 .back-to-top.on {
    opacity: 1;
}
 .back-to-top .fa {
    font-size: 18px;
     padding: 15px;
     color: #EFEFEF;

}
 .back-to-top .fill {
    background-color: rgba(255, 255, 255, 0.2);

     bottom: 0;
     height: 0;
     position: absolute;
     width: 100%;
     z-index: -1;
}
 .back-to-top:hover .fa {
    animation: bounceTop 0.4s ease-in-out infinite alternate;
}
 @keyframes bounceTop {
     0% {
         transform: translateY(-5px);
    }
     100%{
         transform: translateY(5px);
    }
}
/* Réseaux sociaux - barre latérale ---------------------------------------------------------------------- */
 .bloc-socials {
}
 .homePage .bloc-socials {
     height:0px;
     position:absolute;
     bottom:50px;
     width:auto;
     right:20px;
}
 .bloc-socials svg {
    height: 80px;
     width: 80px;
     padding: 15px;
     transform: scale(0.75);
}
 .homePage .bloc-socials svg {
     fill: var(--color-white, currentcolor);
     transition:0.3s all ease;
}
 .homePage .bloc-socials i {
     color:var(--color-white);
     transition:0.3s all ease;
}
 .homePage .bloc-socials svg:hover {
     fill: var(--color-green, currentcolor);
}
 .homePage .bloc-socials i:hover {
     color:var(--color-green);
}
 .bloc-socials > .fa-share-alt {
    display:none;
}
 .bloc-socials ul {
    display: -webkit-flex;
     display: flex;
     flex-wrap: wrap;
     justify-content: center;
     list-style-type: none;
     margin: 0;
     padding: 0;
}
 .bloc-socials a {
    display: block;
     position: relative;
     text-decoration: none;
}
 .bloc-socials li, .bloc-socials li:before {
    height: 80px;
     width: 80px;
}
 .bloc-socials li {
    border-radius: 50%;
     box-shadow: 0 0 0 3px;
     margin: 10px 10px 20px 10px;
     z-index: 0;
}
 .bloc-socials li:before {
    content: "";
     border-radius: 50%;
     position: absolute;
     transform: scale(0);
     transition: transform 0.3s;
     z-index: -1;
}
 .bloc-socials li:hover:before {
    transform: scale(1.01);
     transition: transform 0.3s;
}
 .bloc-socials a {
    display: block;
     text-align: center;
}
 .bloc-socials span {
    display: block;
     height: 20px;
     overflow: hidden;
}
 .bloc-socials.small {
}
 .bloc-socials.small svg {
    height: 30px;
     width: 30px;
     padding:0px;
}
 .bloc-socials.small li, .bloc-socials.small li:before {
    height: 40px;
     width: 40px;
}
 .bloc-socials.small li {
    margin:0;
     border-radius: none;
     box-shadow: none;
}
 .bloc-socials.phantom svg {
    transform: scale(1);
     transition: fill 0.5s, transform 0.5s;
}
 .bloc-socials.phantom li:hover svg {
    transform: scale(1.2);
     transition: fill 0.5s, transform 0.5s;
}
 .bloc-socials.phantom li:hover span {
    transform: translateY(0);
     transition: transform 0.5s;
}
 .bloc-socials.phantom a {
    overflow: hidden;
}
 .bloc-socials.phantom span {
    display: block;
     text-align: center;
     transform: translateY(100%);
     transition: transform 0.5s;
}
 .bloc-socials.square li {
    height: 80px;
     padding: 10px;
}
 .bloc-socials.square span, .bloc-socials.square svg {
    display: block;
     top: 50%;
     transform: translateY(-50%);
     fill: #FFFFFF;
}
 .bloc-socials.square svg {
    position: relative;
     right: 0;
     transition: right 0.5s;
}
 .bloc-socials.square span {
    left: 100%;
     position: absolute;
     text-align: center;
     transition: left 0.5s, transform 0.5s;
}
 .bloc-socials.square a {
    height: 100%;
     overflow: hidden;
}
 .bloc-socials.square a:hover svg {
    right: 100%;
     transition: right 0.5s;
}
 .bloc-socials.square a:hover span {
    left: 50%;
     transform: translateX(-50%) translateY(-50%);
     transition: left 0.5s, transform 0.5s;
}
 .bloc-socials.lateral {
    position:fixed;
     top:35%;
     right:0;
     z-index:9999;
}
 .bloc-socials.lateral ul {
    -webkit-flex-direction: column;
     flex-direction: column;
}
 .bloc-socials.lateral li, .bloc-socials.lateral li:before {
    height: auto;
     width:40px;
}
 .bloc-socials.lateral li {
    margin:0;
     border-radius: none;
     box-shadow: none;
}
 .bloc-socials.lateral a {
    padding:10px 5px;
}
 .bloc-socials.lateral svg {
    display: block;
     height: 30px;
     width: 30px;
     padding:0px;
     fill: #FFFFFF;
}
 .bloc-socials.lateral h2 {
    display:none;
}
 .bloc-socials.square .facebook a, .bloc-socials.lateral .facebook a {
    background-color: #1F69B3;
}
 .bloc-socials.square .linkedin, .bloc-socials.lateral .linkedin a {
    background-color: #0097BD;
}
 .bloc-socials.square .youtube, .bloc-socials.lateral .youtube a {
    background-color: #E64A41;
}
 .bloc-socials.square .twitter, .bloc-socials.lateral .twitter a {
    background-color: #43B3E5;
}
 .bloc-socials.square .pinterest, .bloc-socials.lateral .pinterest a {
    background-color: #D73532;
}
 .bloc-socials.square .googleplus, .bloc-socials.lateral .googleplus a {
    background-color: #DA4A38;
}
 .bloc-socials.square .instagram, .bloc-socials.lateral .instagram a {
    background: radial-gradient(circle at 33% 100%, #FED373 4%, #F15245 30%, #D92E7F 62%, #9B36B7 85%, #515ECF);
}
/* Réseaux sociaux - iframe ---------------------------------------------------------------------- */
/* ------------------------------------------------------------------- ---------------------------------------------------------------------- EVENEMENTIEL ---------------------------------------------------------------------- ---------------------------------------------------------------------- */
/* Letters ---------------------------------------------------------------------- */
 .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;
     padding-bottom: 10px;
     text-align: center;
}
/* Liste intervenants ---------------------------------------------------------------------- */
 .event-speakers .speakers {
    text-align: center;
}
/* Programme - classique ---------------------------------------------------------------------- */
 .bloc-program > h2 {
     font-size: 36px;
     letter-spacing: 1px;
     margin-top: 20px;
     color:#fff;
     background: #3d78bc;
     padding: 2%;
     margin: -11px 0 0 0;
     text-align: center;
     font-weight: normal;
}
 .bloc-program table.program {
    width: 100%;
     margin-bottom: 40px;
     text-align: center;
}
 .bloc-program table.program th {
    background-color: #3d78bc;
    color:#fff;
     font-size: 20px;
     font-weight: normal;
     opacity: 0.8;
     padding:12px 14px;
}
 .bloc-program table.program td {
    border-bottom:#aaa 1px solid;
     padding: 20px 10px;
     font-size:14px;
     line-height: 20px;
     color:#555;
     text-align: left;
}
 .bloc-program table.program td .title {
    display: block;
     color:#555;
     font-weight: bold;
     font-size:15px;
}
 .bloc-program table.program td.hour {
    width: 10%;
     min-width: 50px;
}
 .bloc-program table.program td.location {
    text-align: center;
     width: 15%;
     min-width: 50px;
}
 .bloc-program table.program td.activity {
    color:#999;
}
 .bloc-program .activity > div {
    display:flex;
}
 .bloc-program .activity > div > figure {
    max-width: 200px;
     align-self: center;
     padding-right: 20px;
}
 .bloc-program .activity > div > figure img {
    max-width: 90%;
}
 .bloc-program .activity > div > div {
    -webkit-flex: 1;
     flex:1;
     align-self: center;
}
 .bloc-program .activity .speakers {
}
 .bloc-program .activity .speakers h3 {
    font-size:12px;
     color:#fff;
}
 .bloc-program .activity .speakers ul {
    list-style: outside;
     margin-left:20px;
}
 .bloc-program .activity .speakers ul li {
    list-style-type: disc;
     font-size:14px;
     color:#aff;
}
 .bloc-program table.program td.break > div {
    text-align: center;
     color:#999;
     font-size:11px;
     font-weight: normal;
}
 .bloc-program table.program tr:hover td {
    background: #f4f4f4;
}
 .bloc-program table.program .hour {
    width: 20%;
     text-align: center;
}
 .bloc-program table.program td.hour {
    font-size: 25px;
}
 .bloc-program table.program td.hour > span {
    text-align: left;
     margin-left: 30%;
     display: block;
}
 .bloc-program table.program .location {
    width: 35%;
     min-width: 50px;
}
 .bloc-program table.program td.break {
     background:#eee;
     text-align: center;
     color:#a00;
     font-style: italic;
     letter-spacing: 1px;
     font-size: 25px;
     font-weight: normal;
     line-height: 40px;
}
/* Programme - timeline ---------------------------------------------------------------------- */
 .bloc-program.timeline {
    max-width:800px;
     margin:0 auto;
}
 .bloc-program.timeline > h2 {
    border-bottom: 1px dashed;
     background: none;
     color:#000;
     text-align: center;
    /*width:calc(75% - 50px);
     margin-left: calc(25% + 20px)*/
}
 .bloc-program.timeline > ul {
    margin: 30px 15px 0 15px;
     position: relative;
}
 .bloc-program.timeline > ul::before{
     content: "";
     background-color: #818493;
     border-radius: 5px;
     margin-left: -10px;
     position: absolute;
     top: 0;
     bottom: 0;
     left: 20%;
     width: 10px;
}
 .bloc-program.timeline > ul li {
    position: relative;
}
 .bloc-program.timeline time {
     display: block;
     position: absolute;
     font-size: 2.5rem;
     padding-right: 10%;
     text-align: right;
     width: 25%;
     height: 40px;
     display: -webkit-flex;
     display: flex;
     -webkit-flex-direction: column;
     flex-direction: column;
     justify-content: center;
}
 .bloc-program.timeline time span {
    font-size: 2rem;
     display: block;
     text-align: right;
}
 .bloc-program.timeline time span.location {
    font-size: 1.5rem;
     min-height: 10px;
     display: block;
}
 .bloc-program.timeline span.title{
     color:#ffffff;
     font-size: 2.0rem;
     font-weight: bold;
}
 .bloc-program.timeline .break {
    background-color: transparent;
     padding: 0;
}
 .bloc-program.timeline .break::after {
    content:none;
}
 .bloc-program.timeline .break span.title{
     font-size: 14px;
     font-style: italic;
     line-height: 20px;
     color: #ccc;
     font-weight: 100;
     letter-spacing: 2px;
     margin: 2vh 0px 8px 0px;
     padding: 0 0 4px 0;
}
 .bloc-program.timeline .break .content{
    color:#414453;
}
 .bloc-program.timeline span.title + .content {
    border-top: 1px solid;
     padding-top: 10px;
     margin-top:3px;
}
 .bloc-program.timeline .activity {
     min-height: 50px;
     line-height: unset;
     background-color: #818493;
     border-radius: 5px;
     color: #FFFFFF;
     margin: 0 10px 15px 25%;
     padding: 1em 2em;
     position: relative;
}
 .bloc-program.timeline .activity::after {
     content: "";
     border-right: #818493 10px solid;
     border-top: transparent 10px solid;
     border-bottom: transparent 10px solid;
     position: absolute;
     right: calc(100% - 1px);
     top: 10px;
}
 .bloc-program.timeline .bullet {
     background-color: #818493;
     color: #414453;
     border-radius: 50%;
     box-shadow: 0 0 0 8px;
     font-size: 1.4em;
     height: 40px;
     left: 20%;
     line-height: 40px;
     margin-left: -25px;
     overflow: hidden;
     position: absolute;
     text-align: center;
     width: 40px;
}
 .bloc-program.timeline .bullet.fa {
     display: inline-block;
     font: normal normal normal 14px/1 FontAwesome;
     font-size: 1.4em;
     line-height: 40px;
     text-rendering: auto;
     -webkit-font-smoothing: antialiased;
     -moz-osx-font-smoothing: grayscale;
}
 .bloc-program.timeline .bullet.fa::before{
    color:#FFFFFF;
}
/* Participant ---------------------------------------------------------------------- */
/* Liste de Participants ---------------------------------------------------------------------- */
 .event-attendees ul {
    display: -webkit-flex;
     display: flex;
     justify-content: center;
     flex-wrap: wrap;
}
 .event-attendees li {
    position: relative;
}
 .event-attendees .details {
    width: 100%;
}
 .event-attendees figure {
    display: -webkit-flex;
     display: flex;
     height: 20vw;
     width: 20vw;
}
 .event-attendees figure img {
    -webkit-flex: 1;
     flex: 1;
     object-fit: cover;
     width: 100%;
}
 .event-attendees .details {
     background-color: rgba(0, 0, 0, 0.7);
     min-height: 50px;
}
 .event-attendees .details > span {
    display: -webkit-flex;
     display: flex;
     -webkit-flex-direction: column;
     flex-direction: column;
     justify-content: center;
     text-align: center;
}
 .event-attendees .details > span > * {
    display: block;
}
 .event-attendees .details .name {
    font-size: 20px;
     padding: 15px 0;
}
 .event-attendees .details .cpy {
    color: #949397;
     font-size: 14px;
     font-weight: normal;
     text-decoration: none;
}
 .event-attendees .details .function {
    font-size: 12px;
}
/* Edito ---------------------------------------------------------------------- */
 .bloc-content .signature {
     width: 100%;
     text-align: right;
     padding-top: 5vh;
     padding-right: 10%;
}
 .bloc-content .signature span {
     width: 100%;
     display: block;
     text-align: right;
     font-size: 20px;
     margin-bottom: 10px;
}
 .bloc-content .signature img {
    max-width: 25%;
}
/* Kit Média ---------------------------------------------------------------------- */
/* Event all-in-one page ---------------------------------------------------------------------- */
 .all-in-one {
    min-height: 100vh;
     display:flex;
     -webkit-flex-direction: column;
     flex-direction:column;
}
 .all-in-one.aio-col > header {
    display:flex;
     -webkit-flex-direction: row;
     flex-direction:row;
     background: #000;
     color:#aaa;
}
 .all-in-one.aio-col > header figure {
    width:66%;
     display: inline-block;
}
 .all-in-one.aio-col > header figure img {
    width:100%;
     height:100%;
     object-fit: cover;
}
 .all-in-one.aio-col > header > div {
    width:34%;
     display: inline-block;
}
 .all-in-one.aio-col > header > div > div {
    margin:0 auto;
     display:block;
}
 .all-in-one.aio-col > header .date {
    display:flex;
     -webkit-flex-direction: column;
     flex-direction:column;
     justify-content:center;
     min-height: 240px;
}
 .all-in-one.aio-col > header .date > div {
    display:flex;
     -webkit-flex-direction: row;
     flex-direction:row;
}
 .all-in-one.aio-col > header .date span {
     font-size:40vh;
     line-height: 30vh;
     justify-self:end;
}
 .all-in-one.aio-col > header .date > div > b {
    display:flex;
     -webkit-flex-direction: column;
     flex-direction:column;
     justify-self:start;
     justify-content:space-between;
}
 .all-in-one.aio-col > header .date u {
    font-size:8vh;
     text-decoration: none;
     line-height: 10vh;
}
 .all-in-one.aio-col > header .date i {
    font-size:13vh;
     font-style: normal;
    line-height: 12vh;
}
 .all-in-one.aio-col > header .date i s {
    font-size:6vh;
     text-decoration: none;
}
 .all-in-one.aio-col > div {
    flex-grow:1;
     display:flex;
     -webkit-flex-direction: row;
     flex-direction:row;
}
 .all-in-one.aio-col > div > section {
     display:inline-block;
     width:66%;
     padding:2vh 2vw;
}
 .all-in-one.aio-col > div > aside {
     padding:3vh 0;
     display:inline-block;
     width:34%;
}
 .all-in-one.aio-col > div > aside > h3 {
    font-size:24px;
     margin-bottom:2vh;
}
 .all-in-one.aio-col > div > aside .content {
    font-size:14px;
     line-height: 18px;
     margin-bottom: 4vh;
}
 .all-in-one.aio-col > div > aside .contact span {
    font-size:14px;
     display:block;
     line-height: 18px;
}
 .all-in-one.aio-col > div > aside .contact a {
    font-size:14px;
     display:block;
     line-height: 18px;
}
 .all-in-one.aio-col > div > aside .address {
    margin: 4vh 0;
}
 .all-in-one.aio-col .address i.fa {
    font-size:50px;
     width:10%;
     display:inline-block;
     vertical-align:middle;
}
 .all-in-one.aio-col .address address {
    display:inline-block;
     width:85%;
     font-size:14px;
     font-style: normal;
     vertical-align: middle;
     line-height: 18px;
}
 .all-in-one.aio-3bloc .informations {
    padding: 10vh 0;
}
 .all-in-one.aio-3bloc .informations .contact {
    display: block;
}
 .all-in-one.aio-3bloc .form {
    padding-bottom: 70px;
}
/* Event Calendar ---------------------------------------------------------------------- */
/* Event Tomorrow ---------------------------------------------------------------------- */
 .event-tomorrow {
    background:#070;
     color:#fff;
     padding:3vh 3vw;
     min-height: 100vh;
     display: -webkit-flex;
     display: flex;
     -webkit-flex-direction: column;
     flex-direction: column;
     justify-content: center;
}
 .event-tomorrow > h1 {
     color:#fff;
     font-size:56px;
     margin-bottom: 30px;
     padding:0;
}
 .event-tomorrow > h2 {
     color:#fff;
     font-size:40px;
     margin: 20px 0 30px 0;
     text-align: center;
}
 .event-tomorrow > .chapo {
     color:#fff;
     font-size:16px;
     margin-bottom: 40px;
     text-align: center;
}
 .event-tomorrow > section {
    display:flex;
     -webkit-flex-direction: row;
     flex-direction:row;
}
 .event-tomorrow > section > div {
    padding:0 2vw;
     -webkit-flex: 1;
     flex:1;
}
 .event-tomorrow .date {
    display:flex;
     -webkit-flex-direction: column;
     flex-direction:column;
     justify-content:center;
}
 .event-tomorrow .date > div {
    display:flex;
     -webkit-flex-direction: row;
     flex-direction:row;
}
 .event-tomorrow .date span {
     font-size:40vh;
     line-height: 30vh;
     justify-self:end;
}
 .event-tomorrow .date > div > b {
    display:flex;
     -webkit-flex-direction: column;
     flex-direction:column;
     justify-self:start;
     justify-content:space-between;
}
 .event-tomorrow .date u {
    font-size:8vh;
     text-decoration: none;
     line-height: 10vh;
}
 .event-tomorrow .date i {
    font-size:13vh;
     font-style: normal;
    line-height: 12vh;
}
 .event-tomorrow .date i s {
    font-size:6vh;
     text-decoration: none;
}
 .event-tomorrow .location {
    background-color: rgba(255, 255, 255, 0.5);
     padding: 10px;
}
 .event-tomorrow .address i.fa {
    font-size:50px;
     width:10%;
     display:inline-block;
     vertical-align:middle;
}
 .event-tomorrow .address address {
    display:inline-block;
     width:85%;
     font-size:14px;
     font-style: normal;
     vertical-align: middle;
     line-height: 18px;
}
 .event-tomorrow .address article > div {
    height:40vh;
}
 .event-tomorrow .address article {
    margin-bottom: 30px;
}
 .event-tomorrow .qrCode {
    text-align: center;
     display: -webkit-flex;
     display: flex;
     -webkit-flex-direction: column;
     flex-direction: column;
     justify-content: center;
}
 .event-tomorrow .qrCode img {
    width:200px;
     height:200px;
     margin: 10px;
}
/* Hôtel ---------------------------------------------------------------------- */
 .bloc-hotel {
     display: -webkit-flex;
     display: flex;
     margin: 10px;
     overflow: hidden;
     padding: 10px;
     position: relative;
}
 .bloc-hotel .buttons {
    -webkit-flex: 1;
     flex: 1;
     padding:20px 0;
     text-align: center;
     display: -webkit-flex;
     display: flex;
}
 .bloc-hotel .buttons > i {
    align-self: center;
}
 .bloc-hotel .buttons > div {
    -webkit-flex: 1;
     flex:1;
     padding:8px 0px;
     align-self: center;
}
 .bloc-hotel .buttons > div > div {
    position: relative;
     color:#777;
     align-self: center;
}
 .bloc-hotel .buttons > div > div a {
    color:#777;
}
 .bloc-hotel .content {
    padding:20px 0px;
     font-size:14px;
     line-height: 17px;
}
 .bloc-hotel .details {
     -webkit-flex: 1;
     flex: 1;
     padding: 0 20px;
}
 .bloc-hotel .details > h2 {
    margin:auto;
     font-size:36px;
     line-height: unset;
}
 .bloc-hotel .details .fa {
    margin-right: 10px;
     font-size:20px;
}
 .bloc-hotel .details p {
    display: inline;
}
 .bloc-hotel .details address {
    margin: 10px 0;
}
 .bloc-hotel .details .contact {
    display: -webkit-flex;
     display: flex;
     font-size:13px;
     line-height: 16px;
}
 .bloc-hotel .details .contact span {
    display: block;
}
 .bloc-hotel aside {
    -webkit-flex: 1;
     flex: 1;
     min-height: 350px;
     border-radius: 10px;
}
 .bloc-hotel aside .digi-gallery {
    height: 100%;
     border-radius: 10px;
}
 .bloc-hotel aside .digi-gallery li {
    height: 100%;
     border-radius: 10px;
}
 .bloc-hotel aside .digi-gallery img {
    width:100%;
     height:100%;
     object-fit: cover;
     border-radius: 10px;
}
 .bloc-hotel aside .digi-gallery .thumbs {
    height: 50px;
     position: absolute;
     bottom: 10px;
     z-index: 10;
}
 .bloc-hotel aside .digi-gallery .thumbs li {
    max-width: 70px;
     margin-left: 10px;
     border:2px solid rgba(100,100,100,0.5);
}
 .bloc-hotel aside .digi-gallery .thumbs li.select::after {
    content:none;
}
 .slider.digi-gallery .puces {
    background-color: rgba(0, 0, 0, 0.1);
     bottom: 0;
     border-radius: 10px;
     border:none;
}
 .slider.digi-gallery .puces li {
     background: none;
     background-color: transparent;
     box-shadow: inset 0 0 0 2px;
     height: 12px;
     overflow: hidden;
     transition: background-color 0.3s;
}
 .slider.digi-gallery .puces li:after {
     content: "";
     bottom: 0;
     height: 0;
     left: 0;
     position: absolute;
     transition: height 0.3s ease;
     width: 100%;
}
 .slider.digi-gallery .puces .select {
    box-shadow: none;
}
 .slider.digi-gallery .puces .select:after {
    height: 100%;
}
/* Map google ---------------------------------------------------------------------- */
 .bloc-map {
    position: relative;
}
 .bloc-map > div.jGmap {
    display: none;
}
 .bloc-map > div.j-Gmap, .bloc-map .j-Map {
    height: 50vh;
    min-height: 350px;
     max-height: 800px;
}
 .bloc-map .gmTitle {
    border-bottom: 1px solid;
     margin-bottom: 10px;
}
 .bloc-map .gmImage {
    margin-right: 10px;
     max-height: 150px;
     vertical-align: middle;
     width: 150px;
}
 .bloc-map .gmContent {
    display: inline-block;
     max-width: 250px;
     text-align: center;
     vertical-align: middle;
}
 .bloc-map .gmContent .fa {
    margin-right: 5px;
}
/* EXPOSANTS ---------------------------------------------------------------------- */
/* Exposant - Bloc ---------------------------------------------------------------------- */
 .bloc-exhibitor {
     margin:6vh 0;
     display:flex;
     -webkit-flex-direction: row;
     flex-direction:row;
}
 .bloc-exhibitor aside {
     width: 30%;
     display: inline-block;
     align-self: center;
}
 .bloc-exhibitor aside img {
     max-height: 300px;
     object-fit: contain;
}
 .bloc-exhibitor section {
     width: 70%;
     display: inline-block;
     justify-content:center;
     display:flex;
     -webkit-flex-direction: column;
     flex-direction:column;
}
 .bloc-exhibitor section .link {
    margin:4px 0 10px 0;
}
 .bloc-exhibitor .booth {
     color:#555;
     font-size:16px;
     display: block;
     padding-bottom: 4px;
}
 .bloc-exhibitor a {
     color:#999;
     text-decoration: none;
}
 .bloc-exhibitor a:hover {
     text-decoration: underline;
}
 .bloc-exhibitor section > article {
    display:flex;
     justify-content:space-between;
     width: 100%;
     margin-top:3vh;
}
 .bloc-exhibitor section > article > div {
     -webkit-flex: 1;
     flex:1;
}
/* Exposant - Fiche ---------------------------------------------------------------------- */
 .exhibitor-view {
    display:flex;
     -webkit-flex-direction: column;
     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;
     -webkit-flex-direction: row;
     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;
     -webkit-flex-direction: column;
     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;
}
/* Liste d'Exposants ---------------------------------------------------------------------- */
 .exhibitorsPage {
    max-width: 1000px;
     margin:0 auto;
}
 .exhibitors.largeList {
    justify-content:center;
     display:flex;
    -webkit-flex-direction: row;
     flex-direction:row;
     flex-wrap:wrap;
}
 .exhibitors .bloc-exhibitor > figure {
    -webkit-flex: 1;
     flex:1;
     justify-content:center;
     display:flex;
     -webkit-flex-direction: column;
     flex-direction:column;
}
 .exhibitors.largeList .bloc-exhibitor {
    -webkit-flex-direction: column;
     flex-direction:column;
     width:25%;
     display:flex;
}
 .exhibitors.largeList .bloc-exhibitor img {
    width:80%;
}
 .bloc-exhibitor > div > h2 {
    text-align: center;
     font-size:14px;
     padding-top:10px;
}
 .exhibitors.smallList {
    justify-content:start;
     display:flex;
     -webkit-flex-direction: row;
     flex-direction:row;
     flex-wrap:wrap;
}
 .exhibitors.smallList .bloc-exhibitor{
    -webkit-flex-direction: column;
     flex-direction:column;
     width:180px;
     margin:20px 10px;
     display:flex;
}
 .jpc-event-exhibitors.filtering .grid-cell:not(.filter-visible), .jpc-event-exhibitors.filtering .masonry-item:not(.filter-visible) {
     display: none;
}
 .exhibitors-top {
     display:flex;
}
 .exhibitors-topleft {
     flex:1;
}
 .exhibitors-topright {
     flex:2;
     padding-left:60px;
}
 .exhibitors-topleft input[type="text"], textarea {
     background:transparent;
     border-bottom:1px solid var(--color-green);
     color:#8B8B8B;
}
 .thematics {
     width:100%;
}
 .thematics ul {
     width:100%;
}
 .thematics li {
     border-radius:50px;
     padding:5px 8px;
     font-size:16px;
     background-color:#FFF;
     margin-bottom:5px;
     color:#2B2B2B;
     display:flex;
     align-items:center;
     width:100%;
}
 .thematics li i {
     font-size:12px;
     color:#B50000;
     margin-right:10px;
}
.page-partners .struct-grid .struct-grid-wrap > .grid-cell:nth-child(odd), .page-partners .masonry-item:nth-child(even) { /* box-shadow: 0 10px 24px rgba(0, 0, 0, 0.2); */ }
 .page-partners .struct-grid .struct-grid-wrap > .grid-cell:nth-child(2n) .thematics li, .masonry .masonry-item:nth-child(2n+1) .thematics li {

}
/* Sponsor ---------------------------------------------------------------------- */
 .bloc-sponsor {
    padding:20px 10px;
     max-width: 300px;
     text-align: center;
     display: inline-block;
}
 .bloc-sponsor figure {
    max-width: 200px;
     max-height: 200px;
     margin:0 auto;
}
 .bloc-sponsor figure a {
    display: block;
     height: 100%;
     width:100%;
}
 .bloc-sponsor figure a img, .bloc-sponsor figure img {
    height: 100%;
     width:100%;
     object-fit: contain;
}
 .bloc-sponsor > div {
    padding-top:10px;
     text-align: center;
}
 .bloc-sponsor > div .cpy {
    font-size:13px;
     display: block;
     text-align: center;
}
 .bloc-sponsor > div .type {
    font-size:14px;
     font-weight: bold;
     display: block;
     text-align: center;
     padding-top:5px;
}
 .bloc-sponsor.sponsor-gold div .type {
    color:#fc4;
}
 .bloc-sponsor.sponsor-or div .type {
    color:#fc4;
}
 .bloc-sponsor.sponsor-silver div .type {
    color:#999;
}
 .bloc-sponsor.sponsor-argent div .type {
    color:#999;
}
 .bloc-sponsor.sponsor-bronze div .type {
    color:#c61;
}
 .bloc-sponsor.sponsor-platine div .type {
     background: linear-gradient(to bottom, #e5e4e2, #a6a5a3);
     background-clip: text;
     -webkit-text-fill-color: transparent;
}
 .bloc-sponsors {
    display: block;
     padding:20px;
}
 .bloc-sponsors > div {
    display: -webkit-flex;
     display: flex;
     flex-wrap: wrap;
     justify-content: center;
}
 .bloc-sponsors .bloc-sponsor {
    margin: 0 10px;
     align-self: center;
}
/* Evenement - Demain ---------------------------------------------------------------------- */
/* ------------------------------------------------------------------- ---------------------------------------------------------------------- FORMULAIRE ---------------------------------------------------------------------- ---------------------------------------------------------------------- */
/* Formulaire - structure ---------------------------------------------------------------------- */
 .digiForm {
    width: 100%;
    margin: 0 auto;
     padding:0 40px;
}
 .digiForm article {
    font-size: 0;
     margin:20px 0 40px 0;
}
 .digiForm article > label{
    width:30%;
     text-align: right;
     padding-right:20px;
}
 .digiForm article label {
    font-size: 18px;
     display: inline-flex;
     color:#2B2B2B;
     vertical-align: middle;
}
 .digiForm article > div {
    width:70%;
     max-width: 700px;
     font-size: 16px;
     text-align: left;
     display: inline-block;
     vertical-align: middle;
	 justify-content: center;
	 align-items:center;
}
 .digiForm article.formTxt {
    font-size:13px;
     line-height: 14px;
     margin-left: 30%;
     max-width: 700px;
     text-align: justify;
}
 .form-top .digiForm {
    max-width:800px;
}
 .form-top .digiForm article {
}
 .form-top .digiForm article > label {
    width:100%;
     display:block;
     text-align: left;
     padding-right: 0;
     margin-bottom: 10px;
}
 .form-top .digiForm article > div {
    width:100%;
     max-width: none;
     display: block;
}
 .form-top .digiForm article.formTxt {
    margin-left:0;
     max-width: none;
}
 .digiForm .form-title {
     font-size:20px;
     font-weight: bold;
     display: block;
     color:#111;
     margin:20px 0 6px 0;
     border-bottom:2px solid #2B2B2B;
     padding:0 0 4px 0;
}
 .digiForm section {
    margin:40px 0;
}
 .digiForm section > section {
    margin:0;
}
 .digiForm .invisible div {
    border: none;
     padding: 0;
     margin: 0;
}
 .digiForm article div textarea {
     width: 100%;
     min-height: 120px;
}
 form article s{
    text-decoration: none;
}
 form article s::before {
    content:" *";
     font-size:14px;
     color:#d00;
}
 .digiForm .formCheckbox label {
    vertical-align: top;
     font-size:14px;
}
 .digiForm .formCheckbox input {
    vertical-align: top;
}
 .digiForm .formRadio ul {
    text-align: left;
}
 .digiForm .formRadio ul li {
    display: inline-block;
     padding-right: 40px;
}
 .digiForm .formRadio ul li label {
    text-align: left;
     font-size:18px;
}
/* Formulaire - Errors ---------------------------------------------------------------------- */
 form article.error label {
     color:#d00;
}
 form article.error input {
     border-color:#d00;
     color:#d00;
}
 ul.errors {
    background : #B71D21;
     padding:20px;
}
 #widgetContact ul.errors {
     margin-top:45px;
}
 ul.errors li {
    list-style: none;
     margin-left:10px;
     color:#fff;
     margin-bottom: 3px;
    font-size: 16px;
}
/* Formulaire - Styles & modèles de champs ---------------------------------------------------------------------- */
/* // pour les radio & checkbox, le label au dessus des choix (style classique) */
 .digiForm article.choicesUnder > div {
    width:100%;
}
 .digiForm article.choicesUnder > label {
    width:100%;
     text-align: left;
}
/* // pour les radio & checkbox, un choix par ligne */
 .digiForm article.choicesOnePerLine ul li {
    width:100%;
     display:block;
}
/* // info en petit pour expliquer un champ */
 .digiForm article.fieldInfoTxt {
    font-size:11px;
     margin-top:-8px;
     color:#777;
}
/* // séparation d'un bloc de texte */
 .digiForm article.textSeparate {
    margin:40px 0;
}
/* Formulaire - Trombinoscope upload picture ---------------------------------------------------------------------- */
 .digiForm article.trombiPicture {
    text-align: center;
}
 .digiForm article.trombiPicture figure img {
    width:30%;
}
 .digiForm article.trombiPicture span {
    font-size:12px;
}
/* Formulaire - Module Hotel ---------------------------------------------------------------------- */
 .digiForm article.hotelFellows > div {
    margin-left: 30%;
     width: 70%;
}
 .digiForm article.hotelFellows > div li {
    text-align: left;
}
 .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 li label {
    text-align: left;
     width: 20%;
}
 .digiForm .hotelNbNights {
    font-weight: bold;
     margin-bottom: 50px;
}
 .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;
}
/* Formulaire - Module Accompagnants ---------------------------------------------------------------------- */
 .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%;
}
/* Formulaire - Autres éléments généraux ---------------------------------------------------------------------- */
 div.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;
}
/* Page Formulaire ---------------------------------------------------------------------- */
 .page-form {
     padding-bottom: 50px;
}
 .page-form > figure {
    width:100%;
}
 .page-form > figure img {
    width:100%;
}
 .page-form > article.struct-blocs.struct-wrap {
    max-width:1000px;
     padding:0 20px;
}
 .page-form > article h3.chapo {
    font-size: 22px;
     margin-bottom: 14px;
}
 .page-form > article .content {
    margin-bottom: 20px;
}
/* Login - Indentification ---------------------------------------------------------------------- */
 .digiForm.login article > label {
     padding-top: 8px;
     vertical-align: top;
}
 .forgetPwd {
    cursor: pointer;
     font-size:11px;
     padding:5px;
     display:block;
}
 .forgetPass h3 {
    text-align: center;
}
/* Date Picker ---------------------------------------------------------------------- */
 .date-Picker {
     display: none;
     z-index:9100;
     position:absolute;
     top:0;
     left:120px;
     background: #ddd;
     border-radius:4px;
     box-shadow: 0px 0px 6px #aaa;
}
 .date-Picker header {
     margin:2px;
     border-radius: 2px;
     background: #fff;
     color:#ddd;
     font-size:0px;
     text-align: center;
     font-weight: bold;
}
 .date-Picker header span {
     width:15%;
     font-size:18px;
     color:#aaa;
     margin-top:-3px;
     display: inline-block;
     cursor: pointer;
}
 .date-Picker header span.t {
     width:70%;
     font-size:12px;
     padding-top: 7px;
     vertical-align: top;
}
 .date-Picker>div.main {
     position:relative;
     margin:2px;
     padding:3px;
     background: #fff;
     border-radius: 2px;
     text-align: center;
}
 .date-Picker>div.main>table>tbody>tr>td {
     vertical-align: top;
     border-left:1px solid #ddd;
     padding-left: 10px;
     padding-right: 10px;
}
 .date-Picker>div.main>table>tbody>tr>td:first-child {
     padding-left:0px;
     border: none;
}
 .date-Picker>div.main>table>tbody>tr>td:last-child {
     padding-right:0px;
}
 .date-Picker>div.main>table tr>td>table {
     padding:5px;
     background: #fff;
     font-size:12px;
     border-spacing: 0;
     border-collapse: collapse;
}
 .date-Picker table tr>td table thead tr td{
     border-bottom: 1px solid #ddd;
}
 .date-Picker table tr>td table thead td {
     color:#38a;
     font-weight: bold;
     padding:6px;
}
 .date-Picker table tr>td table tbody td {
     color:#38a;
     padding:6px;
     cursor: pointer;
}
 .date-Picker table tr > td table tbody td.p {
     color:#ddd;
}
 .date-Picker table tr > td tbody.months td {
     padding:20px 6px;
}
 .d-picker table tr > td table tbody td:hover, .d-picker table tr > td table tbody td.select {
     color:#fff;
     background:#38a;
     border-radius: 3px;
}
 .date-Picker > div.time {
     background: #fff;
     text-align: right;
     position:relative;
}
 .date-Picker > div.main::after, .date-Picker > div.time::after {
     content:"\f017";
     font-family: FontAwesome;
     font-size:20px;
     top:0;
     right:-32px;
     height:100%;
     width:30px;
     border-radius: 0 4px 4px 0;
     box-shadow: 2px 0 6px #aaa;
     display:flex;
     position:absolute;
     background:#fff;
     -webkit-flex-direction: column;
     flex-direction:column;
     justify-content:center;
     text-align: center;
     color:#999;
}
 .date-Picker > div.main::after {
     content:"\f073";
}
 .date-Picker > div.time div.time{
     font-weight: bold;
     text-align: center;
     padding:3px;
     cursor: pointer;
     border:#eee 1px solid;
}
 .date-Picker > div.time div.time span {
    text-align: center;
     font-size:15px;
     font-weight: bold;
     padding-top:0;
     display: inline-block;
}
 .date-Picker > div.time div.time button {
    margin-left:10px;
     display: inline-block;
     width:30px;
}
 .date-Picker div.minutes {
    display: none;
}
 .date-Picker div.time li {
     width: 16.5%;
     text-align: center;
     font-size:11px;
     display: inline-block;
     padding:2px 0;
     cursor: pointer;
}
 .date-Picker div.time li.select, .date-Picker div.time li:hover {
     color:#fff;
     background:#38a;
     border-radius: 3px;
}
 .date-Picker div.time i {
     font-size:14px;
     padding:2px 5px;
     cursor: pointer;
}
/* Définition importantes, prioritaires sur les autres déclarations ---------------------------------------------------------------------- */
 .hide {
    display:none;
}
/* Bloc Download */
figure.bloc-download { font-size: 16px; text-align:center; }
 figure.bloc-download i {
    font-size:50px;
     color:#000;
     padding:15px;
     margin:auto;
}
 figure.bloc-download figcaption {
    text-align:center;
     padding: 15px 0;
     font-size: 16px;
     color: #212221;
}
/*figure.bloc-download {
    max-width: 150px;
     margin: 15px;
     padding: 15px;
     background: #f7f7f7;
     min-height:160px
}
 */
figure.bloc-download div {
    display:flex;
}
 body > main > section.download {
    margin-top: 0;
}
 body > main section.downloadfile {
    max-width: 300px;
	margin:0px auto;
}
 body > main section.downloadfile > .btn {
     width: 100%;
}
/* Bloc Bouton sur image ---------------------------------------------------------------------- */
 .bloc-button-image {
     background-size: cover;
     background-repeat: no-repeat;
     background-position: center;
     text-align: center;
     transition: all 300ms ease-in;
     margin: 0px;
	 box-shadow: 8px 12px 12px rgba(0, 0, 0, 0.12);
}
 .bloc-button-image::after {
     content:'';
     position:absolute;
     top:0px;
     left:0px;
     width:100%;
     height:100%;
     background:rgba(0,0,0,0.4);
     z-index:5;
}
 .bloc-button-image a.btn, .bloc-button-image a.btn:hover {
     border:1px solid #FFF;
     background:none;
     margin:0px;
}
 .bloc-button-image-image {
     position:absolute;
     top:0px;
     left:0px;
     width:100%;
     height:100%;
     transition:0.5s all ease;
     transform:scale(1.05);
}
 .bloc-button-image-image img {
     width:100%;
     height:100%;
     object-fit:cover;
}
 .bloc-button-image:hover .bloc-button-image-image {
     transform:scale(1);
}
 .bloc-button-image-title {
     width:100%;
     text-align:center;
     bottom:0px;
     left:0px;
     height:60%;
     position:absolute;
     z-index:10;
     display: flex;
     flex-direction: column;
     align-items: flex-start;
     justify-content: flex-end;
	 padding-left:124px;
	 padding-bottom:124px;
}
 .bloc-button-image-title > div {
     text-align:left;
     font-size:40px;
     color:#FFFFFF;
     font-family:'Sansplomb', Arial;
     text-transform:uppercase;
     font-weight:700;
     padding-bottom:30px;
	 line-height:normal;
}
 .bloc-button-image-title > div > div {
     font-size:18px;
     text-align:left;
     line-height:24px;
     font-family:'Inter Tight', Arial;
     text-transform:none;
     font-weight:300;
}
/*.bloc-button-image a.btn:hover {
     background: #d39773;
}
*/
/*.bloc-button-image:hover {
     opacity: 1;
}
*/
 .struct-grid {
     background-color: var(--grid-bg-color, transparent);
}
 .struct-grid .struct-grid-wrap {
     margin-left:-24px;
     margin-right:-24px;
     margin-bottom:60px;
     display: flex;
     flex-direction: row;
     flex-wrap: wrap;
     justify-content: flex-start;
     padding: 12px;
}
 .struct-grid .struct-grid-wrap > .grid-cell {
     margin: 12px;
}
 .struct-grid .struct-grid-wrap > .grid-cell .grid-cell-inner {
     border-radius:0;
     overflow:hidden;
     display:flex;
     align-items:center;
     justify-content:center;

}
 .struct-grid.cols-2 {
     margin-top:-24px;
}
 .struct-grid.cols-2 .struct-grid-wrap > .grid-cell {
     flex: 1 1 50%;
     max-width: calc(50% - 24px);
}
 .struct-grid.cols-3 .struct-grid-wrap > .grid-cell {
     flex: 1 1 50%;
     max-width: calc(33% - 30px);
}
 .struct-grid.cols-4 .struct-grid-wrap > .grid-cell {
     flex: 1 1 25%;
     max-width: calc(25% - 80px);
}
 .struct-grid.cols-5 .struct-grid-wrap > .grid-cell {
     flex: 1 1 20%;
     max-width: calc(20% - 100px);
}
 .struct-grid.cols-6 .struct-grid-wrap > .grid-cell {
     flex: 1 1 16.6666666%;
     max-width: calc(16.6666666% - 40px);
}
 @media all and (max-width: 1200px) {
    /* .struct-grid .struct-grid-wrap {
         flex-direction: column;
         align-items: center;
         justify-content: flex-start;
    }
     .struct-grid .struct-grid-wrap > .grid-cell {
         flex: 1 1;
         max-width: 85%;
         width: 85%;
    }
     .struct-grid.cols-2 .struct-grid-wrap > .grid-cell {
         flex: 1 1 100%;
         max-width: 100%;
         margin: 10px 0;
    }
     .struct-grid .bloc-button-image {
         max-width: unset;
    }
     */
}
/* JPC Grid ------------------------------------------------------------- */
 .jpc-grid {
     display: -webkit-flex;
     display: flex;
     flex-wrap: wrap;
     justify-content: center;
     max-width: 1000px;
     margin: 0 auto;
}
 .jpc-grid-item {
     margin: 10px;
     box-shadow: 1px 5px 10px rgba(0, 0, 0, 0.4);
}
/* JPC Bloc Thème ------------------------------------------------------------- */
 .jpc-bloc-theme {
     width: 300px;
     height: 300px;
     position: relative;
     display: -webkit-flex;
     display: flex;
     justify-content: center;
     align-items: center;
     background-size: cover;
     background-image: var(--theme-bg-image);
}
 .jpc-bloc-theme > .jpc-theme-overlay {
     position: absolute;
     top: 0;
     left: 0;
     right: 0;
     bottom: 0;
     background: rgba(0, 0, 0, 0.3);
}
 .jpc-bloc-theme .jpc-theme-title, .jpc-bloc-theme .jpc-theme-content {
     position: absolute;
     top: 0;
     left: 0;
     bottom: 0;
     right: 0;
     display: -webkit-flex;
     display: flex;
     -webkit-flex-direction: column;
     flex-direction: column;
     justify-content: center;
     align-items: center;
     color: white;
     text-align: center;
     transition: all 1.1s ease;
}
 .jpc-bloc-theme .jpc-theme-title > span, .jpc-bloc-theme .jpc-theme-content > span {
     text-align: center;
}
 .jpc-bloc-theme .jpc-theme-title {
     font-size: 30px;
     font-weight: 900;
     line-height: 35px;
     padding: 25px;
     user-select: none;
     -moz-user-select: none;
     -webkit-user-select: none;
}
 .jpc-bloc-theme .jpc-theme-content {
     visibility: hidden;
     opacity: 0;
     font-size: 14px;
     line-height: 18px;
     padding: 15px;
     background: rgba(0, 0, 0, 0.4);
     overflow: hidden;
}
 .jpc-bloc-theme:hover .jpc-theme-title {
     visibility: hidden;
     opacity: 0;
}
 .jpc-bloc-theme:hover .jpc-theme-content {
     visibility: visible;
     opacity: 1;
}
 .jpc-bloc-theme .jpc-theme-icon {
     max-height: 45px;
     display: block;
     margin-bottom: 15px;
}
 .jpc-partners > ul {
     display: -webkit-flex;
     display: flex;
     -webkit-flex-direction: row;
     flex-direction: row;
     justify-content: center;
     align-items: center;
     flex-wrap: wrap;
     padding: 2vw 15px;
}
 .jpc-partners > ul > li {
     text-align: center;
     max-width: 14%;
     padding: 25px;
}
 .jpc-partners > ul > li img {
     width: 100%;
     max-height: 130px;
     max-width: 250px;
}
 .jpc-partners > ul > li.gold {
     max-width: 42%;
}
 .jpc-partners > ul > li.gold img {
     max-height: 200px;
     max-width: 400px;
}
 .jpc-partners > ul > li span.partner-name {
     font-weight: bold;
     display: inline-block;
     margin-top: 25px;
     font-size: 15px;
     color: #000;
     transition: color 0.3s ease-in;
}
 .jpc-partners > ul > li:hover span.partner-name {
     color: #789e31;
}
 @media (max-width: 999px) {
     .jpc-partners > ul > li {
         max-width: 25%;
    }
}
 @media (max-width: 499px) {
     .jpc-partners > ul > li {
         max-width: 33.3333333%;
    }
     .jpc-partners > ul > li span.partner-name {
         font-size: 12px;
    }
}
/* Footer */
 .footer-top {
     background-size: auto 100%;
     padding-top: 10px;
}
 .footer-wrapper {
     display: -webkit-flex;
     display: flex;
     max-width: 1200px;
     margin: 0 auto;
     padding: 50px 0;
}
 .footer-top .footer-col {
     -webkit-flex: 1 1;
     flex: 1 1;
     padding: 10px;
}
 .footer-top a {
     font-size: 16px;
     line-height: 22px;
     font-weight: normal;
    /*color: #2B2B2B;
    */
     color: #f0f0f0;
}
/*.footer-top a:hover {
     color: #fff;
}
*/
 .footer-top .footer-title {
     display: block;
     font-size: 16px;
     font-weight: normal;
     text-transform: uppercase;
    /*margin: 0 0 20px 0;
    */
    /*color: #2B2B2B;
    */
     color: #f0f0f0;
}
 .footer-bottom > .footer-wrapper {
     display: block;
     padding: 15px 0;
}
 .footer-bottom ul li {
     display: block;
     text-align: center;
}
 .footer-bottom ul li a {
     color: #111;
     line-height: 1.5em;
}
 footer .address {
     display: block;
     width: 100%;
     padding: 10px;
     text-align: center;
     font-size: 0.8em;
}
 .partners {
     display: -webkit-flex;
     display: flex;
     -webkit-flex-direction: row;
     flex-direction: row;
     justify-content: center;
     margin: 15px auto;
}
 .partners img {
     max-height: 70px;
}
 .partners.gold img {
     max-height: 150px;
}
 .underFooter {
     padding: 20px 0;
     border-top: 1px solid black;
     display: none;
}
 .underFooter ul {
     text-align: center;
}
 .underFooter ul li {
     display: inline-block;
     color: #ccc;
}
 .underFooter ul li a {
     color: #773a8b;
     font-weight: bold;
}
/* new style */
 .footer-top > .footer-wrapper {
     background: #eee;
     max-width: unset;
     padding: 0;
}
 .footer-top > .footer-wrapper > .footer-col {
     padding: 25px 0;
}
 .footer-top > .footer-wrapper > .footer-col-left {
     margin-left: auto;
     max-width: 600px;
}
 .footer-top > .footer-wrapper > .footer-col-right {
     max-width: 50%;
     background: #661e21;
}
 .footer-top > .footer-wrapper > .footer-col-right > .footer-col {
     max-width: 600px;
     padding-left: 15px;
     padding-right: 15px;
}
 @media all and (max-width: 799px) {
     .footer-top > .footer-wrapper {
         -webkit-flex-direction: column;
         flex-direction: column;
    }
     .footer-top > .footer-wrapper > .footer-col-left {
         margin-left: 0;
         max-width: unset;
    }
     .footer-top > .footer-wrapper > .footer-col-right {
         max-width: unset;
    }
}
/* Radio/Checkboxes ------------------------------------------------------------ */
 .checkbox-container, .radio-container {
     display: block;
     position: relative;
     padding: 5px 0 5px 40px !important;
     margin-bottom: 13px;
     cursor: pointer;
     font-size: 22px;
     -webkit-user-select: none;
     -moz-user-select: none;
     -ms-user-select: none;
     user-select: none;
}
.checkbox-container { align-items:center; justify-content:center; }
/* Hide the browser's default radiobutton / checkbox */
 .checkbox-container input, .radio-container input {
     position: absolute;
     opacity: 0;
     cursor: pointer;
     height: 0;
     width: 0;
}
/* Custom checkbox & radiobutton box */
 .checkbox-container .checkmark, .radio-container .checkmark {
     position: absolute;
     left: 0;
     height: 15px;
     width: 15px;
     background-color: #eee;
     border: 1px solid #ccc;
     transition: background 200ms linear;
}
 .checkbox-container .checkmark {
     border-radius: 3px;
}
 .radio-container .checkmark {
	top:50%;
	margin-top:-8px;
     border-radius: 50%;
}
/* Hover style */
 .checkbox-container:hover input ~ .checkmark, .radio-container:hover input ~ .checkmark {
     border-color: #2B2B2B;
     background-color: #ddd;
}
/* Checked style */
 .checkbox-container:checked input ~ .checkmark, .radio-container input:checked ~ .checkmark {
     border-color: #2B2B2B;
     background-color: #2B2B2B;
}
/* Custom checkbox & radiobutton checkmark */
 .checkbox-container .checkmark:after {
     left: 8px;
     top: 4px;
     width: 5px;
     height: 9px;
     border: solid white;
     border-width: 0 3px 3px 0;
     -webkit-transform: rotate(45deg);
     -ms-transform: rotate(45deg);
     transform: rotate(45deg);
}
 .radio-container .checkmark:after {
     top: 4px;
     left: 4px;
     width: 5px;
     height: 5px;
     border-radius: 50%;
     background: white;
}
 .checkbox-container .checkmark:after, .radio-container .checkmark:after {
     content: "";
     position: absolute;
     display: none;
}
 .checkbox-container input:checked ~ .checkmark:after, .radio-container input:checked ~ .checkmark:after {
     display: block;
}
 .jpc-history {
     margin-top:60px;
}
/* Widget Revolugo ---------------------------------------------------------------------- */
 .widget-revolugo {
	max-width:var(--max-width); margin:0px auto 65px auto;
	padding:0px 30px;
}
 .widget-revolugo > iframe {
     min-height: 78vh;
}
 .page-form .formOk.full {
     text-align: center;
     font-size:inherit;
}
 .page-form .error-msg > li {
     text-align: center;
     font-weight: bold;
     color: #c90000;
}
/* Popin Newsletter ---------------------------------------------------------------------- */
 .newsletter-popin.on {
     max-width: 500px;
     top: 18vh;
     left: 50%;
     transform: translateX(-50%);
}
 .ContentSubNews #formSubNews{
    padding:20px;
     background:#fff;
}
 .ContentSubNews #formSubNews .digiForm {
     padding: 0;
}
 .ContentSubNews fieldset.digiForm > article{
    padding-bottom:15px;
}
 .ContentSubNews fieldset.digiForm ul{
    display:flex;
}
 .ContentSubNews fieldset.digiForm li:first-child{
    padding-right:25px;
}
 .ContentSubNews #formSubNews .formTxt {
     margin: 0;
}
 .ContentSubNews #formSubNews article.central {
     text-align: center;
     padding: 10px 0;
}
 .ContentSubNews #formSubNews input[type="button"] {
     border: none;
     background-color: #2d1614;
}
 .ContentSubNews #formSubNews input[type="button"]:hover {
     background-color: #C4CACE;
}
 .ContentSubNews #formSubNews .formOk {
     text-align: center;
}
/* Popin Info ---------------------------------------------------------------------- */
 .info-popin.on {
     max-width: 500px;
     top: 50vh;
     left: 50%;
     transform: translateX(-50%) translateY(-50%);
     max-height: 80vh;
     overflow-y: auto;
}
 .ContentInfo {
     background: #fff;
     padding: 20px;
}
 .info-popin > nav {
     text-align: right;
     padding: 0 10px;
}
 .info-popin .close::before {
     content: none;
}
 @media all and (max-width: 400px) {
     .info-popin.on {
         width: 90%;
         max-height: 80vh;
         min-width: unset;
    }
}
/* Vidéo promotionnelle ---------------------------------------------------------------------- */
 .video-promo.struct-blocs > .ct-blocs {
     background: #eee;
}
 .video-promo.struct-blocs > .ct-blocs > .bloc-video {
     background: #800000;
     padding: 0 50px 30px 50px;
}
 .video-promo.struct-blocs > .ct-blocs > .bloc-video > .video-container {
     border: none;
     background: #fff;
}
 .video-promo.struct-blocs > .ct-blocs > .bloc-video > .video-details > h2 {
     color: #fff;
     text-shadow: 0 1px 3px rgba(255, 255, 255, 0.3);
}
 .video-promo.struct-blocs > .ct-blocs > .bloc-text {
     padding-right: 70px;
}
 @media all and (max-width: 1199px) {
     .video-promo.struct-blocs > .ct-blocs {
         -webkit-flex-direction: column;
         flex-direction: column;
         align-items: stretch;
    }
}
 @media all and (max-width: 480px) {
     .video-promo.struct-blocs > .ct-blocs > .bloc-video {
         padding: 0;
    }
     .video-promo.struct-blocs > .ct-blocs > .bloc-video iframe {
         height: 60vw;
    }
}
/* Page Animations ----------------------------------------------------------------------- */
 article.animation {
     width:100%;
     margin-top:60px;
}
 article.animation aside {
     z-index:20;
     position:relative;
}
 article.animation figure {
     line-height:0px;
	 box-shadow: 8px 12px 12px rgba(0, 0, 0, 0.12);
	 overflow:visible;
	 border-radius:0;
}

 article.animation figure img {
     width:100%;
     object-fit: cover;
	 border-radius:0; overflow:hidden; height:28vw; max-height:450px;
}
.struct-grid-wrap .grid-cell:nth-child(2n) article.animation figure {
	border-radius:0;
}
.struct-grid-wrap .grid-cell:nth-child(2n) article.animation figure img {
	border-radius:0;
}
 article.animation .content {
     width:calc(100% - 120px);
     margin:0px auto;
     border:1px solid var(--color-green);
     border-radius:0;
     position:relative;
     bottom:1px;
     padding:60px;
}
 article.animation .content h3 > div {
     font-size:18px;
     line-height:23px;
     font-family:'Inter Tight', Arial;
     text-transform:none;
     font-weight:300;
     color:#2B2B2B;
     padding-bottom:7px;
}
 article.animation .content h3 {
     margin:0px;
     padding:0px 0px 22px 0px;
     color:var(--color-green);
     font-size:40px;
     font-weight:700;
     font-family:'Sansplomb';
	 text-transform:uppercase;
     margin:0px;
     line-height:40px;
}
/* Page partenaires ----------------------------------------------------------------------- */
 section > h1 {
     margin:0px;
     padding:0px 0px 30px 0px;
     color:var(--color-green);
     font-size:50px;
     font-weight:normal;
     text-align:left;
     border-bottom:1px solid var(--color-green);
     margin-bottom:30px;
}
 section > h1 > div {
     font-size:22px;
     line-height:27px;
     font-family:'Inter Tight', Arial;
     text-transform:none;
     font-weight:300;
}
 .page-partners {
}
.page-partners .struct-grid .struct-grid-wrap {
	margin-left:-15px;
	margin-right:-15px;
	padding:0px;
	margin-bottom:0px;
	justify-content: flex-start;
}
 .page-partners .struct-grid .struct-grid-wrap > .grid-cell, .page-partners .masonry-item {
     flex:1 1 calc(33.33333% - 30px);
     position:relative;
     background:var(--color-black);
     margin:15px;
     max-width:calc(33.33333% - 30px);
     border-radius:0;
     margin-bottom:90px;
     color:#FFF;
}
/* .page-partners .struct-grid .struct-grid-wrap > .grid-cell:last-child {
     max-width:calc(66.66666% - 60px);
}
 */
 .page-partners.page-docs .struct-grid .struct-grid-wrap > .grid-cell {
     margin-top:120px;
}
 .page-partners .struct-grid .struct-grid-wrap > .grid-cell:nth-child(2n), .page-partners .masonry-item:nth-child(2n+1){
     background-color:var(--color-beige);
     border:1px solid var(--color-green);
     color:var(--color-black);
}
 .page-partners .struct-grid .struct-grid-wrap > .grid-cell .grid-cell-inner, .struct-grid[data-c="3126"] .struct-grid-wrap > .grid-cell .grid-cell-inner {
     overflow:visible;
}
 .page-partners article.partner {
     flex-direction:column;
     display: -webkit-flex;
     display: flex;
     align-items: center;
     padding:60px 30px;
}
 .page-partners.page-docs article.partner {
     padding-top:135px;
}
 .page-partners > div > article.partner {
     margin-bottom: 3px;
}
 .page-partners > div > article.partner::after {
     position: absolute;
     top: calc(100%);
     left: 0;
     right: 0;
     content: '';
     height: 3px;
     background: #82504f;
}
 .page-partners article.partner a {
     color: inherit;
}
 .page-partners article.partner.pos-right {
     -webkit-flex-direction: row-reverse;
     flex-direction: row-reverse;
}
 .page-partners article.partner.pos-top {
     -webkit-flex-direction: column;
     flex-direction: column;
}
 .page-partners article.partner > aside {
     position:absolute;
     top:-45px;
     left:40px;
     width:calc(100% - 80px);
     height:90px;
     padding:10px 10px 10px 10px;
     border-radius:0px;
}
 .page-partners.page-docs article.partner > aside {
     top:-74px;
     left:60px;
     width:calc(100% - 120px);
     height:198px;
     padding:0px;
     text-align:center;
}
 .page-partners.page-docs article.partner > aside > figure {
     border-radius:0;
     overflow:hidden;
     display:inline-block;
     background-color:#FFF;
     width:100%;
     max-width:400px;
}
 .page-partners article.partner > .link {
     position:absolute;
     bottom:62px;
     right:62px;
}
.page-partners .struct-grid .struct-grid-wrap > .grid-cell .page-partners article.partner.pos-right > aside {
     margin-left: 20px;
}
 .page-partners article.partner.pos-left > aside {
     margin-right: 20px;
}
 .page-partners article.partner > aside > figure {
     padding: 0px 0px;
	 background-color:#FCFCFC;
	 border-radius:0;
}
 .page-partners.page-docs article.partner > aside > figure {
     height:100%;
}
 .page-partners article.partner > aside > figure > img {
     width: 100%;
     height: 70px;
     object-fit: contain;
}
 .page-partners.page-docs article.partner > aside > figure > img {
     height: 100%;
     object-fit: cover;
}
 .page-partners article.partner.gold > aside > figure > img {
     width: 300px;
     height: 300px;
     object-fit: contain;
}
 .page-partners article.partner > aside > .infos > span {
     display: block;
     margin-bottom: 5px;
}
 .page-partners article.partner > div.content {
     max-width: 900px;
     margin: 0 auto;
     text-align:left;
}
.page-partners article.partner > div.content p { font-size:16px; }
 .page-partners article.partner > div.content.withlink {
     margin-bottom:60px;
}
 .page-partners article.partner > div.content > h3 {
     color:var(--color-yellow);
     font-family:'Sansplomb';
	 text-transform:uppercase;
     font-size:40px;
     line-height:45px;
     font-weight:700;
}
.page-partners.page-docs .masonry { margin-top:80px; }
.page-partners.page-docs .masonry-item { margin-top:30px; }
 .page-partners.page-docs article.partner.doc .chapo > ul {
     margin:0px 0px 20px 0px;
     padding:0px;
}
 .page-partners.page-docs article.partner.doc .chapo > ul li {
     display:block;
     margin-bottom:5px;
     padding:7px 15px;
     color:#2B2B2B;
     font-size:18px;
     background-color:#FFF;
     margin:0px 0px 2px 0px;
     border-radius:50px;
}
 .page-partners.page-docs .struct-grid .struct-grid-wrap > .grid-cell:nth-child(2n) article.partner.doc .chapo > ul li {
     background-color:var(--color-green);
     color:#FFF;
}
 .page-partners .struct-grid .struct-grid-wrap > .grid-cell:nth-child(2n) article.partner > div.content > h3, .page-partners .masonry > .masonry-item:nth-child(2n+1) article.partner > div.content > h3 {
     color:var(--color-green);
}
 .page-partners article.partner > div.content .chapo p {
     font-weight:bold;
     padding-bottom:30px;
}
 .page-partners article.partner > div.content > p, div.content > p {
     padding-bottom:30px;
     margin: 0px 0;
     font-size: 16px;
     line-height: 24px;
     text-align:justify;
}
 .page-partners article.partner > div.content > :last-child, div.content > :last-child {
     padding-bottom:0px;
}
 .page-partners article.partner.jpc-event-exhibitor > div.content > p {
     padding-bottom:0px;
	 color:var(--color-black);
}
.page-partners article.partner.jpc-event-exhibitor > div.content { color:var(--color-black); }
.page-partners .struct-grid .struct-grid-wrap > .grid-cell:nth-child(2n+1) article.partner.jpc-event-exhibitor > div.content { color:#FFF; }
.page-partners .struct-grid .struct-grid-wrap > .grid-cell:nth-child(2n+1) article.partner.jpc-event-exhibitor > div.content > p {
	color:#FFF;
}
 .page-partners article.partner > div.content > p a {
     color:inherit;
     text-decoration:underline;
}
 .page-partners article.partner > .sub {
     display: -webkit-flex;
     display: flex;
}
 .page-partners article.partner > .sub > article.partner {
     -webkit-flex: 1 1;
     flex: 1 1;
}
 .page-partners article.partner > .sub > article.partner:not(:last-child)::after {
     position: absolute;
     left: calc(100%);
     top: 0;
     bottom: 0;
     content: '';
     width: 3px;
     background: #82504f;
}
 .page-partners article.partner > .sub > article.partner:not(:last-child) {
     margin-right: 3px;
}
 .page-partners article.partner > .sub > article.partner > aside > figure > img {
     width: 180px;
     height: 180px;
}
/* Page thème ----------------------------------------------------------------------- */
 .page-theme {
     max-width: 1200px;
     margin: 0 auto;
}
 .page-theme > h1 {
     color: #82504f;
}
 .page-theme > .content {
     margin-bottom: 25px;
     padding: 0 15px;
}
 .page-theme > .pictures {
     display: -webkit-flex;
     display: flex;
     flex-wrap: wrap;
     padding: 25px 100px;
     justify-content: center;
     align-items: center;
}
 .page-theme > .pictures > img {
     margin: 10px;
     object-fit: cover;
     width: 300px;
     height: 300px;
}
 .theme-alcool {
     max-width: 800px;
}
/* Bannière publicitaire ----------------------------------------------------------------------- */
 .struct-blocs.ads img {
     max-width: 800px;
     height: auto;
     margin: 50px auto 0 auto;
     width: 100%;
}
/* others */
 main[data-c="982"] {
     background: #fff;
}
 div.separator {
     border-bottom: 3px solid #2c2e35;
     max-width: 80%;
     margin: 60px auto;
     font-size: 0;
     height: 0;
}
 .struct-blocs.wrap-partners {
     max-width: 800px;
}
 .struct-blocs.wrap-partners .bloc-image {
     padding: 20px;
}
 .struct-blocs.partnership {
     padding: 30px;
     color: #fff;
}
 .struct-blocs.partnership article > h2 {
     padding: 20px;
     margin: 0;
     color: #fff;
}
 .bloc-content .ct-blocs[data-c="1445"] aside {
     flex-basis: 35%;
}
 .bloc-content .ct-blocs[data-c="1445"] section {
     flex-basis: 65%;
}
 .bloc-edito {
     margin:60px 0px 60px 0px;
}
.bloc-edito:after { content:''; clear:both; display:block; }
 .bloc-edito.no-img {
     padding-bottom:0px;
}
 .bloc-edito.bloc-overlap2 {
     padding-bottom:0px;
}
.bloc-edito aside {

}
 .bloc-edito aside figure {

}
 .bloc-edito aside figure img {
     width:100%;
     object-fit:cover;
	 border-radius:0;
	 box-shadow: 8px 12px 12px rgba(0, 0, 0, 0.12);
}
 .bloc-edito section {
     position:relative;
}
 .bloc-edito section > .section-content {
     color:#FFF;
     background-color:var(--color-green);
     padding:62px;
     position:absolute;
     width:100%;
     right:0px;
     line-height:25px;
     border-radius:0;
     transform: translateY(-50%);
	 z-index:1000;
	 /* box-shadow: 8px 12px 12px rgba(0, 0, 0, 0.12); */
}
 .bloc-edito.no-img section > .section-content {
     width:100%;
     transform:none;
     position:static;
}
 .bloc-edito .section-content h2, .bloc-edito .section-content2 h2, .struct-blocs section h2 {
     margin:0px;
     padding:0px 0px 22px 0px;
     color:var(--color-white);
     font-size:40px;
     font-weight:700;
	 line-height:40px;
}
 .bloc-edito .section-content h2 > div, .bloc-edito .section-content2 h2 > div, .struct-blocs section h2 > div {
     font-size:18px;
     line-height:24px;
     font-family:'Inter Tight', Arial;
     text-transform:none;
     font-weight:300;
	 color:var(--color-black);
}
 .bloc-edito .section-content2 h2 {
     color:var(--color-green);
}
 .bloc-edito.struct-blocs > .ct-blocs.align-start:not(.column) {
     align-items:center;
}
 .bloc-edito .buttons {
     justify-content:start;
     margin-top:35px;
}
 .bloc-edito .buttons a {
     border:1px solid #FFF;
}
 .bloc-overlap2 .section-content2 {
     max-width:50%;
     max-width: 35%;
     margin-left: 60%;
     padding:60px 60px 40px 60px;
     border:1px solid var(--color-green);
     border-top:0px;
     border-radius:0px 0px 0px 0px;
     position:relative;
}
 .bloc-overlap2 .section-content2 .content ul {
     display:flex;
}
 .bloc-overlap2 .section-content2 .content ul li {
     flex: 1 1 50%;
}
 .bloc-overlap2 .section-content2 .content ul li strong {
     font-family:'Sansplomb', Arial;
     color:var(--color-green);
     font-size:36px;
     text-transform:uppercase;
     font-weight:700;
}
 .jpc-sponsors {
     border-top:15px solid var(--color-green);
}
 .jpc-sponsors-2902 {
     border-top:0px;
}
 .jpc-sponsors .sponsors {
     padding-top:60px;
     padding-bottom:60px;
}
 .jpc-sponsors-2902 .sponsors {
     padding-top:0px;
}
 .jpc-sponsors .sponsors h3 {
     margin-top:0px;
     font-size:22px;
     margin:0px;
     padding:0px 0px 10px 0px;
     color:#2B2B2B;
     text-transform:none;
     font-weight:normal;
}
 .jpc-sponsors .sponsors h2 {
     color: #fff;
     width: 100%;
     text-align: left;
     margin: 0;
     padding: 0px;
     font-size: 50px;
     font-weight:normal;
     text-transform: uppercase;
     color:var(--color-green);
     font-family:'Sansplomb';
     border-bottom:1px solid var(--color-green);
     padding-bottom:20px;
	 line-height:50px;
}
 .jpc-sponsors .sponsors .sponsors-gold img {
     height: 145px;
     width: auto;
     max-width: 210px;
     object-fit: contain;
}
.jpc-sponsors .sponsors .sponsors-silver img {
	height: 85px;
	width: auto;
	max-width: 110px;
	object-fit: contain;
}
 .jpc-sponsors .sponsors ul {
     display: flex;
     flex-wrap: wrap;
     justify-content: center;
     padding: 10px 10px;
}
.jpc-sponsors .sponsors ul + ul { padding-bottom:20px; }
 .jpc-sponsors .sponsors ul > li {
     padding: 5px 25px;
     text-align: center;
}
.jpc-sponsors .sponsors ul.sponsors-gold > li {
	padding: 5px 25px;
     text-align: center;
	 flex:1 1 25%;
}
 .jpc-sponsors + .bloc {
     margin-top:0px;
}
 main > section.bloc {
     margin-top:60px;
}
 section.bloc h1 > div, section.bloc h2 > div {
     font-size:18px;
     line-height:25px;
     font-family:'Inter Tight', Arial;
     text-transform:none;
     font-weight:300;
	 color:var(--color-black);
}
 .bloc-home-cta { border-top:15px solid var(--color-green); padding-top:86px; }
 .bloc-home-cta-video {
     width:100%;
     height:0px;
     padding-top:50%;
     position:relative;
     border-radius:0;
     overflow:hidden;
     margin-bottom:120px;
	 /* box-shadow: 8px 12px 12px rgba(0, 0, 0, 0.12); */
}
 .bloc-home-cta-video-inner {
     position: absolute;
     top: 0;
     left: 0;
     width: 100%;
     height: 100%;
}
 .bloc-home-cta-video-inner iframe {
     width:170%;
     height:100%;
     position:absolute;
     top:50%;
     left:55%;
     height:100%;
     transform:translate(-55%,-50%)
}
 .bloc-home-cta-video::after {
     content: '';
     width: 100%;
     height: 100%;
     z-index: 5;
     background: rgba(0, 0, 0, 0.35);
     top: 0px;
     left: 0px;
     position: absolute;
     overflow:hidden;
}
 .bloc-home-cta-video-title {
     width:100%;
     text-align:left;
     bottom:0px;
     left:0px;
     height:100%;
     position:absolute;
     z-index:10;
     display: flex;
     flex-direction: column;
     align-items: start;
     justify-content: flex-end;
     padding:0px 120px 120px 120px;
}
 .bloc-home-cta-video-title > div {
     text-align:left;
     font-size:48px;
	 line-height:48px;
     color:#FFFFFF;
     font-family:'Sansplomb', Arial;
     text-transform:uppercase;
     font-weight:700;
     padding-bottom:45px;
}
 .bloc-home-cta-video-title > div > div {
     font-size:32px;
     line-height:40px;
     font-family:'Inter Tight', Arial;
     text-transform:none;
     font-weight:300;
}
 .bloc-home-cta-video-title > div > span {
     color: #FFF;
     background-color: var(--color-green);
     display: inline-block;
     padding: 10px 15px;
     border-radius: 0;
}
 .bloc-overlap1 {
     margin-bottom:30px;
}
 .bloc-overlap1 .bloc-text {
     padding-top:0px;
     padding:62px 62px 116px 62px;
     border-radius:0;
     background-color:var(--color-green);
     color:#FFF;
     font-size:18px;
     line-height:25px;
	 /* box-shadow: 8px 12px 12px rgba(0, 0, 0, 0.12); */
}
 .bloc-overlap1 .bloc-text .hgroup h2, .bloc-overlap1 .bloc-content .hgroup h2, .jpc-masterclass-event .detail header h2, .bloc-text .hgroup h2 {
     text-align:left;
     font-size:40px;
     color:var(--color-yellow);
     font-family:'Sansplomb', Arial;
     text-transform:uppercase;
     font-weight:700;
     padding-bottom:30px;
     margin-bottom:0px;
	 line-height:40px;
}
.bloc-overlap1 .bloc-text .hgroup h2 { color:#000; }
 .bloc-overlap1 .bloc-content .hgroup h2, .jpc-masterclass-event .detail header h2 {
     color:var(--color-green);
}
 .bloc-overlap1 .bloc-text .hgroup h2 > div, .bloc-overlap1 .bloc-content .hgroup h2 > div, .jpc-masterclass-event .detail header h2 > div, .bloc-text .hgroup h2 > div {
     font-size:18px;
     text-align:left;
     line-height:20px;
     font-family:'Inter Tight', Arial;
     text-transform:none;
     font-weight:300;
     color:#FFFFFF;
}
 .bloc-overlap1 .bloc-content .hgroup h2 > div, .jpc-masterclass-event .detail header h2 > div {
     color:var(--color-black);
}
 .bloc-overlap-line {
     display:flex;
}
 .bloc-overlap-line > div {
     flex:1 50%;
}
 .overlap1-2 {
     text-align:right;
     display:flex;
     justify-content:right;
}
 .overlap1-2 figure {
     text-align:right;
     position:relative;
     bottom:60px;
}
 .overlap1-2 figure img {
     max-width:80%;
     max-width:608px;
     border-radius:0;
	 box-shadow: 8px 12px 12px rgba(0, 0, 0, 0.12);
}
 .overlap1-2 > .wrap-content > .struct-blocs > .ct-blocs {
     align-items:center;
     display:flex;
    /* padding-right:100px;
     */
}
 .overlap1-2 .bloc-content {
     padding-right:100px;
	 z-index:40;
}
 .overlap1-2 .bloc-content > div {
     padding:60px;
     border:1px solid var(--color-green);
     background-color:transparent;
     border-radius:0;
     margin-bottom:60px;
	 position:relative; right:2px;
	 z-index:50;
}
 .overlap1-2 .bloc-content > div > section {
     padding:0px;
}
 .overlap1-2 .bloc-content .buttons, .bloc-overlap2 .buttons {
     margin-top:60px;
     margin-right:-30px;
}
 .overlap1-2 .bloc-content .buttons a.btn, .bloc-overlap2 .buttons a.btn {
     font-size:22px;
     margin-right:20px;
     margin-bottom:20px;
}
 .overlap1-2 .bloc-content .buttons a.btn:nth-child(2), .bloc-overlap2 .buttons a.btn:nth-child(2), .jpc-masterclass-event .buttons a.btn:nth-child(2) {
     margin-right:0px;
}
 .overlap1-2 .bloc-content .buttons a.btn:last-child, .bloc-overlap2 .buttons a.btn:last-child, .jpc-masterclass-event .buttons a.btn:last-child {
     margin-right:0px;
}
 .widget-yurplan {
     border:1px solid var(--color-green);
     border-radius:0;
     overflow:hidden;
     padding:0px 60px 0px 60px;
     margin-bottom:90px;
}
 .jpc-legal-section .content {
     border:1px solid var(--color-green);
     padding:60px;
     border-radius:0px 20px 20px 20px;
     width:100%;
     display:block;
}
 .jpc-legal-section .struct-blocs > .ct-blocs > * {
     flex:none;
     width:100%;
}
 .jpc-legal-section .content h1, .jpc-legal-section .content h2 {
     color:var(--color-green);
     padding:0px;
     margin:0px;
     padding-bottom:20px;
}
 .jpc-legal-section .bloc-content > div > section {
     padding:0px;
     margin-bottom:60px;
     margin-top:60px;
}

/* Liste blocs masonry ---------------------------------------------------------------------- */
.masonry {
	max-width: 100%;
	margin-left:-30px;
	margin-right:-30px;
  }
  .masonry .grid-sizer { opacity:0; }
  .masonry .masonry-item,
  .masonry .grid-sizer {
	width: 33.33333%;
  }
  @media screen and (max-width: 599px) {
	.masonry .masonry-item,
	.masonry .grid-sizer {
	  width: 100%;
	}
  }
  @media screen and (min-width: 600px) and (max-width: 999px) {
	.masonry .masonry-item,
	.masonry .grid-sizer {
	  width: 50%;
	}
  }
  @media screen and (min-width: 1000px) and (max-width: 1399px) {
	.masonry .masonry-item,
	.masonry .grid-sizer {
	  width: 33.33333%;
	}
  }
  @media screen and (min-width: 1400px) and (max-width: 1899px) {
	.masonry .masonry-item,
	.masonry .grid-sizer {
	  width: 33.33333%;
	}
  }
  @media screen and (min-width: 1900px) {
	.masonry .masonry-item,
	.masonry .grid-sizer {
	  width: 33.33333%;
	}
  }

  .masonry .masonry-item,
  .masonry .grid-sizer {
	float: left;
	border: 1px solid #333;
	border-color: rgba(0, 0, 0, 0.5);
  }

  /* .item.w2 { width:  40%; } */
  .masonry-item.h2 {
	height: 200px;
  }

  .masonry-item.h3 {
	height: 130px;
  }

  .masonry-item.h4 {
	height: 380px;
  }
.JSinfos { display:none; }

 @keyframes bouncing {
     from {
         transform: scaleX(1);
    }
     to {
         transform: translateY(-15px) scaleX(1);
    }
}
 footer {
     background: var(--color-black);
     color: #fff;
    /* border-top:15px solid var(--color-green);
     */
}
 footer h2, footer h3 {
     color: #fff;
}
 footer h2 {
     font-size: 22px;
     font-weight: bold;
}
 footer h3 {
     font-size: 18px;
     font-weight: bold;
     text-transform: uppercase;
}
 footer a {
     color: #fff;
}
 footer .logo img {
     height: 80px;
}
 footer .footer-footer {
     padding-top:120px;
     font-size:20px;
     padding-bottom:100px;
}
 footer .footer-footer h2 {
     font-weight:700;
     font-size:38px;
     margin:0px;
     padding:0px 0px 20px 0px;
     font-family:'Sansplomb';
	 text-transform:uppercase;
}
 footer .footer-footer p {
     font-size:20px;
     line-height:25px;
}
 footer .footer-contact {
     padding-bottom:120px;
}
footer .footer-contact > h2 { padding-left:10px; padding-bottom:5px; }
 footer .footer-line {
     display: flex;
     flex-direction: row;
     padding: 15px 0;
}
 footer .footer-line.wrap {
     max-width: 1450px;
     margin-left: auto;
     margin-right: auto;
}
 footer .footer-line.main {
     border-bottom: 3px solid #fff;
}
 footer .footer-column {
     display: flex;
     flex-direction: column;
     flex: 1 1;
     padding-left: 10px;
     padding-right: 10px;
}
 footer .column-logo {
     justify-content: center;
}
 footer .column-newsletter1, footer .column-newsletter2 {
     justify-content: center;
}
 footer .column-newsletter1 {
     padding-right:100px;
}
 footer .column-newsletter2 input[type="text"] {
     background:none;
     font-size:20px;
     border-bottom:1px solid #F2F2F2;
	 padding:6px;
	padding-left:0px;
}
 footer .main .col-left {
     margin-right: auto;
}
 footer .main .col-right {
     flex: 1 1 50%;
     max-width: 50%;
}
 footer .footer-menu {
     display: flex;
}
footer .footer-menu .footer-menu-divide { display:flex; flex:1 1 50%; }
footer .footer-menu .footer-menu-divide:nth-child(1) { flex:1 1 48%; }
footer .footer-menu .footer-menu-divide:nth-child(2) { flex:1 1 52%; }
footer .footer-menu > .footer-menu-divide > .footer-menu-col {
     flex: 3 1;
}
footer .footer-menu > .footer-menu-divide:nth-child(2) > .footer-menu-col:nth-child(1){
	flex:5 1;
}
footer .footer-menu > .footer-menu-divide:nth-child(2) > .footer-menu-col:last-child { flex:1; white-space:nowrap;}
footer .footer-menu h3 {
     font-weight: 700;
     font-family:'Sansplomb';
	 text-transform:uppercase;
     margin-bottom: 30px;
     font-size:36px;
}
 footer .footer-menu ul > li {
     padding: 16px 0;
}
footer .footer-menu ul > li > a {
     font-size: 20px;
     font-weight: normal;
}

 footer .newsletter {
     max-width:none !important;
}
 footer .sponsors {
     background-color:#FFF;
     padding-top:60px;
     padding-bottom:60px;
}
 footer .sponsors h3 {
     margin-top:0px;
     font-size:22px;
     margin:0px;
     padding:0px 0px 10px 0px;
     color:#2B2B2B;
     text-transform:none;
     font-weight:normal;
}
 footer .sponsors h2 {
     color: #fff;
     width: 100%;
     text-align: left;
     margin: 0;
     padding: 0px;
     font-size: 50px;
     font-weight:700;
     text-transform: uppercase;
     color:var(--color-green);
     font-family:'Sansplomb';
     border-bottom:1px solid var(--color-green);
     padding-bottom:20px;
}
 footer .sponsors img {
     height: 110px;
     width: auto;
     max-width: 120px;
     object-fit: contain;
}
 footer .sponsors ul {
     display: flex;
     flex-wrap: wrap;
     justify-content: center;
     padding: 40px 10px;
}
 footer .sponsors ul > li {
     padding: 15px 20px;
     text-align: center;
}
 footer .exhibitors {
     background: #fff;
     padding: 20px 0;
     border-top: 10px solid #7c160d;
}
 footer .exhibitors img {
     height: 40px;
     width: auto;
}
 footer .exhibitors .slider {
     position: relative;
     overflow: hidden;
     height: 60px;
}
 footer .exhibitors .slider > .slider-content {
     position: absolute;
     top: 0;
     left: 0;
     transition: left 1s;
}
 footer .exhibitors .slider ul {
     display: block;
     white-space: nowrap;
     font-size: 0;
}
 footer .exhibitors .slider ul > li {
     display: inline-block;
     width: 100px;
     padding: 10px;
     height: 60px;
}
 footer .exhibitors .slider ul > li > a {
     display: block;
     width: 100%;
     height: 100%;
}
 footer .exhibitors .slider ul > li img {
     display: block;
     height: 100%;
     width: 100%;
     object-fit: contain;
}
 footer .logo {
     display: flex;
     justify-content: center;
     padding-bottom: 20px;
}
 footer .contact {
     text-align: left;
     font-size: 18px;
     line-height: 1.3;
}
 footer .event-place {
     text-align: left;
     font-size: 18px;
     line-height: 1.3;
}
 footer .event-place .event-date {
     font-size: 18px;
     font-weight: bold;
     margin-bottom: 15px;
}
 footer .newsletter {
     max-width: 500px;
}
 footer .newsletter h2 {
     color: #fff;
     font-size: 18px;
     font-weight: bold;
     margin: 0 0 20px 0;
}
 footer .social p {
     font-size: 12px;
     font-weight: bold;
}
 footer .social-networks {
     display: flex;
     margin-top: 25px;
}
 footer .social-networks li {
     padding: 4px;
}
 footer .social-networks li svg {
     width: 22px;
     height: 22px;
     fill: #fff;
     transition: all 0.3s;
}
 footer .social-networks li svg:hover {
     fill: #C4CACE;
}
 footer .legal {
}
 footer .legal > ul {
     display: flex;
     width: 100%;
}
 footer .legal > ul > li {
     padding: 10px;
     font-size:14px;
     padding-right:65px;
}
 footer .organizer {
     text-align:right;
}
 footer input[type="text"] {
     display: inline-block;
     width: auto;
     background: #000;
     border-width: 0 0 1px 0;
     border-color: #F2F2F2;
     color: #fff;
     height: 55px;
}
 footer input[type="text"]:focus {
     border-color: #C4CACE;
     outline: none;
}
 footer .btn.small {
     display: inline-block;
     width: auto;
     background: #F2F2F2;
     color: #2A2A2A;
     font-size:20px;
     border: none;
     padding: 17px 20px;
     height: 55px;
     text-transform:lowercase;
     font-weight:300;
     border-radius:0px;
     margin-right:0px;
}
 footer .footer-cadre {
     border: 1px solid #F2F2F2;
     border-radius: 0;
     padding:60px 60px 30px 60px;
     margin-bottom:0px;
}
 footer .footer-cadre-bottom {
     padding-top:70px;
     align-items:baseline;
}


/* CUSTOM COLORS */

/* Yellow */
.bloc-edito.yellow section > .section-content,
.bloc-overlap1.yellow .bloc-text,
.overlap1-2 .bloc-content.yellow > div,
.bloc-text[data-c="3760"].yellow,
.struct-blocs > .ct-2-1 >.yellow .struct-blocs[data-c="3154"],
.yellow .struct-blocs[data-c="3158"] > section,
.yellow .struct-blocs[data-c="3158"] > .ct-blocs,
.yellow .struct-blocs[data-c="3169"],
.yellow .struct-blocs[data-c="4574"] .bloc-text,
.yellow .struct-blocs[data-c="4854"] .bloc-text,
.yellow .struct-blocs[data-c="4854"] > *,
.bloc-edito section > .section-content.yellow,
.bloc-overlap2 .section-content2.yellow {
	background-color:var(--color-yellow) !important; border:0 !important;
}

.bloc-edito.yellow .section-content h2, .bloc-edito.yellow .section-content h2 > div,
.bloc-overlap1.yellow .bloc-text .hgroup h2, .bloc-overlap1.yellow .bloc-text .hgroup h2 > div,
.overlap1-2 .bloc-content.yellow > div .hgroup h2, .overlap1-2 .bloc-content.yellow > div .hgroup h2 > div,
.bloc-text[data-c="3760"].yellow > .hgroup h2, .bloc-text[data-c="3760"].yellow > .hgroup h2 > div,
.struct-blocs > .ct-2-1 >.yellow .struct-blocs[data-c="3154"] .bloc-text .hgroup h2, .struct-blocs > .ct-2-1 >.yellow .struct-blocs[data-c="3154"] .bloc-text .hgroup h2 > div,
.yellow .struct-blocs[data-c="3158"] > section h2, .yellow .struct-blocs[data-c="3158"] > section h2 > div,
.yellow .struct-blocs[data-c="3169"] .bloc-text .hgroup h2, .yellow .struct-blocs[data-c="3169"] .bloc-text .hgroup h2 > div,
.yellow .struct-blocs[data-c="4574"] .bloc-text .hgroup h2, .yellow .struct-blocs[data-c="4574"] .bloc-text .hgroup h2 > div,
.yellow .struct-blocs[data-c="4854"] .bloc-text .hgroup h2, .yellow .struct-blocs[data-c="45485474"] .bloc-text .hgroup h2 > div,
.bloc-edito section > .section-content.yellow .hgroup h2, .bloc-edito section > .section-content.yellow .hgroup h2 > div,
.bloc-overlap2 .section-content2.yellow .hgroup h2, .bloc-overlap2 .section-content2.yellow .hgroup h2 > div {
	color:var(--color-black) !important;
}

.bloc-edito.yellow section > .section-content .content, .bloc-edito.yellow section > .section-content .content p,
.bloc-overlap1.yellow section > .section-content .content, .bloc-overlap1.yellow section > .section-content .content p,
.overlap1-2 .bloc-content.yellow > div .content, .overlap1-2 .bloc-content.yellow > div .content > p,
.bloc-text[data-c="3760"].yellow > .content, .bloc-text[data-c="3760"].yellow > .content > p,
.struct-blocs > .ct-2-1 >.yellow .struct-blocs[data-c="3154"] .content, .struct-blocs > .ct-2-1 >.yellow .struct-blocs[data-c="3154"] .content p, .struct-blocs > .ct-2-1 >.yellow .struct-blocs[data-c="3154"] .content, .struct-blocs > .ct-2-1 >.yellow .struct-blocs[data-c="3154"] .content ul li,
.yellow .struct-blocs[data-c="3158"] > .ct-blocs .bloc-text .content, .yellow .struct-blocs[data-c="3158"] > .ct-blocs .bloc-text .content p, .yellow .struct-blocs[data-c="3158"] > .ct-blocs .bloc-text .content ul li,
.yellow .struct-blocs[data-c="3169"] .content, .yellow .struct-blocs[data-c="3169"] .content p,
.yellow .struct-blocs[data-c="4574"] .bloc-text .content, .yellow .struct-blocs[data-c="4574"] .bloc-text .content p,
.yellow .struct-blocs[data-c="4854"] .bloc-text .content, .yellow .struct-blocs[data-c="4854"] .bloc-text .content p,
.bloc-edito section > .section-content.yellow .content, .bloc-edito section > .section-content.yellow .content p,
.bloc-overlap2 .section-content2.yellow .content, .bloc-overlap2 .section-content2.yellow .content p
{
	color:var(--color-white) !important;
}

/* Black */
.bloc-edito.black section > .section-content,
.bloc-overlap1 .bloc-text.black,
.overlap1-2 .bloc-content.black > div,
.bloc-text[data-c="3760"].black,
.struct-blocs > .ct-2-1 >.black .struct-blocs[data-c="3154"],
.black .struct-blocs[data-c="3158"] > section,
.black .struct-blocs[data-c="3158"] > .ct-blocs,
.black .struct-blocs[data-c="3169"],
.black .struct-blocs[data-c="4574"] .bloc-text,
.black .struct-blocs[data-c="4854"] .bloc-text,
.bloc-edito section > .section-content.black,
.bloc-overlap2 .section-content2.black {
	background-color:var(--color-black) !important; border:0 !important;
}

.bloc-edito.black .section-content h2, .bloc-edito.black .section-content h2 > div,
.bloc-overlap1 .bloc-text.black .hgroup h2, .bloc-overlap1 .bloc-text.black .hgroup h2 > div,
.overlap1-2 .bloc-content.black > div .hgroup h2, .overlap1-2 .bloc-content.black > div .hgroup h2 > div,
.bloc-text[data-c="3760"].black > .hgroup h2, .bloc-text[data-c="3760"].black > .hgroup h2 > div,
.struct-blocs > .ct-2-1 >.black .struct-blocs[data-c="3154"] .bloc-text .hgroup h2, .struct-blocs > .ct-2-1 >.black .struct-blocs[data-c="3154"] .bloc-text .hgroup h2 > div,
.black .struct-blocs[data-c="3158"] > section h2, .black .struct-blocs[data-c="3158"] > section h2 > div,
.black .struct-blocs[data-c="3169"] .bloc-text .hgroup h2, .black .struct-blocs[data-c="3169"] .bloc-text .hgroup h2 > div,
.black .struct-blocs[data-c="4574"] .bloc-text .hgroup h2, .black .struct-blocs[data-c="4574"] .bloc-text .hgroup h2 > div,
.black .struct-blocs[data-c="4854"] .bloc-text .hgroup h2, .black .struct-blocs[data-c="4854"] .bloc-text .hgroup h2 > div,
.bloc-edito section > .section-content.black .hgroup h2, .bloc-edito section > .section-content.black .hgroup h2 > div,
.bloc-overlap2 .section-content2.yellow .black h2, .bloc-overlap2 .section-content2.black .hgroup h2 > div {
	color:var(--color-yellow) !important;
}

.bloc-edito.black section > .section-content .content, .bloc-edito.black section > .section-content .content p,
.bloc-overlap1 .bloc-text.black > .content, .bloc-overlap1 .bloc-text.black > .content p,
.overlap1-2 .bloc-content.black > div .content, .overlap1-2 .bloc-content.black > div .content > p,
.bloc-text[data-c="3760"].black > .content, .bloc-text[data-c="3760"].black > .content > p,
.struct-blocs > .ct-2-1 >.black .struct-blocs[data-c="3154"] .content, .struct-blocs > .ct-2-1 >.black .struct-blocs[data-c="3154"] .content p, .struct-blocs > .ct-2-1 >.yellow .struct-blocs[data-c="3154"] .content, .struct-blocs > .ct-2-1 >.black .struct-blocs[data-c="3154"] .content ul li,
.black .struct-blocs[data-c="3158"] > .ct-blocs .bloc-text .content, .black .struct-blocs[data-c="3158"] > .ct-blocs .bloc-text .content p, .black .struct-blocs[data-c="3158"] > .ct-blocs .bloc-text .content ul li,
.black .struct-blocs[data-c="3169"] .content, .black .struct-blocs[data-c="3169"] .content p,
.black .struct-blocs[data-c="4574"] .bloc-text .content, .black .struct-blocs[data-c="4574"] .bloc-text .content p,
.black .struct-blocs[data-c="4854"] .bloc-text .content, .black .struct-blocs[data-c="4854"] .bloc-text .content p,
.bloc-edito section > .section-content.black  .content, .bloc-edito section > .section-content.black .content p,
.bloc-overlap2 .section-content2.black .content, .bloc-overlap2 .section-content2.black .content p
 {
	color:var(--color-white) !important;
}

/* Beige */
.bloc-edito.beige section > .section-content,
.bloc-overlap1 .bloc-text.beige,
.overlap1-2 .bloc-content.beige > div,
.bloc-text[data-c="3760"].beige,
.struct-blocs > .ct-2-1 >.beige .struct-blocs[data-c="3154"],
.struct-blocs > .ct-2-1 >.beige .struct-blocs[data-c="3158"] > section,
.beige .struct-blocs[data-c="3158"] > section,
.beige .struct-blocs[data-c="3158"] > .ct-blocs,
.beige .struct-blocs[data-c="3169"],
.beige .struct-blocs[data-c="4574"] .bloc-text,
.beige .struct-blocs[data-c="4854"] .bloc-text,
.bloc-edito section > .section-content.beige,
.bloc-overlap2 .section-content2.beige {
	background-color:var(--color-beige) !important;
}
.overlap1-2 .bloc-content.beige > div { border-color:var(--color-yellow); }

.struct-blocs > .ct-2-1 >.beige .struct-blocs[data-c="3154"],
.white .struct-blocs[data-c="3158"] > section { border:0; }

.bloc-edito.beige .section-content h2, .bloc-edito.beige .section-content h2 > div,
.bloc-overlap1 .bloc-text.beige .hgroup h2, .bloc-overlap1 .bloc-text.beige .hgroup h2 > div,
.overlap1-2 .bloc-content.beige > div .hgroup h2, .overlap1-2 .bloc-content.beige > div .hgroup h2 > div,
.bloc-text[data-c="3760"].beige > .hgroup h2, .bloc-text[data-c="3760"].beige > .hgroup h2 > div,
.struct-blocs > .ct-2-1 >.beige .struct-blocs[data-c="3154"] .bloc-text .hgroup h2, .struct-blocs > .ct-2-1 >.beige .struct-blocs[data-c="3154"] .bloc-text .hgroup h2 > div,
.beige .struct-blocs[data-c="3158"] > section h2, .beige .struct-blocs[data-c="3158"] > section h2 > div,
.beige .struct-blocs[data-c="3169"] .bloc-text .hgroup h2, .beige .struct-blocs[data-c="3169"] .bloc-text .hgroup h2 > div,
.beige .struct-blocs[data-c="4574"] .bloc-text .hgroup h2, .beige .struct-blocs[data-c="4574"] .bloc-text .hgroup h2 > div,
.beige .struct-blocs[data-c="4854"] .bloc-text .hgroup h2, .beige .struct-blocs[data-c="4854"] .bloc-text .hgroup h2 > div,
.bloc-edito section > .section-content.beige .hgroup h2, .bloc-edito section > .section-content.beige .hgroup h2 > div,
.bloc-overlap2 .section-content2.beige .hgroup h2, .bloc-overlap2 .section-content2.beige .hgroup h2 > div {
	color:var(--color-yellow) !important;
}
.struct-blocs > .ct-2-1 >.beige .struct-blocs[data-c="3154"] .bloc-text .hgroup h2,
.beige .struct-blocs[data-c="3169"] .bloc-text .hgroup h2 { border-color:var(--color-yellow) !important; }

.bloc-edito.beige section > .section-content .content, .bloc-edito.beige section > .section-content .content p,
.bloc-overlap1 .bloc-text.beige > .content, .bloc-overlap1 .bloc-beige.black > .content p,
.overlap1-2 .bloc-content.beige > div .content, .overlap1-2 .bloc-content.beige > div .content > p,
.bloc-text[data-c="3760"].beige > .content, .bloc-text[data-c="3760"].beige > .content > p,
.struct-blocs > .ct-2-1 >.beige .struct-blocs[data-c="3154"] .content, .struct-blocs > .ct-2-1 >.beige .struct-blocs[data-c="3154"] .content p, .struct-blocs > .ct-2-1 >.beige .struct-blocs[data-c="3154"] .content, .struct-blocs > .ct-2-1 >.beige .struct-blocs[data-c="3154"] .content ul li,
.beige .struct-blocs[data-c="3158"] > .ct-blocs .bloc-text .content, .beige .struct-blocs[data-c="3158"] > .ct-blocs .bloc-text .content p, .beige .struct-blocs[data-c="3158"] > .ct-blocs .bloc-text .content ul li,
.beige .struct-blocs[data-c="3169"] .content, .beige .struct-blocs[data-c="3169"] .content p,
.beige .struct-blocs[data-c="4574"] .bloc-text .content, .beige .struct-blocs[data-c="4574"] .bloc-text .content p,
.beige .struct-blocs[data-c="4854"] .bloc-text .content, .beige .struct-blocs[data-c="4854"] .bloc-text .content p,
.bloc-edito section > .section-content.beige .content, .bloc-edito section > .section-content.beige .content p,
.bloc-overlap2 .section-content2.beige .content, .bloc-overlap2 .section-content2.beige .content p {
	color:var(--color-black) !important;
}
.beige .bloc-blurb figure img {
	background-color: var(--color-black);
    padding: 10px;
    border-radius: 0px;
}

/* White */
.bloc-edito.white section > .section-content,
.bloc-overlap1 .bloc-text.white,
.overlap1-2 .bloc-content.white > div,
.bloc-text[data-c="3760"].white,
.struct-blocs > .ct-2-1 >.white .struct-blocs[data-c="3154"],
.struct-blocs > .ct-2-1 >.white .struct-blocs[data-c="3158"] > section,
.white .struct-blocs[data-c="3158"] > section,
.white .struct-blocs[data-c="3158"] > .ct-blocs,
.white .struct-blocs[data-c="3169"],
.white .struct-blocs[data-c="4574"] .bloc-text,
.white .struct-blocs[data-c="4854"] .bloc-text,
.bloc-edito section > .section-content.white,
.bloc-overlap2 .section-content2.white {
	background-color:var(--color-white) !important; border:1px solid var(--color-black) !important;
}
.overlap1-2 .bloc-content.white > div { border-color:var(--color-yellow); }

.struct-blocs > .ct-2-1 >.white .struct-blocs[data-c="3154"],
.white .struct-blocs[data-c="3158"] > section,
.white .struct-blocs[data-c="3158"] > .ct-blocs { border:0 !important; }

.bloc-edito.white .section-content h2, .bloc-edito.white .section-content h2 > div,
.bloc-overlap1 .bloc-text.white .hgroup h2, .bloc-overlap1 .bloc-text.white .hgroup h2 > div,
.overlap1-2 .bloc-content.white > div .hgroup h2, .overlap1-2 .bloc-content.white > div .hgroup h2 > div,
.bloc-text[data-c="3760"].white > .hgroup h2, .bloc-text[data-c="3760"].white > .hgroup h2 > div,
.struct-blocs > .ct-2-1 >.white .struct-blocs[data-c="3154"] .bloc-text .hgroup h2, .struct-blocs > .ct-2-1 >.white .struct-blocs[data-c="3154"] .bloc-text .hgroup h2 > div,
.white .struct-blocs[data-c="3158"] > section h2, .white .struct-blocs[data-c="3158"] > section h2 > div,
.white .struct-blocs[data-c="3169"] .bloc-text .hgroup h2, .white .struct-blocs[data-c="3169"] .bloc-text .hgroup h2 > div,
.white .struct-blocs[data-c="4574"] .bloc-text .hgroup h2, .white .struct-blocs[data-c="4574"] .bloc-text .hgroup h2 > div,
.white .struct-blocs[data-c="4854"] .bloc-text .hgroup h2, .white .struct-blocs[data-c="4854"] .bloc-text .hgroup h2 > div,
.bloc-edito section > .section-content.white .hgroup h2, .bloc-edito section > .section-content.white .hgroup h2 > div,
.bloc-overlap2 .section-content2.white .hgroup h2, .bloc-overlap2 .section-content2.white .hgroup h2 > div {
	color:var(--color-yellow) !important;
}

.struct-blocs > .ct-2-1 >.white .struct-blocs[data-c="3154"] .bloc-text .hgroup h2,
.white .struct-blocs[data-c="3169"] .bloc-text .hgroup h2 { border-color:var(--color-yellow) !important; }

.bloc-edito.white section > .section-content .content, .bloc-edito.white section > .section-content .content p,
.bloc-overlap1 .bloc-text.white > .content, .bloc-overlap1 .bloc-beige.white > .content p,
.overlap1-2 .bloc-content.white > div .content, .overlap1-2 .bloc-content.white > div .content > p,
.bloc-text[data-c="3760"].white > .content, .bloc-text[data-c="3760"].white > .content > p,
.struct-blocs > .ct-2-1 >.white .struct-blocs[data-c="3154"] .content, .struct-blocs > .ct-2-1 >.white .struct-blocs[data-c="3154"] .content p, .struct-blocs > .ct-2-1 >.white .struct-blocs[data-c="3154"] .content, .struct-blocs > .ct-2-1 >.white .struct-blocs[data-c="3154"] .content ul li,
.white .struct-blocs[data-c="3158"] > .ct-blocs .bloc-text .content, .white .struct-blocs[data-c="3158"] > .ct-blocs .bloc-text .content p, .white .struct-blocs[data-c="3158"] > .ct-blocs .bloc-text .content ul li,
.white .struct-blocs[data-c="3169"] .content, .white .struct-blocs[data-c="3169"] .content p,
.white .struct-blocs[data-c="4574"] .bloc-text .content, .white .struct-blocs[data-c="4574"] .bloc-text .content p,
.white .struct-blocs[data-c="4854"] .bloc-text .content, .white .struct-blocs[data-c="4854"] .bloc-text .content p,
.bloc-edito section > .section-content.white .content, .bloc-edito section > .section-content.white .content p,
.bloc-overlap2 .section-content2.white .content, .bloc-overlap2 .section-content2.white .content p {
	color:var(--color-black) !important;
}

.white .bloc-blurb figure img {
	background-color: var(--color-black);
    padding: 10px;
    border-radius: 0px;
}