/* 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:1;}
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;}
*::before {box-sizing: border-box;}
*::after {box-sizing: border-box;}
* {box-sizing: border-box;}
*::selection {background:#112277; color:#cdf;}


/* Les Fonts : ici !
---------------------------------------------------------------------- */
@font-face {
  font-family: 'Lato';
  src: url('/inc/fonts/lato/Lato-Regular.ttf') format('truetype');
  font-weight: normal;
  font-style: normal;
}
@font-face {
  font-family: 'Lato';
  src: url('/inc/fonts/lato/Lato-Italic.ttf') format('truetype');
  font-weight: normal;
  font-style: italic;
}
@font-face {
  font-family: 'Lato';
  src: url('/inc/fonts/lato/Lato-Bold.ttf') format('truetype');
  font-weight: bold;
  font-style: normal;
}
@font-face {
  font-family: 'Lato';
  src: url('/inc/fonts/lato/Lato-BoldItalic.ttf') format('truetype');
  font-weight: bold;
  font-style: italic;
}
@font-face {
  font-family: 'Lato';
  src: url('/inc/fonts/lato/Lato-Light.ttf') format('truetype');
  font-weight: 300;
  font-style: normal;
}
@font-face {
  font-family: 'Lato';
  src: url('/inc/fonts/lato/Lato-LightItalic.ttf') format('truetype');
  font-weight: 300;
  font-style: italic;
}

@font-face {
  font-family: 'amaranth';
  src: url('/inc/fonts/amaranth/Amaranth.otf') format('opentype');
  font-weight: normal;
  font-style: normal;
}
@font-face {
  font-family: 'amaranth';
  src: url('/inc/fonts/amaranth/Amaranth-Bold.otf') format('opentype');
  font-weight: bold;
  font-style: normal;
}
@font-face {
  font-family: 'amaranth';
  src: url('/inc/fonts/amaranth/Amaranth-Italic.otf') format('opentype');
  font-weight: normal;
  font-style: italic;
}
@font-face {
  font-family: 'amaranth';
  src: url('/inc/fonts/amaranth/Amaranth-BoldItalic.otf') format('opentype');
  font-weight: bold;
  font-style: italic;
}


/* 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
# 161516 : fond nav & footer & autre blocs avec fond foncé
# fefdfc : hover border nav
# 181719 : fond boutons & co
# 424143 : 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 {
	--main-color: #272878;					/* couleur principale de la charte */
	--main-txt-color: var(--main-color);					/* couleur du texte */
	--main-bg: #fefefe;						/* couleur de fond */

	--alt-color: #4db99c;					/* couleur alternative */
	--ter-color: #4195bb;			/* couleur ternaire */

	--alt-txt-color: #eee;					/* couleur du texte alternative */
	--alt-bg: #222;							/* couleur de fond alternative */

	/* nuances couleur principale */
	--main-color-dark-1: #141460;
	--main-color-dark-2: #080842;
	--main-color-dark-3: var(--main-color-dark-2);
	--main-color-dark-4: var(--main-color-dark-3);
	--main-color-light-1: #3c3c8d;
	--main-color-light-2: #5d5da7;
	--main-color-light-3: var(--main-color-light-2);
	--main-color-light-4: var(--main-color-light-3);

	/* nuances couleur secondaire */
	--alt-color-dark-1: #2fa182;
	--alt-color-dark-2: #119570;
	--alt-color-dark-3: var(--alt-color-dark-2);
	--alt-color-light-1: #76d3ba;
	--alt-color-light-2: #acead9;
	--alt-color-light-3: var(--alt-color-light-2);
	--alt-color-light-4: var(--alt-color-light-3);

	/* couleurs par "type" (action / message) */
	--type-neutral: #bbb;
	--type-info: #0f7ca5;
	--type-success: #00ae1e;
	--type-warning: #d86800;
	--type-error: #ff130d;

	/* nuances couleurs par "type" (action / message) */
	--type-neutral-lt: #fbfbfb;
	--type-info-lt: #a9ddf0;
	--type-success-lt: #b6f8ac;
	--type-warning-lt: #ffd9b0;
	--type-error-lt: #ffb2b0;

	/* navigation */
	--nav-bg: #fefefe;
	--nav-txt-color: var(--main-txt-color);
	--nav-txt-color-alt: var(--alt-txt-color);

	--border-color: #dedede;

	--box-color: rgba(178,190,195,0.5);
	--box-border-color: #eee;

	--accent-color: #d4c0b1;

	--text-color-light: #656565;
	--text-alt-color: #f9f9f9;
	--link-color: #454545;
	--link-hover-color: #777;

	--wrap-width: 1200px;
	--overhead-height: 35px;
	--scroll-transition-time: 0.7s;

	--theme-green: #9bb596;

	--mini-padding: 5px;
	--medium-padding: 20px;
	--big-padding: 40px;

	--text-size: 12px;
}

/* Structure générale
---------------------------------------------------------------------- */
html {font-size:var(--text-size);}
body {font-size:var(--text-size); font-family: 'Lato', Arial, sans-serif; color: var(--main-txt-color); background: var(--main-bg);}
body > header {
	text-align: center;
	background: #818480;
	width:100%;
	min-height: var(--overhead-height);
	overflow: hidden;
	z-index:1;
	position:relative;
	font-size: 0;
	z-index: 110;
}
body > footer {
	font-size: 12px;
	text-align: center;
	width: 100%;
	min-height: 60px;
	padding: 20px;
	overflow: hidden;
	position:relative;
	background: var(--alt-bg);
	padding-top: var(--medium-padding);

}
body > nav {
	width: 100%;
	z-index:101;
	position:relative;
	background: #161516;

}
aside {}

main {min-height:calc(100vh - 388px); } /* Taille header + taille footer */
main.homePage { padding-bottom: 0; }
main > section.wrap {max-width: var(--wrap-width); margin: 0 auto;}


/* Charte graphique élémentaire
---------------------------------------------------------------------- */
h1 {
	text-align: center;
	font-size:3.333333rem;
	line-height: 1.2;
	color:var(--main-color);
	font-weight: 100;
	padding: 5vh 20px;
	letter-spacing: 1px;
	margin:0;
	position:relative;
	font-family: 'amaranth', Arial, sans-serif;
/*	background:#f00;*/
}

/*  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-size:2.833333rem;
	line-height: 1.2;
	color: var(--alt-color);
	letter-spacing: 0.5px;
	margin:2vh 0px;
	padding:0;
	font-weight: normal;
	font-family: 'amaranth', Arial, sans-serif;
}
h3 {
	font-size:2rem;
	line-height: 1.2;
	font-weight: normal;
	color:var(--alt-color);
	margin:6px 0px;
	padding:0;
	font-family: 'amaranth', Arial, sans-serif;
}
h4 {
	font-size:1.666666rem;
	font-weight: bold;
	color:#414442;
	margin:6px 0px;
	padding:0;
}
h5 {
	font-size:16px;
	font-weight: bold;
	color:#515452;
	margin:6px 0px;
	padding:0;
}
h6 {
	font-size: 1.166666rem;
	font-weight: bold;
	color:#616462;
	margin:4px 0px;
	padding:0;
}
p {
	margin:6px 0px;
	font-size: 1.25rem;
	text-align: justify;
	line-height: 1.3em;
}
a {text-decoration: none; transition: all 0.5s; color:#4195bb; cursor: pointer;}
a:hover { text-decoration: underline;}
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 {
	height: 40px;
	color:#4e4f4e;
	border:1px solid #abacaa;
	background-color: #fff;
	border-radius: 5px;
	width:100%;
	padding:8px;
	font-size:16px;
	transition: border-color 0.3s ease;
}
textarea {
	color:#4e4f4e;
	border:1px solid #abacaa;
	background-color: #fff;
	border-radius: 5px;
	width:100%;
	padding:8px;
	font-size:16px;
	transition: border-color 0.3s ease;
}
input[type='text']:focus,
input[type='password']:focus,
input[type='tel']:focus,
input[type='number']:focus,
input[type='date']:focus,
input[type='color']:focus,
input[type='range']:focus,
input[type='url']:focus,
input[type='time']:focus,
input[type='datetime']:focus,
input[type='email']:focus,
select:focus,
textarea:focus {
	border:1px solid var(--alt-color);
	outline: none;
}
button,
input[type='button'],
input[type='submit'],
.btn {
	cursor: pointer;
	padding: 6px 20px;
	color:var(--alt-color);
	font-family: 'Lato', Arial, sans-serif;
	font-size: 1.25rem;
	border-radius: 26px;
	border:1px solid var(--alt-color);
	display:inline-block;
	text-decoration: none;
	transition: all 0.3s ease;
	vertical-align: middle;
}
button:disabled,
input[type='button']:disabled,
input[type='submit']:disabled,
.btn:disabled {
	background: #bcbcbc;
	color: #dedede;
	cursor: default;
}

button.light,
input[type='button'].light,
input[type='submit'].light,
.btn.light { background-color: #fff; border: 1px solid var(--main-color); color: var(--main-color); }



.btn.valid,
.btn.add { background: var(--type-success); }

.btn.cancel,
.btn.danger,
.btn.remove,
.btn.delete { background: var(--type-error); }

.btn.warning,
.btn.warn { background: var(--type-warning); border-color: var(--type-warning); color: #fff; }

.btn.main { background: var(--alt-color); border-color: var(--alt-color); color: #fff; }

.btn.info,
.btn.edit { background: var(--type-info); }

.btn > i + span { margin-left: 10px; }

button:not(:disabled):hover,
input[type='button']:not(:disabled):hover,
input[type='submit']:not(:disabled):hover,
.btn:not(:disabled):hover {background: var(--alt-color); color: #fff; text-decoration: none; }

.btn.warning:hover,
.btn.warn:hover { background: #444; border-color: #222; }

button.light:not(:disabled):hover,
input[type='button']:not(:disabled).light:hover,
input[type='submit']:not(:disabled).light:hover,
.btn.light:not(:disabled):hover { background-color: var(--main-color); color: #fff; text-decoration: none; }

.btn.pro { border-color: var(--main-color); color: var(--main-color); }
.btn.pro:not(:disabled):hover { background-color: var(--main-color); }

input[type='checkbox'],
input[type='radio'] {cursor: pointer;}
label {cursor: pointer;}

.btn.big { padding:12px 26px; font-size:26px; border-radius: 34px;}
.btn.xbig { padding:20px 40px; font-size:48px; border-radius: 14px;}
.btn.medium {padding:8px 16px; font-size: 16px; border-radius: 5px;}
.btn.small {padding:4px 8px; font-size: 1.1666667rem; border-radius: 4px;}

.gm-style-mtc-bbw .gm-style-mtc > button { border-radius: 0; }


/* styles remis en forme pour les contenus issus de wysiwyg
---------------------------------------------------------------------- */
.content {font-size: 1.083333rem; line-height: 16px; -webkit-hyphens: auto; -moz-hyphens: auto; hyphens: auto;}
.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;}




/* -------------------------------------------------------------------
----------------------------------------------------------------------
								STRUCTURE
----------------------------------------------------------------------
---------------------------------------------------------------------- */

/*  Navigation - Générique
------------------- */
nav.mainNav {
	--nav-bg: #fefefe;
	--nav-sub-bg: #f2f2f2;

	--nav-txt-color: var(--main-color);
	--nav-sub-txt-color: var(--nav-txt-color);

	--nav-selected-txt-color: var(--main-color-dark-1);

	position: sticky;
	top: var(--overhead-height);
	background: var(--nav-bg);
	color: var(--nav-txt-color);
	display: flex; z-index: 101;
	transition: top var(--scroll-transition-time) ease;
	box-shadow: 0px 0px 13px -3px rgba(0,0,0,0.63);
}
nav.mainNav .smallLogo { flex:0; align-self: stretch;  }
nav.mainNav .smallLogo > a { display: block; height: 100%; }
nav.mainNav .smallLogo img { height: 100%; max-width: 200px; object-fit: contain; }
nav.mainNav > div { text-align: center; flex: 1; align-self: flex-end; }
nav.mainNav > div.wrapNav { display: flex; justify-content: space-between; position: relative; max-width: var(--wrap-width); margin: 0 auto; }

nav.mainNav > div > ul { font-size: 0; display: inline-block; user-select: none; -webkit-user-select: none; -moz-user-select: none; }
nav.mainNav > div > ul > li { position: relative; font-size: 1.4166666rem; font-weight: normal; display: inline-block; transition: all 0.3s ease; color: var(--nav-txt-color); vertical-align: middle; }
nav.mainNav > div > ul > li.selected { font-weight: bold; }
nav.mainNav > div > ul > li.btHome i { display: block; text-align: center; }
nav.mainNav > div > ul > li.selected,
nav.mainNav > div > ul > li:hover { color: var(--nav-selected-txt-color); }
nav.mainNav > div > ul > li > a,
nav.mainNav > div > ul > li > span { display: block;  padding: 32px 10px; transition: padding 0.5s ease; color: inherit; text-decoration: none; }
nav.mainNav.scroll > div > ul > li > a,
nav.mainNav.scroll > div > ul > li > span { padding-top: 18px; padding-bottom: 18px;  }

/* Navigation - Bouton "Hamburger"
---------------------------------------------------------------------- */
nav.mainNav .h-menu {
	--h-menu-size: 50px;
	display: none; justify-content: center; align-items: center; flex: 0 0 var(--h-menu-size);
	margin-left: auto;
	cursor: pointer;
	height: var(--h-menu-size); width: var(--h-menu-size);
	padding: 10px;
}
nav.mainNav .h-menu > span { position: relative; display: block; }
nav.mainNav .h-menu > span,
nav.mainNav .h-menu > span::after,
nav.mainNav .h-menu > span::before {
	background-color: var(--nav-txt-color);
	height: 3px; width: 100%;
	transition-duration: 0.3s; transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
}

nav.mainNav .h-menu > span::after,
nav.mainNav .h-menu > span::before {
	content: '';
	position: absolute;
	display: block;
	left: 0;
	width: 100%;
}
nav.mainNav .h-menu > span::before { top: -10px; }
nav.mainNav .h-menu > span::after { bottom: -10px; }
nav.mainNav .h-menu.on > span { transform: rotate(225deg); }
nav.mainNav .h-menu.on > span::before { top: 0; }
nav.mainNav .h-menu.on > span::after { transform: rotate(-90deg); bottom: 0; }

/* Fil d'Ariane
---------------------------------------------------------------------- */
.ariane-head {
	display: block;
	background: #fbfbfb;
	border-bottom: 1px solid var(--alt-color-light-4);
}
ul.ariane { margin: 0 auto; padding: 0 50px; height: 32px; background: #ebebeb;}
/*
ul.ariane > li { display: inline-block; }
ul.ariane > li:not(:last-of-type)::after { content: '~'; margin-left: 1em; margin-right: 1em; color: var(--text-color); }
ul.ariane > li > a,
ul.ariane > li > span { display: inline-block; padding: 15px 10px; }
ul.ariane > li > a { color: #444; }
ul.ariane > li > a:hover { color: #999; }
ul.ariane > li > span { color: #000; }
*/
ul.ariane > li { position: relative; display: inline-block; height: 32px; overflow: hidden; }
ul.ariane > li > a,
ul.ariane > li > span { display: block; padding: 10px 12px; height: 32px; }
ul.ariane > li.on > a,
ul.ariane > li.on > span { background: var(--main-color-light-3); color: var(--alt-txt-color); }
ul.ariane > li.on > a::before,
ul.ariane > li.on > span::before {
	content: '';
	position: absolute; left: -5px; top: 0; bottom: 0;
	height: 100%; width: 5px;
	background: #ebebeb;
	z-index: 0;
	transform: rotate(6deg); transform-origin: bottom;
}
ul.ariane > li.on > a::after,
ul.ariane > li.on > span::after {
	content: '';
	position: absolute; right: -5px; top: 0; bottom: 0;
	height: 100%; width: 5px;
	background: #ebebeb;
	z-index: 0;
	transform: rotate(6deg); transform-origin: top;
}

/* Header
---------------------------------------------------------------------- */
body > header .overHead {
	position: fixed;
	top: 0;
	width:100%;
	background: var(--main-color);
	color: var(--alt-txt-color);
	font-size: 1rem;
	transition: top 0.7s ease;
	z-index:200;
}
body > header .overHead > div {margin:0 auto; display:flex; justify-content: space-between; min-height: 40px; max-width: var(--wrap-width); margin: 0 auto; }
body > header .overHead > div > ul {display: flex; align-items: center;}
body > header .overHead > div > ul > li {padding:8px 5px;}
body > header .overHead > div > ul > li.digesteam-chapo { font-size: 1.1666667rem; }
body > header .overHead .areas { margin-left: auto; }
body > header .overHead .areas li {display:flex; cursor: pointer;}
body > header .overHead .areas li > a {color:#fff; text-decoration: none; padding: 0 10px; align-self: center; font-size: 1.1666667rem;}
body > header .overHead .areas li > a:hover { text-decoration: underline; }
body > header .overHead .areas li > a i {font-size: 1.1666667rem; margin-right: 10px; }
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: 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: #ebebeb; color:#000; 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: var(--main-color); }

body > header.simpleHeader { position: sticky; top: 0; z-index: 102; overflow: visible; }
body > header.simpleHeader .overHead { position: sticky; top: 0; }
body > header.simpleHeader nav.mainNav { position: static; top: unset; background: #161516; }
body > header.simpleHeader .smallLogo { opacity: 1; }

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


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

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



/* -------------------------------------------------------------------
----------------------------------------------------------------------
								STRUCTURE
----------------------------------------------------------------------
---------------------------------------------------------------------- */




/* Page
---------------------------------------------------------------------- */



/* Modal
---------------------------------------------------------------------- */

.simple-modal {
	height: auto;
	left: 50%;
	max-width: 690px;
	min-width: 300px;
	position: fixed;
	top: 0;
	transform: translateX(-50%) translateY(-50%);
	visibility: hidden;
	width: 50%;
	z-index: 20000;
	background: var(--main-bg);
	border-radius: 10px;
	box-shadow: 0 0 25px 6px rgba(0,0,0,0.4);
}
.simple-modal::before { display: none; }
.simple-modal > .title {
	background: var(--main-color);
	color: #eee;
	padding: 15px 20px;
	text-align: center;
	font-size: 18px;
	margin: 0;
	border-radius: 10px 10px 0 0
}
.simple-modal.on {visibility: visible; top: 50%;}
.simple-modal .simpleModal-content {
	margin: 0 auto;
	position: relative;
	padding: 20px;
}

.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(0, 0, 0, 0.85); 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 nav { display: flex; justify-content: center;	text-align: center; }
.simple-modal h4 {margin: 15px 0;}
.simple-modal h4 {font-size: 18px;}
.simple-modal img {max-height: 250px; object-fit: contain; width: 100%;}
.simple-modal .nav div {flex: 1;}
.modal iframe {
    height: calc(100% - 50px);
    width: 100%;
    min-height: 70vh;
}

.modal-visitor-type { margin-top: 20px; overflow: hidden; width: 690px;  }
.modal-visitor-type .simpleModal-content { padding: 0; }

.modal-visitor-type .bloc-digesteam-banner { height: 250px; border-bottom: none; margin-bottom: 20px; }
.modal-visitor-type .bloc-digesteam-banner > .wrap-content > aside > figure > img { padding-top: 20px; }

.modal-visitor-type .bloc-digesteam-banner > .wrap-content > section { padding-top: 40px; }
.modal-visitor-type .bloc-digesteam-banner > .wrap-content > section > .chapo { font-size: 16px; }

.modal-visitor-type .content { }
.modal-visitor-type .content h1 { font-size: 28px; padding: 2vh 20px; }
.modal-visitor-type .content h1 > span { line-height: 1.2em; }

.modal-visitor-type nav { margin-top: 20px; margin-bottom: 20px; }
.modal-visitor-type nav > ul { display: flex; width: 100%; justify-content: space-around; }
.modal-visitor-type nav > ul > li { margin: 0 10px; flex: 1 1; }
.modal-visitor-type nav > ul > li > a { display: flex; flex-direction: column; align-items: center; text-decoration: none; }
.modal-visitor-type nav > ul > li > span { display: block; text-align: center; margin-top: 10px; font-size: 11px; }
.modal-visitor-type nav img { height: 70px; width: 70px; object-fit: contain; margin-bottom: 20px;}
.modal-visitor-type nav .btn { margin: 0 10px; text-align: center; }

.simple-modal.modal-visitor-type.on ~ .simpleModal-overlay { background-color: rgba(0, 10, 5, 0.5); }

/* Modal - Connexion
---------------------------------------------------------------------- */
.simple-modal.connect-popin nav { justify-content: center; }

/* Rubrique
---------------------------------------------------------------------- */



/* Rangée || Colonne de blocs
---------------------------------------------------------------------- */
.struct-blocs {width:100%; padding:0; margin:0; background-color: var(--user-bg-color, transparent); }
.struct-blocs.struct-wrap {}
/*.struct-blocs.struct-wrap img {max-height: 230px;object-fit: cover;}*/
.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.struct-wrap > section { max-width:var(--wrap-width); margin:0 auto; }
.struct-blocs.struct-level-0 > section > article { padding: 5px 5px 15px 5px; }
.struct-blocs > section > article > h2 { position: relative; color: #fff; text-align: left; font-size: 56px; font-weight: bold; }
.struct-blocs > section > article > h2::after { position: absolute; top: 100%; left: 0; content: ''; width: 80%; border-bottom: 2px solid #fff; }
.struct-blocs > section > article > .content { font-size: 1.1666667rem; line-height: 1.4; color: #fff; }
.struct-blocs > section > article > .content p,
.struct-blocs > section > article > .content span,
.struct-blocs > section > article > .content li { font-size: 1.1666667rem; line-height: 1.4; }
.struct-blocs > .ct-blocs {display:flex; justify-content: space-between;}
.struct-blocs.struct-wrap > .ct-blocs { max-width:var(--wrap-width); margin:0 auto; }
.struct-blocs > .ct-blocs.column {flex-direction:column; height: 100%;}
.struct-blocs > .ct-blocs 	> * {flex:1; padding: 20px;}
/*.struct-blocs > .ct-blocs.column > * {align-self:center;}*/
.struct-blocs > .ct-2-1		> :nth-child(1)	{flex:2;}
.struct-blocs > .ct-1-2		> :nth-child(2)	{flex:2;}
.struct-blocs > .ct-1-1-2	> :nth-child(3) {flex:2;}
.struct-blocs > .ct-1-2-1	> :nth-child(2) {flex:2;}
.struct-blocs > .ct-2-1-1	> :nth-child(1) {flex:2;}
.struct-blocs > .ct-3-1		> :nth-child(1)	{flex:3;}
.struct-blocs > .ct-1-3		> :nth-child(2)	{flex:3;}
/*.struct-blocs.struct-span-2 > .ct-blocs {flex-direction: column;}*/
.struct-blocs.struct-span-1 > .ct-blocs {flex-direction: column;}
.struct-blocs.struct-span-0 > .ct-blocs {flex-direction: column;}


.struct-blocs:not(.stealth) > .ct-blocs > .bloc-content:not(.stealth) { background: #fff; border-radius: 7px; box-shadow: 2px 2px 12px rgba(0, 0, 0, 0.2); margin: 20px 5px; width: calc(100% - 10px); padding: 12px; }
.struct-blocs:not(.stealth) > .ct-blocs > .bloc-video:not(.stealth) { background: #fff; border-radius: 7px; box-shadow: 2px 2px 12px rgba(0, 0, 0, 0.2); margin: 20px 5px; width: calc(100% - 10px);}
.struct-blocs:not(.stealth) > .ct-blocs > .struct-blocs:not(.stealth) { background: #fff; border-radius: 7px; box-shadow: 2px 2px 12px rgba(0, 0, 0, 0.2); margin: 20px 5px; width: calc(100% - 10px); }
.struct-blocs.separator { border-bottom: 1px solid var(--main-color); }
.struct-blocs > .ct-blocs:not(.column) > .bloc-content > .ct-blocs.pos-bottom {  }
.struct-blocs > .ct-blocs:not(.column) > .bloc-content > .ct-blocs.pos-bottom > aside { flex: 1 1 100%; height: 100%; }
.struct-blocs > .ct-blocs:not(.column) > .bloc-content > .ct-blocs.pos-bottom > aside > figure { height: 100%; }
.struct-blocs > .ct-blocs:not(.column) > .bloc-content > .ct-blocs.pos-bottom > aside > figure > img { max-height: 100%; height: 100%; }

/* Grille
---------------------------------------------------------------------- */
.struct-grid { background-color: var(--grid-bg-color, transparent); }
.struct-grid > .struct-grid-wrap { max-width: var(--wrap-width); margin: 0 auto; display: flex; flex-direction: row; flex-wrap: wrap; justify-content: center; padding: 20px; }
.struct-grid > .struct-grid-wrap > .grid-cell { padding: 20px; }
.struct-grid.cols-2 > .struct-grid-wrap > .grid-cell { flex: 1 1 50%; max-width: 50; }
.struct-grid.cols-3 > .struct-grid-wrap > .grid-cell { flex: 1 1 33.3333333%; max-width: 33.3333333%; }
.struct-grid.cols-4 > .struct-grid-wrap > .grid-cell { flex: 1 1 25%; max-width: 25%; }
.struct-grid.cols-5 > .struct-grid-wrap > .grid-cell { flex: 1 1 20%; max-width: 20%; }
.struct-grid.cols-6 > .struct-grid-wrap > .grid-cell { flex: 1 1 16.6666666%; max-width: 16.6666666%; }

/* 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: var(--mini-padding);}
.struct-stacked article > h2 {margin-top:0; font-size:18px; line-height: 22px;}
.struct-stacked article > .chapo {font-size: 1.083333rem; line-height: 15px;}
.struct-stacked .buttons {padding:var(--mini-padding) 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: 1.1666667rem;
}

@media all and (max-width: 700px) {
	.struct-stacked .bloc-news {left: 15px !important;}
	.struct-stacked .chapo {text-align: justify;}
}

/* -------------------------------------------------------------------
----------------------------------------------------------------------
								DIVERS
----------------------------------------------------------------------
---------------------------------------------------------------------- */

/* Messages d'erreur et d'information
---------------------------------------------------------------------- */
.message,
ul.error { display: block; text-align: center; border: 1px solid #777; padding: 15px; border-radius: 5px; margin-bottom: 10px; color: var(--main-txt-color); }
.error.error-msg { display: block; text-align: center; border: 1px solid #777; padding: 15px; border-radius: 5px; margin-bottom: 10px; color: var(--main-txt-color); }
.message.align-left { text-align: left; }
.message.info { background: var(--type-info-lt); border-color: var(--type-info); color: #000; font-size: 13px; text-align: center; }
.message.ok,
.message.valid { background: var(--type-success-lt); border-color: var(--type-success); color: #000; font-size: 13px; text-align: center; }
.message.warn,
.message.warning { background: var(--type-warning-lt); border-color: var(--type-warning); color: #000; font-size: 13px; text-align: center; }
.message.error,
.error.error-msg { background: var(--type-error-lt); border-color: var(--type-error); color: #000; font-size: 13px; text-align: center; }
.error.error-msg li { text-align: center; }
.error.error-msg li:not(:last-child) { margin-bottom: 5px; }
ul.error.error-info { background: var(--type-success-lt); border-color: var(--type-success); }
ul.error li { text-align: center; }
ul.error li:not(:last-child) { margin-bottom: 5px; }

/* -------------------------------------------------------------------
----------------------------------------------------------------------
								BLOCS GENERIQUES
----------------------------------------------------------------------
---------------------------------------------------------------------- */


/* Contenu
---------------------------------------------------------------------- */
.bloc-content > .pos-bottom {flex-direction: column-reverse;}
.bloc-content > .pos-top {flex-direction: column;}
.bloc-content > .pos-right {flex-direction: row-reverse;}
.bloc-content figure {width:100%; height: 100%; font-size: 0;}
.bloc-content figure img {width:100%; height: 100%; object-fit: cover;}
.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 h1 {font-size:24px; line-height: 1.2; padding:0; margin-bottom:24px;}
.bloc-content .hgroup h2 {font-size:22px; line-height: 1.2; font-weight: normal; font-variant: none; padding:0; margin-bottom: 16px; color:#555;}
.bloc-content .hgroup h3 {font-size: 1.083333rem; 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: 1.25rem; text-align: left; line-height: 1.6;}
.bloc-content .content p {font-size: 1.25rem; text-align: left; line-height: 1.6; margin: 0 0 15px 0; }
.bloc-content .content li {font-size: 1.25rem; text-align: left; line-height: 1.6;}
.bloc-content .content h1 {font-size:24px; line-height: 1.2; padding: 0; margin: 10px 0; }

.bloc-content .bottom-line { font-size: 12px; font-style: italic; text-align: left; line-height: 1.3; }
.bloc-content .bottom-line p,
.bloc-content .bottom-line span
.bloc-content .bottom-line li { font-size: 12px; font-style: italic; text-align: left; line-height: 1.3; }

.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 { display: flex; flex-wrap: wrap; justify-content: end; margin-top:20px;}
.bloc-content > .align-center .buttons {justify-content: center;}
.bloc-content > .align-start .buttons {justify-content: center;}
.bloc-content .buttons a {
	margin: 5px;
}
.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: 1.25rem;}
.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;}

/* Titre
---------------------------------------------------------------------- */
.bloc-title {}
.bloc-title h1,
.bloc-title h2 {margin:0px;	padding: 0 15px;}
.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; flex-direction: column; justify-content: center;}
.struct-blocs > .ct-blocs.column > .bloc-title h1,
.struct-blocs > .ct-blocs.column > .bloc-title h2 {flex:1; display:flex; flex-direction: column; justify-content: center;}


/* Texte
---------------------------------------------------------------------- */
.bloc-text {font-size: 1.083333rem; line-height: 15px; }
.bloc-text.align-center * {text-align: center}
.bloc-text.align-center .content {text-align: center}
.bloc-text.align-end * {text-align: right}
.bloc-text.align-end .content {text-align: right}
.bloc-text > div {padding: 0 20px;}
.bloc-text .hgroup {}
.bloc-text .hgroup h2 {}
.bloc-text .hgroup h3 {}
.bloc-text .content {}
.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 img {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; 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;
	width: 100% !important;
	padding: 40px 20px !important;
}

.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 { position: relative; width: 100%; padding-bottom: 56.25% !important; }
.bloc-video iframe {
	display: block;

	position: absolute; top: 0; left: 0; right: 0; bottom: 0;

	width: 100%;
	height: 100%;

	z-index: 0;
}
.struct-wrap .bloc-video iframe {max-width:var(--wrap-width); max-height: 670px;}
.bloc-video .video-container.highlight iframe {}

/* Bouton
---------------------------------------------------------------------- */
.bloc-button {padding:3vh 3vw;}
.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 {}


/* 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: flex; 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: 1.166666rem;}
.bloc-testimonial section > .contact .cpy {}
.bloc-testimonial section > .contact .function {font-style: italic;}

/* Personne
---------------------------------------------------------------------- */

.bloc-person { text-align: center;  display:flex; flex-direction:column; justify-content: center; align-items: center; }
.bloc-person.has-bio {cursor: pointer;}
.bloc-person > aside {}
.bloc-person > aside figure {text-align: center; }
.bloc-person > aside figure img {
	border-radius: 50%;
	display: block;
	margin: auto;
	object-fit: cover;
	height: 200px;
	width: 200px;
	border: 1px solid var(--main-color);
	box-shadow: 1px 1px 10px rgba(0, 0, 0, 0.15);
}
.bloc-person > section {text-align: center; padding-top:15px;}
.bloc-person > section > h2 {font-variant: none; color: #fff; text-align: center; font-size:20px; line-height: 26px; font-weight: normal; padding:0; margin:0;}
.bloc-person > section > .cpy {display:block; text-align: center; font-size: 1.25rem; line-height: 17px; font-weight: normal; color:#c4191a;}
.bloc-person > section > .function {display:block; text-align: center; font-size: 1.083333rem; line-height: 17px; color: #eee; }
.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: flex; margin: 10px 0; justify-content: space-around;}
.bloc-person > section > article .social a {}

.detailList .bloc-person {display:flex; flex-direction: row; margin: 6vh;}
.detailList .bloc-person > aside {flex:1;}
.detailList .bloc-person > aside figure {padding: 0 5vw;}
.detailList .bloc-person > aside figure img {width:auto; height:auto;}
.detailList .bloc-person > section {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: 1.25rem; font-weight: bold; line-height: 20px; }
.smallList .bloc-person > section > .cpy {font-size: 1.083333rem; line-height: 16px; }
.smallList .bloc-person > section > .function {font-size: 1rem; 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: 1.083333rem; text-align: right; font-weight: normal; color:#c4191a;}
#personBio aside .company {text-align: right; font-weight: bold; color:#7F8284; font-size: 1.25rem;}
#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: 1.25rem; color:#7F8284;}

@media all and (max-width: 1000px) {
	#personBio {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:var(--box-color);
	padding:2vw;
	top:0;
	left:0;
	width:100%;
	height:100%;
	display:flex;
	flex-direction: column;
	justify-content: center;
}
.bloc-covered .details > h2 {text-align: center; color:var(--main-color); margin:0; padding:1vh 0 3vh 0; font-size:60px; line-height: 68px;}
.bloc-covered .details > .content {text-align: center; color:var(--alt-color); font-size:30px; line-height: 36px;}
.bloc-covered .details .links {}
.bloc-covered .details .link {text-align: center; padding:4vh 0 0 0;}
.bloc-covered .details .link a {background: #6f6f6f; color: white; 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
---------------------------------------------------------------------- */
.bloc-slider {height: 80vh;}
.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: center;
	top: 50%;
	transform: translateY(-50%);
	width: 100%;
	z-index:2;
	color:#fff;
}
.bloc-slider .slide-info > h2,
.bloc-slider .slide-info > div.chapo {margin: 10px 0; text-shadow: 0 1px 3px rgba(0, 0, 0, 0.6);}
.bloc-slider .slide-info > h2 {font-weight: normal; color:#fff; text-align: center;}
.bloc-slider .slide-info > div.chapo {display: block; font-size: 20px; color:#fff;text-align: center;}
.bloc-slider .slide-info .link {text-align: center;}
.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;
}



/* Galerie - Blocs
---------------------------------------------------------------------- */
.bloc-gallery {}
.bloc-gallery article {margin: auto 20px;}
.bloc-gallery ul {column-count: 4; column-gap: 0; padding: 10px 0;}
.bloc-gallery li {border: 10px solid #000; background: #000; border-radius: 17px; break-inside: avoid; cursor: pointer; margin: 5px; transition: all 0.3s ease;}
.bloc-gallery li:hover {background-color: #F2F2F2; border: 10px solid #F2F2F2;}
.bloc-gallery li img {border-radius: 8px; display: block; width: 100%;}
.bloc-gallery li:hover img {opacity: 0.9;}

.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;
	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 img {width: 100%}
.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: flex; 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
---------------------------------------------------------------------- */
.bloc-counter { display: flex; flex-direction: column; align-items: center; --color: var(--main-color); --color-container: #eee; padding: 15px; }
.bloc-counter .title { color: var(--color); font-size: 28px; text-align: center; line-height: 32px; }
.bloc-counter .icon { background: var(--color-container); padding: 15px; border: 3px solid var(--color); border-radius: 4px; transform: rotate(45deg); margin-bottom: 20px; }
.bloc-counter .icon > i { font-size: 34px; color: var(--color); transform: rotate(-45deg); width: 35px; height: 35px; text-align: center; }
.bloc-counter .counter svg { height: 150px; }

.counter svg .value-container { stroke: var(--color-container); stroke-width: 10; }
.counter svg .text { fill: var(--color); }
.counter svg .value { stroke: var(--color); stroke-width: 10; }
.counter svg .cursor { fill: var(--color); }



/* Fichier à télécharger
---------------------------------------------------------------------- */


/* Blurb
---------------------------------------------------------------------- */
.bloc-blurb { border-radius: 7px; background-color: #fff; display:flex; flex-direction: column; overflow: hidden; box-shadow: 2px 2px 12px rgba(0, 0, 0, 0.2); transition: all .4s ease;}
.bloc-blurb > a { flex: 1 1 100%; display:flex; flex-direction: column; height: 100%; text-decoration: none; }
.struct-grid .grid-cell > .bloc-blurb { height: 100%; }
.struct-grid .grid-cell > .bloc-blurb:hover { transform: scale(1.05); }
.bloc-blurb figure { flex: 1 1 44%; max-height: 44%; width:100%; text-align: center; align-self: center; transition: all .5s ease; }
.bloc-blurb.no-content figure { flex: 1 1 70%; max-height: 70%; }
.bloc-blurb figure img {width: 100%; height:100%; object-fit: cover;}
.bloc-blurb figure i {font-size:40px; backgroun-color:#f1f1f1; width:80px; text-align:center;}
.bloc-blurb div.blurb-content { flex: 1 1 56%; padding:16px; text-align: center; background: #fff; color:#fff; max-width:100%;  align-self: center; height:100%; width:100%;}
.bloc-blurb.no-content div.blurb-content { display: flex; justify-content: center; align-items: center; }
.bloc-blurb div.blurb-content > h2 {font-size:20px; line-height: 1.3; color: #000; text-align: left; padding:0 0 8px 0; margin:0;}
.bloc-blurb.no-content div.blurb-content > h2 { text-align: center; }
.bloc-blurb div.blurb-content > .content {font-size: 1.25rem; text-align: left; color: #333; line-height: 1.6;}
.bloc-blurb div.blurb-content > .content p {font-size: 1.25rem; text-align: left; color: #333; line-height: 1.6;}

.bloc-blurb.pos-bottom {flex-direction: column-reverse;}
.bloc-blurb.pos-left {flex-direction: row;}
.bloc-blurb.pos-right {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; 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: 2px solid rgba(0, 0, 0, 0.2);
	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;
}
.back-to-top.on {opacity: 1;}

.back-to-top .fa {font-size: 25px; padding: 15px;}
.back-to-top .fill {
	background-color: rgba(255, 255, 255, 0.4);
	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 {}
.bloc-socials svg {height: 80px; width: 80px; padding: 15px; transform: scale(0.75); }
.bloc-socials > .fa-share-alt {display:none;}
.bloc-socials ul {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:15;}
.bloc-socials.lateral ul {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: 1.166666rem; line-height: 20px; color:#555; text-align: left;}
.bloc-program table.program td .title {display: block; color:#555; font-weight: bold; font-size: 1.25rem;}
.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 {flex:1; align-self: center;}
.bloc-program .activity .speakers {}
.bloc-program .activity .speakers h3 {font-size: 1rem; 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: 1.166666rem; 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: flex;
	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: 1.1666667rem;
	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: flex;	justify-content: center; flex-wrap: wrap;}
.event-attendees li {position: relative;}
.event-attendees .details {width: 100%;}
.event-attendees figure {display: flex;	height: 20vw; width: 20vw;}
.event-attendees figure img {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: flex; 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: 1.1666667rem; 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; flex-direction:column;}
.all-in-one.aio-col > header {display:flex; flex-direction:row; background: #000; color:#aaa;}
.all-in-one.aio-col > header figure {width:50%; 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; flex-direction:column; justify-content:center; min-height: 240px;}
.all-in-one.aio-col > header .date > div {display:flex; flex-direction:row;}
.all-in-one.aio-col > header .date span { font-size:30vh; line-height: 30vh; justify-self:end; }
.all-in-one.aio-col > header .date > div > b {display:flex; 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; 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: 1.166666rem; line-height: 18px; margin-bottom: 4vh;}
.all-in-one.aio-col > div > aside .contact span {font-size: 1.166666rem; display:block; line-height: 18px; }
.all-in-one.aio-col > div > aside .contact a {font-size: 1.166666rem; 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: 1.166666rem; 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: flex; 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; flex-direction:row;}
.event-tomorrow > section > div {padding:0 2vw;	flex:1;}

.event-tomorrow .date {display:flex; flex-direction:column; justify-content:center; }
.event-tomorrow .date > div {display:flex; flex-direction:row;}
.event-tomorrow .date span { font-size:40vh; line-height: 30vh; justify-self:end; }
.event-tomorrow .date > div > b {display:flex; 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: 1.166666rem; 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: flex; flex-direction: column; justify-content: center;}
.event-tomorrow .qrCode img {width:200px; height:200px; margin: 10px;}



/* Hôtel
---------------------------------------------------------------------- */
.bloc-hotel {
	display: flex;
	margin: 10px;
	overflow: hidden;
	padding: 10px;
	position: relative;
}
.bloc-hotel .buttons {flex: 1; padding:20px 0; text-align: center; display: flex;}
.bloc-hotel .buttons > i {align-self: center;}
.bloc-hotel .buttons > div {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: 1.166666rem; line-height: 17px;}

.bloc-hotel .details { 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: flex; font-size: 1.083333rem; line-height: 16px;}
.bloc-hotel .details .contact span {display: block;}

.bloc-hotel aside {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: 75vh;}
.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; flex-direction:row;}
.bloc-exhibitor aside { width: 30%; display: inline-block; align-self: center; }
.bloc-exhibitor aside img { max-height: 300px; }
.bloc-exhibitor section { width: 70%; display: inline-block; justify-content:center; display:flex; 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 { flex:1; }


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

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


/* Liste d'Exposants
---------------------------------------------------------------------- */
.exhibitorsPage {max-width: 1000px; margin:0 auto; }
.exhibitors.largeList {justify-content:center; display:flex; flex-direction:row; flex-wrap:wrap;}
.exhibitors .bloc-exhibitor > figure {flex:1; justify-content:center; display:flex; flex-direction:column; }
.exhibitors.largeList .bloc-exhibitor {flex-direction:column; width:25%; display:flex; }
.exhibitors.largeList .bloc-exhibitor img {width:80%; }
.bloc-exhibitor > div > h2 {text-align: center; font-size: 1.166666rem; padding-top:10px;}

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


/* 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: 60px; width:100%; object-fit: contain;}
.bloc-sponsor > div {padding-top:10px; text-align: center;}
.bloc-sponsor > div .cpy {font-size: 1.166666rem; font-weight: bold; color: #666; display: block; text-align: center;}
.bloc-sponsor > div .type {font-size: 1.166666rem; 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; margin: 0 auto; margin-bottom: 20px; max-width: var(--wrap-width); padding: 20px; }
.bloc-sponsors h2 {
	text-align: left;
	line-height: 1;
	margin: 0;
	color: var(--main-color);
	font-size: 24px;
}
.bloc-sponsors > article { display: flex; align-items: center; }
.bloc-sponsors:not(.with-content) > article { flex-direction: column; align-items: flex-start;  }
.bloc-sponsors > article.content { font-size: 1.25rem; line-height: 1.6; }
.bloc-sponsors.with-content .sponsors { margin-left: auto; }
.bloc-sponsors .sponsors > ul { display: flex; flex-wrap: wrap; justify-content: flex-end; }
.bloc-sponsors .sponsors > ul img { height: 50px; }
.bloc-sponsors > div {display: flex; flex-wrap: wrap; justify-content: center; width: 100%; }
.bloc-sponsors > div > ul { width: 100%; height: 180px !important; }
.bloc-sponsors > div > ul:not(.items) > li { display: none; }
.bloc-sponsors > div > ul.items > li { display: flex; justify-content: center; align-items: center; height: 100%; }
.bloc-sponsors .bloc-sponsor {margin: 0 10px; align-self: center;}

/* Evenement - Demain
---------------------------------------------------------------------- */


/* -------------------------------------------------------------------
----------------------------------------------------------------------
								FORMULAIRE
----------------------------------------------------------------------
---------------------------------------------------------------------- */

/* Formulaire - structure
---------------------------------------------------------------------- */

.digiForm {width: 100%;margin: 0 auto; padding:0 20px;}

.digiForm article {font-size: 0; margin:16px 0;}
.digiForm article > label{width:20%; text-align: right; padding-right:20px; }
.digiForm article label  {font-size: 16px; display: inline-block; color:#727571; vertical-align: middle;}
.digiForm article > div {width:70%; max-width: 700px; font-size: 16px; text-align: left; display: inline-block; vertical-align: middle;}
.digiForm article.formTxt {font-size: 1.083333rem; line-height: 14px; margin-left: 30%; max-width: 700px; text-align: justify;}

.form-top .digiForm {max-width: var(--wrap-width);padding: 0 10px;}
.form-top .digiForm article {}
.form-top .digiForm article > label {width:100%; display:block; text-align: left; padding-right: 0; margin-bottom: 5px;}
.form-top .digiForm article > div {width:100%; max-width: none; display: block;}
.form-top .digiForm article.formTxt {margin-left:0; max-width: none;}
.form-top .digiForm article.formCheckbox { display: flex; flex-direction: row-reverse; }
.form-top .digiForm article.formCheckbox.formCheckboxes { display: flex; flex-direction: column;; }
.form-top .digiForm article.formCheckbox > div { flex: 0 0; }

.digiForm .form-title:not(:empty) {
	font-size:20px;
	font-weight: normal;
	display: block;
	color:#515352;
	margin:20px 0 6px 0;
	border-bottom:1px solid #031207;
	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: 1.166666rem; color:#d00; }

.digiForm .formCheckbox label {vertical-align: top; font-size: 1.166666rem;}
.digiForm .formCheckbox input {vertical-align: top; margin: 0 5px 0 0}

.digiForm .formRadio ul {text-align: left;}
.digiForm .formRadio ul li {display: inline-block; padding-right: 20px;}
.digiForm .formRadio ul li label {text-align: left; font-size: 1.166666rem; color:#4e4f4e;}

form nav { text-align: center; }


/* Formulaire - Errors
---------------------------------------------------------------------- */
form article.error label { color:#d00;}
form article.error input { border-color:#d00; color:#d00; box-shadow : 0 1px 4px rgba(0, 0, 0, 0.2) inset, 0 0 2px 1px rgba(240, 61, 31, 0.3);}

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



/* 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: 1rem; }



/* 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;
	color: #444;
	border: 1px solid #444;
	text-align: center;
	border-radius: 100%;
	font-size: 18px;
	font-weight: normal;
	padding-top: 5px;
	position: absolute;
	right: -15px;
	top: -15px;
	width: 30px;
	height: 30px;
	z-index: 1;
	cursor: pointer;
	transition: all 0.2s ease-in;
}
.close:hover::before { color: #4343da; border-color: #4343da; }

/* Page Formulaire
---------------------------------------------------------------------- */
.page-form { padding-bottom: 50px; padding-top: 0; }
.page-form.struct-wrap { max-width: var(--wrap-width); margin-left: auto; margin-right: auto; }
.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;}
.page-form .formOk { padding: 0 20px; }
.page-form .formKo { padding: 20px; }


/* Login - Indentification
---------------------------------------------------------------------- */
.digiForm.login article > label { padding-top: 8px;	vertical-align: top;}
.forgetPwd, .backLogin {cursor: pointer; font-size:11px; padding:5px; display:block;}
.forgetPass h3 {text-align: center;}



/* Date Picker
---------------------------------------------------------------------- */
.date-Picker {
	--dp-color-bg: var(--alt-bg);
	--dp-color-fg: #fefefe;
	--dp-color: var(--main-color);

	display: none;
	position:absolute; top:0; left:120px; z-index:9100;
	background: var(--dp-color-bg); border-radius:4px;
	box-shadow: 0px 0px 15px rgba(0, 0, 0, 0.3);
}
.date-Picker .chooseDate { display: none; }
.date-Picker header {
	display: flex;
	align-items: center;
	margin:2px;
	height: 30px;
	border-radius: 2px;
	background: var(--dp-color-bg);
	color: var(--dp-color-fg);
	font-size:0px;
	text-align: center;
	font-weight: bold;
}
.date-Picker header span {
	width:15%;
	font-size:18px;
	color:var(--dp-color-fg);
	margin-top:-3px;
	display: inline-block;
	cursor: pointer;
	text-align: center;
}
.date-Picker header span.t {
	width:70%;
	font-size: 1rem;
	vertical-align: top;
}
.date-Picker>div.main {
	position:relative;
	margin:2px;
	padding:3px;
	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: var(--dp-color-bg);
	font-size: 1rem;
	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:var(--dp-color);
	font-weight: bold;
	padding:8px;
}
.date-Picker table tr>td table tbody td {
	color:var(--dp-color);
	padding:8px;
	cursor: pointer;
	text-align: center;
}
.date-Picker table tr > td table tbody td.p {
	color:var(--dp-color-fg);
}
.date-Picker table tr>td table tbody td.off {
	color:#bbb;
}

.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:var(--dp-color-fg);
	background:var(--dp-color);
	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:none; position:absolute; background:#fff;
	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: 1.25rem; 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: 1.166666rem;
	padding:2px 5px;
	cursor: pointer;
}

/* StateFlow
---------------------------------------------------------------------- */
.stateflow { position: relative; margin: 20px 0; --sf-color: var(--main-color); --sf-bg: #ccc; --sf-line-height: 14px; }
.stateflow .line { position: relative; background: var(--sf-bg); height: var(--sf-line-height); width: 100%; margin: 10px 0; border-radius: 10px; overflow: hidden; }
.stateflow .line > span { position: absolute; background: var(--sf-color); top: 0; left: 0; height: var(--sf-line-height); }
.stateflow ul { width: 100%; display: flex; justify-content: space-between; }
.stateflow ul > li { position: relative; display: flex; justify-content: center; align-items: center; flex: 1 1; height: 34px; font-weight: bold;  font-size: 1.1em; }
.stateflow ul > li::before { display: flex; justify-content: center; align-items: center; font-size: 16px; content: ''; font-family: 'FontAwesome'; position: absolute; top: -34px; height: 34px; width: 34px; background: var(--sf-bg); border-radius: 50%; left: 50%; transform: translateX(-50%); }
.stateflow ul > li.on { color: var(--main-color); }
.stateflow ul > li.on::before { content: '\f00c'; background: var(--sf-color); color: #fff; }

@media all and (max-width: 599px) {
	.stateflow ul > li { height: 100px; width: 30px; }
	.stateflow ul > li > span { position: absolute; transform: rotateZ(-70deg) translateY(-16px); width: 100px; text-align: right; padding-right: 10px; }
}

/* Liste d'items
---------------------------------------------------------------------- */
.item-list li { display: flex; flex-wrap: wrap; }
.item-list li:nth-child(even) { background: #f2f2f2; }
.item-list li > .icon { display: flex; align-items: center; justify-content: center; width: 50px; height: 50px; }
.item-list li > .icon > i { font-size: 20px; color: var(--main-color); }
.item-list li .title { font-size: 18px; line-height: 22px; margin: 0; text-align: left; color: var(--main-color); }
.item-list li > div > * { padding: 5px; }
.item-list li .infos {}
.item-list li .infos > span { display: block; margin-bottom: 2px; }
.item-list li .notification { flex: 1 1 100%; width: 100%; }
.item-list li .notification > .message { font-size: 1.25rem; }
.item-list li nav.actions { display: flex; margin-left: auto; padding: 15px; flex-direction: column; justify-content: center; }
.item-list li nav.actions > .btn { margin: 3px; text-align: left; }
.item-list li.empty { display: flex; flex-direction: column; justify-content: center; align-items: center; height: 100px; font-size: 20px; }
.item-list li.empty > * { margin: 5px; }
.item-list li.hidden { display: none; }
.item-list li nav.selector { display: flex; justify-content: center; align-items: center; min-height: 40px; width: 50px; margin: 0; }
.item-list li.selectable { cursor: pointer; transition: background 0.4s ease, color 0.4s ease; }
.item-list li.selectable.selected { background: var(--alt-color); color: #fff; }
.item-list li.selectable.selected h2 { color: #fff; }
.item-list li.disabled { opacity: 0.5; background: #ccc; }

/* Divers
---------------------------------------------------------------------- */
.infos-list { font-size: 1.2em; }
.infos-list > article:not(:last-child) { margin-bottom: 4px; }
.infos-list > article .name { font-weight: bold; }

/* Définition importantes, prioritaires sur les autres déclarations
---------------------------------------------------------------------- */
.hide, .hidden { display:none; }

/* Bloc Download */
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: 0 auto; padding: 15px; background: #f7f7f7; min-height:160px}
figure.bloc-download div {display:flex;}
body > main > section.download {margin-top: 0;}

/* Call-To-Action */
.bloc-call-to-action { margin-top: 20px; margin-bottom: 20px; }
.bloc-call-to-action .containerLogo {background-color: #54378a; width: 80vw; margin: auto; color:white;display :flex; flex-direction: row;padding : 10px;}
.bloc-call-to-action .containerLogo .title{font-size: large; padding:5px 0; text-align: center; color:white;}
.bloc-call-to-action .containerLogo .content{font-size: small; text-align:center; width: auto; font-size: 16px;}
.bloc-call-to-action .containerLogo figure > img{width: 100%; height: auto;}
.bloc-call-to-action .containerLogo figure {text-align: left; align-self: center;}
.bloc-call-to-action .containerLogo div {padding: 10px;}

.bloc-call-to-action .containerImg {margin-top: 10px;position: relative;width: 80vw; height: 340px;margin-left: 10vw;margin-bottom: 20px;}
.bloc-call-to-action .containerImg figure {text-align: left;}
.bloc-call-to-action .containerImg figure img{width: 100%; height: 340px; opacity: 0.8; object-fit: cover;}
.bloc-call-to-action .containerImg .btn{position: absolute; top: 40%; left: calc(50% - 25%); z-index: 1000; background-color: #4343da;}
.bloc-call-to-action .containerImg .btn:hover{color: #444}
.bloc-call-to-action .containerImg .content{width: 40%; color: white; background-color: transparent;position: absolute; top: 70%; left: calc(50% - 25%); z-index: 5; padding: 10px;}

.bloc-call-to-action .containerImgLogo {margin-top: 10px;margin-top: 10px; display: flex; position: relative;width: 80vw; height: 340px;margin-left: 10vw;margin-bottom: 20px;}
.bloc-call-to-action .containerImgLogo figure {text-align: left;}
.bloc-call-to-action .containerImgLogo figure img{width: 40vw; height: 340px; opacity: 0.7; object-fit: cover;}
.bloc-call-to-action .containerImgLogo .btn{position: absolute; top: 40%; left: 10%; z-index: 10; background-color: #4343da;}
.bloc-call-to-action .containerImgLogo .btn:hover{color: #4343da; background: white;}
.bloc-call-to-action .containerImgLogo .content{width: 35%; color: white; background-color: transparent; position: absolute; top: 70%; left: 10%; z-index: 5; padding: 10px;}
.bloc-call-to-action .containerImgLogo .right { width: 60vw; height: min-content; display: flex; justify-content: center; align-items: center; margin: auto; }
.bloc-call-to-action .containerImgLogo .right img { max-height: 200px; max-width: 40vw; }
.bloc-call-to-action { background-color: var(--bloc-bg-color); }
.bloc-call-to-action .containerNone { width: 100%; padding: 20px; max-width: var(--wrap-width); margin: 0 auto; color: #FFF; }
.bloc-call-to-action .containerNone .title{text-align: center; padding: 15px 0; color: #111}
.bloc-call-to-action .containerNone .content{text-align: center; padding: 0;}
.bloc-call-to-action .containerNone .containerButton{text-align: center; margin-top: 10px;}
.bloc-call-to-action .containerNone .containerButton > .btn { background-color: #fff; }
.bloc-call-to-action .containerNone .containerButton > .btn:hover { color: #000; }

.staff .members {
	align-items: center;
	display: flex;
	margin: 1vh 0vw;
}
.staff .members > div:first-child,
.staff .members ul {
	flex: 1;
}
.staff .members .button {
	display: table;
	padding: 0;
}
.staff .members .add {
	font-size: 20px;
	line-height: 50px;
	text-align: center;
	width: auto;
	padding:10px;
	display: inline-block;
	color:#333;
	text-decoration: none;
}
.staff .members ul {
/*	border-top: 1px solid;*/
	margin-right: 7vw;
}
.staff .members li {
/*	border-bottom: 1px solid;*/
	line-height: 50px;
}
.staff .members .fa-plus {
	position: relative;
	top: 2px;
}
.staff .members aside {padding:20px 0;}
.staff .compteur {padding:40px 0; width:100%;}
.staff .compteur ul {display:flex; justify-content: space-between;}
.staff .compteur ul li {margin:10px 5%; line-height: 30px; padding:20px; flex:1; }
.staff .compteur ul li span {font-size:16px; display: block; text-align: center;}
.staff .compteur ul li > b {font-size:28px;display: block; text-align: center; padding:10px;}
.staff .compteur ul li b b {font-size:16px;}

.listBar {display: none;}

fieldset[data-codeform*="team_staff"],
fieldset[data-codeform*="partner_doc"] {
	width: 100%;
}


article.central  {
	text-align: right;
	padding: 0 20px;
}



.staff .member {
	display: flex;
	line-height: 20px;
}
.staff .member .role {
	margin-right: 10px;
	padding: 0 10px;
	width: 20%;
}
.staff .member .fullname {
	width: 40%;
}
.staff .member .func {
	font-size:11px;
	color:#888;
}
.staff .member .mobile {
	margin-left: 10px;
	padding: 0 10px;
	width: 80px;
	color:#4343da;
	width: 25%;
}
.staff .member .edit {
	margin-left: auto;
	margin-right: 10px;
	font-size:20px;
	color:#555;
	width: 6%;

}

.button {
    border: 1px solid #333;
	font-size: 20px;
	line-height: 50px;
    border-radius: 4px;
    cursor: pointer;
    display: inline-block;
    overflow: hidden;
    position: relative;
    transition: all 0.3s;
	text-align: center;
	width: auto;
	padding:10px;
	color:#333;
	text-decoration: none;
}

.underFooter { color: white; font-size: 1.1666667rem; }
.underFooter > ul.wrapAlone { max-width: var(--wrap-width); margin: 0 auto; display: flex; justify-content: flex-start; }
.underFooter li:not(:last-child) { margin-right: 10px; }
.underFooter li i { font-size: 35px; padding: 5px;}
.underFooter li i:hover {
	color: var(--alt-color-dark-1);
}

@media screen and (max-width: 600px) {
	.button {
		width: 90%;
		font-size: 1.1666667rem;
	}
	.staff .members .button {
			font-size: 1.1666667rem;
	}
	.staff .compteur ul {
		flex-direction: column;
	}
	.staff .members ul {
		margin-right: 0;
		width: 90%;
	}
	.account.staff h2 {
		text-align: center;
	}
	.staff .members {
		flex-direction: column;
	}
	.staff .member .role {
		width: 40%;
	}
	.staff .member .mobile {
		width: 30%;
	}
}