:root {
	--ci_color: #0d61a2;
	--ci_color_10: #e7f0f6;
	--ci_color_20: #cee0ed;
	--ci_color_40: #9ec0da;
	--ci_color_80: #3d81b5;
	--fonts: 'Open Sans',Arial,sans-serif;
	--error_bg: #fdd;
	--success_bg: #dfd;
	--success_color: #2c7635;
	--bp_red: #bf0d0d;
	--link_hover_bright: #bf0d0d;
	--link_hover_dark: #e8ff3c;
	--logo_width: 346px;
	--icon_check: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M20.3 4.3 9 15.6l-5.3-5.3L1 13l8 8L23 7z'/%3E%3C/svg%3E");
	--icon_plus: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill-rule='evenodd' d='M12 1a11 11 0 1 0 0 22 11 11 0 1 0 0-22zm-1.5 5h3v4.5H18v3h-4.5V18h-3v-4.5H6v-3h4.5z'/%3E%3C/svg%3E");
	--icon_minus: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill-rule='evenodd' d='M12 1a11 11 0 1 0 0 22 11 11 0 1 0 0-22zM6 10.5h12v3H6z'/%3E%3C/svg%3E");
	--icon_extern: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M14 2h8v8h-2.5V6.3l-9.1 9.1-1.8-1.8 9.1-9.1H14zM4 5h7v2.5H4.5v12h12V13H19v7a1.5 1.5 0 0 1-1.5 1.5h-14A1.5 1.5 0 0 1 2 20V6.5A1.5 1.5 0 0 1 3.5 5z'/%3E%3C/svg%3E");
	--icon_chat: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 1.5A10.5 10.5 0 0 0 2.9 17.3L1.5 22.5l5.3-1.4A10.5 10.5 0 1 0 12 1.5zm0 2a8.5 8.5 0 1 1-4.4 15.8l-.4-.2-3 .8.8-2.9-.2-.4A8.5 8.5 0 0 1 12 3.5zM8.6 7.2c.3 0 .5 0 .7.5l.9 2c.1.2 0 .5-.1.7l-.6.7c-.1.2-.2.3 0 .6a7.6 7.6 0 0 0 3.6 3.1c.2.1.4.1.6-.1l.9-1.1c.2-.2.3-.2.6-.1l2 .9c.3.2.5.2.5.4.1.2.1 1-.2 1.8-.4.8-1.7 1.5-2.4 1.5-.6.1-1.3.3-4.3-1.2-3.2-1.6-4.6-5-4.7-5.2-.1-.2-1-1.4-1-2.7 0-1.3.7-1.9.9-2.2.2-.3.5-.4.8-.4z'/%3E%3C/svg%3E");
}

* {
	box-sizing: border-box;
}

html, body, div, span, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, img, b, i, ol, li, form, label,
table, caption, tbody, thead, tr, th, td, article, aside, details, figure, figcaption, footer, header, nav, section, summary, time {
	margin: 0;
	padding: 0;
	border: 0;
}

@font-face {
	font-family: 'Open Sans';
	font-style: normal;
	font-weight: 400;
	src: local('Open Sans Regular'),local(OpenSans-Regular),url(fonts/open-sans-v15-latin-regular.woff2) format("woff2"),url(fonts/open-sans-v15-latin-regular.woff) format("woff");
	font-display: swap;
}

@font-face {
	font-family: 'Open Sans';
	font-style: normal;
	font-weight: 700;
	src: local('Open Sans Bold'),local(OpenSans-Bold),url(fonts/open-sans-v15-latin-700.woff2) format("woff2"),url(fonts/open-sans-v15-latin-700.woff) format("woff");
	font-display: swap;
}

@font-face {
	font-family: 'Outfit';
	font-style: normal;
	font-weight: 100 900;
	src: url(fonts/outfit-variable-latin.woff2) format("woff2");
	font-display: swap;
}

ul {
	margin: 0;
}

body {
	color: #000;
	font-family: var(--fonts);
	font-size: 16px;
	line-height: 1.5;
	-webkit-text-size-adjust: 100%;
	text-size-adjust: 100%;
}

.bg_ci {
	background-color: var(--ci_color);
}

.bg_ci_10 {
	background-color: var(--ci_color_10);
}

.bg_red {
	background-color: var(--bp_red);
}

.bold {
	font-weight: 700;
}

.center {
	margin: 0 auto;
}

.aktuellerhinweis {
	background: var(--error_bg);
	border-left: 5px solid var(--bp_red);
	color: var(--bp_red);
	margin-bottom: 15px;
	padding: 15px;
}

figure {
	overflow: hidden;
	text-align: center;
}

figcaption {
	font-size: 14px;
	line-height: 1.5;
}

.filled {
	background-color: #fff;
}

footer {
	background: var(--ci_color);
	color: var(--ci_color_20);
	grid-column: 1/4;
	grid-row: 4/5;
}

footer h2 {
	color: #fff;
	font-size: 26px;
}

#footerschatten {
	background: url(pix/layout/schattenlinie01.png) no-repeat;
	background-size: contain;
	height: 20px;
	margin: 0 auto;
	max-width: 950px;
	width: 100%;
}

#grid_container {
	display: grid;
}

.hide {
	display: none;
}

hr {
	background-color: #ccc;
	border: 0;
	color: #ccc;
	height: 1px;
	margin: 0;
}

.info {
	background: var(--ci_color_10);
	border-left: 5px solid var(--ci_color);
	color: var(--ci_color);
	margin-bottom: 15px;
	padding: 15px;
}

.left {
	float: left;
}

.right, .right_small {
	float: right;
}

.right_small {
	margin: 5px 0 5px 5px;
}

.schatten {
	box-shadow: 0 0 10px rgba(0,0,0,0.25);
}

.small {
	font-size: 14px;
}

.success {
	background: var(--success_bg);
	border-left: 5px solid var(--success_color);
	color: var(--success_color);
	margin-bottom: 15px;
	padding: 15px;
}

.success::before {
	content: 'Vielen Dank, das hat geklappt!';
	display: block;
	font-weight: 700;
}

.text-center {
	text-align: center;
}

.text-white {
	color: #fff;
}

.pos_rel {
	position: relative;
}

.border {
	border: 1px solid;
}

.border_ci_10 {
	border-color: var(--ci_color_10);
}

.margin0 {
	margin: 0;
}

.padding {
	padding: 15px;
}

.padding10 {
	padding: 10px;
}

.procontra {
	display: flex;
}

.procontra .pro, .procontra .contra {
	background: var(--ci_color_10);
	padding-bottom: 10px;
	width: 50%;
}

.procontra .pro {
	margin-right: 10px;
}

.procontra .ueberschrift {
	background: var(--ci_color);
	color: #fff;
	font-weight: 700;
	padding: 5px 0;
	text-align: center;
	text-transform: uppercase;
}

.procontra .pro div:not(:first-of-type), .procontra .contra div:not(:first-of-type) {
	padding: 5px 8px 5px 40px;
}

.procontra .pro div:not(:first-of-type)::before, .procontra .contra div:not(:first-of-type)::before {
	background-color: currentColor;
	content: '';
	height: 22px;
	margin: 0 0 0 -31px;
	-webkit-mask: var(--icon_plus) center/contain no-repeat;
	mask: var(--icon_plus) center/contain no-repeat;
	position: absolute;
	width: 22px;
}

.procontra .pro div:not(:first-of-type)::before {
	color: var(--success_color);
}

.procontra .contra div:not(:first-of-type)::before {
	color: var(--bp_red);
	-webkit-mask-image: var(--icon_minus);
	mask-image: var(--icon_minus);
}

table {
	border-spacing: 0;
	table-layout: fixed;
	width: 100%;
}

td {
	vertical-align: top;
}

th {
	text-align: left;
	text-transform: uppercase;
}

table.zebra {
	border: 1px solid var(--ci_color_10);
}

table.zebra td, table.zebra th {
	font-size: 15px;
	padding: 5px 8px;
}

table.zebra th {
	background-color: var(--ci_color);
	color: #fff;
}

table.zebra tr:nth-child(even), ul.zebra li:nth-child(odd) {
	background-color: var(--ci_color_10);
}

table.zebra tr:hover {
	font-weight: 700;
}

h1, h2, h3, h4 {
	color: var(--ci_color);
	font-family: 'Outfit',Arial,sans-serif;
	font-weight: 700;
	line-height: 1.2;
	margin-bottom: 10px;
}

h1 {
	font-size: 36px;
}

h2 {
	font-size: 30px;
}

h3 {
	font-size: 24px;
}

h4 {
	font-size: 20px;
}

ol.kreise {
	counter-reset: kreis;
	list-style: none;
	margin: 15px 0 23px 50px;
}

ol.kreise li, ul.pro li {
	margin: 0 15px 15px;
	padding-top: 8px;
	position: relative;
}

ol.kreise li {
	counter-increment: kreis;
}

ol.kreise li::before, ul.pro li::before {
	--size: 40px;
	background: var(--ci_color_10);
	border-radius: 50%;
	color: var(--ci_color);
	content: counter(kreis);
	font-weight: 700;
	height: var(--size);
	left: calc(-1 * var(--size) - 10px);
	line-height: var(--size);
	position: absolute;
	text-align: center;
	top: 0;
	transition: transform .25s ease;
	width: var(--size);
}

ul.pro li::before {
	background: var(--success_bg) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%232c7635' d='M20.3 4.3 9 15.6l-5.3-5.3L1 13l8 8L23 7z'/%3E%3C/svg%3E") center/18px no-repeat;
	content: '';
}

ol.kreise li:hover::before, ul.pro li:hover::before, ul.check li:hover::before {
	transform: scale(1.4);
}

ul.zebra, ul.check, ul.pro {
	padding: 0;
}

ul.zebra li {
	display: block;
	padding: 5px 15px 5px 30px;
}

ul.zebra li::before {
	color: var(--ci_color);
	content: "\00BB\00a0\00a0";
	margin-left: -15px;
}

ul.check, ul.pro {
	list-style: none;
}

ul.check li {
	margin-left: 15px;
	padding: 0 0 15px 8px;
	position: relative;
}

ul.check li::before {
	background-color: var(--success_color);
	content: '';
	height: 14px;
	left: -15px;
	-webkit-mask: var(--icon_check) center/contain no-repeat;
	mask: var(--icon_check) center/contain no-repeat;
	position: absolute;
	top: 5px;
	transition: transform .25s ease;
	width: 14px;
}

ul.pro {
	margin: 15px 0 23px 50px;
}

.vergleichsbox_container {
	align-items: center;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	margin: 25px 0;
}

.vergleichsbox {
	background-color: #fff;
	box-shadow: 0 0 15px 0 rgba(0,0,0,0.5);
	flex: 1;
	margin: 10px;
	max-width: 280px;
	min-width: 200px;
	text-align: center;
	transition: all .3s;
}

.vergleichsbox_features {
	list-style-type: none;
	padding: 0;
}

.vergleichsbox_features li {
	padding: 12px 0;
}

.vergleichsbox_features li:not(:last-of-type) {
	border-bottom: 1px solid rgba(0,0,0,0.1);
}

.vergleichsbox_paketname {
	background: var(--ci_color);
	color: #fff;
	font-weight: 700;
	line-height: 40px;
	text-transform: uppercase;
}

.vergleichsbox sup {
	font-size: 22px;
}

.vergleichsbox_preis_bronze, .vergleichsbox_preis_gold, .vergleichsbox_preis_silber {
	font-size: 40px;
	font-weight: 700;
	text-transform: uppercase;
}

.vergleichsbox_preis_bronze {
	background: linear-gradient(to right,#c08552 0%,#f5d3c8 50%,#c08552 100%);
}

.vergleichsbox_preis_gold {
	background: linear-gradient(to right,#bf953f,#fcf6ba,#b38728);
}

.vergleichsbox_preis_silber {
	background: linear-gradient(to right,#ccc 0%,#eee 50%,#ccc 100%);
}

a:link, a:visited, a:hover, a:active {
	color: var(--ci_color);
}

a:hover {
	color: var(--link_hover_bright);
	text-decoration: none;
}

footer a:link, footer a:visited, footer a:hover, footer a:active {
	color: var(--ci_color_20);
	text-decoration: none;
}

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

footer .col3:not(:last-child) a:link, footer .col3:not(:last-child) a:visited {
	text-decoration: underline;
	text-decoration-color: rgba(255,255,255,0.35);
	text-underline-offset: 3px;
}

footer .col3:not(:last-child) a:hover {
	text-decoration-color: currentColor;
}

main a[href^="http"]::after {
	background-color: currentColor;
	content: '';
	display: inline-block;
	height: .75em;
	margin-left: .4em;
	-webkit-mask: var(--icon_extern) center/contain no-repeat;
	mask: var(--icon_extern) center/contain no-repeat;
	width: .75em;
}

#grid_container button, .button {
	background-color: #bc0d0d;
	background-image: linear-gradient(to bottom,#bc0d0d 0%,#8c0909 100%);
	border: 1px solid #8c0909;
	border-radius: 5px;
	box-shadow: inset 0 1px 0 #f96c6c;
	color: #fff;
	cursor: pointer;
	display: inline-block;
	font-family: var(--fonts);
	font-size: 15px;
	font-weight: 700;
	line-height: 34px;
	padding: 0 14px;
	text-decoration: none;
	white-space: nowrap;
}

button:hover, .button:hover {
	background-color: #009640;
	background-image: linear-gradient(to bottom,#009640 0%,#00622a 100%);
	border: 1px solid #00622a;
	box-shadow: inset 0 1px 0 #06c759;
}

a.button:link, a.button:visited, a.button:hover, a.button:active {
	color: #fff;
}

input[type="text"], input[type="email"], input[type="tel"], select, textarea {
	border: 1px solid #ccc;
	font-family: var(--fonts);
	font-size: 16px;
	margin: 0 0 5px;
	padding: 10px;
	width: 100%;
}

input[type="checkbox"], input[type="radio"] {
	height: 20px;
	position: relative;
	top: 3px;
	width: 20px;
}

textarea {
	height: 100px;
	max-width: 100%;
}

.badge_blue, .badge_red {
	height: 75px;
	overflow: hidden;
	position: absolute;
	right: -5px;
	text-align: right;
	top: -5px;
	width: 75px;
	z-index: 1;
}

.badge_blue {
	--badge: #0d61a2;
	--badge_dunkel: #0a4c80;
}

.badge_red {
	--badge: var(--bp_red);
	--badge_dunkel: #941010;
}

.badge_blue span, .badge_red span {
	background: linear-gradient(var(--badge) 0%,var(--badge_dunkel) 100%);
	box-shadow: 0 3px 10px -5px #000;
	color: #fff;
	display: block;
	font-size: 10px;
	font-weight: 700;
	line-height: 20px;
	position: absolute;
	right: -21px;
	text-align: center;
	text-transform: uppercase;
	top: 19px;
	transform: rotate(45deg);
	width: 100px;
}

.badge_blue span::before, .badge_blue span::after, .badge_red span::before, .badge_red span::after {
	border: 3px solid transparent;
	border-top-color: var(--badge);
	content: '';
	position: absolute;
	top: 100%;
	z-index: -1;
}

.badge_blue span::before, .badge_red span::before {
	border-left-color: var(--badge);
	left: 0;
}

.badge_blue span::after, .badge_red span::after {
	border-right-color: var(--badge);
	right: 0;
}

.skiplink {
	background: #fff;
	color: var(--ci_color);
	left: -9999px;
	padding: 10px 15px;
	position: absolute;
	top: 0;
	z-index: 2000;
}

.skiplink:focus {
	left: 10px;
	top: 10px;
}

@media only screen and (max-width: 767px) {
	.anchor {
		display: block;
		height: 70px;
		margin-top: -70px;
		visibility: hidden;
	}
	article {
		padding: 15px;
	}
	article figure {
		overflow: inherit;
	}
	article figure:not(.left), article figure:not(.right) {
		margin: 0 -30px;
		max-width: calc(100% + 60px);
	}
	article figure img {
		max-width: 100%;
	}
	.artikelbild {
		margin-left: -40%;
		width: 180%;
	}
	.badge_blue, .badge_red, .desktop {
		display: none;
	}
	.col3 {
		margin: 15px 0;
	}
	.left img, .right img {
		display: block;
		width: 100%;
	}
	figcaption {
		padding: 0 15px;
		text-align: center;
	}
	figure img {
		display: block;
		height: auto;
	}
	.left, .right {
		float: none;
		margin: 0 -30px 15px!important;
	}
	footer {
		padding: 0 15px;
		text-align: center;
	}
	#grid_container {
		grid-template-columns: 0 100% 0;
	}
	main {
		grid-column: 1/4;
		grid-row: 3/4;
	}
	.schatten {
		box-shadow: none;
	}
	a:link#whatsapp, a:visited#whatsapp, a:hover#whatsapp, a:active#whatsapp {
		background: var(--bp_red);
		border-radius: 10px;
		color: #fff;
		display: block;
		line-height: 44px;
		margin: 15px 0;
		padding: 0 15px;
		text-align: center;
		text-decoration: none;
	}
	a#whatsapp::before {
		background-color: currentColor;
		content: '';
		display: inline-block;
		height: 28px;
		margin-right: 8px;
		-webkit-mask: var(--icon_chat) center/contain no-repeat;
		mask: var(--icon_chat) center/contain no-repeat;
		vertical-align: -8px;
		width: 28px;
	}
	footer .col3:last-child a:first-of-type {
		border-top: 1px solid var(--ci_color_80);
	}
	footer .col3:last-child a:not(:last-of-type) {
		border-bottom: 1px solid var(--ci_color_80);
	}
	footer .col3:last-child a:link, footer .col3:last-child a:visited, footer .col3:last-child a:hover, footer .col3:last-child a:active {
		display: block;
		line-height: 44px;
	}
	.handyticket {
		display: block;
		margin: 15px auto;
		width: 135px;
	}
	.padding_handyticket {
		padding: 15px;
	}
}

@media only screen and (min-width: 768px) {
	article {
		padding: 6px 10px 25px;
	}
	aside {
		width: 300px;
	}
	.col3 {
		width: calc(100% / 3 - 10px);
	}
	.col4_span3 {
		width: calc(100% / 4 * 3 - 4px);
	}
	.colcontainer {
		display: flex;
		justify-content: space-between;
	}
	.colcontainer img {
		display: block;
	}
	footer .col3 {
		width: calc(100% / 3 - 20px);
	}
	#grid_container {
		grid-template-columns: minmax(15px,1fr) minmax(min-content,1200px) minmax(15px,1fr);
		grid-template-rows: 64px 44px auto;
	}
	img {
		display: block;
		height: auto;
		max-width: 100%;
	}
	.left {
		margin: 5px 15px 15px 0;
	}
	main {
		grid-column: 2/3;
		grid-row: 3/4;
		min-height: calc(100vh - 370px);
		padding: 25px 0;
	}
	.mobile {
		display: none;
	}
	.right {
		margin: 5px 0 15px 15px;
	}
	.vergleichsbox:nth-child(2) {
		box-shadow: 0 0 15px 0 rgba(0,0,0,0.5);
		transform: scale(1.15);
	}
	.vergleichsbox:nth-child(2):hover {
		box-shadow: 0 0 20px 0 rgba(0,0,0,0.5);
		transform: scale(1.2);
	}
	a:link#whatsapp, a:visited#whatsapp, a:hover#whatsapp, a:active#whatsapp {
		display: none;
	}
	.handyticket {
		left: 35px;
		position: absolute;
		top: 50%;
		transform: translateY(-50%);
	}
	.padding_handyticket {
		padding: 15px 15px 15px 236px;
	}
}

@media only screen and (min-width: 985px) {
	#footercontent {
		margin: 0 auto;
		max-width: 1200px;
		width: 100%;
	}
}

@media only screen and (min-width: 768px) and (max-width: 1230px) {
	#footercontent {
		padding: 0 15px;
	}
}

@media only screen and (min-width: 1000px) {
	body {
		background: url(pix/layout/bg01.jpg) 0 108px no-repeat;
		background-size: 100%;
	}
}

@media only screen and (max-width: 1229px) {
	.mobilecenter {
		text-align: center;
	}
}

header {
	background: #fff;
	border-bottom: 1px solid #e3eaf0;
	grid-column: 1/4;
	grid-row: 1/2;
	height: 64px;
	position: relative;
	transition: box-shadow .25s;
	z-index: 1000;
}

.kopf_innen {
	align-items: center;
	display: flex;
	gap: 20px;
	height: 100%;
	margin: 0 auto;
	max-width: 1200px;
}

#logo {
	flex: 0 1 var(--logo_width);
	min-width: 0;
}

#logo a {
	display: block;
}

#logo img {
	display: block;
	height: auto;
	max-width: 100%;
	transition: opacity .2s;
	width: var(--logo_width);
}

#logo a:hover img {
	opacity: .85;
}

#claim_mitte {
	color: #5b6b78;
	flex: 1 1 auto;
	font-family: 'Outfit',Arial,sans-serif;
	font-size: 17px;
	font-weight: 500;
	overflow: hidden;
	text-align: center;
	text-overflow: ellipsis;
	white-space: nowrap;
}

#claim_rechts {
	flex: 0 0 auto;
}

#claim_rechts .button {
	align-items: center;
	display: inline-flex;
	gap: 8px;
	line-height: 40px;
	padding: 0 18px;
}

.kopf_ticket svg {
	height: 18px;
	width: 18px;
}

#grid_container button.kopf_burger {
	display: none;
}

.navdesktop {
	background: var(--ci_color);
	grid-column: 1/4;
	grid-row: 2/3;
	height: 44px;
}

.navdesktop ul {
	align-items: stretch;
	display: flex;
	height: 100%;
	justify-content: space-between;
	list-style: none;
	margin: 0 auto;
	max-width: 1200px;
	padding: 0;
}

.navdesktop li {
	display: flex;
}

.navdesktop a:link, .navdesktop a:visited, .navdesktop a:hover, .navdesktop a:active {
	align-items: center;
	color: #fff;
	display: flex;
	font-family: 'Outfit',Arial,sans-serif;
	font-size: 16px;
	font-weight: 500;
	padding: 0 12px;
	position: relative;
	text-decoration: none;
	white-space: nowrap;
}

.navdesktop a::after {
	background: #fff;
	bottom: 8px;
	content: '';
	height: 2px;
	left: 12px;
	position: absolute;
	right: 12px;
	transform: scaleX(0);
	transition: transform .2s;
}

.navdesktop a:hover::after, .navdesktop a:focus-visible::after {
	transform: scaleX(1);
}

.navdesktop a[aria-current="page"] {
	background: rgba(0,0,0,0.15);
}

.navdesktop a[aria-current="page"]::after {
	background: var(--link_hover_dark);
	transform: scaleX(1);
}

.navdesktop a:focus-visible {
	outline: 2px solid #fff;
	outline-offset: -4px;
}

.nav_haus {
	height: 17px;
	margin: 0 7px 0 0;
	width: 17px;
}

.menue_panel {
	display: none;
}

@media only screen and (min-width: 985px) and (max-width: 1230px) {
	.kopf_innen, .navdesktop ul {
		padding: 0 15px;
	}
}

@media only screen and (min-width: 985px) and (max-width: 1150px) {
	.navdesktop a:link, .navdesktop a:visited, .navdesktop a:hover, .navdesktop a:active {
		font-size: 15px;
		padding: 0 7px;
	}
	.navdesktop a::after {
		left: 7px;
		right: 7px;
	}
}

@media only screen and (max-width: 984px) {
	#grid_container {
		grid-template-rows: 60px 0 auto;
	}
	header {
		height: 60px;
		position: sticky;
		top: 0;
	}
	header.gescrollt {
		border-bottom-color: transparent;
		box-shadow: 0 4px 18px rgba(10,61,102,0.12);
	}
	.kopf_innen {
		gap: 10px;
		padding: 0 8px 0 15px;
	}
	#claim_mitte, .navdesktop {
		display: none;
	}
	#logo {
		flex: 1 1 auto;
	}
	#logo img {
		width: 230px;
	}
	#claim_rechts .button {
		font-size: 14px;
		gap: 6px;
		line-height: 36px;
		padding: 0 12px;
	}
	.kopf_ticket svg {
		height: 17px;
		width: 17px;
	}
	#grid_container button.kopf_burger, button.menue_zu {
		align-items: center;
		background: none;
		border: 0;
		border-radius: 50%;
		box-shadow: none;
		cursor: pointer;
		display: inline-flex;
		flex: 0 0 44px;
		flex-direction: column;
		gap: 6px;
		height: 44px;
		justify-content: center;
		padding: 0;
		width: 44px;
	}
	#grid_container button.kopf_burger:hover, button.menue_zu:hover {
		background: var(--ci_color_10);
		border: 0;
		box-shadow: none;
	}
	#grid_container button.kopf_burger:focus-visible, button.menue_zu:focus-visible {
		outline: 2px solid var(--ci_color);
		outline-offset: 2px;
	}
	.kopf_burger span, .menue_zu span {
		background: #0a3d66;
		border-radius: 2px;
		display: block;
		height: 2px;
		width: 22px;
	}
	.kopf_burger span:nth-child(2) {
		margin-left: 8px;
		width: 14px;
	}
	.menue_zu span:nth-child(1) {
		transform: translateY(4px) rotate(45deg);
	}
	.menue_zu span:nth-child(2) {
		transform: translateY(-4px) rotate(-45deg);
	}
	html.menue_offen {
		overflow: hidden;
	}
	.menue_panel {
		background: #fff;
		display: flex;
		flex-direction: column;
		inset: 0;
		opacity: 0;
		position: fixed;
		transform: translateY(-12px);
		transition: opacity .25s ease, transform .25s ease, visibility 0s .25s;
		visibility: hidden;
		z-index: 1200;
	}
	html.menue_offen .menue_panel {
		opacity: 1;
		transform: none;
		transition: opacity .25s ease, transform .25s ease;
		visibility: visible;
	}
	.menue_kopf {
		align-items: center;
		border-bottom: 1px solid #e3eaf0;
		display: flex;
		flex: 0 0 60px;
		justify-content: space-between;
		padding: 0 8px 0 15px;
	}
	.menue_logo img {
		display: block;
		height: auto;
		width: 230px;
	}
	.menue_inhalt {
		flex: 1 1 auto;
		overflow-y: auto;
		overscroll-behavior: contain;
		padding: 12px 24px 24px;
	}
	.menue_liste {
		list-style: none;
		margin: 0;
		padding: 0;
	}
	.menue_liste li {
		border-bottom: 1px solid #edf2f6;
		opacity: 0;
		transform: translateY(8px);
		transition: opacity .3s ease, transform .3s ease;
	}
	html.menue_offen .menue_liste li {
		opacity: 1;
		transform: none;
		transition-delay: calc(60ms + var(--i, 0) * 35ms);
	}
	.menue_liste a:link, .menue_liste a:visited {
		align-items: center;
		color: #0a3d66;
		display: flex;
		font-family: 'Outfit',Arial,sans-serif;
		font-size: 22px;
		font-weight: 500;
		gap: 12px;
		justify-content: space-between;
		padding: 13px 0;
		text-decoration: none;
	}
	.menue_liste a::after {
		color: #9fb3c4;
		content: '\2192';
		font-size: 20px;
		transition: transform .2s, color .2s;
	}
	.menue_liste a:hover::after {
		color: var(--ci_color);
		transform: translateX(4px);
	}
	.menue_liste a[aria-current="page"] {
		color: var(--ci_color);
		font-weight: 700;
	}
	.menue_liste a[aria-current="page"]::after {
		background: var(--ci_color);
		border-radius: 50%;
		content: '';
		height: 8px;
		width: 8px;
	}
	.menue_kontakt {
		color: #5b6b78;
		font-size: 14px;
		margin: 22px 0 6px;
	}
	.menue_meta {
		display: flex;
		gap: 18px;
		list-style: none;
		margin: 0;
		padding: 0;
	}
	.menue_meta a:link, .menue_meta a:visited {
		color: #5b6b78;
		font-size: 14px;
	}
	.menue_fuss {
		background: #fff;
		border-top: 1px solid #e3eaf0;
		box-shadow: 0 -6px 20px rgba(10,61,102,0.06);
		padding: 14px 24px calc(14px + env(safe-area-inset-bottom));
		text-align: center;
	}
	.menue_panel a.menue_ticket {
		align-items: center;
		display: flex;
		font-size: 18px;
		gap: 10px;
		justify-content: center;
		line-height: 52px;
		width: 100%;
	}
	.menue_ticket svg {
		height: 22px;
		width: 22px;
	}
	.menue_vorteile {
		color: #5b6b78;
		display: block;
		font-size: 13px;
		margin-top: 8px;
	}
}

@media only screen and (max-width: 400px) {
	.kopf_ticket_lang {
		display: none;
	}
	#logo img {
		width: 100%;
	}
}

.faq_eintrag {
	background: #fff;
	border: 1px solid #dbe6ef;
	margin-bottom: 10px;
	transition: border-color .2s, box-shadow .2s;
}

.faq_eintrag[open] {
	border-color: var(--ci_color_40);
	box-shadow: 0 4px 16px rgba(10,61,102,0.08);
}

.faq_eintrag summary {
	align-items: center;
	cursor: pointer;
	display: flex;
	gap: 16px;
	justify-content: space-between;
	list-style: none;
	padding: 14px 18px;
	transition: background-color .2s;
}

.faq_eintrag summary::-webkit-details-marker {
	display: none;
}

.faq_eintrag summary::after {
	color: var(--ci_color);
	content: '+';
	flex: none;
	font-family: 'Outfit',Arial,sans-serif;
	font-size: 30px;
	font-weight: 300;
	line-height: 1;
	transition: transform .2s;
}

.faq_eintrag[open] summary::after {
	transform: rotate(45deg);
}

.faq_eintrag summary:hover {
	background: var(--ci_color_10);
}

.faq_eintrag summary:focus-visible {
	outline: 2px solid var(--ci_color);
	outline-offset: -2px;
}

h3.faq_frage {
	font-size: 19px;
	margin: 0;
}

.faq_antwort {
	padding: 2px 18px 16px;
}

@media (prefers-reduced-motion: reduce) {
	header, .menue_panel, .menue_liste li, .menue_liste a::after, .navdesktop a::after, .faq_eintrag, .faq_eintrag summary, .faq_eintrag summary::after, ol.kreise li::before, ul.pro li::before, ul.check li::before {
		transition: none;
	}
}
