/* ==========================================================================
   Author's custom styles
   ========================================================================== */

@media print {
	/* ==================== GRUNDLEGENDE PRINT-RESETS ==================== */
	* {
		color: #00519e !important;
		-webkit-print-color-adjust: exact !important;
		print-color-adjust: exact !important;
	}

	body {
		width: 100% !important;
		margin: 0 !important;
		padding: 0 !important;
		padding-top: 0 !important;
	}

	/* ==================== NAVIGATION AUSBLENDEN (Logo bleibt sichtbar) ==================== */
	nav.navbar,
	.navbar,
	.navbar-toggler,
	#navbarSupportedContent {
		display: none !important;
		position: static !important;
		height: 0 !important;
		max-height: 0 !important;
		overflow: hidden !important;
		visibility: hidden !important;
	}

	header,
	header.menu,
	header.menu.is-fixed,
	.menu,
	.is-fixed {
		position: static !important;
	}

	.is-fixed .header-logo {
		width: 227px !important;
		height: 60px !important;
		background: url('./images/full-logo.png') no-repeat top left !important;
		position: relative;
		background-size: auto;
		margin-left: -30px;
	}

	.print-logo {
		display: inline !important;
	}

	/* ==================== FOOTER / BANNER / TOAST AUSBLENDEN ==================== */
	footer,
	.footer-last-hr,
	footer .brand,
	footer .footer-text:nth-child(3),
	.toast,
	.uo-banner,
	.go-back,
	.breadcrumb,
	.carousel-control-next-icon,
	.carousel-control-prev-icon,
	.carousel-control-prev,
	.carousel-control-next,
	.btn,
	.anfahrt {
		display: none !important;
	}

	/* ==================== ACCORDION KOMPLETT AUFGELÖST ==================== */
	.accordion-panel {
		display: block !important;
		overflow: visible !important;
		height: auto !important;
		max-height: none !important;
		opacity: 1 !important;
		visibility: visible !important;
		margin-top: 0px;
	}

	/* Accordion-Titel: Pfeil/Icon entfernen & kein Klick-Cursor */
	.accordion-title {
		cursor: default !important;
	}

	.accordion-title:after,
	.accordion-title::after {
		content: "" !important;
		display: none !important;
		margin-bottom: 0px !important;
	}

	/* ==================== FARBEN ==================== */
	.list-group-item div div,
	.accordion-panel p,
	sup, dd, p, .rent-h2 {
		color: #000 !important;
	}

	/* ==================== LAYOUT-FIXES ==================== */

	/* Bootstrap Grid: Spalten nebeneinander erzwingen */
	.row {
		display: flex !important;
		flex-wrap: wrap !important;
	}

	/* Float-Konflikte komplett aufheben */
	div.container-fluid div.row.teaser-object div,
	div.container-fluid.info div.row div,
	html body div.list.list-expose div#expose-slider div.expose section.bg-white div.container-fluid.info div.row div.col-12.col-xl-5.pl-0,
	html body div.list.list-expose div#expose-slider div.expose section.bg-white div.container-fluid.info div.row div.col-12.col-xl-7.mr-0.pr-0 {
		float: none !important;
	}

	/* Spalten-Overrides für alle Breakpoints */
	.col-lg-5, .col-12.col-lg-5,
	.expose .col-lg-5, .expose .col-12.col-lg-5 {
		flex: 0 0 41.666667% !important;
		max-width: 41.666667% !important;
	}

	.col-lg-7, .col-12.col-lg-7,
	.expose .col-lg-7, .expose .col-12.col-lg-7 {
		flex: 0 0 58.333333% !important;
		max-width: 58.333333% !important;
	}

	.col-xl-5, .col-12.col-xl-5,
	.expose .col-xl-5, .expose .col-12.col-xl-5 {
		flex: 0 0 41.666667% !important;
		max-width: 41.666667% !important;
	}

	.col-xl-7, .col-12.col-xl-7,
	.expose .col-xl-7, .expose .col-12.col-xl-7 {
		flex: 0 0 58.333333% !important;
		max-width: 58.333333% !important;
	}

	.col-md-5, .col-12.col-md-5,
	.expose .col-md-5, .expose .col-12.col-md-5 {
		flex: 0 0 41.666667% !important;
		max-width: 41.666667% !important;
	}

	.col-md-6, .col-12.col-md-6,
	.expose .col-md-6, .expose .col-12.col-md-6 {
		flex: 0 0 50% !important;
		max-width: 50% !important;
	}

	.col-md-7, .col-12.col-md-7,
	.expose .col-md-7, .expose .col-12.col-md-7 {
		flex: 0 0 58.333333% !important;
		max-width: 58.333333% !important;
	}

	.col-sm-4, .col-12.col-sm-4,
	.expose .col-sm-4, .expose .col-12.col-sm-4 {
		flex: 0 0 33.333333% !important;
		max-width: 33.333333% !important;
	}

	.col-sm-6, .col-12.col-sm-6,
	.expose .col-sm-6, .expose .col-12.col-sm-6 {
		flex: 0 0 50% !important;
		max-width: 50% !important;
	}

	/* Column-Paddings normalisieren */
	.col-1, .col-2, .col-3, .col-4, .col-5, .col-6, .col-7, .col-8, .col-9, .col-10, .col-11, .col-12,
	.col-sm-1, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-10, .col-sm-11, .col-sm-12,
	.col-md-1, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-10, .col-md-11, .col-md-12,
	.col-lg-1, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-lg-10, .col-lg-11, .col-lg-12,
	.col-xl-1, .col-xl-2, .col-xl-3, .col-xl-4, .col-xl-5, .col-xl-6, .col-xl-7, .col-xl-8, .col-xl-9, .col-xl-10, .col-xl-11, .col-xl-12 {
		padding-right: 15px !important;
		padding-left: 15px !important;
	}

	/* Container volle Breite */
	.container-fluid {
		width: 100% !important;
		max-width: 100% !important;
	}

	/* ==================== EXPOSE-SPEZIFISCHE FIXES ==================== */

	/* bg-blue: Feste Höhe, negativen Margin entfernen */
	.bg-blue,
	.expose .bg-blue {
		height: auto !important;
		overflow: visible !important;
		margin-bottom: 0 !important;
		padding: 20px !important;
	}

	/* bg-white: Großes Padding (wegen fixem Header im Screen) entfernen */
	.bg-white,
	.expose .bg-white {
		padding-top: 10px !important;
	}

	.expose .bg-white .container,
	.expose .bg-white .container-fluid {
		margin-top: 10px !important;
		padding-left: 0px !important;
	}

	section {
		padding: 20px !important;
	}

	.bg-white div.container.info p,
	.bg-white div.container.info span,
	.bg-white div.container-fluid.info p,
	.bg-white div.container-fluid.info span {
		padding-left: 2px !important;
		padding-right: 0px !important;
	}

	.list-headline {
		padding-left: 0px !important;
	}

	/* ==================== CAROUSEL FIXES ==================== */
	.carousel-item,
	#carouselExampleIndicators1,
	.carousel,
	.carousel img {
		background-color: transparent !important;
	}

	.expose .carousel,
	.expose #carouselExampleIndicators1,
	.expose .carousel-inner {
		max-height: none !important;
		overflow: visible !important;
		height: auto !important;
	}

	/* Nur aktives Carousel-Item anzeigen */
	.carousel-item {
		display: none !important;
	}
	.carousel-item.active {
		display: block !important;
	}

	.expose .teaser-object img {
		width: 100% !important;
		height: auto !important;
		margin-left: 0 !important;
	}

	.carousel-inner {
		overflow: visible !important;
	}

	/* ==================== TEXT-FORMATIERUNG ==================== */
	.text-right {
		text-align: right !important;
		hyphens: none;
	}

	ul.list-group div.accordion-panel li.list-group-item div.row div {
		padding-top: 2px;
		padding-bottom: 2px;
	}

	ul.list-group div.accordion-panel li.list-group-item {
		padding-top: 4px;
		padding-bottom: 4px;
		line-height: 1.4;
	}

	/* ==================== BORDER-RESET ==================== */
	.footer-last-hr,
	.accordion-panel,
	.col-12, .col-md-6, .accordion-title,
	li, h3,
	.list-group-item,
	.list-group-item .row,
	.list-group-item .row .col-12 {
		border: none !important;
		outline: none !important;
		border-color: transparent !important;
	}

	/* ==================== EXPOSE SCHRIFTGRÖSSEN ==================== */
	.expose .teaser-object h2,
	.expose .teaser-object h1 {
		font-size: 1.5rem !important;
	}

	.expose .teaser-text {
		padding-top: 0 !important;
		font-size: 1.25rem !important;
		margin-top: 10px !important;
	}

	.expose .rent-p, .expose .info p {
		font-size: 14px !important;
	}

	.expose .list-group-item,
	.expose h3, .expose .h3 {
		font-size: 16px !important;
	}

	/* ==================== QR-CODE ==================== */
	.img-qr-code {
		width: 150px !important;
		height: 150px !important;
		margin-left: 0 !important;
	}

	/* ==================== SEITENUMBRÜCHE ==================== */
	.groundplans {
		page-break-before: always !important;
		-webkit-page-break-before: always !important;
		-moz-page-break-before: always !important;
	}

	.container.info {
		page-break-before: auto !important;
		-webkit-page-break-before: auto !important;
		-moz-page-break-before: auto !important;
	}

	#carouselExampleIndicators2 .carousel-item:not(:first-child) {
		page-break-after: always !important;
		-webkit-page-break-after: always !important;
		-moz-page-break-after: always !important;
	}

	#carouselExampleIndicators2 .carousel-item img {
		width: 80% !important;
	}

	#carouselExampleIndicators2 .carousel-item {
		display: block !important;
		height: 100%;
	}

	#carouselExampleIndicators2 .carousel-inner {
		height: 100%;
		display: flex !important;
	}

	/* ==================== POSITION FIXED ENTFERNEN ==================== */

	/* Expose-Button absolute Positionierung entfernen */
	.expose .pos-btn,
	.expose .teaser-object button {
		position: static !important;
	}
}

.uo-banner {
	z-index: 3001;
	position: relative;
	
}
.uo-banner img {
	/* display: block; */
	width: 60px;
	height:60px;
	max-width:100%;
}
.enable-bootstrap .toast {
	position: fixed;
	left: 0;
	top: 0px;
	width: 100%;
	border-radius: 0;
	transition: all 0.5s ease-in-out;
	max-width: 100%;
	width: 100%;
	z-index: 3001;
	border: 0;
	transform: translateY(calc(-100% - 100px));
	box-shadow: 0 3px 20px rgba(0,0,0,.2);
	
}
@media(min-width:992px) {
	.position-100 {
		top: 100px!important;
	}
}

.uo-wrapper {
	padding: 60px 0;
}
.toast.active {
	transform: translateY(0%);
}
.toast .hero-teaser {
	position: relative;
	margin: 0;
	background: #00519E;
	height: auto;
}
.toast .row {
	margin: 0 auto;
}
.toast .hero-teaser  .container {
	max-width: 100%;
}
@media (min-width: 1600px) {
	.toast .hero-teaser .container {
		max-width: 1440px;
	}
}
.toast .hero-teaser *,
.toast .hero-teaser h4 {
	color: #fff;
}
.toast .hero-teaser h4 a {
	color: #fff;
}
.toast .hero-teaser h2 {
	font-size: 32px;
}

.toast .hero-teaser p {
	font-size: 1.75rem;
	font-weight: 300;
}

.toast .hero-teaser  .btn {
	min-width: inherit;
	margin: 30px 0 0 0;
	border: 0;
	outline: 0;
	background: #fff;
	color: #00519E;
}
.toast .hero-teaser  .btn:hover {
	background: #00519E;
	color: #fff;
}
.toast .btn-close {
	position: absolute;
	top: 12px;
	right: 9px;
	z-index: 601;
	opacity: 1;
	border-radius: 0;
	background-size: 16px;
}
.tariff-table .toast.table-header {
	padding: 0;
}
.tariff-table .toast.table-header ul {
	flex-direction: column;
	padding: 0;
}
.tariff-table .toast.table-header ul li {
	padding-right: 0;
}
.enable-bootstrap .toast a {
	text-decoration: none;
}

.enable-bootstrap .toast .btn-close {
	background-color: transparent;
	border: none;
	color: #ffffff;
	content: "x";
	width:50px;
	height:50px;
	padding: 0;
	cursor:pointer;
}

.enable-bootstrap .toast .btn-close:focus,
.enable-bootstrap .toast .btn-close:active {
	outline: none;
	border: none;
}

.toast .btn.btn-default {
	background: #FDC400;
	font-family: "Myriad W01 Bd";
	color: #00519E;
	line-height: 44px;
	height: 50px;
	padding: 0;
	vertical-align: middle;
	border: none;
	display: inline-block;
	font-weight: 400;
	text-align: center;
	white-space: nowrap;
	vertical-align: middle;
	user-select: none;
	border: none solid transparent;
	padding: 0.375rem 0.75rem;
	font-size: 1rem;
	line-height: 1.5;
	width:auto;
	min-width: 230px;
	border-radius: 0;
}

.toast .btn.btn-default:hover {
	background: transparent;
	font-family: "Myriad W01 Bd";
	color: #FDC400;
	border: 2px solid #FDC400;
}
@media (max-width: 991px) {
	.enable-bootstrap .toast .btn-default {
		width: 100%;
	}
	.uo-banner {
		z-index: 1000002;
	}
	.uo-wrapper {
		padding: 30px 0;
	}
	
	.toast .hero-teaser p {
		font-size: 1.25rem;
		font-weight: 300;
	}
}

.is-fixed {
	z-index: 3002!important;
}

#carouselExampleIndicators2 .carousel-control-next {
	right: 0!important;
}

#newsCarouselSmall.carousel img {
	height: auto;
	aspect-ratio: 4/3;
	object-fit: cover;
	max-height: 500px;
}

#newsCarouselBig.carousel img {
	height: auto;
	aspect-ratio: 4/3;
	object-fit: cover;
	max-height: 650px;
}