@charset "UTF-8";
@font-face {
  font-family: "source";
  src: url("../fonts/source-code/SourceCodePro-VariableFont_wght.ttf");
  font-weight: 300;
  font-style: normal;
}
@font-face {
  font-family: "source";
  src: url("../fonts/source-code/SourceCodePro-Italic-VariableFont_wght.ttf");
  font-weight: 300;
  font-style: italic;
}
@font-face {
  font-family: "hanken";
  src: url("../fonts/hanken-grotesk/static/HankenGrotesk-Regular.ttf");
  font-style: normal;
}
@font-face {
  font-family: "es-build";
  src: url("../fonts/es-build/woff2/ESBuild-Regular.woff2") format("woff2"), url("../fonts/es-build/woff/ESBuild-Regular.woff") format("woff");
  font-style: normal;
}
@font-face {
  font-family: "es-build";
  src: url("../fonts/es-build/woff2/ESBuild-Italic.woff2") format("woff2"), url("../fonts/es-build/woff/ESBuild-Italic.woff") format("woff");
  font-style: italic;
}
@font-face {
  font-family: "hanken";
  src: url("../fonts/hanken-grotesk/static/HankenGrotesk-Italic.ttf");
  font-style: italic;
}
@font-face {
  font-family: "spectral";
  src: url("../fonts/Spectral/Spectral-Light.ttf");
  font-style: normal;
}
@font-face {
  font-family: "spectral";
  src: url("../fonts/Spectral/Spectral-LightItalic.ttf");
  font-style: italic;
}
:root {
  --font-family: "source";
  --font-size: 15px;
  --line-height: 21px;
  --header-height: calc(var(--line-height) * 3);
  --logo-width: calc(var(--line-height) * 2.5);
  --left-width: calc(var(--line-height) * 28);
  --right-width: calc(100% - var(--left-width));
  --article-width: calc(var(--left-width) * 2);
  --viewer-width: 0;
  --text-transform: uppercase;
  --back-color: #FFF;
  --text-back-color: #000;
  --hover-color: #E8E8E8;
  --text-hover-color: #000;
  --select-color: lightgrey;
  --text-select-color: #000;
  --main-page-color: #F5F5F5;
  --text-main-page-color: #000;
  --text-cursor-selection-color: #000;
  --cursor-selection-color: #ADD8E6;
}

html {
  scroll-behavior: smooth;
}

::selection {
  color: var(--text-cursor-selection-color);
  background-color: var(--cursor-selection-color);
}

.logo:not(#moving-logo) {
  padding: var(--line-height);
}

.logo {
  position: fixed;
  right: 0;
  bottom: 0;
  background: var(--back-logo-color);
  z-index: 999;
}
.logo img {
  max-width: calc(var(--line-height) * 6);
}

.text {
  position: relative;
  padding: var(--line-height);
  width: var(--article-width);
}

body.blue #credits a,
body.blue .text a,
body.blue .intro a,
body.blue .page-intro a,
body.blue .content a {
  color: blue;
  text-decoration: none;
}

body.blue nav a:not(.current-page) {
  color: blue;
}

.text a,
.intro a,
.page-intro a,
.content a {
  text-decoration: underline;
  text-underline-offset: 2.5px;
  color: inherit;
}
.text em,
.intro em,
.page-intro em,
.content em {
  font-style: italic;
}
.text p, .text ul, .text ol, .text blockquote,
.intro p,
.intro ul,
.intro ol,
.intro blockquote,
.page-intro p,
.page-intro ul,
.page-intro ol,
.page-intro blockquote,
.content p,
.content ul,
.content ol,
.content blockquote {
  max-width: calc(var(--line-height) * 36);
}
.text figure:not(:last-child) img, .text p:not(:last-child), .text ul:not(:last-child), .text ol:not(:last-child), .text blockquote:not(:last-child),
.intro figure:not(:last-child) img,
.intro p:not(:last-child),
.intro ul:not(:last-child),
.intro ol:not(:last-child),
.intro blockquote:not(:last-child),
.page-intro figure:not(:last-child) img,
.page-intro p:not(:last-child),
.page-intro ul:not(:last-child),
.page-intro ol:not(:last-child),
.page-intro blockquote:not(:last-child),
.content figure:not(:last-child) img,
.content p:not(:last-child),
.content ul:not(:last-child),
.content ol:not(:last-child),
.content blockquote:not(:last-child) {
  margin-bottom: var(--line-height);
}
.text figure:last-child img,
.intro figure:last-child img,
.page-intro figure:last-child img,
.content figure:last-child img {
  margin-bottom: calc(var(--line-height) * -1);
}
.text h1, .text h2, .text h3, .text h4, .text h5,
.intro h1,
.intro h2,
.intro h3,
.intro h4,
.intro h5,
.page-intro h1,
.page-intro h2,
.page-intro h3,
.page-intro h4,
.page-intro h5,
.content h1,
.content h2,
.content h3,
.content h4,
.content h5 {
  max-width: calc(var(--line-height) * 28);
  text-transform: var(--text-transform);
}
.text h2, .text h3, .text h4, .text h5,
.intro h2,
.intro h3,
.intro h4,
.intro h5,
.page-intro h2,
.page-intro h3,
.page-intro h4,
.page-intro h5,
.content h2,
.content h3,
.content h4,
.content h5 {
  margin-bottom: var(--line-height);
}
.text .publication-date,
.text .type:not(:has(+ .publication-date)),
.text h1:not(:has(+ .publication-date), :has(+ .type)),
.intro .publication-date,
.intro .type:not(:has(+ .publication-date)),
.intro h1:not(:has(+ .publication-date), :has(+ .type)),
.page-intro .publication-date,
.page-intro .type:not(:has(+ .publication-date)),
.page-intro h1:not(:has(+ .publication-date), :has(+ .type)),
.content .publication-date,
.content .type:not(:has(+ .publication-date)),
.content h1:not(:has(+ .publication-date), :has(+ .type)) {
  margin-bottom: calc(var(--line-height) * 2);
}
.text h2, .text h3,
.intro h2,
.intro h3,
.page-intro h2,
.page-intro h3,
.content h2,
.content h3 {
  margin-top: calc(var(--line-height) * 1);
  margin-bottom: calc(var(--line-height) * 1);
}
.text li,
.intro li,
.page-intro li,
.content li {
  display: flex;
}
.text ul li::before,
.intro ul li::before,
.page-intro ul li::before,
.content ul li::before {
  content: "• ";
}
.text figure:not(.portrait) img,
.intro figure:not(.portrait) img,
.page-intro figure:not(.portrait) img,
.content figure:not(.portrait) img {
  width: calc(100% + var(--line-height) * 2);
}
.text img,
.intro img,
.page-intro img,
.content img {
  display: block;
  margin: calc(var(--line-height) * 1) calc(var(--line-height) * -1);
}
.text figure.portrait img,
.intro figure.portrait img,
.page-intro figure.portrait img,
.content figure.portrait img {
  max-width: calc(100% + var(--line-height) * 2);
  max-height: calc(100vh - var(--line-height) * 2);
  max-height: calc(100dvh - var(--line-height) * 2);
}
.text table td:first-of-type,
.intro table td:first-of-type,
.page-intro table td:first-of-type,
.content table td:first-of-type {
  padding-right: calc(var(--line-height) * 2);
  text-transform: var(--text-transform);
}

button {
  font-family: var(--font-family);
  background: var(--back-color);
  padding: var(--line-height);
  margin-top: var(--line-height);
  text-transform: uppercase;
}

.calendar .title,
.calendar .small-title {
  text-transform: var(--text-transform);
}
.calendar .title,
.calendar .image {
  margin-bottom: var(--line-height);
}
.calendar .event-preview.external > a {
  display: block;
  color: inherit;
}

.calendar:not(.inner) {
  padding: calc(var(--line-height) * 1);
}

.calendar.inner {
  padding: var(--line-height) 0;
}

.calendar.inner .ongoing .event-preview.internal,
.calendar.inner .ongoing .event-preview.external a,
.calendar.inner .upcoming .event-preview.internal,
.calendar.inner .upcoming .event-preview.external a,
.calendar .past .event-preview.internal,
.calendar .past .event-preview.external a {
  display: flex;
  flex-wrap: wrap;
}
.calendar.inner .ongoing .event-preview.internal .type,
.calendar.inner .ongoing .event-preview.internal .small-title,
.calendar.inner .ongoing .event-preview.internal .date,
.calendar.inner .ongoing .event-preview.external a .type,
.calendar.inner .ongoing .event-preview.external a .small-title,
.calendar.inner .ongoing .event-preview.external a .date,
.calendar.inner .upcoming .event-preview.internal .type,
.calendar.inner .upcoming .event-preview.internal .small-title,
.calendar.inner .upcoming .event-preview.internal .date,
.calendar.inner .upcoming .event-preview.external a .type,
.calendar.inner .upcoming .event-preview.external a .small-title,
.calendar.inner .upcoming .event-preview.external a .date,
.calendar .past .event-preview.internal .type,
.calendar .past .event-preview.internal .small-title,
.calendar .past .event-preview.internal .date,
.calendar .past .event-preview.external a .type,
.calendar .past .event-preview.external a .small-title,
.calendar .past .event-preview.external a .date {
  margin-right: calc(var(--font-size) / 3 * 2);
}
.calendar.inner .ongoing .event-preview.internal .type::after,
.calendar.inner .ongoing .event-preview.internal .small-title::after,
.calendar.inner .ongoing .event-preview.internal .date::after,
.calendar.inner .ongoing .event-preview.external a .type::after,
.calendar.inner .ongoing .event-preview.external a .small-title::after,
.calendar.inner .ongoing .event-preview.external a .date::after,
.calendar.inner .upcoming .event-preview.internal .type::after,
.calendar.inner .upcoming .event-preview.internal .small-title::after,
.calendar.inner .upcoming .event-preview.internal .date::after,
.calendar.inner .upcoming .event-preview.external a .type::after,
.calendar.inner .upcoming .event-preview.external a .small-title::after,
.calendar.inner .upcoming .event-preview.external a .date::after,
.calendar .past .event-preview.internal .type::after,
.calendar .past .event-preview.internal .small-title::after,
.calendar .past .event-preview.internal .date::after,
.calendar .past .event-preview.external a .type::after,
.calendar .past .event-preview.external a .small-title::after,
.calendar .past .event-preview.external a .date::after {
  content: " ";
  margin-right: calc(var(--line-height) * 1);
  display: inline-block;
}
.calendar.inner .ongoing .event-preview.internal > *:last-of-type::after,
.calendar.inner .ongoing .event-preview.external a > *:last-of-type::after,
.calendar.inner .upcoming .event-preview.internal > *:last-of-type::after,
.calendar.inner .upcoming .event-preview.external a > *:last-of-type::after,
.calendar .past .event-preview.internal > *:last-of-type::after,
.calendar .past .event-preview.external a > *:last-of-type::after {
  content: ".";
}

.calendar:not(.inner) .ongoing .event-preview.external > a,
.calendar:not(.inner) .ongoing .event-preview:not(.external), .calendar:not(.inner) .upcoming .event-preview.external > a,
.calendar:not(.inner) .upcoming .event-preview:not(.external) {
  background: var(--back-color);
  color: var(--text-back-color);
  padding: var(--line-height);
  margin-bottom: var(--line-height);
  display: inline-block;
}
.calendar:not(.inner) .ongoing .event-preview.external > a .small-title,
.calendar:not(.inner) .ongoing .event-preview:not(.external) .small-title, .calendar:not(.inner) .upcoming .event-preview.external > a .small-title,
.calendar:not(.inner) .upcoming .event-preview:not(.external) .small-title {
  margin-bottom: var(--line-height);
}

body.sans-serif {
  --font-family: "hanken";
  --line-height: 24px;
  --font-size: 20px;
  --header-height: calc(var(--line-height) * 3);
  --left-width: calc(var(--line-height) * 25);
  --right-width: calc(100% - var(--left-width));
  --text-transform: none;
}
body.sans-serif hr {
  display: none;
}

body.es-build {
  --font-family: "es-build";
  --line-height: 22px;
  --font-size: 19px;
  --header-height: calc(var(--line-height) * 3);
  --left-width: calc(var(--line-height) * 24);
  --article-width: calc(var(--left-width) * 2);
  --right-width: calc(100% - var(--left-width));
  --text-transform: none;
}
body.es-build hr {
  display: none;
}

body.serif {
  --font-family: "spectral";
  --line-height: 22px;
  --font-size: 18px;
  --header-height: calc(var(--line-height) * 3);
  --left-width: calc(var(--font-size) * 32);
  --right-width: calc(100% - var(--left-width));
  --article-width: calc(var(--left-width) * 2);
  --text-transform: none;
  font-variant-numeric: normal;
}
body.serif hr {
  display: none;
}
body.serif .text p, body.serif .text ul, body.serif .text ol, body.serif .text blockquote,
body.serif .intro p,
body.serif .intro ul,
body.serif .intro ol,
body.serif .intro blockquote,
body.serif .page-intro p,
body.serif .page-intro ul,
body.serif .page-intro ol,
body.serif .page-intro blockquote,
body.serif .content p,
body.serif .content ul,
body.serif .content ol,
body.serif .content blockquote {
  max-width: calc(var(--font-size) * 48);
}

body.disposition-right .logo {
  right: var(--left-width);
}
body.disposition-right nav a.home-page {
  width: unset;
  color: inherit;
}
body.disposition-right .left-part {
  position: fixed;
  right: 0;
  top: 0;
  height: 100vh;
  z-index: 9999;
}

body.disposition-right.has-current .right-part {
  background: var(--select-color);
  top: calc(var(--line-height) * 3);
  height: calc(100vh - var(--line-height) * 3);
}
body.disposition-right.has-current .item.current-item .close,
body.disposition-right.has-current .article-content.current-article .close {
  right: var(--left-width);
}

body.disposition-right.projects.has-current .all-images {
  position: absolute;
  left: 0;
  background: var(--back-color);
}
body.disposition-right.projects.has-current .viewers {
  margin-left: var(--right-width);
}

body {
  font-family: var(--font-family);
  font-size: var(--font-size);
  line-height: var(--line-height);
  text-rendering: optimizeLegibility;
  padding-top: var(--header-height);
  background: var(--back-color);
  color: var(--text-back-color);
}

hr {
  display: block;
  border: none;
  margin: var(--line-height) 0;
  color: var(--text-main-page-color);
}

hr::after {
  content: "* * * * * * * * * * * * * * * * * * * * * * * * * * * * *";
}

nav {
  position: fixed;
  top: 0;
  width: 100%;
  z-index: 999;
  color: var(--text-back-color);
  display: flex;
  flex-wrap: wrap;
  background: var(--back-color);
}
nav #languages {
  display: flex;
  flex-wrap: wrap;
  position: fixed;
  right: 0;
}
nav #languages a.current {
  background: var(--select-color);
  color: var(--text-select-color);
}
nav a {
  display: block;
  text-transform: var(--text-transform);
}
nav a:not(.home-page),
nav a.home-page h1 {
  padding: var(--line-height);
}
nav a.current-page.home-page,
nav a.current-page.home-page h1,
nav a.current-page {
  background: var(--select-color);
  color: var(--text-select-color);
}
nav a:not(.current-page) {
  background: var(--back-color);
  color: var(--text-back-color);
}
nav a.home-page {
  background: var(--main-page-color);
  color: var(--text-main-page-color);
  width: var(--left-width);
}

body main {
  display: flex;
  flex-wrap: wrap;
}
body .left-part::-webkit-scrollbar,
body .right-part::-webkit-scrollbar {
  display: none;
}
body .left-part,
body .right-part {
  -ms-overflow-style: none;
  scrollbar-width: none;
  overflow: scroll;
  scroll-behavior: smooth;
  height: calc(100vh - var(--header-height));
  height: calc(100dvh - var(--header-height));
}
body .page-intro {
  padding: calc(var(--line-height) * 1);
}
body .left-part {
  width: var(--left-width);
}
body .left-part .intro {
  padding: var(--line-height);
  background: var(--main-page-color);
  color: var(--text-main-page-color);
}
body .left-part .item.has-hover:not(.current-item) {
  background: var(--select-color);
  color: var(--text-select-color);
}
body .left-part .item.current-item header .description,
body .left-part .item.has-hover:not(.current-item) header .description {
  margin-top: var(--line-height);
  text-transform: none;
  display: block;
}
body .left-part .item.current-item .description {
  margin-top: var(--line-height);
}
body .left-part .item {
  padding: var(--line-height);
}
body .left-part .item header {
  text-transform: var(--text-transform);
}
body .left-part .item header .description {
  display: none;
}
body .right-part {
  width: var(--right-width);
}
body .right-part .page-intro {
  width: 100%;
}
body .right-part .article-content:not(.current-article) {
  background: var(--hover-color);
  color: var(--text-hover-color);
}
body .right-part .article-content:not(.current-article) .text {
  display: none;
}
body .right-part .article-content {
  display: flex;
  align-items: flex-start;
}

body:not(.has-current, .current-hover) .all-images,
body:not(.has-current, .current-hover) .right-part {
  background: var(--select-color);
  color: var(--text-select-color);
}

body:not(.has-current) .left-part .item#all {
  background: var(--select-color);
  color: var(--text-select-color);
}
body:not(.has-current) .left-part .item .close,
body:not(.has-current) .left-part .item header .description {
  display: none;
}
body:not(.has-current) .articles {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  column-gap: calc(var(--line-height) * 2);
}
body:not(.has-current) .article-content.has-hover {
  cursor: pointer;
  background: var(--select-color);
  color: var(--text-select-color);
}
body:not(.has-current) .article-content {
  display: inline-block;
  background: var(--back-color);
  text: var(--text-back-color);
  padding: 0 var(--line-height);
  padding-bottom: var(--line-height);
  margin-bottom: var(--line-height);
}
body:not(.has-current) .article-content header .title, body:not(.has-current) .article-content header .description {
  margin-top: var(--line-height);
}
body:not(.has-current) .article-content header .title {
  text-transform: var(--text-transform);
}
body:not(.has-current) .article-content header img {
  object-fit: cover;
  height: 20vw;
  width: calc(100% + var(--line-height) * 2);
  margin: 0 calc(var(--line-height) * -1);
  display: block;
}

body.has-current .left-part .item.current-item {
  background: var(--select-color);
  color: var(--text-select-color);
}
body.has-current .right-part .page-intro,
body.has-current .article-content:not(.current-article) {
  display: none;
}
body.has-current .right-part {
  background: var(--back-color);
}
body.has-current .right-part .articles {
  width: 100%;
}
body.has-current .article-content.current-article.dotted-lines {
  max-width: calc(var(--article-width) + var(--line-height));
}
body.has-current .article-content.current-article.dotted-lines .text {
  border-right: dotted var(--line-height) var(--back-color);
  border-left: dotted var(--line-height) var(--back-color);
  margin-left: calc(var(--line-height) / 2);
  margin-right: calc(var(--line-height) / 2);
  padding-bottom: calc(var(--line-height) * 3);
}
body.has-current .article-content.current-article.dotted-lines .text img {
  margin-left: calc(var(--line-height) / 2 * -1);
  margin-right: calc(var(--line-height) / 2 * -1);
  width: calc(100% + var(--line-height) * 1);
}
body.has-current .article-content.current-article.dotted-lines .close {
  right: calc(100% - var(--left-width) - var(--article-width) - var(--line-height));
}
body.has-current .article-content.current-article {
  background: var(--select-color);
  color: var(--text-select-color);
  display: block;
}
body.has-current .article-content.current-article .close {
  right: 0;
}
body.has-current .article-content.current-article header {
  display: none;
}
body.has-current .item.current-item .close {
  right: 0;
}
body.has-current .item.current-item .close,
body.has-current .article-content.current-article .close {
  position: fixed;
  display: block;
  top: 0;
  z-index: 9999;
  padding: var(--line-height);
  background: var(--select-color);
  color: var(--text-select-color);
  font-size: calc(var(--font-size) * 1.5);
  font-family: "hanken";
}
body.has-current .item.current-item .close::after,
body.has-current .article-content.current-article .close::after {
  content: "×";
}

/* HOME */
body.home .calendar::-webkit-scrollbar {
  display: none;
}
body.home .right-part {
  background: var(--back-color);
}
body.home .left-part .calendar {
  left: 0;
}
body.home .calendar {
  -ms-overflow-style: none;
  scrollbar-width: none;
  position: fixed;
  left: var(--left-width);
  bottom: 0;
  padding: var(--line-height);
  background: var(--select-color);
  color: var(--text-select-color);
  max-height: calc(100vh - var(--line-height) * 3);
  max-height: calc(100dvh - var(--line-height) * 3);
  overflow: scroll;
}
body.home .calendar .ongoing img,
body.home .calendar .upcoming img {
  display: none;
}
body.home .calendar .group > a {
  display: block;
}
body.home .left-part,
body.home .left-part .intro {
  background: var(--select-color);
  color: var(--text-select-color);
}
body.home .right-part:not(.all-images) {
  padding: 0;
}
body.home nav {
  background: none;
}
body.home .previews figure {
  width: 100%;
  height: calc(100vh - var(--header-height));
  height: calc(100dvh - var(--header-height));
}
body.home .previews figure img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* PROJECTS */
body.projects table, body.projects .process {
  margin-top: var(--line-height);
}
body.projects .left-part.projects .content {
  display: none;
}
body.projects .page-intro {
  padding-bottom: calc(var(--line-height) * 2);
}
body.projects .all-images.loading > * {
  display: none;
}
body.projects .all-images {
  align-items: flex-start;
  align-content: flex-start;
  display: grid;
  grid-template-columns: repeat(7, 1fr);
}
body.projects .all-images .page-intro {
  grid-column: 1/8;
  margin-bottom: 0;
}
body.projects .all-images figure {
  display: flex;
  justify-content: center;
}
body.projects .all-images figure img {
  max-width: 100%;
}
body.projects .viewers {
  width: var(--viewer-width);
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  align-items: flex-start;
  background: var(--select-color);
}
body.projects .viewers .viewer {
  text-align: center;
  width: 100%;
  position: relative;
}
body.projects .viewers .viewer figure:not(.open-figure) {
  opacity: 0;
  z-index: -999;
  position: absolute;
}
body.projects .viewers .viewer figure.leaving {
  opacity: 0;
  position: absolute;
  z-index: 999;
  width: 100%;
}
body.projects .viewers .viewer figure {
  transition: opacity 0.5s;
}
body.projects .viewers .viewer:not(.current-viewer) {
  display: none;
}
body.projects .viewers iframe,
body.projects .viewers img {
  height: calc(100vh - var(--header-height));
  height: calc(100dvh - var(--header-height));
  width: 100%;
  display: block;
  margin: 0 auto;
  object-fit: contain;
}
body.projects .viewers figure.video::after {
  position: absolute;
  top: 0;
  z-index: 1;
  left: 0;
  content: " ";
  height: calc(100vh - var(--header-height));
  height: calc(100dvh - var(--header-height));
  width: 100%;
  content: " ";
}
body.projects .viewers figure {
  position: relative;
}
body.projects .viewers figcaption {
  position: absolute;
  bottom: 0;
  z-index: 99;
  text-align: center;
  width: 100%;
  display: flex;
  justify-content: space-between;
  font-size: calc(var(--font-size) * 0.8);
}
body.projects .viewers figcaption > span {
  background: var(--back-color);
  padding: var(--line-height);
}

body.projects:not(.has-current) .projects .project.current-item .content {
  display: none;
}
body.projects:not(.has-current) .all-images {
  background: var(--select-color);
  color: var(--text-select-color);
}
body.projects:not(.has-current) .all-images figure {
  height: 288px;
  display: flex;
  align-items: center;
}
body.projects:not(.has-current) .all-images figure img {
  height: 128px;
}
body.projects:not(.has-current) .viewers {
  display: none;
}

body.projects.has-current {
  --right-width: calc(var(--line-height) * 8);
  --viewer-width: calc(100% - (var(--left-width) + var(--right-width)));
}
body.projects.has-current .projects .project.current-item .content {
  display: block;
}
body.projects.has-current .viewers {
  height: calc(100dvh - var(--header-height));
  height: calc(100vh - var(--header-height));
}
body.projects.has-current .all-images {
  grid-template-columns: repeat(1, 1fr);
  padding-bottom: calc(var(--line-height) * 8);
}
body.projects.has-current .all-images figure:not(.current-figure) {
  display: none;
}
body.projects.has-current .all-images figure {
  padding: calc(var(--line-height) * 1);
}
body.projects.has-current .all-images figure img {
  max-width: 100%;
}
body.projects.has-current .all-images .open-figure {
  background: var(--select-color);
  color: var(--text-select-color);
}
body.projects.has-current .viewers {
  overflow: hidden;
}

body.events:not(.has-current) .right-part .articles {
  width: 100%;
}
body.events:not(.has-current) .right-part .articles .article-content.invisible {
  display: none;
}
body.events:not(.has-current) .right-part .event-preview {
  margin-right: var(--line-height);
}
body.events:not(.has-current) .right-part .ongoing img,
body.events:not(.has-current) .right-part .upcoming img {
  max-width: 100%;
  display: block;
  margin-bottom: var(--line-height);
}
body.events:not(.has-current) .right-part .ongoing .month,
body.events:not(.has-current) .right-part .upcoming .month {
  display: flex;
  flex-wrap: wrap;
}
body.events:not(.has-current) .right-part .ongoing .month .title,
body.events:not(.has-current) .right-part .upcoming .month .title {
  width: 100%;
}
body.events:not(.has-current) .right-part .ongoing .event-preview.has-hover,
body.events:not(.has-current) .right-part .upcoming .event-preview.has-hover {
  background: var(--select-color);
  cursor: pointer;
}

body.events.has-current .right-part {
  padding: 0;
}
body.events.has-current .right-part > .calendar {
  display: none;
}
body.events.has-current .right-part .event-contents {
  width: 100%;
}
body.events.has-current .right-part .article-content:not(.current-article) {
  display: none;
}

body.events .type {
  text-transform: none;
  display: block;
}
body.events .left-part .article-menu .preview-description {
  margin-top: var(--line-height);
}
body.events .right-part {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  align-content: flex-start;
}
body.events .calendar:not(.inner) .past:not(.show) .title::after {
  content: " +";
}
body.events .calendar:not(.inner) .past:not(.show) .title:hover {
  cursor: pointer;
}
body.events .calendar:not(.inner) .past:not(.show) .year {
  display: none;
}
body.events .calendar.inner .title {
  margin-top: var(--line-height);
}
body.events .calendar.inner .date:before {
  content: "";
}
body.events .calendar.inner .event-preview {
  display: flex;
  flex-wrap: wrap;
}
body.events .calendar.inner .event-preview .date {
  margin-right: var(--line-height);
}

body.about .text,
body.default .text {
  min-height: 100vh;
  min-height: 100dvh;
}

body.about .right-part .contact {
  display: flex;
  flex-wrap: wrap;
}
body.about .right-part .contact > * {
  width: 50%;
}
body.about .right-part .contact h3 {
  text-transform: var(--text-transform);
  margin-bottom: calc(var(--line-height) * 2);
}
body.about .right-part .contact .member {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  align-content: flex-start;
  margin-bottom: var(--line-height);
}
body.about .right-part .contact .member img {
  width: calc(var(--line-height) * 6);
  height: calc(var(--line-height) * 6);
  margin: 0;
  object-fit: cover;
  display: block;
}
body.about .right-part .contact .member .name {
  text-transform: var(--text-transform);
}
body.about .right-part .contact .member picture {
  padding-right: var(--line-height);
}
body.about .right-part .contact .member .info {
  width: calc(100% - var(--line-height) * 7);
}
body.about #credits {
  font-size: calc(var(--font-size) * 0.8);
  padding: var(--line-height);
  padding-bottom: calc(var(--line-height) / 2);
}

body.error main .right-part {
  padding: var(--line-height);
}

/*# sourceMappingURL=main.css.map */
