@charset "UTF-8";

/********** Soundwatch CSS **********/

html,
body {
	width: 100%;
	height: 100%;
	padding: 0 0 0 0;
	margin: 0 0 0 0;
	/*
	scroll-behavior: smooth;
	*/
}

body {
	overflow-x: hidden;
	overflow-y: auto;
	/*
	background-color: #CCC;
	*/
	background-color: #FFF;
}
body.lock_screen {
	overflow-y: hidden!important;
	touch-action: none;
	-webkit-overflow-scrolling: none;
	overscroll-behavior: none;
}
body.lock_screen::-webkit-scrollbar {
	display: none;
}

*.hidden {
	display: none!important;
}

*.nobr,
*.nowrap {
	color: inherit;
	white-space: nowrap;
}

*.avoidbr {
	display: inline-block!important;
	font-size: inherit;
	line-height: inherit;
	letter-spacing: inherit;
	color: inherit;
}

* {
	font-family: Open_Sans, sans-serif;
	letter-spacing: 0.005em;
	color: #333;
	-webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}
*:focus {
	outline: none;
	-webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

*.farbe_1 {
	color: var(--farbe_1)!important;
}
*.farbe_2 {
	color: var(--farbe_2)!important;
}
*.schwarz {
	color: #333!important;
}



/********** Hintergrund **********/

#leerraum_oben {
}
#hintergrund {
	position: absolute;
	z-index: -1;
	width: 100%;
	height: 100vh;
}
#hintergrund {
	position: absolute;
	z-index: -1;
	width: 100%;
	height: 100vh;
}
#hintergrund div.vektor {
	position: absolute;
	width: 100%;
	height: 100vh;
}
#hintergrund div.vektor::after {
	content: "";
	display: block;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100vh;
	background-position: center;
	background-size: cover;
	mix-blend-mode: multiply;
}
#hintergrund #vektor_1::after {
	z-index: 1;
	background-image: url("../bilder/aufbau/Hintergrund_Vektor_2024_1.svg");
}
#hintergrund #vektor_2::after {
	z-index: -1;
	/*
	top: 50%;
	left: 50%;
	animation: hintergrund 10s linear infinite;
	*/
}
/*
@keyframes hintergrund {
  from {
    transform: rotate(0deg);
	}
  to {
    transform: rotate(360deg);
  }
}
*/
@media screen and (orientation: landscape) {
	#hintergrund #vektor_2::after {
		background-image: url("../bilder/aufbau/Hintergrund_Vektor_2024_2.svg");
	}
}
@media screen and (orientation: portrait) {
	#hintergrund #vektor_2::after {
		background-image: url("../bilder/aufbau/Hintergrund_Vektor_2024_2.svg");
	}
}
#aufkleber {
	position: absolute;
	z-index: 1;
	top: 0;
	left: 0;
	width: 100%;
	height: 100vh;
}
#aufkleber::after {
	content: "";
	display: block;
	position: fixed;
	z-index: 0;
	top: 0;
	left: 0;
	width: 100%;
	height: 100vh;
	/*
	background-image: url("../bilder/aufbau/Soundwatch_2024_2c.svg");
	*/
	background-image: url("../bilder/aufbau/Soundwatch_2024_mono.svg");
	background-position: center;
	background-repeat: no-repeat;
}
@media screen and (max-width: 600px) {
	#aufkleber::after {
		background-size: 82%;
	}
}
@media screen and (min-width: 601px) and (max-width: 1024px) {
	#aufkleber::after {
		background-size: 45%;
	}
}
@media screen and (min-width: 1025px) and (max-width: 1200px) {
	#aufkleber::after {
		background-size: 40%;
	}
}
@media screen and (min-width: 1201px) {
	#aufkleber::after {
		background-size: 35%;
	}
}

/*Logo-Leiste Start (alt) */
#logo_leiste {
	position: absolute;
	z-index: 0;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
#logo_leiste::after {
	content: "";
	display: block;
	position: fixed;
	z-index: 0;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	opacity: 0.8;
	mix-blend-mode: multiply;
	background-image: url("../bilder/aufbau/Logo_Leiste_2021.png");
	background-position: center bottom 5px;
	background-repeat: no-repeat;
}
@media screen and (max-width: 700px) {
	#logo_leiste::after {
		background-size: calc(100% - 50px);
	}
}
@media screen and (min-width: 701px) and (max-width: 1024px) {
	#logo_leiste::after {
		background-size: calc(100% - 70px);
	}
}
@media screen and (min-width: 1025px) and (max-width: 1200px) {
	#logo_leiste::after {
		background-size: 86%;
	}
}
@media screen and (min-width: 1201px) {
	#logo_leiste::after {
		background-size: 78%;
	}
}

/*Logos Startseite (neu) */
#logos_start {
	position: fixed;
	z-index: 2;
	bottom: 20px;
}
#logos_start #logos_links,
#logos_start #logos_rechts {
	position: absolute;
	bottom: 0;
	line-height: 1px;
	margin: 0;
	mix-blend-mode: multiply;
	opacity: 1;
}
#logos_start #logos_links {
	left: -1px;
}
#logos_start #logos_rechts {
	right: -1px;
}
#logos_start a {
	position: relative;
	display: block;
	font-size: 0;
	line-height: 0;
	text-decoration: none;
}
#logos_start a + a {
	margin-left: 30px;
}
/*
#logos_start a::before {
  content: "";
  position: absolute;
  z-index: 1;
  background-color: var(--farbe_2);
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  mix-blend-mode: screen;
}
#logos_start a:hover::before {
  background-color: var(--farbe_1);
}
*/
@media screen and (max-width: 910px) {
	#logos_start {
		left: 25px;
		width: calc(100% - 50px);
	}
	#logos_start a + a {
		margin-left: 22px!important;
	}
}
@media screen and (min-width: 911px) and (max-width: 1024px) {
	#logos_start {
		left: 35px;
		width: calc(100% - 70px);
	}
}
@media screen and (min-width: 1025px) and (max-width: 1200px) {
	#logos_start {
		left: 7%;
		width: 86%;
	}
}
@media screen and (min-width: 1201px) {
	#logos_start {
		left: 11%;
		width: 78%;
	}
}


/********** Inhalt Rahmen **********/

#inhalt_rahmen {
	position: relative;
	z-index: 3;
	background-color: #FFF;
	margin: 100vh 0 0 0;
	padding: 0 0 0 0;
	overflow-x: hidden;
}
/* Schatten oben und unten:
#inhalt_rahmen::before,
#inhalt_rahmen::after {
	content: "";
	display: block;
	position: absolute;
	z-index: 3;
	left: 0;
	width: 100%;
	height: 20px;
	mix-blend-mode: multiply;
}
#inhalt_rahmen::before {
	top: -20px;
	background: linear-gradient(0deg, rgba(0, 0, 0, 0.2) 0%, rgba(0, 0, 0, 0) 100%);
}
#inhalt_rahmen::after {
	bottom: -20px;
	background: linear-gradient(0deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.2) 100%);
}
*/
/********** Mobile **********/
@media screen and (max-width: 700px) {
	#inhalt_rahmen {
		padding: 0 20px 0 20px;
	}
	hr.trennlinie_dick {
		margin: 0 -20px 0 -20px;
	}
}

/********** mid Screen **********/
@media screen and (min-width: 701px) and (max-width: 1024px) {
	#inhalt_rahmen {
		padding: 0 35px 0 35px;
	}
	hr.trennlinie_dick {
		margin: 0 -35px 0 -35px;
	}
}

/********** Big Screens **********/
@media screen and (min-width: 1025px) and (max-width: 1200px) {
	#inhalt_rahmen {
		padding: 0 7% 0 7%;
	}
	hr.trennlinie_dick {
		margin: 0 -14% 0 -14%;
	}
}

/********** Very Big Screens **********/
@media screen and (min-width: 1201px) {
	#inhalt_rahmen {
		padding: 0 11% 0 11%;
	}
	hr.trennlinie_dick {
		margin: 0 -22% 0 -22%;
	}
}



/********** Inhalt **********/

div.inhalt {
	position: relative;
	padding: 30px 0 60px 0;
}
div.inhalt p {
	margin: 0 0 0 0;
	-webkit-hyphens: auto;
	-webkit-hyphenate-limit-before: 3;
	-webkit-hyphenate-limit-after: 3;
	-webkit-hyphenate-limit-chars: 6 3 3;
	-webkit-hyphenate-limit-lines: 3;
	-webkit-hyphenate-limit-last: always;
	-webkit-hyphenate-limit-zone: 8%;
	-moz-hyphens: auto;
	-moz-hyphenate-limit-chars: 6 3 3;
	-moz-hyphenate-limit-lines: 3;
	-moz-hyphenate-limit-last: always;
	-moz-hyphenate-limit-zone: 8%;
	-ms-hyphens: auto;
	-ms-hyphenate-limit-chars: 6 3 3;
	-ms-hyphenate-limit-lines: 3;
	-ms-hyphenate-limit-last: always;
	-ms-hyphenate-limit-zone: 8%;
	hyphens: auto;
	hyphenate-limit-chars: 6 3 3;
	hyphenate-limit-lines: 3;
	hyphenate-limit-last: always;
	hyphenate-limit-zone: 8%
}

h2.rubrik_titel {
	position: relative;
	font-size: 28px;
	line-height: 32px;
	font-weight: 700;
	color: var(--farbe_1);
	margin: 0 0 60px -1px;
}
h2.rubrik_titel.intro {
	margin: 0 0 0 -1px!important;
}
h2.rubrik_titel strong {
	font-weight: 700;
	color: inherit;
}
h3.venues {
	font-weight: 500;
	color: var(--farbe_1);
	margin: 6px 0 60px 0;
}
h3.venues strong {
	color: var(--farbe_1);
}



/********** Typo allgemein **********/

*.normal {
	font-weight: 400!important;
	color: inherit;
}

strong {
	font-weight: 700;
}

em {
	font-style: italic;
}



/********** Corona-Info **********/

#corona_rahmen {
}

#corona_rahmen p {
	font-size: 17px;
	line-height: 22px;
	font-weight: 500;
}
#corona_rahmen p + p {
	margin-top: 22px;
}



/********** Intro **********/

#intro_rahmen {
}

#intro_rahmen div.en,
#intro_rahmen div.en * {
	color: var(--farbe_2);
}

#intro_rahmen p {
	font-size: 17px;
	line-height: 22px;
	font-weight: 500;
}
#intro_rahmen p + p {
	margin-top: 22px;
}

@media screen and (max-width: 800px) {
	#intro_rahmen div.grid_2 div.spalte + div.spalte {
		margin-top: 33px;
	}
}
/*
@media screen and (min-width: 801px) and (max-width: 1200px) {
*/


/********** Programm + VoD **********/

#program_rahmen,
#vod_rahmen {
}

#program_rahmen div.download,
#vod_rahmen div.download {
	position: relative;
	margin: 0 0 40px 0;
}
#program_rahmen div.download h5,
#vod_rahmen div.download h5 {
	font-size: 17px;
	line-height: 22px;
	font-weight: 700;
	color: var(--farbe_1);
	margin: 0 0 5px 0;
}

#program_rahmen div.eintrag,
#vod_rahmen div.eintrag {
	position: relative;
	padding: 0 0 0 0;
}

#program_rahmen div.eintrag > *,
#vod_rahmen div.eintrag > * {
	z-index: 2;
}
#program_rahmen div.eintrag div.bild_rahmen,
#vod_rahmen div.eintrag div.bild_rahmen {
	pointer-events: none;
}

#program_rahmen > div.extra,
#vod_rahmen > div.extra {
	margin-top: 70px!important;
}

#program_rahmen div.eintrag > a,
#vod_rahmen div.eintrag > a {
	position: absolute;
	z-index: 0!important;
	top: -8px;
	left: -8px;
	width: calc(100% + 16px);
	height: calc(100% + 14px);
	mix-blend-mode: multiply;
	/*
	border-radius: 6px;
	*/
}
#program_rahmen div.eintrag:hover a,
#vod_rahmen div.eintrag:hover a {
	background-color: var(--farbe_1);
	opacity: 0.75;
}
#program_rahmen div.eintrag div.bild_rahmen,
#vod_rahmen div.eintrag div.bild_rahmen {
	position: relative;
	margin: 0 0 10px 0;
	padding: 0 0 0 0;
	line-height: 0;
	font-size: 10px;
	height: 0;
	padding-top: 60%;
}
#program_rahmen div.eintrag div.bild_rahmen.spezial::after,
#vod_rahmen div.eintrag div.bild_rahmen.spezial::after {
	content: "";
	display: block;
	position: absolute;
	z-index: 0;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: var(--farbe_2);
	mix-blend-mode: color;
	border-radius: 3px;
}
#program_rahmen div.eintrag div.bild_rahmen div.bild,
#vod_rahmen div.eintrag div.bild_rahmen div.bild {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	margin: 0 0 0 0;
	/*
	border-radius: 3px;
	*/
	overflow: hidden;
}
#program_rahmen div.eintrag div.bild_rahmen img,
#vod_rahmen div.eintrag div.bild_rahmen img {
	position: relative;
	width: 100%;
	height: 100%;
	object-fit: cover;
	mix-blend-mode: multiply;
}
#program_rahmen div.bild_rahmen div.bild_credits,
#vod_rahmen div.bild_rahmen div.bild_credits {
	position: absolute;
	z-index: 1;
	top: 2px;
	left: -5px;
	width: 1px;
	height: 1px;
	transform: rotate(-90deg);
	font-size: 13px!important;
	line-height: 13px!important;
}
#program_rahmen div.eintrag:hover div.bild_credits,
#vod_rahmen div.eintrag:hover div.bild_credits {
	display: none;
}
#program_rahmen div.bild_rahmen div.bild_credits div,
#vod_rahmen div.bild_rahmen div.bild_credits div {
	position: absolute;
	bottom: 0;
	right: 0;
	font-size: 10px;
	line-height: 10px;
	text-align: right;
	opacity: 0.6;
	white-space: nowrap;
}
#program_rahmen div.eintrag h2,
#vod_rahmen div.eintrag h2 {
	font-size: 28px;
	line-height: 32px;
	font-weight: 800;
	color: var(--farbe_2);
	color: var(--farbe_1);
	padding: 0 0 0 0;
}
#program_rahmen div.eintrag div.datum,
#vod_rahmen div.eintrag div.datum {
	font-size: 17px;
	line-height: 22px;
	font-weight: 500;
	color: var(--farbe_2);
	padding: 0 0 0 0;
}
#program_rahmen div.eintrag div.datum span.kleiner,
#vod_rahmen div.eintrag div.datum span.kleiner {
	font-size: 14px!important;
}


#program_rahmen div.eintrag div.kino,
#vod_rahmen div.eintrag div.kino,
#program_rahmen div.eintrag div.venue,
#vod_rahmen div.eintrag div.venue {
	font-size: 17px;
	line-height: 22px;
	font-weight: 500;
	color: var(--farbe_2);
	margin-bottom: 6px;
	padding: 0 0 0 0;
}

#program_rahmen h4,
#vod_rahmen h4 {
	font-size: 22px;
	line-height: 27px;
	font-weight: 400;
	margin: 0 0 0 -1px;
	padding: 0 0 0 0;
}
#program_rahmen h4.extra,
#vod_rahmen h4.extra {
	font-weight: 700!important;
	color: var(--farbe_2);
}
#program_rahmen h4.premiere,
#vod_rahmen h4.premiere {
	font-weight: 400!important;
	/*
	color: var(--farbe_2);
	*/
}
#program_rahmen h3,
#vod_rahmen h3 {
	font-size: 22px;
	line-height: 27px;
	font-weight: 700;
	margin: 0 0 0 -1px;
	padding: 0 0 0 0;
}
#program_rahmen h3 span.omu,
#vod_rahmen h3 span.omu {
	font-size: 14px;
	font-weight: 400;
	color: #777;
	white-space: nowrap;
}

#program_rahmen h3 + h4,
#vod_rahmen h3 + h4 {
	margin-top: 1px;
}

#program_rahmen h4.kleiner,
#vod_rahmen h4.kleiner {
	font-size: 17px!important;
	line-height: 22px!important;
	margin: 2px 0 0 0!important;
}
#program_rahmen h4.kleiner + *,
#vod_rahmen h4.kleiner + * {
	margin-top: 4px!important;
}

#program_rahmen div.omu,
#vod_rahmen div.omu,
#program_rahmen div.credits,
#vod_rahmen div.credits {
	font-size: 14px;
	line-height: 20px;
	font-weight: 400;
	color: #777;
	margin: 0px 0 0 0;
	padding: 0 0 0 0;
}
#program_rahmen h3 + div.omu,
#vod_rahmen h3 + div.omu,
#program_rahmen h3 + div.credits,
#vod_rahmen h3 + div.credits {
	margin-top: 4px!important;
}
#program_rahmen h4.kleiner + div.omu,
#vod_rahmen h4.kleiner + div.omu,
#program_rahmen h4.kleiner + div.credits,
#vod_rahmen h4.kleiner + div.credits {
	margin-top: 6px!important;
}

#program_rahmen div.infos_extra,
#vod_rahmen div.infos_extra {
	font-size: 17px;
	line-height: 22px;
	font-weight: 500;
	color: var(--farbe_2);
	margin: 5px 0 0 0;
	padding: 0 0 0 0;
}
#program_rahmen div.infos_extra strong,
#vod_rahmen div.infos_extra strong {
	color: inherit!important;
}
#program_rahmen div.infos_extra_klein,
#vod_rahmen div.infos_extra_klein {
	font-size: 14px;
	line-height: 20px;
	font-weight: 400;
	color: #777;
	margin: 10px 0 0 0;
	padding: 0 0 0 0;
}

#program_rahmen div.infos_vod,
#vod_rahmen div.infos_vod {
	font-size: 14px;
	line-height: 20px;
	font-weight: 400;
	margin: 1px 0 0 0;
	padding: 0 0 0 0;
}

#program_rahmen div.program_sub {
	margin: 8px 0 0 0;
}
#program_rahmen div.program_sub h3 {
	font-size: 17px!important;
	line-height: 22px!important;
	margin: 0 0 0 0;
}
#program_rahmen div.program_sub h3 span.omu {
	font-size: 12px!important;
}
#program_rahmen div.program_sub div.omu,
#program_rahmen div.program_sub div.credits {
	margin-top: 1px!important;
}
#program_rahmen div.program_sub div.credits +h3 {
	margin-top: 8px!important;
}

/********** Programm Absagen **********/
#program_rahmen div.eintrag.absage:hover a,
#vod_rahmen div.eintrag.absage:hover a {
	background-color: var(--farbe_1)!important;
}
#program_rahmen div.eintrag.absage div.datum,
#vod_rahmen div.eintrag.absage div.datum,
#program_rahmen div.eintrag.absage div.kino,
#vod_rahmen div.eintrag.absage div.kino {
	text-decoration: line-through;
	text-decoration-color: var(--farbe_2)!important;
}
#program_rahmen div.eintrag.absage div.infos_extra,
#vod_rahmen div.eintrag.absage div.infos_extra {
	font-weight: 500;
	color: var(--farbe_2)!important;
}
/*
#program_rahmen div.eintrag.absage div.bild_rahmen div.bild::before,
#vod_rahmen div.eintrag.absage div.bild_rahmen div.bild::before {
  content: "";
	position: absolute;
	display: block;
	z-index: 1;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: #000;
  mix-blend-mode: screen!important;
}
#program_rahmen div.eintrag.absage div.bild_rahmen div.bild img,
#vod_rahmen div.eintrag.absage div.bild_rahmen div.bild img {
	filter: saturate(0) brightness(1.15) !important;
}
*/



/********** Spielorte **********/

#venues_rahmen {
}

#venues_rahmen h3 {
	font-size: 17px;
	line-height: 22px;
	font-weight: 700;
	color: var(--farbe_2);
	margin: 0 0 7px 0;
}

#venues_rahmen p {
	font-size: 17px;
	line-height: 22px;
	font-weight: 400;
	margin: 0 0 0 0;
}

#venues_rahmen div.eintrag p + p {
	margin: 11px 0 0 0;
}

#venues_rahmen p.logo_kino {
	margin: 11px 0 10px -1px;
}



/********** Infos **********/

#infos_rahmen {
}

#infos_rahmen h5 {
	font-size: 17px;
	line-height: 22px;
	font-weight: 700;
	color: var(--farbe_2);
	margin: 0 0 5px 0;
}

#infos_rahmen p {
	font-size: 17px;
	line-height: 22px;
	font-weight: 400;
	margin: 0 0 0 0;
}
#infos_rahmen p + p {
	margin: 11px 0 0 0;
}

#infos_rahmen div.eintrag + div.eintrag {
	margin-top: 22px;
}

#infos_rahmen #logos {
	margin-top: 45px;
}
#infos_rahmen #logos #logos_rahmen {
	display: flex;
	gap: 10px 30px;
	align-items: center;
	flex-wrap: wrap;
}
#infos_rahmen #logos #logos_rahmen > div {
	position: relative;
	line-height: 0;
}
#infos_rahmen #logos #logos_rahmen > div a {
	position: relative;
	display: block;
	line-height: 0;
	font-size: 0;
	text-decoration: none;
}
#infos_rahmen #logos #logos_rahmen > div a:hover {
	line-height: 0;
}
#infos_rahmen #logos #logos_rahmen > div a::before,
#infos_rahmen #logos #logos_rahmen > div > div::before {
  content: "";
  position: absolute;
  z-index: 1;
  background-color: #333;
  background-color: var(--farbe_1);
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  mix-blend-mode: screen;
}
#infos_rahmen #logos #logos_rahmen > div a:hover::before {
  background-color: var(--farbe_2);
}



/********** Kontakt / Impressum **********/

#contact_rahmen {
}

#contact_rahmen h4 {
	font-size: 17px;
	line-height: 22px;
	font-weight: 700;
	color: var(--farbe_2);
	margin: 0 0 5px 0;
}

#contact_rahmen p {
	font-size: 17px;
	line-height: 22px;
	font-weight: 400;
	margin: 0 0 0 0;
}

div.impressum {
	padding-top: 2px;
}
div.impressum *,
div.kleingedrucktes {
	font-size: 14px!important;
	line-height: 20px!important;
	color: #777;
}
div.kleingedrucktes {
	margin-top: 15px;
}
div.impressum div + div {
	margin-top: 20px;
}
div.impressum p {
	font-weight: 300!important;
}
div.impressum strong {
	font-weight: 500!important;
}
div.impressum a {
	text-decoration: none;
}
div.impressum a:hover {
	text-decoration: underline;
}

@media screen and (max-width: 800px) {
	div.impressum + div.impressum {
		margin-top: 22px!important;
	}
}
@media screen and (min-width: 801px) {
	div.impressum div {
		padding-right: 25px;
	}
}



/********** allgemein **********/

@media screen and (max-width: 800px) {
	#program_rahmen div.grid div.eintrag + div.eintrag,
	#vod_rahmen div.grid div.eintrag + div.eintrag {
		margin-top: 70px!important;
	}
	#program_rahmen div.grid div.eintrag + div.eintrag::before,
	#vod_rahmen div.grid div.eintrag + div.eintrag::before {
		content: "";
		position: absolute;
		display: block;
		width: 100%;
		height: 0;
		top: -38px;
		left: 0;
		border-top: 2px solid var(--farbe_1);
		pointer-events: none;
	}
	#venues_rahmen div.grid div.eintrag + div.eintrag {
		margin-top: 33px!important;
	}
	div.grid div.eintrag + div.eintrag.ohne,
	div.grid_2 div.eintrag + div.eintrag.ohne {
		margin-top: 0!important;
	}
	div.grid_infos div.spalte + div.spalte,
	div.grid_infos div.spalte + div.grid_infos_innen {
		margin-top: 22px;
	}
}
@media screen and (min-width: 801px) {
	div.grid,
	div.grid_2,
	div.grid_infos {
		display: grid;
		grid-gap: 40px;
	}
	div.grid,
	div.grid_2,
	div.grid_infos {
		grid-template-columns: 1fr 1fr;
	}
	div.grid_infos_innen div.spalte + div.spalte {
		margin-top: 22px;
	}
	div.grid div.eintrag.span {
		grid-column: span 2;
	}
}
@media screen and (min-width: 1024px) and (max-width: 1200px) {
	div.grid,
	div.grid_2,
	div.grid_infos {
		grid-gap: 50px!important;
	}
}
@media screen and (min-width: 1201px) {
	div.grid,
	div.grid_2 {
		grid-gap: 60px!important;
	}
	div.grid {
		grid-template-columns: 1fr 1fr 1fr!important;
	}
	div.grid_infos {
		grid-template-columns: 1fr 2fr;
		grid-gap: 120px!important;
	}
	div.grid_infos_innen {
		display: grid;
		grid-template-columns: 1fr 1fr;
		grid-gap: 60px;
		margin-left: -60px;
	}
	div.grid_infos_innen div.spalte + div.spalte {
		margin-top: 0!important;
	}
	div.flex {
		flex-gap: 60px!important;
	}
}

div.scrollanker {
	position: absolute;
	top: -48px;
}
div.scrollanker.start {
	top: -30vh!important;
}

a {
	word-break: break-word;
}
a.link {
	color: inherit;
	text-decoration: underline;
}
a.link:hover {
	color: var(--farbe_1);
}
a.link.partner,
a.tel {
	text-decoration: none!important;
}
a.link.partner:hover,
a.tel:hover {
	text-decoration: underline!important;
}

*.english,
*.english * {
	color: var(--farbe_1);
}
*.english a.link {
}
*.english a.link:hover {
	color: #333!important;
}

hr.trennlinie_dick {
	position: relative;
	height: 0;
	border: 0;
	border-top: 3px solid var(--farbe_1);
	/*
	margin: 0 0 0 0;
	*/
}
