/* @override 
	https://dev.cdn-normandierouen.fr/profiles/ff_profile/themes/custom/ff_rouen/css/ff_rouen_styles.css?* */

/**
 * CSS styles for the ff_rouen theme.
 */

/* FONTS */
@font-face {
  font-family: "CDN Manuscrite";
  src:
    url("../fonts/CDN-Light.woff") format("woff"),
    url("../fonts/CDN-Light.woff2") format("woff2");
  font-weight: 200;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "CDN Manuscrite";
  src:
    url("../fonts/CDN-Medium.woff") format("woff"),
    url("../fonts/CDN-Medium.woff2") format("woff2");
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "CDN Picto";
  src:
    url("../fonts/CDN-Picto-FS.woff") format("woff"),
    url("../fonts/CDN-Picto-FS.woff2") format("woff2");
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "IBM";
  src:
    url("../fonts/IBMPlexSans-Regular.woff") format("woff"),
    url("../fonts/IBMPlexSans-Regular.woff2") format("woff2");
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "IBM";
  src:
    url("../fonts/IBMPlexSans-Italic.woff") format("woff"),
    url("../fonts/IBMPlexSans-Italic.woff2") format("woff2");
  font-weight: normal;
  font-style: italic;
  font-display: swap;
}
@font-face {
  font-family: "IBM";
  src:
    url("../fonts/IBMPlexSans-SemiBold.woff") format("woff"),
    url("../fonts/IBMPlexSans-SemiBold.woff2") format("woff2");
  font-weight: 600;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "IBM";
  src:
    url("../fonts/IBMPlexSans-SemiBoldItalic.woff") format("woff"),
    url("../fonts/IBMPlexSans-SemiBoldItalic.woff2") format("woff2");
  font-weight: 600;
  font-style: italic;
  font-display: swap;
}
/* FIN FONTS */

/* VAR */
:root {
	--font: "IBM", sans-serif;
	--font-titre: "CDN Manuscrite", serif;
	--font-vivant: "Georgia", serif;
	--font-picto: "CDN Picto", sans-serif;
	--coul1: #00ff8c;
	--coul1rgb: 0,255,140;
	--coul2: #5600ae;
	--coul2rgb: 86,0,174;
	--noir: #000;
	--noirrgb: 0,0,0;
	--blanc: #FFF;
	--blancrgb: 255,255,255;
	--gris: #EAEFF1;
	--grisfonce: #DDD;
	--filter-coul1: brightness(0) saturate(100%) invert(84%) sepia(28%) saturate(4278%) hue-rotate(92deg) brightness(99%) contrast(105%);
	--filter-coul2: brightness(0) saturate(100%) invert(12%) sepia(84%) saturate(7268%) hue-rotate(277deg) brightness(55%) contrast(142%);
	--filter-blanc: brightness(0) saturate(100%) invert(99%) sepia(9%) saturate(396%) hue-rotate(228deg) brightness(112%) contrast(100%);
	--filter-gris: invert(99%) sepia(1%) saturate(546%) hue-rotate(147deg) brightness(99%) contrast(91%);
	--filter-btn: none;
	--font-xs: 0.6rem;
	--font-s: 0.8rem;
	--font-m: 1rem;
	--font-l: 1.4rem;
	--font-xl: 2.2rem;
	--font-xxl: 3.5rem;
	--stroke: 1px;
	--border-color: var(--noir);
	--border: var(--stroke) solid var(--border-color);
	--radius: 0;
	--gut: 30px;
	--hauteur-logo: 50px;
	--height_slider: 50vh;
	--height_img_teaser: 30vh;
	--height_tempsfort: 30vh;
	/*--ff-ajax-top: var(--hauteur-section1);
	--ff-ajax-bottom: var(--hauteur-section2);*/
	--ff-ajax-bottom: var(--hauteur-section1);
	--ff-ajax-top: var(--hauteur-section2);
	
	--ff-ajax-width-g: 100%;
	--ff-ajax-width-d: 33%;
	--teaser-ratio: 4 / 2;
	--sb-width: 8px;
}
body.role-administrateur {
	--ff-ajax-top: calc(var(--hauteur-section2) + var(--gin-toolbar-y-offset));
}
@media print, screen and (min-width: 1599px) {
    :root {
		--font-xxl: 4rem;
		--hauteur-logo: 70px;
        --gut: 30px;
		--ff-ajax-width-d: 25%;
    }
}
@media print, screen and (max-width: 1023px) {
    :root {
		--gut: 20px;
		--font-s: 0.8rem;
		--font-m: 1rem;
		--font-l: 1.5rem;
		--font-xl: 1.6rem;
		--font-xxl: 2.5rem;
		--hauteur-logo: 50px;
		--ff-ajax-width-d: 100%;
		--height_img_teaser: auto;
		--height_tempsfort: 60vh;
		--sb-width: 5px;
    }
}
@media print, screen and (max-width: 767px) {
    :root {
		--gut: 20px;
    	--font-s: 0.7rem;
		--font-m: 0.9rem;
		--font-l: 1.3rem;
		--font-xl: 1.5rem;
		--font-xxl: 2rem;
		--hauteur-logo: 40px;
		--height_slider: 35vh;
    }
}
/* FIN VAR */


/* ACCESSIBILITÉ */
.layout-global a:focus-visible,
.layout-global .focusable:focus-visible {
    outline: 2px solid var(--mag1000) !important;
    box-shadow: 0 0 15px var(--mag1000) !important;
    outline-offset: 0px !important;
    background: #fff !important;
    color: #000 !important;
}
.layout-global .focusable:focus-visible {
    height: auto;
    width: auto;
    overflow: visible;
    color: #000;
    position: fixed !important;
    top: 10px;
    left: 10px;
    z-index: 100;
    clip: inherit !important;
    padding: 7px 15px;
    border-radius: 50px;
}
/* dark theme */
/*@media (prefers-color-scheme: dark) {
	main {
		--noir: #FFF;
		--blanc: #000;
	}
	#menu_bottom {
		--noir: #000;
		--blanc: #FFF;
	}
	.accordeon .accordeon-titre:after,
	nav.pager ul li.pagination-previous a,
	.text-formatted ul li:before,
	.swiper-button-prev:after,
	.swiper-button-next:after {
		filter: invert(1);
	}
}
*/
/* access_gros */
.access_gros {
    --font-xs: 0.8rem;
	--font-s: 1rem;
	--font-m: 1.3rem;
	--font-l: 1.8rem;
}
@media print, screen and (max-width: 1023px) {
    .access_gros {
        --font-s: 1rem;
		--font-m: 1.2rem;
		--font-l: 1.6rem;
    }
}
/* access_liens */
.access_liens button,
.access_liens a,
.access_liens .teaser_titre {
    text-decoration: underline !important;
	text-underline-offset: 3px;
	text-decoration-thickness: 1px !important;
}
.access_liens .teaser_titre {
	text-underline-offset: 4px;
	text-decoration-thickness: 3px !important;
}
/* access_police */
.access_police {
    --font: "IBM", sans-serif;
	--font-titre: "IBM", sans-serif;
	--font-vivant: "IBM", sans-serif;
	--font-xxl: 3rem;
}
@media print, screen and (max-width: 1023px) {
    .access_police {
		--font-xxl: 1.5rem;
	}
}
.access_police .comp--teaser-evenement .visuel .teaser_titre {
	font-size: clamp(var(--font-xl), 1.8rem + 2.8vw, 2vw);
	font-weight: 700;
}
.access_police .comp--teaser-evenement .visuel .teaser_titre.long {
	font-size: clamp(var(--font-xl), 1.8rem + 2.8vw, 2vw);
}
@media print, screen and (min-width: 1920px) {
	.access_police .comp--teaser-evenement .visuel .teaser_titre.long {
		font-size: clamp(var(--font-xl), 1.8rem + 2.8vw, 2vw);
	}
}
/* access_renforce */
.access_renforce,
.access_inverse {
	--coul1: #AAA;
	--coul1rgb: 200,200,200;
	--coul2: #000;
	--coul2rgb: 0,0,0;
	--noir: #000;
	--blanc: #FFF;
	--gris: #F5F5F5;
	--grisfonce: #000;
	--filter-coul1: brightness(0) saturate(100%) invert(60%) saturate(396%) hue-rotate(0deg) brightness(112%) contrast(100%);
	--filter-coul2: none;
	--filter-blanc: brightness(0) saturate(100%) invert(99%) sepia(9%) saturate(396%) hue-rotate(228deg) brightness(112%) contrast(100%);
	--filter-gris: none;
}
.access_renforce .section1 #block-ff-rouen-identitedusite a img,
.access_inverse .section1 #block-ff-rouen-identitedusite a img {
    filter: var(--filter-blanc);
}
.access_renforce .btn.is-active,
.access_inverse .btn.is-active {
    background-color: var(--noir) !important;
    color: var(--blanc) !important;
}
.access_renforce .section1 .menu__trigger:after,
.access_inverse .section1 .menu__trigger:after {
	background-color: var(--blanc);
}
.access_renforce .section1 #block-ff-rouen-headertoday .menu__trigger span,
.access_inverse .section1 #block-ff-rouen-headertoday .menu__trigger span {
	filter: none;
}
.access_renforce .comp--teaser-evenement .visuel .teaser_titre,
.access_inverse .comp--teaser-evenement .visuel .teaser_titre {
	color: var(--blanc);
}
/* access_inverse */
.access_inverse {
    --coul1: #999;
	--coul1rgb: 60,60,60;
	--coul2: #FFF;
	--coul2rgb: 255,255,255;
	--noir: #FFF;
	--blanc: #000;
	--gris: #333;
	--grisfonce: #FFF;
	--filter-coul1: none;
	--filter-coul2: brightness(0) saturate(100%) invert(99%) sepia(9%) saturate(396%) hue-rotate(228deg) brightness(112%) contrast(100%);
	--filter-blanc: none;
	--filter-gris: brightness(0) saturate(100%) invert(99%) sepia(9%) saturate(396%) hue-rotate(228deg) brightness(112%) contrast(100%);
	--border-color: var(--noir);
	--border: var(--stroke) solid var(--border-color);
}
.access_inverse .field--name-field-accessibilite img,
.access_inverse .view-node-liste-accessibilite img {
	filter: var(--filter-gris);
}
.access_inverse .section1 #block-ff-rouen-headertoday .menu__trigger span {
	filter: var(--filter-gris);
}
.access_inverse .section1 #block-ff-rouen-identitedusite a img {
    filter: brightness(0);
}
.access_inverse footer img {
	filter: invert(99%);
}
.access_inverse .fond--gris .comp--medias.logo img, 
.access_inverse .fond--coul1 .comp--medias.logo img, 
.access_inverse .fond--coul2 .comp--medias.logo img,
.access_inverse .fond--gris .comp--medias.picto img, 
.access_inverse .fond--coul1 .comp--medias.picto img, 
.access_inverse .fond--coul2 .comp--medias.picto img {
	mix-blend-mode: normal;
}
.access_inverse main .comp--medias {
	background-color: #FFF;
}
.access_inverse #volet_d #fullnodevivant h1 {
	color: #FFF;
}
/* FIN ACCESSIBILITÉ */


/* GENERAL */
html {
	scroll-behavior: smooth;
	height: auto !important;
	color-scheme: light;
	font-optical-sizing: auto;
}
body {
	padding: 0;
	margin: 0;
	background-color: var(--blanc);
	font-family: var(--font);
	font-size: var(--font-m);
	line-height: 1.3;
	
}
body.panneau-ouvert {
	overflow: hidden;
}
.visually-hidden {
    position: absolute !important;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
}
.layout-global {
	min-height: calc(100vh - var(--hauteur-section1) - var(--hauteur-section2) - var(--hauteur-sousmenu) - var(--hauteur-switchajax));
	display: flex;
	flex-direction: column;
	/*margin-top: var(--hauteur-section1);
	margin-bottom: calc(var(--hauteur-section2) + var(--hauteur-sousmenu));*/
	margin-bottom: var(--hauteur-section1);
	margin-top: calc(var(--hauteur-section2) + var(--hauteur-sousmenu) + var(--hauteur-switchajax));
}
main {
	flex: 1;
}
strong {
	font-weight: 600;
}
sup {
	font-size: 60%;
	top: -0.6em;
}
a {
	color: inherit;
	text-decoration: none;
}
p a {
	text-decoration: underline !important;
}
p {
	margin: 0 0 calc(var(--gut) * 0.5) 0;
}
p:empty {
	display: none;
}
p:last-child {
	margin: 0 !important;
}
.hide {
	display: none !important;
}
* {
	box-sizing: border-box;
	-webkit-tap-highlight-color: transparent !important;
}
input {
	border: none;
	outline: none;
}
input:focus-visible {
	outline: 2px solid var(--gin-color-primary, currentColor);
	outline-offset: 2px;
}
/* Focus clavier visible sur les boutons déclencheurs du menu (En ce moment,
   Vivant!, burger, recherche) — même style que les champs. :focus-visible =
   clavier uniquement, aucun changement au clic souris (RGAA 10.7).
   !important pour passer outre un reset outline:none plus spécifique des agrégats
   (le fichier utilise déjà ce pattern, cf. champ recherche). */
.menu__trigger:focus-visible,
.menu__recherche:focus-visible {
	outline: 2px solid var(--gin-color-primary, currentColor) !important;
	outline-offset: 2px !important;
}
.flex {
	display: flex;
}
.titrage {
	font-family: var(--font-titre);
}
ul, ul li {
	margin: 0;
	padding: 0;
	list-style-type: none;
}
ul.menu li a {
	display: flex;
	transition: all .3s;
}
@media print, screen and (min-width: 1024px) {
	ul.menu li.hide-desktop,
	.hide-desktop {
		display: none !important;
	}
}
ul.menu a.ext:after {
	content: "↗";
	margin-left: 5px;
}
ul.menu > li ul .btn {
	border: none;
}
.close-button span {
	font-family: var(--font-picto);
	font-size: 30px;
	padding-top: 5px;
}
@media print, screen and (max-width: 1023px) {
	.close-button span {
		font-size: 22px;
		padding-top: 3px;
	}
}
.btn,
.prebtn a,
.cm-btn,
#block-ff-rouen-favorisdesktop a,
#block-ff-rouen-menuprimaire-2 a,
.menu-secondaire a,
.bef-link,
.views-display-link,
.view-footer > a,
.tournee-toggle {
	font-family: var(--font);
	text-align: left;
	display: inline-flex;
	align-items: center;
	position: relative;
	text-transform: inherit;
	border: var(--border);
	border-radius: var(--radius);
	padding: 6px 8px;
	font-size: var(--font-m);
	line-height: 1;
	font-weight: 600;
	font-variation-settings:
    "wdth" 100;
	width: fit-content;
	transition: all .3s;
	margin: 0;
	
}
a.btn {
	cursor: pointer;
}
button {
	background-color: var(--blanc);
}
.btn.petit {
	font-size: var(--font-s);
}
.btn.billetterie {
	text-transform: lowercase;
}
.btn.coul2,
.reserver .btn {
	border-color: var(--coul2);
	color: var(--coul2);
}
a.btn:hover,
.btn.is-active,
.prebtn a:hover,
.cm-btn:hover,
.bef-link:hover,
.bef-link--selected,
.views-display-link:hover,
#block-ff-rouen-menuprimaire-2 a:hover,
.menu-secondaire a:hover,
#block-ff-rouen-menuprimaire-2 a.is-active,
.menu-secondaire a.is-active,
.tournee-toggle:hover,
.tournee-toggle.is-active {
	background-color: var(--coul1);
}
span.btn {
	background-color: transparent !important;
}
.views-display-link,
.view-footer > a {
	margin-top: calc(var(--gut)*.5);
	font-size: var(--font-m) !important;
}
.view-footer:has(.views-display-link),
.view-footer:has(> a) {
	display: flex;
	justify-content: flex-end;
}
/* cookies buttons */
.cm-btn {
	margin: 0 !important;
	padding: 4px 12px !important;
	border-radius: var(--radius) !important;
	border: var(--border) !important;
	font-size: var(--font-m) !important;
	line-height: 1 !important;
	background: none !important;
	color: var(--noir) !important;
	transition: all .3s;
}
.cm-btn:hover {
	background-color: var(--coul1) !important;
}
/**/
.btn.picto_text,
.prebtn.picto_text a {
	padding-left: 40px;
}
.btn.picto,
.prebtn.picto a {
    text-indent: -10000px;
	height: calc(var(--font-l)*1.5);
	width: calc(var(--font-l)*1.5);
	overflow: hidden;
}
.btn.picto_text:after,
.prebtn.picto_text a:after {
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	left: 6px;
	display: inline-block;
	aspect-ratio: 1 / 1;
	background-position: center;
	background-size: 70%;
	background-repeat: no-repeat;
	filter: var(--filter-btn);
}
.btn.picto:after,
.prebtn.picto a:after {
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	background-position: center;
	background-size: 70%;
	background-repeat: no-repeat;
	filter: var(--filter-btn);
}
.btn.picto.billetterie:after,
.prebtn.picto.billetterie a:after,
.btn.picto_text.billetterie:after,
.prebtn.picto_text.billetterie a:after,
.billetterie .btn.picto_text:after {
	background-image: url(../images/billet.svg);
}
h1#cm-modal-title {
	margin: calc(var(--gut)*-.5);
	padding: calc(var(--gut)*.5) !important;
}
.filtres {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
}
.badge,
.prebadge a {
	background-color: var(--coul1);
	width: fit-content;
	color: var(--coul2);
	border-radius: 50px;
	font-size: var(--font-s);
	text-transform: lowercase;
	padding: 5px 7px;
	font-weight: 600;
	transition: all .3s;
	white-space: nowrap;
}
a.badge:hover,
.prebadge a:hover {
	background-color: var(--coul2);
	color: var(--coul1);
}
/* Reflow petit écran : le badge « temps fort » (pill, nowrap) déborde sous ~320px
   (fiche spectacle, RGAA 10.11). On l'autorise à passer à la ligne sous 480px —
   sans effet tant qu'il tient sur une ligne, donc aucun changement au-delà. */
@media print, screen and (max-width: 480px) {
	.prebadge a {
		white-space: normal;
	}
}
/* FIN GENERAL */

/* ZONE PRATIQUE */
#pratique, .local-tasks {
	font-family: var(--gin-font);
	position: relative;
	z-index: 0;
	background-color: var(--gin-bg-app);
	margin-bottom: calc(var(--gut)*0);
	margin-left: calc(var(--gut)*0) !important;
	margin-right: calc(var(--gut)*0) !important;
}
#pratique .block,
.local-tasks,
#pratique .messages {
    padding: calc(var(--gut)*.5) var(--gut) !important;
    margin-bottom: 0px;
    border-top: none;
    border-bottom: var(--stroke) solid var(--gin-color-primary) !important;
}
#pratique .messages-list ~ .block-local-tasks-block {
  padding-top: 15px !important;
}
/* FIN ZONE PRATIQUE */

/* SCROLLBAR */
body::-webkit-scrollbar {
  width: var(--sb-width);
}
body::-webkit-scrollbar-track {
  background: var(--noir);
  border-radius: 0px;
}
body::-webkit-scrollbar-thumb {
  background: var(--coul1);
  border-radius: 0px;
}
@supports not selector(::-webkit-scrollbar) {
  body {
      scrollbar-color: var(--coul1) var(--noir);
      scrollbar-width: thin;
  }
}
#volet_d #block-ff-rouen-views-block-flux-vivant-flux-vivant .flux-vivant::-webkit-scrollbar {
	width: var(--sb-width);
}
#volet_d #block-ff-rouen-views-block-flux-vivant-flux-vivant .flux-vivant::-webkit-scrollbar-track {
	background: var(--coul2);
	border-radius: 0px;
}
#volet_d #block-ff-rouen-views-block-flux-vivant-flux-vivant .flux-vivant::-webkit-scrollbar-thumb {
	background: var(--coul1);
	border-radius: 0px;
}
@supports not selector(::-webkit-scrollbar) {
  #volet_d #block-ff-rouen-views-block-flux-vivant-flux-vivant .flux-vivant {
      scrollbar-color: var(--coul1) var(--coul2);
      scrollbar-width: thin;
  }
}
@media print, screen and (min-width: 1023px) {
	#volet_d #fullnodevivant .page {
		direction: rtl;
	}
	#volet_d #fullnodevivant .page > * {
		direction: ltr;
	}
}
#volet_d #fullnodevivant .page::-webkit-scrollbar {
	width: var(--sb-width);
}
#volet_d #fullnodevivant .page::-webkit-scrollbar-track {
	background: var(--blanc);
	border-radius: 0px;
}
#volet_d #fullnodevivant .page::-webkit-scrollbar-thumb {
	background: var(--coul1);
	border-radius: 0px;
}
@supports not selector(::-webkit-scrollbar) {
  #volet_d #fullnodevivant .page {
      scrollbar-color: var(--coul1) var(--blanc);
      scrollbar-width: thin;
  }
}
#panneau_ham .ff-ajax-region-content::-webkit-scrollbar {
	width: var(--sb-width);
}
#panneau_ham .ff-ajax-region-content::-webkit-scrollbar-track {
	background: var(--gris);
	border-radius: 0px;
}
#panneau_ham .ff-ajax-region-content::-webkit-scrollbar-thumb {
	background: var(--coul1);
	border-radius: 0px;
}
@supports not selector(::-webkit-scrollbar) {
  #panneau_ham .ff-ajax-region-content {
      scrollbar-color: var(--coul1) var(--gris);
      scrollbar-width: thin;
  }
}
#volet_g::-webkit-scrollbar {
	width: var(--sb-width);
}
#volet_g::-webkit-scrollbar-track {
	background: var(--gris);
	border-radius: 0px;
}
#volet_g::-webkit-scrollbar-thumb {
	background: var(--coul2);
	border-radius: 0px;
}
@supports not selector(::-webkit-scrollbar) {
  #volet_g {
      scrollbar-color: var(--coul2) var(--gris);
      scrollbar-width: thin;
  }
}
.infobulle::-webkit-scrollbar {
	width: var(--sb-width);
}
.infobulle::-webkit-scrollbar-track {
	background: var(--gris);
	border-radius: 0px;
}
.infobulle::-webkit-scrollbar-thumb {
	background: var(--coul2);
	border-radius: 0px;
}
@supports not selector(::-webkit-scrollbar) {
  .infobulle {
      scrollbar-color: var(--coul2) var(--gris);
      scrollbar-width: thin;
  }
}
/* FIN SCROLLBAR */

/* TITRES */
h1,
.view-saison h1,
.view-calendrier_mensuel h1,
.view-header h2.comp--titre,
.calendrier .view-header h3,
.vue-grid-elements .views-group > .group-entete,
.field_label_h2 {
	margin: 0;
	font-weight: 600;
	font-size: var(--font-l);
	line-height: 1.1;
	padding: calc(var(--gut)*.5) var(--gut);
}
.vue-grid-elements .views-group > .group-entete {
	background-color: var(--coul1);
}
.vue-grid-elements.view-saison.view-display-id-attachment_1 .views-group > .group-entete {
	background-color: var(--gris);
}
.view-header h2.comp--titre {
	background-color: var(--noir);
	color: var(--blanc);
}
h1 {
	z-index: 8;
	position: relative;
	color: var(--coul2);
	font-weight: 600;
	background-color: var(--coul1);
	font-size: var(--font-xxl);
	padding: calc(var(--gut)*.5) var(--gut);
	text-wrap: balance;
}
body.view-saison h1,
.view-calendrier_mensuel h1 {
	background-color: var(--coul2);
	color: var(--coul1);
}
h2 {
	font-weight: 600;
	font-size: var(--font-xl);
	line-height: 1;
}
h3 {
	font-weight: 600;
	font-size: var(--font-l);
	line-height: 1;
}
.comp--titre {
	text-wrap: balance;
}
/* TITRES */

/* HEADER */
/* section1 */
.section1 {
	display: grid;
	grid-template-columns: auto 1fr auto;
	justify-items: center;
	background-color: var(--coul2);
	position: fixed;
/*	top: 0;*/
	bottom: 0;

	left: var(--gin-toolbar-x-offset, 0);
	right: 0;
	z-index: 20;
}
body.role-administrateur .section2 {
	top: var(--gin-toolbar-y-offset);
}
.section1 #block-ff-rouen-identitedusite {
	height: 100%;
	padding: 10px 0;
	display: flex;
	align-items: center;
}
.section1 #block-ff-rouen-identitedusite a {
	display: flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
}
.section1 #block-ff-rouen-identitedusite a:hover {
	filter: var(--filter-coul1);
}
.section1 #block-ff-rouen-identitedusite a img {
	display: flex;
	height: var(--hauteur-logo);
}
.section1 .menu__trigger {
	all: initial;
	cursor: pointer;
	padding: 0 var(--gut);
	font-family: var(--font-titre);
	font-size: var(--font-xl);
	position: relative;
	transition: all .3s;
	display: flex;
	align-items: center;
	justify-content: center;
}
.section1 .menu__trigger span {
	text-indent: -10000px;
	display: inherit;
	width: 10vw;
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
}
.section1 #block-ff-rouen-headertoday .menu__trigger span {
	background-image: url(../images/moment.svg);
	filter: var(--filter-blanc);
}
.section1 #block-ff-rouen-headervivant .menu__trigger span {
	background-image: url(../images/vivant.svg);
	filter: var(--filter-coul2);
}
.section1 #block-ff-rouen-headervivant .menu__trigger:not(.is-active) span {
  animation: menuShakeSoft 5s ease-in-out infinite;
}

@keyframes menuShakeSoft {
  0%, 90%, 100% { transform: rotate(0); }
  92% { transform: rotate(-3deg); }
  94% { transform: rotate(3deg); }
  96% { transform: rotate(-2deg); }
  98% { transform: rotate(0); }
}
.section1 .menu__trigger:after {
	content: "";
	position: absolute;
	z-index: -1;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	background-color: var(--noir);
    -webkit-mask-size: auto 300%;
    mask-size: auto 300%;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-position: right center;
    mask-position: right center;
	transition: all .3s;
}
.section1 #block-ff-rouen-headertoday,
.section1 #block-ff-rouen-headervivant {
	display: flex;
}
.section1 #block-ff-rouen-headertoday .menu__trigger {
	padding-right: calc(var(--gut)*2);
	color: var(--blanc);
}
.section1 #block-ff-rouen-headertoday .menu__trigger.is-active {
	color: var(--coul2);
}
.section1 #block-ff-rouen-headertoday .menu__trigger.is-active span {
	filter: var(--filter-coul2);
}
.section1 #block-ff-rouen-headertoday .menu__trigger:after {
	-webkit-mask-image: url(../images/vivant-mask2.svg);
    mask-image: url(../images/vivant-mask2.svg);
}
.section1 #block-ff-rouen-headertoday .menu__trigger.is-active:after {
	filter: var(--filter-blanc);
}
.section1 #block-ff-rouen-headervivant .menu__trigger {
	padding-left: calc(var(--gut)*2);
	color: var(--coul2);
}
.section1 #block-ff-rouen-headervivant .menu__trigger:after {
	-webkit-mask-position: left center;
    mask-position: left center;
	-webkit-mask-image: url(../images/vivant-mask1.svg);
    mask-image: url(../images/vivant-mask1.svg);
	filter: var(--filter-coul1);
}
.section1 #block-ff-rouen-headervivant .menu__trigger.is-active:after {
	filter: var(--filter-blanc);
}
@media print, screen and (max-width: 1023px) {
	.section1 {
		grid-template-columns: 1fr 1fr;
		grid-template-rows: 1fr auto;
	}
	.section1 #block-ff-rouen-identitedusite {
		grid-column: 1 / 3;
		grid-row: 1;
		padding: 5px 0;
	}
	.section1 #block-ff-rouen-identitedusite a img {
		max-width: 80vw;
	}
	.section1 .menu__trigger {
		padding: calc(var(--gut)*.5);
	}
	.section1 .menu__trigger span {
		width: 20vw;
	}
	.section1 .menu__trigger:after {
	    -webkit-mask-size: auto 600%;
	    mask-size: auto 600%;
	}
	.section1 #block-ff-rouen-headertoday {
		grid-column: 1;
		grid-row: 2;
		justify-self: start;
		width: 115%;
	}
	.section1 #block-ff-rouen-headervivant {
		grid-column: 2;
		grid-row: 2;
		justify-self: end;
		width: 110%;
		right: -10%;
	}
	.section1 #block-ff-rouen-headertoday .menu__trigger,
	.section1 #block-ff-rouen-headervivant .menu__trigger {
		width: 100%;
		text-align: center;
	}
}
@media print, screen and (max-width: 600px) {
	.section1 .menu__trigger span {
		width: 30vw;
	}
}
/* section2 */
.section2 {
	display: grid;
	grid-template-columns: 1fr 3fr 1fr;
	align-items: center;
	justify-items: center;
	background-color: var(--coul2);
	padding: 10px var(--gut);
	position: fixed;
	/*bottom: 0;*/
	top: 0;
	
	left: var(--gin-toolbar-x-offset, 0);
	right: 0;
	z-index: 20;
}
.section2 .menu__trigger, 
.section2 .menu__recherche, 
.section2 .menu__access {
	all: initial;
	cursor: pointer;
	position: relative;
	transition: all .3s;
	color: var(--coul1);
	height: 35px;
	aspect-ratio: 1 / 1;
	text-indent: -100000px;
	display: inline-block;
}
.section2 .menu__trigger:after, 
.section2 .menu__recherche:after, 
.section2 .menu__access:after {
	font-family: var(--font-picto);
	font-size: calc(var(--font-xl)*1.2);
	line-height: 1;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	color: var(--blanc);
	text-indent: 0;
	transition: all .3s;
	text-align: center;
}
.section2 .menu__trigger:after {
	content: "P";
}
.section2 .menu__recherche:after {
	content: "M";
}
.section2 .menu__access:after {
	content: "O";
}
.section2 .menu__trigger:hover:after, 
.section2 .menu__recherche:hover:after,
.section2 .menu__access:hover:after,
.section2 .menu__trigger.is-active:after, 
.section2 .menu__recherche.is-active:after,
.section2 .menu__access.is-active:after,
[class*='access_'] .section2 .menu__access:after {
	color: var(--coul1);
}
.section2 ul.menu {
	display: flex;
	flex-wrap: wrap;
	column-gap: calc(var(--gut)*.75);
	justify-content: center;
	align-items: center;
	font-size: var(--font-l);
	color: var(--blanc);
	font-family: var(--font-titre);
}
.section2 #block-ff-rouen-menuprimaire a {
	letter-spacing: 0.5px;
}
.section2 #block-ff-rouen-menuprimaire a:hover,
.section2 #block-ff-rouen-menuprimaire a.is-active,
.section2 #block-ff-rouen-menuprimaire li.is-active a {
	color: var(--coul1);
}
.section2 #block-ff-rouen-menuprimaire a.ext,
.section2 #block-ff-rouen-favorismobile a.ext {
	position: relative;
	padding-right: 23px;
}
.section2 #block-ff-rouen-menuprimaire a.ext:after,
.section2 #block-ff-rouen-favorismobile a.ext:after {
	content: "W";
	position: absolute;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
	margin-top: 2px;
	display: inline-block;
	font-family: var(--font-picto);
}
.section2 #block-ff-rouen-menuprimaire li.accueil a,
.section2 #block-ff-rouen-favorismobile li.accueil a {
	text-indent: -10000px;
	width: calc(var(--hauteur-logo)*.5);
	height: calc(var(--hauteur-logo)*.5);
	background-image: url(../images/home.svg);
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
	filter: var(--filter-blanc);
}
.section2 #block-ff-rouen-favorismobile li:not(.accueil) a {
	margin-bottom: -3px;
}
.section2 #block-ff-rouen-favorismobile li.accueil a {
	width: calc(var(--hauteur-logo)*.7);
	height: calc(var(--hauteur-logo)*.7);
	margin-top: -3px;
}
.section2 #block-ff-rouen-menuprimaire li.accueil.is-active a,
.section2 #block-ff-rouen-menuprimaire li.accueil a.is-active,
.section2 #block-ff-rouen-menuprimaire li.accueil a:hover,
.section2 #block-ff-rouen-favorismobile li.accueil.is-active a,
.section2 #block-ff-rouen-favorismobile li.accueil a.is-active,
.section2 #block-ff-rouen-favorismobile li.accueil a:hover {
	filter: var(--filter-coul1);
}
.section2 #block-ff-rouen-headertriggerpanneau-ham {
	justify-self: start;
	display: flex;
	gap: 10px;
}
.section2 #block-ff-rouen-favorisdesktop,
.section2 #block-ff-rouen-favorismobile {
	grid-column: 3;
	grid-row: 1;
	justify-self: end;
}
.section2 #block-ff-rouen-favorisdesktop a {
	border-color: var(--blanc);
}
.section2 #block-ff-rouen-favorisdesktop a.is-active,
.section2 #block-ff-rouen-favorismobile a.is-active,
.section2 #block-ff-rouen-favorisdesktop a:hover,
.section2 #block-ff-rouen-favorismobile a:hover {
	border-color: var(--coul1);
	color: var(--coul1);
}
@media print, screen and (max-width: 1023px) {
	.section2 {
		grid-template-columns: auto 0 1fr;
	}
	.section2 #block-ff-rouen-menuprimaire {
		grid-row: 2;
		grid-column: 1 / -1;
		display: none;
	}
	.section2 #block-ff-rouen-menuprimaire {
		display: none;
	}
	.section2 #block-ff-rouen-favorisdesktop {
		display: none;
	}
	.section2 .menu__trigger:after, 
	.section2 .menu__recherche:after, 
	.section2 .menu__access:after {
		font-size: calc(var(--font-xl)*1.6);
	}
}
@media print, screen and (max-width: 767px) {
	.section2 .menu__trigger, 
	.section2 .menu__recherche, 
	.section2 .menu__access {
		height: 24px;
	}
	.section2 .menu__trigger:after, 
	.section2 .menu__recherche:after, 
	.section2 .menu__access:after {
		font-size: calc(var(--font-xl)*1.2);
	}
	.section2 ul.menu {
		column-gap: calc(var(--gut)*.75);
		font-size: calc(var(--font-m)*1.3);
	}
	.section2 #block-ff-rouen-menuprimaire a.ext,
	.section2 #block-ff-rouen-favorismobile a.ext {
		padding-right: 16px;
	}
	.section2 #block-ff-rouen-favorismobile li.accueil a {
		width: calc(var(--hauteur-logo)*.6);
		height: calc(var(--hauteur-logo)*.6);
		margin-top: -3px;
	}
}
@media print, screen and (min-width: 1024px) {
    .section2 #block-ff-rouen-favorismobile {
		display: none;
	}
}
/* panneau ham */
#panneau_ham .ff-ajax-region-content {
	display: grid;
	overflow: auto;
	grid-template-columns: 1fr 1fr;
	height: 100%;
}
#panneau_ham .section {
	padding: 0;
}
#panneau_ham .section3 {
	display: grid;
	grid-template-columns: 1fr 1fr;
	grid-template-rows: auto auto auto;
	gap: var(--gut);
	padding: var(--gut);
}
#panneau_ham #block-ff-rouen-encemomentinfos {
	grid-column: 2;
	align-self: end;
}
#panneau_ham #block-ff-rouen-navigationprincipale {
	align-self: center;
	grid-column: 1 / -1;
	font-size: var(--font-xl);
	color: var(--coul2);
	font-weight: 600;
	text-transform: lowercase;
	line-height: 1;
	padding-top: calc(var(--gut)*1);
}
#panneau_ham #block-ff-rouen-navigationprincipale ul.menu li a {
	margin-bottom: calc(var(--gut)*.5);
	display: inline-block;
}
#panneau_ham #block-ff-rouen-navigationprincipale ul.menu li a:hover,
#panneau_ham #block-ff-rouen-navigationprincipale ul.menu li.is-active a,
#panneau_ham #block-ff-rouen-navigationprincipale ul.menu li a.is-active {
	color: var(--noir);
}
#panneau_ham #block-ff-rouen-menuinfos,
#panneau_ham #block-ff-rouen-reseauxsociaux {
	font-size: var(--font-m);
	font-weight: 600;
	text-transform: lowercase;
}
#panneau_ham #block-ff-rouen-menuinfos ul.menu li a:hover,
#panneau_ham #block-ff-rouen-menuinfos ul.menu li.is-active a,
#panneau_ham #block-ff-rouen-menuinfos ul.menu li a.is-active,
#panneau_ham #block-ff-rouen-reseauxsociaux ul.menu li a:hover,
#panneau_ham #block-ff-rouen-reseauxsociaux ul.menu li.is-active a,
#panneau_ham #block-ff-rouen-reseauxsociaux ul.menu li a.is-active {
	color: var(--coul2);
}
#panneau_ham #block-ff-rouen-navigationprincipale ul.menu li.extra a {
	margin-bottom: calc(var(--gut)*.5);
	position: relative;
	padding-right: calc(var(--gut)*2);
}
#panneau_ham #block-ff-rouen-navigationprincipale ul.menu li.extra a:after {
	content: "";
	position: absolute;
	top: 50%;
	right: 0;
	transform: translateY(-50%);
	width: calc(var(--gut)*1.5);
	height: calc(var(--gut)*1.5);
  	background-position: center;
	background-size: contain;
	background-repeat: no-repeat;
	background-image: url(../images/picto-extra.svg);
	filter: var(--filter-coul2);
}
#panneau_ham #block-ff-rouen-section3baseline {
	filter: var(--filter-coul2);
	align-self: end;
	grid-column: 1;
}
#panneau_ham #block-ff-rouen-section3baseline .comp {
	margin: 0;
}
#panneau_ham #block-ff-rouen-section3baseline img {
	height: 10vh;
}
#panneau_ham .section4 {
	height: 100%;
	max-height: 100%;
	overflow: hidden;
}
#panneau_ham .section4 * {
	height: 100%;
	width: 100%;
	object-fit: cover;
	overflow: hidden;
	margin: 0;
}
@media print, screen and (max-width: 1023px) {
    #panneau_ham .ff-ajax-region-content {
		grid-template-columns: 1fr;
		grid-template-rows: 1fr auto;
	}
	#panneau_ham #block-ff-rouen-navigationprincipale {
		padding-top: calc(var(--gut)*2);
	}
	#panneau_ham #block-ff-rouen-encemomentinfos {
	}
}
@media print, screen and (max-width: 767px) {
	#panneau_ham #block-ff-rouen-encemomentinfos {
		grid-column: 1 / -1;
		order: 4;
	}
	#panneau_ham #block-ff-rouen-section3baseline {
		order: 5;
	}
}
/* FIN HEADER */

/* SOUS MENU PRIMAIRE */
#block-ff-rouen-menuprimaire-2 ul.menu,
.menu-secondaire ul.menu,
.views-exposed-form ul:not(.result-list,.contextual-links),
.section--submenu-scroll,
#block-ff-switchajax-saison,
#block-inputsearch,
#block-ff-rouen-headeraccessibilite {
	position: fixed;
	top: var(--ff-ajax-top);
	right: 0;
	left: var(--gin-toolbar-x-offset, 0);
	z-index: 9;
	background-color: var(--coul2);
	border-top: 1px solid var(--blanc);
	padding: calc(var(--gut)*.5) var(--gut);
	display: flex;
	flex-wrap: wrap;
	gap: calc(var(--gut)*.5);
}
#block-ff-rouen-headeraccessibilite {
	padding: 0 !important;
}
#block-ff-rouen-headeraccessibilite ul {
	display: flex;
	flex-wrap: wrap;
	gap: calc(var(--gut)*.5);
	padding: calc(var(--gut)*.5) var(--gut);
}
#block-ff-switchajax-saison,
.section--submenu-scroll {
	border-bottom: none;
	background-color: var(--gris);
/*	bottom: calc(var(--hauteur-section2) + var(--hauteur-sousmenu));*/

}
.views-exposed-form ul:not(.result-list,.contextual-links) {
	background-color: var(--noir);
	top: calc(var(--ff-ajax-top) + var(--hauteur-sousmenu) + var(--hauteur-switchajax));
}
.views-exposed-form ul .bef-link {
	border-color: var(--blanc);
	color: var(--blanc);
}
.views-exposed-form ul .bef-link:hover,
.views-exposed-form ul .bef-link--selected {
	border-color: var(--coul1);
	color: var(--coul1);
	background-color: var(--noir);
}
#block-ff-rouen-menuprimaire-2 ul.menu a,
.menu-secondaire ul.menu a {
	border-color: var(--blanc);
	color: var(--blanc);
}
#block-ff-rouen-menuprimaire-2 ul.menu a:hover,
#block-ff-rouen-menuprimaire-2 ul.menu a.is-active,
#block-ff-rouen-menuprimaire-2 ul.menu li.is-active a,
.menu-secondaire ul.menu a:hover,
.menu-secondaire ul.menu a.is-active,
.menu-secondaire ul.menu li.is-active a {
	background-color: var(--coul2);
	border-color: var(--coul1);
	color: var(--coul1);
}
#block-ff-switchajax-saison {
	display: flex;
}
.ff-switchajax-saison {
	flex: 1;
	display: flex;
	align-items: center;
	gap: calc(var(--gut)*.5);
}
.ff-switchajax-saison nav {
	display: flex;
	flex-wrap: wrap;
	gap: calc(var(--gut)*.5);
	align-items: center;
}
.ff-switchajax-saison__filter-toggle {
	padding-left: 40px;
	cursor: pointer;
}
.ff-switchajax-saison__filter-toggle:after {
	content: "L";
	position: absolute;
	top: 0;
	bottom: 0;
	left: 6px;
	display: inline-block;
	aspect-ratio: 1 / 1;
	font-family: var(--font-picto);
	font-size: calc(var(--font-l)*1.2);
	font-weight: 400;
	line-height: 1.1;
}

@media print, screen and (max-width: 1023px) {
	.ff-switchajax-saison {
		flex-wrap: wrap;
		gap: 0;
	}
	.ff-switchajax-saison nav {
		flex-wrap: wrap;
		margin-right: calc(var(--gut)*.5);
	}
	.ff-switchajax-saison__filter-toggle {
		padding-left: 40px;
	}
	#block-ff-rouen-headeraccessibilite {
		position: fixed !important;
	}
	#block-ff-rouen-menuprimaire-2 ul.menu,
	.menu-secondaire ul.menu,
	.views-exposed-form ul:not(.result-list,.contextual-links),
	.section--submenu-scroll,
	#block-ff-rouen-headeraccessibilite ul {
		flex-wrap: nowrap;
		overflow-x: auto;
		-webkit-overflow-scrolling: touch;
		scrollbar-width: none;
	}
	#block-ff-rouen-menuprimaire-2 ul.menu::-webkit-scrollbar,
	.menu-secondaire ul.menu::-webkit-scrollbar,
	.views-exposed-form ul:not(.result-list,.contextual-links)::-webkit-scrollbar,
	.section--submenu-scroll::-webkit-scrollbar,
	#block-ff-rouen-headeraccessibilite ul::-webkit-scrollbar {
		display: none;
	}
	.menu-secondaire ul.menu li,
	#block-ff-rouen-menuprimaire-2 ul.menu li,
	.views-exposed-form ul:not(.result-list,.contextual-links) li,
	.section--submenu .section-menu ul li,
	#block-ff-rouen-headeraccessibilite a {
	  flex: 0 0 auto;
	  white-space: nowrap;
	  list-style: none;
	}
	#block-ff-rouen-menuprimaire-2 ul.menu:before,
	.menu-secondaire ul.menu:before,
	.views-exposed-form ul:not(.result-list,.contextual-links):before,
	#block-ff-rouen-headeraccessibilite ul:before {
		content: "";
		position: sticky;
		width: 32px;
		flex-shrink: 0;
		left: calc(var(--gut)*-1);
		margin-left: calc(var(--gut)*-1);
		margin-right: calc(var(--gut)*-1);
		pointer-events: none;
		z-index: 30;
		background: linear-gradient(to right, rgba(var(--coul2rgb),1), rgba(var(--coul2rgb),0));
	}
	.views-exposed-form ul:not(.result-list,.contextual-links):before {
		background: linear-gradient(to right, rgba(var(--noirrgb),1), rgba(var(--noirrgb),0));
	}
	#block-ff-rouen-headeraccessibilite ul:before {
		background: linear-gradient(to right, rgba(var(--blancrgb),1), rgba(var(--blancrgb),0));
	}

	#block-ff-rouen-menuprimaire-2 ul.menu:after,
	.menu-secondaire ul.menu:after,
	.views-exposed-form ul:not(.result-list,.contextual-links):after,
	#block-ff-rouen-headeraccessibilite ul:after {
		content: "";
		position: sticky;
		width: 32px;
		flex-shrink: 0;
		right: calc(var(--gut)*-1);
		margin-left: calc(var(--gut)*-1);
		margin-right: calc(var(--gut)*-1);
		pointer-events: none;
		z-index: 20;
		background: linear-gradient(to left, rgba(var(--coul2rgb),1), rgba(var(--coul2rgb),0));
	}
	.views-exposed-form ul:not(.result-list,.contextual-links):after {
		background: linear-gradient(to left, rgba(var(--noirrgb),1), rgba(var(--noirrgb),0));
	}
	#block-ff-rouen-headeraccessibilite ul:after {
		background: linear-gradient(to left, rgba(var(--blancrgb),1), rgba(var(--blancrgb),0));
	}
}
/* FIN SOUS MENU PRIMAIRE */

/* RECHERCHE */
#block-inputsearch,
#block-ff-rouen-headeraccessibilite {
	z-index: 15;
	padding: 0;
	display: flex;
	border: none;
	border-bottom: var(--border);
}
#block-ff-rouen-headeraccessibilite {
	background-color: var(--blanc);
	gap: 0;
}
#block-ff-rouen-headeraccessibilite .more {
	background-color: var(--coul1);
	margin-left: auto;
}
#block-inputsearch.is-collapsible,
#block-ff-rouen-headeraccessibilite.is-collapsible  {
	transform: translateY(-100%);
}
#block-inputsearch.is-collapsible.is-open,
#block-ff-rouen-headeraccessibilite.is-collapsible.is-open {
	transform: translateY(0);
}
#block-inputsearch [id*="edit-keyword"] {
	padding: calc(var(--gut)*.5) calc(var(--gut)*3) calc(var(--gut)*.5) var(--gut);
	border: none !important;
	outline: none !important;
	box-shadow: none !important;
	margin: 0;
	font-family: var(--font);
	font-size: var(--font-m);
	line-height: 1.3;
	font-weight: 600 !important;
	background-color: var(--gris);
}
#block-inputsearch .btn {
	position: absolute;
	z-index: 1;
	right: var(--gut);
	top: 50%;
	transform: translateY(-50%);
	background: none;
}
#block-inputsearch .btn:hover {
	background-color: var(--blanc);
}
#block-inputsearch .form-fac-result {
	display: flex;
	flex: 1;
}
#block-inputsearch .form-type-textfield {
	flex: 1;
}
.fac-result {
	top: calc(100%);
	left: var(--gin-toolbar-x-offset, 0);
	right: 0;
	width: auto !important;
	box-shadow: 10px 10px 20px rgba(0,0,0,0.3);
}
header #block-inputsearch .fac-result,
header .fac-result.hidden {
	border: none;
}s
header #block-inputsearch.is-open .fac-result {
	width: 100%;
	display: block;
	border-radius: 0;
}
.fac-result mark {
	background-color: transparent;
	color: inherit;
}
header .fac-result ul {
	border-top: var(--border);
	border-radius: 0 !important;
	height: auto;
	max-height: 70vh;
	overflow: auto;
}
header .fac-result ul.result-list li {
	border: none;
	border-bottom: var(--border);
	padding: calc(var(--gut)*.5) var(--gut);
	margin: 0;
	background-color: var(--blanc);
	transition: all .3s;
}
header .fac-result ul li.see-all-link {
	background-color: var(--coul1) !important;
	font-size: var(--font-m);
	border: none;
	text-transform: uppercase;
}
header .fac-result ul li.see-all-link em {
	font-style: normal;
}
header .fac-result ul li.see-all-link:hover {
	background-color: var(--coul2) !important;
}
header .fac-result ul li.see-all-link:hover a {
	color: var(--blanc) !important;
}
header .fac-result ul.result-list li:hover,
header .fac-result ul.result-list li.selected {
	background-color: var(--gris);
}
.view-id-recherche .views-row .comp--miniteaser {
	border-bottom: var(--border);
	padding: var(--gut);
}
.view-id-recherche .views-row .comp--miniteaser:hover {
	background-color: var(--gris);
}
.field--search-api-excerpt strong {
	position: relative;
	font-weight: normal;
}
/*.field--search-api-excerpt strong:after {
	content: "";
	position: absolute;
	z-index: -1;
	padding: 10px;
	background-color: #FF0;
	top: -2px;
	bottom: -4px;
	left: -5px;
	right: -5px;
	border-radius: 5px;
}*/
@media print, screen and (max-width: 1023px) {

}
@media (prefers-reduced-motion: reduce) {
	#block-inputsearch.is-collapsible,
	#block-inputsearch.is-collapsible.is-open {
		transition: none;
	}
	#block-ff-rouen-headeraccessibilite.is-collapsible,
	#block-ff-rouen-headeraccessibilite.is-collapsible.is-open {
		transition: none;
	}
}
/* FIN RECHERCHE */

/* FOOTER */
footer {
/*	margin-top: var(--gut);*/
margin-top: -1px;
}
footer .comp--separateur {
	margin: 0;
}
footer .section--cols-3 {
	grid-template-columns: auto 1fr auto;
}
footer .section--cols-3 .section__col--2 .comp {
	margin: 0;
}
footer .section--cols-3 .section__col--3 {
	align-items: flex-end;
}
footer .section--cols-3 .section__col--1 .comp--medias img,
footer .section--cols-3 .section__col--3 .comp--medias img {
	height: 180px;
	width: auto;
	max-width: 100%;
}
footer .section--cols-3 .section__col--2 .comp--presentation-liste {
	justify-content: center;
}
@media print, screen and (max-width: 1400px) {
	footer .section--cols-3 {
		grid-template-columns: 1fr 1fr;
	}
	footer .section--cols-3 .section__col--1 {
		grid-column: 1 / 2;
		grid-row: 1;
	}
	footer .section--cols-3 .section__col--2 {
		grid-column: 1 / 3;
	}
	footer .section--cols-3 .section__col--3 {
		grid-column: 2 / 3;
		grid-row: 1;
		align-items: flex-end;
	}
	footer .section--cols-3 .section__col--2 .comp--presentation-liste {
		justify-content: flex-start;
	}
}
@media print, screen and (max-width: 1023px) {
	footer {
		text-align: center;
	}
	footer .comp--presentation-liste {
		justify-content: center;
	}
	footer .section--cols-3 {
		grid-template-columns: 1fr;
	}
	footer .section--cols-3 .section__col--1,
	footer .section--cols-3 .section__col--2,
	footer .section--cols-3 .section__col--3 {
		grid-column: inherit;
		grid-row: inherit;
		align-items: center;
	}
	
	footer .section--cols-3 .section__col--1 .comp--medias img,
	footer .section--cols-3 .section__col--3 .comp--medias img {
		height: 100px;
	}
	footer .section .section__col .comp--fond {
		margin-bottom: calc(var(--gut)*-1);
	}
	
}
@media print, screen and (max-width: 767px) {
	footer .section--cols-3 .section__col--2 .comp--presentation-liste {
		flex-direction: column;
	}
}
/* FIN FOOTER */

/* MEDIAS */
.comp--medias {
	position: relative;
}
.comp--medias .grp-legende {
	position: absolute !important;
	z-index: 1;
	bottom: 0;
	left: 0;
	right: 0;
	display: flex;
	justify-content: space-between;
	align-items: flex-end;
	flex-wrap: wrap;
	gap: calc(var(--gut)*.25);
	padding: calc(var(--gut)*.5);
}
.comp--medias figcaption,
.comp--medias .media__copyright {
	padding: 5px 10px;
	border-radius: 20px;
	color: var(--noir);
}
.comp--medias figcaption {
	background-color: rgba(255,255,255,0.7);
	font-size: var(--font-s);
}
.comp--medias .media__copyright {
	background-color: rgba(255,255,255,0.5);
	font-size: var(--font-xs);
}
.comp--diaporama .comp--medias.adaptif_sans_crop .cq-image-wrapper,
.comp--diaporama .comp--medias.adaptif_sans_crop .cq-image-wrapper picture {
	display: flex;
	justify-content: center;
	align-items: center;
	height: 100%;
}
.comp--diaporama .adaptif_sans_crop img {
	max-height: var(--height_slider);
	width: auto;
	max-width: 100%;
}
.comp--diaporama .adaptif_sans_crop {
	background-color: var(--noir);
	height: 100%;
	align-items: center;
	justify-content: center;
	display: flex;
}
.comp--medias .video.distant {
	position: relative;
	width: 100%;
	padding-bottom: 56.25%; /* ratio 16:9 */
	height: 0;
	overflow: hidden;
}
.comp--medias .video.distant iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	max-height: 70vh;
}
.comp--medias .video {
	width: 100%;
	display: flex;
	justify-content: center;
	align-items: center;
	height: 100% !important;
}
.comp--medias .video video {
	width: 100%;
	max-height: 70vh;
	display: flex;
}
.comp--presentation-default:has(.comp--medias.logo),
.comp--presentation-default:has(.comp--medias.picto) {
	gap: calc(var(--gut)*1);
}
.comp--medias.logo,
.comp--medias.picto {
	display: flex;
	justify-content: center;
	align-items: center;
	margin: 0;
}
.comp--medias.logo img {
	width: 100px !important;
	height: auto;
}
.comp--medias.logo img.pano {
	width: 135px !important;
}
.comp--medias.logo img.vertical {
	height: 120px !important;
	width: auto !important;
}
.comp--medias.logo img.panovertical {
	height: 70px !important;
	width: auto !important;
}
.comp--medias.picto img {
	width: 40px !important;
	height: auto;
}
@media print, screen and (max-width: 1023px) {
	.comp--medias.logo img {
		width: 70px !important;
	}
	.comp--medias.logo img.pano {
		width: 90px !important;
	}
	.comp--medias.logo img.vertical {
		height: 90px !important;
		width: auto !important;
	}
	.comp--medias.picto img {
		width: 25px !important;
		height: auto;
	}
}
/* hack pour le responsive des diaporamas dans les spectacles */
@media print, screen and (max-width: 1023px) {
	.type-spectacle .comp--diaporama-slider-free.splide {
		width: calc(100dvw - var(--sb-width) - calc(var(--gut)*0)) !important;
	}
	.type-spectacle .comp--diaporama-slider-free .comp--medias .field--name-field-media-oembed-video,
	.type-spectacle .comp--diaporama-slider-free .comp--medias .field--name-field-media-oembed-video iframe {
		max-width: calc(100dvw - var(--sb-width) - calc(var(--gut)*0)) !important;
	}
}
/* ORL */
/* FACADE VIDEOS NO COOKIES */
.comp--medias .video.distant .video-facade {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  cursor: pointer;
}
.comp--medias .video.distant .video-facade__thumb {
  width: 100%;
  height: 100%;
  max-height: 70vh;
  object-fit: cover;
  display: block;
}
.comp--medias .video.distant .video-facade__play {
  position: absolute;
  inset: 0;
  margin: auto;
  width: 68px;
  height: 68px;
  padding: 0;
  border: 0;
  border-radius: 50%;
  background: var(--coul1);
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
}
.comp--medias .video.distant .video-facade__play::before {
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 11px 0 11px 18px;
  border-color: transparent transparent transparent var(--coul2);
  margin-left: 4px;
}
/* FIN FACADE VIDEOS NO COOKIES */
/* FIN MEDIAS */


/* NODE SIMPLE */
main > .layout-content > article > .layout {
	padding: calc(var(--gut)*.5) var(--gut);
}
.type-simple {
	display: inherit;
}
.section {
	padding: var(--gut);
	margin: 0;
}
.section:not(.section--submenu) + .section:not(.section--submenu):not(:has(.comp--fond)) {
	padding-top: 0;
}
.section .section,
.section:has(.carte) {
	padding: 0;
}
.texte--noir {
	color: var(--noir);
}
.texte--coul1 {
	color: var(--coul1);
}
.texte--coul2 {
	color: var(--coul2);
}
.texte--gris {
	color: var(--gris);
}

.section .grid-elements {
	padding: 0;
/*	margin-top: var(--gut);*/
}
.section__col .comp--fond + .comp--presentation:has(.grid-elements) {
	margin-top: calc(var(--gut)*2);
}
.section:has(.section__col > .vue-grid-elements),
.comp--accordion--content > .vue-grid-elements > .views-content {
	padding: 0;
}
.section:not(.section--submenu) + .section:has(.vue-grid-elements) .vue-grid-elements > .views-content {
	padding-top: 0 !important;
}
/*.comp--titre:not(.section-scroll-heading) + .comp {
	margin-top: calc(var(--gut)*.5);
	display: flex;
	flex-direction: column;
}*/
/*.page__col .section .comp + .comp {
	margin-top: calc(var(--gut)*.5);
}*/
.section .comp--presentation .comp + .comp {
	margin-top: 0;
}
.section__col {
	display: flex;
	flex-direction: column;
}
.section__col > .comp--titre:nth-child(1),
.section__col .comp > .comp--titre:nth-child(1) {
	margin-top: 0;
}
.section__col > .comp--titre:first-child:last-child,
.section__col .comp > .comp--titre:first-child:last-child {
	margin: 0;
}
.comp:not(.section-scroll-heading) + .comp--titre {
	margin-top: calc(var(--gut)*1);
}
.section__col > .comp--medias + .comp--medias {
	margin-top: calc(var(--gut)*1);
}
.comp--texte ul {
    margin-bottom: calc(var(--gut) * 0.5);
}
.comp--texte ul li {
    padding: 5px 0 5px 15px;
    position: relative;
}
.comp--texte ul li:before {
    content: "";
    position: absolute;
    width: 7px;
    height: 7px;
	border-radius: 10px;
    top: 12px;
    left: 0;
	background-color: var(--coul2);
}
.bouton-normal:hover {
	background-color: var(--coul2);
}
.comp--bouton-simple {
	text-decoration: underline;
}
.comp--texte-petit {
	font-size: var(--font-s);
}
.comp--texte-grand {
	font-size: var(--font-l);
}
.comp--texte-xl {
	font-size: var(--font-xl);
}
.comp--texte-grand strong,
.comp--texte-xl strong {
	font-weight: 600;
}
.section--cols-1 > .section__col:has( > .comp--diaporama-slider-free, > .comp--diaporama-slider-simple) {
	margin: 0 calc(var(--gut)*-1);
}
.section--cols-1:has(.calendrier) {
	padding: 0;
}
.comp--diaporama.splide .splide__arrow {
	border: var(--border);
	background-color: var(--blanc);
	opacity: 1;
	transition: all .3s;
}
.comp--diaporama.splide .splide__arrow:disabled {
	opacity: 0.2;
}
.comp--diaporama.splide .splide__arrow:hover:not(:disabled) {
	background-color: var(--coul1);
}
.comp--diaporama.splide .splide__arrow:after {
	width: 100%;
	height: 100%;
	font-family: var(--font-picto) !important;
	font-size: calc(var(--font-xl)*1.2) !important;
	line-height: 62px !important;
}
.comp--diaporama.splide .splide__arrow--prev:after {
	content: "S" !important;
}
.comp--diaporama.splide .splide__arrow--next:after {
	content: "R" !important;
}
@media print, screen and (max-width: 1024px) {
	.comp--diaporama.splide .splide__arrow:after {
		line-height: 42px !important;
	}
}
.ff-vue-filtre-output-wrapper {
	margin: 0 calc(var(--gut)*-1);
}
.comp--separateur {
	margin: 0;
}
.comp--accordion:not(:only-of-type):not(:last-of-type) {
	border-bottom: var(--border);
	border-color: var(--coul2);
}
.comp--accordion:not(:has(.comp--accordion--content)) {
	display: none;
}
.comp--accordion--titre {
	all: initial;
	position: relative;
	width: 100%;
	cursor: pointer;
	color: var(--coul2);
	font-weight: 600;
	padding-top: calc(var(--gut)*.25);
	padding-bottom: calc(var(--gut)*.25);
	padding-right: 30px;
	font-family: var(--font);
	box-sizing: border-box;
}
.comp--accordion--titre h2 {
	margin: calc(var(--gut)*.5) 0;
}
.comp--accordion--titre:after {
	border-color: var(--coul2);
}
.comp--accordion--content.is-expanded {
	padding-bottom: calc(var(--gut)*.5);
}
.section__col .comp--accordion--titre,
.vue-grid-elements > .comp--accordion .comp--accordion--titre {
	padding-right: 0;
	padding-left: 50px;
}
.vue-grid-elements > .comp--accordion .comp--accordion--titre {
	padding-left: calc(var(--gut) + 50px) !important;
}
.section__col .comp--accordion--titre:after,
.vue-grid-elements > .comp--accordion .comp--accordion--titre:after {
	left: 0;
	border: none;
	transform: translateY(-50%);
	width: 30px;
	height: 30px;
	content: "T";
	font-family: var(--font-picto);
	font-size: var(--font-xl);
	line-height: 40px;
	font-weight: 400;
	color: var(--coul2);
}
.vue-grid-elements > .comp--accordion .comp--accordion--titre:after {
	left: var(--gut) !important;
}
.section__col .comp--accordion--titre[aria-expanded="true"]::after,
.vue-grid-elements > .comp--accordion .comp--accordion--titre[aria-expanded="true"]::after {
	transform: translateY(-50%) rotate(180deg);
}
@media print, screen and (max-width: 1024px) {
	.section__col .comp--accordion--titre {
		padding-left: 30px;
	}
	.vue-grid-elements > .comp--accordion .comp--accordion--titre {
		padding-left: calc(var(--gut) + 30px) !important;
	}
	.section__col .comp--accordion--titre:after,
	.vue-grid-elements > .comp--accordion .comp--accordion--titre:after {
		width: 20px;
		height: 20px;
		line-height: 25px;
	}
}
/* fond */
.section .section__col .comp--fond {
	margin: calc(var(--gut)*-1);
	padding: calc(var(--gut)*1);
	height: calc(100% + calc(var(--gut)*2));
}
.section:has(.section__col .comp--fond) + .section:not(:has(.comp--fond)) {
	margin-top: calc(var(--gut)*1);
} 
.section .section__col:has(.comp--fond + .comp) .comp--fond {
	height: inherit;
	margin-bottom: 0;
}
.section--cols-2:has(.section__col--1 .comp--fond):has(.section__col--2 .comp--fond) {
	gap: 0;
}
.section--cols-3:has(.section__col--1 .comp--fond):has(.section__col--2 .comp--fond):has(.section__col--3 .comp--fond) {
	gap: 0;
}
@media print, screen and (min-width: 1024px) {
	.section--cols-2 .section__col--1 .comp--fond {
		margin-right: 0;
	}
	.section--cols-2 .section__col--2 .comp--fond {
		margin-left: 0;
	}
	.section--cols-3 .section__col--1 .comp--fond {
		margin-right: 0;
	}
	.section--cols-3 .section__col--2 .comp--fond {
		margin-left: 0;
		margin-right: 0;
	}
	.section--cols-3 .section__col--3 .comp--fond {
		margin-left: 0;
	}
	/* padding pour les comp après un comp-fond dans une même colonne */
	.section--cols-2 .section__col--1:has(.comp--fond) > .comp:not(.comp--fond),
	.section--cols-2 .section__col--1:has(.comp--fond) > .groupe:not(.comp--fond) {
		padding-right: calc(var(--gut)*1);
	}
	.section--cols-2 .section__col--2:has(.comp--fond) > .comp:not(.comp--fond),
	.section--cols-2 .section__col--2:has(.comp--fond) > .groupe:not(.comp--fond) {
		padding-left: calc(var(--gut)*1);
	}
	.section--cols-3 .section__col--1:has(.comp--fond) > .comp:not(.comp--fond),
	.section--cols-3 .section__col--1:has(.comp--fond) > .groupe:not(.comp--fond) {
		padding-right: calc(var(--gut)*1);
	}
	.section--cols-3 .section__col--2:has(.comp--fond) > .comp:not(.comp--fond),
	.section--cols-3 .section__col--2:has(.comp--fond) > .groupe:not(.comp--fond) {
		padding-left: calc(var(--gut)*1);
		padding-right: calc(var(--gut)*1);
	}
	.section--cols-3 .section__col--3:has(.comp--fond) > .comp:not(.comp--fond),
	.section--cols-3 .section__col--3:has(.comp--fond) > .groupe:not(.comp--fond) {
		padding-left: calc(var(--gut)*1);
	}
}
@media print, screen and (max-width: 1024px) {
	.section .section__col:not(:first-child) .comp--fond {
		margin-top: var(--gut);
	}
}
.comp--fond {
	position: relative;
	overflow: hidden;
	z-index: 1;
}
.comp--fond .fond {
	position: absolute;
	top: 0;
	bottom: 0;
	right: 0;
	left: 0;
	z-index: -1;
	display: flex;
	align-items: center;
	justify-content: center;
}
.comp--fond .fond img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.section__col:nth-of-type(even) .comp--fond .fond img {
	width: 150%;
	height: 150%;
	object-fit: cover;
}
.media--blanc .fond {
	filter: var(--filter-blanc);
}
.media--gris .fond {
	filter: var(--filter-gris);
}
.media--coul1 .fond {
	filter: var(--filter-coul1);
}
.media--coul2 .fond {
	filter: var(--filter-coul2);
}
.fond--noir {
	background-color: var(--noir);
}
.fond--gris {
	background-color: var(--gris);
}
.fond--gris .comp--contact:not(.production) {
	background-color: var(--blanc);
}
.fond--coul1 {
	background-color: var(--coul1);
}
.fond--coul2 {
	background-color: var(--coul2);
}
.texte--blanc,
.texte--blanc .comp--accordion--titre {
	color: var(--blanc);
}
.section__col .texte--blanc .comp--accordion--titre:after {
	filter: var(--filter-blanc);
}
.texte--blanc .comp--accordion--titre:after {
	border-color: var(--blanc);
}
.texte--blanc .comp--texte ul li:before {
	background-color: var(--blanc);
}
.texte--blanc .comp--bouton {
	border-color: var(--blanc);
	color: var(--blanc);
	background: none !important;
}
.texte--blanc .comp--separateur {
	border-color: var(--blanc);
}
.texte--blanc .comp--medias img.type--svg {
	filter: var(--filter-blanc);
}
.texte--gris,
.texte--gris .comp--accordion--titre {
	color: var(--gris);
}
.section__col .texte--gris .comp--accordion--titre:after {
	filter: var(--filter-gris);
}
.texte--gris .comp--accordion--titre:after {
	border-color: var(--gris);
}
.texte--gris .comp--texte ul li:before {
	background-color: var(--gris);
}
.texte--gris .comp--bouton {
	border-color: var(--gris);
	color: var(--gris);
	background: none !important;
}
.texte--gris .comp--separateur {
	border-color: var(--gris);
}
.texte--gris .comp--medias img.type--svg {
	filter: var(--filter-gris);
}
.texte--coul1,
.texte--coul1 .comp--accordion--titre {
	color: var(--coul1);
}
.section__col .texte--coul1 .comp--accordion--titre:after {
	filter: var(--filter-coul1);
}
.texte--coul1 .comp--accordion--titre:after {
	border-color: var(--coul1);
}
.texte--coul1 .comp--texte ul li:before {
	background-color: var(--coul1);
}
.texte--coul1 .comp--bouton {
	border-color: var(--coul1);
	color: var(--coul1);
	background: none !important;
}
.texte--coul1 .comp--separateur {
	border-color: var(--coul1);
}
.texte--coul1 .comp--medias img.type--svg {
	filter: var(--filter-coul1);
}
.texte--coul2,
.texte--coul2 .comp--accordion--titre {
	color: var(--coul2);
}
.section__col .texte--coul2 .comp--accordion--titre:after {
	filter: var(--filter-coul2);
}
.texte--coul2 .comp--accordion--titre:after {
	border-color: var(--coul2);
}
.texte--coul2 .comp--texte ul li:before {
	background-color: var(--coul2);
}
.texte--coul2 .comp--bouton {
	border-color: var(--coul2);
	color: var(--coul2);
	background: none !important;
}
.texte--coul2 .comp--separateur {
	border-color: var(--coul2);
}
.texte--coul2 .comp--medias img.type--svg {
	filter: var(--filter-coul2);
}
.fond--gris .comp--medias.logo img:not(.type--svg),
.fond--coul1 .comp--medias.logo img:not(.type--svg),
.fond--coul2 .comp--medias.logo img:not(.type--svg),
.fond--gris .comp--medias.picto img:not(.type--svg),
.fond--coul1 .comp--medias.picto img:not(.type--svg),
.fond--coul2 .comp--medias.picto img:not(.type--svg) {
	mix-blend-mode: multiply;
}
.fond--noir .comp--medias.logo img,
.fond--noir .comp--medias.picto img {
	filter: invert(100%);
}
/*.section--cols-1 .section__col--1 .comp--texte,
.section--cols-1 .section__col--1 .comp--titre,
.section--cols-1 .section__col--1 .comp--bouton {
	text-align: center;
	margin-left: auto;
	margin-right: auto;
}*/
/*.section--cols-1 .section__col--1 .view .comp--texte,
.section--cols-1 .section__col--1 .view .comp--titre,
.section--cols-1 .section__col--1 .view .comp--bouton {
	text-align: left;
	margin: inherit;
}*/
.section__col > .view {
	flex: 1;
	width: 100%;
}
.section:has(.vue--liste) {
	padding: 0;
}

@media print, screen and (min-width: 1024px) {
	
}
@media print, screen and (max-width: 1023px) {
	.section__col > .comp--bouton {
		align-self: flex-start;
	}
	/*.section:not(.section--cols-1) > .section__col:has(> .comp--diaporama-slider-free,.comp--diaporama-slider-simple) {
		margin: calc(var(--gut)*-1) calc(var(--gut)*-1) 0 calc(var(--gut)*-1);
	}*/
}
/* FIN NODE SIMPLE */

/* VUE LISTE */
.teaser-liste {
	position: relative;
	display: grid;
	grid-template-columns: 2fr 1fr;
	align-items: center;
	gap: calc(var(--gut)*1);
	border-bottom: var(--border);
	border-color: var(--coul1);
	padding: var(--gut);
	transition: all .3s;
	background-color: var(--noir);
	color: var(--coul1);
	font-stretch: 85%;
	font-weight: 500;
}
.teaser-liste:last-child {
	border-bottom: none;
}
.teaser-liste .content {
	text-align: right;
	align-items: flex-end;
	display: flex;
	flex-direction: column;
	gap: calc(var(--gut)*.5);
}
.teaser-liste h3 {
	font-size: var(--font-xxl);
	line-height: 0.8;
	text-transform: none;
	font-stretch: 75%;
	font-weight: 600;
	text-wrap: balance;
	margin: calc(var(--gut)*.5) 0;
}
.teaser-liste a:has(.comp--titre):hover {
	text-decoration: underline;
	text-underline-offset: 10px;
	text-decoration-thickness: var(--stroke);
}
.teaser-liste .btn {
	border-color: var(--coul1);
}
.teaser-liste .btn:hover {
	background-color: var(--coul2);
}
@media print, screen and (max-width: 1023px) {
	.teaser-liste {
		grid-template-columns: 1fr;
		gap: calc(var(--gut)*.5);
	}
	.teaser-liste .content {
		text-align: left;
		align-items: flex-start;
	}
}
/* FIN VUE LISTE */

/* CONTACT */
.page:not(.type-production) .comp--contact {
	gap: 0;
	background-color: var(--gris);
	margin-bottom: calc(var(--gut)*1);
	grid-template-columns: 1fr 2fr;
	display: grid;
	aspect-ratio: 2 / 1;
	font-size: var(--font-s);
}
.page:not(.type-production) .comp--contact:not(:has(.visuel)) {
	grid-template-columns: 1fr;
	aspect-ratio: inherit;
}
.grid-elements .comp--contact {
	margin-bottom: 0 !important;
	height: 100%;
}
.comp--contact.photo .visuel .cq-image-wrapper,
.comp--contact.photo .visuel .cq-image-wrapper picture,
.comp--contact.photo .visuel .cq-image-wrapper picture img {
	object-fit: cover;
	height: 100%;
	filter: grayscale(1);
}
/*.page:not(.type-production) .comp--contact.photo {
	grid-template-columns: 100px 1fr;
}*/
.comp--contact:not(.production) .content {
	padding: calc(var(--gut)*.5);
}
.comp--contact:not(.production) .titre {
	font-weight: 600;
	color: var(--coul2);
}
.comp--contact .content a {
	text-decoration: underline;
}
.comp--contact:not(.production) .field--name-field-fonction {
	font-weight: 600;
	color: var(--noir);
	margin-bottom: 5px;
}
.comp--contact:not(.production) .field--name-name {
	font-size: var(--font-m);
}
/* production */
.type-production .comp--contact {
	grid-template-columns: 1fr;
	font-size: var(--font-s);
}
.type-production .comp--contact .content {
	display: grid;
	grid-template-columns: 3fr 2fr 1fr;
	gap: calc(var(--gut)*.5);
	justify-content: space-between;
	padding: calc(var(--gut)*.25) 0;
	border-bottom: 1px solid var(--gris);
}
.type-production .comp--contact .field--name-field-courriel,
.type-production .comp--contact .field--name-field-telephone {
	font-size: var(--font-s);
}
.type-production .comp--contact .content > div:last-child {
	justify-self: end;
}
.type-production .comp--contact:last-child .content {
	border: none;
}
.type-production .comp--contact .titre {
	font-weight: 600;
}
.type-production .comp--contact .field--name-field-fonction {
	font-weight: 600;
}
@media print, screen and (max-width: 767px) {
	.type-production .comp--contact .content {
		grid-template-columns: 1fr;
		gap: 0;
	}
	.page:not(.type-production) .comp--contact {
		aspect-ratio: inherit;
	}
	.type-production .comp--contact .content > div:last-child {
		justify-self: start;
	}
}
/* FIN CONTACT */

/* PRESSE */
.comp--presse .grp-infos {
	display: grid;
	grid-template-columns: 1fr 6fr 5fr;
	align-items: flex-end;
	gap: calc(var(--gut)*.5);
	padding: calc(var(--gut)*.25) 0;
	border-bottom: 1px solid var(--gris);
}
.comp--presse:last-child .grp-infos {
	border: none;
}
.comp--presse .grp-infos .comp--bouton {
	margin: 0 !important;
	font-size: var(--font-s);
}
.comp--presse .grp-infos .grp-liens {
	margin-left: auto;
	display: flex;
	flex-wrap: wrap;
	white-space: nowrap;
	justify-content: flex-end;
	gap: calc(var(--gut)*.5);
}
.comp--presse .field--name-field-date-parution {
	font-weight: 600;
	font-size: var(--font-s);
	text-transform: lowercase;
}
.comp--presse .field--name-field-source {
	font-weight: 600;
	color: var(--coul2);
}
.comp--presse.verbatim {
	padding: calc(var(--gut)*1) 0;
	border-top: 1px solid var(--coul2);
	margin-bottom: -1px;
}
.comp--presse.verbatim:last-child {
	border-bottom: 1px solid var(--coul2);
}
.comp--presse.verbatim .grp-infos {
	padding: 0;
	border: none;
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 10px;
	flex-wrap: wrap;
}
.comp--presse.verbatim .field--name-field-date-parution {
	font-size: var(--font-m);
}
.comp--presse.verbatim .grp-infos .grp-liens {
	margin-left: inherit;
}
.comp--presse .field--name-field-texte {
	position: relative;
	font-family: var(--font-vivant);
	font-size: var(--font-l);
	text-align: center;
	font-style: italic;
	padding: 0 50px;
	text-wrap: balance;
	margin-bottom: var(--gut);
}
.comp--presse .field--name-field-texte:before,
.comp--presse .field--name-field-texte:after {
	content: "";
	position: absolute;
	width: 40px;
	height: 40px;
	top: 50%;
	transform: translateY(-50%);
	background-position: center;
	background-size: 100%;
	background-repeat: no-repeat;
	background-image: url(../images/quotes.svg);
	filter: var(--filter-coul2);
}
.comp--presse .field--name-field-texte:before {
	left: 0;
	transform: translateY(-50%) rotate(180deg) ;
}
.comp--presse .field--name-field-texte:after {
	right: 0;
}
@media print, screen and (max-width: 767px) {
	.comp--presse .grp-infos {
		grid-template-columns: 1fr;
		gap: 0;
	}
}
/* FIN PRESSE */

/* GRID ELEMENTS */
.grid-elements,
.vue-grid-elements,
.grid-wrapper,
.vue-list-elements,
.page {
	container-type: inline-size;
}
.vue-grid-elements > .views-content,
.vue-grid-elements > .vue-principale > .views-content,
.vue-grid-elements .comp--accordion--content .views-content,
.vue-grid-elements .views-group > .views-content,
.vue-grid-elements > .comp--accordion .views-content,
.grid-elements {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	row-gap: calc(var(--gut)*1);
	column-gap: calc(var(--gut)*1);
	padding: var(--gut);
}
.vue-grid-elements > .comp--accordion:first-child {
	border-top: var(--border);
	border-color: var(--coul2);
}
.vue-grid-elements > .comp--accordion .comp--accordion--titre {
	padding: var(--gut);
	background-color: var(--coul1);
}
.vue-grid-elements > .comp--accordion .comp--accordion--titre:after {
	right: var(--gut);
}
.vue-grid-elements > .comp--accordion .comp--accordion--content.is-expanded {
	padding: 0 !important;
}
.vue-grid-elements.projets > .views-content,
.vue-grid-elements > .views-content:has(.comp--miniteaser),
.grid-elements:has(.comp--miniteaser) {
	grid-template-columns: repeat(3, 1fr) !important;
}
.grid-elements .comp--miniteaser:nth-last-child(-n+3 of .comp--miniteaser) {
	border-bottom: none;
	margin-bottom: 0;
}
.grid-elements:has(.comp--fiche),
.grid-elements:has(.comp--teaser.projet),
.vue-grid-elements .comp--accordion--content .views-content:has(.comp--teaser.projet),
.vue-grid-elements > .vue-principale > .views-content:has(.comp--teaser.projet) {
	grid-template-columns: repeat(4, 1fr) !important;
}
.grid-elements:has(.comp--contact) {
	grid-template-columns: repeat(4, 1fr) !important;
}
#fullnodevivant .grid-elements:has(.comp--miniteaser) {
	grid-template-columns: repeat(2, 1fr) !important;
}
.grid-elements:has(.fichier_tableau) {
	grid-template-columns: repeat(6, 1fr) !important;
}
.vue-list-elements {
	margin-top: var(--gut);
}
.vue-list-elements .views-row {
	display: grid;
	grid-template-columns: 1fr auto auto;
	column-gap: calc(var(--gut)*1);
	border-bottom: var(--border);
	margin-bottom: var(--gut);
	padding-bottom: var(--gut);
	align-items: center;
}

.comp--presentation-liste > .comp--teaser:not(.comp--medias),
.comp--presentation-liste > .comp--miniteaser {
	column-gap: calc(var(--gut)*1);
	border-bottom: var(--border);
	margin-bottom: var(--gut);
	padding-bottom: var(--gut);
}
div:has(h3 + .grid-elements) h3 {
	padding: 0 var(--gut);
	margin-bottom: 0;
}
.vue-grid-elements .comp--teaser-evenement.temps_fort {
	grid-column: 1 / -1;
	max-width: inherit;
}
@container (min-width: 1920px) {
	/* ≥3 éléments → grille de 3. Sinon reste à 2. */
	.vue-grid-elements > .views-content:has(> :nth-child(3)),
	.vue-grid-elements .views-group > .views-content:has(> :nth-child(3)),
	.vue-grid-elements > .comp--accordion .views-content:has(> :nth-child(3)),
	.grid-elements:has(> :nth-child(3)) {
		grid-template-columns: repeat(3, 1fr) !important;
	}
	.grid-elements:has(.fichier_tableau) {
		grid-template-columns: repeat(8, 1fr) !important;
	}
}
@container (max-width: 1400px) {
	.vue-grid-elements .views-content,
	.grid-elements {
		grid-template-columns: repeat(2, 1fr) !important;
	}
	.vue-grid-elements.projets > .views-content,
	.vue-grid-elements .views-content:has(.comp--miniteaser),
	.grid-elements:has(.comp--miniteaser) {
		grid-template-columns: repeat(2, 1fr) !important;
	}
	.grid-elements .comp--miniteaser:nth-last-child(-n+2 of .comp--miniteaser) {
		border-bottom: none;
		margin-bottom: 0;
	}
	.grid-elements:has(.comp--fiche),
	.grid-elements:has(.comp--teaser.projet),
	.vue-grid-elements .comp--accordion--content .views-content:has(.comp--teaser.projet),
	.vue-grid-elements > .vue-principale > .views-content:has(.comp--teaser.projet) {
		grid-template-columns: repeat(3, 1fr) !important;
	}
	.grid-elements:has(.comp--contact) {
		grid-template-columns: repeat(2, 1fr) !important;
	}
	#fullnodevivant .grid-elements:has(.comp--miniteaser) {
		grid-template-columns: repeat(1, 1fr) !important;
	}
	.grid-elements:has(.fichier_tableau) {
		grid-template-columns: repeat(4, 1fr) !important;
	}
}
@container (max-width: 1023px) {
	.vue-grid-elements .views-content,
	.grid-elements {
		grid-template-columns: repeat(1, 1fr) !important;
	}
	.vue-grid-elements.projets > .views-content,
	.vue-grid-elements .views-content:has(.comp--miniteaser),
	.grid-elements:has(.comp--miniteaser) {
		grid-template-columns: repeat(1, 1fr) !important;
	}
	.grid-elements .comp--miniteaser:nth-last-child(-n+1 of .comp--miniteaser) {
		border-bottom: none;
		margin-bottom: 0;
	}
	.grid-elements:has(.comp--fiche),
	.grid-elements:has(.comp--teaser.projet),
	.vue-grid-elements .comp--accordion--content .views-content:has(.comp--teaser.projet),
	.vue-grid-elements > .vue-principale > .views-content:has(.comp--teaser.projet) {
		grid-template-columns: repeat(2, 1fr) !important;
	}
	.grid-elements:has(.fichier_tableau) {
		grid-template-columns: repeat(2, 1fr) !important;
	}
	.vue-list-elements .views-row {
		grid-template-columns: 1fr;
		row-gap: calc(var(--gut)*1);
		border-bottom: var(--border);
		justify-items: start;
	}
}
@container (max-width: 600px) {
	.grid-elements:has(.comp--fiche),
	.grid-elements:has(.comp--teaser.projet),
	.vue-grid-elements .comp--accordion--content .views-content:has(.comp--teaser.projet),
	.vue-grid-elements > .vue-principale > .views-content:has(.comp--teaser.projet),
	.grid-elements:has(.fichier_tableau)	{
		grid-template-columns: repeat(1, 1fr) !important;
	}
	.vue-grid-elements .views-content,
	.grid-elements {
		grid-template-columns: repeat(1, 1fr) !important;
	}
}
/* GRID ELEMENTS */

/* TEASER PROJET */
.comp--teaser .teaser_titre,
.comp--teaser .comp--texte-grand {
	text-wrap: balance;
}
.comp--teaser.projet {
	position: relative;
	transition: all .3s;
	line-height: 1.1;
	display: inherit;
	aspect-ratio: 1 / 1;
	display: flex;
	flex-direction: column;
}
.comp--teaser.projet .couverture--superposition-wrapper {
	height: 100%;
}
.comp--teaser.projet .visuel {
	filter: var(--filter-coul1);
}
.comp--teaser.projet .visuel {
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
}
.comp--teaser.projet .visuel .field,
.comp--teaser.projet .visuel .field img {
	object-fit: cover;
	height: 100%;
	width: 100%;
}
.comp--teaser.projet .titre {
	position: relative;
	padding: var(--gut);
	display: flex;
	flex-direction: column;
}
.comp--teaser.projet .content {
	margin-top: auto;
	position: relative;
	padding: var(--gut);
	display: flex;
	flex-direction: column;
	font-weight: 600;
	color: var(--coul2);
	transition: all .3s;
}
.comp--teaser.projet .teaser_titre {
	font-size: var(--font-xl);
	font-weight: 600;
	color: var(--coul2);
	transition: all .3s;
}
.comp--teaser.projet .comp--texte-grand {
	font-size: var(--font-l);
	font-weight: 400;
}
.comp--teaser.projet:hover .teaser_titre,
.comp--teaser.projet:hover .content {
	color: var(--blanc);
}
.comp--teaser.projet:hover {
	background-color: var(--noir);
}
.comp--teaser.projet:hover .visuel {
	filter: var(--filter-coul2);
}
/* FIN TEASER PROJET */


/* TEASER ARTISTE */
.comp--teaser.compagnie {
	position: relative;
	display: grid;
	grid-template-columns: 1fr 2fr;
	transition: all .3s;
	line-height: 1.1;
}
.comp--teaser.compagnie .visuel {
}
.comp--teaser.compagnie .couverture--mask,
.comp--teaser.compagnie .cq-image-wrapper,
.comp--teaser.compagnie .cq-image-wrapper picture,
.comp--teaser.compagnie .cq-image-wrapper img {
	height: 100%;
	width: auto;
}
.comp--teaser.compagnie .cq-image-wrapper img {
	object-fit: cover;
	height: 100%;
	width: 100%;
}
.comp--teaser.compagnie .titre {
	position: relative;
	display: flex;
	flex-direction: column;
}
.comp--teaser.compagnie .teaser_titre {
	font-size: var(--font-xl);
	font-weight: 600;
	color: var(--coul2);
}
.comp--teaser.compagnie:hover .teaser_titre {
	color: var(--noir);
}
.comp--teaser.compagnie .field--name-field-artistes {
	font-weight: 600;
	font-size: var(--font-l);
	margin-bottom: 10px;
}
/* FIN TEASER ARTISTE */


/* TEASER SANS PAGE */
.comp--teaser.sanspage {
	position: relative;
	display: grid;
	grid-template-rows: auto 1fr;
	grid-template-columns: 1fr 1fr;
	gap: var(--gut);
	border-top: var(--border);
	border-bottom: var(--border);
	border-color: var(--coul2);
	transition: all .3s;
	padding: var(--gut) 0;
	min-height: var(--height_img_teaser);
	height: 100%;
}
.comp--teaser.sanspage .top {
	margin-top: calc(var(--gut)*-1);
	grid-column: 1 / -1;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: center;
	gap: 5px;
	background-color: var(--gris);
	padding: calc(var(--gut)*.5) calc(var(--gut)*1);
	font-weight: 600;
}
.comp--teaser.sanspage .titre {
	display: flex;
	flex-direction: column;
	gap: 5px;
	align-items: flex-start;
}
.comp--teaser.sanspage .teaser_titre {
	font-size: var(--font-xl);
	font-weight: 600;
	line-height: 1;
	color: var(--coul2);
}
.comp--teaser.sanspage .titre .comp--texte-grand {
	font-weight: 600;
	margin-bottom: calc(var(--gut)*.25);
}
.comp--teaser.sanspage .content a {
	margin-top: calc(var(--gut)*.25);
}
.comp--teaser.sanspage .field--name-field-tarifs-long {
	margin-top: calc(var(--gut)*.25);
	font-weight: 600;
}
/* FIN TEASER SANS PAGE */


/* TEASER EVEN */
.views-content:has(.comp--teaser-evenement),
.section__col:has(.comp--teaser-evenement),
.page__bottom:has(.comp--teaser-evenement),
.comp--presentation:has(.comp--teaser-evenement),
.views-content:has(.comp--teaser),
.section__col:has(.comp--teaser),
.page__bottom:has(.comp--teaser) {
	container-type: inline-size;
}
.comp--teaser-evenement {
	position: relative;
	display: grid;
	grid-template-columns: 2fr 1fr;
	transition: all .3s;
	background-color: var(--gris);
	line-height: 1.1;
/*	aspect-ratio: var(--teaser-ratio);*/
}
.comp--teaser-evenement .teaser_titre,
.comp--teaser-evenement .cq-image-wrapper {
	transition: all .3s;
}
a.comp--teaser-evenement.spectacle:hover .teaser_titre {
	color: var(--blanc);
}
a.comp--teaser-evenement.rdv:hover {
	background-color: var(--gris);
}
.comp--teaser-evenement.rdv .badge,
.comp--teaser.rdv .badge {
	background-color: var(--gris);
}
a.comp--teaser-evenement.rdv:hover .badge {
	background-color: var(--blanc);
}
.comp--teaser-evenement.rdv .field--name-field-spect-vers-temps-fort {
	background-color: var(--coul1);
	margin-bottom: calc(var(--gut)*.25);
}
.type-temps_fort .comp--teaser-evenement.rdv .field--name-field-spect-vers-temps-fort {
	display: none;
}
a.comp--teaser-evenement.production:hover .teaser_titre {
	color: var(--noir);
}
a.comp--teaser-evenement:hover .cq-image-wrapper {
	filter: brightness(0.7) saturate(0.6);
}
a.comp--teaser-evenement.production {
	background-color: var(--coul1);
	grid-template-columns: 3fr 2fr;
}
div.comp--teaser-evenement.production {
	background-color: var(--gris);
}
.comp--teaser-evenement.production .field--name-field-picto-de-reference {
	width: 20%;
	filter: var(--filter-coul2);
}
a.comp--teaser-evenement:hover .artistes .comp {
	color: var(--coul2);
}
.comp--teaser-evenement.rdv {
	grid-template-columns: 1fr 2fr;
	background: none;
	border-top: var(--border);
	border-bottom: var(--border);
	border-color: var(--coul2);
}
/*.comp--teaser-evenement.sans_couv {
	grid-template-columns: 1fr;
}*/
.comp--teaser-evenement .visuel {
	position: relative;
	transition: all .3s;
}
.comp--teaser-evenement .visuel,
.comp--teaser-evenement .visuel .comp,
.comp--teaser-evenement .visuel .cq-image-wrapper,
.comp--teaser-evenement .visuel .cq-image-wrapper picture,
.comp--teaser-evenement .visuel .cq-image-wrapper picture img {
	object-fit: cover;
	height: 100%;
	min-height: var(--height_img_teaser);
	overflow: hidden;
}
.comp--teaser-evenement.manuel figcaption,
.comp--teaser-evenement.manuel .media__copyright {
	display: none;
}
.vue-grid-elements.view-saison.view-display-id-attachment_1 .comp--teaser-evenement:not(:hover) .visuel {
	filter:  grayscale(1);
}
.comp--teaser-evenement .visuel .teaser_titre {
	position: absolute;
	top: 50%;
	left: 50%;
	width: 100%;
	padding: var(--gut);
	transform: translate(-50%,-50%);
	font-size: clamp(var(--font-xxl), 1.8rem + 2.8vw, 5vw);
	font-family: var(--font-titre);
	line-height: 1;
	color: var(--coul1);
	text-shadow: 0 0 10px var(--noir);
	text-align: center;
	font-weight: 200;
	text-wrap: balance;
}
.comp--teaser-evenement .visuel .teaser_titre.long {
	font-size: clamp(var(--font-xxl), 1.8rem + 2.8vw, 3.5vw);
}
@media print, screen and (min-width: 1920px) {
	.comp--teaser-evenement .visuel .teaser_titre.long {
		font-size: clamp(var(--font-xxl), 1.8rem + 2.8vw, 3.0vw);
	}
}
.comp--teaser-evenement .visuel .badge {
	position: absolute;
	top: calc(var(--gut)*.5);
	left: calc(var(--gut)*.5);
	background-color: var(--blanc);
}
.type-temps_fort .comp--teaser-evenement .visuel .badge {
	display: none;
}
.comp--teaser-evenement.rdv .teaser_titre,
.comp--teaser.rdv .teaser_titre {
	font-size: var(--font-xl);
	font-weight: 400;
	line-height: 1;
	color: var(--coul2);
	margin-bottom: calc(var(--gut)*.25);
}
.comp--teaser-evenement.production .teaser_titre {
	font-family: var(--font-titre);
	color: var(--coul2);
	font-size: var(--font-xl);
}
.comp--teaser-evenement .content {
	display: flex;
	flex-direction: column;
	padding: var(--gut);
	justify-content: space-between;
	position: relative;
}
.comp--teaser-evenement.sans_couv {	
	height: var(--height_img_teaser);
}
.comp--teaser-evenement.production .badge {
	background-color: var(--blanc);
	margin-bottom: calc(var(--gut)*.25);
}
/*.comp--teaser-evenement.sans_couv .content {
	padding-left: 0;
	padding-right: 0;
}*/
/*.comp--teaser-evenement.sans_couv .content .gauche {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: var(--gut);
}*/
.comp--teaser-evenement .gauche {
	display: flex;
	flex-direction: column;
	gap: 5px;
	margin-bottom: calc(var(--gut)*.5);
}
.comp--teaser-evenement .droite,
.comp--teaser .grp-pictos,
.comp--teaser-evenement .grp-pictos {
	display: flex;
	justify-content: flex-start;
	align-items: flex-end;
	flex-wrap: wrap;
	gap: 10px;
	margin-top: auto;
}
.comp--teaser-evenement .droite {
	flex-direction: column;
}
.comp--teaser.rdv.sanspage .grp-pictos {
	margin-top: 0;
}
.comp--teaser.rdv.sanspage .field--name-field-mentions-creacoprod {
	margin-top: auto;
}
.comp--teaser-evenement .view-node-liste-accessibilite .views-content,
.comp--teaser-evenement .field--name-field-mentions-creacoprod,
.comp--teaser .grp-pictos .field--name-field-mentions-creacoprod,
.comp--teaser-evenement .grp-pictos .field--name-field-mentions-creacoprod {
	display: flex;
	gap: 10px;
	align-content: center;
}
.comp--teaser-evenement .droite img {
	height: 25px;
	width: auto;
	display: flex;
}
.comp--teaser-evenement .field--name-field-mentions-creacoprod img,
.comp--teaser .field--name-field-mentions-creacoprod img {
	height: 40px;
	width: auto;
	filter: var(--filter-coul2);
}
.comp--teaser-evenement.rdv .field--name-field-mentions-creacoprod {
	margin-left: auto;
}
.comp--teaser-evenement.rdv .field--name-field-mentions-creacoprod img,
.comp--teaser.rdv.sanspage .field--name-field-mentions-creacoprod img {
	height: 80px;
}
.comp--teaser-evenement .gauche .comp--texte-grand {
	font-weight: 600;
	margin-bottom: calc(var(--gut)*.25);
	color: var(--noir);
	text-wrap: balance;
}
.comp--teaser-evenement.rdv .comp--texte,
.comp--teaser.rdv .comp--texte {
	font-weight: 600;
	margin-top: calc(var(--gut)*-.25);
	margin-bottom: calc(var(--gut)*.25);
	color: var(--noir);
}
.comp--teaser-evenement .gauche .field--name-field-compagnie {
	font-weight: 400;
	margin-top: calc(var(--gut)*-.25);
	margin-bottom: calc(var(--gut)*.25);
	color: var(--noir);
}
.comp--teaser-evenement .gauche .date {
	font-weight: 600;
	margin-bottom: calc(var(--gut)*.25);
}
@container (min-width: 1024px) {
	.comp--teaser-evenement {
		max-width: 50vw;
	}
	.comp--teaser-evenement.rdv .teaser_titre,
	.comp--teaser.rdv .teaser_titre {
		font-size: calc(var(--font-xl)*.8);
	}
}
@container (max-width: 1024px) {
	.comp--teaser-evenement {
		grid-template-columns: 1fr;
		aspect-ratio: none;
	}
	.comp--teaser-evenement.rdv,
	.comp--teaser.sanspage,
	.comp--teaser.compagnie {
		grid-template-columns: 1fr;
	}
	.comp--teaser-evenement.rdv .content {
		padding: var(--gut) 0;
	}
	.comp--teaser-evenement.production .field--name-field-picto-de-reference {
		width: 20%;
	}
	.comp--teaser-evenement.rdv .field--name-field-mentions-creacoprod img,
	.comp--teaser.rdv.sanspage .field--name-field-mentions-creacoprod img {
		height: 40px;
	}
	.comp--teaser-evenement .visuel .teaser_titre {
		font-size: clamp(calc(var(--font-xxl)*1.8), 1.8rem + 2.8vw, 3.5vw);
	}
	.comp--teaser-evenement .visuel .teaser_titre.long {
		font-size: clamp(calc(var(--font-xxl)*1.5), 1.8rem + 2.8vw, 5vw);
	}
	.comp--teaser-evenement.production .teaser_titre {
		font-size: var(--font-xxl);
	}
}
/* TEASER EVEN */

/* TEASER TEMPS FORT */
.comp--teaser-evenement.temps_fort {
	grid-template-columns: 1fr;
	color: var(--blanc);
	background-color: var(--coul2);
	height: var(--height_tempsfort);
	margin: 0 calc(var(--gut)*-1);
}
.comp--teaser-evenement.temps_fort:hover {
	background-color: var(--noir);
}
.comp--teaser-evenement.temps_fort .visuel {
	transition: all 0s;
}
.comp--teaser-evenement.temps_fort:hover .visuel {
	filter: var(--filter-coul2);
}
.comp--teaser-evenement.temps_fort .badge {
	background-color: var(--blanc);
	color: var(--coul2);
}
.comp--teaser-evenement.temps_fort .gauche .comp--texte-grand {
	color: var(--blanc);
	text-wrap: balance;
	margin: 0;
}
.comp--teaser-evenement.temps_fort .visuel .field,
.comp--teaser-evenement.temps_fort .field img {
	object-fit: cover;
	height: 100%;
	width: 100%;
}
.comp--teaser-evenement.temps_fort .content {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	left: 0;
	right: 0;
}
.comp--teaser-evenement.temps_fort .content .gauche {
	flex: 1;
	display: grid;
	grid-template-columns: 1fr 3fr 1fr;
	align-items: center;
	margin: 0;
	gap: var(--gut);
}
.comp--teaser-evenement.temps_fort .content .gauche .grp-gauche {
	justify-self: start;
}
.comp--teaser-evenement.temps_fort .content .gauche .grp-centre {
	text-align: center;
	justify-self: center;
}
.comp--teaser-evenement.temps_fort .content .gauche .grp-centre .teaser_titre {
	font-size: var(--font-xxl);
	line-height: 1;
	transform: rotate(-5deg);
	font-family: var(--font-titre);
	font-weight: 500;
	color: var(--blanc);
	text-wrap: balance;
}
.comp--teaser-evenement.temps_fort:hover .content .gauche .grp-centre .teaser_titre {
	color: var(--coul1);
}
.comp--teaser-evenement.temps_fort .content .gauche .grp-centre .filtres {
	justify-content: center;
	margin-top: var(--gut);
}
.comp--teaser-evenement.temps_fort .content .gauche .grp-droite {
	justify-self: end;
	text-align: right;
}
@container (max-width: 900px) {
	.comp--teaser-evenement.temps_fort .content .gauche {
		grid-template-columns: 1fr;
	}
	.comp--teaser-evenement.temps_fort .content .gauche > div {
		justify-self: center !important;
		text-align: center !important;
	}
}
/* FIN TEASER TEMPS FORT */


/* MINI TEASER */
.section__col .comp--miniteaser {
	border-bottom: var(--border);
	padding-bottom: calc(var(--gut)*.5);
	margin-bottom: calc(var(--gut)*.5);
}
.comp--miniteaser {
	position: relative;
	z-index: 1;
	text-decoration: none;
	text-wrap: balance;
	display: grid !important;
	grid-template-columns: 1fr auto;
	align-items: center;
	gap: calc(var(--gut)*.5);
	font-weight: 600;
	font-size: var(--font-m);
	transition: all .3s;
}
.comp--miniteaser:has(.visuel) {
	grid-template-columns: 150px 1fr auto;
}
.comp--miniteaser .titre {
	display: flex;
	flex-direction: column;
	gap: 5px;
}
.comp--miniteaser .titre .teaser_titre {
	font-size: var(--font-xl);
	font-weight: 600;
	text-transform: none;
	line-height: 1;
	transition: all .3s;
}
.comp--miniteaser.spectacle .titre .teaser_titre {
	font-family: var(--font-titre);
}
.comp--miniteaser .titre .surtitre {
	font-weight: 600;
}
.comp--miniteaser .titre .field--name-field-artistes,
.comp--miniteaser .titre .field--name-field-soustitre,
.comp--miniteaser .titre .grp-art-cie {
	line-height: 1;
}
.comp--miniteaser .titre .field--name-field-compagnie {
	font-weight: 400;
}
.comp--miniteaser:hover .titre .teaser_titre {
	text-decoration: underline;
}
.comp--miniteaser .titre .field--name-field-datefriendly-teaser {
	padding: 5px;
	background-color: var(--sec);
	width: fit-content;
}
@media print, screen and (max-width: 767px) {
	.comp--miniteaser {
		grid-template-columns: 1fr !important;
	}
}
/* FIN MINI TEASER */

/* VOLETS */
[data-ff-ajax-region] {
	top: var(--ff-ajax-top);
	bottom: var(--ff-ajax-bottom);	
}
#volet_d #block-ff-rouen-views-block-flux-vivant-flux-vivant .flux-vivant {
	padding: var(--gut);
	padding-top: calc(var(--gut)*3);
	overflow: auto;
	min-height: 100%;
	height: 100%;
}
#volet_d #block-ff-rouen-views-block-flux-vivant-flux-vivant .flux-vivant {
	padding-left: calc(var(--gut)*3);
}
[data-ff-ajax-region="volet_d"] #block-ff-rouen-views-block-flux-vivant-flux-vivant {
	position: absolute;
	z-index: 1;
	right: 0px;
	top: 0;
	bottom: 0;
	width: var(--ff-ajax-width-d);
	color: var(--blanc);
}
#volet_d #block-ff-rouen-vivantfullnode {
	position: fixed;
	top: 0;
	bottom: 0;
	left: 0;
	height: 100%;
	min-height: 100%;
	width: 100%;
}
#volet_d #fullnodevivant {
	position: absolute;
	z-index: -1;
	top: 0;
	bottom: 0;
	left: 0;
	height: 100%;
	min-height: 100%;
	padding-right: calc(var(--gut)*3);
	width: calc(100% - var(--gin-toolbar-x-offset, 0px) - var(--ff-ajax-width-d) + calc(var(--gut)*3));	
}
#volet_d #fullnodevivant.is-active {
	left: var(--gin-toolbar-x-offset, 0px);
}
#volet_d #fullnodevivant .local-tasks {
	position: absolute;
	z-index: 10;
	background: var(--gris);
	padding: 15px 0 !important;
	left: calc(var(--gut)*2);
	right: calc(var(--gut)*4);
	top: 0;
	border: none !important;
}
#volet_d #fullnodevivant .local-tasks ul.tabs li a {
	border-color: #DDD !important;
	font-size: var(--font-s);
}
#volet_d #fullnodevivant .local-tasks ul.tabs li a:hover {
	border-color: var(--coul2) !important;
}
#volet_d #fullnodevivant .page {
	overflow: auto;
	height: 100%;
	padding: calc(var(--gut)*1);
}
[data-ff-ajax-region="volet_g"] {
	background-color: var(--blanc);
	left: var(--gin-toolbar-x-offset, 0);
	width: calc(var(--ff-ajax-width-g) - var(--gin-toolbar-x-offset, 0));
	transform: translateY(-100%);
}
[data-ff-ajax-region="volet_d"] {
	right: 0;
	width: 100%;
	overflow: hidden;
	transform: translateX(100%);
}
[data-ff-ajax-region="panneau_ham"] {
	background-color: var(--gris);
	left: var(--gin-toolbar-x-offset, 0);
	width: var(--ff-ajax-width-g);
	transform: translateY(100%);
}
@media print, screen and (max-width: 1024px) {
	#volet_d #fullnodevivant .local-tasks {
		left: calc(var(--gut)*1);
		right: calc(var(--gut)*1);
	}
	[data-ff-ajax-region="volet_g"] {
		width: var(--ff-ajax-width-g);
	}
	#volet_d #fullnodevivant {
		right: 0;
		width: 100%;
		padding: 0;
	}
	#volet_d #block-ff-rouen-views-block-flux-vivant-flux-vivant .flux-vivant {
		padding-left: calc(var(--gut)*1);
	}
	#volet_d #block-ff-rouen-vivantfullnode {
		position: inherit;
	}
	#volet_d #block-ff-rouen-vivantfullnode,
	#volet_d #fullnodevivant {
		z-index: 3;
	}
	#volet_d #fullnodevivant .page {
		padding: 0;
	}
}
/* FIN VOLETS */

/* Clics teasers Vivant : calques fixes transparents au pointeur ------------- */
/* La barre fixe `.section1` (position:fixed; bottom:0; pleine largeur) et le
   wrapper plein écran du node `#block-ff-rouen-vivantfullnode` recouvrent la
   colonne des teasers du flux ; leurs zones VIDES captaient des clics destinés
   aux teasers situés dessous. On les rend transparents au pointeur uniquement
   PENDANT que le flux Vivant est ouvert (`body.is-fluxvivant`, posé par
   ff_vivant), en ré-activant seulement les éléments réellement interactifs.
   `pointer-events` n'affecte PAS les animations → l'anim splash
   (`body.is-splash .section1`) reste intacte. */
body.is-fluxvivant .section1 {
	pointer-events: none;
}
body.is-fluxvivant .section1 a,
body.is-fluxvivant .section1 button,
body.is-fluxvivant .section1 input,
body.is-fluxvivant .section1 select,
body.is-fluxvivant .section1 textarea,
body.is-fluxvivant .section1 .menu__trigger,
body.is-fluxvivant .section1 [role="button"],
body.is-fluxvivant .section1 [data-ff-ajax-region-trigger] {
	pointer-events: auto;
}
/* Wrapper plein écran du node : seul #fullnodevivant (le node lui-même) doit
   intercepter les clics ; ses bords vides ne doivent pas piéger les teasers. */
#volet_d #block-ff-rouen-vivantfullnode {
	pointer-events: none;
}
#volet_d #fullnodevivant {
	pointer-events: auto;
}

/* TODAY */
#volet_g {
	padding: 0;
}
#volet_g .ff-ajax-region-content {
	min-height: 100%;
	display: grid;
	grid-template-columns: 1fr 3fr 3fr;
	grid-template-rows: auto auto 1fr;
}
#volet_g #block-ff-rouen-closebutton-2 {
	position: sticky;
	z-index: 1;
	grid-column: 1;
	grid-row: 1;
	top: 0;
	left: 0;
	display: flex;
	align-items: center;
	height: 100%;
	padding-left: var(--gut);
	background-color: var(--blanc);
}
#volet_g #block-ff-rouen-todayalerte {
	background-color: var(--blanc);
	grid-column: 2;
	grid-row: 1;
}
[id*='todayalerte'] {
	padding: calc(var(--gut)*.5) 0;
	padding-left: 60px;
	display: flex;
	align-items: center;
	font-size: var(--font-s);
	color: var(--coul2);
	position: relative;
}
[id*='todayalerte']:after {
	content: "";
	position: absolute;
	top: 50%;
	left: calc(var(--gut)*.75);
	transform: translateY(-50%);
	width: 30px;
	height: 30px;
	display: inline-block;
  	background-position: center;
	background-size: 70%;
	background-repeat: no-repeat;
	background-image: url(../images/picto-info.svg);
	filter: var(--filter-coul2);
}
#volet_g #block-ff-rouen-todayinfos {
	background-color: var(--blanc);
	grid-column: 3;
	grid-row: 1;
	padding: calc(var(--gut)*.5) 0;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: calc(var(--gut)*1);
	font-size: var(--font-s);
	color: var(--coul2);
}
#volet_g #block-ff-rouen-todayinfos p {
	margin: 0;
}
#volet_g #block-ff-rouen-todaylieux {
	grid-column: 1;
	grid-row: 2 / 4;
	background-color: var(--noir);
	color: var(--coul1);
}
#volet_g #block-ff-rouen-todaylieux .section__col {
	gap: var(--gut);
}
#volet_g #block-ff-rouen-todaylieux .para-term {
	text-align: center;
	font-size: var(--font-s);
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 5px;
}
#volet_g #block-ff-rouen-todaylieux .para-term .titre {
	font-weight: 600;
}
#volet_g #block-ff-rouen-todaylieux .para-term img {
	filter: var(--filter-coul1);
	max-height: 5vw;
	margin-bottom: 5px;
}
#volet_g #block-ff-rouen-todaylieux .para-term .btn {
	border-color: var(--coul1);
}
#volet_g #block-ff-rouen-todaylieux .para-term .btn:hover {
	background-color: var(--coul2);
}
#volet_g #block-ff-rouen-views-block-calendrier-mensuel-en-ce-moment {
	grid-column: 2;
	grid-row: 2 / 4;
	background-color: var(--gris);
	padding: var(--gut);
}
#volet_g #block-ff-rouen-views-block-tournees-block-1 {
	grid-column: 3;
	grid-row: 2 / 3;
	background-color: var(--coul1);
	padding: var(--gut);
}
#volet_g #block-ff-rouen-views-block-residences-today-residences {
	grid-column: 3;
	grid-row: 3;
	background-color: var(--blanc);
	padding: var(--gut);
}
#volet_g #block-ff-rouen-views-block-residences-today-residences .comp--representation--col--date {
	font-weight: 600;
}
#volet_g #block-ff-rouen-views-block-residences-today-residences .comp--representation--col--lieu {
	grid-column: 3 / -1;
}
#volet_g #block-ff-rouen-views-block-residences-today-residences .comp--representation--col--reservation {
	display: none;
}
#volet_g #block-ff-rouen-views-block-residences-today-residences .section {
	padding: 0;
}
#volet_g .view-header {
	background-color: transparent;
}
#volet_g h3 {
	margin: 0;
	color: var(--coul2);
	margin-bottom: calc(var(--gut)*.5);
	padding: 0;
}
#volet_g .calendrier .view-header {
	position: relative !important;
	top: 0;
}
#volet_g .btn {
	font-size: var(--font-s);
}
#volet_g .cal-jour {
	margin: 0;
	grid-template-columns: 100px 1fr;
	text-align: left;
}
#volet_g .cal_jour--date {
	display: inline-block;
	padding-right: calc(var(--gut)*.5) !important;
}
#volet_g .cal_jour--date,
#volet_g .comp--representation--mensuel {
	padding: calc(var(--gut)*.5) 0;
	font-size: var(--font-s);
	grid-template-columns: 20% 0 35% 25% 0 15%;
}
#volet_g .comp--representation--col--genre {
	gap: 0;
	margin-top: auto;
	padding: 0 10px;
}
#volet_g .comp--representation--col--genre * {
	font-size: var(--font-xs);
}
#volet_g .comp--representation .titre_even {
	font-size: var(--font-m);
}
#volet_g .comp--representation.evenement .titre_even,
#volet_g .comp--representation--tournees .titre_even {
	font-size: var(--font-l);
}
#volet_g .comp--representation .artistes {
	font-size: var(--font-s);
}
#volet_g .badge {
	font-size: var(--font-xs);
}
#volet_g .comp--representation--mensuel .badge {
		background-color: var(--blanc);
	}
#volet_g .comp--representation--tournees {
	grid-template-columns: 200px 1fr 200px;
	gap: 1%;
	font-size: var(--font-s);
	border-color: var(--noir);
}
#volet_g .comp--representation--tournees .comp--representation--col--date time span {
	display: none;
}
#volet_g .comp--representation--tournees .field--name-field-lieu {
	font-size: var(--font-s);
}
#volet_g .comp--representation--tournees .badge {
	background-color: var(--blanc);
}
#volet_g .comp--representation--tournees .comp--representation--col--date time {
	width: 100%;
}
@media print, screen and (min-width: 1024px) {
	#volet_g #block-ff-rouen-todayalerte,
	#volet_g #block-ff-rouen-todayinfos {
		position: sticky;
		top: 0;
		z-index: 1;
	}
	
}
@media print, screen and (max-width: 1023px) {
	[id*='todayalerte'] {
		padding-left: 50px;
		padding-right: var(--gut);
	}
	#volet_g .ff-ajax-region-content {
		grid-template-columns: 1fr;
	}
	#volet_g #block-ff-rouen-closebutton-2 {
		position: sticky;
		height: auto;
		top: calc(var(--gut)*.5);
		padding-right: calc(var(--gut)*.5);
		background-color: transparent;
		justify-content: flex-end;
		margin-bottom: -30px;
	}
	#volet_g #block-ff-rouen-todayalerte,
	#volet_g #block-ff-rouen-todayinfos {
		padding: calc(var(--gut)*.5);
		padding-left: calc(var(--gut)*1);
		padding-right: 60px;
		gap: 0;
	}
	#volet_g #block-ff-rouen-todayalerte {
		padding-left: 50px;
	}
	#volet_g #block-ff-rouen-todaylieux {
		order: 4;
	}
	#volet_g #block-ff-rouen-todaylieux .para-term img {
		max-height: 15vw;
	}
	#volet_g #block-ff-rouen-todaylieux .section__col {
		flex-direction: row;
		justify-content: center;
		flex-wrap: wrap;
	}
	#volet_g .ff-ajax-region-content > * {
		grid-column: inherit !important;
		grid-row: inherit !important;
	}
	#volet_g .cal_jour--date,
	#volet_g .comp--representation--mensuel,
	#volet_g .comp--representation--tournees .comp--representation--col--date time {
		font-size: var(--font-m);
		
	}
	#volet_g .comp--representation--tournees .comp--representation--col--date .badge {
		margin-top: 0px;
	}
	#volet_g .comp--representation--tournees .comp--representation--col--date time {
		width: inherit;
		display: inline-flex;
	}
	#volet_g .comp--representation--tournees .comp--representation--col--date,
	.comp--representation--tournees .comp--representation--col--date {
		display: flex !important;
		flex-direction: row !important;
		justify-content: space-between !important;
		flex-wrap: nowrap !important;
		align-items: center !important;
		padding: calc(var(--gut)*.25) 0 !important;
		border-bottom: 1px solid rgba(var(--coul2rgb),0.1) !important;
	}
	#volet_g .comp--representation--col--genre * {
		font-size: var(--font-s);
	}
	#volet_g .comp--representation .titre_even {
		font-size: var(--font-l);
	}
	#volet_g .comp--representation.evenement .titre_even,
	#volet_g .comp--representation--tournees .titre_even {
		margin-top: 10px;
		font-size: var(--font-xl);
	}
	#volet_g .comp--representation .artistes {
		font-size: var(--font-m);
	}
	#volet_g .badge {
		font-size: var(--font-s);
	}
	#volet_g .comp--representation--tournees .field--name-field-lieu {
		font-size: var(--font-m);
	}
	#volet_g .cal-jour {
		grid-template-columns: 1fr;
	}
	#volet_g .comp--representation--col--genre {
		margin-top: inherit;
		padding: 0;
	}
	#volet_g .comp--representation--tournees {
		gap: 0px;
		font-size: var(--font-m);
		padding-top: 0 !important;
	}
	#volet_g #block-ff-rouen-views-block-residences-today-residences .comp--representation--col--lieu {
		grid-column: 1;
	}
	#volet_g .cal_jour--date {
		display: flex;
	}
}
@media print, screen and (max-width: 767px) {
	#volet_g #block-ff-rouen-todaylieux .section__col {
		flex-direction: column;
	}
}
/* FIN TODAY */

/* VIVANT */
/* general */
@keyframes fake-pulse {
	from { opacity: 0.5; }
	to   { opacity: 1; }
}
.fake {
	padding: calc(var(--gut)*2);
	display: flex;
	flex-direction: column;
	gap: 10px;
}
#volet_d #fullnodevivant .fake > div {
	background-color: #CCC;
	display: flex;
	border-radius: 100px;
}
#volet_d #fullnodevivant .fake .badge {
	height: 28px;
	width: 120px;
	transform-origin: left center;
	animation: fake-pulse 1s ease-in-out infinite alternate;
}
#volet_d #fullnodevivant .fake .titre {
	height: 50px;
	width: 500px;
	transform-origin: left center;
	animation: fake-pulse 1s ease-in-out infinite alternate;
}
#volet_d #fullnodevivant .fake .soustitre {
	height: 28px;
	width: 600px;
	transform-origin: left center;
	animation: fake-pulse 1s ease-in-out infinite alternate;
}
#volet_d #fullnodevivant .fake .content {
	margin-top: 50px;
	border-radius: 0;
	height: 30vh;
	width: 70%;
	transform-origin: left center;
	animation: fake-pulse 1s ease-in-out infinite alternate;
}
.page-node-type-actualite .layout-global .page {
	display: none;
}
.page-node-type-actualite .layout-global #block-ff-rouen-vivantimagefond .comp--medias {
	text-align: center;
}
.page-node-type-actualite .layout-global #block-ff-rouen-vivantimagefond img {
	max-height: 50vh;
	width: auto;
	margin: 0 auto;
}
#volet_d nav.pager ul li.pagination-previous a,
#volet_d nav.pager ul li.pagination-next a {
	filter: var(--filter-blanc);
}
#volet_d nav.pager ul li.current {
	color: var(--blanc);
	border-color: var(--blanc);
}
#volet_d #block-ff-rouen-closebutton-3 {
	z-index: 2;
}
#volet_d .close-button {
	position: fixed;
	top: var(--gut);
	right: var(--gut);
}
#volet_d #fullnodevivant .close-button {
	z-index: 20;
	right: calc(var(--gut)*4);
}
.page-node-type-actualite #volet_d #fullnodevivant .close-button {
	display: none;
}
/* mask */
#block-ff-rouen-views-block-flux-vivant-flux-vivant:after,
#fullnodevivant:after {
	content: "";
	position: fixed;
	z-index: -1;
	width: 100%;
	top: 0;
	bottom: 0;
    -webkit-mask-size: auto 100%;
    mask-size: auto 100%;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-position: right center;
    mask-position: right center;
	transition: all .3s;
}
#fullnodevivant:after {
	background-color: var(--gris);
	-webkit-mask-image: url(../images/vivant-mask2.svg);
    mask-image: url(../images/vivant-mask2.svg);
	-webkit-mask-position: right center;
    mask-position: right center;
}
#block-ff-rouen-views-block-flux-vivant-flux-vivant:after {
	background-color: var(--noir);
	-webkit-mask-position: left center;
    mask-position: left center;
	-webkit-mask-image: url(../images/vivant-mask1.svg);
    mask-image: url(../images/vivant-mask1.svg);
}
/* fullnode */
#volet_d #fullnodevivant .comp--texte {
	font-family: var(--font-vivant);
}
#volet_d #fullnodevivant .grp-titre {
	padding: calc(var(--gut)*1);
	padding-right: calc(var(--gut)*3);
}
#volet_d #fullnodevivant .vivant-date {
	padding: calc(var(--gut)*1);
	font-style: italic;
}
#volet_d #fullnodevivant .grp-titre .badge {
	margin-bottom: 5px;
}
#volet_d #fullnodevivant h1 {
	display: block;
	font-size: var(--font-xxl);
	font-family: var(--font-titre);
	background: none;
	padding: 0;
	font-weight: 400;
	color: var(--coul2);
}
#volet_d #fullnodevivant .field--name-field-artistes {
	font-size: var(--font-l);
	font-weight: 600;
}
@media print, screen and (min-width: 1024px) {
	#volet_d #fullnodevivant .section--cols-1 > .section__col:has( > .comp--diaporama-slider-free, > .comp--diaporama-slider-simple) {
		margin: 0 calc(var(--gut)*-2);
	}
}
@media print, screen and (max-width: 1023px) {
	#volet_d #fullnodevivant .close-button {
		z-index: 20;
		right: calc(var(--gut)*1);
	}
	#block-ff-rouen-views-block-flux-vivant-flux-vivant:after,
	#fullnodevivant:after {
		-webkit-mask-image: none;
		mask-image: none;
	}
	.fake {
		padding: calc(var(--gut)*1);
	}
	#volet_d #fullnodevivant .fake .badge {
		height: 24px;
		width: 105px;
	}
	#volet_d #fullnodevivant .fake .titre {
		height: 30px;
		width: 240px;
	}
	#volet_d #fullnodevivant .fake .soustitre {
		height: 40px;
		width: 300px;
	}
	#volet_d #fullnodevivant .fake .content {
		width: 100%;
	}
}
/* FIN VIVANT */

/* TEASER VIVANT */

.comp--teaser.actualite {
	display: grid;
	background-color: var(--noir);
	grid-template-columns: 3fr 1fr;
}
.comp--teaser.actualite .titre {
	padding: var(--gut);
	display: flex;
	flex-direction: column;
	gap: 5px;
}
.comp--teaser.actualite .visuel {
	order: 2;
    -webkit-mask-size: auto 300%;
    mask-size: auto 300%;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-position: left center;
    mask-position: left center;
	-webkit-mask-image: url(../images/vivant-mask1.svg);
    mask-image: url(../images/vivant-mask1.svg);
}
.comp--teaser.actualite .visuel .cq-image-wrapper,
.comp--teaser.actualite .visuel .cq-image-wrapper picture,
.comp--teaser.actualite .visuel .cq-image-wrapper picture img {
	object-fit: cover;
	height: 100%;
}
.comp--teaser.actualite .badge {
	background-color: var(--blanc);
	color: var(--noir);
	font-size: var(--font-xs);
}
.comp--teaser.actualite .teaser_titre {
	font-family: var(--font-titre);
	font-size: var(--font-xxl);
	line-height: 1;
	color: var(--coul1);
	margin-top: calc(var(--gut)*.25);
	text-shadow: 0 0 7px var(--noir);
	font-weight: 200;
}
/*.comp--teaser.actualite .teaser_titre.long {
	font-size: var(--font-xl);
}*/
.comp--teaser.actualite .field--name-field-artistes {
	font-weight: 600;
	font-size: var(--font-m);
	color: var(--blanc);
}
.comp--teaser.actualite .comp--bouton {
	border: none;
	padding: 0;
	font-family: var(--font-titre);
	font-size: var(--font-m);
	font-weight: 400;
	line-height: 1;
	color: var(--coul1);
	margin-top: calc(var(--gut)*.5);
	transform: rotate(-5deg);
	position: relative;
	background: none !important;
	text-shadow: 0 0 10px rgba(0,0,0,0.4);
}
.comp--teaser.actualite .comp--bouton:before,
.comp--teaser.actualite .comp--bouton:after {
	content: "";
	position: absolute;
	width: 60%;
	border-bottom: 2px solid var(--coul1);
	transition: all .2s;
}
.comp--teaser.actualite .comp--bouton:before {
	top: -7px;
	left: -3px;
}
.comp--teaser.actualite .comp--bouton:after {
	bottom: -7px;
	right: -5px;
}
.comp--teaser.actualite:hover .comp--bouton:before,
.comp--teaser.actualite:hover .comp--bouton:after {
	width: calc(100% + 6px);	
}
.flux-vivant .comp--teaser.actualite {
	grid-template-columns: 1fr 1fr;
}
.flux-vivant .comp--teaser.actualite .titre {
	padding: 0;
	gap: 0;
}
.flux-vivant .comp--teaser.actualite .teaser_titre {
	font-size: var(--font-xl);
	font-weight: 500;
	margin-bottom: 5px;
}
.flux-vivant .comp--teaser.actualite .teaser_titre.long {
	font-size: var(--font-l);
}
.flux-vivant .comp--teaser.actualite .visuel {
	-webkit-mask-image: none;
    mask-image: none;
}
.flux-vivant .comp--teaser.actualite:nth-child(odd) .visuel {
	margin-right: calc(var(--gut)*-1);
}
.flux-vivant .comp--teaser.actualite:nth-child(even) .visuel {
	margin-left: calc(var(--gut)*-1);
}
.flux-vivant .comp--teaser.actualite .visuel .cq-image-wrapper,
.flux-vivant .comp--teaser.actualite .visuel .cq-image-wrapper picture,
.flux-vivant .comp--teaser.actualite .visuel .cq-image-wrapper picture img {
	height: inherit;
}
.flux-vivant .comp--teaser.actualite:nth-child(odd) .titre {
	margin-left: calc(var(--gut)*-1);
	order: 2;
}
.flux-vivant .comp--teaser.actualite:nth-child(even) .titre {
	margin-right: calc(var(--gut)*-1);
}
.flux-vivant .comp--teaser.actualite .field--name-field-artistes {
	font-size: var(--font-s);
	text-shadow: 0 0 10px var(--noir);
}
.flux-vivant .comp--teaser.actualite .titre {
	z-index: 1;
}
.flux-vivant .comp--teaser.actualite {
	margin-bottom: calc(var(--gut)*2);
}
@container (max-width: 600px) {
	.comp--teaser.actualite {
		grid-template-columns: 1fr;
	}
	.comp--teaser.actualite .visuel {
	    -webkit-mask-size: 200% auto;
	    mask-size: 200% auto;
	    -webkit-mask-position: center top;
	    mask-position: center top;
		-webkit-mask-image: url(../images/vivant-mask3.svg);
	    mask-image: url(../images/vivant-mask3.svg);
	}
}
/* FIN TEASER VIVANT */


/* THROBBLER */
.ajax-progress-fullscreen:before,
.ajax-progress-fullscreen:after {
	background-color: var(--coul1);
}
.ajax-progress-fullscreen:after {
	background-color: var(--coul2);
}
/* FIN THROBBLER */
  
/* NODE EVEN */
.page .field {
	position: relative;
}
.type-evenement .page__top {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: center;
	gap: 5px;
	background-color: var(--gris);
	padding: calc(var(--gut)*.5) calc(var(--gut)*1);
	font-weight: 600;
	z-index: 10;
}
.type-evenement .page__top a.is-disabled {
	pointer-events: none;
	color: var(--noir);
	border-color: var(--noir);
}
.type-evenement .page__top .ref_tf a {
	font-size: var(--font-m);
}
.type-evenement .field--name-field-duree,
.top .field--name-field-duree {
	display: flex;
	align-items: center;
	gap: 3px;
}
.type-evenement .field--name-field-duree:before,
.top .field--name-field-duree:before {
  	content: "N";
  	width: 16px;
  	height: 16px;
  	display: inline-block;
  	font-family: var(--font-picto);
  	font-weight: 400;
  	font-size: var(--font-l);
  	line-height: 0.85;
}
.type-evenement .page__content,
.type-compagnie .page__content {
	gap: 0;
}
.type-temps_fort .page__content {
	background-color: var(--coul1);
}
.type-temps_fort .page__content .badge {
	background-color: var(--blanc);
}
.type-evenement .page__col--1 {
	padding: var(--gut);
	padding-bottom: 0;
}
.type-evenement .field--name-field-presentation {
	margin: calc(var(--gut)*1) 0 !important;
	padding-top: calc(var(--gut)*1);
	border-top: var(--border);
}
.type-evenement .comp--teaser .field--name-field-presentation {
	margin: 0 !important;
	padding-top: 0;
	border-top: none;
}
.type-compagnie .page__col--2 {
	padding: var(--gut);
}
.type-evenement .page__col--2 .comp--medias:not(:last-child) {
	margin-bottom: calc(var(--gut)*.5);
}
.type-evenement .page__content .grp-titre {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: center;
	margin-bottom: calc(var(--gut)*.5);
	gap: calc(var(--gut)*.5);
}
.type-evenement .page__content .filtres {
	margin-bottom: calc(var(--gut)*.5);
}
.type-evenement .field--name-field-mentions-creacoprod {
	display: flex;
	gap: calc(var(--gut)*.5);
}
.type-evenement .grp-titre h1,
.type-compagnie .grp-titre h1 {
	padding: 0;
	background: none;
	font-size: var(--font-xxl);
	line-height: 1;
}
.type-spectacle .grp-titre h1,
.type-production .grp-titre h1 {
	font-family: var(--font-titre);
	font-weight: 400;
}
.type-evenement .grp-titre img {
	height: 50px;
	width: auto;
	filter: var(--filter-coul2);
	display: flex;
}
.type-evenement .page__bottom .section_tabs:has(.grid-elements) {
	margin-top: calc(var(--gut)*1);
}
.type-rdv .grp-titre img {
	height: 80px;
}
.type-evenement .page__col > .field--name-field-artistes,
.type-compagnie .page__col > .field--name-field-artistes {
	font-size: var(--font-l);
	font-weight: 600;
	line-height: 1.1;
	margin-top: calc(var(--gut)*.5);
	margin-bottom: calc(var(--gut)*.5);
}
.type-evenement .page__col > .field--name-field-compagnie {
	font-size: var(--font-m);
	font-weight: 600;
	line-height: 1.1;
	margin-top: calc(var(--gut)*-.25);
	margin-bottom: calc(var(--gut)*.5);
}
.type-evenement .field--name-field-chapeau {
	font-size: var(--font-l);
	font-weight: 600;
	line-height: 1.1;
	color: var(--coul2);
	margin-bottom: calc(var(--gut)*.5);
}
.type-evenement .field--name-field-presentation,
.type-evenement .field--name-field-site-web {
	margin-bottom: calc(var(--gut)*.5);
}
.type-evenement .field--name-field-partenaires {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	align-items: center;
}
.type-production .field--name-field-partenaires {
	margin-bottom: calc(var(--gut)*.5);
}
.type-evenement .field--name-field-partenaires img {
	width: 50px;
}
.type-evenement .comp--accordion-group {
	margin-bottom: calc(var(--gut)*.5);
}
.type-evenement .field--name-field-tarifs-long {
	background-color: var(--coul1);
	margin: calc(var(--gut)*1) calc(var(--gut)*-1) 0 calc(var(--gut)*-1);
	padding: calc(var(--gut)*.5) calc(var(--gut)*1);
}
.type-evenement .field--type-entity-reference .comp--teaser-evenement:not(:last-child) {
	margin-bottom: calc(var(--gut)*1);
}
.type-evenement .field--name-field-production {
	border-bottom: 1px solid var(--noir) !important;
	margin-top: calc(var(--gut)*-.5);
	margin-bottom: calc(var(--gut)*.5);
}
.type-evenement .comp--accordion {
	border-bottom: 1px solid var(--coul2);
}
.type-evenement .comp--accordion-group {
	border-top: 1px solid var(--coul2);
}
.type-evenement .field--name-field-production,
.type-evenement .field--name-field-production a {
	display: block;
	color: var(--noir);
	text-decoration: none;
}
.type-evenement .field--name-field-production:after {
	transform: rotate(-45deg) translateY(-50%);
	right: 0px;
	top: 50%;
	margin-top: -1px;
	border-color: var(--noir);
}
.type-evenement .field--type-entity-reference .comp--miniteaser {
	margin-bottom: calc(var(--gut)*.5);
	padding-bottom: calc(var(--gut)*.5);
	border-bottom: 1px solid var(--gris);
}
.type-evenement .field--type-entity-reference .comp--miniteaser:first-of-type {
	margin-top: calc(var(--gut)*.5);
	padding-top: calc(var(--gut)*.5);
	border-top: 1px solid var(--gris);
}
.type-evenement .field--name-field-autour-spectacle .comp:not(:last-child) {
	margin-bottom: calc(var(--stroke)*-1);
}
.type-evenement .field--name-field-autour-spectacle .comp {
	min-height: auto;
}
.type-evenement .grp-partenaires {
	margin: calc(var(--gut)*1) 0;
	display: flex;
	flex-direction: column;
	gap: calc(var(--gut)*.5);
}
.type-evenement .blocs {
	margin: 0 calc(var(--gut)*-1);
}
@media print, screen and (min-width: 1024px) {
	.type-evenement .page__top {
		position: sticky;
		top: var(--ff-ajax-top);
	}
	.type-evenement .page__col--1 {
		position: sticky;
/*		top: calc(var(--ff-ajax-top) + var(--pagetop, 0px));*/
		bottom: var(--ff-ajax-bottom);
		align-self: flex-end;
		min-height: calc(100vh - var(--ff-ajax-top) - var(--pagetop, 0px) - var(--ff-ajax-bottom));
	}
}
@media print, screen and (max-width: 1023px) {
	.type-evenement .grp-titre {
	}
	.type-evenement .grp-titre img {
		height: 30px;
	}
	.type-rdv .grp-titre img {
		height: 50px;
	}
	.type-evenement .page__top {
		position: sticky;
		top: var(--ff-ajax-top);
		font-size: var(--font-s);
	}
	.type-evenement .page__top .prebadge a {
		font-size: var(--font-s);
		margin-top: 0;
		display: inline-block;
	}
	.type-spectacle .page__col--1 {
		order: 2;
	}
}
@media print, screen and (max-width: 767px) {
	.type-evenement .page__top .field--name-field-date-teaser,
	.type-evenement .page__top .field--name-field-lieu {
		display: none;
	}
}
/* FIN NODE EVEN */ 

/* NODE COMPAGNIE */
.type-compagnie .page__content {
	background-color: var(--noir);
	color: var(--blanc);
}
.type-compagnie .page__content .page__col--1 {
	position: relative;
}
.type-compagnie .page__content .page__col--1 .visuelref_legende {
	position: absolute;
	top: calc(var(--gut)*.5);
	left: calc(var(--gut)*.5);
	background-color: rgba(0,0,0,0.4);
	color: var(--blanc);
	font-size: var(--font-xs);
	padding: 10px 5px;
	border-radius: 50px;
	opacity: 0.5;
	writing-mode: vertical-lr;
	transform: rotate(180deg);
}
.type-compagnie .grp-titre h1 {
	color: var(--coul1);
}
/* FIN NODE COMPAGNIE */

/* NODE PRODUCTION */
.type-production .page__col--1 {
	padding: 0;
}
.type-production .page__col > .field--name-field-mention-creation {
	padding: calc(var(--gut)*.5) calc(var(--gut)*1);
	background-color: var(--noir);
	color: var(--coul1);
	font-weight: 600;
}
.type-production .grp-barre {
	padding: calc(var(--gut)*.5) calc(var(--gut)*1);
	background-color: var(--gris);
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	font-weight: 600;
	gap: calc(var(--gut)*.5);
}
.type-production .grp-barre .field--name-field-surtitre {
	display: flex;
	flex-wrap: wrap;
	gap: calc(var(--gut)*.5);
}
.type-production .grp-barre .badge {
	text-transform: inherit;
}
.type-production .comp--accordion--titre {
	padding-top: calc(var(--gut)*.5);
	padding-bottom: calc(var(--gut)*.5);
}
.type-production .section {
	gap: 0;
}
.type-production .bloc-titre {
	padding: var(--gut);
	background-color: var(--noir);
	color: var(--blanc);
}
.type-production .bloc-titre .grp-titre h1 {
	color: var(--coul1);
}
.type-production .grp-titre img {
	filter: var(--filter-coul1);
}
.fichier_tableau {
	display: grid;
	grid-template-columns: 3fr 1fr 1fr 1fr;
	gap: calc(var(--gut)*.5);
	align-items: center;
	padding: calc(var(--gut)*.25) 0;
	border-bottom: 1px solid var(--gris);
}
.fichier_tableau:last-child {
	border: none;
}
.fichier_tableau .name {
	font-weight: 600;
}
.fichier_tableau .telecharger {
	justify-self: end;
	margin: 0 !important;
	font-size: var(--font-s);
}
.fichier_tableau .maj,
.fichier_tableau .poids {
	font-size: var(--font-s);
}
.grid-elements .fichier_tableau {
	display: flex;
	flex-direction: column;
	justify-content: center;
	text-align: center;
	gap: 5px;
	align-items: center;
	padding: calc(var(--gut)*.5);
	border: 1px solid var(--gris);
}
.type-production .field--name-field-texte-colonne-droite {
	margin-top: calc(var(--gut)*.5);
}
@media print, screen and (max-width: 767px) {
	.fichier_tableau {
		grid-template-columns: 1fr;
		gap: 0;
	}
}
/* FIN NODE PRODUCTION */

/* PLAYER AUDIO */
.comp--player-audio {
	font-weight: 600;
	padding: calc(var(--gut)*.25) 0;
	border-top: 1px solid var(--gris);
}
.comp--player-audio .audio-file::before {
	content: "";
	width: 30px;
	height: 30px;
	border: 1px solid var(--coul2);
	background-size: 70%;
	background-position: center;
	background-repeat: no-repeat;
	background-image: url(../images/fleche-d.svg);
	filter: var(--filter-coul2);
}
.comp--player-audio .audio-file.is-playing {
	color: var(--coul2);
}
.comp--player-audio .audio-file.is-playing::before {
	content: "";
	background-size: 45%;
	background-image: url(../images/pause.svg);
}
/* FIN PLAYER AUDIO */

/* EXPOSED FILTER */
.empty-results {
	padding: calc(var(--gut)*.5) var(--gut);
}
/* FIN EXPOSED FILTER */

/* CALENDRIER */
.view-display-id-page_month_scolaires .view-header,
.calendrier .view-header,
.view-display-id-page_month .view-header,
.view-display-id-block_1 .view-header {
	position: relative;
	background-color: var(--coul1);
}
.calendrier > nav {
	display: none;
}
.calendrier .view-header {
	display: flex;
	position: sticky !important;
	z-index: 1;
	top: calc(var(--ff-ajax-top) + var(--hauteur-sousmenu) + var(--hauteur-switchajax) + var(--hauteur-submenu));
}
.calendrier .view-header h3 {
	order: 2;
}
.calendrier .view-header nav {
	order: 1;
	margin-left: calc(var(--gut)*.5);
}
.calendrier .view-header nav ul,
.calendrier .view-header nav li,
.calendrier .view-header nav a {
	height: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
}
.calendrier .view-header nav a {
	padding: 0;
	width: 50px;
	text-indent: -10000px;
}
.calendrier .view-header nav a:after {
	text-indent: 0;
	font-family: var(--font-picto);
	font-size: calc(var(--font-xl)*1.2);
	font-weight: 400;
}
.calendrier .view-header nav li.calendar-pager__item--previous a:after {
	content: "S";
}
.calendrier .view-header nav li.calendar-pager__item--next a:after {
	content: "R";
}
.calendrier .view-header nav a:hover:after {
	color: var(--coul2);
}
@media print, screen and (max-width: 1023px) {
	.calendrier .view-header nav a {
		width: 40px;
	}
}
.comp--representation {
	display: grid;
	grid-template-columns: 20% 0 45% 20% 0 10%;
	gap: 1%;
	align-items: flex-start;
	padding: calc(var(--gut)*1) 0;
	padding-left: calc(var(--gut)*.5);
	border-bottom: 1px solid var(--noir);
	font-stretch: 85%;
	font-weight: 600;
}
.comp--representation--col {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	justify-content: center;
}
.comp--representation--col > *:empty {
	display: none;
}
.comp--representation--col--titre .filtres {
	margin-top: 10px;
}
.comp--representation--col--titre .filtres .badge {
	background-color: var(--gris);
}
.comp--representation--col--titre .soustitre,
.comp--representation--col--titre .date {
	line-height: 1;
	margin-top: 10px;
}
.comp--representation--col--reservation {
	align-items: flex-end;
}
.comp--representation.temps_fort {
	background-color: var(--coul2);
	color: var(--coul1);
	padding-right: calc(15px + var(--gut)) !important;
	padding-left: calc(0px + var(--gut)) !important;
	margin: 0 calc(var(--gut)*-1);
	margin-bottom: -1px;
}
.comp--representation.temps_fort .titre_even {
	color: var(--coul1);
	font-family: var(--font-titre);
	font-size: var(--font-xl);
}
.comp--representation.temps_fort .titre_even:hover {
	color: var(--blanc);
}
.comp--representation.temps_fort .badge {
	background-color: var(--blanc);
}
.comp--representation--col--date {
	line-height: 1;
	height: 100%;
	justify-content: flex-start;
}
.comp--representation--col--date .jour_semaine,
.comp--representation--col--date .horaire,
.comp--representation--col--date .heure {
	font-weight: 400;
}
.comp--representation--col--date .horaires {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
}
.comp--representation--col--date .lieu {
	margin-top: 10px;
	color: var(--coul2);
}
.comp--representation--col--date .jour_mois,
.comp--representation--col--date .jour_semaine {
	display: none;
}
/*.cal-even:not(.last) .comp--representation--col--date .date_fin .horaire:before {
	content: " — ";
}*/
.comp--representation--col--genre {
	gap: 10px;
	justify-self: flex-end;
}
.comp--representation .field--name-field-accessibilite {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	margin-top: auto;
}
.comp--representation .field--name-field-accessibilite img {
	width: 25px !important;
	height: 25px !important;
}
.comp--representation .ref_tf {
	margin-bottom: calc(var(--gut)*.25);
}
.type-temps_fort .comp--representation .ref_tf {
	display: none;
}
.comp--representation .titre_even {
	font-size: var(--font-l);
	line-height: 0.9;
	text-wrap: balance;
	color: var(--coul2);
}
.comp--representation.evenement .titre_even,
.comp--representation--tournees .titre_even {
	font-family: var(--font-titre);
	font-size: var(--font-xl);
}
.comp--representation a.titre_even:hover,
.comp--representation .titre_even a:hover {
	color: var(--noir);
}
.comp--representation .artistes {
	font-size: var(--font-m);
	font-weight: 600;
	font-stretch: 100%;
	margin-top: calc(var(--gut)*.25);
}
.comp--representation .artistes .compagnie {
	font-weight: 400;
}
.comp--representation .field--name-field-lieu {
	font-size: var(--font-m);
	font-weight: 600;
}
.comp--representation .evt-lies {
	font-size: var(--font-l);
	font-weight: 600;
	display: flex;
	flex-direction: column;
}
.comp--representation .evt-lies a:hover {
	text-decoration: underline;
	text-underline-offset: 3px;
}
.comp--representation .field--name-field-infos-sup {
	font-size: var(--font-s);
	font-weight: 400;
}
.comp--representation .btn.picto {
	background-color: var(--coul2);
}
.comp--representation .btn.picto:hover {
	background-color: var(--coul1);
}
/* vue cal */
.cal-even.first .date_fin,
.cal-even.last .date_debut {
	display: none;
}
.cal-jour {
	display: grid;
	grid-template-columns: 200px 1fr;
	align-items: stretch;
	margin: 0 calc(var(--gut)*1);
}
.section .cal-jour {
/*	margin: 0;*/
}
.cal-events {
	border-bottom: var(--border);
}
.cal-events .cal-even:last-child .comp--representation {
	border-bottom: none;
}
.cal_jour--date {
	text-transform: lowercase;
	padding: calc(var(--gut)*1) 0;
	border-bottom: var(--border);
	font-stretch: 70%;
	font-weight: 600;
	line-height: 1;
	display: flex;
	gap: 3px;
}
.view-tournees .cal-jour {
	grid-template-columns: 1fr;
}
.view-tournees .cal_jour--date {
	display: none;
}
.today time {
	background-color: var(--coul1);
	padding: 5px 7px;
	border-radius: 50px;
}
.cal-jour:not(:has(.comp--representation)), .cal-semaine:not(:has(.cal-jour)) {
	display: none;
}
@media print, screen and (max-width: 1023px) {
    .comp--representation {
		grid-template-columns: 1fr !important;
		grid-template-rows: 1fr !important;
		gap: 5px;
		padding: calc(var(--gut)*.5) 0 !important;
	}
	.comp--representation--col--date > * {
		display: flex;
		flex-direction: row;
		flex-wrap: wrap;
	}
	.comp--representation--tournees .comp--representation--col--date .field--name-field-date {
		display: inline-block;
		width: 100%;
	}
	.comp--representation--col--date {
		display: flex;
		flex-direction: row;
		align-items: center;
		flex-wrap: wrap;
		gap: 0;
	}
	.comp--representation--col--date .horaire:not(:empty) {
		margin-right: 10px;
	}
	.comp--representation--col--date .lieu {
		margin-top: 0;
	}
	.comp--representation--col--accessibilite {
		align-items: flex-end;
	}
	.comp--representation .field--name-field-accessibilite {
		margin-left: auto;
		justify-content: flex-end;
		gap: 7px
	}
	.comp--representation .field--name-field-accessibilite img {
		width: 20px !important;
		height: 20px !important;
	}
	.comp--representation--col--titre,
	.comp--representation--col--lieu {
	}
	.comp--representation--col--lieu {
		order: 4;
	}
	.comp--representation--col--titre {
		order: 3;
	}
	.comp--representation--col--genre {
		order: 5;
		justify-self: start;
	}
	.comp--representation--col--reservation {
		order: 6;
	}
	/* vue cal */
	.cal-jour {
		display: grid;
		grid-template-columns: 1fr;
	}
	.cal_jour--date {
		display: flex;
		gap: 5px;
		flex-direction: row;
		border-right: none;
		border-color: var(--grisfonce);
	}
	.cal_jour--date {
		padding: calc(var(--gut)*.5) 0;
	}
	.comp--representation {
		padding: calc(var(--gut)*1) 0;
	}
}
/* calnode */
.calnode {
	background-color: var(--gris);
	margin: 0 calc(var(--gut)*-1);
	padding: calc(var(--gut)*1);
}
.comp--accordion:has(.calnode.scolaires) {
	margin: 0 calc(var(--gut)*-1);
	background-color: var(--coul1);
	border: none;
	border-bottom: 2px solid var(--blanc);
}
.comp--accordion:has(.calnode.scolaires) .comp--accordion--titre {
	padding-top: calc(var(--gut)*.5);
	padding-bottom: calc(var(--gut)*.5);
	padding-left: calc(var(--gut)*1);
	width: calc(100% - calc(var(--gut)*1));
}
.comp--accordion:has(.calnode.scolaires) .comp--accordion--titre:after {
	right: calc(var(--gut)*1);
}
.calnode.scolaires {
	margin: 0;
	background-color: var(--coul1);
}
.calnode + .calnode {
	margin-top: 0;
}
.calnode .btn {
	border-color: var(--coul2);
}
.rodrigue-reserver.nolink {
  cursor: default;
  pointer-events: none; /* optionnel : coupe aussi hover/focus */
}
.calnode .views-group {
	display: grid;
	grid-template-columns: 1fr 3fr;
	gap: calc(var(--gut)*.5);
	border-bottom: 1px solid var(--coul2);
	margin-bottom: calc(var(--gut)*.5);
	padding-bottom: calc(var(--gut)*.5);
}
.calnode .views-group:last-child {
	border-bottom: none;
	margin-bottom: 0;
	padding-bottom: 0;
}
.calnode .views-group .group-entete {
	text-align: center;
	color: var(--coul2);
	font-size: var(--font-s);
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 5px;
}
.calnode .views-group .group-entete .titre {
	font-weight: 600;
}
.calnode .views-group .group-entete img {
	height: 70px;
	filter: var(--filter-coul2);
}
.calnode .views-group .views-content {
	display: flex;
	flex-direction: column;
	justify-content: center;
}
.calnode .comp--representation {
	grid-template-columns: 30% 40% 26%;
	gap: 2%;
	background-color: transparent !important;
	border-color: var(--coul2);
	color: var(--coul2);
	padding: calc(var(--gut)*.5) 0;
	font-size: var(--font-m);
}
.calnode .comp--representation:last-child {
	border-bottom: none;
}
.calnode .comp--representation--col--date {
	order: 1;
	grid-column: 1;
	gap: 5px;
}
.calnode .comp--representation--col--date .date_fin:has(.heure:not(:empty)),
.calnode .comp--representation--col--date .date_fin:has(.jour_complet:not(:empty)) {
	position: relative;
	padding-top: 22px;
}
.calnode .comp--representation--col--date .date_fin:has(.heure:not(:empty)):before,
.calnode .comp--representation--col--date .date_fin:has(.jour_complet:not(:empty)):before {
	content: "T";
	font-family: var(--font-picto);
	font-weight: 400;
	font-size: var(--font-l);
	line-height: 0.9;
	position: absolute;
	top: 0;
	width: 20px;
	height: 20px;
}
.calnode .rep_type_scolaire {
	font-weight: 400;
	font-size: var(--font-s);
	line-height: 1.3;
}
.calnode .comp--representation--col--accessibilite {
	order: 2;
	grid-column: 2;
	gap: 0;
}
.calnode .comp--representation--col--accessibilite .rep_type_scolaire {
	font-weight: 600;
}
.calnode .comp--representation--col--reservation {
	order: 3;
	grid-column: 3;
}
.calnode .view-display-id-cal_event_ttpublic {
	border-top: var(--border);
	border-color: var(--coul2);
}
.calnode .comp--representation--col--date .jour_complet {
	font-weight: 600;
	text-transform: lowercase;
	color: var(--noir);
}
.calnode .comp--representation .field--name-field-accessibilite img {
	filter: var(--filter-coul2);
}
@media print, screen and (max-width: 1023px) {
	.calnode {
		padding: 0 calc(var(--gut)*1);
	}
	.calnode .views-group {
		grid-template-columns: 1fr;
		gap: 0;
		padding-bottom: 0;
		margin-bottom: 0;
	}
	.calnode .views-group .group-entete {
		text-align: left;
		display: grid;
		grid-template-columns: auto 1fr auto;
		align-items: flex-start;
		gap: 0;
		border-bottom: 1px solid #DDD;
		align-items: center;
		padding: 10px 0;
	}
	.calnode .views-group .group-entete > *:not(img) {
		grid-column: 2;
	}
	.calnode .views-group .group-entete > a {
		grid-column: 3;
		grid-row: 1 / 3;
		margin-left: 10px;
	}
	.calnode .views-group .group-entete img {
		height: auto;
		width: 50px;
		margin-bottom: 5px;
		margin-right: 10px;
		grid-row: 1 / 3;
	}
	.calnode .comp--representation--col--date > * {
		gap: 5px;
	}
	.calnode .comp--representation .field--name-field-accessibilite {
		margin-left: 0;
	}
	.calnode .comp--representation {
		grid-template-columns: 2fr 1fr;
		border-bottom: 1px solid #DDD;
		padding: calc(var(--gut)*1) 0;
		align-items: center;
	}
	.calnode .comp--representation--col--date {
		grid-column: 1;
		flex-direction: column;
		align-items: flex-start;
		justify-content: center;
	}
	.calnode .comp--representation--col--accessibilite {
		grid-column: 1;
		align-items: flex-start;
		margin-top: 10px;
	}
	.calnode .comp--representation--col--reservation {
		grid-column: 2;
		margin-top: auto;
	}
	.calnode.scolaires .views-group .group-entete,
	.calnode.scolaires .comp--representation {
		border-color: #6CD184;
	}
}
/* tournees */
.contact-production a {
	font-weight: 600;
	margin-bottom: calc(var(--gut)*.5);
	color: var(--coul2);
	border: 1px solid var(--coul2);
	padding: calc(var(--gut)*.25);
	display: inline-block;
}
.contact-production a:hover {
	background-color: var(--gris);
}
.tournee-toggle {
	margin-top: calc(var(--gut)*.5);
	font-size: var(--font-s);
}
.view-calendrier-tournee-par-spectacle.view-display-id-tournees_passees {
	display: none;
}
.view-calendrier-tournee-par-spectacle.view-display-id-tournees_passees.is-active {
	margin-top: calc(var(--gut)*.5);
	display: block;
}
.comp--representation--tournees {
	grid-template-columns: 220px 1fr 160px;
	gap: calc(var(--gut)*.5);
	padding: calc(var(--gut)*.25) 0;
	border-color: var(--gris);
}
.comp--representation--tournees .comp--representation--col--date {
	text-wrap: balance;
}
.section__col > .comp--representation--tournees {
	grid-template-columns: 1fr 2fr 1fr 160px;
}
.cal-even .comp--representation--tournees {
	grid-template-columns: 170px 1fr 1fr 160px;
}
/*.views-content .comp--representation--tournees:last-child,
.comp--representation--tournees:last-child {
	border: none;
	padding-bottom: 0;
}*/
.comp--representation--tournees .comp--representation--col--date {
	font-weight: 400;
	text-transform: lowercase;
	display: inline;
	margin-bottom: 5px;
}
.comp--representation--tournees .comp--representation--col--date .badge {
	margin-top: 5px;
}
.comp--representation--tournees .comp--representation--col--date time {
	font-weight: 600;
	line-height: 1.2;
	font-size: var(--font-s);
	display: inline-block;
	color: var(--coul2);
}
.cal-even .comp--representation--tournees .comp--representation--col--date time {
	font-size: var(--font-m);
}
.comp--representation--tournees .comp--representation--col--date time span {
	font-weight: 400;
}
.calnodeprod .comp--representation--tournees .comp--representation--col--date time:not(:last-child):after {
	content: ", ";
}
.comp--representation--tournees .comp--representation--col--lieu .field--name-field-ville {
	font-size: var(--font-s);
	font-weight: 400;
}
.comp--representation--tournees .comp--representation--col--reservation {
	gap: 5px;
}
@media print, screen and (max-width: 1023px) {
    .comp--representation--tournees {
		gap: 0px;
		padding-top: 0 !important;
	}
	.comp--representation--tournees .comp--representation--col--date .badge {
		margin-top: 0px;
		margin-left: 5px;
	}
	.comp--representation--tournees .titre_even {
		margin-top: 10px;
	}
}
/* FIN CALENDRIER */

/* SUBMENU */
.section--submenu {
	background-color: var(--gris);
	padding: calc(var(--gut)*.5) var(--gut);
	border: none;
}
.section--submenu .comp--titre {
	margin: 0;
}
.section--submenu-tabs {
  position: sticky;
  top: calc(var(--ff-ajax-top) + var(--hauteur-sousmenu) + var(--hauteur-switchajax));
}
/* SUBMENU */

/* VUE SPLIT */
.vue--split {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(0, 1fr));
}
.vue--split .view {
	position: relative;
	padding-bottom: var(--gut);
}
.vue--split .view:after {
	content: "";
	position: absolute;
	z-index: 1;
	left: 0;
	top: 0;
	bottom: 0;
	border-right: var(--border);
}
@media print, screen and (max-width: 1023px) {
	.vue--split {
		grid-template-columns: 1fr;
	}
	.vue--split .view {
		padding: 0;
	}
	.vue--split .view:after {
		display: none;
	}
}
/* FIN VUE SPLIT */

/* SPLASH */
/*body.is-splash main {
	background-color: var(--noir);
}*/
body.is-splash .section1 {
	z-index: 100;
	min-height: 100vh;
	background-color: var(--coul2);
	animation: splash-section1 1s cubic-bezier(.77, 0, .18, 1) 2s forwards;
}
@media print, screen and (min-width: 1024px) {
	body.is-splash .section1 #block-ff-rouen-identitedusite a img {
		animation: splash-logo 2.5s cubic-bezier(.77, 0, .18, 1) 0s forwards;
	}
}
@keyframes splash-section1 {
  0% { min-height: 100vh; background-color: var(--coul2); }
  100% { min-height: 0; background-color: var(--coul2);  }
}
@keyframes splash-logo {
  0% { transform: scale(1.5); }
  65% { transform: scale(1.5); }
  100% { transform: scale(1);  }
}
body.is-splash .section1 .menu__trigger {
	opacity: 0;
	animation: splash-trigger 1s cubic-bezier(.77, 0, .18, 1) 3s forwards;
}
@keyframes splash-trigger {
  0% { opacity: 0; }
  100% { opacity: 1; }
}
@media (prefers-reduced-motion: reduce) {
	body.is-splash .section1 { 
		animation: none;
		min-height: 0;
	}
	body.is-splash .section1 .menu__trigger {
		opacity: 1;
		animation: none;
	}
}
/* FIN SPLASH */

/* CARTE */
.carte.view {
	overflow: hidden;
}
.carte.view #carte-recherche-input {
	display: block;
	padding: calc(var(--gut)*.5) calc(var(--gut)*1);
	width: 100%;
	font-size: var(--font-m);
	background-color: var(--noir);
	margin: 0;
	color: var(--blanc);
}
.carte.view .infobulle .close-button {
	top: var(--gut);
	left: var(--gut);
	width: 40px;
	height: 40px;
	background-color: var(--blanc);
	color: var(--noir);
	border: var(--border) !important;
}
.carte.view .infobulle .close-button:hover {
	background-color: var(--coul1);
}
.carte.view .infobulle {
	top: 0;
	bottom: 0;
	right: 0;
	left: inherit;
	width: 25%;
	border: none;
	background-color: var(--blanc);
	color: var(--noir);
	display: block;
	transform: translateX(100%);
	transition: all .3s;
	padding: var(--gut);
	padding-top: calc(var(--gut)*3);
}
.carte.view .infobulle.open {	
	transform: translateX(0);
}
.carte.view .infobulle .lieu {
	font-size: var(--font-xl);
	line-height: 1;
	font-weight: 600;
	margin-bottom: 5px;
	color: var(--coul2);
}
.carte.view .infobulle .adresse {
	font-size: var(--font-l);
	line-height: 1;
	font-weight: 600;
	margin-bottom: var(--gut);
}
.carte.view .infobulle .group-entete {
	display: flex;
	align-items: center;
	gap: var(--gut);
	margin: 0 calc(var(--gut)*-1);
	background-color: var(--coul1);
	padding: calc(var(--gut)*.5) var(--gut);
	color: var(--coul2);
}
.carte.view .infobulle .group-entete .picto {
	filter: var(--filter-coul2);
	width: 50px;
}
.carte.view .infobulle .group-entete .titre {
	font-family: var(--font-titre);
	font-size: var(--font-xl);
	font-weight: 600;
	line-height: 1;
	margin-bottom: 5px;
}
.carte.view .infobulle .group-entete .artiste {
	font-weight: 600;
}
.carte.view .infobulle .views-row {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	padding: calc(var(--gut)*.25) 0;
	border-bottom: 1px solid var(--coul2);
}
.carte.view .infobulle .views-row .badge {
	margin-top: 10px;
}
.carte.view .infobulle .views-row time {
	font-weight: 600;
	border-bottom: 1px solid var(--gris);
	padding: 10px 0;
}
.carte.view .infobulle .views-row time:last-of-type {
	border: none;
}
.carte.view .infobulle .views-row .info {
	font-size: var(--font-s);
	border-bottom: 1px solid var(--gris);
	padding: 10px 0;
}
.carte.view .infobulle .views-row .info:not(:has(>*)) {
	display: none;
}
.carte.view .infobulle .views-row time span {
	font-weight: 400;
}
.carte.view .infobulle .views-row:last-child {
	border: none;
}
.carte.view .infobulle .views-row a.btn {
	margin-bottom: 10px;
}
@media print, screen and (max-width: 1023px) {
	.carte.view .infobulle {
		width: 100%;
	}
	.carte.view .infobulle .close-button {
		width: 30px;
		height: 30px;
	}
}
/* FIN CARTE */
