/* @override 
	http://epsaa:8888/themes/epsaa_2021/dist/css/override.css?*
	http://wzivubo.cluster030.hosting.ovh.net/themes/epsaa_2021/dist/css/override.css?*
	https://epsaa.fr/themes/epsaa_2021/dist/css/override.css?* */

body * {
	/*font-family: "Montserrat" !important;*/
}

@media screen and (max-width: 64em) {
	:root {
		
	}
}

p {
	font-size: 1rem;
}

@media screen and (max-width: 80em) {

	p {
	font-size: 0.8rem;
	}
}

/* FONTFACE */

@font-face {
    font-family: 'Circular';
    src: url('../fonts/CircularStd-Book.woff2') format('woff2'),
        url('../fonts/CircularStd-Book.woff') format('woff');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Circular';
    src: url('../fonts/CircularStd-BookItalic.woff2') format('woff2'),
        url('../fonts/CircularStd-BookItalic.woff') format('woff');
    font-weight: normal;
    font-style: italic;
    font-display: swap;
}

@font-face {
    font-family: 'Circular';
    src: url('../fonts/CircularStd-Black.woff2') format('woff2'),
        url('../fonts/CircularStd-Black.woff') format('woff');
    font-weight: bold;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Circular';
    src: url('../fonts/CircularStd-BlackItalic.woff2') format('woff2'),
        url('../fonts/CircularStd-BlackItalic.woff') format('woff');
    font-weight: bold;
    font-style: italic;
    font-display: swap;
}

/* FIN FONTFACE */

/* ADMIN */

#edit-delete {
	background-color: #d7aba4;
}

#edit-delete:hover {
	background-color: #000;
	color: #d7aba4;
}

.label {
	padding: 0;
	background: no-repeat;
	color: #000;
	font-size: 1rem;
	font-weight: bold;
}

@media screen and (max-width: 80em) {

	.label {
	font-size: 0.8rem;
	}
}

.dropbutton-wrapper {
	border: 1px solid #000;
	border-bottom: none;
	font-size: 0.8rem;
	margin: 0;
}

@media screen and (max-width: 80em) {

	.dropbutton-wrapper {
	font-size: 0.7rem;
	}
}

.js td .dropbutton-multiple {
  max-width: 100%;
  margin-right: 0;
  padding-right: 0;
  width: 100%;
  min-width: 150px;
}

.dropbutton-multiple.open,
.dropbutton-multiple.open .dropbutton-widget {
  max-width: 100%;
  width: 100%;
}

.js .dropbutton-multiple .dropbutton-widget {
  padding-right: 0em; /* LTR */
}

.dropbutton-wrapper a {
	text-transform: lowercase;
	color: #000 !important;
	text-decoration: none;
	padding: 0 15px 0 15px !important;
	height: 40px;
	line-height: 40px;
	border-bottom: 1px solid #000;
}

.dropbutton-wrapper a:hover {
	background-color: #D9D9D9;
}

.dropbutton-toggle button {
	width: 40px;
	height: 39px;
	right: 0;
	position: absolute;
	background-color: #FFF;
	border-left: 1px solid #D9D9D9;
}

.dropbutton-arrow {
  position: absolute;
  top: 15px;
  display: block;
  overflow: hidden;
  width: 8px;
  height: 8px;
  border-top: 1px solid transparent;
  border-right: 1px solid transparent;
  border-bottom: 1px solid #000;
  border-left: 1px solid #000;
  -ms-transform: rotate(-45deg);
      transform: rotate(-45deg);
}

.dropbutton-multiple.open .dropbutton-arrow {
  top: 20px;
  border-top: 1px solid #000;
  border-right: 1px solid #000;
  border-bottom: 1px solid transparent;
  border-left: 1px solid transparent;
}

.block-local-tasks-block {
	margin: 0 calc(-1 * 15px);
	padding: 15px;
	padding-bottom: 0;
	border-bottom: 1px solid #aaa;
	background-color: #D9D9D9;
}

form #edit-actions {
	margin: 0 calc(-1 * 15px);
	padding: 15px;
	border-top: 1px solid #aaa;
	border-bottom: 1px solid #aaa;
	background-color: #D9D9D9;
}

.block-local-tasks-block > .button-group {
}

.block-local-tasks-block > .button-group a.button,
a.button-action,
form #edit-actions .button {
	border-radius: 20px;
	margin-right:10px;
	margin-bottom: 0;
	padding: 10px 20px;
	border: none;
}

.block-local-tasks-block > .button-group a.button:hover {
	background-color: #000;
	color: #fef50d;
}

.block-local-tasks-block > .button-group a.button.is-active {
	background-color: #000;
	color: #fef50d;
}

.block-local-tasks-block > .button-group a.button.active {
	background-color: #000;
	color: #fef50d;
}

a.button-action:hover {
	background-color: #000;
	color: #fef50d;
}

.block-local-actions-block {
	margin: 0 calc(-1 * 15px);
	padding: 15px;
	border-bottom: 1px solid #aaa;
	background-color: #aaa;
}

.block-local-actions-block nav li {
	display: inline-block;
}

form#menu-edit-form .form-item-label,
form#menu-edit-form .form-item-description,
form#menu-edit-form .form-item-langcode {
	display: none;
}

.field--type-datetime .fieldset-wrapper > div,
.field--type-daterange .fieldset-wrapper > div {
	display: -ms-flexbox;
	display: flex;
}

.field--type-datetime .fieldset-wrapper > div > .form-item,
.field--type-daterange .fieldset-wrapper > div > .form-item {
	margin-right: 5px;
}

fieldset.form-item legend {
	font-size: 0.8rem;
	font-weight: bold;
}

@media screen and (max-width: 80em) {

	fieldset.form-item legend {
	font-size: 0.7rem;
	}
}

.fieldset-wrapper h4 {
	font-size: 0.8rem;
	font-weight: bold;
}

@media screen and (max-width: 80em) {

	.fieldset-wrapper h4 {
	font-size: 0.7rem;
	}
}

form.node-form,
form.user-form,
form.media-form {
	margin-top: 10px;
}

.node-form .paragraphs-actions .button {
	margin: 0;
}

.node-form .paragraphs-description {
	font-size: 0.8rem;
}

@media screen and (max-width: 80em) {

	.node-form .paragraphs-description {
	font-size: 0.7rem;
	}
}

.node-form .paragraph-type-label {
	font-weight: bold;
	font-size: 0.8rem;
}

@media screen and (max-width: 80em) {

	.node-form .paragraph-type-label {
	font-size: 0.7rem;
	}
}

.node-form .paragraphs-subform label:not(.option) {
	display: none;
}

.node-form .paragraphs-subform .image-widget label:not(.option) {
	display: block;
	font-weight: normal;
}

.node-form .paragraphs-subform .field--type-link legend {
	display: none;
}

.node-form .paragraphs-subform .field--type-link label:not(.option),
.node-form .paragraphs-subform .field--type-file .form-managed-file label {
	display: block;
	font-weight: normal;
}

.node-form .paragraphs-subform .field--type-file .form-managed-file label {
	margin-top: 10px;
}

.node-form .paragraphs-subform .field--type-link .description,
.node-form .paragraphs-subform .field--type-file  .description {
	display: none;
}

.node-form details summary {
	pointer-events: none;
	font-weight: bold;
	font-size: 0.8rem;
}

@media screen and (max-width: 80em) {

	.node-form details summary {
	font-size: 0.7rem;
	}
}

.tabledrag-changed {
	display: none;
}

tr.drag-previous {
	background-color: rgba(255,255,0,0.1) !important;
}

.vertical-tabs {
        background-color: #FFF;
        font-size: 12px;
}

.vertical-tabs__menu-item a, .vertical-tabs__panes {
        outline: none !important;
}

:focus {
        -moz-outline-style: none;
        outline: none;
}

.node-form .field--type-entity-reference-revisions th.field-label {
	padding: 10px 10px 10px 0;
}

.node-form .field--type-entity-reference-revisions th.field-label h4.label {
	background: none;
	color: #000;
	padding: 0;
	margin: 0;
	margin-top: 4px;
	font-weight: bold;
}

.image-widget .messages {
	display: none;
	font-size: 0.8rem;
}

@media screen and (max-width: 80em) {

	.image-widget .messages {
	font-size: 0.7rem;
	}
}

.image-widget .file--image {
	-ms-flex: 0 0 100%;
	    flex: 0 0 100%;
	font-size: 0.8rem;
}

@media screen and (max-width: 80em) {

	.image-widget .file--image {
	font-size: 0.7rem;
	}
}

.image-widget .file-size {
	-ms-flex: 0 0 100%;
	    flex: 0 0 100%;
	font-size: 0.8rem;
}

@media screen and (max-width: 80em) {

	.image-widget .file-size {
	font-size: 0.7rem;
	}
}

.field--type-image .description {
	display: none !important;
}

.field--type-image table .description {
	display: block;
}

.form-text.error  {
	border-left: 2px solid #d7aba4;
}

.form-email.error  {
	border-left: 2px solid #d7aba4;
}

.tabledrag-toggle-weight {
	display: none;
}

.form-item-sticky-value {
	display: none;
}

.ui-dialog * {
	font-family: "Circular";
}

.ui-dialog {
	padding: 0 !important;
	border: none !important;
	border-radius: 0 !important;
}

.ui-dialog-titlebar {
	border: none !important;
	border-radius: 0 !important;
	background-color: #000;
	color: #fef50d;
}

.ui-dialog .media_library {
	width: 40px;
}

.js-media-library-item {
	display: -ms-flexbox;
	display: flex;
	-ms-flex-align: center;
	    align-items: center;
	padding: 15px 0;
	border-bottom: 1px solid #aaa;
	gap: 15px;
}

table .js-media-library-item {
	display: inherit;
}

.js-media-library-item .views-field-rendered-entity {
	margin-bottom: 10px;
}

.js-media-library-item article {
	display: -ms-flexbox;
	display: flex;
	-ms-flex-align: center;
	    align-items: center;
}

.js-media-library-item article img {
	margin: 0 15px;
	width: 50px;
}

#media-library-wrapper .vue_entete {
	display: none;
}

.ui-dialog .paragraphs-add-dialog {
	padding: 15px !important;
}

.ui-dialog .paragraphs-add-dialog li {
	padding: 5px;
}

.ui-dialog .paragraphs-add-dialog li input {
	padding: 15px !important;
	border-radius: none !important;
	text-transform: lowercase;
	font-family: "Circular";
	color: #000;
	background-color: #fef50d;
}

.ui-dialog .paragraphs-add-dialog li input:focus {
	padding: 15px !important;
	border-radius: none !important;
	text-transform: lowercase;
	font-family: "Circular";
	color: #000;
	background-color: #fef50d;
}

.ui-dialog .paragraphs-add-dialog li input:hover {
	background-color: #000;
	color: #fef50d;
}

.js .paragraph-type-add-modal-button:hover {
	background-color: #000;
	color: #fef50d;
}

.button.paragraphs-icon-button:hover {
	background-color: #000;
	color: #fef50d;
}

.paragraphs-dropdown-action.button:hover {
	background-color: #000;
	color: #fef50d;
}

.js-form-type-entity-autocomplete input {
	margin: 0;
}

.vertical-tabs__panes .js-form-wrapper {
	background-color: #F5F5F5;
	margin-bottom: 15px;
	padding: 15px;
}

.vertical-tabs__panes .js-form-wrapper * {
	font-size: 0.8rem;
}

@media screen and (max-width: 80em) {

	.vertical-tabs__panes .js-form-wrapper * {
	font-size: 0.7rem;
	}
}

.vertical-tabs__panes .js-form-wrapper .block-title {
	font-weight: bold;
	font-size: 1.4rem;
	margin-bottom: 15px;
	padding-bottom: 15px;
	border-bottom: 1px solid #aaa;
}

@media screen and (max-width: 40em) {

	.vertical-tabs__panes .js-form-wrapper .block-title {
	font-size: 1rem;
	}
}

@media screen and (max-width: 80em) {

	.vertical-tabs__panes .js-form-wrapper .block-title {
	font-size: 1.2rem;
	}
}

/* ADMIN */

/* EU COOKIE */

#sliding-popup {
	padding: 20px 0;
	box-shadow: 0 0 25px rgba(0,0,0,0.3);
	background-color: #D9D9D9 !important;
	color: #000;
	line-height: 1.2 !important;
}

.eu-cookie-compliance-message p {
	font-size: 0.8rem;
	line-height: 1.2 !important;
	font-weight: normal !important;
	color: #000 !important;
}

@media screen and (max-width: 80em) {

	.eu-cookie-compliance-message p {
	font-size: 0.7rem;
	}
}

#sliding-popup button {
	padding: 0 !important;
	margin: 0 !important;
	color: #000;
	font-size: 0.8rem !important;
	text-shadow: none;
	font-weight: normal;
	font-family: 'Circular';
	background: none;
	box-shadow: none;
	margin-right: 15px !important;
	text-decoration: underline;
	transition: all .3s;
}

@media screen and (max-width: 80em) {

	#sliding-popup button {
	font-size: 0.7rem !important;
	}
}

#sliding-popup button:hover {
	color: #555;
}

.eu-cookie-compliance-buttons {
	margin: 0;
}

/* FIN EU COOKIE */

/* TABLE */

table {
	border: none;
}

table thead {
	border: none;
	font-size: 0.8rem;
	background-color: #FFF;
	color: #000;
	border-bottom: 1px solid #aaa;
}

@media screen and (max-width: 80em) {

	table thead {
	font-size: 0.7rem;
	}
}

table thead th {
	padding-top: 12px;
	padding-bottom: 6px;
}

table thead th a {
	position: relative;
	color: #000;
	text-decoration: underline;
}

table thead th a .tablesort {
	position: absolute;
	margin-left: 5px;
	opacity: 0.5;
}

table thead th a:hover {
	color: #000;
	text-decoration: underline;
}

table tbody {
	border: none;
}

table tbody tr {
	background: none !important;
	border-bottom: 1px solid #D9D9D9 !important;
}

table a {
	text-decoration: underline;
	transition: all .3s;
}

/* FIN TABLE */

/* THROBBLER */

.ajax-progress,
.ajax-progress-throbber,
.ajax-progress-fullscreen {
  width: 100%;
  height: 100%;
  margin: 0;
  padding: 0;
  border-radius: 0;
  opacity: 1;
  background: rgba(255, 255, 255, 0.8);
  position: fixed;
  top: 0;
  left: 0;
  z-index: 999999;
  overflow: hidden;
  text-indent: -99999em;
}

.ajax-progress-throbber:before {
  content: " ";
  display: block;
  width: 120px;
  height: 120px;
  animation: load8 1.1s infinite linear;
  border-radius: 120px;
  border-top: 1px solid #000;
  border-right: 1px solid #000;
  border-bottom: 1px solid #000;
  border-left: 1px solid #fef50d;
  overflow: hidden;
  text-indent: -99999em;
  margin: auto;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}

.ajax-progress-fullscreen:before {
  content: " ";
  display: block;
  width: 120px;
  height: 120px;
  animation: load8 1.1s infinite linear;
  border-radius: 120px;
  border-top: 1px solid #000;
  border-right: 1px solid #000;
  border-bottom: 1px solid #000;
  border-left: 1px solid #fef50d;
  overflow: hidden;
  text-indent: -99999em;
  margin: auto;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}

@keyframes load8 {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}

/* FIN THROBBLER */

/* GENERAL */

* {
	-webkit-tap-highlight-color: rgba(0,0,0,0);
	-webkit-tap-highlight-color: transparent;
	outline: none;
}

.description {
	font-size: 0.8rem;
	color: #D9D9D9;
}

@media screen and (max-width: 80em) {

	.description {
	font-size: 0.7rem;
	}
}

.description a {
	color: #D9D9D9;
	text-decoration: underline;
}

ul, ol {
	margin: 0;
	padding: 0;
	list-style-type: none;
}

nav li, ol li {
	list-style-type: none;
}

.orbit *,
nav,
a {
	outline: none !important;
}

.cell-gauche .orbit-container {
	height: auto !important;
}

.cell-gauche .orbit-container li.is-active {
    position: static;
}

/* FIN GENERAL */

/* PAGE TITLE */

.node--type-simple .block-page-title-block,
.node--type-portrait .block-page-title-block,
.node--type-tag .block-page-title-block,
.node--type-actualite .block-page-title-block,
.node--type-evenement .block-page-title-block,
.node--type-actualite-new .block-page-title-block,
.node--type-jpo .block-page-title-block,
.node--type-accueil .block-page-title-block,
.node--type-dossier .block-page-title-block,
.node--type-diplome .block-page-title-block {
	display: none;
}

.block-page-title-block {
	background-color: #fef50d;
	margin: 0 calc(-1 * 15px);
	padding: 6px 15px 15px 15px;
	position: relative;
}

.block-page-title-block:after {
	content: "";
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	border-bottom: 1px solid #aaa;
}

.block-page-title-block h1 {
	font-size: 3rem;
	font-weight: bold;
	line-height: 1;
	text-transform: lowercase;
	margin: 0;
}

@media screen and (max-width: 40em) {

	.block-page-title-block h1 {
	font-size: 1.74rem;
	}
}

@media screen and (max-width: 80em) {

	.block-page-title-block h1 {
	font-size: 2.5rem;
	}
}

@media screen and (max-width: 105em) {

	.block-page-title-block h1 {
	font-size: 2.5rem;
	}
}

/* FIN PAGE TITLE */

/* BREADCRUMBS */

.block-system-breadcrumb-block {
	position: relative;
	margin: 0 calc(-1 * 15px);
	padding: 15px;
}

.block-system-breadcrumb-block:after {
	content: "";
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	border-bottom: 1px solid #aaa;
}

/* FIN BREADCRUMBS */

/* CALLOUT */

.callout {
	margin: 0 calc(-1 * 15px)  15px calc(-1 * 15px);
	border: none;
	border-bottom: 1px solid #aaa;
	background-color: #D9D9D9 !important;
}

.callout .close-button {
	display: none;
}

.callout.success {
	background-color: #bee9b8 !important;
}

.callout.alert {
	background-color: #d7aba4 !important;
}

.callout.error {
	background-color: #d7aba4 !important;
}

.callout .download {
	border-radius: 20px;
	margin: 10px 0;
	display: inline-block;
	padding: 5px 15px 8px 15px;
	color: #D9D9D9;
	background-color: #444;
	transition: all .3s;
}

.callout .download:hover {
	background-color: #000;
}

/* FIN CALLOUT */

/* OFFCANVAS */

#open-left-off-canvas-menu {
	position: fixed;
	z-index: 100;
	bottom: 15px;
	left: 15px;
}

#open-left-off-canvas-menu button {
	margin: 0;
	color: #000;
	background-color: #d7aba4;
}

#left-off-canvas-menu {
	color: #FFF;
	padding: 15px;
}

#left-off-canvas-menu a {
	color: #FFF;
	display: block;
	padding: 10px;
	text-transform: lowercase;
	border-bottom: 1px solid #aaa;
}

#left-off-canvas-menu a:hover {
	color: #fef50d;
}

#left-off-canvas-menu a.is-active {
	color: #fef50d;
}

/* FIN OFFCANVAS */

/* JPO */

html.is-reveal-open {
	overflow: auto !important;
}

.openJpo {
	font-weight: bold;
	margin: 0 calc(-1 * 15px);
	display: inherit;
	left: 0;
	right: 0;
	background-color: #000;
	color: #fef50d;
	padding: 15px 30px 15px 50px;
	cursor: pointer;
	transition: all .3s;
	position: relative;
}

.section-node-edit .openJpo {
	display: none;
}

.openJpo:hover {
	color: #000;
	background-color: #fef50d;
}

.openJpo:after {
	content: "";
	position: absolute;
	height: 30px;
	width: 30px;
	top: 50%;
	margin-top: -15px;
	left: 15px;
	position: absolute;
	background-image: url(../../images/pictos-jpo.png);
	background-size: 30px;
	background-repeat: no-repeat;
	background-position: center;
	animation: shake 0.5s infinite cubic-bezier(.36,.07,.19,.97) both;
}

.openJpo:hover:after {
	background-image: url(../../images/pictos-jpo-noir.png);
}

@keyframes shake {
  10%, 90% {
    transform: translate3d(-1px, 0, 0);
  }
  20%, 80% {
    transform: translate3d(1px, 0, 0) rotate(5deg);
  }
  30%, 50%, 70% {
    transform: translate3d(-1px, 0, 0);
  }
  40%, 60% {
    transform: translate3d(1px, 0, 0);
  }
}

@media screen and (max-width: 64em) {
	.openJpo {
		position: fixed;
		z-index: 1;
		bottom: 0;
	}
	#main-contenu {
		padding-bottom: 50px;
	}
}

#modalJpo {
	top: 0 !important;
	padding: 0;
	margin: 0;
}

#modalJpo .header-mobile {
	position: fixed;
	z-index: 10;
}

.conteneur_main_jpo #preheader {
	z-index: -1;
}

.conteneur_main_jpo #preheader:before {
	display: none;
}

#jpo {
	border-left: 1px solid #aaa;
	background-color: #000;
	padding-bottom: 60px;
}

@media screen and (max-width: 64em) {
	#jpo {
		border-left: none;
		margin-top: calc(41px + (2* 15px));
		padding-bottom: 150px;
	}
}

#jpo .page-section {
	width: 100wv;
	min-height: calc(100vh - 1px);
	border-bottom: 1px solid #aaa;
	margin: 0 calc(-1 * 15px);	
	position: relative;
}

@media screen and (max-width: 64em) {
	#jpo .page-section {
		padding-top: 80px !important;
		height: inherit;
		min-height: inherit;
	}
}

#jpo h2.field-label-above {
	font-weight: bold;
	font-size: 1.4rem;
	margin: 0;
	color: #FFF;
	text-transform: lowercase;
}

@media screen and (max-width: 40em) {

	#jpo h2.field-label-above {
	font-size: 1rem;
	}
}

@media screen and (max-width: 80em) {

	#jpo h2.field-label-above {
	font-size: 1.2rem;
	}
}

#jpo h2.label {
	font-weight: bold;
	font-size: 1.4rem;
	margin: 0;
	color: #FFF;
	text-transform: lowercase;
}

@media screen and (max-width: 40em) {

	#jpo h2.label {
	font-size: 1rem;
	}
}

@media screen and (max-width: 80em) {

	#jpo h2.label {
	font-size: 1.2rem;
	}
}

#jpo h3.label-champ {
	font-weight: bold;
	font-size: 1rem;
	margin: calc(2* 15px) 0 15px 0;
	color: #fef50d;
	text-transform: lowercase;
}

@media screen and (max-width: 80em) {

	#jpo h3.label-champ {
	font-size: 0.8rem;
	}
}

#jpo input.form-text {
	border-color: #444;
	color: #fef50d;
}

#jpo input.form-email {
	border-color: #444;
	color: #fef50d;
}

#jpo .form-text.error  {
	border-left: 2px solid #d7aba4 !important;
}

#jpo .form-email.error  {
	border-left: 2px solid #d7aba4 !important;
}

#jpo #conferences {
	padding: 15px;
}

#jpo #ecole {
	padding: 15px;
}

#jpo #galerie {
	padding: 15px;
}

#jpo #inscriptions {
	padding: 15px;
}

#jpo #formations {
	padding: 15px;
}

#jpo #galerie {
	padding-bottom: 0;
}

#jpo #faq h2.label {
	padding: 15px;
}

#jpo nav.pager {
	border-top: 1px solid #444;
	border-bottom: 1px solid #444;
}

#jpo nav.pager ul.pagination {
	border-left: 1px solid #444;
}

#jpo nav.pager ul.pagination li a {
	color: #FFF;
	border-right: 1px solid #444;
}

#jpo nav.pager ul.pagination li.current {
	color: #FFF;
	border-right: 1px solid #444;
}

#jpo nav.pager ul.pagination li.current {
	color: #000;
	background-color: #fef50d;
}

#jpo nav.pager ul.pagination li a:hover {
	color: #fef50d;
	background-color: #000;
}

/* menu */

#jpo .jpo_menu {
	margin-left: calc(-1 * 15px);
	z-index: 12;
	position: fixed;
	bottom: 0;
	background-color: #FFF;
}

#jpo .jpo_menu ul {
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
}

#jpo .jpo_menu ul li {
	-ms-flex: 1;
	    flex: 1;
}

#jpo .jpo_menu a {
	white-space: nowrap;
	font-size: 0.8rem;
	font-weight: bold;
	border-right: 1px solid #aaa;
	border-top: 1px solid #aaa;
	padding: 15px;
	text-align: center;
}

@media screen and (max-width: 80em) {

	#jpo .jpo_menu a {
	font-size: 0.7rem;
	}
}

#jpo .jpo_menu li:last-child a {
	background-color: #D9D9D9;
}

#jpo .jpo_menu a:hover {
	background-color: #D9D9D9;
}

#jpo .jpo_menu a.is-active {
	background-color: #fef50d;
}

/* animation */

#jpo .champ.animation {
	height: 100vh;
	text-align: center;
	background-color: #fef50d;
}

@media screen and (max-width: 64em) {
	#jpo .champ.animation {
		height: inherit;
	}
}

#jpo .champ.animation video {
	object-fit: contain;
	height: 100%;
	width: 100%;
}

/* presentation */

#jpo #presentation {
	position: relative;
	text-align: center;
}

#jpo #presentation .group-titre {
	border-right: 1px solid #aaa;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-align: center;
	    align-items: center;
	-ms-flex-pack: center;
	    justify-content: center;
}

#jpo #presentation .group-titre .inner {
	-ms-transform: rotate(-90deg);
	    transform: rotate(-90deg);
}

#jpo #presentation .champ.titre h1 {
	white-space: nowrap;
	margin: 0;
	color: #fef50d;
	font-size: 6rem;
	line-height: 0.8;
	font-weight: bold;
}

@media screen and (max-width: 40em) {

	#jpo #presentation .champ.titre h1 {
	font-size: 3rem;
	}
}

@media screen and (max-width: 80em) {

	#jpo #presentation .champ.titre h1 {
	font-size: 4rem;
	}
}

@media screen and (max-width: 105em) {

	#jpo #presentation .champ.titre h1 {
	font-size: 5rem;
	}
}

#jpo #presentation .champ.dates {
	white-space: nowrap;
	color: #FFF;
	font-size: 3rem;
	padding: 15px 20px;
}

@media screen and (max-width: 40em) {

	#jpo #presentation .champ.dates {
	font-size: 1.74rem;
	}
}

@media screen and (max-width: 80em) {

	#jpo #presentation .champ.dates {
	font-size: 2.5rem;
	}
}

@media screen and (max-width: 105em) {

	#jpo #presentation .champ.dates {
	font-size: 2.5rem;
	}
}

#jpo #presentation .champ.video {
	border-bottom: 1px solid #aaa;
	position: relative;
}

#jpo #presentation .presentation-videos > .gauche {
	padding: 15px calc(.5* 15px) 15px 15px;
}

#jpo #presentation .presentation-videos > .droite {
	padding: 15px 15px 15px calc(.5* 15px);
}

@media screen and (max-width: 64em) {
	#jpo #presentation .presentation-videos > .gauche,
	#jpo #presentation .presentation-videos > .droite {
		padding: 0;
	}
}

#jpo #presentation .champ.texte {
	color: #FFF;
	padding: 30px;
	text-align: left;
}

#jpo #presentation .champ.texte p {
	font-size: 1rem;
}

@media screen and (max-width: 80em) {

	#jpo #presentation .champ.texte p {
	font-size: 0.8rem;
	}
}

#jpo #presentation .champ.texte p:last-child {
	margin: 0;
}

@media screen and (max-width: 64em) {
	#jpo #presentation .group-titre .inner {
		-ms-transform: none;
		    transform: none;
	}
	#jpo #presentation .group-titre {
		border-right: none;
		border-bottom: 1px solid #aaa;
		-ms-transform: none;
		    transform: none;
		padding: calc(3* 15px) 15px;
	}
	#jpo #presentation .champ.video {
		border-right: none;
		border-bottom: 1px solid #aaa;
	}
}

/* conferences */

#jpo #conferences,
#jpo #conferences label,
#jpo #conferences a,
#jpo #formations,
#jpo #formations label,
#jpo #formations a {
	color: #FFF;
}

#jpo #conferences .webform-submission-form {
	margin-top: 15px;
}

#jpo #conferences .webform-submission-form #edit-processed-text {
	margin-bottom: 15px;
}

#jpo #conferences .webform-submission-form #edit-processed-text h3 {
	color: #fef50d;
	font-size: 1.4rem;
	line-height: 1.2;
	font-weight: bold;
	margin-bottom: 15px;
}

@media screen and (max-width: 40em) {

	#jpo #conferences .webform-submission-form #edit-processed-text h3 {
	font-size: 1rem;
	}
}

@media screen and (max-width: 80em) {

	#jpo #conferences .webform-submission-form #edit-processed-text h3 {
	font-size: 1.2rem;
	}
}

#jpo #conferences .webform-submission-form .form-text {
	background-color: #000;
	border-left: none;
	border-right: none;
	box-shadow: none;
}

#jpo #conferences .webform-submission-form .form-email {
	background-color: #000;
	border-left: none;
	border-right: none;
	box-shadow: none;
}

#jpo #conferences .webform-submission-form .webform-type-radios .form-item {
	margin-bottom: 10px;
}

#jpo #conferences .webform-submission-form .webform-type-radios .form-item input[type="radio"] {
  display: none;
}

#jpo #conferences .webform-submission-form .webform-type-radios .form-item input[type="radio"] + label {
	width: 100%;
	margin: 0;
	margin-bottom: 0;
	position: relative;
	padding-left: 38px;
	font-weight: normal;
	white-space: normal;
	font-size: 0.8rem;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-align: center;
	    align-items: center;
}

@media screen and (max-width: 80em) {

	#jpo #conferences .webform-submission-form .webform-type-radios .form-item input[type="radio"] + label {
	font-size: 0.7rem;
	}
}

#jpo #conferences .webform-submission-form .webform-type-radios .form-item input[type="radio"] + label::before {
  content:'';
  position: absolute;
  width: 25px;
  height: 25px;
  left: 0;
  top: -2px;
  border: 1px solid #aaa;
  border-radius: 50%;
  z-index: 1;
}

#jpo #conferences .webform-submission-form .webform-type-radios .form-item input[type="radio"] + label::after {
  content:'';
  position: absolute;
  width: 15px;
  height: 15px;
  left: 5px;
  top: 3px;
  border-radius: 50%;
}

#jpo #conferences .webform-submission-form .webform-type-radios .form-item input[type="radio"]:checked + label::after {
  border: 1px solid #aaa;
  background-color: #fef50d;
}

#jpo #conferences form #edit-actions {
	margin: 0 calc(-1 * 15px);
	padding: 15px;
	border-top: none;
	border-bottom: none;
	background: none;
}

#jpo #conferences .webform-submission-form #edit-actions-submit {
	background-color: #FFF;
	margin: 0;
}

#jpo #conferences .webform-submission-form #edit-actions-submit:hover {
	background-color: #fef50d;
}

#jpo #conferences .champ.visio {
	padding-right: 15px;
}

#jpo #inscriptions .gauche {
	padding-right: 15px;
}

#jpo #formations .gauche {
	padding-right: 15px;
}

@media screen and (max-width: 64em) {
	#jpo #conferences .champ.visio,
	#jpo #inscriptions .gauche,
	#jpo #formations .gauche {
		padding-right: 0;
	}
}

#jpo #conferences .champ.image,
#jpo #conferences .champ.image .image-container,
#jpo #inscriptions .champ.image,
#jpo #inscriptions .champ.image .image-container,
#jpo #formations .champ.image,
#jpo #formations .champ.image .image-container {
	position: absolute;
	right: 0;
	top: 0;
	bottom: 0;
}

@media screen and (max-width: 64em) {
	#jpo #conferences .champ.image {
		position: relative;
		right: inherit;
		top: inherit;
		bottom: inherit;
		margin-top: 15px;
	}
	#jpo #conferences .champ.image .image-container {
		position: relative;
		right: inherit;
		top: inherit;
		bottom: inherit;
		margin-top: 15px;
	}
	#jpo #inscriptions .champ.image {
		position: relative;
		right: inherit;
		top: inherit;
		bottom: inherit;
		margin-top: 15px;
	}
	#jpo #inscriptions .champ.image .image-container {
		position: relative;
		right: inherit;
		top: inherit;
		bottom: inherit;
		margin-top: 15px;
	}
	#jpo #formations .champ.image {
		position: relative;
		right: inherit;
		top: inherit;
		bottom: inherit;
		margin-top: 15px;
	}
	#jpo #formations .champ.image .image-container {
		position: relative;
		right: inherit;
		top: inherit;
		bottom: inherit;
		margin-top: 15px;
	}
}

#jpo #conferences .champ.image .image-container img,
#jpo #inscriptions .champ.image .image-container img,
#jpo #formations .champ.image .image-container img {
	object-fit: cover;
	height: 100%;
}

/* ecole */

#jpo #ecole .justified-gallery {
	margin: 0 calc(-1* 15px);
	width: calc(100% + 2* 15px);
}

/* inscriptions */

#jpo #inscriptions .champ.fichier ul {
	border-top: 1px solid #aaa;
	border-color: #444;
}

#jpo #inscriptions .champ.fichier ul li {
	-ms-flex: 1;
	    flex: 1;
	border-bottom: 1px solid #aaa;
	border-color: #444;
}

#jpo #inscriptions .champ.fichier ul li a {
	text-align: center;
	color: #FFF;
	padding: 95px 15px 25px 15px;
	background-image: url(../../images/pictos-files-blanc.png);
	background-size: 50px;
	background-repeat: no-repeat;
	background-position: center top 25px;	
}

#jpo #inscriptions .champ.fichier ul li a:hover {
	background-color: #fef50d;
	color: #000;
	background-image: url(../../images/pictos-files.png);
}

#jpo #inscriptions #mc_embed_signup * {
	border-color: #444 !important;
}

#jpo #inscriptions #mc_embed_signup input {
	background-color: #000;
	color: #FFF;
}

#jpo #inscriptions #mc_embed_signup input:-ms-input-placeholder {
	color: #FFF;
}

#jpo #inscriptions #mc_embed_signup input::placeholder {
	color: #FFF;
}

#jpo #inscriptions #mc_embed_signup input.email:focus {
	border-bottom: 1px solid #fef50d !important;
}

#jpo #inscriptions #mc_embed_signup input.button {
	color: #fef50d;
}

#jpo #inscriptions #mc_embed_signup input.button:hover {
	border-bottom: 1px solid #fef50d !important;
}

/**/

#jpo #faq {
	border-bottom: none;
}

#jpo #faq h2.field-label-above {
	padding-bottom: 15px;
}

#jpo #galerie .bef-exposed-form {
	margin-bottom: -1px !important;
}

#jpo #galerie .bef-exposed-form .form-wrapper {
	margin: 0;
	margin-bottom: -1px !important;
}

#jpo #galerie .vue-vide {
	color: #fef50d;
	margin-top: 15px;
}

#jpo #galerie .bef-exposed-form {
	border-top: 1px solid #aaa;
	margin: 15px calc(-1 * 15px) 0 calc(-1 * 15px);
}

#jpo #galerie .bef-exposed-form,
#jpo #galerie .bef-exposed-form label {
	color: #FFF;
}

#jpo #galerie .bef-exposed-form {
	border-color: #444;
}

#jpo #galerie .bef-exposed-form * {
	border-color: #444;
}

#jpo .champ.texte ul li,
#jpo .champ.texte ul li a {
	color: #FFF;
}

#jpo .champ.texte li:before {
	color: #FFF;
}

#jpo #formations .champ.para {
	max-width: 800px;
	margin-top: 15px;
}

/* FIN JPO */

/* HEADER */

@media screen and (min-width: 64em) {
	header,
	#preheader {
		position: fixed;
		height: 100%;
	}
}

header:before {
	content: "";
	z-index: 15;
	position: absolute;
	top: 0;
	bottom: 0;
	right: 0;
	border-right: 1px solid #aaa;
}

#preheader:before {
	content: "";
	z-index: 15;
	position: absolute;
	top: 0;
	bottom: 0;
	right: 0;
	border-right: 1px solid #aaa;
}

header .slogan {
	margin: 0 calc(-1 * 15px);
	padding: 15px;
	text-transform: uppercase;
	font-size: 0.8rem;
	line-height: 1.2;
	background-color: #fef50d;
	border-bottom: 1px solid #aaa;
	font-weight: bold;
}

@media screen and (max-width: 80em) {

	header .slogan {
	font-size: 0.7rem;
	}
}

@media screen and (max-width: 80em) {
	header .slogan {
		padding-top: 10px;
		padding-bottom: 10px;
	}
}

.header-mobile .slogan {
	padding: 15px;
	text-transform: uppercase;
	font-size: 0.6rem;
	line-height: 1.2;
	background-color: #fef50d;
	border-bottom: 1px solid #aaa;
	font-weight: bold;
}

.header-mobile .slogan br {
	display: none;
}

@media screen and (max-width: 75em) {
	header .slogan {
		font-size: 0.6rem;
	}
}

header .bas {
	position: absolute;
	bottom: 0;
	left: 15px;
	right: 15px;
}

.is-drilldown ul:not(.contextual-links) li a {
	position: relative;
	text-transform: lowercase;
	font-size: 1rem;
	padding-right: 50px;
	padding-top: 12px;
}

@media screen and (max-width: 80em) {

	.is-drilldown ul:not(.contextual-links) li a {
	font-size: 0.8rem;
	}
}

@media screen and (max-width: 80em) {
	.is-drilldown ul:not(.contextual-links) li a {
		padding-top: 10px;
		padding-bottom: 10px;
		padding-left: 10px;
	}
}

.is-drilldown ul:not(.contextual-links) li.is-active > a {
	background-color: #fef50d;
	color: #000;
}

.is-drilldown ul:not(.contextual-links) li a.is-active {
	background-color: #fef50d;
	color: #000;
}

.is-drilldown ul:not(.contextual-links) li a:before {
	content: "";
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	border-bottom: 1px solid #aaa;
}

.is-drilldown ul:not(.contextual-links) .js-drilldown-back > a::after {
	content: "";
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	border-bottom: 1px solid #aaa;
}

.is-drilldown ul:not(.contextual-links) .is-drilldown-submenu-parent > a::after,
.is-drilldown ul:not(.contextual-links) .js-drilldown-back > a::before {
    content: '';
    position: absolute;
	display: block;
    width: 30px;
    height: 30px;
    border: none;
	background-image: url(../../images/fleche-nu-droite.png);
	background-position: center;
	background-repeat: no-repeat;
	background-size: 100%;
	display: inline-block;
    top: 50%;
    margin-top: -15px;
    right: 15px;
}

.is-drilldown ul:not(.contextual-links) .js-drilldown-back > a {
	position: relative;
	padding-left: 50px;
}

.is-drilldown ul:not(.contextual-links) .js-drilldown-back > a::before {
	background-image: url(../../images/fleche-nu-gauche.png);
    left: 15px;
}

#preheader {
	padding: 15px;
	background-color: #fef50d;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-direction: column;
	    flex-direction: column;
}

.block-sitebranding {
	text-align: center;
}

.block-sitebranding img {
	max-height: 450px;
}

.socialmedialinks {
	margin-top: auto;
}

.socialmedialinks ul {
	display: -ms-flexbox;
	display: flex;
	-ms-flex-direction: column;
	    flex-direction: column;
}

.francecompetences {
	margin: calc(15px*-1);
	margin-top: 15px;
	padding: 15px;
	background-color: #FFF;
	border-top: 1px solid #aaa;
}

@media screen and (max-width: 64em) {
	.socialmedialinks {
		border-top: 1px solid #aaa;
		padding: 10px;
	}
	.socialmedialinks ul {
		display: -ms-flexbox;
		display: flex;
		-ms-flex-direction: row;
		    flex-direction: row;
	}
	.francecompetences {
		margin: 0;
	}
	.francecompetences img {
		max-width: 150px;
	}
}

.socialmedialinks ul li {
	margin-top: 0;
	text-align: center;
	padding: 5px !important;
}

.socialmedialinks ul:not(.contextual-links) li a {
	border: 1px solid #000;
	border-radius: 50%;
	display: inline-block;
	width: 30px;
	height: 30px;
	line-height: 29px;
	text-align: center;
	transition: all .3s;
	background-color: #FFF;
}

.socialmedialinks ul li a:hover {
	background-color: #FFF;
}

.socialmedialinks ul li a span {
	line-height: 0;
}

.socialmedialinks ul li a span:before {
	font-size: 15px;
}

#mc_embed_signup {
	position: relative;
}

.inscriptionnewsletter {
	position: relative;
	z-index: 1;
	border-top: 1px solid #aaa;
	padding: 15px;
	background-color: #fef50d;
	margin: 0 calc(-1 * 15px) 0 calc(-1 * 15px);
}

#droite-contenu .inscriptionnewsletter {
	background-color: #000;
	color: #fef50d;
	margin-top: calc(-1*15px);
	margin-bottom: 25px;
	border-top: none;
}

#droite-contenu .inscriptionnewsletter a {
	color: #fef50d;
}

@media screen and (max-width: 64em) {
	.header-mobile .inscriptionnewsletter {
		border-top: 1px solid #aaa;
		padding: 15px;
		margin: 0;
	}
}

.inscriptionnewsletter h2.block-title {
	text-transform: lowercase;
	font-weight: bold;
	font-size: 1rem;
	line-height: 1;
}

@media screen and (max-width: 80em) {

	.inscriptionnewsletter h2.block-title {
	font-size: 0.8rem;
	}
}

.inscriptionnewsletter p {
	font-size: 0.8rem;
	margin-bottom: 10px;
}

@media screen and (max-width: 80em) {

	.inscriptionnewsletter p {
	font-size: 0.7rem;
	}
}

.inscriptionnewsletter a {
	display: block;
	font-size: 0.6rem;
	text-decoration: underline;
	color: #444;
	text-transform: lowercase;
}

.inscriptionnewsletter a.first {
	margin-top: 10px;
}

@media screen and (max-width: 80em) {
	.inscriptionnewsletter {
		padding-top: 10px;
		padding-bottom: 10px;
	}
	.inscriptionnewsletter h2.block-title,
	.inscriptionnewsletter p {
		margin-bottom: 5px;
	}
	.inscriptionnewsletter a {
		margin-top: 5px;
	}
}

.form-group {
	display: -ms-flexbox;
	display: flex;
}

.mc-field-group {
	-ms-flex-positive: 1;
	    flex-grow: 1;
}

#mc_embed_signup input {
	margin: 0;
	font-size: 0.8rem;
	padding: 10px;
	height: 40px;
	border: none !important;
	border-top: 1px solid #aaa !important;
	border-bottom: 1px solid #aaa !important;
}

@media screen and (max-width: 80em) {

	#mc_embed_signup input {
	font-size: 0.7rem;
	}
}

@media screen and (max-width: 80em) {
	#mc_embed_signup input {
		padding-top: 5px;
		padding-bottom: 5px;
		height: 30px;
	}
}

#mc_embed_signup input:-ms-input-placeholder {
	color: #000;
}

#mc_embed_signup input::placeholder {
	color: #000;
}

#mc_embed_signup input.email:focus {
	box-shadow: none;
	border-bottom: 1px solid #000 !important;
}

#mc_embed_signup input.button {
	background: none;
	background-color: #000;
	color: #FFF;
	padding-left: 13px;
	padding-right: 13px;
	border-left: 1px solid #aaa !important;
	transition: all .3s;
}

#droite-contenu #mc_embed_signup input.button {
	background-color: #fef50d;
	color: #000;
}

#mc_embed_signup input.button:hover {
	border-bottom: 1px solid #000 !important;
}

#mc_embed_signup div.mce_inline_error {
	position: absolute;
	bottom: 100%;
	margin: 0 0 20px 0 !important;
	width: auto;
	font-size: 0.8rem;
	line-height: 1;
	font-weight: normal !important;
	padding: 10px !important;
	background-color: #FFF !important;
	color: #000 !important;
	border: 1px solid #000;
	max-width: 90%;
}

@media screen and (max-width: 80em) {

	#mc_embed_signup div.mce_inline_error {
	font-size: 0.7rem;
	}
}

#mc_embed_signup div.mce_inline_error:after, #mc_embed_signup div.mce_inline_error:before {
	top: 100%;
	left: 30px;
	border: solid transparent;
	content: "";
	height: 0;
	width: 0;
	position: absolute;
	pointer-events: none;
}

#mc_embed_signup div.mce_inline_error:after {
	border-color: rgba(255, 255, 255, 0);
	border-top-color: #FFF;
	border-width: 10px;
	margin-left: -10px;
}

#mc_embed_signup div.mce_inline_error:before {
	border-color: rgba(0, 0, 0, 0);
	border-top-color: #000;
	border-width: 11px;
	margin-left: -11px;
}

#block-pieddepage {
	margin: 0 calc(-1 * 15px) 0 calc(-1 * 15px);
	padding: 5px 5px 15px 15px;
	background-color: #000;
}

#block-pieddepage ul.menu li a {
	font-size: 0.8rem;
	color: #FFF;
	padding: 10px 15px 0 0;
	text-transform: lowercase;
}

@media screen and (max-width: 80em) {

	#block-pieddepage ul.menu li a {
	font-size: 0.7rem;
	}
}

#block-pieddepage ul.menu li a.is-active {
	text-decoration: underline;
}

/* FIN HEADER */

/* HEADER MOBILE */

body.mob_ouvert {
	overflow: hidden;
}

.header-mobile {
	width: 100%;
}

.header-mobile .entete {
	background-color: #fef50d;
	border-bottom: 1px solid #aaa;
}

.header-mobile .entete > .cell {
	padding: 15px;
}

.header-mobile .entete #logo img {
	height: 40px;
	object-fit: contain;
}

body.mob_ouvert .header-mobile .sticky {
	height: 100vh;
	overflow: auto;
	bottom: 0;
	z-index: 10;
	background-color: #FFF;
}

body.mob_ouvert .header-mobile .sticky.is-anchored {
	height: 100% !important;
	position: fixed;
	width: 100%;
	padding-bottom: env(safe-area-inset-bottom);
}

.header-mobile #panel {
	display: none;
	border-bottom: 1px solid #aaa;
}

.header-mobile #panel ul.menu a {
	text-transform: lowercase;
}

.header-mobile #panel ul.menu li:last-child a {
	margin-bottom: -1px;
}

.header-mobile #panel.mob_ouvert {
	display: block;
}

.header-mobile #hamburger {
	display: -ms-flexbox;
	display: flex;
	-ms-flex-align: center;
	    align-items: center;
	-ms-flex-pack: end;
	    justify-content: flex-end;
	padding-left: 0;
}

.header-mobile #hamburger a {
	display: block;
	width: 35px;
	height: 25px;
	position: relative;
}

.header-mobile #hamburger a span {
  display: block;
  position: absolute;
  height: 2px;
  width: 100%;
  background: #000;
  opacity: 1;
  left: 0;
  transition: all 125ms ease-in-out 125ms;
}

.header-mobile #hamburger a span:nth-child(1) {
  top: 0px;
}

.header-mobile #hamburger a span:nth-child(2),
.header-mobile #hamburger a span:nth-child(3) {
  top: 50%;
}

.header-mobile #hamburger a span:nth-child(4) {
  top: 100%;
}

.header-mobile #hamburger.mob_ouvert a span:nth-child(1) {
  top: 50%;
  opacity: 0;
}

.header-mobile #hamburger.mob_ouvert a span:nth-child(2) {
  width: 115%;
  -ms-transform: rotate(45deg);
      transform: rotate(45deg);
}

.header-mobile #hamburger.mob_ouvert a span:nth-child(3) {
  width: 115%;
  -ms-transform: rotate(-45deg);
      transform: rotate(-45deg);
}

.header-mobile #hamburger.mob_ouvert a span:nth-child(4) {
  top: 50%;
  width: 0%;
  left: 50%;
}

.is-drilldown {
	width: 100% !important;
	max-width: 100% !important;
}

.header-mobile #block-pieddepage {
	margin: 0;
}

/* FIN HEADER MOBILE */

/* NODES */

.champ.diaporama {
	position: relative;
}

@media screen and (max-width: 64em) {
	.champ.diaporama  .orbit-bullets {
		display: none !important;
	}
	.champ.diaporama img {
		min-height: 250px;
		object-fit: cover;
	}
}

.champ.diaporama:not(.col) {
	margin: 0 calc(-1 * 15px);
}

.champ.diaporama img {
	width: 100%;
}

.champ.diaporama  .orbit-bullets {
	position: absolute;
	bottom: 15px;
	margin: 0;
	left: 50%;
	-ms-transform: translateX(-50%);
	    transform: translateX(-50%);
	display: -ms-flexbox;
	display: flex;
}

.champ.diaporama  .orbit-bullets button {
	margin: 2px !important;
	padding: 0 !important;
	top: 0;
	bottom: 0;
	width: 12px;
	height: 12px;
	background-color: #FFF;
	border: 1px solid #aaa;
	cursor: pointer;
}

.champ.diaporama  .orbit-bullets button:hover {
	background-color: #fef50d;
}

.champ.diaporama  .orbit-bullets button.is-active {
	background-color: #fef50d;
}

.orbit-previous,
.orbit-next {
	z-index: 1;
	top: 50%;
	margin-top: -25px;
	-ms-transform: none;
	    transform: none;
	text-indent: -10000px;
	width: 50px;
	height: 50px;
	padding: 0;
	background-position: center;
	background-repeat: no-repeat;
	background-size: 100%;
	background-color: transparent !important;
	cursor: pointer;
}

.orbit-previous {
	background-image: url(../../images/fleche-blanche-gauche.png);
	left: 12px;
}

.orbit-next {
	background-image: url(../../images/fleche-blanche-droite.png);
	right: 12px;
}

.grid-node > .cell-droite {
	border-left: 1px solid #aaa;
	padding-top: 15px;
	padding-bottom: 15px;
}

.grid-node > .cell-droite .champ.couverture {
	margin-bottom: 15px;
}

@media screen and (max-width: 64em) {
	.grid-node > .cell-droite {
		border-left: none;
	}
}

.grid-node > .cell-gauche {
	margin-right: -1px;
	height: 100%;
	padding: 0 !important;
}

.grid-node > .cell-gauche .sticky {
	background-color: #fef50d;
	padding: 15px;
	border-right: 1px solid #aaa;
}

@media screen and (max-width: 64em) {
	.grid-node > .cell-gauche .champ.fichier li:last-child {
		border-bottom: none;
	}
	.grid-node > .cell-gauche .sticky {
		border-right: none;
		border-bottom: 1px solid #aaa;
	}
}

.grid-node > .cell-gauche .sticky.is-at-top {
	margin-top: 0 !important;
}

.grid-node > .cell-gauche .champ.titre h1 {
	font-size: 3rem;
	font-weight: bold;
	line-height: 1;
	text-transform: lowercase;
	padding-bottom: 15px;
	margin-bottom: 5px !important;
}

@media screen and (max-width: 40em) {

	.grid-node > .cell-gauche .champ.titre h1 {
	font-size: 1.74rem;
	}
}

@media screen and (max-width: 80em) {

	.grid-node > .cell-gauche .champ.titre h1 {
	font-size: 2.5rem;
	}
}

@media screen and (max-width: 105em) {

	.grid-node > .cell-gauche .champ.titre h1 {
	font-size: 2.5rem;
	}
}

.grid-node > .cell-gauche .champ.date {
	font-weight: bold;
	text-transform: lowercase;
	margin-bottom: 15px;
	padding-bottom: 15px;
	border-bottom: 1px solid #aaa;
}

.grid-node > .cell-gauche .champ.fonction {
	font-weight: bold;
	text-transform: lowercase;
	margin-bottom: 15px;
	padding-bottom: 15px;
	border-bottom: 1px solid #aaa;
}

.grid-node > .cell-gauche .champ.promotion {
	font-weight: bold;
	text-transform: lowercase;
	margin-bottom: 15px;
	padding-bottom: 15px;
	border-bottom: 1px solid #aaa;
}

.grid-node > .cell-gauche .champ.date span {
	display: inline-block;
}

.grid-node > .cell-gauche .champ.date.fin:before {
	content: "› ";
}

.grid-node > .cell-gauche .champ.lieu iframe {
	width: 100%;
}

.grid-node > .cell-droite section .champ.titre {
	margin-bottom: 15px;
	margin-top: calc(3 * 15px);
	padding-bottom: calc(1 * 15px);
	border-bottom: 1px solid #aaa;
}

.grid-node > .cell-gauche .champ.titre:not(.principal) {
	margin-bottom: 15px;
	margin-top: calc(3 * 15px);
	padding-bottom: calc(1 * 15px);
	border-bottom: 1px solid #aaa;
}

.grid-node > .cell-droite section:first-child .champ.titre,
.grid-node > .cell-gauche section:first-child .champ.titre {
	margin-top: 0;
}

.grid-node > .cell-droite section:first-child .champ.exergue {
	margin-top: calc(-1 * 15px);
}

.grid-node .champ.titre h2 {
	font-weight: bold;
	line-height: 1;
	margin: 0;
}

.grid-node > .cell-gauche .champ.images img {
	width: 100%;
}

@media screen and (min-width: 40em) {
	.champ.para .champ.texte_et_image > .cell-droite {
		padding-left: 15px;
	}
}

.champ.para .champ.fichier {
	margin-bottom: 15px;
}

.champ.para .champ.video {
	margin-bottom: 15px;
}

.grid-node > .cell-droite .champ.video {
	margin-bottom: 15px;
}

.grid-node > .cell-gauche .champ.fichier {
	margin: calc(-1 * 15px);
	margin-top: -1px;
	border-top: 1px solid #aaa;
}

.grid-node > .cell-gauche a.image_lien {
	display: block;
	position: relative;
	padding: 15px;
	margin: calc(15px*-1);
	margin-top: 15px;
	background-color: #FFF !important;
}

.grid-node > .cell-gauche a.image_lien img {
	width: 150px;
}

.champ.fichier li {
	border-bottom: 1px solid #aaa;
}

.champ.fichier li a {
	display: block;
	padding: 10px 15px 10px 55px;
	background-image: url(../../images/pictos-files.png);
	background-size: 30px;
	background-repeat: no-repeat;
	background-position: left 15px center;
	transition: all .3s;
}

.champ.fichier li a:hover {
	background-color: #FFF;
}

.champ.iframe iframe {
	border: none;
}

.grid-node > .cell-gauche .champ.fichier li a {
	background-color: #FFF;
	border-left: 3px solid #000;
}

.grid-node > .cell-gauche .champ.fichier li a:hover {
	background-color: #fef50d;
	border-left: 6px solid #000;
}

.champ.image img:not(.neutre) {
	width: 100%;
}

.champ.image ul li {
	margin-bottom: 15px;
}

.image-container {
	position: relative;
}

.image_lien .image-container img {
	max-height: 200px;
	object-fit: contain;
}

.grid-node > .image-container img:not(.neutre) {
	width: 100%;
}

.image-container .legende {
	position: absolute;
	z-index: 1;
	bottom: 0;
	color: #FFF;
	font-size: 0.6rem;
	padding: 5px;
	background-color: rgba(0, 0, 0, .6);
}

.champ.exergue {
	margin-left: calc(-1 * 15px);
	margin-right: calc(-1 * 15px);
	margin-bottom: 15px;
	font-size: 1.4rem;
	border-top: 1px solid #aaa;
	border-bottom: 1px solid #aaa;
	padding: calc(2 * 15px);
	background-color: #000;
	position: relative;
	overflow: hidden;
}

@media screen and (max-width: 40em) {

	.champ.exergue {
	font-size: 1rem;
	}
}

@media screen and (max-width: 80em) {

	.champ.exergue {
	font-size: 1.2rem;
	}
}

.champ.exergue p {
	color: #fef50d;
}

.champ.exergue li {
	color: #fef50d;
}

.champ.exergue a {
	color: #fef50d;
	text-decoration: underline;
}

.champ.exergue a:hover {
	color: #FFF;
}

.champ.exergue.normal p {
	border-left: 3px solid #fef50d;
	padding-left: calc(2 * 15px);
}

.champ.exergue p:last-child {
	margin: 0;
}

.champ.exergue.citation p {
	padding-left: 150px;
}

.champ.exergue.citation:before {
	content: "";
	position: absolute;
	width: 120px;
	height: 100%;
	top: calc(2 * 15px);
	left: calc(2 * 15px);
	background-image: url(../../images/citation.png);
	background-repeat: no-repeat;
	background-size: 100%;
}

@media screen and (max-width: 40em) {
	.champ.exergue.citation:before {
		width: 60px;
	}
	.champ.exergue.citation p {
		padding-left: 90px;
	}
}

.champ.texte li {
	position: relative;
	margin-bottom: calc(0.5 * 15px);
}

.champ.texte.exergue li:last-child {
	margin-bottom: 0;
	padding-bottom: 0;
}

.champ.texte li:before {
	content: "— ";
	color: #000;
}

.champ.texte.exergue li {
	color: #FFF;
}

.champ.texte.exergue li:before {
	color: #FFF;
}

.champ.texte ol {
	counter-reset: ol;
	margin: 0;
}

.champ.texte ol li {
	counter-increment: ol;
	margin-bottom: 10px;
	position: relative;
	padding-left: 35px;
}

.champ.texte ol li:before {
	position: absolute;
	left: 0;
	top: 0px;
	display: inline-block;
	content: counter(ol);
	text-align: center;
	width: 25px;
	height: 25px;
	line-height: 23px;
	border: 1px solid #aaa;
	border-radius: 50%;
	font-weight: bold;
	font-size: 0.8em;
	color: #000;		
}

ul.accordion li.accordion-item .accordion-content ol li:before {
	color: #FFF;
}

.champ.texte a {
	text-decoration: underline;
}

.champ.trombinoscope {
	display: -ms-flexbox;
	display: flex;
	-ms-flex-align: center;
	    align-items: center;
	margin-bottom: 15px;
}

.champ.trombinoscope .champ.image {
	-ms-flex: auto 0 0px;
	    flex: auto 0 0;
	width: 70px;
}

.champ.trombinoscope .champ.texte {
	padding-left: 15px;
}

.champ.ref {
	margin-bottom: 15px;
}

.champ.ref h2 {
	font-size: 1.4rem;
	font-weight: bold;
}

@media screen and (max-width: 40em) {

	.champ.ref h2 {
	font-size: 1rem;
	}
}

@media screen and (max-width: 80em) {

	.champ.ref h2 {
	font-size: 1.2rem;
	}
}

.champ.ref a {
	text-decoration: underline;
}

.champ.ref a:hover {
	color: #444;
}

.grid-node .champ.cat {
	font-size: 0.8rem;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	margin-bottom: 5px;
}

@media screen and (max-width: 80em) {

	.grid-node .champ.cat {
	font-size: 0.7rem;
	}
}

.grid-node .champ.cat span {
	border-radius: 20px;
	margin-right: 10px;
	margin-bottom: 10px;
	padding: 10px 20px;
	background-color: #F5F5F5;
	text-transform: lowercase;
}

/* old actus */

.node--type-actualite .champ.images.inserees {
	margin: calc(-1 * 15px) calc(-1 * 15px) 0 calc(-1 * 15px);
}

.node--type-actualite p.exergue {
	margin-left: calc(-1 * 15px);
	margin-right: calc(-1 * 15px);
	margin-bottom: 15px;
	font-size: 1.4rem;
	border-top: 1px solid #aaa;
	border-bottom: 1px solid #aaa;
	padding: calc(2 * 15px);
	background-color: #000;
	position: relative;
	overflow: hidden;
	color: #fef50d;
}

@media screen and (max-width: 40em) {

	.node--type-actualite p.exergue {
	font-size: 1rem;
	}
}

@media screen and (max-width: 80em) {

	.node--type-actualite p.exergue {
	font-size: 1.2rem;
	}
}

.node--type-actualite .champ.texte h2 {
	font-weight: normal !important;
}

/* FIN NODES */

/* POPUP NODE */

#modalPopup {
	padding: 0;
	border: none;
}

#modalPopup .champ {
	margin: 0;
}

#modalPopup .champ.texte {
	padding: 25px;
}

#modalPopup .champ.lien a {
	padding: 25px;
	display: inline-block;
	text-decoration: underline;
}

#modalPopup .champ.titre h2 {
	font-weight: bold;
	padding: 25px;
	margin: 0;
	background-color: #fef50d;
}

/* FIN POPUP NODE */

/* ACCUEIL */

.grid-node.accueil > .cell-droite {
	padding-top: 0;
}

.grid-node.accueil > .cell-droite ul.grid-x.grid-grid {
	margin-right: calc(-1 * 15px + 2 * -1px) !important;
}

.champ.bloc.actus {
	margin-bottom: 15px;
}

.champ.bloc.actus h2.field-label-above {
	font-weight: bold;
	margin: 0 calc(-1 * 15px);
	padding: 15px;
	border-bottom: 1px solid #aaa;
}

.champ.bloc.actus .more-link {
	margin: 0 calc(-1 * 15px) !important;
	border-bottom: 1px solid #aaa;
	text-align: right;
}

.champ.bloc.actus .more-link a {
	text-decoration: underline;
	display: inline-block;
	padding: 15px;
	font-size: 0.8rem;
}

@media screen and (max-width: 80em) {

	.champ.bloc.actus .more-link a {
	font-size: 0.7rem;
	}
}

.champ.inscriptions_accueil {
	margin: calc(1 * 15px) calc(-1 * 15px) calc(-1 * 15px) calc(-1 * 15px);
	padding: 15px;
	background-color: #000;
	color: #FFF;
}

.champ.contact_accueil {
	margin: calc(-1 * 15px) calc(-1 * 15px) calc(1 * 15px) calc(-1 * 15px);
	padding: 15px;
	padding-left: 60px;
	background-color: #000;
	color: #FFF;
	background-image: url(../../images/pictos-spe.png);
	background-size: 30px;
	background-repeat: no-repeat;
	background-position: left 15px center;
}

.champ.contact_accueil p {
	margin-bottom: 0;
}

.champ.inscriptions_accueil ol li {
	font-size: 0.8rem;
}

@media screen and (max-width: 80em) {

	.champ.inscriptions_accueil ol li {
	font-size: 0.7rem;
	}
}

.champ.inscriptions_accueil a,
.champ.contact_accueil a {
	color: #FFF;
}

.champ.inscriptions_accueil ol li:before {
	color: #fef50d;
	border: 1px solid #fef50d !important;
	top: -3px;
}

.champ.inscriptions_accueil ol:nth-child(1) {
	counter-reset: mycounter;
}

.champ.inscriptions_accueil ol:nth-child(1) li:before,
.champ.inscriptions_accueil ol:nth-child(3) li:before { 
    content: counter(mycounter); 
    counter-increment: mycounter;
}

.champ.inscriptions_accueil h2 {
	font-weight: bold;
	line-height: 1;
	margin: 0 0 15px 0;
	color: #fef50d;
}

.champ.contact_accueil h2 {
	font-weight: bold;
	line-height: 1;
	margin: 0 0 15px 0;
	color: #fef50d;
}

.champ.inscriptions_accueil ul {
	display: -ms-flexbox;
	display: flex;
	border-top: 1px solid #aaa;
	border-color: #444;
	margin-top: 20px;
	margin-bottom: 10px;
	/* TEMP 2022 */
	display: none;
}

.champ.inscriptions_accueil ul li {
	-ms-flex: 1;
	    flex: 1;
	border-bottom: 1px solid #aaa;
	border-color: #444;
}

.champ.inscriptions_accueil li:before {
	content: "";
}

.champ.inscriptions_accueil ul li a {
	height: 100%;
	font-size: 0.8rem;
	line-height: 1;
	display: block;
	transition: all .3s;
	text-align: center;
	color: #FFF;
	padding: 45px 15px 15px 15px;
	background-color: #fef50d;
	color: #000;
	background-image: url(../../images/pictos-files.png);
	background-size: 25px;
	background-repeat: no-repeat;
	background-position: center top 12px;	
}

@media screen and (max-width: 80em) {

	.champ.inscriptions_accueil ul li a {
	font-size: 0.7rem;
	}
}

.champ.inscriptions_accueil ul li a:hover {
	background-color: #000;
	color: #FFF;
	background-image: url(../../images/pictos-files-blanc.png);
}

.champ.inscriptions_accueil p {
	margin: 0;
}

.champ.inscriptions_accueil p a {
	margin-top: 15px;
	display: inline-block;
	color: #fef50d;
	font-weight: bold;
}

.path-frontpage .sticky {
	position: relative !important;
	top: 0 !important;
}

/* FIN ACCUEIL */

/* TEASERS */

.vue_entete {
	margin: 0 calc(-1 * 15px) !important;
	border-bottom: 1px solid #aaa;
	text-align: right;
}

.vue_entete p {
	margin: 0;
}

.vue_entete a {
	text-decoration: underline;
	display: inline-block;
	padding: 15px;
	font-size: 0.8rem;
	font-weight: bold;
}

@media screen and (max-width: 80em) {

	.vue_entete a {
	font-size: 0.7rem;
	}
}

.view-agenda .vue_entete .pager__current {
	font-size: 0.8rem;
	font-weight: bold;
}

@media screen and (max-width: 80em) {

	.view-agenda .vue_entete .pager__current {
	font-size: 0.7rem;
	}
}

ul.grid-x.grid-grid {
	margin: 0 calc(-1 * 15px) !important;
	position: relative;
}

ul.grid-x.grid-grid {
	margin-right: calc(-1 * 15px + -1px) !important;
}

ul.grille-even {
	-ms-flex-direction: row-reverse;
	    flex-direction: row-reverse;
	-ms-flex-wrap: wrap-reverse;
	    flex-wrap: wrap-reverse;
	-ms-flex-pack: end;
	    justify-content: flex-end;
}

ul.grid-x.grid-grid:after {
	content: "";
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	border-bottom: 1px solid #aaa;
}

ul.grid-x.grid-grid > li.cell {
	background-color: #FFF;
	border-right: 1px solid #aaa;
	border-bottom: 1px solid #aaa;
}

ul.grid-x.grid-grid > li.cell .champ.image img {
	width: 100%;
}

ul.grid-x.grid-grid > li.cell > .teaser {
	padding: 15px;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-direction: column;
	    flex-direction: column;
	height: 100%;
	transition: all .3s;
}

ul.grid-x.grid-grid > li.cell > .teaser .champ.image {
	margin-top: auto;
}

.teaser:hover {
	display: inherit;
	background-color: #fef50d !important;
}

.teaser .champ.titre h2 {
	text-transform: lowercase;
	font-weight: bold;
	font-size: 1rem;
	line-height: 1.2;
	margin-bottom: 15px;
}

@media screen and (max-width: 80em) {

	.teaser .champ.titre h2 {
	font-size: 0.8rem;
	}
}

.teaser .champ.date {
	text-transform: lowercase;
	font-size: 1rem;
	margin-top: calc(-1 * 15px);
	margin-bottom: 15px;
}

@media screen and (max-width: 80em) {

	.teaser .champ.date {
	font-size: 0.8rem;
	}
}

.teaser .champ.type {
	text-transform: lowercase;
	font-size: 1rem;
	margin-top: calc(-1 * 15px);
	margin-bottom: 15px;
}

@media screen and (max-width: 80em) {

	.teaser .champ.type {
	font-size: 0.8rem;
	}
}

.teaser .champ.date span {
	display: inline-block;
}

.teaser .champ.lieu {
	margin-top: -5px;
	line-height: 1;
	position: relative;
	padding-left: 17px;
	color: #aaa;
	font-size: 0.8rem;
	margin-bottom: 15px;
}

@media screen and (max-width: 80em) {

	.teaser .champ.lieu {
	font-size: 0.7rem;
	}
}

.teaser .champ.lieu:before {
	content: "";
	position: absolute;
	top: 50%;
	-ms-transform: translateY(-50%);
	    transform: translateY(-50%);
	left: -5px;
	width: 25px;
	height: 20px;
	background-image: url(../../images/pictos-lieu.png);
	background-size: contain;
	background-repeat: no-repeat;
	background-position: left center;
}

.teaser img {
	transition: all .3s;
	filter: grayscale(0);
}

.teaser:hover img {
	filter: grayscale(1);
}

nav.pager {
	margin: -1px calc(-1 * 15px) 0 calc(-1 * 15px);
	border-top: 1px solid #aaa;
	border-bottom: 1px solid #aaa;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-pack: center;
	    justify-content: center;
}

nav.pager ul.pagination {
	display: -ms-flexbox;
	display: flex;
	border-left: 1px solid #aaa;
	width: auto;
	margin-bottom: 0;
}

nav.pager ul.pagination li {
	padding: 0;
	margin: 0;
	
}

nav.pager ul.pagination li.pagination-next,
nav.pager ul.pagination li.pagination-previous {
	display: block;
}

nav.pager ul.pagination li a {
	padding: 10px 15px;
	display: block;
	border-right: 1px solid #aaa;
	margin: 0;
	transition: all .3s;
}

nav.pager ul.pagination li.current {
	padding: 10px 15px;
	display: block;
	border-right: 1px solid #aaa;
	margin: 0;
	transition: all .3s;
}

nav.pager ul.pagination li.current {
	color: #fef50d;
}

nav.pager ul.pagination li a:hover {
	background-color: #fef50d;
}

@media screen and (max-width: 64em) {
	nav.pager ul.pagination li.pager__item--last,
	nav.pager ul.pagination li.pager__item--first {
		display: none;
	}
}

/* FIN TEASERS */

/* GALERIE */

.galerie.justified-gallery {
	margin: 0 calc(-1* 15px);
	width: calc(100% + 2* 15px);
}

.block-facets {
	margin: 0 calc(-1* 15px);
	display: -ms-flexbox;
	display: flex;
	-ms-flex-align: center;
	    align-items: center;
	border-bottom: 1px solid #aaa;
}

.bef-exposed-form .form-wrapper {
	margin: 0 calc(-1* 15px);
	display: -ms-flexbox;
	display: flex;
	-ms-flex-align: center;
	    align-items: center;
	border-bottom: 1px solid #aaa;
}

.bef-exposed-form #edit-actions {
	display: none;
}

.block-facets .block-title {
	margin: 0 15px;
	font-size: 0.8rem;
	min-width: 70px;
	font-weight: bold;
}

@media screen and (max-width: 80em) {

	.block-facets .block-title {
	font-size: 0.7rem;
	}
}

.bef-exposed-form .block-title {
	margin: 0 15px;
	font-size: 0.8rem;
	min-width: 70px;
	font-weight: bold;
}

@media screen and (max-width: 80em) {

	.bef-exposed-form .block-title {
	font-size: 0.7rem;
	}
}

.block-facets ul,
.bef-exposed-form .form-radios,
.bef-exposed-form .form-checkboxes {
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	width: auto;
}

.block-facets ul li {
	-ms-flex: 1;
	    flex: 1; 
	border-left: 1px solid #aaa;
	border-bottom: 1px solid #aaa;
	padding: 0;
	margin-bottom: -1px;
}

.bef-exposed-form .form-radios .form-item {
	-ms-flex: 1;
	    flex: 1; 
	border-left: 1px solid #aaa;
	border-bottom: 1px solid #aaa;
	padding: 0;
	margin-bottom: -1px;
}

.bef-exposed-form .form-checkboxes .form-item {
	-ms-flex: 1;
	    flex: 1; 
	border-left: 1px solid #aaa;
	border-bottom: 1px solid #aaa;
	padding: 0;
	margin-bottom: -1px;
}

.path-actualites legend {
	display: none;
}

.path-actualites .form-radios .form-item:first-child {
	border-left: none;
}

.path-actualites .form-actions.form-wrapper {
	display: none;
}

.block-facets ul li.facets-reset {
	text-transform: lowercase;
	background-color: #D9D9D9;
}

.block-facets input[type="checkbox"],
.block-facets input[type="radio"],
.bef-exposed-form .form-radios input[type="radio"],
.bef-exposed-form .form-checkboxes input[type="checkbox"] {
  display: none;
}

.block-facets input[type="checkbox"] + label {
	width: 100%;
	margin: 0;
	margin-bottom: 0;
	position: relative;
	padding: 7px 7px 5px 28px;
	font-weight: normal;
	white-space: nowrap;
	font-size: 0.6rem;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-align: center;
	    align-items: center;
}

.block-facets input[type="radio"] + label {
	width: 100%;
	margin: 0;
	margin-bottom: 0;
	position: relative;
	padding: 7px 7px 5px 28px;
	font-weight: normal;
	white-space: nowrap;
	font-size: 0.6rem;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-align: center;
	    align-items: center;
}

.bef-exposed-form .form-radios input[type="radio"] + label {
	width: 100%;
	margin: 0;
	margin-bottom: 0;
	position: relative;
	padding: 7px 7px 5px 28px;
	font-weight: normal;
	white-space: nowrap;
	font-size: 0.6rem;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-align: center;
	    align-items: center;
}

.bef-exposed-form .form-checkboxes input[type="checkbox"] + label {
	width: 100%;
	margin: 0;
	margin-bottom: 0;
	position: relative;
	padding: 7px 7px 5px 28px;
	font-weight: normal;
	white-space: nowrap;
	font-size: 0.6rem;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-align: center;
	    align-items: center;
}

.block-facets input[type="checkbox"] + label::before {
  content:'';
  position: absolute;
  width: 15px;
  height: 15px;
  left: 7px;
  top: 8px;
  border: 1px solid #aaa;
  border-radius: 50%;
  z-index: 1;
}

.block-facets input[type="radio"] + label::before {
  content:'';
  position: absolute;
  width: 15px;
  height: 15px;
  left: 7px;
  top: 8px;
  border: 1px solid #aaa;
  border-radius: 50%;
  z-index: 1;
}

.bef-exposed-form .form-radios input[type="radio"] + label::before {
  content:'';
  position: absolute;
  width: 15px;
  height: 15px;
  left: 7px;
  top: 8px;
  border: 1px solid #aaa;
  border-radius: 50%;
  z-index: 1;
}

.bef-exposed-form .form-checkboxes input[type="checkbox"] + label::before {
  content:'';
  position: absolute;
  width: 15px;
  height: 15px;
  left: 7px;
  top: 8px;
  border: 1px solid #aaa;
  border-radius: 50%;
  z-index: 1;
}

.block-facets input[type="checkbox"] + label::after,
.block-facets input[type="radio"] + label::after,
.bef-exposed-form .form-radios input[type="radio"] + label::after,
.bef-exposed-form .form-checkboxes input[type="checkbox"] + label::after {
  content:'';
  position: absolute;
  width: 9px;
  height: 9px;
  left: 10px;
  top: 11px;
  border-radius: 50%;
  z-index: 0;
}

.block-facets input[type="checkbox"]:checked + label::after {
  border: 1px solid #aaa;
  background-color: #fef50d;
}

.block-facets input[type="radio"]:checked + label::after {
  border: 1px solid #aaa;
  background-color: #fef50d;
}

.bef-exposed-form .form-radios input[type="radio"]:checked + label::after {
  border: 1px solid #aaa;
  background-color: #fef50d;
}

.bef-exposed-form .form-checkboxes input[type="checkbox"]:checked + label::after {
  border: 1px solid #aaa;
  background-color: #fef50d;
}

.strp-container {
	background-color: #FFF !important;
	border-left: 1px solid #aaa;
}

.strp-info {
	font-family: 'Circular';
}

.strp-no-overlap .strp-container { 
	padding: 0 !important; 
}

.strp-position {
	color: #FFF !important;
	font-weight: bold !important;
}

.strp-nav-button {
	display: none !important;
}

.strp-nav {
	z-index: 1;
	top: 50%;
	margin-top: -25px;
	-ms-transform: none;
	    transform: none;
	text-indent: -10000px;
	width: 50px;
	height: 50px;
	padding: 0;
	background-position: center;
	background-repeat: no-repeat;
	background-size: 100%;
	background-color: transparent !important;
	cursor: pointer;
}

.strp-nav-previous {
	background-image: url(../../images/fleche-blanche-gauche.png);
	left: 12px;
}

.strp-nav-next {
	background-image: url(../../images/fleche-blanche-droite.png);
	right: 12px;
}

.strp-close-background {
	display: none;
}

.strp-close {
	display: -ms-flexbox;
	display: flex;
	-ms-flex-align: center;
	    align-items: center;
	-ms-flex-pack: center;
	    justify-content: center;
	width: 80px !important;
	height: 80px !important;
}

.strp-close-icon {
	position: relative !important;
	margin: 0 !important;
	top: inherit !important;
	left: inherit !important;
	width: 40px !important;
	height: 40px !important;
	background-image: url(../../images/pictos-close.png) !important;
	background-size: 100%;
}

.video-embed-field-lazy-play {
  height: 72px;
  width: 72px;
  left: 50%;
  top: 50%;
  margin-left: -36px;
  margin-top: -36px;
  position: absolute;
  background: url(../../images/play.png);
  cursor: pointer;
  background-size: 72px 72px;
}

/* FIN GALERIE */

/* ACCORDEON */

.champ.faq .champ.para > ul > li {
	border-bottom: 1px solid #aaa;
}

.node--type-grille .champ.para > ul > li {
	border-bottom: 1px solid #aaa;
}

.node--type-grille #main-contenu .champ.para {
	margin: 0 calc(-1* 15px);
}

li.cell.grille {
	width: 100%;
}

li.cell.grille h2 {
	font-weight: bold;
	line-height: 1;
	margin: -1px 0 0 0;
	padding: calc(2* 15px) 15px;
	border-top: 1px solid #aaa;
	background-color: #D9D9D9;
}

ul.accordion li.accordion-item a.accordion-title {
	border: none;
	position: relative;
	padding-right: 55px;
	padding-left: 30px;
	padding-top: 25px;
	padding-bottom: 25px;
	background-size: 30px;
	background-repeat: no-repeat;
	background-position: right 50px center;
	position: relative;
	transition: all .3s;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-align: center;
	    align-items: center;
}

ul.accordion li.accordion-item a.accordion-title.video {
	background-image: url(../../images/pictos-video.png);
	padding-right: 100px;
}

ul.accordion li.accordion-item a.accordion-title:hover {
	background-color: #fef50d;
}

ul.accordion li.accordion-item.is-active a.accordion-title {
	background-color: #000;
	color: #fef50d;
	
}

ul.accordion li.accordion-item a.accordion-title:before {
    content: '';
    position: absolute;
    width: 30px;
    height: 30px;
    border: none;
	background-image: url(../../images/fleche-nu-droite.png);
	background-position: center;
	background-repeat: no-repeat;
	background-size: 100%;
	display: inline-block;
    top: 50%;
    margin-top: -15px;
    right: 15px;
	transition: all .3s;
}

ul.accordion li.accordion-item.is-active a.accordion-title:before {
	background-image: url(../../images/fleche-blanche-droite.png);
	-ms-transform: rotate(90deg);
	    transform: rotate(90deg);
	-ms-transform-origin: center;
	    transform-origin: center;
	margin-top: -18px;
	right: 12px;
}

ul.accordion li.accordion-item a.accordion-title h2 {
	font-weight: normal;
	font-size: 1rem;
	line-height: 1;
	margin: 0;
}

@media screen and (max-width: 80em) {

	ul.accordion li.accordion-item a.accordion-title h2 {
	font-size: 0.8rem;
	}
}

ul.accordion li.accordion-item .accordion-content {
	background-color: #000;
	color: #FFF;
	border: none;
	padding: 0;
	border-top: 1px solid #aaa;
}

ul.accordion li.accordion-item .accordion-content .champ.reponse {
	padding: 15px;
}

ul.accordion li.accordion-item .accordion-content p:last-child {
	margin-bottom: 0;
}

ul.accordion li.accordion-item .accordion-content .champ.video {
	margin-bottom: 0;
}

/* FIN ACCORDEON */

/* WEBFORM JPO PROVISOIRE */

.path-webform .webform-submission-form {
	padding: 15px 0;
}

.path-webform .webform-submission-form a {
	text-decoration: underline;
}

.path-webform .webform-submission-form .form-item-horaire {
	margin-bottom: 15px;
	line-height: 1;
}

.path-webform .webform-submission-form #edit-markup {
	margin-bottom: 15px;
}

.path-webform .webform-submission-form input.form-radio {
	margin-bottom: 0;
}

.path-webform .webform-submission-form label.option {
	display: inline;
}

.path-webform .block-sitebranding a,
.path-webform .header-mobile .entete #logo a {
	pointer-events: none;
}

/* FIN WEBFORM JPO PROVISOIRE */

/* POPUP */

#popup {
	padding: 0 !important;
	border: none !important;
	box-shadow: 0px 0px 25px rgba(0,0,0,0.2);
}

#popup .close-button { 
	color: #aaa;
	transition: all .3s;
}

.close-button:hover {
	color: #000 !important;
}

.close-button:focus {
	color: #000 !important;
}

#popup .champ.titre {
	padding: 25px;
	background-color: #fef50d;
}

#popup .texte_et_image {
	padding: 0 25px;
	margin-bottom: 10px;
}

#popup .champ.texte {
	padding: 25px;
}

#popup .texte_et_image .champ.texte {
	padding: 0 25px;
}

#popup .champ.texte p:last-child {
	margin-bottom: 0;
}

#popup .champ.titre h2 {
	margin: 0;
	font-weight: bold;
	font-size: 1.4rem;
}

@media screen and (max-width: 40em) {

	#popup .champ.titre h2 {
	font-size: 1rem;
	}
}

@media screen and (max-width: 80em) {

	#popup .champ.titre h2 {
	font-size: 1.2rem;
	}
}

#popup .champ.fichier {
	background-color: #F5F5F5;
}

#popup .champ.fichier li {
	border: none;
}

#popup .champ.fichier li a {
	padding: 25px 25px 25px 65px;
	background-position: left 25px center;
}

#popup .champ.fichier li a:hover {
	background-color: #D9D9D9;
}

@media screen and (max-width: 40em) {
	#popup .texte_et_image .champ.texte {
		padding: 0;
	}
}

/* FIN POPUP */

/* NEWSROOM */

.node--type-dossier .champ.texte {
	border-bottom: 1px solid #aaa;
	font-size: 1.4rem;
	font-weight: bold;
}

@media screen and (max-width: 40em) {

	.node--type-dossier .champ.texte {
	font-size: 1rem;
	}
}

@media screen and (max-width: 80em) {

	.node--type-dossier .champ.texte {
	font-size: 1.2rem;
	}
}

.node--type-dossier .champ.elements {
	margin-top: 15px;
}

.node--type-dossier .champ.elements ol {
	counter-reset: ol;
	margin: 20px 0;
}

.node--type-dossier .champ.elements ol li {
	counter-increment: ol;
	margin-bottom: 15px;
	position: relative;
	padding-left: 35px;
	font-weight: normal;
	font-size: 1rem;
}

@media screen and (max-width: 80em) {

	.node--type-dossier .champ.elements ol li {
	font-size: 0.8rem;
	}
}

.node--type-dossier .champ.elements ol li:last-child {
	margin-bottom: 0;
}

.node--type-dossier .champ.elements ol li span {
	display: inherit;
}

.node--type-dossier .champ.elements ul li .champ.titre h2 {
	font-size: 1rem;
	margin-top: 15px;
}

@media screen and (max-width: 80em) {

	.node--type-dossier .champ.elements ul li .champ.titre h2 {
	font-size: 0.8rem;
	}
}

.node--type-dossier .champ.elements ul li .groupe {
	display: -ms-flexbox;
	display: flex;
	-ms-flex-align: center;
	    align-items: center;
	margin: 15px 0;
}

.node--type-dossier .champ.elements ul li a {
	font-size: 0.8rem;
	line-height: 1.4;
	display: inline-block;
	border-bottom: 1px solid #000;
}

@media screen and (max-width: 80em) {

	.node--type-dossier .champ.elements ul li a {
	font-size: 0.7rem;
	}
}

.node--type-dossier .champ.elements ul li .champ.lien {
	margin: 15px 0;
}

.node--type-dossier .champ.elements ul li .groupe .champ.vignette {
	width: 50px;
	margin-right: 15px;
}

.node--type-dossier .champ.elements ol li:before {
	position: absolute;
	left: 0;
	top: 50%;
	margin-top: -12px;
	display: inline-block;
	content: counter(ol);
	text-align: center;
	width: 25px;
	height: 25px;
	line-height: 24px;
	border: 1px solid #000;
	border-radius: 50%;
	font-weight: bold;
	font-size: 0.8em;
	color: #000;
	transition: all .3s;
}

.node--type-dossier .champ.elements ol li:hover:before {
	background-color: #fef50d;
}

.section-newsroom .vue_entete,
.vue-conferences .vue_entete {
	padding: 0;
}

.section-newsroom .vue_entete .field-wrapper {
	text-align: left;
	padding: 15px;
	background-color: #000;
	color: #FFF;
}

.vue-conferences .vue_entete .contenu:nth-child(2) {
	text-align: left;
	padding: 15px;
	background-color: #000;
	color: #FFF;
}

.section-newsroom .vue_entete .contenu {
	background-color: #FFF;
	color: #000;
}

.vue-conferences .vue_entete .contenu:nth-child(1) {
	background-color: #FFF;
	color: #000;
}

.section-newsroom .vue_entete .contenu .champ.texte {
	text-align: left;
	padding: 15px;
}

.vue-conferences .vue_entete .contenu:nth-child(1) .champ.texte {
	text-align: left;
	padding: 15px;
}

.vue-conferences .vue_entete .contenu:nth-child(1) .champ.texte h2 {
	font-weight: bold;
	margin: calc(-1 * 15px);
	margin-bottom: 15px;
	padding: 15px;
	border-bottom: 1px solid #aaa;
}

.section-newsroom .vue_entete p:not(:last-child),
.vue-conferences .vue_entete p:not(:last-child) {
	margin-bottom: 15px;
}

.section-newsroom .vue_entete a {
	padding: 0;
	font-size: 1rem;
	color: #FFF;
}

@media screen and (max-width: 80em) {

	.section-newsroom .vue_entete a {
	font-size: 0.8rem;
	}
}

.vue-conferences .vue_entete a {
	padding: 0;
	font-size: 1rem;
	color: #000;
}

@media screen and (max-width: 80em) {

	.vue-conferences .vue_entete a {
	font-size: 0.8rem;
	}
}

.vue-conferences .vue_footer {
	border-right: 1px solid #000;
	background-color: #fef50d;
}

.vue-conferences .vue_footer .contenu {
	-ms-flex-direction: column;
	    flex-direction: column;
}

.vue-conferences .vue_footer .contenu > .cell {
	-ms-flex: 1;
	    flex: 1;
	width: 100%;
}

.vue-conferences .vue_footer .contenu > .image {
	-ms-flex-order: 2;
	    order: 2;
	mix-blend-mode: multiply;
}

.vue-conferences .vue_footer .contenu .champ.texte h2 {
	font-weight: bold;
	margin: 0 calc(-1 * 15px);
	margin-bottom: 15px;
	padding: 15px;
	border-bottom: 1px solid #aaa;
	background-color: #FFF;
}

.vue-conferences .vue_footer .contenu .champ.texte a {
	padding: 12px 15px 15px 15px;
	border-radius: 50px;
	display: inline-block;
	background-color: #000;
	color: #FFF;
	text-decoration: none;
	font-weight: bold;
	transition: all .3s;
}

.vue-conferences .vue_footer .contenu .champ.texte a:hover {
	background-color: #FFF;
	color: #000;
}

@media screen and (max-width: 60em) {
	.vue-conferences .vue_footer {
		border-right: none;
	}
}

/* FIN NEWSROOM */

/* DIPLOME */

.vue.diplome .vue_entete .contenu .champ.texte {
	text-align: left;
	padding: 15px;
}

.vue.diplome .vue_entete p:not(:last-child) {
	margin-bottom: 15px;
}

.vue.diplome .vue_entete a {
	padding: 0;
	font-size: 1rem;
	color: #000;
}

@media screen and (max-width: 80em) {

	.vue.diplome .vue_entete a {
	font-size: 0.8rem;
	}
}

.btn_diplome {
	font-weight: bold;
	margin: 0 calc(-1 * 15px);
	display: inherit;
	left: 0;
	right: 0;
	background-color: #000;
	color: #fef50d;
	padding: 15px 30px 15px 55px;
	cursor: pointer;
	transition: all .3s;
	position: relative;
}

@media screen and (max-width: 80em) {
	.btn_diplome {
		padding-top: 10px;
		padding-bottom: 10px;
	}
}

.btn_diplome:hover {
	color: #000;
	background-color: #fef50d;
}

.btn_diplome:after {
	content: "";
	position: absolute;
	height: 30px;
	width: 30px;
	top: 50%;
	margin-top: -15px;
	left: 15px;
	position: absolute;
	background-image: url(../../images/pictos-diplome.png);
	background-size: 30px;
	background-repeat: no-repeat;
	background-position: center;
}

.btn_diplome:hover:after {
	background-image: url(../../images/pictos-diplome-noir.png);
}

@media screen and (max-width: 64em) {
	.btn_diplome {
		position: fixed;
		z-index: 1;
		bottom: 0;
		margin: 0;
	}
}

/* FIN DIPLOME */

/* EVENEMENTS */

.calendar-view-table {
	display: none !important;
}

.view-agenda .vue_entete {
	font-size: 0.8rem;
}

@media screen and (max-width: 80em) {

	.view-agenda .vue_entete {
	font-size: 0.7rem;
	}
}

.view-agenda .vue_entete .pager__previous a {
	color: #444;
	position: relative;
}

.view-agenda .vue_entete .pager__next a {
	color: #444;
	position: relative;
}

.view-agenda .vue_entete .pager__previous a {
	padding-left: 50px;
}

.view-agenda .vue_entete .pager__next a {
	padding-right: 50px;
}

.view-agenda .vue_entete .pager__next a:after {
	content: '';
    position: absolute;
	right: 15px;
    width: 30px;
    height: 20px;
    border: none;
	background-image: url(../../images/fleche-nu-droite.png);
	background-position: center;
	background-repeat: no-repeat;
	background-size: 30px;
}

.view-agenda .vue_entete .pager__previous a:after {
	content: '';
    position: absolute;
	right: 15px;
    width: 30px;
    height: 20px;
    border: none;
	background-image: url(../../images/fleche-nu-droite.png);
	background-position: center;
	background-repeat: no-repeat;
	background-size: 30px;
}

.view-agenda .vue_entete .pager__previous a:after {
	background-image: url(../../images/fleche-nu-gauche.png);
	right: inherit;
	left: 15px;
}

.view-agenda .vue_entete .pager__reset {
	display: none;
}

.view-agenda .bef-exposed-form .form-wrapper.form-actions {
	display: none;
}

.view-agenda .bef-exposed-form .form-item-field-date-value {
	display: none;
}

.view-agenda .bef-exposed-form legend {
	display: none;
}

.view-agenda .bef-exposed-form {
	margin-left: -1px;
}

.noresult {
	margin-top: 15px;
	font-size: 0.8rem;
}

@media screen and (max-width: 80em) {

	.noresult {
	font-size: 0.7rem;
	}
}

.view-agenda .bef-exposed-form .form-checkboxes input[type="checkbox"] + label {
	font-size: 0.8rem;
}

@media screen and (max-width: 80em) {

	.view-agenda .bef-exposed-form .form-checkboxes input[type="checkbox"] + label {
	font-size: 0.7rem;
	}
}

/* FIN EVENEMENTS */