/*
Theme Name: ZJO
Author: macREC GmbH
Author URI: https://macrec.ch
Description: Custom Theme for Zurich Jazz Orchestra
Version: 2025-07-23-17-44
License: (c) macREC GmbH
Text Domain: zjo
*/

html {
	font-family: sans-serif;
	font-size: 16px;
	line-height: 22px;
	-ms-text-size-adjust: 100%;
	-webkit-text-size-adjust: 100%;
	margin-top: 0 !important;
	padding: 0;
}

body {
	margin: 0;
	padding: 0;
	background: #fff;
}

.mobile {
	display: none !important;
}

header {
	position: relative;
	height: 70%;
	height: 70vh;
}

img {
	max-width: 100%;
}

img[width],
img[height] {
	height: auto;
}

a#home {
	width: 16%;
	height: 100%;
	left: 42%;
	position: absolute;
}

a#home>div {
	width: 100%;
	height: 100%;
}

div.header-background,
div.header-content,
div.header-content>nav {
	overflow-x: hidden;
	overflow-y: auto;
	background-repeat: no-repeat;
	position: absolute;
	width: 100%;
	-webkit-overflow-scrolling: touch;
}

div.header-background-parallax {
	height: 100%;
	min-height: 100%;
	min-width: 100%;
	position: absolute;
	overflow: hidden;
	padding-bottom: 20px;
}

div.header-background {
	-webkit-background-size: cover;
	-moz-background-size: cover;
	-o-background-size: cover;
	background-size: cover;
	min-height: 100%;
	min-width: 100%;
	background-repeat: no-repeat;
	background-position: center center;
	position: absolute;
	top: 0;
}

div.header-content {
	height: 200px;
	position: absolute;
	margin-top: 25px;
	overflow: hidden;
	-webkit-overflow-scrolling: auto;
	will-change: top;
}

div.header-content>nav {
	background-image: url(img/zjo-logo.svg);
	background-size: contain;
	height: 100%;
	background-position: center center;
	position: relative;
	will-change: height;
}

label.main-menu,
div#nav,
div#lang {
	position: absolute;
}

label.main-menu {
	display: inline-block;
	width: 33px;
	height: 23px;
	border-top: 2px solid #5FBFBC;
	border-bottom: 2px solid #5FBFBC;
	margin: 2px 25px;
	cursor: pointer;
	position: relative;
	z-index: 9997;
}

label.main-menu:before {
	content: "";
	position: absolute;
	top: 10px;
	left: 0px;
	width: 100%;
	border-top: 2px solid #5FBFBC;
}

input.main-menu~nav.header-menu,
input.main-menu[type="checkbox"],
input.main-menu:checked~div.header-content label.main-menu {
	display: none;
}

input.main-menu:checked~nav.header-menu {
	display: block;
	z-index: 9998;
	font-size: 22px;
	line-height: 26px;
}

nav.header-menu {
	position: fixed;
}

nav.header-menu ul[class^="header-menu"] {
	padding: 5px 8px;
	margin: 0;
	list-style: none;
}

nav.header-menu ul.header-menu {
	position: relative;
	margin: 15px;
	background: #5FBFBC;
	padding: 80px 8px 20px 8px;
	min-width: 250px;
}

nav.header-menu ul li {
	color: #000;
	float: none;
}

nav.header-menu ul li.current-menu-item {
	text-decoration: underline;
}

nav.header-menu ul li a {
	color: #000;
	text-decoration: none;
}

nav.header-menu ul li a:hover {
	text-decoration: underline;
}

label.main-menu-close {
	margin: 25px;
	position: absolute;
	top: 0;
	display: inline-block;
	width: 33px;
	height: 33px;
	overflow: hidden;
	cursor: pointer;
}

label.main-menu-close::before {
	height: 1px;
	-webkit-transform: rotate(45deg);
	-moz-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	-o-transform: rotate(45deg);
	transform: rotate(45deg);
}

label.main-menu-close::after {
	-webkit-transform: rotate(-45deg);
	-moz-transform: rotate(-45deg);
	-ms-transform: rotate(-45deg);
	-o-transform: rotate(-45deg);
	transform: rotate(-45deg);
}

label.main-menu-close::before,
label.main-menu-close::after {
	content: '';
	position: absolute;
	height: 2px;
	width: 100%;
	top: 50%;
	left: 0;
	margin-top: -1px;
	background: #000;
}

div#lang {
	display: inline-block;
	right: 0;
	margin: 0 25px;
}

div#lang a,
div#lang a:hover,
div#lang a:active {
	color: #5FBFBC;
	text-decoration: none;
}

div#lang a:hover,
div#lang a:active {
	text-decoration: underline;
}

div.main-sidebar a {
	color: #000;
	text-decoration: none;
}

div.main-sidebar a:hover,
div.main-sidebar a:active {
	color: #5FBFBC;
}

div.main-sidebar a:after {
	background-image: url(img/link.svg);
	background-size: 16px 14px;
	display: inline-block;
	width: 16px;
	height: 14px;
	margin-left: 5px;
	content: "";
}

div[class^="wrap"] {
	margin: 45px 0 0 0;
	width: 100%;
}

/* content */
div.primary {
	margin: 0 10%;
}

div.wrap-archive {
	margin: 0;
	display: inline-block;
	margin-bottom: 80px;
}

div.wrap-archive.front {
	margin-bottom: 5px;
	border-bottom: 1px solid #000;
}

div.wrap-archive.grid {
	width: 104%;
	border-bottom: none;
}

header.page-header {
	height: auto;
}

header.page-header h1.page-title {
	border-top: solid 1px #000;
	padding-top: 10px;
	margin: 25px 0;
	display: inline-block;
	width: 100%;
	font-size: 56px;
	line-height: 62px;
	font-weight: normal;
}

.grid:after {
	content: '';
	display: block;
	clear: both;
}

.grid-item {
	width: 30%;
}

.grid-item,
div[class^="column"] {
	float: left;
}

main#main.site-main {
	display: inline-block;
	width: 100%;
}

main#main.site-main img {
	/* ↓ removed 2023-04-24 – only sidebar images should have full width */
	/* width: 100%; */
	height: auto;
	padding: 25px 0;
}

main#main.site-main img.top {
	padding: 5px 0 25px 0;
}

main#main.site-main strong {
	font-weight: normal;
	line-height: 51px;
}

main#main.site-main div.main-content {
	width: 71%;
	margin: 0 4% 25px 0;
	float: left;
	font-size: 28px;
	line-height: 34px;
}

main#main.site-main div.main-content div.archiv-link {
	font-size: 16px;
	line-height: 22px;
}

main#main.site-main div.main-content.full {
	width: 100%;
	margin: 0 0 25px 0;
}

main#main.site-main div.main-content.full div.wrap-content {
	width: 71%;
}

main#main.site-main div.main-content.full div.wrap-content.full {
	width: 100%;
}

header.page-header h1.page-title.content {
	margin-bottom: 0;
}

main#main.site-main div.main-sidebar {
	width: 25%;
	border-top: solid 1px #000;
	border-bottom: solid 1px #000;
	float: right;
	margin: 25px 0;
	padding: 16px 0 50px 0;
}

main#main.site-main div.main-sidebar.second {
	border-top: none;
	margin-top: 0;
}

main#main.site-main div.main-sidebar.form {
	border: none;
	margin-top: 0;
	background: #5FBFBC;
}

main#main.site-main div.main-sidebar div.sidebar {
	padding: 0 5%;
}

div.content-list {
	clear: both;
	border-top: solid 1px #000;
	padding: 10px 0;
	width: 100%;
	display: inline-block;
	position: relative;
}

div.content-list div[class^="column"] {
	width: 20%;
}

div.content-list div[class^="column"].project {
	width: 17%;
}

div.content-list div[class^="column"] span {
	padding: 0 13px 0 2px;
	display: inline-block;
}

div.column-2 {
	width: 46%;
	margin: 0 4% 0 0;
}

div.column-3 {
	width: 30%;
	margin: 0 3% 0 0;
}

div[class^="column"] div.content {
	position: relative;
	width: 100%;
}

div[class^="column"] div.content div.img {
	text-align: center;
	padding-top: 100%;
	height: 0;
	width: 100%;
	display: inline-block;
	background-position: top center !important;
	background-size: contain !important;
	-moz-background-size: contain !important;
	background-repeat: no-repeat !important;
}

div[class^="column"] div.content div.img img {
	max-width: 100%;
	max-height: 100%;
	height: auto;
	width: auto;
}

div.column-2 div.content div.img {
	padding-top: 0;
	height: auto;
}

div.column-2 div.content div.img img {
	height: auto;
	width: 100%;
}

main#main.site-main div.column-2 div.content div.img.tontraeger img {
	margin: 0 20% 5% 20%;
	width: 60%;
}

main#main.site-main img.tontraeger {
	margin: 0 25% 25px 25%;
	width: 50%;
}

div[class^="column"] div.title {
	padding-top: 15%;
	width: 100%;
	text-align: left;
	min-height: 60px;
}

div.column-2 div.title {
	padding-top: 0;
	min-height: 0;
}

div[class^="column"] div.title>span {
	position: absolute;
	margin-top: -10%;
	padding: 0 5%;
}

div.column-2 span,
div.partner-title {
	padding: 0 5%;
	margin: 10px 0 50px 0;
	text-align: left;
	width: 90%;
	display: inline-block;
}

div.column-2 p {
	margin: 0;
}

div.column-2 div.img.tontraeger span,
div.column-2 div.img.tontraeger div.title,
div.partner-title {
	text-align: center;
}

div.column-2 span.noimg,
div.partner-title {
	margin: 25px 0 50px 0;
}

div[class^="column"] div.border-bottom {
	border-top: solid 1px #000;
}

div[class^="column"] a {
	text-decoration: none;
	color: #000;
}

div[class^="column"] div.download {
	color: #5FBFBC;
}

div[class^="column"] div.download:hover {
	text-decoration: underline;
}

div[class^="column"] a:hover div.title b {
	color: #5FBFBC;
}

div.content-list div.column-date {
	width: 15%;
}

div.content-list div.column-time {
	width: 10%;
}

div.content-list div.column-place.project {
	width: 46%;
	padding-left: 0;
}

div.content-list div.column-ticket.project {
	width: 20%;
	padding-top: 0;
	padding-left: 0;
}

div.content-list div.column-title {
	width: 35%;
}

div.content-list div.column-title.frontpage {
	width: 45%;
}

div.content-list div.column-title label {
	font-weight: bold;
	cursor: pointer;
}

div.content-list div.column-title label:hover {
	font-weight: bold;
	cursor: pointer;
	color: #5FBFBC;
}

div.wrap-archive input.content-list-row:checked+div.row div.content-list div.column-title label:hover {
	color: #fff;
}

div.content-list div.column-title.press {
	width: 50%;
}

div.content-list div.column-ticket.press {
	width: 15%;
}

div.column-title p {
	margin: 0;
}

div.wrap-archive input.content-list-row,
div.wrap-archive input.content-list-row+div.row div.post-excerpt {
	display: none;
}

div.wrap-archive input.content-list-row:checked+div.row div.post-excerpt {
	display: block;
}

div.wrap-archive input.content-list-row:checked+div.row {
	background: #5FBFBC;
}

div.content-list a,
div.footer-column a.link,
div.main-sidebar a.link,
a div.partner-title span,
div.wrap-content a,
div.footer-column a {
	color: #000;
	text-decoration: none;
	border-bottom: solid 1px #5FBFBC;
}

nav.social-navigation a,
div.menu-footer-container a {
	border-bottom: solid 0px #5FBFBC !important;
}

div.main-sidebar a.link:after {
	display: none;
}

div.wrap-archive input.content-list-row:checked+div.row div.content-list a {
	border-bottom: solid 1px #fff;
}

div.content-list a:hover,
div.footer-column a.link:hover,
div.main-sidebar a.link:hover,
a:hover div.partner-title span,
div.wrap-content a:hover,
div.footer-column .text-widget a:hover {
	color: #5FBFBC;
}

div.wrap-archive input.content-list-row:checked+div.row div.content-list a:hover {
	color: #fff;
}

div.content-list a.directions {
	color: #5FBFBC;
	text-decoration: none;
	border-bottom: none;
}

div.wrap-archive input.content-list-row:checked+div.row div.content-list a.directions {
	color: #fff;
	border-bottom: none;
}

div.content-list a.directions:hover {
	color: #5FBFBC;
	text-decoration: underline;
}

div.wrap-archive input.content-list-row:checked+div.row div.content-list a.directions:hover {
	color: #fff;
}

div.wrap-archive input.content-list-row:checked+div.row div.content-list a.arrow-right {
	border-bottom: none;
	color: #fff;
}

div.wrap-archive input.content-list-row:checked+div.row div.content-list a.arrow-right:hover {
	color: #000;
}

.pink,
div.archiv-link a {
	color: #5FBFBC;
	text-decoration: none;
}

div.archiv-link a:hover {
	text-decoration: underline;
}

div.archiv-link {
	position: absolute;
	right: 0;
	top: 40px;
}

div.archiv-link.cal {
	width: 40%;
}

/* div.archiv-link.proj {
	width: 48%;
}*/
/*div.archiv-link.press {
	width: 65%;
}*/

div.title-over {
	font-size: 28px;
	line-height: 34px;
	margin: 20px 0;
	clear: both;
}

/* footer */
footer#colophon {
	margin: 25px 0 0 0;
	padding: 0 10%;
	background: #eee;
}

footer#colophon div.wrap {
	margin: 25px 0 50px 0;
	display: inline-block;
}

div.footer-title {
	font-weight: bold;
	line-height: 18px;
}

div.footer-column {
	width: 23%;
	padding-right: 2%;
	display: inline-block;
	vertical-align: top;
	padding-bottom: 30px;
}

div.footer-column:nth-child(4) {
	padding-right: 0;
}


div.footer-column--sponsor.footer-column--sponsor {
	width: 100%;
	padding-right: 0;
}

.footer-column--sponsor .footer-column {
	width: 100% !important;
	padding-right: 0;
}

div.footer-column--sponsor img {
	width: 100%;
	max-width: 32vw;
}

div.footer-column--sponsor a {
	border-bottom: solid 0px #5FBFBC;
    width: 50% !important;
}

h2.footer-title {
	font-size: 1em;
	margin-top: 0;
}

@media (min-width: 650px) {
    .footer-column--sponsor.footer-column--sponsor.footer-column--sponsor {
        width: 55%;
    }
    div.footer-column--sponsor img {
	    max-width: 330px;
    }
}
@media (min-width: 980px) {
	.footer-column--sponsor.footer-column--sponsor.footer-column--sponsor {
		width: 50%;
	}
}


nav.footer-navigation {
	margin-top: 15px;
}

nav.social-navigation {
	display: inline-block;
}

nav.social-navigation ul#menu-footer-social,
nav.footer-navigation ul#menu-footer {
	list-style: none;
	padding: 0;
	margin: 0;
	clear: both;
}

nav.social-navigation ul#menu-footer-social li {
	float: left;
	height: auto;
	width: 30px;
	padding-right: 15px;
}

nav.footer-navigation ul#menu-footer li a {
	color: #000;
	text-decoration: none;
	font-weight: bold;
	line-height: 18px;
}

nav.footer-navigation ul#menu-footer li a:hover {
	text-decoration: unterline;
}

nav.social-navigation ul#menu-footer-social span {
	display: none;
}

nav.social-navigation ul#menu-footer-social svg.icon {
	width: 100%;
	height: auto;
	max-height: 30px;
}

/*form*/
div.main-content div.wpcf7 {
	background: #5FBFBC;
	padding: 10px 50px 10px 10px;
	width: 110%;
	position: relative;
	font-size: 16px;
}

div.main-content form.wpcf7-form {
	margin-top: -5px;
}

div.footer-column>div.wpcf7 {
	background: none;
}

div.wpcf7 input {
	height: 18px;
	padding: 18px 3% 8px 3%;
	margin: 0 0 8px 0;
	border: none;
	width: 94%;
	font-size: 16px;
	border-radius: 0;
	-webkit-appearance: none;
	appearance: none;
}

div.main-content div.wpcf7 input,
div.main-content div.wpcf7 span.wpcf7-radio,
div.main-content div.wpcf7 span.wpcf7-not-valid-tip,
div.main-content div.wpcf7 div.wpcf7-response-output {
	margin: 0 0 8px 45%;
	width: 49%;
	font-size: 16px;
}

div.wpcf7 input[type="submit"],
div.main-content div.wpcf7 input[type="submit"] {
	width: 150px;
}

div.wpcf7 input[type="number"] {
	width: 40px;
	margin: 8px 5px 8px 0;
	padding: 16px 3% 8px 3%;
}

div.main-content div.wpcf7 div#order {
	position: absolute;
	width: 30%;
	line-height: 18px;
}

main#main.site-main div.main-sidebar.form select.wpcf7-select {
	border: none;
	background: #FFF;
	z-index: 20px;
	border: none;
	box-shadow: none;
	border-radius: 0;
	background-image: none;
	-webkit-appearance: none;
	appearance: none;
	padding: 16px 3% 8px 3%;
	font-size: 16px;
	margin: 8px 5px 8px 0;
}

span.wpcf7-radio input[type="radio"],
div.main-content div.wpcf7 span.wpcf7-radio input[type="radio"] {
	margin-left: 0;
	margin-bottom: 0;
	position: absolute;
	visibility: hidden;
}

span.wpcf7-radio span.wpcf7-list-item {
	margin-left: 0;
	width: 90px;
	margin-bottom: 5px;
	cursor: pointer;
	position: relative;
}

span.wpcf7-radio input[type="radio"]~span.wpcf7-list-item-label:before {
	margin-left: 29px;
}

span.wpcf7-radio input[type="radio"]:after {
	position: absolute;
	margin-right: 5px;
	width: 20px;
}

span.wpcf7-radio input[type="radio"]:checked+span {
	margin-left: 29px;
}

span.wpcf7-radio input[type="radio"]:checked+span:before,
span.wpcf7-radio input[type="radio"]:checked+span:after {
	visibility: visible;
	content: '';
	position: absolute;
	height: 2px;
	width: 25px;
	top: 8px;
	left: -30px;
	margin-top: -1px;
	background: #000;
	z-index: 15;
	-webkit-transform: rotate(45deg);
	-moz-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	-o-transform: rotate(45deg);
	transform: rotate(45deg);
}

div.main-content span.wpcf7-radio input[type="radio"]:checked+span:before,
div.main-content span.wpcf7-radio input[type="radio"]:checked+span:after {
	top: 16px;
}

span.wpcf7-radio input[type="radio"]:checked+span:after {
	left: -1px;
	-webkit-transform: rotate(-45deg);
	-moz-transform: rotate(-45deg);
	-ms-transform: rotate(-45deg);
	-o-transform: rotate(-45deg);
	transform: rotate(-45deg);
}

div.wpcf7 input[type="submit"] {
	color: #FFF;
	background: #000;
	float: right;
	padding: 10px;
	min-width: 150px;
	height: 35px;
	cursor: pointer;
}

div.wpcf7-validation-errors,
div.wpcf7-mail-sent-ok {
	border: none !important;
}

div.wpcf7-response-output {
	margin: 10px 0 0 0;
	padding: 0;
}

/*lightbox*/
.lb-data .lb-number {
	display: none !important;
}

.lb-outerContainer {
	border: none !important;
	border-radius: 0 !important;
}

.lightbox .lb-image {
	border-radius: 0 !important;
	border: none !important;
}

.lb-data .lb-close,
.lb-nav a.lb-next,
.lb-nav a.lb-prev {
	background: none !important;
}

.lb-data .lb-close:after,
.lb-data .lb-close:before,
.lb-nav a.lb-next:before,
.lb-nav a.lb-prev:before,
.lb-nav a.lb-next:after,
.lb-nav a.lb-prev:after,
.fancybox-button--close:after,
.fancybox-button--close:before {
	content: '';
	position: absolute;
	height: 0;
	width: 30px !important;
	margin-top: 15px;
	margin-left: -30px;
	background: #5FBFBC;
	border-bottom: 2px solid #5FBFBC;
	cursor: pointer;
}

.lb-data .lb-close:after,
.lb-nav a.lb-next:after,
.lb-nav a.lb-prev:after,
.fancybox-button--close:after {
	-webkit-transform: rotate(45deg);
	-moz-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	-o-transform: rotate(45deg);
	transform: rotate(45deg);
}

.lb-data .lb-close:before,
.lb-nav a.lb-next:before,
.lb-nav a.lb-prev:before,
.fancybox-button--close:before {
	-webkit-transform: rotate(-45deg);
	-moz-transform: rotate(-45deg);
	-ms-transform: rotate(-45deg);
	-o-transform: rotate(-45deg);
	transform: rotate(-45deg);
}

.lb-nav a.lb-next:after,
.lb-nav a.lb-prev:after,
.lb-nav a.lb-next:before,
.lb-nav a.lb-prev:before {
	top: 50%;
}

.lb-nav a.lb-next:before,
.lb-nav a.lb-next:after {
	right: 0;
}

.lb-nav a.lb-next:before {
	margin-top: 10px;
}

.lb-nav a.lb-next:after {
	margin-top: -10px;
}

.lb-nav a.lb-next:before,
.lb-nav a.lb-next:after {
	right: 10px;
}

.lb-nav a.lb-prev:before {
	margin-top: -10px;
}

.lb-nav a.lb-prev:after {
	margin-top: 10px;
}

.lb-nav a.lb-prev:before,
.lb-nav a.lb-prev:after {
	left: 40px;
}

.lb-closeContainer {
	position: fixed;
	top: 0;
	right: 0;
	margin: 10px;
}

.lightboxOverlay,
.fancybox-is-open .fancybox-bg,
.lb-data .lb-close {
	opacity: 1 !important;
	background-color: #000 !important;
}

.lb-data .lb-caption {
	font-weight: normal !important;
	color: #5FBFBC;
	padding: 5px !important;
	font-size: 16px !important;
	line-height: 22px !important;
}

.fancybox-button {
	background: none !important;
	width: 50px !important;
	height: 50px !important;
}

.fancybox-button--fullscreen {
	display: none !important;
}

.fancybox-button--close:before,
.fancybox-button--close:after {
	margin-top: 1px;
	margin-left: -7px;
}

label.main-menu {
	display: none;
}

label.main-menu.desktop {
	display: block;
	position: fixed;
	top: 25px;
}

@media screen and (max-width: 1150px) {
	main#main.site-main div.main-sidebar.form {
		padding: 16px 16px 50px 16px;
		width: auto;
		float: left;
	}

	main#main.site-main div.main-sidebar div.sidebar {
		padding: 0;
	}
}


@media screen and (max-width: 980px) {
	html {
		font-size: 14px;
		line-height: 20px;
	}

	input.main-menu:checked~nav.header-menu {
		font-size: 18px;
		line-height: 22px;
	}

	/*main menu*/
	label.main-menu {
		display: block;
	}

	label.main-menu.desktop {
		display: none;
	}

	/* content */
	div.primary {
		margin: 0 5%;
	}

	header.page-header h1.page-title {
		font-size: 48px;
		line-height: 56px;
	}

	main#main.site-main div.main-content {
		font-size: 22px;
		line-height: 28px;
	}

	main#main.site-main div.main-content.full div.wrap-content {
		width: 100%;
	}

	div.main-content form.wpcf7-form {
		margin-top: -10px;
	}

	div.main-content span.wpcf7-radio input[type="radio"]:checked::before,
	div.main-content span.wpcf7-radio input[type="radio"]:checked::after {
		top: 12px;
	}

	/* footer */
	footer#colophon {
		padding: 0 5%;
	}

	div.footer-column {
		width: 31%;
	}
}

@media screen and (max-width: 650px) {
	.mobile {
		display: block !important;
	}

	.desktop {
		display: none !important;
	}

	/* content */
	div.column-3 {
		width: 46%;
		margin: 0 4% 0 0;
	}

	div.content-list div.column-date {
		width: 22%;
	}

	div.content-list div.column-title {
		width: 42%;
	}

	div.content-list div.column-title.frontpage {
		width: 42%;
	}

	div.content-list div.column-place {
		width: 36%;
	}

	div.content-list div.column-ticket,
	div.content-list div.column-ticket.press {
		width: 100%;
		padding-top: 16px;
	}

	main#main.site-main div.main-content {
		font-size: 18px;
		line-height: 24px;
		width: 100%;
		margin-right: 0;
	}

	div.content-list div.column-title.press {
		width: 51%;
	}

	div.content-list div.column-place.press {
		width: 27%;
	}

	main#main.site-main div.main-sidebar {
		width: 100%;
		border-bottom: none;
	}

	main#main.site-main div.main-sidebar.second {
		border-top: 1px solid #000;
	}

	main#main.site-main div.main-sidebar div.sidebar {
		padding: 0;
	}

	main#main.site-main div.main-sidebar {
		padding: 16px 0 16px 0;
	}

	main#main.site-main img {
		/*width: 46%;*/
		height: auto;
	}

	div.main-content div.wpcf7 {
		width: auto;
	}

	div.main-content form.wpcf7-form {
		margin-top: 0;
	}

	div.main-content div.wpcf7 input,
	div.main-content div.wpcf7 span.wpcf7-radio,
	div.main-content div.wpcf7 span.wpcf7-not-valid-tip,
	div.main-content div.wpcf7 div.wpcf7-response-output {
		margin-left: 10%;
		width: 84%;
	}

	div.main-content div.wpcf7 div#order {
		position: relative;
		margin-left: 10%;
		width: 84%;
	}

	div.archiv-link.archiv {
		top: 15px;
	}

	div.archiv-link.cal {
		width: 36%;
	}

	div.archiv-link.press {
		width: 51%;
	}

	/* footer */
	div.footer-column {
		width: 46%;
	}
}

@media screen and (max-width: 450px) {
	div.header-content {
		margin-top: 15px;
	}

	div#nav,
	label.main-menu {
		margin: 2px 10px;
	}

	label.main-menu {
		margin: 2px 5px;
	}

	div#lang {
		margin: 2px 10px;
	}

	label.main-menu-close {
		margin: 15px;
	}

	nav.header-menu ul.header-menu {
		margin: 5px;
	}

	div.wrap {
		margin: 15px 0 0 0;
	}

	/* content */
	div.primary {
		margin: 0 6%;
	}

	div.column-3 {
		width: 96%;
		margin: 0 4% 0 0;
	}

	div.column-2 {
		width: 96%;
		margin: 0 4% 0 0;
	}

	div.content-list div.column-place,
	div.content-list div.column-title,
	div.content-list div.column-place.press,
	div.content-list div.column-title.press,
	div.content-list div.column-ticket,
	div.content-list div.column-ticket.press {
		width: 78%;
		padding-left: 22%;
	}

	div.content-list div.column-date {
		position: absolute;
	}

	div.content-list div.column-date.project {
		position: relative;
	}

	/* footer */
	footer#colophon {
		padding: 0 6%;
	}

	div.footer-column {
		width: 98%;
		padding-bottom: 18px;
	}
}

@media screen and (max-width: 375px) {
	header.page-header h1.page-title {
		font-size: 40px;
		padding-top: 6px;
	}

	div.content-list,
	div.archiv-link {
		font-size: 13px;
	}
}

@media screen and (max-width: 350px) {
	header.page-header h1.page-title {
		font-size: 40px;
	}

	div.content-list,
	div.archiv-link {
		font-size: 12px;
	}
}


iframe[src*='youtube.com'] {
	aspect-ratio: 16/9;
	width: 100% !important;
	height: auto;
}

iframe[width="60%"] {
	max-width: 60%;
}


/* add image widths */
@media (min-width: 64em) {

	.wrap-content p>.img--2,
	.wrap-content p>.img--3 {
		display: inline-block !important;
		width: 48% !important;
		margin: 0;
		padding: 0;
	}

	.wrap-content p>.img--3 {
		width: 32% !important;
	}

	.wrap-content p>img+br {
		display: none;
	}
}

/* // grid layout videos and audio

body.tax-zjo_album_categories .wrap-archive.grid {
	display: grid;
	grid-template-columns: 1fr 1fr 1fr;
	grid-gap: 25px;
	width: 100%;
}

body.post-type-archive-zjo_tontraeger .wrap-archive.grid,
body.post-type-archive-zjo_projects .wrap-archive.grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	grid-gap: 25px;
	width: 100%;
}

body.tax-zjo_album_categories .wrap-archive.grid .grid-item,
body.post-type-archive-zjo_tontraeger .wrap-archive.grid .grid-item,
body.post-type-archive-zjo_project .wrap-archive.grid .grid-item {
	width: 100%;
}

body.post-type-archive-zjo_projects div.column-2 {
	width: 100% !important;
}

@media screen and (max-width: 650px) {
	body.tax-zjo_album_categories .wrap-archive.grid {
		display: grid;
		grid-template-columns: 1fr 1fr;
		grid-gap: 25px;
	}
}

@media screen and (max-width: 420px) {

	body.tax-zjo_album_categories .wrap-archive.grid,
	body.post-type-archive-zjo_tontraeger .wrap-archive.grid,
	body.post-type-archive-zjo_projects .wrap-archive.grid {
		display: grid;
		grid-template-columns: 1fr;
		grid-gap: 0px;
	}
} */

@media (max-width: 450px) {
	.footer-title {
		padding-top: 2em;
	}

	footer .wrap {
		display: flex !important;
		flex-direction: column;
	}

	.footer-column:nth-child(1) {
		order: 1;
	}

	.footer-column:nth-child(2) {
		order: 2;
	}

	.footer-column:nth-child(3) {
		order: 3;
	}

	.footer-column:nth-child(4) {
		order: 5;
	}

	/* .footer-column:nth-child(5) {
		order: 5;
	} */
	.footer-column:nth-child(6) {
		order: 4;
	}
}

/* hack: Newsletter Title align with «Kontkat» */
@media (min-width: 980px) {
	.footer-column:nth-child(5) {
		margin-top: -2.5em;
	}
}
