/* DEFAULTS */

.lister {
	display: flex;
	align-items: flex-start;
	flex-wrap: wrap;
	margin: 0 calc(-1 * var(--half-unit));
	font-size: 1rem;
}

.lister_sort {
	display: none;
}

.lister_sort-asc::after {
	content: " \2197";
}

.lister_sort-des::after {
	content: " \2198";
}

.lister_pagination {
	display: flex;
	width: calc(100% - var(--unit));
	height: var(--two-units);
	margin: 0 var(--half-unit);
	border-bottom: 1px solid currentColor;
	text-transform: uppercase;
}

.lister_page {
	flex: 0 1 0%;
	margin: 0 var(--half-unit);
	white-space: nowrap;
}

.lister_month {
	display: flex;
	flex-wrap: wrap;
	width: 100%;
	scroll-margin-top: var(--half-unit);
}

.lister_month > div:first-child {
	display: flex;
	justify-content: space-between;
	width: 100%;
	margin-top: calc(-1 * var(--half-unit));
	padding: var(--half-unit) calc(var(--half-unit) - 0.07em);
	position: sticky;
	top: var(--header-opened);
	z-index: 2;
	background-color: rgba(255, 255, 255, 0.9);
	-webkit-backdrop-filter: blur(4px);
	backdrop-filter: blur(4px);
	font-feature-settings: "case" 1, "tnum" 1;
	font-size: 5vw;
	line-height: 0.8;
	text-align: center;
	text-transform: uppercase;
}

.lister_month > div:first-child > a[href="#"] {
	color: transparent;
	pointer-events: none;
}

.lister_month > div:first-child > a:last-child {
	position: relative;
	top: 0.1em;
}

.event,
.publication,
.thumbnail {
	display: flex;
	align-items: flex-start;
	margin: 0 var(--half-unit);
	position: relative;
}

.event_link,
.publication_link {
	display: block;
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 1;
}

.event_illustration,
.publication_illustration {
	width: 100%;
	overflow: hidden;
	position: relative;
}

.event_image,
.publication_image {
	overflow: hidden;
	position: relative;
}

.event_excerpt,
.publication_excerpt {
	display: none;
	position: relative;
	font-size: 2rem;
	line-height: 1.125;
}

.event_informations,
.publication_informations {
	display: flex;
	width: 100%;
}

.event_title,
.event_subtitle::first-letter,
.event_date,
.event_book,
.event_place,
.event_fee::first-letter,
.event_notice::first-letter,
.publication_title,
.publication_author::first-letter,
.publication_buy,
.publication_date {
	font-feature-settings: "case" 1, "tnum" 1;
	text-transform: uppercase;
}

.event_place,
.event_place.button,
.event_address,
.event_address.button {
	display: none;
}

.publication_isbn {
	display: block;
}

.event_book {
	background-color: var(--accent);
	border-color: var(--accent-text);
	color: var(--accent-text);
}

.event_banner {
	visibility: hidden;
}

.event_prev,
.event_next,
.publication_prev,
.publication_next {
	display: flex;
	flex-wrap: wrap;
	align-content: flex-end;
	width: 100%;
	padding-top: var(--two-units);
	color: rgb(140, 140, 140);
}

.event_prev,
.publication_prev {
	justify-content: flex-end;
	text-align: right;
}

.event_prev::after,
.publication_prev::after {
	content: "\2199";
	display: block;
	width: 100%;
}

.event_next::after,
.publication_next::after {
	content: "\2198";
	display: block;
	width: 100%;
}

.event_prev:empty::after,
.event_next:empty::after,
.publication_prev:empty::after,
.publication_next:empty::after {
	display: none;
}

.publication_price::after {
	content: "€";
	margin-left: 0.2em;
}

/* OVERWRITES */

.lister a {
	text-decoration: none;
}

.lister_pagination > * {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 50%;
	position: relative;
}

.lister_pagination > :last-child {
	/* justify-content: flex-end; */
}

.lister_pagination > a:hover {
	color: var(--background);
}

.lister_pagination > a:hover::after {
	content: "";
	display: flex;
	align-items: center;
	padding: var(--half-unit) var(--unit);
	position: absolute;
	top: -1px;
	bottom: -1px;
	z-index: -1;
	background-color: var(--color);
}

.lister_pagination > a:first-child:hover::after {
	content: "\2199";
	justify-content: flex-start;
	padding-left: calc(var(--one-half-units) - 0.3rem);
	right: 0;
	left: calc(-1 * var(--three-units));
}

.lister_pagination > a:last-child:hover::after {
	content: "\2198";
	justify-content: flex-end;
	padding-right: calc(var(--one-half-units) - 0.3rem);
	right: calc(-1 * var(--three-units));
	left: 0;
}

.event--festival {
	color: var(--accent);
}

.publication--color {
	color: var(--accent);
}

.event_image:empty,
.publication_image:empty {
	display: none;
}

.event_image > picture,
.publication_image > picture {
	display: block;
	height: 100%;
}

.publication_image > picture + picture {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	visibility: hidden;
}

.event_image > img,
.publication_image > img {
	width: 100%;
	height: auto;
	position: absolute;
	top: 0;
	left: 0;
}

.event_image > picture > img,
.publication_image > picture > img {
	width: 100%;
	height: auto;
}

.event_image > picture.force-ratio > img,
.publication_image > picture.force-ratio > img {
	height: 100%;
}

.event_excerpt > div,
.publication_excerpt > div {
	margin-top: var(--unit);
	font-size: 1rem;
	line-height: var(--unit);
}

.event_excerpt > div:first-child,
.publication_excerpt > div:first-child {
	margin-top: 0;
}

.event_excerpt::before,
.publication_excerpt::before {
	content: "";
	display: block;
	height: var(--three-units);
	position: absolute;
	right: 0;
	bottom: 0;
	left: var(--half-unit);
	background: linear-gradient(
		to top,
		hsl(0, 0%, 0%) 0%,
		hsla(0, 0%, 0%, 0.987) 8.1%,
		hsla(0, 0%, 0%, 0.951) 15.5%,
		hsla(0, 0%, 0%, 0.896) 22.5%,
		hsla(0, 0%, 0%, 0.825) 29%,
		hsla(0, 0%, 0%, 0.741) 35.3%,
		hsla(0, 0%, 0%, 0.648) 41.2%,
		hsla(0, 0%, 0%, 0.55) 47.1%,
		hsla(0, 0%, 0%, 0.45) 52.9%,
		hsla(0, 0%, 0%, 0.352) 58.8%,
		hsla(0, 0%, 0%, 0.259) 64.7%,
		hsla(0, 0%, 0%, 0.175) 71%,
		hsla(0, 0%, 0%, 0.104) 77.5%,
		hsla(0, 0%, 0%, 0.049) 84.5%,
		hsla(0, 0%, 0%, 0.013) 91.9%,
		hsla(0, 0%, 0%, 0) 100%
	);
}

.event_excerpt::after,
.publication_excerpt::after {
	content: attr(data-more);
	display: block;
	margin-top: var(--unit);
	position: sticky;
	bottom: 0;
	left: var(--half-unit);
	font-size: 1rem;
}

.event_excerpt:empty::after,
.publication_excerpt:empty::after {
	margin-top: 0;
}

.thumbnail_illustration::after {
	content: "";
	display: block;
	width: 0;
	height: 3px;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 1;
	background-color: var(--accent);
}

.thumbnail_illustration.thumbnail_illustration--loading::after {
	width: 100%;
	transition: width 10s ease-in-out;
}

.thumbnail_illustration.thumbnail_illustration--loaded::after {
	width: 100%;
	transform: translateY(-100%);
	transition: width 0.5s ease-in-out, transform 0.25s 0.5s;
}

.event_illustration > .categories--event,
.event_illustration > .categories--place,
.publication_illustration > .publication_isbn,
.thumbnail_illustration > .categories {
	position: absolute;
	bottom: 0;
	left: 0;
	z-index: 1;
}

.event_illustration > .categories--place {
	top: 0;
	right: 0;
	bottom: auto;
	left: auto;
}

.event_illustration > .categories--event > .subcategories,
.event_illustration > .categories--place > .subcategories,
.publication_illustration > .publication_isbn,
.thumbnail_illustration > .categories {
	display: none;
}

.event_illustration > .categories--place > .category,
.event_illustration > .categories--place > .subcategories > .subcategory {
	margin-top: 0;
	margin-right: 0;
	margin-bottom: 1px;
	margin-left: 1px;
}

.publication--color > .publication_illustration > .publication_isbn {
	bottom: -1px;
	left: -1px;
}

.event_illustration > .event_place,
.publication_illustration > .publication_buy {
	display: none;
	position: absolute;
	top: 0;
	right: 0;
	z-index: 1;
}

.event_illustration > .event_place {
	max-width: 100%;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.publication--color > .publication_illustration > .publication_buy {
	top: -1px;
	right: -1px;
}

.publication_isbn > .button--transparent {
	margin-top: 1px;
	margin-right: 1px;
}

.publication--color > .publication_illustration > .publication_isbn > .button {
	margin-top: -1px;
	margin-right: -1px;
}

.publication_buy > .button--transparent {
	margin-bottom: 1px;
	margin-left: 1px;
}

.publication--color > .publication_illustration > .publication_buy > .button--transparent {
	margin-bottom: -1px;
	margin-left: -1px;
}

.publication--color > .publication_illustration > .publication_isbn > .button--transparent,
.publication--color > .publication_illustration > .publication_buy > .button--transparent {
	background-color: var(--background);
	border-color: var(--accent);
}

.publication--color > .publication_illustration > .publication_isbn > .button--transparent:hover,
.publication--color > .publication_illustration > .publication_buy > .button--transparent:hover {
	background-color: var(--accent);
	color: var(--accent-text);
}

.thumbnail_illustration > iframe {
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	opacity: 0;
	transition: opacity 0.5s ease-in-out;
}

.thumbnail:hover > .thumbnail_illustration > iframe.show {
	opacity: 1;
	/* transition-delay: 0.5s; */
}

.event_illustration > .event_image--empty::before,
.publication_illustration > .publication_image--empty::before {
	content: "";
	display: block;
	padding-top: 66.666%;
	background-color: var(--color);
}

.event_banner > .event_marquee {
	display: flex;
	width: 100%;
	height: 100%;
	justify-content: center;
}

.event_banner > .event_marquee.is-init {
	justify-content: flex-start;
}

.event_banner > .event_marquee > div {
	display: flex !important;
	align-items: center;
	height: 100%;
	padding: 0 var(--quarter-unit);
	white-space: nowrap;
}

.event_banner > .event_marquee > div > .category,
.marquee3k__wrapper > div > .category {
	margin-left: var(--half-unit);
	pointer-events: none;
}

.event_dates > .event_date,
.publication_dates > .publication_date {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: var(--half-unit);
	justify-content: space-between;
	/* height: var(--two-units); */
	padding: var(--half-unit) 0 calc(var(--half-unit) - 1px);
	overflow: hidden;
	border-bottom: 1px solid var(--color);
	/* line-height: var(--button); */
}

.event_dates > .event_date--past {
	color: rgb(140, 140, 140);
}

/* .event_dates > a.event_date,
.event_dates > .event_date:hover,
.publication_dates > a.publication_date {
	flex-wrap: nowrap;
} */

.event_dates > .event_date:hover,
.publication_dates > .publication_date:hover {
	color: inherit;
}

.event_dates > .event_date[title]:not([title=""])::after,
.publication_dates > .publication_date[title]:not([title=""])::after {
	order: 2;
	content: attr(title);
	width: 100%;
	/* margin-top: var(--button-margin); */
	/* padding: var(--half-unit) 0; */
	/* line-height: 1.125; */
	text-transform: none;
}

/* .event_dates > a.event_date[title]:not([title=""])::after,
.publication_dates > a.publication_date[title]:not([title=""])::after {
	padding-top: var(--button-margin);
} */

.event_dates > a.event_date::before,
.publication_dates > a.publication_date::before {
	order: 1;
	content: attr(data-label);
	display: flex;
	align-items: center;
	justify-content: center;
	height: var(--button);
	margin: calc(-1 * (var(--half-unit) - var(--button-margin))) 0;
	padding: 0 1em;
	border: 1px solid var(--color);
	font-size: 0.75rem;
}

.event_dates > a.event_date:hover::before,
.publication_dates > a.publication_date:hover::before {
	background-color: var(--accent);
	border-color: var(--accent-text);
	color: var(--accent-text);
}

/* .event_dates > .event_date > div,
.publication_dates > .publication_date > div {
	margin-right: var(--half-unit);
} */

.event_dates > a.event_date > span,
.publication_dates > a.publication_date > span {
	margin-left: auto;
}

.event_dates > .event_fee {
	display: flex;
	flex-wrap: wrap;
	gap: 0 var(--half-unit);
	justify-content: space-between;
	padding: var(--half-unit) 0;
	/* line-height: var(--button); */
}

.publication_dates > .publication_price {
	padding: var(--half-unit) 0;
	/* line-height: var(--button); */
}

.event_dates > .event_notice {
	padding-top: var(--half-unit);
	color: rgb(140, 140, 140);
	/* font-size: 0.75rem; */
}

.event_dates > .event_fee + .event_notice {
	padding-top: 0;
}

.event_informations > .event_title > .event_place {
	display: none;
}

.content_left .event_next,
.content_right .event_prev,
.content_left .publication_next,
.content_right .publication_prev {
	display: none;
}

.content_details .event_notice {
	padding-bottom: var(--half-unit);
}

.content_details .event_dates > :last-of-type:not(.event_date),
.content_details .publication_dates > :last-of-type:not(.publication_date) {
	border-bottom: 1px solid var(--color);
}

/* MODIFIERS */

/* Event mode : Homepage */

.lister--homepage {
	align-items: stretch;
	/* (header + search) + margin */
	min-height: calc(var(--window-height) - var(--header-opened) - var(--two-units) * 2);
	margin: var(--two-units) 0 0;
	position: relative;
}

.lister--homepage.lister--news {
	min-height: calc(
		var(--window-height) - var(--header-opened) - var(--two-units) - (1rem + 1.4vw) * 0.75 -
			var(--two-units) * 2
	);
}

.lister--homepage > .event {
	align-items: stretch;
	width: 100%;
	margin: 0;
	position: static;
}

.lister--homepage > div.event {
	cursor: default;
}

.lister--homepage > .event > .event_image {
	position: absolute;
	top: 0;
	right: calc(50% + var(--unit));
	bottom: 0;
	left: 0;
}

.lister--homepage > .event > .event_image::after {
	content: "";
	display: block;
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	/* background-color: var(--accent); */
	/* mix-blend-mode: color; */
}

.lister--homepage:hover > .event:hover > .event_image {
	z-index: 11 !important;
}

.lister--homepage > .event > .event_image > picture {
	/* display: none; */
	visibility: hidden;
	/* mix-blend-mode: luminosity; */
}

.lister--homepage > .event:first-of-type > .event_image > picture {
	/* display: block; */
	visibility: visible;
}

.lister--homepage:hover > .event:first-of-type > .event_image > picture {
	/* display: none; */
	visibility: hidden;
}

.lister--homepage:hover > .event:hover > .event_image > picture {
	/* display: block; */
	visibility: visible;
}

.lister--homepage > .event > .event_image > picture > img {
	height: 100%;
	/* filter: grayscale(1); */
	/* mix-blend-mode: hard-light; */
}

.lister--homepage > .event > .event_informations {
	align-items: center;
	width: calc(50% - var(--unit));
	min-height: var(--two-units);
	margin-left: calc(50% + var(--unit));
	padding: var(--button-margin) 0;
	position: relative;
}

.lister--homepage > .event > .event_informations {
	border-top: 1px solid currentColor;
}

.lister--homepage > .event--festival + .event > .event_informations {
	border-top-color: var(--accent);
}

.lister--homepage > .event:last-child > .event_informations {
	border-bottom: 1px solid currentColor;
}

.lister--homepage:hover > .event:hover > .event_informations {
	color: transparent;
	border-color: transparent;
}

.lister--homepage:hover > .event:hover + .event > .event_informations {
	border-top-color: transparent;
}

.lister--homepage > .event > .event_informations > .event_title,
.lister--homepage > .event > .event_informations > .event_subtitle {
	display: flex;
	align-items: center;
	padding-right: var(--half-unit);
	overflow: hidden;
}

.lister--homepage > .event > .event_informations > .event_title > span,
.lister--homepage > .event > .event_informations > .event_subtitle > span {
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.lister--homepage > .event > .event_informations > .event_subtitle {
	flex: 1 1 10em;
}

.lister--homepage > .event > .event_informations > .event_subtitle:empty {
	flex-basis: 0;
}

.lister--homepage > .event > .event_informations > .event_place {
	display: flex;
}

.lister--homepage > .event > .event_informations > .event_banner {
	overflow: hidden;
	position: absolute;
	right: calc(-1 * var(--three-units));
	top: -1px;
	left: calc(-100% - var(--three-units) - var(--two-units));
	bottom: -1px;
	z-index: 40;
	background-color: rgba(240, 240, 240, 0.8);
	color: var(--color);
}

body.invert .lister--homepage > .event > .event_informations > .event_banner {
	background-color: rgba(10, 10, 10, 0.8);
}

.lister--homepage:hover > .event:hover > .event_informations > .event_banner {
	visibility: visible;
}

.lister--homepage > .event > .event_informations > .event_banner > .event_book {
	position: absolute;
	right: var(--three-units);
	top: 50%;
	transform: translateY(-50%);
}

/* Event mode : Images */

.lister--images {
	padding-top: var(--half-unit);
}

.lister--images:not(.lister--pagination) {
	margin-bottom: calc(-1 * var(--two-units));
}

.selection_title + .lister--images:not(.lister--pagination) {
	margin-bottom: 0;
}

.lister--images > .lister_pagination {
	border-top: 1px solid currentColor;
}

.lister--images .event,
.lister--images > .publication {
	width: calc(33.333% - var(--unit));
	flex-wrap: wrap;
	margin-top: var(--half-unit);
	margin-bottom: var(--two-units);
}

.lister--images .event:hover,
.lister--images > .publication:not(.publication--library):hover {
	color: var(--accent);
}

.lister--images .event[data-now]:hover {
	color: var(--now);
}

.lister--images .event::before,
.lister--images > .publication::before {
	content: "";
	display: block;
	width: 100%;
	height: 1px;
	position: absolute;
	top: calc(-1 * var(--half-unit));
	background-color: currentColor;
}

.lister--images .event--festival::before {
	background-color: var(--accent);
}

.lister--images > .publication--color::before {
	background-color: var(--accent);
}

.lister--images .event[data-now]::before {
	background-color: var(--now);
}

.lister--images .event[data-now]::after {
	display: flex;
	align-items: center;
	justify-content: center;
	content: attr(data-now);
	padding: calc((var(--button) - 0.75rem) / 2) 1em;
	position: absolute;
	top: 0;
	background-color: var(--now);
	color: var(--now-text);
	font-size: 0.75rem;
	line-height: 1;
	text-transform: uppercase;
	white-space: nowrap;
	user-select: none;
}

.lister--images > .publication--library > .publication_link {
	pointer-events: none;
}

.lister--images .event:not(.thumbnail--media) > .event_illustration,
.lister--images > .publication > .publication_illustration {
	margin-bottom: var(--half-unit);
	background-color: currentColor;
	background-image: url("../assets/logo-white.svg");
	background-position: center;
	background-repeat: no-repeat;
}

.lister--images .thumbnail--media > .event_illustration {
	margin-bottom: var(--half-unit);
}

.lister--images .event > .event_illustration::before {
	content: "";
	display: block;
	width: 100%;
	padding-top: 100%;
}

.lister--images .thumbnail--media > .event_illustration::before {
	padding-top: 56.25%;
}

.lister--images .event--festival > .event_illustration::before {
	background-color: var(--accent);
}

.lister--images .event > .event_illustration > .event_image {
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
}

.lister--images .event > .event_illustration > .event_image > picture > img {
	height: 100%;
}

.lister--images > .publication--color > .publication_illustration {
	background-color: var(--accent);
	border: 1px solid var(--accent);
}

.lister--images > .publication--color > .publication_illustration > .event_image--empty::before {
	background-color: var(--accent);
}

/* .lister--images .event > .event_illustration > .event_image > picture,
.lister--images > .publication > .publication_illustration > .publication_image > picture {
	transition: transform 30s linear;
} */

/* .lister--images .event:hover > .event_illustration > .event_image > picture,
.lister--images > .publication:hover > .publication_illustration > .publication_image > picture {
	transform: scale(1.1);
} */

.lister--images
	> .publication:hover
	> .publication_illustration
	> .publication_image
	> picture
	+ picture {
	visibility: visible;
}

.lister--images .event:hover > .event_illustration > .categories--event > .subcategories,
.lister--images .event:hover > .event_illustration > .categories--place > .subcategories,
.lister--images > .publication:hover > .publication_illustration > .publication_isbn,
.lister--images > .thumbnail:hover > .thumbnail_illustration > .categories {
	display: flex;
}

.lister--images .event:hover > .event_illustration > .event_place,
.lister--images > .publication:hover > .publication_illustration > .publication_buy {
	display: block;
}

.lister--images .event > .event_informations,
.lister--images > .publication > .publication_informations {
	flex-wrap: wrap;
	justify-content: space-between;
}

.lister--images .event > .event_informations {
	align-content: flex-start;
	height: calc(1em * 3 * 1.125);
	overflow: hidden;
}

.lister--images .event > .event_informations > .event_title,
.lister--images .event > .event_informations > .event_subtitle,
.lister--images > .publication > .publication_informations > .publication_title,
.lister--images > .publication > .publication_informations > .publication_author,
.lister--images > .publication > .publication_informations > .publication_publisher {
	width: 100%;
}

.lister--images .event > .event_informations > .event_subtitle:empty,
.lister--images > .publication > .publication_informations > .publication_author:empty {
	display: none;
}

.lister--images .event > .event_informations > .category,
.lister--images > .publication > .publication_informations > .category {
	display: none;
}

.lister--images .event > .event_informations > .event_date,
.lister--images > .publication > .publication_informations > .publication_title {
	order: -2;
	flex: 1;
	padding-right: var(--half-unit);
}

.lister--images .event > .event_informations > .event_year,
.lister--images > .publication > .publication_informations > .publication_year {
	order: -1;
}

/* Event mode : List */

.content_center .lister--list {
	margin-bottom: -1px;
}

.selection_title + .lister--list {
	margin-top: var(--half-unit);
}

.lister--list > .lister_sort {
	display: flex;
	align-items: center;
	width: calc(100% - var(--unit));
	height: calc(var(--three-units) - 1px);
	margin: 0 var(--half-unit);
	position: sticky;
	top: var(--header-opened);
	z-index: 2;
	border-bottom: 1px solid currentColor;
	text-transform: uppercase;
}

.selection_title + .lister--list > .lister_sort {
	top: calc(var(--header-opened) - 1px);
	border-top: 1px solid currentColor;
}

/* .lister--no-sort > .lister_sort {
	display: none;
} */

.lister--list > .lister_sort::before {
	content: "";
	position: absolute;
	top: -1px;
	right: calc(-1 * var(--three-units));
	bottom: 0;
	left: calc(-1 * var(--three-units));
	z-index: -1;
	background-color: var(--background);
}

.selection_title + .lister--list > .lister_sort::before {
	top: 0px;
}

.lister--list > .lister_sort > .lister_sort-title {
	flex: 0 0 calc(100% - 21.5rem);
}

.lister--list.lister--publications > .lister_sort > .lister_sort-title,
.lister--list.lister--publications > .lister_sort > .lister_sort-author {
	flex: 0 0 calc(25% + var(--quarter-unit));
}

.lister--list.lister--publications > .lister_sort > .lister_sort-publisher {
	flex: 0 0 calc(50% - 11rem - var(--half-unit));
}

/* .lister--list > .lister_sort > .lister_sort-category {
	flex: 0 0 7rem;
	text-align: center;
} */

.lister--list > .lister_sort > .lister_sort-date {
	flex: 0 0 21.5rem;
	text-align: right;
}

.lister--list.lister--publications > .lister_sort > .lister_sort-date {
	flex: 0 0 11rem;
	text-align: right;
}

.lister--list > .event,
.lister--list > .publication {
	align-items: stretch;
	width: calc(100% - var(--unit));
	height: var(--two-units);
	min-height: var(--two-units);
	max-height: var(--two-units);
	border-bottom: 1px solid currentColor;
	transition: height 0.5s cubic-bezier(0.08, 0.82, 0.17, 1),
		min-height 0.5s cubic-bezier(0.08, 0.82, 0.17, 1),
		max-height 0.5s cubic-bezier(0.08, 0.82, 0.17, 1);
}

.lister--list:not(.search_results) > .event:first-child,
.lister--list:not(.search_results) > .publication:first-child {
	height: calc(var(--two-units) + 1px);
	max-height: calc(var(--two-units) + 1px);
	border-top: 1px solid currentColor;
}

.lister--list > .event::before,
.lister--list > .publication::before {
	content: "";
	width: 100%;
	height: 1px;
	position: absolute;
	top: -1px;
	left: 0;
}

.lister--list > .lister_sort + .event:not(.event--festival)::before {
	background-color: var(--color);
}

.lister--list > .event--festival::before {
	background-color: var(--accent);
}

.lister--list > .lister_sort + .publication::before {
	background-color: currentColor;
}

.lister--list > .event:hover,
.lister--list > .publication:hover {
	z-index: 1;
	color: var(--background);
	border-color: var(--color);
}

.lister--list > .publication--color:hover {
	color: var(--accent-text);
	border-color: var(--accent);
}

.lister--list > .event--highlight,
.lister--list > .publication--highlight {
	z-index: 1;
	color: var(--accent-text);
	border-color: var(--accent);
}

.lister--list > .publication--color::before {
	background-color: var(--accent);
}

.lister--list > .event:hover::before,
.lister--list > .publication:hover::before {
	display: none;
}

.lister--list > .event--highlight + .event--highlight::before,
.lister--list > .publication--highlight + .publication--highlight::before {
	background-color: white;
}

.lister--list > .event:hover::after,
.lister--list > .event--highlight::after,
.lister--list > .publication:hover::after,
.lister--list > .publication--highlight::after {
	content: "\2198";
	display: flex;
	align-items: flex-end;
	padding: var(--half-unit) var(--unit) calc(var(--half-unit) + 1px);
	position: absolute;
	top: -1px;
	right: calc(-1 * var(--three-units));
	bottom: -1px;
	left: calc(-1 * var(--three-units));
	z-index: -1;
	background-color: var(--color);
}

.lister--list > .publication--color:hover::after {
	background-color: var(--accent);
}

.lister--list > .event--highlight::after,
.lister--list > .publication--highlight::after {
	content: "";
	background-color: var(--accent);
}

.content_center .lister--list > .event:hover::after,
.content_center .lister--list > .publication:hover::after {
	content: "";
	left: calc(-1 * var(--button-margin));
}

.lister--list > .event > .event_illustration,
.lister--list > .publication > .publication_illustration {
	display: none;
}

.lister--list > .event > .event_informations,
.lister--list > .publication > .publication_informations {
	align-items: center;
}

.lister--list > .event > .event_informations > .event_title,
.lister--list > .event > .event_informations > .event_subtitle {
	flex: 1 1 calc((100% - 21.5rem) / 2);
	padding-right: var(--half-unit);
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.lister--list > .event > .event_informations > .event_title > span {
	line-height: var(--button);
}

.lister--list > .event:hover > .event_informations > .event_title > .event_place {
	flex: 0 1 auto;
	float: left;
	display: block;
	max-width: 50%;
	margin-right: var(--half-unit);
	overflow: hidden;
	position: relative;
	z-index: 1;
	text-overflow: ellipsis;
}

.lister--list > .event:hover > .event_informations > .event_title > .event_place:hover {
	max-width: none;
}

.lister--list > .publication > .publication_informations > .publication_title,
.lister--list > .publication > .publication_informations > .publication_author,
.lister--list > .publication > .publication_informations > .publication_publisher {
	flex: 1 1 calc(25% + var(--quarter-unit));
	padding-right: var(--half-unit);
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.lister--list > .event > .event_informations > .event_subtitle:empty,
.lister--list > .publication > .publication_informations > .publication_author:empty,
.lister--list > .publication > .publication_informations > .publication_publisher:empty {
	display: none;
}

.lister--list > .publication > .publication_informations > .publication_publisher {
	flex: 0 1 calc(50% - 11rem - var(--half-unit));
}

.lister--list > .event > .event_informations > .category,
.lister--list > .event > .event_informations > .event_place,
.lister--list > .publication > .publication_informations > .category {
	flex: 0 0 7rem;
	transform: translateX(50%) translateX(-3.5rem);
}

.lister--list > .event > .event_informations > .event_place {
	display: block;
	z-index: 1;
}

.lister--list > .event > .event_informations > .event_place + .category,
.lister--list > .event > .event_informations > .event_place + .event_address + .category {
	display: none;
}

.lister--list > .event > .event_informations > .category,
.lister--list > .publication > .publication_informations > .category {
	margin: 0;
	position: relative;
	z-index: 1;
}

.lister--list > .event > .event_informations > .event_title > .event_place:hover,
.lister--list > .event > .event_informations > .event_place:hover,
.lister--list > .event > .event_informations > .category:hover,
.lister--list > .publication > .publication_informations > .category:hover {
	background-color: var(--background);
	border-color: var(--background);
	color: var(--color);
}

.lister--list > .event > .event_informations > .event_date {
	flex: 0 0 10.5rem;
	text-align: right;
}

.lister--list > .event > .event_informations > .event_year,
.lister--list.lister--publications > .publication > .publication_informations > .publication_year {
	flex: 0 0 4rem;
	text-align: right;
}

.lister--list > .publication > .publication_informations > .publication_year {
	flex: 0 0 14.5rem;
	text-align: right;
}

.lister--list > .event > .event_informations > .event_year > span,
.lister--list > .publication > .publication_informations > .publication_year > span {
	display: none;
}

/* Event mode : Full */

.event--full,
.publication--full {
	display: block;
	min-height: calc(var(--window-height) - var(--header-opened));
	margin: 0 calc(-1 * var(--three-units)) calc(-1 * var(--two-units));
}

.event--full > .event_image,
.publication--full > .publication_image {
	width: 100%;
	height: calc(var(--window-height) - var(--header-opened) - 2 * var(--three-units));
	z-index: -1;
}

.event--full > .event_image > picture > img,
.publication--full > .publication_image > picture > img {
	height: 100%;
}

.event--full > .content,
.publication--full > .content {
	margin: 0;
	padding: var(--two-units);
	background-color: rgba(255, 255, 255, 0.9);
	-webkit-backdrop-filter: blur(4px);
	backdrop-filter: blur(4px);
}

body.invert .event--full > .content,
body.invert .publication--full > .content {
	background-color: rgba(0, 0, 0, 0.9);
}

@supports (position: sticky) {
	.event--full > .event_image,
	.publication--full > .publication_image {
		position: sticky;
		top: var(--header-opened);
		height: calc(var(--window-height) - var(--header-opened));
	}

	.event--full > .event_image + .content,
	.publication--full > .publication_image + .content {
		margin-top: calc(-2 * var(--three-units));
	}
}

.event--full > .event_image:empty + .content,
.publication--full > .publication_image:empty + .content {
	margin-top: 0;
	background-color: transparent;
}

.event--full > .content > .content_left,
.event--full > .content > .content_full,
.event--full > .content > .content_center,
.event--full > .content > .content_right,
.publication--full > .content > .content_left,
.publication--full > .content > .content_full,
.publication--full > .content > .content_center,
.publication--full > .content > .content_right {
	padding-top: var(--two-units);
}

.event--full .content_details > .categories--event {
	padding: 0 1px calc(var(--button-margin) * 2) 0;
	border-bottom: 1px solid currentColor;
}

.event--full .content_details > .categories--event > .category {
	flex: 1;
}

.event--full .content_details > .categories--event > .category + .category {
	margin-left: var(--three-quarter-unit);
}

.event--full .content_details > .categories--event > .subcategory {
	flex: 1000;
}

.event--full .content_details > .event_dates,
.publication--full .content_details > .publication_dates {
	display: none;
}

/* @media (prefers-color-scheme: dark) {
	.lister--homepage > .event > .event_informations > .event_banner {
		background-color: rgba(30, 30, 30, 0.8);
	}

	.event--full > .content,
	.publication--full > .content {
		background-color: rgba(30, 30, 30, 0.9);
	}
} */

@media (min-width: 1601px) {
	.lister--images .event,
	.lister--images > .publication {
		width: calc(25% - var(--unit));
	}
}

@media (min-width: 1920px) {
	.lister--images .event,
	.lister--images > .publication {
		width: calc(20% - var(--unit));
	}
}

@media (min-width: 2560px) {
	.lister--images .event,
	.lister--images > .publication {
		width: calc(16.666% - var(--unit));
	}
}

/* @media (max-width: 1440px) {
	.event_date span {
		display: none;
	}
} */

@media (max-width: 1279px) {
	.event--full .content_details > .event_dates,
	.publication--full .content_details > .publication_dates {
		display: block;
	}

	.event--full .content_left .event_prev,
	.event--full .content_left .event_next,
	.publication--full .content_left .publication_prev,
	.publication--full .content_left .publication_next {
		width: 50%;
	}

	.event--full .content_left .event_prev,
	.publication--full .content_left .publication_prev {
		justify-content: flex-start;
		padding-right: var(--half-unit);
		text-align: left;
	}

	.event--full .content_left .event_next,
	.publication--full .content_left .publication_next {
		display: flex;
		justify-content: flex-end;
		padding-left: var(--half-unit);
		text-align: right;
	}
}

@media (max-width: 1023px) {
	.lister_month > div:first-child {
		font-size: 7.5vw;
	}

	.lister--list > .lister_sort::before {
		right: calc(-1 * var(--unit));
		left: calc(-1 * var(--unit));
	}

	.lister--list > .lister_sort > .lister_sort-title {
		flex-basis: calc(100% - 18rem);
	}

	.lister--list.lister--publications > .lister_sort > .lister_sort-title,
	.lister--list.lister--publications > .lister_sort > .lister_sort-author {
		flex-basis: calc((100% - 10.5rem) / 2);
	}

	.lister--list.lister--publications > .lister_sort > .lister_sort-publisher {
		display: none;
	}

	.lister--list > .lister_sort > .lister_sort-date {
		flex-basis: 18rem;
	}

	.lister--images {
		padding-top: 0;
		margin-top: -1px;
	}

	#selection + .lister--images,
	.selection_title + .lister--images {
		padding-top: var(--half-unit);
	}

	.lister--images:not(.lister--pagination) {
		margin-bottom: calc(-1 * var(--unit));
	}

	.selection_title + .lister--images:not(.lister--pagination) {
		margin-bottom: 0;
	}

	.lister--images .event,
	.lister--images > .publication {
		width: calc(50% - var(--unit));
		margin-bottom: var(--unit);
	}

	.lister_pagination > a:first-child:hover::after {
		content: "";
		left: calc(-1 * var(--unit));
	}

	.lister_pagination > a:last-child:hover::after {
		content: "";
		right: calc(-1 * var(--unit));
	}

	.lister--list > .event:hover::after,
	.lister--list > .publication:hover::after {
		content: "";
		right: calc(-1 * var(--unit));
		left: calc(-1 * var(--unit));
	}

	.lister--list > .event > .event_informations > .event_subtitle {
		display: none;
	}

	.content_center .lister--list > .event > .event_informations > .category,
	.content_center .lister--list > .publication > .publication_informations > .category {
		display: none;
	}

	.lister--list > .event > .event_informations > .event_date {
		flex-basis: 10rem;
	}

	.lister--list > .event > .event_informations > .event_year {
		flex-basis: 1.3rem;
		display: flex;
		justify-content: flex-end;
		margin-left: 0.2em;
		overflow: hidden;
	}

	.lister--list > .publication > .publication_informations > .publication_title,
	.lister--list > .publication > .publication_informations > .publication_author {
		flex-basis: calc((100% - 10.5rem) / 2);
	}

	.lister--list > .publication > .publication_informations > .publication_publisher {
		display: none;
	}

	.lister--homepage {
		min-height: calc(var(--window-height) - var(--header-opened) - var(--unit) * 2);
		margin-top: var(--unit);
	}

	.lister--homepage.lister--news {
		min-height: calc(
			var(--window-height) - var(--header-opened) - var(--two-units) - (1rem + 1.4vw) * 0.75 -
				var(--unit) * 2
		);
	}

	.lister--homepage > .event > .event_image {
		right: calc(50% + var(--half-unit));
	}

	.lister--homepage > .event > .event_informations {
		width: calc(50% - var(--half-unit));
		margin-left: calc(50% + var(--half-unit));
	}

	.lister--homepage > .event > .event_informations > .event_title {
		flex: 1 1 auto;
	}

	.lister--homepage > .event > .event_informations > .event_subtitle {
		display: none;
	}

	.lister--homepage > .event > .event_informations > .event_banner {
		right: calc(-1 * var(--unit));
		left: calc(-100% - var(--two-units));
	}

	.lister--homepage > .event > .event_informations > .event_banner > .event_book {
		right: var(--unit);
	}

	.event--full,
	.publication--full {
		margin: 0 calc(-1 * var(--unit)) calc(-1 * var(--unit));
	}

	.event--full > .content,
	.publication--full > .content {
		padding: var(--two-units) var(--half-unit) var(--unit);
	}
}

@media (max-width: 768px) {
	.event_date span {
		display: inline;
	}

	.event--full .content_right .event_prev,
	.event--full .content_right .event_next,
	.publication--full .content_right .publication_prev,
	.publication--full .content_right .publication_next {
		width: 50%;
		padding-top: 0;
	}

	.event--full .content_right .event_prev,
	.publication--full .content_right .publication_prev {
		display: flex;
		justify-content: flex-start;
		padding-right: var(--half-unit);
		text-align: left;
	}

	.event--full .content_right .event_next,
	.publication--full .content_right .publication_next {
		justify-content: flex-end;
		padding-left: var(--half-unit);
		text-align: right;
	}

	.event_excerpt,
	.publication_excerpt {
		font-size: 1.5rem;
	}

	.content_center .lister--list > .event:hover::after,
	.content_center .lister--list > .publication:hover::after {
		left: calc(-1 * var(--unit));
	}

	.content_center .lister--list > .event > .event_informations > .category,
	.content_center .lister--list > .publication > .publication_informations > .category {
		display: flex;
	}
}

@media (max-width: 600px) {
	.lister_month > div:first-child {
		font-size: 10vw;
	}

	.lister--images .event,
	.lister--images > .publication {
		width: calc(100% - var(--unit));
	}

	.lister--list > .lister_sort > .lister_sort-title,
	.lister--list > .lister_sort > .lister_sort-date,
	.lister--list.lister--publications > .lister_sort > .lister_sort-title {
		flex: 1 1 auto;
	}

	.lister--list.lister--publications > .lister_sort > .lister_sort-author {
		display: none;
	}

	.event_excerpt::before,
	.publication_excerpt::before {
		display: none;
	}

	.lister--list > .event > .event_informations > .event_place {
		display: none;
	}

	.lister--list > .event > .event_informations > .event_date {
		flex: 0 0 auto;
		white-space: nowrap;
	}

	.lister--list > .publication > .publication_informations > .publication_author {
		display: none;
	}

	.lister--list > .event > .event_informations > .category,
	.lister--list > .publication > .publication_informations > .category,
	.content_center .lister--list > .event > .event_informations > .category,
	.content_center .lister--list > .publication > .publication_informations > .category {
		display: none;
	}
}

@media (orientation: portrait) {
	.lister--homepage {
		display: block;
		margin-bottom: calc(-1 * var(--unit));
	}

	.lister--homepage:first-child {
		margin-top: -1px;
	}

	.lister--homepage > .event {
		flex-wrap: wrap;
		padding-top: var(--half-unit);
		border-top: 1px solid var(--color);
	}

	.lister--homepage > .event > .event_image {
		position: relative;
		top: auto;
		right: auto;
		bottom: auto;
		left: auto;
		background-color: currentColor;
		background-image: url("../assets/logo-white.svg");
		background-position: center;
		background-repeat: no-repeat;
	}

	.lister--homepage > .event > .event_image::after {
		position: static;
		padding-top: 56.25%;
	}

	.lister--homepage > .event > .event_image,
	.lister--homepage > .event > .event_image > picture {
		width: 100%;
	}

	.lister--homepage > .event > .event_image > picture {
		position: absolute;
		top: 0;
		left: 0;
	}

	.lister--homepage:hover > .event:first-of-type > .event_image > picture,
	.lister--homepage > .event > .event_image > picture {
		visibility: visible;
	}

	.lister--homepage > .event > .event_informations {
		width: 100%;
		margin: var(--half-unit) 0;
		border-top: none;
	}

	/* .lister--homepage > .event > .event_image:empty + .event_informations {
		margin-top: 0;
	} */

	.lister--homepage > .event:last-child > .event_informations {
		border-bottom: none;
	}

	.lister--homepage > .event > .event_informations > .event_title,
	.lister--homepage > .event > .event_informations > .event_subtitle,
	.lister--homepage > .event > .event_informations > .event_place,
	.lister--homepage > .event > .event_informations > .category {
		display: none;
	}

	.lister--homepage > .event > .event_informations > .event_banner {
		visibility: visible;
		background-color: transparent;
	}
}
