@media (min-width: 769px) and (max-width: 991px) {

	body {
		-moz-hyphens: auto !important;
		-o-hyphens: auto !important;
		-webkit-hyphens: auto !important;
		-ms-hyphens: auto !important;
		hyphens: auto !important;
	}

	.wrapper {
		min-height: 100%;
		display: grid;
			grid-template-columns: 1fr;
			grid-template-rows: auto auto 1fr auto;
	}

		header {
			z-index: 200;
			grid-column: 1 / 2;
			grid-row: 1 / 2;
			background: #fff;
			position: sticky;
			top: 0;
			display: grid;
				grid-template-columns: 1fr;
				grid-template-rows: auto auto;
		}

				.header-top {
					grid-column: 1 / 2;
					grid-row: 1 / 2;
					background: #fff;
						display: grid;
						grid-template-columns: 1fr;
						grid-template-rows: auto;
				}

					.header-top-inner {
						grid-column: 1 / 2;
						grid-row: 1 / 2;
						background: #fff;
						padding: 5px 0 5px 0;
					}

						.header-inner-top-right {
							width: 100%;
							text-align: right;
							padding-right: 10px;
						}

				.header-bottom {
					grid-column: 1 / 2;
					grid-row: 2 / 3;
					background: #fff;
						display: grid;
						grid-template-columns: 1fr;
						grid-template-rows: auto;
				}

					.header-bottom-inner {
						grid-column: 1 / 2;
						grid-row: 2 / 3;
						background: #fff;
							display: grid;
							grid-template-columns: 1fr;
							grid-template-rows: auto auto;
					}

						.header-bottom-logo {
							grid-column: 1 / 2;
							grid-row: 1 / 2;
						}

							.main-logo {
								margin: -20px 0 20px 10px;
								width: 133px;
							}

						.header-bottom-menu {
							display: none;
						}

						.header-bottom-menu-rwd-burger {
							position: absolute;
							right: 10px;
							top: 70px;
							z-index: 10001;
						}

.header-bottom-menu-rwd {
	grid-column: 1 / 2;
	grid-row: 2 / 3;
	/*margin-top: -146px;*/
	background: transparent;
	z-index: 10000;
}

#nav-top {
	display: none;
	background: #2A4194;
	padding: 20px 0 30px 0;
	width: 100%;
}

	.nav-top-left {
		float: left;
		width: 50%;
		height: auto;
	}

	.nav-top-right {
		float: left;
		width: 50%;
		text-align: right;
		padding: 27px 10px 0 0;
	}

	.nav-top-right img {
		display: inline !important;
	}

#nav-bottom {
	display: none;
	background: #2A4194;
	padding: 20px;
	text-align: center;
}



			.slider-head-pic {
				background-size:cover;background-color:#FFCC01;background-position:50% 50%;background-repeat:no-repeat;
				grid-column: 1 / 2;
				grid-row: 2 / 3;
				border-bottom: 20px solid #FFCC01;
					display: grid;
					grid-template-columns: 1fr;
					grid-template-rows: 530px;
					overflow: hidden;
			}

				.slider-head-pic-inner {
					grid-column: 1 / 2;
					grid-row: 1 / 2;
					background: transparent;
						display: grid;
						grid-template-columns: 1fr;
						grid-template-rows: 1fr;
				}

					.slider-head-pic-inner-left {
						grid-column: 1 / 2;
						grid-row: 1 / 2;
						background: transparent;
						padding: 40px 0 0 0;
						text-align: center;
display: none;
					}

						h1.headpic-h1, .headpic-caption {
							font-family:'Source Sans 3',arial,sans-serif;
							font-size: 2.3em;
							font-weight: 800;
							line-height: 1em;
							color: #fff;
							margin: 0;
							text-transform: none;
							/*text-shadow: 2px 2px 12px #000000;*/
							text-align: center;
							/*hyphens: auto;*/
						}

					.slider-head-pic-inner-right {
						grid-column: 1 / 2;
						grid-row: 1 / 2;
						background: transparent;
						padding: 20px 0 20px 0;
						margin: auto;
							display: grid;
							grid-template-columns: 1fr 340px 1fr;
							grid-template-rows: auto;
							align-items: start;
					}


/* Fahrplanauskunft Formular */
.box-fahrplanauskunft {
	grid-column: 2 / 3;
	grid-row: 1 / 2;
	border: 1px solid #ddd;
	background: #fff;
	padding: 15px 20px 10px 20px;
}

	.fahrplanauskunft-row {
		margin: 0 0 10px 0;
			display: grid;
			grid-template-columns: calc(40%  - 20px) 20px 60%;
			grid-template-rows: auto;
	}

		.fahrplanauskunft-row-complete {
			grid-column: 1 / 4;
		}

		.fahrplanauskunft-row-left {
			grid-column: 1 / 2;
		}

		.fahrplanauskunft-row-right {
			grid-column: 3 / 4;
		}

			.fahrplanauskunft-label {
				margin: 0;
				font-family: 'Source Sans 3',arial,sans-serif;
				color: #2A4194 !important;
				font-size: 1em;
				line-height: 1.6em;
				display: block;
				font-weight: 600;
			}

				.fahrplanauskunft-ziel-left {
					width:88%;float:left;
				}

				.fahrplanauskunft-ziel-right {
					width:12%;float:left;text-align:center;
				}

			.fahrplanauskunft-input {
				width: 100%;
				padding: 8px 15px;
				outline: 0;
				border-radius: 0;
				background: #F0F1F1;
				color: #2A4194 !important;
				font-size: 1em;
				appearance: none;
				-webkit-appearance: none;
				-moz-appearance: none;
				resize: none;
				border: 1px solid #2A4194;
				font-family: 'Source Sans 3',arial,sans-serif;
			}

			.fahrplanauskunft-input:hover, .fahrplanauskunft-input:focus {
				background: #fff;
				color: #2A4194 !important;
				border: 1px solid #2A4194;
				outline: 2px solid #2A4194 !important;
			}

			.fahrplanauskunft-changebutton {
				width: 36px;
				height: 40px;
				background-color: #F0F1F1;
				background-image: url(../images/icon-fpa-ziel.svg);
				background-repeat: no-repeat;
				background-position: 50% 50%;
				background-size: 16px;
				cursor:pointer;
				border-top: 1px solid #2A4194;
				border-right: 1px solid #2A4194;
				border-bottom: 1px solid #2A4194;
				padding: 8px 10px 8px 10px !important;
			}

			.fahrplanauskunft-changebutton:hover, .fahrplanauskunft-changebutton:focus {
				background-color: #fff;
				border: 1px solid #2A4194;
				outline: 2px solid #2A4194 !important;
			}

			.fahrplanauskunft-changebutton:active, .fahrplanauskunft-changebutton:focus {
				border: 1px solid #2A4194;
				outline: 2px solid #2A4194 !important;
			}

				.fahrplanauskunft-row-complete > input[type="submit"], .button-submit {
					width:100%;
					font-size: 1.3em !important;
				}

														.slider-head-pic-inner-box {
															margin: 30px auto;
															padding: 20px;
															width: 60%;
															background-color: rgba(255,255,255,.7);
															box-shadow: 0 3px 10px rgb(0 0 0 / 0.6);
															text-align: center;
														}


			.main-content-classic {
				z-index: 100;
				grid-column: 1 / 2;
				grid-row: 3 / 4;
				background: #fff;
				padding: 60px 20px 60px 20px;
					display: grid;
					grid-template-columns: 1fr;
					grid-template-rows: 1fr;
					align-self: start;
			}

				.content-type-1 {
					grid-column: 1 / 2;
					grid-row: auto;
					background: #fff;
				}

					.content-type-1-empty {
						grid-column: 1 / 2;
						grid-row: auto;
						height: auto;
					}

				.content-type-2 {
					grid-column: 1 / 2;
					grid-row: auto;
					background: #fff;
				}

				.content-type-3 {
					grid-column: 1 / 2;
					grid-row: auto;
					background: #fff;
						display: grid;
						grid-template-columns: 1fr 940px 1fr;
						grid-template-rows: 1fr;
				}

					.content-type-3-inner {
						grid-column: 2 / 3;
					}


		footer {
			grid-column: 1 / 2;
			grid-row: 4 / 5;
background: #2A4194;
			display: grid;
				grid-template-columns: 1fr;
				grid-template-rows: auto;
		}

			.footer-inner {
				grid-column: 1 / 2;
				grid-row: 1 / 2;
			}

.footer-logo {
	width: 122px;
	margin: 0 0 39px 0;
}

				.footer-inner-top {
					padding: 60px 20px 60px 20px;
						display: grid;
						grid-template-columns: 50% 50%;
						grid-template-rows: auto auto auto;
				}

					.footer-inner-top-1 {
						grid-column: 1 / 3;
						grid-row: 3 / 4;
					}

					.footer-inner-top-2 {
						grid-column: 1 / 2;
						grid-row: 1 / 2;
					}

					.footer-inner-top-3 {
						grid-column: 2 / 3;
						grid-row: 2 / 3;
					}

					.footer-inner-top-4 {
						grid-column: 1 / 2;
						grid-row: 2 / 3;
					}

					.footer-inner-top-5 {
						grid-column: 2 / 3;
						grid-row: 1 / 2;
					}

						.footer-caption {
							padding: 57px 0 21px 0 !important;
						}



			/* Teaserboxen Startseite */
			.teaserboxen {
				display: grid;
				grid-column-gap: 20px;
				grid-template-columns: 1fr 1fr 1fr;
				grid-template-rows: auto;
			}

				.teaserboxen a:link, .teaserboxen a:visited, .teaserboxen a:active {
					color: inherit;
					text-decoration: inherit;
					border: 5px solid #fff;
				}

				.teaserboxen a:focus, .teaserboxen a:hover {
					outline: 2px solid #2A4194;
					border: 5px solid #fff;
				}

					.teaserbox-left a {
						background-image:  url(../images/bg-teaserbox-tickets.svg);
						background-size: 40%;
						background-repeat: no-repeat;
						background-position: 96% 106%;
						background-color: #FFCC01;
						border: 2px solid #FFCC01;
						padding: 20px;
						grid-column: 1 / 2;
						grid-row: 1 / 2;
							display: grid;
							grid-template-columns: 1fr;
							grid-template-rows: 65px 100px 30px;
					}

					.teaserbox-left a:hover {
						background-image:  url(../images/bg-teaserbox-tickets.svg);
						background-size: 40%;
						background-repeat: no-repeat;
						background-position: 96% 106%;
						background-color: #FFCC01;
					}

						.teaserbox-inner-top {
							grid-column: 1 / 2;
							grid-row: 1 / 2;
							align-self: start;
							font-family: 'Source Sans 3',arial,sans-serif;
							font-size: 1em;
							line-height: 1em;
							font-weight: 800;

						}

						.teaserbox-inner-middle {
							grid-column: 1 / 2;
							grid-row: 2 / 3;
							align-self: start;
							font-family: 'Source Sans 3',arial,sans-serif;
							font-size: 2em;
							font-weight: 800;
							color:#fff;
							text-transform: uppercase;
						}

						.teaserbox-inner-bottom {
							grid-column: 1 / 2;
							grid-row: 3 / 4;
							align-self: end;
						}

							.teaserbox-bottom-text-blue {
								font-family: 'Source Sans 3',arial,sans-serif;
								font-size: .8em;
								font-weight: 800;
								color: #2A4194;
								text-decoration: none;
								border-bottom: 3px solid #2A4194;
							}

							.teaserbox-bottom-text-blue:hover {
								border-bottom: 3px solid #2A4194;
							}

							.teaserbox-bottom-text-white {
								font-family: 'Source Sans 3',arial,sans-serif;
								font-size: .8em;
								font-weight: 800;
								color: #fff;
								text-decoration: none;
								border-bottom: 3px solid #fff;
							}

							.teaserbox-bottom-text-white:hover {
								border-bottom: 3px solid #fff;
							}

					.teaserbox-center a {
						background-image: url(../images/bg-teaserbox-verkehr.svg);
						background-size: 35%;
						background-repeat: no-repeat;
						background-position: 110% 90%;
						background-color: #2A4194;
						border: 2px solid #2A4194;
						padding: 20px;
						grid-column: 2 / 3;
						grid-row: 1 / 2;
							display: grid;
							grid-template-columns: 1fr;
							grid-template-rows: 65px 100px 30px;
					}

					.teaserbox-center a:hover {
						background-image: url(../images/bg-teaserbox-verkehr.svg);
						background-size: 35%;
						background-repeat: no-repeat;
						background-position: 110% 90%;
						background-color: #2A4194;
					}

					.teaserbox-right a {
						background-image: url(../images/bg-teaserbox-karriere.svg);
						background-size: 50%;
						background-repeat: no-repeat;
						background-position: 110% 107%;
						background-color: #DCE5F2;
						border: 2px solid #2A4194;
						padding: 20px;
						grid-column: 3 / 4;
						grid-row: 1 / 2;
							display: grid;
							grid-template-columns: 1fr;
							grid-template-rows: 65px 100px 30px;
					}

					.teaserbox-right a:hover{
						background-image: url(../images/bg-teaserbox-karriere.svg);
						background-size: 50%;
						background-repeat: no-repeat;
						background-position: 110% 107%;
						background-color: #DCE5F2;
					}
					/* Ende Teaserboxen */




		.template-grid-2 {
			grid-column: 1 / 2;
				display: grid;
				grid-column-gap: 20px;
				grid-template-columns: 1fr 1fr;
				grid-template-rows: auto auto;
		}

			.template-grid-2-column-1-top {
				background: #fff;
				grid-column: 1 / 2;
			}

			.template-grid-2-column-2-top {
				background: #fff;
				grid-column: 2 / 3;
			}

			.template-grid-2-column-1-bottom {
				background: #fff;
				grid-column: 1 / 2;
				margin-top: 20px;
			}

			.template-grid-2-column-2-bottom {
				background: #fff;
				grid-column: 2 / 3;
				margin-top: 20px;
			}


		.template-grid-3 {
			grid-column: 1 / 2;
				display: grid;
				grid-column-gap: 20px;
				grid-template-columns: 1fr 1fr 1fr;
				grid-template-rows: auto auto;
		}

			.template-grid-3-column-1-top {
				background: #fff;
				grid-column: 1 / 2;
			}

			.template-grid-3-column-2-top {
				background: #fff;
				grid-column: 2 / 3;
			}

			.template-grid-3-column-3-top {
				background: #fff;
				grid-column: 3 / 4;
			}

			.template-grid-3-column-1-bottom {
				background: #fff;
				grid-column: 1 / 2;
				margin-top: 20px;
			}

			.template-grid-3-column-2-bottom {
				background: #fff;
				grid-column: 2 / 3;
				margin-top: 20px;
			}

			.template-grid-3-column-3-bottom {
				background: #fff;
				grid-column: 3 / 4;
				margin-top: 20px;
			}


		.template-grid-4 {
			grid-column: 1 / 2;
				display: grid;
				grid-column-gap: 20px;
				grid-template-columns: 1fr 1fr 1fr 1fr;
				grid-template-rows: auto auto;
		}

			.template-grid-4-column-1-top {
				background: #fff;
				grid-column: 1 / 2;
			}

			.template-grid-4-column-2-top {
				background: #fff;
				grid-column: 2 / 3;
			}

			.template-grid-4-column-3-top {
				background: #fff;
				grid-column: 3 / 4;
			}

			.template-grid-4-column-4-top {
				background: #fff;
				grid-column: 4 / 5;
			}

			.template-grid-4-column-1-bottom {
				background: #fff;
				grid-column: 1 / 2;
				margin-top: 20px;
			}

			.template-grid-4-column-2-bottom {
				background: #fff;
				grid-column: 2 / 3;
				margin-top: 20px;
			}

			.template-grid-4-column-3-bottom {
				background: #fff;
				grid-column: 3 / 4;
				margin-top: 20px;
			}

			.template-grid-4-column-4-bottom {
				background: #fff;
				grid-column: 4 / 5;
				margin-top: 20px;
			}


	.breadcrumb {
		background: transparent;
		padding: 10px 0 10px 0;
	}

	.h1-caption {
		background: transparent;
		padding: 10px 0 10px 0;
	}

	.template-1 {
		/*
		float: left;
		margin-right: 20px;
		*/
		margin-bottom: 20px;
	}

	.template-2 {
		/*
		float: right;
		margin-left: 20px;
		*/
		margin-bottom: 20px;
	}

	.dont-show-desktop {
		display: none;
	}

	.dont-show-1200 {
		display: none;
	}

	.dont-show-991 {
		display: none;
	}

	.dont-show-768 {
		visibility: visible;
	}

	.dont-show-480 {
		visibility: visible;
	}

	.back-to-top {
		bottom: 40px;
		right: 15px;
	}

	.event-button-left {
		width:50%;
		float:left;
		margin-top: 15px;
	}

	.event-button-right {
		width:50%;
		float:left;
		text-align: right;
		margin-top: 15px;
	}

	.event-button-align {
		text-align: center !important;
	}



		/* Buslinien / Nachtlinien */
		.auto-grid {
			display: grid;
			gap: 1rem;
			grid-template-columns: repeat(auto-fit, minmax(min(5.5rem, 100%), 1fr));
		}

		.child {
			padding: 0.5rem;
			font-family: 'Source Sans 3',arial,sans-serif;
			font-size: 1.5em;
			font-weight: 600;
			letter-spacing: 0.25px;
			background: #2A4194;
			text-align: center;
			color: #fff;
			cursor: pointer;
			border: 5px solid #fff;
		}


		/* Linienpläne */
		.fahrplaene > a {
			text-decoration: none !important;
			color: inherit;
		}

		.fahrplaene-box {
			display: grid;
			grid-template-columns: 22% 78%;
			grid-template-rows: auto;
			margin-bottom: 10px;
		}

			.fahrplaene-box-inner-left {
				font-family: 'Source Sans 3',arial,sans-serif;
				font-size: 1.5em;
				font-weight: 600;
				letter-spacing: 0.25px;
				background: #2A4194;
				text-align: center;
				color: #fff;
				cursor: pointer;
				border: 2px solid #2A4194;
				padding: 10px;
				grid-column: 1 / 2;
				grid-row: 1 / 2;
			}

			.fahrplaene-box-inner-right {
				font-family: 'Source Sans 3',arial,sans-serif;
				font-size: 1em;
				font-weight: 500;
				background: #fff;
				text-align: left;
				color: #2A4194;
				cursor: pointer;
				border-top: 2px solid #8993B3;
				border-right: 2px solid #8993B3;
				border-bottom: 2px solid #8993B3;
				padding: 10px 10px 10px 15px;
				grid-column: 2 / 3;
				grid-row: 1 / 2;
			}

			.fahrplaene-box-inner-right:hover {
				background: #EDF2F8;
			}


		/* Haltestellen */
		.haltestellen-box:hover {
			background: #EDF2F8;
		}

		.hs-letter {
			padding: 10px 0 10px 0;
			background: #fff;
			position: sticky;
			top: 142px;
		}

		.haltestellen-inner-letter h2 {
			font-family: 'Source Sans 3',arial,sans-serif;
			font-size: 1.4em;
			font-weight: 800;
			background: transparent;
			text-align: left;
			color: #2A4194;
			background:  #fff;
			display: block;
			padding: 10px 10px 10px 15px;
			margin: 40px 0 10px 0;
			border-top: 2px solid #8993B3;
			border-right: 2px solid #8993B3;
			border-bottom: 2px solid #FFCC01;
			border-left: 2px solid #8993B3;
		}

		.haltestellen-box {
			display: grid;
			grid-template-columns: 85% 15%;
			grid-template-rows: auto;
			margin-bottom: 10px;
		}

			.haltestellen-box-inner-left {
				font-family: 'Source Sans 3',arial,sans-serif;
				font-size: 1em;
				font-weight: 500;
				background: transparent;
				text-align: left;
				color: #2A4194;
				cursor: pointer;
				border-top: 2px solid #8993B3;
				border-bottom: 2px solid #8993B3;
				border-left: 2px solid #8993B3;
				padding: 10px 10px 10px 15px;
				grid-column: 1 / 2;
				grid-row: 1 / 2;
			}

				.haltestellen-box-inner-left-name {
					display: block;
				}

				.haltestellen-box-inner-left-buttons {
					margin: 10px 0 0 0;
				}

			.haltestellen-box-inner-right {
				font-family: 'Source Sans 3',arial,sans-serif;
				font-size: 1.5em;
				font-weight: 600;
				letter-spacing: 0.25px;
				background: #2A4194;
				text-align: center;
				color: #fff;
				cursor: pointer;
				border: 2px solid #2A4194;
				padding: 10px;
				grid-column: 2 / 3;
				grid-row: 1 / 2;
			}



		/* Aktuelles Boxen Flexbox */
		.flex-container {
			display: flex;
			width: 100%;
			gap: 30px;
			-moz-hyphens: auto !important;
			-o-hyphens: auto;
			-webkit-hyphens: auto;
			-ms-hyphens: auto;
			hyphens: auto;
		}

			.flex-item {
				display: flex;
				flex-direction: column;
				width: 100%;
				background: #fff;
				border: 2px solid #8993B3;
			}

				.flex-pic {
					padding: 0 0 10px 0;
					order: 1;
				}

					.flex-pic img {
						max-width: 100%;
						height: auto;
						overflow: hidden;
						display: block;
					}

				.flex-caption {
					padding: 20px 30px 10px 30px;
					font-weight: bold;
					order: 2;
				}

				.flex-text {
					padding: 0 30px 0 30px;
					order: 3;
				}

				.flex-link {
					padding: 25px 30px 30px 30px;
					align-self: flex-start;
					margin-top: auto;
					font-weight: bold;
					order: 4;
				}


		/* Angebote Boxen Flexbox */
		.flex-angebote-container {
			display: flex;
			width: 100%;
			gap: 30px;
			margin-bottom: 60px;
		}

			.flex-angebote-item {
				display: flex;
				flex-direction: column;
				width: 100%;
			}

				.flex-angebote-pic {
					padding: 0 0 10px 0;
					order: 1;
				}

					.flex-angebote-pic > img {
						max-width: 100%;
						height: auto;
						overflow: hidden;
						display: block;
					}

				.flex-angebote-link {
					padding: 0;
					align-self: flex-start;
					margin-top: auto;
					font-weight: bold;
					order: 2;
				}



		/* Aktuelles Boxen Grid ALT
		.t11-top-border {
			border: 2px solid #8993B3;
		}

		.t11-bottom-border {
			border-right: 2px solid #8993B3;
			border-bottom: 2px solid #8993B3;
			border-left: 2px solid #8993B3;
			padding: 30px;
			margin-top: -30px;
		}

		.t11-inner-padding-30 {
			padding: 10px;
		}

		.t11-inner-news-caption {
			margin-bottom: 10px;
		}

		.t11-inner-news-text { }

		.t11-complete-border {
			border: 2px solid #8993B3;
			padding: 20px 30px 30px 30px;
		}

		.t11-extra-caption {
			padding: 0 0 30px 0;
			grid-column: 1/3;
		}

		.t11-read-more-link-extra {
			border-right: 2px solid #8993B3;
			border-bottom: 2px solid #8993B3;
			border-left: 2px solid #8993B3;
			padding: 30px;
			margin-top: -30px;
		}
		*/


		/* Verkehrsmeldungen */
		.verkehrs-box {
			background-color: transparent;
			color: #2A4194 !important;
			padding: 30px 30px 30px 30px !important;
			border: 2px solid #8993B3;
		}

		.verkehrs-box-details {
			margin-bottom: 30px;
			background-color: transparent;
			color: #2A4194 !important;
			padding: 30px 30px 30px 30px !important;
			border: 2px solid #8993B3;
		}


		/* Neue Formulare */
		.form-row {
			display: grid;
			grid-template-columns: 1fr 1fr;
			grid-template-rows: auto;
			grid-gap: 20px;
		}

			.form-row-complete {
				grid-column: 1 / 3;
				grid-row: auto;
				padding: 0 0 10px 0;
					display: grid;
					grid-template-columns: auto;
					grid-template-rows: auto;
			}

			.form-row-left {
				grid-column: 1 / 2;
				grid-row: auto;
					display: grid;
					grid-template-columns: auto;
					grid-template-rows: auto auto;
			}

			.form-row-right {
				grid-column: 2 / 3;
				grid-row: auto;
					display: grid;
					grid-template-columns: auto;
					grid-template-rows: auto auto;
			}

				.form-content-label {
					grid-column: 1 / 2;
					grid-row: 1 / 2;
					font-size: .8em !important;
					font-weight: 600;
				}

				.form-content-field {
					grid-column: 1 / 2;
					grid-row: 2 / 3;
					margin: 0 0 10px 0;
				}

}