/*******************/
/**  MAIN STYLES ***/
/*******************/

@font-face {
    font-family:"Hurtmold";
    src:url("../fonts/hurtmold.woff2") format("woff2"),url("../fonts/hurtmold.woff") format("woff"),url("../fonts/hurtmold.ttf") format("truetype");
    font-style:normal;font-weight:400;
}

:root {
	--fushia  		: #ea0072;
	--dark-grey 	: #404040;
	--light-grey 	: #9fafbc;
	--gradient-1 	: #e7017e;
	--gradient-2 	: #be0068;
	--copper 			: #c97f12;
	--text 				: #494949;
}

body {
	text-rendering: geometricPrecision;
	font-smooth: always;
					font-smoothing: antialiased;
		 -moz-font-smoothing: antialiased;
 	-webkit-font-smoothing: antialiased;
 	font-family: "Exo";
 	font-weight: 500;
 	width: 100vw;
 	height: 100vh;
 	overflow: hidden;
 	background-color: #e6edf3;
 	color: var(--text);
}

body > section {
	height: 100%;
	margin-left: 120px;
}

a,
a:hover {
	color: var(--fushia);
}

a:focus,
a:active {
	outline:0;
}

#mainWrapper {
	display: flex;
	flex-direction: row;
	height: 100%;
}

#mainNav {
	position: fixed;
	top: 0;
	left: 0;
	width: 120px;
	height: 100%;
	z-index:9999;
	background-color: #fff;
	border-right: 3px solid #dbdbdb;
}

#content {
	position: relative;
	padding: 100px;
	flex: 1 0 50%;
	display: flex;
  flex-direction: column;
  background: #e6edf3;
}


#content .wp-block-image img {
	height: auto;
}

body.home #content .pageTitleZone {
	min-height: 147px;
}

/*
.cbi .pageTitleZone {
	min-height: 170px;
}

.page-template-glossary .pageTitleZone {
	min-height: 170px;
}

.submenus .pageTitleZone,
.submenus + #sidebarPanel .pageTitleZone {
	min-height: 70px;
}
*/
.pageTitleZone h1 {
	font-weight: bold;
	font-size: 3rem;
	color: var(--fushia);
}

.cbi .pageTitleZone h1 {
	font-size: 1.2rem;
}

.pageTitleZone h1 strong {
	color: var(--text);
}

.pageTitleZone h2 {
	font-size: 1.4rem;
}

.cbi .pageTitleZone h2 {
	font-size: 2rem;
}

.pageContentZone {
	min-height: 70px;
}

.cbi .pageContentZone {
	min-height: 60px;
}

.pageContentZone .bordure-grise {
	position: relative;
	padding-bottom: 5px;
}


.pageContentZone .bordure-grise:after {
	content: "";
	position: absolute;
	bottom: 0;
	left: 0;
	width: 30px;
	height: 4px;
	background: #b6b6b6;
	display: block;
}

.cbi .pageTitleZone strong.copper {
	color: var(--copper);
	font-size: 1.4rem;
	margin-bottom: 10px;
}


#pageLinksArrows {
	text-align: center;
	padding-top: 40px;
}

#pageLinksArrows button {
	-webkit-appearance: none;
	width: 40px;
	height: 40px;
	border-radius: 99rem;
	background-color: #d4dde5;
	display: inline-block;
	text-indent: -9999px;
	border: none;
	position: relative;
	transition: all 300ms ease;
	box-shadow: 0 0 20px rgba(0,0,0,.3);
}

#pageLinksArrows button:after {
	position: absolute;
	top: 50%;
	left: 50%;
	width: 16px;
	height: 16px;
	transform: translate(-50%,-50%);
	transition: all 300ms ease;
	content: "";
	display: block;
	background-color: #fff;
  -webkit-mask: url(../images/arrowUp.svg) no-repeat center;
  mask: url(../images/arrowUp.svg) no-repeat center;
}

#pageLinksArrows button.down:after {
	transform: translate(-50%,-50%) rotate(180deg);
}

#pageLinksArrows button:hover {
	background-color: #fff;
}

#pageLinksArrows button:hover:after {
	background-color: var(--copper);
}

#pageLinksArrows button + button {
	margin-left: 20px;
}

/***** PAGE INTRODUCTION *****/
body.page-template-introduction #content {
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center center;
	display: flex;
  justify-content: center;
}

body.page-template-introduction .page-content {
	margin: 0 8%;
}

body.page-template-introduction .page-content h1 {
	color: var(--fushia);
	font-size: 4rem;
	font-weight: bold;
}

body.page-template-introduction .page-content p {
	font-weight: bold;
	font-size: 2rem;
}

.playLink {
	margin-top: 100px;
	display: block;
	position: relative;
	padding-left: 60px;
	min-height: 50px;
	line-height: 50px;
	color: var(--text);
	font-size: 1.2rem;
	font-weight: bold;
	transition: all 300ms ease;
}

.playLink:hover {
	text-decoration: none;
	color: var(--text);
	padding-left: 70px;
}

.playLink:before {
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
	width: 48px;
	height: 48px;
	content: "";
	border-radius: 24px;
	overflow: hidden;
	background-color: #fff;
	display: block;
	border: 3px solid var(--fushia);
	transition: all 300ms ease;
}

.playLink:hover:before {
	background-color: var(--fushia);
	cursor: pointer;
}

.playLink:after {
	position: absolute;
	left: 24px;
	top: 50%;
	transform: translate(-50%,-50%);
	width: 17px;
	height: 17px;
	content: "";
	display: block;
	background-color: var(--fushia);
  -webkit-mask: url(../images/play.svg) no-repeat center;
  mask: url(../images/play.svg) no-repeat center;
	transition: all 300ms ease;
}

.playLink:hover:after {
	background-color: #fff
}

.nextPageLink {
	position: absolute;
	bottom: 85px;
	right: 120px;
	display: block;
	text-indent: -9999px;
	width: 48px;
	height: 48px;
	border-radius: 24px;
	background-color: #edf3f8;
	transition: all 300ms ease;
}

.nextPageLink:before {
	position: absolute;
	top: 14px;
	left: -8px;
	width: 26px;
	height: 22px;
	content: "";
	display: block;
	background: url(../images/arrowNavF.png) no-repeat center center;
	background-size: 26px 22px;
	transition: all 300ms ease;
}

.nextPageLink:hover:before {
	left: 8px;
}


.mainVideoPopupWrapper {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background: rgba(0,0,0,0.8);
	z-index: 1001;
}

.mainVideoHolder {
	position: absolute;
	height: 50%;
	width: 50%;
	top: 25%;
	left: 25%;
}

.mainVideoWrapper {
	position: absolute;
	width: 100%;
	top: 50%;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
	height: 0;
	padding-top: 56.25%;
}

.mainVideoWrapper .videoClose {
	position: absolute;
	top: -32px;
	right: -32px;
	width: 32px;
  height: 32px;
	display: block;
  opacity: 0.3;
	text-indent: -9999px;
}

.mainVideoWrapper .videoClose:hover {
  opacity: 1;
}

.mainVideoWrapper .videoClose:before,
.mainVideoWrapper .videoClose:after {
  position: absolute;
  left: 15px;
  content: ' ';
  height: 33px;
  width: 2px;
  background-color: #fff;
}

.mainVideoWrapper .videoClose:before {
  transform: rotate(45deg);
}

.mainVideoWrapper .videoClose:after {
  transform: rotate(-45deg);
}

.mainVideoWrapper iframe,
.mainVideoWrapper video {
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
}


/*************/
/** SIDEBAR **/
/*************/
#sidebarPanel h2 {
	font-weight: bold;
	font-size: 1.6rem;
	margin-bottom: 2rem;
}

#sidebarPanel {
	width: 50%;
	padding: 100px;
	background-color: #fff;
	background-size: cover;
	background-position: bottom right;
	display: flex;
	justify-content: center;
	flex-direction: column;
	align-items: center;
}

body.home #sidebarPanel {
	width: 33%
}



#sidebarPanel .sideIntroductionContent {
	font-size: 1.2rem;
}

#sidebarPanel #sideIntroduction ul:not(.nav) {
	padding-left: 20px;
	list-style: none;
}

#sidebarPanel #sideIntroduction ul:not(.nav) li::before {
  content: "";
  width: 6px;
  height: 6px;
  border-radius: 3px;
  background-color: var(--copper);
  display: inline-block;
  margin-left: -12px;
  margin-right: 6px;
}

#sidebarPanel .sideIntroductionContent {
	font-size: 1.2rem;
}

#sidebarPanel .sideIntroductionContent ul {
	font-size: 1rem;
}

#sideIntroduction {
	width: 100%;
}

.sideBottomText {
	margin-top: auto;
	font-size: 80%;
}

#sidebarPanel #sideIntroduction.cbi  ul.nav {
	margin-bottom: 30px;
	border: none;
}

#sidebarPanel #sideIntroduction.cbi  ul.nav li {
	position: relative;
	display: flex;
	flex: 1;
}

#sidebarPanel #sideIntroduction.cbi ul.nav li:first-child a {
	padding-left: 0;
}

#sidebarPanel #sideIntroduction.cbi  ul.nav li + li:before {
	position: absolute;
	left: -1px;
	width: 1px;
	height: 20px;
	background: var(--light-grey);
	content: "";
	display: block;
	top: 50%;
	transform: translateY(-50%);
}

#sidebarPanel #sideIntroduction.cbi .nav-link {
	border: none;
	position: relative;
	font-size: 1.1rem;
	line-height: 1.2rem;
	font-weight: bold;
	text-align: left;
	padding-bottom: 1rem;
	color: var(--light-grey);
	display: flex;
  align-items: center;
  width: 100%;
}

#sidebarPanel #sideIntroduction.cbi .nav-link.active {
	color: var(--text);
}

#sidebarPanel #sideIntroduction.cbi .nav-link:after {
	position: absolute;
	bottom: -1px;
	left: 0;
	right: 0;
	height: 2px;
	background: #e6edf3;
	content: "";
	display: block;
}

#sidebarPanel #sideIntroduction.cbi .nav-link.active:after {
	background-color: var(--fushia);
	height: 8px;
	bottom: -4px;
	border-radius: 4px;
}

#mainNav ul {
	list-style: none;
	padding: 0;
	margin: 0;
	background-color: #fff;
}

#mainNav ul li a {
	position:relative;
	display: block;
	padding: 20px 5px;
	text-align: center;
	color: #b6b6b6;
	font-weight: bold;
	font-size: .9rem;
	border-bottom: 1px solid #e6e6e6;
	border-top: 1px solid #f1f1f1;
	transition: all 300ms ease;
}

#mainNav ul li:first-child a {
	font-size: 0; /* disable text for first menu icon */
}

#mainNav ul li a:after {
	position: absolute;
	top: -1px;
	right: -3px;
	width: 3px;
	bottom: 0;
	content: "";
	display: block;
	background-color: transparent;
	transition: all 300ms ease;
}

#mainNav ul li:not(:first-child) a:hover,
#mainNav ul li:not(:first-child).current-menu-item a,
#mainNav ul li:not(:first-child).current-page-ancestor a {
	background-color: #494949;
	border-top-color: #d9a457;
	text-decoration: none;
	color: #fff;
}

#mainNav ul li:not(:first-child) a:hover:after,
#mainNav ul li:not(:first-child).current-menu-item a:after,
#mainNav ul li:not(:first-child).current-page-ancestor a:after  {
	background-color: #c97f12;
}

#mainNav ul li a img,
#mainNav ul li a svg {
	width: 30px;
	height: auto;
	display: block;
	margin: 0 auto;
}

#mainNav ul li:first-child a img,
#mainNav ul li:first-child a svg {
	width: 80px;
	height: auto;
}

#mainNav ul li a svg polygon,
#mainNav ul li a svg rect,
#mainNav ul li a svg path {
	fill: #b6b6b6;
	stroke: #b6b6b6;
	transition: all 300ms ease;
}

#mainNav ul li a:hover svg polygon,
#mainNav ul li.current-menu-item a svg polygon,
#mainNav ul li a:hover svg rect,
#mainNav ul li.current-menu-item a svg rect,
#mainNav ul li a:hover svg circle,
#mainNav ul li.current-menu-item a svg circle,
#mainNav ul li a:hover svg path,
#mainNav ul li.current-menu-item a svg path {
	fill: #fff;
	stroke: #fff;
}

/****************/
/*** FRONTPAGE **/
/****************/
#homeLinks {
	display: flex;
	justify-content: flex-start;
}

#homeLinks .homeLink,
#sideLinks .sideLink {
	position: relative;
	background-color: #fff;
	border-radius: 6px;
	padding: 30px 3px 15px;
	text-align: center;
	min-height: 270px;
	width: 190px;
	display: block;
	color: var(--text);
	font-size: .8rem;
	line-height: 1rem;
	transition: all 300ms ease;
}

#homeLinks .homeLink > p,
#sideLinks .sideLink > p {
	overflow: hidden;
	max-height: 44px;
	font-size: .7rem;
	line-height: .9rem;
}

#homeLinks .homeLink + .homeLink {
	margin-left: 20px;
}

#sideLinks .sideLink {
	border: 2px solid #c6d3de;
}

#sideLinks .sideLink:not(:first-child) {
	min-height: 0;
	margin-top: 20px;
	padding: 5px 20px;
}

#sideLinks .sideLink:not(:first-child) p {
	display: none;
}

#homeLinks .homeLink:hover,
#sideLinks .sideLink:hover {
	text-decoration: none;
	box-shadow: 0 0 40px -30px #000;
}

#homeLinks .homeLink .iconHolder,
#sideLinks .sideLink:first-child .iconHolder {
	width: 96px;
	height: 96px;
	border-radius: 50px;
	margin: 0 auto 20px;
	padding: 7px;
	background: rgb(2,0,36);
	background: -moz-linear-gradient(180deg, var(--gradient-1) 0%, var(--gradient-2) 100%);
	background: -webkit-linear-gradient(180deg, var(--gradient-1) 0%, var(--gradient-2) 100%);
	background: linear-gradient(180deg, var(--gradient-1) 0%, var(--gradient-2) 100%);
}

#sideLinks .sideLink:not(:first-child) .iconHolder {
	float: left;
	width: 50px;
	height: 50px;
	display: flex;
  flex-direction: column;
  justify-content: center;
}

#sideLinks .sideLink:first-child .iconHolder {
	background: rgb(169,184,196);
	background: -moz-linear-gradient(180deg, rgb(204,214,223) 0%, rgb(169,184,196) 100%);
	background: -webkit-linear-gradient(180deg, rgb(204,214,223) 0%, rgb(169,184,196) 100%);
	background: linear-gradient(180deg, rgb(204,214,223) 0%, rgb(169,184,196) 100%);	
}

#homeLinks .homeLink .iconHolder figure,
#sideLinks .sideLink:first-child .iconHolder figure {
	background-color: #fff;
	width: 100%;
	height: 100%;
	border-radius: 50%;
	margin: 0;
	display: flex;
	justify-content: center;
  align-items: center;
}

#sideLinks .sideLink:not(:first-child) figure {
	margin: 0;
}

#homeLinks .homeLink .iconHolder svg,
#sideLinks .sideLink .iconHolder svg {
	width: 40px;
	height: 40px;
	max-width: 40px;
	max-height: 40px;
}

#homeLinks .homeLink .iconHolder svg polygon,
#homeLinks .homeLink .iconHolder svg rect,
#homeLinks .homeLink .iconHolder svg circle,
#homeLinks .homeLink .iconHolder svg path  {
	fill: var(--gradient-1);
	stroke: var(--gradient-1);
}

#sideLinks .sideLink .iconHolder svg polygon,
#sideLinks .sideLink .iconHolder svg rect,
#sideLinks .sideLink .iconHolder svg circle,
#sideLinks .sideLink .iconHolder svg path { 
 	fill:#505f6d;
 	stroke:#505f6d;
}

#homeLinks .homeLink h2,
#sideLinks .sideLink h2 {
	font-size: 1.1rem;
	font-weight: bold;
	margin: 0 0 5px;
}

#sideLinks .sideLink:not(:first-child) h2 {
	line-height: 50px;
	margin: 0;
}

#homeLinks .homeLink .arrow,
#sideLinks .sideLink .arrow {
	position: absolute;
	bottom: 18px;
	left: 50%;
	transform: translateX(-50%);
	width: 30px;
	height: 15px;
	margin: 0 auto;
	background-color: #aab8c4;
  -webkit-mask: url(../images/arrow.svg) no-repeat center;
  mask: url(../images/arrow.svg) no-repeat center;
	transition: all 300ms ease;
}

#sideLinks .sideLink:not(:first-child) .arrow {
	display: none;
}

#homeLinks .homeLink:hover .arrow {
	background-color: var(--fushia);
}

#sideLinks .sideLink:hover .arrow {
	background-color: var(--text);
}

/********* NORMAL PAGE ***********/
#pageLinks {
	list-style: none;
	padding: 0;
	margin: 0;
}

#pageLinks .pageLink {
	position: relative;
	background-color: #fff;
	border-radius: 6px;
	padding: 14px 15px;
	text-align: left;
	display: block;
	color: var(--text);
	transition: all 300ms ease;
}

#pageLinks .pageLink.submenu {
	padding: 10px 10px;
	min-height: 130px;
	background-color: transparent;
	border-radius: 0;
}

#pageLinks .pageLink:hover,
#pageLinks .pageLink.active {
	text-decoration: none;
	color: #fff;
	background-color: var(--fushia);
}

#pageLinks .pageLink.submenu:hover,
#pageLinks .pageLink.submenu.active {
	background-color: #fff;
	color: var(--text);
}

#pageLinks .pageLink.submenu:after {
  content: "";
 	position: absolute;
  display: block;
  right: -10px;
  top: 0;
  bottom: 0;
  width: 10px;
  height: 100%;
  background: #fff;
  -webkit-clip-path: polygon(0 0, 0 100%, 100% 50%);
  clip-path: polygon(0 0, 0 100%, 100% 50%);
  opacity: 0;
  transition: all 300ms ease;
}

#pageLinks .pageLink.submenu:hover:after,
#pageLinks .pageLink.submenu.active:after {
	opacity: 1;
}

#pageLinks > li + li {
	margin-top: 10px;
}

.submenus #pageLinks > li + li {
	margin-top: 0;
	border-top: 1px solid #c6d3de;
}

#pageLinks .pageLink h2 {
	font-size: 1.2rem;
	font-weight: bold;
	line-height: 1.4rem;
	margin: 0 0 0 40px;
}

.sublinks #pageLinks .pageLink h2 {
	font-size: .9rem;
	line-height: 30px;
}

#pageLinks .pageLink.submenu h2 {
	margin: 15px 0 15px 150px;
}

#pageLinks .pageLink.submenu strong {
	margin-left:40px;
	color: var(--copper);
	font-weight: bold;
	font-size: .8rem;
}

#pageLinks .pageLink .iconHolder {
	float: left;
	width: 30px;
	height: 30px;
}

#pageLinks .pageLink.submenu .iconHolder {
	width: 110px;
	height: 110px;
}

#pageLinks .pageLink .iconHolder figure {
	width: 100%;
	height: 100%;
	margin: 0;
}

#pageLinks .pageLink.submenu figure img {
	width: 110px;
	height: 110px;
	object-fit: cover;
	object-position: center center;
}

#pageLinks .pageLink.submenu figure.nopic {
	background-color: #898989;
	display: flex;
  justify-content: center;
  align-items: center;
}

#pageLinks .pageLink.submenu figure.nopic img {
	width: 50px;
	height: 50px;
}

#pageLinks .pageLink .iconHolder svg,
#pageLinks .pageLink .iconHolder svg {
	max-width: 30px;
	max-height: 30px;
}

#pageLinks .pageLink .iconHolder svg polygon,
#pageLinks .pageLink .iconHolder svg rect,
#pageLinks .pageLink .iconHolder svg circle,
#pageLinks .pageLink .iconHolder svg path  {
	fill: var(--gradient-1);
	stroke: var(--gradient-1);
	transition: all 300ms ease;
}

#pageLinks .pageLink:hover .iconHolder svg polygon,
#pageLinks .pageLink.active .iconHolder svg polygon,
#pageLinks .pageLink:hover .iconHolder svg rect,
#pageLinks .pageLink.active .iconHolder svg rect,
#pageLinks .pageLink:hover .iconHolder svg circle,
#pageLinks .pageLink.active .iconHolder svg circle,
#pageLinks .pageLink:hover .iconHolder svg path,
#pageLinks .pageLink.active .iconHolder svg path   {
	fill: #fff;
	stroke: #fff;
}

#pageLinks .sideMenu {
	position: absolute;
	right: -400px;
	top: 0;
	bottom: 0;
	width: 400px;
	background: #494949;
	color: #fff;
	display: flex;
  flex-direction: column;
  justify-content: center;
  pointer-events: none;
  opacity: 0;
	transition: all 300ms ease;
	padding-left: 50px;
	padding-right: 50px;
	font-weight: bold;
}

#pageLinks .sideMenu > h3 {
	font-size: 1.2rem;
	font-weight: bold;
	position: relative;
	margin-bottom: 30px;
}

#pageLinks .sideMenu > h3:after {
	content: "";
	position: absolute;
	bottom: -5px;
	left: 0;
	height: 3px;
	background: #b6b6b6;
	display: block;
	width: 30px;
}

#pageLinks .sideMenu ul {
	margin: 0;
  padding: 0 0 0 1em;
	list-style: none;
}

#pageLinks .sideMenu ul.sideLabelLinks  {
	padding-top: 1rem;
	padding-bottom: 1rem;
}

#pageLinks .sideMenu li + li {
	margin-top: 1rem;
}

#pageLinks .sideMenu.show {
	pointer-events: auto;
	opacity: 1;
}

#pageLinks .sideMenu > ul > li:not(.single) {
	border-top: 1px solid #aaa;
	border-bottom: 1px solid #aaa;
	padding: 1rem 0 1rem;
	line-height: 1.2rem;
}

#pageLinks .sideMenu > ul > li:not(.single) + li:not(.single) {
	border-top: none;
	margin-top: 0;
}

#pageLinks .sideMenu ul.sideLabelLinks li {
	font-size: .8rem;
}


#pageLinks .sideMenu li.single:before,
#pageLinks .sideMenu li ul li:before { 
  content: "";
  border-color: transparent var(--copper);
  border-style: solid;
  border-width: 0.25em 0 0.25em 0.45em;
  display: block;
  height: 0;
  width: 0;
  left: -1em;
  top: 0.9em;
  position: relative;
}

#pageLinks .sideMenu a {
	color: #fff;
}

#pageLinks .sideMenu a:hover {
	color: var(--copper);
	text-decoration: none;
}

/*************/
/*** PROGRAM */
/*************/
#programSlider {
	display: flex;
	position: relative;
	width: 100%;
	height: 100%;
}

#programSlider + #pageLinksArrows {
	position: absolute;
	top: 50%;
	right:60px;
	width: 40px;
	transform: translateY(-50%);
	z-index: 10;
	padding-top: 0;
}

#programSlider + #pageLinksArrows button + button {
	margin: 15px 0 0 0;
}

#programSlider + #pageLinksArrows button {
	background: #fff;
	opacity: .8;
	box-shadow: 0 0 20px rgba(0,0,0,.2);
}

#programSlider + #pageLinksArrows button:not(.swiper-button-disabled):hover {
	opacity: 1;
}

#programSlider + #pageLinksArrows button:after {
	background-color: var(--copper);
}

#programSlider + #pageLinksArrows .swiper-button-disabled {
	opacity: .3;
	pointer-events: none;
}

.page-template-programme #content {
	background: #fff;
	flex: 1 0 40%;
}

#programSlider article.swiper-slide {
	background-repeat: no-repeat;
	background-position: bottom right;
	background-size: cover;
}

/********* PROGRAMME SLIDE 1 ******/
#programSlideContent1 {
	display: flex;
	flex-direction: column;
  flex-wrap: nowrap;
  justify-content: flex-start;
  align-items: center;
}

#programSlideContent1 > h2 {
	margin-top: 40px;
	color: var(--text);
	text-align: center;
}

#programSlideContent1 img {
	margin-top: 200px;
	max-width: 50%;
	height: auto;
}

/*********** PROGRAMME SLIDE 2 ******/
#programSlideContent2 {
	display: flex;
}

#programSlideContent2Left,
#programSlideContent2Right {
	flex: 1 0 50%;
}

#programSlideContent2Left {
	background: #fff;
	display: flex;
	align-items: center;
  justify-content: center;
}

#programSlideContent2Title {
	text-align: center;
	position: relative;
}

#programSlideContent2Title h2 {
	position: absolute;
	top: 50%;
	left: 0;
	width: 100%;
	transform: translateY(-50%);
	z-index: 3;
}

#programSlideContent2 figure {
	transform: rotate(28deg);
	width: 350px;
	height: auto;
	margin: 0;
}

#programSlideContent2 figure svg {
	width: 350px;
	height: 350px;
	stroke-width: 4px;
	fill: #d79e0d;
-webkit-filter: drop-shadow( 0px 0px 20px rgba(0, 0, 0, .2));
  filter: drop-shadow( 0px 0px 20px rgba(0, 0, 0, .2));
}

#programSlideContent2 figure svg path {
	stroke: #fff;
}

#programSlideContent2Right ul {
	height: 100%;
	border-top: 50px solid #fff;
	border-bottom: 50px solid #fff;
	list-style: none;
	display: flex;
	flex-direction: column;
  justify-content: space-evenly;
}

#programSlideContent2Right ul li {
	padding-right: 100px;
}

#programSlideContent2Right ul li h3 {
	color: var(--copper);
	text-indent: -80px;
}

#programSlideContent2Right ul li div.definitionText {
	text-align: center;
	padding-top: 20px;
}


/***** PROGRAMME SLIDE 3 ********/
#programSlideContent3 {
	display: flex;
}

#programSlideContent3Title {
	text-align: center;
	position: relative;
	display: flex;
  align-items: center;
  justify-content: center;
  flex: 1 0 100%
}

#programSlideContent3 figure {
	width: 350px;
	height: auto;
	margin: 0;
}


#programSlideContent3 figure h2 {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	font-size: 1.8rem;
}

#programSlideContent3 ul {
	margin: 0;
	padding: 0;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	list-style: none;
}

#programSlideContent3 ul li {
	position: absolute;
	display: flex;
	color: var(--copper);
}

#programSlideContent3 ul li figure {
	margin: 0 30px 0 0;
	width: 50px;
	height: 50px;
	background-size: contain;
	background-repeat: no-repeat;
}

#programSlideContent3 ul li figure img {
	position: relative;
	top: 25%;
	left: 25%;
	width: 50%;
	height: 50%;
	object-position: center center;
	object-fit: contain;
}

#programSlideContent3 ul li h3 {
	text-transform: uppercase;
	font-weight: bold;
	font-size: 1.2rem;
	line-height: 1.4rem;
	margin-top: 15px;
}

#programSlideContent3 #programSlideContent3BottomText {
	position: absolute;
	bottom: 5%;
	left: 5%;
}

/********* SLIDE 4 PROGRAMME ***********/
#programSlideContent4 ul {
	list-style: none;
	padding: 0 150px;
	margin: 0;
	width: 100%;
	height: 100%;
	display: flex;
	justify-content: space-evenly;
  align-items: center;
}

#programSlideContent4 ul li {
	width: 33%;
	height: 50%;
	padding: 0 100px 0 0;
	position: relative;
	z-index: 0;
}

#programSlideContent4 ul li:before {
	position: absolute;
	top: -50px;
	left: -30px;
	width: 60%;
	height: 100%;
	content: "";
	background: #fff;
	display: block;
	z-index: -1;
}

#programSlideContent4 ul li:nth-child(2):before {
	height: 110%;
}

#programSlideContent4 ul li:nth-child(3):before {
	height: 120%;
}

#programSlideContent4 ul li h3 {
	font-family: "Hurtmold";
	color: var(--copper);
	font-size: 2.4rem;
	min-height: 100px;
}

#programSlideContent4 ul li .description {
	font-size: 1rem;
}


/********* SLIDE 5 PROGRAMME ***********/
#programSlideContent5 {
	display: flex;
}

#programSlideContent5 .leftContent {
	width: 40%;
	padding: 100px;
}

#programSlideContent5 .leftContent h3 {
	font-family: "Hurtmold";
	font-size: 2.4rem;
	line-height: 2.4rem;
	margin-bottom: 30px;
}

#programSlideContent5 .leftContent img {
	max-width: 100%;
	height: auto;
}

#programSlideContent5 .innerSliderRight {
	width: 60%;
	padding: 60px 100px 100px;
	background: #fff;
}


#programInnerSlider {
	position: relative;
	height: 100%;
	width: 100%;
	padding-bottom: 45px;
	overflow: hidden;
}


#programSlideContent5 #programInnerSlider:before {
	content: "STEP";
	display:block;
	position: absolute;
	bottom: 0;
	left: 0;
	color: #dbdbdb;
	font-family: "Hurtmold";
	width: 300px;
	transform: rotate(-90deg) translateY(100px);
	transform-origin: bottom left;
	line-height: 100px;
	height: 100px;
	font-size: 8rem;
}

#programInnerSlider .swiper-slide {
	padding: 40px;
	height: 100%;
}

#programInnerSlider .swiper-slide-inner {
	position: relative;
	padding: 50px;
	height: 100%;
	border-radius: 6px;
	background: #fff;
	box-shadow: 0 0 20px rgba(0,0,0,.25);
}

#programInnerSlider .swiper-slide-inner:before {
	position: absolute;
	top: -10px;
	left: -10px;
	content: "";
	display: block;
	z-index: -1;
	width: 0;
	height: 0;
	border-style: solid;
  border-width: 55px;
  border-color: var(--copper) transparent transparent var(--copper);
  position: absolute;
  border-radius: 10px 0px 0px 0px;
}

#programInnerSlider .swiper-slide figure {
	text-align: center;
	margin: 0 0 30px;
}

#programInnerSlider .swiper-slide img {
	max-width: 140px;
	height: auto;
	margin: 0 auto;
}

#programInnerSlider .swiper-slide .step {
	display: block;
	text-align: center;
	color: var(--copper);
	font-size: 1.4rem;
}

#programInnerSlider .swiper-slide h3 {
	display: block;
	text-align: center;
}

#programInnerSlider .swiper-slide .description {
	text-align: center;
	padding: 10px 20px;
}

#programInnerSlider .swiper-pagination {
	height: 45px;
	bottom: 0;
}

#programInnerSlider .swiper-pagination-bullet {
	width:45px;
	height:45px;
	background: #fff;
	border: 1px solid #abb8c4;
	color: #abb8c4;
	text-align: center;
	line-height: 45px;
	font-weight: bold;
	font-size: 1.2rem;
	opacity: 1;
}

#programInnerSlider .swiper-pagination-bullet:hover,
#programInnerSlider .swiper-pagination-bullet-active {
	cursor: pointer;
	border-color:var(--copper);
	background-color: var(--copper);
	color: #fff;
}

/*********** SLIDE 6 PROGRAMM **********/
#programSlideContent6 {
	display: flex;
}

#programSlideContent6 .leftContent {
	width: 40%;
	padding: 100px;
	background: #fff;
}

#programSlideContent6 .leftContent h3 {
	font-family: "Hurtmold";
	font-size: 2.4rem;
	line-height: 2.4rem;
	margin-bottom: 30px;
}

#programSlideContent6 .leftContent img {
	max-width: 100%;
	height: auto;
}

#programSlideContent6 .rightContent {
	width: 60%;
	padding: 100px 100px 100px 100px;
}

#programSlideContent6 #program-products {
	padding: 0 40px 0 0;
	margin: 0;
	height: 100%;
	width: 100%;
	list-style: none;
	display: flex;
  flex-direction: column;
  justify-content: space-around;
}

#programSlideContent6 #program-products li {
	height: 33%;
}

#programSlideContent6 #program-products li + li {
	margin-top: 20px;
}

#programSlideContent6 #program-products li .media {
	height: 100%;
}

#programSlideContent6 #program-products li .media .media-body {
	border-radius: 6px;
	padding: 20px;
	background: #fff;
	font-size: 1rem;
	height: 100%;
	padding: 30px;
	display: flex;
  align-items: center;
	box-shadow: 0 0 20px rgba(0,0,0,.25);
}

#programSlideContent6 #program-products li .media .media-body p {
	margin: 0;
}

/*********************/
/******* GLOSSARY ****/
/*********************/
.glossary-links {
	font-size: 1.6rem;
	margin-bottom: 50px;
}

.glossary-links > span {
	display: inline-block;
	margin-right: 40px;
}

.glossary-links a {
	display: inline-block;
	border-radius: 6px;
	background: #c8d2db;
	color: #fff;
	padding: 5px 15px;
	font-size: 1.4rem;
	transition: all 300ms ease;
}

.glossary-links a:hover,
.glossary-links a.active {
	text-decoration: none;
	background-color: var(--fushia);
}

#glossaryList {
	list-style: none;
	margin: 0;
	padding: 0;
}

#glossaryList .glossary-item {
	padding: 0 40px 0 0;
	font-size: .9rem;
}

#glossaryList .glossary-item h3 {
	font-size: 1.1rem;
	font-weight: bold;
}

/********************/
/**** CHRONOLOGY ****/
/********************/
body.page-template-chronology #content {
	background-size: 100%;
	background-color: #fff;
	background-position-x: 40%;
	background-position-y: 56%;
	padding-left: 15px;
	padding-right: 15px;
	justify-content: center;
}

body.page-template-chronology #chronology-title {
	margin-bottom: 50px;
}

body.page-template-chronology #chronology-title h1,
body.page-template-chronology #chronology-title h2 {
	text-align: center;
	font-weight: bold;
	text-indent: -130px;
	margin: 0;
	font-size: 3rem;
	line-height: 1;
}

body.page-template-chronology #chronology-title h2 {
	color: var(--fushia);
	text-indent : 130px;
}

body.page-template-chronology #chronology-timeline ul {
	display: flex;
  flex-direction: row;
  align-items: flex-start;
  margin: 0;
  list-style: none;
  padding: 0;
}

body.page-template-chronology #chronology-timeline ul li {
	flex: 1 1 0px;
	position: relative;
}

body.page-template-chronology #chronology-timeline ul li + li:before {
	position: absolute;
	top: 60px;
	left: -30px;
	width: 24px;
	height: 30px;
	content: "";
	display: block;
	background-color: var(--text);
  -webkit-mask: url(../images/arrowChrono.svg) no-repeat center;
  mask: url(../images/arrowChrono.svg) no-repeat center;
}

body.page-template-chronology #chronology-timeline ul li:nth-child(2n) + li:before {
	background-color: var(--fushia);
}

body.page-template-chronology #chronology-timeline ul li + li:before path {
	color: #d00;
}

body.page-template-chronology #chronology-timeline ul li figure {
	margin: 0 0 30px;
}

body.page-template-chronology #chronology-timeline ul li img {
	max-width: 150px;
	height: auto;
}

body.page-template-chronology #chronology-timeline ul li h3 {
	font-size: 1.2rem;
	font-weight: 600;
	min-height: 100px;
	padding: 0 25px;
}

body.page-template-chronology #chronology-timeline .pictogramme-description {
	position: relative;
	font-size: .75rem;
	line-height: 1rem;
	padding: 0 50px;
}

body.page-template-chronology #chronology-timeline .pictogramme-description:before {
	content: "";
	position: absolute;
	top: 0;
	left: 25px;
	width: 2px;
	height: 50px;
	background: var(--color);
	display: block;
}


/*******************/
/**** OBJECTIONS ***/
/*******************/
#bubbles {
	height: 100%;
	width: 100%;
	position: relative;
}

#bubbles .bubble {
	background-color: #fff;
	padding: 15px;
	width: 40%;
	position: absolute;
	border-radius: 6px;
	font-weight: bold;
}

#bubbles .bubble.bubble-0 {
	top: 0;
	left: 0;
}

#bubbles .bubble.bubble-1 {
	top: 40%;
	left: 0;
}

#bubbles .bubble.bubble-2 {
	top: auto;
	bottom: 10%;
	left: 0;
}

#bubbles .bubble.bubble-3 {
	top: 0;
	left: auto;
	right: 0;
}

#bubbles .bubble:after {
	position: absolute;
	bottom: -20px;
	right: 10px;
	content: "";
	display: block;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 0 20px 20px 0;
	border-color: transparent #ffffff transparent transparent;
}

#bubbles .bubble-1:after {
	bottom: 50%;
	right: -20px;
	border-width: 10px 0 10px 20px;
	border-color: transparent transparent transparent #ffffff;
}

#bubbles .bubble-2:after {
	bottom: auto;
	top: 20px;
	right: -10px;
  border-width: 20px 50px 0 0;
  border-color: #ffffff transparent transparent transparent;
  transform: skew(-57deg) rotate(180deg);
}

#bubbles .bubble-3:after {
	border-width: 20px 10px 0 10px;
	border-color: #ffffff transparent transparent transparent;
}
