/*
Theme Name: Mahnmal St. Nikolai
Author: BRENNWERT – Design und Kommunikation mit Zündung
*/

/* Variablen */

html {

	/* Farben */
	--orange: #ff7e00;
	--dark-grey: #444444;
	--light-grey: #dddddd;

	/* Abstände und Längen */
	--large-gap: 100px;
	--medium-gap: 75px;
	--small-gap: 50px;

	--header-height-full: 300px;
	--header-height-reduced: 100px;
	--header-height: var(--header-height-full);
	--header-height-scroll-margin: var(--header-height-full);

	--column-gap: 100px;
	--column-width: calc((var(--max-width) - 5 * var(--column-gap)) / 6);
	--full-height: 100vh;
	--max-width: 1600px;
	--scrollbar-width: 15px;
	--input-height: 75px;
	--checkbox-size: 25px;
	--outer-width: calc((100vw - var(--max-width) - var(--scrollbar-width)) / 2);
	--lightbox-inset: 150px;
	--img-corner-offset: var(--small-gap);
	--section-padding: var(--large-gap);

	/* Aussehen */
	--dashed-line-style: dashed 2px var(--dark-grey);
	--orange-line-style: solid 2px var(--orange);
	--layer-background: rgba(0,0,0,0.8);

	/* Schrift */
	--large-text-size-factor: 4;
	--large-text-size: calc(var(--large-text-size-factor) * 1rem);
	--large-line-height: 0.85em;

	--medium-text-size-factor: 2.2;
	--medium-text-size: calc(var(--medium-text-size-factor) * 1rem);
	--medium-line-height: 1.1em;

	--medium-small-text-size-factor: 1.6;
	--medium-small-text-size: calc(var(--medium-small-text-size-factor) * 1rem);
	--medium-small-line-height: 1.1em;

	--small-text-size-factor: 1.3;
	--small-text-size: calc(var(--small-text-size-factor) * 1rem);
	--small-line-height: 1.5em;
}

/* Mehr Kontrast */

.more-contrast {
	--orange: black;
	--dark-grey: black;
	--light-grey: white;
}

.more-contrast .more-contrast-adjust {
	filter: grayscale(100%) contrast(200%);
}

.more-contrast .more-contrast-black {
	filter: grayscale(100%) brightness(0);
}

.more-contrast .more-contrast-white {
	filter: grayscale(100%) brightness(1000);
}

/* Nicht veränderliche Schriftgrößen */

.no-text-size-adjustments, .no-text-size-adjustments * {
	--large-text-size: calc(var(--large-text-size-factor) * 16px);
	--medium-text-size: calc(var(--medium-text-size-factor) * 16px);
	--medium-small-text-size: calc(var(--medium-small-text-size-factor) * 16px);
	--small-text-size: calc(var(--small-text-size-factor) * 16px);
}

/* Fonts */

@font-face {
	font-family: 'Eureka Bold';
	src: url('/wp-content/themes/mahnmal/fonts/eureka-bold.woff2') format('woff2');
	font-weight: normal;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: 'Montserrat Bold';
	src: url('/wp-content/themes/mahnmal/fonts/montserrat-bold.woff2') format('woff2');
	font-weight: normal;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: 'Montserrat Regular';
	src: url('/wp-content/themes/mahnmal/fonts/montserrat-regular.woff2') format('woff2');
	font-weight: normal;
	font-style: normal;
	font-display: swap;
}

/* Fokus */

*:focus:not(:focus-visible) {
	outline: none;
}

*:focus-visible {
	outline: 3px solid var(--orange);
	outline-offset: 6px;
}

/* Basisstruktur */

*, *::before, *::after {
	box-sizing: border-box;
}

html, body {
	margin: 0;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	max-width: 100vw;
	width: 100%;
}

body {
	padding-top: var(--header-height);
	min-height: calc(var(--full-height) + 1px);
}

#page-content {
	min-height: calc(var(--full-height) - var(--header-height-full) - var(--large-gap) * 3);
}

/* Maximalbreite */

.max-width {
	width: 100%;
	max-width: var(--max-width);
	position: relative;
	margin: 0 auto;
}

/* Spalten */

.cols {
	margin: var(--large-gap) 0;
	display: grid;
	grid-gap: var(--column-gap);
	grid-template-columns: repeat(6, 1fr);
}

.col {
	position: relative;
	max-width: 100%;
	grid-row: 1;
}

.col-span-1 {grid-column: auto / span 1;}
.col-span-2 {grid-column: auto / span 2;}
.col-span-3 {grid-column: auto / span 3;}
.col-span-4 {grid-column: auto / span 4;}
.col-span-5 {grid-column: auto / span 5;}
.col-span-6 {grid-column: auto / span 6;}

.col-start-1 {grid-column-start: 1;}
.col-start-2 {grid-column-start: 2;}
.col-start-3 {grid-column-start: 3;}
.col-start-4 {grid-column-start: 4;}
.col-start-5 {grid-column-start: 5;}
.col-start-6 {grid-column-start: 6;}

/* Inhaltsblock */

.content-block > *:first-child:not(.margin), 
.content-block > .structurally-transparent:first-child > *:first-child:not(.margin), 
.content-block > .structurally-transparent:first-child > .structurally-transparent:first-child > *:first-child:not(.margin), 
.content-block > .structurally-transparent:first-child > .structurally-transparent:first-child > .structurally-transparent:first-child > *:first-child:not(.margin)  
{margin-top: 0 !important;}

.content-block > *:last-child:not(.margin), 
.content-block > .structurally-transparent:last-child > *:last-child:not(.margin), 
.content-block > .structurally-transparent:last-child > .structurally-transparent:last-child > *:last-child:not(.margin), 
.content-block > .structurally-transparent:last-child > .structurally-transparent:last-child > .structurally-transparent:last-child > *:last-child:not(.margin), 
.content-block.with-init-script > *:nth-last-child(2) 
{margin-bottom: 0 !important;}

@media (min-width: 901px) {

	.weak-content-block > *:first-child:not(.margin), 
	.weak-content-block > .structurally-transparent:first-child > *:first-child:not(.margin), 
	.weak-content-block > .structurally-transparent:first-child > .structurally-transparent:first-child > *:first-child:not(.margin), 
	.weak-content-block > .structurally-transparent:first-child > .structurally-transparent:first-child > .structurally-transparent:first-child > *:first-child:not(.margin)
	{margin-top: 0 !important;}

	.weak-content-block > *:last-child:not(.margin), 
	.weak-content-block > .structurally-transparent:last-child > *:last-child:not(.margin), 
	.weak-content-block > .structurally-transparent:last-child > .structurally-transparent:last-child > *:last-child:not(.margin), 
	.weak-content-block > .structurally-transparent:last-child > .structurally-transparent:last-child > .structurally-transparent:last-child > *:last-child:not(.margin),  
	.weak-content-block.with-init-script > *:nth-last-child(2) 
	{margin-bottom: 0 !important;}

}

/* Linienanordnung */

.line {
	display: flex;
	align-items: center;
	gap: var(--small-gap);
}

.line.small-gap {
	gap: 15px;
}

.line.start {
	justify-content: start;
}

.line.end {
	justify-content: end;
}

.line.distribute {
	justify-content: space-between;
}

.line.align-start {
	align-items: start;
}

.line.align-end {
	align-items: end;
}

.line > * {
	margin: 0 !important;
}

/* Headlines */

h1, h2, h3, h4, .h1, .h2, .h3, .h4 {
	font-weight: normal;
}

h1, h2, .h1, .h2 {
	font-family: 'Eureka Bold';
	letter-spacing: -0.02em;
}

h3, h4, .h3, .h4 {
	font-family: 'Montserrat Bold';
}

h1, .h1 {
	font-size: var(--large-text-size);
	line-height: var(--large-line-height);
}

h1, .h1, .with-bars-h1 {
	margin: var(--medium-gap) 0;
}

h2, .h2 {
	font-size: var(--large-text-size);
	line-height: var(--large-line-height);
	color: var(--orange);
}

h2, .h2, .with-bars-h2 {
	margin: var(--medium-gap) 0;
}

h3, .h3 {
	font-size: var(--medium-text-size);
	line-height: var(--medium-line-height);
	color: var(--dark-grey);
}

h3, .h3, .with-bars-h3 {
	margin: var(--small-gap) 0;
}

h4, .h4 {
	font-size: var(--medium-small-text-size);
	line-height: var(--medium-small-line-height);
	color: var(--dark-grey);
}

h4, .h4, .with-bars-h4 {
	margin: var(--small-gap) 0;
}

.with-bars > * {
	color: white;
	-webkit-box-decoration-break: clone;
	box-decoration-break: clone;
	display: inline;
}

:is(.with-bars-h1, .with-bars-h2) > * {
	background-color: var(--orange);
	line-height: calc(var(--large-line-height) * 1.5);
	padding: 0.05em 0.2em 0.025em;
}

:is(.with-bars-h3, .with-bars-h4) > * {
	background-color: var(--dark-grey);
	line-height: calc(var(--large-line-height) * 1.85);
	padding: 0.05em 0.3em 0.075em;
}

.long-word {
	color: inherit;
}

.long-main-title {
	font-size: calc(var(--large-text-size) * 0.6);
}

:is(h1, h2, h3, h4, .h1, .h2, .h3, .h4) s {
	color: inherit;
}

/* Text und Textauszeichnungen */

* {
	color: var(--dark-grey);
}

p, .p {
	font-family: 'Montserrat Regular';
	font-size: var(--small-text-size);
	line-height: var(--small-line-height);
	margin: 25px 0;
}

strong, b {
	font-family: 'Montserrat Bold';
	font-weight: normal;
}

::selection {
	background-color: var(--orange);
	color: white;
}

.not-selectable, .not-selectable * {
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	-o-user-select: none;
	user-select: none;
}

.no-highlighted-selection::selection, .no-highlighted-selection *::selection {
	background-color: transparent;
	color: inherit;
}

nobr {
	color: inherit;
}

/* Aufzählung */

ul, ol {
	font-family: 'Montserrat Regular';
	font-size: var(--small-text-size);
	line-height: var(--small-line-height);
	margin: 25px 0;
}

ul {
	list-style-type: square;
	padding-left: 1.35ch;
}

ul ::marker {
	color: var(--orange);
}

ol {
	padding-left: 1.75ch;
}

/* Links */

a {
	color: inherit;
	text-decoration: none;
	cursor: pointer;
}

.show-links a, .html-content a {
	text-decoration: underline var(--orange-line-style);
	display: inline-block;
}

[href^="tel:"] {
	pointer-events: none;
}

:target {
	scroll-margin-top: calc(var(--header-height-scroll-margin) + var(--large-gap) * 1.5);
}

/* Bilder */

figure {
	margin: var(--small-gap) 0;
	position: relative;
}

.img {
	display: block;
	width: 100%;
	margin: var(--small-gap) 0;
	object-position: center;
	object-fit: cover;
}

.aspect-ratio-2-1 {aspect-ratio: 2 / 1;}
.aspect-ratio-3-2 {aspect-ratio: 3 / 2;}
.aspect-ratio-4-3 {aspect-ratio: 4 / 3;}
.aspect-ratio-1-1 {aspect-ratio: 1 / 1;}
.aspect-ratio-3-4 {aspect-ratio: 3 / 4;}
.aspect-ratio-2-3 {aspect-ratio: 2 / 3;}
.aspect-ratio-1-2 {aspect-ratio: 1 / 2;}
.aspect-ratio-16-9 {aspect-ratio: 16 / 9;}
.aspect-ratio-9-16 {aspect-ratio: 9 / 16;}
.aspect-ratio-9-14 {aspect-ratio: 9 / 14;}

.img.fitting-size {
	height: 100%;
	position: absolute;
}

.lazy {
	opacity: 0;
}

.loaded {
	opacity: 1;
}

.figcaption {
	position: absolute;
	bottom: 35px;
	left: 35px;
}

figcaption {
	font-family: 'Montserrat Bold';
	font-size: var(--small-text-size);
	line-height: calc(var(--small-line-height) * 1.15);
	display: inline;
	-webkit-box-decoration-break: clone;
	box-decoration-break: clone;
	background-color: white;
	padding: 0 0.35em;
}

figcaption:empty {
	display: none;
}

.more-contrast .bw-if-more-contrast {
	filter: grayscale(100%);
}

/* Bildform */

.img-shape {
	margin: var(--small-gap) 0;
	position: relative;
}

.img-shape.fitting-size, .img-shape figure {
	height: 100%;
}

/* Ecke links oben / links unten */
.img-shape-type-1, .img-shape-type-2 {
	width: calc(100% + var(--img-corner-offset));
	transform: translateX(calc(-1 * var(--img-corner-offset)));
}

:is(.img-shape-type-1, .img-shape-type-2) .figcaption {
	transform: translateX(var(--img-corner-offset));
}

/* Ecke links oben */
.img-shape-type-1 {
	-webkit-clip-path: polygon(var(--img-corner-offset) 0, 100% 0, 100% 100%, var(--img-corner-offset) 100%, 0 33%);
	clip-path: polygon(var(--img-corner-offset) 0, 100% 0, 100% 100%, var(--img-corner-offset) 100%, 0 33%);
}

/* Ecke links unten */
.img-shape-type-2 {
	-webkit-clip-path: polygon(var(--img-corner-offset) 0, 100% 0, 100% 100%, var(--img-corner-offset) 100%, 0 66%);
	clip-path: polygon(var(--img-corner-offset) 0, 100% 0, 100% 100%, var(--img-corner-offset) 100%, 0 66%);
}

/* Ecke unten mittig */
.img-shape-type-3 {
	-webkit-clip-path: polygon(0 0, 100% 0, 100% calc(100% - var(--small-gap)), 50% 100%, 0 calc(100% - var(--small-gap)));
	clip-path: polygon(0 0, 100% 0, 100% calc(100% - var(--small-gap)), 50% 100%, 0 calc(100% - var(--small-gap)));
}

/* Ecke rechts oben / rechts unten */
.img-shape-type-4, .img-shape-type-5 {
	width: calc(100% + var(--img-corner-offset));
}

/* Ecke rechts oben */
.img-shape-type-4 {
	-webkit-clip-path: polygon(0 0, calc(100% - var(--img-corner-offset)) 0, 100% 33%, calc(100% - var(--img-corner-offset)) 100%, 0 100%);
	clip-path: polygon(0 0, calc(100% - var(--img-corner-offset)) 0, 100% 33%, calc(100% - var(--img-corner-offset)) 100%, 0 100%);
}

/* Ecke rechts unten */
.img-shape-type-5 {
	-webkit-clip-path: polygon(0 0, calc(100% - var(--img-corner-offset)) 0, 100% 66%, calc(100% - var(--img-corner-offset)) 100%, 0 100%);
	clip-path: polygon(0 0, calc(100% - var(--img-corner-offset)) 0, 100% 66%, calc(100% - var(--img-corner-offset)) 100%, 0 100%);
}

/* Bild-Text-Kombinationen */

.img-text-combinations figure {
	height: 100%;
}

.img-text-combinations .img {
	margin: 0;
}

/* Icons */

.icon {
	width: var(--small-gap);
	height: var(--small-gap);
	cursor: pointer;
	background-color: var(--orange);
	position: relative;
	flex-grow: 0;
	flex-shrink: 0;
}

.icon img {
	position: absolute;
	width: 100%;
	height: 100%;
	object-position: center;
	object-fit: cover;
	filter: grayscale(100%) brightness(100);
}

.inline-icon {
	height: 0.9em !important;
	width: auto !important;
	display: inline !important;
	transform: translateY(20%);
	margin-left: 0.5em;
}

/* Abstand */

.margin {
	margin-top: var(--margin, 0);
}

/* Gestapelter Inhalt */

.stacked-content {
	display: grid;
	grid-template-columns: 1fr;
	grid-template-rows: 1fr;
}

.stacked-content-layer {
	grid-column: 1 / 2;
	grid-row: 1 / 2;
	position: relative;
}

.stacked-content-layer > div {
	position: relative;
	height: 100%;
	width: 100%;
	overflow: hidden;
}

.stacked-content-layer.inflating > div {
	position: relative;
}

/* Trenner */

hr {
	border: none;
	border-bottom: var(--dashed-line-style);
	margin: var(--large-gap) 0;
}

/* Tabellen */

table {
	font-family: 'Montserrat Regular';
	font-size: var(--small-text-size);
	line-height: var(--small-line-height);
	margin: var(--small-gap) 0;
	border-collapse: collapse;
	width: 100%;
}

th, td {
	padding: 20px;
	vertical-align: top;
}

th {
	font-family: 'Montserrat Bold';
	padding-top: 0;
	text-align: left;
}

td {
	border-top: var(--orange-line-style);
}

:is(th, td):first-child {
	padding-left: 0;
}

:is(th, td):last-child {
	padding-right: 0;
}

/* Buttons */

button, input[type="submit"], .button {
	margin: var(--small-gap) 0;
	background-color: var(--orange);
	border: none;
	font-size: var(--medium-small-text-size);
	line-height: var(--medium-small-line-height);
	cursor: pointer;
	color: white;
	border-radius: 0;
	font-family: 'Montserrat Bold';
	width: fit-content;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 0.1em;
	padding: 0.3em 0.6em 0.4em;
	text-decoration: none !important;
}

.button-shortcode {
	margin: var(--small-gap) 0;
}

input[type="submit"] {
	height: auto;
}

.orange-section :is(button, input[type="submit"], .button) {
	background-color: white;
	color: var(--orange);
}

:is(button, input[type="submit"], .button):hover {
	background-color: var(--dark-grey);
}

:is(button, input[type="submit"], .button).full-width {
	width: 100%;
}

:is(button, input[type="submit"], .button).small {
	font-family: 'Montserrat Bold';
	font-size: var(--small-text-size);
	line-height: var(--small-line-height);
	background-color: var(--dark-grey);
	padding: 0 0.4em 0.1em;
	margin: var(--small-gap) 0;
}

:is(button, input[type="submit"], .button) + :is(button, input[type="submit"], .button) {
	margin-top: calc(var(--small-gap) / -2);
}

:is(button, input[type="submit"], .button) img {
	height: 0.65em;
	width: auto;
	filter: grayscale(100%) brightness(1000);
	flex-shrink: 0;
	transform: translateY(10%);
}

.button-group-shortcode {
	display: flex;
	gap: var(--small-gap);
	flex-wrap: wrap;
	margin: var(--small-gap) 0;
}

.button-group-shortcode :is(button, input[type="submit"], .button, .button-shortcode) {
	margin: 0;
}

/* Formulare */

.input {
	margin: 35px 0;
	position: relative;
}

input, select, textarea {
	appearance: none;
	margin: 0;
	border: none;
	border-bottom: var(--dashed-line-style);
	width: 100%;
	height: var(--input-height);
	border-radius: 0;
	background-color: transparent;
	font-size: var(--medium-small-text-size);
	line-height: var(--medium-small-line-height);
	font-family: 'Montserrat Regular';
	padding: 0;
}

textarea {
	line-height: calc(var(--medium-small-line-height) * 1.25);
	padding-top: calc(var(--input-height) * 0.25);
	resize: none;
}

.input-icon {
	position: absolute;
	top: 0;
	right: 0;
	pointer-events: none;
	height: calc(var(--input-height) - 5px);
	aspect-ratio: 1 / 1;
	background-size: cover;
	background-color: white;
	-webkit-mask: linear-gradient(to right, transparent, black 35%);
	mask: linear-gradient(to right, transparent, black 35%);
}

select + .input-icon {
	background-image: url('/wp-content/themes/mahnmal/img/dropdown.svg');
}

input[type="search"] + .input-icon {
	background-image: url('/wp-content/themes/mahnmal/img/search.svg');
}

.checkbox-input {
	min-height: var(--checkbox-size);
	margin: calc(var(--small-gap) * 1.25) 0;
}

.checkbox-input + .checkbox-input {
	margin-top: calc(var(--small-gap) * -0.5);
}

.checkbox-input label span {
	padding-left: calc(var(--checkbox-size) * 1.75);
	display: block;
}

input[type="checkbox"] {
	width: var(--checkbox-size);
	height: var(--checkbox-size);
	cursor: pointer;
	position: absolute;
	border: solid 2px var(--dark-grey);
	transform: translateY(20%);
}

input[type="checkbox"]:checked {
	background-image: url('/wp-content/themes/mahnmal/img/checkbox.svg');
}

::placeholder {
	opacity: 1;
	color: var(--dark-grey);
}

:invalid {
	box-shadow: none;
}

:-webkit-autofill {
	background-color: transparent !important;
	box-shadow: none;
}

label {
	font-family: 'Montserrat Regular';
	font-size: var(--small-text-size);
	line-height: var(--small-line-height);
}

.hidden-input-label {
	opacity: 0;
	pointer-events: none;
	position: absolute;
}

/* Caldera Forms */

.caldera_forms_form label {
	display: none;
}

.caldera_forms_form .checkbox label {
	display: block;
	translate: calc(var(--checkbox-size) * 1.75) 0;
	padding-right: calc(var(--checkbox-size) * 1.75);
}

.caldera_forms_form .checkbox input {
	translate: calc(var(--checkbox-size) * -1.75) 0;
}

.caldera_forms_form .form-group {
	margin: 35px 0;
}

.caldera_forms_form select {
	background-image: url('/wp-content/themes/mahnmal/img/dropdown.svg');
	background-position: top right;
	background-repeat: no-repeat;
	background-size: contain;
}

.caldera-forms-consent-field {
	translate: calc(var(--checkbox-size) * 1.5) 0;
	padding: 15px 0;
}

.caldera-forms-consent-field :is(input, label, span) {
	translate: calc(var(--checkbox-size) * -1.5) 0;
}

.caldera-forms-consent-field label p {
	padding-right: calc(var(--checkbox-size) * 1.5);
	margin: 10px 0;
}

.caldera-forms-consent-field label + span {
	display: none;
}

.caldera-forms-consent-field label :is(p, a) {
	translate: 10px 0;
}

.caldera-forms-consent-field a {
	text-decoration: underline var(--orange-line-style);
	display: block;
}

.caldera_ajax_error_block {
	position: absolute;
	translate: 0 7px;
}

.form-group-has-textarea .caldera_ajax_error_block {
	translate: 0 -45px;
}

.form-group-has-consent-field {
	position: relative;
}

.form-group-has-consent-field .caldera_ajax_error_block {
	top: 15px;
	right: 0;
}

.caldera_ajax_error_block > span, .caldera-grid .alert {
	font-family: 'Montserrat Bold';
	color: var(--orange) !important;
}

.caldera_forms_form :is(.checkbox, .checkbox-inline) {
	margin-top: -25px;
}

.caldera-forms-consent-field {
	padding-bottom: 0;
}

.caldera_forms_form textarea {
	margin-bottom: 50px;
}

.caldera_forms_form .col-sm-6 {
	width: calc(50% - var(--column-gap) / 4);
	display: inline-block;
}

.caldera_forms_form .col-sm-6:first-child {
	margin-right: calc(var(--column-gap) / 2);
}

.caldera_forms_form .col-sm-6 .form-group {
	margin-bottom: 0;
}

#caldera-layer-forms {
	display: none;
}

#caldera-form-placeholder {
	display: contents;
}

.index-template .form-group-has-consent-field {
	padding-top: 25px;
}

.async-caldera-form, .caldera-form-loads-on-click {
	display: contents;
}

.caldera-checkbox-more-margin-top {
	margin-top: var(--medium-gap) !important;
}

.caldera-checkbox-more-margin-top-2 {
	margin-top: var(--small-gap) !important;
}

.caldera-checkbox-less-margin-bottom {
	margin-bottom: calc(-0.25 * var(--small-gap)) !important;
}

.caldera_forms_form .help-block:not(.caldera_ajax_error_block) {
	font-family: 'Montserrat Regular';
	padding-top: 15px;
	display: block;
}

.caldera_forms_form [title="hide"] {
	display: none;
}

#fld_7407704_8-wrap, #fld_4908885_9-wrap {
	font-family: 'Montserrat Regular';
	font-size: var(--small-text-size);
	line-height: var(--small-line-height);
}

#fld_7407704_8, #fld_4908885_9 {
	border: solid 2px var(--dark-grey);
	height: 50px;
	width: 100px;
	padding-left: 15px;
	max-width: none !important;
}

/* Formular-Spalten */

.form-cols {
	display: grid;
	grid-template-columns: var(--form-cols);
	column-gap: var(--small-gap);
	row-gap: 35px;
}

/* Konstruktions-Linien */

.construction-lines {
	--construction-lines-padding: var(--medium-gap);
	margin: var(--large-gap) 0;
	position: relative;
}

.construction-lines-padding-top {
	padding-top: var(--construction-lines-padding);
}

.construction-lines-padding-right {
	padding-right: var(--construction-lines-padding);
}

.construction-lines-padding-bottom {
	padding-bottom: var(--construction-lines-padding);
}

.construction-lines-padding-left {
	padding-left: var(--construction-lines-padding);
}

.construction-lines-extend-margin-top {
	margin-top: calc(var(--large-gap) * 2);
}

.construction-lines-extend-margin-bottom {
	margin-bottom: calc(var(--large-gap) * 2);
}

.construction-line {
	position: absolute;
}

.construction-line.horizontal {
	width: 100%;
	border-top: var(--dashed-line-style);
}

.construction-line.horizontal.extend-1 {
	width: calc(100% + 1 * var(--column-gap));
}

.construction-line.horizontal.extend-2 {
	width: calc(100% + 2 * var(--column-gap));
}

.construction-line.vertical {
	height: 100%;
	border-left: var(--dashed-line-style);
}

.construction-line.vertical.extend-1 {
	height: calc(100% + 1 * var(--column-gap));
}

.construction-line.vertical.extend-2 {
	height: calc(100% + 2 * var(--column-gap));
}

.construction-line.top {
	top: 0;
}

.construction-line.right {
	right: 0;
}

.construction-line.bottom {
	bottom: 0;
}

.construction-line.left {
	left: 0;
}

/* Schräger Hintergrund */

.slanted-background {
	position: relative;
	margin: var(--large-gap) 0;
}

.slanted-background::before {
	content: '';
	background-color: var(--light-grey);
	position: absolute;
	width: 100%;
	height: 125%;
	z-index: -1;
}

.slanted-background-type-1::before {
	top: var(--small-gap);
	-webkit-clip-path: polygon(0 0, 100% var(--large-gap), 100% 100%, 0 calc(100% - var(--large-gap)));
	clip-path: polygon(0 0, 100% var(--large-gap), 100% 100%, 0 calc(100% - var(--large-gap)));
}

.slanted-background-type-2::before {
	top: var(--small-gap);
	left: calc(var(--outer-width) * -1);
	width: calc(100% + var(--small-gap) + var(--outer-width));
	-webkit-clip-path: polygon(0 var(--medium-gap), 100% 0, 100% calc(100% - var(--medium-gap)), 0 100%);
	clip-path: polygon(0 var(--medium-gap), 100% 0, 100% calc(100% - var(--medium-gap)), 0 100%);
}

.slanted-background-type-3::before {
	top: var(--large-gap);
	left: calc(var(--outer-width) * -1);
	width: calc(100% + 2 * var(--outer-width));
	-webkit-clip-path: polygon(0 var(--large-gap), 100% 0, 100% 100%, 0 100%);
	clip-path: polygon(0 var(--large-gap), 100% 0, 100% 100%, 0 100%);
}

.slanted-background-type-4 {
	padding: var(--medium-gap) 0;
}

.slanted-background-type-4 > *:first-child {
	margin-top: 0;
}

.slanted-background-type-4 > *:last-child {
	margin-bottom: 0;
}

.slanted-background-type-4::before {
	height: 100%;
	top: 0;
	width: calc(100% + var(--outer-width) + var(--column-gap));
	left: calc(-1 * var(--outer-width));
	-webkit-clip-path: polygon(0 0, 100% 0, calc(100% - var(--column-gap)) 100%, 0 100%);
	clip-path: polygon(0 0, 100% 0, calc(100% - var(--column-gap)) 100%, 0 100%);
}

.slanted-background-type-5 {
	padding: calc(var(--small-gap) / 2) 0 5px;
	margin-top: calc(-1 * var(--small-gap));
}

.slanted-background-type-5::before {
	height: 100%;
	top: 0;
	-webkit-clip-path: polygon(0 var(--medium-gap), 100% 0, 100% calc(100% - var(--medium-gap)), 0 100%);
	clip-path: polygon(0 var(--medium-gap), 100% 0, 100% calc(100% - var(--medium-gap)), 0 100%);
}

/* Telefon */

.tel > p {
	margin-bottom: 5px;
}

.tel .h3 {
	margin: 0;
	white-space: nowrap;
}

.tel a:not([href]) {
	cursor: default;
}

/* Startseitenteaser */

.mainpage-teaser .img {
	margin-bottom: 35px;
}

.mainpage-teaser .h3 {
	margin-top: 35px;
}

/* Navigation */

#header {
	height: var(--header-height);
	position: fixed;
	top: 0;
	z-index: 1050;
	width: 100%;
	background-color: white;
	padding: var(--medium-gap) 0 var(--large-gap);
	box-shadow: 0 0 10px rgba(0,0,0,0);
}

body.safari, body.safari :is(#header, #meta-nav, #main-nav, #logo, #text-logo, #special-page-logo) {
	transition: none;
}

.hide-nav #header {
	background-color: transparent;
}

#header .max-width {
	display: grid;
	grid-template-columns: 1fr 5fr;
	gap: calc(var(--large-gap) * 1.25);
	height: 100%;
}

#logo-wrapper {
	position: relative;
	height: 100%;
}

#logo-wrapper img {
	position: absolute;
	display: block;
	width: 100%;
	height: auto;
	top: 0;
	backface-visibility: hidden;
}

#logo {
	/*
	transform: translateY(-5%) scale(1.1);
	*/
	transform: translateY(-23%);
	transform-origin: 0 100%;
}

#text-logo {
	transform-origin: 0 100%;
	transform: translateY(-250%) scale(1.1);
	opacity: 0;
	pointer-events: none;
}

#special-page-logo {
	height: auto;
	width: 325px;
	position: relative;
	top: 10%;
	transform-origin: 0 75%;
}

.minimize-header #special-page-logo {
	width: 125px;
	scale: 1.4;
}

#nav {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
}

.hide-nav :is(#main-nav, #meta-nav > p:not(#more-contrast-switch)) {
	visibility: hidden;
}

.nav-item > p {
	margin: 0;
}

#main-nav .nav-item .highlighted, #main-nav .nav-item .highlighted:hover, #mobile-nav .highlighted {
	background-color: var(--orange);
	color: white;
	padding: 0.1em 0.3em 0.2em;
}

#main-nav .nav-item .highlighted a:hover {
	color: white;
}

.sub-nav {
	position: absolute;
	transform: translateX(-25px);
	display: none;
}

:is(.nav-item:hover, .nav-item:focus-within) .sub-nav {
	display: block;
}

.sub-nav-gap {
	height: 40px;
}

.sub-nav-content {
	background-color: var(--light-grey);
	padding: 25px;
	outline: solid 5px white;
}

.more-contrast .sub-nav-content {
	border: var(--orange-line-style);
}

.sub-nav-content p {
	margin: 10px 0;
}

#nav .current {
	text-decoration: underline var(--dashed-line-style);
	text-underline-offset: 0.4em;
}

.minimize-header {
	--header-height: var(--header-height-reduced);
}

.minimize-header #header {
	padding: 25px 0;
	box-shadow: 0 0 10px rgba(0,0,0,0.25);
}

.minimize-header.hide-nav #header {
	box-shadow: none;
	opacity: 0;
}

.minimize-header.hide-nav #header, .minimize-header.hide-nav #header * {
	pointer-events: none;
}

.minimize-header #logo {
	opacity: 0;
	pointer-events: none;
}

.minimize-header #text-logo {
	opacity: 1;
	transform: translateY(45%) scale(1.1);
	pointer-events: all;
}

.hide-nav #text-logo {
	display: none;
}

.minimize-header #main-nav {
	transform: translateY(-85%);
}

.minimize-header #meta-nav {
	opacity: 0;
	pointer-events: none;
}

#more-contrast-switch {
	cursor: pointer;
}

#language-selector {
	position: relative;
}

#language-selector > p {
	cursor: pointer;
	margin: 0;
}

#language-selector > p > img {
	height: 0.75em;
	width: auto;
	margin-left: 0.25em;
}

#language-selector > div {
	position: absolute;
	display: none;
}

:is(#language-selector:hover, #language-selector.open) > div {
	display: block;
}

#language-selector > div > div:first-child {
	width: 100%;
	height: 25px;
}

#language-selector > div > div:last-child {
	padding: 25px;
	background-color: var(--light-grey);
}

.more-contrast #language-selector > div > div:last-child {
	border: var(--orange-line-style);
}

#language-selector > div > div:last-child > p {
	margin: 10px 0;
}

#font-size, .small-icons {
	display: flex;
	align-items: center;
	gap: 10px;
}

span.small-icons {
	display: inline-flex;
}

.small-icons a {
	display: block;
	width: 25px;
	aspect-ratio: 1 / 1;
	background-color: var(--dark-grey);
	border-radius: 50%;
	-webkit-mask-image: linear-gradient(black, black), var(--social-icon);
	mask-image: linear-gradient(black, black), var(--social-icon);
	-webkit-mask-composite: source-out;
	mask-composite: subtract;
	position: relative;
}

.small-icons a:hover {
	background-color: var(--orange);
}

.small-icons a:focus-visible {
	outline-offset: -3px;
}

#font-size p {
	margin: 0;
}

.with-arrow-on-top {
	position: relative;
}

.with-arrow-on-top::before {
	content: '';
	display: block;
	width: 20px;
	height: 10px;
	background-color: inherit;
	position: absolute;
	-webkit-clip-path: polygon(0 100%, 50% 0, 100% 100%);
	clip-path: polygon(0 100%, 50% 0, 100% 100%);
	top: 0;
	transform: translateY(-95%);
}

.more-contrast .with-arrow-on-top::before {
	background-color: black;
	transform: translateY(-97%);
}

#meta-nav a:hover, #main-nav a:hover, #more-contrast-switch:hover, #language-selector > p:hover {
	color: var(--orange);
}

#meta-nav * {
	white-space: nowrap;
}

:is([data-pageid="62"], [data-pageid="958"], [data-pageid="1070"], [data-pageid="2267"], .eighty-years-of-liberation-event) :is(#meta-nav, #mobile-nav > div) > p:not(#more-contrast-switch, .h3) {
	display: none;
}

:is([data-pageid="62"], [data-pageid="958"], [data-pageid="1070"], [data-pageid="2267"], .eighty-years-of-liberation-event) :is(#meta-nav, #mobile-nav > div) :is(a:has(.sign-language-icon), .small-icons) {
	display: none;
}

:is([data-pageid="62"], [data-pageid="958"], [data-pageid="1070"], [data-pageid="2267"], .eighty-years-of-liberation-event) :is(#meta-nav, #mobile-nav > div) #font-size .small-icons {
	display: flex;
}

:is([data-pageid="2267"], .eighty-years-of-liberation-event) a:has(> #plan-visit-label) {
	display: none;
}

:is([data-pageid="2267"], .eighty-years-of-liberation-event) a:has(> #special-page-logo) {
	position: relative;
}

:is([data-pageid="2267"], .eighty-years-of-liberation-event) a:has(> #special-page-logo)::after {
	content: url('/wp-content/uploads/2025/01/80-jahre-befreiung-2.png');
	display: block;
	position: absolute;
	width: 100%;
	top: 0;
	transform-origin: 0 0;
	scale: 0.7;
	translate: -7.5% -10%;
	transition: all 0.3s ease;
}

:is([data-pageid="2267"], .eighty-years-of-liberation-event) .minimize-header a:has(> #special-page-logo)::after {
	scale: 0.5;
	translate: -10% 0%;
}

a:has(> #plan-visit-label) {
	position: fixed;
	writing-mode: vertical-lr;
	transform: rotate(180deg);
	right: 0;
	top: calc(var(--header-height-full) + var(--medium-gap));
	z-index: 1050;
}

#plan-visit-label {
	font-family: 'Montserrat Bold';
	color: white;
	background-color: var(--orange);
	padding: 0.4em 0 0.4em 0.1em;
	margin: 0;
}

#mobile-nav {
	z-index: 1075;
}

#mobile-nav-trigger {
	display: none;
}

#mobile-nav {
	position: fixed;
	width: 100%;
	height: 100%;
	top: 0;
	background-color: var(--dark-grey);
	display: grid;
	place-content: top;
	padding-top: var(--medium-gap);
	overflow: scroll;
	overscroll-behavior: none;
	scrollbar-width: none;
}

#mobile-nav::-webkit-scrollbar {
	display: none;
}

#mobile-nav > div {
	display: flex;
	flex-direction: column;
	gap: 15px;
}

#mobile-nav > div > * {
	margin: 0;
}

#mobile-nav .h3 {
	width: fit-content;
	position: relative;
	left: 50%;
	translate: -50% 0;
} 

#mobile-nav * {
	color: white;
	text-align: center;
}

#mobile-nav #font-size {
	justify-content: center;
}

#mobile-nav #font-size {
	flex-wrap: wrap;
}

#mobile-nav #font-size p {
	width: 100%;
}

#mobile-nav .small-icons a {
	background-color: white;
}

#mobile-nav #language-selector > p > img {
	display: none;
}

#mobile-nav .small-icons {
	justify-content: center;
}

#mobile-nav :is(#language-selector:hover, #language-selector.open) > div {
	display: none;
}

.sign-language-icon {
	width: 25px;
}

.mobile-sub-nav {
	padding: 15px 0;
	background-color: rgba(255, 255, 255, 0.2);
	margin: 10px 0 !important;
}

.mobile-sub-nav a {
	display: block;
	margin: 10px 0;
}

/* Slider / Headerbild */

.slider, .header-img {
	margin: 0 0 var(--medium-gap);
	height: calc(var(--full-height) - var(--header-height-full) - var(--small-gap));
}

:is(.slider, .header-img) .max-width {
	margin: 0 auto;
	height: 100%;
	display: grid;
	grid-template-columns: 1fr 3fr;
}

.slider-text-column, .header-img-text-column {
	position: relative;
}

.slider-text-block, .header-img-text-block {
	padding-right: var(--medium-gap);
	position: absolute;
	bottom: calc(var(--large-gap) * 1.5 + 10px);
	width: 100%;
	z-index: 1025;
}

.slider:not(.no-cta) .slider-text-block {
	cursor: pointer;
}

.header-img-text-block {
	cursor: default;
}

:is(.slider-text-block, .header-img-text-block) .with-bars {
	margin: var(--small-gap) 0;
}

:is(.slider-text-block, .header-img-text-block) h1 {
	white-space: pre;
}

@media (min-width: 901px) {

	.header-img .render-large-headline-smaller .with-bars {
		margin-bottom: calc(var(--small-gap) / 2);
	}

	.header-img .render-large-headline-smaller h1 {
		font-size: calc((var(--large-text-size) + var(--small-text-size)) / 2);
	}

}

.no-cta .slider-text {
	margin-bottom: 0;
}

.no-cta .slider-cta {
	display: none;
}

.slider-img, .header-img-img-wrapper {
	position: relative;
	width: calc(100% + var(--large-gap));
	height: 100%;
	-webkit-clip-path: polygon(var(--large-gap) 0, 100% 0, 100% 100%, 0 calc(100% - var(--large-gap)));
	clip-path: polygon(var(--large-gap) 0, 100% 0, 100% 100%, 0 calc(100% - var(--large-gap)));
}

.slider-img > img:not(.slider-play), .header-img-img {
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	object-position: center;
	object-fit: cover;
}

.slider-img > img:nth-child(2) {
	opacity: 0;
	pointer-events: none;
}

.slider[data-state="2"] .slider-img img:nth-child(2) {
	opacity: 1;
	pointer-events: all;
}

.slider-nav-wrapper {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 15px;
	position: absolute;
	right: var(--large-gap);
	top: 0;
	height: 100%;
	transform: translateX(50%);
	filter: drop-shadow(0 0 var(--large-gap) black) drop-shadow(0 0 var(--medium-gap) black);
}

.slider-nav-line {
	border-left: var(--dashed-line-style);
	border-color: white;
}

.slider-nav-line:first-child {
	flex-grow: 1;
}

.slider-nav-line:last-child {
	height: calc(var(--large-gap) * 1.5);
}

.slider-nav {
	display: contents;
}

.slider-nav-btn {
	width: 25px;
	aspect-ratio: 1 / 1;
	background-color: white;
	border-radius: 50%;
	display: grid;
	place-items: center;
	cursor: pointer;
}

.slider-nav-btn div {
	opacity: 0;
	width: 50%;
	height: 50%;
	background-color: var(--orange);
	border-radius: 50%;
}

.slider-nav-btn.current div {
	opacity: 1;
}

.slider-img::after {
	content: '';
	display: block;
	width: 35%;
	height: 100%;
	background: linear-gradient(90deg, rgba(0,0,0,var(--slider-gradient-opacity)) 0%, transparent 100%);
	position: absolute;
	transition: all 0.3s ease;
}

.slider-play {
	background-color: var(--orange);
	width: var(--medium-gap);
	height: auto;
	display: block;
	position: absolute;
	z-index: 1005;
	bottom: calc(var(--large-gap) * 1.5 + 15px);
	left: var(--medium-gap);
	cursor: pointer;
	pointer-events: none;
	opacity: 0;
}

.slider.with-video .slider-play {
	pointer-events: all;
	opacity: 1;
}

.more-contrast .slider-play {
	filter: invert(100%);
}

/* Headerbild mit Headline */

.header-img-with-headline {
	margin: 0 0 var(--medium-gap);
	height: calc(var(--full-height) - var(--header-height-full) + var(--large-gap));
	position: relative;
	-webkit-clip-path: polygon(0 0, 100% 0, 100% 100%, 0 calc(100% - var(--large-gap)));
	clip-path: polygon(0 0, 100% 0, 100% 100%, 0 calc(100% - var(--large-gap)));
}

.header-img-with-headline .img {
	margin: 0;
}

.header-img-with-headline .max-width {
	margin: 0 auto;
	height: 100%;
	display: flex;
	justify-content: flex-end;
}

.header-img-with-headline .with-bars {
	position: absolute;
	bottom: calc(var(--large-gap) * 2);
	margin: 0;
	width: 50%;
	text-align: right;
	text-wrap: balance;
}

/* Neuigkeiten / Veranstaltungen */

.articles {
	margin: var(--large-gap) 0;
}

.articles-wrapper {
	display: flex;
	flex-direction: column;
}

.article:not(:last-child)::after {
	content: '';
	display: block;
	width: 100%;
	border-top: var(--dashed-line-style);
	margin: var(--medium-gap) 0;
}

.article .cols {
	gap: calc(var(--column-gap) / 2);
	margin: 0;
}

.article .with-bars {
	margin: 25px 0 35px;
}

.article:focus-visible {
	outline: none;
}

.article:focus-visible > div {
	outline: 3px solid var(--orange);
	outline-offset: 6px;
}

.further-article p {
	margin: calc(var(--small-gap) * -0.3) 0 calc(var(--small-gap) * 0.8);
}

.event-location .map {
	margin: var(--small-gap) 0;
}

/* Spalten-Innenabstand */

.column-padding-left {
	padding-left: var(--column-gap);
}

.column-padding-right {
	padding-right: var(--column-gap);
}

/* Ausklapper-Formularfelder */

.expanding-inputs {
	display: contents;
}

.expanding-inputs[disabled] {
	display: none;
}

/* Zurück-Link */

.back-link {
	font-family: 'Montserrat Bold';
	margin: var(--medium-gap) 0;
}

.back-link img {
	transform: scaleX(-1) translateY(20%);
	margin-right: 0.5em;;
	margin-left: 0;
}

/* Formattierter Text */

.html-content {
	margin: var(--medium-gap) 0;
}

.initial {
	font-size: 875%;
	float: left;
	margin: 0 0.15ch 0 0;
	height: 1.2ch;
	transform: translateY(50%);
	font-family: 'Eureka Bold';
	color: var(--orange);
}

.initial.less-indent {
	margin-left: -0.1ch;
}

.html-content > p > img:not(.inline-icon), .html-content .wp-caption, .html-content .wp-caption > img {
	width: 100% !important;
	height: auto;
	display: block;
}

.wp-caption {
	margin: var(--small-gap) 0;
}

.wp-caption-text {
	margin-top: calc(var(--small-gap) / 3);
}

.html-content :is(h2, .h2) {
	margin: var(--small-gap) 0;
}

.html-content :is(h3, .h3, h4, .h4) {
	margin: calc(var(--small-gap) * 0.75) 0 25px;
}

.html-content hr {
	margin: var(--medium-gap) 0;
}

.more-contrast .html-content img {
	filter: grayscale(100%);
}

.phone-number {
	white-space: nowrap;
}

.width-shortcode {
	max-width: var(--width);
}

.width-shortcode img {
	width: 100%;
	height: auto;
}

/* Weiterlesen-Text mit Button */

.read-on-text-with-button {
	margin: var(--medium-gap) 0;
}

.read-on-text-with-button > div {
	margin: 0;
}

.read-on-text-with-button.shortened > div:last-of-type, .read-on-text-with-button:not(.shortened) > div:first-of-type {
	display: none;
}

.read-on-text-with-button > p {
	font-family: 'Montserrat Bold';
	width: fit-content;
	cursor: pointer;
}

/* Ausklapper-Element */

.expanding-element {
	margin: var(--medium-gap) 0;
}

.expanding-element-content {
	overflow: hidden;
}

.expanding-element.collapsed > .expanding-element-content {
	height: 0;
}

.expanding-element > button {
	margin-top: var(--small-gap);
}

.expanding-element.collapsed > button {
	margin-top: 0;
}

/* Galerie */

.gallery {
	margin: var(--large-gap) 0;
}

.gallery-imgs {
	display: grid;
	grid-template-columns: 1fr 1fr 1fr 1fr;
	grid-gap: 25px;
}

.gallery-img {
	cursor: pointer;
	position: relative;
}

.gallery-img img {
	margin: 0;
	height: 100%;
}

.gallery-img .icon {
	position: absolute;
	left: calc(var(--small-gap) / 3);
	bottom: calc(var(--small-gap) / 3);
}

.gallery .more img {
	transform: translateY(20%) rotate(90deg);
}

/* Sticky-Element */

.sticky-element {
	height: 100%;
}

.sticky-content {
	position: sticky;
	top: calc(var(--header-height) + var(--medium-gap));
}

/* Sidebar */

.sidebar {
	border-left: solid 4px var(--orange);
	padding-left: var(--small-gap);
}

.sidebar > #newsletter:first-child + #newsletter {
	margin-top: 0;
}

/* Teaser */

.teasers {
	margin: var(--large-gap) 0;
}

.teaser {
	display: block;
	margin: var(--large-gap) 0;
}

.teaser[href=""] {
	pointer-events: none;
}

.teaser[href=""] p .inline-icon {
	display: none !important;
}

.teaser :is(.img-shape, .img) {
	margin: 0;
}

.teaser .icon {
	position: absolute;
	bottom: calc(var(--small-gap) / 2);
	left: calc(var(--small-gap) / 2);
}

.teaser .h3 {
	margin-bottom: 25px;
}

/* Downloads */

.downloads {
	margin: var(--medium-gap) 0;
}

/* Kontakt */

.contact {
	margin: var(--medium-gap) 0;
}

.contact .img-shape {
	margin-bottom: 40px;
	width: 250px;
	max-width: 100%;
}

.contact button {
	margin-top: 40px !important;
}

.contact-person + .contact-person {
	margin-top: var(--medium-gap);
}

[data-pageid="56"] .contact > .h3 {
	display: none;
}

[data-pageid="56"] footer {
	-webkit-clip-path: none;
	clip-path: none;
}

/* Buchungsmöglichkeit */

.booking {
	margin: var(--medium-gap) 0;
}

/* Sprunglinks */

.jump-links {
	position: sticky;
	top: var(--header-height-reduced);
	background-color: transparent;
	padding: 25px 0;
	z-index: 1025;
	filter: drop-shadow(0 0 5px rgba(0,0,0,0));
	flex-wrap: wrap;
	gap: calc(var(--small-gap) / 2);
}

.jump-links.sticky {
	background-color: var(--light-grey);
	filter: drop-shadow(0 0 5px rgba(0,0,0,0.5));
}

.jump-links::before, .jump-links::after {
	content: '';
	display: block;
	position: absolute;
	height: 100%;
	width: var(--outer-width);
	background-color: transparent;
	top: 0;
}

.jump-links::before {
	left: calc(-1 * var(--outer-width));
}

.jump-links::after {
	right: calc(-1 * var(--outer-width));
}

.jump-links.sticky::before, .jump-links.sticky::after {
	background-color: var(--light-grey);
}

/* Abschnitte */

.grey-section, .orange-section {
	position: relative;
	margin: var(--large-gap) 0;
	width: calc(100% + 2 * var(--outer-width));
	left: calc(var(--outer-width) * -1);
}

.grey-section {
	padding: var(--section-padding) 0;
	background-color: var(--dark-grey);
	-webkit-clip-path: polygon(0 0, calc(100% - var(--outer-width)) 0, calc(100% - var(--outer-width) - var(--img-corner-offset)) 50%, calc(100% - var(--outer-width)) 100%, 0 100%);
	clip-path: polygon(0 0, calc(100% - var(--outer-width)) 0, calc(100% - var(--outer-width) - var(--img-corner-offset)) 50%, calc(100% - var(--outer-width)) 100%, 0 100%);
}

.orange-section {
	padding: calc(var(--section-padding) * 2) 0;
	background-color: var(--orange);
	-webkit-clip-path: polygon(0 var(--large-gap), 100% 0, 100% calc(100% - var(--large-gap)), 0 100%);
	clip-path: polygon(0 var(--large-gap), 100% 0, 100% calc(100% - var(--large-gap)), 0 100%);
}

.grey-section *:not(:is(h1, .h1, h2, .h2)), .orange-section :is(h1, .h1, h2, .h2) {
	color: white;
}

:is(.grey-section, .orange-section) h2 {
	transform: translateY(calc(var(--large-line-height) * -0.33));
}

.grey-section-line-1, .grey-section-line-2, .grey-section-line-3, .orange-section-line-1, .orange-section-line-2 {
	position: absolute;
	border-color: white !important;
}

.grey-section-line-1 {
	height: 100%;
	border-left: var(--dashed-line-style);
	top: 0;
	right: calc(var(--outer-width) + var(--column-width));
}

.grey-section-line-2 {
	width: calc(4 * var(--column-width) + 3 * var(--column-gap));
	border-top: var(--dashed-line-style);
	top: var(--section-padding);
	right: var(--outer-width);
}

.grey-section-line-3 {
	width: calc(2 * var(--column-width) + var(--column-gap));
	border-top: var(--dashed-line-style);
	bottom: var(--section-padding);
	right: var(--outer-width);
}

.orange-section-line-1 {
	height: 100%;
	border-left: var(--dashed-line-style);
	top: 0;
	right: var(--outer-width);
}

.orange-section-line-2 {
	width: calc(6 * var(--column-width) + 5 * var(--column-gap) + var(--outer-width));
	border-top: var(--dashed-line-style);
	top: calc(var(--section-padding) * 2);
	right: 0;
}

.orange-section h2 {
	width: fit-content;
	padding-right: var(--medium-gap);
	background-color: var(--orange);
	z-index: 1005;
	position: relative;
}

.grey-section :is(button, input[type="submit"], .button):hover {
	background-color: var(--orange);
}

.more-contrast :is(.grey-section, .orange-section) :is(button, input[type="submit"], .button) {
	background-color: white;
	color: black;
}

.more-contrast :is(.grey-section, .orange-section) :is(h2, .h2) {
	color: white;
}

.more-contrast .orange-section .html-content * {
	color: white;
}

.orange-section *:focus-visible {
	outline-color: var(--dark-grey);
}

/* Turmgrafik */

.tower {
	margin: var(--large-gap) 0;
	display: flex;
	align-items: center;
	flex-direction: column;
	position: relative;
	counter-reset: tower-texts 0;
}

.tower-texts {
	position: absolute;
	width: 100%;
	height: 100%;
}

.tower-text-row {
	pointer-events: none;
	display: flex;
	position: absolute;
	width: 100%;
	counter-increment: tower-texts 1;
}

.tower-text-row:nth-child(even) {
	justify-content: end;
}

.tower-text-row:not(:first-child, :last-child) {
	top: calc(100% / var(--nr));
}

.tower-text-row:last-child {
	bottom: 0;
}

.tower-text-column {
	pointer-events: all;
	width: calc(var(--column-width) * 2 + var(--column-gap));
	position: relative;
}

.tower-text-row:not(:first-child, :last-child) .tower-text-column {
	transform: translateY(-50%);
}

.tower-text-column::after {
	content: '';
	display: block;
	background-color: var(--light-grey);
	width: calc(var(--column-width) + var(--column-gap));
	height: calc(100% - 5px);
	position: absolute;
	top: 0;
}

.tower-text-row:nth-child(odd) .tower-text-column::after {
	right: calc(var(--column-gap) / -2);
	transform: translateX(100%);
}

.tower-text-row:nth-child(even) .tower-text-column::after {
	left: calc(var(--column-gap) / -2);
	transform: translateX(-100%);
}

.tower-text-column .img {
	margin: 0;
}

.tower-text-column h3 {
	margin-bottom: 25px;
}

.tower-text-column .highlighted-number {
	margin-right: 0.5em;
}

.tower-text-column .icon {
	position: absolute;
	bottom: calc(var(--small-gap) / 2);
	left: calc(var(--small-gap) / 2);
}

.tower-text-row:nth-child(odd) .tower-text-column .icon {
	left: calc(var(--small-gap) / 2 + var(--img-corner-offset));
}

.tower-text-column > a[href=""] {
	pointer-events: none;
}

.tower-text-column > a[href=""] p .inline-icon {
	display: none !important;
}

.tower-graphic {
	width: calc(2 * var(--column-width) + 2 * var(--column-gap));
	position: relative;
}

.tower-graphic img {
	width: 100%;
	height: auto;
	display: block;
}

.tower-graphic .highlighted-number {
	position: absolute;
	left: 50%;
	transform: translate(-50%, -50%);
}

.highlighted-number, .tower-text-column h3::before {
	background-color: var(--orange);
	width: var(--small-gap);
	aspect-ratio: 1 / 1;
	border-radius: 50%;
	display: inline-grid;
	place-items: center;
	color: white;
	margin: 0;
}

.tower-text-column h3::before {
	content: counter(tower-texts);
	margin-right: 0.5em;
}

/* Tabs */

.tabs {
	margin: var(--large-gap) 0;
}

.tabs-header {
	margin-bottom: var(--large-gap);
	flex-wrap: wrap;
}

.tabs-header button {
	position: relative;
}

.tabs-header button::after {
	content: '';
	display: block;
	width: 20px;
	height: 10px;
	background-color: inherit;
	position: absolute;
	-webkit-clip-path: polygon(0 0, 100% 0, 50% 100%);
	clip-path: polygon(0 0, 100% 0, 50% 100%);
	bottom: 0;
	transform: translateY(100%);
	opacity: 0;
}

.tabs-header button.selected {
	background-color: var(--orange);
}

.tabs-header button.selected::after {
	opacity: 1;
}

.tabs-content {
	overflow: hidden;
}

.tabs-content:not(.selected) {
	display: none;
}

/* Karte */

.map {
	margin: var(--medium-gap) 0;
	aspect-ratio: 3 / 2;
	position: relative;
}

.more-contrast .map {
	border: solid 2px black;
}

.map.enlarged {
	position: fixed;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	z-index: 1500;
	margin: 0;
}

.interactive-map, .map-placeholder {
	position: absolute;
	inset: 0;
}

.map-enlarge {
	z-index: 1000;
	position: absolute;
	bottom: calc(var(--small-gap) / 2);
	left: calc(var(--small-gap) / 2);
	display: none;
}

.map-placeholder img {
	position: absolute;
	width: 100%;
	height: 100%;
	object-position: center;
	object-fit: cover;
	display: block;
}

.map-placeholder button {
	position: absolute;
	bottom: 25px;
	left: 25px;
	margin: 0 !important;
	background-color: var(--dark-grey) !important;
	color: white !important;
}

.more-contrast .interactive-map {
	filter: grayscale(100%) brightness(65%) contrast(400%);
}

.more-contrast .leaflet-marker-icon {
	filter: grayscale(100%) brightness(0);
}

/*

.leaflet-marker-pane img[data-same_pos_nr="2"] {
	margin-top: -22px !important;
}

.leaflet-marker-pane img[data-same_pos_nr="3"] {
	margin-top: -22px !important;
	margin-left: 12px !important;
}

.leaflet-marker-pane img[data-same_pos_nr="4"] {
	margin-left: 12px !important;
}

*/

/* Geschichte */

.history {
	--timeline-padding: var(--column-gap);
	margin: var(--large-gap) 0;
	position: relative;
}

.history-entries {
	padding-left: var(--timeline-padding);
}

.history-entry {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: var(--column-gap);
	margin: calc(var(--large-gap) * 1.25) 0;
}

.history-entry > div {
	position: relative;
}

.history-entry .h2 {
	margin: 0 0 -10px;
	position: relative;
}

.history-entry .h2::before {
	content: '';
	display: block;
	background-color: var(--orange);
	width: calc(var(--small-gap) / 2);
	aspect-ratio: 1 / 1;
	border-radius: 50%;
	position: absolute;
	top: 50%;
	left: calc(-1 * var(--timeline-padding) + 2px);
	translate: -50% -50%;
	z-index: 1010;
}

.history-entry:first-child .h2::after {
	content: '';
	display: block;
	background-color: white;
	width: calc(var(--small-gap) / 2);
	aspect-ratio: 1 / 2;
	position: absolute;
	top: 0;
	left: calc(-1 * var(--timeline-padding) + 2px);
	translate: -50% -25%;
	z-index: 1005;
}

.history-entry h3 {
	margin: 25px 0 var(--small-gap);
}

.history-entry .figcaption {
	top: 35px;
}

.history-entry :is(.html-content, img) {
	margin: 0;
}

.history-entry img {
	height: 100%;
	width: auto;
	position: absolute;
	max-width: 100%;
	cursor: pointer;
}

.history-period {
	position: relative;
	width: calc(100% + 2 * var(--outer-width) + var(--timeline-padding));
	left: calc(-1 * var(--outer-width) - var(--timeline-padding));
	-webkit-clip-path: polygon(0 0, 100% var(--large-gap), 100% 100%, 0 calc(100% - var(--large-gap)));
	clip-path: polygon(0 0, 100% var(--large-gap), 100% 100%, 0 calc(100% - var(--large-gap)));
	padding: calc(2 * var(--large-gap)) 0;
	margin: var(--large-gap) 0;
}

.history-period-without-img {
	background-color: var(--dark-grey);
}

.history-period .max-width {
	height: 100%;
	margin: 0 auto;
}

.history-period .col {
	padding-left: var(--timeline-padding);
	display: flex;
	flex-direction: column;
	justify-content: end;
	gap: 25px;
	filter: drop-shadow(0 0 50px rgba(0,0,0,0.5));
}

.history-period-without-img .col {
	filter: none;
}

.history-period .col > * {
	margin: 0;
}

.history-period * {
	color: white;
}

.history-period > img {
	position: absolute;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
	top: 0;
}

.history-period-gradient {
	position: absolute;
	width: 75%;
	height: 100%;
	background: linear-gradient(90deg, rgba(0,0,0,0.25) 50%, rgba(0,0,0,0) 100%);
	top: 0;
}

.history-period-without-img .history-period-gradient {
	display: none;
}

.history-timeline {
	position: absolute;
	width: 4px;
	height: 100%;
	background-color: var(--orange);
	left: 0;
	top: 0;
}

.history-timeline::after {
	content: url('/wp-content/themes/mahnmal/img/large-arrow.svg');
	display: block;
	position: absolute;
	bottom: 0;
	width: 25px;
	height: 25px;
	left: 50%;
	translate: -50% 35%;
}

.more-contrast .history-timeline::after {
	filter: grayscale(100%) brightness(0);
}

/* Zitate */

.quotes {
	--quotes-count: 4;
	--quotes-gap: calc(var(--small-gap) / 2);
	--quote-width: calc(100% / var(--quotes-count) - var(--quotes-gap) * ((var(--quotes-count) - 1) / var(--quotes-count)));
	margin: var(--large-gap) 0;
}

.quotes-wrapper {
	position: relative;
}

.carousel-arrow {
	position: absolute;
	width: 50px;
	aspect-ratio: 1 / 1;
	top: 50%;
	left: calc(-1 * var(--medium-gap));
	cursor: pointer;
	padding: 12.5px;
	translate: -50% -50%;
	rotate: 90deg;
}

.carousel-arrow + .carousel-arrow {
	left: auto;
	right: calc(-1 * var(--medium-gap));
	translate: 50% -50%;
	rotate: -90deg;
}

.hide-carousel-arrows .carousel-arrow {
	display: none;
}

.quotes-cut {
	overflow: hidden;
}

.all-quotes {
	display: flex;
	flex-wrap: nowrap;
	gap: var(--quotes-gap);
}

.all-quotes img {
	margin: 0;
	width: var(--quote-width);
	flex-shrink: 0;
	cursor: pointer;
}

.all-quotes img:focus-visible {
	outline-offset: -3px;
}

.quotes-callout-wrapper {
	height: 0;
	opacity: 0;
	margin-top: 0;
}

.quotes-callout-wrapper.show {
	height: auto;
	opacity: 1;
	margin-top: var(--large-gap);
}

.quotes-callout {
	background-color: var(--orange);
	width: calc(100% + 2 * var(--outer-width));
	left: calc(-1 * var(--outer-width));
	padding: var(--medium-gap) var(--outer-width) var(--large-gap);
	position: relative;
	-webkit-clip-path: polygon(0 -100px, 100% -100px, 100% calc(100% - var(--large-gap)), 0 100%);
	clip-path: polygon(0 -100px, 100% -100px, 100% calc(100% - var(--large-gap)), 0 100%);
}

.quotes-callout::before {
	content: '';
	display: block;
	position: absolute;
	width: var(--medium-gap);
	aspect-ratio: 2 / 1;
	-webkit-clip-path: polygon(0 100%, 50% 0, 100% 100%);
	clip-path: polygon(0 100%, 50% 0, 100% 100%);
	translate: -50% 0;
	top: 0;
	background-color: inherit;
	left: var(--quotes-callout-offset, 50%);
	transition: translate 0.25s ease;
}

.quotes-callout-wrapper.show .quotes-callout::before {
	translate: -50% -95%;
}

.quotes-callout * {
	color: white;
}

.quotes-callout-quote {
	line-height: calc(var(--medium-line-height) * 1.5);
}

.quotes-callout-person {
	font-family: 'Montserrat Bold';
}

/* Förderer */

.supporters {
	--supporters-gap: var(--column-gap);
	--supporters-width: calc(100% / var(--supporters-count) - var(--supporters-gap) * ((var(--supporters-count) - 1) / var(--supporters-count)));
	margin: var(--medium-gap) 0;
}

.supporters-wrapper {
	position: relative;
}

.supporters-cut {
	overflow: hidden;
}

.all-supporters {
	display: flex;
	flex-wrap: nowrap;
}

.supporters-group {
	display: flex;
	align-items: center;
	justify-content: space-evenly;
	width: 100%;
	flex-shrink: 0;
	gap: 6%;
}

.supporters-group img {
	height: calc(var(--max-width) * 0.075 * var(--supporters-height-scaling));
	width: auto;
	flex-shrink: 0;
}

/* Unterstützungs-Möglichkeiten */

.support-option {
	cursor: pointer;
}

.more-contrast .support-option {
	outline: solid 2px black;
}

.support-option-head {
	background-color: var(--orange);
	padding: calc(var(--small-gap) / 2);
}

.support-option-head h3 {
	text-align: center;
	color: white;
}

.support-option-body {
	background-color: var(--light-grey);
	padding: var(--small-gap) var(--small-gap) calc(var(--small-gap) * 2);
	-webkit-clip-path: polygon(0 0, 100% 0, 100% 100%, 50% calc(100% - var(--small-gap)), 0 100%);
	clip-path: polygon(0 0, 100% 0, 100% 100%, 50% calc(100% - var(--small-gap)), 0 100%);
}

.more-contrast .support-option-body {
	padding-bottom: var(--small-gap);
}

.support-option-body .h3 {
	margin: 35px 0;
}

.donation-page-template .max-width {
	max-width: 700px;
}

.donation-page-template :is(#header, footer) {
	display: none;
}

.donation-page-template {
	padding-top: var(--medium-gap);
}

.donation-page-template .back-link {
	margin: 0 0 calc(var(--small-gap) * -0.75);
}

/* Karussell-Spalten */

.carousel-cols {
	--carousel-columns-full-width: 100%;
	position: relative;
	margin: var(--medium-gap) 0;
}

.carousel-cols-cut {
	overflow: hidden;
}

.all-carousel-cols {
	display: flex;
	flex-wrap: nowrap;
	gap: var(--column-gap);
}

.carousel-col {
	flex-shrink: 0;
	width: calc(100% / var(--carousel-column-count) - var(--column-gap) * ((var(--carousel-column-count) - 1) / var(--carousel-column-count)));
}

/* Grußwort */

.greeting {
	display: grid;
	grid-template-columns: 1fr 3fr;
	gap: var(--column-gap);
	align-items: start;
}

.greeting:not(:has(.img-shape)) {
	grid-template-columns: 1fr;
}

.greeting-hidden-text:not(.show) {
	display: none;
}

.greeting-text > .html-content {
	margin-bottom: 25px;
}

.greeting-hidden-text > .html-content {
	margin-top: 25px;
}

/* 80 Jahre Operation Gomorrha */

[data-pageid="62"] .map {
	aspect-ratio: 2 / 1;
}

:is([data-pageid="62"], [data-pageid="2267"]) .leaflet-marker-icon {
	width: 15px !important;
	height: 15px !important;
}

:is([data-pageid="62"], [data-pageid="958"], [data-pageid="1070"], [data-pageid="2267"], .eighty-years-of-liberation-event) #language-selector .with-arrow-on-top > :is([data-lang="fr"], [data-lang="es"], [data-lang="ru"], [data-lang="po"]) {
	display: none;
}

[data-pageid="958"] .with-bars-h1 {
	margin-top: 25px;
}

/* Social-Media-Icons */

.social-media-icons {
	gap: calc(var(--small-gap) / 2);
}

.social-media-icons a {
	width: var(--medium-gap);
}

/* Sprachseite */

:is(:lang(po), :lang(ru)) #page-content * {
	font-family: Arial;
}

:is(:lang(po), :lang(ru)) #page-content :is(h1, h2, h3, h4, .h1, .h2, .h3, .h4, strong, b, button, .button, .initial) {
	font-weight: bold;
}

:is(:lang(po), :lang(ru)) .initial {
	font-size: 720%;
}

:is(:lang(po), :lang(ru)) :is(.with-bars-h1, .with-bars-h2) > * {
	padding: 0.015em 0.2em 0.06em;
}

.language-page-template a:has(> #plan-visit-label) {
	display: none;
}

/* Presse */

.press-article p {
	margin-bottom: 0;
}

.press-article h3 {
	margin: 5px 0 0;
}

.press-article .button {
	margin-top: 20px !important;
}

/* Medien */

.media {
	margin: var(--medium-gap) 0;
}

.media-wrapper {
	display: grid;
	grid-template-columns: 1fr 1fr 1fr;
	gap: var(--small-gap);
}

.medium {
	cursor: pointer;
	max-width: 100%;
}

.medium .img {
	margin: 0;
}

.medium .icon {
	position: absolute;
	left: calc(var(--small-gap) / 2);
	bottom: calc(var(--small-gap) / 2);
}

.medium h3 {
	margin: calc(var(--small-gap) / 2) 0 calc(var(--small-gap) / 3);
	-webkit-hyphens: auto;
	-moz-hyphens: auto;
	hyphens: auto;
}

.medium p {
	margin: 0;
	font-size: calc(var(--small-text-size) * 0.75);
}

.media-wrapper .no-more-posts-text {
	white-space: nowrap;
}

/* Veranstaltungsorte */

.event-locations {
	margin: var(--large-gap) 0;
}

.single-event-location {
	display: grid;
	grid-template-columns: 1fr 5fr;
	gap: var(--small-gap);
	margin: var(--small-gap) 0;
}

.single-event-location .img-shape {
	margin: 0;
}

.single-event-location h3 {
	margin: 25px 0;
}

.single-event-location p {
	font-family: 'Montserrat Bold';
}

/* Digitaler Rundgang */

.digital-tour iframe {
	width: 100%;
	aspect-ratio: 16 / 7;
	border: none;
}

/* Presse neu */

.press-new .jump-links::after {
	display: none;
}

.press-group .html-content {
	margin: calc(var(--small-gap) * -0.75) 0;
}

.press-group:not(:last-child)::after {
	content: '';
	display: block;
	width: 100%;
	border-bottom: var(--orange-line-style);
	border-bottom-width: 4px;
	margin: var(--large-gap) 0;
}

.press-entries {
	margin-top: var(--large-gap);
	display: flex;
	gap: var(--small-gap);
	flex-direction: column;
}

.press-entry {
	display: flex;
	gap: calc(var(--small-gap) / 5);
	flex-direction: column;
}

.press-entry > * {
	margin: 0;
}

.more-press-entries {
	font-family: 'Montserrat Bold';
	cursor: pointer;
}

.no-press-entries {
	font-family: 'Montserrat Bold';
	color: var(--orange);
	margin-top: 0;
}

.press-collections-template .press-group .with-bars-h1 {
	margin-top: 0;
}

.press-collections-template .press-group:not(:last-child)::after {
	display: none;
}

/* Gebärden-Videos */

.sign-language-videos {
	display: grid;
	grid-template-columns: 1fr 1fr;
	column-gap: var(--column-gap);
	row-gap: var(--medium-gap);
	margin: var(--large-gap) 0;
}

.sign-language-video {
	display: block;
}

.sign-language-video-img {
	position: relative;
	aspect-ratio: 16 / 9;
}

.sign-language-video-img .img {
	margin: 0;
}

.sign-language-video:nth-child(odd) .sign-language-video-img .img {
	width: calc(100% + var(--img-corner-offset));
	position: relative;
	left: calc(var(--img-corner-offset) * -1);
}

.sign-language-video:nth-child(4n + 1) .sign-language-video-img .img {
	-webkit-clip-path: polygon(var(--img-corner-offset) 0, 100% 0, 100% 100%, var(--img-corner-offset) 100%, 0 calc(100% - var(--medium-gap)));
	clip-path: polygon(var(--img-corner-offset) 0, 100% 0, 100% 100%, var(--img-corner-offset) 100%, 0 calc(100% - var(--medium-gap)));
}

.sign-language-video:nth-child(4n + 3) .sign-language-video-img .img {
	-webkit-clip-path: polygon(var(--img-corner-offset) 0, 100% 0, 100% 100%, var(--img-corner-offset) 100%, 0 var(--medium-gap));
	clip-path: polygon(var(--img-corner-offset) 0, 100% 0, 100% 100%, var(--img-corner-offset) 100%, 0 var(--medium-gap));
}

.sign-language-video .with-bars {
	margin: calc(var(--small-gap) / 2) 0 0;
}

.sign-language-video:not(:is(:nth-last-child(1), :nth-last-child(2)))::after {
	content: '';
	display: block;
	border-bottom: var(--dashed-line-style);
	margin-top: var(--medium-gap);
}

.gebaerden-video-posttype {
	padding-top: 0;
}

.gebaerden-video-posttype :is(#header, footer, a:has(> #plan-visit-label)) {
	display: none;
}

/* Gebärden-Video */

.single-sign-language-video {
	margin: var(--medium-gap) 0;
	container-type: inline-size;
}

.single-sign-language-video video {
	aspect-ratio: 16 / 9;
	display: block;
	width: 100%;
	object-fit: contain;
	object-position: top center;
	margin-bottom: calc(var(--small-gap) / 3 * 2);
	max-height: calc(100vh - 1.75 * var(--large-gap));
	background-color: var(--dark-grey);
}

.single-sign-language-video video::cue {
	font-family: 'Montserrat Regular';
	background-color: black;
	color: white;
	font-size: calc(var(--subtitle-size) * 3cqi);
}

.single-sign-language-video p {
	font-family: 'Montserrat Bold';
	cursor: pointer;
}

.single-sign-language-video .inline-icon {
	margin-right: 0.5em;
	margin-left: 0;
}

.single-sign-language-video-full-screen img {
	transform: translateY(10%);
}

.single-sign-language-video-subtitles-toggle {
	height: 25px;
	aspect-ratio: 2	 / 1;
	border-radius: 12.5px;
	background-color: var(--dark-grey);
	display: inline-block;
	margin-left: 0.5em;
	translate: 0 20%;
	position: relative;
}

.single-sign-language-video-subtitles-toggle span {
	height: 15px;
	position: absolute;
	top: 5px;
	left: 5px;
	aspect-ratio: 1 / 1;
	border-radius: 50%;
	background-color: white;
}

.show-subtitles .single-sign-language-video-subtitles-toggle {
	background-color: var(--orange);
}

.show-subtitles .single-sign-language-video-subtitles-toggle span {
	left: 30px;
}

.single-sign-language-video .small-icons {
	margin-left: 0.5em;
	transform: translateY(20%);
}

.single-sign-language-video-font-size {
	cursor: default !important;
}

/* Video-Statements */

.video-statements {
	display: contents;
}

.video-statement {
	cursor: pointer;
}

.video-statement-img-wrapper {
	position: relative;
}

.video-statement .img {
	margin: 0;
}

.video-statement .icon {
	position: absolute;
	inset: calc(var(--small-gap) / 2) auto auto calc(var(--small-gap) / 2);
}

.video-statement .html-content {
	margin: calc(var(--small-gap) / 3 * 2) 0 0;
}

/* Instagram-Feed */

body #sb_instagram * {
	font-family: 'Montserrat Regular';
}

body #sb_instagram.sbi_palette_custom_2 #sbi_load .sbi_follow_btn a {
	background: var(--orange) !important;
	border-radius: 0;
	color: white;
	font-family: 'Montserrat Bold';
	font-size: var(--small-text-size);
	margin-top: calc(var(--small-gap) / 2);
}

body #sb_instagram.sbi_palette_custom_2 #sbi_load .sbi_follow_btn :is(a:hover, a:focus) {
	background: var(--dark-grey) !important;
	box-shadow: none;
}

body #sb_instagram.sbi_palette_custom_2 #sbi_load .sbi_follow_btn a svg {
	filter: brightness(10);
	width: 1em;
	font-size: 1em;
}

body #sb_instagram.sbi_palette_custom_2 #sbi_load .sbi_follow_btn a span {
	color: white;
	font-family: 'Montserrat Bold';
}

body #sb_instagram .sbi_link {
	background: var(--dark-grey) !important;
	opacity: 0 !important;
}

body #sb_instagram .sbi_link .sbi_caption {
	color: white !important;
	filter: brightness(10);
}

body #sb_instagram .sbi_type_video .svg-inline--fa.fa-play {
	filter: none !important;
	display: none !important;
}

body #sb_instagram .sbi_type_video .svg-inline--fa.fa-play path {
	fill: white !important;
}

body #sb_instagram .sbi_type_carousel .fa-clone {
	display: none !important;
}

body .sbi-owl-nav > div {
	background: var(--orange) !important;
	box-shadow: none !important;
}

body .sbi-owl-nav > div svg path {
	fill: white !important;
}

body #sbi_lightbox .sbi_lb-outerContainer .sbi_lb-dataContainer .sbi_lb-details .sbi_lb-caption, body #sbi_lightbox .sbi_lb-outerContainer .sbi_lb-dataContainer .sbi_lb-details a, body #sbi_lightbox .sbi_lb-outerContainer .sbi_lb-dataContainer .sbi_lb-details .sbi_caption_text, body #sbi_lightbox .sbi_lb-outerContainer .sbi_lb-dataContainer .sbi_lb-number, body .sbi_lightbox_username p {
	color: var(--dark-grey) !important;
}

body .sbi_lb-data .sbi_lb-caption, body .sbi_lightbox_username p, body .sbi_lb-data .sbi_lb-number, body #sbi_lightbox .sbi_lightbox_action {
	font-size: calc(var(--small-text-size) * 0.75);
}

body .sbi_lb-data .sbi_lb-close, body .sbi_lb-nav a.sbi_lb-prev, body .sbi_lb-nav a.sbi_lb-next {
	opacity: 1 !important;
}

body .sbi_lb-dataContainer {
	padding-top: calc(var(--small-gap) * 0.75) !important;
}

body #sbi_lightbox .sbi-owl-nav > div {
	opacity: 1 !important;
}

body #sbi_lightbox .sbi-owl-nav > div svg {
	filter: none !important;
}

body .sbi_lb-data .sbi_lb-details {
	width: 95% !important;
}

body .sbi_caption {
	font-size: var(--small-text-size) !important;
	line-height: var(--small-line-height) !important;
	font-family: 'Montserrat Bold' !important;
}

/* Veranstaltungs-Schlagworte */

.event-tags {
	display: flex;
	flex-wrap: wrap;
	gap: calc(var(--small-gap) / 4);
}

.event-tags .button {
	margin: 0 !important;
}

/* Box */

.box {
	padding: var(--small-gap);
	-webkit-clip-path: none;
	clip-path: none;
	margin: var(--medium-gap) 0;
	width: 100%;
	left: 0;
}

.cols:has(> .col:only-child > .box:only-child) {
	margin: var(--medium-gap) 0;
}

/* Nachrichten */

#msg, #browser-language-msg {
	z-index: 1090;
	align-items: safe center;
}

#msg p, #browser-language-msg > div {
	padding: 25px;
	max-width: 500px;
	width: fit-content;
	background-color: white;
}

#browser-language-msg > div {
	width: 500px;
	max-width: 90%;
}

#no-js-msg {
	z-index: 1095;
}

#no-js-msg p {
	max-width: 80%;
}

#loading-spinner {
	z-index: 1085;
}

#loading-spinner img {
	animation-name: spin;
	animation-duration: 2s;
	animation-iteration-count: infinite;
	animation-timing-function: linear;
	width: calc(var(--large-gap) * 2);
	height: calc(var(--large-gap) * 2);
}

@keyframes spin { 
	from { 
		transform: rotate(0deg); 
	} 
	to { 
		transform: rotate(360deg); 
	}
}

.event-list-inside-msg a {
	display: block;
	margin-bottom: 20px;
}

.event-list-inside-msg a:is(:hover, :focus-visible) {
	text-decoration: underline;
}

/* Datenschutz-Popup */

#privacy-popup {
	z-index: 1080;
}

#privacy-popup > div {
	margin: auto;
	background-color: white;
	padding: var(--small-gap);
	width: 1000px;
}

#privacy-popup :is(.html-content, .cols) {
	margin: var(--small-gap) 0;
}

#privacy-popup-buttons {
	gap: calc(var(--column-gap) / 2);
}

/* Lightbox */

#lightbox {
	z-index: 1070;
}

#lightbox-img, #lightbox-frame, #lightbox-video, #lightbox-audio {
	width: calc(100% - var(--lightbox-inset) * 2);
	display: none;
	max-height: calc(100% - var(--lightbox-inset));
}

#lightbox[data-type="img"] #lightbox-img, #lightbox[data-type="frame"] #lightbox-frame, #lightbox[data-type="video"] #lightbox-video, #lightbox[data-type="audio"] #lightbox-audio {
	display: block;
}

#lightbox-img {
	height: calc(100% - var(--lightbox-inset));
	object-position: center;
	object-fit: contain;
}

#lightbox-frame, #lightbox-video {
	position: relative;
	aspect-ratio: 16 / 9;
	background-color: black;
}

#lightbox-frame iframe, #lightbox-video video {
	object-position: center;
	object-fit: contain;
	border: none;
	position: absolute;
	width: 100%;
	height: 100%;
}

#lightbox-video video::cue {
	font-family: 'Montserrat Regular';
	background-color: black;
	color: white;
}

#lightbox-prev, #lightbox-next, #lightbox-close {
	position: absolute;
}

#lightbox-prev, #lightbox-next {
	top: calc(50% - var(--small-gap) / 2);
}

.only-one :is(#lightbox-prev, #lightbox-next) {
	display: none;
}

#lightbox-prev {
	left: calc(var(--lightbox-inset) / 2 - var(--small-gap) / 2);
	transform: scaleX(-1);
}

#lightbox-next {
	right: calc(var(--lightbox-inset) / 2 - var(--small-gap) / 2);
}

#lightbox-close {
	right: calc(var(--lightbox-inset) / 2 - var(--small-gap) / 2);
	top: calc(var(--lightbox-inset) / 2 - var(--small-gap) / 2);
}

#lightbox-caption {
	position: absolute;
	color: white;
	width: calc(100% - var(--lightbox-inset) * 2);
	bottom: calc(var(--lightbox-inset) / 2);
	transform: translateY(30%);
	margin: 0;
	text-align: center;
}

#lightbox-caption br {
	display: none;
}

/* Layer */

.layer {
	position: fixed;
	background-color: var(--layer-background);
	display: flex;
	align-items: center;
	justify-content: center;
	inset: 0;
	overflow: scroll;
	overscroll-behavior: none;
	padding: var(--medium-gap) 0;
}

#layer {
	z-index: 1065;
}

#layer > div {
	margin: auto;
	background-color: white;
	padding: var(--small-gap);
	width: 1000px;
	position: relative;
}

#layer > div.narrow-popup {
	width: 600px;
}

#layer-close {
	position: absolute;
	right: 0;
	top: 0;
}

.layer-msg {
	color: white;
}

#text-popup .html-content {
	margin-top: 0;
}

/* Sonstiges */

.trans, .trans::before, .trans::after {
	transition: all 0.3s ease;
}

#scrollbar-measure {
	position: fixed;
	width: 100%;
	height: 0;
	overflow: hidden;
}

#scrollbar-measure div {
	width: 100vw;
}

.hide-scrollbars {
	scrollbar-width: none;
}

.hide-scrollbars::-webkit-scrollbar {
	display: none;
}

.hide {
	opacity: 0 !important;
	pointer-events: none !important;
}

.hide *, .no-pointer-events, .no-pointer-events * {
	pointer-events: none !important;
}

.hidden {
	display: none !important;
}

.msg-from-server, .only-smartphone {
	display: none;
}

.more {
	cursor: pointer;
	font-family: 'Montserrat Bold';
}

.more a {
	text-decoration: none;
}

:is(.no-more-posts, .no-more-media) .more {
	display: none;
}

.no-more-posts-text {
	margin: 0;
}

[data-pageid="56"] #page-content {
	overflow: hidden;
}

.smooth-scrolling {
	scroll-behavior: smooth;
}

/* Footer */

footer {
	padding: calc(var(--large-gap) * 2) 0 var(--large-gap);
	background-color: var(--light-grey);
	-webkit-clip-path: polygon(0 var(--large-gap), 100% 0, 100% 100%, 0 100%);
	clip-path: polygon(0 var(--large-gap), 100% 0, 100% 100%, 0 100%);
}

footer a:hover {
	color: var(--orange);
}

footer .max-width {
	position: relative;
}

:is(.post-posttype, .event-posttype, [data-pageid="56"]) footer .max-width::before, .more-contrast footer .max-width::before {
	content: '';
	display: block;
	width: 100%;
	border-top: var(--dashed-line-style);
	position: absolute;
	top: calc(-1 * var(--small-gap));
}

footer > .max-width > .line > .line:first-child {
	flex-wrap: wrap;
	row-gap: var(--small-text-size);
}

footer a[title="Sitemap"] {
	position: absolute;
	left: -10000px;
}

/* –––– Media Queries –––– */

/* Maximalbreite */
@media (max-width: 1700px) {

	html {
		--max-width: calc(100vw - 100px - var(--scrollbar-width));
	}

}

/* Großes Notebook */
@media (max-width: 1600px) {

	/* Wenig hohe Bildschirme */
	@media (min-aspect-ratio: 18/9) {

		html {
			--medium-gap: 60px;
			--header-height-full: 180px;
		}

		#header {
			padding: var(--small-gap) 0;
		}

		.slider-text-block, .header-img-text-block {
			bottom: var(--medium-gap);
		}

		:is(.slider-text-block, .header-img-text-block) > * {
			width: 120%;
		}

		#logo {
			transform: scale(1.2);
		}

		.minimize-header #text-logo {
			transform: translateY(135%) scale(1.7);
		}

		.slider, .header-img {
			height: calc(var(--full-height) - var(--header-height-full));
		}

		.slider-text {
			font-size: calc(var(--small-text-size) * 0.8);
		}

		.with-bars-h1 h1 {
			font-size: calc(var(--large-text-size) * 0.8);
		}

		.slider-play {
			bottom: calc(var(--large-gap) * 1.25);
			width: var(--small-gap);
		}

		.with-bars-h1 h1.long-main-title {
			font-size: calc(var(--large-text-size) * 0.45);
		}

	}

}

/* Notebook */
@media (max-width: 1500px) {

	html {
		--large-gap: 80px;
		--medium-gap: 60px;
		--small-gap: 40px;
		--header-height-full: 220px;
		--column-gap: 80px;
		--max-width: calc(100vw - 150px - var(--scrollbar-width));
		--input-height: 60px;
		--lightbox-inset: 125px;
		--img-corner-offset: calc(var(--small-gap) / 2);
		--large-text-size-factor: 3.4;
		--medium-text-size-factor: 1.8;
		--medium-small-text-size-factor: 1.4;
		--small-text-size-factor: 1.1;
	}

	#page-content {
		min-height: calc(var(--full-height) - var(--header-height-full) - var(--medium-gap) * 3);
	}

	.margin {
		margin-top: var(--margin-1500, var(--margin));
	}

	#header {
		padding: var(--medium-gap) 0;
	}

	#header .max-width {
		grid-template-columns: 2fr 9fr;
		gap: var(--large-gap);
	}

	#logo {
		/*
		transform: translateY(-10%) scale(1.05);
		*/
		transform: translateY(-30%) scale(0.9);
	}

	.minimize-header #header {
		padding: 35px 0;
	}

	.minimize-header #text-logo {
		transform: translateY(40%) scale(1.1);
	}

	.small-icons:not(.social-media-icons) a, .slider-nav-btn {
		width: 22px;
	}

	.sub-nav-gap {
		height: 35px;
	}

	.construction-line.horizontal.extend-1 {
		width: calc(100% + 0.5 * var(--column-gap));
	}

	.construction-line.horizontal.extend-2 {
		width: calc(100% + var(--column-gap));
	}

	.construction-line.vertical.extend-1 {
		height: calc(100% + 0.5 * var(--column-gap));
	}

	.construction-line.vertical.extend-2 {
		height: calc(100% + var(--column-gap));
	}

	footer {
		padding: calc(var(--medium-gap) * 2) 0 var(--medium-gap);
	}

	.carousel-arrow {
		left: calc(-1 * var(--small-gap));
	}

	.carousel-arrow + .carousel-arrow {
		right: calc(-1 * var(--small-gap));
	}

	.slider-img, .header-img-img-wrapper {
		width: calc(100% + var(--outer-width));
	}

	.slider-nav-wrapper {
		right: var(--outer-width);
	}

	.slider-play {
		left: var(--large-gap);
	}

	.article .col-span-4 > p:last-child {
		display: -webkit-box;
		-webkit-line-clamp: 2;
		-webkit-box-orient: vertical;
		overflow: hidden;
	}

	.slider, .header-img {
		height: calc(var(--full-height) - var(--header-height-full));
	}

	.donation-page-template {
		padding-top: var(--small-gap);
	}

	.leaflet-marker-icon {
		width: 60px !important;
		height: 60px !important;
		margin-left: -30px !important;
		margin-top: -60px !important;
	}

	#special-page-logo {
		width: 250px;
	}

	.minimize-header #special-page-logo {
		width: 100px;
	}

	.slider-text-block, .header-img-text-block {
		bottom: var(--medium-gap);
	}

	.single-sign-language-video-subtitles-toggle {
		height: 22px;
	}

	.single-sign-language-video-subtitles-toggle span {
		height: 12px;
	}

	.show-subtitles .single-sign-language-video-subtitles-toggle span {
		left: 27px;
	}

	:is([data-pageid="2267"], .eighty-years-of-liberation-event) a:has(> #special-page-logo)::after {
		scale: 0.55;
	}

	:is([data-pageid="2267"], .eighty-years-of-liberation-event) .minimize-header a:has(> #special-page-logo)::after {
		scale: 0.4;
	}

}

/* Großes Tablet */
@media (max-width: 1300px) {

	html {
		--large-gap: 70px;
		--medium-gap: 50px;
		--small-gap: 35px;
		--header-height-full: 180px;
		--column-gap: 70px;
		--max-width: calc(100vw - 100px - var(--scrollbar-width));
		--medium-text-size-factor: 1.6;
		--medium-small-text-size-factor: 1.2;
		--small-text-size-factor: 1;
		--img-corner-offset: var(--small-gap);
	}

	.margin {
		margin-top: var(--margin-1300, var(--margin-1500, var(--margin)));
	}

	#logo {
		/*
		transform: translateY(-25%);
		*/
		transform: translateY(-37%) scale(0.85);
	}

	.jump-links {
		padding: 20px 0;
	}

	a:has(> #plan-visit-label) {
		display: none;
	}

	.sub-nav-gap {
		height: 38px;
	}

	.input:not(.checkbox-input), .caldera_forms_form .form-group {
		margin: 25px 0;
	}

	.checkbox-input {
		margin: calc(var(--small-gap) * 1.5) 0;
	}

	.form-cols {
		row-gap: 25px;
	}

	#layer > div {
		padding: var(--medium-gap);
	}

	.carousel-arrow {
		left: calc(-0.8 * var(--small-gap));
	}

	.carousel-arrow + .carousel-arrow {
		right: calc(-0.8 * var(--small-gap));
	}

	.slider-play {
		width: var(--large-gap);
	}

	.caldera_ajax_error_block > span, .caldera-grid .alert {
		font-size: 0.75rem;
	}

	.caldera_ajax_error_block {
		translate: 0 3px;
	}

	#special-page-logo {
		width: 225px;
	}

	.single-event-location {
		margin: var(--medium-gap) 0;
	}

	.single-event-location :is(h3, p) {
		margin: 15px 0;
	}

	.caldera-checkbox-more-margin-top {
		margin-top: var(--large-gap) !important;
	}

	.caldera-checkbox-more-margin-top-2 {
		margin-top: var(--medium-gap) !important;
	}

	.caldera_forms_form .help-block:not(.caldera_ajax_error_block) {
		font-size: 0.75rem;
		padding-top: 10px;
	}

	.long-main-title {
		font-size: calc(var(--large-text-size) * 0.4);
	}

	:is([data-pageid="2267"], .eighty-years-of-liberation-event) a:has(> #special-page-logo)::after {
		scale: 0.45;
	}

	:is([data-pageid="2267"], .eighty-years-of-liberation-event) .minimize-header a:has(> #special-page-logo)::after {
		scale: 0.35;
	}

}

/* Tablet */
@media (max-width: 1100px) {

	html {
		--large-gap: 60px;
		--medium-gap: 40px;
		--small-gap: 25px;
		--header-height-full: 170px;
		--header-height-reduced: 80px;
		--column-gap: 60px;
		--max-width: calc(100vw - 80px - var(--scrollbar-width));
		--input-height: 50px;
		--large-text-size-factor: 3.2;
		--medium-text-size-factor: 1.4;
		--medium-small-text-size-factor: 1;
	}

	#page-content {
		min-height: calc(var(--full-height) - var(--header-height-full) - var(--large-gap) * 2 - var(--medium-gap));
	}

	.margin {
		margin-top: var(--margin-1100, var(--margin-1300, var(--margin-1500, var(--margin))));
	}

	.column-padding-left {
		padding-left: calc(var(--column-gap) / 2);
	}

	.column-padding-right {
		padding-right: calc(var(--column-gap) / 2);
	}

	.slider {
		height: calc(var(--full-height) - var(--header-height-full) - var(--large-gap));
	}

	:is(.slider, .header-img) .max-width {
		grid-template-columns: 5fr 12fr;
	}

	.article .with-bars {
		margin: -5px 0 25px;
	}

	.article:not(:last-child)::after {
		margin: calc(var(--medium-gap) * 1.25) 0;
	}

	footer {
		padding: calc(var(--large-gap) * 2) 0 var(--medium-gap);
	}

	.small-icons:not(.social-media-icons) a, .slider-nav-btn {
		width: 25px;
	}

	#header {
		padding: 25px 0;
	}

	#nav {
		justify-content: center;
	}

	#meta-nav {
		display: none;
	}

	#logo {
		transform: translateY(-7%);
	}

	.minimize-header #text-logo {
		transform: translateY(10%) scale(1.1);
	}

	.minimize-header #main-nav {
		transform: none;
	}

	.sub-nav-gap {
		height: 28px;
	}

	.with-arrow-on-top::before, .tabs-header button::after {
		width: 15px;
		height: 7px;
	}

	.tower-text-column .img {
		aspect-ratio: 2 / 1;
	}

	.jump-links, .tabs-header {
		gap: 15px;
	}

	:target {
		scroll-margin-top: calc(var(--header-height-scroll-margin) + var(--large-gap) * 2);
	}

	.initial {
		font-size: 870%;
	}

	:is(:lang(po), :lang(ru)) .initial {
		font-size: 710%;
	}

	.icon {
		width: var(--medium-gap);
		height: var(--medium-gap);
	}

	#font-size, .small-icons {
		gap: 12px;
	}

	.img-text-combinations .col-span-2 {
		grid-column: auto / span 3;
	}

	.img-text-combinations .col-span-1 {
		display: none;
	}

	.history-period .col-span-3 {
		grid-column: auto / span 4;
	}

	.carousel-arrow {
		width: 40px;
	}

	.further-article p {
		margin: calc(var(--small-gap) * -0.15) 0 calc(var(--small-gap) * 0.9);
	}

	.leaflet-marker-icon {
		width: 40px !important;
		height: 40px !important;
		margin-left: -20px !important;
		margin-top: -40px !important;
	}

	.caldera_forms_form textarea {
		margin-bottom: 40px;
	}

	.form-group-has-textarea .caldera_ajax_error_block {
		translate: 0 -40px;
	}

	footer > .max-width > .line > .line:last-child {
		display: none;
	}

	#special-page-logo {
		width: 200px;
	}

	.minimize-header #special-page-logo {
		width: 75px;
		scale: 1.6;
	}

	.media-wrapper {
		gap: calc(var(--small-gap) * 1.5);
	}

	.slider-text-block, .header-img-text-block {
		bottom: 0;
	}

	.single-sign-language-video-full-screen {
		display: none;
	}

	.single-sign-language-video-subtitles-toggle {
		height: 25px;
	}

	.single-sign-language-video-subtitles-toggle span {
		height: 15px;
	}

	.show-subtitles .single-sign-language-video-subtitles-toggle span {
		left: 30px;
	}

	.single-sign-language-video .back-link, .single-sign-language-video-full-screen {
		translate: 0 3px;	
	}

	:is([data-pageid="2267"], .eighty-years-of-liberation-event) a:has(> #special-page-logo)::after {
		scale: 0.4;
		translate: -7.5% 0%;
		transition: none;
	}

	:is([data-pageid="2267"], .eighty-years-of-liberation-event) .minimize-header a:has(> #special-page-logo)::after {
		translate: -7.5% -5%;
		scale: 0.3;
	}

	.header-img-with-headline .with-bars {
		width: 75%;
	}

	.event-tags {
		margin-bottom: var(--medium-gap);
	}

}

/* Smartphone */
@media (max-width: 900px) {

	html {
		--max-width: calc(100vw - 50px - var(--scrollbar-width));
		--img-corner-offset: 15px;
		--header-height-full: 150px;
		--header-height-reduced: 70px;
		--large-text-size-factor: 2.8;
	}

	#page-content {
		min-height: auto;
	}

	.cols, .html-content, .only-smartphone, .form-cols {
		display: contents;
	}

	.img.fitting-size, .img-shape.fitting-size {
		height: auto;
		aspect-ratio: 3 / 2;
		position: relative;
	}

	#msg p {
		max-width: var(--max-width);
	}

	[href^="tel:"] {
		pointer-events: all;
	}

	.column-padding-left, .construction-lines-padding-left {
		padding-left: 0;
	}

	.column-padding-right, .construction-lines-padding-right {
		padding-right: 0;
	}

	.margin {
		margin-top: var(--margin-900, var(--margin-1100, var(--margin-1300, var(--margin-1500, var(--margin)))));
	}

	.hide-mobile, .construction-line.vertical, #main-nav, .slider-nav-wrapper, .jump-links, .grey-section-line-1, .grey-section-line-2, .grey-section-line-3 {
		display: none;
	}

	.gallery-imgs {
		grid-template-columns: 1fr 1fr;
	}

	#lightbox-img, #lightbox-frame, #lightbox-video, #lightbox-audio {
		width: var(--max-width);
	}

	.construction-line.horizontal.extend-1, .construction-line.horizontal.extend-2 {
		width: 100%;
	}

	.initial {
		font-size: 600%;
	}

	.mainpage-teaser .h3 {
		margin: -15px 0 40px;
	}

	:is(.slider, .header-img) .max-width {
		display: block;
	}

	.slider, .header-img {
		height: auto;
	}

	.slider-img, .header-img-img-wrapper {
		height: auto;
		aspect-ratio: 4 / 3;
		width: calc(100% + var(--outer-width) * 2);
		left: calc(var(--outer-width) * -1);
		-webkit-clip-path: polygon(0 0, 100% 0, 100% 100%, 0 calc(100% - var(--medium-gap)));
		clip-path: polygon(0 0, 100% 0, 100% 100%, 0 calc(100% - var(--medium-gap)));
	}

	.slanted-background-type-1::before {
		-webkit-clip-path: polygon(0 0, 100% var(--medium-gap), 100% 100%, 0 calc(100% - var(--medium-gap)));
		clip-path: polygon(0 0, 100% var(--medium-gap), 100% 100%, 0 calc(100% - var(--medium-gap)));
	}

	.slanted-background-type-1::before, .slanted-background-type-2::before {
		height: 108%;
	}

	.article:not(:last-child)::after {
		margin: var(--medium-gap) 0 calc(var(--medium-gap) + 10px);
	}

	.article .img-shape {
		margin-top: 0;
		margin-bottom: var(--small-gap);
	}

	.article .col-span-4 > p:last-child {
		display: block;
		-webkit-line-clamp: none;
		overflow: visible;
	}

	footer {
		-webkit-clip-path: polygon(0 var(--medium-gap), 100% 0, 100% 100%, 0 100%);
		clip-path: polygon(0 var(--medium-gap), 100% 0, 100% 100%, 0 100%);
		padding: calc(var(--medium-gap) * 2) 0 var(--small-gap);
		margin-top: var(--large-gap);
	}

	.vertically-on-smartphone {
		flex-direction: column;
		align-items: start;
		gap: 15px;
	}

	.checkbox-input label span {
		-webkit-hyphens: auto;
		-ms-hyphens: auto;
		hyphens: auto;
	}

	.construction-lines {
		--construction-lines-padding: var(--small-gap);
	}

	.slider-text-block, .header-img-text-block {
		position: relative;
		bottom: auto;
	}

	.slider-text-block, .header-img-text-block {
		padding-right: 0;
	}

	.slider .max-width, .header-img .max-width {
		display: flex;
		flex-direction: column-reverse;
		gap: 25px;
	}

	.with-bars-h1 h1 {
		font-size: 2rem;
		line-height: 1.3em;
	}

	:is(.slider-text-block, .header-img-text-block) h1 {
		white-space: normal;
	}

	:is(.slider-text-block, .header-img-text-block) h1 br, .slider-img::after, #text-logo, .tower-text-column::after {
		display: none;
	}

	.construction-lines {
		margin: var(--medium-gap) 0;
	}

	#header .max-width {
		display: flex;
		align-items: center;
		justify-content: space-between;
	}

	#header, .minimize-header #header {
		padding: 25px 0;
	}

	#logo-wrapper {
		display: block;
		flex-grow: 1;
	}

	#logo-wrapper img {
		transform: none;
		height: 100%;
		width: auto;
	}

	#text-logo {
		width: 100% !important;
		height: auto !important;
	}

	.minimize-header #text-logo {
		transform: none;
	}

	html, body {
		overflow-x: hidden;
	}

	#mobile-nav-trigger {
		display: block;
		width: 25px;
		height: auto;
		cursor: pointer;
	}

	#lightbox-prev, #lightbox-next {
		bottom: calc(var(--large-gap) * 2);
		top: auto;
	}

	#lightbox-prev {
		left: var(--outer-width);
	}

	#lightbox-next {
		right: var(--outer-width);
	}

	#lightbox-close {
		right: var(--outer-width);
		top: var(--outer-width);
	}

	#lightbox-img, #lightbox-frame, #lightbox-video, #lightbox-audio {
		translate: 0 -50px;
	}

	.img-shape:not(.fitting) .img.fitting-size {
		height: 100%;
	}

	.contact .img-shape {
		width: 100%;
		aspect-ratio: 4 / 3;
		margin-bottom: 25px;
	}

	#layer > div, #layer > div.narrow-popup {
		width: 90%;
		padding: 50px var(--small-gap) var(--small-gap);
	}

	.construction-lines-extend-margin-top {
		margin-top: calc(var(--medium-gap) * 2);
	}

	.construction-lines-extend-margin-bottom {
		margin-bottom: calc(var(--medium-gap) * 2);
	}

	.further-article .h3 {
		margin-bottom: calc(var(--small-gap) * 1.75);
	}

	.figcaption {
		bottom: 20px;
		left: 20px;
	}

	.grey-section {
		-webkit-clip-path: none;
		clip-path: none;
		padding-bottom: calc(var(--section-padding) / 2);
	}

	.tower-texts, .tower-text-row {
		position: relative;
	}

	.tower-texts {
		display: flex;
		flex-direction: column;
		gap: 35px;
	}

	.tower-text-column {
		width: 100%;
	}

	.tower {
		margin: var(--medium-gap) 0;
	}

	.tower-text-row:not(:first-child, :last-child) .tower-text-column {
		transform: none;
	}

	.tower-text-row:not(:first-child, :last-child) {
		top: 0;
	}

	.tower-graphic {
		margin-top: 25px;
		width: 50%;
	}

	:is(.with-bars-h3, .with-bars-h4) > * {
		line-height: calc(var(--large-line-height) * 1.9);
	}

	hr, .img-shape, .tabs, .teasers, .teaser, .quotes, .carousel-cols {
		margin: var(--medium-gap) 0;
	}

	.slider-cta {
		margin-top: -15px;
	}

	.tabs-header {
		margin-bottom: 0;
		gap: 10px;
	}

	.tabs-header button.selected::after, .orange-section-line-1, .orange-section-line-2 {
		display: none;
	}

	.orange-section {
		margin-top: -40px;
		padding-bottom: calc(var(--section-padding) * 1.25);
	}

	.orange-section h2 {
		padding-right: 0;
		background-color: transparent;
		margin-bottom: 0;
	}

	.history {
		--timeline-padding: var(--small-gap);
	}

	.history-entries {
		padding-bottom: 10px;
	}

	.history-period {
		-webkit-clip-path: polygon(0 0, 100% var(--medium-gap), 100% 100%, 0 calc(100% - var(--medium-gap)));
		clip-path: polygon(0 0, 100% var(--medium-gap), 100% 100%, 0 calc(100% - var(--medium-gap)));
		padding: calc(1.25 * var(--large-gap)) 0 calc(1.5 * var(--large-gap));
		background-color: var(--dark-grey);
		margin: var(--large-gap) 0 -25px;
	}

	.history-period .col {
		padding-left: calc(var(--timeline-padding) + var(--outer-width));
		padding-right: var(--outer-width);
		filter: none;
	}

	.history-period .col .html-content > *:first-child {
		margin-top: 0;
	}

	.history-period .col .html-content > *:last-child {
		margin-bottom: 0;
	}

	.history-period-gradient, .history-period > img {
		display: none;
	}

	[data-pageid="61"] .construction-line {
		display: none;
	}

	.quotes-callout {
		padding-top: var(--small-gap);
		-webkit-clip-path: polygon(0 -100px, 100% -100px, 100% calc(100% - var(--medium-gap)), 0 100%);
		clip-path: polygon(0 -100px, 100% -100px, 100% calc(100% - var(--medium-gap)), 0 100%);
	}

	.quotes-callout-quote {
		font-size: var(--small-text-size);
		line-height: var(--small-line-height);
	}

	.quotes-callout-person {
		font-family: 'Montserrat Regular';
		margin-top: -15px;
	}

	.quotes-callout::before {
		width: var(--small-gap);
	}

	.quotes-callout-wrapper.show {
		margin-top: var(--medium-gap);
	}

	#mitgliedschaft-und-spenden + .cols > .col {
		margin-bottom: var(--medium-gap);
	}

	.supporters-group {
		flex-wrap: wrap;
		gap: 35px;
		justify-content: start;
	}

	.supporters-group img {
		height: calc(var(--max-width) * 0.075 * var(--supporters-height-scaling) * 2);
	}

	.carousel-cols {
		--carousel-column-count: 1 !important;
	}

	:is(.carousel-cols:not(.mobile-with-slider), .supporters) .carousel-arrow {
		display: none;
	}

	.all-carousel-cols {
		flex-direction: column;
		gap: var(--medium-gap);
	}

	.carousel-cols.mobile-with-slider .all-carousel-cols {
		flex-direction: row;
	}

	.carousel-arrow {
		width: 25px;
		padding: 5px;
		left: calc(-0.5 * var(--small-gap));
	}

	.carousel-arrow + .carousel-arrow {
		right: calc(-0.5 * var(--small-gap));;
	}

	.carousel-cols.mobile-with-slider {
		padding-bottom: var(--medium-gap);
	}

	.carousel-cols.mobile-with-slider .carousel-arrow {
		top: auto;
		bottom: 0;
		translate: 0 25%;
		width: var(--medium-gap);
	}

	:target {
		scroll-margin-top: calc(var(--header-height-scroll-margin) + var(--large-gap));
	}

	.language-page-template :is(#geschichte, #ausstellung) {
		margin-bottom: var(--small-gap);
	}

	.orange-section {
		-webkit-clip-path: polygon(0 var(--medium-gap), 100% 0, 100% calc(100% - var(--medium-gap)), 0 100%);
		clip-path: polygon(0 var(--medium-gap), 100% 0, 100% calc(100% - var(--medium-gap)), 0 100%);
		padding-top: calc(var(--section-padding) * 1.5);
	}

	#privacy-popup > div {
		width: 90%;
	}

	#privacy-popup button {
		margin: 15px 0;
	}

	#privacy-popup .col + .col button {
		margin-bottom: 0;
	}

	#privacy-popup .checkbox-input {
		margin: var(--small-gap) 0;
	}

	#privacy-popup input[type="checkbox"] {
		transform: none;
	}

	.slider-play {
		width: var(--medium-gap);
		left: var(--outer-width);
		bottom: calc(var(--large-gap) * 1.1);
	}

	#logo {
		/*
		transform: translateY(-20%) scale(0.8) !important;
		*/
		transform: scale(1.2) !important;
	}

	#lightbox-img {
		height: calc(100% - 2 * var(--lightbox-inset));
	}

	#lightbox-img, #lightbox-frame, #lightbox-video, #lightbox-audio {
		max-height: calc(100% - 2 * var(--lightbox-inset));
	}

	.further-article p {
		margin: calc(var(--small-gap) * -0.25) 0 calc(var(--small-gap) * 0.8);
	}

	.donation-page-template .max-width {
		max-width: var(--max-width);
	}

	.tower-text-column .img-shape {
		margin-bottom: 25px;
	}

	.tower-text-column h3 {
		margin: 0 0 -10px;
	}

	.long-word {
		-webkit-hyphens: auto;
		-ms-hyphens: auto;
		hyphens: auto;
	}

	:is(.slider-text-block, .header-img-text-block) .with-bars {
		margin-bottom: 15px;
	}

	:is(.slider-text-block, .header-img-text-block) .with-bars + p, :is(.slider-text-block, .header-img-text-block) .with-bars + p + p {
		margin: 15px 0;
	}

	body, body :is(#header, #meta-nav, #main-nav, #logo, #text-logo) {
		transition: none;
	}

	[data-pageid="56"] footer {
		margin-top: 0;
	}

	.has-special-page-logo {
		--header-height: 100px;
	}

	#special-page-logo, .minimize-header #special-page-logo {
		top: 0;
		width: 150px;
		scale: 1;
	}

	.has-special-page-logo {
		padding-top: 0;
	}

	.has-special-page-logo #header {
		position: relative;
	}

	.minimize-header.hide-nav #header {
		opacity: 1;
	}

	.sidebar {
		margin: var(--medium-gap) 0;
	}

	.caldera_forms_form .col-sm-6 {
		width: 100%;
		display: block;
	}

	.history-entry {
		display: block;
		margin: var(--medium-gap) 0;
	}

	.history-entry img {
		height: auto;
		width: 100%;
		position: relative;
		margin-top: 35px !important;
	}

	.greeting {
		display: block;
	}

	.greeting h2 br {
		display: none;
	}

	.greeting .img-shape {
		width: 50%;
		margin-bottom: 0;
	}

	:is([data-pageid="62"], [data-pageid="2267"]) .leaflet-marker-icon {
		width: 10px !important;
		height: 10px !important;
	}

	:is([data-pageid="62"], [data-pageid="958"], [data-pageid="1070"]) #mobile-nav > div > :is(*:not(#language-selector, #font-size, #more-contrast-switch, .small-icons, p:last-child, .h3)) {
		display: none;
	}

	:is([data-pageid="62"], [data-pageid="958"], [data-pageid="1070"]) #msg [data-lang=""], :is([data-pageid="62"], [data-pageid="958"], [data-pageid="1070"]) #msg [data-lang=""] + br, :is([data-pageid="62"], [data-pageid="958"], [data-pageid="1070"]) #msg [data-lang=""] + br + br {
		display: none;
	}

	.hide-on-smartphone {
		display: none;
	}

	footer > .max-width > .line > .line:last-child {
		display: flex;
	}

	.slanted-background-type-4 {
		padding: 15px 0;
		margin: var(--medium-gap) 0;
	}

	.slanted-background-type-4::before {
		width: calc(100% + var(--outer-width) * 2);
		left: calc(-1 * var(--outer-width));
		-webkit-clip-path: none;
		clip-path: none;
	}

	.arrow-link-shortcode {
		width: 90%;
	}

	.arrow-link-shortcode a {
		display: inline;
	}

	.media-wrapper {
		grid-template-columns: 1fr 1fr;
		gap: var(--small-gap);
	}

	.slanted-background-type-5 {
		padding: var(--small-gap) 0;
		margin: var(--medium-gap) 0;
	}

	.single-event-location {
		display: flex;
		flex-direction: column;
		gap: 25px;
	}

	.digital-tour iframe {
		aspect-ratio: 3 / 2;
	}

	.press-group:not(:last-child)::after {
		margin: var(--medium-gap) 0;
	}

	.press-group h2 {
		margin-bottom: var(--small-gap);
		-webkit-hyphens: auto;
		-ms-hyphens: auto;
        hyphens: auto;
	}

	.press-entries {
		margin-top: var(--medium-gap);
	}

	.press-entry {
		gap: calc(var(--small-gap) / 4);
	}

	.more-press-entries {
		margin: 10px 0;
	}

	.sign-language-videos {
		grid-template-columns: 1fr;
	}

	.sign-language-video-img .img {
		-webkit-clip-path: none !important;
		clip-path: none !important;
		width: 100% !important;
		left: 0 !important;
	}

	.sign-language-video:not(:nth-last-child(1))::after {
		content: '';
		display: block;
		border-bottom: var(--dashed-line-style);
		margin-top: var(--medium-gap);
	}

	.single-sign-language-video p:has(.single-sign-language-video-subtitles-toggle), .single-sign-language-video-font-size {
		width: 100%;
		display: flex;
		align-items: center;
		justify-content: space-between;
	}

	.single-sign-language-video-subtitles-toggle {
		aspect-ratio: 5 / 2;
		translate: none;
	}

	.show-subtitles .single-sign-language-video-subtitles-toggle span {
		left: 42px;
	}

	.single-sign-language-video .small-icons {
		transform: none;
	}

	.single-sign-language-video video {
		margin-bottom: var(--small-gap);
		width: calc(100% + 2 * var(--outer-width));
		position: relative;
		left: calc(var(--outer-width) * -1);
	}

	.single-sign-language-video .back-link, .single-sign-language-video-full-screen {
		translate: 0 0;	
	}

	.sign-language-icon {
		filter: invert(100%) brightness(5);
	}

	.header-img-with-headline {
		height: auto;
		aspect-ratio: 3 / 2;
		-webkit-clip-path: polygon(0 0, 100% 0, 100% 100%, 0 calc(100% - var(--small-gap)));
		clip-path: polygon(0 0, 100% 0, 100% 100%, 0 calc(100% - var(--small-gap)));
	}

	.header-img-with-headline .img {
		height: 100%;
		aspect-ratio: auto;
		position: absolute;
	}

	.header-img-with-headline .with-bars {
		bottom: var(--medium-gap);
	}

	.header-img-with-headline .with-bars-h1 h1 {
		font-size: var(--medium-text-size);
	}

	.video-statements .all-carousel-cols {
		gap: var(--small-gap);
	}

	#lightbox[data-format="portrait"] #lightbox-video {
		aspect-ratio: 9 / 16;
	}

	:is([data-pageid="2267"], .eighty-years-of-liberation-event) a:has(> #special-page-logo)::after, :is([data-pageid="2267"], .eighty-years-of-liberation-event) .minimize-header a:has(> #special-page-logo)::after {
		scale: 0.25;
		translate: -5% -5%;
	}

	.header-img-with-headline .with-bars {
		width: 100%;
	}

	.box {
		margin: var(--small-gap) 0;
		padding: var(--small-gap);
		-webkit-clip-path: none;
		clip-path: none;
	}

	.box > .html-content:first-child > *:first-child {
		margin-top: 0;
	}

	.box > .html-content:last-child > *:last-child {
		margin-bottom: 0;
	}

}
