@charset "UTF-8";
@media screen and (hover: hover) {
  nav a:not(.current-page, .home-page, .current):hover {
    background: var(--select-color);
    color: var(--text-select-color);
  }
  nav:hover a.current-page:not(.home-page) {
    background: var(--back-color);
    color: var(--text-back-color);
  }
  nav:hover a.home-page:hover ~ a.current-page,
nav:hover a.current-page:hover {
    background: var(--select-color);
    color: var(--text-select-color);
  }
  button:hover {
    background: var(--hover-color);
    color: var(--text-hover-color);
    cursor: pointer;
  }
  body.events:not(.has-current) .article-menu.item:hover {
    background: var(--select-color);
    color: var(--text-select-color);
  }
  body main .left-part .item#all:not(.current-item):hover,
body main .left-part .item:not(.current-item):hover {
    cursor: pointer;
    background: var(--select-color);
    color: var(--text-select-color);
  }
  body main .left-part .item:hover header .description,
body main .left-part .item#all:not(.current-item):hover header .description,
body main .left-part .item:not(.current-item):hover header .description {
    margin-top: var(--line-height);
    text-transform: none;
    display: block;
  }
  body:not(.has-current) .item#all:hover {
    color: inherit;
    background: var(--select-color);
    cursor: default;
  }
  body:not(.has-current) .article-content:hover {
    cursor: pointer;
  }
  body.has-current .item.current-item .close:hover,
body.has-current .article-content.current-article .close:hover {
    cursor: pointer;
    color: var(--text-hover-color);
    background: var(--hover-color);
  }
  body.articles.current-hover.has-current .left-part .item.current-item:not(.has-hover),
body.events.current-hover.has-current .left-part .item.current-item:not(.has-hover),
body.projects.current-hover.has-current .left-part .item.current-item:not(.has-hover) {
    background: var(--back-color);
    color: var(--text-back-color);
  }
  body.articles.current-hover:not(.has-current) .all-images,
body.articles.current-hover:not(.has-current) .right-part,
body.events.current-hover:not(.has-current) .all-images,
body.events.current-hover:not(.has-current) .right-part,
body.projects.current-hover:not(.has-current) .all-images,
body.projects.current-hover:not(.has-current) .right-part {
    background: var(--back-color);
  }
  body.articles.current-hover:not(.has-current) .left-part .item#all,
body.events.current-hover:not(.has-current) .left-part .item#all,
body.projects.current-hover:not(.has-current) .left-part .item#all {
    background: var(--back-color);
    color: var(--text-back-color);
  }
  body.articles.current-hover:not(.has-current) .project.item.has-hover,
body.articles.current-hover:not(.has-current) .article-menu.item.has-hover,
body.articles.current-hover:not(.has-current) figure.has-hover,
body.events.current-hover:not(.has-current) .project.item.has-hover,
body.events.current-hover:not(.has-current) .article-menu.item.has-hover,
body.events.current-hover:not(.has-current) figure.has-hover,
body.projects.current-hover:not(.has-current) .project.item.has-hover,
body.projects.current-hover:not(.has-current) .article-menu.item.has-hover,
body.projects.current-hover:not(.has-current) figure.has-hover {
    background: var(--select-color);
    color: var(--text-select-color);
  }
  body.projects .all-images img:hover,
body.projects .all-images figure:not(.open-figure):hover {
    cursor: pointer;
  }
  .viewers .viewer:not(.single) figure:hover {
    cursor: pointer;
  }
  body.projects.has-current .all-images figure:not(.open-figure):hover {
    cursor: pointer;
    background: var(--select-color);
    color: var(--select-hover-color);
  }
  body.projects.has-current .all-images:hover figure.open-figure {
    background: var(--back-color);
    color: var(--text-back-color);
  }
  body.projects.has-current .all-images:hover figure.open-figure:hover {
    cursor: pointer;
    background: var(--select-color);
    color: var(--select-hover-color);
  }
  body.events:not(.has-current) .right-part .ongoing .event-preview:hover,
body.events:not(.has-current) .right-part .upcoming .event-preview:hover {
    background: var(--select-color);
    cursor: pointer;
  }
  body.events:not(.has-current) .right-part .past .event-preview:hover,
body.events:not(.has-current) .right-part .past .event-preview.has-hover {
    cursor: pointer;
  }
}
@media screen and (min-width: 1232px) {
  nav {
    display: inline-flex;
    width: unset;
  }
  body.projects:not(.has-current) .images,
body.events:not(.has-current) .articles,
body.articles:not(.has-current) .articles {
    padding-bottom: calc(var(--line-height) * 10);
  }
}
@media screen and (max-width: 2000px) {
  body:not(.has-current) .all-images {
    grid-template-columns: repeat(6, 1fr);
  }
  body:not(.has-current) .all-images .page-intro {
    grid-column: 1/7;
  }
  body:not(.has-current) .all-images figure[data-index="20"],
body:not(.has-current) .all-images figure[data-index="19"],
body:not(.has-current) .all-images figure[data-index="18"],
body:not(.has-current) .all-images figure[data-index="17"],
body:not(.has-current) .all-images figure[data-index="16"],
body:not(.has-current) .all-images figure[data-index="15"] {
    display: none;
  }
  body.projects.has-current {
    --right-width: calc(var(--line-height) * 6);
  }
  body.projects.has-current .all-images {
    padding-bottom: 0;
  }
  body.articles.has-current .logo,
body.events.has-current .logo,
body.projects.has-current .logo,
body.default .logo {
    display: none;
  }
}
@media screen and (max-width: 1980px) {
  body:not(.has-current) .articles {
    grid-template-columns: repeat(2, 1fr);
  }
  body:not(.has-current) .articles .article-content header img {
    height: 25vw;
  }
}
@media screen and (max-width: 1768px) {
  body.disposition-right.has-current .item.current-item .close,
body.has-current .right-part .article-content.current-article .close {
    right: 0;
  }
  .article-content,
.text {
    width: 100%;
  }
  .article-content.dotted-lines {
    width: 100%;
  }
  .article-content.dotted-lines .text {
    width: calc(100% - var(--line-height));
  }
  body.disposition-right .left-part {
    top: calc(var(--line-height) * 3);
    height: calc(100vh - var(--line-height) * 3);
  }
}
@media screen and (max-width: 1820px) {
  body:not(.has-current) .all-images {
    grid-template-columns: repeat(5, 1fr);
  }
  body:not(.has-current) .all-images .page-intro {
    grid-column: 1/6;
  }
  body:not(.has-current) .all-images figure[data-index="10"],
body:not(.has-current) .all-images figure[data-index="14"],
body:not(.has-current) .all-images figure[data-index="13"],
body:not(.has-current) .all-images figure[data-index="12"],
body:not(.has-current) .all-images figure[data-index="11"] {
    display: none;
  }
}
@media screen and (max-width: 1750px) {
  body.about .right-part .contact > * {
    width: 100%;
  }
}
@media screen and (max-width: 1700px) and (min-width: 1232px) {
  body.es-build nav {
    background: none;
  }
}
@media screen and (max-width: 1700px) {
  body.projects.disposition-right.has-current .viewers {
    margin: 0;
  }
}
@media screen and (max-width: 1560px) {
  body:not(.has-current) .all-images {
    grid-template-columns: repeat(4, 1fr);
  }
  body:not(.has-current) .all-images .page-intro {
    grid-column: 1/5;
  }
  body:not(.has-current) .all-images figure[data-index="7"],
body:not(.has-current) .all-images figure[data-index="8"],
body:not(.has-current) .all-images figure[data-index="9"] {
    display: none;
  }
  body.projects.has-current {
    --right-width: calc(var(--line-height) * 4);
  }
}
@media screen and (max-width: 1480px) {
  body.es-build nav a.home-page,
body nav a.home-page {
    width: unset;
  }
}
@media screen and (min-width: 1480px) and (min-height: 950px) {
  .es-build nav a.home-page h1,
.es-build nav a.home-page h1 {
    position: absolute;
    font-size: calc(var(--font-size) * 1.5);
    line-height: calc(var(--line-height) * 1.5);
  }
}
@media screen and (min-width: 1480px) and (min-height: 950px) {
  .es-build .page-intro p, .es-build .page-intro ul, .es-build .page-intro ol, .es-build .page-intro blockquote {
    max-width: calc(var(--line-height) * 48);
  }
  body.has-current.es-build main .article-content h1,
body.has-current.es-build main .article-content h2,
body.has-current.es-build main .article-content h3,
body.es-build main .intro,
body.es-build main .page-intro {
    font-size: calc(var(--font-size) * 1.5);
    line-height: calc(var(--line-height) * 1.5);
  }
  .es-build .article-content h2,
.es-build .article-content h3 {
    margin: calc(var(--line-height) * 2) 0;
  }
  body.es-build main .intro {
    padding-top: calc(var(--line-height) * 1.5);
  }
  body.es-build main .page-intro {
    padding-top: calc(var(--line-height) * 1.5);
    padding-bottom: calc(var(--line-height) * 1.5);
  }
  body.es-build main .intro .address {
    font-size: calc(var(--font-size) * 1);
    line-height: calc(var(--line-height) * 1);
  }
  body.es-build .text h1, body.es-build .text h2, body.es-build .text h3, body.es-build .text h4, body.es-build .text h5 {
    max-width: calc(var(--line-height) * 32);
    text-transform: var(--text-transform);
  }
}
@media screen and (max-width: 1300px) {
  body:not(.has-current).projects .all-images .page-intro {
    grid-column: 1/5;
  }
  body:not(.has-current).projects .all-images figure[data-index="7"],
body:not(.has-current).projects .all-images figure[data-index="5"],
body:not(.has-current).projects .all-images figure[data-index="6"] {
    display: none;
  }
  body:not(.has-current).projects .all-images figure {
    height: 188px;
    padding: calc(var(--line-height) * 2);
  }
  body:not(.has-current).projects .all-images figure img {
    height: unset;
  }
}
@media screen and (min-width: 1232px) {
  .bottom-intro,
body #open-menu {
    display: none;
  }
}
@media screen and (max-width: 1232px) {
  body:not(.has-current) .right-part:not(.all-images) .articles {
    padding: 0;
  }
  body.about .text,
body.default .text {
    min-height: unset;
  }
  body.disposition-right.has-current .right-part,
body.disposition-right.has-current .left-part,
body.disposition-right.has-current.projects .right-part,
body.disposition-right.has-current.projects .left-part,
body.disposition-right .right-part,
body.disposition-right .left-part {
    position: static;
    height: unset;
  }
  body .right-part,
body .left-part {
    display: block;
    height: unset;
    overflow: visible;
    width: 100%;
  }
  hr::after {
    content: "* * *";
  }
  body.home nav {
    background: var(--back-color);
    color: var(--text-back-color);
  }
  body.home .logo {
    position: absolute;
    left: unset;
    right: 0;
    bottom: unset;
    top: calc(var(--line-height) * 20.3);
    z-index: 1;
  }
  body.home .calendar {
    position: static;
  }
  body.home .previews figure {
    height: calc(var(--line-height) * 25);
  }
  body.has-current .right-part {
    background: var(--select-color);
  }
  body.has-current .item.current-item .close,
body.has-current .article-content.current-article .close {
    font-size: calc(var(--font-size) * 1.5);
  }
  body.events .calendar,
body.events .calendar:not(.inner) {
    padding: 0;
  }
  body.events .calendar:not(.inner) .ongoing .event-preview,
body.events .calendar:not(.inner) .upcoming .event-preview {
    margin-bottom: var(--line-height);
    margin-left: var(--line-height);
  }
  body.events:not(.has-current) .right-part {
    display: block;
    height: unset;
    overflow: visible;
    width: 100%;
  }
  body.events:not(.has-current) #all {
    display: none;
  }
  body.events:not(.has-current) .past .event-preview,
body.events:not(.has-current) .title {
    margin-left: var(--line-height);
  }
  body.events:not(.has-current) .title:first-of-type {
    margin-top: var(--line-height);
  }
  body.events:not(.has-current) .left-part {
    background: var(--select-color);
  }
  body.events:not(.has-current) .left-part .item {
    margin-bottom: var(--line-height);
    background: var(--back-color);
  }
  body:not(.home) .logo {
    display: none;
  }
  body:not(.has-current) .right-part:not(.all-images) .articles {
    padding-left: 0;
    padding-right: 0;
  }
  body:not(.has-current) .articles {
    grid-template-columns: repeat(2, 1fr);
    column-gap: calc(var(--line-height) * 2);
  }
  body:not(.has-current) .articles .article-content {
    margin-bottom: calc(var(--line-height) * 2);
  }
  body:not(.has-current) .articles .article-content header .place {
    text-transform: var(--text-transform);
  }
  body:not(.has-current) .articles .article-content header img {
    height: 50vw;
  }
  body.open-nav .logo {
    display: block;
  }
  body.open-nav #open-menu {
    font-size: calc(var(--font-size) * 1.5);
  }
  body.open-nav #open-menu::after {
    content: "×";
  }
  body.open-nav nav {
    height: 100vh;
    height: 100dvh;
    z-index: 99999;
    text-align: center;
  }
  body.open-nav nav #languages,
body.open-nav nav a:not(.home-page) {
    display: block;
  }
  body.open-nav nav #languages {
    position: static;
    display: block;
    background: var(--back-color);
  }
  body.open-nav nav #languages a {
    display: inline-block;
    padding-left: var(--line-height);
  }
  body .right-part .page-intro {
    display: block;
    margin-bottom: calc(var(--line-height) * 0);
  }
  body nav {
    display: block;
  }
  body nav a.home-page {
    text-align: center;
  }
  body nav #languages {
    display: none;
  }
  body nav #languages,
body nav a:not(.home-page) {
    display: none;
  }
  body #open-menu {
    font-size: calc(var(--font-size) * 2);
    position: fixed;
    padding: var(--line-height);
    top: 0;
    z-index: 999999;
    background: var(--select-color);
    color: var(--text-select-color);
  }
  body #open-menu::after {
    content: "≡";
  }
  body .left-part {
    height: unset;
    overflow: visible;
  }
  body .left-part .page-intro,
body .left-part .item {
    display: none;
  }
  body .right-part {
    width: 100%;
  }
  body .right-part .page-intro {
    padding-bottom: var(--line-height);
  }
  body.projects.has-current .right-part .text {
    padding-top: 0;
  }
  body.projects.has-current .text h1, body.projects.has-current .text h2 {
    margin: 0;
  }
  body.projects.has-current .text .content {
    margin-top: var(--line-height);
  }
  body.projects.has-current .viewers {
    display: none;
  }
  body.projects.has-current .swiper {
    --swiper-height-backup: calc(100vh - var(--line-height) * 6);
    --swiper-height: calc(100dvh - var(--line-height) * 6);
    margin-left: calc(var(--line-height) * -1);
    margin-bottom: calc(var(--line-height) * 1);
    width: calc(100% + var(--line-height) * 2);
  }
  body.projects.has-current .swiper .swiper-button-next::after,
body.projects.has-current .swiper .swiper-button-prev::after {
    color: var(--text-back-color);
    font-family: "source";
    display: block;
  }
  body.projects.has-current .swiper .swiper-button-next {
    right: var(--line-height);
  }
  body.projects.has-current .swiper .swiper-button-next::after {
    content: ">";
  }
  body.projects.has-current .swiper .swiper-button-prev {
    left: var(--line-height);
  }
  body.projects.has-current .swiper .swiper-button-prev::after {
    content: "<";
  }
  body.projects.has-current .swiper .swiper-button-next::after,
body.projects.has-current .swiper .swiper-button-prev::after {
    padding: var(--line-height);
  }
  body.projects.has-current .swiper picture {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    align-content: center;
    background: var(--back-color);
    height: var(--swiper-height-backup);
    height: var(--swiper-height);
  }
  body.projects.has-current .swiper iframe {
    height: var(--swiper-height-backup);
    height: var(--swiper-height);
    width: 100%;
  }
  body.projects.has-current .swiper iframe {
    position: relative;
    margin: 0 auto;
  }
  body.projects.has-current .swiper figure.video::after {
    position: absolute;
    top: 0;
    z-index: 1;
    left: 0;
    content: " ";
    height: var(--swiper-height-backup);
    height: var(--swiper-height);
    width: 100%;
    content: " ";
  }
  body.projects.has-current .swiper img {
    max-height: var(--swiper-height-backup);
    max-height: var(--swiper-height);
    margin: 0 auto;
    object-fit: contain;
    width: 100%;
  }
  body.projects.has-current .counter {
    padding: var(--line-height);
    background: var(--back-color);
    display: inline-flex;
    font-size: calc(var(--font-size) * 0.8);
  }
  body.projects.has-current .counter > span.credits.has {
    padding-left: var(--line-height);
  }
}
@media screen and (min-aspect-ratio: 5/3) and (max-width: 1232px) {
  body:not(.has-current) .articles {
    align-items: start;
    grid-template-columns: repeat(3, 1fr);
  }
  body:not(.has-current) .articles .article-content header img {
    height: 50vh;
    height: 50dvh;
  }
  body.projects.has-current .swiper figure,
body.projects.has-current .swiper img {
    height: calc(100vh - var(--line-height) * 2);
    height: calc(100dvh - var(--line-height) * 2);
  }
}
@media screen and (max-width: 1176px) and (orientation: landscape) {
  .text figure iframe,
.text figure img {
    width: unset;
    height: unset;
    max-width: calc(100% - var(--line-height) * 2);
    max-height: calc(100vh - var(--line-height) * 2);
    max-height: calc(100dvh - var(--line-height) * 2);
  }
}
@media screen and (max-width: 950px) {
  body.events .calendar.inner .event-preview {
    display: block;
  }
}
@media screen and (max-width: 800px) {
  .text figure.portrait img {
    width: calc(100% + var(--line-height) * 3);
  }
  body.has-current .article-content.dotted-lines.current-article .text {
    border-left: none;
    border-right: none;
  }
  body:not(.has-current) .articles {
    grid-template-columns: repeat(1, 1fr);
  }
}
@media screen and (max-width: 800px) and (max-aspect-ratio: 5/6) {
  body.projects.has-current .swiper .button {
    display: none;
  }
  body.projects.has-current .swiper figure.portrait img {
    object-fit: cover;
  }
  body:not(.has-current) .right-part:not(.all-images) .articles {
    padding: 0;
  }
  body:not(.has-current) .articles .article-content {
    margin-bottom: calc(var(--line-height) * 3);
  }
  body:not(.has-current) .articles .article-content header img {
    object-fit: cover;
    height: 110vw;
  }
}
@media screen and (max-width: 700px) {
  table, tr, td {
    display: block;
  }
  table td:nth-child(2) {
    margin-bottom: var(--line-height);
  }
}
@media screen and (orientation: portrait) and (max-aspect-ratio: 3/5) {
  body:not(.has-current) .right-part:not(.all-images) .articles {
    padding: 0;
  }
}
@media screen and (max-width: 600px) {
  body.about .right-part .contact .member .info {
    width: 100%;
    padding: 0;
    margin-top: var(--line-height);
  }
}
@media screen and (max-height: 950px) and (min-width: 1232px) {
  body:not(.home, .about) .intro {
    padding-bottom: 0;
  }
  body:not(.home, .about) .address {
    display: none;
  }
  body .left-part .intro {
    padding-top: var(--line-height);
  }
  body.es-build,
body.sans-serif,
body.serif {
    --header-height: calc(var(--line-height) * 2);
  }
  body.projects .viewers figcaption > span,
body.has-current .item.current-item .close,
body.has-current .article-content.current-article .close,
body .left-part .item,
body.has-current .left-part .item,
body nav a.home-page h1,
body nav a:not(.home-page) {
    padding: calc(var(--line-height) / 2) var(--line-height);
  }
  #moving-logo {
    --line-height: 16px;
    --circle-width: calc(var(--line-height) * 1.7);
    --landscape-width: calc(var(--circle-width) * 2.75);
    --top-distance: calc(var(--landscape-width) / 2 * -1);
  }
}

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