@font-face {
font-family: 'GT Walsheim Regular';
src:
url('../font/GT-Walsheim-Regular.ttf') format('ttf'),
url('../font/GT-Walsheim-Regular.woff2') format('woff2'),
url('../font/GT-Walsheim-Regular.woff') format('woff'),
url('../font/GT-Walsheim-Regular.eot') format('eot'),
url('../font/GT-Walsheim-Regular.otf') format('otf');
font-weight: normal;
font-style: normal;
text-rendering: optimizeLegibility;
font-display: block;
}


:root {
  --content-width: 100%;
  position: relative;

}
input::-moz-focus-inner { 
  border: 0; 
}
*, *::before, *::after {
  margin: 0;
  padding: 0;
  border: none;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  list-style: none;
  outline: none;
}
*:focus {
    outline: none;
}

html {
margin: 0 auto;
white-space: normal;
background-color: rgb(250,250,250);
color: rgba(0,0,0,1);
-webkit-text-size-adjust: 100%;
-ms-text-size-adjust: 100%;
-webkit-tap-highlight-color: rgba(0,0,0,0);
scroll-behavior: smooth;
overflow-x: hidden !important;
overflow-x: -moz-scrollbars-none;
-webkit-text-size-adjust: none;
-webkit-box-sizing: border-box;
        box-sizing: border-box;
}


html, body, main{
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none;            /* Firefox */
  -ms-overflow-style: none;         /* IE 10+ */
}

/* Chrome, Safari and Opera */
html::-webkit-scrollbar, body::-webkit-scrollbar, main::-webkit-scrollbar {
  display: none;
}



main {
overflow-y: scroll;
-webkit-overflow-scrolling: touch;
z-index: 1;
min-height: 100vh;
-webkit-animation: fadein 1s;
        animation: fadein 1s;
}

.small-only, .item-content, .text-container {
display: none;
}
li, .big-only, main, section, span{
display: block;
}
@media screen and (max-width: 65rem) {
.big-only {
display: none;
}
.small-only {
display: block;
}
}
header, footer, img, .list, .item {
-webkit-user-select: none;  
-moz-user-select: none;    
-ms-user-select: none;      
user-select: none;
}

p, h1, h2, h3, figcaption {
font-weight: normal;
  -webkit-font-feature-settings: "calt", "liga", "ss05", "dlig" 1;
          font-feature-settings: "calt", "liga", "ss05", "dlig" 1;
}


figcaption, .text-s p, footer h1, .inline-content h1, .bottom-5 h1{
font-family: "Courier New";
font-size: 13px;
line-height: 15px;
}

p, .text-m p{
font-family: "Courier New";
font-size: 16px;
line-height: 19px;
letter-spacing: -0.03rem;
}

h2, .text-l p, header p{ 
font-family: "GT Walsheim Regular";
font-size: 16px; 
line-height: 18px;
letter-spacing: -0.001rem;
}

.item-preview { 
-webkit-hyphens: auto; 
    -ms-hyphens: auto; 
        hyphens: auto;
}


figcaption {
padding-top: 5px;
letter-spacing: .1rem;
text-transform: uppercase;
}

h1{
font-family: "Courier New";
font-size: 13px;
line-height: 15px;
}

h1.uppercase {
letter-spacing: .1rem;
text-transform: uppercase;
}

h3, .text-xl p{
font-family: "GT Walsheim Regular";
font-size: 24px; 
line-height: 27px;
letter-spacing: -0.005rem;
-webkit-hyphens: auto;
    -ms-hyphens: auto;
        hyphens: auto;

}

.text-m p{
padding-bottom: 19px;
}

.text-m p:last-of-type{
padding-bottom: 0px;
}


.suche, input {
font-size: 16px; 
line-height: 19px;
letter-spacing: .12rem;
text-transform: uppercase;
}

.title {
font-size: 24px; 
line-height: 27px;
letter-spacing: .1rem;
text-transform: uppercase;
}

.title .selected {
font-size: 24px; 
line-height: 27px;
letter-spacing: .1rem;
text-transform: uppercase;
color: black;
}


.menutitle {
font-family: "Courier New";
font-size: 24px; 
line-height: 27px;
}

.item-content {
cursor: initial;
position: relative;
}

.filter-toggler{
cursor: pointer;
color: black;
-webkit-transition: color .3s;
-o-transition: color .3s;
transition: color .3s;
}

.filter-toggler #aktiv p{
      color: black;
-webkit-transition: color .3s;
-o-transition: color .3s;
transition: color .3s;
    color: black;
}

.list p, .content-subtitle p, .inline-content h2 {
-webkit-hyphens: auto;
-ms-hyphens: auto;
hyphens: auto;
}

header .open, .item-preview .open, header .selected .close, .menu-container .open, .item-preview .open, .menu-container .selected .close {
display: none;
}
header .selected .open, header .close, .menu-container .selected .open, .menu-container .close {
display: inline-block;
}


#aktiv .close {
display: none;
}

#aktiv .open{
display: inline-block;
}


input{
font-family: "Courier New";
width: 100%;
background-color: rgb(250,250,250);
}

input::-webkit-input-placeholder {
  opacity: 1;
}

input::-moz-placeholder {
  opacity: 1;
}

input:-ms-input-placeholder {
  opacity: 1;
}

input::-ms-input-placeholder {
  opacity: 1;
}

input::placeholder {
  opacity: 1;
}

input:-ms-input-placeholder {
  opacity: 1;
}

input::-ms-input-placeholder { 
  opacity: 1;
}


input:focus::-webkit-input-placeholder {
  opacity: 0;
}


input:focus::-moz-placeholder {
  opacity: 0;
}


input:focus:-ms-input-placeholder {
  opacity: 0;
}


input:focus::-ms-input-placeholder {
  opacity: 0;
}


input:focus::placeholder {
  opacity: 0;
}

input:focus:-ms-input-placeholder {
  opacity: 0;
}

input:focus::-ms-input-placeholder {
  opacity: 0;
}

nav a {
color: black;
cursor: pointer;
}
p a:hover, #menu:hover h1 {
color: black;
cursor: pointer;
}

a:hover p, a:hover h3{
color: black;
}

main p a::before, footer p a::before, footer h1 a::before  {
content: '► ';
color: rgba(0,0,0, .2);
-webkit-transition: color 0.3s;
-o-transition: color 0.3s;
transition: color 0.3s;
}

main p a:hover::before, footer p a:hover::before, footer h1 a:hover::before{
color: rgba(0,0,0, 1);
-webkit-transition: color 0.3s;
-o-transition: color 0.3s;
transition: color 0.3s;
}


main a:hover, footer a:hover {
color: black;
}

.text-block a {
text-decoration: underline;
}

#home a:hover {
color: black;
}

main#presse a:hover {
color: rgba(0,0,0,1);
}
.grey {
color: rgba(0,0,0, .3);
}

.black {
color: rgb(0,0,0, 1);
}


a{
text-decoration: none;
outline: none;
outline: 0;
color: black;
}


nav a:hover, .selected{
color: black;
-webkit-transition: color 0.3s;
-o-transition: color 0.3s;
transition: color 0.3s;
}

::-moz-selection {
color: rgba(0,0,0,.3);
}
::selection {
color: rgba(0,0,0,.3);
}


a img {
-moz-filter: grayscale(0%);
-webkit-filter: grayscale(0%);
        filter: grayscale(0%);

}

a:hover img {
-moz-filter: grayscale(100%);
-webkit-filter: grayscale(100%);
        filter: grayscale(100%);
}

.infobar img {
-moz-filter: grayscale(0%);
-webkit-filter: grayscale(0%);
        filter: grayscale(0%);
}

.infobar a:hover img {
-moz-filter: grayscale(100%);
-webkit-filter: grayscale(100%);
        filter: grayscale(100%);
}


.flexbox .image-container, .grid .image-container {
position: relative;
height: 0;
width: 100%;
overflow: hidden;
justify-content: flex-end;
}

.flexbox .image-container img {
position: absolute;
left: 0;
bottom: 0;
}

#werkliste .album-image img{
height: 9.5rem;
margin-right: .2rem;
margin-bottom: .1rem;
}

#werkliste .infobar .album-image img {
height: 14rem;
margin-right: .2rem;
margin-bottom: 0rem;
}



figure.left{
max-width: 75%;
width: auto;
}

#news figure img {
-o-object-fit: cover;
   object-fit: cover;
}


figure img{
max-width: 100%;
height: auto;
background: white;
}


img[data-src] {
opacity: 0;
}

img {
opacity: 1;
    -webkit-transition: opacity 0.5s linear, filter .1s linear;
    -moz-transition: opacity 0.5s linear, filter .1s linear;
    -o-transition: opacity 0.5s linear, filter .1s linear;
    transition: opacity 0.5s linear, filter .1s linear;
-moz-filter: grayscale(0%) contrast(100%) saturate(100%);
-webkit-filter: grayscale(0%);
        filter: grayscale(0%);
vertical-align: top; 
  user-drag: none;
  -webkit-user-drag: none;
  -moz-user-drag: none;
  -ms-user-drag: none;
  pointer-events: auto; 
}



header{
position: sticky;
top: 0;
left: 0;
width: 100%;
z-index: 100 !important;
padding: 8px 0px 5px 0px;
min-height: 5rem;
background-color: rgb(250,250,250);
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-pack: justify;
    -ms-flex-pack: justify;
        justify-content: space-between;
-webkit-box-orient: vertical;
-webkit-box-direction: normal;
    -ms-flex-direction: column;
        flex-direction: column;
}


header.album{
padding: 0px 0px 0px 0px;
border-top: 1px solid black;
}



#header {
    height: 7rem;
    top: 0;
    width: 100%;
         -webkit-transition: top .5s ease;
 -o-transition: top .5s ease;
 transition: top .5s ease;
}


#header.hide {
    top: -7rem;
}

.infobar {
    height: calc(14rem + 1px);
    width: 100%;
 border-top: 1px solid black;
}


@media screen and (min-width: 65rem) {
#header {
    height: 7.25rem;
}
#header.hide {
    top: -7.25rem;
}
}

nav {
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-pack: justify;
    -ms-flex-pack: justify;
        justify-content: space-between;
margin-left: .2rem;
margin-right: .2rem;
}

nav p{
color: rgba(0,0,0,.3);
-webkit-transition: color .3s;
-o-transition: color .3s;
transition: color .3s;
}

nav p:hover{
color: black;
-webkit-transition: color .3s;
-o-transition: color .3s;
transition: color .3s;
}

nav .selected p{
color: black;
-webkit-transition: color .3s;
-o-transition: color .3s;
transition: color .3s;
}


nav ul{
visibility: hidden;
}
nav .visible{
visibility: visible;
cursor: pointer;
}

nav {
-webkit-box-pack: start;
    -ms-flex-pack: start;
        justify-content: flex-start;
}

header span{
display: -webkit-inline-box;
display: inline-flex;
display: -ms-inline-flexbox;
}

footer{
position: relative;
bottom: 0;
left: 0;
padding: 8px 0px 7px 0px;
width: 100%;
}

.flexbox{
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-pack: start;
    -ms-flex-pack: start;
        justify-content: flex-start;
-webkit-box-orient: horizontal;
-webkit-box-direction: normal;
    -ms-flex-direction: row;
        flex-direction: row;
-ms-flex-wrap: wrap;
    flex-wrap: wrap;
margin-left: .2rem;
margin-right: .2rem;
}

.flexchild-05, .flexchild-1, .flexchild-2, .flexchild-3, .flexchild-4, .flexchild-6, .flexchild-two {
width: 100%;
padding-left: .4rem;
padding-right: .4rem;
}

@media screen and (min-width: 45rem) {
.flexchild-1{
width: calc(((100% / 8) * 4));
}
}

@media screen and (min-width: 65rem) {
.flexchild-1{
width: calc(((100% / 8) * 4));
}
.flexchild-05 {
width: calc(((100% / 8) * 1));
}
.flexchild-2{
width: calc(((100% / 8) * 3));
}
.flexchild-3{
width: calc(((100% / 8) * 4));
}
.flexchild-4{
width: calc(((100% / 8) * 4));
}
.flexchild-two{
width: calc(((100% / 8) * 2));
}
}
@media screen and (min-width: 87rem) {
.flexchild-1{
width: calc(((100% / 10) * 3.333));
}

.flexchild-3{
width: calc((100% / 2));
}
}
@media screen and (min-width: 117rem) {
.flexchild-1{
width: calc((100% / 4));
}
}
@media screen and (min-width: 167rem) {
.flexchild-1{
width: calc((100% / 5));
}
}

.flexchild-1{
padding-bottom: 4rem;
}

.content-subtitle {
padding-bottom: 20px;
}

.top-5 {
padding-top: 5px;
}
.top-8 {
padding-top: 8px;
}
.top-10 {
padding-top: 10px;
}
.top-20 {
padding-top: 19px;
}
.bottom-5 {
padding-bottom: 5px;
}
.bottom-10 {
padding-bottom: 10px;
}

.bottom-20 {
padding-bottom: 19px;
}
.bottom-40 {
padding-bottom: 38px;
}

.spacer{
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-pack: justify;
    -ms-flex-pack: justify;
        justify-content: space-between;
grid-gap: .5rem;
}

.newstitle {
min-height: 63px;
}

.indicator::before {
  content: '○';
}

.active .indicator::before {
  content: '●';
}

.item-preview, .border-top{
padding-top: 5px;
padding-bottom: 4px;
}



.item, .border-top{
border-top: 1px solid black;
}

.item.item-passiv{
border-top: 1px solid rgba(0,0,0, .3);
}
.item.grey{
border-top: 1px solid rgba(0,0,0, .3);
}

.border-bottom{
border-bottom: 1px solid black;
}
.border-bottom-grey{
border-bottom: 1px solid rgba(0,0,0, .3);
}

.item.passiv{
background-color: red;
}

@media screen and (min-width: 65rem) {
.instagram {
position: absolute;
top: 0;
right: 0;
padding-right: .6rem;
padding-top: 8px;
}
}

.menu-container{
display: none;
width: 100vw;
max-height: calc(100vh - 6.5rem);
z-index: 9999999 !important;
background-color: rgb(250, 250, 250);
-webkit-animation: fadein 1s;
        animation: fadein 1s;
padding-top: 0;
}


.inline-content{
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

main .inline-content, footer .inline-content{
    border-top: 1px solid rgba(0,0,0,.5);
    padding-top: .2rem;
    padding-bottom: .1rem;
}


main .inline-content:last-of-type, footer .inline-content:last-of-type{
    border-bottom: 1px solid rgba(0,0,0,.5);
}

#searchbar .inline-content {
    border-top: 0px solid rgba(0,0,0,.5);
     border-bottom: 0px solid rgba(0,0,0,.5);
         padding-top: 0rem;
    padding-bottom: .2rem;
}



.inline-content #search{
-webkit-box-flex:  1;
    -ms-flex-positive:  1;
        flex-grow:  1;
vertical-align: middle;
}
.inline-content h1 {
width: 75%;
}
.inline-content h1:first-of-type{
width: 25%;
}

@media screen and (max-width: 65rem) {
.inline-content h1 {
-webkit-hyphens: auto;
    -ms-hyphens: auto;
        hyphens: auto;
}
}

.inline-content-1{
width: 40%;
}

.inline-content-2{
width: 60%;
padding-bottom: 4rem;
}

.privacy-column-count{
-webkit-column-count: 1;
   -moz-column-count: 1;
        column-count: 1;
-webkit-column-gap: .8rem;
   -moz-column-gap: .8rem;
        column-gap: .8rem;
}
@media screen and (min-width: 65rem) {
.privacy-column-count{
-webkit-column-count: 2;
   -moz-column-count: 2;
        column-count: 2;
}
}

.item.selective .item-preview {
cursor: pointer;
-webkit-transition: padding-bottom .3s;
-o-transition: padding-bottom .3s;
transition: padding-bottom .3s;
}

.item.selective .item-preview:hover {
cursor: pointer;
color: black;
padding-bottom: 1rem;
}
.item.selective.active .item-preview {
padding-bottom: 1rem;
-webkit-transition: padding-bottom .3s;
-o-transition: padding-bottom .3s;
transition: padding-bottom .3s;
color: black;
}

.item.selective.open {
background-color: rgb(250,250,250);
}
.noresults {
display:  none;
-webkit-transition: all .5s ease;
-o-transition: all .5s ease;
transition: all .5s ease;
}

.align-right{
text-align: right;
float: right;
}

.album-grid {
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-pack: start;
    -ms-flex-pack: start;
        justify-content: flex-start;
-webkit-box-orient: horizontal;
-webkit-box-direction: normal;
    -ms-flex-direction: row;
        flex-direction: row;
-ms-flex-wrap: wrap;
    flex-wrap: wrap;
  -webkit-overflow-scrolling: touch;
  scroll-behavior: smooth;
}


.infobar .album-grid {
  display: flex; 
  flex-wrap: nowrap; /* Prevent wrapping to keep items in a single row */
  width: auto; /* Allow the grid to adjust its width */
  overflow-x: scroll; /* Enable horizontal scrolling */
}

.album-grid::-webkit-scrollbar {
  width: 8px; 
  height: 8px; 
}

.album-grid::-webkit-scrollbar-track {
  background: transparent; /* or any color */
}

.album-grid::-webkit-scrollbar-thumb {
  background-color: black; 
  border: none; 
}

.album-grid {
  scrollbar-width: thin; 
  scrollbar-color: black transparent;
}

.album-grid {
  -ms-overflow-style: -ms-autohiding-scrollbar; 
}

.infobar .album-image {
  flex: 0 0 auto; 

}



.infobar .album-image:hover {
  cursor: pointer;
  filter: grayscale(100%);
}



.carousel-container {
position: relative;
height: 100vh;
width: 100vw; 
}

.carousel {
    display: flex;
    width: 100%;
    height: 100%;
    align-items: center;
}


.carousel-cell figure {
    display: flex;
    justify-content: center;
    align-items: center;  
    margin: 0 auto;
    width: 100vw;
    height: 100vh;
}

.carousel-cell figure img {
opacity: 0;
}

.carousel-cell.slick-active figure img {
opacity: 1;
-webkit-transition: opacity 1s ease;
-o-transition: opacity 1s ease;
transition: opacity 1s ease;
}



.slick-slider
{
    position: relative;

    display: block;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;

    -webkit-user-select: none;
       -moz-user-select: none;
        -ms-user-select: none;
            user-select: none;

    -webkit-touch-callout: none;
    -khtml-user-select: none;
    -ms-touch-action: pan-y;
        touch-action: pan-y;
    -webkit-tap-highlight-color: transparent;

}

.slick-list
{
    position: relative;

    display: block;
    overflow: hidden;

    margin: 0;
    padding: 0;
}
.slick-list:focus
{
    outline: none;
}
.slick-list.dragging
{
    cursor: pointer;
    cursor: hand;
}

.slick-slider .slick-track,
.slick-slider .slick-list
{
    -webkit-transform: translate3d(0, 0, 0);
        -ms-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
}

.slick-track
{
    position: relative;
    top: 0;
    left: 0;

    display: -webkit-box;

    display: -ms-flexbox;

    display: flex;
    margin-left: auto;
    margin-right: auto;
   height: auto;
}
.slick-track:before,
.slick-track:after
{
    display: table;

    content: '';
}
.slick-track:after
{
    clear: both;
}
.slick-loading .slick-track
{
    visibility: hidden;
}

.slick-slide
{
    display: none;
    float: left;
    height: 100%;
    z-index: 10;
    cursor: pointer;
    justify-content: center;
        -webkit-transition:opacity .5s linear;
        -o-transition:opacity .5s linear;
        transition:opacity .5s linear;
    }
  
.slick-active {
        -webkit-transition:opacity .5s linear;
        -o-transition:opacity .5s linear;
        transition:opacity .5s linear;
        cursor: initial;
    }


.slick-slide img{
        opacity: 0s;
        -webkit-transition:opacity .5s linear;
        -o-transition:opacity .5s linear;
        transition:opacity .5s linear;
    }
  
.slick-active img{
        opacity:1!important;
        -webkit-transition:opacity .5s linear;
        -o-transition:opacity .5s linear;
        transition:opacity .5s linear;
        cursor: initial;
    }

[dir='rtl'] .slick-slide
{
    float: right;
}

.slick-slide img
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    max-height: 100vh;
}



@media screen and (min-width: 55rem) {

.prev {
    display: flex;
    z-index: 5;
    top: 0;
    position: absolute;
    left: 0;
    width: 50vw;
    height: 100%;
    cursor: w-resize; 
    background: none;
    border: none; 
    outline: none; 
}

.next {
    display: flex;
    z-index: 5;
    top: 0;
    position: absolute;
    right: 0;
    width: 50vw;
    height: 100%;
    cursor: e-resize;
    background: none;
}

}

.slick-slide.slick-loading img
{
    display: none;
}
.slick-slide.dragging img
{
    pointer-events: none;
}
.slick-initialized .slick-slide
{
    display: flex;
}
.slick-loading .slick-slide
{
    visibility: hidden;
}






@keyframes fadein {
    from { opacity: 0; }
    to   { opacity: 1; }
}

@-webkit-keyframes fadein {
    from { opacity: 0; }
    to   { opacity: 1; }
}

