@font-face {
	font-family: Atkinson-Hyperlegible;
	src: url("../fonts/Atkinson-Hyperlegible-Regular-102a.woff2");
	font-style: normal;
}

@font-face {
	font-family: Atkinson-Hyperlegible;
	src: url("../fonts/Atkinson-Hyperlegible-Italic-102a.woff2");
	font-style: italic;
}

@font-face {
	font-family: Atkinson-Hyperlegible;
	src: url("../fonts/Atkinson-Hyperlegible-BoldItalic-102a.woff2");
	font-style: italic;
	font-weight: bold;
}

@font-face {
	font-family: Atkinson-Hyperlegible;
	src: url("../fonts/Atkinson-Hyperlegible-Bold-102a.woff2");
	font-style: normal;
	font-weight: bold;
}

:root {
	--gruen: #5aa00a;
	--grau: #6a6a6a;
	--braun: #220a03;
	--bg-header: #f6f6f6;
	--link-megamenu: #fff;
	--trennlinie-megamenu: #f6f6f6;
	--breite-inhalt: 1170px;
	--spaltenabstand: 25px;
	--padding-um-spalten: 25px;
	--padding-in-spalten: 15px;
	--mm-color-background: #59a00a;
	--tag-background-color: #c5c5c5;
	--tag-fg-color: var(--braun);
}

* {
	margin: 0;
	padding: 0;
}


body {
	line-height: 1.4;
	font-size: 1rem;
	font-size: 100%;
	font-family: Atkinson-Hyperlegible, Arial, sans-serif;
}

/*Reset für invisible*/
.invisible {
	border: 0;
	clip: rect(0 0 0 0);
	height: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute;
	width: 1px;
}

.mod_article ol {
	list-style-type: decimal;
	margin-left: 2rem;
}

.mod_article ul {
	list-style-type: disc;
	margin-left: 2rem;
}

a {
	color: var(--gruen);
}

h1,
h2,
h3,
h4,
h5,
h6 {
	color: var(--braun);
	font-weight: normal;
	margin: 10px 0px;
}

h1 {
	--_text-color: var(--gruen);
	color: var(--_text-color);
	font-size: 1.7rem;
	text-transform: uppercase;
	transform: scale(1, 1.5);
	letter-spacing: 1px;
	line-height: 0.95;
}

h1::first-letter {
	color: var(--gruen);
	font-size: 2.8rem;
}

h1.startseite {
	--_text-color: var(--braun);
	font-size: 2rem;
	letter-spacing: 1px;
	line-height: 1.1;
}

@media screen and (max-width: 768px) {
	h1.startseite {
		font-size: 1.5rem;
	}
}

h1.startseite span.headline_gruen {
	color: var(--gruen);
	font-size: 1.5rem;
	width: 1em;
	height: 1em;
	margin: 0;
	padding: 0;
}

@media screen and (min-width: 768px) {
	h1.startseite span.headline_gruen {
		font-size: 2rem;
	}
}

h1.startseite::first-letter {
	color: var(--braun);
	font-size: 2.8rem;
}

h2 {
	font-size: 1.5rem;
}

h3 {
	font-size: 1.4rem;
	color: var(--gruen);
}

h4 {
	font-size: 1.3rem;
}

h5 {
	font-size: 1.2rem;
}

h6 {
	font-size: 1.1rem;
}

strong {
	font-weight: bold;
}

figcaption {
	font-size: 1rem;
	color: var(--grau);
	font-style: italic;
}

.interner_link a {
	text-decoration: none;
}

.interner_link a:after {
	content: "»";
	font-size: 1rem;
	margin-left: 4px;
}

@media screen and (min-width: 500px) {
	.media--left figure {
		float: left;
	}

	.media--right figure {
		float: right;
	}
}

.content-text.media--left figure {
	margin-right: var(--spaltenabstand);
	margin-bottom: var(--spaltenabstand);
}

.content-text.media--right figure {
	margin-left: var(--spaltenabstand);
	margin-bottom: var(--spaltenabstand);
}

.trenner:after {
	content: "";
	display: block;
	border-bottom: 4px solid var(--grau);
	width: 100px;
	margin: 20px auto 60px;
}

/*Header*/
.gemeinde_logo {
	position: relative;
	top: 3px;
	left: 25px;
	line-height: 0.8;
}

.gemeinde_logo a {
	font-weight: bold;
	font-size: 1.5rem;
	color: var(--grau);
	text-decoration: none;
}

.gemeinde_logo span.gemeinde {
	color: var(--gruen);
	font-size: 1.2rem;
	line-height: 1.3;
}

.gemeinde_logo span.sorbisch {
	color: var(--grau);
	font-size: 1.1rem;
}

#header .inside {
	display: grid;
	grid-template-columns: minmax(150px, 350px) minmax(2rem, 1fr) 100px;
	align-items: center;
	position: fixed;
	z-index: 9999;
	width: 100%;
	max-width: 100dvw;
	height: 110px;
	padding: 0px;
	border-bottom: 1px solid var(--braun);
	background-color: var(--bg-header);
	top: 0;
}

.nav_desktop>.mod_navigation {
	display: flex;
	place-content: center;
	line-height: 1.1;
}

.nav_desktop .level_1 {
	display: none;
}

@media screen and (min-width: 900px) {
	.nav_desktop .level_1 {
		display: flex;
		justify-content: space-around;
		align-items: flex-end;
		height: 68px;
		max-width: 890px;
		width: 100%;
		margin-bottom: 0;
	}

	.mm_container> :is(a, strong) {
		text-decoration: none;
		color: var(--braun);
		font-weight: bold;
		font-size: 1.25rem;

		br {
			display: none;
		}

		span {
			display: block;
			color: var(--gruen);
			font-size: 1rem;
			font-weight: normal;
			font-style: italic;
		}
	}

	.mm_container> :is(strong, .trail) {
		color: var(--gruen);
	}
}

/*Anpassungen mobile Navigation*/
.mm-menu--theme-dark {
	background-color: var(--gruen);
	--mm-color-background: var(--gruen);
	--mm-color-text: #fff;
	--mm-color-text-dimmed: #fff;
	--mm-color-icon: #fff;
}

.mm-btn_next::after {
	right: 33px;
}

.mm-listitem__btn {
	flex-basis: 100px;
}

.mm-listitem__btn:focus {
	padding: calc((var(--mm-listitem-size) - var(--mm-line-height)) / 2);
	padding-right: 50px;
}

/*Icon im Megamenu abschalten*/
.nav_desktop ul.level_1 ul.level_1 li a:before,
.nav_desktop ul.level_1 ul.level_1>li .active:before {
	content: "";
}

.nav_desktop>.level_1>li>a>span {
	color: var(--gruen);
	font-style: italic;
	line-height: 0;
}

/*Hamburger*/

.hamburger {
	width: 2rem;
	height: 2rem;
	display: block;
	justify-self: center;
}

/*Anpassung Desktopmenü*/
#desktopmenue ul.level_2 {
	display: none;
}

/*Anpassungen Megamenu*/
.mm_dropdown ul.level_1 {
	max-width: 830px;
	height: auto;
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	position: relative;
	padding-bottom: 20px;
}

.mod_navigation li.mm_container .mm_dropdown {
	max-width: 890px;
	margin: 0 auto;
}

.mod_navigation li.mm_container .mm_dropdown>.inner {
	padding: 0 0 0 30px;
	display: flex;
	justify-content: space-between;
	background-color: var(--gruen);
}

.mm_dropdown .level_1>li {
	width: 220px;
	margin-right: 25px;
	border-bottom: 1px dotted var(--trennlinie-megamenu);
	padding-right: 4px;
	font-weight: normal;
}

.mm_dropdown ul.level_1 li a,
.mm_dropdown ul.level_1 li .active {
	line-height: 1.2;
	display: block;
	padding: 10px 5px;
}

.mm_dropdown ul.level_1>li a,
.mm_dropdown ul.level_1>li .active {
	color: var(--link-megamenu);
	text-decoration: none;
	font-size: 1.1rem;
	line-height: 1.2;
}

.mm_dropdown ul.level_1>li .active,
.mm_dropdown ul.level_1>li a:hover,
.mm_dropdown ul.level_1>li .trail {
	color: var(--braun);
	line-height: 1.2;
	font-size: 1.1rem;
	padding-bottom: 10px;
}

.mm_dropdown h2 {
	color: var(--braun);
}

.mm_dropdown figure {
	line-height: 0;
	margin-left: 30px;
}

.mod_navigation li.mm_container:hover>a::after,
.mod_navigation li.mm_container:hover>span::after {
	display: none;
}

/*Navigation der Ortsteile*/
.mod_customnav.nav_ortsteile ul {
	list-style: none;
	background-color: var(--bg-header);
	margin-bottom: 25px;
	line-height: 2.4;
}

.mod_customnav.nav_ortsteile ul li {
	border-bottom: 1px solid #fff;
	display: inline-block;
	vertical-align: middle;
}

.mod_customnav.nav_ortsteile ul li>a {
	text-decoration: none;
	color: var(--braun);
	display: block;
	padding: 0 20px 0 5px;
}

.mod_customnav.nav_ortsteile ul li>a span {
	font-size: 0.9rem;
}

.mod_customnav.nav_ortsteile ul li a:hover,
.mod_customnav.nav_ortsteile ul li .active {
	color: var(--gruen);
}

.mod_customnav.nav_ortsteile ul li .active {
	padding-left: 5px;
	margin-right: 12px;
}

.mod_customnav.nav_ortsteile ul li a:after {
	content: "»";
	font-size: 1rem;
	margin-left: 4px;
}

@media screen and (max-width: 900px) {
	.nav_ortsteile {
		display: none;
	}
}

/*Customnav*/
@media screen and (min-width: 900px) {
	.mod_customnav.nav_ortsteile ul li {
		line-height: 1;
		display: block;
	}

	.mod_customnav.nav_ortsteile ul li>a {
		padding: 20px 20px 20px 10px;
		position: relative;
	}

	.mod_customnav.nav_ortsteile ul li .active {
		padding-left: 10px;
	}

	.mod_customnav.nav_ortsteile ul li strong.active {
		line-height: 2.7;
		font-weight: normal;
	}

	.mod_customnav.nav_ortsteile ul li a:after {
		right: 12px;
		position: absolute;
		top: 20px;
	}
}

/*Brotkrumennavigation*/

.mod_breadcrumb {
	background: var(--bg-header);
	display: none;

	ul {
		width: var(--breite-inhalt);
		margin: 0 auto;
		display: flex;
		align-items: center;
		font-size: 1rem;
	}

	br {
		display: none;
	}

	li {
		display: flex;
		align-items: center;
		padding: 0.5rem 0;
	}

	li:first-child::before {
		background: url("../icon/home.svg") no-repeat;
		content: " ";
		width: 2rem;
		height: 2rem;
		background-size: contain;
		display: block;
	}

	li:not(:last-child)::after {
		display: inline-block;
		content: "/";
		padding: 0 0.5rem;
	}


}


@media screen and (min-width: 500px) {
	.mod_breadcrumb {
		display: block;
	}
}

/*Barrierefreiheit*/
a:active,
a:focus {
	outline: none;
}

.hamburger a:focus-within {
	outline-style: dotted;
	outline-color: var(--gruen);
	outline-width: medium;
}

.hamburger a {
	display: block;
	max-width: 75px;
}

#main {
	container: main /inline-size;
}

#main a:focus-within {
	outline-style: solid;
	outline-color: var(--gruen);
	outline-width: thin;
}

#footer a:focus-within {
	outline-style: solid;
	outline-color: #ffffff;
	outline-width: thin;
}

.pagination a:focus-within {
	border: none;
	background-color: var(--braun);
	border-radius: 3px;
}

.mod_navigation li.mm_container:focus-within>.mm_dropdown {
	display: inline-block;
	top: 88px;
}

.nav_desktop .mod_navigation>ul.level_1>li:focus-within {
	outline: 2px dotted var(--gruen);
	outline-offset: 5px;
}

.nav_desktop .mod_navigation>ul.level_1>li a:focus-within {
	border: none;
	display: inline;
}

.mm_dropdown .mod_navigation ul.level_1 li:focus-within {
	color: var(--braun);
	padding: 0;
}

.mm_dropdown .mod_navigation ul.level_1 li a:focus-within {
	color: var(--braun);
	background-color: #fff;
	display: block;
	/* padding: 9px; */
}

/*Kontaktformular*/
textarea {
	margin-top: 5px;
}

label {
	margin-top: 20px;
	min-width: 230px;
	line-height: 10px;
}

.widget-explanation p {
	font-size: 1rem;
	margin-top: 26px;
}

input[type="checkbox"] {
	position: relative;
}

input {
	height: 2.6rem;
}

form.kontakt {
	max-width: 500px;
}

.submit {
	margin: 10px 0px;
	padding: 15px;
}

form button,
input[type="submit"],
.button {
	display: inline-block;
	padding: 25px 15px;
	margin-bottom: 0;
	text-align: center;
	vertical-align: middle;
	line-height: 20px;
	font-size: 1.1rem;
	color: #fff;
	cursor: pointer;
	border: none;
	-moz-border-radius: 0;
	-webkit-border-radius: 0;
	border-radius: 3px;
	background-color: var(--gruen);
	background-image: none;
	background-repeat: no-repeat;
	-moz-transition: none;
	-webkit-transition: none;
	-o-transition: none;
	transition: none;
}

.plz {
	max-width: 100px;
}

.error {
	color: red;
}

.widget-explanation {
	font-size: 12px;
}

.checkbox-inline {
	margin-left: 0px !important;
	vertical-align: baseline;
}

/*Tabelle Notdienste unter Rathaus */
table .tabelle-notdienste .spalte-eins {
	width: 200px;
}

/*1 Drittel zu zwei Drittel z.B. Ortsteile*/
@media screen and (min-width: 900px) {
	.grid-eins-zu-drei {
		display: grid;
		max-width: var(--breite-inhalt);
		grid-template-columns: 25% 1fr;
		grid-gap: var(--spaltenabstand);
	}
}

/*2 Drittel zu ein Drittel*/
@media screen and (min-width: 900px) {
	.grid-zwei-zu-eins {
		display: grid;
		max-width: var(--breite-inhalt);
		grid-template-columns: 1fr 25%;
		grid-gap: var(--spaltenabstand);
	}
}

/*Nachrichten*/

.teaser-grid {
	background-color: var(--bg-header);
	min-height: 130px;

	.text-content {
		margin: 0.5rem;
	}
}

@container teaser-list (width > 350px) {
	.teaser-grid {
		display: grid;
		grid-column-gap: 20px;
		grid-template-columns: 150px 1fr;

		.text-content {
			margin: 0;
		}
	}
}

.teaser-list {
	margin-block-end: 3rem;
	container: teaser-list / inline-size;

	.layout_latest {
		position: relative;
		z-index: 1;
		font-size: 0.85rem;
		margin-block-start: 5rem;
	}


	.text-content {
		padding-inline-end: 0.75rem;
	}

	.text-content h2 {
		font-size: 1rem;
	}

	.more {
		text-align: right;
	}
}

.teaser-list .info {
	max-width: 6rem;
	position: absolute;
	z-index: 11;
	text-align: center;
	font-size: 1rem;
	translate: 1rem -50%;
	font-family: Arial, sans-serif;

	&>* {
		padding: 0.5rem;
		display: block;
	}

	.tag {
		background-color: var(--tag-background-color);
		color: var(--tag-fg-color);
	}


}


.mod_newslist .monat-jahr {
	background-color: var(--gruen);
	color: #fff;
}

.mod_eventlist .monat-jahr {
	background-color: var(--braun);
	color: #fff;
}

/* first headline in teaserlist */
.mod_newslist> :is(h1, h2, h3, h4, h5, h6) {
	margin-block-end: 3rem;

}

/**/
/* .layout_latest_startseite .info .tag { */
/* 	background-color: #c5c5c5; */
/* 	font-family: arial; */
/* 	color: var(--braun); */
/* 	text-align: center; */
/* 	padding: 6px 0px; */
/* 	position: relative; */
/* 	z-index: 20; */
/* 	top: 12px; */
/* 	left: 9px; */
/* 	width: 80px; */
/* } */
/**/
/* .layout_latest_startseite .info .monat-jahr { */
/* 	background-color: var(--gruen); */
/* 	color: #fff; */
/* 	text-align: center; */
/* 	font-family: arial; */
/* 	padding: 9px 0px; */
/* 	position: relative; */
/* 	z-index: 20; */
/* 	top: 12px; */
/* 	width: 80px; */
/* 	left: 9px; */
/* 	width: 80px; */
/* } */

/* .layout_latest_startseite h2 { */
/* 	padding-top: 13px; */
/* 	font-size: 1rem; */
/* 	line-height: 0.95; */
/* 	color: var(--gruen); */
/* } */
/**/
/* .layout_latest_startseite .more { */
/* 	margin: 8px 0px 0px; */
/* 	text-align: right; */
/* 	padding: 0px 8px 5px 0px; */
/* } */
/**/
.zwei-spalten .layout_latest_startseite figure {
	margin-bottom: 0;
	padding-bottom: 0;
}

.zwei-spalten .nachrichten-teaser-grid figure a {
	display: block;
}

/*Nachrichten ausführlich*/
.layout_full h1 {
	padding-bottom: 25px;
}

.layout_full h2 {
	margin-top: 0;
}

.layout_full .info {
	margin-bottom: 10px;
}

.layout_full figure.float_left {
	padding: 0 var(--spaltenabstand) var(--spaltenabstand) 0;
}

.layout_full figure.float_right {
	padding: 0 0 var(--spaltenabstand) var(--spaltenabstand);
}

.layout_full figure.float_above {
	padding: 0 0 var(--spaltenabstand);
}

.mod_newsreader .back {
	text-align: center;
	margin-top: 25px;
	padding-top: 10px;
	border-top: 1px solid var(--braun);
}

/*Veranstaltungen*/
/* .event-teaser-grid { */
/* 	display: grid; */
/* 	grid-column-gap: 20px; */
/* 	grid-template-columns: 150px 1fr; */
/* 	position: relative; */
/* 	z-index: 10; */
/* 	top: -26px; */
/* 	background-color: var(--bg-header); */
/* 	min-height: 130px; */
/* 	overflow: hidden; */
/* } */
/**/
/* .event-datum-kalender .tag { */
/* 	background-color: #c5c5c5; */
/* 	font-family: arial; */
/* 	color: var(--braun); */
/* 	text-align: center; */
/* 	padding: 6px 0px; */
/* 	position: relative; */
/* 	z-index: 20; */
/* 	top: 12px; */
/* 	left: 9px; */
/* 	width: 80px; */
/* } */
/**/
/* .event-datum-kalender .monat-jahr { */
/* 	background-color: #c5c5c5; */
/* 	font-family: arial; */
/* 	background-color: var(--braun); */
/* 	color: #fff; */
/* 	text-align: center; */
/* 	font-family: arial; */
/* 	padding: 9px 0px; */
/* 	position: relative; */
/* 	z-index: 20; */
/* 	top: 12px; */
/* 	width: 80px; */
/* 	left: 9px; */
/* 	width: 80px; */
/* } */
/**/
/* .event-teaser-grid h2 { */
/* 	font-size: 1.2rem; */
/* 	padding-top: 13px; */
/* 	line-height: 0.95; */
/* 	color: var(--braun); */
/* } */
/**/
/* .event-teaser-grid h2 > a { */
/* 	display: none; */
/* } */
/**/
/* .event-teaser-grid .time, */
/* .event-teaser-grid .location { */
/* 	color: silver; */
/* 	line-height: 0.5; */
/* 	display: none; */
/* } */
/**/
/* .event-teaser-grid .more { */
/* 	text-align: right; */
/* 	margin: 8px 0px 0px; */
/* 	padding: 0px 8px 5px 0px; */
/* } */
/**/
/* .event-teaser-grid .more a { */
/* 	color: var(--braun); */
/* } */
/**/
/* .zwei-spalten .event-teaser-grid figure { */
/* 	margin-bottom: 0; */
/* } */
/**/
/* .zwei-spalten .event-teaser-grid figure a { */
/* 	display: block; */
/* 	line-height: 0; */
/* } */
/**/
/* /*Veranstaltungen ausführlich*/
*/

/* .event.layout_full h1 { */
/* 	margin-bottom: 25px; */
/* } */
/**/
/* .event.layout_full h2 { */
/* 	margin-top: 0; */
/* } */
/**/
/* .event.layout_full .info { */
/* 	margin-bottom: 10px; */
/* } */
/**/
/* .eventlayout_full figure.float_left { */
/* 	padding: 0 var(--spaltenabstand) var(--spaltenabstand) 0; */
/* } */
/**/
/* .event.layout_full figure.float_right { */
/* 	padding: 0 0 var(--spaltenabstand) var(--spaltenabstand); */
/* } */
/**/
/* .event.layout_full figure.float_above { */
/* 	padding: 0 0 var(--spaltenabstand); */
/* } */
/**/
/* .mod_eventreader .back { */
/* 	text-align: center; */
/* 	margin-top: 25px; */
/* 	padding-top: 10px; */
/* 	border-top: 1px solid var(--braun); */
/* } */
/**/
/*Pagination für Nachrichten*/
.pagination ul {
	list-style-type: none;
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-end;
	border-top: 1px solid var(--grau);
	padding-top: 20px;
}

.pagination.block ul li {
	flex-basis: 2%;
	border: none;
	background-color: var(--gruen);
	border-radius: 3px;
	margin-left: 4px;
}

.pagination.block ul li a {
	color: #fff;
	text-decoration: none;
	display: block;
	padding: 10px 15px;
	font-size: 0.9rem;
	text-align: center;
}

.pagination li strong.active {
	color: var(--braun);
	padding: 10px 15px;
	display: block;
	/*padding: 10px 15px;*/
}

.pagination li.next a.next,
.pagination li.previous a.previous,
.pagination li.first,
.pagination li.last {
	width: 70px;
}

div.pagination.block ul li a.link {
	display: block;
}

/*Themengrafik*/
.mod_article.themengrafik {
	max-width: 100dvw;
	height: auto;
	padding: 0;
	max-height: 460px;
	min-height: 7rem;
}

#themengrafik img {
	object-fit: cover;
	width: 100dvw;
	height: auto;
	max-height: 350px;
	position: relative;
	top: 0;
	margin-top: 110px;
}

#themengrafik .themengrafik_grb img {
	height: 60px;
}

#themengrafik figcaption {
	padding-right: 10px;
	text-align: right;
}

/*Artikel normal*/
.mod_article {
	max-width: var(--breite-inhalt);
	margin: 0 auto;
	padding: var(--padding-um-spalten);
}

/*Artikel auf 100% breitem, grauem Hintergrund*/
.mod_article.bg_grau:before {
	background-color: var(--bg-header);
	content: "";
	display: block;
	position: absolute;
	width: 100dvw;
	height: 100%;
	z-index: -1;
	left: 50%;
	transform: translateX(-50%);
}

.mod_article.bg_grau {
	position: relative;
	padding: var(--padding-um-spalten);
}

/*Dreisplater für Firmen & Gewerbe*/
.grid_firmen_vereine {
	display: flex;
	flex-wrap: wrap;
	column-gap: var(--spaltenabstand);
	row-gap: var(--spaltenabstand);
}

.grid_firmen_vereine .content-text {
	border: 1px solid var(--gruen);
	padding: var(--spaltenabstand);
	background-color: #fff;
	box-shadow: 0 0 4px rgba(0, 0, 0, 0.2);
	min-width: 300px;
	max-width: 30%;
}

.grid_firmen_vereine img {
	margin: 0 auto;
	display: block;
	height: auto;
	max-width: 100%;
}

/*Vierspalter*/
@container main (width > 440px) {

	.zwei-spalten,
	.zwei-spalten-kasten,
	.vier-spalten {
		display: grid;
		margin: 0 auto;
		grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
		grid-gap: var(--spaltenabstand);
	}
}

.zwei-spalten,
.zwei-spalten-kasten,
.vier-spalten {

	background-color: transparent;
	max-width: var(--breite-inhalt);

	img {
		width: 100%;
		height: auto;
		object-fit: contain;
		max-width: 100%;
	}

	h2 {
		margin: var(--padding-in-spalten);
	}

	.content-text {
		display: flex;
		flex-direction: column;
		background-color: #fff;
		box-shadow: 0 0 4px rgba(0, 0, 0, 0.2);
	}

	.content-text.media.media--above h2 {
		order: 2;
	}

	.rte {
		margin: var(--padding-in-spalten);

		img {
			width: auto !important;
			height: revert-layer;
		}
	}

	.content-text.media.media--above .rte {
		order: 3;
	}
}

.zwei-spalten,
.zwei-spalten-kasten {
	grid-template-columns: repeat(auto-fit, minmax(400px, 1fr));
}

.zwei-spalten-kasten>* {
	background-color: #FFF;
	box-shadow: 0 0 4px #0003;

	& > *:not(.content-image) {
		margin-inline: 1rem;
	}
}

/*Oft gefragt*/
.oft-gefragt ul {
	list-style: none;
	background-color: var(--bg-header);
	padding: 0;
	margin: 0;
}

.oft-gefragt ul li {
	border-bottom: 1px solid #fff;
}

.oft-gefragt ul li a {
	text-decoration: none;
	color: var(--braun);
	display: block;
	padding: 20px;
	position: relative;
}

.oft-gefragt ul li a:after {
	content: "»";
	font-size: 1rem;
	right: 12px;
	position: absolute;
}

/*Accordion*/
.ce_accordion {
	background-color: #fff;
}

.ce_accordion .toggler {
	cursor: pointer;
	font-variant: small-caps;
	font-size: 1.2rem;
	margin: 0 0 1px 0px;
	padding: 10px 10px 10px 20px;
	background-color: var(--bg-header);
	position: relative;
}

.ce_accordion .toggler:after {
	content: "+";
	font-size: 1rem;
	color: #fff;
	text-align: center;
	position: absolute;
	top: 15px;
	right: 10px;
	background-color: var(--gruen);
	border-radius: 50%;
	width: 20px;
	height: 20px;
	line-height: 1.3;
}

.accordion {
	/*margin: 10px 0px 20px 21px;*/
	padding: 19px;
}

.content-accordion {
	button {
		position: relative;
		cursor: pointer;
		font-variant: small-caps;
		padding: 0.75rem;
		background-color: var(--bg-header);
		font-size: 1.25rem;

	}

	button::after {
		content: "+";
		font-size: 1rem;
		color: #fff;
		text-align: center;
		position: absolute;
		top: 50%;
		transform: translateY(-50%);
		right: 1rem;
		background-color: var(--gruen);
		border-radius: 50%;
		width: 1.5rem;
		height: 1.5rem;
		display: flex;
		justify-content: center;
		align-items: center;
	}

}

/*Download & Downloads*/
.content-downloads a {
	text-decoration: none;
	display: flex;
	align-items: center;
	min-height: 1.5rem;
}

/*Galerie*/
/* First the Grid */
.content-gallery ul {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(190px, 1fr));
	grid-gap: 0.9rem;
	justify-items: left;
	margin: 0;
	padding: 0;
	list-style-type: none;
}

@media screen and (max-width: 444px) {
	.content-gallery ul {
		grid-template-columns: repeat(auto-fit, minmax(120px, 1fr));
	}
}

/* The Picture Frame */
.content-gallery li {
	padding: 0.5rem 0.5rem 0.3rem 0.5rem;
	background-color: var(--bg-header);
	border: 1px solid var(--gruen);
}

/* The Images */
.content-gallery img {
	max-width: 100%;
	height: auto;
	object-fit: cover;
	transition: opacity 0.25s ease-in-out;
}

.content-gallery img:hover {
	opacity: 0.7;
}

/*Sitemap*/
/*Sitemap*/
.mod_sitemap {
	margin-top: 45px;
}

.mod_sitemap li.submenu a.sibling {
	height: auto;
	padding: 3px 0px;
}

.mod_sitemap a {
	text-decoration: none;
	display: block;
	position: relative;
	height: auto;
	color: var(--grau);
}

.mod_sitemap ul.level_1 {
	display: grid;
	grid-gap: var(--spaltenabstand);
	margin-right: 50px;
}

.mod_sitemap ul.level_1>li a {
	line-height: 1.1;
	color: var(--gruen);
}

.mod_sitemap ul.level_2>li.first {
	border-top: 1px solid silver;
	margin-top: 7px;
	padding: 23px 0px 0px;
}

.mod_sitemap ul.level_2>li a {
	line-height: 1.6;
	color: var(--grau);
}

@media screen and (min-width: 500px) {
	.mod_sitemap ul.level_1 {
		grid-template-columns: 50% 50%;
	}
}

@media screen and (min-width: 900px) {
	.mod_sitemap ul.level_1 {
		grid-template-columns: 25% 25% 25% 25%;
	}
}

/*Fusszeile*/
footer a {
	color: #fff;
	text-decoration: none;
	line-height: 1.5;
}

footer ul.level_1 li.submenu a.submenu span {
	font-weight: bold;
	font-size: 1.2rem;
}

/*Footer*/
footer {
	background-color: var(--braun);
	min-height: 200px;
	padding: 30px 0px;
	margin-top: 30px;
	color: #fff;
}

footer .inside {
	max-width: 1170px;
	margin: 0 auto;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	padding: 0px 30px;
	line-height: 1.4;
}

footer .inside .navigation-footer {
	flex-basis: 140px;
}

footer .inside .sitemap-footer {
	flex-basis: 87%;
}

footer .sitemap-footer ul {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
}

#footer h1,
#footer h2,
#footer h3,
#footer h4,
#footer h5,
#footer h6 {
	color: #fff;
	text-decoration: none;
	font-size: 1.3rem;
	font-weight: bold;
}

.footer-table-oeffnungszeiten td.col_0 {
	padding-right: 10px;
}

#login_heitech {
	margin-top: 1rem;
	display: flex;
	justify-content: space-between;

	a {
		display: block;
		min-width: 7rem;
		min-height: 3rem;
	}

	&>* {
		margin: 1rem;
	}
}

.mm-panels {
	background: var(--mm-color-background);
}

#logo-header {
	margin-inline-start: 2rem;
	max-width: 17rem;

	img {
		width: 100%;
		height: auto;
		object-fit: contain;
	}
}
