@font-face {
	font-family: "HappyTimes";
	src: url("../fonts/happy-times_web.eot"); 
	src: url('../fonts/happy-times_web.eot?#iefix') format('embedded-opentype'),
        url('../fonts/happy-times_web.woff2') format('woff2'),
        url('../fonts/happy-times_web.woff') format('woff'), 
        url('../fonts/happy-times_web.ttf')  format('truetype'); 
	font-style: normal;
	font-weight: normal;
	}
@font-face {
	font-family: "HappyTimes";
	src: url("../fonts/happy-times_italic_web.eot"); 
	src: url('../fonts/happy-times_italic_web.eot?#iefix') format('embedded-opentype'),
        url('../fonts/happy-times_italic_web.woff2') format('woff2'),
        url('../fonts/happy-times_italic_web.woff') format('woff'),
        url('../fonts/happy-times_italic_web.ttf')  format('truetype');
	font-style: italic;
	font-weight: normal;
	}

/* Root Variables & Media Query */


:root {
	--type-title: 10vw;
	--type-h1: 1.8rem;
	--type-h2: 1.4rem;
	--type-h3: 1rem;
	--type-medium: 1.4rem;
	--type-normal: 15pt;
	--type-small: 0.8rem;
	--columnwidth: 100%;
	}

@media only screen and (min-width: 800px) {
	:root {
		--type-title: 8vw;
		--type-h1: 4rem;
		--type-h2: 2rem;
		--type-h3: 1rem;
		--type-medium: 1.4rem;
		--type-normal: 18.5pt;
		--type-small: 0.75rem;
		--columnwidth: 50%;
		}
	}
@media only screen and (min-width: 1500px) {
	:root {
		--type-title: 10vw;
		--type-h1: 4rem;
		--type-h2: 2rem;
		--type-h3: 1rem;
		--type-medium: 1.4rem;
		--type-normal: 1rem;
		--type-small: 0.75rem;
		}
	}


/* Resets*/

*, *::before, *::after {
	margin: 0;
	padding: 0;
	border: none;
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
	}
article, aside, details, figcaption, figure,
footer, header, main, menu, nav, section, summary {
	/* Add correct display for IE 9- and some newer browsers */
	display: block;
	}
::-moz-selection {
	background: #bbb;
	color: #fff;
	}
::selection {
	background: #bbb;
	color: #fff;
	}
h1, h2, h3, h4, h5, h6,
p, ul, ol, figure, pre {
	/* Reset font-sizes and normalize margins */
	font-size: inherit;
	line-height: inherit;
	margin: 0;
	}
h1, h2, h3, h4, h5 {
	font-weight: normal;
	font-size: 1rem;
	text-transform: uppercase;
	margin: 0 0 1rem 0;
	}
img {
	border-style: none;
	width: 100%;
	height: auto;
	}
.video video {
	width: 100%;
	height: auto;
	}
p {
	margin-bottom: 1em;
	}
a, a:active {
	color: inherit;
	text-decoration: none;
	border-bottom: 1px solid black;
	transition: .2s;
	}
a:hover, a:focus {
	border-bottom: 1px solid transparent;
	filter: blur(0.04em);
	}
.cf::after {
	content: "";
	display: block;
	height: 0;
	overflow: hidden;
	clear: both;
	}
hr {
	font-weight: 500;
	height: 1.5rem;
	text-align: center;
	margin-top: 3rem;
	margin-bottom: 1.5rem;
	}
b, strong {
	font-weight: 400;
	}
input,
label,
select,
button,
textarea {
	margin:0;
	border:0;
	padding:0;
	display:inline-block;
	vertical-align:middle;
	white-space:normal;
	background:none;
	line-height:1;
	font: normal 400 1em/1.3 "HappyTimes", "Times New Roman", Times, serif;
	}
input:focus {
	outline:0;
	}
input,
textarea {
	-webkit-box-sizing:content-box;
	-moz-box-sizing:content-box;
	box-sizing:content-box;
	}

button,
input[type=reset],
input[type=button],
input[type=submit],
input[type=checkbox],
input[type=radio],
select {
	-webkit-box-sizing:border-box;
	-moz-box-sizing:border-box;
	box-sizing:border-box;
	}
/* Make webkit render the search input like a normal text field */
input[type=search] {
	-webkit-appearance:textfield;
	-webkit-box-sizing:content-box;
	}
::-webkit-search-decoration {
	display:none;
	}
button,
input[type="reset"],
input[type="button"],
input[type="submit"] {
	/* Fix IE7 display bug */
	overflow:visible;
	width:auto;
	}
textarea  {
	vertical-align:top;
	overflow:auto;
	}
select[multiple]  {
	/* Move the label to the top */
	vertical-align:top;
	}




/* General Items */

html {
	background: #FFF;
	font-size: var(--type-normal);
	line-height: 1.3;
	font-family: "HappyTimes", "Times New Roman", Times, serif;
	overflow-y: scroll;
	cursor: default;
	position: relative;
	min-height: 100%;
	-webkit-text-size-adjust: 100%;
	-ms-text-size-adjust: 100%;
	-webkit-tap-highlight-color: yellow;
	}

@media only screen and (min-width: 800px) {
	html {
		line-height: 1.2;
		}
	}

body {
	padding: 1rem;
	min-height: 100vh;
	}
main {
	margin-top: 1rem;
	margin-bottom: 4rem;	
	min-height: 35vh;
	}
h1.title {	
	font-size: var(--type-title);
	text-transform: uppercase;
	margin: 0;
	line-height: 1em;
	margin-bottom: 1rem;
	}
h1.title em{
	text-transform: none;
	}
h2.section {
	margin: 0 0 1rem 0;
	font-size: var(--type-h2);
	line-height: 1;
	font-weight: normal;
	text-align: left;
	text-transform: none;
	}
a.button, a.button:visited {
	display: inline-block;
	padding: 0.3em 0.3em 0.3em 0.3em;
	border: 1px solid #000;
	}	
a.button:hover {
	background: #000;
	color: #fff;
	-webkit-filter: blur(0px);
	}

.columns {
	display: block;
	margin-bottom: 1rem;
	}
.columns .column{
	width: 100%;
	}
.columns .column li{
	list-style: none;
	}
main a img {
	-webkit-filter: blur(0.3px);
	filter: blur(0px);
	-webkit-transition: all 0.2s;
	transition: all 0.2s;
	}
main a:hover img {
	-webkit-filter: blur(4px);
	filter: blur(4px);
	-webkit-transition: all 0.2s;
	transition: all 0.2s;
	}
figcaption {
	font-size: var(--type-small);
	line-height: 1.5rem;
	}
.hidden {
	display: none;
	}
.hiddenPart {
	margin-left: -0.275rem !important; /* missing space fix */
	}
.caption {
	font-size: var(--type-small);
	line-height: 1.3em;
	margin-bottom: 1rem;
	}
.caption p{
	margin: 0;
	}
.caption p.artist {
	margin-top: 0.5em;
	margin-bottom: 0.2em;
	}
.caption em{
	font-style: italic;
	}
.caption.block-caption {
	margin-top: -1rem;
	}

.slash{
	margin: 0 0.1em;
	display: inline-block;
	}
.urgent {
	-webkit-animation-name: blinker; animation-name: blinker;
	-webkit-animation-duration: 3s; animation-duration: 3s;
	-webkit-animation-timing-function: linear; animation-timing-function: linear;
	-webkit-animation-iteration-count: infinite; animation-iteration-count: infinite;
	position: relative;
	z-index: 1;
	}
	@-webkit-keyframes blinker {
		0% { opacity: 1.0; }
		50% { opacity: 0.0; }
		100% { opacity: 1.0; }
		}
	@keyframes blinker {
		0% { opacity: 1.0; }
		50% { opacity: 0.0; }
		100% { opacity: 1.0; }
		}

/* General Desktop */

@media only screen and (min-width: 800px) {
	.columns {
		display: flex;
		gap: 1rem;
		margin-bottom: 1rem;
		}
	.columns .column{
		width: var(--columnwidth);
		}
	}


/* Forms General */

#membersubscription {
	display: block;
	}
.register #membersubscription {
	display: none;
	}
#membersubscription h2 {
	margin-top: 0 !important; /* otherwise content jumps with slidetoggle */
	}
input {
	font-size: 1em;
	font-family: inherit;
	padding: 0.2rem 0.4rem;
	border: 1px solid black;
	background-color: transparent;
	}
input[type="text"] {
	background-color: transparent;
	color: inherit;
	}
input[type="submit"] {
	background-color: transparent;
	}
input[type="submit"]:hover {
	cursor: pointer;
	background-color: #000;
	color: #fff;
	}
form.memberform {
	margin-bottom: 2rem;
	}
.alert {
	-webkit-animation-name: blinker;
	animation-name: blinker;
	-webkit-animation-duration: 1s;
	animation-duration: 1s;
	-webkit-animation-timing-function: linear;
	animation-timing-function: linear;
	-webkit-animation-iteration-count: infinite;
	animation-iteration-count: infinite;
	margin-bottom: 2rem;
	}
form.memberform input {
	margin-bottom: .25rem;
	}
textarea:focus, input:focus{
   outline: none;
	}


/* Header */

header {
	position: relative;
	font-size: 5.78vw;
	line-height: 1.1em;
	margin-bottom: 1rem;
	}
header a {
	text-decoration: none;
	border-bottom: none;
	}
header a:hover {
	text-decoration: none;
	border-bottom: none;
	}
header .logo {
	display: flex;
	flex-wrap: wrap;
	gap: 1rem;
	margin-bottom: 1rem;
	}
header .logo .logo-letter {
	width: calc(50% - 0.5rem);
	padding: 0;	
	}
header .logo .logo-letter img{
	display: block;
	}
header .logo .logo-letter svg{
	width: 100%;
	height: 100%;
	display: block;
	}
header .logo-subtitle a{
	display: block;
	}

@media only screen and (min-width: 550px) {
	header {
		font-size: 5.3vw;
		line-height: 0.95em;
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
		margin-top: -0.15em;
		}
	header .logo {
		width: 15.7%;
		display: flex;
		flex-wrap: wrap;
		padding-top: 0.15em;
		margin: 0;
		gap: 0;
		}
	header .logo .logo-letter {
		width: 44%;
		margin: 0 6% 6% 0 ;
		height:44%;
		padding: 0;
		}
	header .logo-subtitle {
		width: 83.5%;
		}

	}
@media only screen and (min-width: 700px) {
	header {font-size: 5.4vw;}
	}
@media only screen and (min-width: 1000px) {
	header {font-size: 5.5vw; }
	}


/* Main Menu */


.menu {
	top: -1px;
	position: sticky;
	margin-left: -1rem;
	margin-right: -1rem;
	z-index: 1000;
	}

.menu.stuck {
	font-size: var(--type-small);
	}	
.menu .menu-body {
	display: flex;
	justify-content: space-between;
	padding: 0.5rem 1rem .5rem 1rem;
	background: #fff;
	}
.menu .menu-hidden {
	display: none;
	}
.menu .menu-hidden.visible {
	display: inline-block;
	}
.menu .menu-toggler {
	background: #eee;
	padding: 0.2rem 0.6rem;
	border-radius: 25%;
	cursor: pointer;
	}
.menu .menu-toggler:before {
	content: '...';
	}
.menu .menu-toggler.active:before {
	content: '×';
	}

.menu .menu-footer {
	height: 1rem;
	display: none;
	background: linear-gradient(to bottom, rgba(255,255,255,1) 0%, rgba(255,255,255,0.3) 50%, rgba(255,255,255,0) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	}
.menu.stuck .menu-footer {
	display: block;
	}


.menu .brand.hidden {
	margin-right: 1em;
	display: none;
	}
.menu.stuck .hidden{
	display: inline-block;
	}	
.menu .menu-item {
	cursor: pointer;
	position: relative;
	transition: none;
	}
.menu .menu-item .menu-alert{
	background: red;
	display: inline-block;
	position: absolute;
	left: -0.2rem;
	top: -0.2rem;
	border-radius: 50%;
	padding: 0.2em;
	font-size: 0.4rem;
	height: 0.7rem;
	width: 0.7rem;
	text-align: center;
	color: #fff;
	display: none;
	}

.menu a[aria-current] {
	text-transform: uppercase;
	}
.menu .menu-left {
	width: 100%;
	}
.menu .menu-right {
	}

.menu-left-menu {
	margin-right: 1rem;
	display: inline;
	}
.menu .amp {
	margin: 0 .2em 0 .4em;
	}
.menu .languages {
	display: inline-block;
	}
.menu.stuck .languages {
	display: none;
	}	
.menu a.active {
	border-bottom: none;
	text-transform: uppercase;
	}
.menu .languages a.active {
	border-bottom: none;
	text-transform: none;
	}

#back-to-top {
	cursor: pointer;
	border: 0;
	-webkit-transition: all 0.2s ease-out;
	transition: all 0.2s ease-out;
	cursor: pointer;
	padding: 0 0.3em .2em 0.3em;
	border: 1px solid red;
	display: none;
	}
#back-to-top:hover {
	background: #000;
	color: #fff;
	}	
#back-to-top.show {
	display: block;
	}

.contrast-toggle {
	display: flex;
	border: none;
	position: relative;
	text-decoration: none;
	z-index: 10;
	}
.contrast-toggle:hover {
	filter: blur(0);
	border: none;
	}
.contrast-toggle.hide {
	display: none;
	}
.half-circle {
	display: inline-block;
	color: white;
	text-align: center;
	vertical-align: top;
	overflow: hidden;
	width: .4rem;
	height: 0.8rem;
	line-height: 1rem;
	text-orientation: upright;
	margin-top: 0.3rem;
	}
.contrast-toggle.bw  .half-circle.right {
	border-radius: 0 100% 100% 0/0 50% 50% 0;
	background: #000;
	border: 1px solid #000;
	}
.contrast-toggle.bw .half-circle.left {
	border-radius: 100% 0 0 100%/50% 0 0 50%;
	background: #fff;
	border: 1px solid #000;
	}
.contrast-toggle.color  .half-circle.right {
	border-radius: 0 100% 100% 0/0 50% 50% 0;
	background: blue;
	border: 1px solid #000;
	}
.contrast-toggle.color .half-circle.left {
	border-radius: 100% 0 0 100%/50% 0 0 50%;
	background: red;
	border: 1px solid #000;
	}

.contrast-toggle .tooltip  {
	opacity: 0;
	font-size: var(--type-small);
	background-color: #000;
	color: #fff;
	text-align: center;
	padding: 5px 0;
	position: absolute;
	z-index: 1;
	right: 1rem;
	top: 0;
	width: 5rem;
	transition: opacity 0.2s;
	pointer-events: none;
	z-index: 1;
	border-radius: 0.2em;
	-webkit-box-shadow: 4px 4px 15px 0px rgba(0,0,0,0.4);
	-moz-box-shadow: 4px 4px 15px 0px rgba(0,0,0,0.4);
	box-shadow: 4px 4px 15px 0px rgba(0,0,0,0.4);
	will-change: transform;
	}
.contrast-toggle:hover .tooltip {
	opacity: 1;
	animation: floating 4s ease-in-out infinite
	}
@keyframes floating {
	0% { transform: translate(0,  0px); }
	25%  { transform: translate(-2px, -2px); }
	75%  { transform: translate(2px, 2px); }
	100%   { transform: translate(0, -0px); }   
	}



@media only screen and (min-width: 800px) {
.menu {
	font-size: 1rem;
	}	
	}

/* Searchbar */

#searchbar {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 9999;
	text-align: center;
	display: none;
	}
#searchbar form{
	margin-top: 40vh;
	padding: 3em;
	width: auto;
	z-index: 99999;
	}
#searchbar input[type="search"]{
	background: #fff;
	width: 50%;
	boder: 1px solid #000;
	}
#searchbar input[type="submit"],
#searchbar input[type="button"]{
	background: #000;
	color: #fff;
	border: none;
	}
#searchbar input[type="submit"]:hover,
#searchbar input[type="button"]:hover{
	background: #fff;
	color: #000;
	cursor: pointer;
	}

/* Newsletter Section */

.newsletter {
	}

.infos .newsletter {
	margin-bottom: 3rem;
	}
.newsletterform {
	margin-top: .5rem;
	display: block;
	}
form input::placeholder	{
	color: #bbb;
	}
form input[type=text],
form input[type=email] {
	border: 1px solid #000;
	padding:.2em;
	display: block;
	margin-bottom: 1rem;
	width: calc(100% - 0.5em);
	}
form input[type=submit] {
	border: 1px solid #000;
	padding:.2em;
	background: #000;
	color: #fff;
	display: block;
	cursor: pointer;
	width: 100%;
	}
form input[type=submit]:hover {
	border: 1px solid #000;
	background: #fff;
	color: #000;
	}

@media only screen and (min-width: 800px) {

	.newsletterform {
		}	
	.newsletter-inputs {
		display: flex;
		gap: 1rem;
		}
	.newsletter-inputs .mc-field-group {
		flex-grow: 0;
   		flex-shrink: 0;
		flex-basis: 30%;
		}
	}



/* General Page Elements */

.block-text {
	margin-bottom: 1rem;
	}
.block-list {
	margin-bottom: 1rem;
	}
.block-list ul{
	list-style-type: "→";
	list-style-position: outside;
	list-style-image: none;
	padding-left: 1rem;
	}
.block-list ul li{
	margin-bottom: .0em;
	padding-left: 1em;
	}
.block-link {
	margin-bottom: 3rem;
	}
.block-link:before{
	content: '⤻';
	margin-right: .5rem;
	}
.block-infos {
	margin-bottom: 1rem;
	font-size: var(--type-small);
	}
.block-infos p{
	margin-bottom: 0rem;
	}
.block-audio {
	margin-bottom: 2rem;
	}
.block-audio audio{
	width: 100%;
	}
.block-audio audio::-webkit-media-controls-panel {
	background: none;
	}

.block-images {
	margin-top: 2rem;
	margin-bottom: 3rem;
	}
.block-video .video{
    position: relative;
    width: 100%;
    height: 0;
    padding-bottom: 56.25%;
	}
.block-video .video iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
	}

/* Images */

.exhibition-image,
.event-image,
.section-image  {
	margin-top: 1rem;
	margin-bottom: 1rem;
	}


/* Images Desktop */

@media only screen and (min-width: 800px) {

	.exhibition-image img,
	.event-image img,
	.section-image img,
	.work-image img  {
		max-height: 90vh;
		max-width: 100%;
		width: auto;
		}
	}

/* General sections */

.generalsection {
	}
.generalsection.infos-kontakt {
	margin-bottom: 2rem;
	}
.generalsection h2{
	cursor: pointer;
	font-size: var(--type-h1);
	}
h2 .arrow{
	font-size: 0.8em;
	margin-left: .3rem;
	line-height: 1em;
	display: inline-block;
	transform: translateY(-0.1em);
	transition: transform 0.2s;
	}
.active .arrow {
	transform: rotate(180deg);
	}
.generalsection .section-content{
	display: none;
	margin-bottom: 2rem;
	padding-top: 1rem;
	}

.generalsection .section-content h1,
.generalsection .section-content h2,
.generalsection .section-content h3{
	margin: 0;
	margin-bottom: 1rem;
	font-size: var(--type-medium);
	}

@media only screen and (min-width: 800px) {
	h2 .arrow{
		font-size: 0.5em;
		transform: translateY(-0.2em);
		}
	}




/* Homepage All */


.news-section {
	margin-bottom: 4rem;
	}


.marquee-box {
	}
.marquee {
	max-width: 100vw; /* iOS braucht das */
	white-space: nowrap;
	overflow: hidden;
	/* hier evtl. noch font-size, color usw. */
	margin-left: -1rem;
	margin-right: -1rem;
	background: #000;
	padding-top: .5rem;
	padding-bottom: .5rem;
	color: #fff;
	margin-bottom: 1rem;
	}

.marquee span {
	display: inline-block;
	padding-left: 105%; /* die zusätzlichen 5% erzeugen einen verzögerten Start und vermeiden so ein Ruckeln auf langsamen Seiten */
	
	}
.marquee span br{
	display: none;
	}	
.marquee span p{
	display: inline;
	}	
.marquee span a{
	border-bottom: 1px solid #fff;
	}

/* Optional: mouseover (oder Tipp auf dem Touchscreen) pausiert die Laufschrift */
	.marquee span:hover {
		animation-play-state: paused 
	}
	/* Make it move */
@keyframes marquee {
	0%   {transform: translate3d(0,0,0);}
    100% {transform: translate3d(-100%,0,0);}
	}


.newsbox {
	border: 1px solid black;
	line-height: 1.2em; 
	}
.newsbox .newsbox-text{
	padding: .5rem;
	background: #000;
	color: #fff;	
	}	
.newsbox p {
	margin: 0;
	}
.preview-section {
	font-size: var(--type-title);
	line-height: 0.95em;
	margin-bottom: 1em;
	}
.preview-section .section-headline {
	line-height: 1em;
	}
.home .preview-group{
	line-height: 0.95em;
	margin-bottom: .5em;
	}
.preview-group-date{
	font-size: var(--type-title);
	}
.preview-group a.preview-starwork{
	font-size: var(--type-normal);
	display: inline-block;
	border: none;
	margin: 0;
	line-height: 1.2em;
	margin-top: 1em;
	}
.preview p{
	margin: 0;
	}
a.preview,
a.preview .preview-artist,
a.preview .preview-title,
a.preview p {
	display: inline;
	text-decoration: none;
	border-bottom: none;
	overflow-wrap: break-word;
	word-wrap: break-word;
	-ms-word-break: break-all;
	word-break: break-all;
 	word-break: break-word;
	hyphens: auto;
	text-decoration: underline;
	text-decoration-thickness: 0.03em;
	text-underline-offset: 0.1em;
	position: relative;
	}
a.preview:hover,
a.preview:hover .preview-artist,
a.preview:hover .preview-title,
a.preview:hover p {
	text-decoration: none;
	}
a.preview::selection,
a.preview .x-artist::selection,
a.preview .x-title::selection,
a.preview p::selection,
.preview-group::selection,
.preview-group-date::selection,
.preview-group .preview-ampersand::selection,	
a.preview::-moz-selection,
a.preview .x-artist::-moz-selection,
a.preview .x-title::-moz-selection,
a.preview p::-moz-selection,
.preview-group::-moz-selection,
.preview-group-date::-moz-selection,
.preview-group .preview-ampersand::-moz-selection  {
	background: #fff;
	color: #bbb;
	}
.preview-title {
	text-transform: uppercase;
	width: 100%;
	position: relative;
	}
.preview-alert {
	background: red;
	display: inline-block;
	border-radius: 50%;
	padding: 0.2em;
	font-size: 0.4rem;
	height: 0.7rem;
	width: 0.7rem;
	text-align: center;
	color: #fff;
	position: absolute;
	left: 0em;
	top: 0em;
	display: none;
	}	
.preview-title p {
	margin: 0;
	}
.preview-title em {
	text-transform: initial;
	font-style: italic;
	}
.preview-artist {
	display: block;
	}
.preview-artist p{
	display: inline;
	margin: 0;
	}
.preview-ampersand {
	margin-top: 0em;
	}
.preview-group a.preview-starwork p {
	margin: 0;
	}
.preview-group a.preview-starwork .preview-title,
.preview-group a.preview-starwork .preview-artist{
	display: inline-block;
	border-bottom: none;
	text-decoration: underline;
	}
.preview-group a.preview-starwork:hover .preview-title,
.preview-group a.preview-starwork:hover .preview-artist{
	border-bottom: none;
	}

@media only screen and (min-width: 800px) {
	.newsbox .newsbox-text{
		padding: 1rem;
		}	
	}


/* Previews Exhibitions & Events */

.previews {
	width: 100%;
	}

.previews .preview-group {
	display: block;
	line-height: .95em;
	font-size: 6vw;
	margin-bottom: .5em;
	}

.previews .today,
.previews .present,
.previews .future {
	margin-bottom: 2rem;
	}
.previews .section-headline{
	margin: 0;
	line-height: 1em;
	}

.past .previews {
	margin-top: 1rem;
	}
.past .previews .preview{
	display: block;
	margin-top: 0rem;
	font-size: var(--type-medium);
	line-height: 1.2;
	border: none;
	margin-bottom: 1rem;
	}








.readmore-toggle {
	display: inline;
	border: none;
	padding-top: 1rem;
	margin-top: -0.5em;
	}
#mapid {
	margin-top: 1rem;
	height: 200px;
	}
.teamsters {
	}
.teamsters .teamster {
	width: 100%;
	}

/* Sections Desktop */

@media only screen and (min-width: 800px) {

section p a.image {
	width: 20%;
	}
#mapid {
	height: 450px;
	}
.teamsters {
	display: grid;
  	grid-template-columns: repeat(4, 1fr);
  	grid-gap: 1%;
	}
}


/* Exhibition / Event */

.page-header {
	margin-bottom: 3rem;
	}
.page-header .date {
	font-size: var(--type-h1);
	line-height: 1em;
	}
.page-header .artist {
	font-size: var(--type-h1);
	line-height: 1em;
	}
.page-header .title {
	font-size: var(--type-h1);
	line-height: 1em;
	text-transform: uppercase;
	}
.page-header .title em{
	text-transform: none;
	}
.page-header .opening {
	margin-top: 2rem;
	}
.exhibition-images {
	margin-bottom: 3rem;
	}






/* Blog */

.articles {
	}
.articles .article{
	margin-bottom: 0rem;
	font-size: var(--type-medium);
	position: relative;
	}
.articles .article.active{
	margin-bottom: 4rem;
	}
.article .preview-alert {
	position: relative;
	transform: translateY(0.2em);
	}
.articles .article .article-header {
	font-size: var(--type-small);
	margin-bottom: .5rem;
	position: relative;
	}

.articles .article h2 {
	margin:0;
	font-size: 3rem;
	line-height: 1em;
	margin-bottom: 2rem;
	cursor: s-resize;
	}
.articles .article.active h2 {
	cursor: n-resize;
	}
.articles .article .article-body {
	display: none;
	}



/* Pagination */

.page-pagination {	
	display: flex;
	justify-content: space-between;
	}
.page-pagination a {
	border: 1px solid #000;
	padding:.2em;
	background: #000;
	color: #fff;
	display: inline-block;
	cursor: pointer;
	}
.page-pagination a:hover {
	border: 1px solid #000;
	background: #fff;
	color: #000;
	filter: blur(0);
	}

/* Collection Overview General */

.collection-item-infos p {
	margin: 0;
	}
.collection ul.list {
	display: flex;
	gap: 1rem;
	flex-wrap: wrap;
	}
.collection ul.list li.list-item {
	width: calc(50% - 0.5rem);
	font-size: 0.7rem;
	list-style: none;
	}
.collection ul.list li.list-item .image-container {
	width: 100%;
	margin: 0;
	height: 20vw;
	position: relative;
	display: flex;
	align-items: flex-end;
	justify-content: center;
	margin-bottom: .5rem;
	border: none;
	}	

.collection ul.list li.list-item .image-container img {
	max-width: 100%;
	width: auto;
	height: auto;
	max-height: 100%;
	}
.collection span.sort:hover {
	cursor: pointer;
	}
.collection div.sort-wrapper .active {
	border-bottom: 1px solid black;
	}
.collection span.maptoggler:hover {
	cursor: pointer;
	}


#worksmap {
	margin-top: 1rem;
	margin-bottom: 3rem;
	height: 90vh;
	}



/* Collection Overview Desktop */

@media only screen and (min-width: 800px) {

.collection ul.list {
	}

.collection ul.list li.list-item {
	width: calc(20% - .8rem);
	font-size: 1rem;
	}
}

/* Collection Overview HUGE Desktop */

@media only screen and (min-width: 1500px) {
.collection ul.list li {
	margin: 3rem 2%;
	width: 16%;
	font-size: 1rem;
	}
.collection div.image-container {
	width: 100%;
	margin: 0;
	height: 22vw;
	position: relative;
	}
}

/* Collection Work General*/

.worktitle {
	margin: 0;
	}

.work-images {
	margin-top: 3rem;
	}
.work-images a{
	border: none;
	}



/* Shop General */

.product {
	margin-bottom: 6em;
	}
.product .title {
	font-size: 2rem;
	line-height: 1;
	margin: 0;
	}
.product .title p{
	margin: 0;
	}
.product p {
	margin: 0;
	margin-bottom: 1em;
	}
.product-images {
	margin-bottom: 2em;
	}


/* Shop Desktop */

@media only screen and (min-width: 800px) {

	.product-images {
		width: 30%;
		float: left;
		margin-bottom: 0;
		}
	.product-infos {
		width: 65%;
		float: right;
		}
	}


/* Bulletins */

.bulletin-previews{
	flex-wrap: wrap;
	}
.bulletin-previews .bulletin{
	margin-bottom: 3rem;
	}
.bulletin-previews .bulletin a{
	border: none;
	}
.bulletin-previews .bulletin .bulletin-infos {
	}
.bulletin-previews .bulletin .bulletin-subinfos {
	font-size: var(--type-small);
	margin-top: .5rem;
	}



.exhibition section.bulletins {
	margin-bottom: 3rem;
	margin-top: 2rem;
	}


/* Bulletins Desktop */

@media only screen and (min-width: 800px) {

	.bulletin-previews{
		display: flex;
		gap: 1rem;
		flex-wrap: wrap;
		}
	.bulletin-previews .bulletin{
		width: calc(16.66666% - 0.833333rem);
		margin:0;
		}

	}




/* Press */

.press-item {
	margin-bottom: 2rem;
	padding-bottom: 2rem;
	border-bottom: 1px solid #000;
	}
.press-item-header {
	margin-bottom: 2rem;
	font-size: 2rem;
	line-height: 1em;
	overflow-wrap: break-word;
	}
.press-downloads {
	margin-bottom: 1rem;
	}
.press-downloads a{
	display: block;
	cursor: s-resize;
	background: #eee;
	border: none;
	padding: 0.5em;
	margin-bottom: 1rem;
	}

/* Press Desktop */

@media only screen and (min-width: 800px) {
	.press-downloads {
		display: flex;
		flex-wrap: wrap;
		align-content: space-between;
		--gap: 1rem;
		--columns: 6;
		gap: var(--gap);
		margin-bottom: 1rem;
		}
	.press-downloads a{
		display: block;
		width: calc((100% / var(--columns)) - var(--gap) + (var(--gap) / var(--columns)));
		cursor: s-resize;
		background: #eee;
		border: none;
		padding: 0.5em;
		}
	}

/* Search Results */

.search-results {
	margin-bottom: 3rem;
	}

/* Footer */

footer {
	margin: 1rem 0 -1rem 0;
	}
footer #footer-links {
	margin-bottom: 1rem;
}


/* Imprint General */

#imprint, #newsletter-footer {
	margin: 1rem 0 3rem 0;
	display: none;
	}
#imprint {
	-webkit-box-shadow: inset 0px 5px 5px 0px rgba(200, 200, 200,0.3);
	        box-shadow: inset 0px 5px 5px 0px rgba(200, 200, 200,0.3);
	width: calc(100% + 2rem);
	padding: 1rem;
	margin: 0 0 0 -1rem;
	}
#imprint #partners {
	width: 100%;
	}
#imprint .partner {
	clear: both;
	margin-bottom: 3rem;
	margin-top: 2rem;
	}
#imprint .partner h2 {
	margin-bottom: 1.5rem;
	}
#imprint .partner .partner-logos {
	display: flex;
	flex-wrap: wrap;
	gap: 1rem;
	}

#imprint .partner a {
	display: block;
	width: auto;
	border-bottom: none;
	}
#imprint .partner a img {
	height: 2rem;
	width: auto;
	vertical-align: middle;
	-webkit-filter: grayscale(1);
	filter: grayscale(1);
	-webkit-transition: -webkit-filter .2s;
	transition: -webkit-filter .2s;
	transition: filter .2s;
	transition: filter .2s, -webkit-filter .2s;
	}
#imprint .partner figure a {
	border-bottom: none;
	}
#imprint .partner figure a:hover img {
	border-bottom: none;
	-webkit-filter: grayscale(0);
	filter: grayscale(0);
	}



/* Imprint Desktop */

@media only screen and (min-width: 800px) {

	#imprint .partner figure {
		width: 10%;
		height: 3em;
		}
	#imprint .partner a img {
		height: 2.5rem;
		vertical-align: middle;
		}
	}


/* Flickity */

.carousel-cell {
  width: 100%;
	}
.flickity-prev-next-button {
	display: none !important;
	}
.carousel-nav {
	position: relative;
	width: 100%;
	min-height: 1rem;
	}
.carousel-nav a {
	border: none;
	}
.carousel-nav .prev {
	position: absolute;
	left: 0;
	}
.carousel-nav .next {
	position: absolute;
	right: 0;
	}


