:root {
	--color_a: rgba(0,0,0,1); /* Main font color */
	--color_b: #4ba0f5;	/* Blue link*/
	--color_c: #00a849; /* Green VALIDATE */
	--color_d: #737373; /* Gris qui va bien pour mixBlendMode */
	--color_e: #ebebeb; /* grey_a */
	--color_f: #e1e1e1; /* grey_b */
	--color01: #ffffff;
		

	--color_blue: #ffc25a;
	--color_red: #1adbdf;
	
	--color_bluereal: #003da5;
	--color_redreal: #e52620;
	
	--color04: #a3ccd9;
	--color05: #e6bea0;
	--color06: #8dffc4;
	--color07: #5ce6f7;
	--color08: #a78bc4;
	
	
	--blue:#135eab;
	--red:#f7505e;
	
	/* -- If change or Add colors, do not forget INC_listcolor.php & home.js */
}

/* HACK TYPOS */

.typos_wrapper {
	background:pink;
	font-family:'Elza';
}
span.typo100 {
	font-weight:100;
}
span.typo300 {
	font-weight:300;
}
span.typo400 {
	font-weight:400;
}
span.typo600 {
	font-weight:600;
}
span.typo700 {
	font-weight:700;
}


/* Home Colors */
.color01 {	background: #ffffff !important;	}
.color02 {	background: #f9af5c !important;	}
.color03 {	background: #fa5d6d !important;	}
.color04 {	background: #a3ccd9 !important;	}
.color05 {	background: #e6bea0 !important;	}
.color06 {	background: #8dffc4 !important;	}
.color07 {	background: #5ce6f7 !important;	}
.color08 {	background: #a78bc4 !important;	}

/* -- black -- */
.color_a { background: #000000 !important; }
/* -- constant greys -- */
.color_e { background: #ebebeb !important;	}
/* .color_e { */
	/* background: url('../imgs/h01.png') repeat; */
/* } */
.color_f {	background: #e1e1e1 !important;	}

.color_blue {
	/* background:var(--color_bluereal)  !important; */
}
	figure.color_blue::before {
		position: absolute;
		display: block;
		content: ' ';
		width: 69%;
		height: 71.5%;
		background: var(--color_bluereal);
	}
	figure.color_blue img {
		mix-blend-mode:multiply;
	}

::selection{
	background-color: var(--color_redreal);
	color: #fff;
}

* {
	box-sizing: border-box;
}
a {
   outline: 0;
}

html, body {
	font-size:16px;
}

body {
	background:#fff;
	margin: 0;
	padding: 0;
	line-height: 1.35em;
	font-weight: 300;
	font-family: Elza, Arial, sans-serif;
	color: var(--color_a); 
	word-wrap: break-word;
	min-height:101vh;
}

/* !! Lenis */

html.lenis {
	height: auto;
}

.lenis.lenis-smooth {
	scroll-behavior: auto;
}

.lenis.lenis-smooth [data-lenis-prevent] {
	overscroll-behavior: contain;
}

/* .lenis.lenis-stopped {
	overflow: hidden;
} */

.lenis.lenis-scrolling iframe {
	pointer-events: none;
} 

/* .lenis.lenis-stopped {
	overflow: auto;
} */

/*the end*/

.curtain {
	position:fixed;
	width:100vw;
	height:100vh;
	top:0;
	left:0;
	z-index:3;
}

	#blue_curtain {
		background:#ffffff;
	}
	#red_curtain {
		background:var(--color_redreal);
	}


.locker {
	position:fixed;
	top:0;
	right:0;
	left:0;
	bottom:0;
	width:100%;
	height:100vh;
	background:transparent;
	background:#ffffff;
	visibility:collapse;
	z-index:2;
}
.locker_loading {
	visibility:visible;
/*	background:pink; */
}

.interface_menu {
	position: relative;
	z-index: 2;
	top:0;
}


.logo {
	/*! transition: width 1s cubic-bezier(.17,.84,.44,1) 0s, height 1s cubic-bezier(.17,.84,.44,1) 0s, top .6s cubic-bezier(.17,.84,.44,1) 0s, transform .6s cubic-bezier(.17,.84,.44,1) 0s; */
	line-height:0;
	mix-blend-mode:difference;
	position: fixed;
	top: 3%;
	left: 2.5%;
	max-width:28.5%;
	width:28.5%;
	/* background: yellow; */
}

.logo_intro {
	max-width:100%;
	transition: 0;
	opacity:0;
}

.logo_intro svg {
	/*! max-height:50vh; */
	/*! width:50%; */
}


svg {
	/* transition: all 0.6s cubic-bezier(.17,.84,.44,1) 0s; */
	max-height:23.5vh;
	width:33.3333%;
	/*! position: absolute; */
}

svg.white, svg.white rect, svg.white path, svg.white polygon {
	/* transition: all 1s cubic-bezier(.17,.84,.44,1) 0s; */
	/* fill:var(--color_blue); */
	fill:#fff;
}

.svg-closer {
	opacity:0;
	fill:var(--color_blue);
}

#logo_curtain {
	padding: 3vh 2.5%;
	opacity:0;
	/*! background: pink; */
}

#logo_curtain svg {
	max-height:70vh;
	margin-left: 30%;
	margin-top: 10vh;
	width: auto;
	display: inline-block;
	max-width: 40%;
	float:left;
}

.main_nav, ul.social, ul.second {
	padding:0;
	margin:0;
}

ul.menu_sous_rubrique {
	padding: 0;
	margin: 50px 0 0;
}

ul#nav {
	display: flex;
	flex-grow: 1;
	transition:all 0.6s cubic-bezier(.17,.84,.44,1) 0s;
    justify-content: flex-end;
}

ul.main_nav {
	margin-left:50%;
    width:100%;
}

ul.social {
	display: flex;
	flex-direction: column;
	padding:20px 0 0 30%;
	width:30%;
	align-items: flex-end;
	visibility:collapse;
}

li.social-item {
	text-decoration: none;
	list-style-type: none;
	margin-bottom: 10px;
	margin-right:-25px;
	opacity:0;
}

li.social-item a {
	padding-right:45px;
	overflow:visible;
	display:inline-block;
}

li.social-item a.dock_a span {
	font-size:0.9rem;
	line-height:30px;
	opacity:0.9;
}

li.social-item a.dock_a:hover span {
	opacity:1;
}

li.social-item a::after {
	display:none;
}
	
	li.facebook a {
		background: transparent url('../imgs/svg/facebook.svg') no-repeat right center;
		background-size: 1.2rem;
	}
	li.instagram a {
		background: transparent url('../imgs/svg/instagram.svg') no-repeat right center;
		background-size: 1.4rem;
	}
	li.linkedin a {
		background: transparent url('../imgs/svg/linkedin.svg') no-repeat right center;
		background-size: 1.5rem;
	}
	li.download a {
		background: transparent url('../imgs/svg/download.svg') no-repeat right center;
		background-size: 1.4rem;
	}


ul.second {
	display: flex;
	flex-direction: column;
	width: 70%;
	padding: 20px 0 0 50%;
	visibility:collapse;
}
	ul.second .dock_li {
		flex-basis:auto;
	}
	ul.__visible {
		visibility:visible;
	}


.intro li.dock_li, .intro li.social-item {
	opacity:0;
}

/* menu font */
header li.dock_li {
	text-decoration: none;
	list-style-type: none;
	position: relative;
	flex-basis: 20%;
	order:1;
	transition:all 0.6s cubic-bezier(.17,.84,.44,1) 0s;
}



header .social-item a.dock_a {
	flex-basis: 10%;
}

ul#nav .dock_li:last-child {
	text-align:right;
}

a.dock_a {
	hyphens: initial;
	color: var(--color_bluereal);
	display: inline-block;
	position:relative;
	overflow: hidden;
	text-decoration:none;
	height: 1.333rem;
}
	.__hovered a.dock_a {
		color: #fff;
	}
	
a.dock_a_sel {
	color:var(--color_redreal);
}

a.sub_a {
  margin-bottom: 2px;
}

	a.dock_a span {
		font: 300 1.333rem/1.333rem Elza, serif;
		display:block;
		margin-top:-25px;
		transition: all 0.6s cubic-bezier(.4,0,.2,1) 0s;
	}
	a.sub_a span {
		font: 300 1rem/1rem Elza, serif;
	}
	
a.sub_afilter_sel {
	font-weight:900;
}

	a.dock_a::after {
		position: absolute;
		display: block;
		width: 100%;
		background: var(--color_bluereal);
		content: ' ';
		height: 1.1rem;
		transition: all 0.6s cubic-bezier(.4,0,.2,1) 0s;
		left:0;
		top:0;
	}
	a.sub_a::after {
		display:none;
	}
	a.dock_a_sel::after {
		background:var(--color_redreal);
	}
	
	a.released span {
		margin-top:0;
	}
	a.released::after {
		right: 0;
		left:100%;
	}
	
	.__hidden a.sub_a span {
		margin-top:-25px;
	}
	a.sub_a span {
		margin-top:0;
		/* transition: all 0.3s cubic-bezier(.4,0,.2,1) 0.5s; */
	}
	
	.__hidding a.sub_a span {
		margin-top:-25px;
	}
	
	.ghost {
		position: fixed;
		top: 26%;
		left: 2.5%;
		max-width: 28.5%;
		width: 28.5%;
		opacity:0;
		transition:all 0.3s cubic-bezier(.4,0,.2,1) 0s;
	}
	.ghost.deployed {
		top:3%;
		opacity:1;
	}
	
	.ghost::before {
		position: absolute;
		display: block;
		width: 14%;
		background: var(--color_redreal);
		content: ' ';
		height: 0.55rem;
		left:0;
		top:0;
	}
	
	.ghost.deployed::before {
		transition:all 0.3s cubic-bezier(.4,0,.2,1) 0s;
		height:1.1rem;
		width: 14%;
	}


a.dock_a:hover {
	color:var(--color_redreal);
}
	a.dock_a_sel::before {
		background: var(--color_red);
	}
	
a.lang {
	font: 300 1.0rem/1.25rem Elza, serif;
	text-decoration:none;
	transition:none;
	position: relative;
}
	
 li.menu_sous_rubrique {
	display: flex;
}
.menu_sous_rubrique li a{
	font: 500 .9rem/1.2rem Elza, sans-serif;
	padding: 10px;
	display: block;
	margin-bottom: 1px;
	width: 100%;
    background-color: #fff;
}

/* menu switch */
ul.menu_sous_rubrique:empty{
	display: none;
}
ul.menu_sous_rubrique {
    visibility: hidden;
    opacity: 0;
    position: absolute;
	top: 100px;
	width: 184px;
	box-shadow: 0 15px 10px -15px var(--color_d);
	transition: all 0.1s ease 0s;
	background-color: var(--color_e);
}
.dock_li:hover > ul.menu_sous_rubrique {
	visibility: visible;
	opacity: 1;
}

body.hasmsg {
	/* class for alert messageing */
}

.line_break { /* for flex */
	flex-basis: 100%;
	height: 0;
}
	.line_break span {
		position: relative;
		display: inline-block;
		background: #fff;
		top: -14px;
		padding: 0 10px 0 0;
		font: 300 .85rem/1.2rem Elza, sans-serif;
	}
.autoheight {
    height: auto !important;
    min-height: auto !important;
    max-height: none !important;
}

.cursor {
	z-index: 999;
	width: 1px;
	height: 1px;
	color: #fff;
	position: absolute;
	overflow: visible;
}
.cursor-view {
  width: 6vw;
  height: 2vw;
  color: #fff;
  margin-left: -1.25vw;
  padding-right: 1.15vw;
  font-size: 1vw;
  line-height: 1;
  display: flex;
  position: relative;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  overflow: hidden;
  transform: translateY(-50%);
}
.cursor-text-holder {
  position: absolute;
  left: 2.4vw;
  overflow: hidden;
}
.cursor-dot {
  width: .6vw;
  height: .6vw;
  background-color: #fff;
  border-radius: 100%;
  position: absolute;
  left: .9vw;
}


/* global transition */

	h2:empty, span.cat:empty, div.lat_sub:empty, .list_cat:empty, .list_event:empty, blockquote footer:empty, figcaption.legende:empty, .lgd_fs_xl:empty {
		display: none !important;
	}
	.appear span.from__bottom {
		display:inline-block;
		transition:	opacity 0.6s cubic-bezier(.4,0,.2,1) 0.3s, transform 0.6s cubic-bezier(.4,0,.2,1) 0.3s, background 0.2s cubic-bezier(.4,0,.2,1) 0s;
		transform:translateY(150%);
	}
	.appear-js span.from__bottom {
		transform:translateY(0);
	}
/* !!END!! global transition */

#main_screen {
	width:100%;
	min-height:100vh;
}

.page .col_meta {
  transition: all 0.6s cubic-bezier(.17,.84,.44,1) 0s;
  z-index: 3;
  background: #fff;
  margin:0;
}

.intro.col_meta {
	width:calc(14.2857% * 2.5);
}

.page .sub_col {
		position:fixed;
		background:#fff;
		z-index:2;
		top:0;
		transform:translateX(0);
		transition: all 0.6s cubic-bezier(.17,.84,.44,1) 0s;
		width: calc(14.2857% * 2);
		left:calc(-14.2857% * 1);
		opacity:0.95;
	}

.page .sub_col_out {
	transform:translateX(100%);
	transition: all 0.6s cubic-bezier(.17,.84,.44,1) 0s;
}

.nav_intro .main_nav .dock_li {
	/* margin-top: calc( 50vh - 10px); */
}
.nav_intro .logo {
	/*! max-width: 80%; */
	/*! width: 80%; */
	/*! top:50%; */
	/*! left:50%; */
	/*! transform:translateX(-50%) translateY(-50%); */
}

.nav_intro .logo svg {
	/*! max-height: 80vh; */
	/*! width: 50%; */
}

	.nav_top {
		/*! transition:all 3s cubic-bezier(.17,.84,.44,1) 0s; */
		position:fixed;
		z-index:100;
		mix-blend-mode:normal;
		display:flex;
		width:100%;
		padding:3vh 2.5% 0;
		flex-wrap:wrap;
		height:6vh;
	}
	.nav_top.__hovered {
		height:50vh;
		padding:3vh 2.5% 3vh 2.5%;
		mix-blend-mode:normal;
	}
	.nav_top.discrete {
		/* max-height:50px; */
		/* background:yellow; */
	}
	
	.__hovered a.dock_a:hover,
	.__hovered a.sub_afilter_sel,
	.__hovered a.dock_a_sel {
		color:var(--color_blue);
		color:#fff;
		font-weight:500;
		border-bottom:solid 1px transparent;
	}
	.__hovered a.dock_a_sel::after {
		background:var(--color_bluereal);
	}
	
.ghost_flap {
	position:fixed;
	top:50vh;
	width:100vw;
	height:1px;
	background:var(--color_bluereal);
	z-index:6;
	left:-100vw;
}
	
.flap {
	position:fixed;
	width:100%;
	height:0;
	background:var(--color_bluereal);
	z-index:5;
	/* transition:all 0.2s ease-in-out 0.3s; */
	
}

.flap2 {
	top:26.5vh;
}
.flap3 {
	top:50vh;
	background:var(--color_redreal);
	mix-blend-mode: difference;
	
}
.flap3.flap_opened {
	border-top:solid 1px transparent;
}

.flap2.flap_opened, .flap3.flap_opened {
	height:23.60vh;
}
.flap4 {
	top:73.60vh;
	background: var(--color_redreal);
	mix-blend-mode: difference;
}

.flap_opened {
	height:26.5vh;
}
	
	
.discrete .sub_col {
	left:calc(-14.2857% * 1.5);
}
.shy .col_meta {
	left:calc(-14.2857% * 1);
}
.shy .sub_col {
	left:calc(-14.2857% * 2);
}

.view {
	display: flex;
	margin-bottom: -20px;
	opacity:0;
}

	.content_intro {
		margin-left:calc(16.6666% * -0.5);
	}		

		 .onglet_closer a.onglet {
			color: var(--color_blue);
			right: -25px;
			top: 170px;
			font: 500 1.2rem/1.4rem Elza, sans-serif;
			position:absolute;
			transform: rotateZ(-90deg);
			display: inline-block;
			width:80px;
			transition: all 0.6s cubic-bezier(.17,.84,.44,1) 0.3s;
		 }
		
	.bubble {
		position: fixed;
		right: 2.5vw;
		transform: rotateZ(0deg);
		background: var(--color_bluereal);
		color: #fff;
		cursor: pointer;
		transition: all 0.4s cubic-bezier(.17,.84,.44,1) 0s;
		width: 6vw;
		transform-origin: center center;
		height: 6vw;
		border-radius: 3vw;
		text-align: center;
		z-index: 2;
		top: 98vh;
		overflow:hidden;
	}
	
	.bubble #bubble_cover {
		transform-origin:center center;
	}
	
	.bubble_cover_wrapper {
		display: block;
		width: 140%;
		height: 140%;
		position: absolute;
		top: 50%;
		left: 50%;
		transform-origin: center center;
		transform: translate(-50%,-50%);
		cursor:pointer;
		opacity:1;
		/* transition: all 0.6s ease-in-out 0s; */
		
		
	}
	/* .bubble_cover_wrapper:hover { */
		/* opacity:0; */
		
		/* transform: translate(-50%,-50%) scale(1.3); */
	/* } */
	
		.bubble_cover_wrapper svg {
			width:100%
		}
	
	
		.bubble_title {
			border-bottom:solid 1px white;
			font: 300 1.0rem/1.25rem Elza, serif;
			cursor:pointer;
		}

	.bubble_vis {
		width: 300vw;
		height: 300vh;
		border-radius: 300vw;
		top: 0;
	}
	.bubble_vis .bubble_title {
		opacity:0;
	}
	
		.bubble_vis_right {
			right: -50vw;
		}
		.bubble_vis_left {
			right: -100vw;
		}
		
	.tool {
		color: #fff;
		position: fixed;
		width: 100% !important;
		max-width: 100% !important;
		top: 25vh;
		height: calc(100vh + 30px);
		transition: all 0.6s cubic-bezier(.17,.84,.44,1) 0s;
		background:var(--color_bluereal);
		display:flex;
		z-index: 20;
		opacity:0;
		visibility:hidden;
		overflow: auto;
	}
	.tool_vis {
		top:0;
		opacity:1;
		visibility:visible;
	}
	
	.tool .content_wrapper {
		background: var(--color_bluereal);
		padding:25vh 0;
	}
	
		.tool figure {
			background: var(--color_bluereal);
		}
		.tool img {
			mix-blend-mode: lighten;
			filter: grayscale(100);
		}
		.tool figcaption {
			color:rgba(255,255,255,0.8);
		}
		
	.onglet_closer {
		position: fixed;
		height: 26.5vh;
		top: 0;
		left: 0;
		width: 0;
		transition: all 0.6s cubic-bezier(.17,.84,.44,1) 0s;
		cursor:pointer;
	}
	.onglet_closer_active {
		width:12.5%;
		background: transparent;
		z-index: 12;
	}
	
			span.submenu {
				visibility:hidden;
				display:block;
				overflow:hidden;
				transition:all 0.3s cubic-bezier(.17,.84,.44,1) 0s;
				background:#fff;
				min-height: 100vh;
				padding: 40px 20px 20px 40px;
				width:100%;
			}
				span.submenu_on {
					visibility: visible;
					top: 0;
					display: block;
					position: fixed;
				}
				

		.meta_menu_wrapper {
			width:100%;
			display:block;
			height:23.75vh;
		}
		
		
				
		.meta_menu {
			width: 47.5%;
			margin-left: 31%;
			display: flex;
			/*! flex-direction: column; */
			/*! height: calc(23.5vh); */
			flex-wrap:wrap;
			/*! background: red; */
		}

		a.filter {
			font: 300 1.0rem/1.25rem Elza, serif;
			padding:0 0 6px;
			width:30%;
		}
	
/* global margin system */
	.page {
		min-height: 100%;
		padding: 0;
	}
	.page > div, .page > span, #search {
		margin: 0 auto 40px;
	}
	#view {
		margin: 0;
		overflow:hidden;
		position:relative;
		z-index:2;
		padding-top:34vh;
		padding-bottom:10vh;
		display:flex;
		flex-wrap: wrap;
		opacity:0;
	}
	.page.coloured > div, .page.coloured > p, .page.coloured a, .page.coloured > h1 {
		color:#fff !important;
	}
	.page.coloured a {
		border-bottom-color:#fff !important;
	}
	.page, .list {
		/*! min-height: 100vh; */
	}
		.list {
			margin-bottom: 100px;
			margin-top: 100px;
		}
		.page + .page_home {
			min-height: 0;
			margin-bottom: 0;
		}
		.cal_content_wrapper{
			margin-bottom: 100px;
		}
	
.col_meta.meta_hidden {
	opacity: 0;
	width: 0;
	display: none;
}
	
	.__deployed .content_wrapper {
		/* margin-left:16.6666%; */
	}
	.content_wrapper, .protected_content_wrapper {
		width:100%;
		/* transition: all 0.3s cubic-bezier(.17,.84,.44,1) 0s; */
		margin-left:0;
		display:flex;
		flex-wrap:wrap;
		justify-content: flex-start;
	}
	.intro .content_wrapper {
		/* margin-top:100vh; */
	}	

.content_wrapper.delay_intro {
	transition: all 1s cubic-bezier(.17,.84,.44,1) 0.6s;
}

	/* .title_wrapper h2, .anchor_menu, .text_editable, .text_prod, .doc_editable, .doc_prod, .intertitle_editable, .intertitle_prod, .h2_editable, .h2_prod, .quote_editable, .quote_prod, .audio_editable, .audio_prod, .collapsible_editable, .collapsible_prod, .table_editable, .table_prod, .ul_editable, .ul_prod, .twocol_editable, .twocol_prod,.threecol_editable, .threecol_prod, .thumb_wrapper, .item_link_editable, .item_link_prod, .note_wrapper, .page .notes, .meta_end { */
		/* margin: 0 auto 40px; */
	/* } */
	/* Single article top section */
	.page .top_section_wrapper, .list div.list_title {
		margin-left: 31%;
		min-height: 15vh;
		display:flex;
		align-items:flex-start;
		width:66.5%;
		z-index: 0;
	}
	
	.head_title {
		display: flex;
		flex-wrap: wrap;
		width:100%;
	}
		.title_wrapper {
			width: calc(14.2857% * 8);
		}
		.page .invisible_title {
			opacity:0;
			visibility:hidden;
			margin-top:calc(-23.75vh / 2);
			min-height: 0;
		}
		.page_editor .invisible_title {
			opacity: 0.25;
			visibility:visible;
			margin-top:0;
		}

		.head_title h1 {
			font: 500 3.157rem/3.5rem Elza, sans-serif;
			padding: 0;
			margin: 0;
			display:inline-block;
		}
			.tool .head_title h1 {
				font: 900 4.209rem/5rem Elza, sans-serif;
			}
		.head_title h2 {
			font: 300 1.333rem/1.9rem Elza, sans-serif;
			padding: 0;
			margin: 0;
			display: block;
			color: var(--color_bluereal);
		}

		.page .head_title .date {
			display: inline-block;
		}		
		
		.head_title .title_pic, .head_title figure.large {
			width: 100%;
			padding: 0;
			margin: 0;
		}
		.page .head_title span.cat {
			display:block;
			font: 300 1.777rem/1.9rem Elza, sans-serif;
			padding-left: 2px;
		}
		
		.page_editor .head_title h1, .page_editor .head_title h2, .page_editor .head_title span.cat {
			transform:translateY(0) skew(0deg);
			opacity:1;
		}
		
	/* !!END!! Single article top section */
	
	.page p.infos, .page p.notes, div.doc_prod + div.doc_prod {
		margin-top: -35px;
	}
		.page hr + p.infos {
			margin-top: 0;
		}
		.page .col_meta + p.infos, .page .col_meta + p.notes,
		.page h3 + p.infos, .page h3 + p.notes,
		.twocol_elem > p.infos:first-child, .twocol_elem > p.notes:first-child,
		.page .panel > p.infos,
		.page p.infos + p.notes {
			margin-top: 0 !important;
		}
		
	.popup_content p.infos, .popup_content p.notes, div.doc_prod + div.doc_prod {
		margin-top: -35px !important;
	}
		.popup_content hr + p.infos {
			margin-top: 0 !important;
		}
		
	.text_sugg {
		margin-left: 60px !important;
	}
		
	hr.large {
		color:transparent;
		margin-bottom:65px;
	}
		
	hr.h_puce {
		/*! background: #00f; */
		height: 1.1rem;
		width: 3vw;
		display: block;
		text-align: left;
		margin: 0 0 10px 0;
		border: none;
		line-height: 0;
	}
		.extra_wrapper hr.h_puce { /*rÃ©glage pour en lien .item_link_prod */
			/* margin-bottom: 6px; */
		}
/* !!END!! global margin system */

/* Global hyphens small texte */
	.page .twocol_elem > *, .page .threecol_elem > *{
		hyphens: initial;
	}

/* global user-select: none; */
	.anchor_menu.ui-sortable-handle, .msg_bar, .twocol_editable .twocol_elem_select::before, label, span.tooltip, .article_item, span.icon_title, figure img, span.tag, .wrapper_fs, .anchor_menu, .mainlogo, ul#nav, .title_wrapper.title_editable, .col_meta.editable, .title_number, .meta_static_img, .item_fake {
		-webkit-touch-callout: none; /* iOS Safari */
		-webkit-user-select: none; /* Safari */
		-khtml-user-select: none; /* Konqueror HTML */
		-moz-user-select: none; /* Firefox */
		-ms-user-select: none; /* Internet Explorer/Edge */
		user-select: none; /* Non-prefixed version, currently */
	}
	
/* global add puce before */
	.page span.meta_static, .page span.meta_dynamic,
	.page .anchor_menu, .page .extra_wrapper .related, .page .extra_wrapper .cat, .page .extra_wrapper .tags {
		position: relative;
		display: block;
	}

	.doc_img span.download_lgd::before, .meta_static::before, .meta_dynamic::before,
	.anchor_menu::before,
	.blog_info::before {
		display: block;
		line-height: 0;
		margin-bottom: 10px;
		top: 10px;
		content: "";
		width: 29px;
		height: 6px;
		overflow: hidden;
		background-color: var(--color_a);
	}

		/* .extra_wrapper .dates::before { */
			/* content: 'Dates'; */
			/* font: 500 1rem/3rem Elza, Arial, sans-serif; */
			/* display: block; */
			/* padding-left: 10px; */
		/* } */
			.extra_wrapper .dates p {
				font-size: 1rem;
				line-height: 1.5rem;
			}
			.extra_wrapper .dates.multicol p {
				column-count: 1;
			}
			.blink_me {
				font-weight: 500;
			}
				.blink_me::before {
					display: block;
					font-family: "Material Icons Outlined";
					content: "chevron_right";
					line-height: 0;
					margin-left: -20px;
					/* animation: blinker 1s linear infinite; */
					position: relative;
					top: 13px;
				}

			@keyframes blinker {
			  50% {
				opacity: 0;
			  }
			}
		.extra_wrapper .related::before, .extra_wrapper .cat::before, .extra_wrapper .tags::before {
			font: 500 1rem/2rem Elza, Arial, sans-serif;
			display: block;
			padding-top: 10px;
		}			
		 .related::before{
			content: 'En lien';
		}
		.extra_wrapper .cat::before{
			content: 'CatÃ©gorie';
		}
		.extra_wrapper .tags::before{
			content: 'ThÃ¨me(s)';
		}
			.extra_wrapper .cat, .extra_wrapper .tags, .extra_wrapper .related {
				padding-left: 10px;
			}
			
			html[xml\:lang="en"] .extra_wrapper .related::before{
				content: 'Related';
			}
			html[xml\:lang="en"] .extra_wrapper .cat::before{
				content: 'Category';
			}
			html[xml\:lang="en"] .extra_wrapper .tags::before{
				content: 'Temas';
			}
/* general fonts styles & stuffs */
	h1 {
		font: 500 4.5rem/4.4rem Elza, serif;
	}

	h3 {
		font: 300 1.333rem/1.333rem Elza, sans-serif;
		display: block;
		margin: 0 2.5%;
		border-top: solid 2px;
		overflow: hidden;
		width: 100%;
        max-width:28.5%;
	}
		h3.type_two {
			border-top: none;
		}
		h3.type_two span.left_line, .home_folder_title span.left_line {
			display:block;
			content:' ';
			width:14%;
			height:0.5rem;
			background:var(--color_bluereal);
		}
		
		span.h3_content {
			display:block;
			padding-top: 9px;
		}
	h3.minus {
		font: 500 1.06rem/1.5rem Elza, sans-serif;
	}
	/* global link rules */
	.page a, .list a, .actu_wrapper a,
	span.audio_title a, .list_item a, .cal_content_wrapper a,
	.note_wrapper span.note_text a, td a, .popup_content a {
		color: var(--color_a);
		text-decoration: none;
	}
		b a {
				border-width: 2px;
			}
	h2 a, .text_editable a, .text_prod a, .ul_editable a, .ul_prod a,
	span.audio_title a, p a, 
	.lgd_fs a, figcaption a,
	.note_wrapper span.note_text a, td a {
		border-bottom: 1px solid var(--color_a);
	}
		a.tech_tool {
			color: #000;
		}
		.lgd_fs a {
			color: #fff;
			text-decoration: none;
			border-bottom: 1px solid #fff;
		}
		a.intext_doc::before {
			font-family: 'Material Icons Outlined';
			display: inline;
			content: 'description';
			font-size: 1.5rem;
			vertical-align: bottom;
			padding-right: 5px;
		}
		p:not(.pbig) a.btn {
			font: 300 1rem/2.3rem Elza, sans-serif;
			margin: 10px 0;
			padding: 0 10px;
			color: white;
			width: max-content;
			display: inline-block;
			cursor: pointer;
			overflow: hidden;
			max-width: 100%;
			text-overflow: ellipsis;
			white-space: nowrap;
			word-break: keep-all;
			background-color: var(--color_bluereal);
			border: 1px solid var(--color_bluereal);
			border-radius: 4px;
			transition: all 0.3s ease-out;
		}
			p.notes a.btn:first-child, p.notes a.btn + a.btn  {
				margin-top: 0;
			}
		p:not(.pbig) a.arrowed, table a.arrowed, .tags a {
			font: 300 1rem/1.35rem Elza, sans-serif;
			width: max-content;
			display: block;
			cursor: pointer;
			overflow: hidden;
			max-width: 100%;
			text-overflow: ellipsis;
			white-space: nowrap;
			word-break: keep-all;
			padding: 0;
			border-bottom: none;
		}
			p:not(.pbig) a.arrowed{
				max-width: 50%;
			}
			p.notes a.arrowed, .twocol_elem p a.arrowed {
				max-width: 80%;
			}
			.related a {
				white-space: break-spaces;
				word-break: break-word;
				margin: 0;
				display: block;				
			}
		p:not(.pbig) a.arrowed::before, td a.arrowed::before, .extra_wrapper .tags a::before, .extra_wrapper .cat a::before, .extra_wrapper .related a::before, nav a.arrowed::before {
			font-family: "Material Icons Outlined";
			content: "chevron_right";
			line-height: 0;
			vertical-align: sub;
			font-size: 1rem;
			padding-right: 0;
		}
			nav a.filter_school::before {
				font-family: "Material Icons Outlined";
				content: "school";
				line-height: 0;
				vertical-align: middle;
				font-size: 1rem;
				padding-right: 5px;
			}
			nav a.filter_year::before {
				font-family: "Material Icons Outlined";
				content: "calendar_month";
				line-height: 0;
				vertical-align: middle;
				font-size: 1rem;
				padding-right: 5px;
			}
		p:not(.pbig) a.btn:hover, span.download_lgd:hover {
			color: var(--color_bluereal);
			border-color: var(--color_bluereal);
			background-color: rgba(0,0,0,0);
		}
	/* all a:hover */
	h2 a:hover, .text_editable a:hover, .text_prod a:hover, .ul_editable a:hover, .ul_prod a:hover,
	span.audio_title a:hover, p a:hover, 
	.lgd_fs a:hover, figcaption a:hover, 
	.anchor_menu a:hover, .related a:hover, .tags a:hover, .tag a:hover, .cat a:hover,
	.module_wrapper .module_more a:hover, 
	.note_wrapper span.note_text a:hover,
	nav.sub_cat a:hover {
		color: var(--color_b);
	}
	
	/* !!END!! link */
	p.text_editable, p.text_prod {
		z-index: 0;
		font-size: 1.0rem;
		line-height: 1.6rem;
		font-weight:300;
	}
	
	p.exergue {
		font:300 1.333rem/1.75rem Elza, serif;
	}
	
		p.pbig, p.pbig b, p.pbig strong, p.focused, p.focused b, p.focused strong {
			font:500 3.157rem/3.5rem Elza, sans-serif;
		}
		
		.big_appear {
			display:inline-block;
			opacity:0;
		}
		.big_appear span {
			display:inline-block;
			transition:all 0.6s ease 0s;
		}
			p.pbig sup {
				font-weight: 300 !important;
			}
			p.pbig img {
				transition:all 0.3s ease-in-out 0s;
			}
		p.infos, p.notes, span.note_text, span.note_n, span.audio_title {
			font-size: 1rem;
			line-height: 1.5rem;
		}
		.tech_fs {
			font: 300 1.2rem/1.85rem Elza, sans-serif;
		}
	b, strong {
		font-weight: 500;
	}
	u {
		text-decoration: none;
	}
	sup, a.note {
		text-decoration: none;
		border-bottom: none;
		line-height: 0;
	}
	a.note {
		font-variant-numeric: diagonal-fractions;
	}
	b sup {
		font-weight: 500;
	}
	i sup {
		font-style: italic;
	}
	.ul_editable, .ul_prod {
/* 		font-size: 1.15em;
		line-height: 1.8em; */
		padding: 6px 10px;
		margin-left: 1em;
		list-style-position: inside;
	}
	.doc_prod + .doc_prod, .doc_editable + .doc_editable {
		margin-top: -40px;
	}
	span.download_lgd {
		cursor: pointer;
		font: 300 .9rem/2.2rem Elza, sans-serif;
		display: block;
		width: max-content;
		height: 2.5rem;
		max-height: 2.5rem;
		margin: 0 0 10px 0;
		padding: 0 10px 0 5px;
		border: 1px solid;
		background-color: rgba(255,255,255,0);		
		overflow: hidden;
		max-width: 80%;
		text-overflow: ellipsis;
		white-space: nowrap;
		word-break: keep-all;
	}
		.download_fig + span.download_lgd{
			height: auto;
			max-height: 100%;
			border: none;
		}		
		.download_fig + span.download_lgd:hover{
			background-color: rgba(255,255,255,0);
		}
	span.download_lgd::before {
		font-family: 'Material Icons Outlined';
		display: inline;
		content: 'description';
		font-size: 1.5rem;
		vertical-align: bottom;
		padding-right: 5px;
	}
/* !!END!! general fonts styles & stuffs */

/* anchor menu */
	.page .anchor_menu {
		display: flex;
		flex-direction: column;
	}
	.anchor_menu a {
		color: var(--color_a);
		margin-right: 30px;
		text-overflow: ellipsis;
		white-space: nowrap;
		word-break: keep-all;
		overflow: hidden;
		max-width: 100%;
		width: max-content;
		display: inline-block;
	}
	.page h3.isAnchorMenu {
		display: list-item;
		list-style-position: inside;
		list-style-type: '\25AC\0020';
		/* list-style-type: '\00A7\0020'; */
		/* list-style-type: '\0700'; */
	}
	.page h3.isAnchorMenu::marker {
		font-size: 29px;
		font-weight: 500;
	}
	.sub_filt_wrapper.multicol {
		column-count:2;
		column-gap:60px
	}
	.anchor_menu.multicol {
		display:block;
		column-count:2;
	}
		.anchor_menu.multicol a {
			display:block;
		}
/* !!END!! anchor menu */



/* blocs thumb */
	.page .thumb_wrapper {
		padding: 0;
	}
		p.infos + .thumb_wrapper {
			margin-top: -40px;
		}
	/*-- looks one */
	.thumb_wrapper.looks_one .thumb_editable, .thumb_wrapper.looks_one .thumb_prod {
		display: inline-block;
		line-height: 0;
		width: calc(20% - 10px);
		margin-right: 10px;
		margin-bottom: 10px;
		padding: 1rem;
	}
	.thumb_wrapper.looks_one .thumb_editable figure, .thumb_wrapper.looks_one .thumb_prod figure {
		margin: 0;
		padding: 0;
	}
	/*-- looks two */
	.thumb_wrapper.looks_two .thumb_editable_gallery, .thumb_wrapper.looks_two .thumb_prod_gallery {
		display: inline-block;
		width: 50%;
		vertical-align: middle;
		padding-right: 10px;
	}
	.thumb_wrapper.looks_two .thumb_editable_gallery.large,.thumb_wrapper.looks_two .thumb_prod_gallery.large {
		width: 100%;
	}
	/*-- looks three */
	.thumb_wrapper.looks_three .thumb_editable_gallery, .thumb_wrapper.looks_three .thumb_prod_gallery {
		display: inline-block;
		width: 50%;
		vertical-align: middle;
		padding-right: 10px;
		padding-bottom: 10px;
	}
		.thumb_wrapper.looks_three .thumb_editable_gallery:only-child, .thumb_wrapper.looks_three .thumb_prod_gallery:only-child {
			width: 100%;
		}
	/*-- looks four */
	.thumb_wrapper.looks_four .thumb_editable, .thumb_wrapper.looks_four .thumb_prod {
		display: inline-block;
		width: 33.33333333%;
		vertical-align: top;
		padding-right: 10px;
		margin-bottom:40px;
	}
		.looks_four figure {
			margin: 0;
			padding:1.8rem 0 0;
			transition:all 0.3s cubic-bezier(.4,0,.2,1) 0s;
		}
		.looks_four a figure {
			background:var(--color_e);
		}
		/*-- No caption with looks four... */
		.looks_four .legende {
			display:none;
		}
		/*-- ...except if there's a link ! */
		.looks_four a .legende {
			display:block;
			margin:0;
			padding:0 10px;
			font:300 1.2rem/1.8rem Elza, serif;
			color:var(--color_a);
			background:#fff;
			position:absolute;
			top:0;
		}
		/* Hover effect looks_four */
		.looks_four a img {
			mix-blend-mode: normal;
		}
		.looks_four a:hover img {
			mix-blend-mode: multiply;
		}
		
	/*-- looks five */
	.thumb_wrapper.looks_five {
		overflow: hidden;
	}	
		/*-- No caption with looks one... */
		.looks_one .legende {
			display:none;
		}
		.thumb_wrapper.looks_three .thumb_editable_gallery.large,.thumb_wrapper.looks_three .thumb_prod_gallery.large,
	.thumb_wrapper.looks_four .thumb_editable_gallery.large,.thumb_wrapper.looks_four .thumb_prod_gallery.large	{
		width: 100%;
	}
	.thumb_editable_gallery figure, .thumb_prod_gallery figure{
		margin-left: 0; 
		margin-bottom: 0;
	}


/* !!END!! blocs thumb */ 

/* blocs figure, video */ 
	figure {
		display: block;
		position: relative;
		margin: 0 0 0 0;
		line-height: 0;
		width: 100%;
	}
	
	figure.ghosted {
		display:none;
	}

	figure img {
		max-width:100%;
		width:100%;
	}
	figure figcaption {
		line-height:1.2rem;
		margin-top:0.6rem;
		font-size:0.75rem;
		transition:all 0.3s ease-in-out 0s;
		color: rgba(0,0,0,0.8);
	}
	figure.color_a figcaption {
		color: rgba(255,255,255,0.8);
	}
		figure.medium_left figcaption.legende {
			margin-left: 3.5714%;
		}
		figure.full figcaption.legende {
			margin-left: 2.5%;
		}
		.twocol_elem figure.full figcaption.legende, .threecol_elem figure.full figcaption.legende {
			margin-left: 0;
		}
		
		.type_one .twocol_elem:first-child figure.full figcaption.legende {
			margin-left:5%;
		}
		.type_two .twocol_elem:first-child figure.full figcaption.legende {
			margin-left:4.33%;
		}
		.type_three .twocol_elem:first-child figure.full figcaption.legende {
			margin-left:6.33%;
		}
		.type_four .twocol_elem:first-child figure.full figcaption.legende {
			margin-left:3.66%;
		}
		.type_five .twocol_elem:first-child figure.full figcaption.legende {
			margin-left:8%;
		}
		
	figcaption.__visible {
		opacity:1;
	}
	
	.thumb_wrapper figure {
		margin: 0;
	}

	.page figure.video {
		max-width: 100%;
		padding: 0;
		margin-top: 10px;
		background-color: rgba(255,255,255,0);
	}
	figure.video:hover {
		max-width: 100%;
		background-color: rgba(255,255,255,.5);
	}
	figure.video:hover img {
		mix-blend-mode: luminosity;
	}
	figure.video::after {
		display: inline-block;
		position: absolute;
		top: 50%;
		transform: translateY(-50%);
		width: 100%;
		text-align: center;
		color: rgb(255, 255, 255);
		font: 700 5em/50px 'Material Icons Outlined';
		content: "play_circle_outline";
		cursor: pointer;
		opacity: .5;
	}
	figure.video:hover::after {
		color: var(--col1);
	}
	img.video {
		display: block;
		min-width: 100%;
	}
/* !!END!! blocs figure, video */ 

/* bloc iframe */
.resp-container_prod, .resp-container_editable { 
	position: relative; 
	overflow: hidden; 
	/* padding-top: 56.25%;  */
	margin: 40px calc(-16.6666% * 0.5) 0 0;
	min-height:50px;
}
	div.no_toppad, div.no_toppad {
		padding-top: 0; 		
	}

div.resp-container_prod iframe, .resp-container_editable iframe { 
	position: absolute; 
	top: 0; 
	left: 0; 
	width: 100%; 
	height: 100%; 
	border: 0; 
}
.resp-container_prod,
.resp-container_editable
 {
    width: 100%;
}

input[name="newsletter"] {
	width: 100%;
	padding: 12px 12px 8px;
	border: 2px solid var(--color_bluereal);
	border-radius: 4px;
	box-sizing: border-box;
	resize: vertical;
	font-size: 1.333rem;
	font-family: 'Elza', Arial, sans-serif;
	font-weight: 300;
}
input[name="newsletter"]::placeholder {
	color: var(--color_bluereal);
}

div#response {
    position: absolute;
    width: 100%;
    height: 100%;
    background: var(--color_bluereal);
    top: 0;
    visibility: collapse;
    color: #fff;
    font: 300 1.333rem/1.7rem Elza;
    padding: 1rem;
    display: flex;
    align-content: center;
	justify-content: center;
}

div#response p {
	hyphens: initial;
	align-self: center;
	text-align: center;
}

p.right_align {
	text-align: right;
	margin: 0;
}
/* !!END!! bloc iframe */

/* bloc audio */
	.audio_prod {
		padding: 0;
	}
	audio {
		width: 100%;		
	}
	span.audio_title {
		/* Voir : p.text_editable.infos, p.text_prod.infos */
		display : block;
		padding-bottom: 10px;
	}
/* !!END!! bloc audio */

/* bloc lien article & lien document */
	.i_infos span.i_date, .i_infos span.i_cat, .i_infos span.i_title, .i_infos span.i_subtitle{
		display: block;
	}
	.i_infos span.i_subtitle {
		text-overflow: ellipsis;
		white-space: nowrap;
		word-break: keep-all;
		overflow: hidden;
		width: 100%;
	}
	.i_infos span.i_cat {
		font-weight: 500;
		color: var(--color_d);
		font-size: .9rem;
	}
	span.item_link_editable, span.item_link_prod, div.doc_img {
		display: block;
		padding: 0;
	}
	.item_link_editable a, .item_link_prod a, .doc_img a.download {
		display: flex;
		padding: 0;
		background-color: rgba(255,255,255,0);
		color: var(--color_a);
	}
		.doc_img a.download::before {
			display: none;
		}
	.item_link_editable a:hover, .doc_img a.download:hover {
		background-color: rgba(240,240,240,.5);
		color: var(--color_d);	
	}
	.item_link_editable a:hover * , .item_link_prod a:hover * {
		mix-blend-mode: multiply;
	}
	.item_link_editable figure.i_img, .item_link_prod figure.i_img, .doc_img a.download figure.download_fig {
		display: inline-block;
		margin: 0;
		padding: 10px 0 10px 0;
		flex: 0 0 calc(20% * 1.5);
		max-width: calc(20% * 1.5);
	}
	.item_link_editable figure.i_img, .item_link_prod figure.i_img{
		flex: 0 0 20%;
		max-width: 20%;
		padding: 0;
		margin-top: 10px;
	}
	figure.i_img,
	figure.i_img {
		background-color: rgba(255,255,255,.5);
	}
	span.item_link_editable:hover figure.i_img,
	span.item_link_prod:hover figure.i_img {
		background-color: var(--color_f);
	}
	.item_link_editable span.i_infos, .item_link_prod span.i_infos, .doc_img span.download_lgd {
		padding: 10px 10px 10px 20px;
		flex: 0 0 calc(20% * 3);
		max-width: calc(20% * 3);
	}
		/* If no img â€“ hide some stuff â€“ extrawrapper .related */
		.extrawrapper .related span.item_link_prod{
			margin-bottom: 10px;
		}
		.related .item_link_prod .i_infos:first-child hr.h_puce {
			display: none;
		}
		.related .item_link_prod a > span.i_infos {
			padding: 10px;
		}
		/**/

	.doc_img a.download:hover * {
		mix-blend-mode: luminosity;
		opacity: .95;
	}
	.doc_img span.download_lgd::before {
		/* Voir global add puce before */
	}
	.item_link_editable .i_infos::before, .item_link_prod .i_infos::before { /*XML-Lang*/
		content: "Voir aussi";
		font: 500 1rem/2rem Elza, Arial, sans-serif;
		display: block;
		margin-top: -10px;
	}
	html[xml\:lang="en"] .item_link_editable .i_infos::before,
	html[xml\:lang="en"] .item_link_prod .i_infos::before {
		content: "Related";
	}
		/* No "Before" */
		.item_link_editable.no_before .i_infos::before, .item_link_prod.no_before .i_infos::before {
			content: "";
			display:none;
		}
	.item_link_editable .i_title, .item_link_prod .i_title {
		font: 300 1.35rem/1.5rem Elza, serif;
	}
	.item_link_editable a:hover .i_title, .item_link_prod a:hover .i_title {
		text-decoration: underline;
	}
	.item_link_editable .subtitle, .item_link_prod .subtitle {
		letter-spacing: .01rem;
	}
	.item_link_editable .i_date, .item_link_prod .i_date, 
	.item_link_editable .h_puce, .item_link_prod .h_puce, 
	.item_link_editable .i_cat, .item_link_prod .i_cat {
		display: none !important;
	}
	.item_link_editable .i_subtitle, .item_link_prod .i_subtitle, 
	.item_link_editable .i_cat, .item_link_prod .i_cat,
	.doc_img span.download_lgd {
		font-size: 1rem;
		line-height: 1.5rem;
	}
	*:not(.item_link_prod) + .item_link_prod, *:not(.item_link_editable) + .item_link_editable {
		margin-bottom:20px;
	}
	.item_link_prod + .item_link_prod,	.item_link_editable + .item_link_editable {
		margin-bottom:20px;
	}
/* !!END!! bloc lien article */

/* blocs note related tags */
	a.note, .note_n a {
		/*voir sup*/
		color: var(--color_b);
		padding: 2px;
		}
	.page .note_wrapper {
		margin-top: 80px;
	}
	.page .note_wrapper, .page p.notes, .list p.notes  {
		column-gap: 20px;
		column-count: 3;
	}
		.list a.meta_menu_selected.arrowed{
			font-weight: 500;
		}
		.page .twocol_wrapper .notes{
			column-count: 2;
		}
		div.note_content {
			display: inline-block;
			padding: 0 10px 1.5rem 0;
		}
		span.note_n::after {
			content: ". ";
		}
		span.note_text {
			/* Voir p.text_editable.infos, p.text_prod.infos */
		}


/* !!END!! blocs note related */


/* bloc de citation */
	.page blockquote, .popup_content blockquote {
		display: flex;
		justify-content: center;
		align-items: flex-end;
		flex-direction: column;
		margin-top: 80px;
		margin-bottom: 80px;
	}

	blockquote p {
		font: 500 1.6rem/2rem Elza, serif;
		margin: 0 0 20px 0;
		text-indent: 1.5rem;
	}
		blockquote p::before {
			content: "Â«";
			padding: 0 .1rem 0 0;
		}
		blockquote p::after {
			padding: 0 0 0 .1rem;
			content: "Â»";
		}
	blockquote footer {
		font-size: 1.15rem;
		line-height: 1.55rem;
		min-width: 50%;
		max-width: 50%;
	}
	blockquote footer::before{
		content: "â€”";
		padding-right: .1rem;
	}
	blockquote.eminem{
		text-indent: 0;
	}
	blockquote.eminem p::before, blockquote.eminem p::after, blockquote.eminem footer::before{
		display: none;
	}
	blockquote.eminem p {
		margin-right:0;
	}
	blockquote.color04 {
		background:var(--color04);
		padding:40px 20px;
	}
	.page blockquote p a {
		border:none;
		text-decoration:underline;
	}

/* !!END!! bloc de citation */

/* bloc table & hr */

	hr.hr_editable, hr.hr_prod {
		height: 5vw;
		margin:0;
		border: none;
		width: 100%;
	}
	table.table_editable, table.table_prod {
		border-collapse: collapse;
		padding: 0;
		/* table-layout */
		table-layout: fixed;
	}
	/* tr:nth-child(1) td:nth-child(1)::before { */
		/* display: block; */
		/* content:' '; */
		/* position:absolute; */
		/* left:0; */
		/* top:3px; */
		/* background: var(--color_bluereal); */
		/* height: 5px; */
		/* width: 30px; */
	/* } */
	
	.page hr.hr_vis, .popup_content hr.hr_vis {
		border-bottom: 1px solid var(--color_d);
		margin-bottom: 70px;
	}
	
	td {
		font-size: 1.0rem;
		line-height: 1.5rem;
		display:table-cell;
		vertical-align: top;
		padding: 0.4rem 0;
	}
	
	tr, td {
		position:relative;
	}
	
	tr {
		padding:4px 0;
		border-top: solid 1px transparent;
	}

	td.left_align {
		text-align:left;
	}
	td.right_align {
		text-align:right;
	}
	td:first-child {
		font-weight: 500;
	}
	td:nth-child(2n-1) {
		width:70%;
		padding-right:20px;
	}
	
	td:nth-child(2n) {
		width:130%;
	}
	
	hr.hr_thin, .page hr.hr_thin, .popup_content hr.hr_thin {
		height:1.5vw;
	}
	hr.hr_extra, .page hr.hr_extra, .popup_content hr.hr_extra {
		height:9vw;
	}
	
	hr.clearer {
		clear: left;
		margin-bottom: 0;
		padding-bottom: 0;
	}
	hr.hr_editable.clearer {
		background-color: var(--color_e);
	}
	hr.hr_prod.clearer {
		height: 0;
	}


/* !!END!! bloc table & hr */

/* bloc accordeon */
	.collapsible_editable, .collapsible_prod {
		border-top: 1px solid var(--color_d);
		border-bottom: 1px solid var(--color_d);
	}

	.page .collapsible_editable + .collapsible_editable, .page .collapsible_prod + .collapsible_prod,
	.popup_content .collapsible_editable + .collapsible_editable, .popup_content .collapsible_prod + .collapsible_prod
	{
		border-top: none;
		margin-top: -40px !important;
	}

	button.accordion {
		color: var(--color_a);
		cursor: pointer;
		padding: 6px 0;
		width: 100%;
		border: none;
		text-align: left;
		outline: none;
		font: 500 1.4rem Elza, sans-serif;
		background: transparent;
	}
	.discrete button.accordion {
		font: 300 1rem Elza, sans-serif;
		padding-bottom: 0;
	}
		button.accordion::after {
			content: '\002B';
			color: #777;
			font-weight: 500;
			float: right;
			margin-left: 5px;
		}
		button.accordion.active::after {
			content: '\002D';
		}
		button.accordion.accordion-disabled{
			cursor: text;
			user-select: auto;
		}
		button.accordion.accordion-disabled::after {
			content: '';
		}
		.panel {
			padding: 0 0px;
			max-height: 0;
			overflow: hidden;
		}
		.panel.opened {
			max-height:300vh;
		}
		.panel p {
			padding: 10px 0 20px;
			margin: 0;
		}
		

/* !!END!! bloc accordeon */

div.clear {
	clear: both;
	padding: 0;
	margin: 0 auto;
	visibility: hidden;
}

/* blocs 2 / 3 colonnes */

	.page .twocol_wrapper, .page .threecol_wrapper {
		display: flex;
		min-height: 150px;
		padding: 0;
		width: 100%;
	}
	.page .threecol_wrapper {
		display: flex;
		justify-content: space-between;
		min-height: 150px;
		padding: 0;
		margin-left: 2.5%;
		margin-right: 2.5%;
		flex-wrap:wrap;
	}
		.twocol_wrapper.color_a, .threecol_wrapper.color_a {
			color:#fff;
		}
	
	.page .threecol_wrapper.type_two {
		margin-left:31%;
	}
	.page .threecol_wrapper.type_three {
		margin-left:7.5%;
		margin-right:26.4%;
	}
	
	.twocol_elem, .threecol_elem {
		/* overflow: hidden; */
		align-items: center;
		display: flex;
		flex-wrap:wrap;
	}
		.twocol_wrapper.topalign .twocol_elem, .threecol_wrapper.topalign .threecol_elem {
			align-items: flex-start;
			flex-flow: column wrap;
		}

	.twocol_elem {
		width: 50%;
	}
	.threecol_elem {
		width: 30%;
	}
	.type_two .threecol_elem, .type_three .threecol_elem {
		width: 28.6%;
	}
	.twocol_elem figcaption.legende {
		margin-right: 0;
	}
	
	/* Animation + editor reset to cancel animation */
	
	.faketitle_prod, p.classic, p.exergue, figure.pic_prod, figure.__bg img, .footer_col, .head_title, .tr_prod {
		opacity:0;
		transform:translateY(100px);
	}
	
	.page_editor .faketitle_prod, .page_editor p.classic, .page_editor p.exergue, .page_editor figure.pic_prod, .page_editor figure.__bg img, .page_editor .footer_col, .page_editor .head_title, .page_editor .tr_prod {
		opacity:1;
		transform:translateY(0);
	}
	
	/* TWO COLS */
	
	/* 50% / 50% */
	.twocol_elem:first-child .classic, .twocol_elem:first-child .exergue, .twocol_elem:first-child .table, .twocol_elem:first-child .pbig, .twocol_elem:first-child .focused, .twocol_elem:first-child .faketitle_editable, .twocol_elem:first-child .faketitle_prod {
		width:57%;
		margin:0 19% 0 24%;
	}
	.twocol_elem:last-child .classic, .twocol_elem:last-child .exergue, .twocol_elem:last-child .table, .twocol_elem:last-child .pbig, .twocol_elem:last-child .focused, .twocol_elem:last-child .faketitle_editable, .twocol_elem:last-child .faketitle_prod  {
		width:57%;
		margin:0 24% 0 19%;
	}
	
	/* 60% * 40% */
	.type_two .twocol_elem:first-child .classic, .type_two .twocol_elem:first-child .exergue, .type_two .twocol_elem:first-child .table, .type_two .twocol_elem:first-child .pbig, .type_two .twocol_elem:first-child .focused, .type_two .twocol_elem:first-child .faketitle_editable, .type_two .twocol_elem:first-child .faketitle_prod {
		width:64%;
		margin:0 16% 0 20.1%;
	}
	.type_two .twocol_elem:last-child .classic, .type_two .twocol_elem:last-child .exergue, .type_two .twocol_elem:last-child .table , .type_two .twocol_elem:last-child .pbig, .type_two .twocol_elem:last-child .focused, .type_two .twocol_elem:last-child .focused, .type_two .twocol_elem:last-child .faketitle_editable, .type_two .twocol_elem:last-child .faketitle_prod {
		width: 58.5%;
		margin: 0 29.5% 0 12%;
	}
	
	/* 40% / 60% */
	.type_three .twocol_elem:first-child .classic, .type_three .twocol_elem:first-child .exergue, .type_three .twocol_elem:first-child .table, .type_three .twocol_elem:first-child .pbig, .type_three .twocol_elem:first-child .focused, .type_three .twocol_elem:first-child .faketitle_editable, .type_three .twocol_elem:first-child .faketitle_prod {
		width:59%;
		margin:0 11.5% 0 29.5%;
	}
	.type_three .twocol_elem:last-child .classic, .type_three .twocol_elem:last-child .exergue, .type_three .twocol_elem:last-child .table, .type_three .twocol_elem:last-child .pbig, .type_three .twocol_elem:last-child .focused, .type_three .twocol_elem:last-child .faketitle_editable, .type_three .twocol_elem:last-child .faketitle_prod {
		width: 64%;
		margin:0 24% 0 16%;
	}
	
	/* 70% / 30% */
	.type_four .twocol_elem:first-child .classic, .type_four .twocol_elem:first-child .exergue, .type_four .twocol_elem:first-child .table, .type_four .twocol_elem:first-child .pbig, .type_four .twocol_elem:first-child .focused, .type_four .twocol_elem:first-child .faketitle_editable, .type_four .twocol_elem:first-child .faketitle_prod {
		width:55%;
		margin:0 21% 0 24%;
	}
	.type_four .twocol_elem:last-child .classic, .type_four .twocol_elem:last-child .exergue, .type_four .twocol_elem:last-child .table, .type_four .twocol_elem:last-child .pbig, .type_four .twocol_elem:last-child .focused, .type_four .twocol_elem:last-child .faketitle_editable, .type_four .twocol_elem:last-child .faketitle_prod {
		width:62%;
		margin:0 23% 0 15%;
	}
	
	/* 30% / 70% */
	.type_five .twocol_elem:first-child .classic, .type_five .twocol_elem:first-child .exergue, .type_five .twocol_elem:first-child .table, .type_five .twocol_elem:first-child .pbig, .type_five .twocol_elem:first-child .focused, .type_five .twocol_elem:first-child .faketitle_editable, .type_five .twocol_elem:first-child .faketitle_prod { 
		width:60%;
		margin:0 16% 0 24%;
	}
	.type_five .twocol_elem:last-child .classic, .type_five .twocol_elem:last-child .exergue, .type_five .twocol_elem:last-child .table, .type_five .twocol_elem:last-child .pbig, .type_five .twocol_elem:last-child .focused, .type_five .twocol_elem:last-child .faketitle_editable, .type_five .twocol_elem:last-child .faketitle_prod { 
		width:68.8%;
		margin:0 17.3% 0 13.9%;
	}
	
	/* TITLE TYPE */
	.type_title .twocol_elem:first-child .classic, .type_title .twocol_elem:first-child .exergue, .type_title .twocol_elem:first-child .table
	{
		width: 70%;
		margin: 0 15% 0 15%;
	}
	.type_title .twocol_elem:first-child .pbig, .type_title .twocol_elem:first-child .focused, .type_title .twocol_elem:first-child .faketitle_editable, .type_title .twocol_elem:first-child .faketitle_prod
	{
		width: 95%;
		margin: 0 5% 0 0;
	}
	
	.type_title .twocol_elem:last-child .classic, .type_title .twocol_elem:last-child .exergue, .type_title .twocol_elem:last-child .table, .type_title .twocol_elem:last-child .pbig, .type_title .twocol_elem:last-child .focused, .type_title .twocol_elem:last-child .faketitle_editable, .type_title .twocol_elem:last-child .faketitle_prod
	{
		width: 94%;
		margin: 0 6% 0 0;
	}
	
	
	
	.twocol_elem table.table_editable, .twocol_elem table.table_prod {
		width: 80%;
	}
	.twocol_elem figure.full,
	.twocol_elem figure.video {
		padding: 0;
		margin:0;
		width: 100%;
	}
		.twocol_elem:first-child figure.full.verti {
			padding: 0 19% 0 24%;
		}
		.type_two .twocol_elem:first-child figure.full.verti {
			padding: 0 16% 0 20%;
		}
		.type_three .twocol_elem:first-child figure.full.verti {
			padding: 0;
		}
		.type_four .twocol_elem:first-child figure.full.verti {
			padding: 0 13.6666% 0 17.5%;
		}
		.type_five .twocol_elem:first-child figure.full.verti {
			padding: 0 15% 0 8%;
		}
		.type_title .twocol_elem:first-child figure.full.verti {
			padding: 0%;
		}
		.twocol_elem:last-child figure.full.verti {
			padding: 0 24% 0 19%;
		}
		.type_two .twocol_elem:last-child figure.full.verti {
			padding: 0 6% 0 12%;
		}
		.type_four .twocol_elem:last-child figure.full.verti {
			padding: 0 8% 0 16.6666%;
		}
		.type_five .twocol_elem:last-child figure.full.verti {
			padding:0 17.3333% 0 13.6666%;
		}
		.type_title .twocol_elem:last-child figure.full.verti {
			padding: 0%;
		}
		.threecol_elem figure.full.verti {
			padding:0;
		}
		
	.twocol_elem figure.large_center {
		padding:0 5%;
		margin:0;
		width:100%;
	}
		.twocol_elem figure.large_center.verti {
			padding:0 5%;
		}
	.twocol_elem:first-child figure.medium_center {
		padding:0 0 0 24%;
		margin:0;
	}
	.twocol_elem:last-child figure.medium_center {
		padding:0 24% 0 0;
		margin:0;
	}
	
	.type_two .twocol_elem:first-child figure.medium_center, .type_two .twocol_elem:first-child figure.large_center {
		padding:0 16% 0 20.1%;
	}
	.type_two .twocol_elem:last-child figure.large_center {
		padding:0 29.5% 0 0%;
	}
	.type_two .twocol_elem:last-child figure.medium_center {
		padding:0 29.5% 0 12%;
	}
	
	.type_three .twocol_elem:first-child figure.medium_center {
		padding:0 11.5% 0 29.5%;
	}
	.type_three .twocol_elem:first-child figure.large_center {
		padding:0 0 0 29.5%;
	}
	.type_three .twocol_elem:last-child figure.medium_center {
		padding:0 20% 0 16%;
	}
	.type_three .twocol_elem:last-child figure.large_center {
		padding:0 4.25% 0 16%;
	}
	
	.type_four .twocol_elem:first-child figure.medium_center {
		padding:0 21% 0 24%;
	}
	.type_four .twocol_elem:first-child figure.large_center {
		padding:0 13.7% 0 24%;
	}
	.type_four .twocol_elem:last-child figure.medium_center {
		padding:0 23% 0 15%;
	}
	.type_four .twocol_elem:last-child figure.large_center {
		padding:0 23% 0 0;
	}
	
	.type_five .twocol_elem:first-child figure.medium_center {
		padding:0 16% 0 24%;
	}
	.type_five .twocol_elem:first-child figure.large_center {
		padding:0 0 0 24%;
	}
	.type_five .twocol_elem:last-child figure.medium_center, .type_five .twocol_elem:last-child figure.large_center {
		padding:0 17.3% 0 13.9%;
	}
	
	.type_title .twocol_elem:first-child figure.medium_center, .type_title .twocol_elem:first-child figure.large_center {
		padding:0 17% 0 0;
	}
	.type_title .twocol_elem:last-child figure.medium_center {
		padding:0 17.3% 0 13.9%;
	}
	.type_title .twocol_elem:last-child figure.large_center {
		padding:0 6% 0 0;
	}
	
	.threecol_elem .classic, .threecol_elem .exergue, .threecol_elem .pbig, .threecol_elem .focused, .threecol_elem .table {
		width:100%;
		margin:0;
	}
	.threecol_elem .faketitle_editable, .threecol_elem .faketitle_prod
	{
		width:100%;
		margin: 0 0 1.5vw 0;
	}
	.threecol_elem figure.full
	{
		width:100%;
		margin: 0 0 1.5vw 0;
	}

	
/* Popup */
#popup_display {
	position: fixed;
	top: 0;
	right:0;
	left:0;
	bottom:0;
	z-index: 12;
	overflow: auto;
	background: rgba(255,255,255,0.9);
	width: 100%;
	height: 100vh;
	padding-top: 100px;
	padding-left: calc(30% - 40px);
	padding-right: calc(20% - 40px);
	display:none;
}
	.popup_content {
		background: #fff;
		/* border: solid 1px var(--color_a); */
		padding: 40px;
		margin-bottom:100px;
		position:relative;
		z-index:1;
	}
	
.popup {
	display:none;
	/* min-height: 150px; */
}

a.popup_bt {
	display:block;
	width:100%;
	height:100vh;
	color: var(--color_a);
	position:fixed;
	top:0;
	right:0;
	bottom:0;
	left:0;
	z-index:0;
	background:rgba(0,0,0,0);
	transition:all 0.3s ease 0s;
}
a.popup_bt:hover {
	background:rgba(0,0,0,0.1);
}
a.popup_bt::after {
	font: 700 1rem/60px 'Material Icons Outlined' !important;
	display: inline-block;
	width: 60px;
	text-align: center;
	vertical-align: middle;
	position:fixed;
	right:0;
	top:0;
}


/* Meta data colonne */
	.noLeftMenu .col_meta {
		/* visibility: hidden; */
	}
	
	.meta_end {
		display: none;
		padding: 0
	}
		.page .col_meta + .content_wrapper .col_meta {
			display: none;
		}
	p.col_meta:not(.meta_end) > *, div.col_meta > * {
		/* padding: 10px 40px 10px 10px; */
	}
	span.meta_static, span.meta_dynamic {
		padding-bottom: 1.5rem;
		line-height: 1.5rem;
	}
	span.meta_static::before, span.meta_dynamic::before {
		/* Voir global add puce before */
	}
	.page .meta_dynamic:empty, .page .meta_hidden .meta_static {
		display: none;
	}
	.meta_static_img a {
		border: none;
	}
	.meta_static_img a:hover {
		color: #000;
		opacity: .8;
	}
	.meta_static_img img {
		max-width: 100%;
	}


/* evenements agendable */
	span.date, div.dates {
		font: 300 1.999rem/7rem Elza, sans-serif;
	}
	.date span, .list_event span, .i_date span, .date_calendar span {
		font-weight: 300;
	}
	.item_calendar > .infos_calendar:first-child {
		background: rgba(0,0,0,.1);
		height: 100%;
	}

/* !!END evenements agendable */


/* Current stuff */
	
	/* Blog */
	.list.blog h1 {
		font: 500 4.5rem/4.4rem Elza, serif;
		padding: 1.4rem 0 0 0;
	}
	.list.blog .blog_info {
		font: 300 1rem/1.35rem Elza, sans-serif;
		max-width: 80%;
	}
	.blog_wrapper a.blog_link {
		display: block;
		margin-bottom: 40px;
	}
	.blog_link div.blog_item {
		background-color: rgba(240,240,240,0);
	}
	.blog_link:hover div.blog_item {
		background-color: var(--color_e);
	}
		a.blog_link:hover .blog_image_wrapper,
		a.blog_link:hover .blog_image_wrapper {
			mix-blend-mode: multiply;
		}
	.list .blog_item {
		display: flex;
		flex-flow: row wrap;
		padding: 0 !important;
		margin-bottom: 0 !important;
		position: relative;
	}
	.blog_image_wrapper{
		flex-basis: calc(16.66666% *1.5);
		max-width: calc(16.66666% *1.5);
		padding: 10px 0;
		margin-right: 40px;
	}
	.blog_item_content{
		flex-basis: calc(16.66666% *4);
		max-width: calc(16.66666% *4);
		padding: 10px;
		display: flex;
		flex-flow: column nowrap;
	}
	.blog_item figure {
		margin: 0;
		padding: 0;
	}	
	.list_title + span.chapeau {
		padding-top: 20px;
	}
	.list .blog_wrapper span.chapeau{
		
	}
	.list .blog_wrapper span.date,
	.list .blog_wrapper span.auteur {
		font: 300 .8rem Elza, sans-serif;
	}
	.list .blog_wrapper span.auteur{
		padding-bottom: 10px;
	}

	.page .module_wrapper .module_more { 
		padding: 0;
	}
	/*---------- Prod ----------*/
		/* Hide IE banner by default */
		.ie-notice { display: none; }
		/* Show IE banner on IE10/11 */
		@media screen and (-ms-high-contrast: active), screen and (-ms-high-contrast: none) {
		.ie-notice {
			display: block;
			position: fixed;
			bottom: 0;
			z-index: 99999;
			background-color: rgb(255, 255, 179);
			color: rgb(26, 26, 26);
			padding: 40px;
			width: 100%;
			font-size: 1.5rem;
			line-height: 1.8rem;
			text-align: center;
			-ms-user-select: none;
			cursor: default;
		}
		}

		a, figure.video {
			cursor: pointer;
			pointer-events: auto;
		}
		.excluded img.pic, .popup_content img {
			cursor: default;
		}
		a.pic_link img.pic {
			cursor:pointer;
		}

		/* gallery images & FS */
		.Fullscreen {
			height: 100%;
			position: fixed;
			left:100%;
			top: 0;
			right: 0;
			bottom: 0;
			background-color: rgba(255, 255, 255, 1);
			width: 100%;
			z-index: 11;
			transition:opacity 0.6s ease 0.2s, left 0.6s ease 0s;
		}
			.FS_hidden {
				opacity:0;
				left:100%;
			}
			.FS_anim {
				left:0;
				opacity:1;
			}
		.wrapper_fs {
			position: absolute;
			width: calc(100% - 80px);
			left: 0;
			top: 0;
			text-align: center;
			height: 100%;
			right: 0;
			bottom: 0;
			background: url("../imgs/loader.svg") no-repeat center center;
		}
			.wrapper_fs_xs {
				width: calc(100% - 380px);
			}
			.fs_image {
				vertical-align: middle;
				max-width: 100%;
				max-height: 100%;
				width: auto !important;
				height: auto !important;
				margin: auto;
				top: 0;
				left: 0;
				right: 0;
				bottom: 0;
				position: absolute;
				background: #fff;
			}
		.lgd_fs {
			position: absolute;
			right: -380px;
			width: 300px;
			padding: 40px 20px;
			color: #000;
			background:#fff;
			overflow: hidden;
			height: 100%;
			border-left: solid 1px rgba(255,255,255,0.5);
		}
			.lgd_fs_xl {
				right: 80px;
			}		
			.lgd_fs {
				transition:all 0.3s ease 0s;
			}
			img.fs_image {
				transition:none;
			}
		.tech_fs {
			position: absolute;
			right: 0;
			top: 0;
			width: 80px;
			height: 100%;
			color: #000;
			background: rgba(255, 255, 255, 1);
			display: flex;
			flex-direction: column;
		}
			.tech_tool {
				display: block;
				width: 100%;
				height: 60px;		
				border-bottom: solid 1px rgba(255,255,255,0.5);
			}
			a.tech_tool {
				cursor: pointer;
			}
			a.tech_tool::after {
				font: 700 1rem/60px 'Material Icons Outlined' !important;
				display: inline-block;
				width: 100%;
				text-align: center;
				vertical-align: middle;
			}
				a.close::after {
					content: 'close';
				}
				a.next::after {
					content: '\e5e1';
				}
				a.prev::after {
					content: '\e5e0';
				}
				a.lgd::after {
					content: 'info';
				}

			.count {
				font: 500 1rem/55px Elza, sans-serif;
				text-align: center;
			}
		/*	!!END!! gallery images */

		/* Search */
		#search {
			margin-bottom:0;
		}
		.container {
			padding-left: 10px;
		}
		input#keyword {
			padding: 8px;
			border: none;
			font-family: Elza, Arial, sans-serif;
			font-size: 1.05em;
			font-weight: 300;
		}
		input#keyword:focus-visible {
			outline:1px solid var(--color_a);
		}
		a#gosearch, a.close_search {
			content: "";
			display: inline-block;
			width: 40px;
			height: 40px;
			vertical-align: bottom;
			transition: all 0.3s ease 0s;
			border-right: 1px solid var(--color_a);
		}
		a#gosearch::before {
			opacity: .6;
			content: url("../imgs/icon_search.svg");
		}
		a.close_search::before {
			content: url("../imgs/icon_close.svg");
			opacity: .6;
		}
		a#gosearch:hover::before, a.close_search:hover::before {
			opacity: 1;
		}
		span.description {
			display:inline-block;
			margin:10px 0 0;
		}
		span.url {
			color:grey;
			display: inline-block;
			margin: 5px 0 0;
		}
		div#results a.arrowed {
			color:inherit;
		}
		div#did_you_mean, div#common_report, div#result_report {
			margin:4px 0;
		}
		div#results {
			margin:20px 0 0;
		}
		.search_closed {
			height: 0;
			margin: 0;
			transition: all 0.1s ease 0s;
			opacity: 0;
			background: var(--color_e);
		}
		.search_opened {
			height: auto;
			padding-top: 108px;
			padding-bottom: 100px;
			opacity: 1;
			transition: all 0.3s ease 0.2s;

		}
		/* !!END!! search */
		
		/* module */
		.module_title_wrapper {
			border-top: 1px solid var(--color_a);
			padding: 40px 0;
		}
		.module_list_title {
			margin: auto;		
		}
		a.module_title {
			display: inline-block;
			text-decoration: underline;
			padding: 10px;
		}
		a.module_link {
			display: flex;
			background-color: rgba(240,240,240,0);
			justify-content: center;
			margin-bottom: 40px;
		}
		p.module_item_chapeau {
			font-size: .9rem;
		}
		.module_image_wrapper {
			background-color: rgba(0,0,0,0);
		}
		.module_item figure {
			padding-top: 0;
			margin-top: 10px;
		}
		.module_item:hover figure {
			background-color: var(--color_e);
		}
		.module_item:hover .module_item_title {
			text-decoration: underline;
		}
		.module_image_wrapper figure {
			padding-bottom: 0;
			margin-bottom: 0;
			margin-right: 10px;
		}
		.module_image_wrapper img {
			mix-blend-mode: multiply;
		}
		span.module_content_wrapper{
			padding: 10px;
			display: flex;
			flex-flow: column wrap;
		}
		span.module_event{
			font: 300 1rem/1.1rem Elza, sans-serif;
			padding-bottom: 6px;
		}
		span.module_item_title{
			font: 500 1.55rem/1.6rem Elza, serif;
			padding-bottom: 4px
		}
		span.module_item_subtitle{
			font: 300 1rem/1.35rem Elza, sans-serif
		}

		/* !!END!! module */
		
		/* page liste */
		.list_cat_wrapper:first-child {
			padding-top: 40px;
		}
		.list_cat_wrapper a {
			display: inline-block;
			margin: 0 0 40px;
		}
		.list_cat_wrapper a:hover .list_cat_text {
			text-decoration:underline;
		}
		.list_cat_wrapper a:hover .list_cat_number::before {
			width:12px;
		}
		.list_cat_name {
			display: inline-block;
			margin: 0;
			font: 500 3.6rem/3.5rem Elza, serif;
		}
		.list_cat_number {
			font: 300 1rem/1.35rem Elza, Arial, sans-serif;
		}
			.list_cat_number::before {
				display:inline-block;
				height:1px;
				background:var(--color_a);
				width:20px;
				content:' ';
				vertical-align:middle;
				transition:all 0.3s cubic-bezier(.4,0,.2,1) 0s;
			}

		.title_wrapper p.cat_desc {
			padding-left: 10px;
			margin-bottom: 2.2rem;
		}
		
		div.horizontal {
			width:1000%;
			display:flex;
			flex-wrap:no-wrap;
		}
		
		div.list_item {
			width:calc(100%);
			transition:none;
			margin:-25vh 0 15vh 0;
			display: flex;
			align-items: end;
		}
			div.bw img {
				filter:grayscale(100);
			}
			div.list_item.no_content {
				margin-top: -5vh !important;
				padding-left: 31%;
				font:300 1.333rem/1.333rem Elza, serif;
			}

		div.list_item:nth-child(2n) {
			margin:-25vh 0 15vh 0;
		}
		div.list_item:first-child {
			margin-top:-15vh;
		}
			div.list_item:first-child .list_item img {
				clip-path: inset(100% 0px 75% 0px);
			}
			
		div.over_project {
			width:59.5%;
			text-align:right;
			padding:0 20px 15vh 0;
			/* margin-bottom:10vh; */
		}
			div.list_item:nth-child(2n) div.over_project {
				/* transform:translateY(-20vh); */
				text-align:left;
				padding:0 0 15vh 20px;
				order:1;
			}
		
		.list_wrapper:not(.list_item_large) a.list_link:hover .list_title {
			text-decoration: underline;
		}


			span.actu_image_wrapper {
				flex-basis:20%;
				max-width:20%;
				order:1;
			}
				
				.list_image_bg {
					display: block;
					position:relative;
				}
				
				span.list_image_wrapper {
					display:block;
					width:40.5%;
					order:1;
				}
				div.list_item:nth-child(2n) div.list_image_wrapper {
					order:0;
				}
				
				span.list_image_wrapper figure {
					width: 100%;
					line-height: 0;
					margin: 0;
				}
				
					.list_item img {
						clip-path: inset(15% 0px 0% 0px);
					}

			span.list_content_wrapper {
				display: flex;
				flex-flow: column wrap;
				align-self: flex-start;
			}	
				span.list_event, .module_wrapper .i_date {
					font: 300 1rem/1.1rem Elza, sans-serif;
					padding-bottom: 8px;
				}
				
				span.list_title, span.list_subtitle, span.list_infos {
					overflow:hidden;
					display: block;
					position:relative;
				}

				span.list_title {
					font: 500 2.369rem/2.4rem Elza, serif;
					transition: all .3s cubic-bezier(.4,0,.2,1) 0s;
					
				}
				span.list_subtitle {
					font: 300 1.333rem/1.4rem Elza, serif;
					transition: all .3s cubic-bezier(.4,0,.2,1) 0s;
					
				}
				span.list_infos {
					font: 300 1.333rem/1.4rem Elza, serif;
					transition: all .3s cubic-bezier(.4,0,.2,1) 0s;
				}
				
				
				/* Sugg */
				div.sugg_item {
					margin:25vh 0;
					display: inline-block;
					width: 40%;
					margin-left: 10%;
				}
				div.sugg_item::before {
					content: ' ';
					width: 60px;
					height: 1.65rem;
					background: url('../imgs/blue_red_arrow.svg') no-repeat;
					display: block;
					position: absolute;
					top: 0;
					left:10px;
				}
				.ticker_sugg {
					height: 1.65rem;
					max-width:100%;
					padding-left:60px;
				}
				
				span.list_title_sugg {
					font: 600 1.5rem/1.85rem Elza, serif;
				}
				
			span.list_infos_wrapper {
				padding: 15px 1px 10px;
				display: flex;
				flex-flow: column wrap;
				order: 3;
				border-bottom-color: transparent;
				border-bottom-style: solid;
				border-bottom-width: 1px;
			}
				span.list_date {
					color: var(--color_d);
					mix-blend-mode: multiply;
				}

				span.list_date_actu {
					margin-bottom:14.4px;
					text-align: right;
					margin-top: -1.2rem;
				}
				
			.actu_date {
				font: 300 1.333rem/1.5rem Elza, sans-serif;
				display: block;
			}
			
		/* Actu liste large */
		.sub_cat {
			transition:opacity 0s ease 0s;
		}
			.sub_filt_wrapper {
				transition:transform 0.3s ease 0s, opacity 0.2s ease 0.1s;
				max-width:40%;
			}
			nav.fix .sub_filt_wrapper {
				transform: translateY(-50px);
				opacity:0;
				padding-left:6px;
				position: relative;
				top: -30px;
				z-index: 0;
			}
			nav.fix {
				border-top:solid 1px #ccc;
				padding:10px;
				position:fixed;
				z-index:3;
				width:100%;
				background:#fff;
				top:89px;
				max-height:50px;
				left:0;
				margin:-40px 0 40px 0;
			}
			nav.fix:hover {
				max-height:1000px;
				padding-bottom:30px;
			}
			nav.fix:hover .sub_filt_wrapper {
				padding-top:14px;
				transform: translateX(0);
				opacity:1;
			}
			nav.fix:hover a.filter {
				display:block;
				opacity:1;
			}
			nav.fix:hover br {
				display:inline-block;
				height:auto;
			}
			.fix br {
				display:none;
				height:0;
			}
			.sub_menu_mask {
				position: relative;
				background: #fff;
				top: 0;
				height: 0;
				z-index: 1;
			}
			.fix .sub_menu_mask {
				height:30px;
			}
			span.sub_menu_title {
				display:inline-block;
				padding:0 34px 0 10px;
				height:29px;
				background:url('../imgs/filters.png') right 0px no-repeat;
				font: 500 0.9em/26px Elza, sans-serif;
				transition:all 0.2s ease 0s;
			}
			nav span.sub_menu_title {
				display:none;
			}
			nav.fix span.sub_menu_title, nav.fix:hover span.sub_menu_title  {
				display: inline-block;
				cursor: pointer;
				position: relative;
				top: -30px;
				z-index: 2;
			}
			nav.fix:hover span.sub_menu_title {
				background:url('../imgs/filters.png') right -30px no-repeat;
			}
			 
		
		.sub_cat a {
			border-bottom: none;
		}
		
		/* Pagination */
		.navi_num {
			display:inline-block;
			text-align:center;
			padding:4px 8px;
			margin:0 2px;
		}
		.navi_sel {
			cursor:default;
			pointer-events:none;
			opacity:0.5;
			background:#eee;
		}
		
		/* page liste - template large */
			.list_item_large .list_item.past {
				background-color: transparent;
			}
			.list_item_large .list_item.past a.list_link {
				background-color: var(--color_e);
			}
/* 			.list_item.past a.list_link:hover {
				background-color: var(--color_f);
			} */
			div.list_item_large {
				display: flex;
				flex-wrap: wrap;
				align-items: center;
				justify-content: start;
				/* margin-top: 120px; */
			} 
				.list_item_large .list_infos_wrapper::before {
					display: none
				}
				div.list_item_large span.list_cat {
					margin-left: 10px;
					background-color: #fff;
					padding: 4px 10px;
				}
			div.list_item_large a.list_link {
				flex-direction: column;
				flex-wrap: wrap;
				min-height: 300px;
				justify-content: space-between;
				background-color: rgba(240, 240, 240, 1);
			}
			div.list_item_large span.list_image_wrapper, div.list_item_large span.list_image_wrapper figure,
			div.list_item_large span.list_content_wrapper,
			div.list_item_large span.list_infos_wrapper {
				padding: inherit;
				margin: inherit;
				order: inherit;
				border-bottom: none;
				max-width: 100%;
				height: auto;
			}
			div.list_item_large span.list_content_wrapper {
				flex-flow: column nowrap;
				padding: 10px;
			}
			div.list_item_large span.list_infos_wrapper {
				flex-flow: row nowrap;
				justify-content: space-between;
				padding: 10px 0;
			}
			div.list_item_large hr.h_puce {
				display: none;
			}
			/* objet agenda sans image :~( */
			div.list_item_large span.list_image_wrapper:empty{
				content: url("../imgs/puce.svg");
				display: block;
				line-height: 0;
				width: 40px;
				height: 8px;
				margin-bottom: 20px;
				position: absolute;
				top: 10px;
				left: 10px;
			}
			div.list_item_large .list_image_wrapper:empty + .list_content_wrapper {
				padding-top: 40px;
			}
		/* Agenda nav */
		.title_wrapper.title_number {
			margin-top: -10px;
			padding-bottom: 13px;
		}
		.title_number > * {
			display: inline-block;
			vertical-align: middle;
			padding: 0;
		}
		.title_number h1 {
			font: 300 4rem/4rem Elza, sans-serif;
			position: relative;
			overflow: hidden;
		}
		.cal_btn {
			display: flex;
			flex-flow: row wrap;
			user-select: none;
			max-width: 90%;
			width: 90%;
			margin-bottom: 40px;
		}
		.list .navi_btn {
			margin: 0 20px 0 0;
			padding: 10px;
			text-decoration: underline;
			text-decoration-color: rgba(0,0,0,0);
			text-align: left;
			white-space: nowrap;
		}
		.navi_btn:hover	{
			text-decoration: underline;
			text-decoration-color: var(--color_a);
		}
		.navi_btn.navi_btn_selected {
			cursor: default;
			pointer-events: none;
			text-decoration: underline;
			text-decoration-color: var(--color_a);;
		}

		/* Agenda navigation*/
		a.cal_navi {
			min-width: 10%;
			max-width: 10%;
		}
		.item_fake {
			pointer-events: none;
		}
			.item_fake span {
				position:absolute;
				top:50%;
				left:50%;
				transform:translateX(-50%) translateY(-50%);
			}
		.title_number h1 {
			min-width: max-content;
			max-width: calc(20% * 2.5);
		}
		/* date anim */
		.title_number span {	
			display: inline-block;
			position: relative;
			/* voir global transition */ transition: transform .5s cubic-bezier(0.5, 0, 0.2, 1);
		}
		.title_number span::before, .title_number span::after {
			position: absolute;
			left: 0;
			transition: transform .5s cubic-bezier(0.5, 0, 0.2, 1);
		}
		.title_number span[data-prev]::before {
			content: attr(data-prev);
			top: 100%;
		}
		.title_number span[data-next]::after {
			content: attr(data-next);
			bottom: 100%;
		}
		.title_number:hover h1.prev span {
			transform: translateY(100%);
		}
		.title_number:hover h1.next span {
			transform: translateY(-100%);
		}
			a.cal_navi{
				height: 4rem;
				margin-top: .8rem;
			}
			a.prev_month, a.prev_month:after {
				content: url("../imgs/arrowleft.svg");
			}
			a.next_month, a.next_month:after {
				content: url("../imgs/arrowright.svg");
			}
			a.prev_month:hover {
				transform: translateX(-10px);
			}
			a.next_month:hover {
				transform: translateX(10px);
			}
		/* !!END!! Liste exposition big template exposition */

		/* rÃ©seaux sociaux */
		.share_social-list {
			padding: 0;
			margin: 0;
			display: flex;
			flex-flow: row wrap;
			margin-top: 5px;
		}
			.share_social-list::before{
				content: 'Partager';
				font: 500 1rem/2rem Elza, Arial, sans-serif;
				display: block;
				width: 100%;
			}
			html[xml\:lang="en"] .share_social-list::before{
				content: 'Share';
			}
		li.share_social-item {
			border-right: 1px solid var(--color_a);
			text-decoration: none;
			list-style-type: none;
			position: relative;
		}
		li.share_social-item:first-child {
			border-left: 1px solid var(--color_a);
		}
		.share_social-item a {
			width: 40px;
			height: 38px;
			display: flex;
			justify-content: center;
			align-items: center;
			border-bottom: none;
			opacity: .6;
		}
		.share_social-item a:hover {
			opacity: 1;
		}
		/* !!END!! rÃ©seaux sociaux */	
	/*---------- !!END!! Prod ----------*/

	/*---------- Home ----------*/
		.page_home > div.list_wrapper {
			padding: 0;
		}
		a.all_actu {
			cursor: pointer;
			background-color: #363636;
			color: #fff;
			padding: 8px 10px 7px;
			border-radius: 2px;
			display: inline-block;
			text-decoration: none;
			margin: auto !important;
		}

		div.flex_mode {
			display: flex;
			flex-wrap: wrap;
			justify-content: flex-start;
			align-content: stretch;
		}
		.home_item {
			margin: 0;
			cursor: pointer;
			margin-bottom:15vw;
		}
		a.home_item:hover {
			color: inherit;
		}
		.page .home_item figure {
			max-width: 100%;
			padding: 0;
		}
			.home_item img {
				clip-path:inset(15% 0px 0% 0px);	
			}
			
		.actu_wrapper {
			display:flex;
			/* justify-content: space-between; */
			padding: 0;
			margin: 0 2.5% 0 21.5%;
			width: 100%;
			flex-wrap: wrap;
		}
		.list_item_actu {
			flex-basis:calc(14.2857% * 2);
			margin: 0;
			cursor: pointer;
			margin-bottom:15vw;
		}
		
			.n_class0, .n_class1 {
				margin-right:calc(14.2857% * 0.5);
			}
			
		.list_item_actu figure {
			margin: 0;
			background:var(--color_bluereal);
			clip-path:inset(0% 0px 15% 0px);
		}
			.list_item_actu img {
				max-width:100% !important;
				/* clip-path:inset(15% 0px 0% 0px); */
				mix-blend-mode:luminosity;
                filter: brightness(1.2);
			}

			.list_wrapper:not(.list_item_large) img.rollover {
				padding: 10px 10px 10px 0;
			}
			.module_item img.rollover {
				padding-top: 10px;
			}			

		/* Fonts stuff */
		span.t_infos_newser {
			display: block;
			margin-bottom: 0.8rem;
			margin-top: -5.5vw;
		}
		span.t_infos {
			display: block;
			position:relative;
			margin-top: -8%;
		}
		span.t_infos_news {
			margin-top: -16.5%;
		}
		.tzar {
			display:flex;
			flex-direction:row-reverse;
			justify-content: space-between;
			padding:0 0 0 10px;
		}
			.h_date, .h_title, .h_subtitle {
				/* mix-blend-mode: multiply; */
			}
		span.h_title {
			display: block;
		}	
			.tradition span.h_title {
				font: 500 1.777rem/1.9rem Elza, serif;
			}
			
			.tradition span.h_subtitle {
				font: 300 1.1rem/1.4rem Elza, sans-serif;
			}
			
		span.h_date {
			display: block;
			margin-bottom: 10px;
		}
			.tradition span.h_date, .premier span.h_date, .privilege span.h_date {
				font: 300 1.6rem/1.7rem Elza, sans-serif;		
			}
			.royal span.h_date, .tzar span.h_date {
				font: 300 2rem/2.2rem Elza, sans-serif;
			}
			.emperor span.h_date {
				font: 300 2.5rem/2.3rem Elza, sans-serif;
			}

		span.h_cat {
			font: 300 1.333rem/1.5rem Elza, sans-serif;		
			display: block;
		}
		span.t_infos_news p {
			margin:6px 0 0;
		}


		/* bottom space */
		span.t_infos + span.h_cat {
			margin-top: 40px;
		}
			span.t_infos:last-child {
			}
			.premier span.t_infos:last-child, .privilege span.t_infos:last-child {
				padding-bottom: 80px;
			}
			.royal span.t_infos:last-child {
				padding-bottom: 120px;
			}

			/* Emperor font */
				.emperor span.h_cat {
					display: inline-block;
					font: 500 1.2rem/1rem Elza, sans-serif;
					padding: 0 0 20px;
					color: var(--color_d);
					mix-blend-mode: multiply;
				}
				.emperor span.t_infos {
					padding-left:10px;
				}
				.emperor a {
					color: #363636;
					text-decoration: none;
				}
			/* !!End Emperor font */


		/* !!End Fonts stuff */

			/* .home_folder_title:empty, .h_cat:empty{ */
				/* display: none !important; */
			/* } */
			.home_folder span.t_infos + span.h_cat, 
			.home_newser span.t_infos + span.h_cat {
				margin-top: 0;
			}


			/* Home sizes */
			
			.emperor { /* 7 */
				width: 100%;
				min-height: 92px;
				background: var(--color_f);
				margin: 0 10% 80px 0;
				padding: 213px 10% 0 30%;
			}
			.emperor_beheaded {
				display: block;
				margin: 0;
				opacity: 0;
				padding: 0;
				height: 158px;
				max-height: 158px;
				overflow: hidden;
				margin-bottom: 60px;
			}
			.a_propos ~ .emperor_beheaded {
				margin-bottom: 120px;
			}

			.royal { /* 7 */
				width: 87.5%;
			}
			.privilege { /* 5 */
				width: 50%;
			}
			.premier { /* 3 */
				width: 37.5%;
			}
			.tradition { /* 2 */
				flex-basis: calc(14.2857% * 2);
				/*! margin: 0 auto; */
			}
			

			/* Home Images */
			.h_img {
				padding:0;
			}
			.classic .h_img {
				max-width: calc(86% + 10px);
			}
			.premier .h_img {
				max-width: calc(91% + 10px);
			}
			.privilege .h_img {
				max-width: calc(80% + 10px);
			}
			.royal .h_img {
				max-width: 75%;
			}
			.emperor .h_img {
				max-width: 100%;
				margin:0;
			}
			
			.cal_slash, .cal_tiret {
				font-weight: 300;
			}
			
		/* Folder */
			
			.page_newser  {
				width:100%;
			}
			.home_folder_title {
				font: 300 1.333rem/1.333rem Elza, sans-serif;
				display: block;
				margin: 0 2.5%;
				/*! border-top:solid 2px; */
				overflow:hidden;
				max-width: 28.5%;
			}
				.home_folder_title_content {
					display: block;
					padding-top: 9px;
				}

			.page_folder_content {
				padding:6vh 0;
			}
			
			.cocostyle .page_folder_content {
				margin-left:2.5%;
				margin-right:2.5%;
				display: flex;
				justify-content: space-between;
				flex-wrap: wrap;
			}
			
			.page_folder_content .folder_item {
				position:relative;
				overflow:hidden;
				min-width:40%;
				margin-right:5%;
			}
			.folder_item:last-of-type {
				margin-right:5vw;
			}
			
	/*---------- !!END!! Home ----------*/

	/*---------- Calendar ----------*/
		.h_calendar {
			position: relative;
			width:100%;
			margin:0 0 100px 0;
		}

		.h_calendar_head {
			padding: 0 0 25px 10px;
			display: block;
		}
		.h_calendar_content {
			display:flex;
			flex-wrap:wrap;
			width: 100%;
			justify-content: start;
		}
			.h_calendar_head .h_puce {
				width: calc(100% + 10px);
				height: 1px;
				color: var(--color_d);
				margin: 0 -10px 20px;
			}
		.item_calendar {
			display: block;
			align-self: normal;
			margin: 0 0 10px 0;
			background-color: rgba(240,240,240,0);
			width: calc(20% - 10px);
			max-width: calc(20% - 10px);
			min-height: 160px;
		}
			.h_calendar_content .item_calendar {
				margin-right: 10px;
			}

			.item_calendar:last-child {
				margin-right: 0;
			}
			.item_calendar:hover {
				background-color: var(--color_e);
			}
			.item_calendar * {
				mix-blend-mode: multiply;
			}
			.item_calendar img {
				width:100%;
			}
/* 			img.fake {
				display: block;
				width: auto;
			}	 */
			span.infos_calendar {
				display: block;
				margin: 0 0 10px 0;
				padding: 0 5px 0 10px;
				letter-spacing: .01rem;
			}
/* 				.fake + span.infos_calendar {
					height: 100%;
					background-color: var(--color_e);
				} */
				span.cat_calendar {
					display: block;
					color: var(--color_d);
					font: 500 .9rem/1.35rem Elza, sans-serif;
					letter-spacing: .01rem;
				}
				span.date_calendar {
					font: 300 1.8rem/2.4rem Elza, sans-serif;
					display: block;
					padding-bottom: 10px;
				}
				span.title_calendar {
					font: 300 1.35rem/1.5rem Elza, serif; 
					display: block;
				}
				
		/* style bouton more */
			.cal_more, .actu_more {
				width: 100%;
			}
			.cal_more_link, .actu_more_link {
				font: 300 1.1rem/2rem Elza, sans-serif;
				display: block;
				width: 100%;
				border-bottom: 1px solid var(--color_d);
				margin: 0 0 10px;
				padding: 0 0 10px;
			}
			.cal_more a::before, .actu_more a::before { /* Voir redaction ligne 300 */
				font-family: "Material Icons Outlined";
				content: "chevron_right";
				line-height: 0;
				vertical-align: sub;
				font-size: 1rem;
				padding-right: 0;
			}
			.cal_more a:hover, .actu_more a:hover {
				color: var(--color_b);
			}
	/*---------- !!END!! Calendar ----------*/


/* GRID STUFF */
#grid {
	display: none;
	position:fixed;
	z-index:1;
	opacity:0.3;
}
.line {
	border-left: 1px dashed rgba(255, 0, 0, 1);
	height: 100%;
	position: fixed;
	top: 0;
	z-index: 1000;
	color: rgba(0, 0, 0, .5);
	font-weight: 500;
	font-size: 11px;
	pointer-events: none;
	-webkit-touch-callout: none; /* iOS Safari */
	-webkit-user-select: none; /* Safari */
	-khtml-user-select: none; /* Konqueror HTML */
	-moz-user-select: none; /* Firefox */
	-ms-user-select: none; /* Internet Explorer/Edge */
	user-select: none; /* Non-prefixed version, currently */
}

.rows {
  line-height:0;
  position: fixed;
  width: 100%;
  height: 1px;
  border-top:1px dashed rgba(0, 0, 0, 1); 
  left:0
}

.rows.hori01 { top: 3vh; }
.rows.hori02 { top: 26.5vh; }
.rows.hori03 { top: 50vh; }
.rows.hori04 { top: 73.5vh; }
.rows.hori05 { top: 97vh; }

.line.zero {left: 2.5%;}
.line.one {left: 12%;}
.line.two {left: 21.5%;}
.line.three {left: 31%;}
.line.four {left: 40.5%;}
.line.five {left: 50%;}
.line.six {left: 59.5%;}

.line.seven {left: 69%;}
.line.eight {left: 78.5%;}
.line.nine {left: 88%;}
.line.ten {left: 97.5%;}

/*-------------------------------------------*/
    /* classic rules */
/*-------------------------------------------*/
		
.anchor_menu, .text_editable, .text_prod, .doc_editable, .doc_prod, .intertitle_editable, .h2_editable, .h2_prod, .quote_editable, .quote_prod, figure.video, .audio_editable, .audio_prod, .collapsible_editable, .collapsible_prod, .table_editable, .table_prod, .ul_editable, .ul_prod, .twocol_editable, .twocol_prod, .thumb_wrapper, .hr_editable, .item_link_editable, .item_link_prod, .note_wrapper, .page .notes, .resp-container_prod, .resp-container_editable, .module_wrapper .module_more, .meta_end {
	margin:0 0 5vw;
}

.intertitle_editable {
	margin:0 2.5% 3vw;
}

.faketitle_prod, .faketitle_editable {
	width:38%;
	margin:0 0 1.5vw 31%;
	margin-bottom: 1.5vw !important;
}
	.h1_content {
		font: 500 3.4375rem/3.5rem Elza, sans-serif;
		display:block;
	}
	.threecol_wrapper.type_two .h1_content {
		font:500 1.777rem/1.9rem Elza, sans-serif;
		/* margin-bottom: 0.5rem; */
	}
		.faketitle_prod .h1_content {
			/* transform:translateY(50%) skew(12.5deg); */
			/* opacity:0; */
		}
	.cat_content {
		font: 300 1.5rem/1.7rem Elza, sans-serif;
		display:block;
		padding-top: 0;
	}
	.threecol_wrapper.type_two .cat_content {
		font:300 1.333rem/1.5rem Elza, sans-serif;
	}
		.faketitle_prod .cat_content {
			/* transform:translateY(50%) skew(12.5deg); */
			/* opacity:0; */
		}

p.classic, p.exergue {
	width:38%;
	margin-left:31%;
	text-align: left;
}

.text_sugg {
	margin-left:60px;
}
.pbig {
	margin-left:31%;
	width: 57%;
}
.focused {
	margin-left:31%;
	width:57%;
}

hr.large {
	margin-right:calc(-16.6666% / 2);
}

table.table_editable, table.table_prod {
	width:38%;
	margin-left: 31%;
	min-height: 10vh;
}

.list_item_large div.list_title {
	padding-left: calc(12.5% * 2);
}
.head_title figure.full {
	width: calc(20% * 7);
}
/* img */
.page .thumb_wrapper:not(.looks_five) {
	margin-right: calc(16.6666% - 10px);
	margin-left: calc(16.6666%);
}

.wrapper_video {
	margin: 10px 16.6666% 40px 0;
}

figure.verti {
	width:100%;
}

figure.small_left, figure.small_right, figure.medium_left, figure.medium_right, figure.medium_center, figure.large_center, figure.full {
	margin-bottom:5vw;
}

figure.small_left {
	width: 45%;
	padding: 8vw 7%;
	margin-right:55%;
}
figure.small_right {
	width: 45%;
	padding: 8vw 7%;
	margin-left:55%;
}
figure.medium_left {
	padding:0 31% 0 0;
}
	figure.medium_left.verti {
		padding:0 40.5% 0 12%;
	}
figure.medium_right {
	padding:0 0 0 31%;
}
	figure.medium_right.verti {
		padding:0 12% 0 40.5%;
	}
figure.medium_center {
	width: 100%;
	padding: 0 21.5%;
}
	figure.medium_center.verti {
		padding: 0 31%;
	}
figure.large_center {
	padding: 0 16.6666%;
}
	figure.large_center.verti {
		padding: 0 26.25%;
	}
figure.full {
	width:100%;
}
	figure.full.verti {
		padding: 0 21.5%;
	}
	figure.full img {
		width:100%;
	}

figure.pullmeup {
	margin-top:-13vw !important;
}
.twocol_wrapper.pullmeup, .threecol_wrapper.pullmeup {
	margin-top:calc(-5vw - 1px) !important;
}

	figure.medium_center.__bg,
	figure.large_center.__bg {
		padding-top:8vw;
		padding-bottom:8vw;
	}
/* !!end img */

/* Meta data colonne */


.page p:not(.meta_hidden) span.meta_dynamic {
	padding-top: 0;
}
.page p:not(.meta_hidden) span.meta_dynamic::before {
	display: none;
}
.page .multipage .col_meta {
	width:100%;
	margin:0;
	padding: 10px 40px 10px 0;
}
.page .multipage .col_meta .meta_dynamic::before
{
	display:none;
}
/*!!END!! Meta data colonne */
.note_wrapper {
	column-count: 4;
}
.td_editable, .td_prod {
	/* min-width: 16.6666%; */
}
/* blocs twocol */
.twocol_wrapper.type_one, .twocol_wrapper.type_two, .twocol_wrapper.type_three, .twocol_wrapper.type_four, .twocol_wrapper.type_five, .twocol_wrapper.type_title {
	margin: 0 0 5vw 0;
	width:100%;
}

	.type_title .twocol_elem:first-child {
		width: 28.5%;
		margin-left: 2.5vw;
	}
	.type_title .twocol_elem:last-child {
		width: 66.5%;
	}

	.type_two .twocol_elem:first-child {
		width: 59.5%;
	}
	.type_two .twocol_elem:last-child {
		width: 40.5%;
	}
	.type_three .twocol_elem:first-child {
		width: 40.5%;
	}
	.type_three .twocol_elem:last-child {
		width: 59.5%;
	}
	.type_four .twocol_elem:first-child {
		width: 69%;
	}
	.type_four .twocol_elem:last-child {
		width: 31%;
	}
	.type_five .twocol_elem:first-child {
		width: 31%;
	}
	.type_five .twocol_elem:last-child {
		width: 69%;
	}
.extra_wrapper .dates.multicol p {
	column-count: 3;
}

.color_a .classic {
	color:#fff;
}
/*---------- Prod ----------*/
		
/*---------- !!END!! Prod ----------*/

/*---------- Calendar ----------*/
	.page_home .cal_content_wrapper, .cal_content_wrapper {
		max-width: 100%;
		padding: 10px 5% 0 10%;
	}
	.list .cal_content_wrapper {
		padding: 10px 10% 0 10%;
	}
	.cal_more, .actu_more {
		/*! margin: 0 5.8823% 0 0; */
	}
/*---------- !!END!! Calendar ----------*/

/* module */
.module_list_title {
	width: 80%;
	margin: auto;
}
span.module_image_wrapper{
	flex-basis: 20%;
	max-width: 20%;
}
span.module_content_wrapper{
	flex-basis: 60%;
	max-width: 60%;
}
span.module_event, span.module_item_title, span.module_item_subtitle, p.module_item_chapeau {
	max-width: calc(16.6666% *5);
}
/* !!END!! module */


/* See Also */
.seealso_arrow {
	width: 65px;
	height: 70px;
	/* transition:all 0.3s ease-in 0s; */
	cursor:pointer;
	top: calc(100vh - 70px);
	left:2.5%;
	position:fixed;
	z-index:2;
}
	.seealso_arrow svg {
		width:66.6666%;
	}

.seealso_wrapper {
	position:relative;
	font-size: 1rem;
	width:100%;
	z-index:2;
	padding-left:2.5%;
	padding-top:70px;
}
.see_also__hovered {
	transition:all 0.3s ease-out 0s;
	transform:translateY(calc(100vh - 70px));
}
	
	.seealso_title {
		color: var(--color_bluereal);
		display: block;
	}
	.see_also {
		display: inline-block;
		font-weight: 300;
		color:black;
		border-bottom:solid 1px #000;
		line-height: 0.7rem;
		margin-top: 0.5rem;
	}
	.see_also:hover {
		text-decoration:none;
	}
	.tooled {
		color:#fff !important;
		border-color:#fff !important;
	}
	
.masked {
	/* position:absolute; */
	/* top:126vh; */
}

/* Footer */

#footer {
	margin-bottom: 3vh;
	/*! background:yellow; */
}
.footer_wrapper {
	/*! background: fuchsia; */
	/*! width: calc(66.5%); */
	margin-left: 2.5%;
	border-top:solid var(--color_redreal) 1px;
	padding-top: 20px;
	display: flex;
	margin-right: 2.5%;
	/*! padding-left: 28.5%; */
}
.footer_col {
	width: calc(10% * 2);
	color: var(--color_redreal);
}
.footer_col:last-of-type {
    text-align:right;
}
	.adress {
		width: calc(10% * 6);
	}
.footer_col a {
	color: var(--color_redreal);
	text-decoration: underline;
}

/*-------------------------------------------*/
	/* responsive design rules */
/*--------------------------------------------*/
@media screen and (min-width: 1800px) {
	

}

@media screen and (min-width: 1920px) and (max-width: 3000px) {
	html, body {
		font-size:18px;
	}
}

@media screen and (min-width: 1024px) and (max-width: 1499px) {
	
	.head_title h1 {
		font: 500 3.157rem/3.5rem Elza, sans-serif;
	}
		
	span.list_title {
		font: 500 2rem/2.2rem Elza, serif;
	}
}
@media screen and (min-width: 1024px) and (max-width: 1599px) {
	svg#logo_guliver {
		/* max-height: 20vh; */
		margin-left: 3vw;
	}
}

@media screen and (min-width: 1024px) and (max-width: 1280px) {
	.logo {
		max-width: 24%;
	}
	.type_title div.twocol_elem:first-child {
		width: 28.5%;
		margin-left: 2.5vw;
	}
	
	.threecol_elem {
		max-width:48%;
		flex-basis:48%;
	}
}

@media screen and (min-width: 769px) and (max-width: 1149px ) {
	
}

@media screen and (min-width: 769px) and (max-width: 1499px) {
	html, body {
		font-size:15px;
	}
}

@media screen and (min-width: 769px) and (max-width: 1200px) {
	html, body {
		font-size:14px;
	}
}
@media screen and (min-width: 769px) and (max-width: 1023px ) {
	html, body {
		font-size:14px;
	}
}
@media screen and (max-width: 768px ) {
	
	html, body {
		font-size:14px;
	}

		#logo_curtain svg {
			max-height: 40vh;
			margin: 0;
			margin-top: 0px;
			margin-top: 5vh;
			max-width: 100%;
		}

	/* INTERFACE */
	.nav_top.discrete {
		max-height:50px;
	}
	
	.logo {
		max-width:inherit;
		width:70%;
		/* position:absolute; */
		top:3vh;
		left:2.5%;
	}
		#logo_guliver {
			margin-left:10%;
		}
	ul#nav {
		flex-direction:column;
		align-items:flex-start;
		width: 30%;
		transition:none;
	}
	ul.main_nav, ul.second, ul.social {
		visibility:collapse;
		margin-left:-100vw;
	}
	ul.main_nav.__visible {
		visibility:visible;
		margin-top:26vh;
		margin-left:0;
	}
	ul.second.__hidden.__visible {
		padding:0;
		width: 70%;
		visibility:visible;
		margin-left:0;
		margin-top:26vh;
	}
	ul.social.__hidden.__visible {
		visibility:visible;
		flex-direction: inherit;
		justify-content:flex-start;
		width:100%;
		padding: 7vh 0 0;
		margin-top:0;
		margin-left:0;
	}
	
	a.dock_a, a.dock_a:hover {
		color:#fff;
	}
	a.dock_a span {
		font:300 1.2rem/1.2rem Elza, serif;
		transition:none;
	}
	a.dock_a::after {
		transition:none;
	}
	.main_nav a.dock_a span {
		margin-top: -25px;
	}
	.main_nav a.over_released span {
		margin-top: 0;
	}
	
	header li.dock_li {
		flex-basis:auto;
	}
	
	ul#nav .dock_li:last-child {
		text-align: left;
		margin-top: 1.1rem;
	}
	.ghost {
		max-width: 100%;
		width: 100%;		
	}
	
	a.burger {
		display: block;
		position: fixed;
		width: 50px;
		height: 50px;
		cursor:pointer;
		top: 3vh;
		right: 2.5%;
		z-index: 101;
	}
	.menu_bar {
		height: 0.23rem;
		background: var(--color_bluereal);
		display: block;
		position:absolute;
		width: 100%;
		transition:all 0.3s ease-in-out 0s;
	}
	.menu_bar.closer {
		background: #fff;
	}
		.top_menu_bar {
			top:0;
		}
		.top_menu_bar.closer {
			transform: rotate3d(0, 0, 1, 45deg) translate(1.1rem, 1.1rem);
			transform-origin: center;
		}
		.mid_menu_bar {
			top:0.72rem;
		}
		.mid_menu_bar.stretch {
			top:0.35rem;
		}
		.mid_menu_bar.closer {
			transform: rotate3d(1, 0, 1, 180deg);
		}
		.bot_menu_bar {
			top:1.44rem;
		}
		.bot_menu_bar.stretch {
			top:0.71rem;
		}
		.bot_menu_bar.closer {
			transform: rotate3d(0, 0, 1, -45deg) translate(0.0rem,0.1rem);
			transform-origin: center;
		}
		.menu_bar.stretch {
			height: 0.4rem;
		}
	
	.flap3 {
		background:var(--color_bluereal);
		mix-blend-mode: normal;
	}

	li.social-item a {
		padding-right: 25px;
		margin-right: 20px;
	}
	li.social-item a.dock_a span {
		display: none;
	}
	
	
	/* CONTENT */

	h3 {
        max-width: 100%;
    }

	p.pbig, p.classic, p.exergue, p.focused, table.table_editable, table.table_prod {
		margin-left:2.5% !important;
		margin-right:2.5% !important;
		width:100% !important;
	}
	p.pbig, p.pbig b, p.pbig strong, p.focused, p.focused b, p.focused strong {
	  font: 500 1.777rem/1.9rem Elza, sans-serif;
	}
	p.pbig img {
		height:20px;
	}
	figure.pullmeup, .twocol_wrapper.pullmeup, .threecol_wrapper.pullmeup {
		margin-top: 0 !important;
	}
	figure.small_left, figure.small_right {
		margin-left:0;
		margin-right:0;
		width:100%;
	}
	figure.small_left, figure.small_right, figure.medium_left, figure.medium_center, figure.large_center, figure.medium_right, figure.full {
		padding:0 !important;
		margin-left:2.5%;
		margin-right:2.5%;
	}
    figure.full figcaption.legende {
        margin-left:0;
    }

	.home_folder_title {
		max-width:100%;
	}
	span.list_title, .h1_content {
		font: 500 2.1rem/2.1rem Elza, sans-serif;
	}
	.page .twocol_wrapper, .page .threecol_wrapper, .page .threecol_wrapper.type_two, .page .threecol_wrapper.type_three {
		display:block;
		margin-left:0;
		margin-right:0;
		margin-bottom: 2.5vh;
	}
	
		.page .twocol_wrapper.type_title {
			display:flex;
			flex-wrap:wrap;
		}
			.type_title .twocol_elem:first-child {
				order:1;
				margin-top: 2.5vh;
			}
			.type_title .twocol_elem:last-child {
				order:0;
			}
	
	.twocol_wrapper.color_e, .twocol_wrapper.color_f, .twocol_wrapper.color_a,
	.threecol_wrapper.color_e, .threecol_wrapper.color_f, .threecol_wrapper.color_a	{
		padding-top: 2.5vh;
		padding-bottom: 2.5vh;
	}
	.twocol_wrapper.color_a {
		color:#fff;
	}
	
	.page .twocol_wrapper > *, .page .threecol_wrapper > * {
		display:block !important;
		margin-left:2.5% !important;
		margin-right:2.5% !important;
		margin-bottom: 2.5vh !important;
		width:95% !important;
	}
	
		.page .twocol_wrapper > :last-child, .page .threecol_wrapper > :last-child {
			margin-bottom: 0 !important;
		}
	
	.page .twocol_wrapper .twocol_elem > *, .page .threecol_wrapper .threecol_elem > * {
		margin-left:0 !important;
		margin-right:0 !important;
		width:100% !important;
		margin-bottom: 2.5vh !important;
		font-weight: inherit;
	}
	.page .twocol_wrapper .twocol_elem:empty, .page .threecol_wrapper .threecol_elem:empty {
		display: none !important
	}
			.page .twocol_wrapper .twocol_elem > :last-child, .page .threecol_wrapper .threecol_elem  > :last-child {
				margin-bottom: 0 !important;
			}
	hr {
		display:none;
	}
    hr.hr_extra {
        display:block;
    }
	
	.tradition {
		flex-basis:75%;
	}
    .cocostyle .tradition {
        flex-basis: 100%;
    }

	.n_class0, .n_class1 {
		margin-right:0;
	}
	.list_item_actu:nth-child(even) {
		margin-left: 25%;
	}
	
	.page .top_section_wrapper, .list div.list_title, .actu_wrapper {
		margin-left: 2.5%;
		margin-bottom: 2.5vh;
		width: 95.5%;
		min-height: 8vh;
	}
		.actu_wrapper {
			margin-top:20vh;
		}
        .actu_wrapper.no_topmargin {
			margin-top:0;
		}

	.head_title h1 {
		font:900 2.1rem/2.1rem Elza, sans-serif
	}
	
	div.list_item, div.list_item:first-child, div.list_item:nth-child(2n) {
		display:block;
		margin:0 0 7.5vh 0;
	}
		div.list_item.no_content {
			padding-left: 2.5%;
		}
	span.list_image_wrapper {
		width:95%;
		margin-left:2.5%;
	}
	div.over_project, div.list_item:nth-child(2n) div.over_project {
		width:100%;
		margin-bottom:0;
		/* margin-top:5vh; */
		text-align:left;
		padding: 0 2.5%;
	}
	
	.seealso_arrow {
		position: static;
		margin:50px 0 0 2.5% !important;
	}
	
	.seealso_wrapper {
		position: static;
		padding-bottom:0;
		padding-top:0;
		margin-bottom:0;
	}
	.masked {
		position:static;
	}
	
	/* BUBBLE */
	.bubble {
		width: calc(9.5vw * 3);
		height: calc(9.5vw * 3);
		border-radius: calc(4.75vw * 3);
	}

	/* FOOTER */
	#footer {
		height:auto;
	}
		.footer_wrapper {
			flex-wrap: wrap;
		}
			.footer_col, .adress {
				width:100%;
				flex-basis:100%;
				margin-bottom: 20px;
			}

		.footer_col:last-of-type {
			text-align: left;
		}

	button,
    textarea,
    input,
    select,
    a{
     -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
     -webkit-tap-highlight-color: transparent;
     -webkit-user-select: none;
     -khtml-user-select: none;
     -moz-user-select: none;
     -ms-user-select: none;
      user-select: none;
    }
	
}	









/*-------------------------------------------*/
	/* responsive design rules */
/*--------------------------------------------*/

@media screen and (min-width: 1500px) and (max-width: 1799px) {

}
@media screen and (min-width: 1024px) and (max-width: 1499px) {

	
}
@media screen and (min-width: 769px) and (max-width: 1279px) {
	
}

@media screen and (min-width: 769px) and (max-width: 1023px) {

}
@media screen and (max-width: 768px ) {
	
}

@media print {
	.burger, #search_wrapper, #bottombar #nav, .meta_static_img, .share_social-list, ul.social, .extra_wrapper, .module_list, .cal_content_wrapper, .newser_content_wrapper, ul.social, .menu_footer, .logos_wrapper {
		display: none !important;
	}
	html {
		font-size: 62%;
	}
	.page .top_section_wrapper, div, span, p, h1, h2, h3, h4, h5, h6, 	.title_wrapper, .anchor_menu, .text_editable, .text_prod, .doc_editable, .doc_prod, .intertitle_editable, .intertitle_prod, .h2_editable, .h2_prod, .quote_editable, .quote_prod, figure.video, .audio_editable, .audio_prod, .collapsible_editable, .collapsible_prod, .table_editable, .table_prod, .ul_editable, .ul_prod, .twocol_editable, .twocol_prod, .thumb_wrapper, .hr_editable, .hr_prod, .item_link_editable, .item_link_prod, .note_wrapper, .page .notes, .resp-container_prod, .resp-container_editable, .blog_item, .module_wrapper .module_more {
		padding-top: 0 !important;
		padding-bottom: 0 !important;
		margin-top: 0 !important;
		margin-bottom: 20px !important;
	}
	.doc_img span.download_lgd::before, .meta_static::before, .meta_dynamic::before, .anchor_menu::before, .list_infos_wrapper::before, .meta_menu::before, .blog_info::before, .actu_content_wrapper::before {
		display: none !important;
	}
/* 	body {
		background:#fff;
		font-family:serif;
		font-size:12pt;
		color:#000
	}
	html, body, div, span, object, h1, h2, h3, h4, p, blockquote, a, img, strong, ol, ul, li, form, label, table, caption, tbody, tfoot, thead, tr, th, td {
		margin: 0;
		padding: 0;
		border: 0;
		outline: 0;
		line-height: 135%;
	} */
	* {
		margin: 0;
		padding: 0;
	}
	

}

/* Additionnal classes for sub menu items */
a.material::after {
	position:absolute;
	right:10px;
	font:300 16px/19px 'Material Icons Outlined';	
}
a.agenda::after {
	content:'calendar_today';
}
a.cabane::after {
	content:'house_siding';
}
a.actualites::after {
	content:'grade';
}
a.expositions::after {
	content:'tour';
}
a.conferences::after {
	content:'keyboard_voice';
}


span.from_bottom {
	display:inline;
	overflow:hidden;
	transform:translateY(50%);
	transition:all 0.6s ease-out 0s;
	opacity:0;
}
.appear-js span.from_bottom {
	transform:translateY(0);
	opacity:1;
}


