@import url("https://fonts.verwaltungsportal.de/import/?family=Source+Sans+3:400,600,700,400i,600i,700i");

:root {
	/* Hauptfarben */
	--color-primary: #b74924;
	--color-secondary: #387868;
	--color-light: #e36b03;
	--color-bg-light-trans: rgba(227, 107, 3, 0.85);
	--tab-bg: url(../img/logo-wasserzeichen.png);

	/* Hintergrundfarben */
	--color-bg-body: #ffffff;
	--color-bg-html: #f7f7f7;
	--color-bg-light: #fafafa;

	/* Textfarben */
	--color-text-dark: #010101;

	/* Grautöne */
	--color-gray-medium: #cccccc;

	/* Weiß und Transparenz */
	--color-white: #ffffff;
	--color-white-95: rgba(255, 255, 255, 0.95);
	--color-white-80: rgba(255, 255, 255, 0.8);
	--color-white-0: rgba(255, 255, 255, 0);

	/* Schwarz und Transparenz */
	--color-black-60: rgba(0, 0, 0, 0.6);
	--color-black-40: rgba(0, 0, 0, 0.4);
	--color-black-20: rgba(0, 0, 0, 0.2);
	--color-black-12: rgba(0, 0, 0, 0.12);
	--color-black-10: rgba(0, 0, 0, 0.1);
	--color-black-08: rgba(0, 0, 0, 0.08);
	--color-black-05: rgba(0, 0, 0, 0.05);
}

/* ========================================== BASE STYLES ======================================= */

html {
	max-width: 1930px;
	margin-left: auto;
	margin-right: auto;
	background: var(--color-bg-html);
	scroll-behavior: smooth;
	scroll-padding-top: 100px;
	scrollbar-color: var(--color-primary) var(--color-white);
	scrollbar-width: thin;
}

body {
	font-family: "Source Sans 3", sans-serif;
	font-weight: 400;
	color: var(--color-text-dark);
	background: var(--color-bg-body);
	font-size: clamp(1rem, 2vw, 1.125rem);
	/* 1rem = 16px */
	line-height: 1.5;
}

a {
	color: var(--color-primary);
}

#content a {
	text-decoration: underline;
}

a:is(:hover, :focus) {
	color: var(--color-primary);
	text-decoration: underline;
}

b,
strong {
	font-weight: 600;
}

/* ========================================== TOPBAR =========================================== */

#topbar {
	padding: clamp(15px, 2vw, 24px) 0;
}

#topbar > .row {
	max-width: 1600px;
	width: 100%;
}

#logo {
	display: inline-block;
}

#logo img {
	display: block;
}

@media (max-width: 991px) {
	#logo img {
		max-width: calc(100vw - 120px);
		width: 100%;
	}
}

/* ========================================== OPTIONSBAR ======================================= */

#optionsbar {
	gap: 30px;
}

#optionsbar h2 {
	font-size: 1.125rem;
	font-weight: 400;
	color: inherit;
	width: unset;
	margin: 0;
}

#style,
#contrast_style {
	gap: 10px;
}

#optionsbar button {
	border: none;
	color: var(--color-text-dark);
	display: inline-block;
	font-weight: 700;
	text-align: center;
	background: var(--color-white);
	line-height: 1;
	font-size: 1.125rem;
	width: 36px;
	height: 36px;
	box-shadow:
		1px 1px 0 0 var(--color-black-20),
		0 0 10px 0 var(--color-black-10);
	position: relative;
	padding: 0;
}

#style button:is(:hover, :focus) {
	color: var(--color-white);
	background: var(--color-primary);
}

#contrast_style button:is(:hover, :focus) {
	outline: 2px auto;
}

#optionsbar + * {
	margin-left: 40px;
}

#contrast_style button {
	font-size: 0;
}

#contrast_style button::before {
	content: "";
	display: block;
	position: absolute;
	z-index: -1;
	left: -6px;
	top: -6px;
	width: 30px;
	height: 30px;
	background: var(--color-black-10);
	opacity: 0;
	transition: opacity 150ms linear;
}

#contrast_style button::after {
	content: "";
	display: block;
	position: absolute;
	top: 7px;
	right: 7px;
	left: 7px;
	bottom: 7px;
	border: 1px solid var(--color-black-60);
}

#contrast_style button:nth-of-type(1)::after {
	background: linear-gradient(to right, var(--color-black-60), var(--color-black-60) 50%, var(--color-white) 50%);
}

#contrast_style button:nth-of-type(2)::after {
	background: linear-gradient(to right, var(--color-white), var(--color-white) 50%, var(--color-black-60) 50%);
}

#contrast_style button:nth-of-type(3)::after {
	background-color: #ea5b0c !important;
	filter: unset !important;
	border: none;
}

form[id*="search"] {
	background: var(--color-white);
	display: inline-flex;
	width: 100%;
	box-shadow:
		1px 1px 0 0 var(--color-black-20),
		0 0 10px 0 var(--color-black-10);
	min-width: 270px;
}

@media (max-width: 575px) {
	#optionsbar {
		margin-top: 15px;
	}

	form[id*="search"] {
		max-width: 50%;
	}
}

@media (min-width: 992px) {
	form[id*="search"] {
		max-width: 270px;
	}
}

@media (max-width: 540px) {
	#search {
		display: none;
	}

	#search2 {
		width: 100%;
		max-width: 100%;
		margin-top: 30px;
	}
}

@media (min-width: 541px) {
	#searchWrapper {
		display: none;
	}
}

input[id*="search_input"] {
	color: var(--color-text-dark);
	font-size: 0.9375rem;
	font-style: normal;
	background: transparent;
	padding: 6px 14px;
	border: 0;
	width: 100%;
}

input[id*="search_submit"] {
	min-width: 48px;
	flex-shrink: 0;
	background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 -960 960 960" width="24px" fill="%23b74924"><path d="M784-120 532-372q-30 24-69 38t-83 14q-109 0-184.5-75.5T120-580q0-109 75.5-184.5T380-840q109 0 184.5 75.5T640-580q0 44-14 83t-38 69l252 252-56 56ZM380-400q75 0 127.5-52.5T560-580q0-75-52.5-127.5T380-760q-75 0-127.5 52.5T200-580q0 75 52.5 127.5T380-400Z"/></svg>');
	background-repeat: no-repeat;
	background-size: 35px auto;
	background-color: transparent;
	background-position: center;
	border: none;
	padding: 0;
	cursor: pointer;
	font-size: 0;
	border-right: 2px solid transparent;
	border-bottom: 2px solid transparent;
}

input[id*="search_submit"]:is(:hover, :focus) {
	background-color: var(--color-black-05);
}

input[id*="search_input"]::placeholder {
	opacity: 1 !important;
	font-style: italic !important;
	color: color-mix(in srgb, currentColor 100%, transparent) !important;
}

/* ========================================== NAVIGATION ======================================= */

/* burgermenu for tablet */

@media (max-width: 991px) {
	#burgerButton {
		font-size: 0;
		display: block;
		height: 50px;
		width: 60px;
		border-radius: 2px;
		padding: 6px 8px;
		cursor: pointer;
		background: var(--color-white);
		border: none !important;
		box-shadow: 0 0 4px 0 var(--color-black-08);
	}

	#burgerButton::before,
	#burgerButton::after,
	#burgerButtonInner {
		background-color: var(--color-primary);
		border-radius: 2px;
		position: absolute;
		width: 40px;
		height: 3px;
		left: 10px;
		transition:
			transform 200ms linear,
			opacity 200ms linear;
	}

	#burgerButton[aria-expanded="true"] #burgerButtonInner {
		transform: rotate(-45deg) translate(-6px, 6px);
	}

	#burgerButton[aria-expanded="true"]::before {
		opacity: 0;
	}

	#burgerButton[aria-expanded="true"]:after {
		transform: rotate(45deg) translate(-4px, -6px);
	}

	#burgerButtonInner {
		top: 16px;
	}

	#burgerButton::before {
		top: 24px;
		content: "";
	}

	#burgerButton::after {
		top: 32px;
		content: "";
	}

	.navbar-nav {
		margin: 20px 0;
	}

	.navbar-collapse {
		width: calc(100% - 90px);
		max-width: 300px;
		top: 0;
		background: var(--color-bg-light);
		position: fixed;
		left: -100%;
		bottom: 0;
		z-index: 100;
		height: auto !important;
		opacity: 0;
		pointer-events: none;
		visibility: hidden;
		overflow-y: auto;
		transition:
			left 300ms linear,
			opacity 300ms linear,
			box-shadow 600ms linear;
		box-shadow: 250px 0 50vw 50vw var(--color-white-0);
	}

	.navbar-collapse:is([aria-expanded="true"], .in) {
		left: 0;
		opacity: 1;
		pointer-events: auto;
		visibility: visible;
		box-shadow: 250px 0 50vw 50vw var(--color-black-60);
	}

	.navbar-header {
		position: fixed;
		top: 15px;
		right: 15px;
		z-index: 101;
	}

	.dropdown-toggle-button-wrapper {
		top: 6px;
	}

	.dropdown-toggle-button-wrapper2 {
		top: 4px;
	}
}

/* menu desktop */

@media (min-width: 992px) {
	nav.horizontally {
		background-color: var(--color-light);
	}

	.is-sticky nav.horizontally {
		box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.12);
	}

	nav.horizontally .navbar-nav {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
	}

	nav.horizontally .navbar-nav > li {
		flex-grow: 1;
	}

	nav.horizontally .navbar-nav ul {
		position: absolute;
		top: 100%;
		left: 0;
		z-index: 1000;
		display: block !important;
		pointer-events: none;
		opacity: 0;
		visibility: hidden;
		transition: opacity 300ms linear;
	}

	nav.horizontally .navbar-nav [class*="secondlevel"] > ul {
		left: 100%;
		top: 0;
	}

	nav.horizontally .navbar-nav li {
		position: relative;
	}

	nav.horizontally .navbar-nav li:is(.open:focus-within, :hover) > ul,
	nav.horizontally .navbar-nav li[class*="secondlevel"] > ul[style*="block"] {
		pointer-events: auto !important;
		opacity: 1 !important;
		visibility: visible;
	}

	nav.horizontally .navbar-nav li:is(:hover, :focus-within) > ul {
		z-index: 1003;
	}
}

/* toplevel */

nav.horizontally a[class*="toplevel"] {
	color: var(--color-text-dark);
	font-weight: 700;
	text-align: left;
	padding: 12px 15px;
	text-transform: uppercase;
	position: relative;
	font-size: 1.125rem;
	line-height: 1.2;
	text-decoration: none;
	hyphens: auto;
}

@media (max-width: 991px) {
	nav.horizontally li[class*="toplevel"] {
		border-bottom: 1px solid var(--color-white-80);
	}

	nav.horizontally a[class*="toplevel"].dropdown-toggle {
		padding-right: 35px;
	}
}

@media (min-width: 992px) {
	nav.horizontally a[class*="toplevel"] {
		padding: 20px;
		display: flex;
		align-content: center;
		align-items: center;
		justify-content: center;
		text-align: center;
		height: 100%;
	}

	nav.horizontally li[id*="toplevel"] + li {
		margin-left: 20px;
	}

	nav.horizontally li[id*="toplevel"] + li::before {
		content: "";
		width: 1px;
		top: 10px;
		bottom: 10px;
		position: absolute;
		display: block;
		left: -10px;
		background: var(--color-black-20);
	}
}

nav.horizontally a[class*="toplevel"]::before {
	content: "";
	width: 0;
	height: 4px;
	display: block;
	position: absolute;
	left: 50%;
	bottom: 0;
	background-color: var(--color-text-dark);
	transform: translateX(-50%);
	transition:
		opacity 300ms linear,
		width 300ms linear;
}

/* toplevel-over */

nav.horizontally li[class*="toplevel"]:is(:hover, :focus-within) > a,
nav.horizontally li[class*="toplevel"] > a:is(:hover, :focus),
nav.horizontally li[class*="toplevel"].open > a,
nav.horizontally li[class*="toplevel"].open > a:is(:hover, :focus),
nav.horizontally li[class*="toplevel"][class*="_over"] > a,
nav.horizontally li[class*="toplevel"][class*="_over"] > a:is(:hover, :focus) {
	color: var(--color-text-dark);
}

nav.horizontally li[class*="toplevel"]:is(:hover, :focus-within) > a::before,
nav.horizontally li[class*="toplevel"] > a:is(:hover, :focus)::before,
nav.horizontally li[class*="toplevel"].open > a::before,
nav.horizontally li[class*="toplevel"].open > a:is(:hover, :focus)::before,
nav.horizontally li[class*="toplevel"][class*="_over"] > a::before,
nav.horizontally li[class*="toplevel"][class*="_over"] > a:is(:hover, :focus)::before {
	opacity: 1;
	width: 90%;
}

/* secondlevel + thirdlevel dropdown-box */

nav.horizontally [class*="toplevel"] ul {
	background: var(--color-white-95);
	box-shadow: 0 0 10px 0 var(--color-black-10);
}

@media (max-width: 991px) {
	nav.horizontally [class*="toplevel"] > ul {
		padding: 10px 0;
	}
}

@media (min-width: 992px) {
	nav.horizontally [class*="toplevel"] ul {
		padding: 18px 40px;
		min-width: 310px;
	}

	nav.horizontally [class*="toplevel"] > ul {
		margin-top: 10px;
		left: 50%;
		transform: translate(-50%, 0);
	}

	nav.horizontally :is([class*="toplevel"], [class*="secondlevel"]) > ul::before {
		content: "";
		position: absolute;
		display: block;
	}

	nav.horizontally [class*="toplevel"] > ul::before {
		height: 10px;
		left: 0;
		right: 0;
		top: -10px;
	}

	nav.horizontally [class*="secondlevel"] > ul {
		margin-top: -18px;
		margin-left: 50px;
	}

	nav.horizontally [class*="secondlevel"] > ul::before {
		width: 90px;
		top: 0;
		bottom: 0;
		left: -50px;
	}
}

/* secondlevel + thirdlevel */

nav.horizontally a:is([class*="secondlevel"], [class*="thirdlevel"]) {
	color: var(--color-text-dark);
	font-weight: 700;
	text-align: center;
	padding: 10px 15px;
	text-transform: uppercase;
	font-size: 1rem;
	line-height: 1.2;
	text-decoration: none;
	hyphens: auto;
}

@media (max-width: 991px) {
	nav.horizontally a:is([class*="secondlevel"], [class*="thirdlevel"]) {
		text-align: left;
	}

	nav.horizontally a[class*="secondlevel"].dropdown-toggle2 {
		padding-right: 35px;
	}
}

nav.horizontally li:is([class*="secondlevel"], [class*="thirdlevel"]) + li:not(:nth-child(2)) {
	border-top: 1px solid var(--color-black-20);
}

nav.horizontally a:is([class*="secondlevel"], [class*="thirdlevel"])::before {
	content: "\203A \203A";
	display: inline-block;
	position: relative;
	bottom: 2px;
	position: absolute;
	left: 0;
	top: 8px;
	opacity: 0;
	transition: opacity 300ms linear;
}

/* secondlevel + thirdlevel over */

nav.horizontally li:is([class*="secondlevel"], [class*="thirdlevel"]):is(:hover, :focus-within) > a,
nav.horizontally li:is([class*="secondlevel"], [class*="thirdlevel"]) > a:is(:hover, :focus),
nav.horizontally li:is([class*="secondlevel"], [class*="thirdlevel"]).open > a,
nav.horizontally li:is([class*="secondlevel"], [class*="thirdlevel"]).open > a:is(:hover, :focus),
nav.horizontally li:is([class*="secondlevel"], [class*="thirdlevel"])[class*="_over"] > a,
nav.horizontally li:is([class*="secondlevel"], [class*="thirdlevel"])[class*="_over"] > a:is(:hover, :focus) {
	color: var(--color-primary);
}

nav.horizontally li:is([class*="secondlevel"], [class*="thirdlevel"]):is(:hover, :focus-within) > a::before,
nav.horizontally li:is([class*="secondlevel"], [class*="thirdlevel"]) > a:is(:hover, :focus)::before,
nav.horizontally li:is([class*="secondlevel"], [class*="thirdlevel"]).open > a::before,
nav.horizontally li:is([class*="secondlevel"], [class*="thirdlevel"]).open > a:is(:hover, :focus)::before,
nav.horizontally li:is([class*="secondlevel"], [class*="thirdlevel"])[class*="_over"] > a::before,
nav.horizontally li:is([class*="secondlevel"], [class*="thirdlevel"])[class*="_over"] > a:is(:hover, :focus)::before {
	opacity: 1;
}

/* ========================================== BANNER ========================================== */

#slider {
	max-height: clamp(300px, 42vw, 400px);
	overflow: hidden;
	position: relative;
}

@media (min-width: 992px) {
	body.index #slider {
		max-height: clamp(400px, 62vw, 600px);
	}

	#headerpic a.nivo-prevNav {
		left: 65px;
	}

	#headerpic a.nivo-nextNav {
		right: 65px;
	}

	.index #headerpic .nivo-controlNav {
		bottom: 115px;
	}
}

#headerpic {
	padding: 0;
	overflow: hidden;
	position: relative;
}

.slider-wrapper,
#slider {
	height: 100%;
}

.slider-mask {
	display: none;
}

/* ========================================== TABS ============================================= */

#tabs {
	padding-top: 30px;
}

@media (min-width: 992px) {
	#tabs {
		padding-top: 0;
		position: relative;
		z-index: 60;
		margin-top: -100px;
	}
}

#tabs > .row {
	row-gap: 30px;
}

#tabs .tab {
	border-radius: 20px;
	font-size: clamp(1.25rem, 2vw, 1.375rem);
	background: var(--tab-bg) var(--color-bg-light-trans);
	background-repeat: no-repeat;
	background-position: center right;
	padding: 40px;
	color: var(--color-text-dark);
}

#tabs .tab h3 {
	font-size: clamp(1.5rem, 2vw, 1.75rem);
	color: var(--color-text-dark);
	padding-bottom: 0;
	text-transform: none;
	margin: 0;
}

#tabs .tab h2 {
	font-size: clamp(1.5rem, 3vw, 2.625rem);
	padding-bottom: 0;
	text-transform: uppercase;
	color: var(--color-text-dark);
}

#tabs .tab,
#tabs .tab :is(h1, h2, h3, h4, h5, h6, .tabHeadline) {
	color: var(--color-text-dark);
}

#tabs .tab a {
	color: var(--color-text-dark);
	text-decoration: underline;
}

/* ========================================== BUTTON STYLES ==================================== */
.buttonStyle a:not(.has-image):not([rel]),
.tab_link_mehr a {
	font-size: 1rem;
	color: var(--color-text-dark);
	background: var(--color-white);
	border-radius: 30px;
	border: 1px solid var(--color-light);
	display: inline-block;
	padding: 8px 20px;
	text-decoration: none;
	font-weight: 400;
	transition:
		color 300ms ease-in-out,
		background 300ms ease-in-out;
}

.tab_link_mehr {
	text-align: center !important;
	margin-top: 20px;
}

#blog .tab_link_mehr {
	text-align: right !important;
}
.buttonStyle a:not(.has-image):not([rel]):is(:hover, :focus),
.tab_link_mehr a:is(:hover, :focus) {
	color: var(--color-text-dark);
	background: var(--color-light);
}

/* ========================================== CONTENT ========================================== */

.index main {
	background: var(--color-bg-light);
}

#content {
	text-align: left;
	padding-top: clamp(40px, 4vw, 60px);
	padding-bottom: clamp(40px, 7vw, 80px);
}

/* ========================================== HEADINGS ========================================= */

.h4link a:is(:link, :hover, :focus, :visited),
h6,
h5,
h4,
h3,
h2,
h1 {
	color: var(--color-primary);
	font-weight: 700;
	line-height: 1.2;
	font-family: "Source Sans 3", sans-serif;
}

.specialHeadline {
	margin-bottom: 30px;
	font-size: 1.25rem;
}

.specialHeadline .tabHeadline,
h1,
.h1,
.legacy_h1 {
	font-size: clamp(1.8rem, 4vw, 2.5rem);
}

h2,
.h2,
.legacy_h2 {
	font-size: clamp(1.625rem, 3.5vw, 2.25rem);
}

h3,
.h3,
.legacy_h3 {
	font-size: clamp(1.5625rem, 3vw, 2rem);
}

h4,
.h4,
.h4link a:is(:link, :hover, :focus, :visited) .legacy_h4 {
	font-size: clamp(1.5rem, 2.5vw, 1.75rem);
}

h5,
.h5,
.legacy_h5 {
	font-size: 1.5rem;
}

h6,
.h6,
.legacy_h6 {
	font-size: clamp(1.25rem, 2vw, 1.375rem);
}

/* ========================================== QUICK TABS ======================================= */

#quickTabs {
	position: relative;
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	margin-top: 60px;
}

#quickTabs > .row {
	row-gap: 30px;
}

#quickTabs .tabHeadline {
	font-size: clamp(1.25rem, 2vw, 1.475rem);
	text-transform: uppercase;
	text-align: center;
}

#quickTabs .template-page,
#quickTabs .template-page .row,
#quickTabs .template-page .col-xs-12,
#quickTabs .template-page .row,
#quickTabs .tabContent {
	position: static;
}

#quickTabs .tab {
	background-color: var(--color-white);
	height: 100%;
	min-height: 100%;
	box-shadow: 0 8px 30px -3px var(--color-black-10);
	border-radius: 20px;
	padding: 15px;
	font-size: 1.125rem;
	z-index: 13;
	position: relative;
	transition: transform 150ms ease-in-out;
}

@media (min-width: 992px) {
	#quickTabs .tab:has(a:focus-within),
	#quickTabs .tab:has(a):hover {
		transform: scale(1.05);
	}
}

#quickTabs .tab a {
	font-size: 0;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 12;
	background-color: transparent !important;
}

#quickTabs .tabHeadline::before {
	content: "";
	display: block;
	width: 90px;
	height: 90px;
	margin: 0 auto 15px auto;
	background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 -960 960 960" width="24px" fill="%23e36b03"><path d="M718.46-450v-60h144.62v60H718.46Zm45.69 269.23-115.69-86.77 36.46-47.84 115.69 86.76-36.46 47.85Zm-80.77-465.38L646.92-694l115.69-86.77 36.47 47.85-115.7 86.77ZM210-220.77v-156.15h-40.77q-29.92 0-51.11-21.2-21.2-21.19-21.2-51.11v-61.54q0-29.92 21.2-51.11 21.19-21.2 51.11-21.2h154.62L503.08-690v420L323.85-376.92H270v156.15h-60Zm233.08-155.84v-206.78l-102.62 60.31H169.23q-4.61 0-8.46 3.85-3.85 3.85-3.85 8.46v61.54q0 4.61 3.85 8.46 3.85 3.85 8.46 3.85h171.23l102.62 60.31Zm115.38 21.38v-249.54q23.54 21.31 37.92 53.69 14.39 32.39 14.39 71.08t-14.39 71.08q-14.38 32.38-37.92 53.69ZM300-480Z"/></svg>');
	background-size: contain;
	background-position: center;
	background-repeat: no-repeat;
}

#quickTabs .tab2 .tabHeadline::before {
	background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 -960 960 960" width="24px" fill="%23e36b03"><path d="M212.31-140Q182-140 161-161q-21-21-21-51.31v-535.38Q140-778 161-799q21-21 51.31-21h419.23L820-631.54v419.23Q820-182 799-161q-21 21-51.31 21H212.31Zm0-60h535.38q5.39 0 8.85-3.46t3.46-8.85V-600H600v-160H212.31q-5.39 0-8.85 3.46t-3.46 8.85v535.38q0 5.39 3.46 8.85t8.85 3.46ZM290-300h380v-60H290v60Zm0-300h190v-60H290v60Zm0 150h380v-60H290v60Zm-90-310v160-160V-200v-560Z"/></svg>');
	width: 95px;
}

#quickTabs .tab3 .tabHeadline::before {
	background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 -960 960 960" width="24px" fill="%23e36b03"><path d="M587.69-240q-38.54 0-65.42-26.88-26.88-26.89-26.88-65.43 0-38.54 26.88-65.42 26.88-26.88 65.42-26.88 38.54 0 65.43 26.88Q680-370.85 680-332.31q0 38.54-26.88 65.43Q626.23-240 587.69-240ZM212.31-100Q182-100 161-121q-21-21-21-51.31v-535.38Q140-738 161-759q21-21 51.31-21h55.38v-84.61h61.54V-780h303.08v-84.61h60V-780h55.38Q778-780 799-759q21 21 21 51.31v535.38Q820-142 799-121q-21 21-51.31 21H212.31Zm0-60h535.38q4.62 0 8.46-3.85 3.85-3.84 3.85-8.46v-375.38H200v375.38q0 4.62 3.85 8.46 3.84 3.85 8.46 3.85ZM200-607.69h560v-100q0-4.62-3.85-8.46-3.84-3.85-8.46-3.85H212.31q-4.62 0-8.46 3.85-3.85 3.84-3.85 8.46v100Zm0 0V-720v112.31Z"/></svg>');
	width: 75px;
}

#quickTabs .tab4 .tabHeadline::before {
	background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 -960 960 960" width="24px" fill="%23e36b03"><path d="M280-284.62q15.08 0 25.23-10.15T315.38-320q0-15.08-10.15-25.23T280-355.38q-15.08 0-25.23 10.15T244.62-320q0 15.08 10.15 25.23T280-284.62Zm-30-139.99h60V-670h-60v245.39ZM450-290h260v-60H450v60Zm0-160h260v-60H450v60Zm0-160h260v-60H450v60ZM172.31-140Q142-140 121-161q-21-21-21-51.31v-535.38Q100-778 121-799q21-21 51.31-21h615.38Q818-820 839-799q21 21 21 51.31v535.38Q860-182 839-161q-21 21-51.31 21H172.31Zm0-60h615.38q4.62 0 8.46-3.85 3.85-3.84 3.85-8.46v-535.38q0-4.62-3.85-8.46-3.84-3.85-8.46-3.85H172.31q-4.62 0-8.46 3.85-3.85 3.84-3.85 8.46v535.38q0 4.62 3.85 8.46 3.84 3.85 8.46 3.85ZM160-200v-560 560Z"/></svg>');
}

#quickTabs > .row {
	position: relative;
	top: -60px;
}

#quickTabs::before {
	content: "";
	background-color: var(--color-primary);
	opacity: 0.7;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
}

#quickTabs::after {
	content: "";
	background: url(../img/kringel-hell.png) no-repeat center / cover;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
}

/* ========================================== BLOG ============================================= */

#blog {
	padding: clamp(40px, 10vw, 90px) 0 clamp(80px, 10vw, 90px) 0;
	position: relative;
	z-index: 1;
	background: var(--color-white) url(../img/kringel.png) no-repeat bottom center / 100% auto;
}

@media (min-width: 992px) {
	#blog .tab {
		padding-right: clamp(30px, 4vw, 45px);
	}
}

#blog .tab_link_entries {
	display: flex;
	flex-wrap: wrap;
	row-gap: 30px;
	column-gap: 30px;
	margin-bottom: 30px;
}

#blog .tab_link_entry {
	position: relative;
	font-size: 1rem;
	padding: 218px 30px 30px 30px;
	background: var(--color-white);
	border-radius: 20px;
	box-shadow: 0 20px 40px 0 var(--color-black-12);
	border: none !important;
	overflow: hidden;
}

@media (min-width: 576px) {
	#blog .tab_link_entry {
		width: calc(50% - 15px);
	}
}

@media (min-width: 768px) {
	#blog .tab_link_entry {
		width: calc(33.33% - 20px);
	}
}

#blog .tab_link_entry .tab_preview_picture,
#blog .tab_link_entry::before {
	height: 180px;
	top: 0;
	left: 0;
	right: 0;
	display: block;
	overflow: hidden;
	position: absolute;
}

#blog .tab_link_entry .tab_preview_picture img {
	display: block;
	object-fit: cover;
	width: 100%;
	height: 100%;
	margin: 0;
}

#blog .tab_link_entry::before {
	content: "";
	background: var(--color-white) center / cover no-repeat;
	border-radius: 20px 20px 0 0;
}

#blog .tab_date {
	position: absolute;
	z-index: 1;
	top: 30px;
	right: 0;
	color: var(--color-text-dark);
	background: var(--color-light);
	font-size: 1.125rem;
	padding: 5px 21px 4px 21px;
	border-top-left-radius: 20px;
	border-bottom-left-radius: 20px;
}

#blog .tab_link_title {
	margin-bottom: 15px;
}

#blog .tab_link_title a {
	color: var(--color-text-dark);
	display: block;
	font-weight: 600;
	line-height: 1.2;
	font-size: 1.125rem;
}

#blog .tab_link_title a:not(:is(:hover, :focus)) {
	text-decoration: none;
}

#blog :is(.tab_link .tab_link_mehr, .tab_spacer) {
	display: none;
}

/* ========================================== FOOTER =========================================== */

footer {
	font-size: 1rem;
	position: relative;
}

#footLog {
	margin: 25px 0;
	background: var(--color-light);
}

#footerlogo {
	display: block;
	margin: -12px auto -20px auto;
}

#footer {
	position: relative;
	padding: 40px 0 clamp(40px, 4vw, 60px) 0;
}

:is(#footer, #innerfooter) > .row {
	row-gap: 30px;
}

@media (max-width: 991px) {
	#footerlogo {
		top: -150px;
	}

	#footerlogo img {
		max-width: 100px;
	}
}

#footer a {
	text-decoration: underline;
}

#footer .footerHeadline {
	font-size: 1.0625rem;
	text-transform: uppercase;
	margin-bottom: 6px;
}

#footer .footerHeadline::before {
	content: "";
	display: block;
	width: 70px;
	height: 70px;
	border-radius: 50%;
	background: var(--color-black-05);
	margin: 0 auto 15px auto;
	background-position: center;
	background-repeat: no-repeat;
	border: 1px solid var(--color-light);
}

#footer .tab1 .footerHeadline::before {
	background-image: url("../img/icon-fragen.png");
}

#footer .tab2 .footerHeadline::before {
	background-image: url("../img/icon-location.png");
}

#footer .tab3 .footerHeadline::before {
	background-image: url("../img/icon-mail.png");
}

#footer .tab4 .footerHeadline::before {
	background-image: url("../img/icon-zeit.png");
}

#innerfooter {
	background-color: var(--color-black-05);
	padding: 26px 0;
}

#innerfooter ul {
	padding: 0;
}

@media (min-width: 576px) {
	#innerfooter li {
		display: inline-block;
	}

	#innerfooter li + li {
		margin-left: clamp(20px, 3vw, 40px);
	}
}

#innerfooter a {
	color: var(--color-text-dark);
}

#innerfooter a:is(:hover, :focus) {
	color: var(--color-primary);
}

/* ========================================== VERNETZT ========================================= */

#vernetzt {
	gap: 18px;
	text-align: right;
	font-size: 0.875rem;
	color: var(--color-text-dark);
	line-height: 1.3;
	text-decoration: none;
}

#vernetzt span span {
	display: block;
}

/* ========================================== CONTRAST ========================================= */

#tabs .tab.contrast_dark_font,
#contrast_style.contrast_light_font button,
#logo.contrast_light_font img {
	background-color: var(--color-white) !important;
}

#search_submit.contrast_light_font {
   background-color: #fff !important;
}