/*
Theme Name: Tom Pauls Theater Pirna v3.5 MF Rabattz
Theme URI: http://friebelwv.de/
Author: FRIEBEL Werbeagentur und Verlag GmbH
Author URI: http://www.friebelwv.de/
Description: Base design FWV
Version: 3.6
*/


/*
@media ( min-width: 600px ) {
}
@media ( min-width: 769px ) and ( orientation: landscape ) , ( min-width: 1025px ) {
*/


/*--------------------------------------------------------------
## Fonts
--------------------------------------------------------------*/


/* roboto-slab-regular - latin */
@font-face {
  font-family: 'Roboto Slab';
  font-style: normal;
  font-weight: 400;
  src: url('fonts/roboto-slab-v12-latin-regular.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('fonts/roboto-slab-v12-latin-regular.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('fonts/roboto-slab-v12-latin-regular.woff2') format('woff2'), /* Super Modern Browsers */
       url('fonts/roboto-slab-v12-latin-regular.woff') format('woff'), /* Modern Browsers */
       url('fonts/roboto-slab-v12-latin-regular.ttf') format('truetype'), /* Safari, Android, iOS */
       url('fonts/roboto-slab-v12-latin-regular.svg#RobotoSlab') format('svg'); /* Legacy iOS */
}
/* roboto-slab-700 - latin */
@font-face {
  font-family: 'Roboto Slab';
  font-style: normal;
  font-weight: 700;
  src: url('fonts/roboto-slab-v12-latin-700.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('fonts/roboto-slab-v12-latin-700.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('fonts/roboto-slab-v12-latin-700.woff2') format('woff2'), /* Super Modern Browsers */
       url('fonts/roboto-slab-v12-latin-700.woff') format('woff'), /* Modern Browsers */
       url('fonts/roboto-slab-v12-latin-700.ttf') format('truetype'), /* Safari, Android, iOS */
       url('fonts/roboto-slab-v12-latin-700.svg#RobotoSlab') format('svg'); /* Legacy iOS */
}



/*--------------------------------------------------------------
## Root
--------------------------------------------------------------*/


:root {
	--width: 90%;
	--min-width: 720px;
	--max-width: 1040px;
	--max-width: 960px;
	
	--content-width: 90%;
	--content-min-width: 720px;
	--content-max-width: 1140px;
	
	--element-max-width: 720px;
	--image-max-width: 640px;
	--presentation-max-width: 960px;
	
	--black: #202020;
	--red: #990000;
	--light-grey: #909090;
	--grey: #7a7a7a;
	--dark-grey: #505050;
	--thin-grey: #e0e0e0;
	
	--bg-white: rgb(250,250,250);
	--fg-white: rgb(255,255,255);
	
	--markup-font: 'Roboto Slab' , Georgia , serif;
	--basic-font: 'Roboto Slab' , Georgia , serif;
	/*--basic-font:'Lato' , FreeSans , sans-serif;*/
	--font-bold: 700;
}

.alert {
	margin: 1em -4em;
	color: red !important;
	font-weight: bold !important;
	font-style: italic !important;
}
.alert:before {
	content: '>>> ';
}
.alert:after {
	content: ' <<<';
}

body.woocommerce .site-content * {
/*	display: none; */
}




/*--------------------------------------------------------------
## First FWV
--------------------------------------------------------------*/

* {
	margin: 0;
	padding: 0;
	border: 0px none;

	font-family: var(--basic-font);
	font-weight: var(--font-normal);
}

html , body {
	width: 100%;
	height: 100%;
	scroll-behavior: smooth;
	display: flex;
	flex-direction: column;
}

body {
	font-size: 13px;
	background-color: var(--bg-white);
}
@media ( min-width: 321px ) {
	body {
		font-size: 14px;
	}
}
@media ( min-width: 600px ) {
  body {
    font-size: 14px;
  }
}
@media ( min-width: 1025px ) {
  body {
    font-size: 16px;
  }
}





/*--------------------------------------------------------------
## Structure / Normalize / Indicators
--------------------------------------------------------------*/


/* indicators */
div#indicators {
	position: absolute;
	top: -999px;
	width: 1px;
}

div#screen-indicator-mobile {
	display: block;
}
div#screen-indicator-tablet {
	display: none;
}
div#screen-indicator-desktop {
	display: none;
}
@media ( min-width: 600px ) {
	div#screen-indicator-tablet {
		display: block;
	}
}
@media ( min-width: 769px ) and ( orientation: landscape ) , ( min-width: 1025px ) {
	div#screen-indicator-desktop {
		display: block;
	}
}


.mobile-only {
}
.desktop-only {
	display: none !important;
}

	.mobile-only {
		display: none !important;
	}
	.desktop-only {
		display: block !important;
	}
	.desktop-only.flex {
		display: flex !important;
	}
	.desktop-only.inline {
		display: inline !important;
	}
	.desktop-only.inline-block {
		display: inline-block !important;
	}
}


.visible-on-desktop ,
.visible-on-tablet {
	display: none;
}
.visible-on-mobile {
	display: block;
}
.visible-on-mobile.display-flex {
	display: flex;
}

@media ( min-width: 600px ) {
	.visible-on-mobile {
		display: none;
	}
	.visible-on-tablet {
		display: block;
	}
	.visible-on-tablet.display-flex {
		display: flex;
	}
}

@media ( min-width: 769px ) and ( orientation: landscape ) , ( min-width: 1025px ) {
	.visible-on-tablet {
		display: none;
	}
	.visible-on-desktop {
		display: block;
	}
	.visible-on-desktop.display-flex {
		display: flex;
	}
}


/*--------------------------------------------------------------
## Base
--------------------------------------------------------------*/

.site {
	position: relative;
	width: 100%;
	flex: 1 0 auto;
}

.entry-header {
	width: var(--width);
	margin: 0 auto 1em auto;	
}

.entry-content {
	width: var(--width);
	margin: 0 auto 2em auto;
}

.entry-meta ,
.entry-footer {
	display: none;
}

.site-footer {
	position: relative;
	width: 100%;
	height: auto;
	flex-shrink: 0;
	text-align: center;
}
.footer-inner {
	position: relative;
	width: var(--width);
	margin: 2em auto 0 auto;
	padding: 0 0 3em 0;
}


.pointer {
	cursor: pointer;
}


/*--------------------------------------------------------------
## Header
--------------------------------------------------------------*/


.site-header {
	position: fixed;
	z-index: 19;
	top: 0;
	left: 0;
	width: 100%;
	height: auto;
	color: var(--fg-white);
	background: var(--black);
	box-shadow: rgba(0,0,0,0.35) 2px 3px 15px;
}
.header-inner {
	position: relative;
	width: var(--width);
	margin: 0 auto;
	display: flex;
	flex-direction: column;
	align-content: center;
	justify-content: flex-start;
}
.site-header a {
	text-decoration: none;
}
@media ( min-width: 769px ) and ( orientation: landscape ) , ( min-width: 1025px ) {
	.site-header {
		position: relative;
	}
	.header-inner {
		max-width: var(--max-width);
	}
}

.header-placeholder {
	position: relative;
	width: 100%;
	height: 80px;
}
@media ( min-width: 769px ) and ( orientation: landscape ) , ( min-width: 1025px ) {
	.header-placeholder {
		display: none;
	}
}

.branding-container {
	position: relative;
	margin: 0 auto;
	width: 100%;
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
	justify-content: center;
	align-items: flex-start;
}
@media ( min-width: 600px ) {
	.branding-container {
		align-items: stretch;
	}
}

.navigation-container {
	display: none;
}
@media ( min-width: 769px ) and ( orientation: landscape ) , ( min-width: 1025px ) {
	.navigation-container {
		display: block;
	}
}


.ticketlink-container {
	flex-basis: 25%;
	width: 25%;
	order: 1;
	display: flex;
	flex-direction: row;
	justify-content: flex-start;
	align-items: center;
	padding-top: 5vw;
}
.ticketlink-inner {
	
}
.ticketlink-inner img {
	display: none;
}
p.tickets-text {
	line-height: 1.25;
	white-space: nowrap;
	vertical-align: middle;
	margin: 0;
	padding: 0;
}
p.tickets-text span {
	vertical-align: middle;
	margin: 0 0 0.35em 0;
}

@media ( min-width: 600px ) {
	.ticketlink-container {
		padding-top: 30px;
	}
	p.tickets-text {
		font-size: 1.25em;
	}
}

@media ( min-width: 769px ) and ( orientation: landscape ) , ( min-width: 1025px ) {
	
	.ticketlink-container {
		order: 3;
		justify-content: flex-end;
	}
	.ticketlink-inner {
		position: relative;
		width: 100%;
		min-width: 160px;
		max-width: 240px;
		height: 100%;
		transform: rotate(-6deg);
	}
	.site-header .ticketlink-inner img {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 100%;
    height: auto;
    transform: translate(-50%,-50%);
		display: block;
	}
	p.tickets-text {
    position: absolute;
    z-index: 1;
    top: 50%;
    left: 1.5em;
    transform: translateY(-50%);
    font-size: 1.25em;
    color: var(--red);
    text-transform: uppercase;
    letter-spacing: 0.0125em;
    font-weight: bold;
    font-weight: 700;
    margin: 0;
	}
	p.tickets-text span {
		content: '';
		display: none;
	}

}



.trigger-container {
	flex-basis: 25%;
	width: 25%;
	order: 3;
	display: flex;
	flex-direction: row;
	justify-content: flex-end;
	align-items: center;
	padding-top: 5vw;
}
p.hamburger-nav {
	position: relative;
	line-height: 1.25;
	white-space: nowrap;
	vertical-align: bottom;
	margin: 0;
	padding: 0;
	vertical-align: middle;
}
p.hamburger-nav span {
	margin: 0 0 0.125em 0;
	vertical-align: middle;
}
.trigger-icon.open {
	opacity: 1;
	transition: opacity 350ms ease-in-out;
}
.trigger-icon.close {
	position: absolute;
	left: 0;
	top: 0;
	opacity: 0;
	transition: opacity 350ms ease-in-out;
}
p.hamburger-nav.active .trigger-icon.open {
	opacity: 0;
}
p.hamburger-nav.active .trigger-icon.close {
	opacity: 1;
}


@media ( min-width: 600px ) {
	.trigger-container {
		padding-top: 30px;
	}
	p.hamburger-nav {
		font-size: 1.25em;
	}
}

@media ( min-width: 769px ) and ( orientation: landscape ) , ( min-width: 1025px ) {
	.trigger-container {
		order: 1;
		opacity: 0;
	}
}

.logo-container {
	position: relative;
	order: 2;
	flex-basis: 50%;
	width: 50%;
	max-width: 180px;
	margin: 0 auto;
	padding: 15px 0;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
}
@media ( min-width: 600px ) and ( orientation: landscape ) {
	.logo-container .logo-tom-pauls-theater-top {
		height: auto;
	}
}
@media ( min-width: 769px ) and ( orientation: landscape ) , ( min-width: 1025px ) {

	.logo-container {
		max-width: 320px;
	}
	.logo-container .logo-tom-pauls-theater-top {
		height: auto;
	}
}

/*
.logo-container .logo-tom-pauls-theater-signet {
	position: relative;
	width: 50%;
	height: auto;
	margin: 0 auto;
	display: block;
}
.logo-container .logo-tom-pauls-theater-schriftzug {
	position: relative;
	width: 100%;
	margin: 0;
	display: block;
	height: 0;
	transition: height 350ms ease-in-out;
}

@media ( min-width: 600px ) and ( orientation: portrait ) {
	.logo-container .logo-tom-pauls-theater-schriftzug {
		height: auto;
	}
}

@media ( min-width: 769px ) and ( orientation: landscape ) , ( min-width: 1025px ) {

	.logo-container {
		max-width: 320px;
	}
	.logo-container .logo-tom-pauls-theater-schriftzug {
		height: auto;
	}
}
*/



/*--------------------------------------------------------------
## Blocks / Elements
--------------------------------------------------------------*/

.wp-block-columns {
	display: flex;
	flex-direction: column;
	margin: 2em auto;
	max-width: var(--element-max-width);
}
.wp-block-columns.reverse {
	flex-direction: column-reverse;	
}

.wp-block-columns .wp-block-column {
	margin-top: 1em;
	margin-bottom: 1em;
}

.wp-block-columns.left * {
	text-align: left;
}



@media ( min-width: 600px ) {

	.wp-block-columns {
		flex-direction: row;
	}
	.wp-block-columns.reverse {
		flex-direction: row;
	}

	.wp-block-columns.border {
		align-content: stretch;
		flex-wrap: nowrap;
		flex-direction: row;
	}
	.wp-block-columns.border > .wp-block-column {
		border-right: 2px solid var(--thin-grey);
		margin-right: 2em;
		padding-left: 2em;
	}
	.wp-block-columns.border > .wp-block-column:first-of-type {
		padding-left: 0;
	}
	.wp-block-columns.border > .wp-block-column:last-of-type {
		border-right: 0px none;
		margin-right: 0;
	}
	
}


@media ( max-width: 1440px ) {
	.wp-block-nextend-smartslider3 ,
	.wp-block-nextend-smartslider3 * {
			max-height: 480px !important;
			overflow: hidden;
	}
}  
@media ( max-width: 769px ) {
	.wp-block-nextend-smartslider3 ,
	.wp-block-nextend-smartslider3 * {
			max-height: 360px !important;
			overflow: hidden;
	}
}  
@media ( max-width: 599px ) and ( orientation: portrait ) {
	.wp-block-nextend-smartslider3 ,
	.wp-block-nextend-smartslider3 * {
			max-height: 240px !important;
			overflow: hidden;
	}
}  



.wp-block-column > *:first-child {
	margin-top: 0.5em;
}


.wp-block-gallery {
	margin: 2em auto;
	max-width: var(--presentation-max-width);
}
.wp-block-gallery > ul {
	max-width: var(--presentation-max-width);
}
.wp-block-gallery .blocks-gallery-item figcaption {
	width: auto;
	padding: 0 1em 1em 1em;

display: none;
}

.wp-block-image {
	margin: 2em auto;
	max-width: var(--element-max-width);
	align-items: center;
}
.wp-block-image .alignright ,
.wp-block-image .alignleft ,
.wp-block-image .aligncenter {
	float: none;
	width: 66.66%;
	margin: 2em auto;
}

@media ( min-width: 600px ) {
	.wp-block-image .alignright {
		float: right;
		width: 33.33%;
		margin: 0 auto 1em 32px;
	}
	.wp-block-image .alignleft {
		float: left;
		width: 33.33%;
		margin: 0 32px 1em auto;
	}
	.wp-block-image .aligncenter {
		width: 33.33%;
		margin: 0 auto 1em auto;
	}
}

.wp-block-image img {
	margin: 0 auto;
	width: 100%;
	height: auto;
  max-width: var(--image-max-width);
	display: block;
}


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

.wp-block-video ,
.wp-block-embed {
	margin: 2em auto 1em auto;
	width: var(--width);
	max-width: var(--image-max-width);
	text-align: center;
}




/*--------------------------------------------------------------
## Typo
--------------------------------------------------------------*/

h1  {
	font-family: var(--markup-font);
	font-size: 2em;
	line-height: 1.25;
	color: var(--red);
	font-weight: bold;
	font-weight: var(--font-bold);
	margin: 1.25em auto 1em auto;
	text-align: center;
}

h2 {
	font-family: var(--markup-font);
	font-size: 2em;
	line-height: 1.25;
	color: var(--grey);
	font-weight: bold;
	font-weight: var(--font-bold);
	margin: 1em auto 1em auto;
	text-align: left;
}
	
h3 {
	font-family: var(--markup-font);
	font-size: 1.25em;
	line-height: 1.35;
	color: var(--red);
	font-weight: bold;
	font-weight: var(--font-bold);
	margin: 1.5em auto 0 auto;
	text-align: left;
}

h4 ,
h5 ,
h6 {
	font-family: var(--markup-font);
	font-size: 1.25em;
	line-height: 1.35;
	color: var(--grey);
	font-weight: bold;
	font-weight: var(--font-bold);
	margin: 1.5em auto 0 auto;
	text-align: left;
}

p , ul , ol {
	font-family: var(--basic-font);
	font-size: 1em;
	font-weight: normal;
	font-weight: var(--font-normal);
	margin: 1em auto 0 auto;
	max-width: initial;
}
	
	
p {
	text-align: justify;
}
	
h1 , h2 , h3 , h4 , h5 , h6 ,
p , ul , ol , blockquote , cite , .wp-block-pullquote ,
.wp-block-table, table {
	max-width: var(--element-max-width);
}

.site-main h1:first-of-type + p ,
.entry-header:first-of-type + .entry-content:first-of-type > p:first-child ,
.entry-header + .entry-content > p:first-child {
	font-family: var(--markup-font);
	font-size: 1.25em;
	font-weight: normal;
	font-weight: var(--font-normal);
	color: var(--black);
	margin-top: -0.5em;
	margin-bottom: 2em;
	text-align: center;
	text-align: justify;
	text-align-last: center;
	hyphens:auto;
	-moz-hyphens: auto;
	-webkit-hyphens: auto;
}
/* Safari 6.2,7.1+ */
@supports (-webkit-hyphens:none) {
	.site-main h1:first-of-type + p ,
	.entry-header:first-of-type + .entry-content:first-of-type > p:first-child ,
	.entry-header + .entry-content > p:first-child {
		text-align: center;
	}
}


figure.wp-block-pullquote {
	border: 0px none;
	margin: 0 auto;
	padding: 0;
	background: transparent none;
	color: inherit;
	text-align: left;
}
.wp-block-pullquote blockquote ,
blockquote.wp-block-quote {
	font-size: 1em;
	margin: 2em auto;
	padding: 0;
	color: inherit;
	border: 0px none;
}
blockquote p ,
.wp-block-pullquote p {
	text-align-last: left !important;
	font-size: 1em;
	line-height: 1.25em;
	display: block;
}
blockquote > p:first-of-type:before {
	content: '»';
	color: var(--grey);
	display: inline;
	margin: 0 0.125em 0 -0.575em;
	font-size: 250%;
	vertical-align: baseline;
}
blockquote > p:last-of-type:after {
	content: '«';
	color: var(--grey);
	font-size: 250%;
	margin: 0 0 0 0.125em;
	display: inline;
	vertical-align: bottom;
}


blockquote.wp-block-quote cite ,
.wp-block-pullquote cite {
	color: inherit;
	text-transform: none;
	font-size: 1em;
	letter-spacing: 0;
	font-style: normal;
	text-align: left;
	margin: 0.25em auto 0 auto;
	display: block;
	color: var(--grey);
}
cite * {
	font-style: inherit !important;
}




li {
	list-style-position: outside;
	margin-left: 1em;
	color: var(--red);
}
ul li {
	margin-left: 1em;
	list-style-type: square;
}
ol li {
	margin-left: 1.25em;
	list-style-type: decimal;
}
ul.list-wrapper li , ol.list-wrapper li {
}
.list-wrapper span {
	color: var(--black);
}

ul ul , ul ol , ol ul , ol ol {
	margin-top: 0em;
}

li ul ,
li ol {
	margin-bottom:0;
}

hr.wp-block-separator {
	border-bottom: 2px solid var(--thin-grey);
	max-width: var(--presentation-max-width) !important;
	margin: 2em auto 1.5em auto;
	clear: both;
}
hr.wp-block-separator.clear {
	border-bottom: 0px none;
	margin: 0;
	clear: both;
}

strong ,
b {
	font-weight: bold;
	font-weight: var(--font-bold);
}

em ,
i {
	font-style: italic;
}


a {
	color: inherit;
	text-decoration: underline;
}

.huge {
	font-size: 125%;
}


.footer-dot {
	display: none;
}
.footer-break {
	display: block;
}

.site-footer .footer-contacts * {
	text-align: center;
}

.site-footer .phone {
	font-size: 150%;
	font-weight: bold;
	font-weight: var(--font-bold);
	margin: 0 auto;
}

@media ( min-width: 600px ) {
	.site-footer .footer-contacts * {
		/* text-align: left; */
	}
	.footer-dot {
		display: inline;
	}
	.footer-break {
		display: none;
	}
}
@media ( min-width: 769px ) and ( orientation: portrait ) , ( min-width: 1025px ) {
	.site-footer .phone {
			font-size: 125%;
	}
	.site-footer .email {
		margin: 0 auto;
	}
}



.wp-block-buttons {
	margin: 2em auto;
	text-align: center;
	max-width: var(--element-max-width);
}
.wp-block-button {
	display: inline-block;
	margin: 0 0.75em 1em 0.75em;
}
.wp-block-buttons > .wp-block-button:first-of-type {
	margin-left: 0;
}
.wp-block-button__link {
	padding: 0.5em 1.5em 0.55em 1.5em;
	border-radius: 0.25em;
	font-size: 100%;
	font-weight: bold;
	font-weight: var(--font-bold);
	background-color: var(--red);
	color: var(--fg-white);
	cursor: pointer;
}
@media ( hover:hover ) {
	.wp-block-button__link {
		border: 1px solid var(--red);
		background-color: var(--bg-white);
		color: var(--red) !important;
		transition: all 350ms ease-in-out;
	}
	.wp-block-button__link:hover {
		color: var(--fg-white) !important;
		background-color: var(--red);
	}
	
}
@media ( min-width: 769px ) and ( orientation: landscape ) , ( min-width: 1025px ) {
	.wp-block-button {
		display: inline-block;
		margin: 0 0.5em 0.5em 0.5em;
	}
	.wp-block-button__link {
		padding: 0.5em 1em 0.55em 1em;
	}
}


.left {
	text-align: left;
}


.wp-block-table , table {
	margin: 1em auto;
}
.wp-block-table > table {
	margin: 0 auto 0 0;
	width: auto;
	text-align: left;
}
table {
	border-collapse: collapse;
	border: 0px none;
}
tr {
	margin: 0;
}
th , td {
	padding: 0 0.5em 0 0 !important;
	border: 0px none !important;
	vertical-align: top;
	text-align: left;
}








/*--------------------------------------------------------------
## Navigation
--------------------------------------------------------------*/



.bottom-to-top {
    margin: 2em auto 1.5em auto;
    text-align: center;
}
.bottom-to-top p.verbal span.dashicons {
  color: var(--red);
	display: inline-block;
}
.bottom-to-top p {
	text-align: center;
}
.bottom-to-top a {
	text-decoration: none;
}



.footer-navigation {
	margin: 3em auto 0 auto;
	width: 100%;
	display: none;
}
.menu-footer-navigation-container .menu {
	position: relative;
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	justify-content: space-around;
}

.menu-footer-navigation-container li {
	display: block;
	list-style-type: none;
	color: var(--black);
}
.menu-footer-navigation-container a {
	text-decoration: underline;
}


@media ( min-width: 769px ) and ( orientation: landscape ) , ( min-width: 1025px ) {
	.footer-navigation {
		display: block;
	}
}


#menu-main-navigation {
	position: relative;
	padding: 1em 0 2em 0;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: flex-start;
	overflow: auto;
	max-height: calc( 100vh - 8em);
}
#menu-main-navigation li {
	position: relative;
	text-align: center;
	color: var(--fg-white);
	font-size: 125%;
	font-weight: bold;
	font-weight: var(--font-bold);
	margin: 0.5em 0;
	list-style-type: none;
}
#menu-main-navigation li.aux {
	font-size: 100%;
	font-weight: normal;
	font-weight: var(--font-normal);
	margin: 1.5em 0;
}
#menu-main-navigation li.aux + li.aux {
	margin-top: -1em;
}

#menu-main-navigation li ul {
	display: none;
}

@media ( min-width: 769px ) and ( orientation: landscape ) , ( min-width: 1025px ) {
	
	.site-header .navigation-container {
		display: block !important;
	}
	
	#menu-main-navigation {
		flex-direction: row;
		flex-wrap: nowrap;
		align-items: stretch;
		justify-content: space-between;
		padding: 0;
		margin: 0.75em auto 0 auto;
		max-width: 100%;
	}

	#menu-main-navigation li {
		font-size: 112.5%;
		margin: 0 auto;
		padding: 0.75em 1em 1.75em 1em;
		background: rgba(255,255,255,0);
		color: rgb(255,255,255);
		transition: all 350ms ease-in-out;
	}

	#menu-main-navigation li.current-menu-item ,
	#menu-main-navigation li.current-page-ancestor ,
	.woocommerce-page #menu-main-navigation li.shop {
		background: rgba(255,255,255,1);
		color: rgb(0,0,0);
	}

}

@media ( min-width: 769px ) and ( orientation: landscape ) and ( hover: hover ), ( min-width: 1025px ) and ( hover: hover ) {
	#menu-main-navigation li:hover {
		background: rgba(255,255,255,1);
		color: rgb(0,0,0);
	}
}





/*--------------------------------------------------------------
## Forms
--------------------------------------------------------------*/

div.wpcf7 {
	margin: 1em auto;
}

form {
	margin: 0;
}


form .wp-block-columns ,
form .wp-block-column {
	margin: 0 auto;
	padding: 0;
}

label {
	width: 100%;
	color: var(--dark-grey);
}
input ,
textarea ,
select {
	margin: 0.5em auto;
	padding: 0.5em 1em;
	width: 100%;
	border: 1px solid var(--light-grey);
	box-sizing: border-box;
	font-family: var(--basic-font);
	font-size: 1.125em;
}
span.wpcf7-list-item {
	margin-left: 0;
}
input[type=checkbox] {
	margin: 0 0.5em 0 0;
	width: auto;
	border: 1px solid var(--red);
}
input[type=radio] {
	margin: 0 0.5em 0 0;
	width: auto;
	border: 1px solid var(--red);
}

input:focus , input:active , 
textarea:focus , textarea:active , 
select:focus , select:active {
	border-color: var(--red);
}
input.wpcf7-not-valid ,
textarea.wpcf7-not-valid , 
select.wpcf7-not-valid {
	border-width: 2px;
	border-color: var(--red);
}

form sup {
	color: var(--red);
}

label input ,
label textarea ,
label select {
	margin-top: 0;
}

.wpcf7-not-valid-tip {
	margin-top: -0.5em;
	color: var(--red);
}

input[type=submit],
input[type=button] {
	border: 1px solid var(--red);
	background: var(--red);
	color: var(--fg-white);
	font-size: 1.25em;
	font-weight: var(--font-bold);
	transition: background 350ms ease-in-out;
	cursor: pointer;
}
@media( hover:hover ) {
	input[type=submit]:not(.disabled):hover ,
	input[type=button]:not(.disabled).hover {
		background: var(--fg-white);
		color: var(--red);
	}
}








/*--------------------------------------------------------------
## Special
--------------------------------------------------------------*/

/* TP Biographie */

section.biography p {
	text-align:center;
	margin: 1em auto 3em auto;
}
section.biography h4 {
	color: var(--grey);
	font-size: 200%;
	margin: 1em auto 0 auto;
	text-align: center;
}

@media ( min-width: 600px ) {
	section.biography .wp-block-columns p ,
	section.biography .wp-block-columns h4 {
		text-align: left;
	}
}


/* Förderlogos (Bottom) */

.footer-supporters {
	position: relative;
	display: flex;
	flex-flow: row wrap;
	justify-content: center;
	align-items: flex-start;
	overflow: hidden;
	margin: 4em auto;
	max-width: var(--element-max-width);
}
.footer-supporters img.supporter {
	display: block;
	height: auto;
	flex-basis: auto;
	min-width: 0;
	max-width: 240px;
	margin: 0 auto;
}

@media ( min-width: 600px ) {
	.footer-supporters {
		flex-flow: row nowrap;
		justify-content: space-between;
		margin: 2em auto;
	}
	.footer-supporters img.supporter {
		max-width: 100%;
	}
	.footer-supporters img.supporter.beauftragte {
		flex-basis: 35%;
	}
	.footer-supporters img.supporter.neustart {
		flex-basis: 20%;
	}	
	.footer-supporters img.supporter.buehnenverein {
		flex-basis: 45%;
	}
}



/* Sidebar (Bottom) */

#sidebar {
    background-color: var(--dark-grey);
    width: 100%;
    margin: 2em 0;
    padding: 1em 0 3em 0;
		color: var(--fg-white);
}
#sidebar > ul {
	margin: 0 auto;
	width: var(--width);
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-content: flex-start;
}
#sidebar .textwidget .sidebar-element {
	position: relative;
	margin: 2em auto 1em auto;
}

#sidebar .textwidget .sidebar-element p {
	margin: 0 auto;
	text-align: center;
}
#sidebar a {
	text-decoration: none;
}

#sidebar .sidebar-element img {
	margin: 0 auto;
	width: 50%;
	height: auto;
	max-width: 160px;
}


@media ( min-width: 600px ) {

	#sidebar > ul {
		flex-direction: row;
		justify-content: space-around;
		flex-wrap: wrap;
		align-items: stretch;
	}
	#sidebar > ul > aside {
		flex-basis: calc( 50% - 2em );
	}

}

@media ( min-width: 769px ) and ( orientation: landscape ) , ( min-width: 1025px )  {

	#sidebar > ul {
		min-width: var(--min-width);
		max-width: var(--max-width);
	}
	#sidebar > ul > aside {
		flex-basis: calc( 25% - 2em );
	}
	#sidebar .sidebar-element img {
		width: auto;
		max-width: 180px;
	}

}


/* Full width */
.full-width {
	position: relative;
	width: 100vw;
  left: 50%;
  right: 50%;
  margin-left: -50vw;
  margin-right: -50vw;
}


/* Overview */

section.wp-block-mkl-section-block.overview  {
	position: relative;
	margin: 6em auto;
	width: 100vw;
  left: 50%;
  right: 50%;
  margin-left: -50vw;
  margin-right: -50vw;
	padding: 2em 0;
}
section.wp-block-mkl-section-block.overview .section-bg {
	background-attachment: fixed;
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center;
	filter: grayscale(100%) !important;
	opacity: 0.15 !important;
}

section.wp-block-mkl-section-block.overview .wp-block-columns.overview {
	position: relative;
	margin: -6em auto !important;
	width: var(--width);
	max-width: var(--presentation-max-width);
}
section.wp-block-mkl-section-block.overview .wp-block-columns.overview > .wp-block-column {
	margin: 1em 0;
	padding: 2em;
	flex-basis: auto;
	width: auto;
	border-radius: 0.5em;
	overflow: hidden;
	border: 1px solid rgba(0,0,0,0.05);
	box-shadow: rgba(0,0,0,0.1) 2px 3px 15px;
	text-align: center;
	background: var(--bg-white);
}
section.wp-block-mkl-section-block.overview .wp-block-image {
	max-width: 180px;
	margin: 1em auto 0 auto;
}
section.wp-block-mkl-section-block.overview .wp-block-image img {
	border-radius: 0.5em;
}	
section.wp-block-mkl-section-block.overview figcaption {
	display: none;
}
section.wp-block-mkl-section-block.overview .wp-block-column > h2:first-of-type {
	margin: 0.5em -0.5em;
}
section.wp-block-mkl-section-block.overview * {
	hyphens: auto;
	-moz-hyphens: auto;
	-webkit-hyphens: auto;
	text-decoration: none;
  text-align-last: center;
}


@media ( min-width: 600px ) {
	section.wp-block-mkl-section-block.overview .wp-block-columns.overview {
		flex-direction: row;
		flex-wrap: wrap;
		max-width: var(--presentation-max-width);
		justify-content: center;
	}
	section.wp-block-mkl-section-block.overview .wp-block-columns.overview > .wp-block-column {
		margin: 1em;
		flex-basis: 66.66% !important;
		margin-left: auto;
		margin-right: auto;
		max-width: 320px;
	}	
}

@media ( min-width: 769px ) {
	section.wp-block-mkl-section-block.overview .wp-block-columns.overview {
		flex-wrap: nowrap;
	}
	section.wp-block-mkl-section-block.overview .wp-block-columns.overview > .wp-block-column {
		margin: 1em 0.5em;
		flex-basis: 25% !important;
	}
	section.wp-block-mkl-section-block.overview .wp-block-image {
		margin: -2em -2em 0 -2em;
		max-width: calc( 100% + 4em );
	}
	section.wp-block-mkl-section-block.overview .wp-block-image img {
		border-radius: 0;
		-moz-border-radius: 0;
		-webkit-border-radius: 0;
	}
}


/* MAPS LEAFLET */
.leaflet-map {
	margin: 1em auto;
	width: auto;
	max-width: var(--element-max-width);
}

.leaflet-map .leaflet-tile-pane {
	filter: grayscale(1);
}




/* Block Image/Text */

.wp-block-media-text {
	margin: 3em auto 1em auto;
	padding: 0;
	max-width: var(--element-max-width);
	display: flex;
	flex-flow: column;
	justify-items: flex-start;
	align-content: flex-start;
}
.wp-block-media-text .wp-block-media-text__media {
	margin: 2em auto 1em auto;
}
.wp-block-media-text .wp-block-media-text__content {
	margin: 0;
	padding: 0;
	width: 100%;
}
.wp-block-media-text .wp-block-media-text__content * {
	text-align: left;
	text-align-last: left;
	hyphens: auto;
	text-decoration: none;
}

.wp-block-media-text__content h2 ,
.wp-block-media-text__content h3 {
	font-size: 150%;
	margin: 0;
	clear: both;
}
.wp-block-media-text__content .post-excerpt {
    margin-top: 0.5em;
    margin-bottom: 1.5em;
		clear: both;
}
.wp-block-media-text__content .post-date {
    color: var(--grey);
		margin: 0 auto 1em 0;
}

.wp-block-media-text__content .terms {
	margin: 0 auto 0.125em 0;
}

.wp-block-media-text__content .terms .term {
	font-weight: bold;
	font-weight: var(--font-bold);
	color: var(--fg-white);
	background: var(--grey);
	margin: 0 0.25em 0.25em 0;
	padding: 0.25em 1em 0.35em 1em;
	text-transform: uppercase;
	letter-spacing: 0.025em;
	display: block;
	font-size: 65%;
	float: left;
}

.wp-block-media-text__content .wp-block-button ,
.wp-block-media-text__content .wp-block-button {
	margin: 0 0 0.25em 0;
}

@media ( min-width: 600px ) {

	.wp-block-media-text {
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: space-between;
    max-width: var(--presentation-max-width);
	}
	.wp-block-media-text .wp-block-media-text__media {
		flex-basis: calc(33.33% - 0.5em);
		width: calc(33.33% - 0.5em);
		display: flex;
		align-self: stretch;
		min-height: 12em;
		max-height: 18em;
		margin: 0;
	}
	.wp-block-media-text .wp-block-media-text__content {
		flex-basis: calc(66.66% - 0.5em);
		width: calc(66.66% - 0.5em);
		align-self: flex-start;
		overflow: hidden;
	}
	
	.wp-block-media-text img {
			width: 100%;
			height: 100%;
			object-fit: cover;
			display: block;
	}

}

.nav-links {
	margin: 1em auto 3em auto;
	width: var(--width);
	max-width: var(--element-max-width);
	text-align: center;
}
.nav-links .nav-previous ,
.nav-links .nav-next {
	display: inline-block;
	margin: 0.5em 1em;
	font-size: 125%;
}
.nav-links span.dashicons {
	color: var(--red);
	vertical-align: middle;
}

.nav-index {
	margin: 1em auto 3em auto;
	width: var(--width);
	max-width: var(--element-max-width);
	text-align: center;
}
.post-navigation + .nav-index {
	margin-top: -2em;
}

.nav-links a ,
.nav-index a {
	text-decoration: none;
}



/* Posts */

body.blog .entry-content {
	margin-bottom: 0;
}
body.blog .wp-block-media-text .wp-block-media-text__media {
	display: none;
}

@media ( min-width: 600px ) {
	body.blog .wp-block-media-text .wp-block-media-text__media {
		display: flex;
	}
	
}

@media ( min-width: 769px ) and ( orientation: landscape ) , ( min-width: 1025px )  {
}


/* Social */

.footer-social {
	width: var(--width);
	max-width: var(--element-max-width);
	margin: 2em auto;
	text-align: center;
}

.footer-social .social {
	display: inline-block;
	margin: 0.5em;
	width: 100%;
	max-width: 36px;
	height: auto;
	background-color: var(--black);
	border-radius: 0.125em;
	transition: background-color 150ms ease-in-out;
}
@media ( min-width: 600px )  {
	.footer-social .social {
		max-width: 24px;
	}
}
@media ( hover:hover ) {
	.footer-social .social:hover {
		background-color: var(--red);
	}
}



/* Sticky Relocate */

.sticky-relocate-header {
	position: relative;
	display: flex;
	top: 0;
	flex-direction: row;
	flex-wrap: nowrap;
	justify-content: flex-start;
	align-items: center;
	margin: 1em 0;
	padding: 0;
	background-color: var(--fg-white);
	width: 100%;
}

.sticky-relocate-header-inner {
	margin: 0 auto;
	max-width: var(--element-max-width);
	overflow-x: auto;
	overflow: -moz-scrollbars-none;
	-ms-overflow-style: none;
	scrollbar-width: none;
	box-sizing: border-box;
}

.sticky-relocate-header-inner::-webkit-scrollbar {
	width: 0 !important;
	display: none;
	width: 0;
	height: 0;
}

.sticky-relocate-header-placeholder {
	position: relative;
	width: 100%;
	height: 0;
}

@media ( min-width: 600px ) {
	.sticky-relocate-header {
		width: 100%;
		margin: 1em auto;
		/*max-width: var(--element-max-width);*/
	}
}

.sticky-relocate-header.fixed {
    position: fixed;
    z-index: 99;
	left: 50%;
	margin-top: 0;
	max-width: 100%;
	transform: translateX(-50%);
    border-bottom: 2px solid var(--thin-grey);
}





/* KulturKalender */

.wp-block-table.kultur-august {
	margin-top: 3em;
	margin-bottom: 3em;
	border: 1px solid var(--thin-grey);
}
.wp-block-table.kultur-august th ,
.wp-block-table.kultur-august td {
	padding: 1em !important;
}
.wp-block-table.kultur-august tr:nth-child(2n+0) {
	background-color: var(--thin-grey);
}
.wp-block-table.kultur-august tr > td:first-of-type {
	/*color: var(--red);*/
}




.wp-block-columns.kultur-august {
	background: var(--fg-white);
  margin: 1em auto;
  padding: 1em 2em;
  border-radius: 0.5em;
	box-shadow: rgb(0 0 0 / 10%) 2px 3px 15px;
}
.wp-block-columns.kultur-august .wp-block-column * {
	text-align: center;
}
@media ( min-width: 600px )  {
	.wp-block-columns.kultur-august .wp-block-column * {
		text-align: left;
		margin-left: 0;
	}
}

.wp-block-columns.kultur-august .wp-block-image {
		max-width: 180px;
    margin: 1em auto 0 auto;
}
.wp-block-columns.kultur-august .wp-block-image img {
	border-radius: 0.5em;
}
.wp-block-columns.kultur-august .wp-block-column h2:first-of-type {
	margin: 0.5em auto;
}

*.disabled {
	display: none !important;
}